网络端口服务(PortsService)介绍

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/summy_J/article/details/74254668

ForeWord


本文介绍了关于网络通信的重要概念:端口号,并调研了网络端口服务的分类。

Key Point:

  1. 端口号概念
  2. 网络端口服务调研

     tips:全文阅读仅需3min ٩(๑❛ᴗ❛๑)۶
    

这里写图片描述

开车ヾ(◍°∇°◍)ノ゙~


啥是端口号


什么是端口号?

我们知道,在网络数据传输中,目的主机收到数据包后。要经过各层协议栈最后到达应用程序。整个过程可以总结为下图:

2

自底向上的过程描述如下

Step1:以太网驱动程序根据以太网首部中的“上层协议”字段确定该数据帧的有效载荷 (payload,指除去协议首部之外实际传输的数据)是IP、ARP还是RARP协议的数据报,然后交给相应的协议处理。

Step2:若为IP数据报,IP协议再根据IP首部中的“上层协议”字段确定该数据报的有效载荷是TCP、UDP、ICMP还是IGMP,然后交给相应的协议处理。

Step3:若为TCP段或UDP段,TCP或UDP协议再根据TCP首部或UDP首部的“端口号”字段确定应该将应用层数据交给哪个用户进程。从而完成数据传输。

说了这么多,

2

   端口号的作用:IP 地址是标识网络中不同主机的地址,而端口号就是同一台主机上标识不同进程的地址,IP 地址和端口号合起来标识网络中唯一的进程。

端口包括物理端口和逻辑端口:

   物理端口:用于连接物理设备之间的接口,如ADSL Modem、集线器、交换机、路由器上用于连接其他网络设备的接口。
   逻辑端口:逻辑上用于区分服务的端口,如TCP/IP协议。 

网络端口服务(PortsService)


背景:网络通信中的端口号

对于一般的网络通信,通信的双方分别是客户端和服务器。客户端主动发起请求,而服务器被动地等待、接收和应答请求。客户端 的IP地址和端口号唯一标识了该主机上的客户端进程,服务器的IP地址和端口号唯一标识了该主机上服务进程。

由于客户端是主动发起请求的⼀方,它必须知道服务器的IP地址和服务进程的端口号,所以,一些常见的网络协议有默认的服务器端口。
165

例如HTTP服务默认TCP协议的80端口、FTP服务默认TCP协议的21端口、TFTP服务默认UDP协议的69端口。。。

在使用客户端程序时,必须指定服务器的主机名或IP地址。如果不明确指定端口号则采用默认端口,/etc/services中列出了所有well-known(众所周知)的服务端口和对应的传输层协议,这是由IANA(InternetAssignedNumbersAuthority)规定的:

45
其中有些服务既可以用TCP也可以用UDP,为了清晰,IANA规定这样的服务采用相同的TCP或UDP默认端口号,而另外一些TCP和UDP的相同端口号却对应不同的服务。

事实上,很多服务有well-known的端口号,然而客户端程序的端口号却不必是well-known的。往往是每次运行客户端程序时由系统自动分配一个空闲的端口号,用完就释放掉。称为ephemeral的端口号。

网络端口分类

   一个IP地址的端口通过16bit进行编号,所以最多可以有65536个端口。体现在上图中,端口是通过端口号来标记的,端口号只有整数,范围是从0到65535。 

这么多的端口,自然有它的分类:

10

    1. 知名端口:端口号范围从0到1023,一般固定分配给一些服务。 
    2. 动态端口:端口号范围从1024到65535,一般不固定分配给某个服务,也就是说许多服务都可以使用这些端口。 
    3 .保留端口号:介于1~1023之间,一些应用程序(如有名的Rlogin,26.2节)将它作为客户与服务器之间身份认证的一部分。

注:大多数TCP/IP实现给临时端口号分配1024—5000之间的端口号。大于5000的端口号是为其他服务器预留的。


The End


就介绍到这里吧,ヾ( ̄▽ ̄)Bye~Bye~

123

猜你喜欢

转载自blog.csdn.net/summy_J/article/details/74254668
今日推荐