CSMA/CD 协议 详解

数据链路层的三个基本问题:封装成帧、差错检错、透明传输,不管是PPP协议还是CSMA/CD协议,只要是数据链路层上的协议都要解决这三个基本问题。

一、名字由来

CSMA/CD协议,其英文全称是:Carrier Sense Multiple Access with Collision Detection 翻译成中文是:载波监听,多点接入,碰撞检测。

既然该协议工作在数据链路层的广播信道,那就和广播信道的特点有关系。接下来介绍一下广播信道

二、广播信道

什么是广播信道? 就是一对多的通信,局域网使用的就是广播信道。广播信道上的共享资源划分有两种形式,静态划分和动态划分。静态划分就牵扯到频分复用,码分复用,波分复用,时分复用等技术,但这种划分方式代价很高,不适合于局域网。动态划分:又叫动态媒体接入控制(多点接入),实现该方法有两种:1)随机接入。由于用户可能随时发送信息,如果两个用户同时发送信息,那就会造成严重的是真现象,发生这个现象我们叫“碰撞”,所以必须有解决碰撞的网络协议。2):受控接入,用户不能随机发送信息而是必须服从一个控制。

CSMA/CD协议是广播信道中的动态划分方式中的随机接入方法,所以CSMA/C协议中的“多点接入”和“碰撞检测”由此而来。

三、协议具体内容

1)为了通信上的简单,以太网用了以下两种措施

(1)用灵活的无连接工作方式。即:主机A在发送数据前,没有先建立连接在发送,对发送的数据帧不进行编号,也不要求端方发回确认。这么做虽然简单,但会出现差错帧,可是这个不是数据链路层需要完成的功能它只负责将IP数据报封装成帧进行发送就OK了。

(2)采用曼彻斯特编码。

有了这两点,所以CSMA/CD协议中的载波监听、多点接入、碰撞检测就诞生了。

2)载波监听

发送数据帧时发现有冲突,就立刻停止发送帧,并向总线上发送一串阻塞数据帧通知总线上各点已有冲突发生,以提高总线的利用率。

3)多点接入

该特点说明通信线路是一个总线型通路。

注:如果检查出来了帧有错,则是否重传由高层协议来确定,而数据链路层只是把它当成一个新的帧来传输,仅此而已。

4)碰撞检测

该特点只保证在发送帧的时候不会出错就OK了,如果帧发出成功,该帧再次出错,则不归数据链路层控制,应由更高层的协议来控制。由于信息在信道传播上有传播时延,1KM的电缆传输时延大概时5us,所以在A站点向B站点发送数据时会有延迟。当数据帧在5us中传输时,B站点检测到信道空闲,于是B站点也开始发送数据。A、B两个站点发送的数据就会碰撞从而发生强烈的失真现象。如果不加以控制则该帧就会丢失,就不满足在发送帧的时候不会出错。所以要有碰撞检测。

注:可靠传输:指发送端发送什么,接收端就接受什么。

数据链路层仅仅用CRC循环冗余检验技术,只能是非常接近于1的认为传输没有差错。

传输差错可以分为两大类,一类是比特差错,即0变成1,1变成0;另一类是出现了帧缺失,帧重复,帧乱序,这类出错更为复杂。

你可能感兴趣的:(CSMA/CD 协议 详解)