30
Các giao thức định tuyến Khái niệm, phân loại PGS. Trương Diệu Linh Bộ môn Truyền thông & Mạng máy Jnh 5/8/17 1

Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

CácgiaothứcđịnhtuyếnKháiniệm,phânloại

PGS.TrươngDiệuLinhBộmônTruyềnthông&MạngmáyJnh

5/8/17 1

Page 2: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Mụclục

Ø ĐịnhtuyếnØ PhânloạicácgiaothứcđịnhtuyếnØ CácgiảithuậtđịnhtuyếnØ Kếtluận

5/8/17 2

Page 3: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Địnhtuyến–Nhữngkháiniệmcơbản•  Chứcnăngchínhcủatầngmạng(networklayer)làvậnchuyểndữ

liệugiữacáccặpnútkhôngliềnkề.Từđócó2nhiệmvụ:–  chọnđườngchocácdữliệugiữacácmáy/thiếtbịđầucuối..–  Chuyểnjếpdữliệutheođườngđiđãchọn.

•  Việcchọnđườngđượcthựchiệnbởicácroujngprotocol–  RoujngprotocolJnhđườngđibằngcácthuậttoánchọnđường–  KếtquảJnhtoánđượclưutrongcácrouterphụcvụquátrìnhchuyển

jếpdữliệujếptheo.•  Việcchuyểnjếpdữliệuđượcthựchiệnbởicácroutedprotocol

–  Chuyểnjếpdữliệugiữacáccổngcủaroutertheođườngđiđãđượcxácđịnhởtrên

•  ĐịnhtuyếnđượcnghiêncứutrongmạngmáyJnh,viễnthông,giaothôngvậntảicũngnhưtrongcácbàitoánphânphốitàinguyênnóichung.

5/8/17 3

Page 4: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Địnhtuyến–Nhữngkháiniệmcơbản•  Giao thức được định tuyến (routed

protocol)

5/8/17 4

Hình 1: Giao thức được định tuyến, IP protocol

Page 5: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Địnhtuyến–Nhữngkháiniệmcơbản•  Giao thức định tuyến (routing protocol)

5/8/17 5

Hình 2: Giao thức định tuyến, RIP, IGRP

Page 6: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Địnhtuyến–Nhữngkháiniệmcơbản•  Giao thức định tuyến (routing protocol)

–  Giaothứcđịnhtuyếnđượcdùngtrongkhithựchiệngiảithuật/thuậttoánđịnhtuyếnđểtraođổithôngjngiữacácmạng,chophépcácrouterxâydựngbảngđịnhtuyếnmộtcáchlinhhoạt.

•  Thuthậpthôngjnmạng:topo,tàinguyên•  TraođổidữliệugiữacácnúttrongquátrìnhJnhtoánđườngđi•  Thiếtlậpbảnđịnhtuyến

–  Cácgiaothức/giảithuậtđịnhtuyếnthườngđượcthựcthibởicácrouter

– MộtsốvídụvềcácgiaothứcđịnhtuyếntrênmạngInternetlàRIP,IGRP,OSPF,BGP,vàEIGRP.

– MộtsốvídụvềcácgiaothứcđịnhtuyếntrênmạngmobilewirelessadhocnetworkslàAODV,DSR,OLSR.

5/8/17 6

Page 7: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Địnhtuyến–Nhữngkháiniệmcơbản

u Thiết bị định tuyến - Mô hình chức năng của routers:

5/8/17 7

Hình 8: Mô hình chức năng của routers

Page 8: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Địnhtuyến–Nhữngkháiniệmcơbảnu Thiết bị định tuyến - Mô hình chức năng của routers:

ü Packet Forwarding: ü Khi nhận được gói tin tới, router sẽ kiểm tra gói tin xem có lỗi

không? ü Nếu không lỗi, kiểm tra header của gói tin để lấy địa chỉ thiết bị đích

ü Đối chiếu trong bảng định tuyến để đưa ra quyết định chuyển tiếp gói tin.

ü Routing Protocol Message Processing: ü Xử lý các gói tin liên quan tới giao thức/ giải thuật định tuyến nếu

có bất cứ sự thay đổi nào trong topology mạng để cập nhật lại bảng định tuyến.

ü Specialized Services (dịch vụ riêng): ü Trong một số trường hợp routers có thể được trang bị thêm một

số dịch vụ riêng để theo dõi/ quản trị mạng. Ví dụ như dịch vụ ACL (Access List Control) của Cisco IOS.

5/8/17 8

Page 9: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Địnhtuyến–Nhữngkháiniệmcơbảnu Bảng định tuyến (routing tables):

5/8/17 9

Hình 9: Ví dụ về bảng định tuyến

