我们先来看看百科的定义:
端口是英文port的意译,可以认为是设备与外界通讯交流的出口。端口可分为虚拟端口和物理端口,其中虚拟端口指计算机内部或交换机路由器内的端口,不可见。例如计算机中的80端口、21端口、23端口等。物理端口又称为接口,是可见端口,计算机背板的RJ45网口,交换机路由器集线器等RJ45端口。电话使用RJ11插口也属于物理端口的范畴。
端口是计算机网络中用于标识进程和服务的抽象概念。在网络通信中,每台计算机都可以运行多个网络应用程序或服务,而端口就是用来区分这些应用程序或服务的一种方式。端口通过数字来表示,取值范围从0到65535。
我又问了下gpt,答案如下:
1. **物理端口:** 这是指计算机上的物理连接点,例如网络设备上的插口。物理端口通常用于区分设备之间的连接。
2. **逻辑端口:** 这是指计算机上用于区分进程或服务的数字标识。每个网络应用程序或服务通常会监听一个或多个特定的端口,以便其他计算机能够找到并与其通信。
端口的作用包括:
1. **进程标识:** 端口允许操作系统将网络数据包交付到正确的进程或应用程序。当计算机收到网络数据时,操作系统使用目标端口来确定将数据交给哪个应用程序处理。
2. **服务标识:** 端口也用于标识运行在计算机上的特定网络服务。例如,Web服务器通常监听80端口,而邮件服务器可能监听25端口。
3. **多路复用(Multiplexing):** 多个应用程序可以同时运行在一台计算机上,每个应用程序通过使用不同的端口号来区分。这种机制允许在同一时间使用相同的网络连接传输多个不同应用程序的数据。
4. **网络通信:** 端口是计算机之间进行网络通信的重要标识。发送方通过指定目标端口,将数据包传输到接收方的特定应用程序。
常见的端口有一些标准分配,例如:
- 80端口通常用于HTTP通信(Web服务)。
- 443端口通常用于HTTPS通信(加密的Web服务)。
- 21端口通常用于FTP通信(文件传输协议)。
- 25端口通常用于SMTP通信(简单邮件传输协议)。
这边我自己举一个例子:假设 我现在正在用手向一个穿白衣路人指挥路线,并且和另外一个黑衣路人用嘴对话,此时,我的手和我的嘴巴像是一个端口。看向我手获取信息的那个人就是白衣路人,而另外听着我嘴巴讲话的就是黑衣路人。我可以说,看着我手的那个人,就是白衣路人,表示端口的一个作用,即可以对进程标识。同时他们又听着我的描述,表示着正在接受我的信息。当然,这个过程具有时效性,一旦我们的对话结束了,我上面的标识对象的作用也就相应消失了。
属于小白,还请各位大佬斧正。