今回は
前回は利用料金の考え方について整理しました。今回は裏側の通信経路について、推測交えて整理してみます。
勝手な思い込み
opentokが利用しているSFUでは、ユーザからみて上りの通信経路を1本に減らすことができます。なので、全体の通信経路も減ると思い込んでいました。opentokは全ての組み合わせを基準とした利用料金なので、SFUで減らした分の通信経路の差分で儲けているのだろう、と思い込んでいました。ところが、実際はそんな単純なものでは無いようです。
Peer-to-Peer(P2P) の場合
4人が直接P2P接続していると、片方向ずつ数えると、12本の通信経路があることになります。
SFUの場合
4人でSFUを使った場合、ユーザーから見ると上り1本+下り3本での4本。4人なら16本になります。
あれ!? P2Pの場合より通信経路が増えています。冷静に考えれば当たり前ですが、opentokはここで儲けているわけではないのですね。
TURN利用の場合
もう少し考えてみると、opentokはTURNサーバーも提供しています。TURNのみ使った場合を考えてみましょう。TURNサーバへの上り/下りを区別すると、P2Pの倍の24本となります。
TURN+SFUの場合
最後に、TURNとSFUを組み合わせた場合です。外部16本、内部(TURNとSFUの間)16本となり、コストのかかる外部との通信はTURNの場合よりも減らせます。
どうやらここまで考えると、SFUによってTURNサーバーの負荷と通信を減らすことができるようです。
次回は
次回は実際にサンプルを動かしてみて分かったことについて書いてみたいと思います。