使用量とデータ節約

アプリごとの帯域幅、プロバイダの数値との比較、データ予算、テザリング、アップデータ、大きなアップロード。

アプリごとの帯域幅

各アプリの行には直近1分間の通信が表示され、線より上がアップロード、下がダウンロードです。クリックするとアプリのエコーが開きます。何をどれだけ送受信したかを1文で示し、続いて直近5分間のライブ波形、Proでは時間・日・週・月単位の履歴を表示します。マーカーはMacが別のネットワークに接続したときや、エージェントの実行がそのアプリを使ったときを示し、タイルには通信を運んだネットワーク、直近4期間との比較、全通信に占める割合が表示されます。グラフの下には、アプリの開いている接続とそれぞれの通信量と国、そしてアプリの開発元がInternet Access Policyを同梱している場合は、そこで宣言されている接続が並びます。

ルーターやプロバイダとの比較

ルーター、ISP、携帯キャリアが示す合計がKilobatと異なる場合は、「履歴」›「ルーターやプロバイダと比較」を開くか、kilobat report compareを実行します。相手が表示している数値、その単位、ダウンロード・アップロード・両方のどれを数えているかを入力し、同じ期間と対象のネットワークを指定します。Kilobatは自身の合計を同じ単位で表示して差を示し、入力した数値をもう一方の単位系でも解釈します。多くのプロバイダは、1,000,000,000バイトではなく1,073,741,824バイト(GiB)をGBと表記しているためです。

帯状のグラフに、Kilobatが実際に記録した時間と空白期間を表示します:Macがスリープしていた時間(Kilobat 1.3以降で記録)、電源オフやオフライン、Kilobatが起動していなかった時間、ほかのネットワークにいた時間、履歴の開始前の時間。その下に、差が出たおもな理由を可能性の高い順に示します。Kilobatが見ているのはこのMacだけで、ルーターやプロバイダが数えるスマートフォン、テレビ、ほかのコンピュータは含みません。インターネットに出ないローカルネットワークとAirDropの通信は除外し、どのアプリにも属さないパケットヘッダは「不明」として数えます。プロバイダは別のタイムゾーンで日を区切ったり、使用量の反映が遅れたりすることがあります。どちらの数値が正しいかをKilobatが判断することはありません。比較結果は、期間、ネットワーク、記録した時間、すべての空白期間を含めてCSVまたはJSONで書き出し、プロバイダと共有できます。

テザリングの速度制限

多くの通信事業者はテザリングに独自の容量を設定し、使い切ると600 kbpsなど一定の速度に下げるか、一部のプランでは常時速度を制限します。スマートフォンのテザリング(iPhoneの172.20.10.1、旧Androidの192.168.43.1、またはmacOSやユーザが従量制に指定したネットワーク)で、Kilobatはすでに測定している速度テスト、5 MB以上の自分のダウンロードと同時に行われた他のダウンロード、「ヘルス」のバックグラウンドpingを確認します。すべてが通信事業者の公表する上限(128、512、600 kbps、1、1.5、3、4、5、6、10、15 Mbps)のいずれか付近で頭打ちになると、「通信事業者によるテザリング速度上限の可能性:すべてのダウンロードが3 Mbps付近で頭打ちでした」のように表示します。

パターンが明確になるまで判定を控えます。少なくとも2つの取得元(速度テストと2つのサービスからのダウンロードなど)から4回以上の測定があり、2時間以上離れた2回の機会に行われ、すべてが互いに約8%以内でそれより速いものがなく、アイドル時のpingが正常(150 ms以下、ジッターが少なく、ロスなし)であることが必要です。弱い信号や混雑した基地局では速度が変動しpingが上がるため、上限として扱いません。Bluetoothテザリングはそれ自体が低速なため除外します。動画はテザリングでのみ受動的に計測する別のチェックがあります。YouTube、Netflix、Twitch、Disney+、Prime Videoが3回のセッションで約1.5 Mbpsを超えず、他のダウンロードが2.5倍以上速い場合、「ヘルス」は通信事業者による動画制限の可能性を表示します。全データに上限があるプランもMacからは同じように見えるため、確実とは断定しません。

診断結果には確認すべきことを示します。通信事業者のアプリでのテザリング残量、常にテザリングを制限するプラン、Macを切断してスマートフォン自身のブラウザで実行する速度テスト、テザリングに頼る場合の別のプランやトラベルルーターです。通信事業者別テザリング上限の該当ページにリンクします。通信事業者を選ぶか、検出を押してください。検出ではCloudflareに公開アドレスを、RIPE NCCに所属ネットワークを問い合わせます。診断結果は無料で、その根拠となる測定値はKilobat Proの機能です。ターミナルではkilobat hotspotで判定と根拠(--carrier <id>、--detect、hotspot carriers、--json)を表示し、エージェントはget_hotspot_throttlingを読み取ります。

