今日网络技术热点:【计算机网络 | 数据链路层8:CSMA/CD

当你把一台新交换机接入办公网,发现网络时通时断;当你在会议室部署无线AP,多台终端同时视频会议就卡顿。这两个场景背后,藏着同一个核心问题:多设备共享同一传输介质时,如何避免冲突?答案分别是有线以太网的CSMA/CD和Wi-Fi的CSMA/CA。理解两者的差异,是排查网络性能瓶颈的基础。

问题判断:先分清你的网络属于哪种"共享介质"

网络链路并非都是一对一的。点对点链路只连接两个节点,例如电脑与交换机端口之间的一根网线,或两台路由器之间的一条专线。链路两端清楚谁在通信,通常没有多设备抢同一段介质的问题。而广播链路由多个节点共享同一传输介质------早期总线型以太网的多台主机共用一根同轴电缆,Wi-Fi的多个无线设备共用某一段无线信道。

你的网络故障,很可能就出在广播链路上。排查的第一步,是判断你的设备连接属于点对点还是广播链路。

技术原理:两种协议,两种"避免冲突"的思路

CSMA/CD(载波监听多路访问/冲突检测)用于有线以太网。它的逻辑是"先听后说,边听边说,冲突停发,随机重发"。节点发送数据前先监听信道,空闲则发送;发送过程中持续检测冲突,一旦发现冲突立即停止并发送阻塞信号,然后等待随机时间后重试。

CSMA/CA(载波监听多路访问/冲突避免)用于Wi-Fi。它的逻辑是"先听后说,说完等确认"。由于无线环境无法像有线那样在发送时同时检测冲突(无线网卡无法同时收发),CSMA/CA采用主动避免策略:发送前监听信道,空闲则等待一个随机退避时间,再发送数据,并等待接收方的ACK确认。如果没收到ACK,则认为发生冲突,重新退避重传

实战场景:一个"有线正常、无线卡顿"的典型故障

示例场景:某企业办公区部署了10个AP,约80台终端接入。有线网络正常,但无线网络在高峰时段延迟飙升,视频会议频繁中断。

排查过程:

第一步,用ping -t持续测试网关IP,确认丢包率和延迟。发现丢包率超过5%,延迟抖动明显。

第二步,用无线网卡工具(如Windows的netsh wlan show interfaces)查看信号强度和信道利用率。发现多个AP的信道利用率超过80%,且部分AP工作在同一信道。

第三步,用iperf3测试无线吞吐量。发现近距离单终端吞吐量仅有30Mbps,远低于理论值。

根因分析:

问题出在CSMA/CA机制本身。当多个终端同时尝试发送数据时,它们会监听信道,发现信道忙则进入退避等待。但由于所有终端使用相同的退避算法,退避时间可能相同,导致再次同时发送,反复冲突。高密度接入场景下,冲突概率指数级上升,信道利用率虚高,实际吞吐量急剧下降。

解决方案:

  1. 信道规划 :将相邻AP设置为不重叠的信道(如1、6、11),减少AP之间的相互干扰。使用wifi analyzer工具扫描周围信道占用情况,选择最空闲的信道。

  2. 降低发射功率:将AP发射功率调低,让每个AP覆盖范围更小,减少同信道AP的重叠区域,从而降低冲突概率。

  3. 启用802.11e/WMM:在AP上启用WMM(Wi-Fi多媒体)功能,为视频会议等实时流量提供优先队列,减少延迟抖动。

  4. 限制接入数量:在AP上设置最大关联终端数(如每AP不超过25个终端),避免单AP过载。

风险与适用边界:

CSMA/CA的退避机制决定了它在高密度场景下性能有限。如果终端数量超过50个/AP,建议考虑部署支持MU-MIMO和OFDMA的Wi-Fi 6/7设备,这些技术能在物理层减少冲突。但注意,Wi-Fi 6/7的优化效果也依赖终端支持,混合终端环境下效果会打折扣。

对于有线网络,CSMA/CD在现代交换网络中已很少触发,因为交换机每个端口都是独立的冲突域。但如果你还在使用集线器(HUB)或老旧总线型设备,CSMA/CD的冲突问题依然存在。此时唯一的解决方案是更换为交换机。

行动清单(本周可执行):

  1. netsh wlan show interfaceswifi analyzer检查你所在环境的信道利用率,记录超过70%的AP位置。
  2. 检查AP配置,确认相邻AP是否使用不同信道;如有重叠,立即调整。
  3. 在AP上启用WMM,并设置视频流量优先级。
  4. iperf3测试每个AP的极限吞吐量,建立基线数据,便于后续对比。
  5. 如果无线终端密集,检查AP的关联数限制,超过25个/AP时考虑增加AP或调整功率。
相关推荐
hehelm1 小时前
仿muduo库实现高并发服务器—EventLoop
linux·服务器·网络·c++
今儿敲了吗1 小时前
CN——HTTP 工作流程
网络·网络协议·http
mengge.cloud1 小时前
0823Keepalived + LVS(DR) + MariaDB主主 小白完整实战教程
linux·运维·网络·oracle·负载均衡·mariadb·lvs
爱吃苹果的梨叔6 小时前
训练集群网络中断怎么办?智算机房的 Console 串口排障方案
网络·python·智能路由器·php
xiaohaiAIgeo11 小时前
【2026年】医药研发实验室GLP的通风设计要求:稳定性可验证性与合规性
网络·人工智能·科普知识
翼龙云_cloud11 小时前
亚马逊云渠道代理商:VPC 教程 利用 EC2 自建 NAT 实例降低私有子网出网成本
网络·云计算·aws
xiaoye-duck11 小时前
《Linux网络编程》UDP Socket 编程实战:从 Echo 回显、通用字典服务到套接字封装全流程
linux·网络·udp
酒神dnspup11 小时前
CDN 回源检测怎么做?用 DNSPup 验证节点命中、源站暴露与多地可用性
运维·服务器·网络·网络协议·tcp/ip
江南风月12 小时前
3分钟快速上手日志审计系统 WGLOG v2.2 更新了什么
运维·服务器·网络