ทำไม MTU จำเป็นต้องจับคู่กับโปรโตคอลการจัดเส้นทางสถานะการเชื่อมโยงภายในเช่น EIGRP และ OSPF


10

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


คุณช่วยอธิบายสถานการณ์ที่คุณกังวลได้อย่างชัดเจนว่าจะให้เหตุผลอะไรกับ OSPF หรือ EIGRP MTU ที่ไม่ตรงกัน?
Mike Pennington

ฉันไม่สามารถนึกถึงสถานการณ์ที่คุณต้องการได้ ฉันแค่อยากรู้ว่าตรรกะอะไรที่ทำให้นี่เป็นการตรวจสอบที่ชัดเจนในโปรโตคอลการเราต์
Pete

คำตอบ:


12

พีทกล่าวว่า :

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

คำตอบสั้น ๆ

โปรโตคอลการกำหนดเส้นทางเป็นบางส่วนของการสร้างพื้นฐานที่สำคัญที่สุดบนอินเทอร์เน็ต เราต้องการให้พวกเขาเชื่อถือได้ในทุกกรณีที่เป็นไปได้ มันไม่ดีเลยที่จะนำ OSPF หรือ EIGRP มาเติมลงใน MTU ที่ไม่ตรงกัน

โปรโตคอลการกำหนดเส้นทางจะต้องลบ MTU ที่ไม่ตรงกันที่อาจเกิดขึ้นออกจากเส้นทางการส่งต่อของเราเตอร์

คำตอบที่ยาว

ฉันสามารถคิดถึงสถานการณ์ที่เป็นไปได้สามสถานการณ์ที่คุณจะพบว่า IGP MTU ไม่ตรงกัน ...

  1. MTU ไม่ตรงกันที่ Layer2 โดยไม่ได้ตั้งใจ (ตัวอย่างเช่นถ้ามีคนที่ไม่ตรงกันโดยไม่ได้ตั้งใจ MTUs ในสายอนุกรมหรือผู้ขายที่แตกต่างกันมีMTU เริ่มต้นที่แตกต่างกันในสื่อเดียวกัน)
  2. การจับคู่ Layer2 MTUs แต่การใช้งานเราเตอร์มีข้อผิดพลาดซึ่งจะคำนวณ MTU IP อินเตอร์เฟสที่จำเป็น
  3. MTU ไม่ตรงตามเจตนา

IP MTUs มีความสัมพันธ์โดยตรงกับ Layer2 MTUs (อย่างน้อยสำหรับกรณีที่ 1, ด้านบน) ไม่ว่าเราจะทำอะไรเรามักจะอยู่ในความเมตตาของการบรรเทาปัญหาจากการที่ไม่ตรงกันของ Layer2 MTU ที่ไม่ได้ตั้งใจเนื่องจากไม่มีกลไกการค้นพบ Layer2 MTU (ซึ่งแตกต่างจาก IP ซึ่งมีข้อความแสดงข้อผิดพลาด ICMP)

ซึ่งหมายความว่าเราต้องทำทุกอย่างเท่าที่จะทำได้เพื่อหลีกเลี่ยงการจับคู่เลเยอร์ MT2 ไม่ตรงกันแม้ว่าคดี 2 และ 3 ข้างต้นจะได้รับบาดเจ็บจากการบรรเทาปัญหากรณีหมายเลข 1 กรณีที่ 1 มีความหมายมหาศาล ie black-holing ปริมาณการใช้งานทั้งหมดเพียงเพราะเราอนุญาตให้ใช้ MTU ที่ไม่ตรงกัน

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

ดังนั้น EIGRP และ OSPF จึงจำเป็นต้องใช้การ adjd2 Layer2 ที่ถูกต้องหมายเหตุ 1 (รวมถึง MTU)

ผลที่ตามมาคืออะไรหากไม่มี MTU ที่ตรงกัน

Quoting John Moy (ผู้เขียน OSPF) ใน RFC 2329 หน้า 4 :

  • มีปัญหากับการส่งต่อ IP ทั้งหมด
  • ปัญหา OSPF

อ้างถึงเขาจากรายชื่อผู้รับจดหมาย OSPF ด้วย :

John Moy - OSPF MTU ไม่ตรงกัน


หมายเหตุ 1บางคนเข้าใจผิดความหมายของ adjacency เป็นแนวคิด IP routing protocol อย่างเคร่งครัด การยืนยันนี้ขาดความเป็นจริงที่ทุกอย่าง (รวมถึง IP) ต้องการการจับคู่ layer2 MTUsเพื่อให้โดเมน Layer2 ทำงานได้อย่างถูกต้อง

