TCP/IP 中的套接字地址
Transmission Control Protocol / 在每台 Internet Protocol 主机内提供一组16位端口号。
Transmission Control Protocol ( Transmission Control ProtocolInternet Protocol / Internet Protocol ) 在每台主机内提供一组16位端口号。 由于每个主机都独立分配端口号,因此不同主机上的端口可能具有相同的端口号。 TCP/IP将套接字地址作为标识符,该标识符在所有互联网网络中都是唯一的。 TCP/IP 将本地主机接口的因特网地址与端口号并置以设计因特网套接字地址。
使用 TCP/IP 时,套接字不会与目标地址绑定。 发送消息的应用程序可以在必要时为每个数据报指定不同的目标地址,也可以在连接期间将套接字绑定到特定的目标地址(参见 SOCK_DGRAM )。
因为因特网地址对于网络上的特定主机始终是唯一的,所以特定主机上的特定套接字的套接字地址是唯一的。 此外,由于每个连接都由它所连接的套接字对完全指定,因此因特网主机之间的每个连接也是唯一标识的。
最多 255 个端口号保留用于官方因特网服务。 256-1023 范围内的端口号保留给因特网上常见的其他知名服务。 当客户机进程在特定主机上需要其中一个熟知服务时,客户机进程向主机上的熟知端口的套接字地址发送服务请求。
如果主机上的进程正在侦听熟知端口,那么服务器将使用熟知端口来处理请求,或者将连接传输到在连接到客户机的持续时间内临时分配的另一个端口。 使用临时分配的 (或辅助) 端口将释放熟知端口,并允许主机熟知端口同时处理其他请求。
文件里列出了常用端口的端口号 /etc/services文件中。 1023 以上的端口号通常由在收到初始服务请求后需要临时端口的进程使用。 这些端口号是随机生成的,并以先到先得的方式使用。