Page 10: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Địnhtuyến–Nhữngkháiniệmcơbảnu Bảng định tuyến (routing tables):

u Routers sử dụng các giao thức định tuyến để xây dựng, cập nhật và duy trì thông tin trong bảng định tuyến.

u Các thông tin thông thường gồm: ü  Protocol type - đặc tả giao thức định tuyến sử dụng để xây

dựng mỗi phần tử trong bảng định tuyến, ü Next-hop associations - Thông tin về router kế tiếp khi sử dụng

chức năng chuyển tiếp gói tin. ü Routing metric được sử dụng làm đơn vị cho tiêu chí định

tuyến. ü  Ví dụ RIP sử dụng hop count làm đơn vị định tuyến duy nhất. ü  IGRP sử dụng băng thông, tải, trễ, và đơn vị tin cậy để tạo ra một đơn vị định

tuyến riêng của mình.

5/8/17 10

Page 11: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Địnhtuyến–Nhữngkháiniệmcơbảnu  Bảng định tuyến (routing tables):

ü  Bảng định tuyến trên Linux được xem bởi lệnh netstat –rn, trên Cisco IOS thì dùng lệnh show ip route.

5/8/17 11

Hình 10: Ví dụ về bảng định tuyến trên Linux & Cisco IOS

Page 12: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Địnhtuyến–Nhữngkháiniệmcơbản

u Đơn vị tiêu chí định tuyến (routing metric): ü Bandwidth (Băng thông) ü Delay (Trễ): Thời gian tối đa để gửi một gói tin trên một đường dẫn giữa 2 thiết bị đầu cuối,

ü Load (Tải): Tần suất hoạt động của tài nguyên mạng nào đó, ví dụ router hay đường dẫn mạng,

ü Reliability (độ tin cậy): Thường được đánh giá bằng khả năng chịu lỗi trên một đường dẫn mạng,

ü Hop count: số lượng bước trung chuyển từ nguồn tới đích,

ü Ticks: độ trễ của gói tin sử dụng IBM PC clock ticks. Một tick xấp xỉ 1/18 giây,

ü Cost: chi phí, thông thường dựa trên dung lượng/ lưu lượng dữ liệu gửi qua routers.

5/8/17 12

Page 13: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Yêucầuvềgiaothứcđịnhtuyếnu Cơ sở thiết kế các giao thức định tuyến:

ü Optimization (Tối ưu): Đường đi của gói tin phải được tối ưu hóa dựa trên các đơn vị định tuyến được lựa chọn.

ü  Simplicity & low overhead (Đơn giản và chi phí điều khiển thấp): Các giao thức đinh tuyến được thiết kế đơn giản, hiệu quả sẽ mang lại chi phí tính toán thấp, tối ưu hóa bộ nhớ sử dụng sẽ rất hiệu quả khi mạng vận hành có quy mô lớn.

ü Robustness & stability: các giao thức định tuyến phải được thiết kế với sự ổn định cao

ü  Flexibility (mềm dẻo): các giao thức định tuyến phải được thiết kế một cách mềm dẻo, linh hoạt để thích ứng nhanh với sự thay đổi topology hay các đặc tính riêng của mạng (băng thông, trễ, link-state, etc)

ü Rapid convergence: các giao thức định tuyến phải được thiết kế để quá trình tìm đường nhanh chóng hội tụ.

5/8/17 13

Page 14: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân loại các giao thức định tuyến

u Phân loại theo cách xây dựng: Định tuyến tĩnh vs. định tuyến động

u Phân loại theo giải thuật định tuyến: Distance vector, link state …

u Phân loại theo phạm vi: Định tuyến nội vùng, liên vùng u Phân loại theo hình thức tính toán: Đinh tuyến nguồn

vs. định tuyến hop-by-hop u Phân loại theo đích: Anycast, broadcast, multicast,

unicast u Phân loại theo mạng: Định tuyến cho mạng quang,

mạng sensor, mạng di động u Phân loại theo chất lượng: Định tuyến có dự phòng, định tuyến đảm bảo băng chất lượng dịch vụ v.v…

5/8/17 14

Page 15: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân loại các giao thức định tuyến

u Trên mạng IP, thông thường có 2 loại định tuyến phổ biến: ü Static routing (định tuyến tĩnh):

ü thông tin đường đi được thiết lập cố định trên các bảng định tuyến,

ü không có khả năng tự cập nhật. ü Thường được xây dựng thủ công

ü Dynamic routing (định tuyến động): ü Bảng định tuyến được xây dựng một cách tự động bằng các

giao thức định tuyến, ü Bảng định tuyến được cập nhật tự động khi trạng thái mạng

thay đổi •  Định tuyến động chiếm ưu thế trên Internet,

