基礎から始めるIP-PBX [第2回 シグナリングにおけるIP-PBXの仕組み]


基礎から始めるIP-PBX [ 第2回 シグナリングにおけるIP-PBXの仕組み]

 

まずは第一回のおさらいから。IP-PBXについて前回以下の2点について紹介しました。

  • IP-PBXはいわゆるサーバーであり、IPネットワーク、つまりWANやLAN経由でIP電話端末やソフトフォンと接続。
  • 従来の電話でいう所のPBXが行っていた回線交換をIPネットワークで行う。


これら前回でつかんだイメージをふまえ、今回は一歩踏み込んで次の2つについて紹介します。

  • SIPサーバの機能とIP-PBXサーバの機能は何が違う?棲み分けは?
  • 具体的にIP-PBXを実現しているVoIP技術とは?

 

それでは、見ていきましょう。


IP-PBXはSIPサーバをベースとして、その上で付加機能を提供する。
一口にIP-PBXと言っていますが、その中の仕組みは大きく分けて2つに分けられます。


1.    SIPサーバ機能(SIPレジスター,SIPプロキシ,セキュリティ機能等)


2.    呼制御、ダイヤリング,コーデック変換、転送,保留,留守番電話,IVR,オートアテンダント、電話会議機能など。(どちらかというと狭義のIP-PBX機能)


また、従来はコールセンターシステムの機能の一部として位置付けられている、全通話録音高性能ダイヤラー、スケジュール機能、IVRデザイン、ACDなどについてもIP-PBXのオプション機能として見られる場合があります。
このため、広義の意味でのIP-PBXは基本的に内部に1のSIPサーバの機能がバンドルされており、この機能の上で2のような付加機能が稼働している構成が一般的と考えてよいでしょう。 この1と2の機能は製品によってはアプリケーションとして一つになっているものもあれば、別プロセス(別アプリケーション)として稼働している製品もあります。


IP-PBXは普通の言語でコーディングされている。
「PBX」というと、何か特殊な古臭い言語で書かれているイメージがありますが、現在のIP-PBXは普通の言語で書かれています。オープンソースで有名なAsteriskはC言語ベースです。また、どのようなプラットフォームでも稼働できるようにJavaでコーディングされているものもあります。(Brekekeなど。)

 

IP-PBXはSIPの視点で見るとUA(ユーザエージェント)として働く。

現在のIP-PBXはその電話のシグナリングのプロトコルとしてSIP(Session Initiation Protocol)を採用しています。
SIPのプロトコル自体はRFC3261(SIP: Session Initiation Protocol)で詳しく定義されています。
今回はプロトコルの話ではありませんので詳細は別の回に譲ります。また、興味のある場合は上記のRFC3261とこちらの記事もご参照ください。
話を戻して上記の構成が、IP-PBXが入るとどのようになるのでしょうか。わかりやすくするため、まずSIPサーバとSIP電話機だけの図を例に挙げます。

sip_explanation1
この場合、各UAであるSIP端末は相手へコールする場合、相手のSIPアドレスを事前に知っておく必要があります。SIPサーバはこのアドレスを元にコール先のSIP端末Bの実アドレスへメッセージを送ります。


ここでIP-PBXが入ると以下のようになります。

sip_explanation2

IP-PBXは仮想のUAとしてSIP端末からのコールを受け、さらに仮想のUAとしてコール先のSIP端末をコールします。この時、IP-PBXは自身の持つ「内線番号とSIPアドレス(uri)の対応表」を元に回線交換を行っています。このため、SIP端末AはSIPアドレスではなく、電話番号を指定することで端末Bをコールすることができます。

 

 

いかがでしたでしょうか。今回はシグナリングにおけるIP-PBXの仕組みを中心としてお話ししましたが、セッション確立後においてもIP-PBXは重要な役割を果たしています。その点についてはまた次回以降どこかでご紹介します。

 

 

>>基礎から始めるIP-PBX [第3回 FXS/FXO との接続を理解する]

3 thoughts on “基礎から始めるIP-PBX [第2回 シグナリングにおけるIP-PBXの仕組み]

コメントを残す