Web applications WebSocket:如何处理丢失的ping?

Web applications WebSocket:如何处理丢失的ping?,web-applications,web,websocket,ping,latency,Web Applications,Web,Websocket,Ping,Latency,我正在尝试实现一个协议,将接收到的乒乓球与相应的乒乓球进行匹配 但是对于我发送但没有收到乒乓球的乒乓球,我该怎么办呢?这会发生吗?或者是否保证所有ping都会有相应的Pong,并且从不接收Pong表示连接丢失?websocket协议文档对此没有说明。websocket基于TCP协议,该协议确保所有数据包都按顺序处理,并且在继续处理输入数据之前,丢失或损坏的数据包都会重新传输 因此,缺少乒乓的唯一可能解释是连接另一端的乒乓/乒乓协议实现中的错误 网络浏览时,可以很容易地看到TCP协议及其顺序的可靠

我正在尝试实现一个协议,将接收到的乒乓球与相应的乒乓球进行匹配


但是对于我发送但没有收到乒乓球的乒乓球,我该怎么办呢?这会发生吗?或者是否保证所有ping都会有相应的Pong,并且从不接收Pong表示连接丢失?websocket协议文档对此没有说明。

websocket基于TCP协议,该协议确保所有数据包都按顺序处理,并且在继续处理输入数据之前,丢失或损坏的数据包都会重新传输

因此,缺少乒乓的唯一可能解释是连接另一端的乒乓/乒乓协议实现中的错误


网络浏览时,可以很容易地看到TCP协议及其顺序的可靠性。当您的internet连接不好时,网站加载可能会在加载过程中中断,但加载的部分总是按正确的顺序进行,并且没有任何错误,例如HGF%$/GHfDw(&IjfdsAyW$§REggnfdER§$HHxM+FD5

WebSocket基于TCP协议,该协议确保按顺序处理所有数据包,并在继续处理输入数据之前重新传输丢失或损坏的数据包

因此,缺少乒乓的唯一可能解释是连接另一端的乒乓/乒乓协议实现中的错误


在网络浏览时,可以很容易地看到TCP协议及其顺序的可靠性。当您的internet连接不好时,网站加载过程可能会中断,但加载的部分始终顺序正确,并且没有任何错误。hgf%$/GHfDw(&IjfdsAyW$§REggnfdER§$HHxM+FD5

符合要求的WebSocket安装必须在收到ping时返回一个pong。一般来说,在合理的时间段后没有pong意味着网络错误或远程端点上的其他事情繁忙或中断。有一些警告

  • 只需确认最近的ping。如果发送两个ping,可能只会收到一个pong
  • ping和pong是控制帧。WebSocket没有用于控制帧的单独通道。大数据帧可能会延迟紧接其后的ping的接收。实现可能会分割数据消息以改善控制消息延迟
  • 收到闭合帧后,将不会发送PONG

符合要求的WebSocket安装必须在收到ping后返回pong。一般来说,在合理的时间段后没有pong表示网络错误或远程端点上的其他内容繁忙或中断。有几个注意事项

  • 只需确认最近的ping。如果发送两个ping,可能只会收到一个pong
  • ping和pong是控制帧。WebSocket没有用于控制帧的单独通道。大数据帧可能会延迟紧接其后的ping的接收。实现可能会分割数据消息以改善控制消息延迟
  • 收到闭合帧后,将不会发送PONG