Trong MANET mọi nút mạng đều có thể thực hiện chức năng của một router, chúng cộng tác với nhau, thực hiện chuyển tiếp các gói tin hộ các nút mạng khác nếu các nút mạng này không thể tru
Trang 1Mã số: 60 48 01.01
Trang 2Công trình được hoàn thành tại TRƯỜNG ĐẠI HỌC BÁCH KHOA
Người hướng dẫn khoa học: TS Huỳnh Hữu Hưng
Phản biện 1: TS Lê Thị Mỹ Hạnh
Phản biện 2: TS Nguyễn Hoài Đức
Luận văn được bảo vệ trước Hội đồng chấm Luận văn tốt nghiệp thạc sĩ ngành Khoa học máy tính họp tại Trường Đại học Bách khoa
vào ngày 07 tháng 7 năm 2018
Có thể tìm hiểu luận văn tại:
- Trung tâm Học liệu, Đại học Đà Nẵng tại Trường Đại học Bách khoa
- Thư viện Khoa Công nghệ thông tin, Trường Đại học Bách
khoa - ĐHĐN
Trang 3MỞ ĐẦU
1 Lý do chọn đề tài
Xã hội càng phát triển thì nhu cầu thông tin ngày càng tăng lên, người dùng cần nhu cầu kết nối thông tin mọi lúc mọi nơi Những năm gần đây công nghệ thông tin đã có những bước tiến vượt bậc và được áp dụng vào hầu hết các mặt của đời sống xã hội như kinh tế, giáo dục, y tế, quân sự Cùng với sự gia tăng nhanh chóng về
số lượng cũng như công nghệ thiết bị di động kéo theo nhu cầu của người sử dụng công nghệ không dây ngày càng đa dạng Để đáp ứng được xu thế đó, mạng thông tin không dây ngày nay có trọng trách lớn hơn là giải quyết vấn đề về lưu lượng đa phương tiện, tốc độ cao, chất lượng ngày càng phải tốt hơn Mặt khác, có nhiều giao thức định tuyến ra đời nhằm đáp ứng việc nâng cao chất lượng dịch vụ, từ đó
có những đánh giá hiệu năng
MANET (Mobile Wireless Adhoc Network) cho phép các máy tính di động thực hiện kết nối và truyền thông với nhau không cần dựa trên cơ sở hạ tầng mạng có dây Trong MANET mọi nút mạng đều có thể thực hiện chức năng của một router, chúng cộng tác với nhau, thực hiện chuyển tiếp các gói tin hộ các nút mạng khác nếu các nút mạng này không thể truyền trực tiếp với nút nhận Hiện nay, một
số giao thức định tuyến truyền thống không c n phù hợp với MANET mà được thay thế bằng các giao thức định tuyến theo yêu cầu, bảng ghi, kết hợp,
Vì vậy, luận văn này chúng tôi nghiên cứu mạng di động tùy biến không dây (Mobile Ad Hoc Network - MANET) trong đó mọi nút đều có khả năng di chuyển nên không có một nút mạng cố định nào thực hiện chức năng điều khiển trung tâm Vì vậy việc định tuyến cho dữ liệu truyền đi trên MANET đang là vấn đề được các nhà nghiên cứu quan tâm có ý nghĩa khoa học rất lớn trong việc điều khiển thông tin truyền tin mạng một cách sáng suốt và đáp ứng tốt
Trang 4với sự phát triển các dịch vụ truyền thông đa phương tiện hiện nay Trong các nghiên cứu gần đây các giao thức AODV, DSR và DSDR chỉ ra cách thức truyền gói tin đến các nút mạng trong mạng tùy biến không dây Nội dung chính của luận văn s nghiên cứu và đánh giá các giao thức định tuyến AODV, DSR và DSDR trên MANET Đồng thời đánh giá hiệu quả các quá trình truyền tin của các giao thức định tuyến đó trong MANET dựa trên phương pháp mô phỏng bằng NS-2 Từ đó đề xuất môi trường áp dụng tốt cho từng giao thức khác nhau, đảm bảo truyền thông tin cậy và hiệu quả Nội dung của luận văn gồm 3 chương:
Chương 1: Các giao thức định tuyến trong mạng MANET Chương 2 Giao thức định tuyến AODV, DSR, DSDV
Chương 3 Mô phỏng và đánh giá các giao thức AODV, DSR, DSDV
2 Mục tiêu và nhiệm vụ đề tài
2.2 Nhiệm vụ
Để đạt được mục tiêu trên, nhiệm vụ của tôi là nghiên cứu,
Trang 5thực hiện việc phân tích, so sánh và đánh giá các giao thức theo các tiêu chí về hiệu năng hoạt động đồng thời chỉ ra hướng cần cải tiến cho các giao thức này
3 Đối tượng và phạm vi nghiên cứu
3.1 Đối tượng nghiên cứu
- Các thuật toán trên MANET
4 Phương pháp nghiên cứu
Phương pháp nghiên cứu, chúng tôi đã sử dụng hai phương pháp chính là nghiên cứu lý thuyết và nghiên cứu thực nghiệm
4.1 Phương pháp nghiên cứu tài liệu
- Tìm hiểu, thu thập và phân tích các tài liệu liên quan đến đề tài
- Nghiên cứu các tài liệu mô tả đề tài và lựa chọn hướng giải quyết vấn đề
- Xây dựng chương trình để kiểm nghiệm kết quả
4.2 Phương pháp thực nghiệm
- Sử dụng chương trình mô phỏng trong môi trường NS-2
- Kiểm tra và thực nghiệm chương trình và đánh giá kết quả
5 Ý nghĩa khoa học và thực tiễn đề tài
Trang 67 Bố cục của luận văn
Báo cáo của luận văn dự kiến tổ chức thành 3 chương chính như sau:
MỞ ĐẦU
CHƯƠNG 1: CÁC GIAO THỨC ĐỊNH TUYẾN TRONG MANET
1.1 Giao thức định tuyến cổ điển
1.2 Giao thức định tuyến cho mạng MANET
1.3 So sánh các giao thức định tuyển MANET
3.2 Mô phỏng mạng không dây trong mội trường NS-2
3.3 Mô phỏng các giao thức định tuyến AODV, DSR, DSDV trên mạng MANET
3.4 Tiểu kết chương 3
KẾT LU N
TÀI LIỆU THAM KHẢO
Trang 7CHƯƠNG 1 CÁC GIAO THỨC ĐỊNH TUYẾN TRONG MANET
1.1 Giao thức định tuyến cổ điển
Giao thức cổ điển như định tuyến theo vector khoảng cách, định tuyến theo trạng thái liên kết đã được sử dụng từ rất lâu và đã trở nên rất quen thuộc Các giao thức này chỉ thích hợp cho cấu trúc mạng tĩnh, hoạt động hiệu quả ở mạng MANET có tốc độ di chuyển
thấp, cấu trúc mạng ít thay đổi
1.1.1 Định tuyến dựa trên trạng thái liên kết
1.1.2 Định tuyến dựa trên vector khoảng cách
1.2 Giao thức định tuyến cho mạng MANET
Các nút trong mạng MANET luôn di động và có nhiều đặc tính khác biệt nên không thể áp dụng các giao thức định tuyến thông thường Các mạng MANET thường được đặc trưng bởi một topo động do các nút di chuyển làm thay đổi vị trí vật lý của chúng Đối với mạng MANET, giao thức định tuyến động tỏ ra hiệu quả và phù hợp hơn các phương pháp định tuyến dựa trên vectơ khoảng cách và trạng thái liên kết Thách thức trong việc thiết kế các giao thức định
tuyến là khả năng cập nhật được mức di động của nút mạng
1.2.1 Các yêu cầu chung
Trang 81.2.2 Phân loại
1.3 So sánh các giao thức định tuyển MANET
Do tính phức tạp và quan trọng của giao thức định tuyến trong mạng MANET nên vấn đề so sánh và đánh giá giao thức định tuyến
đã được sự quan tâm của rất nhiều nhà nghiên cứu Việc so sánh và đánh giá tất cả các giao thức với tất cả các khía cạnh được coi là không có tính khả thi Vì vậy, một số hướng đánh giá giao thức đã được hình thành trong những năm gần đây và được chia thành hai hướng so sánh: các giao thức trong cùng một kiểu định tuyến và khác
kiểu
1.3.1 So sánh các giao thức định tuyến cùng kiểu
a So sánh các giao thức định tuyến theo bảng
Phương pháp cập nhật thông tin định tuyến
Trang 9Độ phức tạp giao thức
b So sánh các giao thức định tuyến theo yêu cầu
Lượng thông tin tiêu đề định tuyến
Cập nhật thông tin lỗi đường dẫn
Kỹ thuật chống lặp v ng
Hiệu năng giao thức
1.3.2 So sánh các giao thức định tuyến khác kiểu
có những so sánh đánh giá và đưa ra các nhận định về khả năng áp dụng của các giao thức trong từng môi trường mạng khác nhau
Trang 10CHƯƠNG 2 GIAO THỨC ĐỊNH TUYẾN AODV, DSR, DSDV
2.1 Giao thức định tuyến AODV
Giao thức định tuyến AODV dựa trên thuật toán vector khoảng cách nhưng thuộc loại định tuyến theo yêu cầu, nó chỉ yêu cầu đường định tuyến khi cần thiết Giao thức này không sử dụng cơ chế định tuyến nguồn và cũng không cần biết thông tin về các nút láng giềng của nó, AODV dựa trên các entry của bảng định tuyến để phát gói tin RREP về nút nguồn và nút nguồn dùng thông tin đó để gởi dữ liệu đến đích
2.1.1 Khám phá đường
Quá trình khám phá đường được phát động mỗi khi một nút nguồn cần truyền thông với một nút khác khi mà nó không có thông tin định tuyến về nút này trong bảng của nó Nút nguồn phát động khám phá đường bằng việc quảng bá gói Route Request (RREQ) tới các hàng xóm của nó
Quá trình gửi yêu cầu
Tuyến có sẵn sàng?
Chuyển tiếp bản tin
Lưu bản tin vào hàng đợi; phát động ROUTE REQUEST
Kết thúc
Trang 112.1.2 Thiết lập đường đảo chiều
Có hai số thứ tự (ngoại trừ số thứ tự của broadcast_id) trong
một RREQ đó là: Số thứ tự nguồn và số thứ tự đích mới nhất 2.1.3 Thiết lập đường chuyển tiếp
2.1.4 Quản lý bản định tuyến
2.1.5 Duy trì đường
Mỗi nút lưu giữ một danh sách chặng trước và danh sách cổng
ra Một danh sách chặng trước là một thiết lập các nút mà tuyến xuyên suốt qua nút giữ danh sách Danh sách cổng ra là thiết lập các chặng tiếp theo mà nút gửi qua Trong các mạng nơi mà tất cả các tuyến là song hướng, các danh sách này về cơ bản là như nhau
2.1.6 Xử lý lỗi, hết hạn và xóa bỏ tuyến
• Làm mất hiệu lực các tuyến hiện tại
• Liệt kê các đích bị ảnh hưởng
• Xác định rõ nếu có bất kì nút lân cận nào có thể bị ảnh hưởng
• Thực hiện một RERR tới các nút lân cận
2.1.7 Quản lý kết nối nội vùng
Các nút có thể học thông tin từ nút lân cận của chúng bằng một hoặc nhiều cách khác nhau Bất cứ khi nào một nút nhận được quảng bá từ một nút lân cận, nó cập nhật thông tin kết nối nội bộ để
đảm bảo đang liên kết với nút lân cận này
2.1.8 Sửa chữa nội vùng
2.2 Giao thức định tuyến DSR
2.2.1 Cơ chế tạo thông tin định tuyến (Route Discovery)
- Bước 1: Thông qua trường request ID, nó s kiểm tra xem đã
nhận gói tin này hay chưa? Nếu đã tồn tại thì nó s loại bỏ gói tin đó
và không xử lí gì thêm Ngược lại thì qua bước 2
- Bước 2: Nó kiểm tra trong Route Cache của nó có đường đi
đến node đích mà c n hiệu lực hay không? Nếu có đường đi đến đích thì nó s phản hồi lại cho node nguồn bằng gói Route Reply (RREP)
Trang 12chứa thông tin về đường đi đến đích và kết thúc tiến trình Ngược lại thì qua bước 3
- Bước 3: Nó kiểm tra địa chỉ đích cần tìm có trùng với điạ
chỉ của nó hay không? Nếu trùng thì nó gởi lại cho node nguồn gói Route Reply (RREP) chứa thông tin về đường đi đến đích và kết thúc tiến trình Ngược lại thì nó s phát broadcast gói tin RREQ đến các node láng giềng của nó Các nút láng giềng sau khi nhận gói tin RREQ s thực hiện việc kiểm tra thông tin (quay về bước 1)
2.2.2 Cơ chế duy trì thông tin định tuyến (Route Maintanance)
Route Maintanance cho phép các nút trong hệ thống mạng tự động bảo trì thông tin định tuyến trong Route Cache Trong giao thức định tuyến DSR, các node khi chuyển gói tin trên mạng đều phải có nhiệm vụ xác nhận rằng các gói tin đó đã chuyển đến node kế tiếp hay chưa (thông qua sự phản hồi thông tin của node nhận) ? Trong một trường hợp nào đó mà node đó phát hiện rằng gói tin không thể truyền đến node kế tiếp Nó s gởi gói Route Error (RERR) cho node nguồn để thông báo tình trạng hiện thời của liên kết và điạ chỉ của node kế tiếp mà không thể chuyển đi Khi node nguồn nhận được gói RERR, nó s xóa con đường đi mà liên kết bị hỏng trong Route cache
và tìm một đường đi khác mà nó biết trong route cache hoặc s khởi động một tiến trình route discovery mới nếu như không tồn tại đường
đi thích hợp trong Route cache
Trang 13được phát định kỳ hoặc ngay khi có các thay đổi xảy ra trong mạng
Để tránh lặp, định tuyến DSDV gắn số thứ tự chẵn cho mỗi đường
Số thứ tự được gắn bởi nút đích, được gửi trong gói tin cập nhập Số thứ tự này cho thấy độ mới của mỗi đường, đường nào có số thứ tự cao hơn được xem là tốt hơn
Số thứ tự này s tăng lên một đơn vị khi một nút mạng phát hiện đường đi tới đích có liên kết bị hỏng khi nó không nhận được cập nhật định kỳ Khi ấy, trong gói tin cập nhật kế tiếp, s quảng bá đường tới đích này có số chặng bằng vô hạn (Metric ~ ∞) và tăng thứ tự đường
Khi một nút nhận được thông tin mới về một tuyến đường, tuyến này s được chọn nếu nó có số thứ tự lớn hơn các số thứ tự khác của cùng tuyến đó trong bảng định tuyến Nếu nó có cùng số thứ tự, thì nó s được chọn nếu có số chặng tốt hơn
Để làm giảm kích thước gói tin cập nhập, DSDV sử dụng hai loại bản tin cập nhật là:
- Full dump: Cập nhật đầy đủ Bản tin điệp này bao gồm toàn
bộ thông tin định tuyến mà nút đó biết đến thời điểm đó
- Incremental dump: cập nhật bổ sung Bản tin này chỉ bao
gồm các thông tin về những thay đổi từ lần cập nhật đầy đủ gần nhất Hai loại bản tin cập nhật này được lưu vào hai bảng khác nhau, một bảng để chuyển tiếp các gói tin đầy đủ, một để phát các gói tin cập nhật Gói tin cập nhật đầy đủ chỉ được phát thường xuyên khi các nút thường xuyên di chuyển, khi mạng ít thay đổi, chủ yếu chỉ có gói tin cập nhật bổ sung được gửi đi
2.4 So sánh các giao thức định tuyến
Trang 14Thông tin cập nhật
Đối tượng cập nhật
Thông điệp lỗi đường(route error)
Thông điệp lỗi đường(route error)
Tất cả cả nút trong mạng
Một đường (đường đầu tiên nhận được bởi thông điệp trả lời)
Xóa đường, thông báo đến tất cả các nút nguồn bị ảnh hưởng DSR Unicast Phản ứng
theo yêu cầu, quảng bá thông điệp truy vấn
Nhiều đường Xóa đường,
thông báo cho nút nguồn
DSDV Quảng bá Trước, thực
hiện bởi nút
Một đường, đường đi ngắn nhất
Gửi các cập nhật
Trang 152.5 Tiểu kết chương 2
Định tuyến là một cơ chế không thể thiếu trong việc truyền tin trên các hệ thống mạng Trong chương này, tôi đã tập trung nghiên cứu các giao thức định tuyến AODV, DSR và DSDV trong mạng MANET Từ đó có những so sánh đánh giá và đưa ra các nhận định
về khả năng áp dụng của các giao thức trong từng môi trường mạng khác nhau
3.1 Môi trường mô phỏng NS-2
3.1.1 Giới thiệu về môi trường NS-2
3.1.2 Cài đặt NS-2 trên Window
3.2 Mô phỏng mạng không dây trong môi trường NS-2
3.2.1 Tạo MobileNode trong NS
3.2.2 Tạo sự hoạt động cho Node
3.2.3 Các thành phần cấu thành mạng trong một MobileNode
3.2.4 Các bước viết mã tcl để thực thi mô phỏng mạng wireless
3.3 Mô phỏng cho các giao thức định tuyến APDV, DSR, DSDV trên mạng MANET
Trang 163.3.1 Kết quả mô phỏng
Sử dụng file giao thức định tuyến: aodv.tcl; dsdv.tcl; dsr.tcl Kết quả cho ra hai file *.tr và *.nam
Ta thực hiện lệnh ns dsdv.tcl cho giao thức định tuyến DSDV
s cho ra file *.nam nhƣ sau:
Hình 3.3 Mô phỏng giao thức DSDV
Hình 3.4 Biểu đồ nhận gói tin giao thức DSDV
Trang 17Hình 3.5 Mô phỏng giao thức AODV
Hình 3.6 Biểu đồ nhận gói tin giao thức AODV
Hình 3.7 Mô phỏng giao thức DSR
Trang 18Hình 3.8 Biểu đồ nhận gói tin giao thức DSR
3.3.2 Mô phỏng di chuyển trong mạng
Bảng 3.1 Thông số mô phỏng di chuyển trong mạng
4 giá trị của thời gian tạm dừng 0, 30, 60, 120s
a T lệ g i tin nh n được
Trang 19Hình 3.9 Tỷ lệ gói tin nhận đƣợc DSR và AODV có khả năng chuyển tiếp gói tin tốt, trên 85 gói tin ở tốc độ cao và hầu hết khá ổn định Với DSDV tỷ lệ gói tin nhận đƣợc thấp hơn so với hai giao thức trên (70 ) khi thông số di chuyển cao Đồng thời, khi thông số di chuyển cao việc xây dựng bảng định tuyến đối với giao thức khá khó khăn, dẫn đến tỷ lệ nhận gói tin thấp nhƣ vậy Khi thông số di chuyển thấp, tỷ lệ gói tin nhận đƣợc của DSDV cũng khá cao, trên 90%
b T ễ t ung b nh đầu cuối – đầu cuối
Trang 20Độ trễ trung bình khi chuyển tiếp gói tin ở DSDV cao hơn khi
so sánh với cả DSR và AODV Lý do bởi vị DSR và AODV là hai giao thức định tuyến theo yêu cầu, nên nó dễ dàng thích nghi khi thông số di chuyển cao hoặc bình thường DSDV có độ trễ cao khi thông số di chuyển của mạng lớn Khi thông số di chuyển của mạng tăng, DSDV rất khó để có thể hội tụ, do đó độ trễ trung bình của giao thức tương đối cao (tỷ lệ chuyển tiếp gói tin chỉ khoảng 70 )
c Th ng lượng t ung b nh
Hình 3.11 Thông lượng trung bình Khi các node ở thông số di chuyển thấp, thông lượng trung bình của các giao thức cũng tương tự nhau Khi thông số di chuyển tăng lên, ta có thể thấy thông lượng của DSDV thấp hơn h n so với 2 giao thức kia, điều đó có thể giải thích vì sao tỷ lệ nhận gói tin của DSDV tại thời điểm này chỉ khoảng 70
3.4.2 Mô phỏng tải trong mạng
Khi đánh giá ảnh hưởng của tải trong mạng, ta có thể thay đổi kích thước gói hoặc số luồng CBR, tuy nhiên thay đổi tốc độ phản ánh chính xác hơn, ta sử dụng 3 tình huống sau:10 packet s, 15 packet/s, 20 packet/s