ゼミ中 〜UDP

UDPの章。

なめてかかって読んでたらエラい目にあった。

まずIPのフラグメントの説明がここにあったこと。フラグメントはややこしい。かつ、8バイト単位で長さを指定する。それはMore Fragmentなどのフラグのため。パスMTUの話もここに入っている。

上り回線と下り回線のMTUが違う環境を例に示していて、死にそうになった。MTUに関しては、データリンク層で制限を課しているから、データリンクの限界値をネットワーク層IPに伝えているのだ、という認識だった。なぜならMTUはインターフェースごとに設定していくからだ。

上下回線でMTUの値に違いが出る環境がありえるかもしれないという発想に至れなかった。

あの本は、何度読んでも発見がある。

MTUに関しては、BフレッツのMTUサイズ(1492ではなく1454の理由)という話もある。

この場合、ルータでフラグメントをするか、ホスト側でパスMTUディスカバリをする必要がある。ルータでフラグメントをした場合、ルータの処理能力によっては通信能力が大幅ダウンしてしまうので、ホスト側でパスMTUディスカバリをした方がベターだ。

そこでWindowsではパスMTUディスカバリをしているのかどうか調べてみた。

「パスMTUディスカバリ・ブラックホール問題」とは:ITpro
Windows2000はパスMTUディスカバリを実装しているようだが、それが原因でメールが見れなくなったりするようだ。

しかもMTUサイズ1454の”フレッツ網”で。

なかなか奥が深い。

追記:
リビング+:「ルータのブラックホール現象」を解決する (1/2)

なーんとなく、Windows側のパスMTUディスカバリ実装のミスだろうなーっと。DFフラグ立てて届かないならRFCに従ってMTUサイズを小さくしていくべきだが、Windows 2000はそうしなかったようだ。

追記その2:
いや、違う。フラグメント値が正しくないというICMPエラーが届かないとフラグメント値は変更しないのが正しいのか。DFフラグを立てたデータグラムはフレッツ網のルータに拒否される。その拒否したルータがICMPエラーを発信元に返すが、FWが弾く。エラーが届かなければ、ホスト側は単にデータグラムが消失した(破棄された)と思う。だから、DFビットを外さなかった、というのが答えか。

んでも、破棄された場合でも2度くらい連続したらDFビットを外して送信した方がいい・・・はず。暇だったら現在の実装はどうなっているか実験してみよう。

カテゴリー: 無線LAN | コメントする

ゼミ中 〜ダイナミックルーティングプロトコル

RIP中心にOSPF、IGP、EGPについて。

ルータ同士がどのようにお互いを発見して、お互いの情報を交換し合うのか、を延々と説明する章。その目的はルーティングテーブルを最適な状態に保つこと。この様々な手法をルーティングアルゴリズムと呼ぶ。

ルーティングアルゴリズムの評価の1つは、収束時間である。故障や追加などによってトポロジが変更された場合、全体のルーティングテーブルが安定化するまでの時間を収束時間とする。収束時間が長ければ、その間にループなど障害を起こす要因が発生してしまう。だから、早く収束した方が良い。しかし早く収束させようとすると、それだけ冗長なメッセージを出さなければならない。

ディスタンスベクターとリンクステート。RIPとOSPF。RIPはメトリック(ホップカウント)しか見ないけれど、OSPFはスループット、遅延時間で判断することができる。

OSPFではロードバランスがあり、2つの経路のコストが同じであるのなら、並列にパケットを配送する。だから、行きと帰りで経路が違うことがある。別の経路で到達することになるので、パケットの順序が変わることがある。

ここまでを大体話した。ここまでが理解できれば、アドホック・ルーティング・プロトコルが、RIPやOSPFで十分ではない何を補完したものであるか、見えてくるはず。アドホック・ルーティングも、基本的にはIPルーティングをしているに過ぎない。個々がルータとして働き、生存確認をし、経路表をやり取りするのも変わりない。それなら、なぜ、RIPなどのIGPとは別に定義する必要があったのか。そういう話が出来れば面白いかもしれない。