ü Quản trị mạng thường kết hợp cả định tuyến tĩnh và động.

5/8/17 15

Page 16: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân loại các giao thức định tuyến u Cấu hình định tuyến tĩnh trên Linux:

ü Chúng ta cần cấu hình định tuyến tĩnh, thêm thông tin vào bảng định tuyến để có thể ping tới dãy địa chỉ 192.168.3.X từ dãy địa chỉ 192.168.1.X. Điểm nối giữa 2 mạng subnet này chính là gateway có địa chỉ 192.168.1.10

ü Do đó trên mạng subnet 192.168.1.*, trên router sẽ được cấu hình định tuyến tĩnh như sau:

ü Cấu hình trên các máy trạm thuộc subnet 192.168.1.X: •  $ route add default gw 192.168.1.10

ü Cấu hình trên router gateway nối với subnet 192.168.1.X như sau:

•  $ route add -net 192.168.3.0 netmask 255.255.255.0 gw 192.168.3.10

5/8/17 16

Page 17: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân loại các giao thức định tuyến u Định tuyến động thường sử dụng

2 loại giải thuật định tuyến: ü Distance-vector:

ü Thực hiện tính đường đi bằng giải thuật Bellman ford

ü Tính toán phân tán ü Từng nút mạng khám phá dần đường đi tốt hơn bằng cách trao đổi bảng định tuyến tạm thời với các nút xung quanh

ü  Link-state: ü Mỗi nút thu thập thông tin về liên kết

với các nút khác để xây dựng đồ thị mạng của mình.

ü Mỗi nút sử dụng giải thuật Dijkstra tự tính đường đi ngắn nhất đến mọi đinh và xây dựng bảng định tuyến

5/8/17 17

Page 18: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân loại các giao thức định tuyến

•  Hệ tự trị (autonomous system): •  Internet được hình thành từ một số lớn các hệ tự trị/

vùng/miền, mỗi hệ tự trị có thể dùng các giao thức định tuyến riêng mình ở bên trong,

•  Giao thức định tuyến hoạt động bên trong một hệ tự trị được gọi là các giao thức định tuyến nội vùng (interior gateway protocol).

•  Giao thức định tuyến hoạt động giữa các hệ tự trị được gọi là các giao thức định tuyến liên vùng (exterior gateway protocol).

5/8/17 18

Page 19: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân loại các giao thức định tuyến u Phân loại theo phạm vi

u Định tuyến nội vùng ü EIGRP: Enhanced

Interior Gateway Routing Protocol

ü IGRP: Interior Gateway Routing Protocol

ü IS-IS: ISO IS-IS & OSPF: Open Shortest Path First

u Định tuyến liên vùng u BGP: Border Gateway

Protocol

5/8/17 19

Hình 15: Phân loại các giao thức định tuyến

Page 20: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân loại các giao thức định tuyến

u Định tuyến không phân cấp ü Xác định đường đi từ đầu đến cuối.

u Định tuyến phân cấp ü Định tuyến trong mạng đa miền ü Xác định danh sách các miền cần đi qua

trước ü Xác định đường đi cụ thể trong các miền sau

5/8/17 20

Page 21: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân loại các giao thức định tuyến u Định tuyến phân cấp (hierachical routing):

ü Giảm kịch thước mạng à giảm kích thước bảng định tuyến, giảm lượng thông tin trao đổi, tăng tốc độ hội tụ.

ü Do đó, cần phải có sự phân cấp trong việc chọn đường (giống như mạng điện thoại)

ü Các routers được chia thành những miền (region/domain/area )

ü Mỗi router biết tất cả chi tiết về cách chọn đường trong vùng của nó và không (cần) biết thông tin về các region khác,

ü Các liên mạng kết nối với nhau có thể được xem như một vùng (region),

5/8/17 21

Page 22: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân loại các giao thức định tuyến u Định tuyến phân cấp (hierachical routing):

ü Một vấn đề được đặt ra là mạng nên được phân cấp bao nhiêu mức?

ü Kamou & Kleinrock (1979) chỉ ra rằng với một liên mạng có N subnets thì mức phân cấp tối ưu là lnN

ü Ví dụ: ü Một liên mạng bao gồm 720 mạng con, với các giao

thức định tuyến động bình thường, chúng ta cần 720 thông tin (entry) định tuyến cho mỗi router. Nếu liên mạng được chia làm 24 vùng khác nhau với mỗi vùng bao gồm 30 routers, mỗi router chỉ cần 30 routing entries cho 30 routers trong cùng một region và 23 routing entries cho các định tuyến ngoại vùng.

5/8/17 22

Page 23: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân loại giao thức định tuyến u Định tuyến phân cấp (hierachical routing):

