นี่คือคำสั่ง wirefilter ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
wirefilter - ตัวกรองแพ็คเก็ตสายสำหรับ Virtual Distributed Ethernet
เรื่องย่อ
ตัวกรองลวด
[-f rcfile.rcfile] [-l ปิด] [-l ระเบิดที่หายไป] [-d ความล่าช้า] [-D dup] [-b แบนด์วิดธ์] [-s
อินเทอร์เฟซ_ความเร็ว] [-c channel_bufsize] [-n เสียงรบกวน_ปัจจัย] [-m mtu_size] [-M มก เบ้า] [-v
vde_plug1:vde_plug2] [--ภูต] [--pidfile pidfile_path] [--กระพริบตา กะพริบตา] [--กระพริบตา
กะพริบ_ระบุ] [-N]
DESCRIPTION
A ตัวกรองลวด สามารถจำลองความล่าช้าและการสูญเสียแพ็กเก็ตบนสายเสมือน เช่น:
ท่อระบายน้ำ vde_plug /tmp/s1 = ตัวกรองลวด -l 10 = vde_plug /tmp/s2
สร้างสายระหว่าง vde_switches สองตัว (พร้อมซ็อกเก็ต /tmp/s1 และ /tmp/s2 ตามลำดับ)
สายเคเบิลนี้สูญเสีย 10% ของแพ็กเก็ตในแต่ละทิศทาง
สามารถสร้างสายเคเบิลเดียวกันได้โดยใช้:
ตัวกรองลวด -v /tmp/s1:/tmp/s2 -l 10
OPTIONS
-f rcfile.rcfile
ใช้ไฟล์การกำหนดค่าเริ่มต้น มีประโยชน์สำหรับคำนิยามที่ซับซ้อน เช่น เหล่านั้น
สำหรับโหมด Markov (ดูด้านล่าง) ไฟล์การกำหนดค่าเริ่มต้นมีเหมือนกัน
ไวยากรณ์ของอินเทอร์เฟซการจัดการ กล่าวอีกนัยหนึ่ง มันคือสคริปต์ของการจัดการ
คำสั่งที่ดำเนินการก่อนที่จะส่งต่อแพ็กเก็ตแรก
-l ปิด
เปอร์เซ็นต์การสูญเสียเป็นจำนวนทศนิยม สามารถระบุที่แตกต่างกัน
เปอร์เซ็นต์การสูญเสียสำหรับสองช่องสัญญาณ: LR20.5 หมายถึง 20.5% ของแพ็กเก็ตที่ไหลไปทางซ้ายไปยัง
ขวาหายไป RL10 หมายถึง 10% จากขวาไปซ้าย
-L ระเบิดที่หายไป
เมื่อนี่ไม่ใช่ศูนย์ wirefilter จะใช้โมเดล Gilbert สำหรับข้อผิดพลาดแบบระเบิด นี้
คือความยาวเฉลี่ยของแพ็คเก็ตที่สูญหาย (เป็นห่วงโซ่ Markov สองสถานะ: the
ความน่าจะเป็นที่จะออกจากสถานะผิดพลาดคือ 1/ระเบิดหาย, ความน่าจะเป็นที่จะเข้า
สถานะผิดพลาดคือ ขาดทุน/(แพ้-(1-แพ้)). อัตราการสูญเสียมาบรรจบกับมูลค่า
ปิด.
-d ความล่าช้า
หน่วงเวลาพิเศษ (หน่วยเป็นมิลลิวินาที) ความล่าช้านี้ถูกเพิ่มเข้ากับความล่าช้าในการสื่อสารจริง
แพ็กเก็ตจะถูกจัดเก็บชั่วคราวและส่งอีกครั้งหลังจากเกิดความล่าช้า เป็นไปได้
ระบุค่าที่แตกต่างกันสำหรับ LR และ RL เช่นเดียวกับในตัวเลือกก่อนหน้า เมื่อล่าช้า
ถูกกำหนดเป็นตัวเลขสองตัวที่มีเครื่องหมาย + อยู่ระหว่าง ตัวแรกคือค่าดีเลย์มาตรฐาน
และอย่างที่สองคือการเปลี่ยนแปลงแบบสุ่ม 1000+500 หมายความว่าสามารถหน่วงเวลาได้
สุ่มเลือกระหว่างครึ่งวินาทีถึง 1.5 วินาที เป็นไปได้ที่จะเพิ่ม 'U' หรือ
'N' ในตอนท้าย 1000+500U หมายความว่าดีลมีการกระจายอย่างสม่ำเสมอ
1000+500N หมายความว่าการหน่วงเวลาเป็นไปตามการแจกแจงแบบเกาส์เซียนปกติ (มากกว่า
98% ของค่าอยู่ภายในขีดจำกัด)
-D dup เปอร์เซ็นต์ของแพ็คเก็ตที่ซ้ำกัน มีรูปแบบเดียวกับ -l อย่าใช้ปัจจัยซ้ำ 100%
เพราะมันหมายความว่าแต่ละแพ็กเก็ตจะถูกส่งเป็นอนันต์
-b แบนด์วิดธ์
แบนด์วิดธ์ของช่องเป็นไบต์/วินาที มีรูปแบบเดียวกับ -d เป็นไปได้ด้วย
ใช้คำต่อท้าย K,M,G เพื่อย่อ 2^10, 2^20, 2^30 128K หมายถึง 128KBytes/วินาที
128+64K หมายถึง 64i ถึง 196KBytes/วินาที ผู้ส่งไม่ได้รับการป้องกันจากการส่งแพ็กเก็ต
การส่งล่าช้าเพื่อจำกัดแบนด์วิดท์ให้เป็นค่าที่ต้องการ (เหมือนคอขวด
ตามเส้นทาง) U และ N หลังค่า (เช่น 128+64KN) ตั้งค่าสถิติ
กระจายการใช้งาน (สม่ำเสมอหรือปกติ)
-s ความเร็ว
ความเร็วในการเชื่อมต่อเป็นไบต์/วินาที มีรูปแบบเดียวกับ -b อินพุตถูกบล็อกสำหรับ
เวลา tramission ของแพ็กเก็ตจึงป้องกันไม่ให้ผู้ส่งส่งด้วย
รวดเร็ว
-c channel_bufsize
ขนาดบัฟเฟอร์แชนเนล (เป็นไบต์): ขนาดสูงสุดของคิวแพ็กเก็ต เกินแพ็คเก็ต
ถูกทิ้ง
-n สัญญาณรบกวน ปัจจัย
จำนวนบิตที่เสียหาย/หนึ่งเมกะไบต์
-m บุคคลหนึ่ง ขนาด
แพ็กเก็ตที่ยาวกว่า mtu_size จะถูกละทิ้ง
-N โนฟีโฟ ด้วยแพ็กเก็ต -N สามารถจัดลำดับใหม่ได้
-M มก เบ้า
ซ็อกเก็ตยูนิกซ์ที่สามารถตรวจสอบพารามิเตอร์ (เปอร์เซ็นต์การสูญเสีย ความล่าช้า ฯลฯ) ได้
และเปลี่ยนรันไทม์ ยูนิกซ์เทอม(1) สามารถใช้เป็นขั้วระยะไกลสำหรับตัวกรองสัญญาณ
-v vde_plug1:vde_plug2
หากใช้ตัวเลือกนี้ vde_plugs ในเครื่องสองตัว (vde_plug1 และ vde_plug2) จะเป็น
เชื่อมต่อกันแทน stdin/stdout โดยใช้ไลบรารี libvdeplug นี้
ตัวเลือกเปิดใช้งานเซสชันการจัดการแบบโต้ตอบบนคอนโซล (stdin/stdout)
--mgmtmode โหมด
ตัวเลือกนี้ตั้งค่าโหมดการเข้าถึงของซ็อกเก็ต mgmt ไวยากรณ์คำสั่งค่อนข้าง
ง่าย ช่วย ให้รายการคำสั่ง สามารถโหลดไฟล์สคริปต์ได้
โดยใช้โปรแกรม โหลด คำสั่งการจัดการ
--ภูต
wirefilter กลายเป็นภูต
--pidfile ชื่อพาธfP
wirefilter บันทึก pid ของมันลงในไฟล์
--กระพริบตา ชื่อ
ตัวเลือกนี้กำหนด id ที่ส่งสำหรับแต่ละแพ็กเก็ตไปยังเซิร์ฟเวอร์ Blink (ดูที่
--blink ตัวเลือกด้านล่าง) ตัวระบุ stardard สำหรับ wirefilter คือกระบวนการ
ปี๊ด
--กระพริบตา เบ้า
wirefilter ส่งข้อความบันทึกไปยังซ็อกเก็ต PF_UNIX/DATAGRAM ที่ระบุสำหรับแต่ละ
ส่งแพ็กเก็ตแล้ว แต่ละแพ็กเก็ตมีรูปแบบ: ความยาวทิศทางของรหัส เช่น:
6768ล.44
6768ล.44
6768 อาร์แอล 100
6768ล.100
6768ล.44
มาร์คอฟ โหมด
wirefilter ยังมีชุดพารามิเตอร์ที่ซับซ้อนมากขึ้นโดยใช้ห่วงโซ่ Markov เพื่อจำลอง
สถานะของการเชื่อมโยงและการเปลี่ยนแปลงระหว่างรัฐต่างๆ แต่ละรัฐเป็นตัวแทน
โดยโหนด พารามิเตอร์ลูกโซ่ Markov สามารถตั้งค่าได้ด้วยคำสั่งการจัดการหรือไฟล์ rc เท่านั้น
อันที่จริง เนื่องจากพารามิเตอร์จำนวนมากบรรทัดคำสั่งจึงน่าจะเป็น
อ่านไม่ได้
มาร์คอฟ-numnodes n
กำหนดจำนวนรัฐต่างๆ พารามิเตอร์ทั้งหมดของการเชื่อมต่อสามารถเป็น
โหนดที่กำหนดโดยโหนด โหนดมีหมายเลขเริ่มต้นจากศูนย์ (ถึง n-1) เช่น:
ดีเลย์ 100+10N[4]
แพ้ 10[2]
คำสั่งเหล่านี้กำหนดความล่าช้า 90-110 ms (การกระจายปกติ) สำหรับหมายเลขโหนด
4 และ 10 การสูญเสียสำหรับโหนด 2 เป็นไปได้ที่จะปรับขนาดห่วงโซ่ Markov ที่รัน-
เวลา. โหนดใหม่ไม่สามารถเข้าถึงได้และไม่มีขอบใด ๆ ไปยังสถานะอื่น (เช่น
แต่ละโหนดใหม่มีขอบย้อนกลับไปยังโหนดด้วยความน่าจะเป็น 100%) เมื่อไหร่
ลดจำนวนโหนด น้ำหนักของขอบต่อโหนดที่ถูกลบคือ
เพิ่มไปยังขอบลูปแบ็ค เมื่อโหนดปัจจุบันของการจำลองถูกลบ node
0 กลายเป็นโหนดปัจจุบัน (การจำลองเริ่มจากโหนด 0) เสมอ
เวลามาร์คอฟ ms
ช่วงเวลา (มิลลิวินาที) สำหรับการคำนวณลูกโซ่มาร์คอฟ แต่ละ ms ไมโครวินาทีแบบสุ่ม
ตัวสร้างตัวเลขตัดสินใจว่าสถานะใดถัดไป (ค่าเริ่มต้น = 100ms)
markov-ชื่อ น ชื่อ
กำหนดชื่อให้กับโหนดของห่วงโซ่มาร์คอฟ
มาร์คอฟ-setnode n
ตั้งค่าโหนดปัจจุบันด้วยตนเองเป็นโหนด n.
การตั้งค่า n1,n2,ว
กำหนดขอบระหว่าง n1 และ n2; w คือน้ำหนัก (เปอร์เซ็นต์ความน่าจะเป็น) ของ
ขอบ. ขอบลูปแบ็ค (จากโหนดไปยังตัวเอง) จะถูกคำนวณเป็น 100% ลบ . เสมอ
ผลรวมของน้ำหนักของขอบขาออก
โชว์เคส [ n ]
แสดงรายการขอบจากโหนด n (หรือจากโหนดปัจจุบันเมื่อคำสั่งไม่มี
พารามิเตอร์) ละเว้นขอบน้ำหนักว่าง
โชว์ปัจจุบัน
แสดงสถานะปัจจุบันของ Markov
ShowInfo [ n ]
แสดงสถานะและข้อมูลเกี่ยวกับสถานะ (โหนด) n. หากละเว้นพารามิเตอร์นั้น
แสดงสถานะและข้อมูลเกี่ยวกับสถานะปัจจุบัน
มาร์คอฟดีบัก [ n ]
ตั้งค่าระดับการดีบักสำหรับการเชื่อมต่อการจัดการปัจจุบัน ในความเป็นจริง
การนำไปใช้เมื่อ n มากกว่าศูนย์ การเปลี่ยนแปลงแต่ละครั้งของโหนดมาร์กอฟทำให้เกิด
ผลลัพธ์ของการติดตามการดีบัก การติดตามการดีบักถูกปิดใช้งานเมื่อ n เป็นศูนย์หรือ
ไม่มีพารามิเตอร์
ข้อสังเกต
Virtual Distributed Ethernet ไม่เกี่ยวข้องกับ www.vde.com แต่อย่างใด ("Verband der
Elektrotechnik, Elektronik และ Informationstechnik" เช่น "Association for ." ของเยอรมัน
ไฟฟ้า อิเล็กทรอนิกส์ และเทคโนโลยีสารสนเทศ")
ใช้ wirefilter ออนไลน์โดยใช้บริการ onworks.net