端口(Port)可以认为是计算机与外界通信交流的出口。其中,硬件领域的端口又称接口,如USB端口、串行端口等;软件领域的端口一般指网络中面向连接服务和无连接服务的通信协议端口,是一种抽象的软件结构,包括一些数据结构和I/O(基本输入输出)缓冲区。
端口是传输层的内容,是面向连接的,它们对应着网络上常见的一些服务。这些常见的服务可划分为使用TCP端口(面向连接,如打电话)和使用UDP端口(无连接,如写信)两种。
在网络中可以被命名和寻址的通信端口是一种可分配资源,由网络OSI(Open System Interconnection,开放系统互联)协议可知,传输层与网络层的区别是传输层提供进程通信能力,网络通信的最终地址不仅包括主机地址,还包括可描述进程的某种标识。因此,当应用程序(调入内存运行后一般称为进程)通过系统调用与某端口建立连接(Binding,绑定)之后,传输层传给该端口的数据都被相应进程所接收,相应进程发给传输层的数据都从该端口输出。
在网络技术中,端口大致有两种意思:一是物理意义上的商品,如集线器、交换机、路由器等用于连接其他的网络设备的接口;二是逻辑意义上的端口,一般指TCP/IP协议中的端口,范围为0~65535,如浏览网页服务的80端口,用于FTP服务的21端口等。
逻辑意义上的端口有多种分类标准,常见的分类标准有如下两种。
1.按端口号分布划分
按端口号分布划分,可以分为公认端口、注册端口,以及动态和/或端口等。服务器常见应用端口如表1-2所示。
(1)公认端口
公认端口包括端口号范围是0~1023。它们紧密绑定于一些服务。通常,这些端口的通信明确表明了某种服务的协议,比如80端口分配给HTTP服务,21端口分配给FTP服务等。
(2)注册端口
注册端口端口号为1024~49151。它们松散地绑定于一些服务。也就是说,有许多服务绑定于这些端口,这些端口同样用于许多其他目的,比如许多系统处理动态端口从1024左右开始。
(3)动态和/或私有端口
动态和/或私有端口的端口号为49152~65535。理论上,不应为服务分配这些端口。但是一些木马和病毒就比较喜欢这样的端口,因为这些端口不易引起人们的注意,从而很容易屏蔽。
表1-2 服务器常见应用端口
2.按协议类型划分
根据协议类型,端口又可分为TCP端口和UDP端口两种。一般直接与接收方进行的连接方式,大多采用TCP协议。只是把信息放在网上发布出去而不去关心信息是否到达(也即“无连接方式”),则大多采用UDP。
使用TCP协议的常见端口主要有如下几种。(www.daowen.com)
(1)FTP协议端口
FTP即文件传输协议,使用21端口。某计算机开了FTP服务,便启动了文件传输服务,下载文件和上传主页都要用到FTP服务。
(2)Telnet协议端口
该端口是一种用于远程登录的端口,用户可通过自己的身份远程连接到计算机上,通过这种端口可提供一种基于DOS模式的通信服务。如支持纯字符界面BBS的服务器会将23端口打开,以对外提供服务。
(3)SMTP协议端口
现在很多邮件服务器都使用这个简单邮件传送协议来发送邮件。如常见的免费邮件服务使用的就是此邮件服务端口,所以在电子邮件设置中经常会看到SMTP端口设置栏,服务器开放的是25号端口。
(4)POP3协议端口
POP3协议用于接收邮件,通常使用110端口。只要有使用POP3协议的程序(如Outlook等),就可以直接使用邮件程序收到邮件(如126邮箱用户就没有必要先进入126网站,再进入自己的邮箱来收信了。)
使用UDP协议的常见端口主要有如下几种。
(1)HTTP协议端口
HTTP是用户使用的最多的协议,即“超文本传输协议”。当上网浏览网页时,就要在提供网页资源的计算机上打开80号端口以提供服务。WWW服务和Web服务器等使用的就是这个端口。
(2)DNS协议端口
DNS用于域名解析服务,这种服务在Windows NT系统中用得最多。Internet上的每一台计算机都有一个网络地址与之对应,这个地址就是IP地址,它以纯数字形式表示。但由于这种表示方法不便于记忆,于是就出现了域名,访问计算机时只需要知道域名即可。域名和IP地址之间的变换由DNS服务器来完成(DNS用的是53号端口)。
(3)SNMP协议端口
SNMP即简单网络管理协议,用来管理网络设备,使用161号端口。
(4)QQ协议端口
QQ程序既提供服务又接收服务,使用无连接协议,即UDP协议。QQ服务器使用8000号端口侦听是否有信息到来,客户端使用4000号端口向外发送信息。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。