计算机网络第四章—网络层

功能概述

主要任务是把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务
网络层传输单位是数据报
功能一:路由选择与分组转发
功能二:异构网络互联:用路由器把各个网络联接起来。
功能三:拥塞控制

数据交换方式

如何使数据通过网络核心【路由器】从源主机到目的主机?
答案:数据交换

电路交换

电路交换阶段:
1.建立连接(呼叫/电路建立)
2.通信
3.释放连接(拆除电路)
特点:独占资源

优点:
通信时延小
有序传输
没有冲突
实时性强

缺点:
建立连接时间长
线路独立,使用效率低
灵活性差
无差错控制能力

报文交换

报文:源应用发送的信息整体。比如此时要发送一个文件,那么整个文件就是一个报文。

优点:
无需建立连接
存储转发,动态分配线路
线路可靠性较高
线路利用率较高
多目标服务

缺点:
有存储转发时延
报文大小不定,需要网络节点有较大缓存空间

分组交换

分组:把大的数据块分割成小的数据块

优点:
无需建立连接
存储转发,动态分配线路
线路可靠性较高
线路利用率较高
相对于报文交换,存储管理更容易

缺点:
有存储转发时延
需要传输额外的信息量
乱序到目的主机时,要对分组排序重组

比较总结

1.报文交换和分组交换都采用存储转发
2.传送数据量大,且传送时间远大于呼叫时,选择电路交换。电路交换传输时延(发送时延)最小
3.从信道利用率看,报文交换和分组交换优于电路交换,其中分组交换时延更小。

数据报方式&虚电路方式

分组交换方式又分为数据报方式和虚电路方式

数据报方式为网络层提供无连接服务
虚电路方式为网络层提供连接服务

无连接服务:
不事先为分组的传输确定传输路径,每个分组独立确定传输路径,不同分组传输路径可能不同。

连接服务:
首先为分组的传输确定传输路径(建立连接),然后沿该路径(连接)传输系列分组,系列分组传输路径相同,传输结束后拆除连接。

数据报(因特网在用)

1.无连接 无连接服务。
2.每个分组携带源和目的地址
3.路由器根据分组的目的地址转发分组:基于路由协议/算法构建转发表;检索转发表;每个分组独立选路

虚电路

虚电路将数据报和电路交换方式结合,以发挥两者优点
虚电路:一条源主机到目的主机类似于电路的路径(逻辑连接),路径上所有结点都要维持这条虚电路的建立,都维持一张虚电路表,每一项记录了一个打开的虚电路信息。
通信过程:
1.建立连接(虚电路建立):每个分组携带虚电路号,而非目的地址
源主机发送“呼叫请求”分组并收到“呼叫应答”分组后才算建立连接
2.数据传输:全双工通信
3.释放连接(虚电路释放):源主机发送“释放请求”分组以拆除虚电路。

对比总结:
在这里插入图片描述

几种传输单元名词辨析

应用层是报文,传输层是报文段(报文分割而成,如果应用层的报文比较小,传输层可能不用切割,也是报文),网络层是IP数据报,分组,数据链路层是帧,物理层是比特流。

IP数据报格式

在网络层最重要的就是IP协议,IP数据报格式可以更好说明IP协议的功能。
在这里插入图片描述
版本:IPv4/IPv6?
首部长度:单位是4B,最小为5
因为固定部分为20B(4B*5)
区分服务:指示期望获得哪种类型的服务
总长度:首部+数据 单位是1B
生存时间(TTL):IP分组的保质期。经过一个路由器-1,变成0则丢弃
协议:数据部分的协议
首部检验和:只检验首部
源地址和目的地址:32位
可选字段:0~40B,用来支持排错,测量以及安全等措施
填充:全0,把首部补成4B的整数倍。

IP数据报分片

最大传送的单元MTU

链路层数据帧可封装数据的上限
以太网的MTU是1500字节。
如果所传送的数据报文长度超过某链路的MTU值?
答案:分片

分片

补充完IP数据报格式中的字段含义:
标识:同一数据报的分片使用同一标识
标志:只有2位有意义x_ _

中间位DF(Don’t Fragment):
DF = 1,禁止分片
DF = 0,允许分片
最低位MF(More Fragment):
MF = 1:后面"还有分片"
MF = 0:代表最后一片/没分片

