[[FrontPage]]

*全体ブロック [#j36e5556]
下記の4つを一つの単位としたモジュール化されたレイヤー構造。~
現時点では、「SIP」に関連したモジュールのみを持つ。今後、追加されていく予定。~
内部の基本的な構造は、[[Ver.1.0:http://www.siprop.org/ja/1.0/index.php?%A5%A2%A1%BC%A5%AD%A5%C6%A5%AF%A5%C1%A5%E3]]と変わっていない。具体的な変更点は、[[こちら:http://www.siprop.org/ja/2.0/index.php?%B3%AB%C8%AF%2F%C0%DF%B7%D7%2F%CA%D1%B9%B9]]を参照のこと。
-[[B2BUA層>アーキテクチャ#x822d841]]
-[[UA層>アーキテクチャ#o5ef0e7c]]
-[[Stack層>アーキテクチャ#acea1eb5]]
-[[Transport層>アーキテクチャ#ab4f0974]]

***設計 [#q4539283]
-詳細については、[[設計>開発/設計]]を参照のこと


*B2BUA層 [#x822d841]
UA間を接続するために必要な動作(実装)を定義する層~
SIPとしては、Call(複数のトランザクションやダイアログ)に関して責任を持つ。

**機能 [#d6c107fa]
UAを動作させるための動作手順を記述(プログラミング)する。


*UA層 [#o5ef0e7c]
単一の機能単位で機能(実装)されている層~
B2BUAが使用するためのモジュール(API)として、存在している。


**機能 [#w3021a7d]
2つ以上のUAを組み合わせて、1つのUAとして使用するインタプリタ的な動作をする。~

 例:
 認証UA⇒アーリートーキUA⇒通話UA

というように、単機能を持ったUAを複数使用することにより、通話用UAとして動作させるようなイメージである。~
この組み合わせの指定を、B2BUAからプログラミングして、簡易インタプリタで処理している。


*Stack層 [#acea1eb5]
SIP Stackとしての機能を持つ層~
SIPとしては、トランザクションレベルの処理に対して、責任を持つ。

**機能 [#d0721efc]
-トランザクションの処理に特化させる
--それ以上の処理は、UA層に任せる


*Transport層 [#ab4f0974]
[[MINA:http://mina.apache.org/]]を全面的に採用したSocketレベルの処理を扱うための層