さらにEGPとして、BGPの話。自律システム(AS)があって、それらが繋がっているんだという話。ASの中身の情報はお互いにバラしたくないという話。表面上見えるものだけでルーティングする。

CIDRは意味分からんがIPv4アドレスの枯渇があるから、クラスCアドレスを使うけど、ルーティングテーブルにクラスCをいちいち書くのが面倒だから、まとめてみたよという話。

お次のお題はUDP。UDPはシンプルで必要最低限のプロトコルで、TCPに対抗心を燃やしていた頃にこれで対抗しようとしていた愛着のあるプロトコル。必要最低限なのでポート番号くらいしか仕事がない。そのポート番号が大事。

カテゴリー: 無線LAN | 2件のコメント

ゼミ中 〜IPルーティング

ルーティングテーブルの見方と処理の方法について勉強。

デフォルトゲートウェイは最後に見る。みなさんの家にルータがあると思うけれど、インターネットにアクセスする場合はデフォルトゲートウェイを使ってルータにたどり着いている、ということが分かってもらえたと思う。さらに自宅のルータはインターネットの構成など知らず、インターネット上の基幹ルータに到達して初めてネットワーク構成を知る。ネットワーク構成を知るからこそデフォルトデートウェイが設定されておらず、ICMP到達エラー(アンリーチャブル)を出すことができる。

フラグとしては、U(利用可能)、H(ホスト/ネットワーク)、G(ゲートウェイ、間接/直接)がある。これはnetstat -rnで見ることができる。

フォワーディング可能かどうかは、ルータのカーネルの設定で選べる。よってフォワーディングすること自体はIPにとってMUSTではない。ルーティングテーブルを見ることは最低限してね、と。

あとはICMPリダイレクト。パケットを”出した相手”が出す相手が違うと分かれば、ICMPリダイレクトによって本来出すべき相手に出せるようにルーティングテーブルの変更を促す。一見して攻撃しやすい。この理由から、ホストは自分がデータグラムを出した相手から受信したICMPリダイレクトしか利用しない。ICMPリダイレクトではホスト単位しか指定せず、ネットワーク単位ではリダイレクトはしない。相手のネットワーク構成をそのルータが知らないから、とした。

ネットワーク単位ではリダイレクトするべきではない、という明確な答えは出てこなかった。勉強不足だ。

IPルーティングで重要なことは、IPルーティングは分散なアーキテクチャで部分部分のネットワークを知っておればよく全体のネットワークを知る必要はない、ということ。

IPルーティングとダイナミックルーティングプロトコルとの関係は?との質問が出たが、ダイナミックルーティングプロトコルはルーティングテーブルを自動で交換を行い、その情報を元にIPルーティングの静的な設定方法で設定しているに過ぎない・・・という説明をした。

来週はダイナミック・ルーティング・プロトコルについて。TCPはまだか。

カテゴリー: 無線LAN | コメントする

ゼミ中 〜ICMP

自分がこんなことを教えて良いのだろうか・・・と思いつつICMPの説明について。

ポイントなのは、自分でデータグラムを出して自分で問題が分かった場合は自分で理解する、他者からデータグラムをもらって問題が分かった場合はICMPで問題を伝える。IPで来たデータグラムの問題はIPで伝えなければならない。だからIPヘッダがICMPについている。

さらにICMPはユーザプロセスではなくカーネルプロセスで動作する。よって通常であればユーザが意識せずともICMPエラーが返る。

ICMPエラーに対してはICMPエラーで応答しない。ループになっちゃうから。

カテゴリー: 無線LAN | コメントする

ゼミ中 〜ARP

ARPとRARP…、IPアドレスからMACアドレスを引く、MACアドレスからIPアドレスを引く、という目的を達するために利用される。

ARPではARPキャッシュと呼ばれるキャッシュ機構に触れる。時間切れになると、再度ARPで聞きに行く。

