争用是发生在使用共享介质和
载波监听多路访问(CSMA)方法的网络,主要是以太网上。站点共享介质竞争并使用其通信信道。当两个或更多个设备同时企图使用信道时就会发生争用,这时,所有工作站都等待一段随机时间然后再次企图访问。
争用的概念
争用(Contention),即“争用期”。
由于总线型网络通过集线器、网桥、交换机、路由器等设备,对网络实现共享功能,使用
CSMA/CD协议,而当两台计算机或两台以上的计算机在进行共享网络的时候,信道通过CSMA/CD进行载波监听多路访问,避免碰撞,那么信道就只允许一台计算机发出命令,所以就有了争用期的概念。
争用的基本原理
争用发生在使用共享介质和
载波监听多路访问(CSMA)方法的网络,主要是以太网上。站点共享介质竞争并使用其通信信道。当两个或更多个设备同时企图使用信道时就会发生争用,这时,所有工作站都等待一段随机时间然后再次企图访问。许多站点争用电缆时情况就变得更糟,因为等待时间降低了性能,而且工作站需要不断申请使用电缆。
CSMA/CD网中的各个站(节点)都能独立地决定数据帧的发送与接收。每个站在发送数据帧之前,首先要进行载波监听,只有介质空闲时,才允许发送帧。这时,如果两个以上的站同时监听到介质空闲并发送帧,则会产生冲突现象,这使发送的帧都成为无效帧,发送随即宣告失败。每个站必须有能力随时检测冲突是否发生,一旦发生冲突,则应停止发送,以免介质带宽因传送无效帧而被白白浪费,然后随机延时一段时间后,再重新争用介质,重发送帧。
CSMA/CD协议简单、可靠,其网络系统(如Ethernet)被广泛使用。
冲突是怎样发生的
– t--端到端传播时延,2t--往返时延
– 由于信号在信道上以有限速度传输,所以采用载波监听并不能完全消除冲突。
– 例如局域网上的两个站A和B。这两个站相距1km,传播速度=2/3*C=200m/us,因此1km电缆需要 t=5us 的传播时延。
– A向B发出的信息,在5us后才能传送到B。B若在A发送的信息到达B之前发送自己的帧(因为这时载波监听检测不到A所发送的信息),则发生冲突。
– 冲突的结果是两个帧都变得无用。A可以检测到自己发送的帧已经和其他站发送的帧产生了冲突。
如何检测到冲突
CSMA/CD采用
曼彻斯特编码(每比特中间有跳变,先高后低代表“1”)
· 比较接收到的信号的电压(因为距离会造成信号衰减,因此使用不多)。
· 电压的过零点是在每一比特的正中央。当发生冲突时,叠加的过零点将改变位置。
· 发送帧时也同时进行接收,再比较。
检测到冲突后怎么办
· 强化冲突:发送帧的站一旦发现冲突,立即停止发送数据,还要再继续发送若干比特的人为干扰信号。
· Why? 原因:设冲突点离A很远,离B很近(例如40米,即B发送2bit后冲突,4bit后停发),4bit的叠加数据远距离传到A,可能被A忽略。A继续发送,浪费时间。
· 强化冲突的违规码长度介于32-64比特之间,不易被忽略。
争用期
截断二进制指数类型(truncated binary exponential type)的退避算法,决定重传帧所需的时延Delay
· 先确定基本退避时间,取为2t(51.2微秒,2.5公里,中间允许经过4个中继器)
· K=Min[当前重传次数,10](最多16次重传)
· 从离散的整数集合[0,1,…,2-1]中随机地取出一个数,记为r
· Delay = r * 2t
· 因此第一次重发在0,1之间取一个值,第二次重发在0,1,2,3之间取一个,第三次是0到7,…