summaryrefslogtreecommitdiffstats
path: root/vpp/vpp-api/vpe.api
diff options
context:
space:
mode:
authorJuraj Sloboda <jsloboda@cisco.com>2016-08-07 23:43:42 -0700
committerDamjan Marion <dmarion.lists@gmail.com>2016-09-07 07:35:50 +0000
commitffa652afd8847438af4d0bdc253789a67a4f1da1 (patch)
tree015e35fab6437930af127a16b4db68ff7dc0b4bb /vpp/vpp-api/vpe.api
parentd4798a394a337ad11c306309bb68611251b4e593 (diff)
VPP-204 Rework and finish IPFIX implementation
Rework flow report registration system - add streams Add support for IPv6 and src and dst ports for TCP and UDP protocols Implement binary API for IPFIX classifier module Change-Id: Id05cc0127a7b95ceaeebf9c79a32c6936449bd63 Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
Diffstat (limited to 'vpp/vpp-api/vpe.api')
-rw-r--r--vpp/vpp-api/vpe.api114
1 files changed, 103 insertions, 11 deletions
diff --git a/vpp/vpp-api/vpe.api b/vpp/vpp-api/vpe.api
index 5c1502a8..11bb30c1 100644
--- a/vpp/vpp-api/vpe.api
+++ b/vpp/vpp-api/vpe.api
@@ -4570,17 +4570,18 @@ define classify_session_details
u8 match[match_length];
};
-/** \brief Enable and configure IPFIX exporter process request
+/** \brief Configure IPFIX exporter process request
@param client_index - opaque cookie to identify the sender
@param context - sender context, to match reply w/ request
@param collector_address - address of IPFIX collector
- @param collector_port - port of IPFIX IPFIX collector
+ @param collector_port - port of IPFIX collector
@param src_address - address of IPFIX exporter
@param vrf_id - VRF / fib table ID
@param path_mtu - Path MTU between exporter and collector
@param template_interval - number of seconds after which to resend template
+ @param udp_checksum - UDP checksum calculation enable flag
*/
-define ipfix_enable
+define set_ipfix_exporter
{
u32 client_index;
u32 context;
@@ -4590,45 +4591,136 @@ define ipfix_enable
u32 vrf_id;
u32 path_mtu;
u32 template_interval;
+ u8 udp_checksum;
};
-/** \brief Reply to IPFIX enable and configure request
+/** \brief Reply to IPFIX exporter configure request
@param context - sender context which was passed in the request
*/
-define ipfix_enable_reply
+define set_ipfix_exporter_reply
{
u32 context;
i32 retval;
};
-/** \brief IPFIX dump request
+/** \brief IPFIX exporter dump request
@param client_index - opaque cookie to identify the sender
@param context - sender context, to match reply w/ request
*/
-define ipfix_dump
+define ipfix_exporter_dump
{
u32 client_index;
u32 context;
};
-/** \brief Reply to IPFIX dump request
+/** \brief Reply to IPFIX exporter dump request
@param context - sender context which was passed in the request
@param collector_address - address of IPFIX collector
- @param collector_port - port of IPFIX IPFIX collector
+ @param collector_port - port of IPFIX collector
@param src_address - address of IPFIX exporter
@param fib_index - fib table index
@param path_mtu - Path MTU between exporter and collector
@param template_interval - number of seconds after which to resend template
+ @param udp_checksum - UDP checksum calculation enable flag
*/
-define ipfix_details
+define ipfix_exporter_details
{
u32 context;
u8 collector_address[16];
u16 collector_port;
u8 src_address[16];
- u32 fib_index;
+ u32 vrf_id;
u32 path_mtu;
u32 template_interval;
+ u8 udp_checksum;
+};
+
+/** \brief IPFIX classify stream configure request
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+ @param domain_id - domain ID reported in IPFIX messages for classify stream
+ @param src_port - source port of UDP session for classify stream
+*/
+define set_ipfix_classify_stream {
+ u32 client_index;
+ u32 context;
+ u32 domain_id;
+ u16 src_port;
+};
+
+/** \brief IPFIX classify stream configure response
+ @param context - sender context, to match reply w/ request
+ @param retval - return value for request
+*/
+define set_ipfix_classify_stream_reply {
+ u32 context;
+ i32 retval;
+};
+
+/** \brief IPFIX classify stream dump request
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+*/
+define ipfix_classify_stream_dump {
+ u32 client_index;
+ u32 context;
+};
+
+/** \brief Reply to IPFIX classify stream dump request
+ @param context - sender context, to match reply w/ request
+ @param domain_id - domain ID reported in IPFIX messages for classify stream
+ @param src_port - source port of UDP session for classify stream
+*/
+define ipfix_classify_stream_details {
+ u32 context;
+ u32 domain_id;
+ u16 src_port;
+};
+
+/** \brief IPFIX add or delete classifier table request
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+ @param table_id - classifier table ID
+ @param ip_version - version of IP used in the classifier table
+ @param transport_protocol - transport protocol used in the classifier table or 255 for unspecified
+*/
+define ipfix_classify_table_add_del {
+ u32 client_index;
+ u32 context;
+ u32 table_id;
+ u8 ip_version;
+ u8 transport_protocol;
+ u8 is_add;
+};
+
+/** \brief IPFIX add classifier table response
+ @param context - sender context which was passed in the request
+*/
+define ipfix_classify_table_add_del_reply {
+ u32 context;
+ i32 retval;
+};
+
+/** \brief IPFIX classify tables dump request
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+*/
+define ipfix_classify_table_dump {
+ u32 client_index;
+ u32 context;
+};
+
+/** \brief Reply to IPFIX classify tables dump request
+ @param context - sender context, to match reply w/ request
+ @param table_id - classifier table ID
+ @param ip_version - version of IP used in the classifier table
+ @param transport_protocol - transport protocol used in the classifier table or 255 for unspecified
+*/
+define ipfix_classify_table_details {
+ u32 context;
+ u32 table_id;
+ u8 ip_version;
+ u8 transport_protocol;
};
/** \brief Query relative index via node names