プロが教えるわが家の防犯対策術!

通信プロトコルについて
現在、コンピュータネットワークについての勉強をしている者です。プロトコルに関連したことばの定義について、よくわかりませんので、質問させていただきました。どなたか、詳しい方、ご説明ください。

まず、「OSI」とは、何でしょうか?。wikipediaによれば、『OSI以前、コンピュータネットワークの通信プロトコルは、ベンダー毎に独自の規格が乱立していた(SNA、AppleTalk、NetWare、DECnet など)。』という件があり、OSIも、いちプロトコルであるかのようなニュアンスで書かれています。また、このOSIの概念には、「OSI参照モデル」というものがあり、これを、『ネットワーク・アーキテクチャ』として紹介しているのですが、わたしが勉強した内容からイメージすれば、OSIこそが、ネットワークアーキテクチャであり、OSI参照モデルとは、このOSIの“サンプル”であり、このモデルを構成する各レイヤーに所属するhttpやpop3といったものが、プロトコルであるというふうに理解しています。図にしてみました。正しい認識は、どういうふうに理解すればいいのでしょうか?。よろしく、お願いします。

「通信プロトコルについて」の質問画像

A 回答 (3件)

httpやpop3などのように単一的(層レベルで)にプロトコルをとらえる場合と、OSIやTCP/IPプロトコルのように全体的な視点(全部の層)でプロトコルをとらえる場合があります。

全体的な視点でとらえている時は、その層全体を使って通信するよというイメージだと思います。

なので、TCP/IPプロトコルという大きな枠組み(全部の層でどうするか決定づけているようなアーキテクチャ)があって、そしてそれぞれの層でどんなプロトコルを使うかはhttpやpop3などを選択するようになってます。

OSIは実際に以前に存在したアーキテクチャです。
しかしTCP/IPプロトコルというアーキテクチャが普及し廃れました。

今はネットワークなどで議論する際、OSI参照モデルを使って、1層がこうだとか4層がああだとかいうときに便利なので使います。あくまでも参照のモデルなんですよ。
    • good
    • 0
この回答へのお礼

- httpやpop3などのように単一的(層レベルで)にプロトコルをとらえる場合と、OSIやTCP/IPプロトコルのように全体的な視点(全部の層)でプロトコルをとらえる場合があります。 -

この件が、すごく、初心者であるわたしには、なじみやすい表現です。ごちゃごちゃしてた頭の中が、すこしすっきりしました。ありがとうございます。

お礼日時:2010/09/22 01:54

便宜上,この回答では次の各用語に次のような意味合いをもたせることにします。



・プロトコル……ある層に属する通信規約
・プロトコル・スタック……階層化されたプロトコルの全体像

--------
 > OSIも、いちプロトコルであるかのようなニュアンスで書かれています。

そのとおりで,OSIは,具体的なプロトコル・スタックの実例です。

 > 1970年代後半,IBMのSNAは猛然とコンピュータ・ネットワークの
 > 市場を独占しはじめた。全世界のコンピュータ・ネットワークの
 > 80%程度をおさえてしまった。これでは,IBM以外のコンピュータ
 > ・メーカーや電話会社は困るのである。
 > 脇英世『パソコンLANとは何か』(講談社ブルーバックス)

OSIはそのような背景を元に構想され,具体的に何冊もの分厚いマニュアルによって規格定義され,ソフトウェアとして実装されています。

OSIは,通信の全機能を一から整理し直す壮大な試みであったため,

 > OSI参照モデル(OSIそのものよりも前の1977年に完成)
 > http://ja.wikipedia.org/wiki/開放型システム間相互接続

とあるように,「OSIでは通信の全体像をどのような機能単位に整理分類することにしたか」という考え方(=モデル)が先に発表されています。そのOSI参照モデルを基に,OSIの各プロトコル群が定義されています。

OSIという具体的なプロトコル・スタックは過去に存在しましたが,複雑で難解で理想論的でまったく普及しませんでした。その代わり(といっては変ですが)OSI参照モデルは,通信の全体像をうまく整理分類したものであったため,現在でもひんぱんに用いられています。

--------
さらに,この回答では次の各用語に次のような意味合いをもたせることにします。