片偏移:指出较长分组分片后,某片在原分组中的相对位置。以8B为单位

除了最后一个分片,每个分片长度一定是8B的整数倍。

总结:
总长度单位是1B,片偏移单位是8B,首部长度单位是4B。
“一种八片首饰”

IPv4地址(IP地址)

IP地址:全世界唯一的32位/4字节标识符,标识路由器主机的接口。
IP地址::={<网络号>,<主机号>}

分类的IP地址

在这里插入图片描述
在这里插入图片描述

特殊IP地址

在这里插入图片描述

私有IP地址(本地IP地址)

内部使用,路由器不认这个。如果想和外部通信,就要用到NAT这种技术
在这里插入图片描述

网络地址转换(NAT)

上节提到的私有IP地址(本地IP地址),一般用于单位内部网络,对于外网或是英特网,路由器对目的地址是私有IP地址的数据报一律不进行转发。

网络地址转换NAT:在专用网连接到因特网的路由器上安装NAT软件,安装了NAT软件的路由器叫NAT路由器,它至少有一个有效的外部全球IP地址。

NAT路由器有一个NAT转换表
在这里插入图片描述

子网划分和子网掩码

之前讲的分类的IP地址,把IP地址分为A类,B类,C类,D类,E类。但是,这样有两个缺点:
1.IP地址空间的利用率有时很低。
2.两级IP地址不够灵活。

因此引入子网划分:
在这里插入图片描述
由两级IP地址变为三级IP地址
子网号能否全0全1要看情况
主机号不能全0全1
某单位划分子网后,对外仍表现为一个网络,即本单位外的网络看不见本单位内子网的划分。

使用子网时分组的转发

路由表中:
1.目的网络地址
2.目的网络子网掩码
3.下一跳地址
路由器转发分组的算法:
1.提取目的IP地址
2.是否直接交付
3.特定主机路由
4.检测路由表中有无路径
5.默认路由0.0.0.0
6.丢弃,报告转发分组出错。

无分类编制CIDR

ARP协议

在这里插入图片描述

由于在实际网络的链路上传送数据帧时,最终必须使用MAC地址。因此引入ARP协议。
作用:完成主机或路由器IP地址到MAC地址的映射。(解决下一跳走哪的问题)

ARP协议使用过程:
检查ARP高速缓存,有对应表项则写入MAC帧,没有则用目的MAC地址为FF-FF-FF-FF-FF-FF的帧封装并广播ARP请求分组,同一局域网中所有主机都能收到该请求。目的主机收到请求后就会向源主机单播一个ARP响应分组,源主机收到后将此映射写入ARP缓存(10-20min更新一次)

ARP协议4种典型情况:
1.主机A发给本网络上的主机B:用ARP找到主机B的硬件地址;
2.主机A发给另一网络上的主机B:用ARP找到本网络上一个路由器(网关)的硬件地址;
3.路由器发给本网络的主机A:用ARP找到主机A的硬件地址;
4.路由器发给另一网络的主机B:用ARP找到本网络上的一个路由器的硬件地址。

注意:ARP协议自动进行

ARP分组(请求,响应)都封装在数据链路层帧中进行传输

ARP缓存
缓存建立:
初始为空
利用ARP请求分组(广播发送,包含请求方的IP地址和硬件地址)
利用ARP响应分组(单播发送,包含被请求方的IP地址和硬件地址)
新加入网络的主机主动广播(广播发送,包含发送方的IP地址和硬件地址)

ARP分组格式:
在这里插入图片描述
硬件地址类型:占2字节,区分不同的数据链路层协议,最常用的是以太网:0x0001
协议地址类型:占2字节,区分不同的网络层协议,最常用的是IPv4: 0x0800
硬件地址长度:以字节为单位,以太网MAC地址占6个字节
协议地址长度:以字节为单位,IPv4占4个字节
操作类型:指明ARP分组类型,1:请求分组
2:响应分组

ARP响应分组构造:
ARP请求分组和响应分组格式相同。
构造响应分组时,响应方:
1.将其硬件地址填入接收的请求分组的“目的方硬件地址”字段;
2.交换分组中的发送方地址对和目的方地址对;
3.设置“操作类型”字段为2.

DHCP协议