週間ダイジェスト

毎週月曜の9:00に、Kilobatが前の週について控えめな通知を1件送ります。たとえば「プロバイダ側の障害2件(41分)、通話12件中3件がフリーズ、2件はDropboxが原因、従量制ネットワークのRita’s iPhoneで4.2 GB」。7日間で特に目立った3〜4件を、重要な順に選びます:ルーターより先での障害、フリーズした通話やリモートセッション、ルーターの低速化、Starlinkアンテナの遮断、マルウェア、フィッシング、エージェントガードによるブロック(AIエージェントのものを優先)、エージェントが確認すべき送信先に送ったデータ、従量制ネットワークでのデータ量、補償の対象になりうる障害、プランを大きく下回った速度テスト。起きなかったことは載せません。何も問題がなかった週は1文だけです:「穏やかな1週間:障害なし、通話はすべて良好、自宅で38 GB。」前の週も記録されている場合は、変化に意味があるときに比較を添えます:「先週の半分」「先週の2から増加」。

通知をクリックするか、コマンドパレット(⌘K)で「先週」を選ぶと、ワークスペースにその週が表示されます。各項目には、Kilobatが日ごとの値を記録している場合はその推移を示す線と、詳細のあるタブへのボタンが付きます。矢印で最大12週間さかのぼれます。Proがない場合、ダイジェストには「障害2件」や「通話12件中3件がフリーズ」のような件数が表示され、その週のどれかをProの機能が説明できた場合は、Proで何がわかるかを1行で伝えます。Proでは、各障害がどちら側だったか、各通話が何でフリーズしたか、そして低速化したのがルーターだったことがわかります。曜日と時刻の変更やオフにするには、「設定」›「モニタリング」›「週間ダイジェスト」を使います。その時刻にMacがスリープしている場合は、その後最初に復帰したときに、日中かつ3日以内に届きます。Macが丸1週間スリープしていた週は、遅れて送らずにスキップします。また、2回のダイジェストが4日以内に続けて届くことはありません。インストール後の最初の週は、まる1週間分の記録がないためスキップします。ダイジェストは、Kilobatの通知をすでに許可している場合にのみ送られ、通話中に届くことはありません。また、KilobatがMac上に保存しているデータをもとに、Mac上で作成されます。ターミナルではkilobat weekで同じ内容を表示でき(前の週は--weeks-ago 1、スクリプト用には--json)、エージェントはget_weekly_digestで取得できます。

シェアカード

メニューバーの右クリックメニューにある「共有と書き出し」で、投稿用の正方形の画像を作れます:今週のエコー(送受信したデータ量、いちばん通信した日、いちばんデータを食ったアプリ)、前回の速度テスト、または「この場所」(作業中のカフェ、コワーキングスペース、ホテル、図書館のWi-Fiレポート)。「この場所」には、入力するかAppleマップの検索から選んだ場所の名前と、このネットワークでの最新の速度テストのダウンロード、アップロード、ping、ビデオ通話に十分かどうか、負荷がかかったときの安定度、Wi-Fiの帯域を表示します。検索から場所を選ぶと、カードに周辺の小さな地図が付き、その場所に点が打たれます。不要なら「地図を表示」をオフにします。「電源あり」「静か」「遅くまで営業」などのタグと、1行のメモも追加できます。Kilobatはこれらをこのネットワークについて、このMac上に記憶します。カードはコピーや保存ができ、Nomad List、Googleマップのクチコミ、コワーキングのチャットに共有できます。ネットワーク名や住所を表示するカードはありません。地図に表示されるのは選んだ場所で、現在地ではありません。ただし「現在地を使用」を選んだ場合は別で、「この場所」が位置情報を求めるのはこのときだけです。

Kilobatで振り返るあなたの1年は、1年を1枚のカードにまとめます:月ごとの棒グラフ付きの送受信したデータ量、大食いアプリ、使ったネットワークの数、いちばん通信した月、最高のカフェWi-Fi、フリーズなしのビデオ通話の最長連続記録。最高のカフェは、「この場所」カードで名前を付けた場所のうち速度テストがいちばん速かったところで、入力した名前で表示されます。場所に名前を付けたことがなければ、最高速度を表示し、「いちばん速いネットワークで」とだけ書きます。表示する内容がない項目は省きます。Kilobatの履歴が1月の第1週より後に始まった場合は、1年全体と言わずに「8月から」と表示し、1月にはまだ終わったばかりの年を表示します。いつでも「共有と書き出し」にあります。12月にはそのメニューと共有シートの一番上に移動し、月の初めに一度だけ、準備ができたことを通知します(Kilobatの通知をすでに許可している場合のみ)。

