ThS Âu Bửu Long

1

Mạng máy tính nâng cao-V1

Router Router

(cid:1) Chuyển gói tin giữa các mạng mà nó

kết nối đến.

(cid:1) Hoạt động trên tầng 3 của mô hình

OSI.OSI.

(cid:1) Các router dùng các cơ chế khác nhau để xác định đường đi tốt nhất trên mạng.

(cid:1) Router có thể liên kết các loại mạng

khác nhau.

2

Mạng máy tính nâng cao-V1

Phân loại định tuyến Phân loại định tuyến

(cid:1) Định tuyến tĩnh

(cid:1) Định tuyến động ◦ Distance Vector ◦ Link state

3

Mạng máy tính nâng cao-V1

DISTANCE VECTOR DISTANCE VECTOR ROUTING ROUTING ROUTING ROUTING

Định nghĩa khoảng cách bằng số node trung gian

Vector khoảng cách Vector khoảng cách

(cid:1) Mỗi router khi muốn gởi gói tin đến router khác thì cần có thông tin về địa chỉ mạng và cổng vật lý tương ứng. (cid:1) Bên cạnh đó còn có khoảng cách, (cid:1) Bên cạnh đó còn có khoảng cách, được tính là số router trên đường đi. (cid:1) Bảng các giá trị khoảng cách này được trao đổi giữa các router khi cần thiết.

5

Mạng máy tính nâng cao-V1

Vector khoảng cách Vector khoảng cách

N4

N5

N1

0

1*

N2

1

2

N1 N1

R3 R3

N2

2

3

3

1

N3

1

2

R1

N3

2

3

2

N4

1

3

N4

2

2

N2

N3

R2

N5

1

3

N5

2

2

Destination Distance Port

Bảng vector khoảng cách Bảng vector khoảng cách

(cid:1) Bảng định tuyến được khởi tạo động ◦ Router khởi tạo bảng dựa vào các mạng kết nối trực tiếp, khoảng cách bằng 0 ◦ Các router trao đổi bảng định tuyến với

nhau định kỳ. (cid:2) Nếu router kề (GS là R2) quảng bá đường định tuyến đến mạng N với khoảng cách D, thì ta có khoảng cách đến N là D+1

(cid:2) Router nhận sẽ cập nhật lại bảng định tuyến với đường đi đến mạng N là qua port nối với router R2 với khoảng cách D+1

7

Mạng máy tính nâng cao-V1

Cập nhật bảng định tuyến Cập nhật bảng định tuyến

8

Mạng máy tính nâng cao-V1

Distance Vector Tables Distance Vector Tables

N1

Dest Distance Route

N1 0 1

N4

N2 0 2

1 1

1

N3 0 3

4 T1

3 T1 T1 T1

R1

R2

N2

2

2

3

N5

Dest Distance Route

1 N4 0

N3

2 N5 0

Distance Vector Tables Distance Vector Tables

N1

Dest Distance Route

N1 0 1

N2 0 2

N4

1 1

1

N3 0 3

4 T2

T2 T2

3 T2

N2

R1

R2

2

2

3

0

1

N4

N5

0

2

N5

1

3

N1

1

3

N2

N3

1

3

N3

Distance Vector Tables Distance Vector Tables

N1

1

N1 0

2

N2 0

3

N3 0

4

N4 1

N4

4 4

N5 1 N5 1

1 1

1

3

4

R1

N2

R2

2

2

N4 0

1

3

N5 0

2

N5

N1 1

3

N2 1

3

N3 1

3

N3

Ví dụ Distance Vector Ví dụ Distance Vector

Welcome to Bobton Population: 1

Leamington 86 → Essex 21 ↑ Essex 21 ↑ Windsor 46 ←

Whoohoo! A friend!

RIPRIP

Routing Information Protocol

Hoạt động của RIP Hoạt động của RIP

(cid:1) Là một loại định tuyến dựa trên vector

khoảng cách

(cid:1) Các node trong mạng đươc chia

thành 2 loại: ◦ Active node: ◦ Active node:

(cid:2) Là routers, nhận quảng bá của láng giềng để

xây dựng bảng định tuyến.

(cid:2) Quảng bá thông tin định tuyến của chính mình

◦ Passive node:

(cid:2) Thường là các máy tính, chỉ nhận mà không

quảng bá đi.

14

Mạng máy tính nâng cao-V1

Hoạt động của RIP Hoạt động của RIP

(cid:1) Cả active và passive node đều cập

nhật bảng định tuyến của mình bằng các gói quảng bá từ các node khác (cid:1) Các mẫu tin đường đi với khoảng (cid:1) Các mẫu tin đường đi với khoảng cách ngắn hơn sẽ được cập nhật ◦ Các đường đi cùng khoảng cách không

được cập nhật.

15

Mạng máy tính nâng cao-V1

Định dạng gói tin RIP Định dạng gói tin RIP

octets

Cho biết gói tin hỏi hay trả lời

command

1

version

1 1

reserved

2

address family ID

2

address

14

metric

4

Lặp lại ứng với từng mẫu tin

Gói hỏi & trả lời Gói hỏi & trả lời

(cid:1) Gói hỏi: Được gởi bởi router khi thông

tin hết hạn (cid:1) Gói trả lời:

◦ Gởi trả lời cho gói hỏi ◦ Gởi trả lời cho gói hỏi ◦ Gởi định kỳ ◦ Gởi khi có thay đổi về mạng

17

Mạng máy tính nâng cao-V1

Ví dụ: Vấn đề với DV Ví dụ: Vấn đề với DV

(cid:1) Xét mô hình mạng như bên dưới:

1 1

1 1

2

1 1

A A

2B B

C C

