【计算机网络】数据链路层知识点总结

参考教材《计算机网络(第五版)》谢希仁

一.数据链路层的任务
1.将在网络层交下来的IP数据报组装成帧
(1)封装成帧就是在一段数据的前后分别添加首部尾部,然后就构成了一个帧。
(2)首部和尾部一个重要的作用是进行帧定界。
(3)为了提高帧的传输效率,应当使帧的数据部分尽量大于首部和尾部。但数据部分不同的链路都有限度-最大传输单元。
在这里插入图片描述
在这里插入图片描述

2.透明传输:在两个相邻结点间的链路上传送以帧为单位的数据
(1)传输的数据中不允许出现用作帧定界的控制字符,否则会出现帧界定错误。
(2)如果传输的是文本文件,不管传输什么字符都可以通过,因此是透明传输。
在这里插入图片描述
(3)解决透明传输的问题:字节填充或字符填充
①发送端数据链路层在数据中出现控制字符SOH或EOT的前面插入一个转义字符ESC,其十六进制编码是0x1B
②接收端的数据链路层在数据送往网络层之前删除插入的转义字符
③如果转义字符也出现在数据中,那么应该在其之前插入转义字符。

3.每一帧包括数据和必要的控制信息(如同步信息、地址信息、差错控制以及流量控制信息等)。
(1)同步——控制信息使接收端能够知道一个帧从哪个比特开始和到哪个比特结束。
(2)差错控制——控制信息还使接收端能够检测到所接受到帧中有无差错。并且可以进行差错处理

(3)差错检测:传输过程中产生比特差错,在一段时间内,错误传输的比特占所传输比特总数的比率称为误码率BER,误码率与信噪比有很大关系。

(4)循环冗余检验的原理:发送端把数据划分为组,在每组数据后再添加供差错检测用的n位冗余码一起发送。冗余码是模2运算后的余数R,发送数据为2nM+R,共k+n位。

(5)帧检验序列FCS:在数据后面添加上冗余码称为帧检验序列FCS。对接受到的每一帧进行CRC检验,R=0就接收,R≠0就丢弃。
注意:CRC 是一种常用的检错方法,而 FCS 是添加在数据后面的冗余码。FCS 可以用 CRC 这种方法得出,但 CRC 并非用来获得 FCS 的唯一方法。

(6)除数P可以用生成多项式表示。
P(X)=X3+X2+1 P=1101
广泛使用的生成多项式有:
CRC-16=X16+X15+X2+1
CRC-CCITT=X16+X12+X5+1
CRC-32

(7)注意
①CRC只能做到无差错接受,但不能无差错传输。传输差错可能有两种情况,比特差错或帧丢失、帧重复和帧失序。
②要做到可靠传输,必须加上确认和重传机制。

4.数据链路层的简单模型
在这里插入图片描述
注意:H1和H2具有五层协议,而路由器只有三层协议

二.使用点对点信道的数据链路层
1.数据链路和帧
①链路(link)是一条无源的点到点的物理线路段,中间没有任何其他的交换结点。一条链路只是一条通路的一个组成部分。

②数据链路(data link) 除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。

③现在最常用的方法是使用适配器(拨号:调制解调器,以太网:局域网适配器)来实现这些协议的硬件和软件。

④一般的适配器都包括了数据链路层和物理层这两层的功能。

2.数据链路层的协议数据单元是帧,在结点和结点之间传递,结点可以是主机到路由器,也可以是路由器到路由器。

3.PPP协议
(1)PPP协议应满足需求
①简单:正确就接收,错误就丢弃,其他什么也不做。
②封装成帧
③透明性
④多种网络层协议
⑤多种类型链路:串行或并行,同步或异步,电或光。
⑥差错检测:立即抛弃有错误的帧,防止浪费网络资源。
⑦检测连接状态:自动检测链路是否正常工作
⑧最大传送单元:对每种类型的链路设置MTU,促进各种实现之间的互操作性。(数据部分1500字节,超出MTU的帧会被抛弃并返回错误)
⑨网络层地址协商

(2)PPP协议不需要的功能
①纠错:可由运输层TCP协议负责
②流量控制:TCP
③序号:不是可靠传输,不需要帧序号
④多点线路:只支持点对点
⑤半双工或单工链路:PPP只支持全双工

(3)PPP协议的组成
①一个将 IP 数据报封装到串行链路的方法。
②链路控制协议 LCP:建立、配置和测试数据链路的连接
③一套网络控制协议 NCP:支持不同的网络层协议,如IP、OSI、DECnet、AppleTalk

(4)PPP协议格式
首部四个字段和尾部两个字段,标志字段F=0x7E,地址字段A只置为0x03,控制字段C通常设置为0x03。
在这里插入图片描述
(5)字符填充
①将信息字段中出现的每一个 0x7E 字节转变成为 2 字节序列(0x7D, 0x5E)。
②若信息字段中出现一个 0x7D 的字节, 则将其转变成为 2 字节序列(0x7D, 0x5D)。
③若信息字段中出现 ASCII 码的控制字符(即数值小于 0x20 的字符),则在该字符前面要加入一个 0x7D 字节,同时将该字符的编码加以改变。如出现0x03就把它转变成(0x7D,0x23)。

