情報処理技術者試験を受けられる方向けに
プロトコル、OSI参照モデル、TCP/IPの概要について説明していきます。
プロトコルとは
プロトコルとは、パソコンやルータなどの機器同士が通信を行うために取り決められた約束事になります。
二人の人がお互いの国の言葉を知らないのに
片方は日本語でしゃべって、もう一方は英語で話しても通じないですよね。
なので、コンピュータの世界でもお互いの分かる言葉で通信しましょうと取り決めたものを
プロトコルと言います。
例えば、皆さんが普段見ているWebサイトもHTTP、IP、TCPなどの複数プロトコルを使用しています。
複数のプロトコルを階層的に構成したものをプロトコルスタックと言います。
この階層化の代表的な概念に国際標準化機構であるISOが定めたOSI参照モデルというものがあります。
OSI参照モデル
OSI参照モデルは第1層から第7層まで7つの層があります。
・・・
になります。
昔ながらの覚え方ですが
各層の頭文字をとって
あっプレゼントねデブという感じで覚える方法もあります。
PDU
各層で扱うデータ単位をProtocol Data Unit 略してPDUといいます。
レイヤ4のトランスポート層で扱うデータはセグメントと言います。
レイヤ3のネットワーク層で扱うデータをパケットと言います。
レイヤ2のデータリンク層で扱うデータをフレームと言います。
TCP/IP
実際には、第5層~7層と1層、2層を纏めたTCP/IPの階層モデルを使うことが多いので
こちらの方で説明していきます。
上から
アプリケーション層
トランスポート層
インターネット層
ネットワークインターフェース層
といいます。
データの流れ
それぞれの層でで扱われる代表的なプロトコルと役割について説明していきます。
アプリケーション層はその名の通り
ユーザが利用するアプリケーション間で通信を規定しています。
例えば
WEBアクセスを行うHTTP
電子メール関連ではSMTP,POP
ファイル転送ではFTP
時刻合わせではNTP などといったプロトコルがあります。
トランスポート層は通信制御として
TCPやUDPというプロトコルがあります。
TCPは通信相手とのデータの送受信の確実性を高めるもの
UDPは確実性よりデータの送受信速度を高めるものになります。
ネットワーク層は
宛先のコンピュータまでの経路を決めてデータを運ぶ役割があり
代表的なプロトコルにはIPがあります。
ネットワークインターフェース層では
イーサーネットやPPPといったプロトコルがあります。
こちらはデータリンク層について詳しく解説した動画を上げていますので、そちらでご確認ください。
※対応を説明
https://www.infraexpert.com/study/tcpip.html
各層の詳細は別動画で説明するので、ここでは通信全体の流れをつかむために
パソコンから突破口ドットコムのホームページを見るときの各層の流れについてみていきましょう。
Chormeやインターネットエクスプローラー等のアプリケーションに
突破口ドットコムのアドレスを入力します。
Webブラウザはアプリケーション層のプロトコルのHTTPを使い
Webサーバに対してWebサイトのデータを送ってほしいというメッセージを
HTTPデータとして作成します。
作成したHTTPデータは次のトランスポート層に受け渡されます。
トランスポート層では、宛先と送信元のポート番号をTCPヘッダーとして付加します。
作成したデータは次のネットワーク層に受け渡されます。
ネットワーク層ではあて先と送信元のIPアドレスをIPヘッダーとして付加します。
ネットワークインターフェース層はイーサーネットのプロトコルを用いて
あて先と送信元のMACアドレスをMACヘッダーとして付加します。
そして出来上がったデータを0と1の電気信号に変換してケーブルで伝えます。
受信側では電気信号をデータ化して
ネットワークインターフェース層へ受取します。
送信側と逆の順序で登っていきます。
送信側では各層でヘッダーを付与していきましたが、
今度は逆で上位の層で必要ないヘッダーは取り外して上位の層に渡します。
そしてデータを受け取ったWEBサーバは要求されたWEBページのデータを送信側に返却しますが
ここでも送り出す際に各層でヘッダーを付与する感じになります。
一回の送受信で送れるデータ量は決まっているので、
1つのページを見る際にこの通信を何度もやり取りするようなイメージです。
この、ヘッダーをどんどん追加していく工程をカプセル化といい、
逆にヘッダーを外していく工程を非カプセル化といいます。
以上です。
コメント