🌐 第五章 以太网与无线局域网
📄 一句话概括

送数据的第一件事不是"怎么送",而是"该找谁来送":先比较目标 IP 和自己在不在同一个网络(收 3.8 / 3.11)——在,就交给交换机直接送达,根本不出门;不在,才交给默认网关让路由器转发(收 3.7)。第五章讲的就是"在"的这一条路,教材给它配的标题是「优先在同一网络中传输数据」。而走这一条路的只有两种介质:以太网(有线,IEEE 802.3)和无线局域网 Wi-Fi(无线,IEEE 802.11)。它们不是两种网络,而是同一层的两副肉身——都用 MAC 地址、都传数据帧、都要解决同一个难题:这段"路"是大家共用的,谁先说话,撞了怎么办。有线选的是"先听后发、撞了退避重发",无线选的是"先听再问、尽量避开"——这一条差别,就是有线比无线更稳的根本原因。

📝 本节和前面几节的关系

这一节是第五章的开篇章,也是全书一次"视角回落":从"隔着好几个网络"退回到"同一段路之内"。

  • 3.2 网络接口层:本节正式走进那一层——当时说它"只管一段",这一章讲的就是"这一段到底怎么管"
  • 3.6 数据的称谓:本节的主角"数据帧"就是那一层的数据的名字
  • 3.16 ARP 与 MAC 地址:那次是配角,本节成了主角
  • 3.8 / 3.10 / 3.11 网段与子网掩码:本节第一条判据"在不在同一个网络"靠的就是它们
  • 3.7 路由与默认网关:本节的"另一条路"
  • 2.2 网络设备 / 2.3 链路:网卡、交换机、AP 是本节的主角;网线和电波都算"链路"
  • 4.11 五层协议点名:那次点过一次名,本节是把"网络接口层"那一栏展开来讲

一、第五章要回答的问题

前面四章,数据一路从"这台机器"走到了"那台机器":第一章说清网络是什么、为谁而生;第二章说清它由哪些零件搭起来;第三章说清跨过好几个网络送数据靠的是 TCP/IP 这套通用语言;第四章说清送到之后,Web 网站是怎么被打开。

但有一件事一直没讲透:

最后那一段路——从交换机到你的电脑、从 AP 到你的手机——到底是怎么把数据送出去的?

第三章 3.2 曾给过一句提示:网络接口层"只管一段"。第五章就是把这句话展开。

教材给这一章配的副题是「优先在同一网络中传输数据」。这半句话本身就是答案——送数据之前,先看目标在不在自己这个网络里。这一节是它的开场,把两条路分开,再把走"近路"的两种介质认全。

二、第一条判据:目标在不在自己这个网络里

发送方在动手之前,只做一件事:拿目标 IP 和自己在不在同一个网络做比较。

比较的方法就是 3.11 学的那个算法(目标 IP AND 自己的子网掩码),算出来的结果和自己的网段比:

比较结果 这条路通向哪儿 谁来负责
网络部分相同 同一个网络 交换机直接送达(不出门)
网络部分不同 别的网络 交给默认网关,由路由器转发
💡 举个数

你在 192.168.1.10/24: - 找 192.168.1.20 → 前 24 位一样 → 同一个网络 → 交换机直接送 - 找 192.168.2.20 → 前 24 位不一样 → 别的网络 → 交给默认网关 192.168.1.1

注意判断依据是算出来的网段,不是"前三段看着像"(3.8 那个坑还记得吗)。

为什么设计成"优先走同一网络"? 四条理由,都很实在:

  1. 快:局域网内是交换机转发,延迟在微秒级;绕出去要经过路由器,还要排队
  2. 省:出口带宽是全公司共用的稀缺资源。两台电脑互传文件、访问局域网里的 NAS,根本不该占用出口(收 1.3 出口只有一个)
  3. 简单:交换机干的活只是"看门牌转发";路由器要算路(收 3.7 的最长前缀匹配),贵得多也忙得多
  4. 稳:多一跳就多一个故障点。能不出门就不出门

这一条也解释了 3.8 说过的那句"分段能隔离广播、限制故障、方便管理"——分段之所以有好处,正因为段内通信不惊动别人。

三、走这条路只有两种介质

同一网络内的传输,物理上只有两种做法:

以太网(Ethernet)——有线

无线局域网(Wi-Fi)——无线

同一层,两副肉身

这一个对照表值得抄下来:

以太网 无线局域网(Wi-Fi)
介质 网线(双绞线 / 光纤) 空气(无线电波)
标准 IEEE 802.3 IEEE 802.11
地址 MAC 地址 MAC 地址(同一套)
传输单位 数据帧 数据帧(同一套)
介质共用方式 CSMA/CD:先听后发,撞了退避 CSMA/CA:先听再问,尽量避撞
收发方式 交换机时代全双工 同一信道半双工(轮流说)
稳定性 稳(独占一条线) 受干扰(共享一片空气)
❗ 三句话记住这张表
  1. 它们是同一层的两种实现,不是"两种网络"——所以换介质不用改 IP、不用改 HTTP
  2. 身份和信封完全一样:都用 MAC 地址、都发数据帧
  3. 不一样的是"路":一条是专属的线,一片是大家共用的空气——规矩的分歧全从这里来

四、真正的难题:这条路是大家共用的

有线也好无线也好,都有一个绕不开的问题:一段路上不止你一个人在说话。

以太网曾经的办法:CSMA/CD

早期用集线器的时候,所有电脑接在同一根线上:一个人说话,所有人都听得见;两个人同时说,信号就撞在一起,谁也听不清(这就是"冲突")。

于是有了 CSMA/CD(载波监听多路访问 / 冲突检测),规则像开会时的礼貌:

  1. 先听后说——听线路是否空闲,空闲才开口
  2. 边说边听——一边发一边听有没有撞上
  3. 撞了退避重发——双方各自随机等一小会儿再重试(随机是为了避免又同时开口)
📝 现在为什么很少提它了

因为交换机取代了集线器:每个口独享带宽、收和发各用一对线(全双工),根本不会撞。这就是 2.2 里"集线器喊话模式被淘汰"的技术原因。

但概念要记住——它解释了"为什么早期以太网是半双工的",也是理解 Wi-Fi 那套规矩的参照物。

Wi-Fi 的办法:CSMA/CA

无线不能用 CD——因为你没法"边说边听":自己发出的声音会盖住别人传来的信号,撞了也听不出来。

所以无线改成避开冲突(CA, Collision Avoidance):

  1. 先听——信道忙不忙
  2. 再随机等一小段——空出一点时间差,减少两个人同时开口的概率
  3. 发——发完等对方回一个"收到"才算成功,没收到就重来
💡 一句话记住两者的差别

有线是"撞了再补救"(检测),无线是"尽力别撞"(避免)。

加上无线是"一片空气大家共用、还要互相等",所以同一信道的人一多,就得排队——这就是 4.11 里"信号满格却卡"的物理原因。

五、这一层的数据长什么样:数据帧

3.6 说过,数据穿到网络接口层,名字叫数据帧。以太网帧(简化版)长这样:

| 目的 MAC | 源 MAC | 类型  |   数据    |  FCS  |
|  6 字节  | 6 字节 | 2 字节| 46~1500字节| 4 字节|
字段 干什么用
目的 MAC 送给谁(收 3.16)
源 MAC 谁发的
类型 里面的数据是什么:IPv4 / IPv6 / ARP
数据 上层交下来的(就是 3.6 说的"数据包")
FCS(帧尾) 校验,路上坏了能发现——3.6 说"只有数据帧带帧尾校验",就是它

这张结构图里藏着一个很值钱的推论:

交换机只看前 12 个字节(两个 MAC)就决定从哪个口送出去。它根本不用看懂 IP。

所以交换机的工作极其便宜、极快——它是"只看门牌就转发的传达室",而不是"要看地图的司机"(那是路由器,收 2.2 / 3.7)。

另外,这一层对上层数据的大小有要求:一帧能装的数据上限就是 3.4 学的 MTU = 1500 字节——超了要分片(收 3.4)。

六、为什么"能用线就用线"

同样是局域网,有线为什么总是更快更稳?把差异摊开看:

对比项 以太网 Wi-Fi
介质 独占(一根线就你一个人用) 共享(一块空气大家一起用)
收发 全双工(同时收发) 半双工(轮流说)
干扰 基本没有 微波炉、隔壁 AP、承重墙都算
每次发送的额外动作 几乎没有 要等确认、重传概率高
延迟抖动 极小 明显

所以有几个做法是行业共识:台式机和服务器尽量插线、监控摄像头尽量插线、AP 的上联一定要插线(不然所有人都卡)。无线解决的是"方便",有线解决的是"又稳又快"——这是两件不同的事。

七、这一段出问题,长什么样

链路层是排障的最底层,现象很有特征:

