Định tuyến là hành động di chuyển thông tin trong liên mạng, từ nguồn đến đích. Nó là một chức năng được thực hiện ở tầng mạng. Chức năng này cho phép router đánh giá các đường đi sẵn có tới đích. Để đánh giá đường đi, định tuyến sử dụng các thông tin tôpô mạng. Các thông tin này có thể do người quản trị thiết lập hoặc được thu lượm thông qua các giao thức định tuyến.
Quá trình định tuyến
Khi định tuyến dữ liệu từ nguồn đến đích, router thường chuyển tiếp gói từ một liên kết dữ liệu (mạng) này đến một liên kết dữ liệu khác, sử dụng hai chức năng cơ bản:
- Xác định đường đi (path determination) - Chuyển mạch (switching)
Chức năng xác định đường đi chọn ra một đường đi tối ưu đến đích theo một tiêu chí nào đó (chẳng hạn chiều dài đường đi). Để trợ giúp cho quá trình xác định đường đi, các giải thuật định tuyến khởi tạo và duy trì bảng định tuyến, bảng này chứa thông tin về các tuyến tới đích.
Khi đường đi tối ưu được xác định, bước nhảy tiếp theo gắn với đường đi này cho router biết phải gửi gói đi đâu để nó có thể đến đích theo đường đi tối ưu đó.
Chức năng chuyển mạch cho phép router chuyển gói từ cổng vào tới cổng ra tương ứng với đường đi tối ưu đã chọn.
Trong quá trình định tuyến, phần địa chỉ mạng được sử dụng để xác định đường đi, còn phần địa chỉ trạm được router cuối cùng trên đường đi (router nối trực tiếp tới mạng đích) sử dụng để chuyển gói tới đúng trạm đích.
Định tuyến tĩnh và định tuyến động
Các tuyến tĩnh được người quản trị cập nhật và quản lý nhân công. Trong trường hợp tôpô mạng thay đổi, người quản trị phải cập nhật lại các tuyến tĩnh một cách thủ công.
Định tuyến động hoạt động khác với định tuyến tĩnh. Sau khi người quản trị nhập các lệnh cấu hình để khởi tạo định tuyến động, thông tin về tuyến sẽ được cập nhật tự động mỗi khi nhận được một thông tin mới từ liên mạng. Các thay đổi về tôpô mạng được trao đổi giữa các router.
Phân loại giao thức định tuyến
Hầu hết các giải thuật định tuyến đều thuộc một trong 3 loại sau: - Giải thuật vectơ khoảng cách (distance vector).
- Giải thuật trạng thái liên kết (Link State). - Giải thuật lai.
Vector khoảng cách được thiết kế để giảm tối đa sự liên lạc giữa các Router cũng như lượng dữ liệu trong bảng định tuyến. Bản chất của định tuyến vector khoảng cách là một Router không cần biết tất cả các đường đi đến các phân đoạn mạng, nó chỉ cần biết phải truyền một datagram được gán địa chỉ đến một phân đoạn mạng đi theo hướng nào. Khoảng cách giữa các phân đoạn mạng được tính bằng số lượng Router mà datagram phải đi qua khi được truyền từ phân đoạn mạng này đến phân đoạn mạng khác. Router sử dụng thuật toán vector khoảng cách để tối ưu hoá đường đi bằng cách giảm tối đa số lượng Router mà datagram đi qua. Tham số khoảng cách này chính là số chặng phải qua (bước nhảy count).
Định tuyến vector khoảng cách sẽ không còn phù hợp đối với một mạng lớn gồm rất nhiều Router. Khi đó mỗi Router phải duy trì một mục trong bảng định tuyến cho mỗi đích, và các mục này chỉ đơn thuần chứa các giá trị vector và bước nhảy count. Router cũng không thể tiết kiệm năng lực của mình khi đã biết nhiều về cấu trúc mạng. Hơn nữa, toàn bộ bảng giá trị khoảng cách và bước nhảy count phải được truyền giữa các Router cho dù hầu hết các thông tin này không thực sự cần thiết trao đổi giữa các Router.
Định tuyến trạng thái liên kết ra đời là đã khắc phục được các nhược điểm của định tuyến vector khoảng cách.
Bản chất của định tuyến trạng thái liên kết là mỗi Router xây dựng bên trong nó một sơ đồ cấu trúc mạng. Định kỳ, mỗi Router cũng gửi ra mạng những thông điệp trạng thái. Những thông điệp này liệt kê những Router khác trên mạng kết nối trực tiếp với Router đang xét và trạng thái của liên kết. Các Router sử dụng bản tin trạng thái nhận được từ các Router khác để xây dựng sơ đồ mạng. Khi một Router chuyển tiếp dữ liệu, nó sẽ chọn đường đi đến đích tốt nhất dựa trên những điều kiện hiện tại.
Giao thức trạng thái liên kết đòi hỏi nhiều thời gian xử lí trên mỗi Router, nhưng giảm được sự tiêu thụ băng thông bởi vì mỗi Router không cần gửi toàn bộ bảng định tuyến của mình. Hơn nữa, Router cũng dễ dàng theo dõi lỗi trên mạng vì bản tin trạng thái từ một Router không thay đổi khi lan truyền trên mạng (ngược lại, đối với phương pháp vector khoảng cách, giá trị bước nhảy count tăng lên mỗi khi thông tin định tuyến đi qua một Router khác).
Giải thuật lai kết hợp các khía cạnh của giải thuật vectơ khoảng cách và trạng thái liên kết. Các phần tiếp theo trình bày về các thủ tục và những vấn đề gặp phải của mỗi loại giải thuật và những kỹ thuật hiện được sử dụng để tối thiểu hóa những vấn đề đó.