IP协议——IPv4首部

1、版本(Version):

        由4比特构成,表示标识IP首部的版本号。IPv4的版本号即为4。

版本简称协议
4IPInternet Protocol
5STST Datagram Mode
6IPv6Internet Protocol version 6
7TP/IXTP/IX:The Next Internet
8PIPThe P Internet Protocol
9TUBATUBA

2、首部长度(IHL:Internet Header Length):

        由4比特构成,表明IP首部的大小,单位为4字节(32比特)。对于没有可选项的IP包,首部长度则设置为“5”。也就是说,当没有可选项时,IP首部的长度为20字节(4x5=20)。

3、区分服务(TOS:Type Of Service):

        由8比特构成,用来表明服务质量。每一位的具体含义如下:

比特含义
0 1 2优先度
3最低延迟
4最大吞吐
5最大可靠性
6最小代价
(3~6)最大安全
7未定义

        这个值通常由应用指定。不过由于TOS控制变得极其复杂。这也导致TOS整个互联网几乎就没有被投入使用。不过已有人提出将TOS字段本身再划分为DSCP和ECN两个字段得建议。

4、DSCP段与ECN段:

        DSCP(Differential Services Codepoint,差分服务代码点)是TOS(Type Of Service)的一部分。现在统称为DiffServ,用来进行质量控制。

        如果3~5位的值为0,0~2位则被称作类别选择代码点。这样就可以像TOS的优先度那样提供8种类型的质量控级别。对于每一种级别所采用的措施则由提供DiffServ的运营管理者制定。为了与TOS保持一致,值越大优先度越高。

        ECN(Explicit Congestion Notification,显式拥塞通告)用来报告网络拥堵情况,由两个比特构成。

比特简称含义
6ECTECN-Capable Transport
7CECongenstion Experienced

        第6位的ECT用以通告上层TCP层协议是否处理ECN。当路由器在转发ECN为1的包过程中,如果出现网络拥堵的情况,就将CE位设置为1。

5、总长度(Total Length):

        表示IP首部与数据部分合起来的总字节数。该字段长16比特。因此IP包的最大长度为65535(=2^16-1)字节。

6、标识(ID:Identification):

        由16比特构成,用于分片重组。同一个分片的标识值相同,不同分片的标识值不同。通常,每发送一个IP包,它的值也逐渐递增。此外,即使ID相同,如果目标地址、源地址或协议不同的话,也会被认为是不同的分片。

7、标志(Flags):

        由3比特构成,表示包被分片的相关信息。每一位的具体含义如下:

比特含义
0未使用。现在必须是0
1

指示是否进行分片(don't fragment)

0-可以分片

1-不能分片

2

包被分片的情况下,表示是否为最后一个包(more fragment)

0-最后一个分片的包

1-分片中段的包

8、片偏移(FO:Fragment Offset):

        由13比特构成,用来标识被分片的每一个分段相对于原始数据的位置。第一个分片对应的值为0.由于FO域占13位,因此最多可以表示8192(=2^13)个相对位置。单位为8字节。因此最大可表示原始数据8x8192=65536字节的位置。

9、生存时间(TTL:Time To Live):

        由8比特构成,它最初的意思是以秒为单位记录当前包在网络上应该生存的期限。然而,在实际中它是指可以中转多少个路由器的意思。每经过一个路由器,TTL会减少1,直到变成0则丢弃该包。

10、协议(Protocol):

        由8比特构成,表示的是IP包传输层的上层协议编号。目前常使用的协议如下:

分配编号简称协议
0HOPOPTIPv6 Hop-by-Hop Option
1ICMPInternet Control Message
2IGMPInternet Group Management
4IPIP in IP(encapsulation)
6TCPTransmission Control
8EGPExterior Gateway Protocol
9IGPany private Internet gateway(Cisco IGRP)
17UDPUser Datagram
33DCCPDatagram Congestion Control Protocol
41IPv6IPv6
43IPv6-RouteRouting Header for IPv6
44IPv6-FragFragment Header for IPv6
46RSVPReservation Protocol 
50ESPEncap Security Payload
51AHAuthentication Header
58IPv6-ICMPICMP for IPv6
59IPv6-NoNxtNo Next Header for IPv6
60IPv6-OptsDestination Options for IPv6
88EIGRPEIGRP
89OSPFIGPOSPF
97ETHERIPEthernet-within-IP Encapsulation
103PIMProtocol Independent Multicast
108IPCompIP Payload Compression Protocol
112VRRPVirtual Router Redundancy Protocol
115L2TPLayer Two Tunneling Protocol
124ISIS over IPv4ISIS over IPv4
132SCTPStream Control Transmission Protocol
133FCFibre Channel
134RSVP-E2E-IGNORERSVP-E2E-IGNORE
135Mobility Header(IPv6)Mobility Header(IPv6)
136UDPLiteUDP-Lite
137MPLS-in-IPMPLS-in-IP

11、首部校验和(Header Checksum):

        由16比特(2个字节)构成,也叫IP首部校验和。该字段只校验数据报的首部,不校验数据部分。它主要用来确保IP数据报不被破坏。校验和的计算过程,首先要将该校验和的所有位置设置为0,然后以16比特为单位划分IP首部,并用1补数计算所有16位字的和。最后将所得到这个和1补数赋给首部校验和字段。

12、源地址(Source Address):

        由32比特(4字节)构成,表示发送端IP地址。

13、目标地址(Destination Address):

        由32比特(4字节)构成,表示接收端IP地址。

14、可选项(Options):

        长度可变,通常只在进行实验或诊断时使用。该字段包含如下几点信息:

        a、安全级别

        b、源路径

        c、路径记录

        d、时间戳

15、填充(Padding):

        也称作填补物。在有可选项的情况下,首部长度可能不是32比特的整数倍。为此,通过向字段填充 0,调整为32比特的整数倍。

16、数据(Data):

        存入数据。将IP上层协议的首部也作为数据进行处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值