OSPF Open Shortest Path First อัพเดทเส้นทางด้วยโปรโตคอลมาตรฐาน 11 05/04/60 อัพเดทเส้นทางด้วยโปรโตคอลมาตรฐาน Open Shortest Path First OSPF 11 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
กลไกการอัพเดทเส้นทาง การหา Router ID การอัพเดทบนการเชื่อมต่อแบบ Point-to-Point การอัพเดทบนการเชื่อมต่อแบบ Multiaccess การตั้งค่าแบบ Single-Area 11-1
ลักษณะเด่นกว่า RIP ลักษณะเด่น: เป็นโปรโตคอลมาตรฐานของ IETF (OSPF version 2) เป็นแบบ Link State: ใช้อัลกอริทึม Dijkstra คำนวณหา SPT ไม่มี Loop เพราะคำนวณแล้วจะได้ SPT ตัวเดียวกันทุกเราท์เตอร์ รองรับเครือข่ายขนาดใหญ่ ด้วยการยุบรวมแยกเป็นลำดับชั้น (Hierarchy) Convergence เร็วกว่า เพราะติดต่อกับเพื่อนบ้านตลอด (10 วินาที) ใช้แบนด์วิธเป็น Metric จึงยืดหยุ่นกว่า Hop Count มีการ Authentication ที่เข้ารหัส MD5 ได้ 11-2
Link State ส่งข้อมูลสภาพลิงค์ระหว่างกัน 05/04/60 ส่งข้อมูลสภาพลิงค์ระหว่างกัน Link State Link State = ข้อมูลสภาพลิงค์ระหว่างตนเองกับเพื่อนบ้าน = Router ID Neighbor ID Cost Shortage Path Tree Neighbor/DB Table R3,R2,65 R2,R1,1 R3,R4,48 R1 R2 = 1 R1 R3 = 1 R1 R4 = 48 R1 R5 = R1 R3 R5 = 66 65 R5,R3,65 R1,R2,1 R1,R3,1 R1,R4,48 R2,R3,65 R3,R4,48 R3,R5,65 R4,R5,48 1 R2 R3,R1,1 Dijkstra Algorithm 65 1 R3 R5 48 R1 R5,R4,48 R4 48 48 R4,R1,48 ทุกเราท์เตอร์ ส่ง Link State Advertisment (LSA) ของตนเองไปทั่วทั้งกลุ่มเราท์เตอร์เดียวกัน ส่วนหน้าที่การคำนวณเส้นทางจะอยู่ในเราท์เตอร์ตัวเอง 11-3 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
Link State ส่งข้อมูลสภาพลิงค์ระหว่างกัน R4 05/04/60 ส่งข้อมูลสภาพลิงค์ระหว่างกัน Link State Shortage Path Tree Neighbor/DB Table R3,R2,65 R2,R1,1 R3,R4,48 R1 R2 = 1 R1 R3 = 1 R1 R4 = 48 R1 R5 = R1 R3 R5 = 66 65 R5,R3,65 R1,R2,1 R1,R3,1 R1,R4,48 R2,R3,65 R3,R4,48 R3,R5,65 R4,R5,48 1 R2 R3,R1,1 Dijkstra Algorithm 65 1 R3 R5 48 R1 R5,R4,48 R4 48 48 R4,R1,48 จากกลไกด้านบน สิ่งที่เราท์เตอร์ต้องทำจึงได้แก่ หา Router ID ของตนเอง หาเราท์เตอร์เพื่อนบ้านของตนเอง หาค่า Metric หรือ Cost ของลิงค์กับเพื่อนบ้าน ส่งข้อมูล Link State (LSA) ไปให้เราท์เตอร์อื่นๆ ในกลุ่ม 11-4 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
Router ID ไอดีประจำเราท์เตอร์ 05/04/60 ไอดีประจำเราท์เตอร์ Router ID Router# show ip interface brief Interface IP Address OK? Method Status Protocol Ethernet0 190.172.32.10 YES NVRAM up up Loopback0 208.149.23.162 YES NVRAM up up Loopback1 208.149.23.194 YES NVRAM up up Serial0 220.173.149.10 YES NVRAM down down Serial1 unassigned YES NVRAM administratively down down เนื่องจากแต่ละเราท์เตอร์ ต้องมีชื่อ (RouterID) ของตนเอง จึงจะอ้างอิงกับ เราท์เตอร์อื่นๆ ในกลุ่มได้ เราท์เตอร์จะตั้ง Router ID ของตนเอง ตามตัวแปรเหล่านี้ ตามลำดับ: ตามการตั้งค่าเอง เช่น Router(config-router)# router-id 1.1.1.1 ตามไอพีของอินเตอร์เฟสที่เสถียรมากสุด และเปิดใช้งาน ณ เวลาเปิด OSPF ที่มีค่ามากที่สุด!! ยึดตามกลุ่มอินเตอร์เฟส Loopback ก่อน (เสถียรที่สุด) ยึดตามกลุ่มอินเตอร์เฟสปกติ 11-5 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
Adjacency ลงทะเบียนเราท์เตอร์เพื่อนบ้าน 05/04/60 ลงทะเบียนเราท์เตอร์เพื่อนบ้าน Adjacency Router ID Hello and Dead intervals * Neighbor ID Router Priority DR IP Address BDR IP Address Router A แลกเปลี่ยน Hello Packet เพื่อติดต่อกับเพื่อนบ้าน Hello Packet Neighbor Table Router A Hello Hello A B C A Hello Hello B C LSA LSA - Loading : Full - ช่วงเวลา Hello และ Dead Interval ต้องเท่ากันทั้งตัวเองและเพื่อนบ้าน ถึงจะติดต่อเป็นเพื่อนบ้านกันได้ โดยดีฟอลท์ Hello time = 10 sec, Dead Interval = 30 sec สร้าง Adjacency แล้ว จึงซิงโครไนซ์ LSDB ให้ตรงกัน (Loading) “Adjacency State: Loading to Full” 11-6 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
Bandwidth (โดยดีฟอลท์) 05/04/60 เมตริกซ์ของ OSPF ส่วนกลับ Bandwidth Metric (Cost) = ส่วนกลับของแบนด์วิธ = 108 / {Bandwidth บนอินเตอร์เฟส (หน่วย bit)} = 100 Mbps / Bandwidth (Mbps) Link Type Bandwidth (โดยดีฟอลท์) OSPF Cost Serial 1,544,000 65 E1 2,048,000 48 Ethernet 10,000,000 10 Fast Ethernet 100,000,000 1 Gigabit Ethernet 1,000,000,000 สามารถตั้งค่า Cost ได้เองตามต้องการ (Manual) 11-7 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
+ Link State Advertisment การส่งต่อ Link State NT: R1 NT: R2 NT: R3 05/04/60 การส่งต่อ Link State Link State Advertisment Neighbor Table R1 R2 R3 R5 R4 65 48 1 R5,R3,65 R5,R4,48 R3,R2,65 R3,R4,48 R4,R1,48 R2,R1,1 R3,R1,1 NT: R1 NT: R2 R1 R1 1 1 48 1 48 R2 R3 R4 R2 R3 NT: R3 NT: R4 R1 48 R3 R4 1 R1 R2 R3 R4 R5 1 48 65 65 48 48 R1 R2 R3 R4 R5 1 48 65 R2 R3 R4 R5 NT: R5 + R3 R4 65 48 11-8 R5 Shortage Path Tree (SPT) Database Table Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
Point-to-Point OSPF บนเครือข่ายแบบ 05/04/60 OSPF บนเครือข่ายแบบ Point-to-Point R1,R2,65 R2,R1,65 เป็น Network Type ดีฟอลต์ของอินเทอร์เฟซ Serial ตัวอย่างเครือข่าย Point-to-Point ที่จะให้ OSPF ทำงาน เช่น Leased Line ที่เชื่อมต่อด้วยโปรโตคอล HDLC หรือ PPP Frame-Relay ที่ตั้งค่าให้ใช้ Subinterface แบบ Point-to-Point ไม่มีปัญหาการส่ง LSA ซ้ำทับกัน จึงไม่จำเป็นต้องเลือกตัวแทนเราท์เตอร์ที่คอยรวบรวม LSA (Designate Router; DR) ส่ง LSA แบบ Multicast 224.0.0.5 11-9 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
Multiaccess OSPF บนเครือข่ายแบบ 05/04/60 OSPF บนเครือข่ายแบบ Multiaccess RX,RX,XX RX,RX,XX RX,RX,XX RX,RX,XX RX,RX,XX ตัวอย่างเครือข่าย Broadcast Multiaccess ที่จะให้ OSPF ทำงาน ได้แก่ Ethernet LAN ที่เชื่อมต่อเราท์เตอร์หลายตัวผ่าน LAN Switch มีปัญหาการส่ง LSA ซ้ำทับกัน (เพราะต่างมีจำนวนเพื่อนบ้านเท่ากัน เห็นกันหมดผ่าน LAN)! จำเป็นต้องเลือกตัวแทนเราท์เตอร์ที่คอยรวบรวม LSA (Designate Router; DR) และ DR สำรอง (Backup DR; BDR) 11-10 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
Multiaccess OSPF บนเครือข่ายแบบ 05/04/60 OSPF บนเครือข่ายแบบ Multiaccess RX,RX,XX RX,RX,XX DR BDR RX,RX,XX RX,RX,XX RX,RX,XX DROTHER DROTHER DROTHER เลือกเราท์เตอร์ที่เป็นตัวแทนรวบรวม LSA (DR) และตัวสำรอง (BDR) เราท์เตอร์ตัวอื่นเรียกชื่อเป็น DROTHER (ลูกน้องของ DR) DROTHER ส่ง LSA ไปรวมยัง DR และ BDR (ผ่านมัลติคาสต์ 224.0.0.6) แล้ว DR และ BDR ส่ง LSA ที่สรุปรวมแล้ว ให้ DROTHER ทุกตัว (ผ่านมัลติคาสต์ 224.0.0.5) เป็น Network Type ดีฟอลต์ของอินเทอร์เฟซ Ethernet 11-11 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
DR และ BDR การเลือกตัวแทนเราท์เตอร์ 05/04/60 การเลือกตัวแทนเราท์เตอร์ DR และ BDR เลือกตามลำดับความสำคัญก่อนหลัง ดังนี้ ตามค่า Priority ที่ตั้งค่าไว้บนเราท์เตอร์ ด้วยคำสั่ง Router(config-if)# ip ospf priority (เลข Priority) ถ้าไม่ได้ตั้งค่า Priority บนเราท์เตอร์ตัวใด Priority ตัวนั้นจะเท่ากับ 1 ถ้าค่า Priority = 0 อินเทอร์เฟซนั้นต้องเป็น Drother เท่านั้น ถ้า Priority เท่ากันทั้งหมด จะเลือกจาก Router ID ที่มีค่ามากที่สุด ตัวรองลงมา จะเลือกเป็น BDR 11-12 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
DR และ BDR การเลือกตัวแทนเราท์เตอร์ 11-13 Router ID: BDR DR 05/04/60 การเลือกตัวแทนเราท์เตอร์ DR และ BDR OSPF Network Types: Multiaccess Broadcast Network Group1 OSPF Network Types: Multiaccess Broadcast Network Group2 RID: 2.2.2.2 RID: 5.5.5.5 R2 R5 Fa0/0 Pri:1 10.1.1.2/24 Fa0/0 Pri:1 20.1.1.5/24 RID: 4.4.4.4 BDR RID 3.3.3.3 RID 6.6.6.6 RID: 1.1.1.1 RID: 6.6.6.6 DR RID 1.1.1.1 RID 7.7.7.7 R4 R1 Fa0/0 Pri:1 10.1.1.4/24 Fa0/0 Pri:10 10.1.1.1/24 Fa0/1 Pri:1 20.1.1.1/24 Fa0/0 Pri:1 20.1.1.6/24 SW1 SW2 R6 Router ID: R3(config)#interface Loopback0 R3(config-if)#ip add 3.3.3.3 255.255.255.255 R3(config)#router ospf 100 R3(config-router)#router-id 3.3.3.3 Interface Priority: R3(config)#interface fa0/0 R3(config-if)#ip add 10.1.1.3 255.255.255.0 R3(config-if)#ip ospf priority 5 Fa0/0 Pri:5 10.1.1.3/24 Fa0/0 Pri:1 20.1.1.7/24 R3 R7 RID: 7.7.7.7 RID: 3.3.3.3 11-13 DR: BDR: DR: BDR: Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
NBMA OSPF กับเฟรมรีเลย์แบบ Frame Relay Network 05/04/60 OSPF กับเฟรมรีเลย์แบบ NBMA DR Frame Relay Network ปกติ NBMA ไม่รองรับการใช้เราท์ติ้งโปรโตคอล ซึ่งต้องใช้ มัลติคาสต์หรือบรอดคาสต์ เพราะข้อจำกัดเรื่อง Split Horizon เนื่องจาก DR/BDR สามารถส่ง LSA ที่สรุปแล้วให้แก่ DROTHER อื่นได้ทางอินเตอร์เฟสเดียวกับที่รับมา ดังนั้น จึงสามารถใช้ OSPF บนเครือข่ายแบบ NBMA ได้ (แต่ต้องตั้งค่าเพื่อนบ้านให้มันเอง) 11-14 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
DR/BDR สรุปเครือข่ายที่ต้องใช้ตัวแทน 11-15 s0 NBMA NBMA Frame Relay 05/04/60 สรุปเครือข่ายที่ต้องใช้ตัวแทน DR/BDR 40.3 40.2 40.4 NBMA NBMA Frame Relay Network DR 50.2 50.3 50.4 s0 BMA 40.1 s0 20.2 s0.1 MP 50.1 DR 10.3 BDR 60.2 P2P P2P 30.2 s0.2 P2P 60.1 20.1 Frame Relay Network 70.2 10.4 30.1 s0.3 P2P 70.1 10.1 DR s0.4 P2P 80.1 10.2 80.2 11-15 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
แบบ Hierarchy การแยกพื้นที่สำหรับ OSPF 05/04/60 การแยกพื้นที่สำหรับ OSPF แบบ Hierarchy เพื่อให้คำนวณได้ในวงจำกัด และเกิดเส้นทางที่เสถียรในกลุ่มเราท์เตอร์ขนาดใหญ่ จึงต้องแบ่งกลุ่มออกเป็นพื้นที่ (Area) โดยกลุ่มพื้นที่ย่อยจะต้องเชื่อมต่อกับกลุ่มพื้นที่หลัก หรือ Area 0 ระหว่าง Area จะสรุปเส้นทางรวมไว้ สื่อสารระหว่างกัน 11-16 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
Single Area (0) การตั้งค่า OSPF พื้นที่เดียว 05/04/60 การตั้งค่า OSPF พื้นที่เดียว Single Area (0) ตั้งค่าเปิดใช้ OSPF เป็นเราท์ติ้งโปรโตคอลของเราท์เตอร์นี้ Router(config)# router ospf (รหัสโปรเซส ตั้งอย่าให้ซ้ำกันถ้าจะแยกโปรเซส) ตั้งค่าอินเตอร์เฟสที่อนุญาตการทำงาน (ทั้งการรับส่งอัพเดต และการอัพเดตเครือข่ายบนอินเตอร์เฟส) Router(config-router)# network (network ID) (wildcard-mask) area 0 10.1.1.0/30 10.2.2.0/29 router ospf 1 network 10.1.1.0 0.0.0.3 area 0 network 10.2.2.0 0.0.0.7 area 0 หรือเขียนเป็น “network 10.0.0.0 0.255.255.255 area 0” ก็ได้ 11-17 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
ด้วยคำสั่ง Network การเปิดใช้บนอินเตอร์เฟส 05/04/60 การเปิดใช้บนอินเตอร์เฟส ด้วยคำสั่ง Network คำสั่ง Network (สำหรับ IGP) คือการสั่งเปิดการทำงานของเราท์ติ้งโปรโตคอลนั้นๆ บนอินเตอร์เฟสที่ “ค่าที่อยู่ไอพี” อยู่ในซับเซ็ตของกลุ่มไอพีในคำสั่งนี้ ดังนั้น ด้วยความสามารถของ Wildcard Mask ที่ระบุกลุ่มเลขไอพีที่สนใจได้ละเอียด (Arbitrary Bit) จึงสามารถใช้คำสั่ง network ไล่เปิดทีละอินเตอร์เฟสด้วยการใช้ Wildcard 0.0.0.0 ดังนี้ Router(config-router)# network (ที่อยู่ไอพีบนอินเตอร์เฟสนั้น) 0.0.0.0 area 0 แปลว่า สนใจไอพีทั้ง 32 บิต 10.1.1.0/30 10.2.2.0/29 router ospf 1 network 10.1.1.2 0.0.0.0 area 0 network 10.2.2.2 0.0.0.0 area 0 11-18 อินเตอร์เฟส S2 อินเตอร์เฟส S3 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
05/04/60 การทวนสอบการตั้งค่า ตรวจดูว่าเราท์เตอร์ใช้ OSPF เป็นเราท์ติ้งโปรโตคอลตามที่ตั้งค่าไว้หรือไม่ Router# show ip protocol คำสั่งแสดงเส้นทางที่เรียนรู้มาได้ Router# show ip route Codes: I - IGRP derived, R - RIP derived, O - OSPF derived, Gateway of last resort is 10.119.254.240 to network 10.140.0.0 O 10.110.0.0 [110/5] via 10.119.254.6, 0:01:00, Ethernet2 O 10.68.132.0 [110/5] via 10.119.254.6, 0:00:59, Ethernet2 O 10.130.0.0 [110/5] via 10.119.254.6, 0:00:59, Ethernet2 11-19 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
การทวนสอบการตั้งค่า ตรวจสอบ Router ID และเลขโปรเซส 05/04/60 การทวนสอบการตั้งค่า ตรวจสอบ Router ID และเลขโปรเซส Router# show ip ospf Routing Process "ospf 50" with ID 10.64.0.2 ตรวจสอบเราท์เตอร์เพื่อนบ้านที่รู้จัก Router# show ip ospf neighbor ID Pri State Dead Time Address Interface 10.199.199.137 1 FULL/DR 0:00:31 192.168.80.37 FastEthernet0/0 172.16.48.1 1 FULL/DROTHER 0:00:33 172.16.48.1 FastEthernet0/1 172.16.48.200 1 FULL/DROTHER 0:00:33 172.16.48.200 FastEthernet0/1 10.199.199.137 5 FULL/DR 0:00:33 172.16.48.189 FastEthernet0/1 ถ้าการเชื่อมต่อเป็นแบบ Point-to-Point เราท์เตอร์แต่ละฝั่งจะให้เพื่อนบ้านอีกฝั่งหนึ่งเป็น DR ของตนเอง โดยไม่มี BDR ทำให้ต่างฝ่ายต่างใช้ 224.0.0.5 ในการสื่อสารระหว่างกัน 11-20 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved
Equal-Cost Load Balance 05/04/60 การแบ่งโหลด Cost เท่า Equal-Cost Load Balance ดีฟอลต์บน Routing Table อนุญาตให้เส้นทางที่ Cost เท่ากันมาแบ่งโหลดกันได้ 4 เส้นทาง แต่เราแก้ไขการตั้งค่าบนเราท์ติ้งโปรโตคอลได้: OSPF สามารถตั้งค่าให้เราท์แพ๊กเก็ตแบ่งกันระหว่างเส้นทางได้ แต่ต้องเป็นเส้นทางที่มีค่า Cost (Metric) เท่ากันเท่านั้น บน OSPF ใช้คำสั่งตั้งค่า Cost บนแต่ละอินเตอร์เฟสเองให้เท่ากันได้! 11-21 Copyrights 2009-2011 by Ranet Co.,Ltd., All rights reserved