首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WebSocket ping应用程序数据的使用

WebSocket ping应用程序数据的使用
EN

Stack Overflow用户
提问于 2013-06-25 14:34:54
回答 1查看 978关注 0票数 1

除了将WebSocket ping帧标识为ping帧的操作码之外,ping ping帧可以包含也可以不包含应用数据。

据我所知,ping/pong的目的是防止TCP连接超时。帧包含尽可能小的伪数据(即操作码),尽可能频繁地发送,以表明连接仍在使用中。

还有更多的内容吗?如果我从不在ping帧中发送应用程序数据,我会错过什么吗?例如,如果我在ping中发送令牌,以便在ping和pong之间建立对应关系,从而通过发送ping和接收相应pong之间的时间来判断连接质量,我会滥用ping/pong吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-25 22:44:11

ping和pong帧允许有效载荷,如果在Ping中发送,将由相应的pong返回。它们对应用程序数据可能没有用处的原因有几个。

  • 有效负载仅为二进制,限制为125个字节。
  • 只响应最新的ping而不是每个ping都是合法的individually.
  • Many WebSocket接口(特别是包括浏览器提供给JavaScript的接口)不会向应用程序公开ping和pong。

也就是说,所有与RFC6455兼容的WebSocket实现都将回复ping,即使它们不让应用程序知道它们或允许应用程序发送它们自己的ping。这使得使用ping/pong及其有效负载绝对适合于keepalive消息或其他网络级别的统计或记账。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17290648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档