端口号
任何时候,多个进程都可能同时使用TCP,UDP和SCTP这三种传输层协议中的任何一种,这三种协议都是用16位整数的端口号来区分这些进程。
简单来说:
- IP地址是标识在网络内的唯一一台主机
端口号是标识在主机内中唯一的一个进程
所以IP地址加端口号就可以标识一个网络中的唯一一个进程,这就是网络通信的原理,在socket编程中,IP地址加端口号就是套接字。
这方面的知识在后面再写。端口号的分类
1.well-known port
当一个客户想要跟一个服务器联系时,他必须标识想要与之通信的这个服务器。
TCP,UDP,SCTP定义了一组众所周知的端口,用于表示众所周知的服务。ephemeral port
客户通常使用短期存活的临时端口。临时端口通常由传输层协议自动赋予客户。
另一方面,客户通常不关心其临时端口的具体值,只需确信该端口所在的主机是唯一的就行。传输协议的代码确保这种唯一性。
分类
端口号被划分成以下三段:
- 众所周知的端口0-1023
已登记的端口:1024-49151
这些端口不收IANA控制
动态或私用端口——临时端口:49152-65535