(6)零比特填充
①PPP 协议用在 SONET/SDH 链路时,是使用同步传输(一连串的比特连续传送)。这时 PPP 协议采用零比特填充方法来实现透明传输。
②在发送端,只要发现数据字段有 5 个连续 1,则立即填入一个 0。不会出现6个连续的1
③接收端对帧中的比特流进行扫描。每当发现 5 个连续1时,就把这 5 个连续 1 后的一个 0 删除。这样可以避免数据字段包含F字符(0x7E)引起帧边界的错误判断。

在这里插入图片描述
(7)PPP协议工作状态
在这里插入图片描述
三.使用广播信道的数据链路层
1.局域网的数据链路层
(1)802.3定义的链路层两个子层
在这里插入图片描述
2.适配器的作用
网络接口板又称为通信适配器(adapter)或网络接口卡 NIC (Network Interface Card),或“网卡”。
在这里插入图片描述
3.CSMA/CD协议
(1)为了通信方便以太网采取了两种重要措施
①采用较为灵活的无连接工作方式
②以太网发送的数据都使用曼彻斯特编码(缺点是所占频宽比原始提高一倍)

(2)CSMA/CD(载波监听多点接入/碰撞检测)
①“多点接入”表示许多计算机以多点接入的方式连接在一根总线上。
②“载波监听”是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞。
③“碰撞检测”就是计算机边发送数据边检测信道上的信号电压大小。每一个正在发送数据的站,一旦发现总线上出现了碰撞,就要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间后再次发送。碰撞的结果是两个帧都无用。
在这里插入图片描述
(3)重要特性
①以太网不能进行全双工通信而只能进行双向交替通信(半双工通信)。
②每个站在发送数据之后的一小段时间内,存在着遭遇碰撞的可能性。
③这种发送的不确定性使整个以太网的平均通信量远小于以太网的最高数据率。

(4)争用期
①最先发送数据帧的站,在发送数据帧后至多经过时间 2τ(端到端往返时延)就可知道发送的数据帧是否遭受了碰撞。
②以太网的端到端往返时延 2τ称为争用期,或碰撞窗口。
③经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发生碰撞。

(5)二进制指数类型退避算法
①发生碰撞的站在停止发送数据后,要推迟(退避)一个随机时间才能再发送数据。
②目的:重传时再次发生碰撞的概率减小。
确定基本退避时间,一般是取为争用期 2τ。
定义参数 k ,k≤10,即k = Min[重传次数, 10]从整数集合[0,1,…, (2k-1)]中随机地取出一个数,记为 r。重传所需的时延就是 r 倍的基本退避时间。
③当重传达16次仍不能成功时即丢弃该帧,并向高层报告。

(6)强化碰撞
①发送数据的站一旦发现了碰撞时:立即停止发送数据,再继续发送32或48bit的人为干扰信号,让所有用户知道现在发生碰撞。另外以太网还规定了帧间最小间隔9.6us,相当于96比特时间。
在这里插入图片描述
四.使用广播信道的以太网
1.使用集线器的星型拓扑
①双绞线的以太网采用星形拓扑,在星形的中心则增加了一种可靠性非常高的设备,叫做集线器(hub)
②每个站需要用两对双绞线,分别用于发送和接收

2.具有三个接口的集线器
①使用集线器的以太网在逻辑上仍是一个总线网,各工作站使用的还是 CSMA/CD 协议,并共享逻辑上的总线,只能有一台主机发送数据。
②工作在物理层,很像一个多接口的转发器,每个接口仅转发比特0或1,不进行碰撞检测
在这里插入图片描述
在这里插入图片描述
3.以太网的信道利用率
(1)以太网发送一帧所需的平均时间:一个帧从开始发送,经可能发生的碰撞后,将再重传数次,到发送成功且信道转为空闲(即再经过时间τ使得信道上无信号在传播)时为止。
(2)帧长为 L (bit),数据发送速率为 C (b/s),因而帧的发送时间为 L/C = T0 (s)
在这里插入图片描述
(3)参数a:要提高以太网信道利用率就必须减小τ与T0的比,定义参数a=τ/T0,当a趋于0,表示一旦发生碰撞就可以检测,并立即停止发送,a越大表明争用期所占的比例增大,每发生一次碰撞就浪费许多信道资源。

(4)对以太网的要求
当数据率一定时,以太网的连线的长度受到限制,否则τ的数值会太大。
以太网的帧长不能太短,否则 T0 的值会太小,使 a 值太大。

(5)信道利用率最大值Smax
①在理想化的情况下,以太网上的各站发送数据都不会产生碰撞(这显然已经不是 CSMA/CD,而是需要使用一种特殊的调度方法),即总线一旦空闲就有某一个站立即发送数据。
②发送一帧占用线路的时间是 T0 +τ,而帧本身的发送时间是 T0。于是我们可计算出理想情况下的极限信道利用率 Smax为:
在这里插入图片描述
意义:只有当参数a远小于1才能得到尽可能高的极限信道利用率。

