TCP/IP の基本的な仕組み

共通科目情報処理(上級)、インターネットの仕組み、2002年12月06日

                                       電子・情報工学系
                                       新城 靖
                                       <yas@is.tsukuba.ac.jp>

このページは、次の URL にあります。
http://www.hlla.is.tsukuba.ac.jp/~yas/ipe/taiiku-kougi-2002/2002-12-06
あるいは、次のページから手繰っていくこともできます。
http://www.hlla.is.tsukuba.ac.jp/~yas/ipe/
http://www.hlla.is.tsukuba.ac.jp/~yas/index-j.html
http://www.ipe.tsukuba.ac.jp/~yshinjo/

■復習

インターネットの「利用」方法

■今日の重要な話

10年後も通用する、一般的な原理と技能を身につける。 個人ごとに目標を設定する。

■インターネットとは

インターネット ( an internet ) とは、もともとネットワークのネットワーク、つまり、いくつかのネットワー クが ルータ(router)というコンピュータを使って 相互接続されたもである。

最小のinternet(小文字)

最小のinternet(小文字)

ネットワーク とは、それぞれ独立した方針で運営されているコンピュータ・ネットワーク である。

インターネットではないコンピュータ・ネットワーク

LAN は、狭い範囲のコンピュータを接続するためのネットワーク (dnl 後述)。

世界最大のインターネットは、インターネットと呼ばれる。これは、英 語で書くと、固有名詞のということで頭を大文字にして the Internet と綴られる。今日の話題は、この固有名詞としてのインターネットである。

固有名詞としてのインターネットは、次のような意味を含む。

  1. 以下で説明する TCP/IP という共通の通信プロトコルにもとづくネットワークのネットワーク
  2. このネットワークを活用し発展させる人々のコミュニティー
  3. このネットワークを通じて到達できる資源の集積
(2), (3) の意味合いも大事。

現在のインターネットは、 ARPANET という、1960年代の終りにアメリカ国防省の資金による研究プロジェクトの結 果作られたネットワークが元になっている。ARPANET の研究成果の1つとし て、TCP/IP という 通信プロトコルがある。 プロトコル(protocol)、 あるいは、 通信プロトコル(communication protocol) とは、通信を行う機器、コンピュータ、あるいは、プログラムの間でどのよう な手順で行うかを定めた規則である。

インターネットという言葉は、TCP/IP では到達できなくても、UUCP (Unix-to-Unix system copy, ファイルをダイアルアップでコピーする)などの 何らかの方法で電子メールを交換できる範囲を意味することもある。(電子メー ルが、インターネットの応用で最も重要。)

◆インターネットと電話

電話のネットワークと比較することで、インターネットの説明をする。通信量 で見た場合、1994年まで世界最大のネットワークは、電話であった。 1995年では、インターネット上を流れるデータの通信量が、電話による音 声の通信量を超えた。

ネットワークとして見た時の電話の特徴

  1. つながっている機器は、電話機(音声と電気信号を変換する機械)である。
  2. ネットワークを流れるデータは、音声のみである。
  3. 電話には、電話番号が振られている。
  4. どの電話もどの電話とも接続可能である(例外あり)。
  5. 電話を掛ける時、電話を使う人は、電話番号を指定するだけでよい。 電話を使う人は、途中の通信を中継している交換機の存在を気にしなくてもよい。

インターネットの特徴

  1. つながっている機器は、コンピュータである。
  2. ネットワークを流れるデータは、コンピュータで扱えるデータ(ビットの並び、2進数)である。
  3. コンピュータにはIPアドレスと呼ばれる番号がふられている。
  4. どのコンピュータもどのコンピュータとも接続可能である(例外あり)。
  5. 通信をするとき、使う人は、IPアドレスを指定するだけでよい。 使う人は、途中の通信を中継しているコンピュータ(ルータ)の存在を気にしなくてもよい。

電話にはない、インターネットの特徴は、末端のコンピュータの力を借りて、 さまざまなサービスが提供できることにある。

◆インターネットへの路

問題:あるコンピュータをインターネットに繋ぐにはどうすればよいか。

答え:既にインターネットに繋がっている所になんとかしてつなぐ。

◆インターネット接続サービス・プロバイダ(Internet Service Provider, Network Service Provider)

