- ベストアンサー
ネットワークのプロトコルについて
現在ネットワークの勉強をはじめたばかりです。 OSI参照モデルとEthernetとTCP/IPの関係性が考えれば考えるほど分からなくなってきました。 どなたか初心者でも分かるように説明していただけないでしょうか。 よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
まずは、似たもの同士から見ていきましょう。 OSI(OSI参照モデル)もTCP/IP(TCP/IPプロトコル群)も、簡単に言えば、ネットワークでつながっている異種機器同士が、どのような共通な手法(プロトコル)を使って会話をするか、を定義しているのです。 例えば、フランス語が話せる人と日本語が話せる人が(異種機器)が会話をしようとすると、一つの方法は英語(共通言語)を使うことですよね。 OSIもTCP/IPもこの「英語」の部分のようなものです。 ただ、OSIとTCP/IPには大きな違いが一つあります。 OSIは名のとおり、「モデル」であって、実態がありません。 TCP/IPには、実態があります。 ようするに、OSIで定義しているのは、「共通語とはこのような機能を持つべきです」を定義していますが、実際に「OSI語」があるか、といいますと、これは存在しません。 こんどはTCP/IPですが、TCP/IPが最初に出来上がったのは1970年半ばですが、このときは、OSIがまだ存在していませんでした。 TCP/IPは、ARPAnet(今のインターネット)というネットワークでさまざまな機械がつながっていたのですが、「共通語」のパフォーマンスがいまいちだったため(IMPとかNCPという手法が使われていましたが)、その代わりになる言語としてTCP/IPが世に出てきたわけです。ですから、TCP/IPは、モデルではなく、実際の「TCP/IP語」見たいなものです。 ただ、今となっては、「モデル」であるOSIとその「実装」であるTCP/IPのような説明が多く、OSIモデルを使ってTCP/IPの機能を説明するような傾向があります。 まぁ、機能的には共通点が多いので、こうなっちゃうと思うのですが、基本的には、TCP/IPが最初に出来上がって、OSIが後から出来上がってきた「ガイドライン」だと思えばいいのではないでしょうか。 OSIとTCP/IPを別モデルと考えてもいいかもしれませんね。 参考URLを添付しましたので、ご覧になってください(ここでは、OSIが7層、TCP/IPプロトコル群が4層で説明されています)。 最後に、Ethernetですが、これは、OSIでしたら2層のデータリンク層、又はTCP/IPでしたら、1層のリンク層に相当するプロトコル(取り決め)です。 コンピュータ同士をケーブルでつないだとしても、何らかの取り決めがなければ、情報は伝わらないわけです。 例えば、コンピュータが建物だとして、コンピュータ同士がつながっている物理的なケーブルが道路だとしましょう。建物同士で荷物のやり取り(データ交換)を行う手段がトラックに載せて荷物を運ぶとしたら、トラックはちゃんと道路のルールを守る必要がありますよね(信号を守るとか、左側を運転するとか)。守らないと荷物(データ)が相手に届きませんよね。このルールがプロトコルです。でも実は、アメリカ出身の運転手だったら、右側で運転しちゃうんですよね。 ですから、この道路(ケーブル又は物理層)にデータを流すときは、これこれこのようにするんです、として決められた一つの手法がEthernetプロトコルなんです。 データリンク層のプロトコルは、Ethernet以外にもありますが(Tokenring)、LAN(Local Area Network)の世界では、Ethernetが一番多いでしょうね。 I hope that helps. -mp
その他の回答 (4)
- ShaneOMac
- ベストアンサー率39% (356/898)
TCP/IP本を開くと最初の方に出てきて大半の人がそこで寝てしまうあのピラミッドみたいなヤツですね。 ああいう説明は概念的だから分かりにくいんです。といってもモデルの話なんですから概念的になって当然ですが。もうちょっと具体的な話にかえて考えると良いですね。 パケットの構造で考えましょう。下位層にあるのが外枠にくるもので、上位層にあるものが中身です。宛名書きで「東京都」があって次に「渋谷区」が来るようなものです。 まずもってイーサネットのヘッダがあり、その下がイーサネットのデータ。データの中身にIPヘッダがあり、その下がIPのデータ。その中にICMPやらTCPがあり、また下のプロトコルが来るという具合です。 受信側にしろ送信側にしろ各処理層を通すときにそれぞれのヘッダを付けたり読みとったりするわけです。層毎に処理をするということです。入れ子になっているもののそれぞれについて表書き(ヘッダ)を読むという仕組みです。 レベルの違う処理をきちんと分けるのにそういうモデルがあると分かりやすいわけですね。
お礼
ありがとうございました。難しく考えすぎていたのかもしれません。もう少し柔軟に考えてみます。
- togemurasan
- ベストアンサー率41% (31/75)
OSI参照モデルは国際標準化機構によるネットワークの世界共通の取り決めをまとめたものですが、標準化という大変難しい作業のため完成が遅れ、その間に実績のあったTCP/IPが事実上の標準として広まった、といったところです。 OSIモデルでは、すでに書かれている通りネットワークを物理層~アプリケーション層の7層にわけ、それぞれの層にプロトコルを設定しています。TCP/IPではOSIでいうところの1,2層をネットワークインターフェイス層、3層をインターネット層、4層をトランスポート層、5,6,7層をアプリケーション層というように4つの層にわけており、TCPはトランスポート層、IPはインターネット層にそれぞれ含まれるプロトコルになります。Ethernetは、ネットワークインターフェイス層に対応したネットワークシステムで、TCP/IPにより定義されたものではありませんが、やはり実績があったことで広く利用されています。
お礼
ありがとうございました。>Ethernetは、ネットワークインターフェイス層に対応したネットワークシステムで、TCP/IPにより定義されたものではありませんが、やはり実績があったことで広く利用されています。 ここのところがスッキリ理解ができていませんでした。これでスッキリしました。ありがとうございます。
- ojin
- ベストアンサー率43% (280/638)
最近、OSIの7階層モデルについてはあまり言わなくなりました。 私、自身もよくは、分かりません。TCP/IP(分からないときは、マスタリングTCP/IP:オーム社、オライリィーのTCP/IPを参照します。) OSI7階層モデル TCP/IP通信 7 アプリケーション層 SMTP、DNS、NSP、FTP、TELNET、NTPなど 6 プレゼンテーション層 ↓ 5 セッション層 ↓ 4 トランスポート層 TCP、UDP、NVP 3 ネットワーク層 IP、ARP、RARP 2 データリンク層 Ethernet、トークリング、X25など 1 物理層 ↓ 7層アプリケーション層 Telnetや、FTPなど、アプリケーション サービスの提供。ユーザインターフェイスや、データ通信をするプログラムなど。 6層プレゼンテーション層 データの変換や加工し、データをユーザの理解できる形や、通信のための形式に変換します。 5層セッション層 データの流れの経路(コネクション)の確立や、不要なコネクションを開放や、データの経路に流れ込む量を制御。 4層トランスポート層 セッション層からのデータを相手に届けるまでの責任を持ちます。 3層ネットワーク層 いろいろなネットワークを経由して、あて先のコンピュータまでにデータを送ります。IPとNetBEUI、IPXなども同一の経路で処理します。 2層データリンク層 物理的な通信の経路を確立して、ある経路が使えなくなったときに代替のルートを探したり、エラーが発生したときには、再送します。 1層物理層 Ethernetなどの、実際のカード(ハードウエアです。) TCPもIPもプロトコールです、それぞれ、複雑なフォーマットを持っています。パッケッとを組み立てるシーケンス番号や、ウインドウサイズなど、さまざまなフィールドから成り立っています。 また、通信に先立ち、SYN(同期信号)、ACK、NAKなどのやり取りがあります。 とても、ここでは、説明し切れません。 私は、TCP/IPのパッケッとモニターを使い、データの流れを、確認したりしています。既に、紹介した、2冊の書籍は、厚さが4センチもある、大変内容の多いもので、100パーセントは理解していません。 今後、キャリアーや、ネットワークの仕事をされるのであれば、自ら勉強して、理解してください。人に聞いてもなかなか理解できないと思います。
- ojin
- ベストアンサー率43% (280/638)
最近、OSIの7階層モデルについてはあまり言わなくなりました。 私、自身もよくは、分かりません。TCP/IP(分からないときは、マスタリングTCP/IP:オーム社、オライリィーのTCP/IPを参照します。) OSI7階層モデル TCP/IP通信 7 アプリケーション層 SMTP、DNS、NSP、FTP、TELNET、NTPなど 6 プレゼンテーション層 ↓ 5 セッション層 ↓ 4 トランスポート層 TCP、UDP、NVP 3 ネットワーク層 IP、ARP、RARP 2 データリンク層 Ethernet、トークリング、X25など 1 物理層 ↓ 7層アプリケーション層 Telnetや、FTPなど、アプリケーション サービスの提供。ユーザインターフェイスや、データ通信をするプログラムなど。 6層プレゼンテーション層 データの変換や加工し、データをユーザの理解できる形や、通信のための形式に変換します。 5層セッション層 データの流れの経路(コネクション)の確立や、不要なコネクションを開放や、データの経路に流れ込む量を制御。 4層トランスポート層 セッション層からのデータを相手に届けるまでの責任を持ちます。 3層ネットワーク層 いろいろなネットワークを経由して、あて先のコンピュータまでにデータを送ります。IPとNetBEUI、IPXなども同一の経路で処理します。 2層データリンク層 物理的な通信の経路を確立して、ある経路が使えなくなったときに代替のルートを探したり、エラーが発生したときには、再送します。 1層物理層 Ethernetなどの、実際のカード(ハードウエアです。) TCPもIPもプロトコールです、それぞれ、複雑なフォーマットを持っています。パッケッとを組み立てるシーケンス番号や、ウインドウサイズなど、さまざまなフィールドから成り立っています。 また、通信に先立ち、SYN(同期信号)、ACK、NAKなどのやり取りがあります。 とても、ここでは、説明し切れません。 私は、TCP/IPのパッケッとモニターを使い、データの流れを、確認したりしています。既に、紹介した、2冊の書籍は、厚さが4センチもある、大変内容の多いもので、100パーセントは理解していません。 今後、キャリアーや、ネットワークの仕事をされるのであれば、自ら勉強して、理解してください。人に聞いてもなかなか理解できないと思います。
お礼
丁寧なお答えありがとうございました。 TCP/IPのみの書籍は読んでいませんでしたので、紹介していただいた2冊の内どちらかを読みたいと思います。
お礼
分かりやすい説明ありがとうございました。 昨日の夜からの頭の中のもやもやがスッキリしました。 本当にネットワークは奥が深くて、考えすぎると混乱してしまいます。 紹介いただいたサイトも英語なので、すぐには読めないと思いますが、少しずつでも頑張って読みたいと思います。