使用广播信道的数据链路层
1. 局域网的数据链路层:局域网使用的就是广播信道
a. 局域网:网络为一个单位所拥有,地理范围和站点数量有限,提高了系统的可靠性、可用性、生存性。局域网的工作层次跨越了数据链路层和物理层,但是局域网技术中有关数据链路层的内容较多。
b. 适配器:进行数据串行传输和并行传输的转换。
2. CSMA/CD协议:载波监听多点接入/碰撞检测(Carrier Sense Multiple Access with Collision Detection),以太网采取的协调方法,协调总线上只要有一台计算机在发送数据,总线的传输资源就被占用,这样同一时间只能允许一台计算机发送信息,否则会互相干扰,大家都无法正常发送数据。
载波监听:发送前先监听; 碰撞检测:边发送边检查 可见使用此协议的以太网不能进行全双工通信,只能进行半双工通信。
但是每一个站在自己发送数据之后的一小段时间内存在着遭遇碰撞的可能性,取决于另一个发送数据的站到本站的距离,以太网的这一特点称为发送的不确定性。完全经过争用期(以太网端到端的往返时间)这段期间还没检测到碰撞才能肯定这次发送不会发生碰撞以太网使用截断二进制指数退避算法来解决碰撞问题,让发生碰撞的站在停止发送数据后,不是等待信道变成空闲以后就立即再发送数据,而是推迟(退避)一个随机的时间。为了使重传时再次发生冲突的概率减小。此外,以太网还采取一种叫强化碰撞的措施,一旦发现碰撞,立即停止发送,还要再继续发送32比特或者48比特的人为干扰信号,让所有用户都知道现在已经发送了碰撞。
总结:要点:1. 适配器从网络成活的一个分组,加上以太网的首部和尾部,组成以太网帧,放入适配器的缓存中准备发送;
2. 若适配器检测到信道空闲(即在96比特时间内没有检测到信道上有信号),发送这个帧,若检测到信道忙,则继续检测并等待信道转为空闲(加上96比特时间),发送这个帧;
3.发送过程中继续检测信道,若一直未检测到碰撞,顺利把这个帧成功发完。若检测到碰撞,终止发送数据,并发送人为干扰信号。
4. 在中止发送后,适配器就执行指数退避算法,等待r倍512比特时间后,返回到2.
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从二进制到误差:逐行拆解C语言浮点运算中的4008175468544之谜
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· C# 13 中的新增功能实操
· Vue3封装支持Base64导出的电子签名组件
· 万字长文详解Text-to-SQL
· Ollama本地部署大模型总结
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(4)