2008年03月23日
基幹処理用SIPの仕様&実装とは?
「通信ソフトウェア開発」という連載記事が公開されております。
そして、第二回記事「SIP」に、激しく同意せざるを得ない部分を発見したため、エントリーです。
ここですよね。SIP嫌いなルータ屋やプロトコル屋さんが多い一つの理由は。
ある先輩からは“SIPなんて重たくて駄目だよ。交換ソフトとして組み込むのは厳しい”と一蹴されたものだった。その時の指摘のポイントはプロトコルがテキストベースだからというもの。
まさに、ジレンマ。ほんとに、そう思います。
現状であれば、ルーティングに関わる部分(ViaやRoute系)だけをバイナリ化できれば良さそうなのですが、そもそも、SIP-URIがテキスト形式ですし。。。
かといって、この辺りをヘタにいじってしまい互換が無くなってしまうと、SIPを使う意味がないと。(今までの資産(SIP Stack)が生かせなくなると、SIPを使う意味が無くなる。と、思う。)
対策として、ソフト内部処理では、テキスト形式で処理せず、扱いやすい数字、ビット列に直してしまうこともできる。これなら性能はあがるしメモリ量も大幅に削減できる。 しかし、そうするとそもそもSIPを使う必要があったのか?という疑問が生じてしまう。
で、実は、これが、某所Stackの裏目標でもあったりするのですが、なかなか、解を得るところに行ってません。orz
SIPサーバのソフトとして、これが最良であるというものを早く確立したいが、もう少し時間がかかりそうだ。
ということで、著者の沢村さんの今後に、とても期待します!
なんというか、このことを他に考えている人がいたというのが、素直にうれしい。。。
ついしん
このへん、良いネタをお持ちの方がいらっしゃいましたら、ぜひとも、こっそり教えてください。<(_ _)>
閑話休題
続いて、「SIP 性能課題(前回の続き)」という記事があり、ちょっと、気になったのでコメントを。
前回、SIPによる性能影響について書いたところある方からもう少し解説を、との意見をいただいた。
この「ある方」というのは、IMSのアプリケーション領域のSIPを想定しているのではないでしょうか?
(上記の次の行に、不穏な台詞もあるのですが。。。そこは、あえて無視で!)
アプリケーション領域であれば、SIPの処理より、アプリケーションとしての処理(DBアクセスや音声処理)の方が、圧倒的に高負荷のため、SIPの処理など気にする必要はないという
ですが、著者の沢村さんは、セッションを張るため(現状では、ルーティングがメイン)のSIPのことをおっしゃっているので、このような質問が来たのではないかと、邪推してみた次第です。
- by noritsuna
- at 14:24