ネットワークはなぜつながるのか
ネットワークはなぜつながるのか ― 知っておきたいTCP/IP、LAN、ADSLの基礎知識
日経BP社
著者:戸根勤
監修:日経NETWORK
第1章 ブラウザがメッセージを作る~ブラウザ内部を探検~
探検ツアーの始まりはURLを入れるところから
ブラウザはまずURLを解読
ファイルとディレクトリの違い
HTTPの基本的な考え方
HTTPのリクエスト・メッセージを作る
リクエストを送るとレスポンスが返ってくる
送り先となるWebサーバーのIPアドレスを調べる
IPアドレスを探す機能はSocketライブラリが提供
リゾルバを利用してDNSサーバーに問い合わせる
リゾルバを呼び出すときの動き
DNSサーバーの基本動作
DNSサーバーへ問い合わせるパケット
DNSサーバーの担当範囲と階層構造
担当のDNSサーバーを探し、IPアドレスを取得
DNSサーバーはキャッシュ機能で素早く回答
SocketライブラリはTCP/IPソフトへの仲介役
ソケットを生成して、接続状況を管理
IPアドレスとポート番号をTCP/IPソフトへ通知
サーバー側も待ち受けの準備をする
サーバー側はIPアドレスを照合して接続許可を返信
さあ、メッセージの送受信を開始
メッセージ送受信の終わりを通知
COLUMN ほんとうは難しくないネットワーク用語
怪傑リゾルバ
第2章 TCP/IPのデータを電気信号にして送る~TCP/IPソフトとLANアダプタを探検~
TCP/IPソフトの内部構成
ソケットの実体はTCP/IPソフト内部のメモリー
宛先と送信元の組み合わせが同じソケットは一つだけ
TCP/IPソフトはまずソケットを作成
ソケットを生成したら、TCPで“パイプ”をつなぐ
接続、データ送受信、切断の3フェーズで管理
制御情報を納めたTCPヘッダーを作る
IPアドレスを納めたIPヘッダーを作る
イーサネット用にMACヘッダーを作る
ARPで送信先ルーターのMACアドレスを調べる
IPパケットを電気や光の信号に変換して送信
さらにパケットに三つの制御用データを付ける
ハブに向けて接続を知らせるパケットを送信
LANアダプタのMAUが衝突を検出
通信開始に対する応答パケットを受け取る
サーバーからの応答パケットをIPからTCPに渡す
HTTPリクエスト・メッセージのパケットを作成
データが大きいときは分割して送る
パケットが届いたことをACK番号を使って確認
パケット平均往復時間でACK番号の待ち時間を調整
ウインドウ制御方式でACK番号を効率よく管理
データ送受信フェーズの動作は接続フェーズと同じ
HTTPレスポンス・メッセージを待つ
送り直しの必要がないデータの送信はUDPが効率的
COLUMNほんとうは難しくないネットワーク用語
ソケットにねじ込むのは電球かプログラムか
第3章ケーブルの先はLAN機器だった~ハブとスイッチ、ルーターを探検~
一つ一つのパケットが独立したものとして動く
LANケーブルは信号を劣化させないで送るのがポイント
“より”は雑音を防ぐための工夫
リピータ・ハブは全ポートから信号を送信
スイッチング・ハブはアドレス・テーブルで中継
MACアドレス・テーブルの登録・更新
例外的な動作
衝突に関する振る舞いとハブ接続台数の制限
スイッチング・ハブは全2重
最適な伝送速度で送るオート・ネゴシエーション
スイッチング・ハブは複数の中継動作を同時に実行
ルーターとスイッチング・ハブの違い
ネットワーク番号とホスト番号
ネットワーク番号とホスト番号を分けるネットマスク
経路表に登録される情報
経路表を検索して出力ポートを見つける
デフォルト・ゲートウエイで次のルーターへ
パケットには有効期限がある
大きいパケットはフラグメンテーション機能で分割
ルーターの送信動作はコンピュータと同じ
アドレス変換でIPアドレスを有効利用
アドレス変換の基本動作
ポート番号を書き換える理由
インターネットから社内へのアクセス
ルーターのパケット・フィルタリング機能
COLUMNほんとうは難しくないネットワーク用語
ハブとルーター名前を変えれば値段も変わる?
第4章プロバイダからインターネット内へ~アクセス回線とプロバイダを探検~
インターネットを構成するルーター
アクセス回線のバリエーション
ADSLモデムでパケットをセルに分割
ADSLは「変調方式」でセルを信号化
ADSLは多数の周波数を使い高速化を実現
スプリッタの役割
電話局までの道のり
ISDNの影響
ISDN信号に同期させてADSLの信号を変化させる
DSLAMを通過してBASに届く
ユーザー認証と設定情報通知
ADSLでPPPを動かすPPPoA
PPPoA以外の方法のメリットとデメリット
アクセス・ポイントの構成
建物内部はケーブルで直結
通信回線の多重化
プロバイダ同士の接続
プロバイダ同士で経路情報を交換
社内ネットワークの自動登録との違い
IXの必要性
IXでプロバイダ同士を接続する様子
COLUMNほんとうは難しくないネットワーク用語
名前はサーバー、中身はルーター
第5章Webサーバーに遂にたどり着く~ファイアウォール、Webサーバーを探検~
Webサーバーの手前には各種のサーバーあり
ファイアウォールのタイプ
パケット・フィルタリングの条件設定の考え方
アプリケーションを限定するのにポート番号を使用
接続方法をコントロール・ビットで判断
社内LANから公開サーバー用LANへの条件設定
社内LANへ外からはアクセスできない
ファイアウォールを通過する
データ・センターにWebサーバーを設置する場合
処理能力不足の場合は複数サーバーで負荷分散
負荷分散装置で複数のWebサーバーに振り分け
キャッシュ・サーバーの利用
キャッシュ・サーバーは更新日でコンテンツを管理
キャッシュ・サーバーにパケットを届ける方法
プロキシの原点はフォワード・プロキシ
フォワード・プロキシを改良したリバース・プロキシ
コンテンツ配信ネットワークを利用した負荷分散
最寄りのキャッシュ・サーバーの見つけ方
リダイレクト用サーバーでアクセス先を振り分ける
キャッシュ内容の更新方法で性能に差が出る
COLUMNほんとうは難しくないネットワーク用語
通信回線がLANになる日
第6章返信データが完成し、Webブラウザに戻る~わずか数秒の「長い旅」の終わり~
受信信号をデジタル・データに変換
TCP/IPソフトがHTTPメッセージを取り出す
ソケットを作成して接続を待ち受ける
TCP/IPソフトからデータを受け取る
サーバーは複数のクライアントと同時に通信
問い合わせのURIを実際のファイル名に変換
CGIアプリケーションを起動する場合
Webサーバーで行うアクセスを制御
レスポンス・メッセージを送り返す
レスポンスのデータ・タイプを見て中身を判断
ブラウザ画面にWebページを表示! アクセス完了!
COLUMNほんとうは難しくないネットワーク用語
ゲートウエイは別世界に通じる入り口