コンピュータ通信と、人間の通信を比較してみる
コンピュータ間のデータ通信は、「通信プロトコル」と呼ぶ、
決められた規格に沿って行われています。
情報処理技術者試験を受けた人ならみんな覚えた、OSI参照モデル。
この層に分けて、通信機能が定義されています。
上位からこうですね。
・第7層:アプリケーション層(具体的な通信サービス)
・第6層:プレゼンテーション層(データの表現方法)
・第5層:セッション層(通信プログラム間の通信の開始から終了までの手順)
・第4層:トランスポート層(ネットワークの端から端までの通信管理)
・第3層:ネットワーク層(ネットワークにおける通信経路の選択)
・第2層:データリンク層(直接的(隣接的)に接続されている通信機器間の信号の受け渡し)
・第1層:物理層(物理的な接続)
人間も通信するよね、と。
この通信って、人間の通信と合わせて考えてみると、うまくコミュニケーションをとるコツがわかるのでは!などと思うわけです。
どんな風に通信してるんだ、ってことを、かつてブログに書いていたのだけれど、中途半端になってしまってたので、改めて書く。
コンピュータの通信
Aさんが自分のPCのブラウザでGoogleを開いています。
検索条件「コンピュータ」を入れて、Enterキー。
Googleさんが結果を返してくれ、Aさんは結果に満足。
人間の通信だと。
Aさん:「Google先生、多忙のところすみません。」
Google:「はい、何でしょう?」
Aさん:「コンピュータ」について、教えていただきたいのですが。」
Google:「いいですよ。ちょっと待っててくださいね。」
<Google先生、裏に行って探す>
Google:「はい、どうぞ。」(と言って、結果のリストを返す)
Aさん:「先生、ありがとうございます。参考にさせていただきます。」
Google:「その内容で問題ないですか?」
Aさん:「問題ありません。では失礼します。」
<Aさん、去る>
何が違うのか
コンピュータ通信だと、「Enterキーを押す」ことによって、
Google先生が1回の通信ですぐに回答を返してくれているように見えますが、この間、何度もGoogle先生と通信しています。
送ってもいいか確認する、送れたことを確認する、
一回で送り切れないから別途送る、バラバラで送られた内容をつなげる、などなど、通信内容の保証をする仕組みがいろいろあります。
これについて、ネットワークの勉強がてら、続きを書いていきます(^^