息子と幼児向け番組をよく見るが、そこで流れる曲やお遊戯などは自分が幼い頃に見てきたものとさほど変わっていない。中学生や高校生向けの番組は様変わりしているのにだ。どういうことだろうか。おそらく音楽にしても運動にしても、「超基礎」部分はいつの時代になっても変わらないからだろう。それと同じく、発展の著しいネットワークの世界でも「超基礎」部分はあまり変わっていない。私が入社した10年(程)前も、ネットワークの基礎であるTCP/IPから学んだ。「超基礎」は簡単には変わらないので途中で腐敗することはなく、一度身に着けると財産になるのだ。
と、話はかなり強引だが、「超基礎」は非常に重要なのでモチベーションを上げて頑張っていこう。
さて、今回は前回に引き続き、残りのレイヤ(階層)である「トランスポート層」と「アプリケーション層」について説明する。これらのレイヤは「データリンク層」より論理的なので、なかなかイメージしにくいかもしれないが、基本は「アプリケーションデータを他のPCにどうやって送るのか、どんなルール(プロトコル)に従事すれば正しく配送(デリバリ)できるのか」がポイントである。前回、今回とお話しする各レイヤ(5階層)のプロトコルを正しく理解することができれば、ネットワークの最終目的であるデータ(アプリケーション)のデリバリが可能になる仕組みの概要が把握できるだろう。今回も頑張って理解してほしい。
トランスポート層
では、まず第4層(レイヤ4)のトランスポート層について説明する。
このレイヤの役割は、ノードの異なるネットワーク機器に送信したデータを正しく配送(デリバリ)することである。「え? インターネット層のIPがあるのに?」と思われるかもしれない。
IPは、現実社会で言う「郵便番号」や「住所」に当たり、これらのあて先情報は「IPアドレス」として送信されるデータに含まれている。しかし、最終的に相手先に届けるには「名前」がいる。そう、IPには郵便物で合わせて必要な「名前」が書かれていない。ではこの「名前」にあたる部分はどこか。それが「トランスポート層」で使われる「ポート番号」だ。この「ポート番号」は、上位アプリケーション(サービス)を特定する。どういうことか、もう少し詳しく説明しよう。
前回までに説明した「データリンク層」(レイヤ2)、「インターネット層」(レイヤ3)は、簡単にいうとネットワーク機器を特定するものである。「MACアドレス」「IPアドレス」により相手先のPCを特定し、データを送ることができる。しかしながら、送られてきたデータを実際に活用するには、アプリケーションを使わなければなければならない。