なぜ、静的(スタティック)にARPテーブルを構築してはいけないのか?
なぜ、キャッシュを用意するのだろうか?
なぜ、時間切れを用意するのだろうか?

実際にwiresharkにてARPをキャプチャした結果を見せて、形式について理解を求めた。このキャプチャ結果では、ARPリクエストの宛先MACアドレスがブロードキャスト(FF:FF:FF:FF:FF:FF)になっておらず、あらかじめ分かっている一台に聞きにいっていた。面白い現象だ。

あわせてさくらインターネットにてARP spoofingが発生した事例に触れた。ARPテーブルを静的に構築しても良いが、業者がルータを交換してしまうとMACアドレスが変更されてしまい、サーバ側のARPテーブルも変更しなければならないことが分かってもらえたと思う。さらにSSHにて管理しているサーバの場合、ARPテーブルの不整合によってネットワークがつながらない状態になってしまい、管理すらできなくなってしまうだろう(シリアルコンソールなら良いが…)。

ARP Proxyについては上手い説明ができなかった。勉強不足だ。

Gratuitous ARPについては2つの機能があることを勉強した。IPアドレスの重複確認、キャッシュの更新。

カテゴリー: 無線LAN | コメントする

ゼミ中 〜ネットワーク層

リンク層とネットワーク層の形式を上手く説明するためにどうすればよいか考えて、Wireshark(Ethereal)のプロトコル解析結果とネットワークバイト列のスクリーンキャプチャの印刷したものを配布してゼミを行った。

結果として、ネットワーク層の宛て先アドレスは変更されず、リンク層の宛先アドレスはよく変わるという点がそのプリントを用いたことで分かりやすかったと思う。Webサーバにアクセスした場合のキャプチャを例に示したが、リンク層宛て先アドレスはCiscoであり、IP的にはWebサーバ(正確にはプロキシ)を宛先としているが、途中でルータを経由しているのでリンク層では宛先をルータにしている、という説明がしやすかった。

またデータグラムの形式と実際の値を参照しつつ話を進めていくと、IPのヘッダ長は標準で20バイトなのに、5という数字が入っている、なんで?的な疑問も生まれた。IPデータグラムにおける長さは32ビット単位なので、5×4バイトで標準の20バイトになるわけだ。

そんなこんなでIPの3章は終わった。次はARPについてだ。

カテゴリー: 無線LAN | コメントする

ゼミ中 〜リンク層

詳解 TCP/IP vol.1を使って、イントロダクションとリンク層について本読みをした。

この本はIPやTCPについては詳しいのだが、リンク層については詳しくない。TCP/IPを理解する上で最低限のことしかリンク層のことを書いていない。TCP/IPの本なので当然だが…

EthernetフレームとPPPプロトコルがどのような形式か、しか教えていない。これだけではリンク層が良く分からないと思うので、補足をしようと考えた。

リンク層の話では、ダムハブを用いた半2重回線の時代、スイッチングハブを用いた全2重回線の時代、そして、無線LANでは半2重の世界が広がっているということを理解したい。

半2重回線の時代では、自分の声が聞こえる範囲があり、相手と自分でどのように折衝して衝突しないように注意をしていたか、という話がメインになる。全2重回線の時代では、そのような問題から開放されたこと、FDBの仕組みがメインになる。無線LANでは、半2重回線と同じ問題を抱えており、そのためにフレームを出す行為そのもののオーバーヘッドが大きいということ、またインフラストラクチャーモードやアドホックモードがどのような仕組みになるのかメインになる。

と、考えていったら、やはり、リンク層はスルーして早いところTCP/IPにたどり着いて、必要ならリンク層に戻る程度の方が話が分かりやすいな、と、考えを改めた。深い話、細かい話は全体の概要が見えてから掘り下げていくほうが理解しやすそうだからだ。

とりあえず今は漠然と分かるように努力しよう。次はIP(ネットワーク層、第3章)についてだ。

カテゴリー: 無線LAN | コメントする

NGNを再考する〜まとめ

