I'm currently working on a TC eBPF project where our objective is to add an extension header to all outgoing IPv6 packets. The setup involves an environment where the Maximum Segment Size (MSS) is set above 1424, and the network MTU (Maximum Transmission Unit) is configured at 1500.
The issue arises when we attempt to increase the packet size. We are using the bpf_skb_adjust_room function to add an additional 16 bytes to the packet. However, when the MSS is greater than 1424, these modified packets get dropped, with the error 'Packet Size too Big'.
You can decrease your tcp mss value based on your extension header size. There are scenarios where encapsulated packets could exceed MTU. This can be solved by setting mss accordingly either on switches or on server.