😽

[超初心者向け!] TCP / IP トランスポート層を図でわかりやすく解説

2024/08/16に公開

はじめに

TCP / IP トランスポート層を初心者向けに図でわかりやすく解説してみました

この記事の対象者

・ネットワーク初心者
・インフラ初心者

目次

  1. ポート番号いるよね
  2. TCP
  3. UDP

物理層からみたい方はこちら

https://zenn.dev/risaaa/articles/209e29fd234fcb

1. ポート番号いるよね

これまではデバイス間の話でした。

しかし、デバイス内でも様々なアプリケーションが動いており、どのアプリケーションに送るべきなのか送信元が指定する必要があります

そこでデバイス内のアプリケーションを識別するポート番号が必要です。

2. TCP

TCP とは送られたことを送信主に返答するプロトコルです。

しかしここで問題が生じます。送信先から返信がない場合、どのタイミングでもう一度送信するかという問題です。

ここではtimeoutという解決方法について説明します。

timeout について

timeout とは、決めた時間内に ack が戻ってこなかった場合にもう一度送信することです。

例えば timeout が 200ms と仮定した場合、送信先からの ack が 10ms 後だった場合はもう一度送りませんが 250ms だった場合は timeout を超えているため、もう一度送信する必要があります。
このように timeout があることによって、いつもう一度送るか否かを定義することができます。

3. UDP

UDP は送信先が送られたことを送信主に返答しないプロトコルです。

TCP / UDP スケジュール比較について

このように、TCP は時間がかかるけど信頼性は高い、UDP は高速だけど信頼性は低いのが特徴です。

TCP はメールなど、確実に相手に届いていることが求められるもの、UDP は動画配信など扱うデータがリアルタイム / 量が多いものに使われます。(いちいち ack を送っていたら配信が詰まってしまう可能性がありますよね)

まとめ

・ポート番号はデバイス内のアプリケーション識別のために必要
・TCP は送信先が送信主に返答をする
・UDP は送信先が送信主に返答をしない

最後まで見ていただきありがとうございました!

Discussion