コメントを頂いたので、少し考えてみる。

今までのNGNに対する考えをまとめると、以下の効果が期待できる(はず)。

  1. 回線交換のIP化による管理コスト削減
  2. 標準化された便利なSIP的なサービス
  3. QoS課金
  4. その他サードパーティサービスの課金(iモード的な意味で)

このうち、1.と2.は表裏一体。電話の不便をあらためて考えるにて考えたことが2.で実現するのであれば便利になる。IP化するのであればSIPは避けて通れない。ここで変に維持を張って独自規格にしなかった点は、標準化する方の利益が高かったからだと考えられる。放送業界では日本は独自規格を作った。

3.はNGNで1.2.以外に価値があると流布された噂の技術だが、実際にどこに使うのかという話になって音声・動画しかありえないという状況。しかし前回のエントリで書いたとおり、ニコニコ動画のプレミアム会員サービスは一種のQoSであり、顧客がQoSに対して金を払わない状況ではないということが分かっている。問題なのは、回線を変更してまで受けたいと思うサービスがあるかどうか、だと考えられる。

4.こそがNGNの意義、iモードを固定に焼きなおしたLモードの失敗を、Q2の成功を元に考え出された第三の道であると考えている。つまり、電話料課金と共に動画サービスなどサードパーティの課金も行えるようにすることによって、コンテンツの流入を目指すもの。

ただし、この策には2点問題があると考えており、1つは現状のISPでもまとめて課金を行うことが出来る点、もう1つはiモードの時とは事情が違う点である。

ISPに対する違いを回線屋が生み出すためには、回線にかかわった課金ならではの独自性が必要であり、それが今は思いつかない。

iモードのときはWeb空間の構築を自由に行えるようにした点が評価されたが、現状では固定回線は既にオープンなWebが構築されている。課金をしやすくするために回線業者を移るユーザはいない。だとすればユーザの動きを想像してみれば、既にNGNな回線に入っていてついでにサービスを提供して課金するというシナリオになる。

携帯電話の業者変えはよく行われているが、インターネット接続の固定業者を変えたという話は、相当なマニアじゃない限り聞かない。

ただし、将来的に彼らに対して回線交換方式の廃止および原則NGN回線加入のシナリオを組み立てれば、それが出来ないわけじゃない。思い返してみれば、アナログ放送廃止の仕組みと同じことをやろうとしているのかもしれない。デジタル放送の普及は別のエントリB-CASの存在意義で述べたとおり、有料課金にあると考えられるからだ。

以上のことから、

将来も原則として固定回線は残る、電話回線は回線交換からIP化される、だとすれば大半のユーザはNGNに(NGNかどうかを意識しないで)加入する。大半のユーザが加入した時点でサードパーティ課金は現実味を帯びてくる。この1,2年の間にどうこうということはない、株主に対するリップサービスとしてNGNのQoSで遊んでいるに過ぎない。

と、自分は踏んでいる。

カテゴリー: 無線LAN | コメントする

NGNはQoSだけじゃない

NGNはコストダウンのための云々…と最近は思うようになってきたが、この議論もつまらなくなってきた。文句言うのも疲れたのでNGNの中身について勉強中。

NGNの主要な要素はCSCF…

CSCFの3つをならべると…

S-CSCF
I-CSCF
P-CSCF

縦読みすると「SIP」

つまり…

NGNでSIPを使うことは予言されていたんだ!

とまぁRACFで資源を確保することが重要なんだと思っていたわけなんです。なってったってQoSがNGNの目玉ですから。

んでもQoSを使わないBEな優先度もあるわけで、ふしぎ!と思っていたわけですよ。QoSを使わないNGNに意義があるのか…

そこで気がついたのは、ダイヤルQ2の存在。

ダイヤルQ2とは、情報提供者様が番組(有料情報)を提供し、NTT東日本管内のお客さまがご利用になった情報料を、NTT東日本が情報提供者様に代わって回収するサービスです。お客さまは電話回線でアクセスするだけで多様な情報を手軽に入手することができます。

