FD.io VPP  v21.01.1
Vector Packet Processing
nsim.api
Go to the documentation of this file.
1 /**
2  * @file nsim.api
3  * @brief VPP control-plane API messages for the network delay simulator
4  */
5 
6 option version = "2.2.1";
7 import "vnet/interface_types.api";
8 
9 /** \brief enable / disable the network delay simulation cross-connect
10  @param client_index - opaque cookie to identify the sender
11  @param context - sender context, to match reply w/ request
12  @param enable_disable - enable or disable the feature
13  @param sw_if_index0 - one interface to cross-connect
14  @param sw_if_index1 - the other interface to cross-connect
15 */
17 {
18  /* Client identifier, set from api_main.my_client_index */
20 
21  /* Arbitrary context, so client can match reply to request */
23 
24  /* Enable / disable the feature on the interfaces */
26 
27  /* Interface handles */
28  vl_api_interface_index_t sw_if_index0;
29  vl_api_interface_index_t sw_if_index1;
30  option vat_help = "[<intfc0> | sw_if_index <swif0>] [<intfc1> | sw_if_index <swif1>] [disable]";
31 };
32 
33 /** \brief enable / disable the network delay simulation output feature
34  @param client_index - opaque cookie to identify the sender
35  @param context - sender context, to match reply w/ request
36  @param enable_disable - enable or disable the feature
37  @param sw_if_index0 - interface
38 */
40 {
41  /* Client identifier, set from api_main.my_client_index */
43 
44  /* Arbitrary context, so client can match reply to request */
46 
47  /* Enable / disable the feature on the interfaces */
49 
50  /* Interface handles */
51  vl_api_interface_index_t sw_if_index;
52  option vat_help = "[<intfc> | sw_if_index <nnn> [disable]";
53 };
54 
55 /** \brief configure the network delay simulation cross-connect
56  @param client_index - opaque cookie to identify the sender
57  @param context - sender context, to match reply w/ request
58  @param delay_in_usec - microseconds of link delay to simulate
59  @param average_packet_size - average packet size for wheel sizing
60  @param bandwidth_in_bits_per_second - bps for wheel sizing
61 */
62 autoreply define nsim_configure
63 {
64  option deprecated;
65  /* Client identifier, set from api_main.my_client_index */
67 
68  /* Arbitrary context, so client can match reply to request */
70 
71  /* Configuration parameters */
76  option vat_help = "delay <time> bandwidth <bw> [packet-size <nn>] [packets-per-drop <nnnn>]";
77 };
78 
79 /** \brief configure the network delay simulation cross-connect
80  @param client_index - opaque cookie to identify the sender
81  @param context - sender context, to match reply w/ request
82  @param delay_in_usec - microseconds of link delay to simulate
83  @param average_packet_size - average packet size for wheel sizing
84  @param bandwidth_in_bits_per_second - bps for wheel sizing
85 */
86 autoreply define nsim_configure2
87 {
88  /* Client identifier, set from api_main.my_client_index */
90 
91  /* Arbitrary context, so client can match reply to request */
93 
94  /* Configuration parameters */
100  option vat_help = "delay <time> bandwidth <bw> [packet-size <nn>] [packets-per-drop <nnnn>]";
101 };
102 
vl_api_interface_index_t sw_if_index1
Definition: nsim.api:29
unsigned long u64
Definition: types.h:89
int nsim_cross_connect_enable_disable(nsim_main_t *nsm, u32 sw_if_index0, u32 sw_if_index1, int enable_disable)
Definition: nsim.c:44
unsigned int u32
Definition: types.h:88
u64 bandwidth_in_bits_per_second
Definition: nsim.api:97
option version
Definition: nsim.api:6
int nsim_output_feature_enable_disable(nsim_main_t *nsm, u32 sw_if_index, int enable_disable)
Definition: nsim.c:95
u64 bandwidth_in_bits_per_second
Definition: nsim.api:74
vl_api_interface_index_t sw_if_index
Definition: nsim.api:51
vl_api_interface_index_t sw_if_index0
Definition: nsim.api:28
static int nsim_configure(nsim_main_t *nsm, f64 bandwidth, f64 delay, f64 packet_size, f64 drop_fraction, f64 reorder_fraction)
Definition: nsim.c:153