QUICをゆっくり解説(16):ヘッダ圧縮
前回説明したように、HTTP/2用とHTTP/3用のヘッダ圧縮は、それぞれHPACK、QPACKと呼ばれています。HPACKはヘッダ圧縮の基礎を築き、QPACKはHPACKのHoLブロッキングの問題を…
2021年11月17日 水曜日
前回説明したように、HTTP/2用とHTTP/3用のヘッダ圧縮は、それぞれHPACK、QPACKと呼ばれています。HPACKはヘッダ圧縮の基礎を築き、QPACKはHPACKのHoLブロッキングの問題を…
2021年11月17日 水曜日
QUICは汎用的なトランスポート層プロトコルですので、様々なアプリケーションプロトコルのやりとりに使えます。みなさんがよく知っているHTTP/1.1を乗せることも可能です。実際、開発者の間では、HTT…
2021年11月10日 水曜日
「フロー制御」の回で説明したように、輻輳制御とは途中のネットワークが溢れないようにするための仕組みです。QUICは、正確なRTT計測や、前回説明した簡潔なロス検知の機能を提供しています。このため輻輳制…
2021年11月02日 火曜日
QUICは、信頼性を提供するトランスポート層です。そのため、パケットが配送中に欠落した場合、その欠落を判定し、パケット内の情報を再送する必要があります。QUICは、前回の記事で紹介した確認応答を利用し…
2021年10月26日 火曜日
この連載も12回目を迎え、トランスポート層の魔境であるロス検知と輻輳制御に踏み入る時期が来たようです。私はこの分野の専門家ではないため、表面的な説明になってしまうと思うのですが、ご容赦ください。今回は…
2021年10月19日 火曜日
QUICと「TCP上のTLS 1.3」との決定的な違いに、トランスポート層に関連する情報が保護されているか否かが挙げられます。TLS 1.3では情報が格納されるTCPヘッダは保護できません。一方QUI…
2021年10月14日 木曜日
通信の途中で、クライアントのIPアドレスやポート番号が変更されることがあります。以下の2つが典型例です。 利用するネットワークが携帯網からWi-Fiに変わった (または、その逆) 中間のNATが、別の…
2021年10月06日 水曜日
今回は、QUICのコネクションを終了させる手順について説明します。 正常な終了 QUICのコネクションを正常に終了させるには、CONNECTION_CLOSEフレーム(フレーム型の値は0x1c)を送信…
2021年09月22日 水曜日
前回、QUICのストリームについて説明しました。今回は、ストリームのフロー制御についてお話しします。フロー制御はそれほど難しい機能ではないので、今回はほとんど用語整理のような内容になっております。 フ…
2021年09月15日 水曜日
これまでの記事で、QUICのコネクションを確立する手順について説明しました。今回は、いよいよコネクションを使って、アプリケーションデータをやりとりします。 ストリーム ストリームとは、QUICコネクシ…
2021年09月10日 金曜日
増幅攻撃(amplification attack)とは、攻撃者が第三者の管理するサーバにデータの量を増幅させて標的に送りつけるDoS攻撃の一種です。 攻撃者は、小さなデータをサーバに送りつけます。こ…
2021年08月30日 月曜日
前回はクライアントとサーバが初めてコネクションを確立する際に実行されるハンドシェイクについて説明しました。まだ、コネクションの切り方を説明してないので恐縮ですが、今回は1回目のコネクションが終了した後…
2021年08月25日 水曜日