Closed breakertt closed 1 year ago
How did you decide on the value 0xd to request GSO in software? When look in the kernel sources, that corresponds to the symbol SKB_GSO_TUNNEL_REMCSUM.
-John-
Answering my own question: I see that 0xd is the value I put in the code for testing (not sure why I chose that value...).
Answering my own question: I see that 0xd is the value I put in the code for testing (not sure why I chose that value...).
Yeah, that 0xd
value is there in the HomaModule and it works for at least for virtio NIC.
Add
gso_force_software
kernel parameter which can force software GSO when set nonzero throughsysctl
. This parameter also indicates an alternative way to make Homa work over TSO-unsupported NICs instead of settingmax_gso_size
.The
.pcap
files in force-software-GSO.zip are my experiment results over two virtual machines and one host setup. Virtual machines are installed with libvirt and with virtio NICs. Thenode0
is inserted the HomaModule whilenode1
is not astcpdump
doesn't work with HomaModule's GRO bypass techniques. These.pcap
files show we need explicitly assignskb_shinfo(skb)->gso_type = 0xd
while creating skbs to make the sender perform the segmentation in a expected way.