网络层
网络层
1.功能概述
1.主要任务
把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务。
传输单位事数据报
2.功能
1.路由选择与分组转发
2.异构网络互联
3.拥塞控制
若所有结点都来不及接受分组,而要丢弃大量分组的话,网络就处于拥塞状态。因此要采取一定的措施,缓解这种拥塞
1)开环控制
2)闭环控制
2.数据交换方式
1.电路交换
1.电话网络
2.电路交换的阶段
1)建立连接(呼叫/电路建立)
2)通信
3)释放连接(拆除电路)
3.特点:独占资源
4.优缺点
优点:通信时延小;有序传输;没有冲突;实时性强
缺点:建立连接时间长;线路独占,使用效率低;灵活性差;无差错控制能力
2.报文交换
1.报文:源应用发送的信息整体
2.优点:
1)无需建立连接
2)存储转发,动态分配线路
3)线路可靠性较高
4)线路利用率较高
5)多目标服务
3.缺点:
1)有存储转发时延
2)报文大小不定,需要网络有较大的缓存空间
3.分组交换
1.分组:把大的数据块分割成小的数据块
2.优点:
1)无需建立链接
2)存储转发,动态分配线路
3)线路可靠性较高
4)线路利用率较高
5)相对于报文交换,存储管理更容易
6)相对于报文交换,传输时延更少(分组传输类似于并行,而报文传输类似于并行)
3.缺点:
1)有存储转发时延
2)需要传输额外的信息量
3)乱序到达目的主机时,需要对分组进行排序和重组
4.分类
1)数据报方式
为网络层提供无连接服务。
无连接服务:不事先为分组的传输确定传输路劲,每个分组独立确定传输路径,不同分组传输路劲可能不同。
2)虚电路方式
虚电路方式为网路层提供连接服务。
连接服务:首先为分组的传输确定传输路劲(建立连接),然后沿该路径(连接)传输系列分组,系列分组传输路劲相同,传输结束后拆除连接
4.总结
1.报文交换和分组交换都采用存储转发
2.传输数据量大,且传送时间远大于呼叫时,选择电路交换。电路交换传输时延最小。
3.从信道利用率看,报文交换和分组交换由于电路交换,其中分组交换时延更小。
5.几种传输单元名词辨析
1.应用层:报文
2.传输层:报文段
3.网络层:IP数据报、分组
4.链路层:帧
5.物理层:比特流
3.分组交换-数据报&虚电路
1.数据报
1.无连接
不事先为分组的传输确定传输路劲,每个分组独立确定传输路径,不同分组传输路劲可能不同。
2.每个分组携带源和目的地址
3.路由器根据分组的目的地址转发分组:
1)基于路由协议/素昂啊构建转发表
2)检索转发表
3)每个分组独立选路
2.虚电路
1.虚电路将数据报方式和电路交换方式结合,以发挥两者的优点
2.虚电路
一条源主机到目的主机类似于电路的路劲(逻辑连接),路径上所有结点都要维持这条虚电路的建立,都维持一张虚电路表,每一项记录了一个打开的虚电路信息
3.通信过程
1)建立连接(虚电路建立)
每个分组携带虚电路号,而非目的地址。
源主机发送”呼叫请求“分组并 收到 ”呼叫应答“分组后才算是建立连接
2)数据传输
全双工通信
3)释放连接(虚电路释放)
源主机发送 ”释放请求“ 分组 以拆除虚电路
3.对比
4.IP数据报
1.整体格式
IP数据报 = 20字节固定部分 + 20字节可变部分 + 数据部分
2.详细格式
1.协议
2.所有字段
3.IP数据报分片
1.最大传输单元MTU
链路层数据帧可封装数据的上限
以太网MTU是1500字节
2.如果所传送的数据长度超过了某链路的MTU,会进行分片
3.IP数据报首部格式中的字段
4.IP数据报分片例题
1)要求:MTU = 1420B,数据部分3800B,首部20B
2)解:
第一片:首部20B;数据部分1400B;片偏移0B/8B
第一片:首部20B;数据部分1400B;片偏移1400B/8B = 175,转化为二进制填充到IP首部片偏移部分
第三片:首部20B;数据部分1000B;片偏移2800B/8B = 350
3)详细细节如下图所示:
4.IP首部的特殊字段的单位
1.首部长度:单位4B
首部最长 = (2^4 - 1)*4 = 60B
因为固定部分为 20B
所以 IP首部的范围 20~60B
2.总长度:单位1B
总长度最大长度 = (2^13 - 1)*1B = 65535B
由于MTU限制,所以永远达不到这个长度
3.片偏移:单位8B
片偏移在首部占32 - 3 = 29位
片偏移最大长度 = (2^29 - 1)*8B
5.IP地址
1.分类IP地址
1.IP地址
用32比特唯一标识连接到因特网上的每台主机(或路由器);常通过<stron>书写IP地址;222.1.1.2</stron>
2.分类
3.特殊的IP地址
4.私有IP地址
5.网络个数和主机个数
6.网络地址转换NAT
1)在专用网连接到因特网的路由器上安装NAT软件,安装了NAT软件的路由器称为NAT路由器,它至少有一个有效的外部全球IP地址
2)NAT转换表
7.分类的IP地址的弱点
1)IP地址空间的利用率有时很低
2)两级的IP地址不够灵活
2.子网划分
1.区别
子网号是否全0或全1要看情况
主机号不能全0全1
2.常见的IP地址的点分十进制
3.子网掩码
网络号和子网号取全1,主机号取全0
子网掩码与IP地址逐位相与,就得到子网网络地址
4.是有子网时分组的转发
1)路由表中
目的网络地址、目的网络子网掩码、下一跳地址
2)路由器转发分组的算法
取目的IP地址----是否直接交付----特定主机路由----检测路由表中有无路劲----默认路由0.0.0.0----丢弃,报告转发分组出错
是否直接交付:IP地址与子网掩码逐位相与,判断子网中是否与相与的结果有一致的,如果有,则交付
3.构成超网(无分类编址方式CIDR)
1.无分类域间路由选择CIDR:
1)消除了传统的A类,B类,C类地址以及划分子网的概念
CIDR的记法:IP地址后加上”/",然后写上网络前缀(可以任意长度)的位数;eg:128.14.32.0/20
2)融合了子网地址与子网掩码,方便子网划分;CIDR把网络前缀相同的连续IP地址组成一个“CIDR”地址块。
2.CIDR区别于子网划分
子网划分的网络号是定长的,不变的,所以IP地址有限
CIDR的网络号是变长的,IP的个数更多
3.构成超网
1)将多个子网聚合成一个较大的子网,叫做构成超网,或路由聚合。
方法:将网络前缀缩短。
2)有利于减少路由器之间的路由选择信息的交换,从而提高网络新能。
3)最长前缀匹配
构成超网后,在进行路由转发的时候,会匹配到多个正确选项,那该选谁?
通过最长前缀匹配,选择具有最长网络前缀的路由作为下一跳的地址
6.ARP协议
1.发送数据
1.无论网络层使用是么样的协议,在实际网络的链路上传送数据帧时,最终必须使用硬件地址。需要一种方法俩完成IP地址到MAC地址的映射,这就是ARP地址解析协议。
2.过程
ARP请求:我的IP地址IP,MAC地址是MAC1,要传给IP2,请问IP2的MAC地址是多少?(广播请求分组)
IP3收到ARP请求后,进行单播分组响应,我的MAC地址是MAC2(单播响应分组)
2.ARP协议使用过程
1.功能:完成主机或路由器IP地址到MAC地址的映射。解决下一跳走哪儿的问题
2.过程
注意:ARP协议自动进行
7.DHCP协议
1.主机如何获得IP地址
1.静态配置
配置:IP地址、子网掩码、默认网关
2.动态配置
DHCP服务器为移动的主机配置ip地址
2.DHCP服务器
1.动态主机配置协议DHCP是应用层协议,使用客户/服务器方式,客户端和服务端通过广播的方式进行交互,基于UDP
2.DHCP提供即插即用联网机制,主机可以从服务器动态获取IP地址、子网掩码、默认网关、DNS服务器名称与IP地址,允许地址重用,支持移动用户加入网络,支持在用地址续租
3.过程
1)主机广播DHCP发现报文
主机:有DHCP服务器吗?
2)DHCP服务器广播DHCP提供报文
DHCP服务器:有有有
服务器拟分配一个IP地址及相关配置,先到先得
3)主机广播DHCP请求报文
主机向服务器请求提供IP地址
4)DHCP服务器官博DHCP确认报文
正式将IP地址分配给主机
8.ICMP协议
1.功能
支持主机或路由器:差错报告、网络探寻
发送特定的ICMP报文:ICMP差错报文、ICMP询问报文
2.协议格式
3.ICMP差错报告报文
1.终点不可达
2.源点抑制(网络拥塞,向源点发送抑制报文,慢点发,现在基本不用)
3.时间超过(TTL = 0,向源点发送时间超过报文)
4.参数问题
5.改变路由(重定向):路由器把改变路由报文发送给主机,让主机直到下次应将数据报发送给另外的路由器,这样会有更好的路由
6.ICMP差错报告报文数据字段
4.不应该发送ICMP差错报文的情况
1.ICMP差错报告报文不在发送ICMP差错报告报文
2.对第一个分片的数据报片的所有后续数据报片都不发送ICMP差错报告报文
3.对具有组播地址的数据报都不发送ICMP差错报告报文
4.对具有特殊地址(127.0.0.0)的数据报不发送ICMP差错报告报文
5.ICMP询问报文
6.ICMP的应用
1.ping
测试两个主机之间的连通性,使用ICMP回送请求和回答报文
2.Traceroute
跟踪一个分组从源点到终点的路劲,使用ICMP时间超过差错报告报文。
9.IPv6
1.原因
1.32位IPv4地址空间分配殆尽
2.CIDR和NAT技术治标不治本
3.IPv6可以从根本上解决地址耗尽问题
4.改进首部格式
5.快速处理/转发数据报
6.支持Qos:指一个网络能够利用各种基础技术,为指定的网络通信提供更好的服务能力,是网络的一种安全机制,是用来解决网络延迟和阻塞等问题的一种技术。
2.数据报格式
3.IPv6和IPv4的区别
4.IPv6地址表示形式
1.一般形式:冒号16进制记法
2.压缩形式:
5.IPv6基本地址类型
1.单播
一对一
2.多播
一对多
3.任播
一对多中的一个通信,可做目的地址
6.IPv6和IPv4过多的策略
6.IPv6和IPv4过多的策略
10.路由算法&路由协议
1.路由算法分类
1.静态路由算法
非自适应路由算法,管理员手工配置路由信息
简便、可靠,在负荷稳定,拓扑变化不大的网络中运行效果很好,广泛应用于高度安全的军事网络和较小的商业网络
2.动态路由算法
自适应路由算法
路由器之间彼此交换信息,按照路由算法优化路由表项
路由更新快,适用于大型网络,算法复杂,增加网络负担
1)全局性:链路状态路由算法OSPF;所有路由器掌握完整的网络拓扑和链路费用信息
2)分散性:距离向量路由算法RIP;路由器只掌握物理相连的邻居及链路费用
2.分层次的路由选择协议
1.原因
1)因特网规模大
2)许多单位不想让外界知道自己的路由选择协议,但还想连入因特网
2.自治系统AS
3.RIP协议
1.一种分布式的基于距离向量的路由选择协议,优点简单
2.要求网络中每一个路由器都维护从它到其它每一个目的网络的唯一最佳距离记录(即一组距离)
3.距离
通常指跳数,即从源端口到目的端口所经过的路由器的个数。RIP允许一条路由最多只能包含15个路由器,因此距离为16表示网路不可达。
RIP只适用于小互联网
4.路由器的路由表例子
目的网络 | 距离 | 下一跳路由器 |
---|---|---|
Net1 | 1 | 直接交付 |
Net2 | 2 | R1 |
Net4 | 2 | R3 |
5.和谁交换信息?多久交换?交换什么?
1)仅和相邻的路由器交换信息
2)路由器交换的信息是自己的路由表
3)每30秒交换一次路由信息,然后路由器根据新信息更新路由表。若超过180s没有收到邻居路由器的通告,则判定邻居没了,并更新路由表
6.距离向量算法
7.RIP协议格式
8.RIP协议好消息传得快,坏消息传的慢
4.OSPF协议及链路状态算法
1.开放最短路径优先OSPF协议:最短路径算法SPF;
2.链路状态路由算法
3.直接使用IP数据报传送,网络层协议
4.OSPF的特点
5.BGP协议(EGP)
1.相关问题
2.需要先建立TCP连接
3.特点
4.BGP-4的四种报文
6.三种协议的比较
11.IP组播
1.IP数据报的三种传输方式
1.单播
一对一,<stron>的传输方式</stron>
2.广播
发送数据包到同一广播域或子网内的所有设备的一种数据传输方式,一对多
3.组播
当网络中的某些用户需要特定数据时,组播数据发送者仅发送一次数据,借助组播路由协议为组播数据包建立组播分发树,被传递的数据到达距离用户端尽可能近的节点才开始复制和分发,是一种一对多的传输方式
2.IP组播地址
1、可以让源设备能够将分组发送给一组设备。属于多播组的设备被分配一个组播IP地址(一群共同需求主机的相同标识,如视频会议、直播)
2、组播地址的范围:224.0.0.0~239.255.255.255(D类地址),一个D类地址表示一个组播组。只能用作分组的目的地址。源地址总是为单播地址
3、特点
1)组播数据报也是“尽最大努力”,不提供可靠交付,应用于UDP
2)对最薄数据报不产生ICMP差错报文
3)并非所有D类地址都可以作为组播地址
3.硬件组播
1、同单播地址一样,组播IP地址也需要相应的组播MAC地址在本地网络中实际传送帧。组播MAC地址以16进制01-00-5E打头,余下的6个16进制位是根据IP组播地址的最后23位转换得到的。
2、组播MAC地址23位可能相同,因此可能导致本来不同组的用户被添加到同一个组播组;为了避免这样一个问题,收到多播数据报的主机,还要在IP层利用软件进行过滤,把不是本主机要接收的数据报丢弃
4.IGMP协议&组播路由选择协议
1.网际组管协议IGMP
IGMP协议让路由器直到本局域网上是否有主机(进程)参加或者退出了某个组播组。
2.IGMP工作的两个阶段
1)某主机要加入组播组时,该主机向组播组的组播地址发送一个IGMP报文,声明自己要成为该组的成员。本地组播路由器收到IGMP报文后,要利用组播路由协议把这组成员关系发给因特网上的其他组播路由器
2)本地组播路由器周期性探寻本地局域网上的主机,以便知道这些主机是否还是组播组的成员。只要有一个主机对某个组响应,那么组播路由器就认为这个组是活跃的:如果经过几次探询后没有一个主机响应,组播路由器就认为本网络上没有此组播组的主机,因此就不再把这组的成员关系发送个其他组播路由器
注意:所谓的成员关系,只是该局域网中是否有主机加入组播组
3.组播路由选择协议
1)组播路由选择协议目的是找出以源主机为根节点的组播转发树
2)构造树可以避免在路由器之间兜圈子
3)对不同的多播组对应于不同的多播转发树:同一个多播组,对不同的源点也会有不同的多播转发树
4.组播路由选择协议常用的三种算法
1)基于链路状态的路由选择
2)基于距离-向量的路由选择
3)协议无关的组播(稀疏/密集)
2.通信过程
13.网络层设备
1.路由器
路由器是一种具有多个输入端口和多个输出端口的专用计算机,其任务是转发分组
1.路由选择
根据所选定的路由选择协议构造出路由表,同时经常或定期地和相邻路由器交换路由信息而不断地更新和维护路由表
2.分组转发
交换结构,根据转发表对分组进行转发
2.输入端口对线路上的分组的处理
1.从线路接收分组
2.物理层处理
3.数据链路层处理
4.网络层处理分组排队:查表和转发(有时延)
3.输出端口对线路上的分组的处理
1.输出端口将交换结构传送来的分组发送到线路
2.若路由器分组的速率赶不上分组进入队列的速率,则队列的存储空间最终必定减少到0,这就使后面再进入队列的分组由于没有存储空间只能被丢弃
3.路由器中的输入或输出队列产生溢出是造成分组丢失的重要原因
4.三层设备的区别
5.路由表和路由转发
1、路由表根据路由选择算法得出,主要用途是路由选择,总用软件来实现
目的网络IP地址 | 子网掩码 | 下一跳IP地址 | 接口 |
---|---|---|---|
0.0.0.0(默认路由) | 0.0.0.0 |
2、转发表
转发表由路由表得来,可以用软件实现,也可以用特殊的硬件来实现。
转发表必须包含完成转发功能所必须的信息,在转发表的每一行必须包含从要到达目的网络到输出端口和某些MAC地址信息的映射。