Entries


上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

-件のコメント

コメントの投稿

新規

※設定NGワードは『http』です

投稿した内容は管理者にだけ閲覧出来ます

-件のトラックバック

トラックバックURL
http://pugiemonn.blog6.fc2.com/tb.php/1230-b46989c6

職業訓練:インターネットとサーバーその2


クライアントとサーバーにわかれていて.
リクエストとレスポンスがセットでプロトコルということを学びました.

IPについて


Internetとは

もともと大学のPC同士をある規模でつなぐ方式をLANと呼びました.
Local Area Networkです.
当然技術論文などとなりますと,ほかの大学の論文も読みたくなります.ほかの大学の論文も読めるようにしようということで,大学間のPCをつないでいこうと考えました.このInter+net(~間+ネット)がInternetです.

PCからHUBを介し,プロバイダーのネットワークなどのインフラに接続し,彼らは全国に中継施設を持っているので,海底ケーブルなどを通じてアメリカにつないだり,西日本とつないだり分岐していきます.いろいろな繋がりを経てリクエストが飛んでいきます.

リクエストには使っている住所が送られています.レスポンスはそれを見ながら返ってきます.

Internetを預かる組織について

IETF(Internet Engineering Task Force)
インターネット技術の標準化を推進する団体
IP RFC 791
HTTP RFC 2616

ICANN(Internet Corporation for Asiigned Names and Numbers)
インターネットの運営を調整する団体です.
DNSルートサーバーの運用
インターネット上の識別氏の割り振りや割り当ての調整

インターネット上の伝達について

パケットというのがありますね.
リクエストがある場合,一度小さい単位に分割します.それをパケットといいます.パケットに荷札をつけて郵送します.バケツリレーです.ネットワークはバケツの振り分けをしているわけです.サーバーはパケットを受け取ったらそれを組み立てる作業をします.

携帯のパケットも同じです.

分散と集中について

ネットワークが集中していると中心部が大変になります.専用回線などがあれば便利になります.分散している場合は,ルート(経路)がたくさん用意されています.

みんなで回線を使うと,一個の回線が使われている場合,ほかの人は使えません.大きな情報を送ろうとすると回線を占有してしまいほかの人に対してフェアではありません.小包みにしておけば全体のスピードは遅くなるかもしれませんが,みんなで回線を共有できます.フェアになるというメリットがあります.

また,分散ではひとつのネットワークが死んでもほかの経路を使ってつなぐことができます.集中では一個死ぬとお終いです.

インターネットでの住所

ドメイン名+ホスト名
http://www.neet-system.com/
ですとwwwがホスト名で,neet-system.comがドメイン名です.ドメイン名は個人や団体に使用権があります.ホスト名は人間が見てわかりやすいものになってます.

ドメインのレベルと種類

www.yahoo.com
www.yahoo.co.jp

gTLD(ジェネリックトップレベルドメイン)
.com .jp .org .gov などなど汎用的なという意味です.
govは政府

ccTLD(カントリーコードトップレベルドメイン)
.jp .fr .it
jpは日本など各国にカントリーレベルトップドメインを指定しています.これはICANNのお仕事です.

sTLD(スポンサードトップレベルドメイン)
.aero .coop

ccSLD(カントリーコードセカンドレベルドメイン)
.ne .co .or
日本ではセカンドレベルドメインを持たないドメインもとることができます.

.coは法人でなければとることができません.

ドメインには信用度というのがありまして,.jpは最も安全度が高いドメインといわれており,最下位は.cmでカメルーンです.

ツバルという国のドメインは.tvです.テレビを連想させるネーミングなので.tvというドメインは人気を博し,.tvの権利はアメリカのベンチャーが購入しました.おかげでツバルには道路ができたり公共施設ができたりしたそうです.2000年くらいの話です.

グローバルアドレス

インターネットに直接接続するホストに割り当てるIPアドレスであり,世界で一意である必要があります.2進数の32桁で表現します.

10進数とは10個の数字を使って数字を表現するやり方,2進数は数字を二つで表現するやり方です.

32桁ばらばらにつけても使いにくいので,最初の24バイトがnetwork部,残りの8バイトがhost部です.ネットワーク単位のアドレスがnetwork部でその中のLANを指定するのがhost部になります.8桁ですと256までですのでコンピュータは256台ほどにつなぐことができるのです.

よく見るIPアドレスは32桁の2進数を10進数に直したものです.
プライベートアドレス

インターネットに直接接続しないLAN内などのプライベートネットワークで利用するIPアドレスです.
要するにグローバルアドレスだけですべてのコンピュータを管理するのは無理があるのです.

IP(Internet Protocol)

