แพ็คเก็ตที่ถูกปล่อยมีความธรรมดาในการสื่อสารภายในดาต้าเซ็นเตอร์หรือไม่?


10

สมมติว่าฉันมี 2 เครื่องในดาต้าเซ็นเตอร์เดียวกัน แต่ไม่จำเป็นต้องอยู่ในชั้นวางเดียวกัน

แพ็คเก็ตที่ถูกทิ้งจะมีความธรรมดาเพียงใดเมื่อส่งโดยใช้ UDP ระหว่างสองเครื่องนี้

ฉันขอภายใต้สมมติฐานที่ว่าตั้งแต่มีเพียงไม่กี่สวิทช์ที่มากที่สุดระหว่างเครื่องที่แพ็คเก็ตจะไม่ได้ปรับตัวลดลงในทุก

แพ็คเก็ตที่มาไม่ปกติในศูนย์ข้อมูลเดียวกันนั้นมีความผิดปกติอย่างไร? สมมติฐานของฉันคือมีเพียงหนึ่งเส้นทาง 99.9% ของเวลาดังนั้นจึงไม่สามารถเกิดขึ้นได้

อย่างไรก็ตามเมื่อใดก็ตามที่ฉันคิดว่าตัวเองอยู่ในเงื่อนไขที่แน่นอนฉันรู้ว่าฉันจะต้องหายไปบางสิ่งบางอย่าง!

ข้อมูลพื้นหลังใดที่ฉันต้องได้รับเพื่อทำความเข้าใจที่ดีขึ้นเกี่ยวกับเวลาที่คาดว่าจะแพ็คเก็ตที่ถูกทิ้งและความถี่ที่พวกเขาอาจจะถูกทิ้งและมาถึงตามลำดับสำหรับเครื่องในศูนย์ข้อมูลเดียวกัน

ท้ายที่สุดฉันพยายามตัดสินใจระหว่างใช้มัลติคาสต์ UDP หรือ PGM เมื่อสื่อสารระหว่างอินสแตนซ์ Linode VPS ที่แตกต่างกันซึ่งอยู่ในศูนย์ข้อมูลเดียวกัน ข้อมูลจะต้องมาถึงและในการสั่งซื้อ แน่นอนว่า UDP ไม่ได้ฟังดูยอดเยี่ยม!

แต่ถ้าใครสามารถคาดหวังว่าการส่งมอบที่สมบูรณ์แบบหรือเกือบสมบูรณ์แบบในดาต้าเซ็นเตอร์เดียวกันก็ถือว่าใช้ได้ แต่ฉันกำลังทดสอบสมมติฐานนั้น

ขอบคุณ

คำตอบ:


11

คุณไม่สามารถพึ่งพา UDP ในการส่งมอบแพ็กเก็ตตามลำดับเนื่องจากข้อกำหนดไม่ได้ให้การรับประกันเหล่านั้น แม้จะสมมติสถานการณ์ที่เหมาะสมที่สุดแล้วก็ตามสายเคเบิลอีเธอร์เน็ตชิ้นเดียวระหว่างสองโฮสต์ยังคงมีเรื่องของระบบปฏิบัติการสแต็กเครือข่ายไดรเวอร์ NIC และการใช้งาน libc ที่คุณเขียน

ในทุกขั้นตอนในสายโซ่นั้นผู้เขียนรหัสนั้นจะเลือกที่จะไม่ให้ความสำคัญกับการสั่งซื้อแพ็กเก็ต UDP แม้ว่าพวกเขาจะมาถึงด้วยเหตุผลง่ายๆที่พวกเขาไม่ต้องทำ

ตัวอย่างที่วางแผนไว้อย่างหนึ่งอาจเป็นโครงสร้างข้อมูลที่แพ็กเก็ตขาเข้าถูกอ่านซึ่งอาจเป็นบัฟเฟอร์วงแหวน แพ็คเก็ตที่เข้ามาตามลำดับจะถูกวางไว้ในลำดับบัฟเฟอร์ แต่มันอาจจะง่ายกว่าสำหรับผู้เขียนไดรเวอร์ที่จะทิ้งมันไปยังเลเยอร์ด้านบนของรหัสเครือข่ายตามลำดับหน่วยความจำดังนั้นจึงสุ่มลำดับ