ほかのアプリからkilobat://リンク(1.3.4以降)で、Kilobatの目的の場所を開けます:kilobat://open/speedはタブ(overview、connections、health、radar、speed、history、tools、settings)を開き、kilobat://share/speed、kilobat://share/week、kilobat://share/place、kilobat://share/wrapped(Kilobatで振り返るあなたの1年)はシェアカードを開き、kilobat://speedtestは速度テストを実行します。ターミナルからopen kilobat://open/historyで実行したり、ランチャーでキーに割り当てたりできます。Raycast拡張機能の「Open in Kilobat」アクションはこれらのリンクを使っています。Kilobatのショートカットアクションを使えば、「ショートカット」Appからチェック、速度テスト、スリープ防止、レポートを実行できます。

テザリングとデータ料金

macOSはiPhoneのインターネット共有など一部の接続を従量制として判定しますが、Androidのテザリングすべてを判定できるわけではなく、USBやEthernetで接続したスマートフォンも判定しません。各ネットワークにはデータ料金の設定があります:自動はmacOSの判定に従い、従量制と定額は自分で決めます。Wi-Fiメニュー、予算メニュー、ヘルスタブ、設定、またはkilobat networks cost meteredで設定できます。従量制ネットワークでは、そのネットワーク用にプロファイルを選んでいない限りKilobatは旅行に切り替え、離れると元のプロファイルに戻し、予定された速度テストを省略します。kilobat conditions --jsonとMCPサーバは、meteredとmacOSの判定(osMetered)の両方を報告します。データ料金を設定するにはKilobatがネットワークを識別できる必要があるため、Wi-Fiではネットワーク名を見るための位置情報へのアクセスが必要です。

従量制ネットワークでのアップデータの一時停止

従量制ネットワークでは、ネットワークフィルタが、アップデートを自動でダウンロードするヘルパーも一時停止します:Google Updater(と旧来のKeystoneエージェント)、Microsoft AutoUpdate、macOSのソフトウェアアップデート(softwareupdated)、App Storeのダウンロード(appstored、appstoreagent、storedownloadd)、Sparkleのダウンロードサービス、SparkleとSquirrelのインストーラ(Autoupdate、Updater.app、ShipIt)。これらは通常のフィルタルールでブロックされ、ブロックした接続の記録には「従量制ネットワークのためアップデータを一時停止」と表示されます。アプリ自体は使い続けられます。ネットワークが従量制でなくなれば、アップデートは再開します。ほかのアプリやそのステージング用フォルダ、システム設定は一切変更しないため、元に戻す作業は不要です。デフォルトでオンで、設定またはkilobat updaters offでオフにできます。接続先ルールや一時的な許可など、接続にすでに適用されるルールが優先されるため、「30分間許可」で1つのアップデートを通すことができます。「制限なし」では何も一時停止しません。

ヘルスタブ、kilobat updaters、MCPツールのget_updatersでは、対象のアップデータ、このネットワークで通過してしまったアップデートのバイト数(アップデータ自身のバイト数と、アップデータのために接続したnsurlsessiondなどのシステムのダウンロード。後者にはほかのダウンロードも含まれます)、そして自身のプロセス内でアップデートするインストール済みアプリを表示します。SparkleやElectronで作られた多くのアプリはアプリ内でアップデートをダウンロードし、インストールだけをヘルパーに任せるため、アプリをブロックせずに一時停止することはできません。フィルタは新しい接続を止めるため、ネットワークが従量制になった時点ですでに進行中のダウンロードは完了することがあります。Kilobat自身の定期的なアップデート確認も定額のネットワークを待ちますが、「アップデートを確認」は手動でいつでも使えます。

大きなアップロード:後で送信

Dropboxのフォルダ同期、動画のアップロード、大きなファイルを含むgit pushなど、アプリが大量のアップロードを続けると、メニューにその行が表示されます:「Dropboxがアップロード中 · 4.2 MB/s · これまでに1.3 GB」。1 MB/s以上が20秒続くか、遅い回線では、そのネットワークで前回の速度テストが測定したアップロードの半分以上になると、大きなアップロードとみなします。NASやAirDropなど、自分のネットワーク内への通信は数えません。残り時間が表示されるのは合計がわかる場合だけです:curl -Tが1つのファイルを送信するときに、ファイルのサイズとcurlが送信済みの量から計算します。Dropbox、Google Drive、OneDrive、iCloud、git push、ブラウザは残りの量を知らせないため、Kilobatは推測せずに速度とこれまでに送信した量を表示します。

