diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index 2dc1c7ca..b19db45e 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -40,7 +40,7 @@ jobs: # curl https://api.github.com/repos/open-traffic-generator/models/actions/artifacts # the artifact is only available for the amount of time dictated by the # repo settings which is defaulted to 90 days - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: path: artifacts diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 00000000..14fda617 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,5 @@ +{ + "cSpell.words": [ + "Trafficprofile" + ] +} \ No newline at end of file diff --git a/artifacts/openapi.html b/artifacts/openapi.html index f34ed70f..756714b7 100644 --- a/artifacts/openapi.html +++ b/artifacts/openapi.html @@ -550,31 +550,33 @@
Array of objects (Flow)

The flows that will be configured on the traffic generator.

object (Event)

The optional container for event configuration.

object (Config.Options)

Global configuration options.

-
Array of objects (Lldp)

LLDP protocol that will be configured on traffic generator.

+
Array of objects (Lldp)

LLDP protocol that will be configured on traffic generator.

+
Array of objects (Trafficprofile)

The traffic profile configures on L47 configs.

Responses

Request samples

Content type
application/json
{
  • "ports": [
    ],
  • "lags": [
    ],
  • "layer1": [
    ],
  • "captures": [
    ],
  • "devices": [
    ],
  • "flows": [
    ],
  • "events": {
    },
  • "options": {
    },
  • "lldp": [
    ]
}

Response samples

Content type
application/json
{
  • "warnings": [
    ]
}

get_config

Responses

Request samples

Content type
application/json
{
  • "ports": [
    ],
  • "lags": [
    ],
  • "layer1": [
    ],
  • "captures": [
    ],
  • "devices": [
    ],
  • "flows": [
    ],
  • "events": {
    },
  • "options": {
    },
  • "lldp": [
    ],
  • "trafficprofile": [
    ]
}

Response samples

Content type
application/json
{
  • "warnings": [
    ]
}

get_config

Responses

Response samples

Content type
application/json
{
  • "ports": [
    ],
  • "lags": [
    ],
  • "layer1": [
    ],
  • "captures": [
    ],
  • "devices": [
    ],
  • "flows": [
    ],
  • "events": {
    },
  • "options": {
    },
  • "lldp": [
    ]
}

update_config

Updates specific attributes of resources configured on the traffic generator. The fetched configuration shall reflect the updates applied successfully. +

Response samples

Content type
application/json
{
  • "ports": [
    ],
  • "lags": [
    ],
  • "layer1": [
    ],
  • "captures": [
    ],
  • "devices": [
    ],
  • "flows": [
    ],
  • "events": {
    },
  • "options": {
    },
  • "lldp": [
    ],
  • "trafficprofile": [
    ]
}

update_config

Updates specific attributes of resources configured on the traffic generator. The fetched configuration shall reflect the updates applied successfully. The Response.Warnings in the Success response is available for implementers to disclose additional information about a state change including any implicit changes that are outside the scope of the state change.

Request Body schema: application/json
choice
string
Value: "flows"
object (Flows.Update)

A container of flows with associated properties to be updated without affecting the flows current transmit state.

Responses

Request samples

Content type
application/json
{
  • "choice": "flows",
  • "flows": {
    }
}

Response samples

Content type
application/json
{
  • "warnings": [
    ]
}

Control

set_control_state

Sets the operational state of configured resources.

-
Request Body schema: application/json
choice
required
string
Enum: "port" "protocol" "traffic"
object (State.Port)

States associated with configured ports.

+
Request Body schema: application/json
choice
required
string
Enum: "port" "protocol" "traffic" "app"
object (State.Port)

States associated with configured ports.

object (State.Protocol)

States associated with protocols on configured resources.

-
object (State.Traffic)

States associated with configured flows

+
object (State.Traffic)

States associated with configured flows

+
object (State.App)

States associated with app traffic for l47

Responses

Request samples

Content type
application/json
{
  • "choice": "port",
  • "port": {
    },
  • "protocol": {
    },
  • "traffic": {
    }
}

Response samples

Content type
application/json
{
  • "warnings": [
    ]
}

set_control_action

Triggers actions against configured resources.

+

Request samples

Content type
application/json
{
  • "choice": "port",
  • "port": {
    },
  • "protocol": {
    },
  • "traffic": {
    },
  • "app": {
    }
}

Response samples

Content type
application/json
{
  • "warnings": [
    ]
}

set_control_action

Triggers actions against configured resources.

Request Body schema: application/json
choice
required
string
Value: "protocol"
object (Action.Protocol)

Actions associated with protocols on configured resources.

Responses

Request samples

Content type
application/json
{
  • "choice": "protocol",
  • "protocol": {
    }
}

Response samples

Content type
application/json
{
  • "warnings": [
    ],
  • "response": {
    }
}

Monitor

