网络入门 - 传输协议和网络端口
什么是传输层?
传输层决定使用哪些网络传输协议来支持通过网络发送数据的应用程序。最常用的两种传输协议是:
- 传输控制协议(缩写为 TCP),用于面向连接、可靠、有序且经过错误检查的通信,常见于电子邮件和网页浏览;
- 用户数据报协议(缩写为 UDP),用于无连接、低开销的数据包传输,常见于游戏、视频和 VoIP 应用程序。
TCP 使用握手来建立和确认主机之间的数据连接,过程如下:
- 发送方请求同步;
- 接收方随后进行确认;
- 然后发送自己的同步请求;
- 此时,原始发送方进行确认,连接建立,数据包即可传输。
![]() |
|---|
| TCP 握手 |
虽然握手可以确保数据可靠且有序地传输,但 TCP 的延迟高于 UDP。因此,TCP 适用于数据完整性比延迟更重要的应用程序,例如电子邮件和网页浏览;而 UDP 适用于 VoIP、视频会议和在线游戏等实时应用程序。
什么是网络端口?
传输层还定义了特定应用程序使用的网络端口。了解网络中用户应用程序使用的传输层协议和端口,对于构建可靠、有效的防火墙甚至路由策略至关重要。
例如:HTTP 和 HTTPS 都是基于 TCP 构建的 Web 应用程序,但 HTTP 使用端口 80,而 HTTPS 使用端口 443。为了建立主机之间的连接,这些端口应在端到端范围内保持开放。
![]() |
![]() |
|---|---|
| 客户端和服务器之间的 SYNC-ACK 握手 | 源地址/目标地址和端口(套接字) |
端口还有助于解释 客户端-服务器连接模型。由于一台主机可能使用相同的传输协议与多个主机或服务器建立连接,因此主机会分配不同的源端口号来跟踪独立连接;而目标端口保持不变,因为连接中的 IP 会从不同的 IP 主机接收独立连接。随后,主机可以建立 TCP 握手,开始传输 Web 流量。
最后,套接字 是 IP 地址与端口分配组合的名称。例如,目标地址“52.10.164.58:443”就指向由 UBNT.com 托管的 HTTPS Web 服务器。