NTTと同じような通信会社に分類される。ケーブルテレビ局などをのぞいて、 自前で通信媒体を持っている所は少なく、NTTなどから専用線を借りてイン ターネット接続サービスを提供している。

法律用語: 電気通信事業法

第一種通信事業者
自前で回線設備をもっている
第二種通信事業者
第一種通信事業者から回線を借りて通信サービスを提供する

◆接続形態

インターネット接続サービス・プロバイダまでの接続

図? インターネット接続サービス・プロバタイダまでの接続方法

図? インターネット接続サービス・プロバタイダまでの接続方法

モデムは、電話回線などもともとアナログ信号しか通らないような線でディジ タル情報(ビットの並び)を送るための機器。電話回線につなぐモデムでは、 ディジタル情報(ビットの並び)は、音声(表す電気信号)に変換されて電話 回線に送られる。

◆アクセスラインとブロードバンド

自宅から電話局、または、インターネット接続サービス・プロバタイダまでの 回線を、アクセスラインとよぶ。

種類

「ブロードバンド」
電話的定義
電話回線より速い
通信の専門用語
1つの線に複数の信号を同時に流す
世俗的な定義
500 k bps 以上のアクセスライン

◆bps (bit per second)

通信速度の単位。毎秒何ビットおくれるか。

◆ビット(bit)

ディジタル情報の量を図る単位。

◆基幹ネットワーク

インターネット接続サービス・プロバイダより先は、どうなっているか。

インターネット接続サービス・プロバイダ間も、仕組みとしては、ルータで接 続されている。 ルータ間の接続には、NTTなどから借りた専用線が使われる。

図? インターネット接続サービス・プロバタイダま間の接続

図? インターネット接続サービス・プロバタイダ間の接続

インターネット接続サービス・プロバイダが直接相互接続している場合もあるが、 ある場所に置かれた特別なルータで相互接続されている場合もある。 この相互接続の場所を NSPIXP (Network Service Provider Inter eXchange Pint)CIX (Commercial Internet eXchange) とう。

世界のインターネットの中心は、アメリカである。世界各国は、基本的には、 アメリカのインターネットのどこかに接続する。 アメリカ以外の2国間の通信も、アメリカ経由になることが多い。

国内のインターネット接続サービス・プロバイダのいくつかは、独自の国際専 用回線をアメリカに向けて引いている。アジアやヨーロッパにも専用線を張る 動きも出てきている。

■インターネットで使えるサービス

インターネットで現在よく利用されているサービス(アプリケーション、 応用)には、次のようなものがある。

  1. 電子メール
  2. ネットワーク・ニュース
  3. ファイル転送(ftp)
  4. WWW (The World Wide Web)
  5. 遠隔ログイン

情報処理の実習でやったものは、インターネットの「応用」。「応用」は、通 信の専門用語。

◆遠隔ログイン

遠隔ログインとは、遠く離れたコンピュータを直接接続されているコンピュー タと同じように利用するための仕組みである。この機能を利用すると、遠くの コンピュータの計算パワーを利用したり、そのコンピュータで動いているデー タベースを利用することができるようになる。主に、文字による対話的な利用 で使われる。

筑波大学教育用コンピュータでは、icho というサーバを遠隔ログインで利用 することもできる。遠隔ログインすると、Unix というオペレーティング・シ ステムで動作するさまざまなプログラムを利用することができる。

図? 遠隔ログインによるプログラムの実行の様子

図? 遠隔ログインによるプログラムの実行の様子

◆IRC(Internet Relay Chat)

IRC (Internet Relay Chat) は、文字による遠隔会議のプログラムある。ある参加者が打ち込んだメッセー ジは、即座に他の行単位で参加している人全員に送られる(ネットワーク・ニュー スでは、1つの文書単位で、遅延がある)。

IRCの参加者は、何種類かのプログラムを使って近くのサーバ・プログラムに 接続して、メッセージを送受信する。サーバ・プログラムは、 他のサーバ・プログラムとの間でメッセージの交換する。結果として世界中 の、地理的に離れている参加者の間でメッセージの交換することができる。

IRC のサーバには、世界規模のものもあれば、日本国内のもの、組織内のもの がある。1つの IRC のサーバでも、複数の会議室があり、この会議室のこと を IRC では、 チャネル(channel) (チャンネル、チャンネル) と呼んでいる。

