网络层将传输层的TCP或UDP报文添加IP首部封装成IP数据包通过路由分组转发,向网络层提供简单灵活的、无连接的尽最大努力交付的数据报服务。
网络层涉及的协议主要有:IP协议、ARP协议、RARP、ICMP、IGMP。
其中最主要的协议是IP协议,IP地址的发展主要经历3个阶段:分类IP地址、划分子网、构成超网后两种方案主要解决IP地址利用率问题。
(1)分类的IP地址中,IP主要由<网络号><主机号>共4比特,32 位,简单使用点分10进制记法(192.168.1.124)共5类地址,其中ABC类提供网络通信。
ABC类的地址范围如表所示:
特殊IP:
IP地址和硬件地址的区别:
类别 | IP地址 | MAC地址 |
地址长度 | 32位 | 48位 |
可变性 | IP地址可变 | 与网卡相关 |
地址性质 | 逻辑地址 | 物理地址 |
工作层次 | 网络层 | 物理层和数据链路层 |
数据转发中 | 目的和源IP不变 | 目的、源MAC地址变化 |
eg:
H1向H2通信过程,在转发过程中数据包的IP地址不变,MAC地址不断变化,在通过R1转发时,数据包MAC地址,源MAC地址HA1更改为HA3,目的MAC地址HA2变更为HA4,。
MAC地址和IP地址之间的关联性使用ARP地址解析协议完成,ARP地址解析协议完成局域网中IP地址和MAC地址之间的映射。
IP数据包格式:
首部长度:单位32位字,eg:1111,首部长度是15*4=60
总长度:2^16-1=65535字节
标识(identification) 占 16位。IP 软件在存储器中维持一个计数器,每产生一个数据报,计数器就加 1,并将此值赋给标识字段。但这个“标识”并不是序号,因为 IP 是无连接服务,数据报不存在按序接收的问题。当数据报由于长度超过网络的 MTU 而必须分片时,这个标识字段的值就被复制到所有的数据报片的标识字段中。相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报。
标志(flag) 占3位,但目前只有两位有意义。
标志字段中的最低位记为 MF (More Fragment)。MF = 1 即表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片中的最后一个。
标志字段中间的一位记为DF (Don't Fragment), 意思是“不能分片”。只有当DF=0时才允许分片。
片偏移 占 13 位。片偏移指出:较长的分组在分片后,某片在原分组中的相对位置。也就是说,相对于用户数据字段的起点,该片从何处开始。片偏移以8个字节为偏移单位。这就是说,每个分片的长度一定是8字节(64位)的整数倍。
生存时间:TTL最大255,经过一个路由减1,TTL为0时丢弃数据包
协议:IP数据包中数据的协议
路由转发过程:下一跳要么是路由要么是直接交付。
(目的网络地址,下一跳地址)
(2)划分子网:从IP地址的主机号中取出几位划分为子网,增加网络地址,划分子网并不能增加实际改网络的IP地址数量(反而会减少),
IP={<网络号><子网号><主机号>}
划分子网的路由转发为了寻找目的网络会增加子网掩码获取网络号,路由表由3部分组成:
(目的网络地址,子网掩码,下一跳地址)
(3)无分类编址CIDR(构造超网):
CIDR消除网络划分和划分子网的概念,IP地址由网络前缀和主机号组成,使用斜线记法,eg:
127.14.35.7/20,这既是表示127.14.35.7的地址又可表示网络是该IP前20位,改网络的最大IP和最小IP可以由计算得出。
IP={<网络前缀><主机号>}
路由转发
某一网络可以增加网络前缀进一步划分网络,通过路由表转发时可能会遇到多个匹配结果,使用最长匹配前缀。
网际控制报文协议:
ICMP报文类型:主要分为差错报告报文和询问报文
主要应用:ping
路由选择协议:
内部网关协议IGP:RIP、OSPF
外部网关协议EGP:BGP
RIP:基于距离向量的路由选择协议(好消息传的快,坏消息传的慢)
OSPF:开放最短路径优先
IGMP:网际组管理协议
虚拟专用网VPN:解决网络安全传输问题
网络地址转换NAT:解决本地IP全球通网问题