VoLTEのサポートに向けた取り組み
「Ubuntu Touch」で「VoLTE」のサポートに向けた取り組みが始まりました。VoLTE
「VoLTE(Voice over Long Term Evolution)」は「LTE」ネットワーク上で通話するための仕組みです。「LTE」は「4G」としても知られ、スマホでは広く普及している規格です。
「Ubuntu Touch」を開発している「UBports」は、「Ubuntu Touch」で「VoLTE」をサポートするために必要な調査を行いました。
ちなみに「VoLTE」は通話するための仕組みですが、スマホで通話する仕組みは他にもあり、「Ubuntu Touch」で「VoLTE」をサポートしていないからと言って「Ubuntu Touch」が通話に対応していないという意味ではありません。
デバイス側の対応
「VoLTE」で通話にするには、デバイス上で動作しているOSやモデム、そしてネットワークがそれぞれ「VoLTE」に対応していなければなりません。最近のデバイスでは「VoLTE」に対応したモデムを搭載していますが、まだ「Ubuntu Touch」は「VoLTE」に対応していません。
sysmocomによる調査
「UBports」は「Ubuntu Touch」で「VoLTE」をサポートする計画を立てるため、「sysmocom」に調査を依頼しました。「sysmocom」は「VoLTE」をサポートしている「Volla Phone」で「Android」を起動し、「VoLTE」利用時にネットワーク上を流れるプロトコルを分析しました。
「VoLTE」は「VoLTE」に対応した「IMS(IP Multimedia Subsystem)」で実現されており、このフレームワークはプロプライエタリーなコンポーネントで実装されています。
「sysmocom」は「Ubuntu Touch」で「VoLTE」をサポートするため、オープンソースの「IMS」の開発を提案しました。
doubangoプロジェクト
また「sysmocom」は調査により「doubango」プロジェクトを発見しました。「doubango」はオープンソースで実装される「3GPP IMS/LTE Framework」です。
「doubango」は数年前からコミットが行われていませんが、同種のプロジェクトの中でもっとも活用可能なプロジェクトです。
ただし「doubango」に対応した3種類のIMSクライアントがありますが、Linux向けのクライアントは存在していません。
IMSサービスの置き換え
「Ubuntu Touch」で「VoLTE」をサポートするために「IMS」サービスの置き換えが必要になります。しかし「IMS」サービスはベンダーの実装に強く依存しています。
例えば「Volla Phone」が搭載する「MediaTek」モデムは「IPsec」と「VoIP」のシグナルをアプリケーションプロセッサーで処理し、「Quectel EG25-G」といった他のモデムではモデムプロセッサーでそれらを処理します。
まずはVolla Phoneから
ベンダー固有の事情もあり、いきなりすべてのデバイスで「VoLTE」に対応するのは困難です。そこでまずは「Volla Phone」で「VoLTE」の対応作業から手を付けることになりました。
「doubango」をベースに「IMS」を実装し「Volla Phone」で「VoLTE」の対応が一段落ついたら、他のデバイスでも「VoLTE」をサポートできるように「IMS」の実装を拡大していきます。
また「Ubuntu Touch」向けIMSクライアントの開発により、「VoLTE」だけでなく「VoWLAN/VoWi-Fi」のサポートも可能になります。
「VoLTE」も「VoWLAN/VoWi-Fi」も「3GPP」のIMSフレームワークに基づくサービスです。
いずれの開発もオープンソースとして開発され、貢献者による参加も歓迎されます。