ในช่วงสองสามวันที่ผ่านมา ฉันพยายามตั้งค่าทราฟฟิกและเวลาแฝงเทียมในเครือข่ายท้องถิ่น ขณะนี้ฉันมีพีซี Ubuntu 20.04 ที่มี 2 NIC โดยเครื่องหนึ่งเชื่อมต่อกับเครือข่ายของบริษัท และอีกเครื่องหนึ่งแชร์การเชื่อมต่อกับไคลเอนต์ตามจำนวนที่กำหนด (ทั้งหมดมี IP แบบคงที่) ผ่านสวิตช์ ขณะนี้ฉันประสบความสำเร็จในการแชร์การเชื่อมต่อกับไคลเอนต์ แนะนำเวลาแฝงและสร้างความเร็วในการดาวน์โหลดโดยใช้ netem ปัญหามาถึงแล้ว ฉันไม่สามารถกำหนดรูปแบบการรับส่งข้อมูลแบบเดียวกับการดาวน์โหลดได้ สิ่งที่ฉันได้ลองไปแล้ว:
sudo tc qdisc เพิ่ม dev enp4s0 root handle 1: prio
ตัวกรอง sudo tc เพิ่มโปรโตคอล dev enp4s0 ip parent 1: prio 1 u32 จับคู่ ip dst {CLIENT IP} flowid 1:2
(ลง)
ตัวกรอง sudo tc เพิ่มโปรโตคอล dev enp4s0 ip parent 1: prio 1 u32 จับคู่ ip src {CLIENT IP} flowid 1:2
(ขึ้น ดูเหมือนจะไม่ทำงาน)
sudo tc qdisc เพิ่ม dev enp4s0 parent 1:2 จัดการ 20: netem ล่าช้า 50ms อัตรา 100mbit
นอกจากนี้ ในขณะที่ฉันกำลังมองหาวิธีแก้ปัญหา ฉันพบ ที่นี่ จำนวนแบนด์เริ่มต้นคือ 3 ดังนั้นนี่หมายความว่าโดยค่าเริ่มต้นฉันสามารถมี 3 netem qdiscs เพื่อกำหนดทราฟฟิกด้วย เห็นได้ชัดว่าถ้าฉันเปลี่ยนจำนวนแบนด์ในบรรทัดแรกโดยใช้อาร์กิวเมนต์ วง X
ฉันต้องแก้ไขพรีแมปด้วย แต่หลังจากทำแล้ว ดูเหมือนว่าทุกอย่างจะทำงานเหมือนเดิม น่าเศร้าที่ฉันไม่สามารถหาคำตอบได้ว่าทำไมสิ่งนี้ถึงทำงานเช่นนั้น
วิธีการแก้ปัญหาของฉันถูกต้องหรือไม่? สิ่งนี้จะปรับขนาดได้หรือไม่ ฉันไม่คิดว่าฉันจะต้องดูแลลูกค้ามากกว่า 20 รายในคราวเดียว ดังนั้นฉันจึงถือว่าสคริปต์บางตัวสามารถทำงานอัตโนมัติได้ค่อนข้างดีในภายหลัง ในทางกลับกัน มีวิธีที่ดีกว่าในการบรรลุสิ่งที่ฉันต้องการ ซึ่งฉันไม่รู้ ฉันใหม่มากสำหรับหัวข้อนี้ ดังนั้นคำแนะนำใด ๆ ที่ชื่นชม ขอบคุณล่วงหน้า