端口号的作用,及为什么需要端口号

一.端口概念

在网络技术中,端口(Port)大致有两种意思:一是物理意义上的端口,比如,ADSL Modem、集线器、交换机、路由器用于连接其他网络设备的接口,如RJ-45端口、SC端口等等。二是逻辑意义上的端口,一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。
我们这里将要介绍的就是逻辑意义上的端口。我们这里所说的端口,不是计算机硬件的I/O端口,而是软件形式上的概念.工具提供服务类型的不同,端口分为两种,一种是TCP端口,一种是UDP端口。计算机之间相互通信的时候,分为两种方式:一种是发送信息以后,可以确认信息是否到达,也就是有应答的方式,这种方式大多采用TCP协议;一种是发送以后就不管了,不去确认信息是否到达,这种方式大多采用UDP协议。对应这两种协议的服务提供的端口,也就分为TCP端口和UDP端口。

二.网络端口的分类:

2.1 公认端口(Well-KnownPorts):范围从0到1023

它们紧密绑定(binding)于一些服务。通常这些端口的通讯明确表明了某种服务的协议。例如:21端口分配给FTP服务,

25端口分配给SMTP(简单邮件传输协议)服务,80端口分配给HTTP服务,135端口分配给RPC(远程过程调用)服务等

等。

我们在IE的地址栏里输入一个网址的时候( 比如www.cce.com.cn)是不必指定端口号的,因为在默认情况下WWW服务的端口号是“80”。

网络服务是可以使用其他端口号的,如果不是默认的端口号则应该在地址栏上指定端口号,方法是在地址后面加上号“:”(半

角),再加上端口号。比如使用“8080”作为WWW服务的端口,则需要在地址栏里输入“www.cce.com.cn:8080”。 但是有些

系统协议使用固定的端口号,它是不能被改变的,比如139 端口专门用于NetBIOS与TCP/IP之间的通信,不能手动改变。

2.2 动态端口(Dynamic Ports):范围从1024到65535

之所以称为动态端口,是因为它一般不固定分配某种服务,而是动态分配
动态分配是指当一个系统进程或应用程序进程需要网络通信时,它向主机申请一个端口,主机从可用的端口号中分配
一个供它使用。当这个进程关闭时,同时也就释放了所占用的端口号。

  • 2.2.1 注册端口(RegisteredPorts):从1024到49151。它们松散地绑定于一些服务。也就是说有许多服务绑定于这些端口,这些端口同样用于许多其它目的。例如:许多系统处理动态端口从1024左右开始。

  • 2.2.2动态和/或私有端口(Dynamicand/orPrivatePorts):从49152到65535。理论上,不应为服务分配这些端口。实际
    上,机器通常从1024起分配动态端口。但也有例外:SUN的RPC端口从32768开始。

三.作用

tcp的连接是两个进程间的通信,而数据链路层的是通过硬件地址来区分的,所以我认为端口号就是为了区分同一计算机上的

不同进程,端口号本质上就是一个整型。tcp和udp端口号可以相同,不冲突。

    原文作者:tester_sz
    原文地址: https://blog.csdn.net/qq_39813400/article/details/102953294
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