ネットワークエンジニアではなくても知っておきたいネットワークの基礎

はじめに

 昨今のIT技術の発展やインターネットの普及に伴って、老若男女だれしもがパソコンやスマートフォンからインターネット繋ぎ、Webページを閲覧したりメールのやりとりを行うなど、日常生活の中で当たり前のようにネットワークを利用しています。利用する際にネットワークがどのような仕組みで、どのような技術で構成されており動作しているのかは気にせずとも、知らなくとも利用することが出来ます。しかし、本記事を読んでいるあなたがネットワークエンジニアを目指している、もしくはIT業界に興味がありエンジニアへの転身を考えているのであれば、一般の利用者が知らなくてもよい部分に対する知識は今のうちに知っておいて損はありません。もちろんネットワークエンジニアは、より専門的な知識が必要であり、ネットワークを構築できる技術を身に付ける必要があります。しかし単なる利用者としては、ほとんど意識しない部分であり見えづらいため、分かりにくい部分です。ここではネットワークエンジニアについての細かい内容には触れませんが、イメージし辛いネットワークの仕組みや基本的な構造、動作概要などを整理していくためのネットワークの基本ともいえる「OSI基本参照モデル」について整理していきます。学習の過程で、IT業界でのインプットの質を向上させるためにも欠かせない知識であると感じたため、ネットワークエンジニアを目指そうと考えている方だけではなく興味のある方は引き続き読んでみてください。

ネットワークエンジニアではなくても知っておきたいOSI基本参照モデルとは

 まず、「ネットワークエンジニア」とはネットワークのシステム構築や保守管理などを行う技術者のことですが、ネットワークエンジニアを目指す以前に、ネットワークを学ぶにあたって絶対に抑えておきたい基本中の基本と言える「OSI基本参照モデル」について本記事で整理していきます。まず、OSI基本参照モデルとは、「国際標準化機構(ISO)により作られた通信機能のイメージ図」のことであり、簡単に言い換えると「通信機能をどういった仕組みにするのかを定義した共通ルール」の内の1つのことです。まず通信をする際、送信側と受信側では同じルールを共有する必要があります。例えば一方が日本語で話しかけていても、相手が英語で返答したのでは、コミュニケーションが成立しないことと同様です。しかし、以前はメーカーごとにルールが存在し、あるメーカーの機器は日本語で送受信をしており、また別メーカーの機器は英語で送受信をしていたわけです。こういった状況下で別のメーカーの機器と通信しようとしても言語が違うわけですから「他メーカーの製品とは通信することが出来ない」といったことが起きてしまいました。そこで国際標準化機構という団体により、データ通信機能に関するルールが作成されました。このモデルとなるルールを満たしている製品は、例え人種が違っていても同じ言語で話すことでコミュニケーションが取れるように、異なるメーカーであっても通信することが可能です。つまり、この異なるメーカーの製品でも通信を行えるように作られたモデルが「OSI参照モデル」です。また、無数にシステムやプロトコル(※コンピューター同士の通信時に際しての手順や規約)等が存在しているため、一概にすべてが同じ構造をもっているわけではないものの、「階層化の概念」はすべてにおいて共通です。この共通項を定義したOSI基本参照モデルは、確実に覚えておく必要があります。OSI参照モデルではネットワークを7つの階層に分けて考えます。まずは、定義されている7階層の階層1つ1つがどのような働きを持ち、それらがどのように積み重なってシステムが構成されているのかを簡単に見ていきます。

OSI基本参照モデルの7階層

 OSI基本参照モデルとその役割は次の7つに分かれています。第1層(物理層)は、物理的・電気的な階層でありデータの電気的変換を行い、電気信号やピンの数、ケーブルやコネクターの種類や端子の形状などを定めています。第2層(データリンク層)は、コンピュータに直接接続されている機器間における通信路の確保や管理、エラーの訂正や再送要求などを行います。第3層(ネットワーク層)は、コンピュータや機器と直接接続されていない機器間との通信路の決定やデータの中継のほか、機器のアドレスの管理も行っています。ちなみにIPアドレスはこの層になります。第4層(トランスポート層)は、データの送受信管理として受信側に確実にデータを届けるための信頼性の確保を行っており、データの分割及び復元やエラーの制御を行っています。ちなみにTCPやUDPがこの層になります。第5層(セッション層)は、データ通信に際しての開始や終了までの手順を管理し、クライアントからサーバ間などの通信経路の確立を行います。第6層(プレゼンテーション層)は、アプリケーションとネットワークの仲介役であり、通信に適したデータ形式に変換したり文字コードの変換などを行います。反対に、アプリケーションが処理できる形式への変換も行います。第7層(アプリケーション層)は、通信を利用するユーザーに対して実際にサービスを行います。特にデータ転送に関する定義を行っている下位層(第1層~第4層のこと)については、ネットワークエンジニアにとっては最も重要な部分です。

送受信時の7階層におけるデータの流れ

 各システムがネットワークを介してどのように接続され、どういったデータの流れがあるのかを把握していく事で、そのつながりが見えてくれば、ネットワークのイメージが見えやすくなります。利用者である限りは架空の世界に等しいネットワークが、上記のような鮮明なイメージをもって認識できるようになることが特にネットワークエンジニアにとっては必要不可欠です。それぞれの階層の役割について分かったところで、実際にデータや加工の流れを見ていきます。まず、データを送信する場合は第7層から始まり第1層に向かい、受信側は第1層から第7層へという流れになっています。そしてその過程で、各階層の役割に従って通信経路の確定やデータの加工、分割などが行われます。送信側では第7階層にてアプリケーションがデータを送り、第6階層で通信に適したデータへの加工が行われ、第5階層で通信開始から終了までの流れを管理し、第4階層でデータを分割、第3階層にてデータ通信の経路を決定、第2階層でデータ通信路の確保や管理を行い、第1階層でデータを電気信号に変換といった流れです。反対に、受信側では第1階層で電気信号を変換し、第2階層では物理層のデータ通信におけるエラーの有無をチェックします。第3階層ではIPアドレスの確認を行い、第4階層にてデータの復元を行います。この時エラーが発生していた場合は再送信の手続きを行います。第5階層では通信の開始から終了までの流れを管理し、第6階層でアプリケーションで処理できる形へと加工します。そして、第7階層でアプリケーションにデータが届くといった流れです。

まとめ

 OSI参照モデルより以前にはTCP/IPという、プロトコルスイート(目的の通信をするために必要な複数のルールをまとめたもの)が生まれため、OSI参照モデル自体の普及には至らなかった背景があります。ただし、7階層の概念自体は、ネットワークの基本構造として非常に理解しやすいだけでなく管理しやすいものとして受け入れられるようになりました。理由として、ネットワーク機器やシステム理解に役立つだけでなく、サーバやシステムにおけるトラブルが生じた際、どの階層に問題があるかを特定しやすくなり、その目安にもなるためです。以上の過程を経て、昨今のネットワーク機器やそれに準ずるハードウェアやソフトウェアは、OSI参照モデルの概念に沿って作られるようになってきた背景があります。ただし、OSI参照モデルはあくまでも「概念」であるため、制約ではありません。現状としては階層を複数またがった考え方や、階層の境界を越えて使われていたりすることもあります。ネットワークエンジニアを目指している方もそうでない駆け出しのエンジニアの方も、OSI参照モデルを把握することでネットワークの基本構造を理解し、データの動きやどのように通信が行われているかを想像できるようにしておくといいかもしれません。