理解数据链路层的地位与作用,三个基本问题
链路:从一个结点到相邻结点的一段物理线路(有线或无线),中间没有任何其他交换结点
数据链路:物理链路 + 通信协议
数据链路层的地位:局域网中的主机、交换机必须实现数据链路层;网络中的主机、路由器必须实现数据链路层。
数据链路层的作用:网络中两个主机发送数据所经过的网络可以是多种不同类型的,不同类型网络的链路层可能采用不同的协议
三个基本问题:
封装成帧:在一段数据的前后分别添加首部和尾部,构成一个帧。帧定界符:SOH(帧开始符),EOT(帧结束符)
透明传输:若帧出现定界符,在其前面用字符填充法
差错检测:循环冗余检验的原理:在发送端,计算 CRC 冗余码(在待发送数据(k 位)后面再添加供差错检测用的 CRC 冗余码(n 位),实际发送 k+n 位);在接收端:利用 n 位 CRC 冗余码对收到的数据进行检验
用除数 P 再除去收到的数,若余数 R=0,则证明这个帧无差错,接受
2、使用点对点信道的链路层:信道特点,PPP 帧格式,零比特填充法和字节填充法,差错检测(CRC)
信道特点:点对点信道使用一对一的点对点通信方式。通常使用 PPP 协议,用户通过 PPP 协议接入 ISP,再接入互联网
PPP 帧格式:
图中 F 为标志字段表示开始和结束,是 PPP 帧的定界符;A 和 C 实际上并没有携带 PPP 帧的信息;协议字段中的不同数据表示该帧的数据部分的作用不同(背)
零比特填充法:同步传输(一连串比特连续传送) 在原始数据中出现连续 5 个 1 时在其后面加一个 0,在接收端收到数据时将这个 0 删去
字节填充法:异步传输(逐个字符传送) 在原始数据中若出现开始符 7E 修改为 7D5E; 出现 7D 修改为 7D5D; 出现 03 修改为 7D23;
差错检测(CRC) : 同上面的差错检验,用冗杂码进行加密检验
使用广播信道的链路层: 信道特点,CSMA/CD 协议,MAC 帧格式,最小帧长和最大帧长
信道特点:
局域网使用广播信道;
多台主机共享局域网内软硬件资源;
若多个设备在共享的广播信道上同时发送数据,则会彼此干扰,导致发送失败
CSMA/CD 协议:载波监听多点接入 / 碰撞检测
“多点接入”:使用广播信道的总线型网络
“载波监听”:不停地检测信道(发送前、发送中)
“碰撞检测”:检测到碰撞→立即停止发送→等待随机事件后再发送
争用期 = 以太网的端到端往返时间 2τ
10Mbit/s 以太网的争用期 2τ=51.2μs。
最先发送数据的站,在争用期内没有检测到碰撞,则这次发送肯定不会发生碰撞
如果在争用期内发生发生碰撞,需要用截断二进制支书退避算法来计算等待时间。即退避时间 = r 倍的争用期 = r*2τ,r 为离散集合【0,1,…,2^k-1】中的一个随机数。k=Min[重传次数, 10]。当重传次数 = 16 次,仍不能成功时即丢弃该帧,并向高层报告
MAC 帧格式:类型:0x0800(IP 数据报)、0x0806(ARP 报文)
最小帧长和最大帧长:最小:64,最大 1518 主要取决于数据部分的长度
网卡的功能和 MAC 地址,帧的类型(单播帧,广播帧,多播帧)
网卡的功能:计算机通过网络适配器(网卡)和局域网进行通信
MAC 地址:MAC 地址固化在网卡的 ROM 中,全球唯一。由 6 个字节组成,前 3 个字节由 IEEE 注册管理机构 RA 分配,后 3 个字节由厂家自行指派。 注意:当主机或路由器安装有多个适配器,就有多个 “MAC 地址” 帧的类型(单播帧,广播帧,多播帧):
一台主机发送单播帧,仅当帧的目的地址与本网卡地址相同时才接收
一台主机发送广播帧,其他主机都接收该帧
一台主机发送多播帧,即发送给本局域网上一部分站点
比较集线器与交换机,交换机的自学习功能及转发帧的过程
比较集线器与交换机:
集线器:物理上星型,逻辑上总线型;每个主机到集线器的距离不超过 100m;可以使用光纤扩展主机和集线器之间的距离,使用集线器扩展以太网(前提是连接的多个以太网段的速率要相同);采用 CSMA/CD,不具有交换机的自学习能力,发送数据采用广播的方式,整个集线器是个碰撞域,不可以缓存帧
交换机:以太网交换机工作在数据链路层,处理对象是帧;全双工,不使用 CSMA/CD;向某个接口转发帧;每一个接口是个碰撞域;可缓存帧,可自学习。
半双工数据传输允许数据在两个方向上传输,但是同一时刻只允许一个方向;全双工也允许在两个方向传输,但同时刻可以同时接受和发送信息
交换机的自学习功能及转发帧的过程:
开始时,交换表是空的
收到第一个帧后,广播发到其他接口,非目标主机会把收到的帧丢弃,并记录这个接口对应的 MAC 地址
当一个接口发送帧时,先从原接口进入,查找交换表是否有目的地址的记录,如果有就直接发送;如果没有就广播发帧。
交换表上的记录会存在有效时间,过了有效时间会清除记录,以免接口更换主机或者主机更换网卡
如果两个交换机有两个接口相互连接,会利用生成树协议,在逻辑上删除一个接口
广播域和碰撞域,VLAN,生成树协议 STP
广播域:指网络中一个站点发出广播帧所影响的范围 碰撞域:指网络中一个站点发出的单播帧会与其他站点发出的单播帧产生碰撞的范围;任一个时刻在一个碰撞域中只能有一个主机发送数据 VLAN:即虚拟局域网,不改变网络的物理局域网,在逻辑上划分虚拟局域网。可以基于交换机端口,基于主机 MAC 地址,基于主机 IP 地址(交换机只在 802.1Q 标记相同的接口之间转发帧)划分 VLAN
生成树协议 STP:不改变网络的物理拓扑,但在逻辑上切断某些链路,消除回路