动态主机配置协议DHCP是应用层协议,使用客户/服务器方式,客户端和服务器通过广播方式进行交互,基于UDP.

DHCP提供即插即用联网的机制,主机可以从服务器动态获取IP地址,子网掩码,默认网关,DNS服务器名称与IP地址,允许地址重用,支持移动用户加入网络,支持在用地址续租

1.主机广播DHCP发现报文 :试图找到网络中的服务器,服务器获得一个IP地址
2.DHCP服务器广播DHCP提供报文:服务器拟分配给主机一个IP地址及相关配置,先到先得。
3.主机广播DHCP请求报文:主机向服务器请求提供IP地址
4.DHCP服务器广播DHCP确认报文:正式将IP地址分配给主机。

网际控制报文协议ICMP

在这里插入图片描述
在传输层和网络层之间
作用:为了更有效地转发IP数据报和提高交付成功的机会

就是说在网络层如果我们收到有差错的数据,不只是丢弃那么简单,还要发送ICMP(针对这种差错)报文

ICMP协议支持主机或路由器:
1.差错(或异常)报告:——>发送特定ICMP报文,这里分为ICMP差错报文和ICMP询问报文
2.网络探询
在这里插入图片描述
上图说明ICMP报文是放在IP数据报的数据部分。

ICMP差错报告报文(5种):

1.终点不可达报文:无法交付
2.源点抑制报文:拥塞丢数据(已经不再使用)
3.时间超过报文:TTL=0
4.参数问题报文:首部字段有问题
5.改变路由(重定向)报文:值得更好的路由

不应发送ICMP差错报文的情况
1.对ICMP差错报告报文不再发送ICMP差错报告报文
2.对第一个分片的数据报片的所有后续数据报片都不发送ICMP差错报告报文
3.对具有组播地址的数据报都不发送ICMP差错报告报文
4.对具有特殊地址(如127.0.0.0或0.0.0.0)的数据报不发送ICMP差错报告报文。

ICMP询问报文

1.回送请求和回答报文:测试目的站是否可达以及了解其相关状态
2.时间戳请求和回答报文:用来进行时钟同步和测量时间

3.掩码地址请求和回答报文(已经不再使用)
4.路由器询问和通告报文(已经不再使用)

ICMP的应用

PING 测试两个主机之间的连通性,使用了ICMP回送请求和回答报文
Traceroute 跟踪一个分组从源点到终点的路径,使用了ICMP时间超过差错报告报文

路由算法与路由协议概述

最佳路由:“最佳”只能是相对于某一特定要求下得出的较为合理的选择而已。

路由算法的分类:

路由算法分为静态路由算法(非自适应路由算法)和动态路由算法(自适应路由算法)。

静态路由算法

静态路由算法:管理员手工配置路由信息。
优点:简便,可靠,在负荷稳定,拓扑变化不大的网络中运行效果很好,广泛用于高度安全性的军事网络和较小的商业网络。

缺点:路由更新慢,不适用大型网络

动态路由算法

动态路由算法:路由器间彼此交换信息,按照路由算法优化出路由表项。
优点:路由更新快,适应大型网络,及时响应链路费用或网络拓扑变化。
缺点:算法复杂,增加网络负担。

动态路由算法又分为全局性和分散性两种

全局性

链路状态路由算法 OSPF
所有路由器掌握完整的网络拓扑和链路费用信息

分散性

距离向量路由算法 RIP
路由器只掌握物理相连的邻居及链路费用

分层次的路由选择协议

1.因特网规模很大
2.许多单位不想让外界知道自己的路由选择协议,但还想连入因特网

自治系统AS:在单一的技术管理下的一组路由器,而这些路由器使用一种AS内部的路由选择协议和共同的度量以确定分组在该AS内的路由,同时还使用一种AS之间的路由协议以确定在AS之间的路由
一个AS内的所有网络都属于一个行政单位来管辖,一个自治系统的所有路由器在本自治系统内都必须连通。

路由选择协议分为内部网关协议IGP和外部网络协议EGP

内部网关协议IGP

一个AS内使用的  RIP,OSPF
RIP:适用于比较小的网络
OSPF:适用于比较大的网络

RIP协议与距离向量算法

RIP协议是一种分布式的基于距离向量的路由选择协议,是因特网的协议标准,最大优点是简单

