Transmission Control Protocol
OSI参照モデルにおけるトランスポート層にあたる通信プロトコル
エンドデバイス間でコネクションを確立することで信頼性を向上させる
データ送信は複数のパケットをシーケンス番号とともに送信し、パケットロスがないよう再送制御がされる
commited date: 2024-10-13
3wayハンドシェイク
#Network TCPプロトコルにおけるコネクションの確立手法、名前の通り3ステップでコネクションを確立する 送信元でTCPヘッダー内のSYN(コネクションの確立要求)フラグを有効化しセグメントを送信 送信先で1に対するACKとSYNフラグの有効化をしたセグメントを返信 送信元で2のSYNに対するACKのセグメントを送信
QUIC
#Network インターネット上の通信で多く用いられてきたTCPの課題を解消する、Googleが開発したプロトコル UDPをベースし、コネクション確立によるRTTの増大を防ぎつつ、TCPと同様の高い信頼性の実現、TLSを必須とするセキュリティの考慮がされる。 HTTP/3で用いられるプロトコルで高速なHTTPS通信を実現する コネクションID QUICではIPアドレス、ポート番号を抽象化する形で宛先、送信元に対応するコネクションIDが用いられる。 コネクションIDによりモバイル機器のようなWiFi・モバイルデータ通信等が頻繁に切り替わりIPアドレスの変更がある場合でも、コネクションを途切らせずに通信を続けられる。 QUICヘッダー QUICヘッダーはTCPと異なり明確にロングヘッダー、ショートヘッダーの2つに分類される。ロングヘッダーはコネクション確立時、ショートヘッダーはその後のデータ送信に用いられる ロングヘッダーはコネクション確立に必要な情報をまとめて送る(1-RTTハンドシェイク)ことでRTTの改善がされる ストリーム QUICでは順序制御や再送制御を管理する単位としてストリーム(ID)という概念を用いる。ストリーム同士は独立しておりHoLブロッキングのような問題の回避をする
輻輳制御
#Network TCPプロトコル等で行われるネットワークのリンク上でパケットが混線した際の制御 輻輳制御アルゴリズムは大きく以下の3つに分類される Loss-based Delay-based ハイブリッド型
TCP:IP技術入門