网络层
网络层
也可以看作IP层,有ip,ARP等协议。网络层的主要功能是将数据从一个网络发送到另一个网络中。网络层可以分为数据层和控制层。网络层的数据传输是不可靠的,即是会丢失的,数据传输的可靠性是靠上层协议保障的,如tcp协议。
## 1. 数据层 ### 1.1 IP协议
网络协议IP协议
,地址解析协议ARP
,网际控制报文协议ICMP
,
网际组管理协议IGMP
。 #### 1.1.1 分类ip
分为网络号和主机号,网络号用来标识网络,主机号用来标识主机。ip地址分为A,B,C,D,E五类,A,B,C三类是常用的,D,E两类是保留的。A类地址是8位主机号,B类16位,C类24位。
A类网络号的0和127被保留作为本网络和本地软件测试。其余类不管
对于所有主机号,都会保留全零作为本主机和全1作为所有主机。 #### 1.1.2
无分类ip CIDR
CIDR是无分类的ip地址,CIDR是为了解决ip地址的浪费问题,CIDR是将ip地址分为网络前缀和主机号,网络号和主机号的分界线是通过子网掩码来确定的。子网掩码是32位的二进制数,前面是网络号,后面是主机号。子网掩码的1表示网络号,0表示主机号。子网掩码的1的个数是网络号的位数。子网掩码也可以表示网络前缀的位数,如20
ip的分配不是按单个地址来的,而是先分配一个连续的地址块,在对每个主机分配这个地址块中的主机号ip
CIDR地址块:把网络前缀相同的所有连续ip称为一个地址块,
路由聚合: 在路由器的转发表中利用一个较大的CIDR地址块来替代许多小的地址块。
1.1.3 ip的特点
- ip由网络前缀和主机号组成,ip地址是分等级的,ip管理机构**只分配网络前缀,主机号由得到网络前缀的单位自行分配。路由器更具网络前缀来转发,可以减少路由表大小。
- ip地址标志一个接口,如果一个主机在两个网络上,那么他有两个ip,其网络前缀不同。由于一个路由器一定连接两个网络,所有其至少有2个ip。
- 在互联网上,具有相同的网络前缀的主机在一个网络上,通过以太网交换机连接起来的网络仍是一个网络。不同前缀的必须由路由器连接。
- 以太网交换机是没有ip地址的,路由器和以太网交换机每个接口都有一个mac地址。
1.2 地址解析协议ARP
解决如何在已知要发往的IP地址时找到其相应的MAC地址。
ARP的方法是在主机的ARP高速缓存中存放一个IP地址到MAC地址的映射表,并动态更新。
#### 1.2.1 ARP协议步骤 1.
在局域网中广播ARP请求分组,主要内容是,我的IP地址,我的MAC地址,请求的IP地址。
2. 在局域网上的所有主机上运行的ARP进程都会受到ARP请求分组。 3.
如果IP与ARP请求分组一致,就收下ARP请求,并发送ARP响应分组并填入自己的MAC地址ARP响应式单播的
4. 主机受到ARP响应后将IP,MAC映射写入。 ### 1.3 IP数据报的格式
以4个字节为一个单位,固定部分20字节 #### 1.3.1 ip分片
是否对ip分片,取决于ip报的长度不能长于链路层MTU,如果过长就要分片。
标识 :表示几个分片式同一个数据包切片的
标志 :表示该数据报可不可以分片 片偏移
:表示分片在原分组的相对位置,单位为8个字节。 ### 1.4 IP分组转发
若ip转发基于分组首部的目的地址,称为基于终点的转发。 ### 1.5 ICMP协议
ICMP是ip的一个附属协议,主要用于网络故障诊断和错误报告。ICMP报文是封装在ip数据报中的,ICMP报文的首部是8字节,数据部分是变长的。
ICMP协议有: 1. ICMP差错报告
返回主机不可达,网络不可达,端口不可达等。如当报文的TTL为0时,路由器会返回一个ICMP差错报告。
2. ICMP请求和应答 ping命令会用到这个类型来查询延迟。 3.
ICMP重定向报告
1.7 ipv6协议
主要的改进点是基本首部长度固定为40字节,不再分片,不再有校验和,增加了流标签字段,增加了扩展首部。分片放在扩展首部上。
2 控制层
2.1 路由选择协议
路由选择协议是网络层的控制层,主要是用来选择路由的。路由选择协议有很多种,如静态路由。动态路由:RIP,OSPF(内部网关协议),BGP(外部网关协议)等。互联网被划分为多个自治系统AS,每个自治系统内部可以使用不同的路由选择协议,自治系统之间使用BGP协议。
#### 2.1.1 内部网关协议 路由信息协议RIP
RIP协议要维护的路由表中的信息是到每个网络的距离,以及应经过的下一跳地址。
在信息交换时,和相邻路由器交换路由表。RIP协议的一个特点是好消息传的快,坏消息传的慢。RIP协议的最大跳数是15,超过15就认为不可达。RIP协议的缺点是收敛速度慢,不适合大型网络。
#### 2.1.2 内部网关协议 OSPF
OSPF协议向网络中的路由器发送信息,确定其与相邻路由器的连接状态,得到网络全局的拓扑图,然后根据这些信息计算出最短路径。OSPF协议的特点是收敛速度快,适合大型网络。
#### 2.1.3 外部网关协议 BGP
在一个自治系统AS中有两种不同功能的路由器,即边界路由器和内部路由器。
BCG路由中的信息包含:前缀,AS路径,下一跳地址,度量值。
BGP协议的特点是路由信息的传播是有序的,可以避免环路。BGP协议的缺点是收敛速度慢,适合大型网络。
## 3 路由器 路由表:
包含从目的网络到吓一跳(IP地址)的映射, 转发表:
包含从目的网络到下一跳(MAC地址)的映射。转发表是从路由表中生成的。
在实际讨论中可以将路由表和转发表合并为一个表,即路由表。 ###
4.网际组管理协议 IGMP IGMP工作的连个阶段: 1.
主机加入组播组,向多播地址发送IGMP报文。本地多播路由器接受到后把组关系转发给互联网上的多播路由器
2.
本地多播路由器周期性的探询本地局域网的主机,如果没有主机响应,则认为本网络上的主机已经离开这个组,停止转发组关系给其他多播路由器。
多播路由器不需要知道组成员的信息,只需要知道本地网络上是否存在组成员,因为转发是硬件多播
多播的发送者和接收者都不是到组成员有多少。