March 5, 2026
メッセージングアプリがトラフィックとルーティングを処理する方法
WhatsApp、Telegram、Signalのようなメッセージングアプリが、メッセージをサーバー、暗号化レイヤー、グローバルネットワークを通じてミリ秒単位でルーティングする方法を発見してください。
写真: freepik.com - DilokaStudio
WhatsAppでテキストを送信するのは瞬時に感じます。タップ、ウィシュ、完了。しかし、あなたの親指が画面を離れ、メッセージが他の誰かの電話に表示されるまでの間に、あなたのデータはリレーサーバーに到達し、暗号化され、ルーティングテーブルを通過し、受信者に近い第二のサーバーに到達します。すべて約200ミリ秒で。
その全体のチェーンは、人々が思っている以上に重要です。
あなたのメッセージは迂回します
主要なメッセージングアプリのどれも、デバイスからデバイスにデータを直接送信することはありません。すべてリレーサーバーを使用していますが、それらのサーバーを整理する方法は非常に異なります。
Telegramは、世界の異なる地域に5つのデータセンタークラスターを運営しています。最初にサインアップすると、あなたの位置に基づいて1つに割り当てられます。シンガポールのユーザーとフランクフルトのユーザーは、互いにチャットしている場合でも、まったく異なるサーバーグループと通信しています。サーバーはその中間でハンドオフを処理します。
WhatsAppはほぼすべてをMetaのインフラストラクチャを通じてプッシュしますが、これはより集中化されています。Signalは逆のアプローチを取り、小さなサーバーフットプリントを運営し、メタデータの収集を意図的に避けています。各デザインは、速度、信頼性、誰が何を覗き見ることができるかに影響を与えます。
政府がオフスイッチを押したときに何が起こるか
イランは2018年にTelegramをブロックしました。ロシアは試みましたが、ほとんど失敗しました。中国はWeChat以外のほぼすべてをブロックします。この部分は実用的であり、理論的ではありません。
標準的なプレイブックはシンプルです: メッセージングアプリが接続するIPアドレスを特定し、そのIPをISPレベルでブロックします。最初は機能します。しかし、アプリ開発者は創造的になりました。
TelegramはMTProtoプロキシプロトコルと呼ばれるものを構築しました。これはメッセージングトラフィックをラップして、普通のHTTPSウェブブラウジングのように見せます。制限された国のユーザーにとって、テレグラムプロキシを設定することで、政府のフィルターをすり抜ける中間接続が作成されます。
Signalはドメインフロントを使用する異なるルートを取りました。アイデアは、SignalトラフィックをGoogleに向かっているように見せることでした。巧妙ですが、Googleは最終的にその技術を自社のインフラストラクチャで廃止し、Amazonもそれに続きました。したがって、Signalは再び適応する必要がありました。
暗号化オーバーヘッドの問題
人々はエンドツーエンドの暗号化について、無料のように話します。しかし、それはそうではありません。
暗号化されたパケットは、暗号化されていないものよりも大きいです。すべての会話は、何かが移動する前に暗号的なハンドシェイクを必要とします。Signalのプロトコルは、WhatsAppも2016年から使用しているもので、メッセージごとに約15-20%のデータを追加します。IEEEを通じて発表された研究は、この暗号化負荷がモバイルキャリアにアプリトラフィックの優先順位を再考させていることを文書化しています。
グループチャットは全く別の頭痛の種です。200人のメンバーを持つグループに1つのメッセージを送信すると、アプリは200の別々の暗号化されたコピーを生成する必要があります。それは処理と帯域幅の面で高価です。Telegramの回避策は、「シークレットチャット」にのみエンドツーエンドの暗号化を使用し、通常の会話はサーバー側の暗号化で処理することです。これはトレードオフです: プライバシーは少なくなりますが、グループ配信ははるかに速くなります。
脳が壊れるスケール
WhatsAppは1日あたり1000億メッセージ以上を移動します。その数字を少し考えてみてください。もしその1%が失敗したら、10億メッセージが消えます。
アプリは地理的負荷分散(容量のある最寄りのサーバーにルーティングする)と接続の多重化(新しい接続を開くのではなく、1つの接続に複数のチャットストリームを詰め込む)を使用しています。特別なことではありませんが、このスケールで正しく行うことは本当に難しいエンジニアリングです。
TelegramのMTProtoプロトコルもここで言及する価値があります。これは接続を確立するために必要な往復を減らすために構築されました。標準のHTTPSは、ハンドシェイクのためにいくつかの往復を必要とします。MTProtoはそれを短縮し、これがTelegramが不安定なインターネットの地域でより速く感じられる理由の一部です。このプラットフォームの技術インフラストラクチャは、前述の5つのグローバルクラスターにこの負荷を分散させます。
では、実際に気にすべきことは何か
あなたのメッセージが触れるすべてのサーバーは、メタデータが漏れる可能性のある場所です。誰とメッセージをやり取りしているのか、いつ、どのくらいの頻度で。暗号化は内容を保護しますが、ルーティングパス自体が物語を語ります。
それが気になるなら、あなたのアプリがプロキシルーティングや代替接続パスをサポートしているかどうかを確認してください。すべてのアプリがそうではありません。トラフィックパスに対するユーザーの制御を提供するアプリは、検閲ツールが賢くなり、ネットワーク監視が安くなるにつれて、より良く機能するでしょう。
ルーティングレイヤーは、暗号化レイヤーと同じくらい重要になっています。ほとんどの人はまだそれに気づいていません。