Các giao thức định tuyến đa đường sử dụng kỹ thuật truyền tràn ngậpcác gói yêu cầu tìm đường để tìm nhiều đường đến một đích cho trước.. Mục đích của đề tài này nghiên cứu về cơ chế hoạt
Trang 1CHÂU VIỆT VĂN
NGHIÊN CỨU KỸ THUẬT TỐI ƯU HÓA
HIỆU QUẢ SỬ DỤNG NĂNG LƯỢNG CHO GIAO THỨC ĐỊNH TUYẾN ĐA ĐƯỜNG TRONG MẠNG AD HOC
DI ĐỘNG BẰNG HÀM FITNESS
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
THÁI NGUYÊN - 2021
Trang 2CHÂU VIỆT VĂN
NGHIÊN CỨU KỸ THUẬT TỐI ƯU HÓA
HIỆU QUẢ SỬ DỤNG NĂNG LƯỢNG CHO GIAO THỨC ĐỊNH TUYẾN ĐA ĐƯỜNG TRONG MẠNG AD HOC
DI ĐỘNG BẰNG HÀM FITNESS
Chuyên ngành: Khoa học máy tính
Mã số: 8 48 01 01
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
NGƯỜI HƯỚNG DẪN KHOA HỌC
TS ĐỖ ĐÌNH CƯỜNG
THÁI NGUYÊN - 2021
Trang 3LỜI CẢM ƠN
Sau thời gian học tập và nghiên cứu tại trường Đại học Công nghệ thôngtin và Truyền thông – Đại học Thái Nguyên, em đã hoàn thành luận văn tốtnghiệp thạc sĩ ngành Khoa học máy tính Để có được kết quả này, em xin bày
tỏ sự kính trọng và lòng biết ơn sâu sắc tới:
– TS Đỗ Đình Cường, Trường ĐH CNTT & TT – ĐHTN: cán bộ hướngdẫn khoa học đã luôn tận tình giúp đỡ và chỉ bảo em trong suốt quá trình làmluận văn
– Các cán bộ, giảng viên Khoa Công nghệ thông tin và Phòng Đào tạocùng toàn thể các thầy, cô giáo trong trường Trường Đại học CNTT & TT -ĐHTN đã tận tình chỉ bảo, hướng dẫn và giúp đỡ em trong suốt quá trình emthực hiện đề tài luận văn này
– Bên cạnh đó sự giúp đỡ của gia đình, bạn bè và người thân đã luôn ủng
hộ và tạo điều kiện tốt nhất để em có thể tập trung nghiên cứu hoàn thànhluận văn
Do về mặt kiến thức và thời gian còn hạn chế, luận văn còn nhiều khiếmkhuyết Em rất mong được sự đóng góp ý kiến của các thầy, cô và mọi người
để luận văn hoàn thiện hơn
Xin trân trọng cảm ơn!
Thái Nguyên, ngày … tháng … năm 2021
Học viên
Châu Việt Văn
Trang 4MỤC LỤC
LỜI CẢM ƠN i
MỤC LỤC ii
DANH MỤC HÌNH iv
MỞ ĐẦU 1
CHƯƠNG 1 TỔNG QUAN VỀ VẤN ĐỀ ĐỊNH TUYẾN TRONG MẠNG AD HOC DI ĐỘNG 4
1.1 Tổng quan về mạng ad hoc di động 4
1.1.1 Khái niệm mạng ad hoc di động 4
1.1.2 Đặc điểm của mạng MANET 5
1.1.3 Ứng dụng của mạng MANET 6
1.2 Giao thức định tuyến đa đường AOMDV trong mạng MANET 8
1.2.1 Tổng quan về giao thức AOMDV 8
1.2.2 Vấn đề chống định tuyến lặp 9
1.2.3 Các đường tách biệt 11
1.2.4 Hoạt động chi tiết của giao thức AOMDV 17
1.3 Tổng kết Chương 1 24
CHƯƠNG 2 KỸ THUẬT TỐI ƯU HOÁ HIỆU QUẢ SỬ DỤNG NĂNG LƯỢNG TRONG TRONG GIAO THỨC ĐỊNH TUYẾN FF-AOMDV 25
2.1 Một số cơ chế chọn đường tối ưu 25
2.2 Kỹ thuật chọn đường tối ưu trong giao thức FF-AOMDV 29
2.3 Thuật toán triển khai hàm Fitness trong giao thức FF-AOMDV 31
2.4 Tổng kết Chương 2 33
CHƯƠNG 3 ĐÁNH GIÁ HIỆU NĂNG CỦA GIAO THỨC ĐỊNH TUYẾN FF-AOMDV 34
3.1 Các độ đo đánh giá hiệu năng 34
3.2 Môi trường và kịch bản mô phỏng 36
Trang 53.3 Kết quả mô phỏng và phân tích đánh giá hiệu năng 37
3.4.1 Tỷ lệ truyền thành công 37
3.4.2 Thông lượng 40
3.4.3 Trễ đầu-cuối 42
3.4.4 Năng lượng tiêu thụ 45
3.4.5 Thời gian hoạt động của mạng 47
3.4.6 Chi phí định tuyến 49
3.5 Tổng kết Chương 3 52
KẾT LUẬN 53
TÀI LIỆU THAM KHẢO 54
Trang 6DANH MỤC HÌNH
Hình 1.1 Minh họa của mạng MANET 4
Hình 1.2 Ví dụ về các trường hợp có thể xảy ra định tuyến lặp 10
Hình 1.3 Ví dụ về các đường giao nhau 12
Hình 1.4 Ví dụ về việc hình thành các đường giao nhau theo liên kết 14
Hình 1.5 Minh họa ý tưởng tính toán đường tách biệt theo liên kết 15
Hình 1.6 Vai trò của chặng cuối cùng 16
Hình 1.7 Minh họa cho việc tính toán đường tách biệt theo liên kết 17
Hình 1.8 Cấu trúc entry bảng định tuyến của giao thức AODV và AOMDV 18
Hình 1.9 Tiến trình quảng bá RREQ của AOMDV 22
Hình 2.1 Ví dụ chọn đường tối ưu trong giao thức FF-AOMDV 32
Hình 3.1 Tỷ lệ truyền thành công theo tốc độ nút di chuyển 38
Hình 3.2 Tỷ lệ truyền thành công theo kích thước gói tin 38
Hình 3.3 Tỷ lệ truyền thành công theo thời gian mô phỏng 39
Hình 3.4 Thông lượng theo tốc độ nút di chuyển 40
Hình 3.5 Thông lượng theo kích thước gói tin 41
Hình 3.6 Thông lượng và thời gian mô phỏng 42
Hình 3.7 Trễ đầu-cuối và tốc độ nút di chuyển 43
Hình 3.8 Trễ đầu-cuối và kích thước gói tin 43
Hình 3.9 Trễ đầu-cuối và thời gian mô phỏng 44
Hình 3.10 Năng lượng tiêu thụ và tốc độ nút di chuyển 45
Hình 3.11 Năng lượng tiêu thụ theo kích thước gói tin 46
Hình 3.12 Năng lượng tiêu thụ và thời gian mô phỏng 47
Hình 3.13 Số nút hết năng lượng theo tốc độ nút di chuyển 48
Hình 3.14 Số nút hết năng lượng theo kích thước gói tin 48
Hình 3.15 Số nút hết năng lượng và thời gian mô phỏng 49
Hình 3.16 Chi phí định tuyến theo tốc độ nút di chuyển 50
Hình 3.17 Chi phí định tuyến theo kích thước gói tin 50
Hình 3.18 Chi phí định tuyến theo thời gian mô phỏng 51
Trang 7MỞ ĐẦU
Trong những năm gần đây, hiệu năng của máy tính và công nghệ truyềnthông không dây đã phát triển một cách mạnh mẽ dẫn tới việc sử dụng và ứngdụng điện toán di động không dây tiên tiến ngày càng phổ biến Phần lớn sựphát triển này liên quan đến việc sử dụng bộ giao thức IP
Mạng ad hoc di động (MANET) được thiết kế với mục đích hỗ trợ hoạtđộng mạng di động không dây một cách hiệu quả và mạnh mẽ thông qua việckết hợp chức năng định tuyến vào các nút di động Điều này đòi hỏi mạngMANET phải có cấu trúc liên kết đa điểm, động, ngẫu nhiên và tương thíchvới các thay đổi nhanh chóng về cấu hình Trong cấu trúc liên kết của mạngMANET, có thể có các liên kết không dây tương đối hạn chế về băng thông.Mạng MANET là một công nghệ rất quan trọng trong sự phát triển củamạng không dây, vì chúng bao gồm các nút di động giao tiếp qua các liên kếtkhông dây mà không cần sự điều khiển tập trung Các vấn đề trong truyềnthông không dây và truyền thông di động như tối ưu hóa băng thông, nângcao chất lượng truyền và điều khiển năng lượng cũng là các vấn đề truyềnthống mà các nhà thiết kế mạng MANET cần tiếp tục giải quyết Ngoài ra,mạng MANET còn phải giải quyết các vấn đề mới như quảng bá, khám phá
và bảo trì cấu trúc mạng do các tính chất đa chặng, thiếu cơ sở hạ tầng cố định
và tự định tuyến Có nhiều nghiên cứu đề xuất về cách tiếp cận và giao thứcđịnh tuyến khác nhau dành cho mạng MANET đã và đang được tổ chức IETF
và các viện nghiên cứu thực hiện để chuẩn hoá các tiêu chuẩn công nghiệpdành cho mạng MANET
Trong mạng MANET, dung lượng nguồn nuôi của một nút di động bịgiới hạn ảnh hưởng đến khả năng tồn tại của mạng vì các liên kết không dây
bị ngắt kết nối khi nút mạng hết năng lượng nguồn nuôi Do đó, một giao thứcđịnh tuyến có xét đến yếu tố năng lượng của các nút di động là cần thiết đểđảm bảo kết nối mạng và kéo dài thời gian hoạt động của mạng Các giao
Trang 8thức định tuyến có cơ chế nhận biết năng lượng xử lý các kỹ thuật làm giảmmức tiêu thụ năng lượng của các nút di động Cách tiếp cận này về cơ bảnđược thực hiện bằng cách chuyển tiếp lưu lượng qua các nút mà năng lượngcủa chúng có mức năng lượng cao hơn để tăng thời gian hoạt động của mạng.Nhiều giao thức định tuyến nhận biết năng lượng khác nhau đã được đềxuất bằng cách xác định mức tiêu thụ năng lượng cho quá trình truyềnvà/hoặc mức năng lượng còn lại của các nút di động Đã có nhiều nghiên cứucải thiện hiệu quả sử dụng năng lượng trong MANET bằng cách đề xuất cácthuật toán và giao thức định tuyến nhận biết năng lượng [4 - 11] Định tuyến
đa đường là một trong những lựa chọn để phát triển các giao thức định tuyếnnhằm tăng thời gian tồn tại của một đường và kéo dài thời gian sống củamạng Các giao thức định tuyến đa đường cho phép nút nguồn chọn đường tốtnhất trong số nhiều đường tìm được trong quá trình khám phá đường Quátrình này làm giảm số lần khám phá đường vì trong trường hợp một đường bịlỗi, có thể sử dụng các đường dự phòng để giảm trễ đầu cuối, giảm mức tiêuthụ năng lượng và tăng thời gian sống của mạng
Các giao thức định tuyến đa đường sử dụng kỹ thuật truyền tràn ngậpcác gói yêu cầu tìm đường để tìm nhiều đường đến một đích cho trước Nútnguồn có thể không cần thiết tìm thấy đường tối ưu hoặc đường ngắn nhất sauquá trình tìm đường Vì nguồn năng lượng của các nút di động bị hạn chế nêncần kiểm soát mức tiêu thụ năng lượng của các nút để tăng thời gian sống củamạng Một trong những vấn đề mà các giao thức định tuyến đa đường cần giảiquyết là tìm đường tối ưu từ nút nguồn đến nút đích Vấn đề này trở nên phứctạp hơn khi có một số lượng lớn các nút di động được kết nối với nhau đểtruyền dữ liệu Trong trường hợp này, hầu hết năng lượng sẽ được tiêu thụ tạithời điểm tìm đường tối ưu dẫn tới sự lãng phí năng lượng dành cho việctruyền dữ liệu
Trang 9Mục đích của đề tài này nghiên cứu về cơ chế hoạt động và đánh giábằng mô phỏng một giao thức định tuyến đa đường sử dụng năng lượng hiệuquả có tên gọi là FF-AOMDV được đề xuất trong [12] Giao thức này sử dụnghàm Fitness làm hàm tối ưu hoá với hai tham số là mức năng lượng vàkhoảng cách của đường để chọn đường tối ưu nhằm vận chuyển dữ liệu đếnđích một cách hiệu quả hơn, tiêu thụ ít năng lượng hơn và kéo dài thời giansống của mạng Hiệu năng của giao thức định tuyến FF-AOMDV sẽ được sosánh, phân tích và đánh giá với một số giao thức định tuyến đa đường khácthông qua phần mềm mô phỏng NS2 với nhiều kịch bản mô phỏng khác nhau.Luận văn bao gồm các phần được bố cục như sau: Phần mở đầu trìnhbày về mục tiêu, ý nghĩa và bố cục của luận văn Tiếp theo, các vấn đề tổngquan về mạng MANET, vấn đề định tuyến và cơ chế hoạt động động chi tiếtcủa giao thức định tuyến AOMDV được trình bày trong Chương 1 Kỹ thuậttối ưu hoá việc chọn đường bằng hàm Fitness và cơ chế chọn đường tối ưucủa giao thức FF-AOMDV sẽ được trình bày trong Chương 2 Hiệu năng củagiao thức FF-AOMDV sẽ được so sánh, phân tích và đánh giá với giao thứcAOMR-LM và giao thức AOMDV trong Chương 3 thông qua nhiều kịch bản
mô phỏng được thực hiện trên NS-2 Cuối cùng là phần kết luận đưa ra nhữngtổng kết và hướng phát triển của luận văn
Trang 10CHƯƠNG 1 TỔNG QUAN VỀ VẤN ĐỀ ĐỊNH TUYẾN TRONG
MẠNG AD HOC DI ĐỘNG 1.1 Tổng quan về mạng ad hoc di động
1.1.1 Khái niệm mạng ad hoc di động
Mạng Ad hoc di động (Mobile Ad hoc Network – MANET) [10] làmạng di động không dây hoạt động không cần dựa vào hạ tầng mạng cố định,trong đó hình trạng mạng được tạo thành bởi chính các nút mạng Chế độ “Adhoc” của chuẩn IEEE 802.11 hoạt động theo mô hình này, mặc dù nó chỉ hỗtrợ để thiết lập một mạng đơn chặng Các mạng di động không dây kiểukhông cấu trúc đã mở rộng khái niệm “Ad hoc” đa chặng theo nghĩa: một nútmạng có thể định tuyến và chuyển tiếp một gói tin nó nhận được từ một nútmạng khác Nói cách khác, con đường chuyển tiếp gói tin từ nút nguồn tới nútđích có thể chứa các nút trung gian khác Các nút trung gian sẽ đọc thông tintrong phần header của các gói tin dữ liệu và chuyển tiếp chúng tới chặng kếtiếp trên một con đường đã được hình thành
Có thể hiểu một mạng MANET là một tập các nút không dây di động cóthể trao đổi dữ liệu một cách linh động mà không cần sự hỗ trợ của trạm cơ
sở cố định hoặc mạng có dây Mỗi nút di động có một phạm vi truyền giớihạn, do đó chúng cần sự trợ giúp của các nút lân cận để chuyển tiếp các gói
dữ liệu Khi các gói tin dữ liệu từ nút nguồn cần gửi tới một nút đích mà nútđích không nằm trong phạm vi truyền của nút nguồn, cần có sự trợ giúp củacác nút trung gian để chuyển tiếp gói tin từ nút nguồn tới nút đích Để thựchiện được công việc này, các nút mạng phải sử dụng giao thức định tuyến phùhợp
Hình 1.1 Minh họa của mạng MANET
Trang 11Hình 1 là một ví dụ của mạng MANET Trong đó các nút trong mạngkết nối với nhau trong một khoảng thời gian để trao đổi thông tin Trong khitrao đổi thông tin, các nút này vẫn có thể di chuyển, do đó, mạng này phải đápứng được yêu cầu truyền dữ liệu trong khi hình trạng mạng có thể thay đổiliên tục Các nút mạng phải có cơ chế tự tổ chức thành một mạng để thiết lậpcác đường truyền dữ liệu mà không cần sự hỗ trợ từ bên ngoài Trong môhình này, mỗi nút mạng có thể đóng vai trò là một nút đầu cuối để chạy cácchương trình ứng dụng của người sử dụng hoặc là một bộ định tuyến đểchuyển tiếp các gói tin cho các nút mạng khác.
1.1.2 Đặc điểm của mạng MANET
Do mạng MANET là một mạng không dây hoạt động không cần sự hỗtrợ của hạ tầng mạng cơ sở trên cơ sở truyền thông đa chặng giữa các thiết bị
di động vừa đóng vai trò là thiết bị đầu cuối, vừa đóng vai trò là bộ định tuyếnnên mạng MANET có một số đặc điểm nổi bật sau:
Cấu trúc động: Do tính chất di chuyển ngẫu nhiên của các nút mạngnên cấu trúc của loại mạng này cũng thường xuyên thay đổi một cách ngẫunhiên ở những thời điểm không xác định trước Trong khi thay đổi, cấu trúccủa mạng MANET có thêm hoặc mất đi các kết nối hai chiều hoặc kết nốimột chiều
Chất lượng liên kết hạn chế: Các liên kết không dây thường có băngthông nhỏ hơn so với các liên kết có dây Ngoài ra, do ảnh hưởng của cơ chế
đa truy cập, vấn đề suy giảm tín hiệu, nhiễu và các yếu tố khác, băng thôngthực của các liên kết không dây thường thấp hơn nhiều so với tốc độ truyềntối đa theo lý thuyết của môi trường truyền không dây
Các nút mạng có tài nguyên hạn chế: Mỗi nút di động trong mạng cóthể là một bộ cảm biến, một điện thoại thông minh hoặc một máy tính xáchtay Thông thường các thiết bị này có tài nguyên hạn chế so với các máy tínhtrong mạng có dây và không dây truyền thống về tốc độ xử lý, dung lượng bộnhớ và năng lượng nguồn pin nuôi sống hoạt động của nút
Trang 12Độ bảo mật thấp ở mức độ vật lý: Mạng không dây di động thườngchịu tác động về mặt vật lý từ các nguồn gây nguy hại về an ninh nhiều hơn
so với mạng có dây Về khía cạnh vật lý, các kỹ thuật gây mất an ninh và bảomật trong mạng như nghe lén, giả mạo và tấn công từ chối dịch vụ thường dễtriển khai trong mạng MANET hơn là trong mạng có dây truyền thống
Có thể thấy những đặc điểm này là các yếu tố ảnh hưởng rất nhiều đếnhiệu năng của mạng MANET Để có thể triển khai được mạng MANET trongthực tế, các thiết kế mạng phải giải quyết được những thách thức sinh ra donhững đặc điểm đã nêu trên Những thách thức này gồm các vấn đề kỹ thuậtnhư khả năng truyền dữ liệu và định tuyến hiệu quả khi kích thước mạng thayđổi; đảm bảo chất lượng dịch vụ (QoS) cho các chương trình ứng dụng; cơchế chuyển đổi một số dịch vụ từ mô hình client-server; tiết kiệm năng lượngpin để kéo dài thời gian hoạt động của các nút mạng riêng lẻ và của toànmạng; đảm bảo an ninh mạng; khả năng hợp tác giữa các nút mạng và khảnăng tự tổ chức của mạng;
1.1.3 Ứng dụng của mạng MANET
Ngày nay, mạng MANET có nhiều những ứng dụng trong đời sống,kinh tế, xã hội của con người Mô hình mạng này phù hợp đối với những tìnhhuống cần triển khai hệ thống mạng một cách nhanh chóng, linh động vàthường xuyên có sự biến đổi trong cấu trúc mạng Chúng còn được ứng dụngrất nhiều trong các ứng dụng từ lĩnh vực thương mại tới các ứng dụng trongcác hoạt động quân sự, ứng dụng trong các hoạt động khẩn cấp, ứng dụngtrong gia đình, văn phòng và giáo dục, mạng giao thông và mạng cảm biến
Đối với các ứng dụng của mạng MANET trong thương mại, nhữngngười dùng có thể chia sẻ dữ liệu giữa các thiết bị di động trong một cuộc họphay hội thảo mà không cần sự hỗ trợ của một cơ sở hạ tầng mạng cố định Cácmáy tính của những cá nhân có thể kết nối với nhau để tạo thành một mạngtạm thời phục vụ cho các ứng dụng truyền thông dữ liệu trong một nhóm
Trang 13những người dùng mà không cần sự hiện diện của các bộ thu phát tập trung.Kết nối Internet từ một thiết bị của một người dùng cũng có thể được chia sẻtới các thiết bị của những người dùng khác thông qua mạng MANET.
Ứng dụng mạng MANET trông quân đội là một trong những ý tưởngđược đưa ra ngay từ khi mạng MANET được phát triển Trong mô hìnhchiến đấu của quân đội trên chiến trường không có sự hỗ trợ về hạ tầngmạng cố định, mỗi người lính hoặc một phương tiện quân sự như xe tăng,máy bay, tàu chiến, tàu thủy đều có thể được kết nối và trao đổi thông tintạm thời với nhau hoặc với trạm chỉ huy một cách linh động thông qua mạngMANET được hình thành bởi kết nối giữa các thiết bị di động truyền thôngkhông dây được gắn vào các phương tiện quân sự hay những người línhtham gia vào cuộc chiến
Tại các vùng bị thiên tai, thảm họa, có thể tất cả các phương tiện và hạtầng truyền thông được xây dựng trước đó đều bị phá hủy hoàn toàn Mỗichiếc xe của cảnh sát, cứu hỏa, cứu thương,… có thể được trang bị các thiết bịtruyền nhận không dây để trở thành một thiết bị đầu cuối di động và là mộtphần của mạng MANET Mỗi nhân viên cứu hộ cũng có thể cũng mang theomột thiết bị đầu cuối di động Các thiết bị đầu cuối này đều liên kết với nhau,hình thành nên một mạng MANET tạm thời nhằm trao đổi thông tin Cấuhình mạng thay đổi theo những thời điểm khác nhau Ngoài ra, các thiết bịđầu cuối di động không chỉ cung cấp chức năng gửi và nhận thông tin mà còn
có thể chuyển tiếp thông tin như vai trò như các bộ định tuyến
Mỗi thiết bị thông minh trong gia đình, các điên thoại di động thôngminh và máy tính của những người sử dụng trong văn phòng, trong môi trườngtrường học, các lớp học có thể đóng vai trò như một nút mạng trong một mạngMANET được hình thành tạm thời mà không cần sự hỗ trợ của hạ tầng mạng
cố định nhằm phục vụ cho các ứng dụng chia sẻ thông tin, truyền dữ liệumultimedia, quản lý ngôi nhà thông minh, quản lý lớp học thông minh,…
Trang 14Trong vấn đề quản lý và hỗ trợ giao thông, mỗi phương tiện giao thông
là một nút mạng di động trong mạng MANET được hình thành tạm thời trênmột khu vực địa lý nhằm hỗ trợ trao đổi và quản lý các thông tin về tình trạnggiao thông, hỗ trợ tìm đường tránh tắc nghẽn giao thông, theo dõi và quản lýcác thiết bị tham gia giao thông, v.v
Cảm biến là các thiết bị nhỏ, phân tán, giá thành thấp, tiết kiệm nănglượng, có khả năng truyền thông không dây và xử lý cục bộ Một mạngMANET có thể là một mạng cảm biến gồm các nút cảm biến Các nút nàyhợp tác với nhau để cùng thực hiện một nhiệm vụ cụ thể, ví dụ như: giám sátmôi trường (không khí, đất, nước), theo dõi môi trường sống, hành vi, dân sốcủa các loài động, thực vật, dò tìm động chấn, theo dõi tài nguyên, thực hiệntrinh thám trong quân đội,
1.2 Giao thức định tuyến đa đường AOMDV trong mạng MANET
1.2.1 Tổng quan về giao thức AOMDV
Giao thức AOMDV [13] là giao thức định tuyến đa đường theo yêu cầudạng vectơ khoảng cách được thiết kế dành cho mạng MANET Nó được pháttriển từ giao thức AODV trên cơ sở chia sẻ một số đặc điểm với giao thứcAODV Nó dựa trên khái niệm vectơ khoảng cách và sử dụng phương phápđịnh tuyến từng chặng Hơn nữa, giao thức AOMDV cũng tìm thấy các đườngtheo yêu cầu bằng cách sử dụng tiến trình khám phá đường Sự khác biệtchính giữa hai giao thức này nằm ở số lượng đường tìm được sau mỗi tiếntrình khám phá tuyến Trong giao thức AOMDV, việc truyền gói RREQ từnguồn tới đích sẽ thiết lập nhiều đường dẫn ngược ở cả các nút trung giancũng như nút đích Nhiều gói RREP đi qua các đường nghịch hướng về nútnguồn để tạo thành nhiều đường thuận đến đích tại các nút nguồn và nút trunggian Giao thức AOMDV cũng cung cấp cho các nút trung gian các đường dựphòng nhằm làm giảm tần suất khám phá đường
Trang 15Vấn đề trọng tâm của giao thức AOMDV là vấn đề đảm bảo phát hiệnđược nhiều đường không lặp và phân tách trong tiến trình tìm đường hiệu quảbằng cách sử dụng tiến trình khám phá đường dựa vào kỹ thuật “làm ngậptràn” (flooding) Các quy tắc cập nhật đường của giao thức AOMDV được ápdụng cục bộ tại mỗi nút đóng vai trò chính trong việc duy trì các đường khônglặp và phân tách.
Đề xuất thiết kế giao thức AOMDV tái sử dụng nhiều nhất có thể nhữngthông tin định tuyến đã có sẵn trong giao thức AODV Do đó, nó hạn chế chiphí phát sinh trong việc khám phá nhiều đường Đặc biệt, nó không sử dụngthêm bất kỳ gói điều khiển đặc biệt nào Trên thực tế, các gói RREP và RERR
bổ sung để phát hiện và bảo trì đa đường cùng với một vài trường bổ sungtrong các gói điều khiển định tuyến (RREQ, RREP và RERR) là chi phí bổsung duy nhất trong giao thức AOMDV so với giao thức AODV
1.2.2 Vấn đề chống định tuyến lặp
Các quy tắc cập nhật tuyến của giao thức AODV giới hạn một nút chỉtìm được tối đa một đường cho mỗi đích Do đó, cần thiết phải sửa đổi cácquy tắc cập nhật đường này để tại mỗi nút có nhiều hơn một đường cho mỗiđích Tuy nhiên, những sửa đổi này cần được thực hiện để đảm bảo vấn đềtránh định tuyến lặp Có hai vấn đề phát sinh khi tính toán nhiều đường dẫnkhông lặp tại một nút cho một đích Một là, mỗi nút sẽ chọn đường nào trongnhiều đường để cung cấp hoặc quảng bá cho các nút khác? Do mỗi tuyếnđường có thể có số chặng khác nhau nên việc lựa chọn một đường bất kỳ cóthể tạo thành các đường lặp vòng Hai là, một nút khi nhận được quảng báđường có chấp nhận đường nhận được hay không? Việc chấp nhận tất cả cáccon đường có thể gây ra hiện tượng định tuyến lặp
Hình 1.2 minh họa vấn đề đường lặp vòng bằng các ví dụ đơn giản.Trong Hình 1.2(a), nút D là đích và nút I có hai đường đến D - một đường 5chặng qua nút M (I –M –N –O–P –D) và một đường một chặng trực tiếp (I -
Trang 16D) Giả sử tuyến đường (I –M –N –O–P –D) được quảng bá đến nút J và tiếptheo tuyến đường (I – D) được quảng bá đến nút K Sau đó, cả J và K đều cóđường đến nút D qua nút I, nhưng mỗi tuyến đường đều có chặng khác nhau.Nếu sau đó nút I nhận được một đường 4 chặng đến đích D từ nút L (L–K–I–D), nút I sẽ không thể xác định được L là nút trước hay nút sau nó trên conđường tới đích D vì chỉ có thông tin số chặng được đưa vào quảng bá đường.
Vì vậy, tại nút I sẽ hình thành một tuyến đường tới nút đích D thông qua nút
L làm dẫn đến một vòng lặp Tình huống như vậy xảy ra do một nút (ở đây lànút I) quảng bá một đường ngắn hơn (I - D) trong khi nó đã có một đường dựphòng dài hơn (I –M –N –O–P –D)
Hình 1.2 Ví dụ về các trường hợp có thể xảy ra định tuyến lặp
Hình 1.2(b) cho thấy một tình huống tiềm năng khác xảy ra lặp vòng.Trong đó nút D là đích Nút J có đường dẫn 3 chặng đến nút D thông qua nút(J–K–I–D) Nút L cũng có một đường 3 chặng đến nút D thông qua nút M (L
- M - N - D) Giả sử nút I nhận được một đường dẫn 4 chặng đến nút D từ nút
L Trong trường hợp này, nút I không thể xác định được liệu nút L có phải lànút đứng trước hay không bởi vì nút J cũng có thể cung cấp một con đường 4chặng tới nút D Do đó, việc một nút chấp nhận một đường dài hơn sau khi nó
đã quảng bá một đường ngắn hơn tới các nút láng giềng cũng có thể gây rađịnh tuyến lặp
Trang 17Dựa trên các phân tích ở trên, tập các điều kiện chống định tuyến lặpđược đề xuất [13] Những điều kiện này cho phép một nút có thể duy trì nhiềuđường tới cùng một đích Tập các điều kiện này được phát biểu như sau:
(i) Quy tắc số thứ tự: Chỉ duy trì các tuyến đường cho số thứ tự đích
có giá trị cao nhất Tại mỗi nút, nhiều tuyến đường có cùng số thứ tự đíchđược duy trì Với quy tắc này, tính chất không lặp vòng của các tuyến đường
có thể đạt được tương tự như giao thức AODV Khi một nút nhận được quảng
bá đường chứa số thứ tự đích cao hơn, tất cả các đường có số thứ tự cũ hơntới đích tương ứng sẽ bị loại bỏ Tuy nhiên, các nút khác nhau (trên cùng mộttuyến đường) có thể có các số thứ tự khác nhau cho cùng một đích
(ii) Đối với cùng một số thứ tự đích,
(a) Quy tắc quảng bá đường: Không quảng bá đường ngắn hơn đường
đã được quảng bá trước đó
(b) Quy tắc nhận đường: Không nhận đường dài hơn đường đã đượcquảng bá trước đó
Để duy trì nhiều đường cho cùng một số thứ tự, giao thức AOMDV
sử dụng khái niệm “số chặng được quảng bá” Mỗi nút duy trì một biến gọi
là số chặng được quảng bá cho mỗi đích Biến này được thiết lập giá trịbằng độ dài của đường (tính theo số chặng) dài nhất tại thời điểm quảng báđầu tiên cho một số thứ tự đích cụ thể Số lượng chặng được quảng bákhông thay đổi cho đến khi số thứ tự đích thay đổi Việc quảng bá độ dàiđường dài nhất cho phép có nhiều hơn các đường thay thế được duy trì.Mục 2.2 sẽ trình bày chi tiết cách xác định số chặng được quảng bá cùng
mô tả về các quy tắc cập nhật đường Chứng minh về tính không lặp củađường được trình bày trong Mục 2.3.1
1.2.3 Các đường tách biệt
Bên cạnh việc duy trì nhiều đường không lặp vòng, giao thức AOMDVcòn có khả năng tìm các đường dự phòng không giao nhau Với mục đích cảithiện khả năng chịu lỗi bằng nhiều đường thì các đường tách biệt là một lựa
Trang 18chọn tự nhiên để chọn một tập con các đường dự phòng hiệu quả từ một tậplớn các đường tiềm năng vì khả năng lỗi dây chuyền và đồng thời của cácđường trong tập này nhỏ hơn so với tập các đường có giao cắt Có hai loạiđường tách biệt được xem xét là đường tách biệt theo liên kết và đường táchbiệt theo nút Đường tách biệt theo liên kết là tập hợp các đường không cóliên kết chung giữa một cặp nút, trong khi đó, đường tách biệt theo nút còncòn thêm điều kiện là không có nút giao nhau.
Không giống như vấn đề đường tách biệt trong lý thuyết đồ thị và tàiliệu, khái niệm không giao ở đây chỉ giới hạn ở một cặp nút và không xem xétđến tính không giao giữa các cặp nút khác Cụ thể là cần đảm bảo mọi conđường có thể đi được từ một nút P bất kỳ tới một nút đích D là không giaonhau Điều này có nghĩa là không nhất thiết tất cả các đường đi trong mạngdẫn đến nút D đều phải là đường tách biệt Sự khác biệt này được minh họabằng một ví dụ trong Hình 1.3 Giới hạn đường tách biệt ở trên là đủ khi nhìn
từ góc độ về khả năng chịu lỗi và thực tế được sử dụng trong hầu hết các giaothức định tuyến đa đường khác nhau
B A
C D
E
F
Hình 1.3 Ví dụ về các đường giao nhau
Trong Hình 1.3, các đường được duy trì tại các nút khác nhau đến đích
có thể giao nhau Ở đây D là đích đến Nút A có hai đường dẫn không giaonhau đến nút D là A–B–D và A–C–D Tương tự, nút E có hai đường tách biệtđến nút D là E–C–D và E–F–D Tuy nhiên, các và A–C–D và E–C–D lại giaonhau khi chúng chia sẻ một liên kết C–D
Trang 19Trong việc tìm kiếm các đường tách biệt, lực lượng hoặc độ dài của cácđường dự phòng không được tối ưu hóa một cách rõ ràng Trên thực tế, sốlượng và chất lượng của các đường tách biệt được giao thức AOMDV pháthiện phần lớn được xác định qua tiến trình khám phá đường Tuy nhiên, cóthể kiểm soát các thuộc tính này bằng cách đặt giới hạn về số lượng và độ dàicủa các đường dự phòng được duy trì tại mỗi nút Đây là cách tiếp cận hợp lý
vì tính chất tồn tại trong thời gian ngắn của các đường trong mạng ad hoc diđộng và việc tính toán tối ưu cho các đường dự phòng không giao nhau phải
sẽ phải chịu chi phí cao hơn
Trong các thuật toán định tuyến phân tán của loại vectơ khoảng cách,một nút sẽ hình thành từng bước các đường đến đích dựa trên các đường thuđược từ các nút láng giềng hướng đích Vì vậy, việc tìm một tập hợp cácđường tách biệt theo liên kết tại một nút được xem là một quá trình gồm haibước: (1) xác định một tập các nút láng giềng hướng đích có các đường táchbiệt đến đích; (2) hình thành chính xác từng con đường qua mỗi nút lánggiềng hướng đích Lưu ý rằng bước thứ hai là đương nhiên được thực hiện khimỗi nút chỉ cần đảm bảo rằng mọi đường của nó chặng kế tiếp là duy nhất.Đây là một hoạt động được thực hiện cục bộ tại mỗi nút Tuy nhiên, để thựchiện được bước đầu tiên, mỗi nút cần có thông tin về một số hoặc tất cả cácnút hướng đích trên mỗi tuyến đường
Trong giao thức vectơ khoảng cách thông thường (bao gồm giao thứcAODV), một nút chỉ theo dõi chặng kế tiếp và khoảng cách qua chặng kế tiếpcho mỗi con đường Sự giới hạn thông tin trong một chặng này không đủ đểmột nút xác định liệu hai con đường thu được từ hai nút láng giềng khác nhau
có thực sự là các đường tách biệt hay không (Hình 1.4) Vì vậy, cần bổ sungthông tin cho mỗi con đường để kiểm tra tính chất không giao theo liên kết.Giao thức định tuyến nguồn có khả năng duy trì thông tin đầy đủ mọi conđường đầy đủ tại mỗi nút Trong trường hợp như vậy, việc kiểm tra tínhkhông
Trang 20Hình 1.4 Ví dụ về việc hình thành các đường giao nhau theo liên kết
Trong Hình 1.4, thông tin về chặng kế tiếp là không đủ để đảm bảo tínhkhông giao theo liên kết của các con đường Ở đây D là đích Nút A có mộtcon đường qua I đến D (A-I–D) Tương tự, nút B cũng có một con đường qua
I đến D (B-I-D) Nút P chỉ biết về các chặng kế tiếp A và B mà không thể xácđịnh liệu các đường từ A và B đến D (lần lượt là A-I-D và B-I-D) có giaonhau hay không Vì vậy, nếu P tạo các con đường qua A và B thì tập hợp cácđường dẫn từ P sẽ giao nhau mặc dù các chặng kế tiếp (A và B) là khác biệt
Một cơ chế không yêu cầu thông tin đầy đủ về con đường tại mỗi nútđược đề xuất ở đây Đề xuất này vẫn đảm bảo tính không giao theo liên kết
Cụ thể là cơ chế được đề xuất yêu cầu duy trì thêm thông tin về chặng cuốicùng cho mọi con đường (ngoài thông tin về chặng kế tiếp) Chặng cuối cùngcủa một con đường từ nút P đến đích D chính là nút ngay trước nút D trênđường đó Đối với đường một chặng, chặng kế tiếp là nút D và chặng cuốicùng chính là nút P Đối với con đường hai chặng, chặng kế tiếp chính làchặng cuối cùng
Quan sát đơn giản sau đây là cơ sở của đề xuất này để tìm các đườngtách biệt theo liên kết: Nếu có hai con đường từ nút P đến đích D là khônggiao nhau theo liên kết thì chúng phải có các chặng kế tiếp duy nhất cũng nhưcác chặng cuối cùng duy nhất Điều ngược lại của quan sát này không nhất
Trang 21thiết đúng Tuy nhiên, phát biểu ngược lại là đúng khi bổ sung một điều kiện:mỗi nút trên đường đảm bảo rằng tất cả các đường đi đến đích từ nút đó khácnhau về chặng kế tiếp và chặng cuối cùng của chúng (Hình 1.5) Đây là cơ sở
để xác định xem hai con đường qua hai nút láng giềng khác nhau hướng đích
bị giao nhau theo liên kết hay không Chúng sẽ là các đường tách biệt theoliên kết khi có chặng cuối cùng khác nhau
Hình 1.5 minh họa ý tưởng xác định các đường tách biệt theo liên kết.Đối với Hình 1.5(a), hai con đường từ nút P đến nút D thỏa mãn điều kiệnchặng các chặng kế tiếp và chặng cuối cùng khác nhau nhưng đây vẫn là haiđường giao nhau theo liên kết vì nút trung gian I không thỏa mãn điều kiện.Nếu tất cả các nút trên mọi đường thỏa mãn điều kiện thì các đường sẽ khônggiao nhau theo liên kết Trong trường hợp này, Hình 1.5(b) chỉ có một đườngđược thỏa mãn Tuy nhiên, Hình 1.5(c) có hai đường thỏa mãn điều kiệnkhông giao nhau theo liên kết
Trang 22Để thực hiện ý tưởng tìm đường tách biệt theo liên kết như trên, cầnduy trì thông tin về chặng cuối cùng cho mọi con đường trong bảng địnhtuyến Các gói RREQ và RREP trong giao thức AOMDV cũng phải mangthông tin về chặng cuối cùng Lưu ý rằng chặng cuối cùng trên tuyến sẽ thực
sự là chặng đầu tiên được thực hiện bởi các gói định tuyến này Hoạt động chitiết của giao thức được mô tả trong phần tiếp theo
Hình 1.5 minh họa vai trò quan trọng của thông tin về chặng cuối cùng
và Hình 1.7 minh họa việc xác định các đường tách biệt theo liên kết
A X
P I J D
B
Y
Hình 1.6 Vai trò của chặng cuối cùng
Trong Hình 1.6, nút D là đích đến, nút J có 2 đường tách biệt theo liênkết đến nút D qua nút X và nút Y Vì một nút không thể có hai đường dẫn cócùng chặng kế tiếp nên nút I sẽ chỉ tạo thành một đường qua nút J với chặngcuối cùng là X hoặc Y Giả sử nút I tạo một đường qua J với X là chặng cuốicùng; điều này sẽ ngăn cản việc truyền đường qua nút Y nút đứng trước nótheo chiều ngược về phía nút nguồn Khi nút I quảng bá đường của nó tới nút
D với chặng cuối cùng là nút X đến các nút A và B đứng trước nó, mỗi nútnày sẽ tạo thành một đường qua nút I với chặng cuối cùng là nút X Nút P xácđịnh rằng các đường dẫn từ nút A và nút B đến nút D không phải là cácđường tách biệt theo liên kết vì chúng có cùng chặng cuối cùng X Vì vậy, nút
P chỉ tạo một đường tới nút đích D
Trang 23Trong Hình 1.7, nút D là đích đến, nút I xác định rằng 2 đường X - D và
Y - D là 2 đường tách biệt theo liên kết vì nút X và nút Y là hai nút láng giềngphân biệt của nút D Vì vậy, nút I tiếp tục tạo 2 đường dẫn không giao theoliên kết đến nút D qua nút X và nút Y Giả sử nút I quảng bá các đường quanút X và nút Y tương ứng đến nút A và nút B Lưu ý rằng mỗi quảng báđường chứa thông tin về chặng cuối cùng của đường được quảng bá Sau đó,các đường từ nút A và nút B đến nút D các đường tách biệt theo liên kết vìchúng có các chặng cuối cùng phân biệt (X và Y) Tiếp theo, nút P có thể tạo
2 đường tách biệt theo liên kết đến nút D qua nút A và nút B
A X
P I D
B Y
Hình 1.7 Minh họa cho việc tính toán đường tách biệt theo liên kết
1.2.4 Hoạt động chi tiết của giao thức AOMDV
Giao thức AOMDV được mô tả sau đây gồm bốn thành phần: cấu trúcbảng định tuyến, tiến trình khám phá đường, bảo trì đường và chuyển tiếp gói
dữ liệu
Bảng định tuyến
Hình 1.8 cho thấy sự khác biệt trong cấu trúc entry bảng định tuyếngiữa giao thức AODV và giao thức AOMDV Entry bảng định tuyến của giaothức AOMDV có một trường mới là “advertised hop count” biểu diễn sốchặng được quảng bá Bên cạnh đó, một danh sách tuyến đường “route list”được sử dụng trong giao thức AOMDV để lưu trữ thông tin bổ sung cho từngđường dẫn thay thế bao gồm: chặng kế tiếp (next_hop), chặng cuối cùng
Trang 24(last_hop), số chặng (hop_count) và thời gian hết hạn (timeout) Như đã trìnhbày ở trên, thông tin chặng cuối cùng rất cần thiết trong việc kiểm tra tínhkhông giao nhau của các đường dự phòng.
destination sequence number hop count next hop timeout
(a) AODV
destination sequence number advertised hop count route list
next_hop 1 last_hop 1 hop_count 1 timeout 1
next_hop 2 last_hop 2 hop_count 2 timeout 2
.
(b) AOMDV
Hình 1.8 Cấu trúc entry bảng định tuyến của giao thức AODV và AOMDV
Thuật toán cập nhật đường
Khi nút i chuẩn bị gửi quảng bá đường đầu tiên cho đích d, nó sẽ
cập nhật số chặng được quảng bá như sau:
Trang 25tiếp, số chặng được quảng bá và danh sách đường cho đích d tại nút i (i # d).
Các biến và biểu diễn giá trị tương ứng của chặng kếtiếp và chặng cuối cùng của con đường thứ k trong entry bảng định tuyến chođích d tại nút i Các dòng (1) và (10) trong Thuật toán 1 đảm bảo tính khônglặp vòng, trong khi các dòng (12) và (15) kiểm tra tính tách biệt theo liên kết
Trang 26thứ tự */
11: if then /*nút láng giềng là đích*/
then /* áp dụng quy tắc số
12: if and ) then /* đảm bảo
tính duy nhất của chặng kế tiếp và chặng cuối cùng */
13 insert into ;
14: end if
15: else if and ) then /* đảm bảo tính duy nhất của chặng kế tiếp và chặng cuối cùng */
Trang 27Trong giao thức AODV, khi một nút nguồn có lưu lượng dữ liệu cầnmột con đường để truyền tới đích, nút nguồn sẽ bắt đầu quá trình khám pháđường bằng cách tạo gói RREQ Vì RREQ được truyền kiểu quảng bá ngậptoàn mạng, một nút trong mạng có thể nhận được một vài bản sao của cùngmột gói RREQ Chỉ bản sao đầu tiên của gói RREQ được sử dụng để tạo cácđường dự phòng ngược hướng nguồn Các bản sao đến sau đơn giản sẽ bị loại
bỏ Cần lưu ý rằng một số bản sao này có thể được sử dụng một cách hữu ích
để tạo thành các đường ngược hướng tới nguồn Vì vậy, tất cả các bản saotrùng lặp được giao thức AOMDV kiểm tra để phục vụ cho mục đích tạo racác đường dự phòng ngược hướng nguồn Tuy nhiên, các đường ngược hướngnguồn chỉ được hình thành bằng các bản sao đảm bảo tính không lặp vòng vàkhông giao cho các con đường Điều này được xác nhận bằng cách áp dụngcác quy tắc cập nhật tuyến đường trong Thuật toán 1
Khi một nút trung gian nhận được một đường ngược qua bản sao góiRREQ, nó sẽ kiểm tra xem có một hay nhiều đường thuận hợp lệ hướng đíchhay không Nếu có, nút này sẽ tạo một gói RREP và gửi nó trở lại nút nguồndọc theo đường ngược Gói RREP chứa một đường thuận chưa được sử dụngtrong bất kỳ gói RREP nào trước đây cho tiến trình khám phá đường này.Trong trường hợp này, nút trung gian không chuyển tiếp gói RREQ nữa.Trường hợp ngược lại, khi nút trung gian không có bất cứ đường hợp lệ nàotới đích, nó sẽ quảng bá lại bản sao gói RREQ nếu trước đó nó chưa chuyểntiếp bất kỳ bản sao nào của gói RREQ này và bản sao này dẫn đến hoạt độnghình thành hoặc cập nhật đường ngược
Khi nút đích nhận được các bản sao RREQ, nó cũng tạo thành cácđường dẫn ngược theo cách tương tự như các nút trung gian Tuy nhiên, nó
áp dụng một chính sách lỏng hơn để tạo gói RREP Cụ thể là, nút đích tạo ra
Trang 28chỉ sử dụng các bản sao gói RREQ đến qua các đường không lặp và khônggiao từ nút nguồn Lý do ẩn sau việc áp dụng chính sách tạo gói RREP lỏnghơn tại nút đích là như sau: Đối với cơ chế quảng bá gói RREQ kiểu ngậptràn toàn mạng, mỗi nút chỉ quảng bá cục bộ gói RREQ một lần, triệt tiêucác bản sao gói RREQ tại các nút trung gian và nhân bản các gói RREQkhác Hình 1.9 cho thấy một ví dụ, trong đó nút I nhân bản bản sao góiRREQ đi qua nút A và triệt tiêu bản sao gói RREQ đi qua nút B Kết quả là,nhiều đường tách biệt có thể bị liên kết lại tại các nút trung gian và xuất hiệndưới dạng một đường duy nhất tại đích Như vậy, nút đích D sẽ chỉ biết vềđường S-A-I-X-D nhưng không biết về đường S-B-I-Y-D Vấn đề này đượcgọi là vấn đề “cắt tuyến” (route cutoff) Rõ ràng, vấn đề cắt đường ngănchặn việc khám phá ra tất cả các đường ngược không giao nhau Điều nàydẫn đến sự giới hạn về số lượng các đường thuận hướng đích không giaonhau được tìm thấy tại nút nguồn nếu nút đích chỉ gửi gói RREP theo cácđường dẫn ngược Do đó, nút đích được cho gửi lại gói RREP theo từngđường dẫn ngược không lặp mặc dù đây chưa chắc đã là đường tách biệt vớicác đường ngược được thiết lập trước đó Các RREP bổ sung như vậy làmgiảm bớt vấn đề cắt tuyến và tăng khả năng tìm thấy các đường thuận hướngđích Cần lưu ý rằng các gói RREP bổ sung này không yêu cầu các nút trunggian và nút nguồn phải thực hiện thêm bất kỳ hành động đặc biệt nào khácnhằm đảm bảo tính không giao cho các đường dự phòng tìm được vì các quytắc trong Thuật toán 1 vẫn được áp dụng độc lập tại mỗi nút.
Trang 30P I D
bản sao 2
B qua B Y bản sao của
bản sao 1 qua Y
Hình 1.9 Tiến trình quảng bá RREQ của AOMDV
Khi một nút trung gian nhận được gói RREP, nó tuân theo các quy tắccập nhật đường trong Thuật toán 1 để có thể tạo thành một đường dẫn khônglặp và không giao tới đích Ngược lại, gói RREP sẽ bị hủy bỏ Giả sử một núttrung gian tạo thành đường thuận hướng đích và nó có một hoặc nhiều đườngdẫn nghịch hợp lệ hướng nguồn, nó sẽ kiểm tra xem có đường nghịch nàotrước đó chưa được sử dụng để gửi gói RREP trong tiến trình khám pháđường này Nếu có, nó chọn đường nghịch này để chuyển tiếp gói RREP.Ngược lại nút trung gian sẽ hủy bỏ gói RREP Việc chọn một đường dẫnnghịch duy nhất để chuyển tiếp RREP theo một đường dẫn ngược duy nhấtkhông phải là việc nhân bản nó tới tất cả các đường dẫn nghịch hiện có, do đókhông làm ảnh hưởng đến độ trễ khám phá đường của giao thức AOMDV.Điều này là do độ trễ của tiến trình khám phá đường được đo bằng thời gianchờ trước khi nút nguồn nhận được con đường đầu tiên và các gói RREPtrong giao thức AOMDV (cũng như trong giao thức AODV) sử dụng cơ chếtruyền unicast tin cậy của tầng MAC trên cơ sở ARQ Nói cách khác, nếuthực hiện việc nhận bản gói RREP tại các nút trung gian sẽ gây ra vấn đề cắttuyến tương tự như quá trình quảng bá gói RREQ đã trình bày ở trên, do đólàm giảm số lượng đường dẫn không giao được tìm thấy tại nguồn
Trang 31tiến trình bảo trì đường của giao thức AODV với những thay đổi rất đơn giản.Cũng giống như giao thức AODV, giao thức AOMDV sử dụng các góiRERR Một nút tạo hoặc chuyển tiếp gói RERR khi đường cuối cùng đến đích
bị phá vỡ Giao thức AOMDV cũng đã được tối ưu để cứu các gói theo kếhoạch sẽ được chuyển tiếp qua các liên kết lỗi bằng cách chuyển tiếp chúngqua các đường dự phòng Điều này tương tự như cơ chế cứu gói như tronggiao thức DSR
Cơ chế timeout (thời gian chờ hết hiệu lực) được mở rộng từ một đườngđơn tới đa đường (Hình 2.7) mặc dù vấn đề đặt giá trị timeout thích hợp tronggiao thức AOMDV khó khăn hơn so với giao thức AODV Khi có nhiềuđường cùng hướng tới một đích, sẽ có nhiều khả năng xảy ra việc tồn tại cáccon đường có thông tin đã cũ và không còn chính xác với topo mạng hiện tại.Tuy nhiên, nếu sử dụng các giá trị timeout rất nhỏ để loại bỏ các đường cũ cóthể làm giảm lợi ích của việc sử dụng nhiều đường Khi cài đặt giao thứcAOMDV, nên sử dụng các giá trị timeout có độ lớn trung bình và sử dụngthêm các gói HELLO để chủ động xóa các đường cũ Do đó, timeout trongphiên bản hiện tại của giao thức AOMDV chủ yếu đóng vai trò là một cơ chếmềm để xử lý các sự kiện không lường trước chẳng hạn như bảng định tuyến
bị hủy Cơ chế lựa chọn thời gian timeout thích hợp để xóa đường cũ tronggiao thức DSR đã được đề xuất áp dụng cho giao thức AOMDV với một sốthay đổi Cũng có thể lựa chọn thời gian chờ trên cơ sở đặc tính phân tích đặctính theo hành vi của liên kết trong mạng MANET
Cơ chế chuyển tiếp dữ liệu
Tại một nút có nhiều đường đến cùng một đích, khi có dữ liệu cầnchuyển tiếp, giao thức AOMDV chỉ sử dụng một đường để chyển tiếp dữ liệucho đến khi đường này bị lỗi và sau đó mới chuyển sang một đường dẫn khác
Trang 321.3 Tổng kết Chương 1
Mặc dù có rất nhiều ứng dụng tiềm năng trong cuộc sống của con ngườinhưng so với mạng truyền thống, mạng MANET có nhiều điểm khác biệt thểhiện ở cấu trúc mạng động, ở hạn chế về chất lượng liên kết và năng lượngnguồn pin, ở mức độ bảo mật thấp
Do tính chất động của topo mạng nên các giao thức định tuyến sử dụngtrong mạng ad hoc di động cần được thiết kế để đáp ứng với các yêu cầu đảmbảo hiệu năng mạng Cụ thể là các yêu cầu về việc tối thiếu hoá tải điều khiển
và tải xử lý, hỗ trợ định tuyến đa chặng, đáp ứng những thay đổi về topomạng và ngăn chặn định tuyến lặp Các giao thức định tuyến có thể sử dụngmột trong nhiều chiến lược định tuyến khác nhau
AOMDV là một giao thức định tuyến đa đường được phát triển trên cơ
sở cải tiến thuật khám phá đường của giao thức định tuyến tìm đường theoyêu cầu dạng véc tơ khoảng cách AODV nhằm mục đích cho phép mỗi nútmnagj tìm được nhiều đường hơn một đường cùng đến một đích sau mỗi tiếntrình khám phá đường
Đề xuất thiết kế và phát triển giao thức AOMDV gồm 4 thành phầnquan trọng đã được thiết kế lại và hiệu chỉnh so với giao thức gốc AODV Đó
là các thành phần: cấu trúc entry trong bảng định tuyến, thuật toán cập nhậtđường, tiến trình khám phá đường và cơ chế cập nhật đường
Có hai yêu cầu được đặt ra đối với các đường do giao thức AOMDVtìm được là phải đảm bảo: (i) khả năng chống định tuyến lặp và (ii) khả năngphân tách giữa các con đường tìm được Yêu cầu (i) được đảm bảo bằng haiquy tắc cập nhật đường đã được trình bày Bằng kỹ thuật cập nhật đường cóđiều kiện đảm bảo tính duy nhất của chặng kế tiếp và chặng cuối cùng, thuậttoán cập nhật đường đã đảm bảo cho yêu cầu (ii) và tính đúng đắn của nó
Trang 332.1 Một số cơ chế chọn đường tối ưu
Hàm Fitness là một kỹ thuật tối ưu trong số nhiều kỹ thuật tối ưu hóanhư giải thuật di truyền, thuật toán bầy đàn, Hàm Fitness tìm kiếm yếu tốcác quan trọng nhất trong quá trình tối ưu tùy theo mục đích của nghiên cứu.Trong mạng MANET, yếu tố tối ưu phù hợp thường là năng lượng, khoảngcách, độ trễ và băng thông Điều này phù hợp với lý do thiết kế giao thức địnhtuyến, vì chúng nhằm mục đích nâng cao hiệu quả sử dụng tài nguyên mạng.Trong [12], hàm Fitness được sử dụng là một phần của thuật toán tối ưu bầyđàn (PSO) Nó được sử dụng với các mạng cảm biến không dây để tối ưu hóaviệc tìm kiếm các đường dự phòng trong trường hợp đường chính bị lỗi Cácyếu tố ảnh hưởng đến việc lựa chọn đường tối ưu là:
• Hàm ước lượng năng lượng còn lại cho mỗi nút
• Hàm ước lượng khoảng cách của các liên kết kết nối các nút lân cận
• Hàm ước lượng năng lượng tiêu thụ của các nút
• Hàm ước lượng độ trễ truyền thông của các nút
Thuật toán PSO được khởi tạo với một tập hợp các giải pháp ứng viênngẫu nhiên, được khái niệm dưới dạng các cá thể Mỗi cá thể được gán mộtvận tốc ngẫu nhiên và chuyển động lặp đi lặp lại trong không gian bài toán
Nó bị hút về những vị trí mà hàm Fitness của chính nó và hàm Fitness củatoàn bộ quần thể đạt giá trị tốt nhất Thuật toán PSO bao gồm một số tham số
có thể điều chỉnh có ảnh hưởng lớn đến hiệu quả thuật toán, thường được gọi
là sự cân bằng giữa khám phá - khai thác, với khái niệm: “Khám phá là khảnăng kiểm tra các vùng khác nhau trong không gian bài toán để xác định vị trítối ưu tốt, hy vọng là vùng rộng nhất Khai thác là khả năng tập trung tìmkiếm xung quanh một giải pháp ứng viên có triển vọng để xác định vị trí tối
ưu một cách chính xác Trong trường hợp này, các cá thể bị thu hút về khu