Định tuyến bất đối xứng (Asymmetric routing) đề cập đến tình huống trong đó đường đi của các gói dữ liệu giữa hai điểm trong mạng không giống nhau ở cả hai hướng. Nói cách khác, lộ trình mà các gói đi theo từ nguồn đến đích khác với lộ trình chúng đi khi quay trở lại từ đích đến nguồn. Trong bài viết này, chúng ta sẽ xem xét sâu hơn về hiện tượng này. Chúng ta sẽ khám phá lý do tại sao nó có thể xảy ra, chúng ta sẽ xem xét các tình huống trong đó điều đó là mong muốn và cả những trường hợp mà nó có thể trở thành thảm họa. Tìm hiểu định tuyến bất đối xứng Một trong những nguyên tắc cơ bản mà các kỹ sư mạng chúng ta học khi nói đến định tuyến mạng IP là định tuyến thành công theo một hướng không đảm bảo định tuyến thành công theo hướng khác. Một hệ quả tất yếu của nguyên tắc này là đường dẫn định tuyến theo một hướng không được đảm bảo giống với đường dẫn theo hướng ngược lại. Và đây là lý do tại sao định tuyến không đối xứng có thể xảy ra. Sơ đồ sau đây cho thấy một ví dụ về định tuyến không đối xứng: Hãy nhớ rằng, định tuyến, dù là động hay tĩnh, là một quá trình mà mỗi bộ định tuyến riêng lẻ quyết định sử dụng giao diện thoát nào cho một gói có IP đích cụ thể. Điều này có nghĩa là có nhiều tham số khác nhau có thể ảnh hưởng đến việc định tuyến theo từng hướng, khiến cho việc định tuyến bất đối xứng trở thành một khả năng thực tế trong nhiều trường hợp. Một số nguyên nhân của định tuyến bất đối xứng Các yếu tố khác nhau có thể gây ra định tuyến không đối xứng. Một số phổ biến nhất được liệt kê dưới đây: Đường dẫn chi phí không đồng đều (Unequal cost paths) Khi mạng có nhiều đường dẫn giữa nguồn và đích, với các chi phí hoặc số liệu khác nhau, các giao thức định tuyến như OSPF, EIGRP hoặc BGP có thể chọn các đường dẫn khác nhau để chuyển tiếp và trả lại lưu lượng. Điều này có thể là do các chỉ số được sửa đổi thủ công trên các giao diện cụ thể hoặc có thể là kết quả của việc tính toán chi phí được thực hiện bởi các giao thức định tuyến động được sử dụng. Định tuyến dựa trên chính sách (Policy-based routing) Quản trị viên mạng có thể định cấu hình các chính sách cụ thể để định tuyến lưu lượng dựa trên các tiêu chí như IP nguồn, IP đích hoặc loại ứng dụng. Các chính sách này có thể khiến lưu lượng truy cập đi theo các đường khác nhau theo từng hướng. Cân bằng tải (Load balancing) Một số giao thức định tuyến thực hiện định tuyến nhiều đường có chi phí bằng nhau hoặc thậm chí là định tuyến nhiều đường có chi phí không bằng nhau, dẫn đến cân bằng tải lưu lượng qua nhiều đường. Tùy thuộc vào thuật toán được sử dụng và điều kiện lưu lượng động, lưu lượng có thể được gửi qua các đường dẫn khác nhau theo mỗi hướng. Thay đổi cấu trúc liên kết mạng Các giao thức định tuyến sẽ cập nhật bảng định tuyến của chúng để phản ánh cấu trúc liên kết mới nếu cấu trúc liên kết mạng thay đổi do lỗi liên kết hoặc kết nối mới. Trong quá trình hội tụ, lưu lượng đi và về có thể đi theo các đường khác nhau. Tuyến đường tĩnh (Static routes) Các tuyến tĩnh được cấu hình thủ công cũng có thể gây ra tình trạng định tuyến không đối xứng nếu chúng không có các tuyến quay lại tương ứng hoặc không được cập nhật để phản ánh những thay đổi trong cấu trúc liên kết mạng. Nhiều kết nối ISP Khi mạng doanh nghiệp được kết nối với Internet thông qua hai hoặc nhiều ISP, các chính sách định tuyến của ISP, của mạng doanh nghiệp và định tuyến BGP được định cấu hình ở biên mạng có thể dẫn đến định tuyến không đối xứng. Định tuyến bất đối xứng là tốt hay xấu? Câu trả lời ngắn gọn là cả hai! Bản thân định tuyến bất đối xứng không phải là vấn đề. Trong một số trường hợp, nó có thể là mong muốn, trong khi ở những trường hợp khác, nó có thể gây ra vấn đề. Quản trị viên mạng cần nhận thức được các tình huống định tuyến không đối xứng tiềm ẩn và thiết kế mạng của họ để giảm thiểu bất kỳ sự cố nào có thể phát sinh do đó. Khi nào định tuyến bất đối xứng được mong muốn? Trong một số trường hợp, định tuyến bất đối xứng được sử dụng có mục đích hoặc chỉ đơn giản là tác dụng phụ của một tính năng mong muốn. Một số kịch bản này được bao gồm dưới đây: Dự phòng và khả năng chịu lỗi Khi thiết kế dự phòng và khả năng chịu lỗi trong mạng, bạn không thể tránh khỏi việc tạo nhiều đường dẫn để chuyển tiếp lưu lượng. Trong một số trường hợp, việc có các đường dẫn khác nhau cho lưu lượng đi và về có thể làm tăng khả năng dự phòng và khả năng chịu lỗi, vì lỗi ở một hướng không nhất thiết ảnh hưởng đến hướng khác. Điều này có thể giúp duy trì tính khả dụng của mạng trong các lỗi liên kết hoặc thiết bị. Sử dụng các chính sách mạng Định tuyến bất đối xứng có thể được mong muốn nếu các chính sách cụ thể cần được áp dụng cho lưu lượng truy cập theo một hướng chứ không phải hướng khác. Ví dụ: quản trị viên mạng có thể muốn định tuyến lưu lượng từ một nguồn cụ thể hoặc đến một đích cụ thể thông qua thiết bị bảo mật mạng, chẳng hạn như hệ thống giám sát lưu lượng hoặc hệ thống phát hiện xâm nhập (IDS), mà không ảnh hưởng đến lưu lượng ngược lại. Kỹ thuật lưu lượng Quản trị viên mạng có thể sử dụng định tuyến bất đối xứng để tối ưu hóa luồng lưu lượng, giảm độ trễ hoặc đáp ứng các yêu cầu về chất lượng dịch vụ (QoS) bằng cách chọn các đường dẫn khác nhau dựa trên các đặc điểm hiệu suất hoặc các ràng buộc của mạng. Tối ưu hóa chi phí Định tuyến bất đối xứng có thể được sử dụng để giảm thiểu chi phí liên quan đến lưu lượng chuyển tuyến hoặc thỏa thuận ngang hàng. Ví dụ: một tổ chức có thể sử dụng liên kết hiệu suất cao, đắt tiền hơn cho lưu lượng truy cập ra bên ngoài quan trọng và liên kết hiệu suất thấp hơn, chi phí thấp hơn cho lưu lượng truy cập vào. Khi nào định tuyến không đối xứng là không mong muốn? Có những trường hợp không mong muốn định tuyến không đối xứng và quản trị viên mạng phải nhận thức được những tình huống này. Các vấn đề phổ biến nhất với định tuyến không đối xứng phát sinh trong các tình huống sau: Tường lửa có trạng thái Tường lửa có trạng thái theo dõi các kết nối và trạng thái của chúng. Định tuyến không đối xứng có thể gây ra sự cố vì tường lửa như vậy có thể chỉ nhìn thấy một bên của kết nối và coi nhầm lưu lượng trả về là một kết nối mới, dẫn đến các gói bị rớt hoặc lỗi kết nối. Sơ đồ sau đây cho thấy cách giao tiếp gửi đi từ Máy chủ A đi qua FW2, nhưng quay lại qua FW1. Bởi vì FW1, là một tường lửa có trạng thái, không có bất kỳ bản ghi nào về phiên gửi đi tương ứng, nên lưu lượng truy cập trở lại sẽ bị loại bỏ. Dịch địa chỉ mạng (NAT) Các thiết bị NAT sửa đổi địa chỉ IP nguồn hoặc đích và cổng của các gói khi chúng đi qua. Định tuyến bất đối xứng có thể gây ra sự cố với NAT, vì lưu lượng trả về có thể không đi qua cùng một thiết bị NAT, dẫn đến sự không nhất quán trong việc dịch địa chỉ và kết nối bị hỏng. Chất lượng dịch vụ (QoS) và định hình lưu lượng Định tuyến bất đối xứng có thể gây khó khăn cho việc triển khai các chính sách QoS và định hình lưu lượng một cách nhất quán. Giao thông theo một hướng có thể đi theo một con đường khác với các đặc tính hoạt động hoặc mức độ tắc nghẽn khác so với giao thông theo hướng ngược lại. Các ứng dụng dựa trên luồng lưu lượng đối xứng Một số ứng dụng hoặc giao thức có thể yêu cầu luồng lưu lượng đối xứng để có chức năng hoặc hiệu suất phù hợp. Định tuyến không đối xứng có thể gây ra sự cố với các ứng dụng hoặc giao thức này, dẫn đến lỗi kết nối, giảm hiệu suất hoặc hành vi không mong muốn. Các ứng dụng như vậy bao gồm Thoại qua IP (VoIP), hội nghị truyền hình, giao thức truyền tệp (FTP) và Mạng riêng ảo (VPN), v.v. Kết luận Định tuyến bất đối xứng có thể cung cấp các lợi ích như cân bằng tải, khả năng chịu lỗi và kỹ thuật lưu lượng, nhưng nó cũng có thể dẫn đến những thách thức với các thiết bị có trạng thái và một số ứng dụng nhất định dựa trên các luồng lưu lượng đối xứng. Để khai thác những lợi thế của định tuyến bất đối xứng đồng thời tránh những cạm bẫy tiềm ẩn, quản trị viên mạng phải thiết kế và giám sát cẩn thận mạng của họ, thực hiện các biện pháp thích hợp để đảm bảo khả năng tương thích với các thiết bị và ứng dụng. Bằng cách đạt được sự cân bằng phù hợp, hiệu suất mạng, độ tin cậy và bảo mật có thể được tối ưu hóa trong khi vẫn đáp ứng được tính chất năng động của các mạng hiện đại.