概述
端口,英文PORT
端口的由来
提出问题
如上图,左侧 手机QQ 向右侧 电脑QQ 发送消息,右侧电脑的 操作系统 接收到数据后,如何知道 将数据发送给QQ,而没有将数据发送给 其他应用程序 ?
解决问题
为了解决上面的问题,提出 端口 机制
端口号
端口是通过 端口号 来标记,是整数,范围是从0 到65535(2^16-1)
当一台电脑(发送端)的某进程需要访问网络时,向 操作系统 申请 绑定某端口号 ,如:80,139,445。如果该端口号没有被其他程序绑定,操作系统将该 端口号 分配给该 进程
当另一台电脑(接收端) 接收数据包 后,根据 TCP报文首部 的 目的端口号,绑定 此端口号 的 进程 将会 接收数据,并等待下一组数据的到来。
windows系统查看端口
windows下dos命令窗口输入netstat -ano即可查看端口使用情况
netstat -ano
端口划分
知名端口号
介于1~255之间,如:FTP的21端口,HTTP的80端口等,
当访问http://www.qq.com ,
不指定端口时,默认访问80端口
Unix系统占用的端口号
256~1023之间的端口号通常由 Unix系统 占用,也就是说,提供一些只有Unix系统才有的服务
动态端口
1024~65535之间的端口号,一般不固定分配某个服务,可以由程序申请绑定
总结
在TCP、UDP编程中,发送端、接收端都要用到 端口号
端口号 指明发送端计算机、接收端计算机的 应用程序
端口号 是整数,范围是从0 到65535(2^16-1)
一个进程 可以绑定 多个 端口号
一个端口 号只能被 一个 进程绑定

