数据链路层--广播信道
局域网最主要的特点:网络为一个单位所拥有,且地理范围和站点数目均有限。
802.3局域网也称为以太网。
为了使数据链路层能更好地适应多种局域网标准,IEEE802委员会就把局域网的数据链路层拆成两个子层,即逻辑链路控制LLC子层和媒体介入控制MAC。
由于因特网发展很快而TCP/IP体系经常使用的局域网只剩下DIX Ethernet V2而不是IEEE 802.3标准中的局域网,因此IEEE 802委员会制定的逻辑链路控制子层LLC的作用已经消失了。
许多适配上仅装有MAC协议而没有LLC协议。
适配器的作用
计算机是怎么连接到局域网上的:
计算机与外界局域网的连接是通过通信适配器。适配器本来是在主机箱内插入的一块网络接口板。在适配器上面装有处理器和存储器。
适配器和局域网之间的通信是通过电缆或双绞线以串行传输方式进行的,而适配器和计算机之间的通信则是通过计算机主板上的I/O总线以并行传输方式进行的。
因此,适配器的一个重要功能就是要进行数据串行传输和并行传输的转换。
适配器所实现的功能包括数据链路层和物理层两层次的功能。
CSMA/CD协议
为了通信的简便,以太网采取了两种措施:
第一,采用较为灵活的无连接的工作方式,即不必先建立连接就可以直接发送数据。适配器对发送的数据帧不进行编号,也不要求对方发回确认。这样做可以使以太网工作起来非常简单。
因此以太网提供的服务是尽最大努力的交付,即不可靠的交付。
第二,以太网发送的数据都使用曼彻斯特编码的信号。
CSMA/CD协议要点
“多点接入”就是说明这是总线型网络,许多计算机以多点接入的方式连接在一根总线上。
“载波监听”就是用电子技术检测总线上有没有其他计算机也在发送。不管在发送前,还是发送中,每个站都必须不停地检测信道。
“碰撞检测”是“边发送边监听”,即适配器边发送数据边检测信道上的信号电压的变化情况,以便判断自己在发送数据时其他站是否也在发送数据。
在使用CSMA/CD协议时,一个站不可能同时进行发送和接收(但必须边发送边监听信道)。因此使用CSMA/CD协议的以太网只能进行双向交替通信(半双工通信)。
由图可以看出,最先发送数据帧的A站,在发送数据帧后之多经过时间2t就可以知道所发送的数据帧是否遭受了碰撞。因此以太网的端到端往返时间2t称为争用期。争用期又称为碰撞窗口。
以太网使用截断二进制指数退避算法来确定碰撞后重传的时机。
具体的退避算法如下:
(1)协议规定基本退避时间为争用期2t,具体的争用期时间是51.2us。
(2)从离散的整数集合[0,1,...,(2k-1)]中随机取出一个数,记为r。重传应推后的时间就是r倍的争用期。上面的参数k按下面的公式(3-1)计算:
k=Min[重传次数,10]
(3)当重传16次扔不能成功时,则丢弃该帧,并向高层报告。
强化碰撞:当发送数据的站一旦发生了碰撞时,除了立即停止发送数据外,还要再继续发送人为干扰信号,以便让所有用户都知道现在发生了碰撞。
CSMA/CD协议的要点如下:
(1)准备发送:适配器从网络层获得一个分组,加上以太网的首部和尾部,组成以太网帧,放入适配器的缓存中。但在发送之前,必须检测信道。
(2)检测信道:若检测到信道忙,则应不停地检测,一直等待信道转为空闲。若检测到信道空闲,并在96比特时间内信道保持空闲,就发送这个帧。
(3)在发送过程中仍不停地检测信道,即网络适配器要边发送边监听。若没有检测到碰撞,则帧发送成功。否则,停止发送数据,并按规定发送干扰信号。适配器执行指数退避算法。若重传16次都不能成功,则停止重传并向上报错。