首页 / 资讯中心 / 文章详情

计算机网络物理层:从编码到传输介质,一文讲透底层原理与排障实战

计算机网络物理层:从编码到传输介质,一文讲透底层原理与排障实战 ★ FEATURED ARTICLE
很多人学计算机网络第一课翻开物理层就开始打退堂鼓波特率、曼彻斯特编码、中继器、复用技术……一串名词砸过来比看说明书还枯燥。但你真到了做网络运维、硬件集成或者嵌入式开发的现场就会发现日常百分之八十的“网卡连不上、速度上不去、延时忽高忽低”的问题最后定位到的根因都在这一层。网线没做好、光模块不匹配、距离超了、接口接触不良统统属于物理层的范畴。这篇文章就把计算机网络里的“第一章”彻底讲透既覆盖考试爱考的基本概念也分享我实际项目中踩过的物理层坑适合刚入门的学生也适合想系统梳理一遍的从业者。1. 物理层到底在解决什么问题1.1 物理层的位置和那“四个特性”物理层是整个计算机网络体系结构里的最底层OSI参考模型的第一层位于TCP/IP模型的最底部。它解决的是最朴素的问题怎么在一根网线、一段光纤或者一片空气里把0和1的比特流从一台设备传到另一台设备。上层协议不关心你是用铜缆还是光缆传的物理层要做的就是“透明地传输比特流”——听起来简单实际牵涉到一堆物理世界的现实约束。我们常说的物理层“四个特性”在教科书里是必考点在实践中其实是设备选型和排障的底层逻辑机械特性接口用什么形状、几个引脚、多大尺寸。比如RJ45水晶头的8个引脚、光纤的LC/SC连接器都算机械特性。你去采购线材首先要保证物理能插上去。电气特性用什么电压表示0和1、信号的时序和速率是多少。比如以太网用差分信号传输靠的是电平差而不是绝对电压这样抗干扰能力才强。功能特性每个引脚干什么。网线的1、2是发送3、6是接收4、5、7、8是PoE供电或者千兆扩展这些都是功能层面的约定。过程特性建立连接时各引脚的动作顺序相当于通信双方先对好“开场白”。比如网卡插上之后从电平变化到链路协商成功整个过程都有严格时序规范。用打电话来类比就很好记机械特性是你的手机充电口长什么样电气特性是声音多大、频率多高功能特性是谁负责说话谁负责听过程特性是从拨号到接通再到挂断的一整套动作顺序。1.2 数据通信系统模型与三种通信方式一个完整的数据通信系统至少要包含五个部分信源、发送设备、传输系统、接收设备、信宿。我们在课本里经常看到的框图信源就是信息的产生者发送设备负责把原始信息转换成适合传输的信号传输系统是中间的承载网络接收设备负责把信号还原信宿是信息的最终消费者。中间还可能隔着放大器、中继器、集线器这些物理层设备。在物理层阶段通信方式有三种基本模式单向通信单工数据只能往一个方向传比如广播电视你只能接收不能反向回传内容。半双工通信双方都可以发但同一时刻只能有一方发送像对讲机说话的时候听不到对方。全双工通信双方可以同时收发像打电话你说我听、我说你听互不干扰。为什么网络通信普遍追求全双工因为现在的以太网交换机端口在物理上把发送线和接收线分开了链路两端都有独立的数据通道收发可以同时进行带宽利用率直接翻倍。理解这三种方式对后面看“冲突域”和“碰撞”的概念特别重要——半双工的共享介质上才有碰撞全双工的点对点链路上碰撞基本不存在了。2. 信号与编码物理层最硬核的部分2.1 模拟与数字怎么把信息放上线路物理层要传输数据第一步是把数据变成能在线路上传播的信号。信号分两大类模拟信号是连续变化的物理量比如声波经过话筒变成的连续电压数字信号是离散的电压脉冲直接对应0和1的电平跳变。为什么不直接“一股脑”把数字信号扔到线路上因为现实中的信道会衰减、会引入噪声长距离传输后数字信号会变形接收方很难正确恢复出原始比特。而有些信道比如传统的电话线天生只适合传模拟信号比如人的话音是模拟信号电话线本来是按这个设计的。于是就有了两个核心动作调制把数字数据转换成模拟信号典型的例子是Modem把电脑里的0和1调制成适合电话线传输的正弦波信号。编码把数字数据转换成另一种形式的数字信号比如以太网物理层要对原始比特做编码改善信号的同步和直流平衡特性。还有一个对应方向是模拟数据到数字信号也就是PCM脉冲编码调制把模拟的话音信号抽样、量化、编码后变成数字比特流电话网就是这么走向数字化的。考试里常考“调制”和“编码”的区别本质上就是看输出信号是模拟的还是数字的。2.2 从简单编码到曼彻斯特同步问题怎么解决数字数据的数字编码里最简单的是不归零编码NRZ——高电平表示1低电平表示0。它的问题有一个特别致命当传输一串连续的1或者连续的0时接收方无法判断一个比特从哪里结束、下一个从哪开始收发双方的时钟一旦漂移就全乱了。这个“比特同步”问题是编码设计的核心矛盾。为了解决同步出现了归零编码RZ每个比特中间信号回到零电平相当于在比特流里嵌了一个心跳信号接收方看到电平归零就能对齐时钟。但RZ的代价是同样的比特率需要更高的信号带宽线路利用率低。真正经典的是曼彻斯特编码每个比特的中间必然有一次电平跳变从高到低表示1从低到高表示0反过来约定的也有。这个中间的跳变既是数据又是时钟信号接收方靠着它同步自己的工作节奏。代价是每个比特实际上用两个电平状态来表示信号速率是比特率的两倍效率只有50%。差分曼彻斯特编码更进一步它看的是比特边界有没有跳变而不是中间跳变的方向抗干扰能力更强老令牌环网用过它。为什么现在的千兆以太网不用曼彻斯特因为效率太低只有50%带宽浪费太严重。后续的4B/5B、8B/10B编码就是在解决效率和同步的平衡问题——每4个比特映射成5个比特引入足够的电平跳变来维持同步同时把开销控制在20%到25%。这部分链路层还会用到物理层阶段了解曼彻斯特的同步思路就够了。2.3 波特率、比特率、带宽几张表讲透不少初学者把波特率和比特率当成一个东西这其实是被中文翻译坑了。波特率是每秒信号状态变化的次数单位是Baud也叫码元率比特率是每秒传输的比特数单位是bps。如果一个码元只携带1个比特两者数值相等但如果每个码元能携带多个比特比特率就会大于波特率。比特率 波特率 × log2(V)这里的V是每个码元能取的状态数。比如QPSK有4种相位状态log2(4)2所以波特率是2000 Baud时比特率就是4000bps。16QAM有16种状态一个码元携带4个比特同样波特率下比特率是4倍。这说明了一个重要结论想要在有限的信号变化次数里传更多的数据就得提高每个码元的信息承载量但前提是信噪比够好能分辨出这么多不同的状态。带宽和速率的关系有两把尺子考试必考奈奎斯特准则在无噪声的理想信道上极限数据率 C 2W log2(V)W是信道带宽V是信号状态数。这个公式告诉我们提高带宽或者提高编码状态数都能提升速率但现实信道不是理想的。香农公式在有噪声的实际信道上C W log2(1 S/N)S/N是信噪比。注意这里的信噪比通常用dB表示换算公式是 10lg(S/N)。信噪比30dB意味着S/N1000代入公式后3000Hz带宽电话线的理论极限是3000 × log2(1001) ≈ 30000bps约30kbps。当年56k拨号上网就是这么来的电话线的物理带宽和信噪比决定了它的理论上限而56K已经逼近了极限再怎么优化协议也很难突破物理层的约束。所以很多网速问题不是软件调优能解决的物理层的天花板就摆在那里。3. 传输介质动手排查的第一现场3.1 双绞线网线里的那些事双绞线是局域网里最常见的传输介质一直从家里的路由器连到电脑再到机房的跳线都是它。为什么要把两根线绞在一起核心原因是为了抗干扰。两根线布在一起外界的电磁干扰会同时作用在两根线上产生相近的共模噪声接收端用差分方式读两线之间的差值干扰就被抵消掉了而绞合结构又让两根线在空间上不断交换位置外来干扰对它们的影响趋于一致进一步抵消串扰。做网线看起来是个体力活就是压水晶头但踩坑的人真不少。线序有两个标准T568A和T568B关键是保证1、2一组3、6一组4、5一组7、8一组。百兆以太网只需要1、2发送和3、6接收这四根线工作所以你偶尔能碰到一根只压了四根线的“半残网线”也能上网但千兆以太网必须8根线全用如果4、5或者7、8没接好链路会协商成百兆甚至直接不通。实际操作中我建议按T568B标准压线橙白、橙、绿白、蓝、蓝白、绿、棕白、棕两端一致做成直通线。跟老设备对接时可以想交叉线但现在网卡和交换机端口基本都有自动翻转功能哪个线序都能自适应。压线时水晶头金属片要压到位线皮要卡进水晶头的卡槽里否则拉着拉着就松了。做完了用测线仪跑一遍看8个灯是否按顺序亮别等到墙面板都装好了才发现不通。双绞线还有屏蔽与非屏蔽的区别屏蔽层能抗更强的电磁干扰但必须做好接地不然反而变成天线接收噪声。一般办公环境用非屏蔽超五类或六类线就够了机房高干扰环境才需要考虑屏蔽线。3.2 同轴电缆和光纤各自的主场同轴电缆在早期以太网里很有存在感比如10Base2和10Base5设备之间用一根主干电缆串起来靠的是“总线型拓扑”。它由内导体、绝缘层、屏蔽网和外皮组成屏蔽网提供了很好的抗干扰性。有线电视用的75Ω同轴电缆走的是模拟信号而早期以太网用的是50Ω基带同轴传数字信号。同轴电缆的问题是施工不方便、排查故障难线上一个节点坏了整条链路都瘫所以现在基本被双绞线和光纤取代了。光纤是真正的高端局。它利用光的全反射原理光信号在纤芯里来回反弹向前传播损耗极低。多模光纤纤芯粗适合短距离、成本低用LED光源单模光纤纤芯细到微米级适合长距离、大带宽用激光光源价格也更贵。实际使用中单模光纤必须配单模光模块多模光纤配多模光模块两者不能混用否则收光功率异常会出现丢包甚至完全不通。光纤的坑也很现实一是弯曲半径光纤不能弯成直角小弯曲半径会导致光泄漏到包层里损耗急剧增加二是端面污染插拔过程中灰尘、指纹沾上端面损耗可能从0.5dB飙到好几dB用光功率计一测就知道。专业的清理方式是用光纤清洁笔或清洁带擦端面千万别用嘴吹。光纤不怕电磁干扰、不怕雷击感应在线路走廊和机房之间长距离传输时优势不可替代。无线介质也属于物理层的讨论范围无线电波、微波、红外线各有各的用途。Wi-Fi用的是无线电波卫星通信和地面接力用微波红外遥控器用红外线。无线的物理层要额外处理传播衰落和干扰问题这也是后面无线网络章节的起点。平时笔记本插着网线同时又连着Wi-Fi走的虽然是两个物理层但驱动会做路径选择优先用有线链路。4. 复用与接入物理层的资源配置问题4.1 多种复用技术怎么选一根物理线路的带宽是有限的如果只用它承载一路通信大部分时间都是浪费。复用技术解决的就是“怎样让多路信号共享同一条信道”。这就像一条高速路要么按车道划分频分要么按时间轮流跑时分要么让不同车涂不同颜色然后混合行驶码分。频分复用FDM不同信号占用不同的频率段互不重叠。广播电台就是这么干的每个台有自己的频率收音机调到哪个台就收哪个信号。优点是实现简单缺点是需要留保护频带防止互相串扰有点浪费频谱。时分复用TDM把时间切成等长的时间片轮流分配给不同信号所有信号都用同一频率。固定的时分复用有个问题——某个用户没数据发送时时间片也空着于是有了统计时分复用谁有数据谁才占用时间片大大提高了线路利用率交换机内部的分组调度很多就是基于这个思路。波分复用WDM本质是光纤上的频分复用只是频率变成了光波的波长。一根光纤里同时跑1530nm、1550nm、1570nm等多路光信号各自独立传输。密集波分复用DWDM在一根光纤上跑几十上百个波长骨干网的核心带宽全靠这个技术撑起来。码分复用CDM所有用户在同一时间、同一频段上发送但每个用户被分配一个正交的码序列接收方用同样的码做相关运算就能把属于自己信号捞出来。3G移动通信就用了CDMA的思路抗干扰性能好但基站侧的功率控制和同步要求很严格。理解复用技术的关键是抓住“资源维度”频分用在频率上时分用在时间上波分用在波长上码分用在编码上。链路层和网络层里关于排队、交换机转发的很多机制本质上也是这三四种资源切分思路的组合变体。4.2 宽带接入的演进从ADSL到FTTH宽带接入技术解决的是“最后一公里”问题——从运营商的局端设备到你家路由器的这一段接入网是整个链路的短板。ADSL不对称数字用户线路是电信时代很经典的技术它在普通电话线上通过频分复用把频段分成三块低频传语音中频上行高频下行。所谓“不对称”就是下行带宽远大于上行带宽因为大多数用户是下载多、上传少设计上故意偏向下行。ADSL当年风靡一时但物理层天花板太低电话线的信噪比和衰减决定了它能跑到的速率有限而且离交换局越远速率越低。后来光纤接入逐渐普及现在主流是FTTH光纤到户整个链路是从局端OLT通过分光器ODN挂接大量用户ONT光猫这就是PON无源光网络。PON在下行方向广播发送数据每个ONT只取属于自己的帧上行方向用时分复用多个ONT按分配的时间片发送。EPON和GPON是两大标准速率从1Gbps到10Gbps级别物理层上它们都是基于WDM把下行和上行用不同波长区分开一根光纤就解决了双向通信。HFC混合光纤同轴网也是有线电视运营商采用的接入方式主干用光纤入户用同轴电缆通过频分复用把电视信号和上网数据分隔在不同频段。这些接入技术的背后都是物理层对频率、波长、时间的精细划分理解原理之后再去看光猫上的各种指示灯和参数就明白它在协商什么了。5. 物理层设备和故障排查实录5.1 中继器与集线器原理不过时的老古董信号在线路上传输会有衰减和失真走远了就变得难以辨认。中继器就是物理层的再生放大器它把收到的信号做整形、放大然后继续发送出去作用就是延长传输距离。但中继器有个硬限制它不理解数据内容只是一个比特流的搬运工所以不能无限制地串联下去。传统以太网有个“5-4-3规则”最多5个网段、4个中继器、其中最多3个网段可以挂接设备。为什么有限制因为中继器会引入转发延迟串联太多之后信号往返时间超过了以太网碰撞检测的窗口网络就会频繁冲突、效率暴跌。集线器Hub本质是多端口的中继器它把所有端口接到同一个内部总线一个端口收到的信号会复制发给所有其他端口所以整个集线器上的设备共享同一个带宽、处在同一个冲突域里。两台设备同时发送就会碰撞效率很低。交换机之所以能替代集线器是因为交换机的每个端口都是独立的冲突域支持全双工不再共享介质。现在集线器基本进博物馆了但你理解了它的工作原理就理解了“冲突域”这个概念从哪来也就能解释为什么老式共享式以太网一到高负载就卡成PPT。5.2 现场排查物理层问题怎么快速定位物理层故障的特征是“链路完全不通”或者“极不稳定”且和IP配置无关。排障的第一步永远不是看IP地址和网关而是看物理层状态看灯网卡指示灯、交换机端口灯、光猫的LOS灯、光模块的RX指示灯。灯不亮基本就是链路物理层断了灯狂闪但速率协商不上来大概率是线对或者光功率问题。网线的排查重点线序对不对、水晶头压接是否牢固、线缆长度是否超过100米。双绞线的100米限制是电信号的衰减决定的长了就丢包或协商降速。现场压线时尤其要把8根线推到位别让某一根线芯缩回去这是水晶头接触不良最常见的来源。光链路的排查重点光模块的收光功率必须在规定范围太高会烧接收器太低会误码。用光功率计测收光常见的损耗点包括光纤连接器没拧紧、端面脏污、弯曲半径太小。单模多模不匹配也是典型问题光模块上会标注波长和传输距离对照检查最直接。还有一个非常实用的小知识百兆网线只用1、2、3、6四根线但有时候你会发现网速忽快忽慢一测才发现是水晶头里4、5或者7、8这对线压接不良导致链路时而在千兆、时而在百兆间反复协商。这个案例我遇到过好几次看起来像是交换机问题最后都定位在物理层的线缆质量上。下面是一张我个人整理的物理层故障速查表排障时可以对照着来现象大概率原因快速验证方法网口灯不亮网线断开、水晶头松动、设备未供电重新插拔换一根成品线测试百兆正常、千兆协商失败8根线未全通、线缆质量差测线仪测全通检查线序传输时好时坏水晶头压接不良、端面污染重做水晶头清洁光口端面光路丢包严重光模块收光功率异常光功率计实测对比参考范围十几台电脑都不通交换机端口损坏或上游链路中断换端口查上联光路5.3 那些考试容易混淆的物理层概念学到这里光看会不算会做题和实际应用才是检验。我把物理层最经典的混淆点整理成对比表考前看一遍能少丢很多分对比项说明记忆锚点调制 vs 编码调制输出模拟信号编码输出数字信号一个“调”到连续波上一个“编”成比特流比特率 vs 波特率比特率是比特数波特率是码元数比特率波特率×log2(状态数)单工 vs 半双工 vs 全双工单向、轮流、同时广播、对讲机、电话中继器 vs 放大器中继器整形再生数字信号放大器放大模拟信号一个还原本质一个只增音量冲突域 vs 广播域冲突域是物理碰撞范围广播域是广播帧传播范围集线器扩大冲突域路由器隔离广播域单模 vs 多模单模细、激光、远距离多模粗、LED、短距离单模“专车”直达多模“公交”频繁换道这几个概念的区分不仅是考试得分点也是工程上排查问题时的分界线。比如“为什么集线器不能直接换成长光纤再接个集线器”因为集线器是物理层的它收到的信号经过再生后只是被复制转发多个集线器串联会扩大冲突域整个网络的碰撞域性能急剧下降。而换成一台交换机物理层只是负责端口间的比特传输链路层通过MAC地址做了帧转发每个端口独立冲突域网络规模就能扩大很多。6. 学习物理层的几个高频易错点6.1 物理层不是“硬件”而是协议标准很多人有个误解认为物理层就是网线、中继器、集线器这些看得见摸得着的设备。其实物理层是一套完整的协议规范它规定了接口形状、引脚定义、电气特性、编码方式、传输速率这些标准设备厂商按照这个标准去制造网卡、光模块、线缆和接口它们才能在同一个网络上互通。你买一台打印机插上网线就能被交换机识别不是因为运气好而是因为物理层协议把接口、信号、速率这些都统一了。这也能解释为什么万兆光模块不能随便插在一个千兆交换机上——物理层的电气特性和编码方式都不一样没法协商。同样串口调试线RS-232也属于物理层标准它的电平定义跟以太网完全不同接错电压甚至可能烧设备。学习物理层时要用“标准”的眼光去看每一个参数而不是单纯记忆线怎么压、口怎么插。6.2 动手做一个完整的物理层实验物理层内容看似理论多其实很适合动手验证。我建议新手做这样几个小实验成本很低但收获很大第一自己压一根直通网线。按照T568B线序压好水晶头用测线仪验证8根线全通然后插到交换机上看端口指示灯是否亮起协商速率是多少。动手做过一遍你就彻底理解机械特性、功能特性和过程特性到底在说什么。第二用串口线连接网络设备的Console口。很多交换机、路由器的管理接口保留着RS-232物理层标准从设备开机日志到配置界面你全程看到的都是物理层在传输字节流。电脑上打开终端软件设置好波特率就能看到设备启动过程的信息这是体验“比特流透明传输”最直观的方式。第三对比双绞线和光纤的故障表现。手头有条件的话用光纤跳线连一个光模块端口再用一根质量差的网线连一个电口分别模拟物理层故障观察现象差异。光纤问题大多表现为光功率异常或链路协商失败网线问题则常常表现为速率掉到百兆或者完全无Link长期排障下来你会发现两者现象规律完全不同排查思路也是两套体系。6.3 给初学者的一句话总结我个人在实际排查和教学中最深的体会是物理层在整套计算机网络里看似最“底层”、最不起眼但恰恰是它决定了网络的物理边界。你后续学链路层、网络层、传输层时所有的帧、包、连接都是跑在这条物理链路之上的链路一旦断开上层再聪明的协议也救不回来。很多同学在实验室里用虚拟机调试网络协议觉得很容易真正到了现场布线、插光口、压网线时才发现各种问题原因就是物理层的细节没有真正吃透。最后再分享一个小技巧学习物理层的时候建议把每个概念都联系到一个实际物品上——波特率就想象成每秒喊几次号曼彻斯特编码就想想心跳FDM就是收音机调台WDM就是一根光纤里几束不同颜色的光同时跑。一旦抽象概念落到具体物象上记起来会快很多。这套方法我实践下来很有效也推荐给你。
阅读完成 · 觉得有帮助?
咨询建站