インターネット上での情報伝達方法の取り決めのことです.
コンピュータ間の通信への対応)

IPの基本的な役割は『パケットを宛先まで送り届けようと最大限の努力はする。実査に届いたか否かは保証しない』というものです.実際に届いたかどうかはTCP層で判定すればいいのです.

特徴は以下です.
  • パケット通信
  • 分散処理
  • End to End
  • ベストエフォート

大事なのは上の二つです.

品質で大事なのは保証です.しかし通信では保証がありません.速度も遅いです.最大限がんばりますというのがベストエフォートという考え方です.

IPルーティング

ネットワークアドレスをみて経路を判断し転送します.
Routing = Route 経路のことです.
ネットワークの装置には何本かのラインが接続されています.届いたパケットを別のラインへ転送します.

ルーターというは経路の仕分け機能の家庭版というところですね.

TCP/IPについて


PCの中にはメーラーやブラウザなど色々なものが動いています.でもhtmlというレスポンスが返ってきたらウェブブラウザで表示されますよね.

サーバー側でもwebサーバーとmailサーバーがあるのです.リクエストが届いたときにwebサーバーとmailサーバーというアプリケーションにメールならメールで振り分けされます.

このどのアプリケーションで表示するのかということを振り分けを行う取り決めをTCP/IPと呼びます.

  • 応答
  • 再送
  • パケット順序の保証
  • ポート

HTTPではパケットを受け取るたびに返信しています.1番送りました.1番受け取りました.という受け取ったよという応答をしています.2番が来ていないと2番送ってくれという応答をします.これを再送といいます.受け取ったものを全部組み立てするのです.ポートはwebサーバーなら一般的に80番という部屋番号を持っています.そこに振り分けるのです.

GET /index.htmlというリクエストを飛ばしたいとすると
クライアントのOSではTCPがパケットに分割し,順序,再送,応答を踏まえベストエフォートで送信します.サーバーのIPどおりにパケットが到着するとTCPは応答します.そしてパケットがすべて届くとTCPは順序を整えます.そしてGETですのウェブサーバーであるポート80に割り当てます.

アプリケーションの宛先

サーバーにはさまざまなアプリケーションが動いています.これらにはさまざまな宛先が割り当てられています.これはウェルノウンポート番号といいます.

FTP 20,21
SMTP 25
HTTP 80
POP3 110
HTTPS 443
などなどです.
これらはIANAが割り当てを行っています.

http://www.yahoo.co.jp
とhttpあればポート番号80番に接続します.
http://www.yahoo.co.jp:8080
とあればポート8080を探します.でもポート番号が見つからなければ手紙はお亡くなりになります.これを使えばコンピュータは同じでもポート番号の振り分けにより,違うアプリケーションに振り分けることが可能になります.

ドメイン/ネームサーバー


  • DNS
  • ネームサーバー
  • レジストラ
  • レジストリ

http://www.yahoo.co.jp
↓↑
210.192.64.XX(例です)
というのを誰が知っているのでしょうか.この対の情報,住所録を誰が知っているのでしょうか.

DNS - Domain Name System

URLからサーバーへたどり着くまでに,住所録を管理サービスしているサーバーがあります.これをネームサーバーといいます.

ホスト名とIPアドレスの対応を名前の階層構造で分担して管理する仕組みのことです.
これをDNS-Domain Name Systemと呼びます.

仮にwww.yahoo.co.jpというリクエストが飛ぶと最初にルートサーバーを見に行きます.
.jpサーバーなら.jpの情報だけを知っているサーバーがあるのです.その.jpサーバーのIPを返します.すると.jpサーバーは.ne.jpや.co.jpのIPを持っています.なので.co.jpのネームサーバーを教えてもらいます.そして.co.jpのネームサーバーはyahoo.co.jpのネームサーバーを教えます.そして次に聞きにいくとwww.yahoo.co.jpのIPを返します.そしてアクセスすべきIPがわかるのです.

ですからアクセスするまではネームサーバーを6回ほど問い合わせを行っています.

家庭でインターネット契約をしますと,ネームサーバーの入力を求められたりしますよね.
DNSのキャッシュについて

ネームサーバーは一回聞いたIPのアドレスを一時保管しておく機能があります.問い合わせを一定期間再利用しているのです.

キャッシュの生存期間をTTL(time to live)といいます.ネームサーバーは生存期間をみて住所録を引きます.DNSにアクセスすることなくIPを返すのです.

これを考慮する必要があるのはサーバー引越しの際などです.IPが変更になりますよね.キャッシュで問題が生じるのでTTLを短くしてあげる必要があります.安定したらTTLを長くします.

ドメイン登録の流れ

