ネットワークスペシャリスト 2018年 午前2 問15
問題文
WebSocketの説明として、適切なものはどれか。
選択肢
ア:HTTPを拡張したプロトコルであり、通信メッセージはXML形式で記述される。
イ:URIのスキームにhttp又はhttpsを使用し、HTTPやHTTPSと同じポート番号で通信する。
ウ:双方向通信を行う仕組みであり、サーバ側からもクライアントにWebSocketの接続開始を要求できる。
エ:通信はGETメソッドで始まり、クライアントとサーバ間でハンドシェイクをして接続が確立する。(正解)
WebSocketの説明 +【午前2 解説】
要点まとめ
- 結論:WebSocketはGETメソッドによるハンドシェイクで接続を確立し、双方向通信を実現するプロトコルです。
- 根拠:HTTPのアップグレード機能を利用し、初期接続はHTTPで行い、その後専用の通信路に切り替わります。
- 差がつくポイント:WebSocketは通信開始時にGETメソッドでハンドシェイクを行い、サーバからの接続開始要求はできません。
正解の理由
選択肢エは「通信はGETメソッドで始まり、クライアントとサーバ間でハンドシェイクをして接続が確立する」とあり、これはWebSocketの仕様に合致しています。WebSocketはHTTPのGETリクエストで接続要求を送り、サーバがアップグレード応答を返すことで通信路が確立します。
よくある誤解
WebSocketはHTTPを拡張したプロトコルですが、通信メッセージがXML形式であるわけではありません。また、サーバ側からクライアントに接続開始を要求することはできません。
解法ステップ
- WebSocketの通信開始方法を理解する(HTTPのGETメソッドによるハンドシェイク)。
- 通信メッセージの形式がXMLではないことを確認する。
- URIスキームはws://またはwss://であり、http/httpsとは異なることを知る。
- 双方向通信は可能だが、接続開始はクライアントからのみであることを押さえる。
- 選択肢を一つずつ検証し、仕様に合致するものを選ぶ。
選択肢別の誤答解説
- ア:WebSocketはHTTPを拡張したプロトコルですが、通信メッセージはXML形式ではなくバイナリやテキスト形式です。
- イ:WebSocketのURIスキームはws://またはwss://であり、http/httpsとは異なり専用のポート(通常80や443)を使いますが、スキームは異なります。
- ウ:WebSocketは双方向通信を行いますが、接続開始はクライアントからのみで、サーバ側から接続開始要求はできません。
- エ:通信はGETメソッドで始まり、クライアントとサーバ間でハンドシェイクをして接続が確立するため正解です。
補足コラム
WebSocketはリアルタイム通信を実現するために設計され、チャットやゲーム、金融取引などで利用されます。HTTPのリクエスト/レスポンスモデルとは異なり、一度接続が確立すると双方向で継続的にデータを送受信可能です。URIスキームはws://(非暗号化)とwss://(TLS暗号化)があります。
FAQ
Q: WebSocketの通信開始はどのように行われますか?
A: クライアントがHTTPのGETメソッドで接続要求を送り、サーバがアップグレード応答を返すことで接続が確立します。
A: クライアントがHTTPのGETメソッドで接続要求を送り、サーバがアップグレード応答を返すことで接続が確立します。
Q: WebSocketはサーバから接続開始できますか?
A: いいえ。接続開始は必ずクライアントから行います。サーバは接続要求を受けて応答するのみです。
A: いいえ。接続開始は必ずクライアントから行います。サーバは接続要求を受けて応答するのみです。
関連キーワード: WebSocket, ハンドシェイク、双方向通信、HTTPアップグレード、wsスキーム

\ せっかくなら /
ネットワークスペシャリストを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

