Shadowrocketの通信量統計の見方|サーバー別・アプリ別の読み方

ShadowrocketのData画面に表示される通信量の見方を解説。サーバー別・アプリ別の違いや、サービス提供元の利用量と数字が異なる主な理由を紹介します。

この記事の要点

Dataで確認できるのはShadowrocketが処理した通信量であり、端末全体のモバイルデータ通信量やサービス提供元の請求量とは異なります。サービス提供元から契約情報やサーバー情報を取得済みで、使用量を確認したい方向けに、累計通信量とリアルタイム速度の違い、サーバー別・アプリ別の見方、同じ時間帯の増加量で差を比べる方法を説明します。

Dataの通信量・リアルタイム速度・契約データ使用量の違い

Shadowrocketのローカル統計、システムのネットワーク統計、サービス提供元の管理画面では、それぞれ異なる位置の通信を記録します。Dataの数値は、選択中の分類や記録範囲とあわせて確認してください。iPhoneやiPad全体の通信量でも、契約データから差し引かれた量そのものでもありません。個々の数値だけでなく、単位や分類名、記録の開始時点も重要です。

アップロードは通常、端末から外部へ送信するデータ、ダウンロードは端末が受信するデータを指します。動画再生はダウンロードが中心ですが、リクエストや確認応答などの上り通信も発生します。単位に/sが付いていれば速度です。時間あたりの表記がないバイト数は累計通信量です。一時的に速度が上がっても、統計期間全体で同じ速度が続いたとは限りません。

2つの方向
アップロードとダウンロードを別々に確認してから合計する
8 bit
1 Byte = 8 bit、MB/sとMbpsは別の単位
2回の記録
終了時の数値から開始時の数値を引くと、今回の増加量がわかる

たとえば理論上、8 Mbpsは1 MB/sに相当しますが、この換算にはプロトコルのオーバーヘッドが含まれていません。また、MBとMiBも同じ単位ではありません。1 MBは1,000,000バイト、1 MiBは1,048,576バイトです。画面どうしの数値を比べる前に、それぞれの単位の定義を確認しましょう。略称が似ていても、換算方法が同じとは限りません。

サーバー別に確認する:通信が実際に使った出力先を特定

サーバー別の表示では、プロキシの出力先ごとの利用状況を確認できます。どのサーバー項目がリクエストを処理したか、通信がどこに集中しているか、切り替え後に新しいリクエストが別の項目へ移ったかを見ます。サーバー項目とサービス提供元の契約は一対一で対応するものではありません。1つの契約に複数のサーバーが含まれることも、複数の端末が同じ契約を利用することもあります。そのため、この端末の特定項目の累計値からアカウント全体の使用量はわかりません。

  1. Homeで選択中のサーバーを確認し、名前を記録します。同じ名前の項目が複数ある場合は、アドレスとポートも確認して取り違えを防ぎましょう。
  2. Global Routingを確認します。Configでは設定内のルールに従ってリクエストの転送先が決まります。ProxyとDirectでは通常のリクエストの出力先が異なるため、数値をそのまま比較できません。
  3. Dataを開き、画面に表示されるサーバー別の統計を確認します。対象項目のアップロード、ダウンロード、記録範囲を記録してください。分類の入口は、現在の画面表示に従います。
  4. 短い操作を1つ行ってから、同じ項目の数値をもう一度確認します。履歴の累計値だけを見るのではなく、増加量からその操作の通信を処理したか判断しましょう。

サーバーを切り替えても、既存の接続がすべてすぐに新しい接続へ切り替わるわけではありません。動画ストリーミングや持続的な接続、バックグラウンド転送は、切断または再接続されるまで元の接続を使い続けることがあります。切り替え後に旧項目の数値が少し増えても、それだけで切り替えが反映されていないとは言えません。比較する際はテストを終了し、新たにリクエストを開始してから、その増加量を確認してください。

確認の基本:同じ項目の増加量を比べる

現在のサーバーが使われているか確認するには、Global Routingの設定とテスト内容を固定し、操作の前後で数値を記録します。ある項目の長期間の累計と、別の項目の短期間の数値を比べないでください。

