在 2021/6/21 下午9:18, Willem de Bruijn 写道:
quoted
quoted
quoted
2) use some general fields instead of virtio-net specific fields, e.g
using device header instead of vnet header in the flow keys strcuture
Can you give an example of what would be in the device header?
Specific for GSO, we have two sets of constants: VIRTIO_NET_HDR_GSO_..
and SKB_GSO_.. Is the suggestion to replace the current use of the
first in field flow_keys->virtio_net_hdr.gso_type with the second in
flow_keys->gso_type?
No, I meant using a general fields like flow_keys->device_hdr. And use
bpf helpers to access the field.
What would be in this device_hdr field, and what would the bpf helpers
access? I don't fully follow what this is if not vnet_hdr.
For virtio-net, it should be just vnet_hdr. Maybe "device_hdr" is not
accurate, "packet_hdr" should be better.
This allows the field to be reused by other type of userspace injected
packet, like tun packet info.
Bpf helpers could be used to access the packet header in this case.
Thanks