接上一篇:计算机网络原理【三】之 传输层
文章目录
一、网络层服务
1.网络层核心任务
将数据从源主机送达到目的主机
2.网络层主要功能
- 转发: 当输入链路接收到一个分组后,路由器需要决策通过哪条输出链路将分组发送出去,并将分组从输入接口转移到输出接口。
- 路由选择: 当分组从源主机流向目的主机时,必须通过某种方式决定分组经过的路由或路径。
- 连接建立: 网络层连接是从源主机到目的主机经过的一条路径,这条路径所经过的每个路由器等网络设备都要参与网络层连接的建立。
二、数据报网络与虚电路网络
1.数据报网络(无连接服务)
数据报网络是按照目的主机地址进行路由选择的网络。
特点:
1.无连接
2.路由选择: 每个分组独立路由(源主机每发送一个分组,就为该分组加上目的主机地址,然后将该分组推进网络。每个路由器使用分组的目的主机地址转发分组。)
3.按序发送、不一定按序接收
2.虚电路网络(面向连接)
a.虚电路(VC,virtual circuit)
虚电路是源主机到目的主机的一条路径上建立的一条网络层逻辑连接。
b.虚电路网络
在网络层提供面向连接的分组交换服务。双方通信前先虚电路建立连接,通信结束后再拆除连接。
c.虚电路的构成
- 从源主机到目的主机之间的一条路径(一系列的链路和分组交换机)。
- 该路径上的每条链路的虚电路标识(VCID)。
- 分组交换机的转发表中记录虚电路标识的接续关系。
虚电路号
3.数据报网络与虚电路网络的区别
项目 | 数据报网络 | 虚电路网络 |
---|---|---|
是否建立连接 | 不建立连接 | 先建立连接 |
地址 | 每个分组包含源和目的端地址 | 每个分组含有一个短的虚电路号 |
分组顺序 | 按序发送,不一定按序接收 | 按序发送,按序接收 |
路由选择 | 每个分组独立路由选择 | 建立VC时需要路由选择,之后所有分组都沿此路由转发 |
典型网络 | 因特网 | X.25、帧中继、ATM |
三、网络互连与网络互连设备
1.异构网络互连
a.异构网络
主要是指俩个网络的通信技术和运行协议的不同。
例如:wifi,网线等。
b.异构网络互连的基本策略一:协议转换
协议转换:采用一类支持异构网络之间协议转换的网络中间设备,来实现异构网络之间数据分组的转换与转发。
例如:交换机或者是多协议路由器。
c.异构网络互连的基本策略二:构建虚拟互联网络
构建虚拟互联网络是在异构网络基础上构建一个同构的虚拟互联网络。
同构网络互连:隧道技术。
2.路由器
a.路由器
路由器是最典型的网络层设备。
它是具有多个输入端口和多个输出端口的专用计算机,主要任务就是获取与维护路由信息以及转发分组。
b.路由器功能体系结构
①输入端口
查找,转发,到达分组缓存排队。
②交换结构:
完成具体的转发工作,将输入端口的IP数据报交换到指定的输出端口。
分为三种交换方式:
①基于内存交换
②基于总线的交换
③基于网络的交换
小总结:
基于内存交换:性能最低,路由器价格最便宜
基于网络交换:性能最高,路由器价格昂贵。
③输出端口
缓存排队,从队列中取出分组进行数据链路层数据帧的封装,发送。
调度策略包含:先到先服务调度、按优先级调度、按IP数据报的服务类型调度。
④路由处理器
执行命令、路由协议运行、路由计算以及路由表的更新和维护
四、网络层拥塞控制
1.网络拥塞
a.网络层拥塞
用户对网络资源(包括链路带宽、存储空间和处理器处理能力等)的总需求超过了网络固有的容量。
评判标准:
吞吐量大好
响应时间少好
网络负载在膝点附近时,吞吐量和分组平均延迟达到理想的平衡,网络的使用效率最高。
b.发生拥塞的原因
- 缓冲区容量有限
- 传输线路的带宽有限
- 网络结点的处理能力有限
- 网络中某些部分发生了故障
2.网络层拥塞控制措施
a.流量感知路由
权值根据网络负载动态调整,可以将网络流量引导到不同的链路上,均衡网络负载。
b.准入控制
广泛应用于虚电路网络的拥塞预防技术。
基本思想:对新建虚电路审核,如果新建立的虚电路会导致网络变得拥塞,那么网络拒绝建立该新虚电路。
c.流量调节
在网络发生拥塞时,通过调整发送方发送数据的速率来消除拥塞。
①路由器如何感知发生了拥塞?
通过路由器输出端口的排队时延【计时器的时间】
②路由器感知到拥塞时,如何通知其上游结点,并且使上游结点降低发送速率?
抑制分组:感知到拥塞的路由器选择一个被拥塞的数据报,给该数据报的源主机返回一个抑制分组。
背压:抑制分组在从拥塞结点到源结点的路径上的每一跳,都发挥抑制作用。
d.负载脱落
有选择地主动丢弃一些数据报,来减轻网络负载,从而缓解或消除拥塞。
五、Internet网络层
1.IPv4协议(Internet Protocol version 4)
Internet 网络层 最核心的协议。
定义了如何 封装 上层协议(如UDP、TCP)的报文段;
定义了Internet网络层 寻址 (IP地址)以及如何转发IP数据报等内容;
俩个版本: IPv4 和IPv6.
a.IP数据报格式
- 版本号:4位。IP的版本号。
- 首部长度:4位,单位为4字节。IP数据报的首部长度:20B-60B
- 区分服务:8位。在旧标准中称为服务类型(TOS, Type of Service)字段,用来指示期望获得哪种类型的服务。
- 数据报长度:16位。IP数据报的总字节数。
- 生存时间:8位。(TTL,Time-To-Live)。表示IP数据报在网络中可以通过的路由器数(或跳步数)。
- 上层协议:8位,指示该IP数据报封装的是哪个上层协议。 TCP:6 UDP:17
- 首部校验和:16位,利用校验和实现对IP数据报首部的差错检测。
- 源IP地址:32位。发出IP数据报的源主机的IP地址。
- 目的IP地址:32位。IP数据报的需要送达的主机的IP地址。
- 选项:长度可变。
- 数据:存放IP数据报所封装的传输层报文段。
- 标识: 16位。标识一个IP数据报。每产生一个IP数据报,IP协议的计数器加1。
该字段的重要用途:在IP数据报分片和重组过程中用于标识属于同一IP数据报。
PS:该字段不可唯一标识一个IP数据报。只能标识某些分片同属于同一个IP数据报。 - 标志: 3位。其结构如图:
- 片偏移量:以8B为单位。 标识一个IP数据报分片与原IP数据报的数据的相对偏移量。
当该字段值为0时,且MF=1,则表示这是一个IP分片,且是第一个分片。
b.IP数据报分片
- 最大传输单元(Maximum Transmission Unit, MTU):数据链路层帧能承载的最大数据量。
- IP数据报分片的原则:尽可能地少分片。
2.IPv4编地址
IPv4地址的长度为32位,共有232个不同的IP地址,约为43亿个。
a.IPv4地址的标记方式
方法 | 表示方法 |
---|---|
二进制标记法 | 11000000 10101000 00000001 01100101 |
点分十进制标记法 | 192.168.1.101 |
十六进制标记法 | 0xC0A80165 |
b.IP地址分配
- 前缀(Prefix):即网络部分(Net ID),用于描述主机所归属的网络。
分类地址:定长前缀(A、B、C、D、E类)
无类地址:前缀长度可变。 - 后缀(Postfix):即主机部分(Host ID),用于表示主机在网络中的唯一地址。
- IP子网:IP地址具有相同前缀的设备接口。不跨越路由器。可以彼此物理联调的接口。
c.分类地址
类 | 前缀长度 | 前缀 | 首字节(十进制数) |
---|---|---|---|
A | 8位 | 0xxxxxxx | 0-127 |
B | 16位 | 10xxxxxx xxxxxxxx | 128-191 |
C | 24位 | 110xxxxx xxxxxxxx xxxxxxxx | 192-223 |
D | 不可用 | 1110xxxx xxxxxxxx xxxxxxxx xxxxxxxx | 224-239 |
E | 不可用 | 1111xxxx xxxxxxxx xxxxxxxx xxxxxxxx | 240-255 |
PS:
A、B、C类地址:可以用于标识网络中的主机或路由器
D类地址:组广播地址
E类地址:保留,做研究
d.分类地址网络个数与IP地址总数
类 | 前缀长度 | 前缀中固定位数 | 前缀减去固定位数 | 网络个数 | 每个网络中IP地址总数 |
---|---|---|---|---|---|
A类 | 8 | 1位(0) | 7位 | 27个 | 224个 |
B类 | 16 | 2位(10) | 14位 | 214个 | 216个 |
C类 | 24 | 3位(110) | 21位 | 221个 | 28个 |
e.特殊地址:分类地址中一些特殊用途的地址
网络部分 | 主机部分 | 作为IP数据报源地址 | 作为IP数据报目的地址 | 用途 |
---|---|---|---|---|
全0 | 全0 | 可以 | 不可以 | 在本网范围内表示主机(0.0.0.0/32) 在路由表中用于表示默认路由(0.0.0.0/0) |
全0 | 特定值 | 可以 | 不可以 | 表示本网内某个特定主机 |
全1 | 全1 | 不可以 | 可以 | 本网广播地址 |
特定值 | 全0 | 不可以 | 不可以 | 表示一个网络地址(子网地址) |
特定值 | 全1 | 不可以 | 可以 | 直接广播地址,对特定网络上的所有主机进行广播 |
127 | 非全0或非全1的任何数 | 可以 | 可以 | 环回地址,用于本地软件环回测试 |
f.私有地址:一部分分类地址保留用于内部网络
这部分分类地址可以在内网使用,但不能在公共互联网上使用。
私有地址类别 | 范围 |
---|---|
A类 | 10.0.0.0–10.255.255.255(或10.0.0.0/8) |
B类 | 172.16.0.0–172.31.255.255(或172.16.0.0/12) |
C类 | 192.168.0.0–192.168.255.255(或192.168.0.0/16) |
g.无类地址
- 网络前缀不再被设计为定长的8位、16位、24位,而变成0-32位的任意值。
- 网络地址书写形式:a.b.c.d/x
例如:203.1.1.0/25
h.子网划分
子网化: 将一个较大的子网划分为多个较小子网的过程。(大变小)
超网化:将具有较长前缀的相对较小的子网合并为一个具有稍短前缀的相对较大的子网。(小变大)
子网掩码: 定义一个子网的网络前缀长度。
子网掩码位数:32位。
书写形式:二进制,点分十进制。
取值规则:对应前缀,全部为1。对应后缀,全部为0.
i.路由聚合
路由聚合是指减少路由表项数,提高路由效率,将可以聚合在一起的子网聚合成一个大的子网。
3.动态主机配置协议(DHCP,Dynamic Host Configuration Protocol)
主机配置协议有俩种:
- 静态分配:手动配置
- 动态分配:动态主机配置协议来分配。
a.DHCP端口号
DHCP服务器端口号 – 67
DHCP客户端口号 – 68
b.DHCP工作过程
第一步:DHCP服务器发现:广播方式
第二步:DHCP服务器提供:广播方式
第三步:DHCP请求:广播方式
第四步:DHCP确认
4.网络地址转换(NAT,Network Address Translation)
使私有地址在公共Internet上正常通信。
a.NAT工作原理
-
从内网出去的IP数据报,将其IP地址替换为NAT服务器拥有的合法的公共IP地址,并将替换关系记录到NAT转换表中;
-
从公共互联网返回的IP数据报,依据其目的IP地址检索NAT转换表,并利用检索到的内部私有IP地址替换目的IP地址,然后将IP数据报转发到内部网络。
5.互联网控制报文协议(ICMP,Internet Control Message Protocol)
互联网控制报文协议:进行主机或路由器间的网络层差错报告与网络探测。
ICMP报文格式:
ICMP报文分类:
- 差错报告报文:终点不可达、源点抑制、时间超时、参数问题、路由重定向
- 询问报文:回声请求/应答、时间戳请求/应答
6.IPv6
a.IPv6数据报格式(基本首部)
IPV6基本首部40字节
b.IPv6 和 IPv4 数据报首部对比
IPv6删除了这些字段:
- 分片相关字段
- 首部校验和
- 选项字段不是IPv6的基本首部字段
c.IPv4 到 IPv6 的迁移
①方法一:双协议栈
网络结点同时具备发送 IPv4 与 IPv6 数据报的能力。
②方法二:隧道
隧道能很好的解决IPv6通信中经过IPv4路由器的问题,同时也不会出现信息丢失的问题。
比如:通信源端与目的端都提供IPv6服务,但是途径一段IPv4网络。
六、路由算法与路由协议
路由选择:如何为网络分组从源端到目的端的传输确定最佳路径?
答:能走通,且最短。
1.路由选择算法的分类
a.按是否需要全局信息分类
b.按静态动态分类
c.按是否敏感分类
2.链路状态路由选择算法(LS算法)
链路状态路由选择算法是一种全局式路由选择算法,每个路由器在计算路由时,需要构建出整个网络的拓扑图。
3.距离向量路由选择算法(DV算法)
距离向量路由选择算法是一种分布式路由选择算法,每个结点仅掌握与所有邻居结点的直接链路代价。
PS:
距离向量路由选择算法的过程:
1.路由器分别维护自己的转发表(DV),并且收到邻居(与本路由器直接相连)的通告
2.收到通告会进行对比更新。
4.层次化路由选择
合理的网络规模范围内使用 LS算法 和 DV算法。
大规模网络路由选择最有效可行的解决方案是层次化路由选择。
层次化路由选择原理:
大规模互联网的路由划分为俩层:
自治系统内路由选择:计算到达自治系统内目的网络的路由。
自治系统间路由选择:负责其他自治系统网络的可达性信息。
自治系统(AS,autonomous system):互联网按组织边界划分为多个自治系统。每个自治系统由运行相同路由协议和路由选择算法的路由器组成。
网关路由器:每个自治系统存在至少一个与其他自治系统互联的路由器。
5.Internet路由选择协议
分为:
内部网关协议(IGP,Interior Gateway Protocol):Internet自治系统内路由选择协议。
外部网关协议(EGP,Exterior Gateway Protocol):Internet自治系统间路由选择协议。
内部网关协议 IGP:RIP 和 OSPF
外部网关协议 EGP:BGP
a.路由信息协议(Routing Information Protocol, RIP)
b.开放最短路径优先协议(Open Shortest Path First,OSPF)
c.边界网关协议(Border Gateway Protocol,BGP)