RIP协议要求网络中每个路由器都维护从它自己到其他每一个目的网络的唯一最佳距离记录(即一组距离)

距离:通常为“跳数”,即从源端口到目的端口所经过的路由器个数,经过一个路由器跳数+1,特别的,从路由器到直接连接的网络距离为1.RIP允许一条路由最多只能包含15个路由器,因此距离为16表示网络不可达。从这里可以看出RIP协议只适用于小互联网
在这里插入图片描述

RIP协议和谁交换?多久交换一次?交换什么?

1.仅和相邻路由器交换信息
2.路由器交换的信息是自己的路由表
3.每30秒交换一次路由信息,然后路由器根据新信息更新路由表,若超过180s没收到邻居路由器的通告,则判定邻居没了,并更新自己路由表。

路由器刚开始工作时,只知道直接连接的网络的距离(距离为1),接着每一个路由器也只和数目非常有限的相邻路由器交换并更新路由信息。
经过若干次更新后,所有路由器最终都会知道到达本自治系统任何一个网络的最短距离和下一跳路由器的地址,即“收敛”。

距离向量算法

1.修改相邻路由器发来的RIP报文中所有表项
对地址为X的相邻路由器发来的RIP报文,修改此报文中的所有项目:把“下一跳”字段中的地址改为X,并把所有的“距离”字段+1
2.对修改后的RIP报文中的每一个项目,进行以下步骤:
(1)R1路由表中若没有Net3,则把该项目填入R1路由表
(2)R1路由表中若有Net3,则查看下一跳路由器地址:
若下一跳是X,则用收到的项目替换源路由表中的项目
若下一跳不是X,原来距离比从X走的距离远则更新,否则不做处理

3.若180s还没收到相邻路由器X的更新路由表,则把X记为不可达的路由器,即把距离设置为16
4.返回

RIP协议的报文格式

RIP是应用层协议
使用UDP传送数据

一个RIP报文最多可包括25个路由,如超过,必须再用一个RIP报文传送

在这里插入图片描述

RIP协议好消息传得快,坏消息传得慢。

RIP的特点:当网络出现故障时,要经过比较长的时间(例如数分钟)才能将此信息传送到所有的路由器,“慢收敛”。

OSPF协议与链路状态算法

开放最短路径优先OSPF协议:“开放”标明OSPF协议不是受某一家厂商控制,而是公开发表的;"最短路径优先"是因为使用了Dijkstra提出的最短路径算法SPF。
OSPF最主要的特点就是使用分布式的链路状态协议

OSPF的特点:
和谁交换:
使用洪泛法向自治系统内所有路由器发送信息,即路由器通过输出端口向所有相邻的路由器发送信息,而每一个相邻路由器又再次将此信息发往其所有的相邻路由器。类似于广播 最终整个区域内所有路由器都得到了这个信息的一个副本

交换什么:
发送的信息就是与本路由器相邻的所有路由器的链路状态(本路由器和哪些路由器相邻,以及该链路的度量/代价—费用,距离,时延,带宽等)。

多久交换:
只有当链路状态发生变化时,路由器才向所有路由器洪泛发送此信息。

最后,所有路由器都能建立一个链路状态数据库,即全网拓扑图

链路状态路由算法:
在这里插入图片描述
OSPF的区域:
为了使OSPF能够用于规模很大的网络,OSPF将一个自治系统再划分为若干个更小的范围,叫做区域。
每一个区域都有一个32位的区域标识符(用点分十进制表示)
区域也不能太大,在一个区域内的路由器最好不超过200个。

OSPF分组:
OSPF分组直接用IP数据报传送
在这里插入图片描述

OSPF其他特点:
1.每隔30min,要刷新一次数据库中的链路状态
2.由于一个路由器的链路状态只涉及到与相邻路由器的连通状态,因而与整个互联网的规模并无直接关系。因此当互联网规模很大时,OSPF协议要比距离向量协议RIP好得多。
3.OSPF不存在坏消息传的慢的问题,它的收敛速度很快

外部网关协议EGP

AS之间使用的 BGP

在这里插入图片描述

网络层设备

路由器

三层设备的区别:

路由器:可以互联两个不同网络层协议的网段
网桥:可以互联两个物理层和链路层不同的网段
集线器:不能互联两个物理层不同的网段
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值