SIP 入門 ~ プロトコル概要から SIP の適用 将来像まで ~ Internet Week 2003( 公開用 ) ( 株 ) ソフトフロント www.softfront.co.jp 取締役阪口克彦 sakaguchi@softfront.co.jp 2003/12/03 2003 Softfront. All rights reserved. 030618 v1.0
そもそも SIP とは?
とは SIP(Session Session Initiation Protocol) とは! インターネットの標準化団体 IETF (Internet Engineer Task Force) が標準化を進めている SMTP HTTP に続くインターネットの第 3 の注目プロトコル! P2P のインターネットマルチメディアコミュニケーションプロトコル! 応用分野! VoIP での応用! IP 電話 TV 電話 ビデオ会議などで使われるサーバ 端末! コールセンター 企業内電話システム セントレックスサービス等のシステム! VoIP 以外での応用! チャット ( インスタントメッセージ )! プレゼンス ( 状態検知と通知 )! 家電などのリモート制御 2003 Softfront. All rights reserved. 3
SIP の略歴 1996 年 MMUSICで2つの案 SIP(Session Invitation Protocol) Mark Handley 氏 SCIP(Simple conference Invitation Protocol) Henning Schulzinne 氏 1996 年 2つの案の統合 SIP(Session Initiation Protocol) となる 1999 年 3 月 SIP が RFC2543 として認められる 2002 年 6 月様々な改訂提案を取り入れRFC3261となる 2003 Softfront. All rights reserved. 4
SIP の概要
SIP= シグナリングプロトコル! SIP の提供する主な機能! 通信しようとする相手の場所 (IPアドレスなど) の解決! 通信を要求されたユーザーが その通信を行うことを望むかどうかの判定! セッションにおいて使用されるメディアとそのパラメータの決定! セッションの開始! セッションの管理! セッションの転送 終了! パラメータの変更! サービスの要求! メディアの制御 転送などは既存のプロトコルを使用する 2003 Softfront. All rights reserved. 6
SIP プロトコル構成! アプリケーション層のプロトコル! サポートする必要のあるトランスポートプロトコル! UDP/TCP/TLS! デフォルトポート UDP/TCP を使う場合 5060/TLS を使う場合 5061 AV アプリケーション 端末制御と管理 アプリケーション層 音声 映像コーデック RTCP SIP SDP RTP トランスポート層 UDP TCP TLS SCTP ネットワーク層 I P ネットワークインターフェース層 データリンク層物理層 2003 Softfront. All rights reserved. 7
SIP ネットワークの主な構成要素 SIP Server SIP Server internet SIP GW PSTN SIP UserAgent (SoftPhone) SIP UserAgent (SIP Phone) SIP UserAgent (PDA SoftPhone) SIP UserAgent (RGW) UserAgent!PC SoftPhone!HardPhone!PDA SoftPhone!RGW SIP Server!Proxy!Redirect!Registrar!Location 2003 Softfront. All rights reserved. 8
ユーザーエージェント! SIP ネットワークの端末デバイス! SIP 電話端末! パソコンや PDA で動作する SIP クライアントソフトウェア! ゲートウェイ! UAC(User Agent Client) と UAS(User Agent Server) の機能モジュールで構成される! UAC リクエストを開始する機能モジュール! UAS 受け取ったリクエストに対するレスポンスを生成する機能モジュール UAC (User Agent Client) UAS (User Agent Server) ユーザーエージェント 2003 Softfront. All rights reserved. 9
プロキシサーバ! SIP リクエスト レスポンスを中継 Bob 1Alice へ電話したい 2Alice のアドレスは? 4Alice へ中継 プロキシサーバ 3xxx.xxx.xxx.xxx です ロケーションサーバ Alice 2003 Softfront. All rights reserved. 10
リダイレクトサーバ! SIP リクエストに対し 位置情報を返す Bob 1Alice へ電話したい 4xxx.xxx.xxx.xxx です 2Alice のアドレスは? 3xxx.xxx.xxx.xxx です 5Alice へ電話 リダイレクトサーバ ロケーションサーバ Alice 2003 Softfront. All rights reserved. 11
レジストラ! UA の登録要求を受付 ロケーション登録 Bob 1 私のアドレスは xxx.xxx xxx.xxx xxx.xxx です 2 アドレスを登録 Alice 1 私のアドレスは xxx.xxx xxx.xxx xxx.xxx です レジストラ ロケーションサーバ 2003 Softfront. All rights reserved. 12
処理シーケンス Bob SIP-Server Server!Proxy!Registrar!Location Alice REGISTER( 位置情報登録 ) REGISTER( 位置情報登録 ) INVITE(Alice を電話に招待 ) Alice の位置情報を解決 リクエスト レスポンスを中継 200 OK(Bob の電話に出る ) ACK 音声データ (RTP ( RTP-Session) 2003 Softfront. All rights reserved. 13
リクエスト例 INVITE INVITE sip:bob@tokyo.com sip:bob@tokyo.com SIP/2.0 SIP/2.0 Via: Via: SIP/2.0/UDP SIP/2.0/UDP pc33.sapporo.com;branch=z9hg4bknashds8 pc33.sapporo.com;branch=z9hg4bknashds8 Max-Forwards: Max-Forwards: 70 70 To: To: Bob Bob <sip:bob@tokyo.com> <sip:bob@tokyo.com> From: From: Alice Alice <sip:alice@sapporo.com>;tag=1928301774 <sip:alice@sapporo.com>;tag=1928301774 Call-ID: Call-ID: a84b4c76e66710@pc33.sapporo.com a84b4c76e66710@pc33.sapporo.com CSeq: CSeq: 314159 314159 INVITE INVITE Contact: Contact: <sip:alice@pc33.sapporo.com> <sip:alice@pc33.sapporo.com> Content-Type: Content-Type: application/sdp application/sdp Content-Length: Content-Length: 142 142 v=0 v=0 o=alice o=alice 53655765 53655765 2353687637 2353687637 IN IN IP4 IP4 pc33.sapporo.com pc33.sapporo.com s=t=0 s=t=0 0 0 c=in c=in IP4 IP4 pc33.sapporo.com pc33.sapporo.com m=audio m=audio 3456 3456 RTP/AVP RTP/AVP 0 0 a=rtpmap:0 a=rtpmap:0 PCMU/8000 PCMU/8000 スタートラインヘッダフィールド空行ボディ ( 例では SDP) 2003 Softfront. All rights reserved. 14
レスポンス例 SIP/2.0 SIP/2.0 200 200 OK OK Via: Via: SIP/2.0/UDP SIP/2.0/UDP pc33.sapporo.com;branch=z9hg4bknashds8;received=192.0.2.3 pc33.sapporo.com;branch=z9hg4bknashds8;received=192.0.2.3 To: To: Bob Bob <sip:bob@tokyo.com>;tag=456720025 <sip:bob@tokyo.com>;tag=456720025 From: From: Alice Alice <sip:alice@sapporo.com>;tag=1928301774 <sip:alice@sapporo.com>;tag=1928301774 Call-ID: Call-ID: a84b4c76e66710@pc33.sapporo.com a84b4c76e66710@pc33.sapporo.com CSeq: CSeq: 314159 314159 INVITE INVITE Contact: Contact: <sip:bob@192.0.2.4> <sip:bob@192.0.2.4> Content-Type: Content-Type: application/sdp application/sdp Content-Length: Content-Length: 142 142 v=0 v=0 o=bob o=bob 2890844730 2890844730 2890844730 2890844730 IN IN IP4 IP4 pc33.sapporo.com pc33.sapporo.com s=t=0 s=t=0 0 0 c=in c=in IP4 IP4 192.0.2.4 192.0.2.4 m=audio m=audio 3456 3456 RTP/AVP RTP/AVP 0 0 a=rtpmap:0 a=rtpmap:0 PCMU/8000 PCMU/8000 スタートラインヘッダフィールド空行ボディ ( 例では SDP) 2003 Softfront. All rights reserved. 15
SIP URI! sip:alice@sapporo.com! sip:alice@192.0.2.4! sip:alice@sapporo.com;maddr=172.16.17.102! tel:+358-555-1234567! sip:+358-555-1234567@foo.com;user=phone! sips: alice@sapporo.com 2003 Softfront. All rights reserved. 16
メソッド種類 メソッド名 INVITE ACK CANCEL BYE REGISTER OPTIONS INFO PRACK UPDATE REFER SUBSCRIBE NOTIFY MESSAGE 内容セッション参加リクエスト INVITEに対する最終レスポンスの確認セッションの終了進行中のセッションのキャンセルユーザのURIの登録オプション機能や能力についての問い合わせミッドコールシグナリング暫定的なレスポンスに対する確認リクエスト SDPによるメディアネゴシエーションの更新別のURIへの呼の転送イベントの通知要請要請されているイベント通知の伝送メッセージボディを使ったIMの伝送 2003 Softfront. All rights reserved. 17
レスポンス種類 種類 1xx 2xx 3xx 4xx 5xx 6xx 内容 暫定応答 成功 リダイレクト応答 リクエストエラー応答 サーバエラー応答 グローバルエラー応答 説明 リクエストが受信され 処理中であることを知らせる 100 Trying / 180 Ringing / リクエストが成功したことを知らせる 200 OK リクエストを別の場所におくる必要がある 301 Moved Permanetly / 302 Moved Temporary / リクエストにエラーがあるため処理できなかった 400 Bad Request / 404 Not Found / 486 Busy / サーバでエラーが発生したため処理できなかった 500 Server Internal Error / リクエストがどのサーバでも実行できなかった 600 Busy Everywhere / 603 2003 Softfront. All rights reserved. 18
ヘッダの種類 ヘッダ 内容 Call-ID Contact CSeq From To Via Content-Type Content-Length Max-Forwards 1 つの通信を識別するユニークな ID ユーザーが直接通信するための URI 情報トランザクション毎にインクリメントされる値リクエストの生成元を表すリクエストの着信先を表すリクエストが辿ったパス ( 経路 ) を示し レスポンスを返す際にこの情報が元になるボディ部のメディアタイプを示すボディ部のサイズリクエストをフォワードできる Proxy Gateway を制限フォワードする都度値がデクリメントされる 2003 Softfront. All rights reserved. 19
当社開発環境のサポートする SIP Method!INVITE!BYE!ACK!CANCEL!OPTIONS!REGISTER!INFO!PRACK!SUBSCRIBE!NOTIFY!MESSAGE!REFER セッション参加リクエスト RFC 3261 セッション終了 RFC 3261 INVITE に対する最終レスポンス確認 RFC 3261 進行中セッションのキャンセル RFC 3261 オプション機能 / 能力について問い合わせ RFC 3261 ユーザの URI を登録 RFC 3261 ミッドコールシグナリング RFC 2976 暫定的なレスポンスに対する確認リクエスト RFC 3262 イベントの通知要請 RFC 3265 要請されたイベントの通知 / 伝達 RFC 3265 メッセージボディを使った IM の伝送 RFC 3428 別 URI へ呼を転送 RFC 3515 2003 Softfront. All rights reserved. 20
当社開発環境の準拠する仕様!RFC RFC3261 : Session Initiation Protocol ( 旧版 : RFC2543) RFC2327 : Session Description Protocol RFC2617 : HTTP Authentication: Basic and Digest Access Authentication RFC2976 : The SIP INFO Method RFC3262 : Reliability of Provisional Responses in the Session Initiation Protocol (SIP) RFC3264 : An Offer/Answer Model with Session Description Protocol RFC3265 : Session Initiation Protocol (SIP)-Specific Specific Event Notification RFC3323 : A Privacy Mechanism for the Session Initiation Protocol (SIP) RFC3325 : Private Extensions to the Session Initiation Protocol l (SIP) for Asserted Identity within Trusted Networks RFC3420 : Internet Media Type message/sipfrag sipfrag RFC3428 : Session Initiation Protocol Extension for Instant Messaging! インターネットドラフト SIP Call Control - Transfer(draft draft-ietf-sip-cc-transfer-05) The SIP Session Timer (draft-ietf ietf-sip-session-timer-10) The SIP Refer Method(draft draft-ietf-sip-refer-07) The Session Inititation Protocol (SIP) "Replaces" Header(draft draft-ietf-sip-replaces-03.txt) An Extension to the Session Initiation Protocol (SIP) for Symmetric Response Routing (draft-ietf-sip-symmetric-response-00) The SIP Referred-By Mechanism(draft draft-ietf-sip-referredby-01) 2003 Softfront. All rights reserved. 21
SIP WG! SIP 標準化に関連する団体 (IETF の SIP/WG)! Session Initiation Protocol (sip) SIP の仕様を検討! Session Initiation Proposal Investigation (sipping) 電話やマルチメディアアプリケーションへの応用! SIP for Instant Messaging and Presence Leveraging Extensions (simple) SIP によるインスタントメッセージングとプレゼンスについて検討! Multiparty Multimedia Session Control (mmusic) IP 電話やマルチメディアサービスを検討シグナリングプロトコルの検討は SIP/MEGACO 等に委譲 SDP について検討! Audio/Video Transport (avt) RTP ペイロードフォーマットなどを検討 2003 Softfront. All rights reserved. 22
SIPで実現できるサービス
SIP で実現できるサービス機能! SIP を使った IN サービス! 保留 転送 三者会議 着信制限 発信制限等! ユーザプリファレンスを使ったサービス! 発呼側プリファレンス! 一斉発呼や 発呼側情報 ( サポート機能 発信者情報など ) の指定! 着呼側プリファレンス! 着信規制 時刻 発呼側の情報 呼の内容等によるコントロール! 動的なサービスカスタマイズ! 多地点マルティメディア会議! 音声 画像 テキスト アプリケーションなどを使った会議! モビリティ! ターミナルモビリティ ( 同一ネット内の移動 )! パーソナルモビリティ ( 異なる端末で同一番号 )! サービスモビリティ ( 異なる場所で同一サービス ) 2003 Softfront. All rights reserved. 24
SIP で実現できるサービス機能! プレゼンスと IM! ポライトコール 自動コールバック 位置情報把握等 2003 Softfront. All rights reserved. 25
SIP で実現できるサービス機能! プレゼンスと IM! 何故 SIP のプレゼンスと IM なのか?! 相互運用性のある標準プロトコル! あらゆる種類の通信で有効な手段! SIP の機能で既に端末登録 認証などが解決済み! SIP アーキテクチャは分散的で拡張性がある! SIP プレゼンスでサポート可能なコミュニケーション! テキスト 音声 画像! Web ページ共有! アプリケーション共有! 対話型ゲーム! Etc.! 従来のテレフォニー 通信を大きく変える可能性! サービス : コールセンター 会議システム等! デバイス :SIP-Phone PDA IP 家電等 2003 Softfront. All rights reserved. 26
SIP で提供されるサービス! ホームユーザ向け IP 電話サービス ( キャリア系 ) 一般加入電話 Class5 SoftSwitch ( 加入者交換機能 ) SoftPhone 一般加入電話 公衆回線交換網 常時接続 ISP A 社 ( インターネット ) SoftPhone Class4 SoftSwitch キャリア IP 網 SoftPhone 公衆回線交換網 Class4 SoftSwitch Class5 SoftSwitch ( 加入者交換機能 ) 常時接続 ISP B 社 ( インターネット ) RGW アナログ電話 一般加入電話 一般加入電話 SoftPhone RGW アナログ電話 2003 Softfront. All rights reserved. 27
SIP で実現されるサービス! 企業向け IP 電話サービス ( セントレックス導入タイプ ) 公衆回線交換網 Class4 SoftSwitch ( 中継交換機能 ) Class5 SoftSwitch (ASP 機能 ) キャリア IP 網 IP-VPN B 社支店 LAN 一般加入電話一般加入電話 IP-VPN IP 電話 IP 電話 IP 電話 IP-VPN IP-VPN B 社本社 LAN A 社本社 LAN A 社支店 LAN IP 電話 IP 電話 IP 電話 IP 電話 IP 電話 SoftPhone IP 電話 IP 電話 2003 Softfront. All rights reserved. 28 SoftPhone
SIP で実現されるサービス! 企業向け IP 電話サービス ( サーバ導入タイプ ) 公衆回線交換網 Class4 SoftSwitch ( 中継交換機能 ) キャリア IP 網 Class5 SoftSwitch ( 加入者交換機能 ) 一般加入電話一般加入電話 IP-VPN 社員 DB 社内システム A 社支店 LAN IP-VPN SIP Application Server (SIP Proxy, Registrar) A 社本社 LAN IP-VPN A 社支店 LAN IP 電話 IP 電話 IP 電話 IP 電話 SoftPhone SIP-GW 既存内線網 SIP-PHS GW 社内 PHS 網 IP 電話 IP 電話 SoftPhone PHS PHS PHS 2003 Softfront. All rights reserved. 29
SIPの現状
SIP で提供されているサービス! 導入事例 : ケイ オプティコム様 TEL Vision ネットワーク Class4 Soft Switch キャリア IP 網 SS7 アンテナ 無線基地局 FTTH お客様宅内 無線機 ルータ Voice ルータ RGW アナログ電話 SoftPhone eo メガエア FTTH FTTH FTTH FTTH お客様宅内 ONU ルータ Voice ルータ RGW Web サーバ I P 交換機 SIP サーバ 公衆回線交換網 一般加入電話一般加入電話 アナログ電話 SoftPhone eo ホームファイバー 2003 Softfront. All rights reserved. 31
SIP で提供されているるサービス! ソフトフォンの例 2003 Softfront. All rights reserved. 32
SIP で提供されているサービス! 企業向け IP 電話サービス (KISARA Office 導入例 ) インターネット ルータ ルータ KISARA Office Server (SIP Proxy, Registrar) 拠点間 VPN KISARA Office Client KISARA Office Client SIP-GW KISARA Office Client KISARA Office Client SIP-GW PBX PBX Softfront 札幌本社 アナログ電話アナログ電話 アナログ電話アナログ電話 Softfront 東京オフィス 地域公衆回線交換網 地域公衆回線交換網 携帯電話 一般加入電話 一般加入電話 携帯電話 一般加入電話 一般加入電話 2003 Softfront. All rights reserved. 話 33
SIP で提供されているサービス! 企業向け IP 電話サービス (KISARA Office 導入例 ) 2003 Softfront. All rights reserved. 34
SIP の最新トピック! IP Centrex や IP PBX で使われる内線機能など標準化?! draft-ietf-sipping-service-examples-04.txt! マルチメディア会議の議論が活発?! XCON WG が発足! NAT&Firewall! STUN TURN -" ICE(Interactive Connectivity Establishment )! ENUM! MMUSIC WG でドラフト! IPv4 から IPv6 への変換にも有用! ETJP が日本で発足! ソフトフロントも ENUM を使うサーバを提供! 既に 20 カ国以上で試験運用開始 2003 Softfront. All rights reserved. 35
SIP の将来性
SIP の将来性! 新端末と新サービスの出現! 端末! 単なる電話 PC 以外の端末! 事務機 家電 制御機器 ( セキュリティ等 )! 今までにないコミュニケーション端末! TV+ 電話 PC+ 電話! 新サービス! セキュアな P2P サービス! Homeマネージメント & セキュリティ! 遠隔医療 監視サービス等! 商用 SIP プラットフォーム出現! VoIP だけのプラットフォームではなく 新たなビジネスが創生される場所! サービス提供者 : セキュアで 課金管理が出来る場所! エンドユーザ : 電話網の延長で使える 2003 Softfront. All rights reserved. 37
SIP の将来性! SIP の P2P サービス ServiceProvider 認証情報 認証情報 プレゼンス AV Device Control 認証機能 課金機能 アドレス解決 能力ネゴシエーション 暗号化ネゴシエーション TV 録画 リモート再生 Home Security PC 端末 モバイル端末 呼制御 認証 暗号化 SIP Network 施錠管理監視カメラ Home Management 携帯電話照明空調 2003 Softfront. All rights reserved. 38
SIP の将来性 IT 機器 IP 家電 SIP 網 IP 産業財 ゲートウェイ / ソフトスイッチ 電話網 電話機 2003 Softfront. All rights reserved. 39
SIP の将来性 市場規模 SIP 市場の拡大 IP 家電 IP 産業財市場 IP 電話市場 2003 Softfront. All rights reserved. 40
最後に http://www.softfront softfront.co..co.jp/ SIP パートナープログラム最新情報 SIP 関連 RFC/draft 和訳テキスト! 参考書籍 SIP 教科書 ISBN 4-87280-487-2 マスタリング TCP/IP SIP 編 ISBN 4-274-06492-1 2003 Softfront. All rights reserved. 41