連載第2回
TCP/IPアレルギー撲滅ドリル【下位レイヤ編】

ITオンチにTCPのセボネを見る

福永勇二
インタラクティブリサーチ
2004/2/14


素朴な疑問
ITオンチと侮るなかれ
  1. メール、届いてる?
  2. 番号はアリガタイの?
  3. 番号づけのルールは?
  4. 乱数で始めるワケは?
受取「確認ヨシ!」
  1. そもそもデータの受取確認って?
  2. 時間がかかるとデメリットもあるでしょ?
  3. 具体的に受取確認が遅れるのはどんな場合?
  4. 受取確認に「遅れ」は大敵ですか?

遅れてもスムーズに

  1. 「遅れ」も許すテクニックがあるんですか?
  2. 一体何を「ひとまとめ」にするの?
  3. 「連続送り」で効率UPができるってホント?
  4. 送りテクをズバリ図解
  5. 手強い「遅れ」に対策あり?
 ITオンチとあなどるなかれ

ねえ、メール届いてる?

 「Aさんったら、電子メールを出したらすぐ電話をかけてきて、ちゃんと着いたかどうか確認してんの〜」

 ITオンチを笑うありがちな話ですが、Aさんのこの行動、まんざらヘンでもありません。確実に届いてほしい情報を送るときは、それがちゃんと到着したことを確認するのが、一番確かな確認方法だからです。このとき、メールとは違う媒体である電話で確認していますから、ほぼ100%の確率で到着したことを確認できます。

 言葉を変えれば、Aさんは「自分のミスも含めて、重要なメールが届かない可能性を見越して、電話確認でリスクヘッジをした」ということになります。もしかするとこれは、長くビジネスの世界に身をおいて体得したビジネススキルなのかもしれません。

 さて、今回はTCP/IPが確実な通信を行うために使っている手法を見てゆきます。その手法とは「データに番号を付ける」、そして「お互いに受け取り確認をする」です。おや、これってITオンチのAさんに通じるところがありそうですね。

 データに番号を付けると……?

なぜデータに番号を付けるのですか?

 FAXを送信する場合で考えてみましょう。山田さんは20枚ある資料の各ページに1から順のページ番号を付けました(図1)。中村さんは面倒くさいのでそのまま送信しました。

図1 ページ番号があるだけで、いろんな管理がうまくいく


 あなたがこの2人からFAXを受け取ったとしましょう。とても大事な書類ですから、すべての資料を正しいページ順で確実に受け取れたか、しっかり確認しなければなりません。

 山田さんが送ってくれたFAXは、各ページに番号が付いていました。例えば山田さんがFAXを依頼した部下が、たまたまページ順を間違えて送信したとしましょう。その場合でも、あなたはページ番号を頼りに正しい順番に戻すことができます。また、1枚抜けていたら「○番が足りません。再送してください」と依頼ができます。また通信エラーか何かで同じページが2枚来ていたら、そのうちの1枚を捨てればいいだけです。

 ではこれが中村さんからのFAXだったらどうでしょう? 番号がない中村さんのFAXは、順番も抜けも確認のしようがありません。どっちがイイかは、いうまでもありませんね。そう、番号を付けるのはより正確な通信をするためです。TCPの場合もこれとほぼ同じ事情でデータに番号を付けています。

じゃあどんなルールで番号を付けるんでしょうか

 TCPでは、データ1バイト(8ビット、英字1文字に相当)につき、1つの番号を割り当てています(図2)。次のデータは番号が1つ増え、その次のデータはさらに番号が1つ増えます。

図2 TCPでは1バイト(半角1文字相当)ごとに番号を付ける


 では最初のデータは0でしょうか、1でしょうか? 実はどちらでもありません。何番からスタートするかは、通信を開始するときに乱数で決めて、お互いにその番号を交換し合うルールになっています。乱数で決めるのですから、何番から始まるかはその時になってみないと分かりません。

最初のデータ番号を乱数で決めるのには何か訳がありそうですね

 一言でいえば、無用な混乱を避けるためです。例えば、「ねーねー、最近6チャンネルのドラマ面白いよね」とテレビの話をしていて、次に「そういえば2ちゃんねるは見た?」といったとします。このとき、これがネット掲示板の「2ちゃんねる」なのかテレビの「2チャンネル」なのか、非常に紛らわしいでしょう? その原因の1つは、同じような数値で表された名前だからです。

 これと同じように、0か1の同じ番号でスタートするルールにしておくと、通信途中で問題が起きたときに、片方は通信を止めて新しく通信を始めようとしているのに、もう片方が続きのデータ番号として受け取る可能性があります。こういった論理的にヘンな状態にならないよう、それぞれ全く違う番号から始まるようにするわけです。

 

TCP/IPアレルギー撲滅ドリル【下位レイヤ編】(2)目次
1  ITオンチとあなどるなかれ
2  データの受け取り「確認よし!」
3  受け取りが遅れてもスムーズな理由

関連リンク
  連載:TCP/IPアレルギー撲滅ドリル【超実践編】(上位レイヤ編)
連載:インターネット・プロトコル詳説

連載:ルータの仕組みを学ぼう
ホストのネット接続は正しく行われているか? 〜netstatによるネットワーク設定の確認〜

「Master of IP Network総合インデックス」


Master of IP Network フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Master of IP Network 記事ランキング

本日 月間