เมื่อพิจารณาถึงสถานการณ์ของคุณเครื่องเสมือนที่ทำงานบนโครงสร้างพื้นฐานที่ใช้ร่วมกันซึ่งจะทำงานในปริมาณไม่ได้ประสิทธิภาพแล้วความน่าจะเป็นที่จะทำนายการสั่งซื้อแพ็กเก็ต UDP จะได้รับต่ำ

กล่าวโดยย่อถ้าข้อมูลจำเพาะบอกว่าคุณไม่สามารถเชื่อถือการสั่งซื้อแพ็กเก็ต UDP ได้ คุณไม่สามารถพึ่งพามันได้และคุณไม่สามารถพยายามปรับแต่งสภาพแวดล้อมเพื่อให้การรับประกันที่แข็งแกร่งกว่าข้อกำหนดที่เคยสัญญาไว้


นี่คือสิ่งที่ฉันคิดว่าฉันควรจะคิด ขอบคุณสำหรับการระบุว่าค่อนข้างดี!
z8000

1
หากคุณต้องการมัลติคาสต์ที่เชื่อถือได้ซึ่งอาจเป็นสตรีมมิ่งให้ดูที่en.wikipedia.org/wiki/Real-time_Transport_Protocol
Dave Cheney

0

หากใครสนใจทดลองใช้ Wireshark หากใครบางคนได้รับในกรณีของเราเกี่ยวกับการเชื่อมต่อที่ช้าหรือแพ็คเก็ตที่ลดลงเราเพียงแค่สะท้อนพอร์ตที่สวิตช์ให้เชื่อมต่อแล็ปท็อปกับ Wireshark และดู


FWIW ที่ Linode อินสแตนซ์ VPS ไม่สามารถเข้าสู่โหมดที่หลากหลายได้
z8000

คุณควรจะสามารถติดตั้ง Wireshark ไว้บนเครื่องเพื่อจับข้อมูลที่เข้ามาหรือเพียงแค่ทำมิเรอร์พอร์ตบนสวิตช์และเก็บข้อมูลด้วยวิธีนั้น การทำมิเรอร์พอร์ตจะมีเล่ห์เหลี่ยมหากทำขึ้นสำหรับระบบเสมือนที่อาจแชร์พอร์ตน้อย แต่ Wireshark สามารถกรองรายการเฉพาะเช่น IP และฉันคิดว่าชื่อโฮสต์
เว็บ

0

สวิทช์ใด ๆ ที่ทำให้เกิดการเรียงลำดับของสองแพ็กเก็ตใหม่ได้ตลอดเวลาและคำนึงถึงโปรโตคอลเครือข่ายจำนวนมากเช่น PGM

สิ่งหนึ่งที่ควรพิจารณาคือศูนย์ข้อมูลส่วนใหญ่บล็อกดาตาแกรมและบล็อกมัลติคาสต์เพื่อลดความซับซ้อนและลดค่าใช้จ่ายของโครงสร้างพื้นฐานเครือข่าย

ต้องใช้โปรโตคอล IP / PGM เองหากคุณมี PGM Router Assist ที่เปิดใช้งานและรับรู้องค์ประกอบเครือข่ายระหว่างเซิร์ฟเวอร์และไคลเอนต์มิฉะนั้นจะใช้ PGM encapsulated ภายใน UDP และบันทึกภาระในการจัดการสิทธิ์แอปพลิเคชัน

หากคุณใช้เลเยอร์การส่งข้อความเช่นØMQคุณสามารถเลื่อนตัวเลือก IP / PGM, UDP / PGM หรือเครือข่ายซ้อนทับ TCP ไปยังการปรับใช้และการรวม


-2

ฉันเขียนแอปพลิเคชั่น. net multicast แบบง่ายที่สามารถวัดแพ็คเก็ตที่ตกได้ภายใต้ความกดดันที่ระบุ

คุณสามารถดาวน์โหลดได้ที่นี่: SimpleMulticastAnalyzer

สนุก.

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.