简介:围绕网络基础物理层展开的这份 docx 文档,面向网络入门者、嵌入式开发学习者以及需要补齐 TCP/IP 底层认知的读者,重点梳理数据从应用层封装到物理层比特流、再由接收端逐层解封装的过程。内容结合电路交换、报文交换与分组交换的差异,延伸到网线、网卡、协议栈构成最小网络的三要素,并讨论同轴电缆、双绞线、光纤等传输介质及以太网标准、冲突域与 CSMA/CD 机制,帮助读者建立链路传输与介质访问控制的整体框架。包内共 1 个 docx 文件,压缩包约 3.46MB,适合按章节查阅和做笔记整理。已有 106 人学习,可用于理解 Ethernet 与 TCP/IP 的基础概念、对比不同交换方式,并借助快递包裹式类比厘清封装解封装思路,以及理解共享型网络的冲突与退避重发机制,适合作为网络基础课程的辅助阅读材料。
1. 从一个快递包裹说起:物理层到底管什么
刚接触网络基础的人,常把“网速慢”归咎于路由器玄学,其实很多问题要先回到物理层看:网线、网卡、接口和 0101 比特流有没有把数据送出去。物理层不关心你发的是聊天消息还是文件,它只负责把上层交下来的数据变成电信号、光信号,沿着传输介质送到对端。你可以把它想成快递系统里的公路和货车,包裹怎么打包是上层的事,车能不能上路、路宽不宽、会不会撞车,才是物理层要操心的。嵌入式方向也一样,设备再小,只要联网就绕不开网卡、协议栈和传输介质这三样。这份网络基础物理层讲解适合完全零基础、想从“线怎么接、数据怎么走”开始学的人。
2. 先弄懂数据怎么上路:三种交换方式与封装解封装
学网络基础时,如果一上来就背 TCP/IP 四层模型,新手很容易发怵。更顺手的方式是先看数据怎么从 A 设备走到 B 设备:是提前占一条线,还是给数据贴标签,还是切成小块排队走。把这件事想通,再看 Ethernet 和 tcpip 的关系,就不会觉得它们是天上掉下来的名词。下面三种交换方式,是这份资源里最值得先啃透的部分,也是后面理解冲突域、CSMA/CD 和物理层传输的底子。
2.1 电路交换:像提前占一条专用车道
电路交换的思路很直白:通信之前先维护一条逻辑电路,这条线路只传递你和对端的数据,不传递别人的数据。好处是路径固定、顺序稳定,听起来很让人安心;问题在于,当某一时刻不通信了,这条逻辑电路还占着,别人就无法使用这条线路进行数据传输。你可以把它想成两个人打电话之前先把整条公路封起来,哪怕中间沉默十分钟,别人也不能借道。早期电话网就是这种思路的典型代表,它适合持续、稳定的通信,但对“大家轮流用同一根线”的场景不够友好。
对零基础新手来说,这里先记住一个判断:电路交换解决的是“这条路上只跑我的数据”,代价是资源利用率不高。你不需要背复杂公式,只要能在脑子里画出“占线—传输—释放”的过程,后面比较报文交换和分组交换时就有参照物了。我第一次学的时候,把电路交换理解成“包场”,把后面两种理解成“拼车”,很多概念一下就顺了。
2.2 报文交换与分组交换:给数据贴上“收件人标签”
报文交换要解决的是多个人同时想用同一条线路发送数据的问题。为了避免数据在传输过程中传乱,发送方会给自己要传输的数据加一个标识,接收方根据标识判断这段数据是不是自己的。你可以把它想成一堆人把包裹放到同一辆车上,每个包裹写上收件人,到了站点再按名字分拣。它比“包场”更节省线路,但如果包裹很大,排队时间就会变长,小包裹也可能被大包裹堵在后面。
分组交换依然进行报文交换,也会加标识,不过它把每个数据的大小定义了一个上限,先做一个分片。每个数据段有一个上限值,同时加上标识,说明数据是从哪个设备到哪个设备的。这样多台设备就可以使用同一条链路通信,数据紊乱的问题被压下去了。但新的问题会出现:在数据大小不一致的情况下,转发会不公平,于是需要规定一个固定大小,每次只传输这么大的值,再配合报头继续往前走。学到这一步,你就能理解为什么网络里到处都是“分片”“报头”“固定长度”这些词,它们不是故意绕人,而是在共享线路上维持秩序。
| 交换方式 | 生活类比 | 优点 | 新手要记住的代价 |
|---|---|---|---|
| 电路交换 | 提前包一条专用车道 | 路径稳定、顺序稳定 | 不通信时也占线,别人用不了 |
| 报文交换 | 包裹写收件人,拼车运输 | 一条线可轮流用 | 大包裹会堵住小包裹 |
| 分组交换 | 把包裹切成小箱,贴上来源和目的标签 | 多设备共享链路,秩序更好 | 需要分片、报头和固定大小规则 |
这张表不用背,建议你合上文档,用“包场、拼车、切箱拼车”三个词复述一遍。能用自己的话说清区别,比抄十遍定义有用。
2.3 封装和解封装:一层层套盒子再一层层拆盒子
数据封装就像快递包裹:快递包装盒里塞了很多东西,最终对方要的只是里面的小物件,这个小物件就像应用层的数据。发送方从上层往下走,每经过一层就套一层“盒子”,加上这一层需要的头部信息;接收方从下层往上走,一层层拆开,看看没问题就继续往上传。封装是从上层到下层,解封装是从下层到上层,方向别搞反,这是新手最容易犯的迷糊之一。
你可以拿寄一件衣服做类比:衣服本身是应用数据,装进防水袋是某一层封装,放进纸箱是另一层封装,纸箱外再贴运单是再一层封装。到了收件人手里,先看运单,再拆纸箱,再打开防水袋,最后拿到衣服。网络里的报头就类似运单和分层标签,物理层看到的是最终变成 0101 的比特流,通过网卡或接口送上传输介质。这里要提醒一句:封装不是“多此一举”,而是让每一层只关心自己该看的信息,出了问题也方便逐层排查。
提示:学封装时不要一上来死记每层头部有多少字节,先记住“上层数据被下层加上头部”这个动作,再回头填字段。
3. 最小网络三件套:网线、网卡和协议栈
网络诞生前,人们传递信息靠刻录等离线方式;网络诞生后,网线、网卡、协议栈成了想要完成最小网络的三要素。这个说法对新手特别友好,因为它把“网络”从一团抽象概念拉回到三件能看见或能查到的东西。网线上跑的是比特流,通过网卡转换,现在的协议栈 tcp/ip 几乎都集成在设备上,只要你买的设备跟网络相关,基本上都支持 tcp/ip。嵌入式设备也不例外,很多小设备看起来只有一块芯片,里面却已经带了网络协议处理能力。
3.1 为什么先认识这三样:缺一个都通不了
网线是传输介质,负责把信号从一端送到另一端;网卡是设备侧的出入口,把设备内部的数据转换成适合介质传输的信号;协议栈是规则集合,告诉设备数据怎么封装、怎么寻址、怎么回应。三者缺一个,最小网络就转不起来。很多新手只盯着“IP 地址配没配”,却忘了看网卡有没有被识别、网线有没有插好,结果排查半天还在原地打转。
从学习路径看,先认识三件套比先背协议字段更划算。你可以在自己的电脑上找到网卡名称,看到它对应的地址,再用一条本机测试命令确认协议栈能工作。这个过程不需要真实外网,也不需要复杂设备,对零基础最友好。嵌入式入门也是同理:先确认板子上的网口或无线模块有没有被系统识别,再看协议栈有没有跑起来,最后才去调应用层逻辑。
3.2 在电脑上做第一次观察:看网卡、看 IP、发一个本机请求
第一个例子不建议上来就抓包,也不建议改路由器设置。先做三件最小观察:看网卡、看地址、测本机回环。Windows 可以打开命令提示符,macOS 或 Linux 可以打开终端。下面这组命令只用于观察本机状态,不会改动网络配置。
# Windows 下查看网卡名称、IP 地址和默认网关 ipconfig # macOS / Linux 下查看网卡和地址,二选一即可 ifconfig ip addr # 测试本机协议栈是否正常,127.0.0.1 是回环地址,不经过真实网线 ping 127.0.0.1 # Linux / macOS 可以指定只发 4 次,避免一直刷屏 ping -c 4 127.0.0.1ipconfig的作用是列出本机网卡、地址和网关,重点看“以太网适配器”或“无线局域网适配器”下面有没有地址。ifconfig和ip addr是 macOS/Linux 常见的查看方式,名字不同但目的相同。ping 127.0.0.1走的是回环地址,数据不经过物理网线和网卡外部接口,它能通,说明本机协议栈大概率是活的;它不通,先别怀疑网线,优先看系统网络组件。-c 4里的-c表示次数,4表示发四次,这个参数只在 Linux/macOS 的 ping 里常用,Windows 下直接ping 127.0.0.1默认也会停。
做完这一步,你可以再看一眼网线口或无线连接状态。如果是嵌入式板子,可以用串口登录后查看网卡是否出现,但不要一上来就改 IP。新手第一次翻车,往往不是命令写错,而是把有线网卡和无线网卡看混了,或者把回环地址当成了外网地址。
3.3 tcpip和嵌入式设备里,协议栈为什么常见
tcpip 不是某一根线,也不是某一个软件图标,它是一套分层协作的规则。现在的协议栈 tcpip 几乎都集成在设备上,手机、电脑、开发板、联网模块都可能自带。对嵌入式方向来说,这一点很关键:你买到的网络相关设备,很可能已经支持 tcpip,应用层只需要按接口发数据,底层帮你完成封装、校验和发送。但“支持”不等于“配好就能通”,物理层接口、网卡驱动、地址配置仍然要一层层确认。
学到这里,建议你把三件套写成一张小卡片:网线看有没有插好,网卡看有没有识别,协议栈看地址和回环通不通。以后遇到“设备联网失败”,先按这张卡片走一遍,比到处搜玄学偏方稳得多。嵌入式新手尤其要养成这个习惯,因为板子没有显示器时,你只能靠指示灯、串口日志和少量命令判断状态。
4. 传输介质怎么选:同轴电缆、双绞线、光纤各管什么场景
物理层离不开传输介质。新手常问“现在学网络基础,为什么还要看同轴电缆”,原因很简单:不理解共享型网络和冲突域,就很难理解后来为什么要有交换机、为什么要双绞线、为什么以太网标准里会写 10BASE5。介质不只是“线”的问题,它决定了设备怎么共享、冲突怎么发生、距离能拉多长。下面按同轴电缆、双绞线、光纤三条线讲,重点放在新手能看懂的选择逻辑上。
4.1 同轴电缆:一根线挂很多设备,便宜过吗
同轴电缆早期常见于有线电视线路,同轴线缆要实现多设备互联,可以使用耦合器,在耦合器的每个接口下接一个设备。画同轴线缆时可以用一根线表示,一根线上承载多个设备,这就是共享型网络的直观样子。以太网标准里有 10BASE5:10 表示每秒可以传 10M,BASE 表示基于一个标准进行传输,在同轴电缆上进行曼彻斯特编码传输,5 表示传输距离 500 米。这个命名拆开看并不神秘,数字和字母都在说“速度、传输方式、距离”。
共享一根线带来的问题是冲突。设备互相传输时会产生数据碰撞,数据在这个范围里碰撞,这个范围就叫冲突域。设备越多,冲突域越大,传输越慢,而且共享型网络没有私密性可言,同一根线上的设备容易互相影响。同轴电缆本身也比较贵,所以它逐渐不再是主流选择。但学它有价值:冲突域、共享介质、CSMA/CD 这些概念,都是从这类场景里长出来的。
为了避免冲突,早期以太网使用 CSMA/CD,也就是载波侦听多路访问/冲突检测。新手可以记成三句话:先听后发,一个设备先去听线上有没有电压摆动值,听完后发现线是静止的,就开始发送数据;边听边发,发送过程中继续听;冲突停发,如果两台设备同时听到线是静止的,都开始发,先听到线上有电压摆动的就停止发送。停止之后会有一个退避算法,计算一个值,比如 10 秒,这段时间内不往线上发,10 秒后再去听线上是否还被占用,这个过程叫随机延迟后重发。它不能完全消灭冲突,但能把冲突后的混乱压下去。
注意:退避算法里的“10 秒”只是帮助理解的举例,真实系统不会让你等这么久,别把举例数值当成固定标准。
4.2 双绞线:5类6类和千兆八根线到底怎么理解
双绞线是今天更常见的介质,分为 UTP 非屏蔽双绞线和 STP 屏蔽双绞线。5 类、6 类指的是双绞线的类型,类别越高,通常意味着对更高频率和更高速率的支持更好。新手不必一开始背全部电气参数,先记住“类”是线的等级,不是网速开关。双绞线如果是千兆,那么八根线都用了;百兆场景里常见只用到其中几根,但具体以设备和水晶头接法为准,别自己想当然。
为什么双绞线要“绞”?你可以把它想成两根线互相缠着走,外界干扰对两根线的影响更接近,接收端更容易把差值还原出来。UTP 没有额外屏蔽层,靠绞合和差分传输抵抗干扰,布线轻便;STP 多了屏蔽层,适合干扰更强的环境,但安装和接地更讲究。对新手来说,家里或普通实验室先认识 UTP 就够了,别一上来追求“屏蔽线一定更好”,接法不对反而容易出问题。
双绞线让设备可以点对点接入,不再像同轴共享型网络那样一根线挂一串设备。冲突域被拆小之后,网络稳定性和私密性都更好。你在排查时如果发现“换一根网线就好了”,别只觉得是玄学,可能只是水晶头压接不良、线序不对或线材类别不匹配。物理层问题往往很朴素,朴素到容易被忽略。
4.3 光纤:为什么远距离和抗干扰会想到它
光纤用光信号传输,适合距离更长、干扰更复杂的场景。对零基础新手,不需要深入光学原理,只要理解它和铜缆的差别:铜缆传电信号,光纤传光信号;光纤通常更不怕电磁干扰,传输距离也更有优势,但接口、模块和施工成本更高。选介质时先问三个问题:距离多远、环境干扰大不大、预算和接口能不能配套。三个问题答完,选择范围就小了很多。
| 介质 | 常见场景 | 新手要关注的点 | 容易忽略的坑 |
|---|---|---|---|
| 同轴电缆 | 早期共享型网络、有线电视线路 | 共享介质、冲突域、10BASE5 含义 | 一根线挂太多设备,冲突和私密性问题明显 |
| 双绞线 | 电脑、交换机、嵌入式网口 | UTP/STP、5类/6类、千兆八根线 | 水晶头压接不良、线序不对、类别不匹配 |
| 光纤 | 远距离、抗干扰要求高的链路 | 光信号、接口模块、施工成本 | 接口类型不配套,弯折和清洁问题 |
把这张表放在手边,遇到“该用什么线”的问题先对场景,不要先对价格。物理层选型的血泪经验之一,就是只看便宜买了线,最后发现接口不配套,整条链路返工。
5. 新手最容易踩的坑:物理层和链路层排查清单
物理层的问题有一个特点:现象很吓人,原因很朴素。灯不亮、时通时断、换设备就好、重启又复发,新手很容易把它归为玄学。其实按“现象→原因→解决”的顺序走,大多数坑都能定位。下面这份排查清单来自共享介质、双绞线和最小网络三件套的常见场景,建议你收藏成自己的检查顺序,不要等翻车了再临时搜索。
5.1 五个高频现象先对号入座
第一个现象是网卡灯不亮,系统里也看不到对应网卡。原因通常是网线没插紧、水晶头压接不良、网卡被禁用,或者设备根本没有识别到网口。解决办法是先看两端接口指示灯,再换一根确认可用的网线,然后在系统里查看网卡是否被禁用;嵌入式板子还要看驱动和供电是否正常。不要一上来就重装系统,先做物理检查。
第二个现象是ping 127.0.0.1能通,但访问同网段设备不通。原因可能是本机地址和对方不在同一网段、子网掩码配置不对,或者对方设备没有开机。解决办法是分别查看两端地址和掩码,确认网段一致,再用ping测对端地址。回环能通只说明本机协议栈大概率正常,不代表网线和外部链路没问题。
第三个现象是同轴共享型网络里设备一多就变慢。原因是所有设备共享一根线,冲突域变大,碰撞概率上升。解决办法是减少同一段共享介质上的设备数量,或者升级到点对点接入的双绞线方案。学习时要把“冲突域”画出来,别只背定义;能画出范围,才知道问题出在哪一段。
第四个现象是换了千兆设备,网速却没有明显变化。原因是双绞线类别、水晶头接法、网卡端口能力或对端设备能力里有一项没跟上,千兆场景下八根线都要用到位。解决办法是逐项核对线材类别、接口速率和协商结果,不要只看路由器包装盒上的数字。物理层是木桶,短板决定上限。
第五个现象是设备时通时断,动一下网线就恢复。原因是接口松动、线材内部断芯、水晶头氧化或附近干扰源影响。解决办法是固定线缆、换端口、换线测试,并让网线远离明显干扰源。这类问题最容易让人误判成“网络不稳定”,其实先把物理连接稳定住,很多玄学现象就消失了。
5.2 排查顺序怎么走:从看得见到看不见
建议按“供电与指示灯—线材与接口—网卡识别—地址配置—协议栈测试”的顺序走。先看得见的东西:设备有没有电,接口灯亮不亮,线有没有插紧。再看线材和接口:换一根已知可用的线,换一个端口,确认水晶头没有松动。接着看系统里网卡有没有出现,驱动是否正常。然后看地址和掩码是否匹配,最后才用本机回环和同网段测试确认协议栈。
这个顺序的好处是避免“跳步”。新手常犯的错是先改地址、再换协议、最后才回头看网线,结果越调越乱。物理层排查要有一点“先看路,再看车”的意识:路没通,车配置得再漂亮也走不了。
提示:每次只改一个变量,改完立刻复测。一次改三处,即使恢复了也不知道是哪一处起的作用。
嵌入式场景还要多一步:看串口日志里网卡初始化有没有报错,看板子供电和网口变压器是否正常。不要用电脑上的经验硬套所有设备,板子的物理接口和驱动状态往往更脆弱。把这套顺序走熟,你以后遇到“网不通”就不会慌,而是知道先看哪一层。
6. 下一步学什么:从物理层走到以太网和tcpip的路线
物理层学完,不建议立刻跳去啃复杂协议字段,先把“介质—网卡—协议栈”这条线走顺。下一步可以按三段走:第一段,复习三种交换方式,能用自己的话讲清电路交换、报文交换、分组交换的区别;第二段,把 Ethernet 的共享介质、冲突域和 CSMA/CD 串起来,理解 10BASE5 这种命名怎么读;第三段,回到 tcpip,看封装和解封装在分层里怎么发生。嵌入式方向可以再加一段:确认手头设备的网卡识别、地址配置和本机回环测试,把物理层观察变成日常习惯。
| 阶段 | 先学什么 | 做到什么算过关 | 建议练习 |
|---|---|---|---|
| 第一段 | 三种交换方式 | 能举生活例子说明包场、拼车、切箱拼车 | 合上文档复述一遍 |
| 第二段 | 共享介质与冲突域 | 能画出冲突域范围,解释先听后发、边听边发、冲突停发 | 用同轴和双绞线各画一次 |
| 第三段 | 封装与解封装 | 能说清上层加头、下层拆头的方向 | 拿快递包裹做一次类比讲解 |
| 嵌入式加练 | 网卡、地址、回环 | 能看到网卡、能测通 127.0.0.1 | 记录一次排查顺序 |
最后给一个具体技巧:每学一个概念,就把它放回“数据从 A 到 B”的路径里,问自己它发生在哪一段、解决什么问题、失败时看什么现象。比如学到报头,就问它是在封装时加的还是解封装时拆的;学到冲突域,就问它范围到哪里、设备增多会怎样。这样学不会散。
我第一次带新人时,总想一次把 Ethernet、tcpip 和物理层全讲完,结果对方笔记记满却不敢动手。后来我改成每讲一个概念就做一次最小观察,从那以后我每次带人入门都强制走一遍“看网卡、测回环、画冲突域”的流程,不再急着堆术语。希望帮到你。
本文还有配套的精品资源,点击获取