Introduction of Computer Network
ネットワーク基礎(その1)
送受信するデータは各層ごとにヘッダをふかしたものがやり取りされる
1.2 ネットワークアクセス層(データリンク層)
物理的な接続方法の規約
10Base-T・・より対線(Twisted Pairケーブル)
端子はRJ-45、HUBによるスター接続(最大延長100m)
手軽に接続できるので現在の主流(今後は100Base-TX)
ハブはネットワークアクセス層のデータを解析し宛先の端末に向けて中継する。ただし、ハブのすべてのポートに情報を流すため、接続数が多くなると衝突(コリジョン)が多くなり、転送速度の低下が生じる。
スイッチングハブ
個々のポートに接続された機器(ホスト)の物理アドレスを記憶し、必要なポートどうしを中継することにより、不必要なトラフィックをなくし高速なデータ転送を実現する。
MACアドレス
Media Access Control
ネットワークインターフェイスを識別するためのハードウェアアドレス(別名Ethernetアドレス)で、工場出荷時に付加される6バイトの番号
通常は16進数を用いて12桁で表される。重複は許されない。
1.3 インターネット層
ホスト間でパケット交換を行う
IPアドレス(後述)が識別子となる
1.4 トランスポート層
TCP:コネクション型
UDP:データグラム型
UDP: User Datagram Protocol
コネクション型
仮想的な通信路を確保した後データをやり取り
コネクションの開始、終了手続きが必要
データが順序通りに届く
データグラム型
コネクションを張らないアプリケーション層でデータの復元
TCP/UDPともに、ポート間でデータの送受信を行う
端末に各種のポート番号が決めてある
ポートの例 | |
---|---|
ftp | 21 |
telnet | 23 |
smtp | 25 |
http | 80 |
pop3 | 110 |
クラスD、E(省略)
また、ホスト部の0と255はネットワーク自身およびホストすべてをあらわすため使用できない。プライベートアドレス(後述)として以下のアドレスも使用できない
10.0.0.0 ~ 10.255.255.255
172.16.0.0 ~ 172.31.255.255
192.168.0.0 ~ 192.168.255.255
2.2 ネットワークインターフェイス
IPアドレスはホストに対して与えられるのではなく、実はネットワークインターフェイスに対して与えられる。
一つのホストにEthernetボードが1枚--1対1対応
Ethernetボードは複数枚でも良い
ゲートウェイ、IPマスカレード(後述)
縄手の研究室のネットワーク図(5/12現在)
2.3 ホスト名
IPアドレスに付加されるホスト名--人間にとって理解し易い名前
この場合、ホスト名とIPアドレスは1対1対応
システムに付加されるホスト名
ネットワーク上のホスト名とは無関係
2.4 ドメイン名
FQDN, Fully Qualified Domain Name
192.244.219.82
mag2.riko.shimane-u.ac.jp
jpの acの shimane-uのrikoの mag2 を表す
^^ ^^ ^^^^^^^^^ ^^^^ ^^^^
国 組織の種類 組織の名称 細目 ホスト名
国:jp, uk, au, fr, ...
種類:ac, co, go, ne, or, ...
例外:合衆国の分類
国を表す項目なし、組織の種類はcom, edu, ...
IP address 192.244.218.1 | 1100 0000 | 1111 0000 | 1101 1010 | 0000 0001 |
Netmask 255.255.255.0 | 1111 1111 | 1111 1111 | 1111 1111 | 0000 0000 |
論理積 | 1100 0000 | 1111 0100 | 1101 1010 | 0000 0000 |
IP address 192.244.219.1 | 1100 0000 | 1111 0100 | 1101 1011 | 0000 0001 |
Netmask 255.255.255.0 | 1111 1111 | 1111 1111 | 1111 1111 | 0000 0000 |
論理積 | 1100 0000 | 1111 0100 | 1101 1011 | 0000 0000 |
実際の効果が出るのは、例えばクラスBのアドレス空間をクラスCで仮想的に区切る場合などで、パケットは同一ネットワークのすべてのホスト宛てに送られるので、ネットワークを小さく区切ると無駄が減る
133.41.4.2
133.41.38.1 の様なクラスBのネットワークでは、本来のネットマスは255.255.0.0であるが、ルータを用いてネットワークを分離し、255.255.255.0のマスクをかけるとパケットの流れる範囲が狭くなり資源の有効活用となる
IPアドレスはNIC(国内はJPNIC)が管理しているが、その管轄にないアドレスとして以下のものがある。ローカルに閉じたネットワークであれば自由に利用できる。
クラスA 10.0.0.0 ~ 10.255.255.255
クラスB 172.16.0.0 ~ 172.31.255.255 電子制御の学科LAN
クラスC 192.168.0.0 ~ 192.168.255.255 5/12当時の縄手の研究室のLAN
学科LANにおいては、端末の台数自体はクラスCでもおさまるが、各教官にクラスCを一つ割り振るためにクラスBとしている
IPマスカレード
Masquerade: 見せ掛け、仮面舞踏会
インターフェイスが2つあるホストにおいて、一方のネットワークがプライベートアドレスである場合、プライベート側のホストはそのままではインターネットを利用できない。
上記の複数インターフェイスを持つホストがゲートウェイになりグローバルなアドレスになりすましてパケットの送受信を行う機能をIPマスカレードと言う。
グローバル側から見ると、プライベートのホストは見えなくて、ゲートウェイのマシンからの接続に見える。
UNIXのネットワーク機能の多くは利用者が端末で使用するクライアントプログラムと、必要な機能を提供する端末上で実行されるサーバプログラムとが協調することにより実現される。
例:FTP
クライアントプログラム ftp、ncftp
サーバプログラム in.ftpd、wu.ftpd
プログラムのコマンドの最後にdがついているものはデーモン(Daemon)プロセス
daemon:1 【ギ神話】 ダイモン (神々と人間の間に介在する二次的な神)
通常は待機していて、呼び出しがあった時にだけ仕事をするプロセス
5.2 ネームサーバ
IPアドレスとホスト名を相互に変換する作業を行う
固定方式
各ホスト上にIPアドレスとホスト名の対応表を用意する方式
小規模の場合は可能
すべてのホストに同じ表が必要
Domain Name Service (DNS)
ホスト名とIPアドレスをネットワーク上のサーバに問い合わせる仕組み
各組織(ドメイン)が自組織を担当するサーバを運用し、他の組織からの問い合わせに答える形式により、管理と負荷を分散する。プログラムはBINDが通常使用される。
電子メールの配信のための情報も管理
5.3 メールサーバ
電子メール配信システム
MTA (Mail Transfer Agent)
MUA (Mail User Agent)
MDA (Mail Delivery Agent)
端末上で利用者がメールを送受信する時に用いるアプリケーションプログラムがMUA
MUAはMTAに配送を依頼
SMTPとPOP
MUAからMTAにメールを送る時に利用されるプロトコルがSMTP
Simple Mail Transfer Protocol
依頼があれば認証なしに配送
MTAに届いたメールを自分の端末上で読むために利用するプロトコルはPOP
Post Office Protocol
MXレコード
電子メールのアドレスは本来は
username@FQDNの形式
縄手の仕事用のアカウントの場合
mnawate@ifse1.riko.shimane-u.ac.jp
nawate@ecs.riko.shimane-u.ac.jp
だが、ホスト名(やドメイン名の一部)を省略して簡略化したアドレスが利用可能
mnawate@riko.shimane-u.ac.jp
nawate@ecs.shimane-u.ac.jp
これをジェネリックアドレスと呼ぶ
MTAはジェネリックアドレスにメールを送る場合にホストが特定できないため、ネームサーバにMXレコードと言う対応表を用意して公開し、対応を取る。
MX: Mail eXchanger
SMTPでメール配信するMTAの標準プログラムはsen dmail
POP3でメールをMUAに取り込むプログラムin.pop3d、qpopper
5.4 FTPサーバ
File Transfer Protocol
ファイルを転送する機能を提供するサーバプログラム
FTPは他のプロトコルと異なり、コネクションを張って制御用の信号を送る経路と実際にファイルを転送する経路の二つを使用する。
Anonymous FTP
anonymous: 匿名
サーバにアカウントを持っていないユーザにもサーバからのファイルのダウンロードを許す方式
ログイン時にユーザ名としてanonymous、パスワードに自分のメールアドレスを入力して利用する。セキュリティの面から公共性の高いサーバにのみ用いられる。
代表的なプログラム: wu-ftpd
5.5 Webサーバ
HTTPを利用したHTML書類の転送を行うサーバ
HTTP: Hyper Text Transfer Protocol
HTML: Hyper Text Markup Language
代表的なプログラム:Apache (A PAtCHy sErver)
patchy:1 つぎだらけの; 寄せ集めの.
2 〈霧・雲など〉きれぎれの, とぎれとぎれの.
3 不調和な, むらのある; 所々にいい所があるだけの.
サーバは他ホストからの要求に堪えて自ホスト内のHTMLファイルを送出するだけ。仕事の大部分はアクセス制御やファイル管理
実際にページの表示を行っているのは利用者の端末のブラウザ(Netscape Navigator, Internet Explorer等)
HTML言語はテキストやグラフィックとして描かれている情報を表示する機能しかないため、HTML言語を利用してサーバ上でプログラムを奔らせるためにSSIやCGIを利用する。
SSI:Server Side Include
CGI:Common Gateway Interface
アクセスカウンタやフォームによるアンケートページ、動画、全文検索、データベースとのリンク等を行う。