4.1 网络层的主要作用是“实现终端节点之间的通信”,这种终端节点之间的通信也叫“点对点通信”
主机的定义:配置有IP地址,但是不进行路由控制的设备
数据链路只负责一个区间之间的通信传输,IP负责将数据包发给最终的目标地址,即点对点通信
4.2 MAC地址用来标识同一个链路中不同计算机的一种识别码,IP地址用于在连接到网络中所有主机中识别出进行通信的目标地址
路由控制是指将分组数据发送到最终目标地址的功能
主机通过维护的路由控制表获取下一步应该发给哪个路由器
IP属于面向无连接型,不需要建立与对端目标地址之间的连接,原因是简化,提速
4.3 IP地址由32位正整数来表示,由网络和主机两部分标识组成,标识就是地址,网络标识必须保证相互连接的每个段的地址不相重复,相同段内相连的主机必须有相同的网路标识,同一个网段中不允许有相同的主机标识
A类地址以0开头,1-8位为网络标识,9-32为主机标识
B类地址以10开头,1-16位为网络标识,17-32为主机标识
C类地址以110开头,1-24位为网络标识,25-32为主机标识
D类地址以1110开头,1-32位为网络标识,多用于多播
主机地址不可全为0或1
将IP地址中的主机地址部全部设置为1,就成为了广播地址
多播用于将包发送给特定组内的所有主机,可穿透路由,多播使用D类地址
有了子网,一个IP地址有两种识别码,一是IP地址本身,一个是标识网络部的子网掩码。子网掩码对应的IP地址网络标识部分全为1,主机标识部分则全部为0,意思是一个32位的IP地址,它的子网掩码除了所属类的网络标识全部为1以外,它可以自定义主机标识中有多少是1,剩下为0
例:一个B类IP地址为172.20.100.52 (10101100 00010100 01100100 00110100)1-16位为B类自定的网络标识,17-26位为被子网掩码扩大的网络标识,27-32位为主机部分,对应的子网掩码是255.255.255.192(11111111 11111111 11111111 11000000),为1的部分为受掩码屏蔽的部分,为0的为不受屏蔽的部分。
采用任意长度分割IP地址的网络标识和主机标识这种方式称为CIDR(ClassBless Inter-Domain Routing,无类型域间选路
随机修改组织内各个部门的子网掩码长度的机制VSLM(Variable Length Subnet Mask,可变长子网掩码)
私有网络的IP地址
10.0.0.0~10.255.255.255(10/8) A类
172.16.0.0~172.31.255.255(172.16/12)B类
192.168.0.0~192.168.255.255(192.168/16)C类
包含在这个范围内的IP地址都属于私有IP,而在此之外的IP地址称为全局IP
使用IP地址结合NAT技术已经成为解决IP地址分配问题的主流方案
4.4 路由控制表的2种形成方式:管理员手动设置,路由器与其他路由器相互交换信息时自动刷新
路由控制表由“路由协议”制作而成
IP地址的网络地址部分用于进行路由控制,路由控制表中记录发送IP包时,先确定IP包首部中的目标地址,再从路由控制表中找到与该地址具有相同网络地址的记录,根据记录转发给相应的下一个路由
默认路由指路由表中任何一个地址都能与之匹配的记录,一般标记为0.0.0.0/0或default
主机路由:“IP地址/32”,整个IP地址的所有位都将参与路由,主机路由多被用于不希望通过网络地址路由的情况
利用网络地址的比特分布可以有效的进行分层配置,通过路由信息的聚合可以有效地减少路由表的条目
4.5 MTU(最大传输单元),数据链路不同,MTU则不同
分片在网络上无法一下发送较大的报文才会发生,经过分片之后的IP数据在被重组时,只能由目标主机进行,路由器会分片但不会重组,数据分片后为 (UDP数据+UDP首部+IP首部),IP首部中“片偏移”字段表示分片后的相对位置和该分片后是否还有其他分片
路径MTU发现(Path MTU Discovery)指不需要分片时最大MTU的大小,为避免中途的路由器进行分片处理
4.6 IPv6的必要性:IPv6是为了解决IPv4地址耗尽的问题而被标准化的网际协议
IPv6地址长度为128位,一般写成8个16位字节,前64位为网络标识,后64位为主机标识
IPv6的特点:
(1)IP地址的扩大与路由控制表的聚合
(2)性能提升,支持即插即用功能,采用认证与加密功能
(3)多播,Mobile IP成为扩展功能
IPv6中最小MTU为1280字节
4.7 IPv4首部
版本:现为4
首部长度:4比特,表明IP首部的大小
区分服务:表明服务质量
总长度:表示IP首部与数据部分合起来的总字节数,16比特,因此IP包的最大长度为65535(2^16)字节
标识:16比特,用于分片重组,相同分片标识值相同,即使ID相同,如果目标地址,源地址或协议不同的话,则为不同分片
标志:3比特,分片信息
比特 | 含义 |
0 | 未使用,现在必须是0 |
1 | 0-可以分片,1-不可分片 |
2 | 0-最后一个包,1-分片中断的包 |
片偏移:13比特,用来标识被分片的每一段相对于原始数据的位置,最多表示2^13个相对位置,单位8字节,最大表示8*8192个字节
生存时间TTL(Time To Live):8比特,指可以中转多个路由器,每经过一个路由器,TTL会减少1,直到变为0则丢弃该包
协议:8比特,表示的是IP包传输层的上层协议编号
首部校验和:16比特,确保IP数据不被破环
源地址:32比特,表示发送端IP地址
目标地址:32比特,表示接受端地址
可选项:安全级别+源路径+路径记录+时间戳
填充:通过向字段填充0,将首部长度调整为32的倍数
数据:存入数据