Chapter XVII. UDP Segmentation Offload and Pacing
i.
Bring up the network interface:
[root@host~]# ifconfig <ethX> up
ii.
Run the following command:
[root@host~]# cxgbtool <ethX> sched-class params
mode flow
rate-unit bits
<scheduler-class-index> max-rate <maximum-rate>
Here,
•
ethX is the Chelsio interface
•
Channel No. is the port on which data is flowing (0-3)
•
scheduler-class-index is the UDP traffic class (0-14 for T4 series of adapters and 0-15 for
T5/T6 series of adapters) set in the SOL_SCHEDCLASS socket option in the application in
section 4.1.
•
maximum-rate is the bit rate (Kbps) for this UDP stream. This value should be in the range
of 50 Kbps to 50 Mbps for T4 adapters. For T5/T6 adapters, the value should be in the
range of 100 kbps to 1 Gbps.
•
Packet size is the UDP packet payload size in bytes; it should be equal to the value set in
the SO_FRAMESIZE socket option in the application in section 4.1.
Example:
The user wants to transfer UDP data on port 0 of the adapter using the USO engine. The
application has been modified as shown in section 4.1. In order to set a bit rate of 10Mbps for
traffic class 1 with payload size of 1316 on port 0, the following invocation of cxgbtool is used:
[root@host~]# cxgbtool ethX sched-class params
mode flow
rate-unit bits
10000
pkt-size 1316
To get an accurate bit rate per class, data sent by the application to the sockets
Note
should
be a multiple
In above example, IO size sent by application should be a multiple of 1316.
Linux Unified Wire currently supports 10240 offload UDP connections. If the
Note
application needs to establish more than 10240 UDP connections, it can check the
return code of ENOSPC from a send() or sendto() call and close this socket and open
a new one that uses the kernel UDP stack.
Chelsio Unified Wire for Linux
rate-mode absolute channel <Channel No.> class
rate-mode absolute channel 0
value set for the "pkt-size" parameter.
of
the
type packet
level cl-rl
pkt-size <Packet size>
type packet
level cl-rl
class 1 max-rate
256
Need help?
Do you have a question about the Terminator Series and is the answer not in the manual?
Questions and answers