From a2bde608f0bb1f7149779f2c809ac4731fa4207f Mon Sep 17 00:00:00 2001 From: <> Date: Tue, 13 Feb 2024 11:47:09 +0000 Subject: [PATCH] Deployed 57604d3 with MkDocs version: 1.5.3 --- .nojekyll | 0 404.html | 1515 ++++ api-reference/acl/index.html | 4311 +++++++++++ api-reference/acl_types/index.html | 2473 ++++++ api-reference/agent/index.html | 3108 ++++++++ api-reference/bgp/index.html | 2157 ++++++ api-reference/bgp_path/index.html | 2427 ++++++ api-reference/bgp_path_types/index.html | 1984 +++++ api-reference/bgp_types/index.html | 1817 +++++ api-reference/eapi/index.html | 1911 +++++ api-reference/eapi_types/index.html | 1735 +++++ api-reference/eth_lag_intf/index.html | 5696 ++++++++++++++ api-reference/eth_lag_intf_types/index.html | 1979 +++++ api-reference/eth_phy_intf/index.html | 2918 +++++++ api-reference/eth_phy_intf_types/index.html | 2051 +++++ api-reference/index.html | 1593 ++++ api-reference/intf/index.html | 3490 +++++++++ api-reference/intf_types/index.html | 2030 +++++ api-reference/ip_intf/index.html | 2837 +++++++ api-reference/ip_intf_types/index.html | 1878 +++++ api-reference/ip_route/index.html | 3465 +++++++++ api-reference/ip_route_types/index.html | 1953 +++++ api-reference/ip_types/index.html | 1797 +++++ api-reference/macsec/index.html | 3204 ++++++++ api-reference/macsec_types/index.html | 2254 ++++++ api-reference/mpls_route/index.html | 3845 ++++++++++ api-reference/mpls_route_types/index.html | 1884 +++++ api-reference/mpls_types/index.html | 1919 +++++ api-reference/mpls_vrf_label/index.html | 2416 ++++++ api-reference/mpls_vrf_label_types/index.html | 1720 +++++ api-reference/nexthop_group/index.html | 3331 ++++++++ api-reference/nexthop_group_types/index.html | 2281 ++++++ api-reference/policy_map/index.html | 4030 ++++++++++ api-reference/policy_map_types/index.html | 2823 +++++++ api-reference/rpc_types/index.html | 1922 +++++ .../structured_filter_types/index.html | 2044 +++++ assets/arista-logo.svg | 33 + assets/favicon.ico | Bin 0 -> 4286 bytes assets/images/favicon.png | Bin 0 -> 1870 bytes assets/javascripts/bundle.8fd75fb4.min.js | 29 + assets/javascripts/bundle.8fd75fb4.min.js.map | 7 + assets/javascripts/lunr/min/lunr.ar.min.js | 1 + assets/javascripts/lunr/min/lunr.da.min.js | 18 + assets/javascripts/lunr/min/lunr.de.min.js | 18 + assets/javascripts/lunr/min/lunr.du.min.js | 18 + assets/javascripts/lunr/min/lunr.el.min.js | 1 + assets/javascripts/lunr/min/lunr.es.min.js | 18 + assets/javascripts/lunr/min/lunr.fi.min.js | 18 + assets/javascripts/lunr/min/lunr.fr.min.js | 18 + assets/javascripts/lunr/min/lunr.he.min.js | 1 + assets/javascripts/lunr/min/lunr.hi.min.js | 1 + assets/javascripts/lunr/min/lunr.hu.min.js | 18 + assets/javascripts/lunr/min/lunr.hy.min.js | 1 + assets/javascripts/lunr/min/lunr.it.min.js | 18 + assets/javascripts/lunr/min/lunr.ja.min.js | 1 + assets/javascripts/lunr/min/lunr.jp.min.js | 1 + assets/javascripts/lunr/min/lunr.kn.min.js | 1 + assets/javascripts/lunr/min/lunr.ko.min.js | 1 + assets/javascripts/lunr/min/lunr.multi.min.js | 1 + assets/javascripts/lunr/min/lunr.nl.min.js | 18 + assets/javascripts/lunr/min/lunr.no.min.js | 18 + assets/javascripts/lunr/min/lunr.pt.min.js | 18 + assets/javascripts/lunr/min/lunr.ro.min.js | 18 + assets/javascripts/lunr/min/lunr.ru.min.js | 18 + assets/javascripts/lunr/min/lunr.sa.min.js | 1 + .../lunr/min/lunr.stemmer.support.min.js | 1 + assets/javascripts/lunr/min/lunr.sv.min.js | 18 + assets/javascripts/lunr/min/lunr.ta.min.js | 1 + assets/javascripts/lunr/min/lunr.te.min.js | 1 + assets/javascripts/lunr/min/lunr.th.min.js | 1 + assets/javascripts/lunr/min/lunr.tr.min.js | 18 + assets/javascripts/lunr/min/lunr.vi.min.js | 1 + assets/javascripts/lunr/min/lunr.zh.min.js | 1 + assets/javascripts/lunr/tinyseg.js | 206 + assets/javascripts/lunr/wordcut.js | 6708 +++++++++++++++++ .../workers/search.b8dbb3d2.min.js | 42 + .../workers/search.b8dbb3d2.min.js.map | 7 + assets/stylesheets/main.f2e4d321.min.css | 1 + assets/stylesheets/main.f2e4d321.min.css.map | 1 + assets/stylesheets/palette.06af60db.min.css | 1 + .../stylesheets/palette.06af60db.min.css.map | 1 + faq/index.html | 2104 ++++++ guides/aclrules/index.html | 1787 +++++ guides/configuration/index.html | 2013 +++++ guides/errorhandling/index.html | 1718 +++++ guides/howto/index.html | 2683 +++++++ guides/index.html | 1599 ++++ guides/limitations/index.html | 1831 +++++ guides/security/index.html | 1856 +++++ guides/simplecppclient/index.html | 2231 ++++++ index.html | 1593 ++++ search/search_index.json | 1 + sitemap.xml | 3 + sitemap.xml.gz | Bin 0 -> 127 bytes 94 files changed, 115540 insertions(+) create mode 100644 .nojekyll create mode 100644 404.html create mode 100644 api-reference/acl/index.html create mode 100644 api-reference/acl_types/index.html create mode 100644 api-reference/agent/index.html create mode 100644 api-reference/bgp/index.html create mode 100644 api-reference/bgp_path/index.html create mode 100644 api-reference/bgp_path_types/index.html create mode 100644 api-reference/bgp_types/index.html create mode 100644 api-reference/eapi/index.html create mode 100644 api-reference/eapi_types/index.html create mode 100644 api-reference/eth_lag_intf/index.html create mode 100644 api-reference/eth_lag_intf_types/index.html create mode 100644 api-reference/eth_phy_intf/index.html create mode 100644 api-reference/eth_phy_intf_types/index.html create mode 100644 api-reference/index.html create mode 100644 api-reference/intf/index.html create mode 100644 api-reference/intf_types/index.html create mode 100644 api-reference/ip_intf/index.html create mode 100644 api-reference/ip_intf_types/index.html create mode 100644 api-reference/ip_route/index.html create mode 100644 api-reference/ip_route_types/index.html create mode 100644 api-reference/ip_types/index.html create mode 100644 api-reference/macsec/index.html create mode 100644 api-reference/macsec_types/index.html create mode 100644 api-reference/mpls_route/index.html create mode 100644 api-reference/mpls_route_types/index.html create mode 100644 api-reference/mpls_types/index.html create mode 100644 api-reference/mpls_vrf_label/index.html create mode 100644 api-reference/mpls_vrf_label_types/index.html create mode 100644 api-reference/nexthop_group/index.html create mode 100644 api-reference/nexthop_group_types/index.html create mode 100644 api-reference/policy_map/index.html create mode 100644 api-reference/policy_map_types/index.html create mode 100644 api-reference/rpc_types/index.html create mode 100644 api-reference/structured_filter_types/index.html create mode 100644 assets/arista-logo.svg create mode 100644 assets/favicon.ico create mode 100644 assets/images/favicon.png create mode 100644 assets/javascripts/bundle.8fd75fb4.min.js create mode 100644 assets/javascripts/bundle.8fd75fb4.min.js.map create mode 100644 assets/javascripts/lunr/min/lunr.ar.min.js create mode 100644 assets/javascripts/lunr/min/lunr.da.min.js create mode 100644 assets/javascripts/lunr/min/lunr.de.min.js create mode 100644 assets/javascripts/lunr/min/lunr.du.min.js create mode 100644 assets/javascripts/lunr/min/lunr.el.min.js create mode 100644 assets/javascripts/lunr/min/lunr.es.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.he.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hu.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hy.min.js create mode 100644 assets/javascripts/lunr/min/lunr.it.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ja.min.js create mode 100644 assets/javascripts/lunr/min/lunr.jp.min.js create mode 100644 assets/javascripts/lunr/min/lunr.kn.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ko.min.js create mode 100644 assets/javascripts/lunr/min/lunr.multi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.nl.min.js create mode 100644 assets/javascripts/lunr/min/lunr.no.min.js create mode 100644 assets/javascripts/lunr/min/lunr.pt.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ro.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ru.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sa.min.js create mode 100644 assets/javascripts/lunr/min/lunr.stemmer.support.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sv.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ta.min.js create mode 100644 assets/javascripts/lunr/min/lunr.te.min.js create mode 100644 assets/javascripts/lunr/min/lunr.th.min.js create mode 100644 assets/javascripts/lunr/min/lunr.tr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.vi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.zh.min.js create mode 100644 assets/javascripts/lunr/tinyseg.js create mode 100644 assets/javascripts/lunr/wordcut.js create mode 100644 assets/javascripts/workers/search.b8dbb3d2.min.js create mode 100644 assets/javascripts/workers/search.b8dbb3d2.min.js.map create mode 100644 assets/stylesheets/main.f2e4d321.min.css create mode 100644 assets/stylesheets/main.f2e4d321.min.css.map create mode 100644 assets/stylesheets/palette.06af60db.min.css create mode 100644 assets/stylesheets/palette.06af60db.min.css.map create mode 100644 faq/index.html create mode 100644 guides/aclrules/index.html create mode 100644 guides/configuration/index.html create mode 100644 guides/errorhandling/index.html create mode 100644 guides/howto/index.html create mode 100644 guides/index.html create mode 100644 guides/limitations/index.html create mode 100644 guides/security/index.html create mode 100644 guides/simplecppclient/index.html create mode 100644 index.html create mode 100644 search/search_index.json create mode 100644 sitemap.xml create mode 100644 sitemap.xml.gz diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/404.html b/404.html new file mode 100644 index 0000000..9d5861b --- /dev/null +++ b/404.html @@ -0,0 +1,1515 @@ + + + +
+ + + + + + + + + + + + + + + + + + +++rpc watch(AclWatchRequest) + AclWatchResponse
+
Subscription to monitor ACL hardware synchronization events. This request stays +active until the client cancels or the server shuts down.
+EosSdk reference: eos::acl_handler (class)
+++rpc acls(AclsRequest) + AclsResponse
+
Returns a list of the ACLs created by this application.
+EosSdk reference: eos::acl_mgr::acl_iter
+++rpc acls_all(AclsAllRequest) + AclsAllResponse
+
Returns a list of all the ACLs.
+EosSdk reference: eos::acl_mgr::acl_all_iter
+++rpc acl_rule_ips(AclRuleIpsRequest) + AclRuleIpsResponse
+
Returns a list of all the IP ACL rules created by this application for a +specified ACL.
+EosSdk reference: eos::acl_mgr::acl_rule_ip_iter
+++rpc acl_all_rule_ips(AclAllRuleIpsRequest) + AclAllRuleIpsResponse
+
Returns a list of all the IP ACL rules for a specified ACL.
+EosSdk reference: eos::acl_mgr::acl_all_rule_ip_iter
+++rpc acl_rule_eths(AclRuleEthsRequest) + AclRuleEthsResponse
+
Returns a list of all the ethernet ACL rules created by this application for a +specified ACL.
+EosSdk reference: eos::acl_mgr::acl_rule_eth_iter
+++rpc acl_all_rule_eths(AclAllRuleEthsRequest) + AclAllRuleEthsResponse
+
Returns a list of all the ethernet ACL rules for a specified ACL.
+EosSdk reference: eos::acl_mgr::acl_all_rule_eth_iter
+++rpc acl_exists(AclExistsRequest) + AclExistsResponse
+
Queries whether the specified ACL has been configured in this application.
+EosSdk reference: eos::acl_mgr::acl_exists
+++rpc acl_all_exists(AclAllExistsRequest) + AclAllExistsResponse
+
Queries whether the specified ACL has been configured.
+EosSdk reference: eos::acl_mgr::acl_all_exists
+++rpc acl_rule_set(AclRuleSetRequest) + AclRuleSetResponse
+
Adds a rule to an ACL. If the specified ACL does not exist it is created. +The type of the rule must be the same as the ACL's type.
+Note: Must call acl_commit for this change to take effect +Note: An extremely large numbers of ACLs or rules per ACL can result in + undefined behavior, including a switch reload.
+EosSdk reference: eos::acl_mgr::acl_rule_set
+++rpc bulk_acl_rule_set(BulkAclRuleSetRequest) + BulkAclRuleSetResponse
+
Adds multiple rules to ACLs in a single call. Creates any ACLs that do not +exist.
+Note: Must call acl_commit for this change to take effect.
+EosSdk reference: eos::acl_mgr::acl_rule_set
+++rpc acl_rule_del(AclRuleDelRequest) + AclRuleDelResponse
+
Removes a rule from an ACL. If the specified ACL does not exist or there is no +rule at the specified sequence number no changes are made.
+Note: Must call acl_commit for this change to take effect.
+EosSdk reference: eos::acl_mgr::acl_rule_del
+++rpc bulk_acl_rule_del(BulkAclRuleDelRequest) + BulkAclRuleDelResponse
+
Removes multiple rules from ACLs in a single call.
+Note: Must call acl_commit for this change to take effect.
+EosSdk reference: eos::acl_mgr::acl_rule_del
+++rpc acl_commit(AclCommitRequest) + AclCommitResponse
+
Commits all rule and setting changes made to all ACLs.
+Pushes ACLs into Sysdb's active configuration. This commit cannot fail, but it +can lead to a state where not all ACLs can be loaded into hardware. You will be +notified via an on_acl_sync event when this commit and all other outstanding +operations such as interface applications are loaded into hardware, or +an on_acl_sync_fail event if the newly committed configuration can't be loaded. +If there are no changes pending, you will get one of those events depending on +whether the current state in Sysdb can be loaded into hardware or not.
+EosSdk reference: eos::acl_mgr::acl_commit
+++rpc acl_del(AclDelRequest) + AclDelResponse
+
Deletes the specified ACL removing it from all interfaces and removing all of +its rules. Any pending changes to the ACL are discarded. It is effective +immediately (no commit needed and no watcher event is provided).
+EosSdk reference: eos::acl_mgr::acl_del
+++rpc bulk_acl_del(BulkAclDelRequest) + BulkAclDelResponse
+
Deletes multiple ACLs in a single call.
+EosSdk reference: eos::acl_mgr::acl_del
+++rpc acl_apply(AclApplyRequest) + AclApplyResponse
+
Requests that an ACL be (un)applied on the given interface and direction.
+ACL is loaded into hardware asynchronously. Like acl_commit, this call +results in a watcher event when we have applied, or failed to apply, this +ACL configuration. That is, an event will not be sent per call but instead an +event will be sent when everything is loaded into hardware, or when we notice +problems.
+API call ordering note: any acl_rule_set or acl_rule_del calls must be +followed by an acl_commit prior to calling this rpc otherwise this call +will return an error.
+EosSdk reference: eos::acl_mgr::acl_apply
+++rpc bulk_acl_apply(BulkAclApplyRequest) + BulkAclApplyResponse
+
Apply or unapply multiple ACLs on the specified interfaces and directions in a +single call.
+EosSdk reference: eos::acl_mgr::acl_apply
+++rpc acl_counters_enabled_set(AclCountersEnabledSetRequest) + AclCountersEnabledSetResponse
+
Enable or disable counters for the ACL.
+Note: Must call acl_commit before this setting takes effect.
+EosSdk reference: eos::acl_mgr::acl_counters_enabled_set
+++rpc bulk_acl_counters_enabled_set(BulkAclCountersEnabledSetRequest) + BulkAclCountersEnabledSetResponse
+
Enable or disable counters for multiple ACLs in a single call.
+Note: Must call acl_commit before this setting takes effect.
+EosSdk reference: eos::acl_mgr::acl_counters_enabled_set
+++rpc acl_fragments_enabled_set(AclFragmentsEnabledSetRequest) + AclFragmentsEnabledSetResponse
+
Enable or disable fragments matching on the ACL.
+Note: Must call acl_commit before this setting takes effect.
+EosSdk reference: eos::acl_mgr::acl_fragments_enabled_set
+++rpc bulk_acl_fragments_enabled_set(BulkAclFragmentsEnabledSetRequest) + BulkAclFragmentsEnabledSetResponse
+
Enables or disables fragments matching on multiple ACLs in a single call.
+Note: Must call acl_commit before this setting takes effect.
+EosSdk reference: eos::acl_mgr::acl_fragments_enabled_set
+++rpc stream_allowed(StreamAllowedRequest) + StreamAllowedResponse
+
Check a connection against any applied ACL to determine if it should be +dropped, incrementing the ACL counter if so. For use with SOCK_STREAM or +SOCK_DGRAM.
+EosSdk reference: eos::acl_mgr::stream_allowed
+++rpc dgram_allowed(DgramAllowedRequest) + DgramAllowedResponse
+
Check a packet against any applied ACL to determine if it should be dropped, +incrementing the ACL counter if so. For use with SOCK_DGRAM only.
+EosSdk reference: eos::acl_mgr::dgram_allowed
+ + + +Name | +Value | +Description | +
---|---|---|
key | +AclKey | +The key of the ACL to query. | +
Name | +Value | +Description | +
---|---|---|
exists | +bool | +True if the ACL exists in any configuration in the device otherwise false. | +
Name | +Value | +Description | +
---|---|---|
key | +AclKey | +The key of ACL to get the ethernet rules for. | +
Name | +Value | +Description | +
---|---|---|
eth_rule | +AclRuleEthEntry | ++ |
Name | +Value | +Description | +
---|---|---|
key | +AclKey | +The key of ACL to get the IP rules for. | +
Name | +Value | +Description | +
---|---|---|
ip_rule | +AclRuleIpEntry | ++ |
Name | +Value | +Description | +
---|---|---|
key | +AclKey | +The key of the ACL to [un]apply. | +
intf_id | +IntfId | +The inteface ID of the the interface to [un]apply the ACL. | +
direction | +AclDirection | +The direction in which to [un]apply the ACL. | +
apply | +bool | +True if the ACL should be applied otherwise false if it should be unapplied. | +
Empty message. + +
+Empty message. + +
+Empty message. + +
+Name | +Value | +Description | +
---|---|---|
key | +AclKey | +The key of the ACL to modify. | +
enabled | +bool | +True if counters should be enabled for the ACL otherwise false if they should be disabled. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
key | +AclKey | +The key of the ACL to remove. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
key | +AclKey | +The key of the ACL to query. | +
Name | +Value | +Description | +
---|---|---|
exists | +bool | +True if the ACL exists in the application's configuration otherwise false. | +
Name | +Value | +Description | +
---|---|---|
key | +AclKey | +The key of the ACL to modify. | +
enabled | +bool | +True if fragments matching should be enabled for the ACL otherwise false if it should be disabled. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
key | +AclKey | +The key of the ACL to modify. | +
sequence_number | +uint32 | +The sequence number at which to remove the rule. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
sequence_number | +uint32 | ++ |
eth_rule | +AclRuleEth | ++ |
Name | +Value | +Description | +
---|---|---|
key | +AclKey | +The key of ACL to get the ethernet rules for. | +
Name | +Value | +Description | +
---|---|---|
eth_rule | +AclRuleEthEntry | ++ |
Name | +Value | +Description | +
---|---|---|
sequence_number | +uint32 | ++ |
ip_rule | +AclRuleIp | ++ |
Name | +Value | +Description | +
---|---|---|
key | +AclKey | +The key of ACL to get the IP rules for. | +
Name | +Value | +Description | +
---|---|---|
ip_rule | +AclRuleIpEntry | ++ |
Name | +Value | +Description | +
---|---|---|
key | +AclKey | +The key of the ACL to create or modify. | +
sequence_number | +uint32 | +The sequence number to add the rule at. | +
oneof acl_rule.ip_rule | +AclRuleIp | +IP ACL rule to add to the ACL. | +
oneof acl_rule.eth_rule | +AclRuleEth | +Ethenet ACL rule to add to the ACL. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
ack | +bool | +Set to true if an immediate acknowledgment is desired. | +
Name | +Value | +Description | +
---|---|---|
oneof acl_event.ack | +bool | +If true the agent is now actively watching for events. | +
oneof acl_event.on_acl_sync | +OnAclSync | +All pending transactions have been successfully committed to hardware. | +
oneof acl_event.on_acl_sync_fail | +OnAclSyncFail | +A problem has stopped the ACL configuration from being committed to hardware. | +
Empty message. + +
+An acl that was created by this application.
+Name | +Value | +Description | +
---|---|---|
key | +AclKey | ++ |
Empty message. + +
+An acl that was created by this application.
+Name | +Value | +Description | +
---|---|---|
key | +AclKey | ++ |
Name | +Value | +Description | +
---|---|---|
requests | +repeated AclApplyRequest | +List of AclApplyRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in the event of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated AclCountersEnabledSetRequest | +List of AclCountersEnabledSetRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in the event of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated AclDelRequest | +List of AclDelRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in the event of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated AclFragmentsEnabledSetRequest | +List of AclFragmentsEnabledSetRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in the event of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated AclRuleDelRequest | +List of AclRuleDelRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in the event of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated AclRuleSetRequest | +List of AclRuleSetRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in the event of failure. | +
Name | +Value | +Description | +
---|---|---|
source_addr | +bytes | +The source IP address. | +
dest_addr | +bytes | +The destination IP address. | +
source_port | +uint32 | +The source port. Must be in range 0 to 65535. | +
dest_port | +uint32 | +The desitionation port. Must be in range 0 to 65535. | +
ttl | +uint32 | +Time to live if IPv4 otherwise hop limit if IPv6. Must be in range 0 to 255. | +
tos | +uint32 | +Type of service if IPv4 othersiwe traffic class if IPv6. Must be in range 0 to 255 | +
recipient_intf | +IntfId | +Recipient interface. | +
Name | +Value | +Description | +
---|---|---|
dgram_allowed | +bool | +True if packet is allowed otherwise false if it should be dropped. | +
Notification for when all pending transactions have been successfully committed + to hardware. May be called multiple times for a single transaction or only once + for a whole bunch of seperate updates. May also be called due to ACL updates + made using the CLI.
+Empty message. + +
+Notification for when a problem has stopped ACL configuration from being + committed to hardware. The config must be modified in some way to get Sysdb and + hardware back in sync. The most common problem is too many ACLs or ACL entries. + It is up to the client to find and fix the issue. After committing the + required modifications an on_acl_sync notification will be sent if the problem is + fixed otherwsie another on_acl_sync_fail notification will be sent to indicate + there is still a problem.
+Note: Multiple nofitications may be sent for a single problem and notifications + may be sent due to misconfigurations made using the CLI.
+Name | +Value | +Description | +
---|---|---|
linecard | +string | +The linecard reporting the issue. | +
message | +string | +An error message describing the problem. | +
Name | +Value | +Description | +
---|---|---|
source_addr | +bytes | +The source IP address. | +
dest_addr | +bytes | +The destination IP address. | +
protocol | +uint32 | +Optional: The protocol. Must be in range 0 to 255. | +
source_port | +uint32 | +Optional: The source port. Must be in range 0 to 65535. | +
dest_port | +uint32 | +Optional: The desitionation port. Must be in range 0 to 65535. | +
Name | +Value | +Description | +
---|---|---|
stream_allowed | +bool | +True if the connection is allowed otherwise false if it should be dropped. | +
An ACL key is the combination of its name and ACL type.
+EosSdk reference: eos::acl_key_t
+Name | +Value | +Description | +
---|---|---|
acl_name | +string | ++ |
acl_type | +AclType | ++ |
A UDP or TCP port specifier.
+EosSdk reference: eos::acl_port_spec_t
+Name | +Value | +Description | +
---|---|---|
oneof oper_present.oper | +AclRangeOperator | +Default value is ACL_RANGE_ANY. | +
ports | +repeated uint32 | +Must be in range 0 to 65535. | +
Contains common fields for ACL rules.
+EosSdk reference: eos::acl_rule_base_t
+Name | +Value | +Description | +
---|---|---|
oneof action_present.action | +AclAction | +Default value is ACL_PERMIT. | +
log | +bool | ++ |
An Ethernet ACL rule which can be applied to Ethernet, Vlan and MLAG interfaces.
+EosSdk reference: eos::acl_rule_eth_t
+Name | +Value | +Description | +
---|---|---|
base_fields | +AclRuleBase | ++ |
vlan | +uint32 | +Must be in range 0 to 65535. | +
oneof vlan_mask_present.vlan_mask | +uint32 | +Must be in range 0 to 65535. Default value is 0xFFF. | +
inner_vlan | +uint32 | +Must be in range 0 to 65535. | +
oneof inner_vlan_mask_present.inner_vlan_mask | +uint32 | +Must be in range 0 to 65535. Default value is 0xFFF. | +
source_addr | +bytes | ++ |
destination_addr | +bytes | ++ |
source_mask | +bytes | ++ |
destination_mask | +bytes | ++ |
oneof eth_protocol_present.eth_protocol | +uint32 | +Default value is 0xFFFFFFFF. | +
An individual ACL rule for IPv4 or IPv6 ACLs.
+EosSdk reference: eos::acl_rule_ip_t
+Name | +Value | +Description | +
---|---|---|
base_fields | +AclRuleBase | ++ |
vlan | +uint32 | +Must be in range 0 to 65535. | +
oneof vlan_mask_present.vlan_mask | +uint32 | +Must be in range 0 to 65535. Default value is 0xFFF. | +
inner_vlan | +uint32 | +Must be in range 0 to 65535. | +
oneof inner_vlan_mask_present.inner_vlan_mask | +uint32 | +Must be in range 0 to 65535. Default value is 0xFFF. | +
ip_protocol | +uint32 | +Must be in range 0 to 255. | +
ttl | +AclTtlSpec | ++ |
source_addr | +IpAddrMask | ++ |
destination_addr | +IpAddrMask | ++ |
source_port | +AclPortSpec | ++ |
destination_port | +AclPortSpec | ++ |
nexthop_group | +string | ++ |
tcp_flags | +uint32 | +Bitmask of TCP flags. Bits should match the desired flag values defined in the enum AclTcpFlag. Must be in range 0 to 65535. | +
oneof ip_type_present.ip_type | +AclIpType | +Default value is ACL_IP_TYPE_ANY. | +
established | +bool | ++ |
oneof icmp_type_present.icmp_type | +uint32 | +Default value is 65535. | +
oneof icmp_code_present.icmp_code | +uint32 | +Must be in range 0 to 65535. Default value is 65535. | +
priority_value | +uint32 | +Must be in range 0 to 255. | +
priority_mask | +uint32 | +Must be in range 0 to 255. | +
match_fragments | +bool | ++ |
match_ip_priority | +bool | ++ |
A TTL specifier, used in an IP ACL rule to define TTLs to match.
+EosSdk reference: eos::acl_ttl_spec_t
+Name | +Value | +Description | +
---|---|---|
oneof oper_present.oper | +AclRangeOperator | +Default value is ACL_RANGE_ANY. | +
ttl | +uint32 | +Must be in range 0 to 255. | +
The action to take for an individual ACL rule.
+EosSdk reference: eos::acl_action_t
+Name | +Value | +Description | +
---|---|---|
ACL_ACTION_NULL | +0 | ++ |
ACL_PERMIT | +1 | ++ |
ACL_DENY | +2 | ++ |
The direction in which an ACL is applied. Can apply to both directions by +specifying them in two separate calls.
+EosSdk reference: eos::acl_direction_t
+Name | +Value | +Description | +
---|---|---|
ACL_DIRECTION_NULL | +0 | ++ |
ACL_IN | +1 | ++ |
ACL_OUT | +2 | ++ |
IP traffic type to be matched.
+EosSdk reference: eos::acl_ip_type_t
+Name | +Value | +Description | +
---|---|---|
ACL_IP_TYPE_NOT_SET | +0 | ++ |
ACL_IP_TYPE_ANY | +1 | ++ |
ACL_IP_TYPE_IP | +2 | ++ |
ACL_IP_TYPE_MPLS | +3 | ++ |
The type of range operator for TTL and port specifications.
+EosSdk reference: eos::acl_range_operator_t
+Name | +Value | +Description | +
---|---|---|
ACL_RANGE_NULL | +0 | ++ |
ACL_RANGE_ANY | +1 | ++ |
ACL_RANGE_EQ | +2 | ++ |
ACL_RANGE_GT | +3 | ++ |
ACL_RANGE_LT | +4 | ++ |
ACL_RANGE_NEQ | +5 | ++ |
ACL_RANGE_BETWEEN | +6 | ++ |
TCP flags used in IP rules to specify which TCP flags to match. Shows which bits +correspond to which flags.
+EosSdk reference: eos::acl_tcp_flag_t
+Name | +Value | +Description | +
---|---|---|
ACL_TCP_NULL | +0 | ++ |
ACL_TCP_FIN | +1 | ++ |
ACL_TCP_SYN | +2 | ++ |
ACL_TCP_RST | +4 | ++ |
ACL_TCP_PSH | +8 | ++ |
ACL_TCP_ACK | +16 | ++ |
ACL_TCP_URG | +32 | ++ |
ACL_TCP_ECE | +64 | ++ |
ACL_TCP_CWR | +128 | ++ |
The ACL type.
+EosSdk reference: eos::acl_type_t
+Name | +Value | +Description | +
---|---|---|
ACL_TYPE_NULL | +0 | ++ |
ACL_TYPE_IPV4 | +1 | ++ |
ACL_TYPE_IPV6 | +2 | ++ |
ACL_TYPE_ETH | +3 | ++ |
ACL_TYPE_MPLS | +4 | ++ |
++rpc watch(WatchAgentRequest) + WatchAgentResponse
+
Subscription to monitor changes of the agent. This request +stays active until it is cancelled from client side or the server is shut down. +Supported events: + eos::agent_handler::on_agent_option: + Configuration option of the agent has changed.
+The events on_initialized and on_agent_enabled are out of rpc scope since +they imply on creation and destruction of the RPC server itself.
+EosSdk reference: eos::agent_handler (class)
+++rpc agent_id(AgentIdRequest) + AgentIdResponse
+
Queries for the unique numeric ID of the given agent.
+EosSdk reference: eos::agent_mgr::id
+++rpc enabled(AgentEnabledRequest) + AgentEnabledResponse
+
Queries whether the agent is enabled or not.
+EosSdk reference: eos::agent_mgr::enabled
+++rpc agent_option(AgentOptionRequest) + AgentOptionResponse
+
Queries for the configured value of the given agent option.
+EosSdk reference: eos:agent_mgr::agent_option
+++rpc agent_option_exists(AgentOptionExistsRequest) + AgentOptionExistsResponse
+
Queries whether the given option exists in the configuration or not.
+EosSdk reference: eos::agent_mgr::agent_option_exists
+++rpc agent_options(AgentOptionsRequest) + AgentOptionsResponse
+
Enumerates all configured agent options.
+EosSdk reference: eos::agent::agent_option_iter
+++rpc status(AgentStatusRequest) + AgentStatusResponse
+
Queries for the last set value for the given status name.
+EosSdk reference: eos::agent::status
+++rpc statuses(AgentStatusesRequest) + AgentStatusesResponse
+
Enumerates all status values set by this agent.
+EosSdk reference: eos::agent::status_iter
+++rpc status_set(AgentStatusSetRequest) + AgentStatusSetResponse
+
Sets a status value for the given status name.
+EosSdk reference: eos::agent_mgr::status_set
+++rpc bulk_status_set(AgentBulkStatusSetRequest) + AgentBulkStatusSetResponse
+
Sets multiple status name/value pairs at once for this agent.
+EosSdk reference: eos::agent_mgr::status_set
+++rpc status_del(AgentStatusDelRequest) + AgentStatusDelResponse
+
Deletes the stored agent status for the given status name.
+EosSdk reference: eos::agent_mgr::status_del
+++rpc bulk_status_del(AgentBulkStatusDelRequest) + AgentBulkStatusDelResponse
+
Deletes multiple statuses at once for each given status name.
+EosSdk reference: eos::agent_mgr::status_del
+++rpc agent_uptime(AgentUptimeRequest) + AgentUptimeResponse
+
Gets the time elapsed since the start of this agent.
+EosSdk reference: eos::agent_mgr::agent_uptime
+++rpc ping(AgentPingRequest) + AgentPingResponse
+
Causes EosSdkRpc agent to echo the payload and verify that the SDK thread is +also responsive.
+This function is specific to RPC and does not match any EOS SDK function.
+ + + +Name | +Value | +Description | +
---|---|---|
requests | +repeated AgentStatusDelRequest | +Array of AgentStatusDelRequest. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successfully deleted statuses. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated AgentStatusSetRequest | +Array of AgentStatusSetRequest | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successfully deleted statuses. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
enabled | +bool | +True if the agent is enabled, otherwise False. | +
Name | +Value | +Description | +
---|---|---|
name | +string | +The name of the agent to query ID for. | +
Name | +Value | +Description | +
---|---|---|
id | +uint32 | +Numeric identifier for the agent. | +
Name | +Value | +Description | +
---|---|---|
name | +string | +The name of the option for which the notification is received. | +
value | +string | +The new option value. | +
Name | +Value | +Description | +
---|---|---|
name | +string | +The name of the agent option to query for. | +
Name | +Value | +Description | +
---|---|---|
exists | +bool | +True if the given option name exists, otherwise False. | +
Name | +Value | +Description | +
---|---|---|
name | +string | +The name of the agent option to query for. | +
Name | +Value | +Description | +
---|---|---|
value | +string | +The value for the given option name. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
name | +string | +Configured agent option name. | +
Name | +Value | +Description | +
---|---|---|
payload | +string | +A user-defined payload. | +
Name | +Value | +Description | +
---|---|---|
payload | +string | +An echo of the request's payload. | +
rpc_ack_timestamp | +uint64 | +Wall-time timestamp when the request gets acknowledged by the RPC thread expressed in nanoseconds. | +
sdk_ack_timestamp | +uint64 | +Wall-time timestamp when the request gets acknowledged by the SDK thread, expressed in nanoseconds. | +
Name | +Value | +Description | +
---|---|---|
name | +string | ++ |
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
name | +string | +The status name to query for. | +
Name | +Value | +Description | +
---|---|---|
value | +string | +The last set status value. | +
Name | +Value | +Description | +
---|---|---|
name | +string | +The status name to set. | +
value | +string | +The corresponding status value to set. | +
Empty message. + +
+Empty message. + +
+Name | +Value | +Description | +
---|---|---|
name | +string | +Status value set by this agent. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
seconds | +double | +The elapsed time in seconds. | +
Name | +Value | +Description | +
---|---|---|
ack | +bool | +Set to true when an ackowledgment is desired. | +
Events are streamed as changes happen.
+Name | +Value | +Description | +
---|---|---|
oneof agent_event.option_event | +AgentOption | ++ |
ack | +bool | +If true, this is not an event and the fields below are invalid. | +
++rpc watch(BgpPeerWatchRequest) + BgpPeerWatchResponse
+
Subscription to monitor changes to BGP peers. This request stays active +until the client cancels or the server shuts down.
+EosSdk reference: eos::bgp_peer_handler (class)
+++rpc exists(BgpPeerExistsRequest) + BgpPeerExistsResponse
+
Queries whether a BGP peer exists or not.
+EosSdk reference: eos::bgp_mgr::exists.
+++rpc peer_state(BgpPeerStateRequest) + BgpPeerStateResponse
+
Queries the state of a peer session.
+EosSdk reference: eos::bgp_mgr::peer_state.
+ + + +Name | +Value | +Description | +
---|---|---|
peer_key | +BgpPeerKey | +The key of the BGP peer to query. | +
Name | +Value | +Description | +
---|---|---|
exists | +bool | +True if the BGP peer exists otherwise false. | +
Name | +Value | +Description | +
---|---|---|
peer_key | +BgpPeerKey | +The key of the BGP peer to query. | +
Name | +Value | +Description | +
---|---|---|
peer_state | +BgpPeerState | +State of the specified peer session. | +
Name | +Value | +Description | +
---|---|---|
ack | +bool | +Set to true if an immediate acknowledgement is desired. | +
oneof overload.all | +bool | +True if all BGP peers should be watched. | +
oneof overload.peer_key | +BgpPeerKey | +The peer key of a particular peer to watch. | +
Name | +Value | +Description | +
---|---|---|
ack | +bool | +If true the agent is now actively watching for events. | +
oneof peer_event.on_peer_set | +OnBgpPeerSet | +The specified BGP peer has been programmed by the BGP agent. | +
oneof peer_event.on_peer_del | +OnBgpPeerDel | +The specified BGP peer has been deleted from the BGP agent. | +
on_peer_state | +OnBgpPeerState | +The specified BGP peer changed state. | +
Name | +Value | +Description | +
---|---|---|
peer_key | +BgpPeerKey | ++ |
Name | +Value | +Description | +
---|---|---|
peer_key | +BgpPeerKey | ++ |
Name | +Value | +Description | +
---|---|---|
peer_key | +BgpPeerKey | ++ |
peer_state | +BgpPeerState | ++ |
++rpc watch(BgpPathWatchRequest) + BgpPathWatchResponse
+
Subscription to monitor changes to bgp paths. This request +stays active until the client cancels or the server shuts down. +When all = false and no version is specified, this request has no effect.
+EosSdk reference: eos::bgp_path_handler (class)
+++rpc ipv4_unicast_paths(Ipv4UnicastPathsRequest) + Ipv4UnicastPathsResponse
+
Iterates through all IPv4 paths in adj-RIB-in that match the search criteria.
+EosSdk reference: eos::bgp_path_mgr::ipv4_unicast_path_iter
+++rpc ipv4_unicast_path(Ipv4UnicastPathRequest) + Ipv4UnicastPathResponse
+
Queries a single path, given its key and search criteria.
+EosSdk reference: eos::bgp_path_mgr::ipv4_unicast_path
+++rpc ipv4_unicast_bgp_convergence(Ipv4UnicastBgpConvergenceRequest) + Ipv4UnicastBgpConvergenceResponse
+
Queries if IPv4 family has converged.
+EosSdk reference: eos::bgp_path_mgr::ipv4_unicast_bgp_convergence
+++rpc ipv6_unicast_paths(Ipv6UnicastPathsRequest) + Ipv6UnicastPathsResponse
+
Iterates through adj-RIB-in for paths that match the criteria.
+EosSdk reference: eos::bgp_path_mgr::ipv6_unicast_path_iter
+++rpc ipv6_unicast_path(Ipv6UnicastPathRequest) + Ipv6UnicastPathResponse
+
Queries a single path, given its key and search criteria.
+EosSdk reference: eos::bgp_path_mgr::ipv6_unicast_path
+++rpc ipv6_unicast_bgp_convergence(Ipv6UnicastBgpConvergenceRequest) + Ipv6UnicastBgpConvergenceResponse
+
Queries if IPv6 family has converged.
+EosSdk reference: eos::bgp_path_mgr::ipv6_unicast_bgp_convergence
+ + + +Name | +Value | +Description | +
---|---|---|
oneof overloads.all_paths | +bool | ++ |
oneof overloads.ipv4_unicast_paths | +bool | +True if IPv4 unicast paths should be monitored. | +
oneof overloads.ipv6_unicast_paths | +bool | +True if IPv6 unicast paths should be monitored. | +
ack | +bool | +Set to true when an ackowledgment is desired. | +
Events are streamed as changes happen.
+Name | +Value | +Description | +
---|---|---|
ip_version | +IpVersion | +IP family affected by the event. | +
oneof events.path_key | +BgpPathKey | +Path changed in adj-RIB-in. | +
oneof events.converged | +bool | +BGP convergence changed for that IP family. | +
ack | +bool | +If true, this is not an event and the fields below are invalid. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
converged | +bool | +True if IPv4 family has converged. | +
Name | +Value | +Description | +
---|---|---|
path_key | +BgpPathKey | ++ |
path_options | +BgpPathOptions | ++ |
Name | +Value | +Description | +
---|---|---|
path | +BgpPath | +Path matching criteria or empty if not found. | +
Name | +Value | +Description | +
---|---|---|
path_options | +BgpPathOptions | ++ |
Name | +Value | +Description | +
---|---|---|
path | +BgpPath | +List of paths that match the criteria. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
converged | +bool | +True if IPv6 family has converged. | +
Name | +Value | +Description | +
---|---|---|
path_key | +BgpPathKey | ++ |
path_options | +BgpPathOptions | ++ |
Name | +Value | +Description | +
---|---|---|
path | +BgpPath | +Path matching criteria or empty if not found. | +
Name | +Value | +Description | +
---|---|---|
path_options | +BgpPathOptions | ++ |
Name | +Value | +Description | +
---|---|---|
path | +BgpPath | +A path that matches the criteria. | +
Name | +Value | +Description | +
---|---|---|
path_key | +BgpPathKey | ++ |
path_attrs | +BgpPathAttrs | ++ |
Name | +Value | +Description | +
---|---|---|
next_hop | +bool | +Perform next hop lookup. | +
community_list | +bool | +Perform community list lookup. | +
Name | +Value | +Description | +
---|---|---|
next_hop | +bytes | ++ |
origin | +int32 | ++ |
med | +uint32 | ++ |
local_pref | +uint32 | ++ |
community_list | +repeated uint32 | ++ |
Name | +Value | +Description | +
---|---|---|
prefix | +Prefix | ++ |
peer_addr | +bytes | ++ |
vrf_name | +string | ++ |
Name | +Value | +Description | +
---|---|---|
stage | +BgpReceiveRouteStages | +Either BGP_PATH_PRE_POLICY or BGP_PATH_POST_POLICY. | +
attrs | +BgpPathAttrFields | ++ |
Name | +Value | +Description | +
---|---|---|
BGP_PATH_PRE_POLICY | +0 | ++ |
BGP_PATH_POST_POLICY | +1 | ++ |
Name | +Value | +Description | +
---|---|---|
vrf_name | +string | ++ |
peer_addr | +string | ++ |
Name | +Value | +Description | +
---|---|---|
BGP_PEER_STATE_UNKNOWN | +0 | ++ |
BGP_PEER_STATE_IDLE | +1 | ++ |
BGP_PEER_STATE_CONNECT | +2 | ++ |
BGP_PEER_STATE_ACTIVE | +3 | ++ |
BGP_PEER_STATE_OPENSENT | +4 | ++ |
BGP_PEER_STATE_OPENCONFIRM | +5 | ++ |
BGP_PEER_STATE_ESTABLISHED | +6 | ++ |
++rpc run_show_cmd(RunShowCmdRequest) + RunShowCmdResponse
+
Queries for the output of a CLI show command.
+EosSdk reference: eos::eapi_mgr::run_show_cmd
+++rpc run_config_cmds(RunConfigCmdsRequest) + RunConfigCmdsResponse
+
Executes one or more configuration commands.
+EosSdk reference: eos::eapi_mgr::run_config_cmds
+ + + +Name | +Value | +Description | +
---|---|---|
commands | +repeated string | +Array of configuration commands to execute. | +
Name | +Value | +Description | +
---|---|---|
response | +EapiResponse | +EapiResponse, containing any output and/or any errors. | +
Name | +Value | +Description | +
---|---|---|
command | +string | +The show command to execute e.g "show version". | +
Name | +Value | +Description | +
---|---|---|
response | +EapiResponse | +EapiResponse, containing the output and/or any errors. | +
++rpc watch(EthLagIntfWatchRequest) + EthLagIntfWatchResponse
+
Subscription to monitor LAG interface events. This request +stays active until the client cancels or the server shuts down. +When all = false and no version is specified, this request has no effect.
+EosSdk reference: eos::eth_lag_intf_handler (class)
+++rpc eth_lag_intfs(EthLagIntfsRequest) + EthLagIntfsResponse
+
Returns a list of interfaces configured as members of any LAG interface in +system.
+EosSdk reference:: eos::eth_lag_intf_mgr::eth_lag_intf_iter
+++rpc exists(EthLagIntfExistsRequest) + EthLagIntfExistsResponse
+
Queries whether an ethernet LAG interface exists.
+EosSdk reference:: eos::eth_lag_intf_mgr::eth_lag_intf_exists
+++rpc eth_lag_intf_members(EthLagIntfMembersRequest) + EthLagIntfMembersResponse
+
Returns a list of physical interfaces configured as members of any LAG +interface in the system.
+EosSdk reference:: eos::eth_lag_intf_mgr::eth_lag_intf_member_iter
+++rpc eth_lag_intf_is(EthLagIntfIsRequest) + EthLagIntfIsResponse
+
Creates a LAG interface.
+EosSdk reference:: eos::eth_lag_intf_mgr::eth_lag_intf_is
+++rpc bulk_eth_lag_intf_is(BulkEthLagIntfIsRequest) + BulkEthLagIntfIsResponse
+
Creates many LAG interfaces in a single request.
+EosSdk reference:: eos::eth_lag_intf_mgr::eth_lag_intf_is
+++rpc eth_lag_intf(EthLagIntfRequest) + EthLagIntfResponse
+
Returns the details for a LAG interface given its ID.
+EosSdk reference:: eos::eth_lag_intf_mgr::eth_lag_intf
+++rpc eth_lag_intf_del(EthLagIntfDelRequest) + EthLagIntfDelResponse
+
Deletes a LAG interface.
+EosSdk reference:: eos::eth_lag_intf_mgr::eth_lag_intf_del
+++rpc bulk_eth_lag_intf_del(BulkEthLagIntfDelRequest) + BulkEthLagIntfDelResponse
+
Deletes many LAG interfaces in a single request.
+EosSdk reference:: eos::eth_lag_intf_mgr::eth_lag_intf_del
+++rpc speed(EthLagIntfSpeedRequest) + EthLagIntfSpeedResponse
+
Returns the speed of a LAG interface, in Mbits/s.
+EosSdk reference:: eos::eth_lag_intf_mgr::speed
+++rpc min_links(EthLagIntfMinLinksRequest) + EthLagIntfMinLinksResponse
+
Returns the minimum number of links that must be up for a LAG interface to be +considered up too.
+EosSdk reference:: eos::eth_lag_intf_mgr::min_links
+++rpc min_links_is(EthLagIntfMinLinksIsRequest) + EthLagIntfMinLinksIsResponse
+
Sets min links values for a LAG interface.
+EosSdk reference:: eos::eth_lag_intf_mgr::eth_lag_intf_min_links_is
+++rpc bulk_min_links_is(BulkEthLagIntfMinLinksIsRequest) + BulkEthLagIntfMinLinksIsResponse
+
Sets min links values for many LAG interfaces.
+EosSdk reference:: eos::eth_lag_intf_mgr::eth_lag_intf_min_links_is
+++rpc fallback_type_is(EthLagIntfFallbackTypeIsRequest) + EthLagIntfFallbackTypeIsResponse
+
Sets the fallback type for a LAG interface.
+EosSdk reference: eth_lag_intf_mgr::fallback_type_is
+++rpc bulk_fallback_type_is(BulkEthLagIntfFallbackTypeIsRequest) + BulkEthLagIntfFallbackTypeIsResponse
+
Sets the fallback type for many LAG interfaces.
+EosSdk reference: eth_lag_intf_mgr::fallback_type_is
+++rpc fallback_type(EthLagIntfFallbackTypeRequest) + EthLagIntfFallbackTypeResponse
+
Returns the fallback mode for a LAG interface.
+EosSdk reference: eth_lag_intf_mgr::fallback_type
+++rpc fallback_timeout_is(EthLagIntfFallbackTimeoutIsRequest) + EthLagIntfFallbackTimeoutIsResponse
+
Sets the fallback timeout for a LAG interface, in seconds.
+EosSdk reference: eth_lag_intf_mgr::fallback_timeout_is
+++rpc bulk_fallback_timeout_is(BulkEthLagIntfFallbackTimeoutIsRequest) + BulkEthLagIntfFallbackTimeoutIsResponse
+
Sets fallback timeouts for multiple LAG interfaces, in seconds.
+EosSdk reference: eth_lag_intf_mgr::fallback_timeout_is
+++rpc fallback_timeout(EthLagIntfFallbackTimeoutRequest) + EthLagIntfFallbackTimeoutResponse
+
Returns the LACP active mode timeout value, in seconds.
+EosSdk reference: eth_lag_intf_mgr::fallback_timeout
+++rpc fallback_timeout_default(EthLagIntfFallbackTimeoutDefaultRequest) + EthLagIntfFallbackTimeoutDefaultResponse
+
Returns the default fallback timeout value, in seconds.
+EosSdk reference: eth_lag_intf_mgr::fallback_timeout_default
+++rpc membership_set(EthLagIntfMembershipSetRequest) + EthLagIntfMembershipSetResponse
+
Adds a physical interface to a LAG interface.
+EosSdk reference: eth_lag_intf_mgr::membership_set
+++rpc bulk_membership_set(BulkEthLagIntfMembershipSetRequest) + BulkEthLagIntfMembershipSetResponse
+
Adds multiple physical interfaces to multiple LAG interfaces.
+EosSdk reference: eth_lag_intf_mgr::membership_set
+++rpc membership_del(EthLagIntfMembershipDelRequest) + EthLagIntfMembershipDelResponse
+
Removes an interface from a LAG interface.
+EosSdk reference: eth_lag_intf_mgr::membership_del
+++rpc bulk_membership_del(BulkEthLagIntfMembershipDelRequest) + BulkEthLagIntfMembershipDelResponse
+
Removes multiple interfaces from muliple LAG interfaces.
+EosSdk reference: eth_lag_intf_mgr::membership_del
+++rpc membership(EthLagIntfMembershipRequest) + EthLagIntfMembershipResponse
+
Returns the LAG interface ID to which the physical interface is configured +to belong.
+EosSdk reference: eth_lag_intf_mgr::membership
+++rpc membership_status(EthLagIntfMembershipStatusRequest) + EthLagIntfMembershipStatusResponse
+
Returns the member interface's status details.
+EosSdk reference: eth_lag_intf_mgr::membership_status
+++rpc member_priority_is(EthLagIntfMemberPriorityIsRequest) + EthLagIntfMemberPriorityIsResponse
+
Sets the port LACP priority.
+EosSdk reference: eth_lag_intf_mgr::member_priority_is
+++rpc bulk_member_priority_is(BulkEthLagIntfMemberPriorityIsRequest) + BulkEthLagIntfMemberPriorityIsResponse
+
Sets LACP priorities of multiple ports.
+EosSdk reference: eth_lag_intf_mgr::member_priority_is
+++rpc member_priority(EthLagIntfMemberPriorityRequest) + EthLagIntfMemberPriorityResponse
+
Gets the interface's configured LACP priority.
+EosSdk reference: eth_lag_intf_mgr::member_priority
+++rpc member_mode_is(EthLagIntfMemberModeIsRequest) + EthLagIntfMemberModeIsResponse
+
Sets the mode of this member in a LAG interface.
+EosSdk reference: eth_lag_intf_mgr::member_mode_is
+++rpc bulk_member_mode_is(BulkEthLagIntfMemberModeIsRequest) + BulkEthLagIntfMemberModeIsResponse
+
Sets the modes of multiple members in LAG interfaces.
+EosSdk reference: eth_lag_intf_mgr::member_mode_is
+++rpc member_mode(EthLagIntfMemberModeRequest) + EthLagIntfMemberModeResponse
+
Returns the mode of this member in a LAG interface.
+EosSdk reference: eth_lag_intf_mgr::member_mode
+++rpc member_timeout_is(EthLagIntfMemberTimeoutIsRequest) + EthLagIntfMemberTimeoutIsResponse
+
Sets the LACP timeout for a member in a LAG, in seconds.
+EosSdk reference: eth_lag_intf_mgr::member_timeout_is
+++rpc bulk_member_timeout_is(BulkEthLagIntfMemberTimeoutIsRequest) + BulkEthLagIntfMemberTimeoutIsResponse
+
Sets the LACP timeout for multiple members in LAG interfaces, in seconds.
+EosSdk reference: eth_lag_intf_mgr::member_timeout_is
+++rpc member_timeout(EthLagIntfMemberTimeoutRequest) + EthLagIntfMemberTimeoutResponse
+
Gets the configured LACP timeout for a member in a LAG, in seconds.
+EosSdk reference: eth_lag_intf_mgr::member_timeout
+++rpc member_active(EthLagIntfMemberActiveRequest) + EthLagIntfMemberActiveResponse
+
Returns whether this interface is active in a LAG.
+EosSdk reference: eth_lag_intf_mgr::member_active
+++rpc member_time(EthLagIntfMemberTimeRequest) + EthLagIntfMemberTimeResponse
+
Returns the time in seconds since reboot when this interface was last added +or removed as a member from a LAG.
+EosSdk reference: eth_lag_intf_mgr::member_time
+++rpc member_reason(EthLagIntfMemberReasonRequest) + EthLagIntfMemberReasonResponse
+
Returns the reason this interface isn't active in a LAG.
+EosSdk reference: eth_lag_intf_mgr::member_reason
+ + + +Name | +Value | +Description | +
---|---|---|
requests | +repeated EthLagIntfDelRequest | +List of individual requests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successful requests. | +
status | +RpcResponseStatus | +Cause of error (if any). | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated EthLagIntfFallbackTimeoutIsRequest | +List of individual requests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successful requests. | +
status | +RpcResponseStatus | +Cause of error (if any). | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated EthLagIntfFallbackTypeIsRequest | +List of individual requests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successful requests. | +
status | +RpcResponseStatus | +Cause of error (if any). | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated EthLagIntfIsRequest | +List of individual requests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successful requests. | +
status | +RpcResponseStatus | +Cause of error (if any). | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated EthLagIntfMemberModeIsRequest | +List of individual requests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successful requests. | +
status | +RpcResponseStatus | +Cause of error (if any). | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated EthLagIntfMemberPriorityIsRequest | +List of individual requests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successful requests. | +
status | +RpcResponseStatus | +Cause of error (if any). | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated EthLagIntfMemberTimeoutIsRequest | +List of individual requests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successful requests. | +
status | +RpcResponseStatus | +Cause of error (if any). | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated EthLagIntfMembershipDelRequest | +List of individual requests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successful requests. | +
status | +RpcResponseStatus | +Cause of error (if any). | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated EthLagIntfMembershipSetRequest | +List of individual requests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successful requests. | +
status | +RpcResponseStatus | +Cause of error (if any). | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated EthLagIntfMinLinksIsRequest | +List of individual requests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successful requests. | +
status | +RpcResponseStatus | +Cause of error (if any). | +
Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
Name | +Value | +Description | +
---|---|---|
exists | +bool | +True if LAG interface exists. | +
Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
Name | +Value | +Description | +
---|---|---|
fallback_timeout | +uint32 | +Default fallback timeout, in seconds. | +
Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
fallback_timeout | +uint32 | +Fallback timeout, in seconds. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
Name | +Value | +Description | +
---|---|---|
fallback_timeout | +uint32 | +LAG interface fallback timeout, in seconds. | +
Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
fallback_type | +EthLagIntfFallbackType | ++ |
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
Name | +Value | +Description | +
---|---|---|
fallback_type | +EthLagIntfFallbackType | +LAG interface fallback type. | +
Name | +Value | +Description | +
---|---|---|
fields | +repeated EthLagIntfUpdateField | ++ |
Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
member_intf_id | +IntfId | +Interface ID for the member. | +
Name | +Value | +Description | +
---|---|---|
active | +bool | ++ |
Name | +Value | +Description | +
---|---|---|
member_intf_id | +IntfId | +Interface ID for the member. | +
mode | +EthLagIntfMemberLacpMode | +LACP member mode for LAG interface. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
member_intf_id | +IntfId | +Interface ID for the member. | +
Name | +Value | +Description | +
---|---|---|
mode | +EthLagIntfMemberLacpMode | +LACP member mode for LAG interface. | +
Name | +Value | +Description | +
---|---|---|
member_intf_id | +IntfId | +Interface ID for the member. | +
priority | +uint32 | +Member priority. Valid values from 0 to 65535 | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
member_intf_id | +IntfId | +Interface ID for the member. | +
Name | +Value | +Description | +
---|---|---|
priority | +uint32 | +Member priority. | +
Name | +Value | +Description | +
---|---|---|
member_intf_id | +IntfId | +Interface ID for the member. | +
Name | +Value | +Description | +
---|---|---|
member_reason | +string | ++ |
Name | +Value | +Description | +
---|---|---|
member_intf_id | +IntfId | +Interface ID for the member. | +
Name | +Value | +Description | +
---|---|---|
member_time | +double | ++ |
Name | +Value | +Description | +
---|---|---|
member_intf_id | +IntfId | +Interface ID for member. | +
timeout | +EthLagIntfMemberLacpTimeout | +LACP timeout for member. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
member_intf_id | +IntfId | +Interface ID for the member. | +
Name | +Value | +Description | +
---|---|---|
response | +EthLagIntfMemberLacpTimeout | ++ |
Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
Name | +Value | +Description | +
---|---|---|
member_intf_id | +IntfId | +Interface ID for the member. | +
Name | +Value | +Description | +
---|---|---|
member_intf_id | +IntfId | +Interface ID for the member. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
member_intf_id | +IntfId | +Interface ID for the member. | +
Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
Name | +Value | +Description | +
---|---|---|
member_intf_id | +IntfId | +Interface ID for the member. | +
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
mode | +EthLagIntfMemberLacpMode | +LACP member mode for LAG interface. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
member_intf_id | +IntfId | +Interface ID for the member. | +
Name | +Value | +Description | +
---|---|---|
membership | +EthLagIntfMembership | +membership details. | +
Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
min_links | +uint32 | +Minimum number of links that need to be up for LAG to be considered up. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
Name | +Value | +Description | +
---|---|---|
min_links | +uint32 | +Minimum number of links that need to be up for LAG to be considered up. | +
Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
Name | +Value | +Description | +
---|---|---|
response | +EthLagIntf | +LAG interface parameters. | +
Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
Name | +Value | +Description | +
---|---|---|
speed | +uint64 | +Interface speed, in Mbits/s. | +
Name | +Value | +Description | +
---|---|---|
oneof overloads.all_intfs | +bool | +Watch all LAG interfaces. | +
oneof overloads.eth_lag_intf_id | +IntfId | +Watch a single interface. | +
ack | +bool | +Set to true if acknowledgment is desired. | +
dump_fields | +EthLagIntfFieldsControl | +Specification of which fields to receive on dump. | +
Name | +Value | +Description | +
---|---|---|
event | +EthLagIntfEvents | +Descriptor of the event. | +
eth_lag_intf_id | +IntfId | +LAG interface that changed state. | +
member_intf_id | +IntfId | +Member interface (if event is member related) | +
oneof speed_present.speed | +uint64 | ++ |
ack | +bool | +This message is merely an ack and not an event. | +
oneof eth_lag_intf_present.eth_lag_intf | +EthLagIntf | ++ |
all_member_intf_id | +repeated IntfId | ++ |
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
Possible events for LAG interfaces.
+Name | +Value | +Description | +
---|---|---|
ETH_LAG_INTF_EVENT_NONE | +0 | ++ |
ETH_LAG_INTF_EVENT_CREATED | +1 | ++ |
ETH_LAG_INTF_EVENT_DELETED | +2 | ++ |
ETH_LAG_INTF_EVENT_MEMBER_SET | +3 | ++ |
ETH_LAG_INTF_EVENT_MEMBER_DEL | +4 | ++ |
ETH_LAG_INTF_EVENT_SPEED | +5 | ++ |
ETH_LAG_INTF_MESSAGE_DUMP | +6 | +Dump message is not an actual event and gets prefixed as MESSAGE instead. | +
Name | +Value | +Description | +
---|---|---|
ETH_LAG_INTF_ALL_FIELDS | +0 | ++ |
ETH_LAG_INTF_FULL_MEMBER_LIST | +1 | ++ |
ETH_LAG_INTF_SPEED | +2 | ++ |
Name | +Value | +Description | +
---|---|---|
intf | +IntfId | +The ID of this lag interface. | +
speed | +uint64 | +The aggregated capacity of this LAG interface, in Mbits/s. | +
min_links | +uint32 | +Number of required links to bring up this LAG interface. | +
fallback_type | +EthLagIntfFallbackType | +Fallback type for this LAG interface. | +
fallback_timeout | +uint32 | +The LACP active mode timeout value, in seconds. | +
default_fallback_timeout | +uint32 | +Default value for the timeout above, in seconds. | +
Name | +Value | +Description | +
---|---|---|
eth_lag_intf_id | +IntfId | +Interface ID for the LAG interface. | +
active | +bool | +Indicates whether the interface is active in the LAG. | +
reason | +string | +If this interface is not in the LAG, the reason is stated here. | +
member_time | +double | +Time this interface got added to or removed from a LAG. | +
mode | +EthLagIntfMemberLacpMode | +The LACP mode this interface is configured in the LAG. | +
Name | +Value | +Description | +
---|---|---|
ETH_LAG_INTF_FALLBACK_NULL | +0 | +Not a valid fallback type. | +
ETH_LAG_INTF_FALLBACK_NONE | +1 | +No fallback if no LACPDUs seen. | +
ETH_LAG_INTF_FALLBACK_STATIC | +2 | +Fallback to static mode. | +
ETH_LAG_INTF_FALLBACK_INDIVIDUAL | +3 | +Fallback to individual mode. | +
Name | +Value | +Description | +
---|---|---|
ETH_LAG_INTF_MEMBER_LACP_MODE_NULL | +0 | ++ |
ETH_LAG_INTF_MEMBER_LACP_MODE_OFF | +1 | ++ |
ETH_LAG_INTF_MEMBER_LACP_MODE_PASSIVE | +2 | ++ |
ETH_LAG_INTF_MEMBER_LACP_MODE_ACTIVE | +3 | ++ |
Name | +Value | +Description | +
---|---|---|
ETH_LAG_INTF_MEMBER_LACP_TIMEOUT_NULL | +0 | ++ |
ETH_LAG_INTF_MEMBER_LACP_TIMEOUT_SHORT | +1 | ++ |
ETH_LAG_INTF_MEMBER_LACP_TIMEOUT_LONG | +2 | ++ |
Counter service.
+++rpc counters(EthPhyIntfCountersRequest) + EthPhyIntfCountersResponse
+
Gets the current counters of the given ethernet interface.
+EOS SDK reference: eos::eth_phy_intf_counter_mgr::counters
+++rpc bin_counters(EthPhyIntfBinCountersRequest) + EthPhyIntfBinCountersResponse
+
Gets the current bin counters of the given ethernet interface.
+EOS SDK reference: eos::eth_phy_intf_counter_mgr::bin_counters
+ +++rpc watch(EthPhyIntfWatchRequest) + EthPhyIntfWatchResponse
+
Subscription to monitor interface events. This request +stays active until the client cancels or the server shuts down. +When all = false and no version is specified, this request has no effect.
+EOS SDK reference:: eos::eth_phy_intf_handler (class)
+++rpc eth_phy_intfs(EthPhyIntfsRequest) + EthPhyIntfsResponse
+
Returns the list of interfaces.
+EOS SDK reference:: eos::eth_phy_intf_mgr::eth_phy_intf_iter
+++rpc exists(EthPhyIntfExistsRequest) + EthPhyIntfExistsResponse
+
Returns whether the given physical ethernet interface exists.
+If exists returns true, then this intf_id_t can be successfully +passed into every method of the eth_intf_mgr. If not, then +methods of the eth_intf_mgr can throw a no_such_interface_error +exception.
+The exists method of all *intf_mgr classes that manage a given +interface (ie intf_mgr, eth_intf_mgr, and eth_phy_intf_mgr for +physical interfaces) are all guaranteed to return the same +result.
+EOS SDK reference: : eos::eth_phy_intf_mgr::exists
+++rpc hardware_present(EthPhyIntfHardwarePresentRequest) + EthPhyIntfHardwarePresentResponse
+
Returns whether the underlying hardware for this interface is present.
+EOS SDK reference:: eos::eth_phy_intf_mgr::hardware_present
+++rpc burned_in_eth_addr(EthPhyIntfBurnedInEthAddrRequest) + EthPhyIntfBurnedInEthAddrResponse
+
Returns the "burned in" address of the interface.
+EOS SDK reference:: eos::eth_phy_intf_mgr::burned_in_eth_addr
+++rpc link_speed(EthPhyIntfLinkSpeedRequest) + EthPhyIntfLinkSpeedResponse
+
Returns the operational link speed.
+EOS SDK reference:: eos::eth_phy_intf_mgr::link_speed
+++rpc transceiver_present(EthPhyIntfTransceiverPresentRequest) + EthPhyIntfTransceiverPresentResponse
+
Returns the presence of transceiver for the given interface
+EOS SDK reference:: eos::eth_phy_intf_mgr::transceiver_present
+ + + +Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Interface to query counters. | +
Name | +Value | +Description | +
---|---|---|
counters | +EthPhyIntfBinCounters | +Counters for the requested interface. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Interface to be queried for. | +
Name | +Value | +Description | +
---|---|---|
eth_addr | +bytes | +Once hardware_present is true, burned_in_eth_addr is guaranteed to be available. Otherwise, the return is empty. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Interface to query counters. | +
Name | +Value | +Description | +
---|---|---|
counters | +EthPhyIntfCounters | +Counters for the requested interface. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Interface ID to be checked. | +
Name | +Value | +Description | +
---|---|---|
exists | +bool | +True if the interface exists. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Interface ID to be checked. | +
Name | +Value | +Description | +
---|---|---|
hardware_present | +bool | +True if hardware is present. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Interface to be queried for. | +
Name | +Value | +Description | +
---|---|---|
link_speed | +EthPhyIntfLinkSpeed | +One of the value speeds or ETH_PHY_INTF_LINK_SPEED_UNKNOWN if the hardware is not present. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Interface to be queried for. | +
Name | +Value | +Description | +
---|---|---|
transceiver_present | +bool | +True if the transceiver is present. | +
Name | +Value | +Description | +
---|---|---|
ack | +bool | +Set to true when instant acknowledgment is desired. | +
oneof options.all_intfs | +bool | +Subscribes events on all interfaces. | +
oneof options.intf_id | +IntfId | +Subscribes for events on a specified interface. | +
ack = True if message is only an acknowledgment or possible combinations of +events. Whenever multiple events are present in a single message, the event +on_eth_phy_intf_created, if present, is always the first in the sequence +and the event on_eth_intf_deleted, if present, is always the last one in +the original sequence. The order of the remaining events is not relevant.
+Name | +Value | +Description | +
---|---|---|
on_eth_phy_intf_create | +OnEthPhyIntfCreate | ++ |
on_eth_phy_intf_delete | +OnEthPhyIntfDelete | ++ |
on_eth_phy_intf_hardware_present | +OnEthPhyIntfHardwarePresent | ++ |
on_eth_phy_intf_link_speed | +OnEthPhyIntfLinkSpeed | ++ |
on_eth_phy_intf_transceiver_present | +OnEthPhyIntfTransceiverPresent | ++ |
ack | +bool | +Simple acknowledgment. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +A present interface. | +
Notification when a physical ethernet interface is created.
+After on_eth_phy_intf_create is sent, the given intf_id is +guaranteed to exist (ie eth_phy_intf_mgr::exists will return +true). At that point, the intf_id can be used with all methods +of the eth_phy_intf_mgr class.
+This also means that the intf_id can be used with all other +relevant *intf_mgr classes (ie intf_mgr and eth_intf_mgr).
+Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | ++ |
Notification when a physical ethernet interface is deleted.
+After on_eth_phy_intf_delete is sent, the given intf_id is +guaranteed to not exist (ie eth_phy_intf_mgr::exists will return +false). At that point, the intf_id cannot be used with any +methods in the eth_phy_intf_mgr class.
+This also means that the intf_id can no longer be used with all +other relevant *intf_mgr classes (ie intf_mgr and eth_intf_mgr).
+Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | ++ |
Notification when the presence of the underlying hardware for +the physical ethernet interface changes.
+When a physical interface goes from not-present to present, only +on_eth_phy_intf_hardware_present is sent even though +other attributes (like the link_speed) of the eth_phy_intf may +have changed. Similarly, when the physical interface hardware +goes from present to not-present, attributes of the eth_phy_intf +(like the link_speed) that are based on the underlying hardware +will go back to their default values even though specific events +for these changes are not sent. It is up to the user to handle +the new values of those attributes upon reception of +on_eth_phy_intf_hardware_present handler.
+Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | ++ |
hardware_present | +bool | ++ |
Notification when the operational link speed changes.
+Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | ++ |
link_speed | +EthPhyIntfLinkSpeed | ++ |
Notification when a transceiver insertion or removal is detected.
+Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | ++ |
transceiver_present | +bool | ++ |
Ethernet interface counters.
+All of these attributes have the same meanings as the corresponding objects in +the Ethernetlike (RFC3635) and RMON (RFC2819) MIBs.
+Name | +Value | +Description | +
---|---|---|
in_64_octet_frames | +uint64 | +Input 64 octet frame counter. | +
in_65_to_127_octet_frames | +uint64 | +Input 65 to 127 octet frame counter. | +
in_128_to_255_octet_frames | +uint64 | +Input 128 to 255 octet frame counter. | +
in_256_to_511_octet_frames | +uint64 | +Input 256 to 511 octet frame counter. | +
in_512_to_1023_octet_frames | +uint64 | +Input 512 to 1023 octet frame counter. | +
in_1024_to_1522_octet_frames | +uint64 | +Input 1024 to 1522 octet frame counter. | +
in_1523_to_max_octet_frames | +uint64 | +Input 1523 to max octet frame counter. | +
out_64_octet_frames | +uint64 | +Output 64 octet frame counter. | +
out_65_to_127_octet_frames | +uint64 | +Output 65 to 127 octet frame counter. | +
out_128_to_255_octet_frames | +uint64 | +Output 128 to 255 octet frame counter. | +
out_256_to_511_octet_frames | +uint64 | +Output 256 to 511 octet frame counter. | +
out_512_to_1023_octet_frames | +uint64 | +Output 512 to 1023 octet frame counter. | +
out_1024_to_1522_octet_frames | +uint64 | +Output 1024 to 1522 octet frame counter. | +
out_1523_to_max_octet_frames | +uint64 | +Output 1523 to max octet frame counter. | +
Ethernet interface counter.
+All of these attributes have the same meanings as the corresponding objects in +the Ethernetlike (RFC3635) and RMON (RFC2819) MIBs.
+Name | +Value | +Description | +
---|---|---|
single_collision_frames | +uint64 | +Etherlike-MIB singleCollisionFrames counter. | +
multiple_collision_frames | +uint64 | +Etherlike-MIB multipleCollisionFrames counter. | +
fcs_errors | +uint64 | +Etherlike-MIB fcsErrors counter. | +
alignment_errors | +uint64 | +Etherlike-MIB alignmentErrors counter. | +
deferred_transmissions | +uint64 | +Etherlike-MIB deferredTransmissions counter. | +
late_collisions | +uint64 | +Etherlike-MIB lateCollisions counter. | +
excessive_collisions | +uint64 | +Etherlike-MIB excessiveCollisions counter. | +
internal_mac_transmit_errors | +uint64 | +Etherlike-MIB internalMacTransmitErrors counter. | +
carrier_sense_errors | +uint64 | +Etherlike-MIB carrierSenseErrors counter. | +
internal_mac_receive_errors | +uint64 | +Etherlike-MIB internalMacReceiveErrors counter. | +
frame_too_shorts | +uint64 | +Etherlike-MIB frameTooShorts counter. | +
frame_too_longs | +uint64 | +Etherlike-MIB frameTooLongs counter. | +
sqe_test_errors | +uint64 | +Etherlike-MIB sqeTestErrors counter. | +
symbol_errors | +uint64 | +Etherlike-MIB symbolErrors counter. | +
in_unknown_opcodes | +uint64 | +Etherlike-MIB inUnknownOpcodes counter. | +
out_pause_frames | +uint64 | +Etherlike-MIB outPauseFrames counter. | +
in_pause_frames | +uint64 | +Etherlike-MIB inPauseFrames counter. | +
fragments | +uint64 | +RMON-MIB fragments counter. | +
jabbers | +uint64 | +RMON-MIB jabbers counter. | +
Name | +Value | +Description | +
---|---|---|
ETH_PHY_INTF_LINK_SPEED_UNKNOWN | +0 | ++ |
ETH_PHY_INTF_LINK_SPEED_10MBPS | +1 | ++ |
ETH_PHY_INTF_LINK_SPEED_100MBPS | +2 | ++ |
ETH_PHY_INTF_LINK_SPEED_1GBPS | +3 | ++ |
ETH_PHY_INTF_LINK_SPEED_2P5GBPS | +4 | ++ |
ETH_PHY_INTF_LINK_SPEED_5GBPS | +5 | ++ |
ETH_PHY_INTF_LINK_SPEED_10GBPS | +6 | ++ |
ETH_PHY_INTF_LINK_SPEED_25GBPS | +7 | ++ |
ETH_PHY_INTF_LINK_SPEED_40GBPS | +8 | ++ |
ETH_PHY_INTF_LINK_SPEED_50GBPS | +9 | ++ |
ETH_PHY_INTF_LINK_SPEED_100GBPS | +10 | ++ |
ETH_PHY_INTF_LINK_SPEED_200GBPS | +11 | ++ |
ETH_PHY_INTF_LINK_SPEED_400GBPS | +12 | ++ |
ETH_PHY_INTF_LINK_SPEED_800GBPS | +13 | ++ |
ETH_PHY_INTF_LINK_SPEED_UNEXPECTED | +14 | ++ |
This API reference is automatically generated from protofiles comments using the protoc-gen-doc plugin.
+Anyone is welcome to signal any generation problem by opening an issue on the GitHub repository so we can fix it ASAP.
+Feel free to read source protofiles from the repository if the documentation is not explicit enough. +Additionally, checking out the guides section might be helpful.
+ + + + + + + + + + + + + +++rpc intf_counters(IntfCountersRequest) + IntfCountersResponse
+
Queries the given interface for the current counters.
+EosSdk reference: eos::intf_counter_mgr::counters
+++rpc intf_traffic_rates(IntfTrafficRatesRequest) + IntfTrafficRatesResponse
+
Queries the given interface for the current traffic rates.
+EosSdk reference: eos::intf_counter_mgr::traffic_rates
+++rpc intf_traffic_rates_stream(IntfTrafficRatesStreamRequest) + IntfTrafficRatesStreamResponse
+
Streams traffic rate updates
+ +++rpc watch(WatchIntfRequest) + WatchIntfResponse
+
Subscription to monitor changes on interface properties or status. This request +stays active until it is cancelled from client side or the server is shut down. +Making this request with all = false and no intf_id has no effect.
+EosSdk reference: eos::intf_handler (class)
+++rpc intfs(IntfsRequest) + IntfsResponse
+
Enumerates the interfaces.
+EosSdk reference: eos::intf_mgr::intf_iter
+++rpc exists(IntfExistsRequest) + IntfExistsResponse
+
Queries whether an interface exists or not.
+EosSdk reference: eos::intf_mgr::exists
+++rpc kernel_intf_name(KernelIntfNameRequest) + KernelIntfNameResponse
+
Queries the kernel device for a particular interface.
+EosSdk reference: eos::intf_mgr::kernel_intf_name
+++rpc eos_intf_name(EosIntfNameRequest) + EosIntfNameResponse
+
Queries EOS interface name for a particular kernel device.
+EosSdk reference: eos::intf_mgr::eos_intf_name
+++rpc admin_enabled(AdminEnabledRequest) + AdminEnabledResponse
+
Queries if an interface is configured to be enabled.
+EosSdk reference: eos::intf_mgr::admin_enabled
+++rpc admin_enabled_is(AdminEnabledIsRequest) + AdminEnabledIsResponse
+
Changes the enabled status of an interface.
+EosSdk reference: eos::intf_mgr::admin_enabled_is
+++rpc bulk_admin_enabled_is(BulkAdminEnabledIsRequest) + BulkAdminEnabledIsResponse
+
Changes the enabled status of multiple interfaces.
+EosSdk reference: eos::intf_mgr::admin_enabled_is
+++rpc description(DescriptionRequest) + DescriptionResponse
+
Queries the description of an interface
+EosSdk reference: eos::intf_mgr::description
+++rpc description_is(DescriptionIsRequest) + DescriptionIsResponse
+
Changes the description of an interface
+EosSdk reference: eos::intf_mgr::description_is
+++rpc bulk_description_is(BulkDescriptionIsRequest) + BulkDescriptionIsResponse
+
Changes descriptions of multiple interfaces
+EosSdk reference: eos::intf_mgr::oper_description_is
+++rpc oper_status(OperStatusRequest) + OperStatusResponse
+
Queries the current operational status of the given interface.
+EosSdk reference: eos::intf_mgr::oper_status
+ + + +Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
enabled | +bool | +New enabled status for the interface. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Linux kernel device name for the interface. | +
Name | +Value | +Description | +
---|---|---|
enabled | +bool | +True if interface is enabled, false otherwise. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated AdminEnabledIsRequest | +Array of AdminEnabledIsRequest. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successful requests. | +
status | +RpcResponseStatus | +Error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated DescriptionIsRequest | +Array of DescriptionIsRequest. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successful requests. | +
status | +RpcResponseStatus | +Error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
description | +string | +New description for the interface. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
Name | +Value | +Description | +
---|---|---|
description | +string | +Description currently set for the interface. | +
Name | +Value | +Description | +
---|---|---|
name | +string | +Linux kernel device name for the interface. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
Name | +Value | +Description | +
---|---|---|
counters | +IntfCounters | +The counters associated with the interface. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
Name | +Value | +Description | +
---|---|---|
exists | +bool | +True if the interface is present, false otherwise. | +
Name | +Value | +Description | +
---|---|---|
fields | +repeated IntfWatchedField | ++ |
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
Name | +Value | +Description | +
---|---|---|
rates | +IntfTrafficRates | +The traffic rates associated with the interface. | +
Name | +Value | +Description | +
---|---|---|
ack | +bool | +Set to true when an ackowledgment is desired. | +
intf_name_regex | +string | +Regular expression to report only interfaces with matching names. When empty, all interfaces are sent. | +
Name | +Value | +Description | +
---|---|---|
ack | +bool | +If true the agent is now actively watching for events. | +
data | +map IntfTrafficRatesStreamResponse.DataEntry | +Traffic rates data | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Interface name | +
rates | +IntfTrafficRates | +The traffic rates associated with the interface. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
Name | +Value | +Description | +
---|---|---|
name | +string | +Linux kernel device name for the interface. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
Name | +Value | +Description | +
---|---|---|
status | +OperStatuses | +Operational status of the interface. | +
Name | +Value | +Description | +
---|---|---|
oneof overloads.all_intfs | +bool | ++ |
oneof overloads.intf_id | +IntfId | +Name of a particular interface to watch. | +
ack | +bool | +Set to true when an ackowledgment is desired. | +
dump_fields | +IntfFieldsControl | +Controls whether a dump of the existing state is performed and what data it contains. This dump takes place when the watcher starts up. At least one IntfWatchedField must be specified in order to perform a dump. | +
Events are streamed as changes happen.
+Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Interface whose status changed. | +
oneof event_present.event | +IntfEvents | +Interface has been added or removed. | +
oneof oper_status_present.status | +OperStatuses | ++ |
oneof admin_enabled_present.admin_enabled | +bool | +Enabled status has been changed. | +
oneof description_present.description | +string | +Interface's description has changed. | +
ack | +bool | +If true, this is not an event and the fields below are invalid. It will be sent immediately if a dump is not being performed and an acknowledgement was requested. If a dump is taking place it will instead be sent at the end of the dump regardless of whether an acknowledgement was requested or not. | +
Name | +Value | +Description | +
---|---|---|
EVENT_INTF_NO_CHANGES | +0 | ++ |
EVENT_INTF_CREATED | +1 | ++ |
EVENT_INTF_DELETED | +2 | ++ |
Name | +Value | +Description | +
---|---|---|
INTF_ALL_FIELDS | +0 | ++ |
INTF_OPER_STATUS | +1 | ++ |
INTF_ADMIN_ENABLED | +2 | ++ |
INTF_DESCRIPTION | +3 | ++ |
Name | +Value | +Description | +
---|---|---|
out_ucast_pkts | +uint64 | ++ |
out_multicast_pkts | +uint64 | ++ |
out_broadcast_pkts | +uint64 | ++ |
in_ucast_pkts | +uint64 | ++ |
in_multicast_pkts | +uint64 | ++ |
in_broadcast_pkts | +uint64 | ++ |
out_octets | +uint64 | ++ |
in_octets | +uint64 | ++ |
out_discards | +uint64 | ++ |
out_errors | +uint64 | ++ |
in_discards | +uint64 | ++ |
in_errors | +uint64 | ++ |
sample_time | +double | ++ |
Name | +Value | +Description | +
---|---|---|
name | +string | ++ |
Name | +Value | +Description | +
---|---|---|
out_pkts_rate | +double | ++ |
in_pkts_rate | +double | ++ |
out_bits_rate | +double | ++ |
in_bits_rate | +double | ++ |
sample_time | +double | ++ |
Name | +Value | +Description | +
---|---|---|
INTF_TYPE_NULL | +0 | ++ |
INTF_TYPE_OTHER | +1 | ++ |
INTF_TYPE_ETH | +2 | ++ |
INTF_TYPE_VLAN | +3 | ++ |
INTF_TYPE_MANAGEMENT | +4 | ++ |
INTF_TYPE_LOOPBACK | +5 | ++ |
INTF_TYPE_LAG | +6 | ++ |
INTF_TYPE_NULL0 | +7 | ++ |
INTF_TYPE_CPU | +8 | ++ |
INTF_TYPE_VXLAN | +9 | ++ |
Name | +Value | +Description | +
---|---|---|
INTF_OPER_STATUS_NULL | +0 | ++ |
INTF_OPER_STATUS_UP | +1 | ++ |
INTF_OPER_STATUS_DOWN | +2 | ++ |
++rpc watch(IpIntfWatchRequest) + IpIntfEvent
+
Subscription to monitor changes on the IP addresses of interfaces. This request +stays active until it is cancelled from client side or the server is shut down.
+EosSdk reference: eos::ip_intf_handler (class)
+++rpc exists(IpIntfExistsRequest) + IpIntfExistsResponse
+
Queries whether the given interface exists and is able to have IP addresses.
+EosSdk reference: eos::ip_intf_mgr::exists
+++rpc ip_addrs(IpIntfAddrsRequest) + IpIntfAddrsResponse
+
Queries all IP addresses associated with an interface.
+EosSdk reference: eos::ip_intf_mgr::ip_addrs
+++rpc ip_addrs_is(IpIntfAddrsIsRequest) + IpIntfAddrsIsResponse
+
Sets IP addresses for an interface.
+EosSdk reference: eos::ip_intf_mgr::ip_addrs_is
+++rpc bulk_ip_addrs_is(BulkIpIntfAddrsIsRequest) + BulkIpIntfAddrsIsResponse
+
Sets IP addresses for multiple interfaces.
+EosSdk reference: eos::ip_intf_mgr::ip_addrs_is
+++rpc ip_addr_modify(IpIntfAddrModifyRequest) + IpIntfAddrModifyResponse
+
Adds or deletes one address to an interface.
+EosSdk references: eos::ip_intf_mgr::ip_addr_add and +eos::ip_intf_mgr::ip_addr_del
+++rpc bulk_ip_addr_modify(BulkIpIntfAddrModifyRequest) + BulkIpIntfAddrModifyResponse
+
Applies multiple IP address changes in a single call.
+EosSdk references: eos::ip_intf_mgr::ip_addr_add and +eos::ip_intf_mgr::ip_addr_del
+++rpc ip_addr_merge_mode(IpIntfAddrMergeModeRequest) + IpIntfAddrMergeModeResponse
+
Queries the IP address merge mode for an interface.
+EosSdk references: eos::ip_intf_mgr::ip_addr_merge_mode and +eos::ip_intf_mgr::ip_addr_merge_mode_is
+++rpc ip_addr_merge_mode_is(IpIntfAddrMergeModeIsRequest) + IpIntfAddrMergeModeIsResponse
+
Updates the IP address merge mode for an interface.
+EosSdk reference: eos::ip_intf_mgr::ip_addr_merge_mode_is
+++rpc bulk_ip_addr_merge_mode_is(BulkIpIntfAddrMergeModeIsRequest) + BulkIpIntfAddrMergeModeIsResponse
+
Updates the IP address merge mode for multiple interfaces.
+EosSdk reference: eos::ip_intf_mgr::ip_addr_merge_mode_is
+++rpc internal_vlan_id(IpIntfInternalVlanIdRequest) + IpIntfInternalVlanIdResponse
+
Queries the internal VLAN ID associated with an interface
+EosSdk reference: eos::ip_intf_mgr::internal_vlan_id
+ + + +Name | +Value | +Description | +
---|---|---|
requests | +repeated IpIntfAddrMergeModeIsRequest | +List of IpIntfAddrMergeModeRequest. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of requests processed. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated IpIntfAddrModifyRequest | +List of IpIntfAddrModifyRequest. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of requests processed. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated IpIntfAddrsIsRequest | +List of IpIntfAddrsRequest. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of requests processed. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
merge_mode | +bool | +New IP address merge mode for the interface. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
Name | +Value | +Description | +
---|---|---|
merge_mode | +bool | +True if configuration should be merged with configuration from other agents or false if it should be replaced by those. | +
Name | +Value | +Description | +
---|---|---|
operation | +IpAddrOperations | +IP_ADDR_OP_ADD or IP_ADDR_OP_DELETE. | +
intf_id | +IntfId | +Name of the interface. | +
ip_addr_mask | +IpAddrMask | +IP address with mask. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
ip_addr_mask | +repeated IpAddrMask | +List of IP address with their masks. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
Name | +Value | +Description | +
---|---|---|
addrs | +repeated IpAddrMask | +List of IP addresses wtih masks. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
oneof ip_intf_event.addr | +IpAddrEvent | +Notifies a change in the interface's addresses. | +
oneof ip_intf_event.vlan_id | +VlanId | +Change in the interface's VLAN ID has changed. | +
ack | +bool | +If true, this is not an event and the fields below are invalid. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
Name | +Value | +Description | +
---|---|---|
exists | +bool | +True if the interface exists, false otherwise. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | +Name of the interface. | +
Name | +Value | +Description | +
---|---|---|
vlan_id | +VlanId | +Internal VLAN ID associated with the interface. | +
Making this request with all = false and no intf_id has no effect.
+Name | +Value | +Description | +
---|---|---|
oneof overloads.all_intfs | +bool | ++ |
oneof overloads.intf_id | +IntfId | +Name of a particular interface to watch. | +
ack | +bool | +Set to true when an ackowledgment is desired. | +
Name | +Value | +Description | +
---|---|---|
operation | +IpAddrOperations | ++ |
ip_addr_mask | +IpAddrMask | ++ |
Name | +Value | +Description | +
---|---|---|
addr | +bytes | ++ |
mask_length | +uint32 | ++ |
Name | +Value | +Description | +
---|---|---|
id | +uint32 | ++ |
Name | +Value | +Description | +
---|---|---|
IP_ADDR_OP_NONE | +0 | ++ |
IP_ADDR_OP_ADD | +1 | ++ |
IP_ADDR_OP_DELETE | +2 | ++ |
++rpc tag(TagRequest) + TagResponse
+
Queries for the current tag assigned to the ip route manager.
+EosSdk reference: eos::ip_route_mgr::tag
+++rpc tag_is(TagIsRequest) + TagIsResponse
+
Sets the current tag for the ip route manager. +This service will only interact with routes with the given tag.
+EosSdk reference: eos::ip_route_mgr::tag_is
+++rpc resync_init(IpRouteResyncInitRequest) + IpRouteResyncInitResponse
+
Starts the route resync process, to set the routes to a known state. +The resync_complete rpc, must be called to end the resync. +Please check the EosSdk reference for further details.
+EosSdk reference: eos::ip_route_mgr::resync_init
+++rpc resync_complete(IpRouteResyncCompleteRequest) + IpRouteResyncCompleteResponse
+
Ends the current route resync process. +All routes and vias not added or modified during the resync will be deleted.
+EosSdk reference: eos::ip_route_mgr::resync_complete
+++rpc ip_routes(IpRoutesRequest) + IpRoutesResponse
+
Enumerates all configured static routes.
+EosSdk reference: eos::ip_route_mgr::ip_route_iter
+++rpc ip_route_vias(IpRouteViasRequest) + IpRouteViasResponse
+
Enumerates all configured vias for a given route.
+EosSdk reference: eos::ip_route_mgr::ip_route_via_iter
+++rpc ip_route_exists(IpRouteExistsRequest) + IpRouteExistsResponse
+
Queries whether the given route is configured or not.
+EosSdk reference: eos::ip_route_mgr::exists
+++rpc ip_route_via_exists(IpRouteViaExistsRequest) + IpRouteViaExistsResponse
+
Queries whether the given via exists for the given route.
+EosSdk reference: eos::ip_route_mgr::exists
+++rpc ip_route(IpRouteRequest) + IpRouteResponse
+
Queries the route for the given route key.
+EosSdk reference: eos::ip_route_mgr::ip_route
+++rpc ip_route_set(IpRouteSetRequest) + IpRouteSetResponse
+
Sets a static route.
+EosSdk reference: eos::ip_route_mgr::ip_route_set
+++rpc bulk_ip_route_set(BulkIpRouteSetRequest) + BulkIpRouteSetResponse
+
Sets multiple routes at once for each given route key.
+EosSdk reference: eos::ip_route_mgr::ip_route_set
+++rpc ip_route_del(IpRouteDelRequest) + IpRouteDelResponse
+
Deletes a static route.
+EosSdk reference: eos::ip_route_mgr::ip_route_del
+++rpc bulk_ip_route_del(BulkIpRouteDelRequest) + BulkIpRouteDelResponse
+
Deletes multiple static routes at once for each given route key.
+EosSdk reference: eos::ip_route_mgr::ip_route_del
+++rpc ip_route_via_set(IpRouteViaSetRequest) + IpRouteViaSetResponse
+
Sets the via for a given route key. +See EosSdk reference for more information.
+EosSdk reference: eos::ip_route_mgr::ip_route_via_set
+++rpc bulk_ip_route_via_set(BulkIpRouteViaSetRequest) + BulkIpRouteViaSetResponse
+
Sets multiple vias at once for each given route key.
+EosSdk reference: eos::ip_route_mgr::ip_route_via_set
+++rpc ip_route_via_del(IpRouteViaDelRequest) + IpRouteViaDelResponse
+
Deletes the via for a given route key.
+EosSdk reference: eos::ip_route_mgr::ip_route_via_delete
+++rpc bulk_ip_route_via_del(BulkIpRouteViaDelRequest) + BulkIpRouteViaDelResponse
+
Deletes multiple vias at once for each given route key.
+EosSdk reference: eos::ip_route_mgr::ip_route_via_delete
+ + + +Name | +Value | +Description | +
---|---|---|
requests | +repeated IpRouteDelRequest | +Array of IpRouteDelRequest. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successfully deleted routes. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated IpRouteSetRequest | +Array of IpRouteSetRequest. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successfully set routes. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated IpRouteViaDelRequest | +Array of IpRouteViaDelRequest. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successfully deleted vias. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated IpRouteViaSetRequest | +Array of IpRouteViaSetRequest. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of successfully set vias. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
key | +IpRouteKey | +The route to delete. | +
vrf_name | +string | +Optional: the VRF where the route is present. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
key | +IpRouteKey | +The route to query. | +
vrf_name | +string | +Optional: the VRF where the route is present. | +
Name | +Value | +Description | +
---|---|---|
exists | +bool | +True if the route exists, otherwise False. | +
Name | +Value | +Description | +
---|---|---|
key | +IpRouteKey | +The route to query. | +
vrf_name | +string | +Optional: the VRF where the route is present. | +
Name | +Value | +Description | +
---|---|---|
response | +IpRoute | +If a match is found. | +
Empty message. + +
+Empty message. + +
+Empty message. + +
+Empty message. + +
+Name | +Value | +Description | +
---|---|---|
route | +IpRoute | +The route to set. | +
oneof additional_arg.action | +IpRouteActions | +The type of vias to be attached. Used for more efficient route configuration. | +
oneof additional_arg.vrf_name | +string | +The VRF where the route will be present. | +
vias | +repeated IpRouteVia | +Optional: number of IpRouteVia messages to be created along with the route. If any of the vias fail, the route will be deleted at once and the error returned will be the reason for the via creation failure. | +
vias_action | +IpRouteSetViasAction | +defines how vias should be replaced, when applicable. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
via | +IpRouteVia | +The via to delete, including the route key. | +
vrf_name | +string | +Optional: the VRF where the via is present. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
via | +IpRouteVia | +The via to query, including the route key. | +
vrf_name | +string | +Optional: the VRF where the via is present. | +
Name | +Value | +Description | +
---|---|---|
exists | +bool | +True if the via exists, otherwise False. | +
Name | +Value | +Description | +
---|---|---|
via | +IpRouteVia | +The via to set, including the route key. | +
vrf_name | +string | +Optional: the VRF where the via should be present. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
key | +IpRouteKey | +The route to query vias for. | +
vrf_name | +string | +Optonal: the VRF where the route is present. | +
Name | +Value | +Description | +
---|---|---|
response | +IpRouteVia | +The configured via for the given route. | +
Setting more than one field below will apply AND logic. With an exception +for vrf_name, leaving filters unset disables them. In case of vrf_name, +if unset, it reverts to the default VRF, in accordance with all SDK APIs. +A special value "all" has been introduced to allow this function to return +routes from all VRFs, in the same fashion as CLI commands.
+In the presence of multiple vias, a route is selected if any of the +underlying vias matches the criteria.
+Name | +Value | +Description | +
---|---|---|
vrf_name | +string | +Filters response by VRF Name. | +
vtep_addr | +bytes | +Filters response by vtep address. | +
vni | +uint32 | +Filters responses by VNI. | +
vxlan_intf_id | +IntfId | +Filters responses by VXLAN Interface. | +
report_vias | +bool | +If true, the stream response will also include vias for every reported path. | +
suppress_routes | +bool | +If true, the stream response will contain only vias if report_vias is true, and be empty otherwise. |
+
packed_route_vias | +bool | +If true, each route and all its vias will be streamed in a single message. When this flag is set to true, 'report_vias' and 'suppress_routes' are ignored. | +
Name | +Value | +Description | +
---|---|---|
oneof item.response | +IpRoute | +The configured static route. | +
oneof item.via | +IpRouteVia | +VIA of a configured static route. | +
vias | +repeated IpRouteVia | ++ |
Name | +Value | +Description | +
---|---|---|
tag | +uint32 | +The numeric value of the tag | +
Empty message. + +
+Empty message. + +
+Name | +Value | +Description | +
---|---|---|
tag | +uint32 | +The numeric value of the current tag | +
Name | +Value | +Description | +
---|---|---|
IP_ROUTE_SET_VIAS_CREATE | +0 | +Convenience method to create routes and vias in a single RPC call. This is intended for route creation but when used with an existing route key will cause it to erase all previous vias associated with that key (at the SDK level). In case of failure to add vias, the route shall be deleted. | +
IP_ROUTE_SET_VIAS_REPLACE | +1 | +Choosing this action with an existing route will replace vias in a make-before-break fashion within the RPC server, when possible. Vias that are common between the old set and the new set should remain untouched. If the operation fails, then the original via set is restored. | +
Name | +Value | +Description | +
---|---|---|
key | +IpRouteKey | ++ |
tag | +uint32 | ++ |
rib_bypass | +bool | ++ |
command_tag | +string | ++ |
Name | +Value | +Description | +
---|---|---|
prefix | +Prefix | ++ |
oneof preference_present.preference | +uint32 | +Default value is 1. | +
Name | +Value | +Description | +
---|---|---|
key | +IpRouteKey | ++ |
hop_addr | +bytes | ++ |
intf_id | +IntfId | ++ |
nhg_name | +string | ++ |
oneof mpls_label_present.mpls_label | +uint32 | +Default value is 1048576 (invalid label). | +
vni | +uint32 | ++ |
vtep_addr | +bytes | ++ |
router_mac_eth_addr | +bytes | ++ |
egress_vrf | +string | ++ |
metric | +uint32 | ++ |
vtep_sip_validation | +bool | ++ |
vxlan_intf_id | +IntfId | ++ |
weight | +uint32 | ++ |
Name | +Value | +Description | +
---|---|---|
IP_ROUTE_ACTION_NULL | +0 | ++ |
IP_ROUTE_ACTION_FORWARD | +1 | ++ |
IP_ROUTE_ACTION_DROP | +2 | ++ |
IP_ROUTE_ACTION_NEXTHOP_GROUP | +3 | ++ |
Name | +Value | +Description | +
---|---|---|
ip_addr | +bytes | ++ |
length | +int32 | ++ |
Name | +Value | +Description | +
---|---|---|
IP_VERSION_NONE | +0 | ++ |
IP_VERSION_4 | +4 | ++ |
IP_VERSION_6 | +6 | ++ |
++rpc watch(MacsecWatchRequest) + MacsecWatchResponse
+
Register to receive notifications.
+++rpc exists(MacsecExistsRequest) + MacsecExistsResponse
+
Returns whether or not a profile with the given name exists.
+++rpc profile(MacsecProfileRequest) + MacsecProfileResponse
+
Returns the MACsec profile with the given name, +if no profile is found, the response is empty.
+++rpc profile_set(MacsecProfileSetRequest) + MacsecProfileSetResponse
+
Writes the given profile to MACsec config. If a profile with the given name +already exists, it will be updated with the given fields.
+++rpc bulk_profile_set(BulkMacsecProfileSetRequest) + BulkMacsecProfileSetResponse
+
Bulk version of profile_set.
+++rpc profile_del(MacsecProfileDelRequest) + MacsecProfileDelResponse
+
Deletes the profile with the given name if such a profile exists.
+++rpc bulk_profile_del(BulkMacsecProfileDelRequest) + BulkMacsecProfileDelResponse
+
Bulk version of profile_del.
+++rpc intf_profile(MacsecIntfProfileRequest) + MacsecIntfProfileResponse
+
Returns the profile name of the profile attached to the interface. +If there is no profile configured, return an empty message.
+++rpc intf_profile_is(MacsecIntfProfileIsRequest) + MacsecIntfProfileIsResponse
+
Configures the given interface to use the given MACsec profile.
+++rpc bulk_intf_profile_is(BulkMacsecIntfProfileIsRequest) + BulkMacsecIntfProfileIsResponse
+
Bulk version of intf_profile_set.
+++rpc macsec_capable(MacsecCapableRequest) + MacsecCapableResponse
+
Returns whether or not an interface supports MACsec.
+++rpc intf_status(MacsecIntfStatusRequest) + MacsecIntfStatusResponse
+
Returns the MACsec related status information of the given interface.
+++rpc intf_counters(MacsecIntfCountersRequest) + MacsecIntfCountersResponse
+
Returns the current MACsec counters for the given interface.
+++rpc macsec_profiles(MacsecProfilesRequest) + MacsecProfilesResponse
+
Returns all MACsec profile config.
+++rpc macsec_intf_statuses(MacsecIntfStatusesRequest) + MacsecIntfStatusesResponse
+
Returns all MACsec intf status.
+ + + +Name | +Value | +Description | +
---|---|---|
requests | +repeated MacsecIntfProfileIsRequest | ++ |
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | ++ |
status | +RpcResponseStatus | ++ |
Name | +Value | +Description | +
---|---|---|
requests | +repeated MacsecProfileDelRequest | ++ |
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | ++ |
status | +RpcResponseStatus | ++ |
Name | +Value | +Description | +
---|---|---|
requests | +repeated MacsecProfileSetRequest | ++ |
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | ++ |
status | +RpcResponseStatus | ++ |
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | ++ |
Name | +Value | +Description | +
---|---|---|
macsec_capable | +bool | ++ |
Name | +Value | +Description | +
---|---|---|
profile_name | +string | ++ |
Name | +Value | +Description | +
---|---|---|
exists | +bool | ++ |
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | ++ |
Name | +Value | +Description | +
---|---|---|
counters | +MacsecIntfCounters | ++ |
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | ++ |
profile_name | +string | ++ |
Name | +Value | +Description | +
---|---|---|
response_status | +RpcResponseStatus | ++ |
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | ++ |
Name | +Value | +Description | +
---|---|---|
profile_name | +string | ++ |
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | ++ |
Name | +Value | +Description | +
---|---|---|
status | +MacsecIntfStatus | ++ |
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | ++ |
Name | +Value | +Description | +
---|---|---|
profile_name | +string | ++ |
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
profile_name | +string | ++ |
Name | +Value | +Description | +
---|---|---|
profile | +MacsecProfile | ++ |
Name | +Value | +Description | +
---|---|---|
profile | +MacsecProfile | ++ |
Name | +Value | +Description | +
---|---|---|
response_status | +RpcResponseStatus | ++ |
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
name | +string | ++ |
Name | +Value | +Description | +
---|---|---|
oneof overloads.all_intfs | +bool | ++ |
oneof overloads.intf_id | +IntfId | ++ |
ack | +bool | ++ |
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | ++ |
status | +MacsecIntfStatus | ++ |
ack | +bool | ++ |
Name | +Value | +Description | +
---|---|---|
out_pkts_encrypted | +uint64 | ++ |
out_octets_encrypted | +uint64 | ++ |
in_pkts_decrypted | +uint64 | ++ |
in_octets_decrypted | +uint64 | ++ |
in_pkts_not_valid | +uint64 | ++ |
Name | +Value | +Description | +
---|---|---|
key_status | +MacsecIntfKeyStatus | ++ |
traffic_status | +MacsecIntfTrafficStatus | ++ |
Name | +Value | +Description | +
---|---|---|
cak | +string | ++ |
ckn | +string | ++ |
encoded | +bool | ++ |
Name | +Value | +Description | +
---|---|---|
profile_name | +string | ++ |
primary_key | +MacsecKey | ++ |
fallback_key | +MacsecKey | ++ |
oneof key_server_priority_present.key_server_priority | +uint32 | +Default value is 16. | +
rekey_period | +uint32 | ++ |
oneof mka_life_time_present.mka_life_time | +uint32 | +Default value is 6. | +
oneof cipher_present.cipher | +MacsecCipherSuite | +Default value is GCM_AES_XPN_128. | +
dot1x | +bool | ++ |
include_sci | +bool | ++ |
bypass_lldp | +bool | +The field bypass_lldp is for reading back only. Setting it has no effect. Please use lldp_bypass_level instead. | +
lldp_bypass_level | +MacsecBypass | ++ |
oneof traffic_policy_present.traffic_policy | +MacsecProfileTrafficPolicy | +Default value is TRAFFIC_POLICY_ACTIVE_SAK. | +
allow_unprotected | +bool | +Deprecated. Please use traffic_policy instead. Only used if traffic_policy_present is not set. | +
oneof replay_protection_present.replay_protection | +bool | +Default value is True. | +
replay_protection_window | +uint32 | ++ |
key_retirement_immediate | +bool | ++ |
intf_ids | +repeated IntfId | +For reading back only. Setting it has no effect. | +
Bypass level for a protocol.
+Name | +Value | +Description | +
---|---|---|
MACSEC_BYPASS_NULL | +0 | ++ |
MACSEC_BYPASS_AUTHORIZED | +1 | ++ |
MACSEC_BYPASS_UNAUTHORIZED | +2 | ++ |
Cipher suites used for MACsec.
+Name | +Value | +Description | +
---|---|---|
MACSEC_CIPHER_SUITE_CIPHER_NULL | +0 | ++ |
MACSEC_CIPHER_SUITE_GCM_AES_128 | +1 | ++ |
MACSEC_CIPHER_SUITE_GCM_AES_256 | +2 | ++ |
MACSEC_CIPHER_SUITE_GCM_AES_XPN_128 | +3 | ++ |
MACSEC_CIPHER_SUITE_GCM_AES_XPN_256 | +4 | ++ |
Which key an interface is using if a profile is configured.
+Name | +Value | +Description | +
---|---|---|
MACSEC_INTF_KEY_INVALID | +0 | ++ |
MACSEC_INTF_KEY_NO_PROFILE | +1 | ++ |
MACSEC_INTF_KEY_NONE | +2 | ++ |
MACSEC_INTF_KEY_PRIMARY | +3 | ++ |
MACSEC_INTF_KEY_FALLBACK | +4 | ++ |
MACSEC_INTF_KEY_PRIMARY_CACHED | +5 | ++ |
MACSEC_INTF_KEY_FALLBACK_CACHED | +6 | ++ |
Traffic status on an interface.
+Name | +Value | +Description | +
---|---|---|
MACSEC_INTF_TRAFFIC_INVALID | +0 | ++ |
MACSEC_INTF_TRAFFIC_PROTECTED | +1 | ++ |
MACSEC_INTF_TRAFFIC_UNPROTECTED | +2 | ++ |
MACSEC_INTF_TRAFFIC_BLOCKED | +3 | ++ |
Traffic policy on a profile.
+Name | +Value | +Description | +
---|---|---|
MACSEC_PROFILE_TRAFFIC_POLICY_NULL | +0 | ++ |
MACSEC_PROFILE_TRAFFIC_POLICY_ACTIVE_SAK | +1 | ++ |
MACSEC_PROFILE_TRAFFIC_POLICY_UNPROTECTED | +2 | ++ |
MACSEC_PROFILE_TRAFFIC_POLICY_BLOCKED | +3 | ++ |
++rpc watch(MplsRouteWatchRequest) + MplsRouteWatchResponse
+
Subscription to monitor changes to MPLS routes in hardware. This request stays +active until the client cancels or the server shuts down.
+EosSdk reference: eos::mpls_route_handler (class)
+++rpc resync_init(MplsRouteResyncInitRequest) + MplsRouteResyncInitResponse
+
Initiate a MPLS resync proccess. Starts a blank configuration to be applied once +resync_complete is called.
+EosSdk reference: eos::mpls_route_mgr::resync_init
+++rpc resync_complete(MplsRouteResyncCompleteRequest) + MplsRouteResyncCompleteResponse
+
Ends the current MPLS resync process. Deletes the current configuration and +applies all changes since resync_init was called.
+EosSdk reference: eos::mpls_route_mgr::resync_complete
+++rpc mpls_routes(MplsRoutesRequest) + MplsRoutesResponse
+
Returns a list of all configured MPLS routes.
+EosSdk reference: eos::mpls_route_mgr::mpls_route_iter
+++rpc mpls_route_statuses(MplsRouteStatusesRequest) + MplsRouteStatusesResponse
+
Returns a list of all MPLS routes in hardware.
+EosSdk reference: eos::mpls_route_mgr::mpls_route_status_iter_t
+++rpc mpls_route_vias(MplsRouteViasRequest) + MplsRouteViasResponse
+
Returns a list of configured MPLS vias for a specified route.
+EosSdk reference: eos::mpls_route_mgr::mpls_route_via_iter_t
+++rpc mpls_route_via_statuses(MplsRouteViaStatusesRequest) + MplsRouteViaStatusesResponse
+
Returns a list of MPLS vias in hardware for a specified MPLS route or FEC.
+The vias returned for a MPLS FEC are unbound meaning they do not have a +route key.
+EosSdk reference: eos::mpls_route_mgr::mpls_route_via_status_iter_t
+++rpc exists(MplsRouteExistsRequest) + MplsRouteExistsResponse
+
Queries whether the specified route or via exists in the switch config.
+EosSdk reference: eos::mpls_route_mgr::exists
+++rpc mpls_route_set(MplsRouteSetRequest) + MplsRouteSetResponse
+
Inserts or updates an MPLS static route in the switch config.
+EosSdk reference: eos::mpls_route_mgr::mpls_route_set
+++rpc bulk_mpls_route_set(BulkMplsRouteSetRequest) + BulkMplsRouteSetResponse
+
Inserts or updates multiple MPLS static routes in the switch config in a single +call.
+EosSdk reference: eos::mpls_route_mgr::mpls_route_set
+++rpc mpls_route_del(MplsRouteDelRequest) + MplsRouteDelResponse
+
Removes the MPLS route and all vias matching its route key.
+EosSdk reference: eos::mpls_route_mgr::mpls_route_del
+++rpc bulk_mpls_route_del(BulkMplsRouteDelRequest) + BulkMplsRouteDelResponse
+
Removes multiple MPLS routes and all vias matching their route keys in a single +call.
+EosSdk reference: eos::mpls_route_mgr::mpls_route_del
+++rpc mpls_route_via_set(MplsRouteViaSetRequest) + MplsRouteViaSetResponse
+
Add the specified via to its associated MPLS route.
+EosSdk reference: eos::mpls_route_mgr::mpls_route_via_set
+++rpc bulk_mpls_route_via_set(BulkMplsRouteViaSetRequest) + BulkMplsRouteViaSetResponse
+
Adds multiple vias to their associated MPLS routes in a single call.
+EosSdk reference: eos::mpls_route_mgr::mpls_route_via_set
+++rpc mpls_route_via_del(MplsRouteViaDelRequest) + MplsRouteViaDelResponse
+
Removes the specified via from its associated MPLS route. If all vias are +removed from a route it will still exist but it will have no nexthop +information.
+EosSdk reference: eos::mpls_route_mgr::mpls_route_via_del
+++rpc bulk_mpls_route_via_del(BulkMplsRouteViaDelRequest) + BulkMplsRouteViaDelResponse
+
Removes multiple vias from their associated MPLS routes in a single call. +If all vias are removed from a route it will still exist but it will have +no nexthop information.
+EosSdk reference: eos::mpls_route_mgr::mpls_route_via_del
+++rpc fec_id(MplsRouteFecIdRequest) + MplsRouteFecIdResponse
+
Returns the FEC ID corresponding to the specified MPLS route key if the route is +programmed in hardware. If it is not programmed in hardware then the FEC ID will +be 0 denoting that it is not set.
+EosSdk reference: eos::mpls_route_mgr::mpls_route_fec_id
+++rpc metric(MplsRouteMetricRequest) + MplsRouteMetricResponse
+
Returns the active metric that is being used in hardware to forward traffic for +the specified MPLS route key, or 0 if the route key does not have any active +vias programmed.
+EosSdk reference: eos::mpls_route_mgr::mpls_route_metric
+ + + +Name | +Value | +Description | +
---|---|---|
requests | +repeated MplsRouteDelRequest | +List of MplsRouteDelRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in the event of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated MplsRouteSetRequest | +List of MplsRouteSetRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in the event of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated MplsRouteViaDelRequest | +List of MplsRouteViaDelRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in the event of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated MplsRouteViaSetRequest | +List of MplsRouteViaSetRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in the event of failure. | +
Name | +Value | +Description | +
---|---|---|
route_key | +MplsRouteKey | +The route key of the route to remove. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
oneof overloads.route_key | +MplsRouteKey | +The key of the route to query. | +
oneof overloads.route_via | +MplsRouteVia | +The route via to query. | +
Name | +Value | +Description | +
---|---|---|
exists | +bool | +True if the route or via exists in the switch config otherwise false. | +
Name | +Value | +Description | +
---|---|---|
route_key | +MplsRouteKey | +The route key. | +
Name | +Value | +Description | +
---|---|---|
fec_id | +MplsFecId | +The FEC ID if the route key is programmed in hardware otherwise 0. | +
Name | +Value | +Description | +
---|---|---|
fields | +repeated MplsRouteWatchedField | ++ |
Name | +Value | +Description | +
---|---|---|
route_key | +MplsRouteKey | +The route key to query. Its metric value is not used. | +
Name | +Value | +Description | +
---|---|---|
metric | +uint32 | +The metric being used in hardware to forward traffic for the specified route key or 0 if it does not have any active vias programmed. | +
Empty message. + +
+Empty message. + +
+Empty message. + +
+Empty message. + +
+Name | +Value | +Description | +
---|---|---|
route | +MplsRoute | +The MPLS route to insert or update. | +
vias | +repeated MplsRouteVia | +MPLS vias to be added to the route. | +
vias_action | +MplsRouteSetViasAction | +action associated with vias, i.e., ADD or REPLACE. | +
Empty message. + +
+Empty message. + +
+Name | +Value | +Description | +
---|---|---|
route_key | +MplsRouteKey | +The keys of the MPLS routes in hardware. | +
Name | +Value | +Description | +
---|---|---|
route_via | +MplsRouteVia | +The via to remove. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
route_via | +MplsRouteVia | +The via to add to the route. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
oneof overloads.route_key | +MplsRouteKey | +The key of the route to query. | +
oneof overloads.fec_id | +MplsFecId | +The ID of the fec to query. | +
Name | +Value | +Description | +
---|---|---|
route_via | +MplsRouteVia | +The vias in hardware for the MPLS route key or FEC. | +
Name | +Value | +Description | +
---|---|---|
route_key | +MplsRouteKey | +The key of the route to query. | +
Name | +Value | +Description | +
---|---|---|
route_via | +MplsRouteVia | +The vias configured for the route. | +
Name | +Value | +Description | +
---|---|---|
ack | +bool | +Set to true if an immediate acknowledgement is desired. | +
oneof overload.all | +bool | +True if all MPLS routes should be watched. | +
oneof overload.route_key | +MplsRouteKey | +The route key of a particular MPLS route to watch. | +
dump_fields | +MplsRouteFieldsControl | ++ |
Name | +Value | +Description | +
---|---|---|
ack | +bool | +If true the agent is now actively watching for events. | +
oneof route_event.on_mpls_route_set | +OnMplsRouteSet | +The specified MPLS route has been programmed to hardware or assigned a new FEC ID. | +
oneof route_event.on_mpls_route_del | +OnMplsRouteDel | +The specified MPLS route has been deleted from hardware. | +
oneof fec_event.on_mpls_fec_set | +OnMplsFecSet | +The specified MPLS FEC has been created or updated in hardware. | +
oneof fec_event.on_mpls_fec_del | +OnMplsFecDel | +The specified MPLS FEC has been removed from hardware. | +
on_mpls_route_dump | +OnMplsRouteDump | ++ |
Name | +Value | +Description | +
---|---|---|
report_vias | +bool | +If true, the stream response will also include vias for every reported MPLS route key. | +
Name | +Value | +Description | +
---|---|---|
route | +MplsRoute | +The configured MPLS routes. | +
vias | +repeated MplsRouteVia | +VIAs of a configured route. | +
Notification for when an MPLS FEC is removed from hardware.
+Name | +Value | +Description | +
---|---|---|
fec_id | +MplsFecId | +The ID of the FEC which triggered the event. | +
Notification for when an MPLS FEC is created or updated in hardware.
+Name | +Value | +Description | +
---|---|---|
fec_id | +MplsFecId | +The ID of the FEC which triggered the event. | +
Notification for when an MPLS route is deleted from hardware.
+Name | +Value | +Description | +
---|---|---|
route_key | +MplsRouteKey | +The route key of the MPLS route that triggered the event. | +
Name | +Value | +Description | +
---|---|---|
route | +MplsRoute | ++ |
vias | +repeated MplsRouteVia | ++ |
Notification for when an MPLS route is to be programmed into hardware or when it is +assigned a new FEC ID.
+Name | +Value | +Description | +
---|---|---|
route_key | +MplsRouteKey | +The route key of the MPLS route that triggered the event. | +
fec_id | +MplsFecId | +The ID of the MPLS route's associated FEC. | +
Name | +Value | +Description | +
---|---|---|
MPLS_ROUTE_SET_VIAS_ADD | +0 | +Use this convenience method to create routes and vias in a single RPC call. While primarily designed for route creation, when utilized with an existing route key, any vias present within the MplsRouteSetRequest message will be appended to the existing set of vias for that route. If adding the vias results in a failure, the route shall be deleted. | +
MPLS_ROUTE_SET_VIAS_REPLACE | +1 | +Choosing this action with an existing route will replace vias in a make-before-break fashion within the RPC server, when possible. Vias that are common between the old set and the new set should remain untouched. If the operation fails, then the original via set is restored. | +
Name | +Value | +Description | +
---|---|---|
MPLS_ROUTE_ALL_FIELDS | +0 | ++ |
MPLS_ROUTE | +1 | ++ |
MPLS_ROUTE_VIAS | +2 | ++ |
Represents a forward equivalency class (FEC) for an MPLS route. One or more +routes point to a FEC. The FEC corresponds to a set of MPLS vias that are +programmed into hardware.
+EosSdk reference: eos::mpls_fec_id_t
+Name | +Value | +Description | +
---|---|---|
id | +uint64 | ++ |
An MPLS v4/v6 static route.
+EosSdk reference: eos::mpls_route_t
+Name | +Value | +Description | +
---|---|---|
key | +MplsRouteKey | ++ |
An MPLS route key. Used for MPLS RIB configuration.
+EosSdk reference: eos::mpls_route_key_t
+Name | +Value | +Description | +
---|---|---|
labels | +repeated MplsLabel | ++ |
metric | +uint32 | +Must be in range 0 to 255. | +
An MPLS route via, defining the action to take for a specified MPLS route.
+EosSdk reference: eos::mpls_route_via_t
+Name | +Value | +Description | +
---|---|---|
route_key | +MplsRouteKey | ++ |
hop | +bytes | ++ |
intf | +IntfId | ++ |
pushswap_label | +MplsLabel | ++ |
label_action | +MplsActions | ++ |
ttl_mode | +MplsTtlMode | ++ |
payload_type | +MplsPayloadType | ++ |
skip_egress_acl | +bool | ++ |
nexthop_group | +string | ++ |
An MPLS label, per RFC 3032.
+Valid labels must be in the range 0 to 1048575. +The value 1048576 denotes the label is unset and therefore invalid. +The default value of 0 is the explicit null label. LSRs receiving this label +are expected to pop it and perform ultimate IP forwarding.
+EosSdk reference: eos::mpls_label_t
+Name | +Value | +Description | +
---|---|---|
oneof label_present.label | +uint32 | +Default value is 1048576 (invalid label). | +
The action to take for an MPLS route.
+EosSdk reference: eos::mpls_action_t
+Name | +Value | +Description | +
---|---|---|
MPLS_ACTION_NULL | +0 | ++ |
MPLS_ACTION_PUSH | +1 | ++ |
MPLS_ACTION_POP | +2 | ++ |
MPLS_ACTION_SWAP | +3 | ++ |
MPLS_ACTION_FORWARD | +4 | ++ |
The inner payload type. +Used in a similar way to ethertype, as MPLS does not provide this in the packet.
+EosSdk reference: eos::mpls_payload_type_t
+Name | +Value | +Description | +
---|---|---|
MPLS_PAYLOAD_TYPE_NULL | +0 | ++ |
MPLS_PAYLOAD_TYPE_MPLS | +1 | ++ |
MPLS_PAYLOAD_TYPE_IPV4 | +2 | ++ |
MPLS_PAYLOAD_TYPE_IPV6 | +3 | ++ |
MPLS_PAYLOAD_TYPE_GUESS | +4 | ++ |
Whether to use the pipe or uniform TTL inheritance mode.
+EosSdk reference: eos::mpls_ttl_mode_t
+Name | +Value | +Description | +
---|---|---|
MPLS_TTL_MODE_NULL | +0 | ++ |
MPLS_TTL_MODE_PIPE | +1 | ++ |
MPLS_TTL_MODE_UNIFORM | +2 | ++ |
++rpc resync_init(MplsVrfLabelResyncInitRequest) + MplsVrfLabelResyncInitResponse
+
Initiates an MPLS VRF label resync proccess.
+EosSdk reference: eos::mpls_vrf_label_mgr::resync_init
+++rpc resync_complete(MplsVrfLabelResyncCompleteRequest) + MplsVrfLabelResyncCompleteResponse
+
Ends the current MPLS VRF label resync process.
+EosSdk reference: eos::mpls_vrf_label_mgr::resync_complete
+++rpc mpls_vrf_labels(MplsVrfLabelsRequest) + MplsVrfLabelsResponse
+
Returns a list of all the MPLS VRF labels currently configured.
+EosSdk reference: eos::mpls_vrf_label_mgr::mpls_vrf_label_iter
+++rpc mpls_vrf_label(MplsVrfLabelRequest) + MplsVrfLabelResponse
+
Returns the current configuration of an MPLS VRF label.
+EosSdk reference: eos::mpls_vrf_label_mgr::mpls_vrf_label
+++rpc mpls_vrf_label_set(MplsVrfLabelSetRequest) + MplsVrfLabelSetResponse
+
Inserts or updates an MPLS VRF label in the switch config.
+EosSdk reference: eos::mpls_vrf_label_mgr::mpls_vrf_label_set
+++rpc bulk_mpls_vrf_label_set(BulkMplsVrfLabelSetRequest) + BulkMplsVrfLabelSetResponse
+
Inserts or updates multiple MPLS VRF labels in the switch config in a +single call.
+EosSdk reference: eos::mpls_vrf_label_mgr::mpls_vrf_label_set
+++rpc mpls_vrf_label_del(MplsVrfLabelDelRequest) + MplsVrfLabelDelResponse
+
Removes the MPLS VRF label from configuration.
+EosSdk reference: eos::mpls_vrf_label_mgr::mpls_vrf_label_del
+++rpc bulk_mpls_vrf_label_del(BulkMplsVrfLabelDelRequest) + BulkMplsVrfLabelDelResponse
+
Removes multiple MPLS VRF labels in a single call.
+EosSdk reference: eos::mpls_vrf_label_mgr::mpls_vrf_label_del
+ + + +Name | +Value | +Description | +
---|---|---|
requests | +repeated MplsVrfLabelDelRequest | +List of MplsVrfLabelDelRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in the event of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated MplsVrfLabelSetRequest | +List of MplsVrfLabelSetRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in the event of failure. | +
Name | +Value | +Description | +
---|---|---|
label | +MplsLabel | +The MPLS label of the MPLS VRF label to remove. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
label | +MplsLabel | +The MPLS label of the MPLS VRF label to search. | +
Name | +Value | +Description | +
---|---|---|
vrf_label | +MplsVrfLabel | +Current configuration of the MPLS VRF label. | +
Empty message. + +
+Empty message. + +
+Empty message. + +
+Empty message. + +
+Name | +Value | +Description | +
---|---|---|
vrf_label | +MplsVrfLabel | +The MPLS VRF label to insert or update. | +
Empty message. + +
+Empty message. + +
+Name | +Value | +Description | +
---|---|---|
vrf_label | +MplsVrfLabel | +The configured MPLS VRF labels. | +
++rpc watch(WatchNexthopGroupRequest) + WatchNexthopGroupResponse
+
Subscription to monitor changes on nexthop groups. This request +stays active until the client cancels or the server shuts down. +When all = false and no name is specified, this request has no effect.
+EosSdk reference: eos::nexthop_group_handler (class)
+++rpc resync_init(ResyncNexthopGroupInitRequest) + ResyncNexthopGroupInitResponse
+
Initiates a resync process. Starts a blank configuration to be applied +once resync_complete is called.
+EosSdk reference: eos::nexthop_group_mgr::resync_init
+++rpc resync_complete(ResyncNexthopGroupCompleteRequest) + ResyncNexthopGroupCompleteResponse
+
Deletes current configuration and applies all changes since resync_init has +been called last.
+EosSdk reference: eos::nexthop_group_mgr::resync_complete
+++rpc nexthop_groups(NexthopGroupsRequest) + NexthopGroupsResponse
+
Returns a list of all configured nexthop groups.
+EosSdk reference: eos::nexthop_group_mgr::nexthop_group_iter
+++rpc programmed_nexthop_groups(ProgrammedNexthopGroupsRequest) + ProgrammedNexthopGroupsResponse
+
Returns a list of all programmed nexthop groups.
+EosSdk reference: eos::nexthop_group_mgr::programmed_nexthop_group_iter
+++rpc nexthop_group(NexthopGroupRequest) + NexthopGroupResponse
+
Returns the configured nexthop group specified by name, if exists.
+EosSdk reference: eos::nexthop_group_mgr::nexthop_group
+++rpc counter(CounterRequest) + CounterResponse
+
Returns the counter corresponding to the given nexthop group name and entry.
+EosSdk reference: eos::nexthop_group_mgr::counter
+++rpc nhg_counters(NexthopGroupCountersRequest) + NexthopGroupCountersResponse
+
Returns the counter corresponding to the given nexthop group name or +a set of nexthop groups that have names matching the regex pattern or +all nexthop groups in the system when all=true. +When all = false and no name or regex is specified, this request has no effect. +When multiple fields are set, the last set field takes precedence.
+EosSdk reference: eos::nexthop_group_handler (class)
+++rpc exists(NexthopGroupExistsRequest) + NexthopGroupExistsResponse
+
Queries if the nexthop group with given name exists.
+EosSdk reference: eos::nexthop_group_mgr::exists
+++rpc active(NexthopGroupActiveRequest) + NexthopGroupActiveResponse
+
Queries whether a nexthop group is active
+EosSdk reference: eos::nexthop_group_mgr::active
+++rpc nexthop_group_set(NexthopGroupSetRequest) + NexthopGroupSetResponse
+
Creates or updates a nexthop group and returns its version ID.
+EosSdk reference: eos::nexthop_group_mgr::nexthop_group_set
+++rpc bulk_nexthop_group_set(BulkNexthopGroupSetRequest) + BulkNexthopGroupSetResponse
+
Creates or updates multiple nexthops groups in a single call and returns their version IDs.
+EosSdk reference: eos::nexthop_group_mgr::nexthop_group_set
+++rpc nexthop_group_del(NexthopGroupDelRequest) + NexthopGroupDelResponse
+
Deletes a nexthop group.
+EosSdk reference: eos::nexthop_group_mgr::nexthop_group_del
+++rpc bulk_nexthop_group_del(BulkNexthopGroupDelRequest) + BulkNexthopGroupDelResponse
+
Deletes multiple nexthop groups in a single call.
+EosSdk reference: eos::nexthop_group_mgr::nexthop_group_del
+++rpc programmed_nexthop_group(ProgrammedNexthopGroupRequest) + ProgrammedNexthopGroupResponse
+
Queries a programmed nexthop group by name.
+EosSdk reference: eos::nexthop_group_mgr::programmed_nexthop_group
+ + + +Name | +Value | +Description | +
---|---|---|
requests | +repeated NexthopGroupDelRequest | +List of NexthopGroupDelRequest. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated NexthopGroupSetRequest | +List of NexthopGroupSetRequest. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
responses | +repeated NexthopGroupSetResponse | +List of NexthopGroupSetResponse. | +
Name | +Value | +Description | +
---|---|---|
name | +string | +Name of the nexthop group to search. | +
entry | +uint32 | +Entry number (16-bit). | +
Name | +Value | +Description | +
---|---|---|
counter | +NexthopGroupCounter | +Counter data (empty if not found). | +
Name | +Value | +Description | +
---|---|---|
name | +string | +Name of the nexthop group. | +
Name | +Value | +Description | +
---|---|---|
active | +bool | +True if the specified group is active. | +
Name | +Value | +Description | +
---|---|---|
oneof overloads.all | +bool | +All nexthop groups. | +
oneof overloads.name | +string | +Name of a particular nexthop group to get the counters for. | +
oneof overloads.regex | +string | +ECMAScript regex to be pattern matched against all nexthop group names. | +
Name | +Value | +Description | +
---|---|---|
name | +string | +Name of the nexthop_group. | +
counters | +repeated NexthopGroupCounter | +List of all nexthop groups' entry counters when all = true or when the name is given in a request that nexthop group's entries counters will be returned. | +
Name | +Value | +Description | +
---|---|---|
name | +string | +Name of the nexthop group to delete. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
name | +string | +Name of the nexthop_group. | +
Name | +Value | +Description | +
---|---|---|
exists | +bool | +True if the nexthop group exists. | +
Name | +Value | +Description | +
---|---|---|
fields | +repeated NexthopGroupWatchedField | ++ |
Name | +Value | +Description | +
---|---|---|
name | +string | +Name of the nexthop group to search. | +
Name | +Value | +Description | +
---|---|---|
nhg | +NexthopGroup | +Configured nexthop group (empty if not found). | +
Name | +Value | +Description | +
---|---|---|
nhg | +NexthopGroup | +Details of the new group. | +
Name | +Value | +Description | +
---|---|---|
version_id | +uint32 | +The nexthop group's version ID. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
nhg | +NexthopGroup | +Configured nexthop group. | +
Name | +Value | +Description | +
---|---|---|
name | +string | +Name of the programmed nexthop group. | +
Name | +Value | +Description | +
---|---|---|
nhg | +NexthopGroup | +Details of the nexthop group (empty if not found). | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
name | +string | +Programmed nexthop group. | +
Empty message. + +
+Empty message. + +
+Empty message. + +
+Empty message. + +
+Name | +Value | +Description | +
---|---|---|
oneof overloads.all | +bool | ++ |
oneof overloads.name | +string | +Name of a particular nexthop group to watch. | +
ack | +bool | +Set to true when an ackowledgment is desired. | +
dump_fields | +NexthopGroupFieldsControl | ++ |
Events are streamed as changes happen.
+Name | +Value | +Description | +
---|---|---|
name | +string | +Interface whose status changed (ignored on confirmation). | +
oneof active_status_present.active_status | +bool | +There was a change in the active status. | +
oneof nhg_programmed_present.nhg_programmed | +bool | +NHG has been programmed. | +
version_id | +uint32 | +The nexthop group's version ID if it has been programmed. Only present when event is for a programmed callback. | +
ack | +bool | +If true, this is not an event and the fields below are invalid. | +
nhg | +NexthopGroup | ++ |
on_nhg_programmed | +OnNexthopGroupProgrammed | ++ |
Name | +Value | +Description | +
---|---|---|
NEXTHOP_GROUP_ALL | +0 | +'NEXTHOP_GROUP_ALL' represents including all the fields in 'WatchNexthopGroupResponse' | +
NEXTHOP_GROUP_ACTIVE | +1 | ++ |
NEXTHOP_GROUP_PROGRAMMED | +2 | ++ |
NEXTHOP_GROUP_VERSION_ID | +3 | ++ |
NEXTHOP_GROUP_NHG | +4 | ++ |
NEXTHOP_GROUP_ON_NHG_PROGRAMMED | +5 | ++ |
Name | +Value | +Description | +
---|---|---|
name | +string | ++ |
type | +NexthopGroupEncapTypes | ++ |
gre_key_type | +NexthopGroupGreKeyTypes | ++ |
oneof ttl_present.ttl | +uint32 | +Default value is 64. | +
source_ip_addr | +bytes | ++ |
source_intf | +IntfId | ++ |
autosize | +bool | ++ |
nexthops | +map NexthopGroup.NexthopsEntry | ++ |
destination_ips | +map NexthopGroup.DestinationIpsEntry | ++ |
counters_unshared | +bool | ++ |
hierarchical_fecs_enabled | +bool | ++ |
counters_persistent | +bool | ++ |
version_id | +uint32 | +NOTE: this is actually a 16-bit value. | +
Name | +Value | +Description | +
---|---|---|
key | +uint32 | ++ |
value | +bytes | ++ |
Name | +Value | +Description | +
---|---|---|
key | +uint32 | ++ |
value | +NexthopGroupEntry | ++ |
Name | +Value | +Description | +
---|---|---|
packets | +uint64 | ++ |
bytes | +uint64 | ++ |
valid | +bool | ++ |
entry_id | +uint32 | ++ |
Name | +Value | +Description | +
---|---|---|
mpls_action | +NexthopGroupMplsAction | ++ |
nexthop_ip | +bytes | ++ |
intf_id | +IntfId | ++ |
child_nexthop_group | +string | ++ |
Name | +Value | +Description | +
---|---|---|
action | +MplsActions | ++ |
mpls_labels | +repeated uint32 | ++ |
Name | +Value | +Description | +
---|---|---|
hw_state | +NexthopGroupProgrammedHwState | ++ |
counter_state | +NexthopGroupCounterState | ++ |
Name | +Value | +Description | +
---|---|---|
NEXTHOP_GROUP_COUNTER_INACTIVE | +0 | +Nexthop group entry counters are not enabled for this group. | +
NEXTHOP_GROUP_COUNTER_PROGRAMMING_FAILED | +1 | +At least one nexthop group entry counter for this group has failed to be programmed. Confirm that the expected configuration fits within the hardware limits of the system and reconfigure all nexthop groups. |
+
NEXTHOP_GROUP_COUNTER_PROGRAMMING_COMPLETE | +2 | +All nexthop group entry counters for this group have been successfully programmed. | +
Name | +Value | +Description | +
---|---|---|
NEXTHOP_GROUP_ENCAP_TYPE_NULL | +0 | ++ |
NEXTHOP_GROUP_ENCAP_IP_IN_IP | +1 | ++ |
NEXTHOP_GROUP_ENCAP_GRE | +2 | ++ |
NEXTHOP_GROUP_ENCAP_MPLS | +3 | ++ |
NEXTHOP_GROUP_ENCAP_MPLS_OVER_GRE | +4 | ++ |
NEXTHOP_GROUP_ENCAP_IP | +5 | ++ |
Name | +Value | +Description | +
---|---|---|
NEXTHOP_GROUP_GRE_KEY_NULL | +0 | ++ |
NEXTHOP_GROUP_GRE_KEY_INGRESS_INTF | +1 | ++ |
Name | +Value | +Description | +
---|---|---|
NEXTHOP_GROUP_HW_DROP | +0 | ++ |
NEXTHOP_GROUP_HW_PARTIALLY_PROGRAMMED | +1 | ++ |
NEXTHOP_GROUP_HW_ALL_PROGRAMMED | +2 | ++ |
++rpc watch(PolicyMapWatchRequest) + PolicyMapWatchResponse
+
Subscription to monitor changes on a specified policy map. This request +stays active until the client cancels or the server shuts down.
+EosSdk reference: eos::policy_map_handler (class)
+++rpc resync_init(PolicyMapResyncInitRequest) + PolicyMapResyncInitResponse
+
Initiates a policy map resync process. Starts a blank configuration to be +applied once resync_complete is called.
+EosSdk reference: eos::policy_map_mgr::resync_init
+++rpc resync_complete(PolicyMapResyncCompleteRequest) + PolicyMapResyncCompleteResponse
+
Ends the current policy map resync process.
+EosSdk reference: eos::policy_map_mgr::resync_complete
+++rpc exists(PolicyMapExistsRequest) + PolicyMapExistsResponse
+
Queries whether the specified policy map is configured or not.
+EosSdk reference: eos::policy_map_mgr::exists
+++rpc policy_map(PolicyMapRequest) + PolicyMapResponse
+
Queries a policy map given its key.
+EosSdk reference: eos::policy_map_mgr::policy_map
+++rpc policy_map_is(PolicyMapIsRequest) + PolicyMapIsResponse
+
Creates or updates a policy map.
+EosSdk reference: eos::policy_map_mgr::policy_map_is
+++rpc bulk_policy_map_is(BulkPolicyMapIsRequest) + BulkPolicyMapIsResponse
+
Creates or updates multiple policy maps in a single call.
+EosSdk reference: eos::policy_map_mgr::policy_map_is
+++rpc policy_map_del(PolicyMapDelRequest) + PolicyMapDelResponse
+
Deletes a policy map.
+EosSdk reference: eos::policy_map_mgr::policy_map_del
+++rpc bulk_policy_map_del(BulkPolicyMapDelRequest) + BulkPolicyMapDelResponse
+
Deletes multiple policy maps in a single call.
+EosSdk reference: eos::policy_map_mgr::policy_map_del
+++rpc policy_maps(PolicyMapsRequest) + PolicyMapsResponse
+
Returns a list of the keys of the configured policy maps for a policy feature.
+EosSdk reference: eos::policy_map_mgr::policy_map_iter
+++rpc policy_map_apply(PolicyMapApplyRequest) + PolicyMapApplyResponse
+
Applies or unapplies a policy map on the given interface and direction.
+EosSdk reference: eos::policy_map_mgr::policy_map_apply
+++rpc bulk_policy_map_apply(BulkPolicyMapApplyRequest) + BulkPolicyMapApplyResponse
+
Applies or unapplies multiple policy maps on the given interfaces and directions +in a single call.
+EosSdk reference: eos::policy_map_mgr::policy_map_apply
+++rpc policy_map_hw_statuses(PolicyMapHwStatusesRequest) + PolicyMapHwStatusesResponse
+
Returns a list of the policy maps in hardware for a policy feature.
+EosSdk reference: eos::policy_map_mgr::policy_map_hw_status_iter
+++rpc hw_status(PolicyMapHwStatusRequest) + PolicyMapHwStatusResponse
+
Queries the hardware status for a specified policy map.
+EosSdk reference: eos::policy_map_mgr::hw_status
+++rpc traffic_policy_exists(TrafficPolicyExistsRequest) + TrafficPolicyExistsResponse
+
Queries whether the specified traffic policy is configured or not.
+EosSdk reference: eos::policy_map_mgr::traffic_policy_exists
+++rpc traffic_policy(TrafficPolicyRequest) + TrafficPolicyResponse
+
Queries a traffic policy given its key.
+EosSdk reference: eos::policy_map_mgr::traffic_policy
+++rpc traffic_policy_is(TrafficPolicyIsRequest) + TrafficPolicyIsResponse
+
Creates or updates a traffic policy.
+EosSdk reference: eos::policy_map_mgr::traffic_policy_is
+++rpc bulk_traffic_policy_is(BulkTrafficPolicyIsRequest) + BulkTrafficPolicyIsResponse
+
Creates or updates multiple traffic policies in a single call.
+EosSdk reference: eos::policy_map_mgr::traffic_policy_is
+++rpc traffic_policy_del(TrafficPolicyDelRequest) + TrafficPolicyDelResponse
+
Deletes a traffic policy.
+EosSdk reference: eos::policy_map_mgr::traffic_policy_del
+++rpc bulk_traffic_policy_del(BulkTrafficPolicyDelRequest) + BulkTrafficPolicyDelResponse
+
Deletes multiple traffic policies in a single call.
+EosSdk reference: eos::policy_map_mgr::traffic_policy_del
+++rpc traffic_policies(TrafficPoliciesRequest) + TrafficPoliciesResponse
+
Returns a list of the keys of the configured traffic policies.
+EosSdk reference: eos::policy_map_mgr::traffic_policy_iter
+++rpc traffic_policy_apply(TrafficPolicyApplyRequest) + TrafficPolicyApplyResponse
+
Applies or unapplies a traffic policy on the given interface and direction.
+EosSdk reference: eos::policy_map_mgr::traffic_policy_apply
+++rpc bulk_traffic_policy_apply(BulkTrafficPolicyApplyRequest) + BulkTrafficPolicyApplyResponse
+
Applies or unapplies multiple traffic policies on the given interfaces and +directions in a single call.
+EosSdk reference: eos::policy_map_mgr::traffic_policy_apply
+ + + +Name | +Value | +Description | +
---|---|---|
requests | +repeated PolicyMapApplyRequest | +List of PolicyMapApplyRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated PolicyMapDelRequest | +List of PolicyMapDelRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated PolicyMapIsRequest | +List of PolicyMapIsRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated TrafficPolicyApplyRequest | +List of TrafficPolicyApplyRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated TrafficPolicyDelRequest | +List of TrafficPolicyDelRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Name | +Value | +Description | +
---|---|---|
requests | +repeated TrafficPolicyIsRequest | +List of TrafficPolicyIsRequests. | +
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | +Number of consecutive successful requests. | +
status | +RpcResponseStatus | +Success or error details in case of failure. | +
Note: When unapplying a PBR policy map, the specified interface's +policy map will be unapplied regardless of whether it matches the +specified policy map name.
+Name | +Value | +Description | +
---|---|---|
key | +PolicyMapKey | +The key of the policy map to [un]apply. | +
intf_id | +IntfId | +The inteface ID of the interface to [un]apply the policy map. | +
direction | +AclDirection | +The direction in which to [un]apply the policy map. | +
apply | +bool | +True if the policy map should be applied otherwise false if it should be unapplied. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
key | +PolicyMapKey | +The key of the policy map to delete. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
key | +PolicyMapKey | +The key of the policy map to query. | +
Name | +Value | +Description | +
---|---|---|
exists | +bool | +True if the policy map is configured otherwise false. | +
Name | +Value | +Description | +
---|---|---|
key | +PolicyMapKey | +The key of the policy map to get the hardware status for. | +
Name | +Value | +Description | +
---|---|---|
hw_statuses | +PolicyMapHwStatuses | +The hardware status of the policy map. | +
Name | +Value | +Description | +
---|---|---|
feature | +PolicyFeature | +The policy feature. | +
Name | +Value | +Description | +
---|---|---|
key | +PolicyMapKey | +The keys of the policy maps for the feature. | +
Name | +Value | +Description | +
---|---|---|
policy_map | +PolicyMap | +The policy map to create or update. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
key | +PolicyMapKey | +The key of the policy map to query. | +
Name | +Value | +Description | +
---|---|---|
policy_map | +PolicyMap | +The policy map corresponding to the key or empty if not found. | +
Empty message. + +
+Empty message. + +
+Empty message. + +
+Empty message. + +
+Name | +Value | +Description | +
---|---|---|
oneof overloads.all | +bool | +True if all policy maps should be watched. | +
oneof overloads.key | +PolicyMapKey | +The key of the policy map to recieve notifications for. | +
ack | +bool | +Set to true if an immediate acknowledgment is desired. | +
Name | +Value | +Description | +
---|---|---|
key | +PolicyMapKey | +The key of the policy map that triggered the event. | +
oneof policy_map_event.event_type | +PolicyMapEventType | +The type of event. | +
oneof policy_map_event.sync_fail_message | +string | +Provides details when policy map commit or apply operation fails. | +
ack | +bool | +If true, this is not an event and the fields below are invalid. | +
Name | +Value | +Description | +
---|---|---|
feature | +PolicyFeature | +The policy feature. | +
Name | +Value | +Description | +
---|---|---|
key | +PolicyMapKey | +The key of the feature's configured policy maps. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
key | +PolicyMapKey | +The key of one of the feature's configured policy maps. | +
Name | +Value | +Description | +
---|---|---|
key | +string | +The key of the traffic policy to [un]apply. | +
intf_id | +IntfId | +The inteface ID of the interface to [un]apply the policy map. | +
direction | +TrafficPolicyDirection | +The direction in which to [un]apply the traffic policy. | +
apply | +bool | +True if the traffic policy should be applied otherwise false if it should be unapplied. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
key | +string | +The key of the traffic policy to delete. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
key | +string | +The key of the traffic policy to query. | +
Name | +Value | +Description | +
---|---|---|
exists | +bool | +True if the traffic policy is configured otherwise false. | +
Name | +Value | +Description | +
---|---|---|
traffic_policy | +TrafficPolicy | +The traffic policy to create or update. | +
Empty message. + +
+Name | +Value | +Description | +
---|---|---|
key | +string | +The key of the traffic policy to query. | +
Name | +Value | +Description | +
---|---|---|
traffic_policy | +TrafficPolicy | +The traffic policy corresponding to the key or empty if not found. | +
Name | +Value | +Description | +
---|---|---|
POLICY_MAP_EVENT_NULL | +0 | ++ |
POLICY_MAP_EVENT_SYNC | +1 | ++ |
POLICY_MAP_EVENT_CONFIG_SET | +2 | ++ |
POLICY_MAP_EVENT_TP_CONFIG_SET | +3 | ++ |
Name | +Value | +Description | +
---|---|---|
key | +PolicyMapKey | ++ |
rules | +map PolicyMap.RulesEntry | ++ |
Name | +Value | +Description | +
---|---|---|
key | +uint32 | ++ |
value | +PolicyMapRule | ++ |
Name | +Value | +Description | +
---|---|---|
action_type | +PolicyActionType | ++ |
nexthop_group_name | +string | ++ |
nexthops | +repeated bytes | ++ |
vrf | +string | ++ |
dscp | +uint32 | +Must be in range 0 to 255. | +
traffic_class | +uint32 | +Must be in range 0 to 255. | +
Name | +Value | +Description | +
---|---|---|
intf_id | +IntfId | ++ |
direction | +AclDirection | ++ |
Name | +Value | +Description | +
---|---|---|
status_values | +repeated PolicyMapStatusValue | ++ |
Name | +Value | +Description | +
---|---|---|
name | +string | ++ |
feature | +PolicyFeature | ++ |
Name | +Value | +Description | +
---|---|---|
class_map_key | +PolicyMapKey | ++ |
oneof policy_map_rule_type_present.policy_map_rule_type | +PolicyMapRuleType | +Default value is POLICY_RULE_TYPE_CLASSMAP. | +
raw_rule | +AclRuleIp | ++ |
actions | +repeated PolicyMapAction | ++ |
Name | +Value | +Description | +
---|---|---|
hw_status_key | +PolicyMapHwStatusKey | ++ |
status | +PolicyMapStatus | ++ |
A traffic policy instance.
+EosSdk reference: eos::traffic_policy_t
+Name | +Value | +Description | +
---|---|---|
key | +string | ++ |
named_counters | +repeated string | ++ |
rules | +map TrafficPolicy.RulesEntry | ++ |
Name | +Value | +Description | +
---|---|---|
key | +uint32 | ++ |
value | +TrafficPolicyRule | ++ |
A single traffic-policy action.
+EosSdk reference: eos::traffic_policy_action_t
+Name | +Value | +Description | +
---|---|---|
action_type | +TrafficPolicyActionType | ++ |
counter_name | +string | ++ |
goto_class_name | +string | ++ |
goto_next | +bool | ++ |
dscp | +uint32 | ++ |
traffic_class | +uint32 | ++ |
vrf | +string | ++ |
mirror_session | +string | ++ |
police_rate | +uint64 | ++ |
police_burst_size | +uint64 | ++ |
police_rate_unit | +PoliceRateUnit | ++ |
police_burst_unit | +PoliceBurstUnit | ++ |
nexthop_groups | +repeated string | ++ |
nexthops | +repeated bytes | ++ |
A traffic policy rule, describing traffic match and actions.
+EosSdk reference: eos::traffic_policy_rule_t
+Name | +Value | +Description | +
---|---|---|
match_rule_name | +string | ++ |
traffic_policy_rule_type | +TrafficPolicyRuleType | ++ |
raw_rule | +TpRuleFilter | ++ |
actions | +repeated TrafficPolicyAction | ++ |
Name | +Value | +Description | +
---|---|---|
POLICE_BURST_UNIT_NULL | +0 | ++ |
POLICE_BURST_UNIT_BYTES | +1 | ++ |
POLICE_BURST_UNIT_KBYTES | +2 | ++ |
POLICE_BURST_UNIT_MBYTES | +3 | ++ |
Name | +Value | +Description | +
---|---|---|
POLICE_RATE_UNIT_NULL | +0 | ++ |
POLICE_RATE_UNIT_BPS | +1 | ++ |
POLICE_RATE_UNIT_KBPS | +2 | ++ |
POLICE_RATE_UNIT_MBPS | +3 | ++ |
POLICE_RATE_UNIT_GBPS | +4 | ++ |
The actions a policy map rule may apply to classified packets.
+Name | +Value | +Description | +
---|---|---|
POLICY_ACTION_NULL | +0 | ++ |
POLICY_ACTION_NONE | +1 | ++ |
POLICY_ACTION_DROP | +2 | ++ |
POLICY_ACTION_NEXTHOP | +3 | ++ |
POLICY_ACTION_NEXTHOP_GROUP | +4 | ++ |
POLICY_ACTION_DSCP | +5 | ++ |
POLICY_ACTION_TRAFFIC_CLASS | +6 | ++ |
A hardware feature a policy map can be used with.
+Name | +Value | +Description | +
---|---|---|
POLICY_FEATURE_NULL | +0 | ++ |
POLICY_FEATURE_PBR | +1 | ++ |
POLICY_FEATURE_QOS | +2 | ++ |
POLICY_FEATURE_TAP_AGG | +3 | ++ |
POLICY_FEATURE_TRAFFIC_POLICY | +4 | ++ |
Name | +Value | +Description | +
---|---|---|
POLICY_RULE_TYPE_NOT_SET | +0 | ++ |
POLICY_RULE_TYPE_CLASSMAP | +1 | ++ |
POLICY_RULE_TYPE_IPV4 | +2 | ++ |
POLICY_RULE_TYPE_IPV6 | +3 | ++ |
The policy map hardware status type.
+Name | +Value | +Description | +
---|---|---|
POLICY_STATUS_NULL | +0 | ++ |
POLICY_STATUS_NOT_FOUND | +1 | ++ |
POLICY_STATUS_IN_PROGRESS | +2 | ++ |
POLICY_STATUS_FAILED | +3 | ++ |
POLICY_STATUS_SUCCESS | +4 | ++ |
Name | +Value | +Description | +
---|---|---|
TRAFFIC_POLICY_ACTION_NULL | +0 | ++ |
TRAFFIC_POLICY_ACTION_DROP | +1 | ++ |
TRAFFIC_POLICY_ACTION_POLICE | +2 | ++ |
TRAFFIC_POLICY_ACTION_COUNT | +3 | ++ |
TRAFFIC_POLICY_ACTION_LOG | +4 | ++ |
TRAFFIC_POLICY_ACTION_GOTO | +5 | ++ |
TRAFFIC_POLICY_ACTION_DSCP | +6 | ++ |
TRAFFIC_POLICY_ACTION_TRAFFIC_CLASS | +7 | ++ |
TRAFFIC_POLICY_ACTION_SET_VRF | +8 | ++ |
TRAFFIC_POLICY_ACTION_SET_VRF_SECONDARY | +9 | ++ |
TRAFFIC_POLICY_ACTION_USE_VRF_SECONDARY | +10 | ++ |
TRAFFIC_POLICY_ACTION_MIRROR | +11 | ++ |
TRAFFIC_POLICY_ACTION_SFLOW | +12 | ++ |
TRAFFIC_POLICY_ACTION_NEXTHOP | +13 | ++ |
TRAFFIC_POLICY_ACTION_NEXTHOP_GROUP | +14 | ++ |
Name | +Value | +Description | +
---|---|---|
TRAFFIC_POLICY_DIRECTION_NULL | +0 | ++ |
TRAFFIC_POLICY_DIRECTION_INPUT | +1 | ++ |
Name | +Value | +Description | +
---|---|---|
processed | +uint64 | ++ |
status | +RpcResponseStatus | ++ |
Name | +Value | +Description | +
---|---|---|
status | +RpcStatusCodes | ++ |
error_string | +string | ++ |
The status codes below match gRPC StatusCodes +in both naming and numeric values.
+Name | +Value | +Description | +
---|---|---|
RPC_STATUS_OK | +0 | ++ |
RPC_STATUS_CANCELLED | +1 | ++ |
RPC_STATUS_UNKNOWN | +2 | ++ |
RPC_STATUS_INVALID_ARGUMENT | +3 | ++ |
RPC_STATUS_DEADLINE_EXCEEDED | +4 | ++ |
RPC_STATUS_NOT_FOUND | +5 | ++ |
RPC_STATUS_ALREDY_EXISTS | +6 | ++ |
RPC_STATUS_ALREADY_EXISTS | +6 | ++ |
RPC_STATUS_PERMISSION_DENIED | +7 | ++ |
RPC_STATUS_UNAUTHENTICATED | +8 | ++ |
RPC_STATUS_RESOURCE_EXHAUSTED | +9 | ++ |
RPC_STATUS_FAILED_PRECONDITION | +10 | ++ |
RPC_STATUS_ABORTED | +11 | ++ |
RPC_STATUS_OUT_OF_RANGE | +12 | ++ |
RPC_STATUS_UNIMPLEMENTED | +13 | ++ |
RPC_STATUS_INTERNAL | +14 | ++ |
RPC_STATUS_UNAVAILABLE | +15 | ++ |
RPC_STATUS_DATA_LOSS | +16 | ++ |
RPC_DO_NOT_USE | +17 | ++ |
Field type used to configure the port ranges or port field-sets.
+EosSdk reference: eos::port_field_t
+Name | +Value | +Description | +
---|---|---|
src_ports | +repeated Range | ++ |
dst_ports | +repeated Range | ++ |
src_port_field_sets | +repeated string | ++ |
dst_port_field_sets | +repeated string | ++ |
Field type used to configure the protocol ranges or protocol field-sets.
+EosSdk reference: eos::protocol_field_t
+Name | +Value | +Description | +
---|---|---|
ports | +map ProtocolField.PortsEntry | ++ |
Name | +Value | +Description | +
---|---|---|
key | +uint32 | ++ |
value | +PortField | ++ |
Name | +Value | +Description | +
---|---|---|
range_start | +uint32 | ++ |
range_end | +uint32 | ++ |
This type is used to store the configs of all match fields of a +traffic-policy rule.
+EosSdk reference: eos::tp_rule_filter_t
+Name | +Value | +Description | +
---|---|---|
src_addrs | +repeated IpAddrMask | ++ |
src_addr_field_sets | +repeated string | ++ |
dst_addrs | +repeated IpAddrMask | ++ |
dst_addr_field_sets | +repeated string | ++ |
protocol_values | +repeated TpRuleFilter.ProtocolValue | ++ |
filter_type | +TrafficPolicyRuleType | ++ |
Name | +Value | +Description | +
---|---|---|
protocol_range | +Range | ++ |
protocol_field | +ProtocolField | ++ |
Name | +Value | +Description | +
---|---|---|
TRAFFIC_POLICY_RULE_TYPE_NULL | +0 | ++ |
TRAFFIC_POLICY_RULE_TYPE_IPV4 | +1 | ++ |
TRAFFIC_POLICY_RULE_TYPE_IPV6 | +2 | ++ |
{"use strict";/*!
+ * escape-html
+ * Copyright(c) 2012-2013 TJ Holowaychuk
+ * Copyright(c) 2015 Andreas Lubbe
+ * Copyright(c) 2015 Tiancheng "Timothy" Gu
+ * MIT Licensed
+ */var Va=/["'&<>]/;qn.exports=za;function za(e){var t=""+e,r=Va.exec(t);if(!r)return t;var o,n="",i=0,s=0;for(i=r.index;i