
Chapter XXIII. Traffic Management
Chelsio Unified Wire for Linux
325
Modifying the application
The application can also be modified to associate connections to scheduling classes. Follow the
steps mentioned below:
i. Determine the TCP socket file descriptor in the application through which data is sent.
ii. Declare and initialize a variable in the application:
int cl=1;
Here,
cl
is the TCP traffic class(scheduler-class-index) that the user wishes to assign the data stream
to. This value needs to be in the range of 0 to 7.
The application will function as per the parameters set for that traffic class.
iii. Add socket option definitions:
In order to use
setsockopt()
to set the options to the TCP socket, the following two definitions
need to be made:
•
SOL_SCHEDCLASS used for setting TCP traffic class, which has the value 290.
•
IPPROTO_TCP used for setting the type of IP Protocol.
# define SOL_SCHEDCLASS 290
# define IPPROTO_TCP 6
iv. Use the
setsockopt()
function to set socket options:
The
setsockopt()
call must be mentioned after the connect() call.
//Get the TCP socket descriptor variable
setsockopt (sockfd , IPPROTO_TCP, SOL_SCHEDCLASS, &cl, sizeof(cl));
Here,
sockfd
: The file descriptor of the TCP socket.
&cl
: Pointer to the class variables.
sizeof(cl)
: The size of the variable.
v. Now, compile the application.
Содержание Terminator 6
Страница 1: ...Chelsio Unified Wire for Linux i...
Страница 15: ...Chapter I Chelsio Unified Wire Chelsio Unified Wire for Linux 15 I Chelsio Unified Wire...
Страница 51: ...Chapter II Network NIC TOE Chelsio Unified Wire for Linux 51 II Network NIC TOE...
Страница 70: ...Chapter III Virtual Function Network vNIC Chelsio Unified Wire for Linux 70 III Virtual Function Network vNIC...
Страница 82: ...Chapter IV iWARP RDMA Chelsio Unified Wire for Linux 82 IV iWARP RDMA...
Страница 99: ...Chapter V iSER Chelsio Unified Wire for Linux 99 V iSER...
Страница 107: ...Chapter VI WD UDP Chelsio Unified Wire for Linux 107 VI WD UDP...
Страница 119: ...Chapter VII WD TOE Chelsio Unified Wire for Linux 119 VII WD TOE...
Страница 125: ...Chapter VIII NVMe oF Chelsio Unified Wire for Linux 125 VIII NVMe oF...
Страница 135: ...Chapter IX LIO iSCSI Target Offload Chelsio Unified Wire for Linux 135 IX LIO iSCSI Target Offload...
Страница 148: ...Chapter X iSCSI PDU Offload Target Chelsio Unified Wire for Linux 148 X iSCSI PDU Offload Target...
Страница 187: ...Chapter XI iSCSI PDU Offload Initiator Chelsio Unified Wire for Linux 187 XI iSCSI PDU Offload Initiator...
Страница 198: ...Chapter XII Crypto Offload Chelsio Unified Wire for Linux 198 XII Crypto Offload...
Страница 211: ...Chapter XIII Data Center Bridging DCB Chelsio Unified Wire for Linux 211 XIII Data Center Bridging DCB...
Страница 223: ...Chapter XIV FCoE Full Offload Initiator Chelsio Unified Wire for Linux 223 XIV FCoE Full Offload Initiator...
Страница 230: ...Chapter XIV FCoE Full Offload Initiator Chelsio Unified Wire for Linux 230...
Страница 235: ...Chapter XV Offload Bonding Chelsio Unified Wire for Linux 235 XV Offload Bonding...
Страница 258: ...Chapter XVIII Offload IPv6 Chelsio Unified Wire for Linux 258 XVIII Offload IPv6...
Страница 265: ...Chapter XIX WD Sniffing and Tracing Chelsio Unified Wire for Linux 265 XIX WD Sniffing and Tracing...
Страница 272: ...Chapter XX Classification and Filtering Chelsio Unified Wire for Linux 272 XX Classification and Filtering...
Страница 297: ...Chapter XXI OVS Kernel Datapath Offload Chelsio Unified Wire for Linux 297 XXI OVS Kernel Datapath Offload...
Страница 311: ...Chapter XXII Ring Backbone Chelsio Unified Wire for Linux 311 XXII Ring Backbone...
Страница 317: ...Chapter XXIII Traffic Management Chelsio Unified Wire for Linux 317 XXIII Traffic Management...
Страница 329: ...Chapter XXIV DPDK Driver Chelsio Unified Wire for Linux 329 XXIV DPDK Driver...
Страница 347: ...Chapter XXV Unified Boot Chelsio Unified Wire for Linux 347 XXV Unified Boot...
Страница 357: ...Chapter XXV Unified Boot Chelsio Unified Wire for Linux 357 iv Boot to EFI Shell...
Страница 427: ...Chapter XXVI Appendix A Chelsio Unified Wire for Linux 427 XXVI Appendix A...