Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
CPE 426 Computer Networks Week 13: Chapter 27: Internet Routing Part II:BGP, RIP & OSPF TOPICS Chapter 27: Internet Routing and Routing Protocols 27.9 Border Gateway Protocol (BGP) 27.10 Routing Information Protocol (RIP) 27.11 RIP Packet Format 27.12 The Open Shortest Path First Protocol (OSPF) 27.13 OSPF Graph 27.14 OSPF Area 27.15 IS-IS BREAK 27.16 Multicast Routing Extra Subnet and VLAN Extra Switch Layer 3 vs Router Extra Organization Network 27.9 The Border Gateway Protocol(BGP) เป็น Exterior Gateway Protocol ทีใ่ ช ้ ก ันมากทีส ่ ด ุ ้ อ ปัจจุบ ันทีใ่ ชค ื Version 4 หรือ BGP-4 ISP จะใช ้ BGP ในการแลกเปลีย ่ น Routing Information ซงึ่ ก ันและก ัน ่ น Center ของ Internet และก ับสว ปกติจะไม่พบการใชง้ านภายในองค์กร เพราะภายในองค์กรใช ้ IGP จะดีกว่า 27.9 The Border Gateway Protocol (BGP) คุณสมบ ัติของ BGP สามารถทาการ Routing ระหว่าง AS BGP ได ้ถูกออกแบบมาให ้เป็ น EGP ดังนัน ้ มันจะสง่ ข ้อมูล Routing Information ในระดับ AS ต่อ AS แต่ ้ ละเสนทางที ส ่ ง่ จะบ่งบอกว่าจะผ่าน AS อะไรบ ้าง ่ เสนทางไปถึ ้ เชน งทีห ่ มายต ้องผ่าน AS 17, 2, 56 และ 12 และจะไม่มก ี ารใช ้ Routing Matrix และ BGP จะไม่สามารถสง่ รายละเอียดเกีย ่ วกับ Router ใน AS สามารถกาหนดนโยบาย (Policy) ในการทา Routing ้ ผู ้ดูแลระบบ สามารถกาหนดว่าจะประกาศเสนทาง ใดบ ้าง ผ่าน BGP บอกยัง AS อืน ่ ๆ 27.9 The Border Gateway Protocol (BGP) คุณสมบ ัติของ BGP สามารถกาหนดการทา Transit Routing ถ ้า AS ใดเป็ นแค่ทางผ่านเพือ ่ จะไปยัง AS อืน ่ BGP จะจัด AS นัน ้ ว่าเป็ น Transit System ถ ้าข ้อมูลสง่ จาก AS หรือ สง่ ไปที่ AS ใด BGP จะจัด AS นัน ้ เป็ น Stub System เราสามารถประกาศให ้ AS ของเราเป็ น Stub System ได ้ แม ้ว่า เราจะมีทางต่อออกนอก Internet ได ้มากกว่าหนึง่ ทาง (MultiHomed) ้ ื่ ถือได ้ BGP ใชการส ง่ ข ้อมูลแบบเชอ BGP จะเป็ น Protocol วางอยูบ ่ น TCP หมายถึงว่าการสง่ Routing Information จะต ้องมีการทา Connection และข ้อมูล ื่ ถือได ้ว่าสง่ ไปอย่างถูกต ้อง ทีส ่ ง่ สามารถเชอ 27.10 RIP (Routing Information Protocol) RIP เป็น IGP Protocol แรกๆทีถ ่ ก ู นามาใชใ้ น Internet โดยมีคณ ุ สมบ ัติด ังนี้ RIP จะทางานภายใน Autonomous System เดียวกัน โดยถูกออกแบบมาให ้เป็ น IGP RIP ใช ้ Hop Count เป็ น Routing Metric ค่า Cost คือ จานวน Network ทีจ ่ ะต ้องสง่ ผ่าน RIP ใช ้ UDP ในการสง่ Routing Information ซงึ่ เป็ น Unreliable Transport การสง่ Routing Information ของ RIP ใชวิ้ ธ ี Broadcast (Version 1) หรือ Multicast (V.1/V.2) โดย RIP ได ้ออกแบบมาให ้ใชกั้ บ LAN (Ethernet) ซงึ่ ื่ สารแบบ Broadcast และ Multicast สนับสนุนการสอ 224.0.0.9 27.10 RIP (Routing Information Protocol) RIP เป็น IGP Protocol แรกๆทีถ ่ ก ู นามาใชใ้ น Internet โดยมีคณ ุ สมบ ัติด ังนี้ RIP สนับสนุนการทา CIDR และ Subnetting (Version 2) โดย V.2 จะมีการสง่ Address Mask ด ้วย RIP สนับสนุนการสง่ ค่า Default Route ไปกับตาราง Routing Table ใน Routing Information ด ้วย ่ ตัวทีต เรากาหนด Default Route ให ้แก่ Router ตัวเดียวก็พอ เชน ่ อ ่ กับ ISP RIP ใช ้ Distance Vector Algorithm โดย Router ทีเ่ ป็ นเพือ ่ นบ ้าน กันจะแลกเปลีย ่ นตาราง Routing Table และ Router แต่ละตัวจะทา ้ การ Update ตารางของตนเองถ ้าพบเสนทางที ม ่ รี าคาตา่ กว่า RIP สามารถกาหนด Passive Mode เพือ ่ ใชกั้ บ Host ได ้ โดย Host ที่ Run Passive RIP จะฟั งอย่างเดียว และสามารถนาข ้อมูลทีฟ ่ ั งมา Update ตารางได ้ (Router เท่านัน ้ ทีส ่ ามารถสง่ ข ้อมูล RIP ได ้) ข้อดีของ RIP คือใชง้ านง่าย เพียงแค่ Start RIP ทีต ่ ัว Router ก็สามารถทางานได้ 27.10 RIP (Distance Vector) Example ต ัวอย่างการทางานของ Distance Vector R1 10.10.10.0/24 R2 20.20.20.0/24 30.30.30.0/24 R3 R4 50.50.50.0/24 40.40.40.0/24 R6 R5 R7 60.60.60.0/24 70.70.70.0/24 สมมุตวิ า ่ เราเปิ ด Router พร้อมๆก ัน และสง่ ั ให้ Run RIP ตอนแรก Router จะรูจ ้ ัก เพียง Direct Connect Network โดยมีคา่ Cost เป็นศูนย์ 27.10 RIP (Distance Vector) Example NW/Mask Gateway Cost NW/Mask Gateway Cost 10.10.10.0/24 Direct 0 20.20.20.0/24 Direct 0 20.20.20.0/24 Direct 0 30.30.30.0/24 Direct 0 .1 NW/Mask Gateway Cost Direct 0 60.60.60.0/24 Direct 0 .5 20.20.20.0/24 .1 NW/Mask Gateway Cost 40.40.40.0/24 Direct 0 50.50.50.0/24 Direct 0 40.40.40.0/24 40.40.40.0/24 R2 R1 10.10.10.0/24 .4 .4 R4 R3 .3 .3 R6 60.60.60.0/24 .7 30.30.30.0/24 NW/Mask Gateway Cost 20.20.20.0/24 Direct 0 50.50.50.0/24 Direct 0 .6 .6 .5 R7 .2 50.50.50.0/24 R5 .7 .2 NW/Mask Gateway Cost 50.50.50.0/24 Direct 0 70.70.70.0/24 Direct 0 70.70.70.0/24 NW/Mask Gateway Cost 60.60.60.0/24 Direct 0 70.70.70.0/24 Direct 0 เมือ ่ Router ได้ร ับตารางจาก เพือ ่ นบ้าน ม ันจะบวกค่า Cost อีกหนึง่ Hop จากนน ั้ Update ตารางของต ัวเอง 27.10 RIP (Distance Vector) Example NW/Mask Gateway Cost NW/Mask Gateway Cost 10.10.10.0/24 Direct 0 20.20.20.0/24 Direct 0 20.20.20.0/24 Direct 0 30.30.30.0/24 Direct 0 .1 NW/Mask Gateway Cost Direct 0 60.60.60.0/24 Direct 0 .5 20.20.20.0/24 .1 NW/Mask Gateway Cost 40.40.40.0/24 Direct 0 50.50.50.0/24 Direct 0 40.40.40.0/24 40.40.40.0/24 R2 R1 10.10.10.0/24 .4 R4 .4 R3 .3 .3 R6 .7 60.60.60.0/24 30.30.30.0/24 NW/Mask Gateway Cost 20.20.20.0/24 Direct 0 50.50.50.0/24 Direct 0 .6 .6 .5 R7 .2 50.50.50.0/24 R5 .7 .2 NW/Mask Gateway Cost 50.50.50.0/24 Direct 0 70.70.70.0/24 Direct 0 70.70.70.0/24 NW/Mask Gateway Cost 60.60.60.0/24 Direct 0 70.70.70.0/24 Direct 0 Router จะเปรียบเทียบตาราง ในแต่ละแถว ถ้าย ังไม่ม ี ม ันจะ เพิม ่ (บวก Cost อีกหนึง่ Hop) แต่ถา้ มีอยูแ ่ ล้ว ม ันจะ Update ก็ตอ ่ เมือ ่ ค่า Cost ตา่ กว่า 27.10 RIP (Distance Vector) Example NW/Mask Gateway Cost NW/Mask Gateway Cost 10.10.10.0/24 Direct 0 20.20.20.0/24 Direct 0 20.20.20.0/24 Direct 0 30.30.30.0/24 Direct 0 30.30.30.0/24 20.20.20.2 1 10.10.10.0/24 20.20.20.1 1 50.50.50.0/24 20.20.20.3 1 50.50.50.0/24 20.20.20.3 1 .1 Gateway Cost 40.40.40.0/24 Direct 0 60.60.60.0/24 Direct 0 50.50.50.0/24 40.40.40.4 1 70.70.70.0/24 60.60.60.7 1 .5 20.20.20.0/24 .1 NW/Mask Gateway Cost 40.40.40.0/24 Direct 0 50.50.50.0/24 Direct 0 20.20.20.0/24 50.50.50.3 1 60.60.60.0/24 40.40.40.5 1 70.70.70.0/24 50.50.50.6 1 40.40.40.0/24 NW/Mask R2 R1 10.10.10.0/24 .4 .4 R4 Cost 20.20.20.0/24 Direct 0 50.50.50.0/24 Direct 0 10.10.10.0/24 20.20.20.1 1 30.30.30.0/24 20.20.20.2 1 40.40.40.0/24 50.50.50.4 1 50.50.50.0/24 70.70.70.0/24 50.50.50.6 1 .3 .3 .6 .6 .5 .7 .7 30.30.30.0/24 Gateway R6 60.60.60.0/24 .2 NW/Mask R3 R5 R7 .2 NW/Mask Gateway Cost 50.50.50.0/24 Direct 0 70.70.70.0/24 Direct 0 20.20.20.0/24 50.50.50.3 1 40.40.40.0/24 50.50.50.4 1 60.60.60.0/24 70.70.70.7 1 70.70.70.0/24 NW/Mask Gateway Cost 60.60.60.0/24 Direct 0 70.70.70.0/24 Direct 0 40.40.40.0/24 60.60.60.5 1 50.50.50.0/24 70.70.70.6 1 ผลการ Update เมือ ่ มี การแลกเปลีย ่ นครงที ั้ ่ หนึง่ 27.10 RIP (Distance Vector) Example NW/Mask Gateway Cost NW/Mask Gateway Cost 10.10.10.0/24 Direct 0 20.20.20.0/24 Direct 0 20.20.20.0/24 Direct 0 30.30.30.0/24 Direct 0 30.30.30.0/24 20.20.20.2 1 10.10.10.0/24 20.20.20.1 1 50.50.50.0/24 20.20.20.3 1 50.50.50.0/24 20.20.20.3 1 .1 Gateway Cost 40.40.40.0/24 Direct 0 60.60.60.0/24 Direct 0 50.50.50.0/24 40.40.40.4 1 70.70.70.0/24 60.60.60.7 1 .5 20.20.20.0/24 .1 NW/Mask Gateway Cost 40.40.40.0/24 Direct 0 50.50.50.0/24 Direct 0 20.20.20.0/24 50.50.50.3 1 60.60.60.0/24 40.40.40.5 1 70.70.70.0/24 50.50.50.6 1 40.40.40.0/24 NW/Mask R2 R1 10.10.10.0/24 .4 R4 .4 30.30.30.0/24 Gateway Cost 20.20.20.0/24 Direct 0 50.50.50.0/24 Direct 0 10.10.10.0/24 20.20.20.1 1 30.30.30.0/24 20.20.20.2 1 40.40.40.0/24 50.50.50.4 1 50.50.50.0/24 70.70.70.0/24 50.50.50.6 1 .3 .3 R6 .6 .6 .5 R7 .2 NW/Mask R3 R5 .7 .2 NW/Mask Gateway Cost 50.50.50.0/24 Direct 0 70.70.70.0/24 Direct 0 20.20.20.0/24 50.50.50.3 1 40.40.40.0/24 50.50.50.4 1 60.60.60.0/24 70.70.70.7 1 .7 70.70.70.0/24 60.60.60.0/24 NW/Mask Gateway Cost 60.60.60.0/24 Direct 0 70.70.70.0/24 Direct 0 40.40.40.0/24 60.60.60.5 1 50.50.50.0/24 70.70.70.6 1 การแลกเปลีย ่ นตาราง กระทาทุก 30 นาที 27.10 RIP (Distance Vector) Example NW/Mask Gateway Cost NW/Mask Gateway Cost 10.10.10.0/24 Direct 0 20.20.20.0/24 Direct 0 20.20.20.0/24 Direct 0 30.30.30.0/24 Direct 0 30.30.30.0/24 20.20.20.2 1 10.10.10.0/24 20.20.20.1 1 1 50.50.50.0/24 20.20.20.3 1 2 40.40.40.0/24 20.20.20.3 2 2 70.70.70.0/24 20.20.20.3 2 50.50.50.0/24 20.20.20.3 40.40.40.0/24 20.20.20.3 70.70.70.0/24 .1 Cost 40.40.40.0/24 Direct 0 60.60.60.0/24 Direct 0 50.50.50.0/24 40.40.40.4 1 70.70.70.0/24 60.60.60.7 1 20.20.20.0/24 40.40.40.4 2 .5 20.20.20.0/24 .1 NW/Mask Gateway Cost 40.40.40.0/24 Direct 0 50.50.50.0/24 Direct 0 20.20.20.0/24 50.50.50.3 1 R3 .3 .2 .2 30.30.30.0/24 NW/Mask Gateway Cost 20.20.20.0/24 Direct 0 50.50.50.0/24 Direct 0 10.10.10.0/24 20.20.20.1 1 60.60.60.0/24 40.40.40.5 1 70.70.70.0/24 50.50.50.6 1 30.30.30.0/24 20.20.20.2 1 10.10.10.0/24 50.50.50.3 2 40.40.40.0/24 50.50.50.4 1 30.30.30.0/24 R4 50.50.50.3 2 70.70.70.0/24 50.50.50.6 1 40.40.40.0/24 Gateway R2 R1 10.10.10.0/24 NW/Mask 20.20.20.3 .4 .4 R4 .3 50.50.50.0/24 Gateway Cost 50.50.50.0/24 Direct 0 70.70.70.0/24 Direct 0 20.20.20.0/24 50.50.50.3 1 40.40.40.0/24 50.50.50.4 1 60.60.60.0/24 70.70.70.7 1 10.10.10.0/24 50.50.50.3 2 70.70.70.0/2430.30.30.0/24 50.50.50.3 2 R6 .6 .6 .5 60.60.60.0/24 .7 .7 2 NW/Mask R5 R7 60.60.60.0/24 50.50.50.4(.6) NW/Mask Gateway Cost 60.60.60.0/24 Direct 0 70.70.70.0/24 Direct 0 40.40.40.0/24 60.60.60.5 1 50.50.50.0/24 70.70.70.6 1 20.20.20.0/24 70.70.70.6 2 ผลจากการแลกเปลีย ่ น ตารางครงที ั้ ส ่ อง 27.10 RIP (Distance Vector) Example ั สงเกตุ วา ่ การหา ้ ทางทีละ Hop คือ เสน Bellman-Ford Alg. NW/Mask Gateway Cost NW/Mask Gateway Cost 10.10.10.0/24 Direct 0 20.20.20.0/24 Direct 0 20.20.20.0/24 Direct 0 30.30.30.0/24 Direct 0 30.30.30.0/24 20.20.20.2 1 10.10.10.0/24 20.20.20.1 1 1 50.50.50.0/24 20.20.20.3 1 20.20.20.3 2 50.50.50.0/24 40.40.40.0/24 20.20.20.3 2 40.40.40.0/24 70.70.70.0/24 20.20.20.3 2 70.70.70.0/24 20.20.20.3 2 60.60.60.0/24 20.20.20.3 3 60.60.60.0/24 20.20.20.3 3 .1 Cost 40.40.40.0/24 Direct 0 .5 20.20.20.0/24 .1 NW/Mask Gateway Cost 40.40.40.0/24 Direct 0 50.50.50.0/24 Direct 0 20.20.20.0/24 50.50.50.3 1 R3 .3 .2 .2 30.30.30.0/24 NW/Mask Gateway Cost 20.20.20.0/24 Direct 0 50.50.50.0/24 Direct 0 10.10.10.0/24 20.20.20.1 1 60.60.60.0/24 40.40.40.5 1 70.70.70.0/24 50.50.50.6 1 30.30.30.0/24 20.20.20.2 1 10.10.10.0/24 50.50.50.3 2 40.40.40.0/24 50.50.50.4 1 30.30.30.0/24 R4 50.50.50.3 2 70.70.70.0/24 50.50.50.6 1 40.40.40.0/24 Gateway R2 R1 10.10.10.0/24 NW/Mask 20.20.20.3 .4 R4 .4 .3 50.50.50.0/24 R5 R6 .6 60.60.60.0/24 50.50.50.4(.6) 2 NW/Mask Gateway Cost 50.50.50.0/24 Direct 0 70.70.70.0/24 Direct 0 20.20.20.0/24 50.50.50.3 1 60.60.60.0/24 Direct 0 50.50.50.0/24 40.40.40.4 1 70.70.70.0/24 60.60.60.7 1 20.20.20.0/24 40.40.40.4 2 40.40.40.0/24 50.50.50.4 1 10.10.10.0/24 40.40.40.4 3 60.60.60.0/24 70.70.70.7 1 30.30.30.0/24 40.40.40.4 3 10.10.10.0/24 50.50.50.3 2 70.70.70.0/2430.30.30.0/24 50.50.50.3 2 .6 .5 60.60.60.0/24 .7 NW/Mask 60.60.60.0/24 70.70.70.0/24 40.40.40.0/24 50.50.50.0/24 20.20.20.0/24 10.10.10.0/24 30.30.30.0/24 R7 .7 Gateway Direct Direct 60.60.60.5 70.70.70.6 70.70.70.6 70.70.70.6 70.70.70.6 Cost 0 0 1 1 2 3 3 ผลจากการแลกเปลีย ่ น ตารางครงที ั้ ส ่ าม ปัญหาของ RIP (และ Distance Vector) เนือ ่ งจาก Router แลกเปลีย ่ นข้อมูลก ับเพือ ่ น บ้านเท่านน ั้ เมือ ่ เกิดปัญหาทีจ ่ ด ุ ใด ต ัว Router ทีอ ่ ยูไ่ กลจะรูแ ้ ละปร ับตารางชา้ กว่า Router ที่ อยูใ่ กล้ ทาให้การ Converge ชา้ ทาให้ เหมาะสมสาหร ับ Network ขนาดเล็กเท่านน ั้ ่ จะ ขนาดของ Message ที่ Router แต่ละต ัวสง ั ันธ์ก ับจานวนของ Network ถ้า สมพ ่ จะมีมาก Network มีจานวนมาก ข้อมูลทีส ่ ง และด้วยการที่ Update ไม่พร้อมก ัน จะทาให้ เกิด Route Loop ได้ สาคัญ ต ้องแก ้ปั ญหานี้ การเกิด Loop ใน Distance Vector ื่ มต่อผ่านสอง สมมุต ิ มีสาม Network เชอ Router และทาการ Update ตาราง เรียบร้อย R1 200.18.95.0/24 .1 R2 .1 58.42.96.0/19 .2 .2 195.3.0.192/26 Network Net Mask Gateway Cost Network Net Mask Gateway Cost 200.18.95.0 255.255.255.0 Direct 0 195.3.0.192 255.255.255.192 Direct 0 58.42.96.0 255.255.224.0 Direct 0 58.42.96.0 255.255.224.0 Direct 0 195.3.0.192 255.255.255.192 58.42.96.2 1 200.18.95.0 255.255.255.0 58.42.96.1 1 การเกิด Loop ใน Distance Vector สมมุต ิ ต่อว่า Network 195.3.0.192/26 เกิด ่ Link ขาด ด ังนน Down เชน ั้ R2 จะตรวจจ ับได้ และ Mark ตารางของตนเป็น Unreachable (Infinity) R1 200.18.95.0/24 .1 R2 .1 58.42.96.0/19 .2 .2 195.3.0.192/26 Network Net Mask Gateway Cost Network Net Mask Gateway Cost 200.18.95.0 255.255.255.0 Direct 0 195.3.0.192 255.255.255.192 - inf 58.42.96.0 255.255.224.0 Direct 0 58.42.96.0 255.255.224.0 Direct 0 195.3.0.192 255.255.255.192 58.42.96.2 1 200.18.95.0 255.255.255.0 58.42.96.1 1 การเกิด Loop ใน Distance Vector เมือ ่ ถึงเวลา Update และมีการแลกเปลีย ่ นตาราง R1 จะเรียนรูแ ้ ล้วว่า 195.3.0.192/26 นนเป ั้ ็ น Unreachable และปร ับตารางตนเอง R1 200.18.95.0/24 .1 R2 .1 58.42.96.0/19 .2 .2 195.3.0.192/26 Network Net Mask Gateway Cost Network Net Mask Gateway Cost 200.18.95.0 255.255.255.0 Direct 0 195.3.0.192 255.255.255.192 - inf 58.42.96.0 255.255.224.0 Direct 0 58.42.96.0 255.255.224.0 Direct 0 195.3.0.192 255.255.255.192 58.42.96.2 1 200.18.95.0 255.255.255.0 58.42.96.1 1 ในขณะเดียวก ัน R2 ได้ร ับตารางจาก R1 และ ค้นพบว่า R1 มีทางไป 195.3.0.192/26 ด้วย Cost เท่าก ับหนึง่ ม ันจึง Update ตารางด้วย Cost = 2 โดยหารูไ้ ม่วา ่ ข้อมูลนน ั้ R1 ได้เรียนรูจ ้ ากตนเอง การเกิด Loop ใน Distance Vector ผลทีไ่ ด้ จะทาให้ตารางผิดพลาด R1 200.18.95.0/24 .1 R2 .1 58.42.96.0/19 .2 .2 195.3.0.192/26 Network Net Mask Gateway Cost Network Net Mask Gateway Cost 200.18.95.0 255.255.255.0 Direct 0 195.3.0.192 255.255.255.192 58.42.96.1 2 58.42.96.0 255.255.224.0 Direct 0 58.42.96.0 255.255.224.0 Direct 0 195.3.0.192 255.255.255.192 - inf 200.18.95.0 255.255.255.0 58.42.96.1 1 ถ้ามี Packet เข้ามาที่ R2 และต้องการไป ่ ไป R1 และเป็นไป 195.3.0.195 /26 ม ันจะถูกสง ่ กล ับไป ได้ท ี่ ตาราง R1 จะย ังไม่ Update และถูกสง กล ับมาเป็น Loop การเกิด Loop ใน Distance Vector ในการ Update ครงต่ ั้ อไป R1 จะเรียนรู ้ 195.3.0.192 /26 จาก R2 อีกครงด้ ั้ วย Cost 2 และ Update ตารางตนเอง ขณะเดียวก ัน R2 ทา ่ ก ัน การ Update ตารางตนเองเชน R1 200.18.95.0/24 .1 R2 .1 58.42.96.0/19 .2 .2 195.3.0.192/26 Network Net Mask Gateway Cost Network Net Mask Gateway Cost 200.18.95.0 255.255.255.0 Direct 0 195.3.0.192 255.255.255.192 58.42.96.1 2 58.42.96.0 255.255.224.0 Direct 0 58.42.96.0 255.255.224.0 Direct 0 195.3.0.192 255.255.255.192 - inf 200.18.95.0 255.255.255.0 58.42.96.1 1 การเกิด Loop ใน Distance Vector การ Update จะทาสล ับไปมา และค่า Cost จะเพิม ่ ที ละหนึง่ จนเข้าสู่ Infinity เราเรียกเหตุการณ์นวี้ า ่ ‘Count to Infinity’ R1 200.18.95.0/24 .1 R2 .1 58.42.96.0/19 .2 .2 195.3.0.192/26 Network Net Mask Gateway Cost Network Net Mask Gateway Cost 200.18.95.0 255.255.255.0 Direct 0 195.3.0.192 255.255.255.192 - inf 58.42.96.0 255.255.224.0 Direct 0 58.42.96.0 255.255.224.0 Direct 0 195.3.0.192 255.255.255.192 58.42.96.2 3 200.18.95.0 255.255.255.0 58.42.96.1 1 ่ วิง่ วนไปมาระหว่าง R1 และ R2 Packet จะถูกสง การแก้ปญ ั หา Loop ใน Distance Vector Split Horizon: กาหนดว่าการสง่ Routing Update ไปให ้กับเพือ ่ นบ ้านใดๆ ให ้ตัดสว่ น Subnet ทีไ่ ด ้เรียนรู ้มาจากเพือ ่ นบ ้านนัน ้ ออกไป Maximum Hop Count: มาตรฐานของ RIP จะมีคา่ สูงสุดคือ 15 เลข 16 ่ นีท หมายถึงว่าเป็ น Unreachable การกาหนดเชน ้ าให ้การ Count To Infinity ่ กัน หยุดเร็วขึน ้ แต่จะทาให ้ขนาดของ Network จากัดอยูท ่ ี่ 15 Hop ด ้วยเชน Triggerded Update: กาหนดว่าถ ้า Router ใดพบว่ามี Subnet Down ก็ ั ญาณบอก Router เพือ ให ้สง่ สญ ่ นบ ้านทุกตัวทันที โดยไม่ต ้องรอให ้ถึงเวลา ของการ Update ปกติ(RIP จะมีเวลาการ Update ปกติคอ ื ทุกๆ 30 วินาที) Route Poisoning: จะใชร่้ วมกับ Triggered Update คือเมือ ่ Router ใด พบว่ามี Subnet Down มันจะประกาศออกไปยัง Interface ทุกอันของมันว่า Subnet นี้ Unreachable โดยตัง้ ค่า Hop Count เท่ากับ Infinity(16 สาหรับ RIP) Hold-Down Timer: เมือ ่ Router ได ้รับ Triggered Update มันจะไม่ ้ สนใจเกีย ่ วกับเสนทางที จ ่ ะไปยัง Subnet ที่ Down ลงเป็ นระยะเวลาหนึง่ เท่ากับ Hold-Down Timer(180 วินาที สาหรับ RIP) เพือ ่ ป้ องกันการเรียนรู ้ที่ ผิดพลาด จากนัน ้ มันถึงจะเริม ่ เรียนรู ้ Routing ใหม่ๆทีจ ่ ะยัง Subnet นัน ้ ทัง้ หมดนี้ ยังไม่ Guarantee ว่าจะกาจัด Loop ได ้ โดยเฉพาะ Loop ทีเ่ กิด ระหว่างหลาย Router CISCO ได้คด ิ EIGRP ซงึ่ มีเทคนิคในการแก้ปญ ั หาทีด ่ ก ี ว่า แต่เป็น Protocol เฉพาะ 27.11 RIP Packet Format(v2) Command บ่งบอกว่าเป็น RIP Request หรือ Response Routing Information แต่ละชุดจะ ประกอบด้วย 5 Word (20 Bytes) Family(Address Family Identifier) โดย RIP สามารถ จะสง่ Routing Information ได ้กับหลาย Protocol ถ ้า เป็ น IP จะมีคา่ 2, ถ ้าเป็ นการทา Authentication จะใช ้ ค่า 0xffff Route Tag กาหนดวิธบ ี ง่ บอกความแตกต่างระหว่าง Internal Route (เรียนรู ้จาก RIP) และ External Route (เรียนรู ้จาก Protocol อืน ่ ) ทีเ่ หลือคือ IP Address (Network ID), Subnet Mask และ Metric (จะมีคา่ ระหว่าง 0 และ 15), 16 หมายถึง Unreachable 27.11 RIP Packet Format(v2) 27.12 The Open Shortest Path First Protocol (OSPF) RIP ไม่เหมาะก ับ Network ขององค์กรขนาด ้ มาอีกต ัว ใหญ่ ซงึ่ IETF ได้ออกแบบ IGP ขึน ื่ OPEN SHORTEST PATH FIRST หนึง่ ชอ PROTOCOL (OSPF) โดยใช ้ Dijkstra ื่ SPF (Shortest Path First) Algorithm ทีช ่ อ ้ ทาง ซงึ่ OSPF จ ัดว่าเป็น ในการคานวณเสน Link-State Protocol การสง่ Routing Information จะสง่ เฉพาะ Link-State ของตนเองซงึ่ จะมีขนาดเท่าเดิมแม ้ว่า Network จะมีการ ขยายตัว ผิดกับ Distance Vector ทีส ่ ง่ ทัง้ ตาราง (Distance Vector) ทีจ ่ ะมีขนาดเพิม ่ ขึน ้ เมือ ่ Network มีการ ขยายตัว 27.12 The Open Shortest Path First Protocol (OSPF) OSPF มีคณ ุ สมบ ัติด ังนี้ ออกแบบมาให ้ทางานภายใน AS คือเป็ น IGP สนับสนุนการทา CIDR โดยมีการสง่ Address Mask ไปพร ้อมกับ IP Address สามารถทา Authenticate ซงึ่ กันและกันระหว่างสอง Router ได ้ สามารถ Import Route ทีเ่ รียนรู ้โดยวิธอ ี น ื่ เข ้ามาผนวกกับตาราง ของ OSPF ได ้ ใชวิ้ ธก ี ารของ Link-State Routing สนับสนุนการใช ้ Route Metric หลายอย่าง และยอมใชผู้ ้ดูแลระบบ กาหนดค่า Cost ของแต่ละ Route ได ้ สนับสนุนการทางานของ Network ทีเ่ ป็ น Multi-Access โดยมี วิธก ี ารไม่ให ้ Router ทุกตัวทาการ Broadcast Link-State ออกมา แต่จะกาหนดให ้ Router เพียงหนึง่ ตัวทาการ Broadcast ื่ Designated Router (DR) Router นีช ้ อ 27.13 ต ัวอย่างการสร้าง OSPF Graph ่ Link-State Advertisement Router แต่ละต ัวจะสง (LSA) Router แต่ละต ัวจะรวบรวม LSA ของ Router ทุกต ัว ใน Network สร้างเป็น Link-State Database (LSB) ทีเ่ หมือนก ัน จาก LSB ต ัว Router จะทาการคานวน และสร้าง OSPF Graph ้ ทางจาก จาก OSPF Graph ต ัว Router จะคานวณเสน ต ัวม ัน ไปย ัง Router ต ัวอืน ่ ๆ โดยสร้าง SPF Tree ทีต ่ ัว ม ันเป็น Root ด้วย Dijkstra Algorithm เนือ ่ งจากมันสร ้าง Tree ดังนัน ้ จะไม่เกิด Loop ่ ถ้า Topology เปลีย ่ น ต ัว Router ที่ Detect ได้จะสง Update Link State ใหม่ Router ทุกตัวจะ Update LSB และคานวณ SPF Tree ใหม่ Fast Convergence เพราะทุกตัว Update พร ้อมกัน OSPF Example: Link-State R1 10.10.10.0/24 .1 R2 20.20.20.0/24 .1 .2 .2 30.30.30.0/24 LSB .3 R3 .3 R4 40.40.40.0/24 R5 .4 .4 .6 .5 R6 .6 .5 60.60.60.0/24 50.50.50.0/24 .7 R7 .7 70.70.70.0/24 Interface /Mask Cost 10.10.10.1/24 2 20.20.20.1/24 3 Interface /Mask Cost 20.20.20.2/24 1 30.30.30.2/24 2 Interface /Mask Cost 20.20.20.3/24 4 50.50.50.3/24 3 Interface /Mask Cost 40.40.40.4/24 5 50.50.50.4/24 2 Interface /Mask Cost 40.40.40.5/24 1 60.60.60.5/24 3 Interface /Mask Cost 50.50.50.6/24 2 70.70.70.6/24 5 Interface /Mask Cost 60.60.60.7/24 2 70.70.70.7/24 1 R1 LSA R2 LSA R3 LSA R4 LSA R5 LSA R6 LSA R7 LSA OSPF Example: Link-State 2 N1 R1 3 N2 4 R3 3 N4 5 R4 2 2 R5 R6 3 5 N6 R7 1 R2 2 LSB N3 N1 N2 N2 N3 N2 N5 N5 1 2 1 N4 N5 N4 N6 N5 N7 N7 N6 N7 Interface /Mask Cost 10.10.10.1/24 2 20.20.20.1/24 3 Interface /Mask Cost 20.20.20.2/24 1 30.30.30.2/24 2 Interface /Mask Cost 20.20.20.3/24 4 50.50.50.3/24 3 Interface /Mask Cost 40.40.40.4/24 5 50.50.50.4/24 2 Interface /Mask Cost 40.40.40.5/24 1 60.60.60.5/24 3 Interface /Mask Cost 50.50.50.6/24 2 70.70.70.6/24 5 Interface /Mask Cost 60.60.60.7/24 2 70.70.70.7/24 1 R1 LSA R2 LSA R3 LSA R4 LSA R5 LSA R6 LSA R7 LSA OSPF Example: Link-State 2 N1 R1 3 N2 4 R3 3 N4 5 R4 2 2 R5 R6 3 5 N6 R7 1 R2 2 LSB N3 N1 N2 N2 N3 N2 N5 N5 1 2 1 N4 N5 N4 N6 N5 N7 N7 N6 N7 Interface /Mask Cost 10.10.10.1/24 2 20.20.20.1/24 3 Interface /Mask Cost 20.20.20.2/24 1 30.30.30.2/24 2 Interface /Mask Cost 20.20.20.3/24 4 50.50.50.3/24 3 Interface /Mask Cost 40.40.40.4/24 5 50.50.50.4/24 2 Interface /Mask Cost 40.40.40.5/24 1 60.60.60.5/24 3 Interface /Mask Cost 50.50.50.6/24 2 70.70.70.6/24 5 Interface /Mask Cost 60.60.60.7/24 2 70.70.70.7/24 1 R1 LSA R2 LSA R3 LSA R4 LSA R5 LSA R6 LSA R7 LSA OSPF Example: Link-State 3 1 R1 3 R2 N1 N2 4 4 1 R3 3 2 5 2 R6 R5 3 N4 N5 2 1 N2 N3 N2 N5 2 R4 LSB N4 N6 5 3 1 2 R7 N5 N7 N6 N7 Interface /Mask Cost 10.10.10.1/24 2 20.20.20.1/24 3 Interface /Mask Cost 20.20.20.2/24 1 30.30.30.2/24 2 Interface /Mask Cost 20.20.20.3/24 4 50.50.50.3/24 3 Interface /Mask Cost 40.40.40.4/24 5 50.50.50.4/24 2 Interface /Mask Cost 40.40.40.5/24 1 60.60.60.5/24 3 Interface /Mask Cost 50.50.50.6/24 2 70.70.70.6/24 5 Interface /Mask Cost 60.60.60.7/24 2 70.70.70.7/24 1 R1 LSA R2 LSA R3 LSA R4 LSA R5 LSA R6 LSA R7 LSA OSPF Example: Link-State ต ัวอย่าง R3 หา SPF Tree จาก Dijkstra 3 1 R1 3 R2 N1 N2 4 4 1 R3 3 2 5 2 R6 R5 3 N4 N5 2 1 N2 N3 N2 N5 2 R4 LSB N4 N6 5 3 1 2 R7 N5 N7 N6 N7 Interface /Mask Cost 10.10.10.1/24 2 20.20.20.1/24 3 Interface /Mask Cost 20.20.20.2/24 1 30.30.30.2/24 2 Interface /Mask Cost 20.20.20.3/24 4 50.50.50.3/24 3 Interface /Mask Cost 40.40.40.4/24 5 50.50.50.4/24 2 Interface /Mask Cost 40.40.40.5/24 1 60.60.60.5/24 3 Interface /Mask Cost 50.50.50.6/24 2 70.70.70.6/24 5 Interface /Mask Cost 60.60.60.7/24 2 70.70.70.7/24 1 R1 LSA R2 LSA R3 LSA R4 LSA R5 LSA R6 LSA R7 LSA OSPF Example: Link-State ต ัวอย่าง R3 หา SPF Tree จาก Dijkstra 3 1 R1 3 R2 N1 N2 4 4 1 R3 3 2 5 2 R6 R5 3 N4 N5 2 1 N2 N3 N2 N5 2 R4 LSB N4 N6 5 3 1 2 R7 N5 N7 N6 N7 Interface /Mask Cost 10.10.10.1/24 2 20.20.20.1/24 3 Interface /Mask Cost 20.20.20.2/24 1 30.30.30.2/24 2 Interface /Mask Cost 20.20.20.3/24 4 50.50.50.3/24 3 Interface /Mask Cost 40.40.40.4/24 5 50.50.50.4/24 2 Interface /Mask Cost 40.40.40.5/24 1 60.60.60.5/24 3 Interface /Mask Cost 50.50.50.6/24 2 70.70.70.6/24 5 Interface /Mask Cost 60.60.60.7/24 2 70.70.70.7/24 1 R1 LSA R2 LSA R3 LSA R4 LSA R5 LSA R6 LSA R7 LSA OSPF Example: Link-State ต ัวอย่าง R3 หา SPF Tree จาก Dijkstra LSB R2 R1 4 4 R3 N1 N2 N2 N3 3 3 R4 N2 N5 N4 N5 5 R6 R5 5 R7 N4 N6 N5 N7 N6 N7 Interface /Mask Cost 10.10.10.1/24 2 20.20.20.1/24 3 Interface /Mask Cost 20.20.20.2/24 1 30.30.30.2/24 2 Interface /Mask Cost 20.20.20.3/24 4 50.50.50.3/24 3 Interface /Mask Cost 40.40.40.4/24 5 50.50.50.4/24 2 Interface /Mask Cost 40.40.40.5/24 1 60.60.60.5/24 3 Interface /Mask Cost 50.50.50.6/24 2 70.70.70.6/24 5 Interface /Mask Cost 60.60.60.7/24 2 70.70.70.7/24 1 R1 LSA R2 LSA R3 LSA R4 LSA R5 LSA R6 LSA R7 LSA 27.14 OSPF Area ั อ ้ นมากกว่า Routing อ ันหนึง่ ทีท ่ าให้ OSPF มีความซบซ Protocol อืน ่ และเป็นต ัวทีท ่ าให้ม ันเหนือกว่าต ัวอืน ่ ด้วยคือม ัน สามารถทา Hierarchical Routing OSPF ยอมให้เราแบ่งกลุม ่ Router ภายใน AS ออกเป็น Area Router ภายใน Area จะมี LSB ทีเ่ หมือนกัน Routing Information สง่ ภายใน Area จะเหมือนกับทีก ่ ล่าวมา Routing Information ทีแ ่ ลกเปลีย ่ นระหว่าง Area จะถูกสรุป และสง่ ผ่าน ื่ มระหว่าง Area เรียก ABR (Area Border Router) Router ทีเ่ ชอ ่ นีจ การทาเชน ้ ะลด LSA ที่ Router จะต ้องสง่ และลดขนาด LSB ลง OSPF กาหนด Area กลางเรียก Area 0 (0.0.0.0) หรือ Backbone Area ื่ มต่อกับ Backbone Area ผ่าน ABR Area อืน ่ ๆจะต ้องเชอ นอกจากนี้ OSPF ย ังมีการกาหนด Router ทีจ ่ ะสรุป Routing Information แลกเปลีย ่ นก ับ Routing Protocol อืน ่ หรือออก ื่ ASBR (AS Border Router) นอก AS ชอ 27.14 OSPF Area Area0 Area1 Area2 OSPF Designated Router และ Backup Designated Router ่ LSA และการ เพือ ่ ลดจานวนการสง Broadcasting (Multicast) รวมถึงการ ื่ มต่อก ับ Router ทุกๆต ัวใน Area เชอ OSPF กาหนดให ้มี Router หนึง่ ตัวทาหน ้าที่ รวบรวม LSA ของ Area จัดทาเป็ น LSB และสง่ ให ้กับ Router ทุกๆตัว เรียก Designated Router (DR) DR จะเลือกจาก Router ทีม ่ ี Router ID ตา่ สุด OSPF ยังกาหนด Backup DR(BDR) ทีจ ่ ะ ทางานในกรณีท ี่ DR เกิดมีปัญหา OSPF Designated Router และ Backup Designated Router DR BDR M= n(n-1)/2 = 28 M= (n-2)×2+1 = 13 OSPF Protocol Layer OSPF กาหนด Frame Format ทีจ ่ ะบรรจุ โดยตรงลงใน IP ไม่ผา ่ น Transport Layer Packet Type ทัง้ หมด 5 แบบ แต่ละแบบยังมีแยก ออกไปอีก OSPF Packet Type I = Hello Packet สง่ ทุก 10 วินาที OSPF Packet Type 4 = Link-State Update Packetจะสง่ LSA LSA ทีส ่ ง่ มีหลายแบบ Protocol Number ของ OSPF คือ 89 ่ LSA จะสง ่ ผ่าน Multicasting การสง 224.0.0.5 Position of the Dynamic Routing Protocols in the Protocol Stack BGP RIP TCP UDP IP OSPF Raw IP Link layer Physical layer 27.15 Intermediate System – Intermediate System (IS-IS) ออกแบบโดย Digital Equipment Corporation ให้เป็นสว่ นหนึง่ ของ DECNET V ให้เป็น IGP ้ ในเวลาเดียวก ับ OSPF และทางานคล้ายก ัน โดยใชว้ ธ ถูกสร้างขึน ิ ข ี อง Link-State และ Dijkstra Algorithm ข้อแตกต่างจาก OSPF ้ มา เนือ IS-IS ถูกลืมไประยะหนึง่ และได้ร ับความนิยมขึน ่ งจาก IS-IS เป็ น Proprietary ในตอนแรก, OSPF เป็ น Open Standard OSPF ถูกออกแบบให ้ Run บน IP สว่ น IS-IS ถูกออกแบบให ้ Run บน CLNS (Connectionless Network Service อยูใ่ นมาตรฐานของ OSI) OSPF ออกแบบมาให ้สง่ ผ่าน Route ของ IPv4 สว่ น IS-IS จะสง่ ผ่าน Route สาหรับ OSI Protocol ่ วามสามารถเพิม ต่อมา OSPF ได ้มีการปรับปรุง และใสค ่ เติมลงไป ทาให ้มี Overhead สูงกว่า IS-IS ปั จจุบัน DEC ถูกยุบไปแล ้ว IS-IS ไม่ใช ่ Proprietary Property IS-IS มี Overhead ตา่ กว่า OSPF IS-IS ได ้ถูกออกแบบใหม่ให ้ใชกั้ บ IP ได ้ OSPF ไม่สามารถใชกั้ บ IPv6 ได ้ จะต ้องใช ้ OSPF 6 ตัวใหม่ นิยมใชใ้ น ISP เนือ ่ งจาก ISP เป็น Network ขนาดใหญ่ การใช ้ OSPF จะมี Overhead สูง IP Routing EGP ROUTING BGP IGP Static Dynamic Default Route Distance Vector RIP V1 RIP V2 Link State OSPF IS-IS 27.16 Multicast Routing 27.16.1 Multicast Semantic Multicast Routing จะต่างจาก Unicast Routing เนือ ่ งจาก Internet ยอมให้ Multicast Group เป็น Dynamic และไม่ ่ จาเป็นต้องมีการแสดงต ัวผูส ้ ง ิ สามารถเป็ นหรือบอกเลิกได ้ตลอดเวลาตามความต ้องการ สมาชก ิ ของ Group จะได ้รับทุกๆ Packet ทีม เมือ ่ เป็ นสมาชก ่ ก ี ารสง่ ให ้กับ Group ิ ของ Group เดียวกัน จะ ถ ้ามีหลาย Application บน Host เดียวกันเป็ นสมาชก ได ้รับ Packet เพียงหนึง่ Copy จากนัน ้ Packet จะถูก Copy ให ้กับแต่ละ Application ิ ของ Group ตัว Host จะยังไม่แจ ้ง เมือ ่ Application บอกเลิกการเป็ นสมาชก การบอกเลิกไปยัง Router ทีต ่ อ ่ อยูจ ่ นกระทั่ง Application สุดท ้ายบอกเลิก ิ Host จึงจะบอก Router ว่าไม่ต ้องการเป็ นสมาชก ิ แล ้ว เป็ นสมาชก IP Multicast Group จะเป็นล ักษณะ Anonymous ิ ในขณะนั น เราไม่สามารถรู ้ผู ้สง่ หรือผู ้รับ หรือจานวนสมาชก ้ Router และ Host ไม่รู ้ว่า Application ใดเป็ นผู ้สง่ ข ้อมูลให ้แก่ Group กลุม ่ ของ Multicast Group เพียงแค่กาหนดกลุม ่ ของผู ้รับ ิ ของ Group ผู ้สง่ ไม่จาเป็ นต ้องเป็ นสมาชก 27.16 Multicast Routing 27.16.2 IGMP การที่ Host จะ Join หรือ Leave จาก Multicast Group จะกระทาผ่าน Internet Group Multicast ื่ มต่อก ับ Protocol (IGMP) ก ับ Router ทีเ่ ชอ Network ของ Host นน ั้ ื่ สารระหว่าง Host Protocol จะใชเ้ ฉพาะสาหร ับการสอ และ Router Protocol จะกาหนด Host ไม่ใช่ Application ให้เป็น ิ ของ Multicast Group สมาชก ิ ของ Group จะมองเหมือนเป็ น ถ ้ามีหลาย Application เป็ นสมาชก ิ เดียว และเป็ นหน ้าทีข สมาชก ่ อง Host ทีจ ่ ะทาการ Copy ข ้อมูลสง่ ให ้แต่ละ Application ิ Host จะสง่ IGMP เมือ ่ Application สุดท ้ายบอกเลิกการเป็ นสมาชก ไปบอกยัง Router เพือ ่ บอกเลิก 27.16 Multicast Routing ิ 27.16.3 การ Forward และการค้นหาสมาชก เมือ ่ Router พบว่ามี Host บน Network ทีม ่ ัน ื่ มต่ออยูเ่ ป็นสมาชก ิ ของ Multicast Group เชอ ้ ทางไปย ัง Group และ ม ันจะต้องจ ัดสร้างเสน ่ Datagram ทีม ทาการสง ่ ันได้ร ับสาหร ับ ิ Group ไปย ัง Host สมาชก ดังนัน ้ Router จะมีหน ้าทีใ่ นการกระจาย Multicast Routing Information ั อ ้ นและยากกว่า Multicast Routing จะซบซ Unicast Routing เนือ ่ งจาก Group เป็น Dynamic และการใช ้ Anonymous Sender ขนาดและ Topology ของ Group อาจจะเป็ นภายใน ิ ไม่กค Organization หรือทัว่ โลก โดยมีสมาชก ี่ นจนถึง ่ Webcast Application) เป็ นล ้านคน (เชน 27.16 Multicast Routing ิ 27.16.3 การ Forward และการค้นหาสมาชก Multicast Routing Protocol จะต้อง ทางานได้รวดเร็วและต่อเนือ ่ งเพือ ่ ทีจ ่ ะ ิ ทีเ่ ป็น สามารถจ ัดการก ับสมาชก Dynamic ่ ข้อมูล เนือ ่ งจาก User ใดก็ได้สามารถสง ให้ Group ด ังนน ั้ Route Information ิ จะต้องกินขอบเขตนอกเหนือจากสมาชก ของ Group ้ ามวิธใี นการ Multicast Protocol จะใชส Forward Datagram 27.16 Multicast Routing ิ 27.16.3 การ Forward และการค้นหาสมาชก ้ ามวิธใี นการ Multicast Protocol จะใชส Forward Datagram Flood-and-Prune Configuration-and-Tunneling Core-Based Discovery เราจะกล่าวรายละเอียดในแต่ละวิธอ ี ย่าง ั สงเขป 27.16 Multicast Routing ิ 27.16.3 การ Forward และการค้นหาสมาชก Flood-and-Prunes ิ ทุกคน วิธน ี จ ี้ ะดีทส ี่ ด ุ ถ ้าขนาดของกลุม ่ เล็ก และสมาชก ื่ มต่อกับ LAN ทีอ ่ Network ขององค์กร เชอ ่ ยูต ่ ด ิ กัน เชน การทางานจะเริม ่ จาก Router จะ Forward แต่ละ Datagram ไปยังทุกๆ Network เมือ ่ Multicast Datagram มาถึง Router จะ Forward ไปยัง ทุกๆ Direct Connect LAN ผ่าน Hardware Multicast ้ ื่ Reverse เพือ ่ ป้ องกัน Loop วิธก ี ารนีจ ้ ะใชเทคนิ คทีช ่ อ Path Broadcasting (RPB) ในการ Break Loop ขณะที่ Router ทาการ Flood ข ้อมูลไปยังทุก Network ิ ของกลุม มันจะมีการแลกเปลีย ่ นข ้อมูลเกีย ่ วกับสมาชก ่ ิ อยู่ มันจะหยุดการ ถ ้า Router เรียนรู ้ว่า Network ใดไม่มส ี มาชก สง่ ข ้อมูล Multicast ให ้ Network นัน ้ นีเ่ ป็ นทีม ่ าของคาว่า ‘Prunes” 27.16 Multicast Routing ิ 27.16.3 การ Forward และการค้นหาสมาชก Configuration-and-Tunneling ้ ้ดีในกรณีทส ิ กระจายตัว กินขอบเขตกว ้าง โดยที่ วิธน ี จ ี้ ะใชได ี่ มาชก ิ ไม่กค แต่ละ Site มีสมาชก ี่ น Router ในแต่ละ Site จะถูก Configure ให ้รู ้จัก Site อืน ่ ๆ เมือ ่ มี Multicast Datagram มาถึง ตัว Router จะสง่ Datagram ไป ื่ มต่อกับมันโดยตรง ผ่าน Hardware ยังทุก Site ทีเ่ ป็ น LAN ทีเ่ ชอ Multicast จากนัน ้ Router จะมาดูทต ี่ าราง Configuration ว่า Datagram นี้ จะต ้องสง่ ไปยัง Remote Site ใด การสง่ จะเป็ นการบรรจุ IP Multicast ลงใน IP Unicast Datagram เรียกว่าการทา Tunneling (IP-in-IP Tunneling) ดังนัน ้ การ Forward Multicast Datagram จะผ่านทาง Unicast Routing เนือ ่ งจากมีการทา Tunneling คือการสง่ ภายใน Site ใช ้ Multicast แต่การสง่ ให ้ Site อืน ่ จะใช ้ Unicast Tunneling 27.16 Multicast Routing ิ 27.16.3 การ Forward และการค้นหาสมาชก Core-Based Discovery ในกรณีทข ี่ นาดกลุม ่ และขอบเขตอยูร่ ะหว่างกลาง หรือมีการปรับเปลีย ่ นไป ้ ด ี เราต ้องการ Protocol ทีส มา สองวิธแ ี รกจะใชไม่ ่ ามารถรองรับได ้หลายๆ รูปแบบของกลุม ่ ้ วิธน ี จ ี้ ะใชการก าหนด Core Unicast Address สาหรับแต่ละ Multicast Group เมือ ่ Router R1 ได ้รับ Multicast Datagram มันจะทาการ Encapsulate Datagram นั น ้ ลงใน Unicast Datagram และสง่ ไปยัง Core Unicast Address ของ Group ิ ของกลุม การเป็ นสมาชก ่ จะใชวิ้ ธก ี ารอย่างเดียวกัน เมือ ่ Unicast Datagram นีเ้ ดินทางผ่าน Internet ตัว Router ในทางผ่านแต่ละ ตัวจะดู Content ภายใน ถ ้า Router เป็ นสว่ นหนึง่ ของกลุม ่ มันจะ Process ิ ในสว่ นของมัน Multicast Message และสง่ Multicast Datagram ให ้กับสมาชก ิ มันจะเพิม ้ เมือ ่ Router ได ้รับการร ้องขอการเป็ นสมาชก ่ เสนทางลงในตาราง Multicast Table ของมัน ิ ของ Multicast Group จะขยายตัวออกจาก Core และ Router ดังนั น ้ สมาชก ้ ื่ มต่อเป็ น Multicast Tree จะสร ้างเสนทางเช อ 27.16 Multicast Routing 27.16.4 Multicast Protocols ้ มา แต่ย ังไม่ม ี มีหลาย Protocol ทีถ ่ ก ู เสนอขึน ต ัวใดทีส ่ ามารถใชง้ านได้อย่างกว้างขวาง ตลอดทงั้ Internet (Internet-wide multicast routing) Distance Vector Multicast Routing Protocol (DVMRP) ้ เป็ น Protocol ทีถ ่ ก ู ใชโดย UNIX program ‘mrouted’ และใน Internet Multicast backBONE (MBONE) DVMRP จะทา Local Multicast โดยใช ้ IP-in-IP encapsulation และสง่ Multicast Datagram จาก Site หนึง่ ไป ยังอีก Site หนึง่ รายละเอียด ดูได ้จาก http://www.lbl.gov/web/Computersand-Networks.html#MBONE Core Based Tree (CBT) ใชวิ้ ธก ี ารให ้ Router สร ้าง Delivery Tree จากจุดศูนย์กลาง ั Unicast Routing ในการสง่ มายังแต่ละกลุม ่ โดย CBT จะอาศย ข ้อมูลมายังศูนย์กลาง 27.16 Multicast Routing 27.16.4 Multicast Protocols Protocol Independent Multicast-Sparse Mode (PIM-SM) ่ เดียวกันกับ CBT ในการสร ้าง เป็ น Protocol ทีใ่ ชวิ้ ธก ี ารเชน Multicast Routing Tree การสง่ ข ้อมูลระหว่าง Site ซงึ่ ใช ้ Unicast ไม่ได ้กาหนดว่าจะต ้อง ใช ้ Unicast Routing Protocol อะไร Protocol Independent Multicast-Dense Mode (PIMDM) ้ เป็ น Protocol ทีอ ่ อกแบบมาให ้ใชภายในองค์ กร Router จะใชวิ้ ธก ี าร Flooding (PIM-DM Broadcast) Packet ของ Multicast ไปยังทุกๆตาแหน่งของ Network ภายในองค์กร ิ ของ Multicast อยู่ จะสง่ ข ้อมูลกลับให ้ ถ ้า Router ใด ไม่มส ี มาชก ทาการ Prune Multicast Tree (หยุดสง่ Packet) ้ ้ดี ถ ้า Multicast Session มีอายุสน ั ้ เพราะไม่ วิธก ี ารนีจ ้ ะใชได ต ้องการการ Setup ก่อนทีจ ่ ะมีการสง่ ข ้อมูล 27.16 Multicast Routing 27.16.4 Multicast Protocols Multicast Extensions to the Open Shortest Path First Protocol (MOSPF) MOSPF ได ้ถูกออกแบบเพือ ่ จะผ่าน Multicast Route ระหว่าง Router ภายในองค์กร ั การทางานของ OSPF และทางานร่วมกับ Linkโดย MOSPF จะอาศย State Routing Multicast Routing เป็นเรือ ่ งทีย ่ ากมาก แม้วา ่ จะมีการ วิจ ัยค้นคว้ามานาน แต่ย ังไม่ม ี Protocol ทีเ่ ป็น General-Purpose Internet Multicast ทีป ่ ระสพ ผลสาเร็จ Extra: Network Design Tips การใช ้ VLAN and Subnet การทา VLAN คือการแบ่ง Switch ให้มก ี ารทางาน เหมือนก ับเป็น Switch หลายต ัว Host ทีต ่ อ ่ กับแต่ละ VLAN จะเหมือนกับว่าเป็ น LAN คนละวง แต่ละ VLAN จะ Broadcast กันภายใน คือเป็ นหนึง่ Broadcast Domain ้ ับ LAN เราจะทา Subnet ในการนา TCP/IP มาใชก ให้ LAN แต่ละวงเป็นหนึง่ Network ดังนัน ้ หนึง่ VLAN ในทางปฎิบต ั ค ิ อ ื หนึง่ Subnet และ หนึง่ Broadcast Domain อย่างไรก็ตาม พึงเข ้าใจว่า VLAN Number เป็ นหมายเลขอ ้างอิงเพือ ่ แบ่ง LAN และรู ้จักเฉพาะ Switch นัน ้ ๆ ในขณะที่ IP Number นัน ้ เป็ น Global Address เราสามารถใช ้ VLAN เบอร์เดียวกัน สาหรับคนละ Subnet ทีอ ่ ยูต ่ า่ ง ื่ มกันในระดับ Layer 2 แต่ไม่มเี หตุผล Switch กัน และไม่มก ี ารเชอ ่ นัน อะไรทีจ ่ ะทาเชน ้ เพราะ VLAN Number สามารถตัง้ ได ้อย่าง เหลือเฟื อ ดังนัน ้ แต่ละ Subnet ควรให ้ VLAN Number ทีแ ่ ตกต่างกัน Extra: Network Design Tips การใช ้ VLAN and Subnet การทา VLAN Tag เป็นเสมือนการรวม LAN ทีอ ่ ยูต ่ า ่ ง Switch ก ัน เป็น LAN เดียวก ันและเป็น Subnet เดียวก ัน (เพิม ่ จานวนของ LAN Port แต่ตา ่ ง Switch) VLAN Tag เป็น Protocol ทีว่ างบน Layer 2 ่ งใน Frame ทีส ่ ผ่าน Port ทีท Tag จะใสล ่ ง ่ า Tag เท่านนและจะถู ั้ กนาออกเมือ ่ ถึง Switch ปลายทาง IP Packet ไม่มข ี ้อมูลของ VLAN Tag ดังนัน ้ VLAN Tag จะรู ้จักกันระหว่าง Switch สองตัวเท่านัน ้ Default VLAN ของ Port ทีท ่ า Tagging จะไม่ใส่ VLAN Tag VLAN และ VLAN Tag ทาให้ Network ต้องมีสอง Diagram ื่ มต่อในการทางานระหว่าง VLAN Logical Diagram แสดงการเชอ หรือ Subnet ื่ มต่อระหว่าง Switch ทาง Physical Diagram แสดงการเชอ Physical Extra: Network Design Tips การใช ้ VLAN and Subnet ตัวอย่าง Switch 24 Port 5/1 5/3 5/5 5/7 5/9 5/11 5/13 5/15 5/17 5/19 5/21 5/23 5/2 5/4 5/6 5/8 5/10 5/12 5/14 5/16 5/18 5/20 5/22 5/24 Physical Diagram Logical Diagram เมือ ่ แบ่ง VLAN 5/1 5/3 5/5 5/7 5/9 5/11 5/13 5/15 5/17 5/19 5/21 5/23 5/2 5/4 5/6 5/8 5/10 5/12 5/14 5/16 5/18 5/20 5/22 5/24 VLAN 100 VLAN 200 VLAN 1 VLAN 100 VLAN 100 VLAN 100 VLAN 200 VLAN 1 PC 1 PC 2 PC 3 PC 4 192.168.10.10 - .11 192.168.20.20 - .21 /24 /24 VLAN 1 VLAN 200 VLAN 200 VLAN 1 VLAN 1 5/1 5/3 5/5 5/7 5/9 5/11 5/13 5/15 5/17 5/19 5/21 5/23 5/2 5/4 5/6 5/8 5/10 5/12 5/14 5/16 5/18 5/20 5/22 5/24 PC 1 PC 2 192.168.10.10 - .11 /24 PC 3 PC 4 192.168.20.20 - .21 /24 VLAN Tag Diagram Physical Diagram SW2 SW1 VLAN 100 Port 1/1-10 VLAN 200 Port 1/11-20 Tag Port 1/24 VLAN 100 Port 1/1-10 VLAN 200 Port 1/11-20 Tag Port 1/24 Logical Diagram SW1:1/1-1/10 SW2:1/1-1/10 VLAN 100 10.10.10.0/24 SW1:1/10-1/20 SW2:1/10-1/20 VLAN 200 20.20.0.0/16 SW1:1/21-1/23 SW2:1/21-1/23 VLAN 1 30.0.0.0/8 ื่ มต่อ VLAN การเชอ ื่ มต่อ LAN คนละวงเข้าด้วยก ัน คือการเชอ ื่ มต่อแต่ละ Subnet หรือต่าง คือการเชอ Network เข้าด้วยก ัน ้ ป ต้องใชอ ุ กรณ์ Layer 3 คือ Router หรือ Switch L3 การสง่ ข ้อมูลข ้าม LAN จะสง่ ได ้ในระดับ IP Packet เท่านัน ้ Broadcast ปกติจะไม่ผา่ น ื่ มต่อผ่าน สมมุตเิ รามี 3 Network เชอ Router R1 .1 Logical Diagram แสดงรายละเอียดระด ับ L3 .1 .1 192.168.10.0/24 192.168.20.0/24 R1 192.168.10.0/24 .1 192.168.30.0/24 192.168.30.0/24 .1 VLAN 300 .1 VLAN 100 Logical Diagram แสดงรายละเอียดระด ับ L2 และ Host VLAN 200 192.168.20.0/24 .2 .3 .4 .5 .6 .7 .2 .3 .4 .5 .6 .7 .2 .3 .4 .5 .6 .7 ่ 6 คน และอยูบ ถ้าผูใ้ ชง้ านแต่ละ Network มีนอ ้ ย เชน ่ ริเวณเดียวก ัน เราสามารถใช ้ Switch ต ัวเดียว และ แบ่งเป็น 3 VLAN VLAN ละ 7 Port VLAN Diagram R1 192.168.10.0/24 .1 VLAN 300 .1 VLAN 100 Logical Diagram แสดงรายละเอียดระด ับ L2 และ Host 192.168.30.0/24 .1 VLAN 200 192.168.20.0/24 .2 .3 .4 .5 .6 .7 .2 .3 .4 .5 .6 .7 .2 .3 .4 .5 .6 .7 ่ 6 คน และอยูบ ถ้าผูใ้ ชง้ านแต่ละ Network มีนอ ้ ย เชน ่ ริเวณเดียวก ัน เราสามารถใช ้ Switch ต ัวเดียว และ แบ่งเป็น 3 VLAN VLAN ละ 7 Port Physical Diagran ื่ มต่อแต่ละ Port แสดงการเชอ ของอุปกรณ์ R1 SW1 VLAN100 Port 1/1,3,5,7,9,11,19 VLAN300 Port 1/,13,14,15,16,17,18,21 VLAN200 Port 1/2,4,6,8,10,12,20 Switch L3 ื่ ม VLAN ในทางปฎิบ ัติ ถ้ามีการแบ่ง VLAN และเชอ รวมถึงการทา Routing เราใช ้ Switch L3 จะสะดวก ิ ธิภาพสูงกว่า ประหย ัด และมีประสท Switch L3 จะรวม Router Function อยูภ ่ ายใน Switch ้ ังมี Switch L4 สามารถทาหน้าทีเ่ ป็น นอกจากนีย Firewall Switch L7 ทา Security ได้ถงึ ระด ับ Application เรียกรวมๆว่า Multilayer Switch R1 192.168.10.0/24 .1 192.168.30.0/24 .1 VLAN 300 .1 VLAN 100 VLAN 200 192.168.20.0/24 .2 .3 .4 .5 .6 .7 .2 .3 .4 .5 .6 .7 .2 .3 .4 .5 .6 .7 ขนตอนท ั้ ว่ ั ไปในการ Configure Switch L3 คือทาทีละ Layer ื่ มต่อสายก่อนและตรวจสอบ Layer 1:เชอ Layer 2: สร ้าง VLAN กาหนด Port ให ้กับแต่ละ VLAN ทา VLAN Tagging (ถ ้ามี) Layer 3: กาหนด IP Interface ให ้กับแต่ละ VLAN เมือ ่ กาหนด IP Interface ตัว Switch จะทางานใน Layer 3 โดยอัตโนมัต ิ หนึง่ VLAN คือหนึง่ Subnet ดังนัน ้ ระวังการกาหนด IP/Net Mask ให ้แก่ Interface เมือ ่ กาหนดแล ้ว จะเป็ นการกาหนดค่า Network ID (Prefix) ให ้แก่ VLAN ไปในตัว จากนนจึ ั้ งค่อยทา Routing End of Chapter 27 (Week 13) ั ่ สปดาห์ HW 9: Chapter 27 สง หน้า 27.1 27.4 27.6 27.10 27.16 27.24 End of Week 13 HW 7 Download