文章目录
一、TCP / IP 协议栈
二、IP 数据报 格式
三、IP 数据报 首部格式
一、TCP / IP 协议栈
TCP / IP 协议栈 :
① 应用层 : HTTP , FTP , DNS ;
② 传输层 : TCP , UDP ;
③ 网络层 : ARP , IP , ICMP , IGMP ;
④ 数据链路层 : PPP , HDLC , CDMA , CSMA ;
ARP 协议 为 IP 协议服务 ; IP 协议为 ICMP 协议 和 IGMP 协议服务 ;
二、IP 数据报 格式
IP 数据包格式 :
① IP 数据报 组成 : 首部 , 数据部分 ;
② 首部数据组成 : 分为 固定部分 20 2020 字节 , 可变部分 ; 可变部分可有可无 , 大部分情况下没有可变数据 ;
③ 数据部分 : 其中数据部分是 传输层的 报文段 ;
④ 发送顺序 : 先发送首部 , 然后发送 数据部分 ;
三、IP 数据报 首部格式
IP 数据报 首部格式 :
版本 : 4 44 比特 , [ 0 , 3 ] [ 0 , 3 ][0,3] 位 , IPv4 / IPv6 , 目前使用的是 IPv4 版本 ;
首部长度 : 4 44 比特 , [ 4 , 7 ] [ 4 , 7 ][4,7] 位 , 单位是 4 44 字节 , 最小值是 5 55 , 那么最小的首都大小是 5 × 4 = 20 5 \times 4 = 205×4=20 字节 ;
区分服务 : 8 88 比特 . [ 8 , 15 ] [ 8 , 15 ][8,15] 位 , 期望获取的服务类型 , 一般情况下不使用 ;
总长度 : 16 1616 比特 , [ 16 , 31 ] [ 16, 31 ][16,31] 位 , 首部长度 + 数据部分 的总长度 ; 单位是 1 11 字节 ; 长度最大值是 2 1 6 − 1 = 65535 2^16 - 1 = 655352
1
6−1=65535 字节 ;
生存时间 : 8 88 比特 , [ 32 , 39 ] [32 , 39][32,39] 位 , IP 分组保质期 , 每经过一个路由器 , 生存时间 − 1 -1−1 , 如果生存时间变为 0 00 , 直接丢弃 ; 防止 无法交付的数据包 , 无限制的再网络上传输 ;
协议字段 : 8 88 比特 , [ 40 , 47 ] [40 , 47][40,47] 位 , 数据部分使用的协议 ; 下面是协议名称 与 字段值的对应关系 ;
ICMP : 1
IGMP : 2
TCP : 6
EGP : 8
IGP : 9
UDP : 17
IPv6 : 41
ESP : 50
OSPF : 89
首部检验和 : 检验首部的字段 ;
源地址 / 目的地址 : 长度都是 32 位 , IPv4 的地址长度是 32 位 ;
可选字段 : 范围是可变的 , 取值范围 0 00 到 40 4040 字节之间 , 用于排错 , 测量 , 安全措施等 ;
填充字段 : 都是 0 00 , 用于将首部补全成 4 44 字节的整数倍位数 ;