计算机网络体系结构
1.1 计算机网络的概念、组成和功能
什么是计算机网络? 计算机网络是把分布在不同地理位置的、具有独立功能的多台计算机,通过通信设备和线路连接起来,在通信协议的控制下实现资源共享和信息传递的系统。
通俗地说:计算机网络就是用线(或无线信号)把多台电脑连在一起,让它们能互相发消息、共享文件。就像你家里的WiFi把手机、电脑、平板连起来,大家可以一起上网。
计算机网络的组成
从不同角度看,计算机网络有以下组成方式:
| 角度 | 组成 | 说明 |
|---|---|---|
| 硬件 | 主机(端系统)、通信链路(双绞线、光纤等)、交换设备(路由器、交换机)、通信处理机 | 看得见摸得着的物理设备 |
| 软件 | 网络操作系统、通信协议、网络应用软件 | 控制网络运行的逻辑 |
| 协议 | 语法、语义、同步 | 通信双方必须遵守的规则 |
计算机网络的三个主要功能
- 数据通信:最基本的功能,计算机之间传输各种数据(文字、图片、视频)。比如你发送微信消息。
- 资源共享:硬件共享(打印机、磁盘)、软件共享、数据共享。比如办公室里的网络打印机。
- 分布式处理:将一个大型任务分解到多台计算机上协同完成。比如Google搜索引擎需要成千上万台服务器一起工作。
辅助功能包括:负载均衡(让任务分配到较空闲的机器)、提高可靠性(通过多台机器备份)。
1.2 计算机网络的分类
按覆盖范围分类(最重要!)
| 类型 | 范围 | 典型场景 |
|---|---|---|
| PAN(个人区域网) | 几米 | 蓝牙耳机连手机 |
| LAN(局域网) | 几十米~几公里 | 办公室网络、家庭WiFi |
| MAN(城域网) | 几公里~几十公里 | 一个城市范围的网络 |
| WAN(广域网) | 几十公里以上 | 跨国网络、互联网主干 |
💡 记忆技巧:从小到大——PAN(个人)→ LAN(局部)→ MAN(城市)→ WAN(世界)
按拓扑结构分类
拓扑结构指网络中节点和链路的几何排列方式。
-
星型拓扑:所有节点通过点对点链路连接到中央节点(如交换机)。
- 优点:易于管理、故障易检测、单个节点故障不影响其他节点
- 缺点:中央节点是瓶颈,中央节点故障→整个网络瘫痪
- 典型应用:办公室以太网(使用交换机)
-
总线型拓扑:所有节点连接在一条总线上,通过广播方式通信。
- 优点:布线简单、成本低
- 缺点:故障难诊断、总线故障影响全局、效率低
- 典型应用:早期以太网(使用同轴电缆)
-
环型拓扑:节点通过中继器连接成闭合环路,数据单向传输。
- 优点:传输时间固定、适合光纤
- 缺点:单点故障破坏全环、节点数多时效率低
- 典型应用:FDDI(光纤分布式数据接口)
-
树型拓扑:星型的扩展,有层次结构。
- 优点:易于扩展、分层管理
- 缺点:高层节点故障影响下层
-
网状拓扑:每个节点至少有两条路径连接到其他节点。
- 优点:可靠性极高
- 缺点:成本高、布线复杂
- 典型应用:大型主干网络、互联网核心
按交换方式分类
- 电路交换:通信前先建立专用线路(打电话)
- 报文交换:存储转发整个报文
- 分组交换:将数据分成小包(分组)独立转发——互联网的核心技术
其他分类方式
- 按使用者:公用网(电信网络)、专用网(企业内部网)
- 按传输技术:广播式网络(共享信道)、点对点网络(一对一通信)
1.3 性能指标
这是408考试的重点计算题来源!务必要熟练掌握。
速率
- 定义:数据传输速率,单位是bit/s(b/s、bps)
- 常用单位:kb/s = 10³ b/s,Mb/s = 10⁶ b/s,Gb/s = 10⁹ b/s,Tb/s = 10¹² b/s
- 注意:k = 10³(通信领域使用十进制),不是计算机内存的2¹⁰
带宽
- 原意:信号具有的频带宽度(Hz)
- 计算机网络中:表示网络通信线路的"最高数据速率"(b/s)
- 可以理解为"道路的宽度",带宽越大,单位时间能传输的数据越多
吞吐量
- 定义:单位时间内实际通过某个网络或接口的数据量
- 受网络带宽和当前负载的限制
- 例如:带宽100Mb/s的链路,实际吞吐量可能只有40Mb/s
时延(延迟)——重中之重!
时延 = 发送时延 + 传播时延 + 处理时延 + 排队时延
| 时延类型 | 计算公式 | 影响因素 |
|---|---|---|
| 发送时延 | 数据分组长度 / 信道带宽 | 分组长度、带宽 |
| 传播时延 | 信道长度 / 电磁波传播速度 | 距离、介质 |
| 处理时延 | 无简单公式 | 路由器CPU速度 |
| 排队时延 | 无简单公式 | 网络负载 |
⚠️ 易错点:很多同学混淆发送时延和传播时延。
- 发送时延 = 从发送第一个bit到最后一个bit离开发送器的时间("把数据放到线路上的时间")
- 传播时延 = 数据在信道中传输的时间("数据在线路上跑的时间")
时延带宽积
- 定义:时延带宽积 = 传播时延 × 带宽
- 物理意义:表示链路上最多可以容纳的比特数("管道的容量")
- 公式:G = dp × R(bit)
往返时间(RTT)
- 定义:从发送方发送数据到收到接收方确认所经历的时间
- 包括:往返传播时延 + 两端处理时间
利用率
- 信道利用率 = 有数据通过的时间 / 总时间
- 网络利用率 = 全网所有信道利用率的加权平均
- 注意:利用率不是越高越好!当利用率接近1时,排队时延急剧增大(类似交通拥堵)
📌 408考点提示:时延计算是必考内容。常见题型:
- 给定分组长度、带宽、距离、传播速度,求总时延
- 比较不同分组长度下的时延
- 考虑确认帧时的RTT计算
典型例题
例1:在总长度为100km的链路上,传输一个长度为1000B的数据分组。链路带宽为10Mb/s,电磁波传播速度为2×10⁸ m/s。求总时延(忽略处理时延和排队时延)。
解:
- 发送时延 = 1000 × 8 / (10 × 10⁶) = 8000 / 10⁷ = 0.0008s = 0.8ms
- 传播时延 = 100 × 10³ / (2 × 10⁸) = 0.0005s = 0.5ms
- 总时延 = 0.8 + 0.5 = 1.3ms
例2:在例1中,数据分组大小改为100KB,其他条件不变,求总时延。
解:
- 发送时延 = 100 × 1024 × 8 / (10 × 10⁶) = 819200 / 10⁷ = 0.08192s = 81.92ms
- 传播时延相同 = 0.5ms
- 总时延 = 81.92 + 0.5 = 82.42ms
可见,当数据量大时,发送时延主导;当数据量小但距离远时,传播时延不可忽略。
1.4 计算机网络体系结构
为什么要分层?
分层是现代计算机网络设计的核心思想。就像快递寄送过程:
- 你(应用层)只需写好地址贴上快递单
- 快递公司(传输层)负责分拣
- 运输车队(网络层)负责在路上跑
- 具体司机(数据链路层)负责一段一段运输
- 公路铁路(物理层)是实际介质
每一层只关心自己的事情,不需要知道其他层的细节。
分层的基本原则
- 每层只实现一种相对独立的功能
- 层间接口清晰、信息量少
- 下层对上层透明——上层不需要知道下层的实现细节
- 下层为上层提供服务
相关概念
- 实体:每一层中的活动元素(软件或硬件)
- 协议:对等实体之间通信的规则(水平方向)
- 服务:下层为上层提供的功能(垂直方向)
- 服务访问点(SAP):相邻层之间交换信息的接口
- 协议数据单元(PDU):对等层之间传输的数据单元
- 服务数据单元(SDU):层与层之间传输的数据单元
1.5 OSI七层参考模型
OSI(Open Systems Interconnection)七层模型由ISO在1984年提出。虽然实际使用的是TCP/IP,但OSI是考试核心内容。
OSI七层(从低到高)
| 层次 | 英文 | 主要功能 | 数据单元 | 设备 |
|---|---|---|---|---|
| 7 应用层 | Application | 用户接口、应用程序 | 报文 | 无 |
| 6 表示层 | Presentation | 数据格式转换、加密压缩 | 报文 | 无 |
| 5 会话层 | Session | 建立/管理/终止会话 | 报文 | 无 |
| 4 传输层 | Transport | 端到端通信、可靠传输 | 报文段 | 无(网关) |
| 3 网络层 | Network | 路由选择、分组转发 | 分组/包 | 路由器 |
| 2 数据链路层 | Data Link | 帧定界、差错控制、流量控制 | 帧 | 交换机、网桥 |
| 1 物理层 | Physical | 比特流传输、定义接口特性 | 比特 | 中继器、集线器 |
💡 记忆技巧:从下到上——"物链网传会表应"(物理层、数据链路层、网络层、传输层、会话层、表示层、应用层)。可记为"物联网传惠表应"。
各层详细功能
物理层(Physical Layer)
- 功能:在物理媒体上传输原始比特流
- 确定接口特性:机械特性(接口形状、引脚数)、电气特性(电压范围)、功能特性(引脚功能)、规程特性(时序关系)
- 数据单元:比特(bit)
- 设备:中继器(Repeater,信号再生放大)、集线器(Hub,多端口的中继器)
数据链路层(Data Link Layer)
- 功能:将网络层的数据报封装成帧、帧定界、透明传输、差错控制(检错和纠错)、流量控制
- 数据单元:帧(Frame)
- 设备:交换机(Switch)、网桥(Bridge)
- 典型协议:以太网(IEEE 802.3)、PPP、HDLC
网络层(Network Layer)
- 功能:路由选择(确定传输路径)、分组转发、拥塞控制、网际互连
- 数据单元:分组/包(Packet)
- 设备:路由器(Router)
- 典型协议:IP、ARP、ICMP、IGMP
传输层(Transport Layer)
- 功能:端到端通信(进程到进程)、可靠传输(TCP)、流量控制、拥塞控制、复用分用
- 数据单元:报文段(Segment,TCP)/ 数据报(UDP,注意与网络层区别)
- 典型协议:TCP、UDP
会话层(Session Layer)
- 功能:建立、管理和终止会话连接
- 提供:全双工/半双工通信模式控制、同步点设置(用于断点续传)
- 少考,了解即可
表示层(Presentation Layer)
- 功能:数据格式转换(解决不同系统编码差异)、数据加密/解密、数据压缩/解压
- 少考,了解即可
应用层(Application Layer)
- 功能:为用户提供网络应用的接口
- 典型协议:HTTP、FTP、SMTP、DNS、DHCP
1.6 TCP/IP四层模型
TCP/IP模型是实际工业标准,共四层:
| 层次 | 包含协议 |
|---|---|
| 应用层 | HTTP、FTP、SMTP、DNS、DHCP、TELNET |
| 传输层 | TCP、UDP |
| 网际层 | IP、ARP、ICMP、IGMP |
| 网络接口层 | 以太网、WiFi、ADSL等(无具体协议定义) |
分层的封装过程
发送数据时,从应用层开始,每层加上自己的头部(首部):
- 应用层:数据
- 传输层:TCP/UDP首部 + 数据 → 报文段/用户数据报
- 网络层:IP首部 + TCP/UDP首部 + 数据 → 数据报
- 数据链路层:帧头 + IP首部 + TCP/UDP首部 + 数据 + 帧尾 → 帧
- 物理层:比特流
这就像寄快递,每经过一个环节就贴一层标签。
1.7 五层协议模型(408考试使用)
408考试通常使用五层协议模型,即把TCP/IP的网络接口层拆分为物理层和数据链路层:
| 层号 | 名称 | 数据单元 |
|---|---|---|
| 5 | 应用层 | 报文 |
| 4 | 传输层 | 报文段(TCP)/ 用户数据报(UDP) |
| 3 | 网络层 | IP数据报/分组 |
| 2 | 数据链路层 | 帧 |
| 1 | 物理层 | 比特 |
各层协议及设备总结
| 层 | 代表性协议 | 数据单元 | 典型设备 |
|---|---|---|---|
| 应用层 | HTTP, DNS, FTP, SMTP, DHCP, TELNET | 报文 | 应用层网关 |
| 传输层 | TCP, UDP | 段/用户数据报 | 传输层网关 |
| 网络层 | IP, ARP, ICMP, IGMP, OSPF | 分组/数据报 | 路由器 |
| 数据链路层 | Ethernet, PPP, HDLC | 帧 | 交换机、网桥 |
| 物理层 | 无协议(标准) | 比特 | 中继器、集线器 |
📌 408考点提示:OSI和TCP/IP的对比是选择题常考点。
- OSI七层:理论完整,但复杂、效率低,没有大规模商用
- TCP/IP四层:实际工业标准,简单实用
- 主要区别:OSI网络层支持无连接+面向连接,传输层仅面向连接;TCP/IP网际层仅无连接,传输层二者皆可
1.8 各层功能对比——核心总结表
| 功能 | 物理层 | 数据链路层 | 网络层 | 传输层 | 应用层 |
|---|---|---|---|---|---|
| 比特传输 | ✅ | ||||
| 帧定界 | ✅ | ||||
| 差错控制 | ✅(检错为主) | ✅(TCP) | |||
| 流量控制 | ✅ | ✅(TCP) | |||
| 路由选择 | ✅ | ||||
| 可靠传输 | ✅(TCP) | ||||
| 拥塞控制 | ✅(辅助) | ✅(TCP) | |||
| 用户接口 | ✅ |
⚠️ 易错点:
- 混淆不同层的设备:路由器(网络层)、交换机(数据链路层)、集线器(物理层)。注意:三层交换机兼具路由器和交换机的功能。
- 混淆不同层的数据单元名称:比特→帧→分组→报文段→报文(从下到上)。
- 认为所有层都提供可靠传输——实际上只有TCP协议在传输层提供可靠传输,UDP不提供。
💡 记忆技巧:数据单元从下到上——"比分帧组报"(比特→帧→分组→报文段→报文)。可以联想为"比分真粗"。
复习要点
- 熟练计算总时延(发送时延+传播时延)
- 分清OSI七层、TCP/IP四层、五层协议的对应关系
- 牢记各层的数据单元名称和设备
- 理解分层的思想和封装过程