اختبار إمكانية اتصال أجهزة متعددة

خلفية

يمكن تشغيل عدة أجهزة افتراضية من Cuttlefish من خلال تنفيذ الأمر التالي:

launch_cvd --num_instances=n

عند تشغيل مثيلَين أو أكثر باستخدام العلامة --num_instances، تتشارك المثيلات وسيط الاتصال لشبكة Wi-Fi والبلوتوث. يسمح هذا الإعداد لأجهزة Cuttlefish الافتراضية باكتشاف بعضها البعض والاتصال ببعضها البعض عبر البلوتوث وشبكة Wi-Fi بدون اتّخاذ أي إجراء إضافي.

ومع ذلك، إذا كنت تنفّذ مثيلات متعددة باستخدام العلامة --base_instance_num وعمليات استدعاء متعددة launch_cvd، عليك تحديد مسار خادم المضيف الافتراضي wmediumd لمشاركة وسيط Wi-Fi، وعليك أيضًا منع تشغيل مثيلات متعددة من الأجهزة الافتراضية لنقطة الوصول.

مثال على إطلاق تطبيق مصمّم لأجهزة متعدّدة

توضّح الأوامر التالية كيفية تشغيل مثيلَين من Cuttlefish يتشاركان وسيط Wi-Fi باستخدام التنفيذ التسلسلي للأمر 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

بلوتوث

يتوافق تنفيذ بلوتوث في Cuttlefish مع rootcanal ويمكن التحكّم فيه باستخدام وحدة تحكّم سطر الأوامر في واجهة المستخدم على الويب.

في وحدة التحكّم، هناك العديد من الأوامر التي تتيح التحكّم في البلوتوث على جهاز الضيف:

الأمر الوصف
list عرض قائمة بالأجهزة الحالية والأجهزة الافتراضية
add DEVICE_TYPE [ARGS] إنشاء جهاز جديد من النوع DEVICE_TYPE
del DEVICE_INDEX حذف جهاز
add_phy PHY_TYPE إضافة phy جديد باستخدام PHY_TYPE
del_phy PHY_INDEX حذف phy
add_device_to_phy DEVICE_INDEX PHY_INDEX إضافة جهاز إلى phy
del_device_from_phy DEVICE_INDEX PHY_INDEX حذف جهاز من phy
add_remote HOSTNAME PORT PHY_TYPE إضافة جهاز Rootcanal عن بُعد وتسجيله في phy
نوع الجهاز والوسيطات
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 هي أداة سطر أوامر تتحكّم في وسيط اتصال Wi-Fi. تتضمّن الأداة الأوامر التالية للتعامل مع شبكة Wi-Fi:

الأمر الوصف
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE ضبط قيمة نسبة الإشارة إلى الضوضاء (0~255) بين محطتَين
start_pcap PCAP_FILE_PATH ابدأ بتسجيل جميع الحزم المرسَلة عبر الأثير وحفظها في ملف .pcap
stop_pcap إيقاف عملية التقاط الحزمة الحالية وإكمالها
list_stations عرض جميع المحطات المرتبطة بـ wmediumd
reload_config [CONFIG_FILE_PATH] إعادة تحميل إعدادات wmediumd باستخدام CONFIG_FILE_PATH، إذا تم حذف CONFIG_FILE_PATH، تتم إعادة تحميل ملف الإعدادات المحمّل حاليًا
set_position MAC_ADDR X_POSITION Y_POSITION ضبط موضع المحطة في مساحة ثنائية الأبعاد

OpenWRT

إذا أردت الاتصال بنظام OpenWRT (نقطة وصول)، يمكنك استخدام ssh أو صفحة الويب الخاصة بالمشرف.

نوع الاتصال الطريقة
ssh
ssh root@192.168.96.2
صفحة الويب الخاصة بالمشرف https://192.168.96.2