http://www.osss.is.tsukuba.ac.jp/~kirane/misc/chat.html 筑波大学内で動作している IRC サーバの紹介。

■TCP/IPによるインターネットの仕組

電子メールでもWWWでも、TCP/IPという仕組みを用いて通信を行っている。 この節では、TCP/IP の仕組みについて簡単に説明する。 大事な考え方には、次のようなものがある。

◆TCP/IP

プロトコル・スタック

電子メールでもWWWでも、TCP/IPを用いた通信では、 のように、4つの プロトコルの 層(layer)( 通信の手順を決めた規則) が使われる。TCP/IP自身は、 TCP層ipそう という2つのプロトコルから成り立っている。 ネットワーク通信では、 さまざまなプロトコルが決められ、全体として層をなしている。この様子を、 プロトコル・スタック(protocol stack) と呼ぶ。

TCP/IPの4層モデル

TCP/IPにおけるプロトコル・スタック

約束の上に約束を積み重ねる例。

IP

IP (Internet Protocol) は、(信頼性がない)データグラム転送サービスを提供する通信プロトコルである。 データグラム(datagram) は、データと電報(telegram)から作られた造語で、 次のような性質を持つ。 データグラムは、 パケット と呼ばれることもある。

データグラムは、葉書に似ている。IPのデータグラムが配達 されるときに使われる番号が、 IPアドレス である。IPアドレスとしては、現在32ビットの整数が使われている。 (IPv6 では、IP アドレスは、128ビットになる。)

ルータによるデータグラムの転送

ルータによるデータグラムの転送

ルータは、IPアドレスを見て、データグラムの送り先を判断する。

郵便局で、住所を見て、送り先を判断するのと似ている。郵便局は、一番末端 のもの(ポストから集配したり家に配ったりする)ではなくて、中間的な集配を する郵便局がある。

同様に、ルータも、自分自信は、最終到達地点のコンピュータを知らなくても、 別のルータに送るだけのようなものもある。

ルータは、隣のルータや回線が故障した時には迂回路を探す。 迂回絽がなければ通信は途絶する。

IPアドレスの表記

IPアドレス を表現する時には、普通、8ビットずつ区切って、0から255までの10進 数を4つで表現される。たとえば、次のように書く。


12.34.56.78
これは、10進数でいくつになるかを計算したい時には、次のようにして計算 する。

(((12 * 256)+34)*256+56)*256+78

TCP層

TCP(Transmission Control Protocol) は、IP の機能を利用して、信頼性のある(reliable)双方向の ストリーム転送サービス(stream transport service) を提供する通信プロトコルである。 ()。 ストリーム には、次のような性質がある。

TCPで通信をする時に、通信相手を識別するにはIPアドレスと ポート番号(port number) が使われる。ポート番号は、16ビットの整数で、よく使われる アプリケーション ( サービス ) には、あらかじめどの番号を使うかが決めらている。これを well-knownポート番号(well-known port number) という。

TCP/IPで2つのプロセスが通信をしている図

TCP/IPによりより提供されるストリーム

応用層

TCP層の上には、 応用層 が定義されている。この層では、電子メールの転送、ファイル転送、遠隔ログ イン、WWW、といった TCP/IP を利用するプログラムの間の通信方法が定義さ れている。

TCP/IPを使った通信は、まるでコンピュータ同士(プログラム同士)が電話で 会話するように進められる。

表? TCP/IPの上に定義されているプロトコルの例

--------------------------------------------------------------------
ポート番号 プロトコルの名前			目的
--------------------------------------------------------------------
21	FTP(File Transfer Protocol)		ファイル転送
23	Telnet					遠隔ログイン(telnet)
25	SMTP(Simple Mail Transfer Protocol)	電子メールの転送
79	finger					fingerコマンド
80	HTTP(HyperText Transfer Protocol)	WWWのデータ転送
119	NNTP(Network News Transfer Protocol)	ネットワーク・ニュース
						の記事の転送
513	login					遠隔ログイン(rlogin)
--------------------------------------------------------------------

物理層

IPのデータグラムを転送するためには、さまざまな物理的な媒体 (電線、光ケーブル、電波) が使わる。 LANでは、イーサネットがよく使われる。 10 M bps, 100 M bps, 1000 M bps の種類がある。 物理媒体は、同軸ケーブル、より対線(Twisted Pair Cable)、 光ファイバが使われる。 モデムなどを使った通信では、 PPP(Point to Point Protocol)とい うプロトコルの上に、IPデータグラムが流されてる。

