TCP 包中的识别应用层协议通常依赖于端口号。每个应用层协议使用其预定义的端口号进行通信。传输控制协议(TCP)在分配和管理这些端口号时具有重要作用。当 TCP 连接建立时,两个端点交换它们的端口号。在发送数据时,包含发送端口号和接收端口号的 TCP 数据包会通过网络传输。接收端口号可以用来确定哪个应用层协议正在使用该端口。这些端口号已在 Internet Assigned Numbers Authority (IANA) 组织的记录中进行了标准化,以确保各个协议之间不会发生冲突。常用的应用层协议与其常用的端口号包括:
- HTTP:80
- HTTPS:443
- FTP:20 和 21
- Telnet:23
- SMTP:25
- POP3:110
- IMAP:143
- DNS:53
如果一个数据包的目的端口号为 80,则可以推断出该数据包是由浏览器发出,用于访问一个网页。同样,如果目的端口号为 443,则此数据包可能是通过加密连接发送的安全 HTTP(HTTPS)。在 TCP 接收方接收到一个数据包时,它将检查数据包的端口号以确定其目的地址,从而将数据包传递给适当的应用程序。