tcp/ip通信发送方-接收方不同进程速度问题

tcp/ip通信发送方-接收方不同进程速度问题,tcp,Tcp,在我的程序中,接收方的工作负载更大,我是否应该让发送方通过应用程序级别的ACK等方法等待接收方 您不应该直接发送TCP ACK消息——这些消息由操作系统在较低级别处理。我将按照可能性的顺序看以下内容: 接收器是否有一些简单的优化?很少有人能比接收者处理数据的速度更快地填满网络管道。确保接收器至少有两个线程:网络i/o线程和工作线程 如果接收者开始恐慌,它可能会向服务器发送一条节流消息,这会使服务器冷静下来,直到接收者赶上。这比在每条消息之后等待ack消息更有效,但它要求接收者知道何时会落后,这

在我的程序中,接收方的工作负载更大,我是否应该让发送方通过应用程序级别的ACK等方法等待接收方

您不应该直接发送TCP ACK消息——这些消息由操作系统在较低级别处理。我将按照可能性的顺序看以下内容:

  • 接收器是否有一些简单的优化?很少有人能比接收者处理数据的速度更快地填满网络管道。确保接收器至少有两个线程:网络i/o线程和工作线程
  • 如果接收者开始恐慌,它可能会向服务器发送一条节流消息,这会使服务器冷静下来,直到接收者赶上。这比在每条消息之后等待ack消息更有效,但它要求接收者知道何时会落后,这可能很困难
  • 或者,最慢但最可靠的事情是让接收者确认来自服务器的每条消息,就像您提到的那样。这不是TCP确认,而是发送方/接收方用于通信的数据格式的特殊消息

@JS Bang,我所说的确认,是指重新编写的应用程序级确认,而不是TCP确认。如果接收方无法跟上,则发送方将阻止写入。这种行为不是你想要的吗?