---
name: "struct_sk_buff"
section: "9"
platform: "linux"
package: "linux-manual-4.9"
version: "4.9.228-1"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/struct_sk_buff"
---

# struct\_sk\_buff(9)

socket buffer

## NAME

struct\_sk\_buff - socket buffer

## SYNOPSIS

```
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;
};
```

## MEMBERS

{unnamed\_union}

anonymous

inner\_transport\_header

Inner transport layer header (encapsulation)

inner\_network\_header

Network layer header (encapsulation)

inner\_mac\_header

Link layer header (encapsulation)

protocol

Packet protocol from driver

transport\_header

Transport layer header

network\_header

Network layer header

mac\_header

Link layer header

tail

Tail pointer

end

End pointer

head

Head of buffer

data

Data head pointer

truesize

Buffer size

users

User count - see {datagram,tcp}.c

## COPYRIGHT
