TCPの「確実に届ける」ってどういうこと?
TCPは通信前に3ウェイハンドシェイク(SYN→SYN-ACK→ACK)でコネクションを確立するよ。送ったデータには番号が振られ、受信側が「ここまで受け取った」と応答する。データが欠けたら再送する。だからWebページや添付ファイルが壊れずに届くんだ
じゃあ全部TCPでいいのでは?
TCPは確実だけどオーバーヘッド(余分な処理)が大きい。ビデオ通話で1フレーム欠けても再送するより次のフレームを表示した方がいいし、オンラインゲームでは0.01秒の遅延が致命的。UDPなら余分な確認をスキップして最速でデータを送れる。「多少欠けてもOK、速度が命」な場面ではUDPが最適なんだよ
ポート番号って何?
IPアドレスが「建物の住所」なら、ポート番号は「部屋番号」だよ。HTTP(80)、HTTPS(443)、SSH(22)、DNS(53)のように用途ごとに決まったポート番号がある。1つのサーバーで複数のサービスを動かせるのはポート番号のおかげだね
おもしろい!QUICって何?
Googleが開発してHTTP/3で採用された新プロトコルだよ。UDP上に構築されているけど、TCPと同等の信頼性を持つ。接続確立が1-RTTで超高速、パケットロスの回復も効率的。モバイル環境でWi-Fi↔4Gの切り替え時にも接続が途切れないコネクションマイグレーション機能もあるんだ