X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fplugins%2Fnat%2Fnat44-ed%2Fnat44_ed.api;h=322260f7f9603ed3882e86343821dedd6cc59a5a;hb=HEAD;hp=88496a3f16e5ce5b6643dbff4a532227df2f014a;hpb=691c630b79ec2230b67944c8a9f77f95b49d95ad;p=vpp.git diff --git a/src/plugins/nat/nat44-ed/nat44_ed.api b/src/plugins/nat/nat44-ed/nat44_ed.api index 88496a3f16e..322260f7f96 100644 --- a/src/plugins/nat/nat44-ed/nat44_ed.api +++ b/src/plugins/nat/nat44-ed/nat44_ed.api @@ -235,6 +235,7 @@ autoreply define nat44_ed_add_del_vrf_route { define nat44_ed_vrf_tables_dump { u32 client_index; u32 context; + option deprecated; }; /** \brief NAT44-ED inter VRF NAT routing table details response @@ -248,6 +249,31 @@ define nat44_ed_vrf_tables_details { u32 table_vrf_id; u32 n_vrf_ids; u32 vrf_ids[n_vrf_ids]; + option deprecated; +}; + +/** \brief Dump NAT44-ED inter VRF NAT routing tables + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request +*/ +define nat44_ed_vrf_tables_v2_dump { + u32 client_index; + u32 context; + option status="in_progress"; +}; + +/** \brief NAT44-ED inter VRF NAT routing table details response + @param context - sender context, to match reply w/ request + @param table_vrf_id - id of the VRF NAT routing table + @param n_vrf_ids - number of vrf_ids + @param vrf_ids - ids of resolving destination (tx) VRFs +*/ +define nat44_ed_vrf_tables_v2_details { + u32 context; + u32 table_vrf_id; + u32 n_vrf_ids; + u32 vrf_ids[n_vrf_ids]; + option status="in_progress"; }; /** \brief Set TCP MSS rewriting configuration @@ -496,6 +522,8 @@ define nat44_ed_output_interface_details @param tag - opaque string tag */ autoreply define nat44_add_del_static_mapping { + option deprecated; + u32 client_index; u32 context; bool is_add; @@ -803,6 +831,8 @@ define nat44_user_details { @param vrf_id - VRF_ID */ define nat44_user_session_dump { + option deprecated; + u32 client_index; u32 context; vl_api_ip4_address_t ip_address; @@ -831,6 +861,8 @@ define nat44_user_session_dump { twice-nat session) */ define nat44_user_session_details { + option deprecated; + u32 context; vl_api_ip4_address_t outside_ip_address; u16 outside_port; @@ -854,6 +886,8 @@ define nat44_user_session_details { @param vrf_id - VRF_ID */ define nat44_user_session_v2_dump { + option deprecated; + u32 client_index; u32 context; vl_api_ip4_address_t ip_address; @@ -884,6 +918,8 @@ define nat44_user_session_v2_dump { is active */ define nat44_user_session_v2_details { + option deprecated; + u32 context; vl_api_ip4_address_t outside_ip_address; u16 outside_port; @@ -901,206 +937,58 @@ define nat44_user_session_v2_details { bool is_timed_out; }; -// DEPRECATED, obsolete messages completely unsupported - -/** \brief Del NAT44 user - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param ip_address - IPv4 address - @param fib_index - FIB index -*/ -autoreply define nat44_del_user { - option deprecated; - u32 client_index; - u32 context; - vl_api_ip4_address_t ip_address; - u32 fib_index; -}; - -/** \brief Set address and port assignment algorithm - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param alg - address and port assignment algorithm: - 0 - default, 1 - MAP-E, 2 - port range - (see nat_addr_and_port_alloc_alg_t in nat.h) - @param psid_offset - number of offset bits (valid only for MAP-E alg) - @param psid_length - length of PSID (valid only for MAP-E alg) - @param psid - Port Set Identifier (PSID) value (valid only for MAP-E alg) - @param start_port - beginning of the port range - @param end_port - end of the port range -*/ -autoreply define nat_set_addr_and_port_alloc_alg { - option deprecated; - u32 client_index; - u32 context; - u8 alg; - u8 psid_offset; - u8 psid_length; - u16 psid; - u16 start_port; - u16 end_port; -}; - -/** \brief Get address and port assignment algorithm - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request -*/ -define nat_get_addr_and_port_alloc_alg { - option deprecated; - u32 client_index; - u32 context; -}; - -/** \brief Get address and port assignment algorithm reply - @param context - sender context, to match reply w/ request - @param retval - return code - @param alg - address and port assignment algorithm: - 0 - default, 1 - MAP-E, 2 - port range - (see nat_addr_and_port_alloc_alg_t in nat.h) - @param psid_offset - number of offset bits (valid only for MAP-E alg) - @param psid_length - length of PSID (valid only for MAP-E alg) - @param psid - Port Set Identifier (PSID) value (valid only for MAP-E alg) - @param start_port - beginning of the port range - @param end_port - end of the port range -*/ -define nat_get_addr_and_port_alloc_alg_reply { - option deprecated; - u32 context; - i32 retval; - u8 alg; - u8 psid_offset; - u8 psid_length; - u16 psid; - u16 start_port; - u16 end_port; -}; - -/** \brief Set HA listener (local settings) - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param ip_address - local IP4 address - @param port - local UDP port number - @param path_mtu - path MTU between local and failover -*/ -autoreply define nat_ha_set_listener { - option deprecated; - u32 client_index; - u32 context; - vl_api_ip4_address_t ip_address; - u16 port; - u32 path_mtu; -}; - -/** \brief Set HA failover (remote settings) - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param ip_address - failover IP4 address - @param port - failvoer UDP port number - @param session_refresh_interval - number of seconds after which to send - session counters refresh -*/ -autoreply define nat_ha_set_failover { - option deprecated; - u32 client_index; - u32 context; - vl_api_ip4_address_t ip_address; - u16 port; - u32 session_refresh_interval; -}; - -/** \brief Get HA listener/local configuration - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request -*/ -define nat_ha_get_listener { - option deprecated; - u32 client_index; - u32 context; -}; - -/** \brief Get HA listener/local configuration reply +/** \brief NAT44 user's sessions response @param context - sender context, to match reply w/ request - @param retval - return code - @param ip_address - local IP4 address - @param port - local UDP port number - @param path_mtu - Path MTU between local and failover + @param outside_ip_address - outside IPv4 address + @param outside_port - outside port + @param inside_ip_address - inside IPv4 address + @param inside_port - inside port + @param protocol - protocol + @param flags - flag NAT_IS_STATIC if session is static, + flag NAT_IS_TWICE_NAT if session is twice-nat, + flag NAT_IS_EXT_HOST_VALID if external host address + and port are valid + @param last_heard - last heard timer since VPP start + @param time_since_last_heard - difference between current vpp time and last_heard value + @param total_bytes - count of bytes sent through session + @param total_pkts - count of pakets sent through session + @param ext_host_address - external host IPv4 address + @param ext_host_port - external host port + @param ext_host_nat_address - post-NAT external host IPv4 address (valid + only if twice-nat session) + @param ext_host_nat_port - post-NAT external host port (valid only if + twice-nat session) + @param is_timed_out - true, if session is timed out, and false, if session + is active */ -define nat_ha_get_listener_reply { - option deprecated; +define nat44_user_session_v3_details { u32 context; - i32 retval; - vl_api_ip4_address_t ip_address; - u16 port; - u32 path_mtu; + vl_api_ip4_address_t outside_ip_address; + u16 outside_port; + vl_api_ip4_address_t inside_ip_address; + u16 inside_port; + u16 protocol; + vl_api_nat_config_flags_t flags; + u64 last_heard; + u64 time_since_last_heard; + u64 total_bytes; + u32 total_pkts; + vl_api_ip4_address_t ext_host_address; + u16 ext_host_port; + vl_api_ip4_address_t ext_host_nat_address; + u16 ext_host_nat_port; + bool is_timed_out; }; -/** \brief Get HA failover/remote settings +/** \brief NAT44 user's sessions @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request + @param ip_address - IPv4 address of the user to dump + @param vrf_id - VRF_ID */ -define nat_ha_get_failover { - option deprecated; +define nat44_user_session_v3_dump { u32 client_index; u32 context; -}; - -/** \brief Get HA failover/remote settings reply - @param context - sender context, to match reply w/ request - @param retval - return code - @param ip_address - failover IP4 address - @param port - failvoer UDP port number - @param session_refresh_interval - number of seconds after which to send - session counters refresh -*/ -define nat_ha_get_failover_reply { - option deprecated; - u32 context; - i32 retval; vl_api_ip4_address_t ip_address; - u16 port; - u32 session_refresh_interval; -}; - -/** \brief Flush the current HA data (for testing) - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request -*/ -autoreply define nat_ha_flush { - option deprecated; - u32 client_index; - u32 context; -}; - -/** \brief Resync HA (resend existing sessions to new failover) - @param client_index - opaque cookie to identify the sender - @param context - sender context, to match reply w/ request - @param want_resync_event - resync completed event sent to the sender via - nat_ha_resync_completed_event API message if - non-zero - @param pid - sender's pid -*/ -autoreply define nat_ha_resync -{ - option deprecated; - u32 client_index; - u32 context; - u8 want_resync_event; - u32 pid; -}; - -/** \brief Tell client about a HA resync completion event - @param client_index - opaque cookie to identify the sender - @param pid - client pid registered to receive notification - @param missed_count - number of missed (not ACKed) messages -*/ -define nat_ha_resync_completed_event -{ - option deprecated; - u32 client_index; - u32 pid; - u32 missed_count; -}; - -service { - rpc nat_ha_resync returns nat_ha_resync_reply events nat_ha_resync_completed_event; + u32 vrf_id; };