ホストとルータ

ホスト
ネットワークに接続されているコンピュータの中で、ネットワークに1ヵ所の 出入り口( ネットワーク・インタフェース(network interface) )を持っているもの
ルータ
2ヵ所以上の出入り口を持っているコンピュータ
ルータは、ネットワークとネットワークを接続するた めのコンピュータである。 ルータは、入ってきたIPのデータグラムのIPアドレスを見 て、どのネットワークに送ればよいかを判断する。 ルータは、 ゲートウェー(gateway) と呼ばれることもある。

■情報量の感覚

情報量は、日常的な単位で時間以外のものと対応させるとわかりやすい (かもしれない)。長さ、重さ、面積、体積など。

情報量の単位。

ビット(bit,b)
コンピュータで扱う情報の最小単位。
バイト(byte,B)
(アメリカなら)1文字を扱える程度の情報量。 1バイトは、8ビットに等しい。
情報量には次のような係数がことがある。
k (キロ、ケイ)
1024 か 1000
M (メガ)
k の 1024 倍か 1000 倍。1,000,000 くらい。
G (ギガ)
M の 1024 倍か 1000 倍。1,000,000,000 くらい。
T (テラ)
G の 1024 倍か 1000 倍。1,000,000,000,000 くらい。
情報量の感覚
1 ビット
白と黒の区別
1 バイト (8ビット)
ヨーロッパ系文字 1 文字。256色。
2 バイト (16ビット)
日本語の漢字 1 文字。60000色。
3 バイト (24ビット)
1677万色(2の24乗)。コンピュータのモニタの画素の色数。
4 バイト (32 ビット)
現在広く使われているコンピュータが 一度に計算できる情報量。整数なら40臆程度まで。
256 ビット (32バイト)
16ドット×16ドットの白黒の画像(ビットマップ)で 漢字 1 文字を表現した時の情報量。
数 k バイト
典型的な電子メール1通の大きさ。数千文字。
8k バイト (8000 バイト、64 k ビット, 64,000 ビット)
1秒間に電話の品質で音声を記録した時の情報量。
1 M バイト (1,000,000 バイト, 8,000,000 ビット)
フロッピディスク1枚に保存できる情報量。
230M バイト
光磁気ディスク(MO)1枚に保存できる情報量。 (230M バイト以外にも、128MB/640MB/1.2GBのMOもある)
64M バイト〜512M バイト
一度にメインメモリに入る量(構成によって違う)
640M バイト (640,000,000 バイト)
CD 1 枚に保存できる情報量。
4.7G バイト (5,000,000,000 バイト)
DVD 1 枚(片面2層)に保存できる情報量。
20 G バイト〜100G バイト
ハードディスクの容量(構成によって違う)

■通信速度の感覚

通信速度の単位。

毎秒何ビット、bps、bit per second、bit/second
1秒間に何ビット送れるか
Bytpe/second、毎秒何バイト
1秒間に何バイトビット送れるか。 1 Byte/sec == 8 bps。
ややこしいことに、データ量はバイトで言うことが多く、通信速度は、ビット /秒が使われることが多い。

情報量の単位と同様に、通信速度にも次のような係数がことがある。

k (キロ、ケイ)
1024 か 1000
M (メガ)
k の 1024 倍か 1000 倍。1,000,000 くらい。
G (ギガ)
M の 1024 倍か 1000 倍。1,000,000,000 くらい。
T (テラ)
G の 1024 倍か 1000 倍。1,000,000,000,000 くらい。
通信速度の感覚
10 k bps
よく普及している携帯電話で得られる速度
32 k bps - 56 k bps
電話回線経由で接続した時に得られる速度。
32 k bps または 64 k bps
PHS (Personal Handy Phone) で得られる速度
64 k bps
ISDN (電話回線と同じ電線で直接ディジタル信号を流す時)
100 k bps
MP3 などで圧縮した音楽を流す時に必要な速度。
128 k bps
ISDN で2回線同時に使った時。
1500 k bps (1.5 M bps)
ISDN (光ファイバでディジタル信号を流す時)
1500 k bps (1.5 M bps)
音楽用 CD を圧縮しないでまま流す時に必要な速度。 (1倍速のCDの速度。)
1500 k bps (1.5 M bps)
ケーブルテレビや ADSL という方式でインターネット接続を した時に得られる速度。
5000 k bps (5 M bps)
DVD-Video を再生している時にディスクから読み出されている データの速度。
10 M bps, 100 M bps, 1000 M bps (1 G bit / second)
イーサネット(LANでよく使われている)

