C++实现CSMACD协议代码~

C++实现CSMACD协议代码~,第1张

void Host::csmacd()//模拟瞎辩迟磨李csmacd协灶备议 else Sleep(timelength) if(bus==0) else } else }}int Host::getNum(int k)

以太网中的协议过程是:

1、所有主机首先检测线路是否被占用,需要一个往返时延。

2、当没有主机占用时,主机开始发送信息,同时继续监听线路,看是否发生冲突。

3、如果发生冲突,主机立即停止发送当前信息,并且采用指数退避策略进行等待。

4、等待结束后,循环到第一步重新执行这个过程。

CSMA/CD的基本原理是:所有节点都共享网络传输信道,节点在发送数据之前,首先检测信道是否空庆渗闲,如果信道空闲则发送,否则就等待;在发送出信息后,再对冲突进行检测,当誉团脊发现冲突时,则取消发送。

扩展资料:

在物理层中把依赖于媒体的特性分离出来,使得LLC子层和MAC子层能适用于一系列媒体。在物理层内定义了两个重要的兼容接口,即依赖于媒体的媒体相关接口MDI和访问单元接口AUI。MDI是一个同轴电缆接口,所有站都必须严格遵守IEEE 802.3定义的物理媒体信号的确切技术规范。

严格遵守站点正确动作的规程,要求这个物理媒体接口完全兼容;AUI为第二兼容接口,大多数站点都设在离开同轴电缆的连接处有一段距离的地方,在与同轴电缆靠近的MAC中只有少量电路。

而大部分硬件和全部软件都在站点中,对于确保通信来说,符或运合这个接口并不是绝对必要的,但是由于它允许在MAC和站配合使用时有极大的灵活性,所以推荐这个接口。

单的理解就是发一个信银拿慧息的时候要侦听,看看其他人有没有发,没有就可以发了,如果有就等待,如果遇到阻塞就发一个信号给其他人说不要发了,等这个时敏嫌间一过锋答,就可以发了,然后重复以上过程,


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12231880.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存