ぽれいんのブログ

エンジニアになるために覚えたことを日記に付けます。

ネットワーク基礎

はじめに

インフラエンジニア初学者のぽれいんと申します。

※このブログでは自分が後々、見返すことができるようにまとめることを目的としていますが、もし需要があるようでしたら是非ともご覧ください。

<前回の記事>

porain.hatenablog.com

<参考>

通信プロトコルとは何ですか? | ジャパンセンサー株式会社

 

 

 

 

ネットワークとは

ネットワークを利用すると異なるマシン同士データをやり取りする事ができます。最近のシステムでは1台のマシンだけで完結することはほとんどないので、必ずと言っていいほどネットワーク経由してデータが流れます。

ネットワーク上でやり取りする仕組みは非常にたくさんあります。しかし、インターネットの通信の仕組みをはじめ、ほとんどのシステムにはTCP/IPと呼ばれる仕組みが使われています。

LANとインターネット

ネットワークには様々な規模のものがありますが、1つのビルやフロアの中のように限られた環境で利用するネットワークのことをLANといいます。LANとはLocal Area Networkの略語で「限定した地域の通信網」という意味です。

 

また、世界各地に存在するネットワークをインターネットといいます。インターネットは世界中の様々な企業や組織のLAN同士を集合体と見ることができます。さらに、企業に本社‐支社間など地理的に離れたLAN同士を電話回線や専用線を使って接続したネットワークのことをWAN(Wide Area Network:広域通信網)といいます。

 

クライアント・サーバネットワーク

「インターネットをする」といえば、一般に「ホームページを見る」という意味で使われています。ホームページはパソコンとインターネット接続環境さえあれば日本だけに限らず、世界中の言語で書かれたホームページを瞬時に表示して閲覧することができます。Webサーバというホームページを見せるためのコンピュータが、要求されたページを返すことにより実現しています。

ここで、ホームページを見るためにWebサーバにアクセスしてくるコンピュータをクライアントといい、Webサーバのように何かのサービスを提供するコンピュータをサーバといいます。一般的にサーバはクライアントからの何らかの要求する(リクエス)を待ち続けており、クライアントから自分に対する要求があれば、その要求に対して応答(レスポンス)を返します。

通信プロトコル

プロトコルとは、異なるデバイスやコンピュータシステム、ソフトウェアなどが互いに通信するために制定された規約のことです。現在もっとも普及している標準的なプロトコルTCP/IPプロトコルで、インターネットの仕組みを利用するソフトウェアを開発する際に必ず利用されます。

通信プロトコル

通信プロトコル

TCP/IPプロトコル

この章では現在もっとも普及しているTCP/IPプロトコル階層化モデルとこのあとの各種サーバ構築で必要になる代表的なプロトコルの特徴を学習します。

TCP/IP階層化モデル

サーバ・クライアントシステムにおいて利用されるプロトコルを階層に分けて整理したものをTCP/IPモデルといいます。このようにデータの通り道となる階層ごとにルールがはっきりしているため、開発者は各プロトコルの取り決めに従って開発を進めればよいことになります。以下は各階層で使われる代表的なプロトコルを一覧にしています

 

アプリケーション層

アプリケーション層では、電子メールのフォーマットなどアプリケーション間でデータのやり取りする際に使用する共通のデータ構造や、サーバ・クライアント間の通信の開始~終了までのセッション情報におけるデータ形式などを想定している。

 

トランスポート層

アプリケーション層で作成されたデータは次にトランスポート層に渡されます。トランスポート層では、確実なデータ伝送を実現するために転送方法に関する取り決めを行います。特にサーバクライアント間で仮想的なデータ通信路を確立するためにポート番号を利用します。インターネット上でよく利用されるサービスは固有のポート番号が決まっています。

 

TCP(Transmission Control Protocol)...信頼性が高い

UDP(User Datagram Protocol)...スピードが速い

 

インターネット層

ネットワーク上の住所と宛名にあたる、IPアドレスが、インターネット層で負荷されます。この層で使われるIPというプロトコルは、「データ(パケット)を目的のコンピュータまで届ける」という、非常に重要な役割を持っています。宛先のIPアドレス

 

ネットワークインターフェイス

ネットワークインターフェイス層では上位層から受け取ったデータをLANケーブルに流すための処理を行います。LANでもっともよく使われるEthernet(イーサネット)の場合、次に送る機器を特定するために宛先コンピュータのMACアドレスをデータに付加し、これを電気信号に変えてからケーブルに渡します。この処理はOS上ではなくLANカードのチップ上で行われます。

 

以上!