4.以太网的MAC层
(1)MAC层的硬件地址
①在局域网中,主机的硬件地址又称为物理地址,或 MAC 地址。6个字节。IEEE 的注册管理机构 RA 负责向厂家分配地址字段的前三个字节(即高位 24 位,组织唯一标识符OUI)。
②后三个字节(即低位 24 位)由厂家自行指派,称为扩展标识符,必须保证生产出的适配器没有重复地址。
③一个地址块可以生成224个不同的地址。
这种 48 位地址称为 MAC-48,它的通用名称是EUI-48。
④“MAC地址”实际上就是适配器地址,固化在网卡的ROM中。

(2)适配器检查MAC地址
①适配器从网络上每收到一个 MAC 帧就首先用硬件检查 MAC 帧中的 MAC 地址。
②如果是发往本站的帧则收下,然后再进行其他的处理。
③否则就将此帧丢弃,不再进行其他的处理。

(3)MAC的帧格式
①两种标准:DIX Ethernet V2 标准和IEEE 802.3 标准
最常用的MAC帧是以太网V2格式。
②以太网的MAC帧格式
在这里插入图片描述
③以太网V2的MAC帧格式
目的地址字段6字节;源地址字段6字节;类型字段2字节;数据字段46~1500字节;当数据字段长度小于46,需要加入填充字段;末尾FCS帧检验序列用CRC校验。

注:
①为了达到比特同步,在传输媒体上实际传送的要比 MAC 帧还多 8 个字节。
②MAC帧的最短长度是512bit(64字节),原因是:因此所发送帧的最短长度应当要保证在该帧发送完毕前,必须检测到可能最晚来到的冲突信号,该往返时间为2τ,相当于512bit。
③数据字段最短长度为46字节=64字节-18字节(目的地址(6)+原地址(6)+协议类型(2)+FCS(4))
④MAC帧中没有标示帧长度
⑤无效的MAC帧:长度不在46~1500之间,无效就丢弃
⑥帧间最小间隔:9.6μs

五.扩展局域网
1.利用多个集线器可以练成更大的局域网

2.用集线器组成更大的局域网都在一个碰撞域中

3.用集线器可以扩展局域网:
①优点:扩大范围,跨碰撞域通信。
②缺点:总吞吐量未提高,不同的碰撞域使用不同的数据率不能用集线器将他们连起来,因为hub没有缓存。

4.数据链路层扩展局域网
①在数据链路层扩展局域网是使用网桥
②网桥工作在数据链路层,它根据 MAC 帧的目的地址对收到的帧进行转发。
③网桥是一个聪明的集线器
网桥具有过滤帧的功能。当网桥收到一个帧时,并不是向所有的接口转发此帧,而是先检查此帧的目的 MAC 地址,然后再确定将该帧转发到哪一个接口

5.网桥
(1)网桥内部结构:
在这里插入图片描述
(2)网桥的好处:过滤通信量,增大吞吐率,扩大物理范围和主机数量,提高可靠性。可以互连不同物理层、不同MAC子层和不同速率局域网。

(3)网桥使各网段成为隔离开的碰撞域
(4)网桥的缺点:增加时延,在MAC子层没有流量控制功能,广播风暴。
(5)网桥不改变它转发的帧的源地址
(6)网桥和集线器不同,网桥在转发帧之前必须执行CSMA/CD算法,若过程中出现碰撞就必须停止发送和退避。集线器在转发帧时,不对传输媒体进行检测。

6.透明网桥
(1)即插即用,标准为IEEE802.1D
(2)通过自学习算法处理收到的帧和建立转发表
建表依据:若从 A 发出的帧从接口 x 进入了某网桥,那么从这个接口出发沿相反方向一定可把一个帧传送到 A。
②网桥每收到一个帧,就记下其源地址和进入网桥的接口,作为转发表中的一个项目。
③在转发帧时,则是根据收到的帧首部中的目的地址来转发的。这时就把在“地址”栏下面已经记下的源地址当作目的地址,而把记下的进入接口当作转发接口。
(3)网桥转发表中的信息:地址、接口和帧进入该网桥的时间。在转发表中只保留网络拓扑的最新状态信息
(4)透明网桥使用了生成树算法,生成树的得出为找到子集使得整个连通的网络中不存在回路,即在任何两个站之间都只有一条路径。

7.多接口网桥——以太网交换机
(1)特点
①全双工
②每一对互相通信的主机可以进行无碰撞传输
③专用交换结构芯片
(2)虚拟局域网使用的以太网帧格式
在这里插入图片描述
六.扩展局域网
1.100BASE-T以太网:802.3标准。争用期变为5.12μs,帧时间间隔变为0.96μs
2.吉比特以太网:
载波延伸方法:若发送的帧长不足512字节时,就用一些特殊字符填充在帧的后面,使其长度达到512字节(最短帧长)。

  • 5
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值