[23] PING
フレームは、
送信し、peer からの応答を確認するものです。
[2] PING
フレーム (フレーム型 0x6
)
は、送信者からの最小 RTT を計測したり、
idle 接続がまだ機能するか判断したりするためのものです >>1。
[10] ストリーム識別子は 0x0
でなければなりません。
PING
フレームはストリームに関連付けられません >>1。
[22] 他のフラグは 0 でなければなりません。 受信者は、無視しなければなりません。 >>21
[4] payload は、8バイトの不透明データを含まなければなりません。
送信者は任意の値を選ぶことができ、任意の形で使うことができます。
PING
応答の場合は、返信元となるフレームと同じ
payload データを含まなければなりません。 >>1
[11] PING
フレームのストリーム識別子が 0x0
でなければ、 接続エラー PROTOCOL_ERROR
としなければなりません
>>1。
[12] PING
フレームの payload の長さが 8 でなければ、
接続エラー FRAME_SIZE_ERROR
としなければなりません >>1。
[5] ACK
フラグの設定されていない PING
フレームを受信したら、 ACK
フレームを設定した
PING
(PING
応答) を送信しなければなりません。 payload
は同じでなければなりません。 >>1
[6] PING
応答は、他のフレームより高い優先度とするべきです >>1。
[26] PING
を送信していないのに ACK
付きの PING
を受信したらどうするべきなのかは不明です。
[27] Firefox は無視します。 Chrome は接続エラー
PROTOCOL_ERROR
とします。
[16] PING
フレームの送信頻度や payload の値は、
fingerprinting vector となるかもしれません。
[20] PING
フレームの返信により peer までの遅延が測定されると、
プライバシー上問題となることもあるかしれません >>19。
[13] WebSocket には Pingフレームと Pongフレームがあります。
[15] HTML の ping
属性や HTTP
の Ping-From:
/Ping-To:
ヘッダーとは無関係です。
[24] 728113 – use spdy ping to avoid/detect nat timeout ( 版) <https://bugzilla.mozilla.org/show_bug.cgi?id=728113>
[25] Issue 34752 - chromium - Implement PING - An open-source project to help move the web forward. - Google Project Hosting ( 版) <https://code.google.com/p/chromium/issues/detail?id=34752>