Transcript Router

NETWORK LAYER PROTOCOL
ROUTING PROTOCOL
Router (เราท์ เตอร์ ) คือ อุปกรณ์ที่ทำหน้ำที่ในเลเยอร์ 3 หรื อเลเยอร์
เครื อข่ำย Router จะสำมำรถค้นหำเส้นทำงในกำรส่ งข้อมูลระหว่ำงเครื อข่ำย
Router จะมีขอ้ มูลเกี่ยวกับกำรจัดเส้นทำงให้แพ็กเก็ต เรี ยกว่ำ
Routing Table (เราติง้ เทเบิล้ ) หรื อ ตำรำงกำรจัดเส้นทำง ข้อมูลในตำรำงนี้
จะเป็ นข้อมูลที่ Router ใช้ในกำรเลือกเส้นทำงที่ดีที่สุดไปยังปลำยทำง ถ้ำเส้นทำง
หลักเกิดขัดข้อง Router ก็สำมำรถเลือกเส้นทำงใหม่ได้
Routing Protocol
Routing Protocol คือโพรโทคอลที่ใช้ในกำรแลกเปลี่ยน
routing table ระหว่ำงอุปกรณ์เครื อข่ำยต่ำงๆที่ทำงำนในระดับ
Network Layer (Layer 3) เช่น Router เพื่อให้อุปกรณ์
เหล่ำนี้สำมำรถส่ งข้อมูล (IP packet) ไปยังคอมพิวเตอร์ปลำยทำงได้
อย่ำงถูกต้อง โดยที่ผดู ้ ูแลเครื อข่ำยไม่ตอ้ งแก้ไขข้อมูล routing table
ของอุปกรณ์ต่ำงๆตลอดเวลำ เรี ยกว่ำกำรทำงำนของ Routing
Protocol ทำให้เกิดกำรใช้งำน dynamic routing ต่อระบบ
เครื อข่ำย
การสง่ ข ้อมูล (Delivery)
ในการสง่ ข ้อมูลต่าง ๆ Network Layer จะเป็ นตัวทีค
่ อยควบคุมการ
สง่ ข ้อมูล Packet ต่าง ๆ จากต ้นทางไปจนถึงปลายทาง
การสง่ ต่อข ้อมูล (Forwarding)
้
Forwarding คือการกาหนดทีต
่ าแหน่งเสนทางของ
Packet เพือ
่
สง่ ไปยังเครือ
่ งปลายทาง ในการ Forwarding จาเป็ นต ้องมีตาราง
้
เสนทาง
(Routing Table) ทีอ
่ ยูใ่ น Host หรือ Router ต่าง ๆ
เมือ
่ Host มี Packet ทีต
่ ้องการสง่ หรือ Router ได ้รับ Packet เข ้ามา
้
มันจะทาการหาเสนทางต่
อไปจาก Routing Table แล ้วก็สง่ ไปยัง
้
เสนทางเหล่
านัน
้ สง่ ถึงปลายทาง
Route method และ Next-hop method
Host-specific method และ Network-specific method
Default method
ตัวอย่าง 1
จงสร ้าง Routing Table จาก Network ดังรูป
Tool ทีเ่ กีย
่ วข ้อง
เราสามารถใชค้ าสงั่ netstat –rn ซงึ่ จากเครือ
่ งมือตัวนี้
้
สามารถใชในการหา
Routing table ได ้ โดย r และ n
เป็ น option โดยที่ r คือแสดง Routing table ทีส
่ นใจ
และ n คือแสดงเฉพาะ address ทีเ่ ป็ นตัวเลขเท่านัน
้
Tool ทีเ่ กีย
่ วข ้อง
จากผลลัพธ์ของคาสงั่ netstat เราสามารถวาดเป็ น
ระบบ network ได ้ดังนี้
Tool ทีเ่ กีย
่ วข ้อง
คาสงั่ ifconfig สาหรับ Linux หรือ ipconfig สาหรับ
Windows ใชส้ าหรับดูรายละเอียดต่าง ๆ ในการ์ดแลนใน
เครือ
่ งของเรา หรือ อาจจะเพิม
่ option เป็ น ipconfig /all
ตารางหาเส้ นทางประกอบด้ วยข้ อมูลที่สาคัญดังนี ้
•
Destination: หมำยเลขเครื อข่ำย (Network IP Address) ที่ จะใช้นำส่ งแพ็คเก็ต ถ้ำกำรนำส่ งเป็ นแบบ
Host-specific routing ค่ำในช่ องนี้ จะเป็ นหมำยเลขปลำยทำงของโฮสต์ (Host IP Address)
•
Next-hop address: หมำยเลข IP ของเรำเตอร์ ตวั ถัดไปที่จะส่ งแพ็คเก็ตต่อไป
•
Interface: ชื่ อของ Network Interface ที่ เส้นทำงนี้ ใช้
•
Flags: เครื่ องหมำยพิเศษเช่ น
U(up) หมำยควำมว่ำเส้นทำงนั้นใช้งำนได้อยู่ (Up and operational)
G(Gateway) บ่งบอกว่ำเส้นทำงนี้ เป็ นกำรส่ ง Datagram ไปยัง Gateway ถ้ำหำกว่ำเส้นทำงนั้นสำมำรถส่ ง
ข้อมูลไปถึงปลำยทำงได้เลย มันจะ ไม่มี flag นี้
H (Host-specific) บ่งบอกว่ำเส้นทำงนั้นใช้ในกำรเดิ นทำงไปยัง Host ใด Host หนึ่ ง (แต่ปกติ เรำจะให้เป็ นกำร
เดิ นทำงไปยัง Network มำกกว่ำ)
D(added by redirection จะถูก set เมื่ อเส้นทำงนั้นเป็ นเส้นทำงที่ถูกสร้ำงขึ้นเนื่ องจำกถูก Redirect จำก
ICMP Redirecting Route Message และ M (modified by redirection)
+Reference count: จำนวนผูใ้ ช้ที่กำลังใช้เส้นทำงนี้
+Use:จำนวนแพ็คเก็ตที่ได้ส่งผ่ำนเร้ ำ เตอร์ ตวั นี้
--เทคนิคการลดขนาดตารางหาเส้ นทาง
• เนื่ องจำกทุกวันนี้ อินเตอร์ เน็ตได้เป็ นเครื อข่ำยที่มีขนำดใหญ่มำก มีจำนวนเครื อข่ำยค่อนข้ำงเยอะ เป็ นผลให้
ขนำดตำรำงหำเส้นทำงใหญ่มำกขึ้นด้วย ถ้ำใช้ตำรำงหำเส้นทำงแบบเดิ มจะเป็ นวิธีที่ไม่ค่อยมีประสิ ทธิ ภำพ
มำกนัก ดังนั้นจึงได้มีกำรคิดค้นเทคนิ คที่จะช่ วยในกำรลดขนำดของตำรำงหำเส้นทำงให้ เล็กลงและมีควำม
ปลอดภัยมำกขึ้น
• +Next-Hop Routing
ตำรำงหำเส้นทำงจะเก็บข้อมูลเฉพำะเรำเตอร์ ตวั ถัดไปที่ แพ็กเก็ตจะต้องเดิ นผ่ำน (next hop) เท่ำนั้น
ไม่จำเป็ นต้องเก็บข้อมูลของเรำเตอร์ ท้ งั หมด
+Network-Specific Routing
เทคนิ คนี้ จะใช้วิธีของกำรเก็บแอดเดรสเครื อข่ำยไว้ แทนที่จะเก็บแอดเดรสของโฮสต์ ดังนั้นถึงแม้ว่ำภำยใน
เครื อข่ำยจะมี 1000 โฮสต์ แต่ไม่จำเป็ นต้องเก็บแอดเดรสของโฮสต์ท้ งั หมดก็ได้
+Host-Specific Routing
จะใช้หลักกำรที่ตรงข้ำมกับ network-specific routing ถึงแม้ว่ำเทคนิ คนี้ จะมีประสิ ทธิ ภำพ
น้อยกว่ำ เนื่ องจำกต้องเก็บแอดเดรสของโฮสต์เอำไว้ในตำรำงหำเส้นทำง แต่จะมีประโยชน์สำหรับผู้
ควบคุมเครื อข่ำยที่สำมำรถกำหนดเส้นทำงเดินให้กบั แต่ละ โฮสต์ได้ Host-Specific Routing
จะใช้เพื่อวัตถุประสงค์บำงอย่ำง เช่ น สำหรับทดสอบเส้นทำงเดินของแพ็กเก็ต หรื อเพื่อเหตุผลทำงด้ำน
ควำมปลอดภัย เป็ นต้น
การหาเส้ นทางแบบสแตติกและไดนามิก
• 1.กำรกำหนดแบบ static routing โดยผูด้ ูแลระบบเครื อข่ำยจะเป็ นผูก้ ำหนดค่ำใน routing table เอง โดย
ไม่มีกำรเปลี่ยนแปลงในระหว่ำงกำรใช้งำน ตำรำงจึงไม่สำมำรถปรับปรุ งโดยอัติโนมัติได้ ใช้ในกรณี ที่กำรส่ งข้อมูล
ระหว่ำงเน็ตเวิร์คมีเพียงเส้นทำงเดี ยว หรื อต้องกำรให้กำรส่ งผ่ำนข้อมูลเป็ นไปตำมรู ปแบบที่กำหนด ใช้สำหรับเครื อข่ำย
ขนำดเล็กที่ไม่ค่อยมีกำรเปลี่ยนแปลง
• 2. กำรกำหนดแบบ dynamic routing โดยใช้โพรโตคอลหำเส้นทำง (routing protocol) ในกำรหำ
เส้นทำงที่เหมำะสม ซึ่ งข้อมูลในตำรำงหำเส้นทำง (routing table) อำจจะมีกำรเปลี่ยนแปลงเมื่อเน็ตเวิ ร์คมีกำร
เปลี่ยนแปลง เช่ น เรำเตอร์ บำงตัวไม่สำมำรถใช้งำนได้ หรื อปริ มำณของกำรสื่ อสำรในลิงค์หนึ่ งมีควำมคับคัง่ มำก โดยใน
กำรเปลี่ยนแปลงจะเกิ ดกำรสื่ อสำรระหว่ำงเรำเตอร์ เพื่ออัพเดทข้อมูลโดย ใช้ routing protocol ในกำรค้นหำ
เส้นทำงอื่นที่ส่งข้อมูลไปยังเป้ ำหมำยได้ หรื อเส้นทำงอื่นที่ดีกว่ำ ซึ่ ง routing protocol ก็จะมีหลำยโพรโตคอล
เช่ น OSPF (Open Shortest Path First), RIP (Routing Information Protocol),
IGRP (Interior Gateway Routing Protocol) หรื อ BGP (Border Gateway
Protocol) โดยแต่ละโปรโตคอลจะมีควำมเหมำะสมในกำรใช้งำนที่ต่ำงกัน เหมำะกับเครื อข่ำยขนำดใหญ่
ระบบออโตโนมัส คืออะไร
• อินเตอร์ เน็ตได้เติบโตไปมำกจนเรำเตอร์ แต่ละตัวไม่สำมำรถเก็บ เส้นทำงทั้งหมดในตำรำงหำ
เส้นทำงได้
อินเทอร์ เน็ตจึงถูกแบ่งออกเป็ น Autonomous System (AS) เป็ นกลุ่มของเครื อข่ำยและ
เรำเตอร์ ที่มีกำรบริ หำรงำนเป็ นอิสระจำกกลุ่มอื่นๆ
Unicast Routing Protocol
Routing table สามารถเป็ นได ้ทัง้ static และ dynamic โดยแบบที่
้
เป็ น static คือเสนทางต่
าง ๆ ถูกกาหนดเอง สว่ นแบบ dynamic
้
้
คือมีการแก ้ไขเสนทางแบบอั
ตโนมัตเิ มือ
่ เสนทาง
(route) ต่าง ๆ มี
การเปลีย
่ นแปลง
Unicast Routing Protocol
RIP (Routing Information Protocol)
้
RIP จะเป็ นการหาเสนทางแบบ
Distance vector นั่นคือคานวณ
จากระยะห่าง หรือระยะทางต่าง ๆ ในเครือข่าย สาหรับการหา
้
เสนทางภายในระบบออโตโนมั
ส
RIP (Routing Information Protocol)
การทา RIP ในแต่ละ node จะทาการแชร์ข ้อมูลกันระหว่าง Routing
้
table แบบคร่าว ๆ และเมือ
่ มีการเปลีย
่ นแปลงข ้อมูลเสนทาง
การ update Routing table แบบ RIP
ตัวอย่าง 2
กาหนดค่าเริม
่ ต ้นให ้กับทุก Routing table
ตัวอย่าง 2
OSPF (Open Shortest Path First)
OSPF จะมีการแบ่งระบบออโตโนมัสออกเป็ นหลายพืน
้ ที่ เพือ
่ ให ้
ิ ธิภาพ แบบ Link state
การสง่ แพ็กเก็ตเป็ นไปได ้อย่างมีประสท
OSPF (Open Shortest Path First)
Dijkstra algorithm
้
ั ้ ทีส
Dijkstra algorithm จะคานวณเสนทางที
ส
่ น
่ ด
ุ ระหว่างจุด 2 จุดใน
เครือข่าย
ในการคานวณจะมีการแบ่งโหนดออกเป็ น 2 ชุด คือ
โหนดชวั่ คราว(tentative)
โหนดถาวร (permanent)
ผลลัพธ์ทไี่ ด ้จากการคานวณจะนาไปเก็บไว ้ในฐานข ้อมูลของ
link state
วิธก
ี ารคือ เปรียบเทียบระยะทางระหว่าง Node ต่าง ๆ แล ้วเลือก
ั ้ ทีส
Node ทีส
่ น
่ ด
ุ
ตัวอย่าง 3
Routing table
ของ node A
BGP (Border Gateway Protocol)
้
เป็ นโพรโตคอลสาหรับการหาเสนทางระหว่
างระบบออโตโนมัส
้
้
ใชเทคนิ
คในการหาเสนทางที
เ่ รียกว่า path vector
path vector routing table
Network
Next Router
Path
N01
R01
AS14, AS23, AS67
N02
R05
AS22, AS67, AS05, AS89
N03
R06
AS67, AS89, AS09, AS34
N04
R12
AS62, AS02, AS09
ตัวอย่าง 4
กาหนดค่าเริม
่ ต ้นให ้แต่ละ Routing table
ตัวอย่าง 4
้
ผลลัพธ์ทไี่ ด ้หลังจากหาเสนทางแบบ
path vector
2
9
4
5
6
10
8