<p>style_prompt
本記事は<strong>Geminiの出力をプロンプト工学で整理した業務ドラフト(未検証)</strong>です。</p>
<h1 class="wp-block-heading">令和5年度 ネットワークスペシャリスト試験 午前II 問14 HTTP/2の特徴</h1>
<p>本問はHTTP/1.1の制限を解消するために策定されたHTTP/2の主要技術である多重化について、その動作原理と名称を問うています。</p>
<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>【問題】
HTTP/2において、一つのTCPコネクション上で複数のリクエストとレスポンスを並行してやり取りする仕組みはどれか。</p>
<p>ア サーバープッシュ
イ ヘッダー圧縮
ウ ホストヘッダー
エ マルチプレクシング</p>
</blockquote>
<h3 class="wp-block-heading">【解説】</h3>
<p>HTTP/2は、従来のHTTP/1.1で課題となっていた通信効率(特に「Head-of-Line Blocking」)を改善するために策定されたプロトコルです。</p>
<ol class="wp-block-list">
<li><p><strong>多重化(マルチプレクシング)</strong>:
単一のTCPコネクション内に「ストリーム」という論理的な双方向チャネルを複数確立します。データを「フレーム」という単位に細分化して送受信することで、一つのレスポンスを待たずに次のリクエストを処理できます。</p></li>
<li><p><strong>バイナリフォーマット</strong>:
HTTP/1.1はテキストベースでしたが、HTTP/2はバイナリ形式を採用し、パースの高速化と低遅延を実現しています。</p></li>
</ol>
<div class="wp-block-merpress-mermaidjs diagram-source-mermaid"><pre class="mermaid">
sequenceDiagram
participant Client as クライアント
participant Server as サーバ
Note over Client, Server: 1つのTCPコネクション
Client ->> Server: ストリーム1: Request A (HTML)
Client ->> Server: ストリーム3: Request B (CSS)
Server ->> Client: ストリーム3: Response B (CSS Data)
Server ->> Client: ストリーム1: Response A (HTML Data)
Note right of Server: 並行してデータを返せる
</pre></div>
<h3 class="wp-block-heading">【選択肢の吟味】</h3>
<figure class="wp-block-table"><table>
<thead>
<tr>
<th style="text-align:left;">選択肢</th>
<th style="text-align:left;">判定</th>
<th style="text-align:left;">解説</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:left;">ア</td>
<td style="text-align:left;">×</td>
<td style="text-align:left;">サーバープッシュは、クライアントからの要求がある前にサーバがリソース(画像等)を先読みして送信する機能です。</td>
</tr>
<tr>
<td style="text-align:left;">イ</td>
<td style="text-align:left;">×</td>
<td style="text-align:left;">HPACKというアルゴリズムを用い、重複するヘッダー情報を圧縮して転送量を削減する技術です。</td>
</tr>
<tr>
<td style="text-align:left;">ウ</td>
<td style="text-align:left;">×</td>
<td style="text-align:left;">1つのIPアドレスで複数のドメインを運用する(仮想ホスト)ために、HTTP/1.1から導入されたヘッダー項目です。</td>
</tr>
<tr>
<td style="text-align:left;">エ</td>
<td style="text-align:left;">○</td>
<td style="text-align:left;">正解。一つのTCPコネクションを論理的な単位で分割し、複数のやり取りを並行させる仕組みを指します。</td>
</tr>
</tbody>
</table></figure>
<h3 class="wp-block-heading">【ポイント】</h3>
<ul class="wp-block-list">
<li><p><strong>マルチプレクシング(多重化)</strong>:1コネクションで複数ストリームを並行処理する。</p></li>
<li><p><strong>HPACK</strong>:HTTP/2独自のヘッダー圧縮方式。</p></li>
<li><p><strong>バイナリプロトコル</strong>:転送効率とパースの正確性を向上させる。</p></li>
</ul>
style_prompt
本記事はGeminiの出力をプロンプト工学で整理した業務ドラフト(未検証) です。
令和5年度 ネットワークスペシャリスト試験 午前II 問14 HTTP/2の特徴
本問はHTTP/1.1の制限を解消するために策定されたHTTP/2の主要技術である多重化について、その動作原理と名称を問うています。
【問題】
HTTP/2において、一つのTCPコネクション上で複数のリクエストとレスポンスを並行してやり取りする仕組みはどれか。
ア サーバープッシュ
イ ヘッダー圧縮
ウ ホストヘッダー
エ マルチプレクシング
【解説】
HTTP/2は、従来のHTTP/1.1で課題となっていた通信効率(特に「Head-of-Line Blocking」)を改善するために策定されたプロトコルです。
多重化(マルチプレクシング) :
単一のTCPコネクション内に「ストリーム」という論理的な双方向チャネルを複数確立します。データを「フレーム」という単位に細分化して送受信することで、一つのレスポンスを待たずに次のリクエストを処理できます。
バイナリフォーマット :
HTTP/1.1はテキストベースでしたが、HTTP/2はバイナリ形式を採用し、パースの高速化と低遅延を実現しています。
sequenceDiagram
participant Client as クライアント
participant Server as サーバ
Note over Client, Server: 1つのTCPコネクション
Client ->> Server: ストリーム1: Request A (HTML)
Client ->> Server: ストリーム3: Request B (CSS)
Server ->> Client: ストリーム3: Response B (CSS Data)
Server ->> Client: ストリーム1: Response A (HTML Data)
Note right of Server: 並行してデータを返せる
【選択肢の吟味】
選択肢
判定
解説
ア
×
サーバープッシュは、クライアントからの要求がある前にサーバがリソース(画像等)を先読みして送信する機能です。
イ
×
HPACKというアルゴリズムを用い、重複するヘッダー情報を圧縮して転送量を削減する技術です。
ウ
×
1つのIPアドレスで複数のドメインを運用する(仮想ホスト)ために、HTTP/1.1から導入されたヘッダー項目です。
エ
○
正解。一つのTCPコネクションを論理的な単位で分割し、複数のやり取りを並行させる仕組みを指します。
【ポイント】
ライセンス :本記事のテキスト/コードは特記なき限り
CC BY 4.0 です。引用の際は出典URL(本ページ)を明記してください。
利用ポリシー もご参照ください。
コメント