简单了解网络层的协议
一、IP数据包格式
1.1 网络层的功能
1.定义可基于IP协议的逻辑地址
2.连接不同的媒介类型
3.选择数据通过网络的最佳路径
1.2 IP数据包格式
IP字段
版本(Version) :该字段包含的是IP的版本号,4bit。 目前IP的版本为4 (即IPv4)。
首部长度(Header Length) :该字段用于表示IP数据包头长度,4bit。 IP数据包头最短为20字节,但是其长度是可变的,具体长度取决于可选项字段的长度。
优先级与服务类型(Priority&Type of Service):该字段用于表示数据包的优先级和服务类型,8bit。通过在数据包中划分一定的优先级,用于实现QoS (服务质量)的要求。
总长度(Total Length) :该字段用以指示整个IP数据包的长度,16bit。 最长为65535字节, 包括包头和数据。
标识符( Identification) :该字段用于表示IP数据包的标识符,16bit。 当IP对上层数据进行分片时,它将给所有的分片分配同一组编号,然后将这些编号放入标识符字段中,保证分片不会被错误地重组。
标志(Flags) :标志字段,3bit。 对当前的包不能进行分片(当该包从一个以太网发送到另一个以太网时),或当一个包被分片后用以指示在一系列的分片中,最后一个分片是否已发出。
段偏移量(FragmentOffset):该字段用于表示段偏移量,13bit。段偏移量中包含的信息是指在一个分片序列中如何将各分片重新连接起来。
TTL (Time to Live) :该字段用于表示IP数据包的生命周期,8bit。 一个数据包每经过一个路由器,TTL将减去1。当TTL的值为0时,该数据包将被丢弃。可以防止一个数据包在网络中无限循环地转发下去。
协议号(Protocol) :协议字段,8bit。 该字段用以指示在IP数据包中封装的是哪一个协议,是TCP还是UDP, TCP 的协议号为6,UDP的协议号为17,ICMP的协议号是1。
首部校验和(Header Checksum) :该字段用于表示校验和,16bit。 接收方和网关用来校验数据有没有被改动过。
源IP地址(Source IP Addres