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