IMSにおけるプレゼンス・サービス
前回で解説したように、IMSは、さまざまなAS(アプリケーション・サーバ)を接続することによって、異なるアプリケーション・サービスを実現することができます。
1 プレゼンス・サービスとは?
プレゼンス・サービスとは、相手の通信状態や通信アドレスを知ることができるサービスで、すでにインターネットではおなじみです。このプレゼンス・サービスを、既存の回線交換の音声通信あるいはインスタント・メッセージングなどのマルチメディア通信と組み合わせることによって、エンド・ユーザーは、相手のプレゼンス状態に応じて通信手段を変更したりするなどの、より高度な通信サービスを利用することができます。
3GPP(第3世代共同プロジェクト)では、IETF(インターネット技術標準化委員会)で標準化されているプロトコル(通信手順)をベースに、IMS上でプレゼンス・サービスを実現し、3GPPリリース6で標準化されました。プレゼンス情報は、プレゼンス・タプル(TUPLE、組み合わせ)によって表現されます。
2 3種類のプレゼンス・タプル(組み合わせ)
プレゼンス・タプルは、大きく次の3つに分類されます。
(1)通信状態に関する情報:オンライン/オフラインなど現在の状態を示す。
(2)通信アドレスに関する情報:通信手段〔電話、SMS(Short Message Service、ショート・メッセージ・サービス)、電子メール、インスタント・メッセージなど〕と通信アドレス(電話番号、電子メール・アドレス、SIP URIなど)から構成される。
(3)その他のプレゼンス情報:フリー・テキストなど
プレゼンス・タプルを含むプレゼンス・モデルは、IETFのRFC 2778で規定されています。また、具体的なプレゼンス情報のフォーマットにも、RFC 3863およびその拡張であるRFC 4480などが、使用されています。
3 プレゼンス・サービスを実現するIMSアーキテクチャ
プレゼンス・サービスを実現するIMSアーキテクチャを、図1に示します。表1には図1の用語解説をしています。
《インタフェースの用語解説》
Pet:Watcherアプリケーションが、プレゼンス・リストの情報を設定するために使用される。IMSではUtインタフェースに相当。
Pw:Wathcerアプリケーションが、プレゼンス情報を取得するために使用される。IMSでは、Gm、MwおよびISCインタフェースに相当。
Px:Presentityプレゼンス・プロキシーがPSを見つけるために使用される。IMSでは、CxまたはDxインタフェースに相当。
Pwp:WatcherおよびPUAからPSにアクセスするためのインタフェース。IMSでは、ISCインタフェースに相当。
Pep:PUAが、Presentityのプレゼンス情報を提供するために使用される。IMSでは、Gmインタフェースに相当。
Peu:PUAが、PSのWatcherの承認ポリシーを設定するために使用される。IMSでは、Utインタフェースに相当。
Pen:各3GPPのネットワーク・エンティティから収集したプレゼンス情報をPSに提供するために使用される。
IMSは、SIPのルーティング機能や加入者の認証機能、課金機能などをプラットフォーム(基盤)として提供し、プレゼンス特有のアプリケーションは、ISCインタフェース上のアプリケーション・サーバ(AS)で実現されています。
プレゼンスでは、プレゼンス情報を提供する側をPresentity、また、監視する側をWatcher(ウォッチャー)と呼んでいます。プレゼンス・サービスを提供するASには、PS(Presence Server、プレゼンス・サーバ;図1の下部)とRLS(Resource List Server、リソース・リスト・サーバ;図1の上部)があります。前者は、Presentityからのプレゼンス情報を管理するサーバで、後者は、Watcherが監視する複数のPresentityをリスト化し、そのリストに含まれるPresentityの状態を集約してWatcherに提供するサーバです。
プレゼンス情報を伝達するためにはSIPプロトコルが使用され、
(1)SUBSCRIBE:Watcherのプレゼンス状態の監視の開始(加入)
(2)NOTIFY:Watcherのプレゼンス状態の通知
(3)PUBLISH:Presentityのプレゼンス状態の送信などのSIPメッセージが使用されます。
図2(1)~(5)に、これらのメッセージを利用した信号シーケンスの例を示します。
(1)Watcherは、RLS(リソース・リスト・サーバ)に対してSUBSCRIBEメッセージを送信し、リストのプレゼンス状態の監視を開始すると、
(2)RLSは、PS(プレゼンス・サーバ)に対してSUBSCRIBEメッセージを送信し、リスト内の各ユーザーのプレゼンス状態の監視を開始します。
(3)先に述べた(1)、(2)についての動作はユーザーごとに繰り返され、加入者の状態がNOTIFYメッセージによりWatcherに通知されます。
(4)Presentityがプレゼンス情報を更新したい場合には、PUBLISHメッセージが使用されます。
(5)PUBLISHメッセージを受信したPSは、NOTIFYメッセージによりRLS経由でWatcherへとプレゼンス情報の更新を通知します。
Presentityは、自分のプレゼンスを監視しているWatcherの情報を、PSからNOTIFYメッセージにより通知してもらうことも可能です。これには、IETFのRFC 3857とRFC 3858が使用されています。
PSに付随するWatcherのプレゼンス監視に対する承認ポリシーや、RLSに付随するPresentityのリストなどの情報は、XML文書という形式でXDMS(XML文書管理サーバ)に蓄積されています。これらのXML文書内の設定情報の追加や変更、削除に関しては、XCAPと言われるHTTPベースのプロトコルが使用されます。
PoC(プッシュ・ツー・トーク)
PoC(Push-To-Talk over Cellular)とは、携帯端末上で行うIPトランシーバ・サービスです。ユーザーは、1対1または1対多の半二重通信を行うことが可能です。
このサービスの概念は、アメリカでネクステル(Nextel)という会社が固有な方式を用いることで提供されましたが、その後、OMA(Open Mobile Alliance)でIMSを利用して標準化され、標準的な方式での実現が可能となりました。3GPPでは、OMA PoCフェーズ1の標準化にあわせて、リリース6で検討されました。
PoCサービスは、通信の特性上PoCサービス独自の機能が必要になります。例えば、1対多通信を行うために1人の発生した音声を複数の人に複製配信する機能が必要です。
また、半二重通信という特性上、同時に発言することのできる話者は1人に限定されるため、複数の人が同時に発言しない機能(フロア制御と呼ばれる)機能を必要になります。
1 PoCの通信モードとアーキテクチャ
【1】PoCの3つのグループ方式
PoCでは、先に述べたように、1対1の通信以外に、1対多の通信(グループ・コール)を行うことも可能ですが、その場合は、次のような3つのグループ方式が規定されています。
(1)事前設定グループ
通信を行いたいグループをあらかじめ設定しておく。事前設定されたグループ・メンバーのみ参加可能。
(2)アドホック・グループ
臨時(アドホック)で通信を行いたいときにグループ・メンバーを招待。ホストに招待されたメンバーのみ参加可能。
(3)チャット・グループ
任意のユーザーが参加可能。これらの方式とは別に、PoCセッションを開始しないで、他のユーザーを呼び出して呼び返しを促す、インスタント・パーソナル・アラートいう機能や、着信セッションや着信インスタント・パーソナル・アラートを規制する機能も規定されています。
【2】PoCのアーキテクチャ
PoCのアーキテクチャを、図3に示します。IMSにPoCサーバをASとして配備することによって、半二重通信のためのフロア制御や1対多通信のための音声メディアの複製など、PoC独自の機能を実現します。
PoCサービスの実現には、PoCサーバに加えてプレゼンス情報を提供するPSの機能や、XML文書を管理するXDMSの機能も併用してPoCサービスが提供されます。
【3】PoCサーバの2つの役割
PoCサーバには、制御PoC機能と参加PoC機能の2つの役割が存在します。制御PoC機能では、PoCセッションの集中制御、音声メディアのグループへの配信、集中フロア制御、参加者情報の提供などを実現し、参加PoC機能では、個々のPoCユーザーのセッション制御、個々のPoCユーザーの着信規制機能などを実現しています。
2つの機能は、同一のPoCサーバに実装することも可能です。
1対1通信またはアドホック・グループ通信の場合は、メンバーや相手を招待したPoCユーザーのPoCサーバが、また事前設定グループ通信の場合は、グループを収容しているPoCサーバが制御PoC機能を実施します。また、参加PoC機能については、個々のPoCクライアントが接続するPoCサーバが実施しています。
2 PoCの2つのセッション設定方式
PoCの信号方式には、次の2つのセッション設定方式が規定されています。
【1】オン・デマンド・セッションとは?
オン・デマンド・セッションとは、発信者とPoCサーバの間のセッションを、オン・デマンドで(必要なときに)設定する方式です。この方式には、着信者のPoCサーバが自動応答するパターンと、着信者が手動で応答するパターンの2つのパターンが存在します。図4に、1対1通信で、発着信者ともオン・デマンド・セッションで着信者のPoCサーバで自動応答するパターンを示します。
オン・デマンド・セッションによる通信では、必要に応じて発信者はINVITEメッセージによってセッションの設定を開始します(1)。着信者BのPoCサーバでは自動応答の設定がされているため(2)、自動的に発信者Aへ183 Session Progressメッセージを応答すると同時に(3)、着信者BをINVITEメッセージにより呼び出します(4)。この時点では自動応答のため、まだ着信者が本当に応答するかどうかの確認はされていません。発信者AのPoCサーバでは発信者Aとの間のセッションの設定を完了し、発信者Aの発言が可能になります(5)。
これと同時並行して、着信者BのPoCサーバは着信者Bからの200 OK応答メッセージを受信し、着信者Bの応答を本当の応答と確認し(Comfirmed)、発信者AのPoCサーバへと通知します(6)。この後、発信者AのPoCサーバと着信者Bの間のセッションの設定が完了し、音声メディア・パケットがBへと到達します。
着信者が呼び出されている間に発信者がしゃべった場合は、発信者のPoCサーバで音声メディア・パケットがバッファ(蓄積)されていて、着信者から200 OK(成功応答)メッセージが帰ってきた時点で、着信者への音声メディア・パケットの伝達が可能になります。トーク・バースト接続、トーク・バースト承諾、トーク・バースト受信中などを示すフロア制御には、SIPではなくRTCP(リアルタイム・データ転送制御プロトコル)というプロトコルが使用されています。
【2】事前設定セッション方式
事前設定セッション方式とは、発信者とPoCサーバの間のセッションを事前に設定しておく方式です。オン・デマンド・セッションと同様に、着信者のPoCサーバが自動応答するパターンと、着信者が手動で応答するパターンの2つが存在します。
図5に、1対1通信で、発着信者とも事前に設定したセッションによって、着信者のPoCサーバで自動応答するパターンを示します。発信者からPoCサーバまで事前設定したセッションを利用して、PoCサーバから着信者のPoCサーバまでのセッションを設定する手順には、REFER(他者への参照)というSIPメッセージが使用されています。
事前設定セッションによる通信では、発信者AとそのPoCサーバ、着信者BとそのPoCサーバとの間にすでにセッションが設定されています(1)、(1’)。発信者Aは、設定されているセッションの中で、REFERメッセージをPoCサーバに送信し(2)、PoCサーバは、INVITEメッセージにより着信者Bとの間のセッションの設定を開始します(3)。BのPoCサーバでは自動応答の設定がされているため、自動的に200 OK応答メッセージを返送します(4)。自動応答を受信した発信者AのPoCサーバは、発信者AにNOTIFYメッセージによりセッションが確立したことを通知し、通話が可能になります(5)。
■■■
用語解説
●フロア制御 Floor Control、発言権制御。PoCでは、半二重通信のため一度に1人の参加者しか発言することができない。フロア制御とは誰が発言するか、その順番の調停を行う機能のことである。例えば発言権の要求や発言権の許可、発言要求の拒否、発言中の表示、発言終了の表示などが挙げられる。
●アドホック・グループ 事前設定とは異なり、必要に応じて通話したいときに臨時に設定するグループ。
●トーク・バースト PoCサービスで発言者が通話中に流れるバースト的(一時的)な音声パケットのこと。