端口的作用
端口的作用:
我们知道一台主机(对应一个IP地址)可以提供很多服务,比如web服务,ftp服务等等。如果只有一个IP,无法却分不同的网络服务,所以我们采用”IP+端口号”来区分不同的服务。
端口的定义:
端口号是标识主机内唯一的一个进程,IP+端口号就可以标识网络中的唯一进程。在我们通常用的Socket编程中,IP+端口号就是套接字
端口号是由16比特进程编号,范围是0-65535,按照道理来讲,这些端口你都可以随便用。但是你不是vip用户,所以有一些端口被vip用户占着。比如FTP 21 Ssh 22等等,所以给端口分了类,规定你可以使用端口的范围。
端口的分类
分类的维度很多,这里我们按照服务端使用还是客户端使用分类
a.服务端使用的端口号
- 预留端口号
取值范围0-1023,这些端口我们编程的时候不能使用,是那些vip应用程序使用的,只有超级用户特权的应用才允许被分配一个预留端口号
- 登记端口号
取值范围1024-49151,就是我们平时编写服务器使用的端口号范围
b.客户端使用的端口号
取值范围49152-65535,这部分是客户端进程运行时动态选择的范围,又叫临时端口号