Android Automotive の FTP プロトコル — 技術的な詳細
車の Android Automotive インフォテインメント システムは、ネットワークに接続されたデバイスと同じプロトコル スタックを使用して FTP サーバーと通信します。主な違いはコンテキストです。転送は主に自宅の WiFi に駐車しているときに行われ、車の電源管理は接続の持続性に影響し、大型のタッチスクリーンによりサーバーのナビゲーションが快適になります。
このページでは、自動車ハードウェア上の FTP のプロトコル レベルの詳細、つまり接続メカニズム、電源状態の処理、WiFi に関する考慮事項、自動車ベースのファイル転送のためのサーバーの最適化について説明します。
自動車関連のネットワーク アーキテクチャ
車の WiFi 接続
Android Automotive 車両は、次の 2 つのシナリオで WiFi に接続します。
自宅/既知の WiFi (FTP のプライマリ):
- 自宅のWiFi範囲内のガレージ/私道に駐車した車
- 強力で安定した接続
- ローカルネットワークリソースへのフルスピードアクセス
- 同一LAN上のFTPサーバーに直接アクセス可能
モバイルホットスポット/公衆Wi-Fi:
- 電話またはポータブルホットスポット接続
- 可変速度と安定性
- インターネット FTP サーバーにアクセスできます (セキュリティ上推奨されません)
- 制限された帯域幅
FTP データフロー
[Car Infotainment] ←WiFi→ [Router] ←Ethernet→ [NAS/FTP Server]
↑ ↑
AnExplorer FTP client FTP server (port 21)
Passive data channels Passive port range
すべてのトラフィックはホーム ルーターを通過します。車は、電話やラップトップと同様、ネットワーク上の単なるクライアントです。特別なインフラストラクチャは必要ありません。
IP 構成
ほとんどの車は、ホーム ルーターから DHCP 経由で IP を受信します。
- 車に IP が割り当てられます (例: 192.168.1.X)
- 同じサブネット上の任意のデバイスにアクセス可能
- DNS 解決はホスト名に対して機能します
- 車側に静的 IP は必要ありません
ヒント: 車に保存された FTP ブックマークが常に正しいアドレスに接続できるように、NAS/FTP サーバーに静的 IP または DHCP 予約を与えます。
プロトコルの仕組み
接続の確立
Car → Server: TCP SYN to port 21
Server → Car: TCP SYN-ACK
Car → Server: TCP ACK (connection established)
Server → Car: 220 Welcome banner
Car → Server: USER car-sync
Server → Car: 331 Password required
Car → Server: PASS ********
Server → Car: 230 Login successful
標準の FTP ハンドシェイク。車の Android ネットワーク スタックは TCP の確立を処理します。AnExplorer は、FTP プロトコル層を管理します。
転送操作
ダウンロード (RETR):
Car → Server: TYPE I (binary mode)
Car → Server: PASV
Server → Car: 227 (passive port: server:50001)
Car → Server: RETR /media/music/album/track.flac
Car ← Server: [file data flows on passive connection]
Server → Car: 226 Transfer complete
アップロード (STOR):
Car → Server: PASV
Server → Car: 227 (passive port)
Car → Server: STOR /upload/dashcam/2024-01-15.mp4
Car → Server: [file data flows from car]
Car → Server: 226 Transfer complete
ディレクトリ操作
- リスト: 完全なディレクトリのリスト (参照に使用)
- NLST: 名前のみのリスト (軽量、高速)
- MKD: ディレクトリの作成 (アップロード組織用)
- CWD: ディレクトリの変更 (ナビゲーション)
- PWD: 作業ディレクトリ (現在の場所) を印刷します。
- SIZE: ダウンロード前にファイル サイズを取得します
自動車固有の考慮事項
電源管理
車載インフォテインメント システムには独自の電源状態があります。
| 状態 | WiFi | FTP への影響 |
|---|---|---|
| エンジンオン、駐車中 | ✅ アクティブ | 完全な FTP 機能 |
| エンジンオフ、ディスプレイオン | ✅ 普段はアクティブ | FTP はシステムがスリープするまで動作します。 |
| エンジンオフ、ディスプレイオフ | ⚠️ 5月のタイムアウト | 接続が切断される可能性があります |
| 深い眠り | ❌ オフ | ネットワーク アクセスがありません |
信頼性の高い FTP を実現するには: 移動中は車を「覚醒」状態に保ちます。ほとんどの車両では、インフォテインメント ディスプレイをアクティブにすると WiFi が維持されます。一部の車両では、エンジンを作動させずにシステム電力を維持する「アクセサリー モード」(ACC へのイグニッション)が可能です。
熱に関する考慮事項
車のコンピューティング ハードウェアは、極端な温度下でサーマル スロットルを発生する可能性があります。
- 太陽の下で暑い車: CPU スロットリングにより転送が遅くなる可能性があります
- 冬の寒い車内: バッテリーがシステム電力を制限する可能性があります
- 気候制御が役立ちます: 車内の空調も電子機器を快適に保ちます
- FTP への影響: 熱負荷がかかると転送がわずかに遅くなりますが、機能します。
ストレージ システム
Android Automotive 車両には次の機能があります。
- 内部フラッシュ ストレージ: 通常 32 ~ 128 GB。高速 I/O。主要なダウンロード先。
- USB ドライブ: 車の USB ポート経由で接続します。速度はUSBのバージョンとドライブによって異なります。
- SD カード スロット: 一部の車両にはこれらが含まれています。USB のパフォーマンスと同様。
FTP ダウンロードは、 AnExplorer で移動するストレージに書き込みます。内部ストレージは最速です。USB の方が持ち運びに便利です。
自動車用途向けのサーバーの最適化
タイムアウト設定
車はゆっくりと走行する場合があります(タッチインターフェイス、短時間の中断)。サーバーのタイムアウトを余裕を持って設定します。
# Server-side recommended settings
idle_session_timeout=300 # 5 minutes idle before disconnect
data_connection_timeout=300 # 5 minutes for data channel
デフォルトのタイムアウト (多くの場合 60 秒) では、通常のブラウジング中に道路を眺めたり車両のコントロールを操作するために一時停止したりすると、車両の接続が切断されることがあります。
転送再開 (REST)
サーバー側の再開サポートを有効にします。車の WiFi が転送中に切断された場合 (通信範囲外に移動した、信号の干渉)、接続が回復するとダウンロードを再開できます。
# Most servers enable this by default
# Verify with: FEAT command should list REST STREAM
ディレクトリの一覧表示速度
大規模なメディア ライブラリの場合、1 つのフォルダーに数千のファイルがある場合、ディレクトリの一覧表示が遅くなることがあります。最適化する:
- リストをすばやく表示するには、フォルダーごとにファイル数が 100 未満になるようにします
- サブディレクトリを使用して整理します (アーティスト → アルバム → トラック)
- 非常に深いネストは避けてください (車のタッチスクリーン ナビゲーションは 10 レベルがないと十分に遅くなります)
転送パフォーマンスのベンチマーク
一般的な自動車ハードウェアでテスト済み:
| コンテンツ | ファイルサイズ | 5GHz WiFi での時間 | 2.4GHz WiFi での時間 |
|---|---|---|---|
| MP3 ソング | 5MB | < 1 秒 | 1~2秒 |
| FLACアルバム | 400MB | 4~20秒 | 20~80秒 |
| 映画 (1080p) | 2GB | 20~100秒 | 100~400秒 |
| ポッドキャスト バッチ (10 eps) | 300MB | 3~15秒 | 15~60秒 |
| ドライブレコーダーのアップロード (1 時間) | 4GB | 40~200秒 | 200~800秒 |
車のルーターと車のハードウェアがサポートしている場合は、車には 5 GHz WiFi を強く推奨します。2.4 GHz と比較して、スループットの差は 4 ~ 5 倍です。
自動車関連のセキュリティ
脅威モデル
- 車は自宅の WiFi に接続されている → 自宅のデバイスと同じセキュリティ
- 誰かが車のシステムにアクセスすると、FTP 認証情報が危険にさらされる
- 車のロックが解除されている場合、認証情報を含む保存されたブックマークにアクセス可能
緩和策
- 制限付き権限 FTP アカウント: 「car-sync」ユーザーはメディアへのアクセスとディレクトリのアップロードのみが可能
- ホーム WiFi 暗号化: WPA2/WPA3 は無線上のすべてのトラフィックを暗号化します
- SFTP の代替: 暗号化された接続には SFTP を使用します (少し遅いですが安全です)
- 車両PIN/ロック: セキュリティPINでインフォテインメント システムを保護します。
してはいけないこと
- 家の外から車でアクセスするために FTP をインターネットに公開しないでください
- 管理者アカウントと同じ FTP 認証情報を使用しないでください
- 機密ファイル (銀行業務、個人文書) を車からアクセスできる共有場所に保存しないでください。
- VPN を使用せずに公共 WiFi またはセルラー経由で FTP を使用しないでください。
自動車ワークフローとの統合
自動化されたコンテンツ パイプライン
車用のコンテンツを準備するサーバー側システムをセットアップします。
- サーバー スクリプト が毎晩実行されます。ポッドキャストのダウンロード、音楽の整理、コンテンツの
/car-content/new/への移動 - 車のルーチン (WiFi に駐車している場合): FTP に接続し、
/new/フォルダーを確認し、新しいコンテンツをダウンロードします。 - ダウンロード後: サーバーはファイルを
/new/から/archived/に移動します
これにより、「メールボックス」システムが作成されます。サーバーが準備し、自動車が消費します。
車載カメラパイプライン
車載カメラの映像のバックアップの場合:
- 毎日の運転: ドライブレコーダーの録画を車の USB/内部ストレージに保存します。
- 夕方 (駐車中): AnExplorer を開く → FTP に接続する → 車載カメラのフォルダーに移動する
- アップロード: その日の映像を NAS に送信します (サーバーは日付ごとに整理します)。
- クリーンアップ: アップロードされた映像を車のストレージ (空き領域) から削除します。
- NAS 側: 保持ポリシーを適用します (過去 30 日間保持、イベントをアーカイブ)
代替プロトコルの比較
| プロトコル | 自動車用途に最適 | 利点 | 制限 |
|---|---|---|---|
| FTP | メディアの一括読み込み | 速くて簡単 | 暗号化されていない |
| SFTP | 安全な転送 | 暗号化された | FTP よりも遅い |
| 中小企業 | メディアストリーミング | ダウンロードせずにストリーミング | 再生は WiFi に依存 |
| ウェブDAV | クラウド/ネクストクラウド | ファイアウォールに優しい | HTTPS オーバーヘッド |
車への推奨事項: コンテンツを内部ストレージに一括ロードするための FTP。ローカルに保存したくないストリーミング メディア用の SMB。セキュリティが懸念される場合は SFTP。
関連ガイド
- Android Automotive 用 FTP クライアント — FTP 機能の概要
- Android Automotive 用ビデオ プレーヤー — ダウンロードしたビデオを再生します
- Android Automotive の WebDAV — 代替プロトコル
- Android TV 用音楽プレーヤー — 同様のオーディオ設定
