局域网和广域网
局域网
局域网(Local Area Network,LAN)是一种覆盖范围较小、用于连接同一物理地点(如家庭、办公室、学校或企业内)的计算机和其他设备的计算机网络。
特性
局域网的特性主要由三个要素决定:拓扑结构、传输介质 和 介质访问控制方式,其中介质访问控制方式是最关键的因素,它决定了局域网的主要技术特性。
常见的局域网 拓扑结构 主要包括以下四类:
- 星形结构
- 环形结构
- 总线形结构
- 星形与总线形结合的复合型结构
在 传输介质 方面,局域网可以采用铜缆、双绞线和光纤等多种介质,其中双绞线是当前的主流传输介质。
局域网常用的 介质访问控制方法 包括 CSMA/CD 协议、令牌总线协议和令牌环协议。 其中,CSMA/CD 协议和令牌总线协议主要应用于总线形局域网,而令牌环协议则主要用于环形局域网。
实现
局域网主要包含三种实现:
- 以太网(目前使用范围最广)。逻辑拓扑是总线形结构,物理拓扑是星形结构。
- 令牌环(Token Ring,IEEE802.5)。逻辑拓扑是环形结构,物理拓扑是星形结构。
- FDDI(光纤分布数字接口,IEE802.8)。逻辑拓扑是环形结构,物理拓扑是双环结构。
以太网
在实际的局域网应用中,由于以太网占据垄断地位,所以基本上成为了局域网的代名词, 需要对局域网的概念有深入了解。
传输介质
以太网常用的传输介质有 4 种:粗缆、细缆、双绞线和光纤,这里需要熟练掌握它们的英文名, 常在选择题中出现:
参数 | 10BASE5 | 10BASE2 | 10BASE-T | 10BASE-FL |
---|---|---|---|---|
传输媒体 | 粗缆 | 细缆 | 双绞线 | 光纤对 |
编码 | 曼彻斯特编码 | 曼彻斯特编码 | 曼彻斯特编码 | 曼彻斯特编码 |
拓扑结构 | 总线形 | 总线形 | 星形 | 点对点 |
网络适配器 | 早期以太网 | 早期以太网 | 现代以太网 | 现代以太网 |
注意上述传输介质的英文名称其实是挺有讲究的:
首先是前缀的数字,代表的是传输介质的速率,10 代表 10 Mbps,100 代表 100 Mbps,注意这里是 Mbps 而不是 MB/s。
其次是中间的 base 一次,代表基带传输(Baseband),基带与宽带(broadband)相对应。基带表示直接传输原始数字信号,不调制;宽带代表使用模拟调制技术传输多个频道信号,常见于有线电视等。
最后是后缀的英文字母,代表的传输介质的类型:
帧格式
如上图所示,以太网帧格式从逻辑上可以分为物理层控制字段、帧首部、数据负载、差错校验字段这四个部分,每个字段的具体说明如下所示:
- 物理层控制字段
- 前导码(Preamble):7B
- 由 7 字节的交替的 1 和 0 位组成,用于同步接收方的时钟。
- 帧开始分隔符(Start of Frame Delimiter, SFD):1B
- 通常为 10101011,标志帧的开始。
- 前导码(Preamble):7B
- 帧首部: 固定为 14B
- 目的地址(Destination MAC Address):6B
- 指定帧的接收者的物理 MAC 地址。
- 源地址(Source MAC Address):6B
- 指定帧发送者的物理 MAC 地址。
- 类型/长度字段(Type/Length):2B
- 如果值大于或等于 0x0600(1536),则表示帧携带的数据的类型(例如 IPv4、IPv6、ARP 等)。
- 如果值小于或等于 0x05DC(1500),则表示数据字段的长度。
- 目的地址(Destination MAC Address):6B
- 负载
- 数据和填充(Data and Padding): 范围为 46-1500B
- 携带帧的有效载荷,即要传输的数据。
- 如果数据少于 46 字节,则需要填充,确保数据字段的最小长度为 46 字节。
- 数据和填充(Data and Padding): 范围为 46-1500B
- 差错校验字段
- 帧校验序列(Frame Check Sequence, FCS):4 字节:
- 一个循环冗余校验(CRC)值,用于错误检测。接收方计算帧的 CRC,并与这个字段进行比较,以确定帧是否在传输过程中被损坏。
- 帧校验序列(Frame Check Sequence, FCS):4 字节:
注意
为什么 前导码 和 帧开始定界符 不包括在以太网帧的最小和最大大小计算中?
需要注意的是,Preamble 和 SFD 确实是以太网标准规定的格式的一部分,但它们属于 物理层 的内容,而非 数据链路层 中的以太网帧内容。
以太网分为 物理层 和 数据链路层。物理层负责比特级的传输和同步,而数据链路层负责处理数据的封装、地址标识和错误检测。
以太网帧的最大和最小大小为多少?
以太网帧的最小和最大大小(不包括前导码和帧开始定界符)有明确的规定,目的是确保帧的有效性并避免冲突。
其中最小大小为 64B,最大大小为 1518B。 最小帧大小的要求是为了确保冲突检测机制(如 CSMA/CD)能够正常工作。 最大帧大小也称为 标准帧 或 最大传输单元(MTU),它限制了每个帧可以承载的数据量,以确保设备处理负载不会过大。
以太网帧数据部分的最小大小为 46B,最大大小为 1500B。
以太网快速填充: 当 IP 数据包的大小 小于 46 时(以太网设备会读取 IP 的首部的长度字段以得知),以太网设备会自动在其末尾填充 0,是其大小为 46 字节。
无线局域网
帧格式
802.11 帧共有三种类型,即数据帧、控制帧和管理帧。数据帧的格式如图 3.28 所示。
802.11 数据帧由以下三部分组成:
- MAC 首部,共 30 字节。帧的复杂性都在 MAC 首部。
- 帧主体,即帧的数据部分,不超过 2312 字节。
- 帧检验序列 FCS 是 MAC 尾部,共 4 字节。
可以观察到,802.11 帧首部中字段很多,但是其实主要考察的就是个别字段。
其中最重要的是 4 个地址字段(都是 MAC 地址)。这里仅讨论前三个地址(地址 4 用于自组网络)。 这三个地址的内容取决于帧控制字段中的 “去往 AP” 和 “来自 AP” 这两个字段的数值,如下表所示:
去往 AP | 来自 AP | 地址 1 | 地址 2 | 地址 3 | 地址 4 |
---|---|---|---|---|---|
0 | 1 | 接收地址 = 目的地址 | 发送地址 = AP 地址 | 源地址 | —— |
1 | 0 | 接收地址 = AP 地址 | 发送地址 = 源地址 | 目的地址 | —— |
💡核心记忆点:
- 地址 1:谁接收这帧(无线信号的接收者)
- 地址 2:谁发的这帧(无线信号的发送者)
- 地址 3:通信的最终目标或源(真实的目的地或来源)
VLAN
VLAN(Virtual Local Area Network)虚拟局域网,是通过逻辑划分的方式,把一个物理局域网拆分成多个独立的子网。
打个比方:一家公司只有一个办公室(一个交换机),但希望让财务部、技术部和人事部各自的数据隔离,互不干扰。VLAN 就像是在这一个办公室里,用“看不见的墙”把它们隔开,互相听不到对方说话。
⚙️ 那么 VLAN 是如何实现的呢?
VLAN 是通过 交换机 和 VLAN 标签(Tag) 实现的。简单来说:
- 普通交换机:看网线在哪个口(port)来转发数据。
- 支持 VLAN 的交换机:会在数据包中加上 VLAN 标签,按“部门”来转发。
802.3c 标准定义了支持 VLAN 的以太网帧格式的扩展。它在以太网帧中插入一个 4 字节的 标识符(插在源地址字段和类型字段之间),称为 VLAN 标签,用来指明发送该帧的计算机属于 哪个虚拟局域网。插入 VLAN 标签的帧称为 802.1Q 帧,如下图所示。
其中 VID(VLAN ID)为 12 位,一个 VLAN 交换机最多支持 4096 个 VLAN。
📦 VLAN 示例: 假设有三台电脑:
- PC1:财务部,接在 VLAN 10
- PC2:技术部,接在 VLAN 20
- PC3:人事部,接在 VLAN 30
它们都连在一台交换机上,如果没有 VLAN,三者可以互相通信。如果配置了 VLAN:
- PC1 发的广播,只有 VLAN 10 内的设备能收到。
- PC2 和 PC3 不会收到 PC1 的数据,除非通过路由器(或者三层交换机)跨 VLAN 通信。
广域网
PPP 协议
PPP(Point-to-Point Protocol)是一种数据链路层协议,用于在两个点对点连接的网络之间传输数据。PPP 最初是为拨号连接设计的,但它后来被广泛用于建立各种类型的点对点连接,包括 DSL(数字用户线路)、ISDN(综合业务数字网)和串口连接等。