โครงการ OpenWifi พร้อมการใช้งานชิป Wi-Fi แบบเปิดที่ใช้ FPGA และ SDR

ในการประชุม FOSDEM 2020 ครั้งล่าสุด นำเสนอ โครงการ openwifiเป็นการพัฒนาการใช้งานแบบเปิดครั้งแรกของสแต็ก Wi-Fi 802.11a/g/n เต็มรูปแบบ รูปร่างของสัญญาณและการมอดูเลชันที่ระบุในซอฟต์แวร์ (SDR, Software Defined Radio) OpenWifi ช่วยให้คุณสร้างการใช้งานที่มีการควบคุมอย่างสมบูรณ์ของส่วนประกอบทั้งหมดของอุปกรณ์ไร้สาย รวมถึงเลเยอร์ระดับต่ำ ซึ่งในอแด็ปเตอร์ไร้สายทั่วไปจะถูกใช้งานในระดับชิปที่ไม่สามารถตรวจสอบได้ รหัส ส่วนประกอบซอฟต์แวร์และ ไดอะแกรมและคำอธิบาย บล็อกฮาร์ดแวร์ในภาษา Verilog สำหรับ FPGA ได้รับการเผยแพร่ภายใต้ใบอนุญาต AGPLv3

ส่วนประกอบฮาร์ดแวร์ของต้นแบบการทำงานที่สาธิตนั้นใช้ Xilinx Zynq FPGA และตัวรับส่งสัญญาณสากล (RF) AD9361 OpenWifi ใช้สถาปัตยกรรม SoftMAC ซึ่งหมายถึงการใช้งานสแต็กไร้สายหลัก 802.11 (MAC สูง) ที่ฝั่งคนขับ และการมีอยู่ของเลเยอร์ MAC ต่ำที่ฝั่ง FPGA สแตกไร้สายใช้ระบบย่อย mac80211 ที่ได้รับจากเคอร์เนล Linux การโต้ตอบกับ SDR ดำเนินการผ่านไดรเวอร์พิเศษ

โครงการ OpenWifi พร้อมการใช้งานชิป Wi-Fi แบบเปิดที่ใช้ FPGA และ SDR

คุณสมบัติหลัก:

  • รองรับ 802.11a/g อย่างเต็มรูปแบบ และรองรับ 802.11n MCS 0~7 บางส่วน (PHY rx เท่านั้นในตอนนี้) มีแผนรองรับ 802.11ax;
  • แบนด์วิธ 20MHz และช่วงความถี่ตั้งแต่ 70 MHz ถึง 6 GHz;
  • โหมดการทำงาน: สำหรับสิ่งนี้สิ่งนั้นโดยเฉพาะ (เครือข่ายของอุปกรณ์ไคลเอนต์) จุดเชื่อมต่อ สถานีและการตรวจสอบ
  • การใช้งานโปรโตคอลลิงค์เลเยอร์ในด้าน FPGA ดี.ซี.เอฟ (ฟังก์ชันการประสานงานแบบกระจาย) โดยใช้วิธี CSMA/CA ให้เวลาการประมวลผลเฟรม (ซิฟส์) ที่ระดับ 10us;
  • พารามิเตอร์ลำดับความสำคัญการเข้าถึงช่องที่กำหนดค่าได้: ระยะเวลา RTS/CTS, CTS-to-self, SIFS, DIFS, xIFS, slot-time ฯลฯ
  • การแบ่งส่วนเวลา (การแบ่งเวลา) ตามที่อยู่ MAC;
  • แบนด์วิธและความถี่ที่เปลี่ยนแปลงได้ง่าย:
    2MHz สำหรับ 802.11ah และ 10MHz สำหรับ 802.11p;

โครงการ OpenWifi พร้อมการใช้งานชิป Wi-Fi แบบเปิดที่ใช้ FPGA และ SDR

ปัจจุบัน OpenWifi ให้บริการ สนับสนุน แพลตฟอร์ม SDR ที่ใช้ FPGA
Xilinx ZC706 พร้อมตัวรับส่งสัญญาณ Analog Devices FMCOMMS2/3/4 รวมถึงบันเดิล (FPGA + RF) ADRV9361Z7035 SOM + ADRV1CRR-BOB และ ADRV9361Z7035 SOM + ADRV1CRR-FMC สร้างขึ้นเพื่อการโหลด ภาพที่เสร็จแล้ว การ์ด SD ที่ใช้ ARM Linux มีแผนรองรับ ADRV9364Z7020 SOM + ADRV1CRR-BOB, Xilinx zed + FMCOMMS2/3/4, Xilinx ZCU102 + FMCOMMS2/3/4 และ
ซีลินซ์ ZCU102 + ADRV9371. ค่าใช้จ่ายของส่วนประกอบที่เกี่ยวข้องกับต้นแบบ OpenWifi ตัวแรกอยู่ที่ประมาณ 1300 ยูโร แต่กำลังดำเนินการย้ายไปยังบอร์ดราคาถูกกว่า เช่น ต้นทุนของโซลูชันขึ้นอยู่กับ อุปกรณ์อะนาล็อก ADRV9364-Z7020 จะเป็น 700 ยูโรและตามพื้นฐาน ซินคิว NH7020 - 400 ยูโร

การทดสอบประสิทธิภาพของการเชื่อมต่อไคลเอนต์ด้วยอะแดปเตอร์ USB TL-WDN4200 N900 กับจุดเข้าใช้งาน OpenWifi ช่วยให้เราได้รับทรูพุตที่ 30.6Mbps (TCP) และ 38.8Mbps (UDP) เมื่อถ่ายโอนข้อมูลจากจุดเข้าใช้งานไปยังไคลเอนต์และ 17.0Mbps (TCP) และ 21.5Mbps (UDP) เมื่อส่งจากไคลเอนต์ไปยังจุดเข้าใช้งาน สำหรับการจัดการ สามารถใช้ยูทิลิตี้ Linux มาตรฐาน เช่น ifconfig และ iwconfig รวมถึงยูทิลิตี้พิเศษ sdrctl ซึ่งทำงานผ่าน netlink และช่วยให้คุณควบคุมการทำงานของ SDR ในระดับต่ำ (จัดการการลงทะเบียน เปลี่ยนการตั้งค่าการแบ่งเวลา ฯลฯ)

ในบรรดาโปรเจ็กต์ที่เปิดอื่นๆ ที่กำลังทดลองใช้สแต็ก Wi-Fi เราสามารถสังเกตโปรเจ็กต์นี้ได้ วิมการพัฒนาตามมาตรฐาน IEEE 802.11 a/g/p เครื่องส่งสัญญาณ ขึ้นอยู่กับ GNU Radio และพีซีทั่วไป ซอฟต์แวร์เปิด 802.11 สแต็กไร้สายก็กำลังพัฒนาโครงการเช่นกัน ซีเรีย и โซระ (วิทยุซอฟต์แวร์การวิจัยของ Microsoft)

โครงการ OpenWifi พร้อมการใช้งานชิป Wi-Fi แบบเปิดที่ใช้ FPGA และ SDR

ที่มา: opennet.ru

เพิ่มความคิดเห็น