概述
数据链路层
文章目录
- 数据链路层
- 一、基础知识
- 二、使用点对点信道的数据链路层
- 1. 数据链路层传送的是帧
- 2. 三个基本问题
- (1) 封装成帧
- (2) 透明传输
- (3) 差错检测
- 三、点对点信道使用的PPP协议
- 1. 用户到ISP的链路使用PPP协议
- 2. PPP协议的帧格式
- 3. 数据链路层的两个子层
- 四、使用广播信道的数据链路层
- 五、广播信道使用的CSMA/CD协议
- 1. 以太网(即局域网)是将许多计算机都连接到一根总线上
- 2. CSMA/CD技术的介绍
- 3. 传播时延对载波监听的影响
- 4. 争用期
- 5. 二进制指数类型退避算法
- 6. 强化碰撞
- 六、使用广播信道的以太网
- 1. 使用集线器的双绞线以太网
- 2. 集线器的特点
- 3. 具有三个接口的集线器
- 4. 以太网的信道利用率
- 七、以太网的MAC层
- 1. MAC层的硬件地址又称为物理地址或MAC地址
- 2. MAC帧的格式(以太网的帧格式)
- 八、扩展的局域网
- 1. 在物理层扩展局域网
- 2. 在数据链路层扩展局域网
- 3. 网桥和集线器的不同
- 4. 透明网桥
- 5. 网桥的自学习算法和建立转发表
- 6. 源路由网桥
- 7. 多接口网桥
- 8. 虚拟局域网
- 9. 虚拟局域网使用的以太网帧格式
一、基础知识
-
数据链路层使用的信道主要是以下两类:
(1) 点对点信道:
信道上无其它设备,只有交流的双方
(2) 广播信道:
广播信道上连接的主机很多,不仅交流的双方 -
数据链路层向网络层提供服务,主要作用是加强物理层传输原始比特流的功能
-
本章研究思想
二、使用点对点信道的数据链路层
1. 数据链路层传送的是帧
2. 三个基本问题
(1) 封装成帧
-
就是在一段数据的前后分别添加首部和尾部,这样就构成了一个帧
-
用控制字符进行帧定界的方法举例:
-
接收方收到帧首、帧尾才认为是一条完整的数据,若不完整,丢弃
(2) 透明传输
-
无论什么样的比特组合,都能在链路上传输,会导致假如传输的数据中有帧结束符,使 得接收端认为是结束的标志,而实际上一帧并未结束
-
解决透明传输的问题:字符(字节)填充
① 发送端在传输的数据中出现帧定界符”SOH” ”EOT”的前面插入一个转义字符”ESC”
② 接收端接收数据之后删除插入的转义字符”ESC”
③ 如果传输的数据中也有转义字符,则应该在此转义字符之前再插入一个转义字符, 当接收端收到连续的两个转义字符时,就删除前面的那一个
(3) 差错检测
-
数据在传输的过程中可能会产生比特差错:1可能变为0,0可能变为1
-
数据链路层传输的帧使用了循环冗余检验CRC技术,计算过程如下:
-
CRC是一种常用的检错方法,FCS(帧检验序列)是添加在数据后面的冗余码
-
接收端对收到的每一帧进行CRC检验,即将收到的数据除以原除数(此题为1101):
① 若得出余数等于0,此帧无差错,接收
② 若得出余数不等于0,此帧有差错,丢弃
③ 此种检测方法并不能确定究竟是哪一个比特出现差错
④ 使用足够多位数的除数P,那么检测不到差错的概率就会很小 -
使用CRC技术丢弃的帧并不会重传,若要做到可靠传输(发送什么就收到什么),必须加上 确认和重传机制
三、点对点信道使用的PPP协议
1. 用户到ISP的链路使用PPP协议
2. PPP协议的帧格式
-
标志字段F = 0x7E,用来表示帧的开始和结束
-
地址字段A固定,为A = 0xFF,地址地段实际上并不起作用
-
控制字段C固定,为C = 0x03
-
所有的PPP帧都是整数字节
-
解决透明传输问题:
当信息部分出现标志字段F时,会被误判为此帧结束
① 字符填充
② 零比特填充
- PPP协议不使用重传机制,出现差错的帧直接丢弃
3. 数据链路层的两个子层
(1) 逻辑链路控制LLC子层
(2) 媒体接入控制MAC子层
(3) 一般不考虑LLC子层
四、使用广播信道的数据链路层
计算机通过适配器(网卡)和局域网进行通信
五、广播信道使用的CSMA/CD协议
1. 以太网(即局域网)是将许多计算机都连接到一根总线上
- 总线上的每一个工作的计算机都能检测到B发送的数据信号
- 只有D的地址与数据帧目的地址一致,因此只有D可以接收这个数据帧
- 其余计算机丢弃此帧,在总线上实现了一对一通信
- 以太网不用先建立连接就可以直接发送数据,也不用接受方发回确认
- 以太网发现帧错误就直接丢弃,不会重传
- 以太网发送的数据都使用曼彻斯特编码
2. CSMA/CD技术的介绍
- CS表示多点接入:多个计算机连接在一条总线上
- MA表示载波监听:每一个站在发送数据之前都会检测一下总线上是否有其他计算机在发送数 据,如果有,则此站暂时不要发送数据,以免发生碰撞
- CD表示碰撞检测:计算机边发送数据边检测信道上的信号电压大小,当几个站同时发送数据 时,总线上的电压会增大,当检测到总线的电压超过一定值时,表示最少 有两个站在同时发送数据,表示产生了碰撞
- 检测到碰撞后,正在发送数据的站就要立即停止发送,等待一段随机时间后再次发送
- 使用CSMA/CD协议的以太网不能进行全双工通信而只能使用半双工通信
3. 传播时延对载波监听的影响
4. 争用期
- 最先发送数据的站点,在发送数据帧后最多经过2τ(两倍的端到端往返时间)就可以检测到是 否发生了碰撞
- 两倍的端到端往返时间2τ称为争用期
- 在争用期内未检测到碰撞,则此次发送一定不会发生碰撞
- 争用期内10mb/s的以太网可发送64字节,若前64字节未发生碰撞,则后续一定不会碰撞
- 以太网最短有效帧长为64字节,凡是长度小于64字节的帧都属于无效帧
5. 二进制指数类型退避算法
检测到发生碰撞的站需要立即停止发送数据,推迟(退避)随机时间才能再次发送数据
此随机时间的计算方式如下:
- 确定基本退避时间,一般是争用期2τ
- 确定重传次数k,k = min[重传次数,10],表示重传超过10次,则k值总是取10
- 从整数集合[0, 1, …, (2k - 1)]中随机取出一个数,记为r
- 则重传需等待的随机时间为r * 基本退避时间2τ
- 当重传16次依旧不能成功时则丢弃该帧,并向高层报告
6. 强化碰撞
当发送数据的站一旦检测到发生了碰撞:
- 立即停止发送数据
- 再继续发送若干比特的人为干扰信号,以便让所有用户都知道已经发生了碰撞
六、使用广播信道的以太网
1. 使用集线器的双绞线以太网
2. 集线器的特点
- 使用集线器的以太网仍然是一个总线网,各工作站使用的是CSMA/CD协议,并共享总线
- 集线器很像一个多接口的转发器,工作在物理层
3. 具有三个接口的集线器
4. 以太网的信道利用率
- 此帧的发送时间用T0表示,τ表示传输时间
- 以太网信道利用率使用参数a表示,a = τ/ T0
- 信道利用率a越小,表示一发生碰撞可以立即检测出来,故利用率很高
- 信道利用率a越大,利用率越低
- 理想情况下,以太网的极限信道利用率Smax为:
七、以太网的MAC层
1. MAC层的硬件地址又称为物理地址或MAC地址
2. MAC帧的格式(以太网的帧格式)
-
当数据字段的长度小于46字节时,应当在数据字段的后面加入整数字节的填充字段,以保 证以太网的MAC帧长不小于64字节
-
接收端通过帧的长度检查是否为无效帧,对于无效帧,直接丢弃,不重传
-
帧间最小间隔为96bit的发送时间(9.6us),一个站在检测到总线开始空闲后,还要等待9.6us 才能再次发送数据,这样做是为了使刚刚收到数据帧的站清理缓存,方便接收下一帧
八、扩展的局域网
1. 在物理层扩展局域网
使用集线器扩展局域网,使多个小局域网扩展成更大的局域网
-
优点:
(1) 可以进行跨碰撞域的通信
(2) 扩大了局域网覆盖的地理范围 -
缺点:效率降低,原本一个小碰撞域中通信时,同时另一个小碰撞域中也可通信,而成为大 的碰撞域之后任何一个小碰撞域中通信时,其余都不可通信(因为连接在一起)
2. 在数据链路层扩展局域网
使用网桥扩展局域网,网桥根据MAC帧的目的地址对帧进行转发。网桥并不是向所有的接口转 发此帧,而是先检查此帧的目的地址,再转发到某一个接口,网桥内部结构:
- 优点:过滤通信量,使各网段成为隔离开的碰撞域,如图:
- 缺点:存储转发增加了时延
3. 网桥和集线器的不同
(1) 集线器工作在物理层,网桥工作在数据链路层
(2) 集线器转发帧时不会对传输媒体进行检测,网桥转发帧之前必须执行CSMA/CD算法
4. 透明网桥
透明指的是局域网的站点并不知道发送的帧经过哪几个网桥,网桥对于站点来说不可见
5. 网桥的自学习算法和建立转发表
(1) 网桥自学习步骤
(2) 转发表的建立过程举例
(3) 转发表中登记三个信息:地址、接口、帧进入网桥的时间
记录时间可使得网桥中的转发表能反映当前网络的最新状态
(4) 网桥的自学习和转发帧的步骤归纳
6. 源路由网桥
(1) 源站以广播方式(每个路径都发送)发送帧,每个帧将所有可能通往目的站的路径记录下来
(2) 帧到达目的站之后就原路返回,源站得知所有的路线后,选择一个最佳路线,之后凡从此 源站向该目的站发送的帧,都走这条最佳路线
(3) 综上所述,源路由网桥在发送帧时将最佳的路由信息保存在帧的首部
7. 多接口网桥
(1) 实质上是一个以太网交换机,故交换机工作在数据链路层
(2) 以太网交换机每个接口都直接与主机或集线器相连,并且采用全双工方式通信
(3) 以太网交换机优点:独占传输媒体的带宽,若使用共享式以太网,N个用户的带宽只有总带 宽的N分之一,如上图所示
8. 虚拟局域网
虚拟局域网VLAN是由一些局域网网段构成的与物理位置无关的逻辑组,如图:
- B1发送数据时,工作站B2、B3可收到信息,其余站点收不到信息
- VLAN(虚拟局域网)限制了广播通信时接收信息的工作站数,提升了性能
9. 虚拟局域网使用的以太网帧格式
最后
以上就是专注缘分为你收集整理的计算机网络之数据链路层数据链路层的全部内容,希望文章能够帮你解决计算机网络之数据链路层数据链路层所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复