後で送信をクリックすると、アップロードを保留します。従量制ネットワークでは定額ネットワークを待ちます。それ以外では、より速いネットワーク、つまり速度テストで上り20 Mbps以上を測定したネットワークを待ちます。横の矢印からは、1時間、3時間、または自分で送信するまで保留できます。条件に合うネットワークになるとアップロードが再開し、「Dropboxのアップロードを自宅のWi-Fiで再開しました。」のようにKilobatが通知します。より速いネットワークを待っている保留中のアップロードにはこのネットワークは十分速いがあり、すぐに送信してそのネットワークを記憶します。保留の方法はアプリによって異なります:

  • 同期アプリとバックアップアプリ(Dropbox、Google Drive、OneDrive、Box、Backblaze、Arq、Creative Cloud、Synology Drive、pCloud、MEGA、Transmission、qBittorrent):通話モードと同じように一時停止するので、進行中のアップロードもすぐに止まり、止まったところから再開します。ネットワークフィルタがオンなら、新しい接続も待機します。
  • その他のアプリ:保留中はネットワークフィルタが新しい接続を拒否します。そのためにはフィルタをオンにし、「制限なし」以外のプロファイルにする必要があります。すでに進行中の転送は完了することがあります。
  • 保留しないもの:ブラウザ(すべてのタブがフリーズするため)、iCloudや写真などのmacOSのサービス、ゲームランチャー、VPNとプロキシ、そしてgit、curl、rsyncなどのコマンドラインツール(サーバが待つのをやめ、ターミナルに停止したジョブが表示されるため)。これらのアップロードは、わかる場合は残り時間とともに表示されます。Kilobatは最前面のアプリを一時停止せず、保留中のアプリに切り替えると保留は解除されます。

保留したアップロードは、待っていた条件がそろったとき、「今すぐ送信」をクリックしたとき、最長8時間後、Kilobatを終了したときに必ず再開します。一時停止するアプリは停止前に記録されるので、クラッシュしても次回の起動時に再開します。また、通話や集中モードが同じアプリを一時停止している場合は、それが終わるまで一時停止したままです。ターミナルでは、kilobat uploadsで大きなアップロードと保留中のアップロードを一覧表示し、kilobat uploads hold Dropbox --until unmeteredで保留し(fast、fast:50、2h、manualも使えます)、kilobat uploads resume Dropboxで送信を再開します。エージェントはget_uploadsとhold_uploadを使い、後者は事前にユーザに確認します。大きなアップロードを見るのは無料で、保留するにはKilobat Proが必要です。

データ予算とアプリの割り当て

予算はネットワークごとに設定します。デフォルトでは、リセットするまで数え続けます。毎日、選んだ曜日に毎週、またはプランの更新日に毎月リセットするよう設定できます。31日に更新されるプランは、短い月では月末日にリセットされます。サイクルのある予算はそのネットワークの使用履歴を数えるため、再起動後も続きます。Kilobatはデフォルトでサイクルごとに80%と100%で1回ずつ通知し、追加すれば50%でも通知します。

アプリごとに割り当てを設定できます。サイクルごとの上限を、すべての通信またはアップロードだけを対象に、1つのネットワークまたはすべてのネットワークで設定します。アプリの帯域幅パネルかkilobat quota com.getdropbox.dropbox 2 --uploadで設定してください。フィルタリングがオンの場合、予算を使い切ると新しい接続を止め、割り当てを使い切るとそのアプリの新しい接続を止めます。一時的な許可や接続ルールは引き続き通ります。Kilobatは1秒ごとに通信をサンプリングするため、予算と割り当ては概算です。止まる前に少し超えることがあります。

データパックと旅行用eSIM

データパックは、30日間10 GBの旅行用eSIMのように終了日がある前払いデータです。予算とは異なり、繰り返しリセットされません。「設定」›「データパック」で容量、利用日数または最終日、開始日、使用するネットワークを指定して追加します。スマートフォンのテザリングやトラベルルーターを選ぶか、iPhoneなど名前に含まれる文字を入力すると、そのスマートフォンのすべてのテザリングとUSB接続を集計できます。各ネットワークに同時に適用できるパックは1つです。同じネットワークで新しいパックが開始すると古いパックは終了し、終了したパックは履歴に残ります。