・モデル ……物事の機能や役割を概念的に定義したもの
・サンプル……モデルを具体的に実現した一例

であるなら,

 > OSI参照モデルとは、このOSIの“サンプル”であり、

という文は矛盾です。モデル(概念)は サンプル(具体例)ではありませんから。具体的なソフトウェアであるのは,OSI参照モデルではなく,OSIの各プロトコル群です。

(もしこの回答に不満を感じたのなら,質問者という“サンプル”とはどんな物事のことか,をきちんと言葉で説明していただく必要があると思います)

--------
最後に,図について。

「http, ftp, その他」というのが OSI参照モデルの方だけに書かれていて,TCP/IPモデルの方に書かれていないのは変です。

OSI参照モデルというのは,7階層のプロトコル・スタックですが,
http://ja.wikipedia.org/wiki/OSI参照モデル

TCP/IPモデルというのは,4階層のプロトコル・スタックです。
http://ja.wikipedia.org/wiki/インターネット・プロトコル・スイート
 (「3 インターネット・プロトコル・スイートの階層」の段落を参照)

虹を見て,日本人は7色だと言いますが,ドイツ人は5色だと言うそうです。同じ物事をながめても,立場によって分類の仕方が違うということです。

この例と同様に,TCP/IPプロトコル・スタックの「第4層 アプリケーション層」と,OSI基本参照モデルの「第7層 アプリケーション層」は同じではありません。前者の4層は,後者の5層・6層・7層を含む“ような”プロトコルです。

“ような”という点に注意してください。以下,参照。

 > いくつかの教科書ではインターネット・プロトコル・スイート・
 > モデルを7層のOSI参照モデルへ対応付ける事を試みた事がある。
 > IETFは再三にわたりインターネット・プロトコルと構造の開発は
 > OSI参照モデルに準拠する事は意図しないという事を述べている
 > http://ja.wikipedia.org/wiki/インターネット・プロトコル・スイート
    • good
    • 0
この回答へのお礼

かなり深い部分にまで、言及していただきありがとうございます。まだ、十分な知識がありませんので、理解しにくいところもあるのですが、『OSIも、プロトコルである』ということがわかったことは、たいへん、大きな成果です。ありがとうございました。

お礼日時:2010/09/22 01:57

OSIとOSI参照モデルは別物です。

OSIはRFCのような通信プロトコル*集*です。OSI参照モデルはOSIのために考え出された通信機能の階層構造モデルですが、TCP/IPなどOSI以外の通信プロトコルを理解するのにも使われます。(以上、WikipediaのOSIとOSI参照モデルを読むとわかると思います)サンプルではなく、OSIで定めたプロトコルの分類表的な役割だと思います。

"プロトコル"というのは規約と訳されると思いますが、要は通信機器が通信をするための約束事です。プロトコル自体は物理層からアプリケーション層まで存在しえます。実際、物理層で考えると、どういう電気信号を流すと0だと判断して、どういう電気信号を流すと1だと判断するかやどういう変調を行うかというのが物理層のプロトコルとなるでしょう。データリンク層のプロトコルでは、どういうアドレス体系にするかなどをお約束として決めるでしょう。余談ですが、Ethernetの場合、物理層のプロトコルとデータリンク層のプロトコルの両方を含むプロトコルになっています。その上のネットワーク層だとIPというプロトコルを使い、セッション層でTCPというプロトコルを使い、その上で行うサービスの通信手段をHTTPやPOP3などのプロトコルで決めます。つまり、各層ごとにそれを司るプロトコルがあるんです。というわけで、おっしゃるとおり各層に各層同士の通信をするためのプロトコルがありますが、EthernetやNFSのように複数の層をまたがったプロトコルも普通に存在します。

ちなみに、図だと物理層が第7層になってますので、番号付けが逆ですね。

というわけで、通信に関わる一つ一つの取り決めのことをプロトコルと自分は理解しています。層がどこに属しているとかはあまり考えないですね。

この回答への補足

役に立つお話、ありがとうございます。ご指摘のとおり、ナンバリングが逆でした。お詫びいたします。

補足日時:2010/09/21 00:41
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!