概述
- 链路就是从一个结点到相邻结点的一段物理线路,而中间没有任何其他的交换结点。
- 数据链路是指把实现通信协议的硬件和软件加到链路上,就构成了数据链路
数据链路层以帧为单位传输和处理数据。
三个重要问题
封装成帧
指数据链路层给上层交付的协议数据单元添加帧头和帧尾使之成为帧。
帧头和帧尾中包含有重要的控制信息,其作用·之一是帧定界
透明传输是指数据链路层对上层交付的传输数据没有任何,就好像数据链路层不存在一样。
- 对于面向字节的物理链路使用字节填充的方法实现透明传输
- 对于面向比特的物理链路使用比特填充的方法实现透明传输
为了提高帧传输效率,应当使帧的数据部分的长度尽可能大一些。但是设计了最大传输单元为MTU
差错检测
在一段时间内,传输错误的比特占所传输比特总数的比特率称为误码率BER
使用差错检测码来检测数据在传输过程中是否产生了比特差错,是数据链路层所要解决的重要问题之一。
但是检错码只能检测出错误,但是不能定位错误。
-
奇偶校验
在待发送数据后面添加1位奇偶校验位,使整个数据(包括所添加的校验位在内)中的“1”的个数为奇数(奇校验)或偶数(偶校验)
如果有奇数个位发生误码,则奇偶性发生变化,可以检查出误码
如果有偶数个位发生误码,则奇偶性不发生变化,不可以检查出误码
因此其漏检率很高,一般不会采用。
-
循环冗余校验CRC
其漏检率很低,在数据链路层中广泛使用。
收发双方约定好一个生成多项式G(x)
发送方基于待发送的数据和生成多项式计算出差错检测码(冗余码),将其添加到待传输数据后面一起传输。
接收方通过生成多项式来计算收到的数据是否产生了误码。
可靠传输
从整个计算机网络体系结构来说,传输差错还包括分组丢失,分组失序,分组重复。这些一般不会出现在数据链路层,而是出现在其上层。
可靠传输服务并不仅仅局限于数据链路层,其他各层均可选择实现可靠传输。
- TCP向其上层提供面向连接的可靠传输服务
- UDP向其上层提供无连接,不可靠传输服务
- IP向其上层提供无连接,不可靠传输服务
一般情况下,有线链路的误码率比较低,为了减少开销,并不要求数据链路层向上提供可靠传输服务。即使出现了误码,可靠传输的问题由其上层处理。
无线链路易受干扰,误码率比较高,因此要求数据链路层必须向上层提供可靠传输服务。
- 点对点协议-ppp协议是目前使用最宽泛的点对点数据链路层协议。
主要由对各种协议数据报的封装方法(封装成帧)、链路控制协议LCP 用于建立配置以及测试数据链路的连接、一套网络控制协议NCPs 其中的每一个协议支持不同的网络层协议
使用广播信道的数据链路层
数据链路层的互连设备
数据链路层的广播信道与互连设备
在网络通信的模型中,数据链路层位于网络层和物理层之间,负责在两个相邻的网络节点之间传输数据帧。数据链路层的主要任务包括错误检测和纠正、流量控制以及链路管理。在这一层中,广播信道和互连设备扮演了至关重要的角色,这两者对于数据链路层的工作效率和网络的可靠性都有着直接影响。
媒体接入
媒体接入控制-动态接入控制-随机接入
- CSMA是指载波监听多址接入,并不使用确认机制
- CSMA/CD是指载波监听多址接入/碰撞检测,是对CSMA的改进,是早期共享以太网的信道访问控制协议,并不使用确认机制。
- CSMA/CA是指载波监听多址接入/碰撞避免,是802.11局域网采用无线信道访问控制协议。802.11局域网在使用CSMA/CA的同时,还使用停止-等待协议。这是因为无线信道的通信质量远不如有线信道,因此无线站点每发送完一个数据帧后,要等到收到对方的确认帧后才能继续发送下一帧。
- CDMA是指码分多址,属于静态划分信道,是物理层的信道复用技术 ,不属于MAC协议。
MAC地址
- 在每个主机发送的帧中必须携带标识发送主机和接收主机的地址。由于这类地址是用于媒体接入控制MAC,因此这类地址被称为MAC地址
- MAC地址被固化在网卡的电可擦可编程只读存储器EEPROM中,因此MAC地址被称为硬件地址,MAC地址有时也被称为物理地址。
集线器与交换机区别
以太网交换机生成树协议STP
生成树协议STP可以在增加冗余链路来提高网络可靠性的同时又避免网络环路带来的各种问题
不论交换机之间采用怎么样的物理连接,交换机都能自动计算并构建一个逻辑上没有环路的网络,其逻辑拓扑结构必须是树形的,最终生成的树形逻辑拓扑要确保连通整个网络,当首次连接交换机或网络物理拓扑发生变化时,交换机都将进行生成树的重新计算。
- Access:
连接用户计算机
只能属于一个VLAN
PVID与端口所属VLAN的ID相同,默认为1
接收处理方法:一般只接收未打标签的普通以太网帧,并给其打标签。
发送处理方法:如果帧中的VID等于端口PVID,则去掉标签并转发,否则丢弃。 - Trunk
交换机之间或交换机与路由器之间的连接
可以属于多个VLAN
用户可以设置PVID,默认为1
接收处理方法:接收已打标签的帧,接收未打标签的帧,根据端口的PVID值给帧打标签
发送处理方法:帧中VID等于PVID,去掉标签再转发。帧中VID不等于端口PVID,直接转发 - Hybrid
交换机之间、交换机与路由器之间、交换机与用户计算机之间的连接
可以属于多个VLAN
用户可以设置PVID,默认为1
接收处理方法:接收已打标签的帧,接收未打标签的帧,根据端口的PVID值给帧打标签
发送处理方法:查看数据帧中的VID是否在端口的“去标签”列表中,如果存在,则去掉标签再转发。如果不存在直接转发。