1 / 46

情報システム

情報システム. インターネットの基盤技術 2001.01.16 総合情報センター 小島篤博. 概要. インターネットの技術基盤 TCP/IP パケットによるデータ通信 DNS TCP/IP アプリケーションの例 SMTP, HTTP. 階層型の通信モデル. 同じ層どうしで約束(プロトコル)を決めて通信 N 層は上位の N+1 層、下位の N-1 層と連携. N+1. N+1. 各層ごとに何らかの機能を提供 (物理的接続、転送、  経路制御 etc.). N. N. N-1. N-1. OSI Reference Model.

tanuja
Download Presentation

情報システム

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 情報システム インターネットの基盤技術 2001.01.16 総合情報センター 小島篤博

  2. 概要 • インターネットの技術基盤 • TCP/IP • パケットによるデータ通信 • DNS • TCP/IPアプリケーションの例 • SMTP, HTTP

  3. 階層型の通信モデル • 同じ層どうしで約束(プロトコル)を決めて通信 • N層は上位のN+1層、下位のN-1層と連携 N+1 N+1 各層ごとに何らかの機能を提供 (物理的接続、転送、  経路制御 etc.) N N N-1 N-1

  4. OSIReference Model • ネットワークの機能を7層に分割 • 国際標準を目指したが… 7 Application Application 6 Presentation Presentation 5 Session Session 4 Transport Transport 3 Network Network Network 2 Data Link Data Link Data Link 1 Physical Physical Physical

  5. TCP/IP • OSI reference model と1対1には対応しない(5~7層) • インターネットの基盤 Application Application 5 TCP IP 4 Transport Transport 3 Internet Internet Internet 2 Network Interface Network Interface Network Interface 1 Physical Physical Physical

  6. データ転送方式 • 回線交換方式 • 電話回線など • パケット交換方式 • データを一定の長さ以下に分割し(パケット)、それぞれに行き先のタグを付加 • 動的な経路制御により目的地へ転送 • インターネットではこちらを採用

  7. 回線交換方式 Node A Node B

  8. パケット交換方式 Node A Node B

  9. インターネット層 • データをパケット(IPdiagram)に分割 • 経路制御(routing)によるデータ転送 • ネットワークやホストを 32bit(4 octet)のアドレス(IP address)で識別 • 例) 157.16.200.32 …host 157.16.200.0/24 …network

  10. トランスポート層 • TCP (Transmission Control Protocol) • コネクション型(connection oriented)通信 • Virtual Circuitの提供 • 信頼性の向上 • UDP (User Datagram Protocol) • コネクションレス型通信 • ポート番号でアプリケーションを識別

  11. コネクション型通信 • データ転送の前に、まず相手との通信路を確保(コネクションの確立) • コネクションを通してデータを転送 • データ転送が終了したら、通信路を閉鎖(コネクションの切断)

  12. コネクションの確立 開始側 受け側 SYN SYN+ACK ACK

  13. 3 2 1 2 3 1 データ送受信 TransportLayer パケットの整列・組立て フロー制御エラー検出・訂正 パケットへ分割 TCP header

  14. クライアント/サーバ • 通信を行うノード(ホスト)の役割 • サービスを提供する側…サーバ(server) • mail server, WWW server • サービスを受ける側…クライアント(client) • 利用者のPCなど

  15. ポート番号 • アプリケーションに応じたサービスの識別 SMTP 25 telnet 23 80 HTTP

  16. TCP header 4 8 16 31 0 Source Port No. Destination Port No. Sequence No. ACK No. Data offset Reserved Control bit Window URG A C K PSH R S T S Y N F I N Check Sum Urgent Pointer Options if any Padding

  17. IP header 4 8 16 31 0 Ver IHL TOS Total Length Identification F Fragment Offset TTL Protocol Header Checksum Source IP Address Destination IP Address Options if any Padding

  18. TCP/IPのまとめ • インターネットの技術的な基盤 • パケット交換方式によるデータ通信 • インターネット層 • IP address, routing • トランスポート層 • TCPによる信頼性の高いコネクション型通信 • ポート番号ごとに多様なサービス

  19. 名前によるアドレスの指定… • IP address は数字の列で覚えにくい • ホスト名やメールアドレスには「名前」が使われているはず!? • taro@center.naniwa-u.ac.jp • http://www.osakafu-u.ac.jp/index.html • トランスポート層以下の通信は IP address • IP header, TCP header には名前のフィールドなんてない

  20. DNS以前の名前解決 • すべてのホスト名・IP addressの対応表をテキストファイル(HOST.TXT)に記述 • 名前の衝突 • 負荷の集中 • 整合性維持の困難 1984: DNS が導入される

  21. DNS (Domain Name System) • IP address とホスト名の対応 • ホスト名から IP address を検索 • あるいは、その逆 • インターネット全体に渡って IP address と名前との対応表が維持されている!! • 組織内・ネットワーク内の対応表はそれぞれが管理 • 超大規模分散データベース

  22. FQDN (Fully Qualified Domain Name) • ホスト名や組織名 • 階層化された名前付け • インターネット上で一意な名前付けが可能 • ドメイン、サブドメイン… 教育機関 情報工学科 abc.cs.osakafu-u.ac.jp ホスト名 大阪府立大学 日本

  23. ドメイン名の構造 • TLD (Top Level Domain) • 国名(ISO3166で規定) • 例外(US: .com, .edu, …) • 汎用ドメイン(検討中) • 組織の属性・性質 • ac:教育研究機関、co:企業、ne:プロバイダ、go:政府機関、…etc. • 組織の名称 • 組織内のサブドメイン

  24. ドメイン名の構造 ルートは “.”(ドット)で表す . com jp edu ibm co sun ac cmu mit nec keio osakafu-u center cs

  25. 名前解決 (resolution) cs 内の対応表から xyz を検索(157.16.36.xx) name server xyz.cs.osakafu-u.ac.jpのアドレスを近くのname server に尋ねる LAN 157.16.36.xx を返答 abc.cs.osakafu-u.ac.jp 157.16.36.yy xyz.cs.osakafu-u.ac.jp ※ abc.cs.osakafu-u.ac.jp から xyz.cs.osakafu-u.ac.jp へTCP通信を行う場合

  26. 名前解決 (resolution) name server 157.16.36.xx と TCP 通信を 開始 LAN abc.cs.osakafu-u.ac.jp 157.16.36.yy xyz.cs.osakafu-u.ac.jp 157.16.36.xx

  27. Name server • 自ドメイン内の IP address/名前の対応表(Resource Record)を管理 • IP address や名前の問い合せに返答 • 他ドメインに関する問い合せについては、そのドメインの name server に尋ねる • BIND (Berkeley Internet Name Domain) • TCP上のプロトコル(ポート番号:53)

  28. Resource Record • Name server が管理する対応表 • 正引き(名前 → IP address) • ドメインごとにひとつのRR • 逆引き(IP address → 名前) • サブネットごとにひとつのRR • 逆引き用の特殊なドメイン: 157.16.200.0/24 → 200.16.157.in-addr.arpa.

  29. RRの例(正引き) SOA record: Resourceに関する権限等の宣言 ; nowhere.zone @ IN SOA mars.nowhere.co.jp. root.nowhere.co.jp. ( 2000011801 ; Serial (yyyymmddvv) 3600 ; Refresh 900 ; Retry 3600000 ; Expire 86400 ) ; Minimum TTL ; IN NS mars.nowhere.co.jp. IN NS pluto.nowhere.co.jp. IN MX 10 mars.nowhere.co.jp. ; $ORIGIN nowhere.co.jp. ; mars IN A 10.0.1.1 pluto IN A 10.0.1.2 saturn IN A 10.0.1.11 NS record: このドメインのname server MX record: このドメインのmail server A record: 名前→ IP address 対応表

  30. RRの例(逆引き) SOA record: Resourceに関する権限等の宣言 ; 10.0.1.rev @ IN SOA mars.nowhere.co.jp. root.nowhere.co.jp. ( 2000011801 ; Serial (yyyymmddvv) 3600 ; Refresh 900 ; Retry 3600000 ; Expire 86400 ) ; Minimum TTL ; IN NS mars.nowhere.co.jp. IN NS pluto.nowhere.co.jp. ; $ORIGIN 1.0.10.in-addr.arpa. ; 1 IN PTR mars.nowhere.co.jp. 2 IN PTR pluto.nowhere.co.jp. 3 IN PTR saturn.nowhere.co.jp. 4 IN PTR uranus.nowhere.co.jp. NS record: このドメインのname server PTR record: IP address →名前 対応表

  31. 2 foo.comの name server を検索 spica.foo.com? 1 4 spica.foo.com ? 3 virgo.foo.com (10.99.5.1)に聞いてね RRから spicaを検索 5 6 spica.foo.com は 10.99.5.2 です 他ドメインに関する名前解決 M.ROOT-SERVERS.NET202.12.27.33 Internet 最寄りの name server virgo.foo.com 10.99.5.1

  32. クライアントの設定 • クライアントは最寄りの name server の IP address を知っている必要がある • UNIX系 (Linux, FreeBSD, etc.) • /etc/resolv.conf • Windows系 • コントロールパネル → ネットワーク → TCP/IPのプロパティ → DNS設定

  33. DNSのまとめ • IP address と名前(FQDN)の対応 • FQDN • インターネット上で一意な名前 • 階層化された名前付け • Name server • 名前解決サービスを提供(TCP) • 自ドメインの Resource Record を維持

  34. TCP/IPアプリケーションの例 • SMTP (Simple Mail Transfer Protocol) • 電子メールの転送 • HTTP (Hyper-Text Transfer Protocol) • WWW コンテンツの転送 • 他にも telnet, ftp, NNTP, POP,…etc.

  35. SMTP • クライアント・ホストからのメール発信 ※ メール受信には POP の利用が一般的 • サーバ間のメール転送 Internet Mail server Mail server SMTP POP Client Client

  36. Mail server • 経路指定による配送(静的経路制御) • IP routing と似たやり方(ドメイン名と中継サーバの対応表) • 組織内での利用が主 • DNS MX参照による配送 • 宛先ドメインの MX record を引いて、相手のmail server を決定 • インターネット上で広く利用

  37. MX参照による転送 aaa@center.osakafu-u.ac.jpへメールを送る場合 DNS query takayasu.center.osakafu-u.ac.jp 3 Internet name server name server center.osakafu-u.ac.jp 4 MX of center.osakafu-u.ac.jp? 2 5 1 send To: ark@center.osakafu-u.ac.jp From: foo@bar.baz.net --- Hello, RU fine? Asdfjasdfasd asfdasdfasdfdafasdf Asdfasdf Asdfasdfasdf asdfa Asdfasdf Asdfasdfefa dasf etasdfa frasgtasdfa Asdf Asdfasertfadsf asdfaef aserfasf asd Asfeaf asef4af ascaefasdf asdf Asdfaseweg sdfasyrtyhsdf asdferaf as Asfdawefa Asfef ag q4t aerty qef Client Client takayasu.center.osakafu-u.ac.jp Mail server

  38. MX参照による転送 aaa@center.osakafu-u.ac.jpへメールを送る場合 DNS query takayasu.center.osakafu-u.ac.jp 3 Internet name server name server center.osakafu-u.ac.jp 4 MX of center.osakafu-u.ac.jp? 2 5 7 6 To: ark@center.osakafu-u.ac.jp From: foo@bar.baz.net --- Hello, RU fine? Asdfjasdfasd asfdasdfasdfdafasdf Asdfasdf Asdfasdfasdf asdfa Asdfasdf Asdfasdfefa dasf etasdfa frasgtasdfa Asdf Asdfasertfadsf asdfaef aserfasf asd Asfeaf asef4af ascaefasdf asdf Asdfaseweg sdfasyrtyhsdf asdferaf as Asfdawefa Asfef ag q4t aerty qef 1 forward To: ark@center.osakafu-u.ac.jp From: foo@bar.baz.net --- Hello, RU fine? Asdfjasdfasd asfdasdfasdfdafasdf Asdfasdf Asdfasdfasdf asdfa Asdfasdf Asdfasdfefa dasf etasdfa frasgtasdfa Asdf Asdfasertfadsf asdfaef aserfasf asd Asfeaf asef4af ascaefasdf asdf Asdfaseweg sdfasyrtyhsdf asdferaf as Asfdawefa Asfef ag q4t aerty qef send pop Client Client takayasu.center.osakafu-u.ac.jp Mail server

  39. SMTP session • テキストベースで会話が可能 Client Mail server Establish connection HELO … OK MAIL From:… OK

  40. SMTP sessionの例 $ telnet cuvier.center.osakafu-u.ac.jp smtp Trying 157.16.200.31... Connected to cuvier. Escape character is '^]'. 220 cuvier.center.osakafu-u.ac.jp ESMTP Sendmail 8.9.3+3.2W/3.7W-990614; Tue, 18 HELO valkyrie.center.osakafu-u.ac.jp 250 cuvier.center.osakafu-u.ac.jp Hello aaa@valkyrie [157.16.200.32], pleased to MAIL From:<aaa@center.osakafu-u.ac.jp> 250 <aaa@center.osakafu-u.ac.jp>... Sender ok RCPT To:<aaa@center.osakafu-u.ac.jp> 250 <aaa@center.osakafu-u.ac.jp>... Recipient ok DATA 354 Enter mail, end with "." on a line by itself Hello, Can you hear me? . 250 LAA14667 Message accepted for delivery QUIT 221 cuvier.center.osakafu-u.ac.jp closing connection Connection closed by foreign host.

  41. メールヘッダの情報 Received: 中継ホスト情報 #2 Received: from cuvier.center.osakafu-u.ac.jp (root@cuvier.center.osakafu-u.ac.jp [ by takayasu.center.osakafu-u.ac.jp (8.9.3/3.7W-991220) with ESMTP id LAA09 for <aaa@center.osakafu-u.ac.jp>; Tue, 18 Jan 2000 11:43:37 +0900 (JST) Received: from valkyrie.center.osakafu-u.ac.jp (aaa@valkyrie [157.16.200.32]) by cuvier.center.osakafu-u.ac.jp (8.9.3+3.2W/3.7W-990614) with SMTP id LAA for <aaa@center.osakafu-u.ac.jp>; Tue, 18 Jan 2000 11:42:58 +0900 Date: Tue, 18 Jan 2000 11:42:58 +0900 From: aaa@center.osakafu-u.ac.jp Message-Id: <200001180242.LAA14667@cuvier.center.osakafu-u.ac.jp> Content-Type: text X-UIDL: 27e42253a9ce97960ac81c110558aa03 Hello, Can you hear me? Received: 中継ホスト情報 #1 Message-ID: メッセージごとに 一意なID Received: フィールドは、中継ホストを1つ 通過するたびごとに先頭に追加される

  42. HTTP • WWW コンテンツの転送に利用 • 1回の要求ごとにセッションを完結する(State-less) GET Internet Client WWW server コンテンツ

  43. URL (Uniform Resource Location) http://www.cs.osakafu-u.ac.jp/index.html scheme コンテンツにアクセスする方法 ftp, http, file,mailto…etc. scheme-specific-part schemeに依存したコンテンツへのパス scheme-specific-part の一般形: //user:passwd@host:port/url-path

  44. HTTP session • テキストベースで会話 Client WWW server Establish connection GET Contents Close connection

  45. HTTP session の例 MIME外部ボディ コンテンツの形式など $ telnet cuvier.center.osakafu-u.ac.jp http Trying 157.16.200.31... Connected to cuvier. Escape character is '^]'. GET /index.html HTTP/1.0 HTTP/1.1 200 OK Date: Tue, 18 Jan 2000 04:01:47 GMT Server: Apache/1.3.3 (Unix) Debian/GNU Last-Modified: Sun, 07 Nov 1999 08:57:34 GMT ETag: "27e3-ad4-38253efe" Accept-Ranges: bytes Content-Length: 2772 Connection: close Content-Type: text/html X-Pad: avoid browser bug <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> <html> . . 本体(HTML)

  46. おわりに • 自分の周りを見回してみよう • Gateway や name server はどのマシンか? • サブネットの IP address は? • 突然ネットワークが使えなくなったら? • DNS は引けるか?(nslookup コマンド) • Gateway までは行けるか?(ping コマンド) • 他の学科・学部は?学外は?

More Related