## 00.1
一个定义就够了
协议 = 通信双方事先约定好的规则集,规定「说什么、怎么说、按什么顺序说、说错了怎么办」。
你给外国朋友打电话,约好「先说 Hello,再说事,最后说 Bye」——这就是一套协议。换到计算机世界:浏览器和网站服务器约好「先问你要哪个页面,我回你内容,结束」——这就是 HTTP 协议。
为什么必须约好?因为计算机不会察言观色。你说一半它就当你说完了,你没说要中文它就默认听不懂。协议把所有模糊地带全部钉死,机器才能可靠协作。
## 00.2
常见协议分层地图
协议不是一群散装名词,而是像快递系统一样分层协作:上层把活儿包好,交给下层去运输。记住这张地图,后面的每一课都能对号入座:
| 层次 | 管什么 | 代表协议 |
|---|---|---|
| 应用层 | 你直接感知的服务 | HTTP/HTTPS 网页 · DNS 域名解析 · SMTP/IMAP 邮件 · SSH 远程登录 |
| 传输层 | 数据可靠送达 | TCP 可靠但稍慢 · UDP 快但可能丢(视频通话常用) |
| 网络层 | 跨网络找路 | IP 负责寻址与路由 |
| 链路层 | 最后一公里的物理传输 | Wi-Fi、以太网、光纤 |
寄一份国际快递:你写好内容(应用层),快递公司保证包裹完整签收(TCP),地址系统负责跨城市转运(IP),最后一程是货车还是飞机(Wi-Fi/网线)。每层只管自己的事,叠起来就能把一封邮件从你的手机送到地球另一端。
## 00.3
端口号:同一栋楼里的不同房间
数据到达一台电脑后,怎么知道该交给哪个程序?靠端口号。IP 地址定位到「哪台机器」,端口号定位到「这台机器上的哪个程序」。
IP 地址 = 小区地址,端口号 = 门牌房间号。80 号房间住着网页服务,22 号房间住着 SSH。你访问 example.com:443,就像敲响它家 443 号房门。
常见端口号建议先混个脸熟,后面每课都会再见到它们:80 HTTP 443 HTTPS 22 SSH 53 DNS 25 SMTP。
## 00.4
本手册的学习路线
- 第 1 课 · TCP/IP互联网的底座:数据怎么寻址、怎么保证不丢。
- 第 2 课 · HTTP/HTTPS你每天用得最多的协议:网页的请求与响应。
- 第 3 课 · DNS域名怎么变成 IP:互联网的电话簿。
- 第 4 课 · TLS/SSLHTTPS 里的 S 是谁:加密与证书。
- 第 5 课 · SSH安全地远程操作另一台机器。
- 第 6 课 · 邮件三兄弟SMTP、POP3、IMAP 各管一段。
准备好了?从 第 1 课:TCP/IP → 开始。