ページ

2011年2月18日金曜日

連載まとめ読み:TCP/IPまるわかり

入門編レベルですね。一応私、ネットワークプログラミングの専門家ですのでこの辺りはかなり詳しく知っていますので、知っている部分はスルー、あやふやだったり、再発見したところだけメモして行きますので悪しからず。


色々と突っ込みたいところがありますが、まあ、現在の主流、ということであればこんなものでしょう。何も特殊事例挙げて混乱させることも無いでしょうからね。自分で説明するとその辺りの特殊事例(でも仕様上はそっちが基本)を上げすぎて判りにくくなりやすいもので、このぐらい割り切らないといけないのでしょうがね。


歴史物語。まあ、よほど興味のある人以外は読み飛ばしでしょう。最後にIPアドレスの話がちらっと。でもネットワーク使っている人なら当然知っているレベルですので本当に読み飛ばしてOKでしょう。


プライベートアドレスとNATの関係はむしろ逆でしょう。NAT(NAPT)が使われるようになったのでプライベートアドレスが広く使われるようになったのだと思いますよ。NAT以前ならLAN内のアドレスはプライベートアドレスである必要は無かった(外部と繋がない限りどのようなアドレスでも問題ありません)ので、結構適当なアドレスを使っていましたから。

APIPAについて、OSの再起動は大雑把すぎですよ。まあ、一般ユーザにはコマンドプロンプト開いて 「ipconfig /renew」コマンド使って、という説明が面倒だし、余計混乱させる可能性はありますがね。


やっとルーティングプロトコルの話まできました。さすがにルータから先については普通のネットワークアプリレベルでは使いませんし制御しませんので、詳しくない部分です。

IGPsとEGPs 


IGPsEGPs
適用範囲AS内部AS間
プロトコル例RIPv1/v2、IGRP,EIGRP,OSPF,IS-ISEGP、BGP

ディスタンスベクタとリンクステート

ディスタンスベクタ型
RIP、IGRP
リンクステート型
OSPF、IS-IS

リンクステートからの経路計算、「最短パス優先」もしくは「ダイクストラアルゴリズム」ということはダイクストラの最短経路アルゴリズム使っているんでしょうね。

クラスフルとクラスレス


クラスフルクラスレス
サブネットマスクの通知行なわない行なう
VLSM(可変長サブネットマスク)サポートできないサポートできる
プロトコル例RIPv1RIPv2、OSPF、EIGRP、BGP、IS-IS


まあ、この辺りはネットワークプログラマには常識なので軽く読み飛ばしで。TCP/IP系はもともとパケット課金ではない世界で広まったため、パケット課金される世界では再送制御で料金がとんでも無いことになるんですよね。そしてこれ、ネットワークの品質が低い(エラーが多発する)ほどパケット数が増えてキャリアが儲かるという、なんとも許しがたい構造になっていました。いまは大体のキャリアが固定料金になっているのでそれほど気にならなくなっています。


この辺りもネットワークプログラマには常識なので軽く読み飛ばし。Gracefull Close を「ゆるやかな解放」というのは確定した訳語なんですかね。まあ、ググって見たらCISCOのマニュアルでもそうなっている(ただし漢字で緩やかな)なので、確定とまではいかなくても広く使われているのでしょう。


この辺りもネットワークプログラマには常識。初期のTCPコード、どこかの大学のコードベースのものに、ウィンドウ制御のバグがあって、一旦ウィンドウサイズが0になると、そこから戻れない(通信不能になる)という障害がありました。まあ、めったなことではウィンドウサイズ0にはならないのですが、サーバ側が極端に遅かったり、経路上に低速回線があったりすると出るんですよね。


HTTP、FTP、SMTP、POP辺りまでは一般常識でしょう。SIPはどうでしょうか。この中では最も新しいプロトコルですが(それでも10年もの)そろそろ一般常識に入ってきましたかね。

連載はここまで。まさに概要説明といったところでしょうか。興味のある人はここから検索していけばより詳しい勉強が出来るでしょう。とはいってもこれ全部把握していれば相当にネットワークに詳しいと言えそうです。

0 件のコメント:

コメントを投稿