Hi, I am dealing with Reliable Datagram Socket (RDS) protocol and exploring ways to filter RDS traffic using eBPF.
FYI, RDS sits on top of transport layer and works with transport such as TCP and IB/RDMA. So RDS messages arrive in form of skb (over TCP)and scatterlist (over IB/RDMA). For RDS traffic over TCP, I am using ebpf program of type BPF_PROG_TYPE_SOCKET_FILTER and with that my filter program receives __sk_buff as bpf context. This works. However, I cannot use BPF_PROG_TYPE_SOCKET_FILTER with struct scatterlist. I am not sure if it would be appropriate to extend BPF socket filter so that it also work with struct scatterlist? Ideas/suggestions or any other alternatives please? Thanks in advance, -Tushar