石墨文档链接: https://shimo.im/docs/qx4BbvSR9Tc2AvHo/
第五章
-
链路层概述
-
所有运行链路层协议的任何设备均成为结点,节点包括主机、路由器、交换机和WiFi接入点。沿着通信路径相邻结点的通信信道称为链路link
-
通过特定的链路时,传输结点将数据报封装在链路层帧中,并将该帧传送到链路中。
-
链路层提供的服务
| 成帧 | 在每个网络层数据报经链路传送之前,都被链路层协议用链路层帧封装 |
|:----|:----|
| 链路接入 | MAC Medium Access Control 媒体访问控制 规定帧在链路上传输的规则,MAC协议用于协调多个结点的帧传输 |
| 可靠交付 | 链路层的可靠交付服务是通过确认和重传取得的(许多有线的链路层协议不提供可靠交付服务) |
| 差错检测和纠正 | 检验和、奇偶检验和、CRC | -
链路层的结构
-
链路层的主体部分是在网络适配器(Network adapter)中实现的。网络适配器也成为网络接口卡(NIC)。
-
网络适配器的核心是链路层控制器
3. 部分的链路层试运行在主机CPU中实现的。链路层的软件组件实现了高层链路层功能:组装链路层寻址信息和激活控制器硬件,处理差错并将数据报上传
4. 链路层是软硬件的结合体
4. 差错检测和纠正技术
- 比特级差错检测和纠正。使用**差错检测和纠正比特(EDC)**来增强数据D
2. 三种技术:
1. 奇偶校验(它用于描述差错检测和纠正背后隐含的基本思想)
2. 检验和方法(通常用于运输层)
3. 循环冗余检测(它通常用于适配器的链路层)
5. 奇偶校验
- 单个奇偶检验位
- 其中偶检验是d+1中1的总数为偶
- 缺点:
- 测量表明差错经常以“突发”方式聚集在一起,所以使用单个比特奇偶校验保护的一帧中未检测出差错的概率能够达到50%
- 二维奇偶校验(改进上面的方法的缺点)
- D中的d个比特被划分为i行j列,对于每一个行与每一列计算奇偶值,产生的i+j+1奇偶比特构成了差错检测比特。
- 特点:
- 可以检测并纠正一个比特的错误
- 可以检测但不能够纠正两个比特的错误
- FEC(forward error correction)前向纠错
- 检验和方法
- d比特数据被作为一个k比特整数序列处理。(16比特)
- 循环冗余检测(Cyclic Redundancy Check)
- 问题:为何运输层使用检验和而链路层是用CRC
- 运输层通常是在主机中作为用户操作系统的一部分用软件实现的。因为运输层差错检测用软件实现,采用简单而快速如检验和这样的差错检测方案是很重要的
- 链路层的差错检测是在适配器中用专用的硬件实现的,能够快速执行更复杂的CRC操作。
- 也称为多项式编码(polynomial code)
- 发送方与接受方协商一个r+1的比特模式,称为生成多项式(generator)G,G的最高有效位bite为1,附加r个附加比特R,构成d+r比特模式用模2算术刚好能被G整除。
8. 多路访问链路和协议
- 多路访问协议
- 三种类型:
- 信道划分协议 channel partitioning protocol
- 随机接入协议 random access protocol
- 轮流协议 tacking-truns protocol
- 要求:
- 当仅有一个结点发送时,拥有所有的吞吐量
- 公平:当有M个结点。。。
- 分散:不会因为某一个故障而崩溃
- 简单
- 信道划分协议
- TDM、FDM
- 图示:
2. CDMA(code Division Multiple Access)码分多址(详见第六章)
1. 对每个结点分配一个不同的编码
10. 随机接入协议
- 特点:
- 一个传输结点总是以信道的全部速率进行发送
- 当发生碰撞时,涉及碰撞的每个结点随机选择时延进行重发
- 两种:ALOHA协议与CSMA协议(载波侦听多路访问)carrier sensing
- slot ALOHA
- 前提假设:
- 所有的帧都是由L比特组成
- 时间被划分为长度为L/R秒的slot(1 slot等于传输一帧的时间)
- 结点只在slot 起点开始传输帧
- 结点是同步的,每个结点都知道slot 何时开始
- 如果在一个slot中发生了帧碰撞,则所有的结点在该slot结束之前检测到该碰撞事件
- p为一个概率
- SLOT ALOHA的操作:
- 当结点有一个新帧需要进行发送的时候,等待下一个slot开始并在该slot中传输
- 如果没有碰撞,则成功传输
- 如果有碰撞,则在slot结束之前检测到这一次碰撞。该结点以概率p在后续的每个slot中重传该帧,直到该帧被无碰撞的传输出去
- 缺点:
- 要求每个结点都是同步的,这是很难实现的
- slot ALOHA的效率比较低,1/e能够成功发送,其中1/e的slot是空闲的,26%的slot是有碰撞的。
- 效率:
- ALOHA
- 非slot、完全分散的
- 效率为 1/(2e)
- 效率:
5. CSMA 载波侦听多路访问
1. 名词:
1. 载波侦听 carrier sensing
一个结点正在传输前先听信道,如果有来自另外的一个结点的帧 正向信道上发送,则结点需要等待直到检测到一小段时间没有传输,然后才开始传输
2. 碰撞检测 collision detection
当一个传输结点在传输是一直侦听此信道,如果检测到另一个结点正在传输干扰帧,则停止传输。
2. 信道传输时延越大,则载波侦听结点不能侦听到网络中另一个结点已经开始传播的机会就越大。
3. 图示
4. 从适配器的角度总结它的运行
1. 适配器从网络层获取一条数据包,准备链路层帧,并将其放入帧适配器缓存中
2. 如果适配器侦听到信道空闲,则开始传输帧。如果正忙,则等待
3. 在传输过程中,适配器监视来自其他的使用该广播信道的适配器的信号能量的存在
4. 如果在整个传播帧的过程中没有检测到来自其他适配器的信号能量,则完成了帧的传送。反之则中止传输
5. 等待一个随机事件量进行传输
5. 二进制指数后退(binary exponential backoff)
1.
6. CSMA/CD效率
1. 定义为:当有大量的活跃点,且每个结点都有大量的帧要进行发送时,帧在信道中无碰撞的传输的那部分时间在长期运行时间中份额。
2. d_prop表示能量在任意两个适配器之间传播所需的最大时间,d_trans表示传输一个最大长度的以太网帧的时间
11. 轮流协议 taking-turns protocol
- 解决的问题:
- 随机访问协议中不能够保证多路访问协议的第二条
- 两种协议:
- 轮询协议(polling protocol)
- 缺点:
- 引入了轮询时延
- 如果主结点出现了故障,则坏了
- 令牌传递协议(Token-passing protocol)
- 一个称为 令牌的特殊帧在结点之间以一种固定的次序进行交换
- 缺点:
- 出现故障
- 交换局域网
- 以上的图示中服务器之间只涉及到交换机,而没有路由器,因此没有路由选择算法,采用的是MAC地址转换
- 链路层寻址和ARP
- MAC地址
- 并不是主机或者路由器具有链路层地址,而是适配器具有链路层地址
- 总共有6个字节
- 没有两个适配器是具有相同的地址,扁平结构,到哪里都是不会变的
- 地址解析协议 ARP
- 是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。
- 每台主机或者路由器在其内存中都有一个ARP表,这个表中包含IP地址到MAC地址的映射关系,一个表项通常的过期时间是20分钟
3. 如果是没有在ARP表中的,则构造一个ARP分组的特殊分组。每个ARP分组有几个字段,包括发送和接收IP地址以及MAC地址。ARP查询分组和相应分组都有相同的格式。查询分组的目的是询问自网上所有的其他的主机和路由器以确认对应于要解析的IP地址的那个MAC地址。
4. ARP可以看作是跨链路层与网络层的协议
3. 发送数据报到子网以外
1. ARP加上路由器的转发功能
4. 以太网
1. 成功的原因
1. 是第一个广泛部署的高速局域网
2. 令牌环、FDDI和ATM比以太网更加复杂
3. 改用其他局域网技术的最引人注目的原因是具有更高的数据速率,但是以太网总是产生了运行在相同或更高数据速率下的版本
4. 已经十分流行,而且以太网的硬件极为便宜
2. PPP 以太网帧结构:
字段 | 作用 |
---|---|
数据字段(46-1500字节) | 最大传输单元 MTU 是1500字节 |
目的地址(6字节) | 目的适配器的MAC地址 |
源地址(6字节) | 传输该帧到局域网上的适配器的MAC地址 |
类型字段(2字节) | 允许以太网复用多种网络层协议 |
CRC(4字节) | 循环冗余检测 |
前同步码(8字节) | 前7个字节都是10101010,最后一个字节是10101011 |
3. 所有的以太网技术都是向网络层提供无连接服务的
4. 以太网技术:
1. 以太网是链路层也是物理层的规范,能够经各种物理媒体(包括同轴电缆、铜线和光纤)承载。
- 链路层交换机
- 交换机自身对子网中的主机和路由器是透明的
- 交换机转发和过滤:
- 过滤是决定一个帧应该转发到某个接口还是应该将其丢弃的交换机功能
- 转发是决定一个帧应该被导向那一个接口,并将该帧移动到那些接口的交换机功能
- 交换机表
- 表项:一个mac地址、通往该mac地址的交换机接口、表项放置在表中的时间
图示
4. 分为三种方式处理:
3. 自学习
1. 交换机是自学习的
2. 交换机是即插即用的设备,不需要干预
4. 链路层交换机的性质
1. 消除碰撞
2. 异质的链路
3. 管理
5. 交换机和路由器的比较
1. 交换机
优点 | 缺点 |
---|---|
①即插即用 ②交换机还能够具有相对高的分组过滤和转发速率。 ③防止广播帧的循环,交换网络地活跃拓扑限制为一个生成树 | ①一个大型交换网络将要求主机和路由器中有大量的ARP表 ②对广播风暴不提供任何保护措施 |
2. 路由器
优点 | 缺点 |
---|---|
①网络寻址通常是分层次的,即使存在冗余链路,分组也不会通过路由表进行循环 ②分组不会被限制在一个生成树上,所以可以使用源和目的地之间的最佳路径。 | ①不是即插即用的 ②对于每一个分组处理的时间通常比交换机更长,因为高达第三层。 |
- VLAN虚拟局域网
- 解决的问题:
- 缺乏流量隔离
- 交换机的无效使用(交换机利用率不高)
- 管理用户
- MPLS 多协议标签 Multiprotocol Lable Switching
- MPLS是一种分组交换的虚电路网络,有着自己的分组格式和转发行为
- MPLS为IP设备提供互联服务的链路层技术
- 解决的问题:
- 改善IP路由器的转发速度
- 目标:对于固定长度的标签和虚电路的技术,在不放弃基于目的地IP数据报转发的基础设施前提下,通过选择性地标识数据报并允许路由器基于固定长度的标签(而不是IP地址)来转发数据包来增强其功能。
- 格式
6. 一个MPLS使能的路由器常被称为 标签交换路由器 label switched router
7. 优点:MPLS提供了沿着多条路由转发分组的能力,这是在使用标准IP路由选择协议这些路由将是不可能的。流量工程 traffic engineering
8. VPN的实现
15. 数据中心网络
- 负载均衡器的任务:
- 向主机分发请求,以主机当前的负载作为函数来在主机之间均衡负载。被称为第4层交换机。
- 两种结构:
- 路由器和交换等级结构:
- 也就是上面的图
- 全连接拓扑
- 特点:
- 主机到主机的流量绝不会超过该交换机的层次
- 对于n台第一层交换机,在任意两台二层交换机间有n条不相交的路径
3. 模块化数据中心
16. Web页面请求历程 !!!
- 流程
有用的链接
载波监听多路访问CSMA以及CSMA/CD详解 https://blog.csdn.net/hanzhen7541/article/details/79018432