ฉันกำลังพยายามใช้การเข้ารหัสเครือข่ายผ่านเครือข่ายแบบตาข่าย ดังนั้นฉันต้องส่งแพ็คเก็ตไปยังจุดหมายปลายทางหลายแห่งนี่คือวิธีที่ฉันใช้แพ็กเก็ตออกอากาศ แต่ฉันไม่สามารถเข้าใจได้ว่าทำไมสิ่งนี้ถึงถูก จำกัด ที่ ~ 990KB
มีการกำหนดค่าที่ต้องทำบ้างไหม?
ฉันกำลังพยายามใช้การเข้ารหัสเครือข่ายผ่านเครือข่ายแบบตาข่าย ดังนั้นฉันต้องส่งแพ็คเก็ตไปยังจุดหมายปลายทางหลายแห่งนี่คือวิธีที่ฉันใช้แพ็กเก็ตออกอากาศ แต่ฉันไม่สามารถเข้าใจได้ว่าทำไมสิ่งนี้ถึงถูก จำกัด ที่ ~ 990KB
มีการกำหนดค่าที่ต้องทำบ้างไหม?
คำตอบ:
ใน 802.11 แบบไร้สาย (ซึ่งฉันถือว่าเป็นกรณีของคุณ), โดยทั่วไปแล้วเฟรมคาสต์ / มัลติแคสต์ (รวมถึงเฟรมการจัดการจำนวนมาก) จะถูกส่งที่อัตราข้อมูลพื้นฐาน / พื้นฐาน / ต่ำสุดที่ต้องการ สิ่งนี้แยกจากอัตราข้อมูลที่รองรับ
โดยทั่วไปแล้วสำหรับช่วงที่ดีที่สุดและความเข้ากันได้สูงสุดค่าเริ่มต้นนี้คืออัตราข้อมูล 1Mbps แม้ว่าในช่วงหลายปีที่ผ่านมาผู้ขายบางรายได้เพิ่มค่าเริ่มต้นนี้
ผู้ขายบางรายยังรวมการแปลง multicast-to-unicast เพื่อติดตามไคลเอนต์ multicast ด้วย multicast snooping บางรูปแบบ แต่ฉันรู้ว่าไม่มีวิธีที่คล้ายกันสำหรับการออกอากาศ (อุปกรณ์ไร้สายไม่สามารถรู้ไคลเอ็นต์ทั้งหมดที่อาจจำเป็นต้องใช้ ในการเข้าถึง).
หากคุณกำลังพูดถึงเครือข่าย ad-hoc mesh บ่อยครั้งที่คุณไม่สามารถควบคุมสิ่งนี้ได้ในการตั้งค่าไดรเวอร์
อัตรามัลติคาสต์จะต้องเป็นตัวหารร่วมที่ต่ำที่สุดเพื่อให้อุปกรณ์ทั้งหมดสามารถรับได้สำเร็จ ไม่สามารถยอมรับเฟรมแบบหลายผู้รับ [1] ดังนั้นหากเพียร์ล้มเหลวในการรับเฟรมผู้ส่งจะไม่ทราบและจะไม่ส่งเฟรมอีกครั้ง การมีอัตราการสูญเสียมากกว่า 1% ต่อผู้รับเป็นเรื่องปกติ อัตราการสูญเสียที่สูงขึ้นสามารถคาดหวังได้หากมีการรับส่งข้อมูลแบบ unicast จำนวนมากที่เกิดขึ้นในช่องทางเดียวกัน
หากคุณเพิ่มอัตรามัลติคาสต์พื้นฐานคุณจะเพิ่มอัตราการสูญเสียด้วย แต่เนื่องจากคุณต้องรวมแพ็กเก็ตดั้งเดิมและแนะนำความซ้ำซ้อนเพื่อชดเชยอัตราการสูญเสียที่แท้จริงเครือข่ายของคุณจะสามารถอยู่รอดได้ โปรดทราบว่าเฟรมการจัดการ multicast 802.11 (รวมถึงบีคอน) ไม่ได้ออกแบบมาเพื่อรองรับอัตราการสูญเสียสูง
บน Linux ไดรเวอร์ mac802.11 ส่วนใหญ่ควรรองรับการตั้งค่าอัตราแบบหลายผู้รับ เมล็ดที่เพิ่งผ่านมาไม่จำเป็นต้องทำสิ่งนี้ในเวลาเข้าร่วมสำหรับทั้ง IBSS และตาข่าย iw
มีmcast-rate
ตัวเลือกสำหรับibss join
และmesh join
คำสั่ง
แต่ถ้าคุณบังเอิญใช้เคอร์เนลล่าสุดและiw
สนับสนุนทั้งคู่NL80211_CMD_SET_MCAST_RATE
คุณก็สามารถเปลี่ยนเคอร์เนลได้ตลอดเวลาและมันก็ง่ายเหมือน
iw dev wlanX set mcast_rate 6
เพื่อตั้งค่าอัตรามัลติคาสต์ 6Mbps
[1] บางทีตอนนี้พวกเขาสามารถทำได้ มีการเสนอแก้ไขมาตรฐาน 802.11 เพื่อรับทราบเฟรมมัลติคาสต์: ทุกสถานีหลังจากรับเฟรมมัลติคาสต์ได้สำเร็จจะเลือกแบ็คออฟสุ่มและส่ง ack ไปยังตัวส่ง Acks สามารถชนกันได้แน่นอนดังนั้นตัวส่งสัญญาณจะส่งสัญญาณใหม่และอนุญาตให้มีการถอยกลับที่ใหญ่กว่าจนกว่าตัวรับสัญญาณทั้งหมดจะยอมรับเฟรมได้สำเร็จ
เป็นไปได้จริงที่จะปรับเปลี่ยนอัตราบิตโดยบังคับใช้อัตราบนการ์ดไร้สาย บน Linux คำสั่งคือ:
sudo iwconfig wlan0 อัตรา 11 ล
iwconfig
ล้าสมัยแล้ว ioctls ทั้งหมดที่ใช้จะถูกแฮ็กหรือปลอมทั้งหมดหรือแม้กระทั่งไม่มีตัวเลือก อย่างไรก็ตามสิ่งที่คำสั่งเฉพาะนี้ทำนั้นน่ากลัว และไม่ใช่สิ่งที่คุณต้องการ: สิ่งนี้ จำกัด อัตราที่มีอยู่ แต่ไม่ได้แก้ไขในทางใดทางหนึ่ง และฉันไม่แน่ใจด้วยซ้ำว่าการตั้งค่านี้จะอยู่ได้นานในกรณีของ IBSS