シグナリングプロトコルとは
電話を相手にかけるとき、いきなり通話が始まるのではなく、受話器をあげて、ダイヤルして、呼び出し、相手も受話器をあげると言ったやり取りを行うことになります。
そのような通話前の一連のやり取りをシグナリング(呼制御)と言います。
シグナリングにより、電話の相手を特定し、通信チャネルを確保することで通話が始まるわけですが、その一連のやり取りの手順や仕組みが相手によって異なっていれば、当然、通話を始めることができません。
そこで、シグナリングの手順や仕組みを取り決めた、いわゆる約束事のことをシグナリングプロトコルと言います。
シグナリングプロトコルには、IETFなどの標準化団体によって標準化されたものやメーカー独自の方式など、様々な種類があります。
ただし現在は、プロトコルの統合が図られたことにより、標準化されたプロトコルが採用されるようになり、メーカー独自の方式が使われることはほぼありません。
IP電話で使われる代表的なシグナリングプロトコルには下記のような種類があります。
- SIP
- H.323
- RSVP
- MGCP
- Megaco/H.248
この中で特にSIPとH.323が採用されることが多くなっています。
下記はその特徴をまとめた表です。
SIP | H.323 | |
---|---|---|
標準化団体 | IETF | ITU-T(国際電気通信連合) |
符号化方式 | テキスト | バイナリ |
仕様の複雑さ | 単純(HTTPやSMTPに似ている) | 複雑(呼制御以外にも関与) |
伝送プロトコル | TCP or UDP(主にUDP) | TCP or UDP(主にTCP) |
機能拡張 | IETFで標準化 | メーカー固有の拡張が可能 |
SIPはH.323より後に策定されたプロトコルですが、Windows Messengerなどの代表的なVoIPアプリケーションやIP電話製品が対応したことにより、現在では最も代表的な存在となっています。
また、SIPはHTTPやSMTPに似たシンプルな構造となっているため、解析のしやすさについてもH.323より優位に立っている理由のひとつと言えます。
Asteriskは多様なシグナリングプロトコルに対応していますが、当サイトでは主にSIPを使用した構築手順を紹介していきます。