ü Ví dụ về chọn đường phân 2 cấp với 5 vùng khác nhau:

5/8/17 23

Page 24: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân lọai các giao thức định tuyến

u Định tuyến nguồn (source routing) ü Nguồn gửi dữ liệu sẽ đặc tả đường đi của dữ liệu ü Cho phép nguồn lựa chọn đường đi tốt nhất trong số

tất cả các khả năng ü Cho phép nguồn bắt buộc mọi gói tin đi theo một đường, thuận tiện quản lý chất lượng

ü Sử dụng nhiều trong các mạng chuyển mạch kênh. Ví dụ SONET, WDM

u Định tuyến hop-by-hop ü Các nút mạng trung gian (router) quyết định đường đi

của dữ liệu tùy thuộc trạng thái mạng và địa chỉ đích ü Sử dụng nhiều trong các mạng chuyển mạch gói. VD:

Internet

5/8/17 24

Page 25: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân lọai các giao thức định tuyến •  Phânloạitheođích:

– Anycast: muljcast:1nguồn–1nhómđích

– Unicast broadcast5/8/17 25

Page 26: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân lọai các giao thức định tuyến u Anycast:

ü Dữ liệu từ nguồn được chuyển đến nút nào gần nhất (về mặt topo) trong số các nút có thể là nút nhận.

ü  Tất cả các nút nhận trong nhóm có cùng địa chỉ u Unicast:

ü Mỗi địa chỉ đích chỉ tương ứng với một nút nhận ü Dữ liệu từ nguồn chỉ được gửi tới một nút

u Multicast: ü Một địa chỉ tương ứng với một nhóm nút ü Nút nguồn gửi dữ liệu đồng thời cho nhiều nút đích trong cùng

một quá trình truyền nhận u Broadcast:

ü Dữ liệu được truyền từ một nguồn đồng thời đến tất cả các đích

5/8/17 26

Page 27: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân loại các giao thức định tuyến u Broadcast:

ü Cách thực hiện •  Gửi các bản sao của dữ liệu riêng rẽ đến từng người nhận: n-unicast

–  Tốn băng thông •  Sử dụng mạng để tạo và phân phối

các bản sao •  Vận chuyển các gói tin đến các đích

theo cây khung từ gốc

5/8/17 27

Page 28: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân loại các giao thức định tuyến

•  Muljcast– Sửdụngcâykhungđếnnhómcácnútđíchđểphânphốidữliệu

5/8/17 28

Page 29: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân loại các giao thức định tuyến

•  Phânloạitheomạng:Cácgiaothứcmangđặctrưngcủamạng– Mạngquang:

•  Thườngdùngchuyểnmạchkênhèđịnhtuyếnnguồn•  Mỗikếtnốidùngmộtbướcsóngtừđầuđếncuối•  Địnhtuyếnchocáckếtnốibaogồm�mđườngđichokếtnốivàgánbướcsóngchonó

– Mạngsensor•  Đặctrưngmạnglàhạnchếvềnănglượng,cácnútmạnglúcon/off•  Giảithuậtđịnhtuyếnphảiđơngiản,hạnchếđườngđiquanhiềunút

•  Vấnđềpháthiệnhàngxóm– Mạngdiđộng

•  Cácnútmạngkhôngcốđịnh,topobiếnđổithườngxuyên5/8/17 29

Page 30: Các giao thức định tuyến - users.soict.hust.edu.vn niem... · Định tuyến – Những khái niệm cơ bản • Chức năng chính của tầng mạng (network layer)

Phân loại các giao thức định tuyến •  Phânloạitheochấtlượngdịchvụ

–  Địnhtuyếncódựphòng:•  Đòihỏimỗikếtnốiphảicó1đườngđidựphòng•  Vấnđềđểdànhtàinguyêndựphòng

–  Tàinguyêndànhriêng,tàinguyênchiasẻ•  Đườngđichínhvàdựphòngkhônghỏngđồngthời•  Trườnghợpmộtlỗi,nhiềulỗiđồngthời•  DễdẫnđếnbàitoánNP-khó

–  Địnhtuyếnđảmbảobăngthông•  Băngthôngdọctheomọiliênkếtphảiđượcđảmbảođủtheoyêucầu•  ĐịnhtuyếnphảiJnhđếntàinguyênđangcóvàcóchínhsách“đặtchỗ”

–  Địnhtuyếnđảmbảođộtrễtốiđa•  Độtrễtừđầuđếncuốikhôngvượtquámộtngưỡng•  Địnhtuyếntheoràngbuộctổng(addijveconstraint)

–  Địnhtuyếnđảmbảocânbằngtàinguyên

5/8/17 30