数据链路层主要处理单个链路上如何传输数据,并且向网络层向上提供服务
主机拥有全部的计算机网络结构,路由器只有一部分
各个路由器之间由物理层连接
红线为发送的信息
在帧的传输过程中出现了误码,可以通过检错码进行检验
可靠传输(不仅仅需要在数据链路层要考虑的问题)
单独讲解,详见该博客
其他问题:使用广播信道的数据链路层
当A给C传输数据时,如何确保C一定能够接收到数据
通过添加MAC帧地址进行发送
封装成帧是指数据链路层给上层交付的协议数据单元添加帧头和帧尾使其成为帧
透明传输
指数据链路层对上层交付的传输数据没有任何限制,就好像数据链路层不存在
(例如帧定界符与其内容相同的问题)
红色:真正的帧定界符
灰色:扫描到相同内容时插入转义字符
接收结果时扫描到转义字符将其剔除,还原为原本的内容
为了提高帧的传输效率,应使帧的数据部分的长度尽可能的大
每种数据链路层协议都规定了帧的数据部分的上限,即最大传输单元:MTU
应用场景:
因特网
广域网
对于各种协议数据报的封装方法(封装成帧)
帧格式
链路控制协议LCP
用于建立配置已经测试数据链路的连接
一套网络控制协议NCPs
每一个协议支持不同的网络层协议
协调多个发送与接收站点在一个通路里不冲突的使用
媒体接入控制(MAC)的分类:
复用和多址的概念:
某种程度上,多址可以看做是复用的应用
信道复用
分类
可以在同样的时间使用不同码形,因此各个用户之间不会造成干扰
应用举例:
总线局域网使用的无限控制协议
载波监听多址接入/碰撞检测
早期的以太网使用该协议进行检测
术语
衡量是否可以发射信号的标准
τ:单程端到端的传播时延
规定最小帧长为64字节
最小帧长可以保证在帧发送完成之前就检验到该帧的发送过程中是否遭遇碰撞,如果在争用期(64字节)没有检测到碰撞,后续数据一定不会碰撞
所以小于64字节的帧都将被抛弃
以太网V2的MCA帧尾1518字节
插入VLAN标记后为1522字节
如果帧太长,总线总会处于繁忙状态
截断二进制指数退避算法
例:
若多次发生重传,表示有较多的主机参与信道竞争
如果重传16次不成功,则丢弃改帧,并向高层汇报
无限局域网使用的无线控制协议,因为无线的不稳定性,还需使用停止等待协议对信息进行确认
载波监听多址接入/碰撞避免
不使用碰撞检测技术(CD),主要原因是无线信道的信号强度较小,检测碰撞较难,并且存在隐蔽站问题
所以802.11无线局域网使用CSMA/CA协议
术语
所有站点必须在持续检测到信道空闲一段时间后才能发送帧
常用的两种:短帧间间隔SIFS(28μs)、DCF间间隔DIFS(128μs)
工作原理
例:
802.11标准允许对信道进行预约,使用请求发送(RTS)与允许发送(CTS)表示对信道进行预约
以太网的MAC子层所使用的地址
帧中必须携带目的地址和接收地址
第一字节:
b0 ->
由B发出,填入目的地址与源地址,该信号沿链路传播
由A发出,填入多播地址与源地址,该信号沿链路传播
在每个主机中存有多播列表
b1->
广播MAC地址举例
由B发出,填入广播地址与源地址,该信号沿链路传播
TCP/IP的网际层所使用的地址
属于TCP/IP体系结构,作用是通过IP地址获取设备的MAC地址
tips:ARP协议只能在一个链路或者一个网路上使用
使用集线器HUB取代同轴电缆,因为其更加可靠
在交换机中缓存后依次送转发给目的主机
将MAC地址记录在交换机的表中
如果找不到B,则进行转发帧
B收到了该帧,对其进行回应:
该步骤循环往复
就可以自动学习MAC地址与接口的对应关系
例:
为了提高以太网可靠性,又要避免网络环路带来的各种问题,所以使用树形结构
例如:
将一下物理连接的网络自动变为一个没有闭合环路的网络
因为使用多个交换机互联会产生巨大的广播域,可能会导致:
所以使用VLAN:将局域网内的设备划分成与物理位置无关的逻辑组的技术:
首先需要在以太网交换机上实现:
对原本的MAC格式进行了扩展,插入了4字节的VLAN
新概念:缺省 VLAN ID,在华为交换机上简称为PVID
有以下几种:
例:
Trunk(交换机之间的互联端口)
例:
Hybrid(华为交换机特有的)