我是靠谱客的博主 苗条香烟,最近开发中收集的这篇文章主要介绍计算机网络笔记10 CSMA/CD协议,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

CSMA/CD协议

    • 以太网的连接
    • 以太网采用广播方式发送
    • 以太网的两种措施
    • 以太网提供的服务
    • 局域网的媒体共享技术
    • CSMA/CD字面含义
    • 检测到碰撞后
    • CSMA/CD重要特性
    • 争用期
    • 截断二进制指数类型退避算法
    • 两个量化参数
    • 小结

以太网的连接

最初的以太网是将许多计算机都连接到一根总线上。当初认为这样的连接方法既简单又可靠,因为总线上没有有源器件。
在这里插入图片描述

以太网采用广播方式发送

• 总线上的每一个工作的计算机都能检测到B 发送的数据信号。
• 由于只有计算机 D 的地址与数据帧首部写入的地址一致,因此只有 D 才接收这个数据帧。
• 其他所有的计算机(A, C)都检测到不是发送给它们的数据帧,因此就丢弃这个数据帧而不能够收下来。
• 在具有广播特性的总线上实现了一对一的通信。

以太网的两种措施

为了通信的简便,以太网采取了两种重要的措施:
(1) 采用较为灵活的无连接的工作方式
– 不必先建立连接就可以直接发送数据。
– 对发送的数据帧不进行编号,也不要求对方
发回确认。
– 这样做的理由是局域网信道的质量很好,因信道质量产生差错的概率是很小的。
(2) 以太网发送的数据都使用曼彻斯特(Manchester) 编码
在这里插入图片描述

以太网提供的服务

• 以太网提供的服务是不可靠的交付,即尽最大努力的交付。
• 当目的站收到有差错的数据帧时就丢弃此帧,其他什么也不做。差错的纠正由高层来决定。
• 如果高层发现丢失了一些数据而进行重传,但以太网并不知道这是一个重传的帧,而是当作一个新的数据帧来发送。

局域网的媒体共享技术

静态划分信道(因计算机网络数据的突发性,静态划分不实际)
– 频分复用
– 时分复用
– 波分复用
– 码分复用
动态媒体接入控制(多点接入)
随机接入
– 受控接入 ,如多点线路探询 (polling),或轮询。

CSMA/CD字面含义

• CSMA/CD 表示 Carrier Sense Multiple Access with Collision Detection。
• “多点接入”表示许多计算机以多点接入的方式连接在一根总线上。
• “载波监听”是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞。
• “碰撞检测”就是计算机边发送数据边检测信道上的信号电压大小。
• 当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。
• 当一个站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞。
• 所谓“碰撞”就是发生了冲突。因此“碰撞检测”也称为“冲突检测”。

检测到碰撞后

• 在发生碰撞时,总线上传输的信号产生了严重的失真,无法从中恢复出有用的信息来。
• 每一个正在发送数据的站,一旦发现总线上出现了碰撞,就要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间后再次发送。

每一站在发送数据之前已经监听到信道为“空闲”,为什么还会出现碰撞?
电磁波在总线上总是以有限的速率传播
• 当某个站监听到总线是空闲时,也可能总线并非真正是空闲的。
• A 向 B 发出的信息,要经过一定的时间后才能传送到B。
• B 若在 A 发送的信息到达 B 之前发送自己的帧 (因为这时 B 的载波监听检测不到 A 所发送的信息),则必然要在某个时间和 A 发送的帧发生碰撞。
• 所以需要在发送期间进行碰撞检测,以检测冲突。

CSMA并不能完全解决碰撞问题
在这里插入图片描述

CSMA/CD重要特性

• 使用 CSMA/CD 协议的以太网不能进行全双工通信而只能进行双向交替通信(半双工通信)
• 每个站在发送数据之后的一小段时间内,存在着遭遇碰撞的可能性。
• 这种发送的不确定性使整个以太网的平均通信量远小于以太网的最高数据率。

某站点最多经过多长时间能够检测到冲突(碰撞)?
在这里插入图片描述

争用期

• 最先发送数据帧的站,在发送数据帧后至多经过时间往返时延,两倍的端到端传播时延)就可知道发送的数据帧是否遭受了碰撞。
• 以太网的端到端往返时延 2τ称为争用期,或碰撞窗口
经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发生碰撞。

为什么争用期是2τ而不是τ?
每个站点作为执行CSMA/CD协议的主体,需要自己主观上得到这个信息。

产生碰撞之后如何进行避让?
• 检测到碰撞——数据失真——停发
• 退避一段时间——重传
• 退避时间(何时启动重传)如何确定?
截断二进制指数类型退避算法

截断二进制指数类型退避算法

(truncated binary exponential type)
• 发生碰撞的站在停止发送数据后,要推迟(退避)一个随机时间才能再发送数据。
– 确定基本退避时间,一般是取为争用期 2τ
– 定义重传次数 k ,k≤10,即k = Min[重传次数, 10]
– 从整数集合[0,1,2,3, …,(2k -1)]中随机地取出一个数,记为 r。重传所需的时延就是 r 倍的基本退避时间。
– 当重传达 16 次仍不能成功时即丢弃该帧,并向高层报告。

两个量化参数

1、争用期
• 10 Mbit/s 以太网(传统以太网)取 51.2 μs 为争用期的长度。
2、最短有效帧长
• 对于 10 Mbit/s 以太网(传统以太网) ,在争用期内可发送 512 bit,即 64 字节。
这意味着:
以太网在发送数据时,若前 64 字节没有发生冲突,则后续的数据就不会发生冲突。

• 如果发生冲突,就一定是在发送的前 64 字节之内。
• 由于一检测到冲突就立即中止发送,这时已经发送出去的数据一定小于 64 字节
• 以太网规定了最短有效帧长为 64 字节,凡长度小于 64 字节的帧都是由于冲突而异常中止的无效帧。

小结

CSMA/CD
Carrier Sense Multiple Access with Collision Detection
带碰撞检测的载波监听多路访问协议
先听再发 边发边听
碰撞停止 随机延发

最后

以上就是苗条香烟为你收集整理的计算机网络笔记10 CSMA/CD协议的全部内容,希望文章能够帮你解决计算机网络笔记10 CSMA/CD协议所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部