请输入您要查询的百科知识:

 

词条 IP fragmentation
释义

  1. IPv4 and IPv6 differences

  2. Impact of fragmentation on network forwarding

  3. See also

  4. References

  5. External links

IP fragmentation is an Internet Protocol (IP) process that breaks packets into smaller pieces (fragments), so that the resulting pieces can pass through a link with a smaller maximum transmission unit (MTU) than the original packet size. The fragments are reassembled by the receiving host.

{{IETF RFC|791}} describes the procedure for IP fragmentation, and transmission and reassembly of IP packets.[1] RFC 815 describes a simplified reassembly algorithm.[2] The Identification field along with the foreign and local internet address and the protocol ID, and Fragment offset field along with Don't Fragment and More Fragment flags in the IP protocol header are used for fragmentation and reassembly of IP packets.[1]{{rp|24}}[2]{{rp|9}}

If a receiving host receives a fragmented IP packet, it has to reassemble the packet and pass it to the higher protocol layer. Reassembly is intended to happen in the receiving host but in practice it may be done by an intermediate router, for example, network address translation (NAT) may need to reassemble fragments in order to translate data streams.[3]

The details of the fragmentation mechanism, as well as the overall architectural approach to fragmentation, are different between IPv4, and IPv6.

IPv4 and IPv6 differences

Under IPv4, a router that receives a network packet larger than the next hop's MTU has two options: drop the packet and send an Internet Control Message Protocol (ICMP) message which indicates the condition Packet too Big, or fragment the packet and send it over the link with a smaller MTU. Although originators may produce fragmented packets, IPv6 routers do not have the option to fragment further. Instead, network equipment is required to deliver any IPv6 packets or packet fragments smaller than or equal to 1280 bytes and IPv6 hosts are required to determine the optimal MTU through path MTU discovery before sending packets.

Though the header formats are different for IPv4 and IPv6, analogous fields are used for fragmentation, so the same algorithm can be reused for IPv4 and IPv6 fragmentation and reassembly.

In IPv4, hosts must make a best-effort attempt to reassemble fragmented IP packets with a total reassembled size of up to 576 bytes. They may also attempt to reassemble fragmented IP packets larger than 576 bytes, but they are also permitted to silently discard such larger packets. Applications are recommended to refrain from sending packets larger than 576 bytes unless they have prior knowledge that the remote host is capable of accepting or reassembling them.[1]{{rp|12}}

In IPv6, hosts must make a best-effort attempt to reassemble fragmented packets with a total reassembled size of up to 1500 bytes, larger than IPv6's minimum MTU of 1280 bytes.[4] Fragmented packets with a total reassembled size larger than 1500 bytes may optionally be silently discarded. Applications relying upon IPv6 fragmentation to overcome a path MTU limitation must explicitly fragment the packet at the point of origin; however, they should not attempt to send fragmented packets with a total size larger than 1500 bytes unless they know in advance that the remote host is capable of reassembly.

Impact of fragmentation on network forwarding

When a network has multiple parallel paths, technologies like LAG and CEF split traffic across the paths according to a hash algorithm. One goal of the algorithm is to ensure all packets of the same flow are sent out the same path to minimize unnecessary packet reordering.

IP fragmentation can cause excessive retransmissions when fragments encounter packet loss and reliable protocols such as TCP must retransmit all of the fragments in order to recover from the loss of a single fragment.[5] Thus, senders typically use two approaches to decide the size of IP packets to send over the network. The first is for the sending host to send an IP packet of size equal to the MTU of the first hop of the source destination pair. The second is to run the path MTU discovery algorithm,[6] to determine the path MTU between two IP hosts, so that IP fragmentation can be avoided.

See also

  • {{section link|IPv4|Fragmentation and reassembly}}
  • {{section link|IPv6 packet|Fragmentation}}
  • IP fragmentation attacks

References

1. ^{{citation |rfc=791 |title=Internet Protocol |publisher=Information Sciences Institute |date=September 1981}}
2. ^{{citation |rfc=815 |title=IP Datagram Reassembly Algorithms |author=David D. Clark |date=July 1982}}
3. ^{{citation |rfc=2993 |title=Architectural Implications of NAT |date=November 2000}}
4. ^{{citation |rfc=2460 |title=Internet Protocol, Version 6 (IPv6) Specification |authorlink=Steve Deering |author=S. Deering |author2=R. Hinden |date=December 1998}}
5. ^{{cite web|author=Christopher A. Kent, Jeffrey C. Mogul|url=http://www.cs.binghamton.edu/~nael/classes/cs528/fragment.pdf|title=Fragmentation Considered Harmful}}
6. ^{{citation |rfc=1191 |title=Path MTU Discovery |date=November 1990}}

External links

  • What is packet fragmentation?
  • The Never-Ending Story of IP Fragmentation
{{DEFAULTSORT:Ip Fragmentation}}

1 : Internet architecture

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/11/10 11:39:29