ドメインの登録申請をした場合,.jpネームサーバーの管理者はJPRSという団体です..jp以下もJPRSが管理しています.この契約を代行しているのがレジストラといいます.レジストラはXXXXというドメインが使われていないのかを調べたりしてくれます.例ですとお名前.comなどですね.なぜレジストラがあるかというと外部に出してレジストラ同士で競争させるためです.

レジストリという言葉がありますがレジストラとは違う意味です.JPRSが持っているデータベースの事をレジストリといいます.

ネームサーバーの契約が済んだら次はホスト(ウェブサーバー)の契約が必要です.これらをホスティング会社やレンタルサーバーと呼びます.ホスティング会社はデータセンターを持っていて利用料をとります.ホスティング会社は契約をすればIPアドレスを渡してくれます.

ただ仮にホスティング会社がwww.yahoo.co.jpのWebサーバーのIPが仮に210.112.11.XXXだと教えてくれてもネームサーバーに情報がなければアクセスができません.なのでネームサーバーへホストのIPアドレスを登録する必要があります.

これらの複雑な仕組みはホスティング会社ですべての面倒を見る場合が多いです.ウェブサーバーやネームサーバーやレジストラ的な役割を包括しているのです.そのためネームサーバーは表に出てこない場合が多いですね.

レジストラとJPRS,ネームサーバーという言葉は覚えておいてください.

電子メールについて


  • SMTP
  • POP3
  • エンベロープ
  • BCC
  • メーリングリスト

についてなどなどです.
SMTPとは

Simple Mail Transfer Protocolというプロトコルです.基本的には送信,相手先に届けるまでの決まりです.

電子メールでいう送信は相手のメールサーバーまで届けることをいいます.電子メールも郵便のように中継を繰り返しながら送信します.この仕組みがSMTPです.

大抵メールのIPをメールソフトに入れたりしますよね.それは最初のSMTPサーバーのIPです.
POP3とは

受信に使うプロトコルをPOP3といいます.メールが最終的にたまって来るサーバーをPOP3サーバーといいます.メールソフトに入れるのはこのサーバーのIPです.

エンベロープとは

これを知っておくとBCCの仕組みやメーリングリストが届く仕組みが説明できます.

電子メールを送るときには宛先や件名を入れますが,メールを送信している最中には宛先は見ません.送信中はリクエストヘッダに宛先などの情報が書かれています.ヘッダが封筒の役割をしています.ここをエンベロープといいます.エンベロープは封筒の外見のように住所が書かれています.

電子メールの送信を押すとエンベロープが生成され封筒に宛先が書かれます.その状態でSMTPサーバーへメールが送られます.それがSMTPのルールなのです.
ヘッダとは

手紙の先頭に書かれた情報のことをヘッダといいます.
To:差出人メールアドレス
Cc:カーボンコピーメールアドレス
Bcc:ブラインドカーボンコピーメールアドレス
このあたりはメールのニュアンス,意味を知るためのものです.宛先にはなんら影響を持ちません.

BCCの仕組み

BCCにアドレスを入れると内緒でメールを送信できます.BCCではエンベロープを生成するところでToやCcやBccという内容は消去されます.Bccはお使いのPCからBcc情報が送信されません.

メーリングリストの仕組み

差出人がここのメールアドレスを知らなくてもメールを送ることができます.

メーリングリストはメールが届くメールサーバーがメーリングリストのメールリスト持っていて再度そこからメールを送信するのです.

メーリングリストのToを見ると個人のアドレスではないと思います.これはエンベロープにはメールアドレスが書いてあるものの到着する際に破棄されてしまうのです.
TCP vs UDP

TCP:Transmission Control Protocol
これは応答,再送により,データの到達を保証しています.
HTTP,FTP,POP3

UDP:User Datagram Protocol
応答,再送をしません.データの到達を非保証です
映像ストリーム,DNSなど

DNSでは返ってこなかったらもう一度リクエストしてくれという考え方です.

0件のコメント

コメントの投稿

新規

※設定NGワードは『http』です

投稿した内容は管理者にだけ閲覧出来ます

0件のトラックバック

トラックバックURL
http://pugiemonn.blog6.fc2.com/tb.php/1230-b46989c6

Appendix

プロフィール

川崎修

  • Author:川崎修
  • インターネット大好き!
    調布周辺で自宅警備してます



    メール:pugiemonn@gmail.com
    skype:pugiemonn
    twilog:Twilog
    mixi:mixi
    facebook:facebook
My Profile by iddy
FC2ブログ

カレンダー

09 | 2017/10 | 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -

最近の記事

Twitter

コミュニティ

ブログ内検索

ブロとも申請フォーム

この人とブロともになる

Adsense

月別アーカイブ

はてぶ数

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。