アプリ別に確認する:通信元を探すための情報であり、システム全体の一覧ではない

アプリ別表示でわかるのは、「確認された接続をどの通信元に関連付けられるか」です。「端末上のすべてのアプリがモバイル回線をどれだけ使ったか」を示すものではありません。Appleプラットフォームでは、アプリの識別に権限やシステム機能の制約があります。Dataにアプリ別の分類が表示される場合は、実際に確認できる分類と関連付けの結果を基準にしてください。アプリ名が表示されないからといって、そのアプリが通信していないとは限りません。また、すべての接続がアプリ名まで正確に特定できるとも限りません。

1つのアプリ操作で複数のサービスへのリクエストが発生することがあり、同時にバックグラウンド同期が動く場合もあります。反対に、複数のアプリが同じドメインへアクセスしたり、システムサービスを共有したりすることもあります。ドメイン名、サーバーアドレス、接続時刻だけでは、通信を開始したアプリを特定できないことがほとんどです。アプリ別の表示は調査の手がかりとして使い、操作を1つずつ行って検証しましょう。

サーバー別の確認メモ

確認場所
Homeで選択中の項目を確認し、Dataで統計を確認
対象
個別のサーバー項目とプロキシの出力先
事前に確認すること
現在のGlobal Routing設定を記録
比較方法
同じ項目・同じ時間帯の増加量

出力先の利用状況の確認に適しています。アカウントの請求量の代わりにはなりません。

アプリ別の確認メモ

確認場所
Dataに実際に表示されるアプリ分類
対象
確認・関連付けできる接続
事前に確認すること
分類の有無と表示範囲を確認
比較方法
ほかのタスクを一時停止し、対象アプリだけを操作

通信元の調査に役立ちますが、システムのモバイルデータ使用量の代わりにはなりません。

モバイルデータ通信量を調べる場合は、システムのSettingsにあるCellularまたはMobile Data画面でも、アプリごとの使用量を確認してください。画面名や場所はシステムの言語と地域によって異なります。システムのモバイルデータ統計とShadowrocketのローカル統計は、それぞれの集計期間を確認しましょう。Wi-Fiで発生した通信は、モバイルデータの請求量の説明には使えません。

手順に沿って再確認できる通信量の比較を行う

比較のために過去の記録をすべて消去する必要はありません。元の数値を残して前後の差を計算すれば、後から調べるための情報も保持できます。以下は計算例であり、実測値や製品の性能を示すものではありません。

  1. 環境を固定:ネットワークの種類を1つ選び、同じサーバーとGlobal Routing設定を維持します。クラウド同期、アプリのアップデート、同じアカウントを使うほかの端末での転送は一時停止します。
  2. 開始時の数値を記録:時刻、Dataのアップロードとダウンロードの数値、サービス提供元の管理画面に表示される使用量と更新時刻を書き留めます。契約情報に表示される残量も、前回更新時点の数値である可能性があります。
  3. 1つの操作を実行:対象アプリだけを開き、開始と終了が明確な操作を1回行います。ページのキャッシュや動画の先読みで実際の通信量は変わるため、ページに記載されたファイルサイズを通信量として扱わないでください。
  4. 終了時の数値を記録:操作後、接続が落ち着くまで待ってから同じ項目を確認します。サービス提供元の管理画面で集計が遅れている場合は、更新後に記録してください。数値を補うために操作を繰り返す必要はありません。
  5. 差分を計算:アップロードとダウンロードの増加量をそれぞれ計算し、テストした時間帯を記録してから、サービス提供元が公開している計量ルールに照らして比較します。
記録項目操作前操作後今回の増加量
アップロード累計20 MB22 MB2 MB
ダウンロード累計100 MB150 MB50 MB
アップロードとダウンロードの合計120 MB172 MB52 MB

この例からわかるのは、選択したローカル統計の範囲で52 MB増えたことだけです。サービス提供元が52 MBを差し引くべきだと証明するものではなく、対象アプリの実際のコンテンツ量がちょうど50 MBだったという意味でもありません。上下方向を合算するか、倍率が適用されるか、ほかの端末も使用しているかは、それぞれ別途確認が必要です。

