【网络通信】服务器端Socket监听80端口,建立连接传输数据时也是使用的80端口么?

1. 服务器端Socket监听80端口,建立连接传输数据时也是使用的80端口么?

答:对。建立连接时服务器会分配一个新的Socket,但是用的源端口号还是80端口。套接字是由协议类型、源IP、目的IP和源端口、目的端口五部分组成的,理论上讲,不同连接的套接字只要满足这五部分不完全相同即可。只要不完全相同,收发数据时就能区分不同连接的数据。

附:这也是通过tcpdump等网络抓包工具抓取服务器监听端口的数据可以抓取到该服务下所有连接的网络包的原因所在。

2.使用同一端口号收发数据,是不是会导致带宽利用率降低,或者端口阻塞?

答:不会。端口只是一个数字,并非实际的物理端口,所以不存在端口阻塞的问题。在数据的通信网络传输过程中,只用到了网络层、链路层和物理层。端口是传输层的东西,和它没有关系。所以,端口号会影响带宽使用的认识是错误的。

时间: 2024-08-23 05:28:37

【网络通信】服务器端Socket监听80端口,建立连接传输数据时也是使用的80端口么?的相关文章

Tomcat服务器无法启动socket监听端口

最近生成一个新的web服务器,在启动后无法启动socket监听,检查程序本身无问题, 找原因,只是发布时搞错.处理如下: 1.在Eclipse平台 删除原来的web server; 2.新建server 3.删除tomcat服务器conf目录 下所有文件,server下的config文件到该目录: 4.删除tomcat服务器webapps 下项目.war 及对应目录,拷新 项目.war.

C#-Socket监听消息处理

TCP/IP:Transmission Control Protocol/Internet Protocol,传输控制协议/因特网互联协议,又名网络通讯协议.简单来说:TCP控制传输数据,负责发现传输的问题,一旦有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地,而IP是负责给因特网中的每一台电脑定义一个地址,以便传输.TCP协议在许多分布式应用程序中进行消息命令传递是必不可少的部分. TCP通信的三次握手:三次握手(Three-way Handshake),是指建立一个TCP连

oracle的环境配置-监听服务和访问连接原理

监听服务和访问连接原理 端口号范围:1025~6500 [[email protected] ~]$ lsnrctl   --进入监听管理工具 LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 05-JUN-2014 11:13:20 Copyright (c) 1991, 2005, Oracle.  All rights reserved. Welcome to LSNRCTL, type "help" for inform

nginx源码分析--监听套接字的创建 套接字的监听 HTTP请求创建连接

作为一个web服务器,那么肯定是有监听套接字的,这个监听套接字是用于接收HTTP请求的,这个监听套接字的创建是根据配置文件的内容来创建的,在nginx.conf文件中有多少个地址就需要创建多少个监听套接字.这里不说各个结构体的构造 只说大体情况! 1).首先在main函数中调用了ngx_init_cycle()函数,在这个函数的最后调用了ngx_open_listening_sockets函数,这个函数负责将创建的监听套接字进行套接字选项的设置(比如非阻塞.接受发送的缓冲区.绑定.监听处理) 2

ora-12514 tns 监听程序无法识别连接描述符中请求的服务

今天,远程连接linux服务器时遇到这样一个错误,tnsnames.ora 和 listener.ora文件配置都没有错误 但是就是连接不上  tnsping 也是正常的  但用plsql连接的时候总是报错 ora-12514 tns 监听程序无法识别连接描述符中请求的服务,因为连接本地数据库时没有问题的 所以监听程序应该没问题,接下来就查看tnsnames.ora 发现还是这里出了问题,其实报错报的已经说的很明确了 无法识别连接描述符中请求的服务 说明SID 和 服务名 是不一样的 我把 SE

JavaWeb服务启动时,在后台启动加载一个线程进行Socket监听端口

最近,做一个项目,需要做一个web服务器,该服务器要与Android端和GPRS模块互相通信.考虑Android端与服务器端用Http通信,GPRS模块与服务器用Tcp通信.因此需要在Web服务器启动的时候启动加载一个线程负责Tcp端口的监听. search了一些方法,从中挑选了两个在此记录一下: 方法一:监听(Listener) 我们创建一个监听类,继承自ServletContextListener,代码如下: 1 package will; 2 3 4 import java.io.IOEx

监听套接字 连接套接字

摘要:对于服务器编程中最重要的一步等待并接受客户的连接,那么这一步在编程中如何完成,accept函数就是完成这一步的.它从内核中取出已经建立的客户连接,然后把这个已经建立的连接返回给用户程序,此时用户程序就可以与自己的客户进行点到点的通信了. accept函数等待并接受客户请求: #include<sys/socket.h> int accept(int sockfd, struct sockaddr* addr, socklen_t* len) 返回:非负描述字——成功, -1——失败 ac

nginx源代码分析--监听套接字的创建 套接字的监听 HTTP请求创建连接

作为一个webserver,那么肯定是有监听套接字的,这个监听套接字是用于接收HTTP请求的,这个监听套接字的创建是依据配置文件的内容来创建的,在nginx.conf文件里有多少个地址就须要创建多少个监听套接字.这里不说各个结构体的构造 仅仅说大体情况! 1).首先在main函数中调用了ngx_init_cycle()函数,在这个函数的最后调用了ngx_open_listening_sockets函数,这个函数负责将创建的监听套接字进行套接字选项的设置(比方非堵塞.接受发送的缓冲区.绑定.监听处

oracle11G 已开启监听,但远程连接依旧无监听解决过程

1.连接数据库显示无监听程序,首先查看服务器的oracle监听服务是否开启,服务名称:OracleOraDb11g_home1TNSListener(具体环境中可能不完全一样,但是认准TNSListener是没错的) 2.本地使用127.0.0.1可以连接,但使用本机IP则显示无监听,使用其他机器连接也是无监听,先排查一下防火墙问题 3.排查防火墙后依旧没有解决,那么问题根源所在:oracle的listener.ora文件 解决办法: listener.ora文件路径:F:\app\Admini