Testowanie łączności wielu urządzeń

Tło

Aby uruchomić kilka urządzeń wirtualnych Cuttlefish, wykonaj to polecenie:

launch_cvd --num_instances=n

Jeśli uruchamiasz co najmniej 2 instancje za pomocą flagi --num_instances, instancje te udostępniają medium łączności dla Wi-Fi i Bluetooth. To ustawienie umożliwia instancjom Cuttlefish wykrywanie się i nawiązywanie połączeń za pomocą Bluetooth i Wi-Fi bez konieczności wykonywania dodatkowych czynności.

Jeśli jednak uruchamiasz wiele instancji za pomocą parametru --base_instance_num i wielu wywołań launch_cvd, musisz podać ścieżkę do serwera vhost wmediumd, aby udostępnić medium Wi-Fi, a także zapobiec uruchamianiu wielu instancji maszyn wirtualnych dla AP.

Przykład uruchamiania na wielu urządzeniach

Poniższe polecenia pokazują, jak uruchomić 2 wystąpienia Cuttlefish, które korzystają z medium Wi-Fi, za pomocą sekwencyjnego wykonywania launch_cvd.

launch_cvd
launch_cvd --base_instance_num=2 \
  --vhost_user_mac80211_hwsim=$HOME/cuttlefish_runtime.1/internal/vhost_user_mac80211 \
  --ap_kernel_image="" --ap_rootfs_image="" #Prevent launching multiple VM instances for AP

Bluetooth

Implementacja Bluetooth w Cuttlefish jest obsługiwana przez rootcanal i może być kontrolowana za pomocą konsoli wiersza poleceń w interfejsie internetowym.

W konsoli jest kilka poleceń, które umożliwiają sterowanie Bluetoothem na urządzeniu gościa:

Polecenie Opis
list Lista obecnych urządzeń i fizycznych
add DEVICE_TYPE [ARGS] Utwórz nowe urządzenie typu DEVICE_TYPE
del DEVICE_INDEX Usuwanie urządzenia
add_phy PHY_TYPE Dodawanie nowego PHY z PHY_TYPE
del_phy PHY_INDEX Usuwanie phy
add_device_to_phy DEVICE_INDEX PHY_INDEX Dodawanie urządzenia do PHY
del_device_from_phy DEVICE_INDEX PHY_INDEX Usuwanie urządzenia z fizycznej
add_remote HOSTNAME PORT PHY_TYPE Dodaj zdalny Rootcanal jako urządzenie i zarejestruj go w phy
Typ urządzenia i argumenty
beacon [MAC_ADDRESS] [ADVERTISE_INTERVAL]
scripted_beacon [MAC_ADDRESS] [CONFIG_PATH] [EVENTS_PATH]
keyboard [MAC_ADDRESS] [ADVERTISE_INTERVAL]
loopback [MAC_ADDRESS] [ADVERTISE_INTERVAL]
sniffer

Wi-Fi

wmediumd_control

wmediumd_control to narzędzie wiersza poleceń, które umożliwia sterowanie połączeniem Wi-Fi. Narzędzie ma te polecenia do manipulowania Wi-Fi:

Polecenie Opis
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE Ustaw wartość SNR (0–255) między dwoma stacjami
start_pcap PCAP_FILE_PATH Rozpocznij przechwytywanie wszystkich ramek przesyłanych w sieci i zapisywanie ich w pliku .pcap.
stop_pcap Zatrzymaj i zakończ bieżące przechwytywanie pakietów.
list_stations Wyświetlanie listy wszystkich stacji podłączonych do wmediumd
reload_config [CONFIG_FILE_PATH] Wczytaj ponownie konfigurację wmediumd za pomocą parametru CONFIG_FILE_PATH. Jeśli parametr CONFIG_FILE_PATH zostanie pominięty, wczytaj aktualnie wczytywany plik konfiguracji.
set_position MAC_ADDR X_POSITION Y_POSITION Ustaw położenie stacji w dwudwumiarowej przestrzeni

OpenWRT

Jeśli chcesz połączyć się z OpenWRT (Access Point), możesz użyć ssh lub strony administracyjnej.

Typ połączenia Metoda
ssh
ssh root@192.168.96.2
Strona administracyjna https://192.168.96.2