本章重点
1. 数据链路层的点对点信道和广播信道的特点,以及这两种信道使用的协议(PPP
和CSMA/CD
)的特点
2. 数据链路层的三个基本问题:封装成帧、透明传输、差错检测
3. 以太网MAC层的硬件地址
4. 适配器
、转发器
、集线器(HUB)
、网桥
、以太网交换机
的作用以及使用场合
链路
:一条无源的点到点的物理线路段,中间没有任何其他的交换结点。
数据链路
:把实现 控制数据传输的通信协议的硬件和软件加到链路上构成数据链路。
网络适配器
:即网卡,作用是实现协议,一般的适配器都包括了数据链路层和物理层这两层的功能。
数据链路层的协议数据单元
:帧。
点对点通信过程
1. 结点A数据链路层把网络层的IP数据报添加首部和尾部封装成帧。
2. 结点A把封装好的帧发送给结点B的数据链路层。
3. 结点B对帧的正确性进行判断(CRC),正确则提取出帧中的IP数据报上交网络层,否则直接丢弃。
点对点通信图解
这三个基本问题是封装成帧
、透明传输
、差错检测
。
封装成帧
封装成帧:在一段数据的前后分别添加首部(帧开始符SOH01)和尾部(帧结束符EOT 04),然后就构成了一个帧。(数据部分<=长度限制MTU)首部和尾部的一个重要作用就是进行帧定界
透明传输
透明传输:无论什么数据都能通过数据链路层,但不保证接收端能够正确接收。
透明传输的问题
解决办法
在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC”(十六进制1B)
差错检测
比特差错:比特在传输时1变成0,0变成1
误码率(BER):在一段时间内,传输错误的比特占所传输比特总数的比率,提高信噪比可以减少误码率
循环冗余检验CRC:一种检错方法。(原理:P70~P71)
帧检测序列FCS:添加在数据后的冗余码。
应用场景:用户和ISP进行通信的协议。
PPP协议应满足的需求:简单(首要的要求),封装成帧,透明性 ,多种网络层协议,多种类型链路,差错检测,检测连接状态,最大传送单元,网络层地址协商,数据压缩协商。
PPP协议不需要的或不具有的功能:纠错,流量控制,序号,多点线路,半双工或单工链路
PPP 协议的三个组成部分
○ 一个将 IP 数据报封装到串行链路的方法。
○ 链路控制协议 LCP (Link Control Protocol)。
○ 网络控制协议 NCP (Network Control Protocol)。
PPP 协议的帧格式:
各字段的意义
1. 标志字段F=0x7E,地址字段A=0xFF,控制字段C=0x03。
2. 2 个字节的协议字段:0x0021,IP数据报;0xC021,PPP链路控制数据;0x8021,网络控制数据。
3. 信息部分不超过1500字节。
4. 尾部为FCS。
5. 所有的 PPP 帧的长度都是整数字节。
字节填充
信息字段出现和标识字段一样的比特:
当PPP用在异步传输时,就使用一种特殊的字符填充法,接受端进行相反的变化。
零比特填充
同步传输时,实现透明传输地方法。
链路静止—>建立物理层连接—>建立LCP连接—>建立NCP链路—>交换数据
广播信道可以进行一对多的通信,局域网就是使用的广播信道。
局域网对LLC是透明的
适配器
1. 网络接口卡NIC(Network Interface Card)简称网卡,上面装有RAM和ROM。
2. 适配器和局域网之间的通信是通过电缆或双绞线以串行传输方式进行。
3. 适配器和主机的通信时通过计算机主板上的IO总线以并行传输方式进行。
4. 必须在计算机上安装驱动程序,通知适配器对以太网中的数据进行存储或者发送数据到以太网。
5. 以太网的数据率和主机的数据率不同。
6. 适配器的重要功能:
(1)进行串行/并行转换
(2)对数据进行缓存。
(3)对数据进行存储和发送
(4)实现以太网协议
7. 计算机的硬件地址就存储在适配器的ROM中
8. 计算机的软件地址(IP地址)存储在CPU的存储器中
(1).准备发送:适配器从网络层获取分组,加上首部和尾部,放入缓存,检测信道
(2).检测信道:一直检测直到空闲,并在96比特时间一直空闲(保持帧间最小间隔),就发送帧。
(3).适配器边发送边监听。
通信简便
1. 以太网采用较为灵活的无连接的工作方式,即不必先建立连接就可以直接发送数据,以太网对发送的数据帧不进行编号,也不要求对方发回确认。
2. 数据采用曼彻斯特编码
要点
1. 多点接入:许多计算机以多点接入的方式连接在一根总线上
2. 载波监听:每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据
3. 碰撞检测(边发送边监听):计算机边发送数据边检测信道上的信号电压大小检测是否有其他的站在发送数据
4. 当一个站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞,就要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间后再次发送
5. 电磁波在1km电缆传播时延约5 μs
6. 把总线上的单程端到端(最大距离)传播时延记为τ,A发送数据后,最迟要经过2τ才能知道自己发送的数据和其他站发送的数据有没有发生碰撞。
7. 传播时延对载波监听的影响
8. 使用 CSMA/CD 协议的以太网不可能进行全双工通信而只能进行双向交替通信(半双工通信)
9. 争用期:2τ
10. 退避:发生碰撞的站不实在停止发送数据后等到信道空闲,而是推迟。
11. 退避算法:
(1)确定基本退避时间,一般是取为争用期 2τ。即51.2us
(2)定义 k = Min[重传次数, 10] ,k的最大值为10.
(3)从整数集合[ 0,1,…,(2k−1 )]中随机地取出一个数,记为 r。
(4)重传所需的时延就是 r 倍的基本退避时间。
(5)当重传达 16 次仍不能成功时即丢弃该帧,并向高层报告。
12. 适配器每发送一次帧就要执行一次CSMA/CD算法,适配器对过去发生的碰撞并无记忆功能
13. 以太网规定最小帧长为64字节(见14),即512比特,如果在争用期没有发生碰撞,那么后续的数据也不会冲突。(Note:争用期没发生碰撞表明对方站没有发送数据,对方站检测到有数据,也不会发送,所以后续的数据不会冲突)
14. 由于检测到冲突就不会再发送数据,所以但凡小于64字节的帧都是由于冲突而异常终止的无效帧。
15. 总线被占用的时间: TB+TJ+τ
(1). TB :A从发送数据到停止发送的时间
(2). TJ :人为干扰信号的持续时间
(3).τ:端到端的传播时延。
16. **帧间最小间隔为**9.6us。 目的:使接受端有时间处理数据帧,做好接收下一帧的准备
扩展包括物理层和数据链路层。
10BASE-T以太网两台主机之间的最大距离是200m,中间连接集线器。
利用光纤扩大主机和集线器的距离
多个集线器连成更大的以太网
多级集线器缺点
(1)连接主干集线器前,每个系是一个独立的碰撞域,任一时刻只允许一个主机发送数据,连接后假如某一个系发送数据,其他的系里就不能发送数据了
(2)集线器不能进行数据缓存,所以几个系的数据率不同时,只能以最小的数据率进行传输。
数据链路层扩展以太网要用到网桥,网桥对帧进行转发和过滤,工作在数据链路层的MAC子层。
网桥的内部结构
1. 两个以太网通过网桥连接起来,每一个以太网成为网段。
2. 网桥靠转发表来转发数据
3. 优点:
○ 过滤通信量,增大吞吐量
○ 扩大了物理范围
○ 提高可靠性,网络故障一般只影响个别网段
○ 可连接不同物理层、不同MAC子层和不同速率的以太网
4. 缺点:
○ 存储转发增加时延
○ 没有流量控制功能,可能会产生溢出,导致帧丢失
○ 广播风暴
5.网桥之间点到点的链路
透明网桥
1.自学习和转发(无添有更)
2.定时删除更新,反映当前网络的最新拓扑状态
3.采用生成树算法,使两台主机间只有一条路径,避免网桥引起兜圈子
源路由网桥
在发送帧时将详细的路由信息放在帧的首部中。
工作方式:全局发送发现帧,作探测之用,每个发现帧记录所经过的路由。到达目的站后沿着各自的路由返回源站,源站选择出最佳路由,以后发送时都会在帧头加入这一路由信息。
多接口网桥—交换机
实现虚拟局域网
虚拟局域网协议允许在以太网的帧格式中插入一个 4 字节的标识符,称为 VLAN 标记