実習室のパソコンは、100M bps で学内LANに接続されている。

学内LANの基幹部分は、1G bps - 16G bps に引き上げられる。

学内LANからSINETへの出口は、100M bps。

■実習

◆目の前のコンピュータの IP アドレスを調べる

注意:大学の Windows 2000 では、GUI の方法は権限がなくて失敗するかもしれない。

(1) GUI

  1. スタート
  2. 設定
  3. コントロールパネル
  4. ネットワークとダイヤルアップ接続
  5. ローカルエリア接続
  1. スタート
  2. プログラム
  3. アクセサリ
  4. システムツール
  5. システム情報
    1. コンポーネント
    2. ネットワーク
    3. アダプタ

(2) コマンドプロンプトから

ipconfig

複数のパソコンで実行して、IPアドレスが全部違うことを確認しなさい。

◆コマンドプロンプト

  1. スタート
  2. プログラム
  3. アクセサリ
  4. コマンドプロンプト

◆ping コマンドで接続を確認する(Windows)

コマンドプロンプトで次のように打つ。

ping 130.158.65.1

4回くらい繰り返したら自動的に止まるはずである。 強制終了は ^C (コントロールキーを押しながら C キーを押す)。

IP アドレスとして、別のものを指定しなさい。たとえば、次のようなものが 考えられる。

◆IP アドレスを指定して WWW サーバに接続する

http://www.ipe.tsukuba.ac.jp/ という URL の代わりに次の URL を使ってペー ジを開きなさい。

http://130.158.65.1/

◆目の前のコンピュータで Unix (Linux) を走らせる

電源を入れた直後に出るメニューで、Windows ではなくてUnix (Linux) を選 ぶ。

同じユーザ名とパスワードで使える状態になる。

コマンドで操作してみる。端末を開く。


who
date
cal
bc (終了は ^D (コントロールキーを押しながら D キーを押す))

look 英単語

電源を切る方法。

Unix 入門(ちょっと古い)

人間とコンピュータの対話方法

◆目の前のコンピュータで Unix (Linux) の IP アドレスを調べる

端末で次のように打つ

/sbin/ifconfig -a

スペースは大事。

◆ping コマンドで接続を確認する(Unix)

端末で次のように打つ。

ping 130.158.65.1

自発的止まらないことがあるので、^C (コントロールキーを押しながら C キーを押す))で 強制終了する。

130.158.65.1 の他に、隣のコンピュータの IP アドレスを指定してみなさい。 ケーブルを抜く/電源を落としてから、同じ実験をしなさい。

■課題

◆課題1.1 パスワードの登録

次の画面で、パスワードを登録しなさい。

[パスワード登録画面]

このパスワードは、来週以降、出席や講義の内部ページのアクセスに利用する。 5文字以上、8文字まで。Windows や Unix のパスワードとは別のものにしな さい。最後の「秘密の番号」を使えば、いつでも再発行できるようにする予定 である。

秘密の番号としては、たとえば次のような忘れないものを指定しなさい。

ただし学籍番号は、使わないようにしなさい。 (ipe の 電子メールのアドレスから予測可能なため。)

電子メールのアドレスは、必ず有効なものを指定しなさい。講義に関する重要 な連絡事項を流します。実習期間中には変更しないこと。もし変更があった場 合には、実習時間内に新城に連絡すること(電子メールでの要望には受付けま せん)。

締め切りは、実習時間内(2002年12月6日)とする。

◆課題1.2 調査への回答

次の画面で、 いくつかの調査項目に答えなさい。

[調査項目の画面]

締め切りは、2002年12月11日水曜日とする。実習時間中に出すことが望ましい。


↑[もどる] ・[12月06日] →[12月13日]
Last updated: 2003/01/09 22:55:36
Yasushi Shinjo / <yas@is.tsukuba.ac.jp>