01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
JANOGの宴会で、イーサネット駄目すぎ、捨てたい!、と言ってたら、
それを言ったら BGP だって、という話になった。
IP の世界では、遠くのノードと通信をしたいときには、
自分が持っている経路表を参照し、近くにあるルータに投げる。
そのパケットを受けとったルータも、それぞれが持っている
経路表を元に隣のルータに渡してやる。
それを繰り返して最終的な目的地までパケットが渡される。
ちゃんと届くためには、経路表がちゃんとしてなきゃいけなくて、
それを正しく保持するための仕組みがルーティングプロトコル。
インターネットにおいては BGP が主に使われている。
ところが、今の BGP には
- 経路情報が膨大になってきた。
20万経路を超えて、ルータも処理するのが大変。
- ルータを適切に設定してないと、偽経路情報を流されたときに
経路乗っとり等が発生する可能性がある
- トラフィックコントロールをちゃんとしたいけど、
意図したようにパケットが流れてくれないことがある
というような問題がある。
そういう問題に対しては、今のところは、
仕様だよねえ、ある程度は我慢して、
でも現状でできる最善の努力をしよう、
というふうにオペレーションで対応をしている。
IRR で頑張ろう、フィルターをちゃんとしようよ、
MEDで頑張ろう、とかとか。
でも IETF や IRTF 等では、もっと根本的に BGP に代わる
ルーティングアルゴリズムも沢山検討されてて、
良さげなものも結構あるらしい。
たとえば、パケットに経路情報を持たせりゃ良いじゃん、
という提案とか。
具体的には、制御情報を除くと、IP パケットヘッダは
- 発信元
- 宛先
の2つの情報しか持ってないけど、これを拡張して
- 発信元
- 宛先
- 途中経路1,途中経路2,途中経路3,途中経路4,,,,
みたいに経路情報をパケットに持たす、という提案。
もし経路情報がパケットに含まれていれば、
ルータは、書いてある経路に従って、転送してやるだけ。
経路情報はエンド側で作ってやる。
経路情報を作る元ネタには、IRRみたいなものを拡張した
経路情報サービスを利用する。
経路情報がパケットが入ってなかったら、
今までどおりの通信を行なうだけ。
むしろほとんどの通信は、今までの方法のままで、
あくまでも、イレギュラーな経路で通信したい、という場合だけ、
経路情報付きパケットだけ、を使う、と。
そもそも経路情報が爆発的に増えたのは、
マルチホーム等のイレギュラーな経路を実現するための、
パンチングホールが主な原因なんだよね。
そういうわがままな人達のためのコストをインターネット全体で、
払うのはやっぱり不自然な気がする。
基本サービスとして、綺麗にアグリゲートされるツリー型の
経路を用意しておいて、今までどおりの通信をする。
でもイレギュラーな経路を使いたいユーザは、
それぞれが経路情報をパケットに付ける、というようにする。
わがままなユーザは、わがままの代償として、経路情報を付ける、
という、コストを負担することになる、と。
実装もわりとシンプルにできそうだし、ルータの負荷も軽そう。
届かない場合は、経路情報なしで再送すれば、済むだけ。
アプリケーション毎に経路を選ぶことができる。
経路情報サービスは、複数の会社がそれぞれに立ちあげることが可能で、
競争によってコストも削減できそう。
将来のモデルとしては、なかなか良いアイディアな気がするね。
ひょっとするとこういう考え方は、IP ではなく、
オーバレイネットワークみたいなものの上で最初に
実装されるのかもなあ。
勉強しなきゃ、とか思った。
新橋にて。
SONET なんかだと、障害があったとき 50 ms 以内に
うまいこと対応できたりする。
でも、IP で構築された経路で同等のクオリティを実現するのは
かなり大変。
でも要望はあるので、、、という話。
BFD を使っていこう、という結論にできるかしら。
エンジニアのクオリティを判定する方法はそれなりに沢山ある。
- ITSS
- 各種資格
- 各種性格診断っぽいテスト
それぞれに、良い点はあるんだけど、実際に一緒に仕事をしたり、
仕事を発注したりする際には、正直役に立たない、
と感じることは多い。
ひょっとすると、人の評判っていうのが、一番わかりやすい
指標なのかもしれないなあ。
他の人から推薦をされる人は、あんまり外れがないんだよね。
ということで、エンジニアがエンジニアを推薦しまくる、
という協会を作るというのは悪くないかもな。
推薦だけだと、なんかうさん臭いので、各種診断サービスなんかも、
オプションで付けたりしてね。
とかいうようなことを、仕事をしながら思ったよ。
誰か作らない?
業務設計、システム設計のお手伝いぐらいはやるよ。
回線が繋がらないところで困らないように、
wwwoffle をインストールしてみた。
4年ぶりぐらいに使ってみたんだけど、ちゃんとメンテされてるのね。
wwwoffle
http://www.gedanken.demon.co.uk/wwwoffle/
Windows では Cygwin と組み合わせて使う。
Cygwin から make やら gcc やら、コンパイルに必要な、
ツールをひととおり入れておく。
wwwoffle は、展開して、Cygwin 上から make。
./configure
make
make install
これでインストール完了。
まずは wwwoffled を起動する。
wwwoffled
ブラウザのプロキシを localhost:8080 に設定。
wwwoffle を online にする。
wwwoffle -on
これで、ブラウザからウェブアクセスは、
wwwoffle に蓄積されるようになる。
回線が切れたら、
wwwoffle を offline にする。
wwwoffle -off
こうしておけば、蓄積されたキャッシュファイルを見に行くので、
一度見たサイトはオフラインでも閲覧ができる。
設定ファイルは /etc/wwwoffle/wwwoffle.conf
キャッシュファイルは /var/spool/wwwoffle/
ただ残念ながら、wwwoffle ごしでは見えないサイトもいくつかある。
たとえば mixi.jp とか。
こういうところは、ブラウザの設定で、直接見に行くようにする、と。
2021 : 01 02 03 04 05 06 07 08 09 10 11 12
2020 : 01 02 03 04 05 06 07 08 09 10 11 12
2019 : 01 02 03 04 05 06 07 08 09 10 11 12
2018 : 01 02 03 04 05 06 07 08 09 10 11 12
2017 : 01 02 03 04 05 06 07 08 09 10 11 12
2016 : 01 02 03 04 05 06 07 08 09 10 11 12
2015 : 01 02 03 04 05 06 07 08 09 10 11 12
2014 : 01 02 03 04 05 06 07 08 09 10 11 12
2013 : 01 02 03 04 05 06 07 08 09 10 11 12
2012 : 01 02 03 04 05 06 07 08 09 10 11 12
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12
最終更新時間: 2021-03-02 14:20