Dest Dist Port Dest Dist Port Dest Dist Port

B 1 1 A 1 1 A 2 1

C 2 1 C 1 2 B 1 1

Ví dụ: Vấn đề với DV Ví dụ: Vấn đề với DV

(cid:1) Khi link giữa B và C bị đứt? (cid:1) B sẽ nhận ra trước tiên và cố tìm đường

khác đi đến C

1

1

1

2 X

A

B

C

Dest Dist Port Dest Dist Port Dest Dist Port

B 1 1 A 1 1 A 2 1

C 2 1 C 1 2 B 1 1

Ví dụ: Vấn đề với DV Ví dụ: Vấn đề với DV

(cid:1) B sẽ hỏi router lên cận (A) (cid:1) A sẽ trả lời???

◦ A tra bảng định tuyến của mình để tìm đường đến

C

1

1

1

2 X

A

B

C

Dest Dist Port Dest Dist Port

B 1 1 A 1 1

C 2 1 C ? ?

Ví dụ: Vấn đề với DV Ví dụ: Vấn đề với DV

(cid:1) A có thông tin đường đến C với khoảng

cách là 2 ◦ Đường này đi thông qua link bị đứt, nhưng A không

biết.

(cid:1) B sẽ nhận thông tin (sai) rằng có thể đến C

thông qua A thông qua A ◦ B cập nhật đường đi với khoảng cách =3

1

1

1

2 X

A

B

C

Dest Dist Port Dest Dist Port

B 1 1 A 1 1

C 2 1 C 3 1

Ví dụ: Vấn đề với DV Ví dụ: Vấn đề với DV

(cid:1) G/s B muốn gởi gói tin cho C:

◦ B sẽ gởi sang A:

(cid:2) Như thông tin trong bảng định tuyến

◦ A sẽ gởi lại B... ◦ Dẫn đến lặp liên tục gói tin...

1

1

1

2 X

A

B

C

Dest Dist Port Dest Dist Port

B 1 1 A 1 1

C 2 1 C 3 1

Ví dụ: Vấn đề với DV Ví dụ: Vấn đề với DV

(cid:1) Bên cạnh đó, khi các gói tin cập nhật định tuyến được gởi, A và B có thể liên tục cập nhật khoảng cách sai đến C tăng dần. C tăng dần. (cid:1) Giải pháp:

◦ “Count to infinity” ◦ “Split Horizon”

23

Mạng máy tính nâng cao-V1

Count to Infinity Count to Infinity

(cid:1) Ví dụ đường đi đến host D

R1

R2

R3

D

Network

Count to Infinity Count to Infinity

(cid:1) G/s link giữa R1 và D fail?

◦ R1 nhận biết và tìm đường đi khác

R1

R2

R3

X

D

Network

Count to Infinity Count to Infinity

(cid:1) R2 quảng bá đường đến D (với distance 2) ◦ R1 không biết là đường này đi qua chính mình D.

?

R1

R2

R3

D

Network

Count to Infinity Count to Infinity

(cid:1) R1 cập nhật đường đến D

◦ Khoảng cách = 3 (2+1) ◦ Đường đi thông qua R2

?

R1

R2

R3

D

Network

D 3 …

Count to Infinity Count to Infinity

(cid:1) R2 cập nhật đường đi đến D (theo thông tin

từ R1) ◦ Khoảng cách sẽ là 4 (3+1) ◦ Vector khoảng cách được gởi cho R1

?

R1

R2

R3

D

Network

D 4 …

Count to Infinity Count to Infinity

(cid:1) R1 lại cập nhật thông tin đến D

◦ Khoảng cách 5 (4+1) ◦ ... V/v (đến giá trị ‘infinity’)

?

R1

R2

R3

D

Network

D 5 …

Count to Infinity Count to Infinity

(cid:1) Khi đến giá trị “infinity”, R2 xác nhận không tìm

được đường đến D qua R1

(cid:1) R2 tiếp tục dùng R3 để tìm đường đến D

R1

R2

R3

D

Network

?

Thời gian hội tụ Thời gian hội tụ

(cid:1) Mất nhiều thời gian hội tụ do:

◦ Các router mất nhiều thời gian tìm đường.

(cid:2) Một số router nhận biết đứt kết nối, số khác thì không (cid:1) Trong RIP, khoảng cách 16 được xem là

infinity infinity ◦ Kích thước mạng dùng định tuyến RIP bị giới

hạn.

Cơ chế Split Horizon Cơ chế Split Horizon

(cid:1) Để hạn chế đếm đến vô cùng:

◦ DV không gởi quảng bá đến port đã nhận.

(cid:1) Ví dụ:

◦ R1 quảng bá cho R2 đường đến D: (D,1) ◦ R2 nhận và tạo ra mẫu tin của mình: (D,2) ◦ R2 không quảng bá mẫu tin này lại cho R1 ◦ R2 không quảng bá mẫu tin này lại cho R1

(cid:2) Nhưng sẽ gởi đến các port khác.

R1

R2

R3

D

Network

?

Cơ chế Split Horizon Cơ chế Split Horizon

(cid:1) Vấn đề:

◦ Nguồn của mẫu tin cập nhật cũng phải được lưu lại ◦ Tuy nhiên, vẫn có thể bị “count to infinity” khi có nhiều

router.

Các cơ chế khác Các cơ chế khác

(cid:1) Hold down timer: Tăng tính ổn định khi

mạng đang hội tụ,

(cid:1) Poison Reverse: Router vẫn giữ mậu tin cho các mạng bị đứt kết nối, nhưng thay giá trị khoảng cách bằng infinity giá trị khoảng cách bằng infinity

Q&AQ&A

35

Mạng máy tính nâng cao-V1