你看到的现象 可能断在哪儿 先查什么
网口灯不亮 物理链路 线插好没、换根线、换个口
Wi-Fi 列表里搜不到 SSID 无线链路 AP 开没开、距离、5GHz 穿墙差
连上了但 ping 不通网关 链路层 / 网段配置 IP 和掩码配对没(收 3.11 / 3.12)
能 ping 通网关,ping 不通外网 已经出了本节的范围 路由器出口、DNS(收 3.12)
Wi-Fi 时快时慢、丢包 介质共享 信道拥挤、干扰、距离
💡 一条排障直觉

"灯亮不亮、连没连上"是链路层的事;"能不能通"才往上走。 2.4 讲的"链路通 vs 网络通",说的正是这条分界线。

八、动手:Demo50 把两种介质和两条路都看一遍

🧪 目标

亲眼看到四件事:我的 MAC 长什么样、我走的哪条路、有线比无线稳在哪、Wi-Fi 的信道有多挤。

第 1 步|看自己网卡的 MAC 地址。

ipconfig /all

找"物理地址"那一行——XX-XX-XX-XX-XX-XX,这就是你网卡的身份证(收 3.16)。无线网卡和有线网卡各有一个,把它们都记下来。

第 2 步|看链路速率。

wmic nic where "NetEnabled=true" get Name,Speed

Speed 单位是 bps。1000000000 就是千兆。或者更直观:设置 → 网络和 Internet → 属性,看"链接速度"那一行。

第 3 步|看同网段的邻居名册。

arp -a

列出来的全是同一个网络里的邻居(IP ↔ MAC 的对照)。注意看:列表里基本只有同网段的地址——因为只有同一段内才需要靠 MAC 送(收 3.16 的 ARP 名册)。

第 4 步|确认"我先走哪条路"。

tracert 192.168.1.1
tracert 8.8.8.8

第一条只有一跳(就在本网段,交换机直接送到网关);第二条一路好多跳。这就是本节第二节那条判据的现场(收 3.7)。

第 5 步|看 Wi-Fi 的家底。

netsh wlan show interfaces

一次看全:SSID(连的哪个网络)、信道(Channel)、频段(2.4G / 5G)、信号强度、接收/发送速率。留意"无线电类型"那一行——它告诉你现在跑的是 802.11ac 还是 ax。

第 6 步|看周围有多挤。

netsh wlan show networks mode=bssid

这一条是本节最直观的一屏:把所有能搜到的 AP 和它们的信道全列出来。数一数有几个 AP 挤在同一个信道上——那就是"空气是共享的"的实物证据。

第 7 步|有线 vs 无线的正面对比。

先在 Wi-Fi 下:

ping -n 20 8.8.8.8

记下平均延迟和最大、最小延迟的差(抖动)。

然后插上网线(或断开 Wi-Fi 用有线),同一条命令再来一遍。

对比两组数字。有线一般延迟更低,而且"最大减最小"这个差值会小得多——稳定,就是有线最值钱的地方。

第 8 步|30 秒实验:把帧看一次。

如果装了 Wireshark,随便开始一次抓包,在过滤框里敲:

eth.addr

点开任意一个帧,展开"Ethernet II"那一层,你会看到目的 MAC 和源 MAC 两个字段——上面那张帧结构图就摆在眼前。往下展开才看到 IP,再往下才看到 TCP——层层套娃,一层一个头(收 1.6 / 3.6)。

第 9 步|顺着现象倒推。 把家里/公司的 Wi-Fi 和有线各拔一次、插一次,观察:

九、常见误区

  1. "以太网和 Wi-Fi 是两种不同的网络。" —— 它们是同一层(网络接口层)的两种实现。换了介质,IP 不用改、HTTP 也不用改——因为上面的层根本不管底下是线还是空气(这正是分层的价值,收 1.6)。
  2. "判断是不是同一网络,看 IP 前三段一不一样就行。" —— 必须用子网掩码算(收 3.11)。/25 的网络里,x.100 和 x.200 前 3 段一样却在不同的网络。
  3. "同一网络的传输也要经过路由器。" —— 不用。交换机直接送达,一个字节都不出网关。只有网络部分不同时才交给默认网关(收 3.7)。
  4. "MAC 地址是网卡出厂时随机给的、会变。" —— MAC 是出厂烧录、理论唯一的硬件地址(虽然现在操作系统允许软件伪装,那是另一回事)。它跟网卡绑死,IP 才跟位置走(收 3.16)。
  5. "交换机要看 IP 才能转发。" —— 交换机只看帧头那两个 MAC。看 IP 转发的是路由器。两台设备工作在不同层,这正是 2.2 讲的按层归队。
  6. "Wi-Fi 信号满格就说明网速会快。" —— 信号满格只说明你和 AP 之间那段没衰减。空气是共享的,同一信道人一多照样排队——这是"信号满格却卡"的原因。
  7. "无线和有线只是方不方便的区别。" —— 差别是结构性的:独占 vs 共享、全双工 vs 半双工、有无干扰。所以延迟和稳定性不是一个量级。
  8. "以太网早就不用 CSMA/CD 了,这个概念可以跳过。" —— 概念还是要懂:它解释了为什么早期以太网是半双工、为什么要抢线;也是理解 Wi-Fi 那套"避免冲突"规矩的参照物。
  9. "数据帧和 IP 数据包是同一个东西。" —— 是同一份数据的两个阶段的两种叫法。数据包在网际层,外面再套上 MAC 帧头才成为数据帧(收 3.6 的套娃图)。
  10. "Wi-Fi 和光纤、网线是完全不同的技术,学一处就够。" —— 上面全都一样的:同样的 MAC 地址、同样的数据帧、同样的 IP 与 HTTP。只有最底下那一段"怎么把信号送出去"不同——这就是为什么换个网络环境,你的应用完全不用改。

十、动手自测

❓ 自测一下
  1. 第五章的副题「优先在同一网络中传输数据」是在说什么?
  2. 发送方怎么判断"目标在不在同一个网络"?判断依据是什么?
  3. 两种情况分别交给谁?各自要多做哪些事?
  4. 以太网和 Wi-Fi 的标准号分别是多少?
  5. 为什么说它们是"同一层,两副肉身"?哪三样是一样的?
  6. 以太网的 CSMA/CD 和 Wi-Fi 的 CSMA/CA,核心差别是什么?
  7. 为什么无线不像有线那样"边说边听"?
  8. 以太网帧里"目的 MAC"和"源 MAC"各是什么?交换机靠它做什么?
  9. 为什么"能用线就用线"?至少说出三条结构性差异。
  10. 网口灯不亮、连上了却 ping 不通网关、Wi-Fi 时快时慢,分别该先查什么?

答案: ① 说的是送数据前先看目标在不在自己这个网络里:在就由交换机直接送达、不出门;不在才交给默认网关让路由器转发。"优先"意味着路由器是不得已才用的设备。 ② 拿目标 IP 和自己的子网掩码做 AND,算出目标网段,再和自己的网段比较(收 3.11)。依据是"网络部分"是否相同,不是前三段看着像不像。 ③ 网络部分相同 → 同一个网络:由交换机查 MAC 地址表直接送达,不经过网关。网络部分不同 → 别的网络:交给默认网关(路由器),由路由器按路由表逐跳转发(收 3.7)。 ④ 以太网 IEEE 802.3,无线局域网 IEEE 802.11。 ⑤ 因为它们都属于网络接口层,只是物理介质不同。一样的至少有三样:都用 MAC 地址、都传数据帧、都要面对"介质大家共用"这个难题。所以换介质不影响 IP、TCP、HTTP。 ⑥ CD 是"冲突检测"——撞了再补救(边说边听,撞上就退避重发);CA 是"冲突避免"——尽力别撞(先听、再随机等一小段、发完要等对方确认)。 ⑦ 因为自己发出去的信号会盖住别人传来的信号,撞了也听不出来——所以无线只能"事先避免",没法"事后检测"。 ⑧ 目的 MAC = 送给谁,源 MAC = 谁发的(各 6 字节)。交换机靠这两个字段查 MAC 地址表,决定从哪个口把帧送出去——它完全不看 IP。 ⑨ ①介质独占 vs 共享(一根线是你一个人的,一块空气是大家的);②全双工 vs 半双工(有线能同时收发,无线要轮流说);③几乎没有干扰 vs 干扰很多(微波炉、隔壁 AP、承重墙);另外无线每次发送还要等确认,重传概率更高。 ⑩ 网口灯不亮 → 查物理链路(线、口、灯),这是最底下那层。连上了却 ping 不通网关 → 查链路层和网段配置:IP 与掩码配对了没(收 3.11 / 3.12)。Wi-Fi 时快时慢 → 查介质共享:信道拥挤、距离、干扰(用 netsh wlan show networks mode=bssid 看周围 AP)。

十一、下一步学什么

相关笔记