หนึ่งในฟังก์ชั่นที่สำคัญที่สุดของโปรโตคอลการเราต์คือการสร้างตาราง FIB / CEF / การส่งต่อที่ถูกต้อง ตารางที่แผนที่ข้อมูลที่ได้เรียนรู้ผ่านการกำหนดเส้นทางโปรโตคอลข้อมูลเขียน Layer2 ความสัมพันธ์ของเลเยอร์ 2 เหล่านั้นบนฟิสิคัลลิงก์เดียวกันคือสิ่งที่ Cisco เรียกว่า adjacencies


ขอบคุณไมค์! ฉันคิดว่าส่วนที่ขาดหายไปคือแพ็กเก็ตบน MTU มีการแยกส่วนในเราเตอร์ที่ส่ง แต่ทิ้งไว้บนเราเตอร์ที่รับสัญญาณ
Pete

ไม่มาก L2 MTUs ที่ไม่ตรงกันนั้นเป็นความผิดพลาดที่ไม่สามารถแก้ไขได้ด้วยการใช้งานที่มีอยู่อย่างน่าเชื่อถือ OSPF ทั้งหมดรู้ว่า IP MTU ที่มีอยู่ไม่ได้เป็นแบบสมมาตร แต่ไม่มีข้อมูลเกี่ยวกับวิธีการแก้ไข การกระจายตัวไม่ได้รับการสนับสนุนใน OSPF เพราะยังคงทิ้งระนาบข้อมูล L2 ที่ชำรุดในกรณีที่ 1 และ OSPF ไม่ได้รู้ด้วยซ้ำว่าทำไมจึงมีความไม่ตรงกัน
Mike Pennington

5

อ้างอิงจากOSPF RFC 2328 (10.6):

หากฟิลด์อินเตอร์เฟส MTU ในแพ็กเก็ตคำอธิบายฐานข้อมูลระบุขนาด IP ดาตาแกรมที่ใหญ่กว่าที่เราเตอร์สามารถยอมรับได้บนอินเตอร์เฟสการรับโดยไม่มีการแตกแฟรกเมนต์แพ็กเก็ตฐานข้อมูลคำอธิบายจะถูกปฏิเสธ

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

เพิ่มเติมจาก OSPF RFC:

4.3.  Routing protocol packets

    The OSPF protocol runs directly over IP, using IP protocol 89.
    OSPF does not provide any explicit fragmentation/reassembly
    support.  When fragmentation is necessary, IP
    fragmentation/reassembly is used.  OSPF protocol packets have
    been designed so that large protocol packets can generally be
    split into several smaller protocol packets.  This practice is
    recommended; IP fragmentation should be avoided whenever
    possible.

5
EIGRP และ OSPF ฟอร์มเลเยอร์ adjacencies และไม่มีการกระจายตัวของ IP / ดาตาแกรมบนเลเยอร์ 2 ใด ๆ ดังนั้นจึงเป็นไปไม่ได้ที่จะใช้ MTU ที่ไม่ตรงกันแม้ว่ามาตรฐานจะอนุญาต
Mike Pennington

เชิงลบ พวกเขาในรูปแบบเลเยอร์ 3 adjacencies การสื่อสารโปรโตคอลเกิดขึ้นโดยใช้ IP multicast (เลเยอร์ 3) หากพวกเขาเกิดเลเยอร์ 2 adjacencies ในทางเทคนิคคุณไม่จำเป็นต้องมีที่อยู่ IP ในอินเทอร์เฟซ
Robert

จาก RFC เอง: โปรโตคอล OSPF ทำงานโดยตรงกับ IP โดยใช้โปรโตคอล IP 89
Robert

2
Robert คุณไม่มีคำจำกัดความของคำคุณศัพท์ที่ซิสโก้ใช้ โปรดดูที่ "sh adjacency internal" ในเราเตอร์ Cisco ใด ๆ CEF ปฏิบัติต่อข้อมูล Layer2 ทั้งหมดซึ่งเป็นส่วนหนึ่งของตาราง adjacency บรรทัดที่ 2 และ 3 ในแต่ละรายการคือข้อมูลส่วนหัว hex layer2 IP ต้องการ layer2 ที่เชื่อมโยงกันแม้จะเชื่อมต่อโดยตรง
Mike Pennington

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