戻る パケット (packet)



packet は 「小包」 です。
コンピュータのデータを通信回線で送るときは、 データを一定のサイズに分割し、 一個一個に宛先や送り主名を書いた荷札 (タグ) をつけた 「パケット」 にします。


下図では、 6台のコンピュータがネットワークで接続されていて、 最初はパケットにしないでデータを送る様子を表すようにしてあります。

A 〜 F のコンピュータから、 ふたつを選んでマウスでクリックして下さい。
最初にクリックしたコンピュータの名前 (A 〜 F) は青くなります。 これはデータを送信するコンピュータです。
ふたつ目のコンピュータがデータを受信します。 クリックすると名前が赤く変わって、 データの送信が始まります。

送信データの最初には宛先や送り主の名前が書かれていて、 本来のデータはその後に続きます。
サイズの大きいファイルを送信すると、 この通信はいつまで経っても、なかなか終わりません。
(2台のコンピュータのどちらかをクリックすると、 通信が止まります。)

たくさんのコンピュータに対してネットワークのケーブルはひと組しかないのをみんなで共同で使っているので、 どこかで通信が行われている間は、 他のコンピュータは通信回線を使うことができません。
たいていの家にはトイレがひとつしかないので、 朝、 お父さんが新聞を持って入るとトイレの前に行列ができます。
例えとして相応しいかどうかは分かりませんが、ひとつしかないものを誰かが長時間使えば、 他のものは待たなくてはならないという意味では、 みな同じです。



上図右下の パケット通信モード をクリックするとパケットモードに変わります。

コンピュータの下に、それぞれのコンピュータが送信しようとしているパケットの数が表示されます。
送信、受信のコンピュータを選ぶと、パケットが送り出されます。
宛先コンピュータの名前、送り主コンピュータの名前、何番目のパケットか等を示すデータの部分を 「ヘッダ」 といいます。 ヘッダに続いて、一定の長さのデータが送り出されます。これをパケットといいます。
パケットが到着すると、受信パケット数が表示されます。

長いデータを送信する場合でも小さいパケットに分割されているので、 他のコンピュータも自由にデータのやりとりができます。 複数のコンピュータからデータを受信すると、パケットはバラバラに到着しますが、 送り主コンピュータ毎にパケットの順序通りに並び変えれば正しいデータに戻すことができます。




インターネットが普及するずっと以前、 パソコン愛好者の間では 「パソコン通信」 (電話回線を使った情報交換) がブームでした。 パソコン通信は "NIFTY-Serve" とか "PC-VAN" とか、 何らかのサービスに加入する必要があり (会費も必要)、 しかも同一サービスの会員同士でしか通信できませんでしたが。

その頃私は、 仕事仲間とデータのやりとりをするための通信プログラムを作ったことがあります。
必要なデータ (フロッピーディスクなど) をいちいち届けるのが面倒だったからです。
当時、 モデムと電話回線を使った通信では、 通信速度はせいぜい 10kbbs 程度("Mbps" ではありません!) だったので、 数百キロバイトのデータを送るのさえ何分もかかりました。 ノイズ等の原因でエラーが発生すると通信が失敗するので、 無事終了するまで、 「あと何パーセント」 という数字を、 息を殺して見つめていたものです。

お分かりでしょうか?
パケット通信のもうひとつの利点は、 通信エラーがあっても、 こわれたパケットだけを再送信すればすむことです。

私のプログラムも、 データをあらかじめ1キロバイト程度に分割して送信し、 終了後エラーがあれば、「16 番目と 138 番目をもう一度送ってくれい」、「よしきた、ほれ 16 と 138」、 「よし、今度はちゃんと届いた」、「じゃ、さいなら」 というようなやりとりをするようにしておけばよかったのです。
当時はそんな知恵もなく、 デー知送信の度に、 ただただ祈っておりました。

プログラムが完成して最初の試運転には、 手近のヌード写真のデータを使ったのですが、 終了後電話でうまく届いたか訊いてみると、 「次は無修正のにしてくれ」 というのが仲間の返事でした。
ちゃんと届いたようです。




情報処理概論 に戻る   用語解説 に戻る   戻る  

update: 2015.03.01   address