-option version = "1.0.0";
+option version = "1.1.0";
service {
rpc want_interface_events returns want_interface_events_reply
@param sw_if_index - interface indexes for counters
@param rx_packets - received packet count
@param rx_bytes - received byte count
+ @param rx_unicast_packets - received unicast packet count
+ @param rx_unicast_bytes - received unicast byte count
+ @param rx_multicast_packets - received multicast packet count
+ @param rx_multicast_bytes - received multicast byte count
+ @param rx_broadcast_packets - received broadcast packet count
+ @param rx_broadcast_bytes - received broadcast byte count
@param tx_packets - transmitted packet count
@param tx_bytes - transmitted byte count
+ @param tx_unicast_packets - transmitted unicast packet count
+ @param tx_unicast_bytes - transmitted unicast byte count
+ @param tx_multicast_packets - transmitted multicast packet count
+ @param tx_multicast_bytes - transmitted multicast byte count
+ @param tx_broadcast_packets - transmitted broadcast packet count
+ @param tx_broadcast_bytes - transmitted broadcast byte count
*/
typeonly manual_print manual_endian define vnet_combined_counter
{
u32 sw_if_index;
- u64 rx_packets; /**< packet counter */
- u64 rx_bytes; /**< byte counter */
- u64 tx_packets; /**< packet counter */
- u64 tx_bytes; /**< byte counter */
+ u64 rx_packets; /**< packet counter */
+ u64 rx_bytes; /**< byte counter */
+ u64 rx_unicast_packets; /**< packet counter */
+ u64 rx_unicast_bytes; /**< byte counter */
+ u64 rx_multicast_packets; /**< packet counter */
+ u64 rx_multicast_bytes; /**< byte counter */
+ u64 rx_broadcast_packets; /**< packet counter */
+ u64 rx_broadcast_bytes; /**< byte counter */
+ u64 tx_packets; /**< packet counter */
+ u64 tx_bytes; /**< byte counter */
+ u64 tx_unicast_packets; /**< packet counter */
+ u64 tx_unicast_bytes; /**< byte counter */
+ u64 tx_multicast_packets; /**< packet counter */
+ u64 tx_multicast_bytes; /**< byte counter */
+ u64 tx_broadcast_packets; /**< packet counter */
+ u64 tx_broadcast_bytes; /**< byte counter */
};
/** \brief Simple interface counter data type for vnet_interface_simple_counters
u8 mac_address[6];
};
+/** \brief Get interface's MAC address
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+ @param sw_if_index - the interface whose MAC will be returned
+*/
+define sw_interface_get_mac_address
+{
+ u32 client_index;
+ u32 context;
+ u32 sw_if_index;
+};
+
+/** \brief Reply for get interface's MAC address request
+ @param context - returned sender context, to match reply w/ request
+ @param retval - return code
+ @param mac_addr - returned interface's MAC address
+*/
+define sw_interface_get_mac_address_reply
+{
+ u32 context;
+ i32 retval;
+ u8 mac_address[6];
+};
+
/** \brief Set an interface's rx-mode
@param client_index - opaque cookie to identify the sender
@param context - sender context, to match reply w/ request
u32 sw_if_index;
};
+/** \brief Enable or disable detailed interface stats
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+ @param sw_if_index - The interface to collect detail stats on. ~0 implies
+ all interfaces.
+ @param enable_disable - set to 1 to enable, 0 to disable detailed stats
+*/
+autoreply define collect_detailed_interface_stats
+{
+ u32 client_index;
+ u32 context;
+ u32 sw_if_index;
+ u8 enable_disable;
+};
+
/*
* Local Variables:
* eval: (c-set-style "gnu")