メインコンテンツまでスキップ

2. Conformance Requirements (適合性要件)

本仕様のすべての図、例、および注記は非規範的であり、明示的に規範的とマークされていない限り、その他のすべても同様です。

2.1 Terminology and Other Conventions (用語とその他の規約)

本文書のキーワード「MUST」、「MUST NOT」、「REQUIRED」、「SHALL」、「SHALL NOT」、「SHOULD」、「SHOULD NOT」、「RECOMMENDED」、「MAY」、および「OPTIONAL」は、RFC 2119に記載されている通りに解釈されるものとします。

RFC 2119キーワード

キーワード日本語意味
MUSTしなければならない絶対的な要求
MUST NOTしてはならない絶対的な禁止
REQUIRED必須である絶対的な要求
SHALLしなければならない義務的な要求
SHALL NOTしてはならない義務的な禁止
SHOULDすべきである強い推奨
SHOULD NOTすべきでない強い非推奨
RECOMMENDED推奨される推奨される実践
MAYしてもよい許可/任意
OPTIONAL任意である完全に任意

主要用語の定義

WebSocket接続 (WebSocket Connection)
WebSocketメッセージを送信するためにクライアントとサーバー間に確立された概念的なチャネル。

WebSocketエンドポイント (WebSocket Endpoint)
WebSocket接続のいずれかの端(クライアントまたはサーバー)。

WebSocketクライアント (WebSocket Client)
WebSocket接続を開始するアプリケーション。

WebSocketサーバー (WebSocket Server)
WebSocket接続を受け入れるアプリケーション。

メッセージ (Message)
1つ以上のフレームで構成されるアプリケーションレベルのデータ単位。

フレーム (Frame)
WebSocket接続における通信の最小単位。

制御フレーム (Control Frame)
Close、Ping、Pongなどの通信状態に使用されるフレーム。

データフレーム (Data Frame)
アプリケーションまたは拡張データを含むフレーム。

プロトコル要件の概要

本仕様に準拠する実装は:

  1. 完全なハンドシェイクメカニズムを実装しなければならない (MUST)
  2. 定義されたすべてのフレームタイプを正しく処理しなければならない (MUST)
  3. クライアント実装では、サーバーに送信されるすべてのフレームをマスクしなければならない (MUST)
  4. サーバー実装では、クライアントに送信されるフレームをマスクしてはならない (MUST NOT)
  5. 非準拠のフレームを受信した場合、接続をクローズしなければならない (MUST)
  6. TLS(wss://)をサポートすべきである (SHOULD)

参考リンク