অ্যান্ড্রয়েড ৯-এ থাকা ওয়াই-ফাই রাউন্ড ট্রিপ টাইম (RTT) বৈশিষ্ট্যটি সাপোর্টিং ডিভাইসগুলিকে অন্যান্য সাপোর্টিং ডিভাইসগুলির দূরত্ব পরিমাপ করতে সক্ষম করে: সেগুলি অ্যাক্সেস পয়েন্ট (AP) হোক বা ওয়াই-ফাই অ্যাওয়্যার পিয়ার (যদি ডিভাইসে ওয়াই-ফাই অ্যাওয়্যার সমর্থিত থাকে)। IEEE 802.11mc এবং IEEE 802.11az প্রোটোকলের উপর নির্মিত এই বৈশিষ্ট্যটি (অ্যান্ড্রয়েড ১৫ থেকে উপলব্ধ), অ্যাপগুলিকে উন্নত অবস্থান নির্ভুলতা এবং সচেতনতা ব্যবহার করতে সক্ষম করে।
উদাহরণ এবং উৎস
এই বৈশিষ্ট্যটি ব্যবহার করতে, ভেন্ডর HAL ইন্টারফেসটি বাস্তবায়ন করুন। অ্যান্ড্রয়েড ১৪ এবং তার পরবর্তী সংস্করণে, ভেন্ডর HAL ইন্টারফেসটি AIDL ব্যবহার করে সংজ্ঞায়িত করা হয়েছে। অ্যান্ড্রয়েড ১৩ এবং তার পরবর্তী সংস্করণে, ভেন্ডর HAL ইন্টারফেসটি HIDL ব্যবহার করে সংজ্ঞায়িত করা হয়েছে। অ্যান্ড্রয়েড ৮.০-এ, HIDL পূর্ববর্তী হার্ডওয়্যার অ্যাবস্ট্রাকশন লেয়ার (HAL) কাঠামোটি প্রতিস্থাপন করেছে যা ইন্টারফেস এবং প্যাকেজগুলিতে সংগৃহীত প্রকার এবং পদ্ধতি কলগুলি নির্দিষ্ট করে বাস্তবায়নগুলিকে সহজতর করার জন্য ব্যবহৃত হত।
Wi-Fi RTT বৈশিষ্ট্যটি ব্যবহার করতে Wi-Fi ইন্টারফেস অনুসরণ করুন। কোন ইন্টারফেসটি বাস্তবায়িত হয়েছে তার উপর নির্ভর করে, এটি হল:
- AIDL:
hardware/interfaces/wifi/aidl - HIDL:
hardware/interfaces/wifi/1.0বা তার পরবর্তী।
AIDL এবং HIDL ইন্টারফেসের সাথে এটি কীভাবে সম্পর্কিত তা দেখতে আপনি লিগ্যাসি ওয়াই-ফাই HAL দেখতে পারেন: hardware/libhardware_legacy/+/android16-release/include/hardware_legacy/rtt.h ।
বাস্তবায়ন
Wi-Fi RTT বাস্তবায়নের জন্য, আপনাকে ফ্রেমওয়ার্ক এবং HAL/ফার্মওয়্যার উভয় সমর্থন প্রদান করতে হবে:
কাঠামো:
- AOSP কোড
- ওয়াই-ফাই RTT সক্ষম করুন: একটি বৈশিষ্ট্য ফ্ল্যাগ প্রয়োজন
ওয়াই-ফাই আরটিটি (IEEE 802.11mc অথবা IEEE 802.11az) HAL সাপোর্ট (যা ফার্মওয়্যার সাপোর্ট বোঝায়)
এই বৈশিষ্ট্যটি বাস্তবায়নের জন্য, Wi-Fi AIDL অথবা HIDL ইন্টারফেসটি বাস্তবায়ন করুন এবং বৈশিষ্ট্য পতাকাটি সক্ষম করুন:
device/<oem>/<device>এ অবস্থিতdevice.mkএ, Wi-Fi RTT বৈশিষ্ট্যের জন্য সমর্থন অন্তর্ভুক্ত করতেPRODUCT_COPY_FILESপরিবেশ ভেরিয়েবলটি পরিবর্তন করুন:PRODUCT_COPY_FILES += frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml
অন্যথায়, এই বৈশিষ্ট্যের জন্য প্রয়োজনীয় সবকিছু AOSP-তে অন্তর্ভুক্ত।
ম্যাক র্যান্ডমাইজেশন
গোপনীয়তা বৃদ্ধির জন্য, Wi-Fi RTT লেনদেনের সময় ব্যবহৃত MAC ঠিকানাটি অবশ্যই র্যান্ডমাইজ করা উচিত, অর্থাৎ, এটি Wi-Fi ইন্টারফেসের অন্তর্নির্মিত MAC ঠিকানার সাথে মেলে না। তবে, ব্যতিক্রম হিসাবে, যখন কোনও ডিভাইস একটি AP-এর সাথে যুক্ত থাকে, তখন এটি সেই AP বা অন্যান্য AP-এর সাথে যেকোনো RTT লেনদেনের জন্য যে MAC ঠিকানার সাথে যুক্ত তা ব্যবহার করতে পারে।
বৈধতা
এই বৈশিষ্ট্যের জন্য Android Compatibility Test Suite (CTS) পরীক্ষা বিদ্যমান। বৈশিষ্ট্যটি কখন সক্রিয় করা হয় তা CTS সনাক্ত করে এবং স্বয়ংক্রিয়ভাবে সংশ্লিষ্ট পরীক্ষাগুলি অন্তর্ভুক্ত করে। এই বৈশিষ্ট্যটি Vendor Test Suite (VTS) ব্যবহার করেও পরীক্ষা করা যেতে পারে।
ইউনিট পরীক্ষা
Wi-Fi RTT প্যাকেজ পরীক্ষাগুলি ব্যবহার করে সম্পাদিত হয়:
পরিষেবা পরীক্ষা:
atest com.android.server.wifi.rttম্যানেজার পরীক্ষা:
atest android.net.wifi.rttসিটিএস
এই বৈশিষ্ট্যের জন্য অ্যান্ড্রয়েড কম্প্যাটিবিলিটি টেস্ট স্যুট (CTS) পরীক্ষা বিদ্যমান। বৈশিষ্ট্যটি কখন সক্রিয় করা হয় তা CTS সনাক্ত করে এবং স্বয়ংক্রিয়ভাবে সংশ্লিষ্ট পরীক্ষাগুলি অন্তর্ভুক্ত করে। Wi-Fi RTT (IEEE 802.11mc) সমর্থন করে এমন একটি অ্যাক্সেস পয়েন্ট অবশ্যই ডিভাইস-আন্ডার-টেস্টের সীমার মধ্যে থাকতে হবে।
CTS পরীক্ষাগুলি ব্যবহার করে ট্রিগার করা যেতে পারে:
atest WifiRttTestক্রমাঙ্কন
Wi-Fi RTT ভালোভাবে পারফর্ম করার জন্য, 802.11mc বা 802.11az প্রোটোকলে ফেরত দেওয়া রেঞ্জগুলি এই বিভাগে বর্ণিত মূল কর্মক্ষমতা সূচক (KPI) এর মধ্যে সঠিক হতে হবে।
১১ এমসি প্রোটোকলের জন্য, তালিকাভুক্ত ব্যান্ডউইথগুলিতে (৮০ মেগাহার্টজ, ৪০ মেগাহার্টজ, ২০ মেগাহার্টজ) এবং ৮ এর বার্স্ট আকারে, একটি পরিসর অনুমানের জন্য কেপিআই ত্রুটির ৯০ তম শতাংশে নিম্নলিখিত নির্ভুলতা অর্জন করবে বলে আশা করা হচ্ছে।
- ৮০ মেগাহার্টজ: ২ মিটার
- ৪০ মেগাহার্টজ: ৪ মিটার
- ২০ মেগাহার্টজ: ৮ মিটার
১১এজেড প্রোটোকলের জন্য, অ্যান্টেনা MIMO কনফিগারেশন এবং দীর্ঘ প্রশিক্ষণ ক্ষেত্র (LTF) পুনরাবৃত্তি নির্ভুলতাকে প্রভাবিত করে। একটি সাধারণ মোবাইল ফোন (২টি অ্যান্টেনা ব্যবহার করে) এবং অ্যাক্সেস পয়েন্ট (৪টি অ্যান্টেনা) সহ, সিস্টেমটিতে 2x4 MIMO কনফিগারেশন থাকে। দুটি LTF পুনরাবৃত্তি ফ্যাক্টর ব্যবহার করে এবং তালিকাভুক্ত ব্যান্ডউইথগুলিতে (১৬০ মেগাহার্টজ, ৮০ মেগাহার্টজ, ৪০ মেগাহার্টজ, ২০ মেগাহার্টজ) এই ধরণের কনফিগারেশনের জন্য, একটি পরিসর অনুমানের জন্য KPI ত্রুটির ৯০ শতাংশে নিম্নলিখিত নির্ভুলতা অর্জন করবে বলে আশা করা হচ্ছে।
- ১৬০ মেগাহার্টজ: ০.৫ মিটার
- ৮০ মেগাহার্টজ: ১ মিটার
- ৪০ মেগাহার্টজ: ২ মিটার
- ২০ মেগাহার্টজ: ৪ মিটার
বৈশিষ্ট্যটির বাস্তবায়ন সঠিকভাবে কাজ করছে কিনা তা যাচাই করার জন্য, ক্যালিব্রেশন পরীক্ষা করা প্রয়োজন।
ক্রমবর্ধমান দূরত্বে RTT আনুমানিক পরিসরের সাথে একটি গ্রাউন্ড ট্রুথ রেঞ্জের তুলনা করে এটি অর্জন করা যেতে পারে। মৌলিক সামঞ্জস্যের জন্য, আমরা সুপারিশ করছি যে আপনি RTT ক্যালিব্রেটেড হিসাবে পরিচিত একটি ডিভাইসের সাথে আপনার সমাধান যাচাই করুন। আমরা নিম্নলিখিত শর্তাবলীর অধীনে রেঞ্জ ক্যালিব্রেশন পরীক্ষা করার পরামর্শ দিচ্ছি:
- একটি বৃহৎ উন্মুক্ত পরীক্ষাগার, অথবা এমন একটি করিডোর যেখানে খুব বেশি ধাতব বস্তু নেই যার ফলে বহু-পথের অস্বাভাবিকভাবে বেশি ঘটনা ঘটতে পারে।
- কমপক্ষে ২৫ মিটার দীর্ঘ একটি লাইন-অফ-সাইট (LOS) ট্র্যাক বা পথ।
- ট্র্যাকের এক প্রান্ত থেকে অন্য প্রান্তে ০.৫ মিটার বৃদ্ধির মার্কার।
ট্র্যাকের এক প্রান্তে মেঝে থেকে ২০ সেমি উপরে একটি RTT সক্ষম অ্যাক্সেস পয়েন্ট সুরক্ষিত করার জন্য একটি জায়গা এবং একটি অ্যান্ড্রয়েড ফোনের (অথবা পরীক্ষাধীন অন্যান্য অ্যান্ড্রয়েড মোবাইল ডিভাইস) জন্য একটি চলমান মাউন্ট যা ট্র্যাক বরাবর সরানো যেতে পারে এবং ০.৫ মিটার মার্কারগুলির সাথে সারিবদ্ধ করা যেতে পারে, মেঝে থেকে ২০ সেমি উপরেও।
আমরা সুপারিশ করছি যে আপনি প্রতিটি মার্কারে ৫০টি রেঞ্জিং ফলাফল রেকর্ড করুন, সাথে অ্যাক্সেস পয়েন্ট থেকে দূরত্বও। প্রতিটি মার্কার অবস্থানের জন্য রেঞ্জ গড় এবং ভ্যারিয়েন্সের মতো পরিসংখ্যান গণনা করা উচিত।
ধাপ ৫-এর ফলাফল থেকে, আনুমানিক পরিসর (y-অক্ষ) এর বিপরীতে স্থল সত্য (x-অক্ষ) এবং আনুমানিক সর্বোত্তম ফিট রিগ্রেশন লাইনের জন্য একটি চার্ট তৈরি করা যেতে পারে। আদর্শ ডিভাইস ক্যালিব্রেশনের ফলে y-অক্ষে 0.0m অফসেট সহ গ্রেডিয়েন্ট 1.0 এর একটি রেখা তৈরি হবে। এই মানগুলি থেকে বিচ্যুতি গ্রহণযোগ্য যদি সেগুলি সংশ্লিষ্ট ব্যান্ডউইথের জন্য KPI-এর মধ্যে থাকে। যদি ফলাফল KPI-এর বাইরে থাকে, তাহলে আমরা সুপারিশ করি যে আপনি KPI স্পেসিফিকেশনের মধ্যে ফলাফল আনতে ডিভাইস বৈশিষ্ট্যটি পুনরায় ক্যালিব্রেট করুন।