Chinaunix首页 | 论坛 | 博客
  • 博客访问: 563358
  • 博文数量: 192
  • 博客积分: 3780
  • 博客等级: 中校
  • 技术积分: 1487
  • 用 户 组: 普通用户
  • 注册时间: 2010-08-26 10:11
文章存档

2012年(6)

2011年(160)

2010年(26)

分类: 嵌入式

2011-06-08 10:24:47



载波监听


载波监听

CSMA的技术,也称做无听后说LBT(Listem Before Talk)。要传输数据的站点首先对媒体上有无载波进行监听,以确定是否有别的站点在传输数据。假如媒体空闲,该站点便可传输数据;否则,该站点将避让一段时间后再做尝试。这就需要有一种退避算法来决定避让的时间,常用的退避算法有非坚持、1-坚持、P-坚持三种。

1、非坚持算法
算法规则为:⑴假如媒本是空闲的,则可以立即发送。⑵假如媒体是忙的,则等待一个由决定的随机重发延迟后,再重复前一步骤。采用随机的重发延迟时间可以减少冲突发生的可能性。非坚持算法的缺点是:即使有几个着眼点为都有数据要发送,但由于大家都在延迟等待过程中,致使媒体仍可能处于空闲状态,使用率降低。

2、1-坚持算法
算法规则:⑴假如媒体空闲的,则可以立即发送。⑵假如媒体是忙的,则继续监听,直至检测到媒体是空闲,立即发送。⑶假如有冲突(在一段时间内未收到肯定的回复),则等待一的时间,重复步骤⑴~⑵。

这种算法的优点是:只要媒体空闲,站点就立即可发送,避免了媒体的损失;其缺点是:假若有两个或两个以上的站点有数据要发送,冲突就不可避免。

3、P-坚持算法
算法规则:⑴监听总线,假如媒体是空闲的,则以P的概率发送,而以(1-P)的延迟一个时间单位。一个时间单位通常等于最大传播时延的2倍。⑵延迟一个时间单位后,再重复步骤⑴。⑶假如媒体是忙的,继续监听直至媒体空闲并重复步骤⑴。

P-坚持算法是一种既能像非坚持算法那样减少冲突,又能像1-坚持算法那样减少媒体空闲时间的折中方案。问题在于如何选择P的有值,这要考虑到避免重负载下系统处于的不稳定状态。假如媒体是忙时,有N个站有数据等待发送,一旦当前的发送完成时,将要试图传输的站的为NP。假如选择P过大,使NP>1,表明有多个站点试图发送,冲突就不可避免。最坏的情况是,随着冲突概率的不断增大,而使吞吐量降低到零。所以必须选择适当P值使NP<1。当然P值选得过小,则媒体利用率又会大大降低。
阅读(1024) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~