ওয়াই - ফাই ডিরেক্ট

ওয়াই-ফাই ডাইরেক্ট বৈশিষ্ট্য, যা ওয়াই-ফাই পি২পি নামেও পরিচিত, সহায়ক ডিভাইসগুলিকে ইন্টারনেট বা মোবাইল নেটওয়ার্ক অ্যাক্সেস ছাড়াই ওয়াই-ফাই ডাইরেক্ট প্রোটোকল ব্যবহার করে সরাসরি একে অপরের সাথে সংযোগ স্থাপন করতে এবং আবিষ্কার করতে দেয়। ওয়াই-ফাই অ্যালায়েন্স (ডব্লিউএফএ) ওয়াই-ফাই ডাইরেক্ট স্পেসিফিকেশনের উপর নির্মিত এই বৈশিষ্ট্যটি বিশ্বস্ত ডিভাইস এবং অ্যাপগুলির মধ্যে হাই-থ্রুপুট ডেটা ভাগ করে নেওয়ার অনুমতি দেয় যা অন্যথায় নেটওয়ার্কের বাইরে থাকে।

উদাহরণ এবং উৎস

এই বৈশিষ্ট্যটি ব্যবহার করার জন্য, ডিভাইস নির্মাতাদের অবশ্যই Wi-Fi বিক্রেতা এবং সরবরাহকারী HAL ইন্টারফেসগুলি বাস্তবায়ন করতে হবে।

অ্যান্ড্রয়েড ১৩-তে, সাপ্লিক্যান্ট ইন্টারফেস HAL সংজ্ঞার জন্য AIDL ব্যবহার করে। অ্যান্ড্রয়েড ১৪ এবং তার উচ্চতর সংস্করণে, ভেন্ডর HAL ইন্টারফেস AIDL ব্যবহার করে। অ্যান্ড্রয়েড ১২ এবং তার নিম্ন সংস্করণে, সাপ্লিক্যান্ট এবং ভেন্ডর HAL ইন্টারফেস HIDL ব্যবহার করে সংজ্ঞায়িত করা হয়।

ওয়াই-ফাই ডাইরেক্ট বৈশিষ্ট্যটি ব্যবহার করার জন্য নিম্নলিখিত ওয়াই-ফাই HAL পৃষ্ঠগুলি প্রয়োজন:

  • hardware/interfaces/wifi/aidl অথবা, hardware/interfaces/wifi/1.3 বা উচ্চতর
  • hardware/interfaces/wifi/supplicant/aidl অথবা, hardware/interfaces/wifi/supplicant/1.2 বা উচ্চতর

বাস্তবায়ন

ডিভাইস নির্মাতাদের ফ্রেমওয়ার্ক এবং HAL/ফার্মওয়্যার উভয় সহায়তা প্রদান করতে হবে:

  • কাঠামো:
    • AOSP কোড
    • Wi-Fi Direct সক্ষম করুন: একটি বৈশিষ্ট্য পতাকা প্রয়োজন
  • ওয়াই-ফাই ডাইরেক্ট (P2P) HAL সাপোর্ট (যা ফার্মওয়্যার সাপোর্ট বোঝায়)

এই বৈশিষ্ট্যটি বাস্তবায়নের জন্য, ডিভাইস নির্মাতারা Wi-Fi HIDL বা AIDL ইন্টারফেসগুলি বাস্তবায়ন করে এবং Wi-Fi Direct এর জন্য বৈশিষ্ট্য পতাকা সক্ষম করে। device/<oem>/<device> এ অবস্থিত device.mk এ, Wi-Fi Direct বৈশিষ্ট্যটির জন্য সমর্থন অন্তর্ভুক্ত করতে PRODUCT_COPY_FILES পরিবেশ পরিবর্তনশীলটি পরিবর্তন করুন:

PRODUCT_COPY_FILES +=
frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml

ওয়াই-ফাই ডাইরেক্ট সমর্থনের জন্য অন্যান্য সমস্ত প্রয়োজনীয়তা AOSP-তে অন্তর্ভুক্ত।

ম্যাক র‍্যান্ডমাইজেশন

