Session Initiation Protocol
- 1. SIPとは
- 2. Session Description Protocol
- 3. Realtime Tranport Protocol
- 4. SIPセッション流れ
- 5. HTTPダイジェスト認証
1. SIPとは
- 端末(User Agent)間のセッションを制御する機能を持つ(どんなデータでも扱える?)(RFC3261)
- インスタントメッセージ機能を持つ(RFC3428)
- イベント通知機能を持つ(RFC6665)
2. Session Description Protocol
- SIPのセッションの詳細を規定したプロトコル
3. Realtime Tranport Protocol
- ストリーミング配信などリアルタイム性を確保しながらデータを再生する仕組みを提供する
4. SIPセッション流れ
基本的には以下のような流れ
- スリーウェイハンドシェークでセッションの生成
- INVITE
- OK
- ACK
- 通話などリアルタイムでのやり取り
- セッションの切断
- BYE
- OK
Source | Destination |
---|---|
=INVITE=> | |
<=OK= | |
=ACK=> | |
SIPサーバを用いる場合(UAが互いのIPアドレスを把握していない場合)
Source | SIP Server | Destination |
---|---|---|
=INVITE=> | ||
=INVITE=> | ||
<=100 Trying= | ||
<=180 Ringing= | ||
<=180 Ringing= | ||
<=200 OK= | ||
<=200 OK= | ||
=ACK=> | ||
5. HTTPダイジェスト認証
- チャレンジレスポンス方式
- チャレンジ値とユーザ名のハッシュ値が一致することを確認して認証を行う