一、网络基础与TCP/IP起源

1.1 计算机网络到底是什么?

先聊聊最基础的问题——什么是计算机网络?

我个人习惯这样定义:计算机网络就是一群自治的计算机,通过某种通信链路连在一起,共享资源、交换信息。说白了,就是把孤立的机器串起来,让它们能“说话”。

你想想看,如果没有网络,每台电脑就是个信息孤岛。你想打印一份文件,得拿U盘拷到打印机那台机器上。想跟同事协作,得把文件传来传去。这效率,简直没法忍。

我在项目中遇到过一家小公司,几十号人还在用“U盘接力”的方式共享设计文档。后来我帮他们搭了个简单的局域网,问题就全解决了。嗯,这就是网络的价值。

核心要点:计算机网络 = 自治计算机 + 通信链路 + 资源共享

1.2 网络分类:LAN 与 WAN

网络按覆盖范围分,最常见的就是局域网(LAN)和广域网(WAN)。

局域网(LAN)——覆盖范围小,比如一间办公室、一栋楼。特点是速度快、延迟低、自己管。你家里的Wi-Fi,公司里的以太网,都是典型的LAN。

广域网(WAN)——覆盖范围大,可以跨城市、跨国家。速度相对慢一些,延迟也高,因为数据要经过很多跳。互联网本身就是最大的WAN。

我刚开始做网络运维时,分不清LAN和WAN的边界。有一次配置路由器,把WAN口的IP地址配成了内网地址,结果整个分公司上不了外网。被老大骂了一顿之后,我再也没犯过这种低级错误。

特性 局域网(LAN) 广域网(WAN)
覆盖范围 几十米到几公里 几十公里到全球
传输速率 高(1Gbps~100Gbps) 相对低(几Mbps~几十Gbps)
延迟 低(微秒级) 高(毫秒到百毫秒级)
所有权 通常私有 通常租用或公有
典型技术 以太网、Wi-Fi MPLS、SDH、卫星链路

小提示:还有一种叫城域网(MAN),覆盖范围介于LAN和WAN之间,比如一个城市内的光纤环网。不过实际工作中,大家更习惯直接说LAN或WAN。

1.3 OSI七层模型:网络世界的“通用语言”

说到网络模型,就绕不开OSI七层模型。这是国际标准化组织(ISO)在1984年提出的一个参考模型。

为什么要搞这么复杂?因为网络通信本身就很复杂。从你敲下一个键盘,到数据在网线上跑,再到对方屏幕上显示出来,中间涉及太多环节。如果不分层,谁也理不清。

OSI把通信过程分成七层,每一层只管自己的事:

  1. 物理层——管比特流。网线、光纤、无线电波,都是这层的事。
  2. 数据链路层——管帧。把比特组装成帧,加MAC地址,处理差错。
  3. 网络层——管包。路由选择、IP地址,核心层。
  4. 传输层——管端到端连接。TCP、UDP就在这层。
  5. 会话层——管会话的建立和拆除。
  6. 表示层——管数据格式转换、加密压缩。
  7. 应用层——管应用程序。HTTP、FTP、SMTP都在这里。

我曾经面试过一个刚毕业的学生,问他OSI七层模型,他背得滚瓜烂熟。但问他“你在实际抓包时,看到的是哪一层的数据”,他就懵了。所以记住:OSI是参考模型,不是实现模型。实际互联网用的是TCP/IP协议栈,只有四层。

避坑指南:OSI七层模型在教科书里很重要,但实际工作中几乎没人按七层来开发。别花太多时间死记硬背,理解分层思想才是关键。

1.4 TCP/IP协议栈的诞生背景

聊完OSI,咱们说说真正的“主角”——TCP/IP协议栈。

故事要从1960年代末说起。美国国防部高级研究计划局(ARPA)启动了一个项目,叫ARPANET。初衷很简单:如果核战争爆发,现有的电话网络会被摧毁,需要一种能“自愈”的通信网络。

这个网络有几个核心要求:

  • 去中心化——没有中央控制节点,部分坏了不影响整体。
  • 分组交换——数据切成小块,各自找路,到了再拼起来。
  • 异构互联——不同厂商、不同技术的网络能连在一起。

1974年,Vint Cerf和Bob Kahn发表了TCP协议的论文。后来发现把传输和路由混在一起太复杂,就把TCP拆成了TCP和IP两个协议。1983年1月1日,ARPANET正式从NCP协议切换到TCP/IP协议栈。这一天被称为“旗日”(Flag Day)。

我记得第一次读到这段历史时,觉得这帮人真有远见。40多年前的设计,到现在还能支撑全球几十亿台设备互联,了不起。

1.5 TCP/IP的设计哲学

TCP/IP能活到现在,靠的不是运气,而是几个核心设计原则:

  • 端到端原则——网络核心只管转发,智能放在终端。路由器不关心你传的是什么,只负责把包送到。
  • 鲁棒性——网络假设是不可靠的,协议要能容忍丢包、乱序、延迟。
  • 分层解耦——每一层只关心自己的职责,层与层之间通过标准接口通信。
  • 尽力而为——IP层不保证送达,不保证顺序,不保证质量。可靠性由上层(TCP)负责。

你想想看,如果每个路由器都要保证数据可靠传输,那网络早就卡死了。正是这种“甩锅”设计,让互联网能扩展到今天的规模。

一句话总结:TCP/IP的设计哲学就是“简单、可靠、可扩展”。简单留给核心,复杂放在边缘。

1.6 本章知识体系总览

下面这张图,把本章的核心知识点串起来了。你可以把它当作一张“地图”,后面每学一个新概念,都能在这张图上找到位置。

第1章 知识体系总览 计算机网络定义 自治计算机 + 通信链路 网络分类 LAN / MAN / WAN OSI七层模型 物理→应用 TCP/IP诞生背景 ARPANET → 分组交换 → 异构互联 TCP/IP设计哲学 端到端 · 鲁棒性 · 分层 · 尽力而为 核心对比:OSI七层 vs TCP/IP四层 OSI七层 应用层 表示层 会话层 传输层 网络层 · 链路层 · 物理层 TCP/IP四层 应用层(HTTP/FTP/SMTP) 传输层(TCP/UDP) 网络层(IP/ICMP) 网络接口层(以太网/Wi-Fi) 💡 实际互联网基于TCP/IP四层模型,OSI七层是理论参考

1.7 本章小结

这一章我们聊了三个核心问题:

  • 网络是什么——自治计算机通过通信链路互联,共享资源。
  • 网络怎么分类——LAN管局部,WAN管全局,各有各的用场。
  • TCP/IP从哪来——从ARPANET的军事需求出发,经过40多年演化,成了互联网的事实标准。

OSI七层模型是理论框架,TCP/IP四层模型是实际实现。记住这个区别,后面学起来会轻松很多。

嗯,基础打好了,后面咱们就可以真正动手了。