get_metrics

Request Body schema: application/json

Request to traffic generator for metrics of choice

-
choice
string
Default: "port"
Enum: "port" "flow" "bgpv4" "bgpv6" "isis" "lag" "lacp" "lldp" "rsvp" "dhcpv4_client" "dhcpv4_server"
object (Port.Metrics.Request)

The port result request to the traffic generator

+
choice
string
Default: "port"
Enum: "port" "flow" "bgpv4" "bgpv6" "isis" "lag" "lacp" "lldp" "rsvp" "dhcpv4_client" "dhcpv4_server" "httpclient" "httpserver"
object (Port.Metrics.Request)

The port result request to the traffic generator

object (Flow.Metrics.Request)

The container for a flow metric request.

object (Bgpv4.Metrics.Request)

The request to retrieve BGPv4 per peer metrics/statistics.

object (Bgpv6.Metrics.Request)

The request to retrieve BGPv6 per peer metrics/statistics.

@@ -584,10 +586,12 @@
object (Lldp.Metrics.Request)

The request to retrieve LLDP per instance metrics/statistics.

object (Rsvp.Metrics.Request)

The request to retrieve RSVP-TE per Router metrics/statistics.

object (Dhcpv4Client.Metrics.Request)

The request to retrieve DHCPv4 per client metrics/statistics.

-
object (Dhcpv4Server.Metrics.Request)

The request to retrieve DHCPv4 per Server metrics/statistics.

+
object (Dhcpv4Server.Metrics.Request)

The request to retrieve DHCPv4 per Server metrics/statistics.

+
object (Httpclient_stat.Metrics.Request)

The client Stat

+
object (Httpserver_stat.Metrics.Request)

The Server Stat

Responses

Request samples

Content type
application/json
{
  • "choice": "port",
  • "port": {
    },
  • "flow": {
    },
  • "bgpv4": {
    },
  • "bgpv6": {
    },
  • "isis": {
    },
  • "lag": {
    },
  • "lacp": {
    },
  • "lldp": {
    },
  • "rsvp": {
    },
  • "dhcpv4_client": {
    },
  • "dhcpv4_server": {
    }
}

Response samples

Content type
application/json
{
  • "choice": "port_metrics",
  • "port_metrics": [
    ],
  • "flow_metrics": [
    ],
  • "bgpv4_metrics": [
    ],
  • "bgpv6_metrics": [
    ],
  • "isis_metrics": [
    ],
  • "lag_metrics": [
    ],
  • "lacp_metrics": [
    ],
  • "lldp_metrics": [
    ],
  • "rsvp_metrics": [
    ],
  • "dhcpv4client_metrics": [
    ],
  • "dhcpv4server_metrics": [
    ]
}

get_states

Request Body schema: application/json

Request to traffic generator for states of choice

+

Request samples

Content type
application/json
{
  • "choice": "port",
  • "port": {
    },
  • "flow": {
    },
  • "bgpv4": {
    },
  • "bgpv6": {
    },
  • "isis": {
    },
  • "lag": {
    },
  • "lacp": {
    },
  • "lldp": {
    },
  • "rsvp": {
    },
  • "dhcpv4_client": {
    },
  • "dhcpv4_server": {
    },
  • "httpclient": {
    },
  • "httpserver": {
    }
}

Response samples

Content type
application/json
{
  • "choice": "port_metrics",
  • "port_metrics": [
    ],
  • "flow_metrics": [
    ],
  • "bgpv4_metrics": [
    ],
  • "bgpv6_metrics": [
    ],
  • "isis_metrics": [
    ],
  • "lag_metrics": [
    ],
  • "lacp_metrics": [
    ],
  • "lldp_metrics": [
    ],
  • "rsvp_metrics": [
    ],
  • "dhcpv4client_metrics": [
    ],
  • "dhcpv4server_metrics": [
    ],
  • "httpclient_metrics": [
    ],
  • "httpserver_metrics": [
    ]
}

get_states

Request Body schema: application/json

Request to traffic generator for states of choice

choice
string
Default: "ipv4_neighbors"
Enum: "ipv4_neighbors" "ipv6_neighbors" "bgp_prefixes" "isis_lsps" "lldp_neighbors" "rsvp_lsps" "dhcpv4_interfaces" "dhcpv4_leases"
object (Neighborsv4.States.Request)

The request to retrieve IPv4 Neighbor state (ARP cache entries) of a network interface(s).

object (Neighborsv6.States.Request)

The request to retrieve IPv6 Neighbor state (NDISC cache entries) of a network interface(s).

object (BgpPrefix.State.Request)

The request to retrieve BGP peer prefix information.

@@ -610,7 +614,7 @@

Response samples

Content type
application/json
{
  • "api_spec_version": "",
  • "sdk_version": "",
  • "app_version": ""
}