当前位置:网站首页>CSMA/CD 载波监听多点接入/碰撞检测协议
CSMA/CD 载波监听多点接入/碰撞检测协议
2022-07-07 12:12:00 【sinat_36789271】
“多点接入”表示许多计算机以多点接入的方式连接在一根总线上。
“载波监听”是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞。 “载波监听”就是用电子技术检测总线上有没有其他计算机发送的数据信号。
“碰撞检测”就是计算机边发送数据边检测信道上的信号电压大小。当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。当一个站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞。所谓“碰撞”就是发生了冲突。因此“碰撞检测”也称为“冲突检测”。
检测到碰撞后:在发生碰撞时,总线上传输的信号产生了严重的失真,无法从中恢复出有用的信息来。每一个正在发送数据的站,一旦发现总线上出现了碰撞,就要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间后再次发送。
特点:
1、使用 CSMA/CD 协议的以太网不能进行全双工通信而只能进行双向交替通信(半双工通信)。
2、每个站在发送数据之后的一小段时间内,存在着遭遇碰撞的可能性。这种发送的不确定性使整个以太网的平均通信量远小于以太网的最高数据率。
争用期:
最先发送数据帧的站,在发送数据帧后至多经过时间 2a (两倍的端到端往返时延)就可知道发送的数据帧是否遭受了碰撞。经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发生碰撞。
以太网的端到端往返时延 2a 称为争用期,或碰撞窗口。通常,取 51.2 us 为争用期的长度。对于 10 Mb/s 以太网,在争用期内可发送512 bit,即 64 字节。以太网在发送数据时,若前 64 字节未发生冲突,则后续的数据就不会发生冲突。
如果发生冲突,就一定是在发送的前 64 字节之内。由于一检测到冲突就立即中止发送,这时已经发送出去的数据一定小于 64 字节。以太网规定了最短有效帧长为 64 字节,凡长度小于 64 字节的帧都是由于冲突而异常中止的无效帧。
“等待一段随机时间”的解释 —— 二进制指数类型退避算法:
发生碰撞的站在停止发送数据后,要推迟(退避)一个随机时间才能再发送数据。
确定基本退避时间,一般是取为争用期 2a。
定义参数 k ,
k = Min[重传次数, 10]
从整数集合[0,1,…, (2^k - 1)]中随机地取出一个数,记为 r。重传所需的时延就是 r 倍的基本退避时间。
当重传达 16 次仍不能成功时即丢弃该帧,并向高层报告。
边栏推荐
- [untitled]
- Evolution of customer service hotline of dewu
- Redis只能做缓存?太out了!
- 请问,redis没有消费消息,都在redis里堆着是怎么回事?用的是cerely 。
- call undefined function openssl_ cipher_ iv_ length
- Dry goods | summarize the linkage use of those vulnerability tools
- Excuse me, as shown in the figure, the python cloud function prompt uses the pymysql module. What's the matter?
- Laravel5 call to undefined function openssl cipher iv length() 报错 PHP7开启OpenSSL扩展失败
- Cargo placement problem
- 2022-7-6 beginner redis (I) download, install and run redis under Linux
猜你喜欢
2022-7-6 初学redis(一)在 Linux 下下载安装并运行 redis
How to check the ram and ROM usage of MCU through Keil
作战图鉴:12大场景详述容器安全建设要求
TPG x AIDU | AI leading talent recruitment plan in progress!
Sliding rail stepping motor commissioning (national ocean vehicle competition) (STM32 master control)
AI talent cultivation new ideas, this live broadcast has what you care about
2022-7-7 Leetcode 34. Find the first and last positions of elements in a sorted array
The delivery efficiency is increased by 52 times, and the operation efficiency is increased by 10 times. See the compilation of practical cases of financial cloud native technology (with download)
MySQL error 28 and solution
Supply chain supply and demand estimation - [time series]
随机推荐
Flink | multi stream conversion
. Net core about redis pipeline and transactions
docker部署oracle
Excellent open source system recommendation of ThinkPHP framework
AI人才培育新思路,这场直播有你关心的
.net core 关于redis的pipeline以及事务
Data refresh of recyclerview
3D detection: fast visualization of 3D box and point cloud
Flask session forged hctf admin
postgresql array类型,每一项拼接
Parameter keywords final, flags, internal, mapping keywords internal
社会责任·价值共创,中关村网络安全与信息化产业联盟对话网信企业家海泰方圆董事长姜海舟先生
118. 杨辉三角
[fortress machine] what is the difference between cloud fortress machine and ordinary fortress machine?
2022-7-6 Leetcode27. Remove the element - I haven't done the problem for a long time. It's such an embarrassing day for double pointers
Excuse me, as shown in the figure, the python cloud function prompt uses the pymysql module. What's the matter?
648. 单词替换 : 字典树的经典运用
Co create a collaborative ecosystem of software and hardware: the "Joint submission" of graphcore IPU and Baidu PaddlePaddle appeared in mlperf
Redis 核心数据结构 & Redis 6 新特性详
requires php ~7.1 -> your PHP version (7.0.18) does not satisfy that requirement