计算机网络导学:数据怎样跨越设备,到达另一个程序?
协议分层、通信过程与网络性能。
在浏览器中输入网址,远端服务器就能返回内容,看起来像一次简单操作。但中间涉及识别服务、定位主机、在链路上传输、跨网络转发、处理差错与拥塞等多个问题。计算机网络研究不同设备和程序怎样按共同规则完成通信。
分层把通信任务分为不同职责。理解一个协议时,至少要问:它解决什么问题、运行在什么位置、报文携带什么信息、发送与接收怎样改变状态、失败后怎样处理。
本科目分值 25 分,占约 16.67%;常见题型为 8 道选择题和 1 道综合应用题。分值较少不代表可以放弃,因为体系结构、概念与计算仍需要完整覆盖。
学之前,先准备什么?
建议熟悉二进制、数量级、比特与字节换算,理解基本的队列和时间线。先辨清“带宽、吞吐量、发送时延、传播时延”等量各自描述什么,再学习计算公式。
可以按大纲从体系结构到各层逐步学习,也可以先从一次网页请求出发,逐层追问数据怎样传输;后一种学习顺序可参考 Kurose 与 Ross 的自顶向下教材。
知识地图:每一层解决自己的问题
| 大纲模块 | 内容骨架 | 学完要能完成的任务 | 对应章节 |
|---|---|---|---|
| 网络概述与体系结构 | 组成、功能、分类、性能指标;协议/接口/服务;OSI 与 TCP/IP 模型 | 解释分层与封装,区分服务与协议,完成基础性能计算 | 网络概述与体系结构 |
| 物理层 | 信号与码元、编码调制、奈奎斯特/香农、交换、介质、中继器和集线器 | 根据条件区分量纲,计算信道能力与传输相关量 | 物理层 |
| 数据链路层 | 组帧、检错纠错、可靠传输、窗口;MAC、以太网、无线局域网、VLAN、PPP、交换机 | 跟踪帧与确认,分析窗口、争用和交换过程 | 数据链路层 |
| 网络层 | 路由与转发、IPv4/IPv6、子网/CIDR、NAT、相关地址配置与控制协议;路由协议、组播、移动 IP、路由器 | 计算子网与聚合,按规则选路,理解报文经过路由器时的处理 | 网络层 |
| 传输层 | 端口、UDP、TCP;连接、可靠性、流量控制、拥塞控制 | 追踪序号与确认号,画报文时序,区分接收能力与网络拥塞 | 传输层 |
| 应用层 | C/S 与 P2P、DNS、FTP、电子邮件、WWW 与 HTTP | 说明服务目的,连接域名解析与上层应用行为 | 应用层 |
复习 DHCP 时,要区分它在 IPv4 相关章节中的位置与协议本身所属的层次。章节用于组织知识,协议分层取决于它承担的功能。网络安全可作为拓展阅读,优先完成大纲基础内容。
怎样学:沿着一个分组,画完整的路径
建议先画出应用程序、主机、局域网、路由器和服务器的位置;再分别标出 MAC 地址、IP 地址和端口承担的作用。之后按题目条件追踪封装、发送、转发和接收,不把不同层面的地址混用。
报文交互题要画时间线,标明序号、确认、计时条件和窗口变化。计算题先统一单位,再分解发送、传播、处理与排队等题目涉及的部分;不要把所有网络题都简化为“数据量除以速率”。
学习相近机制时可以用对照表:流量控制关注接收端能力,拥塞控制关注网络负载;路由计算与按路由表转发不是同一件事;可靠传输与实际吞吐量也不能直接画等号。
可以在自己获准使用的设备和网络上抓包,观察课程涉及的报文字段,帮助理解协议过程。现实报文的实现细节与教材模型可对照学习,做题时按题设分析。Kurose 与 Ross 的作者资源提供了课程配套学习材料。
分阶段训练
基础阶段每学一个协议都写一张“小卡”:目的、参与方、典型报文、关键字段、过程、常见边界。不推荐只抄中文全称和英文缩写。
强化阶段集中练三类推演:地址和路由;可靠传输与窗口;分组、链路及吞吐时延。在掌握主干之后,按纲回查物理层、链路层、应用层中的细节,避免只复习 TCP 和子网划分。
真题阶段训练多层联系和条件读取。例如题目可能同时给出应用传输量、TCP 行为、链路速率与往返时延,需要把量放回各自层次,明确采用的模型。
入门自测与答案
问题 1:在理想链路上,忽略协议开销,以 10 Mbit/s 发送 1500 字节,需要多少发送时间?这是不是总到达时间?
参考思路:1500×8÷10,000,000 秒 = 1.2 ms。这只是把数据送上链路的时间,总到达时间还可能包含传播、排队、处理等题目给出的成分。
问题 2:IPv4 的 /24 前缀表示什么?
参考思路:网络前缀长度为 24 位,剩余 8 位属于主机地址部分。可分配地址数量还需要结合所用地址规则和题目条件,不机械把所有地址都视为可分配。
问题 3:发送端因为接收端缓冲区不足而减慢发送,与因为网络发生拥塞而减慢发送,是不是同一个控制目标?
参考思路:不是。前者对应接收端能力约束,后者对应网络负载与拥塞;分析时应区分控制依据和状态量。
学完后,你应该能做到什么?
参考资料
Computer Networking: A Top-Down Approach(James F. Kurose、Keith W. Ross)作者配套网站,可按应用、传输、网络、链路主题选用配套材料。