Day05-01|2.5.1 网络的基本概念
Day05-01|2.5.1 网络的基本概念:从互联设备到端到端系统
对应教材:上篇·综合知识·第 2 章“计算机系统基础知识”·2.5.1 网络的基本概念
学习定位:计算机网络把独立的设备、系统和用户连接起来,使数据、服务和资源能够跨进程、跨主机和跨地域共享。系统架构设计师需要掌握网络组成、拓扑、协议、地址、带宽、延迟、可靠性和安全边界,才能把应用部署、服务通信、云平台和分布式系统设计成可运行的整体。
一、今日目标
完成本节后,应能解释计算机网络、通信子网和资源子网的概念;掌握网络节点、链路、协议、服务和拓扑结构;理解局域网、城域网、广域网和互联网的区别;区分带宽、吞吐、延迟、抖动、丢包和可用性;能够从端到端角度分析服务访问慢、跨地域部署和网络故障案例。
二、计算机网络的组成
计算机网络是将地理位置不同、功能独立的计算机、设备和系统通过通信线路和通信设备连接起来,并按照网络协议进行数据交换的系统。它不仅包括网卡、交换机、路由器和光纤,还包括协议、地址、服务、管理和安全机制。
| 组成 | 典型对象 | 主要职责 |
|---|---|---|
| 终端节点 | 服务器、PC、手机、传感器 | 产生或消费数据 |
| 中间节点 | 交换机、路由器、网关、防火墙 | 转发、隔离和控制流量 |
| 传输介质 | 双绞线、光纤、无线电 | 搬运信号和比特 |
| 网络协议 | Ethernet、IP、TCP、HTTP | 规定通信规则 |
| 地址与命名 | MAC、IP、端口、域名 | 标识节点、接口和服务 |
| 管理与安全 | 监控、认证、访问控制 | 保证可用、可管和可信 |
网络中的资源可以分成终端资源和通信资源。服务器、数据库和文件是被访问的资源;链路、带宽、地址、端口、连接和队列是通信资源。网络架构的性能取决于端点和通道的共同能力,不能只看某一台服务器或某一条线路。
三、通信子网与资源子网
通信子网由通信设备、通信线路和通信协议组成,负责数据传输和转发;资源子网由主机、服务器、终端和应用组成,负责数据处理和资源提供。这个划分有助于分析网络中的“传输瓶颈”和“服务瓶颈”。
例如,一个文件下载速度低,可能是资源子网中的磁盘读取慢、服务器 CPU 或线程不足,也可能是通信子网中的链路拥塞、丢包重传、路由绕行或带宽不足。排查时要分别测量端点处理时间、网络往返时间、传输吞吐和队列等待。
四、网络拓扑结构
网络拓扑描述节点和链路的连接方式。总线型结构中多个节点共享一条主干,成本低但故障和冲突影响范围大;星型结构中节点连接到中心设备,易管理但中心设备成为关键点;环型结构中节点形成闭环,传输路径明确但某些故障会影响通信;树型结构便于层次化扩展;网状结构提供多条路径,可靠性高但成本和管理复杂;混合拓扑则根据区域和业务混合使用。
| 拓扑 | 优点 | 缺点 | 典型架构含义 |
|---|---|---|---|
| 总线型 | 简单、成本低 | 共享竞争、故障影响大 | 适合规模有限的共享介质 |
| 星型 | 易扩展、易管理 | 中心设备故障影响较大 | 常见交换式局域网 |
| 环型 | 路径明确、可控 | 环路故障处理复杂 | 特定工业和通信场景 |
| 树型 | 层次清晰、扩展方便 | 上层链路可能成为瓶颈 | 园区网、分层网络 |
| 网状 | 多路径、容错好 | 成本、路由和管理复杂 | 核心网、数据中心骨干 |
现代网络通常通过交换和路由构建分层拓扑。接入层连接终端,汇聚层聚合流量,核心层提供高速转发和冗余。云数据中心还会采用叶脊、Clos 等结构提高东西向流量的并行度。拓扑选择要结合流量方向、故障域、扩展、成本和运维能力。
五、网络分类
按覆盖范围,网络可分为局域网、城域网、广域网和互联网。局域网覆盖建筑、园区或小范围区域,延迟低、管理集中;城域网覆盖城市或区域;广域网跨地域连接,受到运营商、距离、路由和链路质量影响;互联网由多个自治系统互联,路径和性能不完全可控。
按管理范围可分为专用网、公用网和虚拟专用网;按传输介质可分为有线和无线;按服务对象可分为企业网、校园网、工业网、运营商网络和物联网。企业应用跨越多个网络时,需要明确安全域、地址规划、路由、访问控制和故障边界。
六、协议、服务与分层
网络协议规定通信双方如何交换信息,网络服务则是协议向上层提供的能力。分层把复杂通信拆成相对独立的功能:应用表达业务,传输负责端到端交付,网络负责寻址和转发,链路负责相邻节点传输,物理层负责信号。
分层的优点是模块化、互操作和故障定位。应用可以在不改变物理介质的情况下演进,网络可以在不改变业务语义的情况下优化路由。分层也会产生封装、复制、校验和上下文切换开销,跨层优化需要谨慎,不能破坏安全和可维护性。
协议服务可以是面向连接或无连接、可靠或不可靠、有序或无序、面向字节流或消息。选择服务类型时要看数据丢失代价、延迟、带宽、实时性和应用实现能力。可靠性越强,通常需要更多确认、缓存、重传和状态维护。
七、网络地址与命名
MAC 地址通常用于链路层识别网络接口;IP 地址用于网络层寻址和路由;端口用于区分主机上的服务或进程;域名为用户和应用提供便于记忆的逻辑名称。一个业务请求可能经历域名解析、负载均衡、NAT、路由、防火墙和代理,实际访问地址与用户看到的域名并不相同。
地址规划要考虑网段、子网、广播、路由汇总、地址池、租户隔离和未来扩展。地址冲突、DNS 缓存、NAT 端口耗尽和安全组规则,都可能表现为应用无法访问。架构设计中应记录服务发现、健康检查、地址变更和故障切换机制。
八、网络性能指标
带宽表示链路单位时间可传输的最大数据量;吞吐量表示实际有效传输的数据量;延迟表示从发送到接收或请求完成的时间;抖动表示延迟的波动;丢包率表示数据包未成功到达的比例;可用性表示服务在规定时间内可正常访问的程度。
| 指标 | 说明 | 架构影响 |
|---|---|---|
| 带宽 | 理论传输能力 | 大文件、视频和批量同步 |
| 吞吐 | 实际完成的有效工作量 | 系统容量和扩展 |
| RTT | 往返时间 | 多次远程调用、事务 |
| P95/P99 | 延迟分位数 | 尾延迟和用户体验 |
| 丢包率 | 传输失败比例 | 重传、抖动和吞吐下降 |
| 抖动 | 延迟波动 | 音视频、实时控制 |
带宽和延迟是两个不同维度。高带宽链路不一定低延迟;高延迟链路即使带宽很大,多次小请求也可能很慢。架构优化可使用批量、连接复用、缓存、异步、压缩、边缘节点和数据就近访问减少往返和传输量。
九、网络可靠性与故障域
网络故障包括链路中断、设备故障、路由错误、地址冲突、DNS 失败、拥塞、丢包、配置错误和安全攻击。高可用网络通常使用链路冗余、设备冗余、双活/主备、动态路由、健康检查和快速收敛,但冗余本身会增加配置、状态同步和运维复杂度。
故障域是一次故障可能影响的范围。把所有服务器、交换设备和链路放在同一故障域内,即使每个设备可靠,整体仍可能因机房、电源或上游运营商故障同时不可用。架构应按机架、机房、地域和运营商设计隔离,并明确跨域复制和切换的 RTO/RPO。
十、网络安全基本边界
网络安全涉及身份、访问控制、机密性、完整性、可用性和审计。防火墙、安全组、网络分区、零信任访问、TLS、VPN、入侵检测和 DDoS 防护等机制应根据资产和风险部署。网络可达不等于业务有权限,应用仍要进行认证和授权。
安全边界要与业务边界配合。数据库不应对整个互联网开放,管理面、数据面和用户面应分离;跨租户通信要有明确策略;服务之间使用身份和最小权限而不是只依赖内网位置。安全设备引入的检查、加密和代理会影响延迟与吞吐,必须进行容量和故障验证。
十一、案例分析:跨地域服务访问延迟过高
某企业把应用部署在华东,数据库和对象存储部署在华北。页面一次操作需要调用多个远程接口,用户在高峰期感觉明显卡顿。请分析原因并提出改进。
参考答案:首先测量 DNS、TCP/TLS 握手、每次 API 往返、数据库访问、对象存储读取和页面渲染时间,确认总延迟由多次跨地域 RTT 和串行调用叠加而成。跨地域链路还可能存在拥塞、丢包和带宽限制。若数据库写入和对象读取都跨地域,数据一致和故障切换也会增加等待。
改进可按数据和业务分类:将读多写少的数据、静态资源和对象通过 CDN 或就近缓存提供;合并串行 API,采用批量、异步和并行调用;在合适地域建立只读副本或应用节点,明确一致性和复制延迟;核心写入保持单一事实来源,非关键数据采用最终一致;复用连接并减少重复 TLS 握手。最终用 P50/P95/P99、跨域调用次数、丢包率、缓存命中率和数据库复制延迟验证。
十二、综合知识练习
练习 1
下列关于网络性能的说法正确的是( )。
A. 带宽越大,端到端延迟必然越低
B. 吞吐量就是链路标称带宽
C. 多次串行远程调用会累积往返延迟
D. 丢包只影响可靠性,不影响吞吐和响应时间
答案:C。 带宽、吞吐和延迟不同;丢包会引发重传、队列和吞吐下降。
练习 2
为什么网络拓扑需要考虑故障域?
答案: 同一交换设备、机房、电源或运营商可能产生共同故障。通过链路、设备、机房和地域冗余,把一次故障的影响限制在较小范围,并配合切换、复制和演练满足 RTO/RPO。
练习 3
某页面需要串行调用 6 个服务,每次平均往返 50ms,忽略其他耗时,理论网络等待约多少?如何优化?
答案: 串行等待约为 6×50ms=300ms。可根据依赖关系把独立调用并行化,合并接口或批量请求,使用缓存和连接复用,减少跨地域调用;同时要考虑错误传播、超时预算和下游容量。
十三、论文素材
在网络架构设计中,我从业务访问路径、流量方向、故障域和安全域出发规划节点、链路、地址、路由和访问控制。针对跨地域和高并发访问,通过就近部署、缓存、连接复用、批量与异步减少往返和重复传输;针对链路和设备故障,采用冗余、健康检查、动态切换和分域部署,并结合 RTO/RPO 设计数据复制。运行阶段持续监控带宽、吞吐、P95/P99、丢包、抖动、队列和可用性,通过故障注入验证切换与降级。
网络论文要从端到端路径写,不要把交换机、路由器和防火墙罗列成设备清单。应明确业务流量、性能目标、故障范围、安全策略和验证指标。
十四、今日复盘
- 计算机网络由哪些要素组成?
- 通信子网与资源子网分别负责什么?
- 总线、星型、树型和网状拓扑各有什么特点?
- 局域网、城域网、广域网和互联网如何区分?
- MAC、IP、端口和域名分别解决什么问题?
- 带宽、吞吐、延迟、抖动和丢包之间有什么区别?
- 为什么高带宽不一定意味着低延迟?
- 网络冗余为什么必须结合故障域、RTO 和 RPO?
- 跨地域调用如何进行端到端优化?
本节核心记忆句是:网络是端点、通道、协议、地址、服务和安全机制的整体;架构师要沿着真实访问路径分析带宽、延迟、丢包和故障域,把网络能力转化为可用、可测和可恢复的系统服务。