提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 数据链路层
- MAC地址
- ARP协议(地址解析协议)
- 封装成帧与透明传输
- 差错控制
- 数据链路层的流量控制和可靠传输
- **停止等待协议(Stop-and-Wait)**![请添加图片描述](https://img-blog.csdnimg.cn/98a5028e1d93483eb8f67e195d9840aa.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAenpjX2N6enp6,size_20,color_FFFFFF,t_70,g_se,x_16)
- 后退N帧协议(GBN)
- 选择重传协议(SR)
- 介质访问控制技术(就是让节点之间的通信不会进行相互干扰)
- 局域网 LAN
- 以太网
- 广域网 WAN
- HDLC协议(High-Level Data Link Control)
- 链路层设备
- 冲突域和广播域
数据链路层
以太网规定,一组电信号构成一个数据包,叫做”帧”(Frame)。每一帧分成两个部分:标头(Head)和数据(Data)。
“标头”包含数据包的一些说明项,比如发送者、接受者、数据类型等等;”数据”则是数据包的具体内容。
“标头”的长度,固定为18字节。”数据”的长度,最短为46字节,最长为1500字节。因此,整个”帧”最短为64字节,最长为1518字节。如果数据很长,就必须分割成多个帧进行发送。
MAC地址
上面提到,以太网数据包的”标头”,包含了发送者和接受者的信息。那么,发送者和接受者是如何标识呢?
以太网规定,连入网络的所有设备,都必须具有”网卡”接口。数据包必须是从一块网卡,传送到另一块网卡。网卡的地址,就是数据包的发送地址和接收地址,这叫做MAC地址。长度为6字节,共48比特,通常用十六进制表示法,地址的每个字节被表示为一对十六进制数
每个适配器具有一个唯一的MAC地址,不随位置发生变化(就像人的身份证,而IP则像人的邮政地址)
一台路由器的每个接口都有一个ARP模块和一个适配器;
MAC地址分配:当一个公司要生产适配器时,它支付象征性的费用购买一块MAC地址空间,IEEE分配这块地址时,固定前24比特,让公司自己为每个适配器生成后24比特的唯一组合
ARP协议(地址解析协议)
通过MAC,我们定义了地址。但是我们紧接着就有一个问题,那就是一块网卡怎么会知道另一块网卡的MAC地址?
答案就是ARP协议。
每个节点的ARP模块都在它的RAM中有一个ARP表,包含IP地址到MAC地址的映射关系,每个表项还包含TTL字段,表示表项过期时间(ARP表是自动创建的,如果某节点与子网断开连接,它的表项最终会从留在子网中的节点的表中删除。通常一个表项的过期时间是20分钟)
主机向其ARP模块提供一个IP地址,ARP模块返回IP地址对应的MAC地址
IP映射MAC
封装成帧与透明传输
封装成帧就是加将网络数据报加头加尾,相当于将数据打包
透明传输就是为了防止特殊的数据无法正常传输的的情况的发生,比如说在封装成帧的过程中,可能出现数据中的某些标记符与开始/结束标记符恰巧重复的情况,如果不加以处理,那么会导致无法判定帧的开始于结束。
透明传输的实现方法:1.字符填充法 2.零比特填充法 3.违规编码法
差错控制
数据链路层的差错检测的是比特的错误
需要注意的是,即使采用差错检测比特,也还是可能有未检出比特差错的情况。
因此,主要是选择一个差错检测方案,使得这种事件发生的概率很小
检错编码(奇偶校验码,循环冗余码CRC)
纠错编码(海明码)
数据链路层的流量控制和可靠传输
停止等待协议(Stop-and-Wait)
停止等待协议的无差错情况
注释:因为一次就一个,所以用0和1标记ack(确认序号)就行
停止等待协议的有差错情况:
使用一个超时计时器,每发一帧就开始计时,设置时间略长于一个RTT(往返时延)。
停止等待协议的特点
1.简单
2.信道利用率低。大部分时间数据都在路上,发送方很长时间闲置,资源浪费
后退N帧协议(GBN)
因为停止等待协议太浪费时间了,所以尝试采用GBN,发送连续多个数据帧,以增大信道利用率
注释:累计确认:就是收到一个确认帧,那么它和它之前的所有帧都默认已收到,反之,如果某个确认帧没收到,那么它和它之后的所有帧都默认丢失(即使收到了也丢掉),进行重传
选择重传协议(SR)
吸取了GBN协议的教训,我们打算尝试只重传错误的帧,这样的话就不用浪费资源把已经收到的帧再重传一次了。
在GBN中,仅有接收端有一个窗口来存放数据帧,在SR中,两者都有窗口了。
和GBN的区别其实就是做了一个数据缓存,已经收到的帧不用扔了,等待之前因意外丢失的帧收到的时候确认即可,但是只能缓存窗口尺寸内的包含的帧(注释:缓存不可能无限大)
SR运行过程
注释:2帧丢失之后仍然在发送,但是2帧丢失之后只是缓存,并没有移动窗口;它可以继续接受窗口范围内排在2帧后面的数据帧,直至最后2帧收到后一次性确认窗口内的所有已经收到的帧,再移动窗口。
介质访问控制技术(就是让节点之间的通信不会进行相互干扰)
局域网 LAN
局域网的概念
概括:范围大小,速度快,延迟低,节点平等
IEEE802描述的局域网参考模型
以太网
适配器和MAC地址
广域网 WAN
PPP协议(Point-to-Point Protocol)
PPP协议是目前使用最广泛的数据链路层协议,拨号基本都是PPP协议
PPP协议仅支持全双工链路
HDLC协议(High-Level Data Link Control)
PPP协议和HDLC协议对比
为什么HDLC协议更可靠,但是我们使用PPP协议?
因为现在网络要求高,数据链路层本来就是不可靠的尽力传输,差错控制这些复杂的交给了TCP等
链路层设备
网桥(Bridge) 隔离冲突域
使用网桥时,由于网桥会根据mac地址进行过滤,所以不会形成冲突域
交换机 网桥接口越来越多,网桥就变成了交换机,多接口网桥
交换机的任务是接收入链路层帧并将它们转发到出链路
交换机自身对节点透明:某节点向另一节点寻址一个帧,顺利地将该帧发送进LAN,而不知道这个帧经过了某个交换机的接收与转发
1)交换机转发与过滤
过滤:交换机决定一个帧是应该转发还是应该丢弃
转发:决定一个帧应该被导向哪个接口
2)自学习(即插即用)
交换机表是自动、动态、自治地建立的,没有来自网络管理员或配置协议的任何干预。换句话说,交换机是自学习的
交换机表初始为空