2

enter image description here

Just wondering from looking at that picture

if Total Length = Payload Length and the IPv6 header is bigger, does that mean IPv4 packets can contain more data?

kasperd
  • 30,455
  • 17
  • 76
  • 124
AllanP
  • 21
  • 1
  • 2

1 Answers1

3

The IPv4 header contains total length, which is the total length of the packet including header. The IPv6 header contains payload length, which is the length of the actual payload not including the header. Since both are 16-bit unsigned integers, the IPv6 packet can contain in it's payload an entire IPv4 packet including header, so the IPv6 packet can handle more data.

References:
http://www.ietf.org/rfc/rfc2460.txt - IPv6 specification
http://www.ietf.org/rfc/rfc791.txt - IPv4 specification

John
  • 9,070
  • 1
  • 29
  • 34
  • This answer is entirely true. There is however an IPv6 extension header, which can be used if the PMTU is larger than 64KB. That extension header has a 32 bit length field, which overrides the 16 bit length field in the IPv6 header. So in principle IPv6 supports sending packets as large as 4GB if you can find a connection with that large a PMTU. So far that extension header is not very significant though, since most links have an MTU of only 1500 bytes. – kasperd Mar 07 '16 at 21:31