Home AssistantはLAN接続とリモート接続でなぜパフォーマンスが異なるのですか?

エヴァ・ウォンテクニカルライター であり ZimaSpaceの常駐ティンカーでもあります。 生涯のオタクであり、 ホームラボとオープンソースソフトウェアに情熱を持っています。彼女は複雑な技術的概念をわかりやすく、 実践的なガイドに翻訳することを専門としています。エヴァはセルフホスティングは楽しくあるべきで、怖がるものではないと信じています。彼女のチュートリアルを通じて、コミュニティが ハードウェアのセットアップを解明する手助けをしています。初めてのNAS構築からDockerコンテナの習得まで。

Home Assistantは、Coreが同じ自動化を実行していても、クライアント接続が異なる経路を通るため、LAN上では高速に感じられ、リモートでは遅く感じられることがあります。ローカルブラウザーは1台のスイッチを経由してHome Assistantに到達するだけかもしれませんが、リモートのスマートフォンはパブリックDNSを解決し、モバイルネットワークやオフィスネットワークを通過し、ISPの経路を経て、クラウドプロキシ、VPN、トンネル、またはリバースプロキシに入り、その後サーバーへのWebSocketセッションを維持します。

したがって、パフォーマンスの違いは、すぐにHome AssistantのCPUが原因だと決めつけず、クライアントからサーバーへの配信として測定すべきです。物理デバイスを使った自動化はローカルで同じ時間に完了していても、リモートダッシュボードで新しい状態が表示されるまでに時間がかかる場合があります。

LANアクセスではネットワークの段階が少ない

家庭内では、クライアントはサーバーのプライベートアドレスまたは内部DNS名を使用して、パブリックインターネットを回避できます。往復時間は短く、通常はISPのアップロード容量やリモートリレーの影響も受けません。

Home Assistant Companionのネットワークモデルでは、内部URL、外部URL、スプリットDNS、WebSocket対応リバースプロキシの要件など、内部接続と外部接続に別々の経路を設定できます。

そのため、LANセッションが遅い場合は、まず家庭内を調査してください。Wi-Fi、DNS、ブラウザーやクライアントの描画、内部で使用しているリバースプロキシ、VLANルーティング、またはHome Assistantホスト自体が原因の可能性があります。

リモートアクセスではDNS、WAN、暗号化、入口方式が追加される

リモートクライアントでは通常、パブリックまたはオーバーレイの名前、TLS、外部経路、そしてHome Assistant Cloud、VPN、リバースプロキシ、トンネルなどのアクセス境界が必要です。それぞれの段階で遅延や再接続の発生点が追加される可能性があります。

リモートオーバーレイでは、接続方式も異なる場合があります。Tailscaleの最新の案内では、直接ピア接続は通常、最も低い遅延と最も高いスループットを提供し、直接接続できない場合はリレー接続がフォールバックとして使われると説明されています。したがって、経路そのものが変わることで、Coreの実行時間を変えずにHome Assistantの応答性の感じ方が変わることがあります。

リモート遅延に一律の基準値を適用しないでください。携帯回線、オフィスWi-Fi、旅行先のネットワーク、別宅など、実際に利用する場所から自分の経路を測定し、直接接続かリレー接続かも記録しましょう。

初期ページの読み込み後はWebSocketの安定性が重要

Home Assistantのダッシュボードは、初期HTMLとJavaScriptの読み込み後も継続的に状態変更を受信します。平均帯域幅が十分でも、接続が何度も切断と再接続を繰り返すと、はるかに遅く感じられます。

リバースプロキシやトンネルでは、WebSocketの経路を正しく維持する必要があります。Companionのネットワーク案内では、セルフホスト型のリバースプロキシにWebSocket対応が必要だと警告しています。対応していない場合、UIは部分的に接続できても、ライブ更新がうまく機能しないことがあります。

再接続、失敗したWebSocketアップグレード、プロキシログ、モバイルネットワークの切り替えを確認してください。スマートフォンがWi-FiからLTEに切り替わると、Home Assistantサーバー自体が正常でも、送信元アドレスと経路が変わることがあります。

リモートパフォーマンスは家庭のアップロード速度に制限されることがある

家庭向けインターネットプランは、しばしば下りと上りの速度が非対称です。リモートダッシュボードのリクエストは家庭内へ下り方向に届きますが、カメラのサムネイル、ダッシュボードのアセット、状態データ、ストリームは家庭のアップロード経路から外部へ送信されます。

高ビットレートのカメラ映像や複数のリモートユーザーによって、ローカルクライアントでは発生しないアップロード制限が明らかになることがあります。カメラカードを開いたときだけリモートセッションが遅い場合は、自動化の実行に時間がかかる問題とは別のものです。

ZimaSpaceのスマートホーム向けホームサーバーのワークロードガイドでも、コア自動化と、追加のリソース要件が発生するカメラ、分析、コンパニオンサービスなどの負荷を区別しています。

クライアントの経路選択によって2台のスマートフォンの動作が異なることがある

Companionアプリは、設定されたHomeネットワークとURLに基づいて接続設定を選択します。ホームネットワークを認識できないデバイスは、Home Assistantと同じWi-Fiに接続している場合でも、外部経路を使い続ける可能性があります。

コミュニティのサポート事例では、実際の依存関係として、内部URLを意図したローカル経路として使用するには、アプリに正しい外部URLとホームネットワークの定義が必要であることが示されています。

パフォーマンスを調査する際は、正確なURL、DNSの応答、プロキシやVPNの経路、ダッシュボード、クライアントを比較してください。「同じHome Assistantサーバー」であっても、2台のクライアントが異なる入口経路を使用しているなら、同じテストとはいえません。

サーバーの実行とクライアントへの配信を分けて測定する

測定項目 切り分けられる対象
自動化トリガー → サービス呼び出し Home Assistantのロジック
サービス呼び出し → 物理デバイスのフィードバック ローカルデバイスの通信
LANクライアント → Home Assistantの応答 ローカルネットワークとクライアント
リモートクライアント → Home Assistantの応答 WAN、入口経路、リレー、TLS、プロキシまたはVPN
サーバーの状態更新 → クライアントの描画 WebSocketとフロントエンドの経路

サーバー側の実行自体が変化した場合にのみ、サーバーが「リモートで遅い」と判断してください。物理デバイスが予定どおり応答しているのに、リモート画面の更新だけが遅い場合、そのパフォーマンス差はCoreの後段、つまりリモート配信経路にあります。

よくある質問

Home AssistantアプリはWi-Fiでは速いのに、モバイルデータ通信では遅いのはなぜですか?

モバイルデータ通信では、ISPの遅延、DNS、TLS、さらにプロキシ、VPN、トンネル、リレーなどを含むパブリックまたはプライベートのリモートアクセス経路が追加されます。Home Assistantサーバーは同じ速度で処理している可能性があります。

テック&AIハブ

もっと読む

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.