小编Sub*_*esh的帖子

服务器如何找出要发送到哪个客户端端口?

据我了解,这是客户端发出连接请求时发生的情况:

  1. 服务器将绑定到特定的端口号。端口号始终绑定到侦听进程。由于只有服务器在监听传入的连接,我们不需要在客户端绑定
  2. 服务器将继续监听该端口号。
  3. 客户端将发送connect()请求。
  4. 服务器将使用accept(). 一旦服务器接受客户端的请求,内核分配服务器进一步随机端口号send()receive(),因为不能用于发送和监听服务器上的相同的端口号,和先前端口仍然是监听新连接

鉴于所有这些,服务器如何找出客户端正在接收的端口?我知道客户端将发送带有源端口和目标端口的 TCP 段,因此服务器将使用该段的源端口作为其目标端口,但是服务器调用什么函数来查找该端口?是accept()吗?

tcp socket

29
推荐指数
1
解决办法
8万
查看次数

管道的一端是否同时具有读和写 fd?

据我了解,管道的一端既可以读写 fd,另一端也可以读写 fd。这就是为什么当我们使用 using 写入时fd[1],我们关闭了读取端,例如fd[0]管道同一侧的读取端,而当我们从第二端读取 using 时,fd[0]我们关闭了fd[1]该端的读取端。我对么?

pipe ipc

7
推荐指数
2
解决办法
1万
查看次数

标签 统计

ipc ×1

pipe ×1

socket ×1

tcp ×1