Kernel Socket-Intercept Layer for MTU Compliant Packet Fragmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional operating system kernels often fail to fragment packets into segments that comply with the Maximum Transmission Units (MTUs) of egress interfaces, leading to failed packet transfers due to unawareness of interface MTUs.
Innovation Solution
A socket-intercept layer in kernel space intercepts packets and queries a routing daemon for the MTU value of the egress interface, with a tunnel driver fragmenting the packets into segments that comply with the MTU, ensuring successful transmission through the egress interface.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the operating system kernel passes large packets (e.g., 9000 bytes) to the packet forwarding engine without fragmentation, then the internal interface can efficiently transmit packets at its full MTU capacity, but the packet transfer fails when the packet size exceeds the egress interface MTU (e.g., 1500 bytes)
Solution Approach 1:
The patent applies segmentation by dividing a large packet into multiple smaller segments that comply with the egress interface MTU. The socket-intercept layer in kernel space fragments the original 9000-byte packet into multiple 1500-byte segments, allowing efficient transmission through the egress interface while maintaining the benefits of large packet transmission on the internal interface.
Solution Approach 2:
The patent implements preliminary action by performing packet fragmentation in advance within the kernel space before packets are transmitted to the packet forwarding engine. The socket-intercept layer intercepts packets and fragments them proactively, preventing transmission failures before they occur and eliminating the need for retransmission.
2Device complexity
If traditional operating system kernels are unaware of egress interface MTUs, then the kernel can simplify packet handling by not performing fragmentation, but packet transfers fail due to size mismatches with egress interface constraints
Solution Approach 1:
The patent introduces an intermediary component - the socket-intercept layer in kernel space - that acts as a mediator between the operating system kernel and the packet forwarding engine. This intermediary is responsible for querying interface MTUs and performing fragmentation, allowing the kernel to maintain simplicity while ensuring reliable packet transmission through proper size adaptation.
Solution Approach 2:
The system implements self-service by enabling the kernel space socket-intercept layer to autonomously query interface MTUs and perform fragmentation without requiring external intervention or complex kernel modifications. The kernel simply passes packets to this self-sufficient layer that handles all adaptation requirements.
Data Source
AI summary
A socket-intercept layer in kernel space on a network device may intercept a packet destined to egress out of the network device. The socket-intercept layer may then query a routing daemon for the Maximum Transmission Unit (MTU) value of the interface out of which that packet is to egress from the network device. In response to this query, the routing daemon may provide the socket-intercept layer with the MTU value of that interface. A tunnel driver in kernel space may identify the size of the packet and fragment the packet into segments whose sizes are each less than or equal to the MTU value of the interface. The tunnel driver may then push the segments of the packet to a packet forwarding engine on the network device. In turn, the packet forwarding engine may forward the segments of the packet to the corresponding destination via the interface.


