Transcript Document
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