数値が異なる理由:観測する場所と振り分け結果が異なる

アプリのリクエスト トンネルへの接続 ルールとの照合 出力先への転送 管理画面での計測

この流れから、統計値を単純に一致させられない理由がわかります。アプリがコンテンツをリクエストし、Shadowrocketが処理対象の接続を扱い、ルールが出力先を決め、サービス提供元が自社ネットワークの境界で通信量を計測します。それぞれの観測地点で、対象となるバイト数や集計期間が異なる場合があります。ローカルで処理されたからといって、Directの通信が自動的にプロキシサーバーの契約使用量に含まれるわけではありません。

Global RoutingでConfigを使う場合、Config内のルールは上から順に照合され、最初に一致したルールのポリシーが適用されます。以下はルール構文の例であり、現在の設定を置き換える指示ではありません。実際のポリシー名は利用中の設定に従ってください。

[Rule]
DOMAIN-SUFFIX,example.com,DIRECT
GEOIP,CN,DIRECT
FINAL,PROXY

この例では、example.comおよびそのサブドメインに一致するリクエストにDIRECTを適用します。続いて、GEOIP,CN,DIRECTが一致するIPを処理し、最後まで一致しなかったリクエストにはFINAL,PROXYが適用されます。そのため、1回のブラウジングでも接続ごとに異なる経路を通ることがあります。具体的なポリシーを見ずにローカルの合計値だけを確認することは、使用量を照合する際によくある誤差の原因です。

使用量を照合する前に、4つの条件をそろえる

端末の範囲、開始・終了時刻、上下方向の扱い、単位をそろえてから比較します。差が続く場合は、同じテスト時間帯の両方の記録を保管し、計量ルールをサービス提供元に確認してください。

よくある質問:数値のリセット、バックグラウンドでの増加、アップロードの偏り

Dataの数値が減ったりゼロになったりしたら、契約の残量が回復したということですか?

そうとは限りません。まず、選択中のサーバーや分類、記録範囲が変わっていないか確認します。リセット、再インストール、復元などの操作を行ったかも確認してください。ローカル記録の変化はサービス提供元の請求量の変化を意味しません。契約の残量は該当アカウントの管理画面で確認しましょう。

Webページを開いていないのに、なぜ通信量が増え続けるのですか?

まず写真の同期、ファイル転送、メディアの再生を一時停止し、増加量が大きく減るか確認してください。続いて、Settings → On Demandの自動接続条件を確認します。バックグラウンド通知や同期、既存の接続によって通信が続くことがあります。画面上で操作していないだけで、統計に異常があるとは判断できません。

アップロードが予想より多い場合、何を確認すればよいですか?

まず5分間のアップロード増加量を記録し、クラウドバックアップ、ビデオ通話、ファイルのアップロードがないか確認します。Dataにアプリ別の関連付けが表示される場合は、該当する項目を1つずつ一時停止して確かめてください。アップロードの累計がダウンロードより多いという理由だけで、サーバーの障害と決めつけないでください。

Dataをリセットすると、サービス提供元の使用量も再計算されますか?

ローカル統計をリセットしても、ローカルの記録が変わるだけで、サービス提供元の計量には影響しません。現在の画面にリセット機能がある場合は、事前に記録を保存し、確認メッセージを読んでください。比較が目的なら、リセットせずに前後の差を計算する方法がおすすめです。再接続、サブスクリプションの更新、サーバーの変更でアカウントの使用量が消えると決めつけないでください。

通信の問題を調べるときは、設定を変える前に記録を保存してください。開始・終了時刻、単位、サーバー項目、アップロードとダウンロードの増加量をサービス提供元に伝えれば、通常は確認に役立ちます。記録を共有する前に、サブスクリプションURLに含まれる認証情報、アカウント識別情報、アクセス履歴の個人情報を隠してください。ルールによる振り分けや初回接続の手順を確認したい場合は、当サイトの使い方ガイドもご覧ください。

App Storeで正規版を確認