载波侦听多路访问技术解决总线共享方法论文_端木占军

摘 要: 以太网多使用总线型的拓扑结构,采用同轴电缆作为公共传输总线,所有计算机共享一条总线,如何协调实现共享,成为以太网要解决的首要问题。

关键词:退避算法,争用期,载波侦听多路访问

1 引言

在以太网中,任何结点都可以随机地向总线发送信息,并且网中不存在集中 控制的结点,这种介质访问控制属于随机争用型方法。所有的结点都直接连到公 共信道上发送和接收数据,因此,对信道的访问是以多路访问方式进行的。任一 结点都可以将数据帧发送到总线上,而所有连接在信道上的结点都能检测到该帧, 因此,我们说以太网是一种广播网络。当目的结点检测到该数据帧的目的地址 (MAC 地址)为本结点地址时,就接收该帧,同时给源结点返回一个响应信号, 其他结点不接收该帧。

2 产生冲突的原因

电磁波在总线上是以有限的速率传播的,当某站点 A 已经 往总线里发送信号,信号正在传输,未到达站点 B 时,站点 B 这时监听不到总线 有信号,认为总线空闲,它也往总线发送信号,从而产生了冲突。

3 本文的算法

3.1概述

3.2建立一个数据模型

假定 A 到 B 的距离是 1km,信号从 A 传到 B 的时间τ=5μs。

(1)t=0 时,A 开始发送信号,因信号还没到达 B,所有 B 检测到总线空闲

(2)(2)t=3μs,A 信号还没到达 B,B 检测到总线空闲,发送信号。

(3) (3)t=4μs,A 和 B 发生碰撞。

(4)(4)t=5μs,B 检测到发生碰撞。

(5) (5)t=8μs,A 检测到碰撞。

3.3 争用期碰撞概率

在这,τ成为端到端时延(一般取以太网中距离最远的站点间的时延),2τ称为以太网端到端往返的时延,称为争用期,因为这段时间里会发生冲突,如果一次发送在争用期没发生碰撞,那么这次发送就不会发生碰撞。

如果发生碰撞,发送站点不是立即重新发送,要推迟(退避)一个随机时间 才能再发送数据,以减少冲突的概率。以太网采用二进制指数类型退避算法来确定退避时间。

3.4 算法过程

(1)确定基本退避时间,一般是取为争用期 2τ。

(2)定义重传次数 k,k≤10,即 k=Min[重传次数,[10]。

(3)从整数集合[0,1,...,(2k−1)]中随机地取出一个数,记为 r。重传所需 的时延就是 r 倍的基本退避时间,即 2τr。

(4)当重传达 16 次仍不能成功时即丢弃该帧,表明网络太拥挤,要向高层 报告。

例如:第一次发生冲突,要进行重传,重传时 k=1,再重传 k=2,依此类推到 k=16。当 k=1 时,r=0 或 1,退避时间为 0 或 2τ;当 k=2 时,r=0,1,2,3,退避 时间为随机选择 0,2τ,4τ,6τ中的任一个,依此类推,第 i 次发生冲突,退避时 间为随机选择 0~(2i−1)倍的 2τ中的一个。

以太网的争用时间为 51.2μs,是根据信号的速率和以太网中距离最远的站点 间的距离计算得来。对于 10Mbit/s 的标准以太网,争用期内大概可以发送 64B, 如果某个站点已经成功发送了 64B 的数据,接下来发送的数据再也不会发生冲突 了。反过来说,站点一旦检测到冲突,立即停止发生数据,那么它发送出去的数 据一定小于 64B。因此,以太网内传输小于 64B 的数据的包,会被认为是发生了 冲突。为了确保所有计算机在数据发送完毕之前,都能接收到冲突信号,以太网 规定最小有效帧为 64B。同时还规定了最大帧,因为如果某个站点发送特长的数 据帧,那其他站点就必须等待很长的时间才能发送数据,对于站点不公平。

3.4 试验结果

发送站点在发送数据时要同时侦听总线,若侦听到总线有干扰 信号,则表示产生了冲突,于是就要停止发送数据,计算出退避等待时间并等待,再准备重新发送信息。发送站点一面将信息发送到总线上,一面用接收器从总线上接收信息。如果两者相同,则继续发送;如果不一致, 说明发生了冲突,应停止发送信息,并发送干扰信号警告所有的其他站点。

当有两个或更多的结点在同一时间发送了数据,在信道上就造成了帧的重叠, 导致冲突出现。为了克服这种冲突,以太网采用带冲突检测的载波侦听多路访问 (CSMA/CD)技术,来解决总线的共享问题。CSMA/CD 协议是IEEE802.3 的核心协议,采取随机争用型的介质访问控制方法。应用于局域网的 MAC 子层,它能协调同一时间内只有一台计算机在使用总线发送数据。

论文作者:端木占军

论文发表刊物:《科技中国》2017年11期

论文发表时间:2018/5/2

标签:;  ;  ;  ;  ;  ;  ;  ;  

载波侦听多路访问技术解决总线共享方法论文_端木占军
下载Doc文档

猜你喜欢