struct sk_buff — socket buffer
struct sk_buff { union {unnamed_union}; __u16 inner_transport_header; __u16 inner_network_header; __u16 inner_mac_header; __be16 protocol; __u16 transport_header; __u16 network_header; __u16 mac_header; sk_buff_data_t tail; sk_buff_data_t end; unsigned char * head; unsigned char * data; unsigned int truesize; atomic_t users; };
anonymous
Inner transport layer header (encapsulation)
Network layer header (encapsulation)
Link layer header (encapsulation)
Packet protocol from driver
Transport layer header
Network layer header
Link layer header
Tail pointer
End pointer
Head of buffer
Data head pointer
Buffer size
User count - see {datagram,tcp}.c