Macがパックのネットワークに接続中、メニューには残量と過去3日間のペースで使い切る日が「残り6.2 GB · 11月14日頃、パック終了の5日前に使い切る見込み」のように表示されるか、期間全体に足りることを示します。開始から1日未満のパックも1日として集計するため、最初の予測は遅めになる場合があります。「ヘルス」にも同じ行を表示します。パックのネットワークは定額に指定していない限り従量制として扱われるため、「旅行」、アップデータの一時停止、「後で送信」はテザリングとして扱います。Kilobatは50、80、95%に達したときと、ペースから早く使い切る見込みのときに通知します。通知は最大1日1回で、再通知は日付が少なくとも1日早まった場合に限ります。パックで大きなアップロードをWi-Fiまで保留をオンにするか通知内でクリックすると、「後で送信」は同期とバックアップのアップロードを定額ネットワークまで保留します。

KilobatはこのMacの使用量のみを集計します。スマートフォンや他のデバイスが同じパックを使う場合、実際の残量はKilobatの表示より少なくなります。修正をクリックし、通信事業者のアプリの値を入力してください。Kilobatはその値を起点に、その後のMacの使用量を加算します。ターミナルではkilobat pack add 10 30 --name "Japan eSIM"、kilobat pack、kilobat pack correct 5.1、kilobat pack endを使用し、エージェントはget_data_packでパックを読み取ります。アプリのデータパックは予算と同様にKilobat Proの機能です。詳しくはMacで場所を選ばず働くをご覧ください。

集計の対象:インターネット、ローカルネットワーク、VPN

予算、割り当て、使用量にはインターネットの通信だけを数えます。ローカルネットワーク(プリンタ、NAS、ほかのコンピュータ、ルーターの管理画面)、AirDrop、そのほかの近距離デバイス間のリンク(AWDL)の通信は、予算カードの使用量にポインタを重ねたときと各アプリの帯域幅パネルで、「ローカルネットワーク:2.1 GB(集計対象外)」のように別に表示されます。Macの合計はWi-FiとEthernetのカウンタから取得するため、どのアプリにも属さない分も含みます:アプリのバイト数には含まれないパケットヘッダや確認応答(通常5〜10%多くなります)、2回のサンプリングの間に開始・終了したプロセス、インターネット共有、macOS自身が実行するVPNなどです。同じツールチップにその分を「アプリに紐づかない通信」として表示し、どのアプリにも割り当てません。

VPNを使っている場合、アプリの通信はトンネルを通り、VPNがWi-FiまたはEthernet経由で外に運びます。Kilobatは携帯キャリアと同じく、Macから出ていく地点で一度だけ数え、アプリの分には「VPN経由」とラベルを付けます。プロキシ(システムのプロキシ、HTTPS_PROXY、またはローカルのプロキシアプリ)を使っている場合、アプリはこのMac上のプロキシと通信し、プロキシがインターネットへの接続を行うため、バイト数はプロキシの下に表示されます。どのアプリが背後にいたかはKilobatにはわかりません。TUNモードのプロキシはKilobatにとってVPNと同じで、各アプリ自身の接続には「VPN経由」とラベルが付き、プロキシの送信通信はプロキシの下に表示されます。プライベートアドレス上の企業プロキシはローカルネットワークとして数えます。

システムのダウンロード

アプリは一部のダウンロードをmacOSに任せます:nsurlsessiond(ミュージックやPodcastなどのアプリのバックグラウンド転送)、mobileassetd(Apple IntelligenceやSiriのモデル、音声、フォント)、softwareupdated、appstoredとappstoreagent、clouddとbird(iCloud)、fileproviderd、コンテンツキャッシュ。アプリ一覧ではこれらを「システムのダウンロード」としてまとめ、それぞれの役割を表示します。フィルタリングがオンの場合、フィルタは各接続がどのアプリのためのものかを把握できるため、一覧には「ミュージック用」と表示され、ブロックは「com.apple.Music via nsurlsessiond」と表示されます。フィルタリングがオフの場合、nettopにはサービスしか見えないため、ダウンロードがどのアプリのためのものかKilobatにはわかりません。

アプリでもmacOSの一部でもないプロセス(ホームフォルダやHomebrew内のnode、python、deno、bun、Goのバイナリなど)は、行を展開すると実行ファイルのパスが表示されるため、見慣れないエージェントやツールがすぐに目に付きます。

設定で異常なアップロードをオンにすると、アプリが1時間に普段の5倍以上、かつ50 MB以上アップロードしたときに通知します(1アプリにつき1日1回まで)。通知するだけです。一時的なルールと期限付きの接続ルールは、残り時間とともにプロファイルに一覧表示されるため、早めに終了することもできます。