TCP通信是双向通信吗?


無口君
2025-03-17 08:43:56 (2天前)
  1. 这真是一个关于TCP的新手问题


通讯
</跨度>

是TCP

通讯
</跨度>
一个双向的

通讯
</跨度>

让我给出一个场景:
一个程序正在侦听TCP端口,比如端口25。外部

2 条回复
  1. 0# 無口君 | 2019-08-31 10-32



    TCP始终是双向的。与UDP一样,没有“发送和忘记”。第一个程序必须打开服务器套接字。这意味着,它在端口25上侦听TCP SYN(一个标志,表示正在打开连接)。如果您的第二个程序在端口25(从端口45000)连接,则该连接由4个值,主机IP,主机端口,远程主机IP,远程主机端口标识。此时,在三次握手(SYN,SYN ACK,ACK)完成的情况下,第一个程序从返回的服务器套接字获取一个客户端套接字,该套接字连接到第二个程序。所以,是的,一旦建立连接,它就是双向通信,你很容易受到攻击。



    防火墙主要阻止传入流量。如果您的第一个程序位于防火墙后面,并且未正确配置防火墙,则防火墙会从第二个程序中删除SYN-Packets。不会有任何联系。如果配置正确,防火墙还可以检查出站连接。



    就像我说的。一旦连接到远程程序,远程程序就会像本地程序一样获得客户端套接字,通过它完成所有通信。


登录 后才能参与评论