TCP和UDP能不能同时监听同一个端口

2024年11月28日 17:59
有3个网友回答
网友(1):

TCP和UDP端口是可以相同的,因为TCP和UDP都在OSI的第四层,端口号就是第四层,也就是说端口只是TCP定义的数据而已,TCP端口和UDP端口就是两个传输层协议自己的东西,分别进行维护。tcp维护着tcp的端口列表,udp维护着udp的端口,所以不会冲突可以监听。

另外linux 3.9内核之后有了TCP的SO_REUSEPORT选项,主要用来做负载均衡,也是可以两个进程监听同一个tcp端口。

网友(2):

这样的:如果在同一台机器上登录一个账户不会不会出现问题,在登录成功后都回由端口返回登录成功的信息,可是同时登录两个账号的时,第二个账号登陆成功的信息还是返回到第一个账号中,看了下服务器上的信息,两个账号使用了同样的ip和端口号,怎么解决这样的问题呢,我用的UDP通信,是不两个进程不能监听同一端口呢看

就像一样,同一机器登录两个账号,怎么实现端口的监听呢,能保证信息发送到正确的账号中,它是怎么实现监听同一端口的看

网友(3):

我在找服务器端口复用的方法。你问的如果是本地需要同时登陆多个账号,就需要先用一个固定端口x和服务器通信登陆,成功后服务器返回一个端口y表示本地账户用y和服务器通信。本地端收到y后需要释放x,使用y和服务器通信。登陆第二个账号又用x和服务器通信登陆,成功后服务器返回一个端口y2,继续上面的过程就可以了。