Các loại gói RIP❒ Trong định dạng có trường command để ký hiệu cho một trong hai loại gói: request message hay response message ❒ Request được truyền bởi các router sau khi có timeout ha
Trang 1GIAO THỨC ĐỊNH TUYẾN
CHƯƠNG 9
Trang 2TI M ĐƯỜNG PHÂN CÂP
• Hê tự tri
• Tim đường nôi vung
• Tim đường liên vung
Trang 3Hê tự tri
• Vân đê tim đường trong môt liên mang lớn co rât nhiêu mang
• Internet la mang cua cac mang
• Cac giai thuât ap dung với mang lớn co kho khăn
• Mô i mang co thê co chiên lược tim đường riêng
• Mô i mang co chiên lược tim đường riêng hinh tha nh môt Autonomous System
Trang 5Kiên truc phân câp cua Internet
Trang 6Phân câp giao thức tim đường
• Trong môt AS: Giao thức tim đường nôi vung; Intra-AS Routing còn gọi là IGP (Interior
Gateway Protocol)
– RIP: Routing Information Protocol
– OSPF: Open Shortest Path First
– IS-IS, IGRP, EIGRP
• Giữa cac AS: Giao thức tim đường liên vung, Inter-AS Routing còn gọi là EGP (Exterior Gateway Protocol)
– BGPv4 (Border Gateway Protocol)
Trang 8Lý do có sự phân biệt định tuyến nội vùng
và liên vùng (Intra và Inter-AS routing)
• Intra-AS: có thể tập trung vào hiệu năng
• Inter-AS: chính sách là ưu tiên hơn
Trang 9MỘT SỐ GIAO THỨC
❒ RIP
❒ OSPF
❒ BGP
Trang 10RIP: Các phiên bản
❒ RIPv1 được đặc tả trong RFC 1058, thuộc
dạng định tuyến distance vector
❒ RIPv2 được đặc tả trong RFC 2453, khắc
phục một số hạn chế của RIPv1 và hỗ trợ xác thực.
Trang 11RIP: Hoạt động căn bản
❒ Các Node xây dựng các bảng định tuyến bằng cách lấy thông tin từ các thông điệp đáp ứng (RIP
response messages)
❍ response messages chứa danh sách các distance vectors
❒ Khi tìm thấy một tuyến ngắn hơn, sẽ thay giá trị cũtrong bảng định tuyến
❍ Các khoảng cách bằng vẫn giữ nguyên để tiết kiệm thời gian
xử lý.
Trang 14Các loại gói RIP
❒ Trong định dạng có trường command để ký hiệu cho một trong hai loại gói: request message hay
response message
❒ Request được truyền bởi các router sau khi có
timeout hay thông tin bị lạc hậu
❒ Response được truyền để đáp ứng cho một yêu cầu, cũng được truyền theo qui định của giao thức
❍ response message thường chứa danh sách các vector
khoảng cách.
Trang 15Sử dụng RIP Response message
• Nếu một láng giềng hay liên kết trực tiếp có thay đổi (ví
dụ bị hỏng), một response được gửi cho các tất cả các node láng giềng để cập nhật.
Trang 16Danh sách vector khoảng cách
❍ Metric: khoảng cách tính theo metric (ví
dụ tính theo chặng (hop count), mặc định
15 hop, 16 hop được xem như giá trị vô
cùng lớn)
❒ Một vùng lớn dành cho địa chỉ (14 octet)
có thể được sử dụng theo nhiều cách
khác nhau.
❍ Ví dụ trong mạng IP có thể đặt 4 octet
địa chỉ sau 2 octet trống.
commandversionreservedaddress family ID
addressmetric
1 1 2 2
14
4
Một vector, có thể có nhiều vector
octets
Trang 17RIP: liên kết hỏng và phục hồi
Nếu không thấy quảng cáo sau 180 giây thì xem như liên kết/láng giềng đã tắt
❍ Tất cả qua láng giềng đó là bất hợp lệ
❍ Các quảng cáo mới được gửi đến các láng giềng
❍ Đến lượt các láng giềng lại gửi quảng cáo mới (nếu có thay đổi)
❍ Thông tin liên kết hỏng lan truyền nhanh chóng qua toàn mạng
Trang 18forwarding table
Trang 19Trở ngại phát sinh trong DV Routing :
C
1 1
B
Port Dist
Dest
2 1
C
1 1
A
Port Dist
Dest
1 1
B
1 2
A
Port Dist
Dest
Trang 20❒ Điều gì xảy ra nếu liên kết BC bị hỏng?
❒ B nhận biết và cố gắng tìm đường khác đến C
B
1 2
C
1 1
B
Port Dist
Dest
2 1
C
1 1
A
Port Dist
Dest
1 1
B
1 2
A
Port Dist
Trang 21Trở ngại phát sinh trong DV Routing :
C
1 1
B
Port Dist
Dest
1 1
A
?
? C
Port Dist
Dest
X
Trang 22Trở ngại phát sinh trong DV Routing :
Ví dụ (4/5)
❒ A cho rằng có thể đến C qua hai chặng và trả lời cho
B, đường đó lại qua B nhưng A không biết đây là điều bất hợp lý
❒ B lấy thông tin này và cập nhật bảng với thông tin cóthể đến C qua 3 hop
B
1 2
C
1 1
B
Port Dist
Dest
1 3
C
1 1
A
Port Dist
Dest
X
Trang 23Trở ngại phát sinh trong DV Routing :
Ví dụ (5/5)
❒ Giả sử B có datagram cần gửi cho C:
❍ B dựa vào bảng định tuyến gửi sang A
❍ A sau đó sẽ gửi trở lại B
❍ A và B sẽ gửi datagram này qua lại, gọi là xuất hiện hiện tượng định tuyến lặp (routing loop)
B
1 2
C
1 1
B
Port Dist
Dest
1 3
C
1 1
A
Port Dist
Dest
X
Trang 24Đếm vô hạn (Count to Infinity) (1/7)
❒ Ví dụ một tuyến hướng đến host D (đích)
D R1 R2 R3 Network
Trang 25Đếm vô hạn (Count to Infinity)
Trang 26Đếm vô hạn (Count to Infinity)
❍ Vì chỉ quảng cáo khoảng cách (không phải trạng thái liên
kết) do đó không có cách gì để R1 biết R2 không có tuyến
nào đến D.
D R1 ? R2 R3 Network
Trang 27Đếm vô hạn (Count to Infinity) (4/7)
❒ R1 sẽ cập nhật thông tin định tuyến đến D qua R2
❍ Khoảng cách tăng lên 3 (2+1)
❍ Một distance vector mới lại gửi đến R2
D R1 ? R2 R3 Network
D 3
…
Trang 28Đếm vô hạn (Count to Infinity)
(5/7)
❒ R2 sẽ cập nhật bảng định tuyến với tuyến đến D qua R1
❍ Khoảng cách tăng lên 4 (3+1)
❍ Distance vector mới được gửi đến R1
D R1 ? R2 R3 Network
D 4
…
Trang 29Đếm vô hạn (Count to Infinity)
(6/7)
❒ R1 sẽ cập nhật thông tin định tuyến đến D qua R2
❍ Khoảng cách tăng lên 5 (4+1)
❍ Một distance vector mới lại gửi đến R2
❍ v.v (đến vô cùng)
D R1 ? R2 R3 Network
D 5
…
Trang 30Đếm vô hạn (Count to Infinity) (7/7)
❒ Một khi giá trị tăng khá lớn, R2 kết luận rằng R1 không thể phân phối các gói đến D.
❒ R2 sẽ dùng distance vector từ R3 để tìm đường đi khác đến D D
❒ Quá trình này sẽ lan truyền ngược về mỗi nguồn của thông điệp
D R1 R2 R3 Network
?
Trang 31• Vài router biết hư hỏng, nhưng những router khác thì không.
• Trong khoảng thời gian này, thông điệp đến D bị mất hay loop giữa các router.
❍ Các router của mạng chậm nhận thức cấu hình đúng để định tuyến đến D.
Trang 32Cập nhật Split Horizon (1/2)
❒ Một giải pháp cho counting to infinity:
❍ Không gửi distance vector ra cùng với port mà distanve vector nguồn ban đầu đi vào.
❒ Ví dụ
❍ R1 có thể quảng cáo một distance vector đến D (D,1)
❍ R2 sẽ nhận distance vector này và tạo vector (D,2)
❍ R2 sẽ không được gửi vector mới tạo này đến R1
Trang 34Hold Down (1/2)
❒ Router đợi một khoảng thời gian (timer) trước khi phát tán thông tin về một mạng nào bị hỏng
❍ Đối với RIP, các distance vectors hết hạn sau 180 giây
❍ Trước khoảng thời gian này, các router sẽ tiếp tục chuyển
Trang 35Hold Down (2/2)
❒ Trở ngại:
❍ Các router đợi trong thời gian dài (180s)
❍ Trong khoảng thời gian này, các router ởtrong trạng thái không đồng nhất
Trang 36Route Poisoning và Poison Reverse
❒ Route Poisoning: được dung đê đanh dâu môt tuyên không thê đi trong môt câp nhât đinh tuyên được gửi đên cac router khac
❒ Poison reverse: Các Router phát hiện một host hay mạng bị
hỏng,vẫn giữ mục tương ứng trong bảng, nhưng tăng chi phí lên
vô cùng.
❍ Truyền ngay distance vector mới này
❍ Điều này nhắc tất cả các router khác tìm một đường khác nếu có thể.
❍ Nếu không có đường đi khác, router sẽ khẳng định host hay mạng
là không thể đến được.
Trang 37Dùng giải pháp
❒ Cho Count to Infinity
❍ Vô cùng (Infinity) trong RIP là 16
• Bằng cách này, số thông điệp trong thời gian count to infinity
bị giới hạn
• Tuy nhiên, điều này cũng giới hạn độ rộng của mạng, phải nhỏ hơn 16.
❍ Hầu hết các hiện thực của RIP đều dùng split horizon
❍ Tuy nhiên, một vài hiện thực dùng route poisoning hay
poison reverse
❒ Cho routing loop
❍ Hold down timer đê ngăn chăn đinh tuyên lăp
❍ Khi nhân môt câp nhât chi ra môt mang không con truy câp được, router đanh dâu mang co thê down va khởi đông hold-down timer
❍ Nêu co môt câp nhât chi ra metric tôt hơn, câp nhât lai va huy hold-down timer
❍ Nêu câp nhât co metric giông hay xâu hơn thi bo qua, va cứ thê cho đên khi timer hêt han thi tuyên nay xem như down.
Trang 38NỘI DUNG
❒ RIP
❒ OSPF
❒ BGP
Trang 39OSPF (Open Shortest Path First)
❒ Khả dụng, phổ biến
❒ Dùng giải thuật Link State
❍ Truyền các gói LS
❍ Topo mạng tại mỗi node
❍ Tính toán tuyến dùng giải thuật Dijkstra
❒ Trong quảng cáo của OSPF, mỗi router láng giềng được ghi một mục
❒ Các quảng cáo được truyền đến toàn bộ AS (qua biện pháp phát tán kiểu nước lũ)
❍ Được chứa trong thông điệp OSPF trực tiếp qua IP (thay vì TCP hay UDP)
Trang 40Các đặc tính cải tiến của OSPF so với RIP
❒ An ninh: tất cả các bản tin OSPF đều có thể xác thực
❒ Cho phép nhiều đường đi có cùng chi phí (trong RIP chỉ
Trang 41Hierarchical OSPF
•Mỗi AS có thể được
cấu hình thành nhiều
area
•Trong mỗi AS, một
area được cấu hình
Trang 42Hierarchical OSPF
❒ Phân cấp hai mức: local area, backbone
❍ Các quảng cáo Link-state chỉ gửi trong nội vùng
❍ Mỗi node có topo chi tiết của vùng; chỉ biết hướng (đường ngắn nhất) đi đến các mạng trong các vùng khác
❒ area border router: “tóm lược” về cự li đến các mạng trong nội vùng, quảng cáo đến các area border router khác
❒ backbone router: chạy định tuyến OSPF giới hạn trong backbone
❒ boundary router: kết nối đến các vùng tự trị (AS) khác
Trang 43NỘI DUNG
❒ RIP
❒ OSPF
❒ BGP
Trang 44BGP (Border Gateway Protocol, RFC 1771)
❒ Hô trợ định tuyến liên vung, tao găn kêt liên mang (yêu tô găn kêt cua Internet)
❒ Trao đôi thông tin NLRI (Network Layer Reachability Information)
❍ Cho môt AS biêt thông tin đi đên AS khac
❍ Xac đinh đường đi tôt nhât dựa trên thông tin va chinh sach định tuyến
❒ BGP cho phep lâp va thực thi chinh sach
❍ Quang ba
❍ Định tuyến
Trang 45Path vector routing
❒ Giữa cac AS dung giải thuật nao?
❍ Không thê co cung chinh sach
❍ Dung LS thi chi phi bât nhât, CSDL qua lớn
❍ Dung DV mang qua rông, kho hôi tu
❒ Giai phap: tim đường theo giải thuật path vector
❒ RFC 1322
Trang 46Giai thuât path vector
Trang 48eBGP session va iBGP session
❒ eBGP session: diê n ra giữa cac router trong hai AS khac nhau Đây la cac router kê cân (adjacency) với router khac, chia se cung đường truyên va môt mang con.
❒ iBGP session: diê n ra giữa cac router trong cung AS, được dung đê kêt hợp va đông bô chinh sach định tuyến
Trang 50Lâp chinh sach
❒ BGP co thê lâp chinh sach gửi hay nhân thông tin định tuyến
❒ Dung bô loc
❒ Dung cac thuôc tinh
❍ AS_PATH
❍ MED
❍ LOCAL_PREF
❍ Và các thuộc tính khác
Trang 51Bô loc
❒ Chi trao đôi cho những đường đi đa đăng ky, loc vao, loc ra
Trang 52Dung thuôc tinh AS_PATH
Trang 53Dung MED
(MULTI_EXIT_DISCRIMINATOR)
❒ Trong trường hợp hai AS co nhiêu liên kêt với nhau
❒ Chon MED nho hơn
❒ Ap dung điêu khiên lưu lượng
Trang 54Chia tai với MED
• Đặt giá trị MED khác nhau cho mỗi đường
Trang 55Sử dung LOCAL_PREF
❒ Chon gia tri lớn hơn cua LOCAL_PREF
❒ Điêu khiên lưu lượng upbound
Trang 56BGP: giao thức định tuyến inter-AS trên Internet
2. phổ biến thông tin về khả năng đến được cho tất
cả các router bên trong AS
3. Căn cứ vào thông tin về khả năng đến được và
chính sách xác định các tuyến tốt đến các
subnet
❒ Cho phép mạng con quảng bá về sự tồn tại
của nó trên mạng Internet
Trang 58HẾT CHƯƠNG 9
... 6Phân câp giao thức tim đường
• Trong mơt AS: Giao thức tim đường nơi vung; Intra-AS Routing cịn gọi IGP (Interior...
❍ B dựa vào bảng định tuyến gửi sang A
❍ A sau gửi trở lại B
❍ A B gửi datagram qua lại, gọi xuất hiện tượng định tuyến lặp (routing loop)... này, thơng điệp đến D bị hay loop router.
❍ Các router mạng chậm nhận thức cấu hình để định tuyến đến D.
Trang 32