あの頃はQ2に勝手につながったとかなんとかで悪評が高かった。

この流れから、NGNの面白いところはQoSじゃなくて、課金をNTTが代行できる点にあるんじゃないか、と、思うようになっていった。”iモードはなぜ成功したか”の要素に携帯電話と一緒に課金を行った点がある(と囁かれている)。実はQoSは飾りで、課金代行がメイン…だったんじゃないか、と。

そうなると未来はどうなるのか。

おそらく、Webやその他サービスをNGN上で受けたくなった場合、NTTの共通したインターフェースによって、クレジット番号の入力なしに代金支払いを行うことができる。これによって代金支払いの障壁がなくなる。未成年や女性の場合、クレジット番号の所有率は低いっぽいので、彼らがネット上コンテンツに代金を支払いやすくなる。

例えばQ2は代金支払いの簡単さから悪用され問題になった。しかし悪用できないメカニズムとネットが融合すれば、より成熟した課金システムになる可能性がある。

と仮定してみたが、ここまでやってることはISPの付加サービスの課金と一緒やね。

もうちょっと便利になることが、踏み込んだ先にある予感がするのだが…

カテゴリー: 無線LAN | 2件のコメント

電話の不便をあらためて考える

実家に転がっていたカラーレーザプリンタやプロッタなどの残骸を処分するために車で運びながら、電話の不便さについて議論した。

2年前はFMCってすごい!と感じていた。しかし最近ではFMCを本当に使いたい?と詰問するようになっていた。その疑問がようやく氷解した気がした。

結果として、自分の中では以下が現行の電話サービスの欠点であるという結論になった。自分自身、電話にそこまで興味がない(致命的だ…)ので、正しくない可能性がある。間違っている場合は指摘を頂きたい。

  • 現行の固定から携帯への転送サービスは不十分である
  • 電話をかける際には固定、携帯の順にかけなければならない
  • 法人の電話は個人を特定できないので折り返し電話しづらい

現行の固定から携帯への転送サービスは不十分

まず、固定から携帯への転送サービスについてだが、現行の電話システムでも固定電話から携帯電話に通話を転送することが可能である。しかし、固定電話から携帯電話への転送にかかる料金は受信した固定電話側で支払うことになる。もともと固定電話へ電話した方は、固定電話への料金だけの支払いのみ。

なぜ、固定から携帯への転送に料金を支払わなければならないのか。それが不便だ。

電話をかける際には固定、携帯の順にかけなければならない

相手先に電話をかける際には、かかる料金の問題から安価な固定電話、高価な携帯電話の順にかける。これは自身が支払う通話料を削減したいからだが、かなり面倒だ。【調査発表】業務で携帯電話を利用している法人の7割は個人の携帯電話を利用という資料をインプレスR&Dが発表している通り、既に固定離れが始まっている。

この問題は固定電話の前に期待する人が存在しているかどうかがわからないためである。プレゼンスという機能を追加することで解決できるが、できれば相手側で固定電話につながらなければ携帯電話に転送してくれる方が電話をかけやすい。逆に携帯電話にかけても、固定網を使って通話できるのであれば固定を使えるような仕組みがあった方が利用しやすい。

法人の電話は個人を特定できないので折り返し電話しづらい

法人では電話番号を共有しているため、どこから電話がかかってきたのか把握することができても、折り返し電話しにくい。緊急の要件の場合は、留守録か、再度かけ直しをする必要があるが、携帯電話へのかけ直しが簡単である。よって携帯電話から電話がかかってきた場合は個人が特定できるため折返し電話をするが、法人からの場合は個人が特定できないためにしない、と言う。

そこで固定から携帯に転送してくれると助かる。相手の携帯電話の番号を知らない場合もある。その場合は特に便利だ。

ここまでの事例を考えてみると、FMCは事業者にとっては魅力があるということになる。本来できそうでできなかったサービスができるようになる。

カテゴリー: 無線LAN | コメントする