要約

  • RFC 3054はIP電話を単純なMegaco Media Gatewayとして表し、既知のTermination名と最小プロファイルによって、Media Gateway ControllerがPackageだけから機能を推測せずに構成を理解できるようにした。
  • IPPhoneの宣言と受理は、オプション機能、物理状態、論理Context、RTP経路、復号音声、利用者の体験を証明しない。それぞれに別の受領証が必要だった。

2001年1月、インターネット電話の知能には二つの置き場所があった。端末自身が呼制御を多く担う方法と、机上の装置を簡素に保ち、遠隔コントローラーへアプリケーション判断を委ねる方法である。

RFC 3054は後者を具体化した。電話そのものがMedia Gatewayとなり、Media Gateway Controllerが主要なアプリケーション知能を持つ。電話はユーザーインターフェース、受話器、ハンズフリー、ヘッドセット、RTPストリームを論理部品として公開し、MGCがMegaco/H.248で発見し操作する。

これはInformational RFCであり、製品や導入、通話成功の記録ではない。歴史的な価値は、異なる装置の間の事前合意を一つのプロファイル名に圧縮しつつ、実在する部品と結果の確認を残した点にある。

机上の電話がMedia Gatewayになった

Media Gatewayは、多数の回線を終端し異種ネットワークをつなぐ大型装置を連想させる。RFC 3054では、そのモデルが一台の電話まで届いた。利用者の端末が音声入出力と操作部を直接実装し、一つのMGCが多数の電話MGを制御できる構図だった。

責任の分離は明瞭である。端末はメディアとUIの動作を実行し、MGCはそれらを通話へどう参加させるか決める。キー入力はEventとなりNotifyで送られる。表示やランプはSignalに反応する。MGCは受話器をContextへAddし、ハンズフリーをMoveし、音声群をSubtractできる。

しかし、どの動詞も通話そのものではない。Notifyがキーを正しく伝えても、アプリケーション判断の正しさは証明しない。Modifyの成功はランプ点灯の証拠ではない。ContextにRTPと受話器があっても、経路、デコーダー、増幅器、物理トランスデューサーは故障し得る。

名前はPackageだけでは分からない用途を運んだ

プロファイルはuiというUser Interface Terminationを一つだけ要求し、少なくとも一つのAudio Transducer Terminationを求めた。受話器はat/hs、ハンズフリーはat/hf、ヘッドセットやマイク、スピーカーにも既知名があり、at/*は音声群を指した。

同じPackageを持つ二つの部品でも、人にとっての意味は異なる。耳に当てる受話器と部屋へ鳴らすスピーカーを、抽象能力だけで区別するのは難しい。既知名は物理用途の意味をMGCへ渡し、部品ごとに別Packageを発明する必要を減らした。

Wildcardは監査と一括操作も軽くした。だが名前は論理モデルの主張にすぎない。実装は各物理部品を別々に公開しても、複数の入出力を一つのTerminationの後ろへ隠してもよい。at/hsはプロトコル上の意味を示すが、配線全体、健全性、選択状態、可聴性は示さない。

プロファイルは監査の代わりではなく、監査の出発点だった

起動またはServiceChange時、電話はIPPhone version 1をMGCへ宣言する。その名前には、一つのui、既知の音声構成、最低一つのトランスデューサーとRTP Termination、最低限の制御トランスポートと符号化という期待が含まれた。

これがプロファイルの効率である。MGCは白紙から装置像を組み立てず、共通構造を前提に変化する部分だけを調べられる。

それでも決定は残る。MGCは制御を受理し、別MGCへ転送し、または拒否できる。電話の宣言はコントローラーの受理ではない。受理後にはじめて双方が規則に拘束され、外れた利用がエラーになる。

そしてAuditValueが実際の論理在庫とPackageを明らかにする。全体へのWildcard監査でuiと音声Terminationを列挙し、個別監査で詳細を得る。プロファイルは問い合わせ量を減らしたが、問い合わせ自体を消さなかった。

オプション性こそ製品の幅だった

表示、キーパッド、機能キー、インジケーター、ソフトキー、補助入力はいずれも任意だった。同じIPPhoneが、受話器中心の簡素な電話、会議装置、多機能な業務電話を表せるようにするためである。

したがって欠如は必ずしも障害ではない。表示を持たない適合電話もあり得る。逆に、監査で表示Packageが見えても、画面の破損、ローカル無効化、描画失敗は残る。

プロファイルは変化の範囲を定め、AuditValueは論理上の申告を返す。要求した動作と物理結果には、さらに別の確認が必要だった。

最小構成は拡張を許し、継承リスクを生んだ

RFC 3054は最小設計を定義し、追加のTermination、Package、トランスポート、符号化、ローカル知能を許した。共通基盤が相互運用を支え、拡張が製品差を生む。

同じ自由はライフサイクル問題になる。拡張は電話とMGCが同じ意味で解釈して初めて役立つ。独自Packageは機能を増やす一方、MGCや端末の交換を難しくする。知能が中央へ集まるほど、電話はそのコントローラーの継続的理解に依存する。

中央制御は端末の費用を下げ、多数の装置を一括更新できる。だがMGCの停止、古い在庫、互換性のない拡張は、電源の入った多数の電話から機能論理を奪い得る。小さな初期仕様は、バージョン管理、フォールバック、退出経路まで不要にしない。

制御とメディアは別の経路だった

IPPhoneはMegaco制御用にUDP上のApplication Layer FramingとABNFテキストを必須とし、TCPとASN.1バイナリを任意とした。これは命令の輸送規則である。音声はRTP Terminationを通る。

認証された制御が論理経路を構成しても、RTPが届くとは限らない。片方向だけ届く、届いても復号できない、復号しても選択した物理出力が沈黙する場合がある。RTPオブジェクトはpacket traceではない。

後年のH.248、RTP、電話イベント文書は境界を説明するが、RFC 3054端末がそれらを実装し通話に成功した証拠にはならない。

コントローラーの力が安全性の境界になった

文書はMegaco/H.248固有のものを超える新しい安全問題は追加しないと述べた。新規性を限定したのであって、安全対策を不要としたのではない。

MGCは音声経路、表示、ランプ、キーへの反応を左右する。認証は命令者を示せても、利用者の意図、媒体の機密性、物理出力の正しさまでは証明しない。一つのMGCが多くの電話を制御する規模は、運用を容易にすると同時に、誤りや侵害の影響範囲を広げた。

名前は有用な近道であり、最終証拠ではなかった

RFC 3054の答えは抑制的だった。共通プロファイルと安定名を与え、オプションはオプションのまま残し、差分を監査し、通常のMegaco操作で状態を組み立てる。

電話は部品に名前を付けた。それでもコントローラーは中身を確かめた。その先では、命令、Context、パケット、復号音声、机の前の人が、それぞれ異なる受領証を出した。

Sources

Lu HengはRFC 3054および関連標準の著者でも承認者でもない。ここでは明示した分析視角としてその論考を用いている。