অ্যান্ড্রয়েডের জন্য ওয়াই-ফাই ডাইরেক্ট ডিভাইসের ঠিকানা এবং ইন্টারফেস ঠিকানা এলোমেলোভাবে তৈরি করা প্রয়োজন। এগুলি অবশ্যই ডিভাইসের প্রকৃত MAC ঠিকানা থেকে আলাদা হতে হবে এবং নিম্নলিখিত প্রয়োজনীয়তাগুলি পূরণ করতে হবে:

  • যদি কোনও স্থায়ী গ্রুপ সেভ না থাকে, তাহলে ইন্টারফেস তৈরির সময় Wi-Fi Direct ডিভাইসের ঠিকানাটি এলোমেলোভাবে করতে হবে; অন্যথায়, ডিভাইসের ঠিকানাটি শেষ তৈরি হওয়া MAC ঠিকানাটি ব্যবহার করে চলতে হবে।
  • ওয়াই-ফাই ডাইরেক্ট ইন্টারফেস ঠিকানা, যা গ্রুপ ঠিকানা নামেও পরিচিত, প্রতিবার সংযোগ স্থাপনের সময় এলোমেলোভাবে করতে হবে।

ওয়াই-ফাই ডাইরেক্ট ম্যাক র‍্যান্ডমাইজেশন 'wpa_supplicant'-এ বাস্তবায়িত হয় এবং দুটি কনফিগারেশন দ্বারা নিয়ন্ত্রিত হয়, p2p_device_random_mac_addr এবং p2p_interface_random_mac_addr

এই বৈশিষ্ট্যটি সক্ষম করতে, ডিভাইস নির্মাতাদের অবশ্যই:

  • Wi-Fi Supplicant ISupplicantP2pIface::setMacRandomization API বাস্তবায়ন করুন। বাস্তবায়িত ইন্টারফেসের উপর নির্ভর করে, এটি হল:
    • HIDL এর জন্য hardware/interface/wifi/supplicant/1.2
    • AIDL-এর জন্য hardware/interface/wifi/supplicant/aidl
  • একটি ডিভাইস কাস্টম ওভারলেতে config_wifi_p2p_mac_randomization_supported কে 'true' তে সেট করুন।

বৈধতা

অ্যান্ড্রয়েড ওয়াই-ফাই ডাইরেক্ট বৈশিষ্ট্যটি যাচাই করার জন্য ইউনিট পরীক্ষা, সামঞ্জস্যতা পরীক্ষা স্যুট (CTS) পরীক্ষা এবং CTS যাচাইকারী পরীক্ষার একটি সেট সরবরাহ করে। ভেন্ডর টেস্ট স্যুট (VTS) ব্যবহার করেও ওয়াই-ফাই ডাইরেক্ট পরীক্ষা করা যেতে পারে।

ইউনিট পরীক্ষা

নিম্নলিখিত পরীক্ষাগুলি ব্যবহার করে Wi-Fi Direct প্যাকেজটি যাচাই করুন।

পরিষেবা পরীক্ষা:

atest com.android.server.wifi.p2p

ম্যানেজার পরীক্ষা:

atest android.net.wifi.p2p

সামঞ্জস্যতা পরীক্ষা স্যুট (CTS) পরীক্ষা

ওয়াই-ফাই ডাইরেক্ট বৈশিষ্ট্যটি যাচাই করতে CTS পরীক্ষা ব্যবহার করুন। বৈশিষ্ট্যটি কখন সক্রিয় থাকে তা CTS সনাক্ত করে এবং স্বয়ংক্রিয়ভাবে সংশ্লিষ্ট পরীক্ষাগুলি অন্তর্ভুক্ত করে।

CTS পরীক্ষাগুলি ট্রিগার করতে, চালান:

atest android.net.wifi.p2p.cts

সিটিএস যাচাইকারী পরীক্ষা

CTS যাচাইকারী পরীক্ষা দুটি ডিভাইস ব্যবহার করে Wi-Fi Direct আচরণ যাচাই করে: একটি পরীক্ষামূলক ডিভাইস এবং একটি পরিচিত ভাল ডিভাইস। পরীক্ষাগুলি চালানোর জন্য, CTS যাচাইকারী খুলুন এবং Wi-Fi Direct Tests শিরোনামের বিভাগে যান।