Luận văn Tìm hiểu ngôn ngữ mô hình hóa mạng và xây dựng bộ công cụ phát sinh Topology cho mạng

Ngày nay,mạng máy tính toàncầu hay còngọi làmạng Internet đang phát triển mộtcáchmạnh mẽvà rộng lớn, trởthành nơi trao đổi thông tinvà lưu trửdữ liệu vớikhốilượng khổng lồ. Các công ngh ệmới, các giao th ức mới nhanh chóng được ra đời và triển khai trênthựctế nhằm đáp ứng chosự phát triển nhưvũ bão, cũng như các đòi hỏingày càng kh ắc khecủa mạng máy tính tương lai. Internet giờ đây đã trở nên quá đồsộ và phứctạp đếnnỗi chúng ta khó có th ể hiểu được cách thức hoạt động và nguyêntắcvận hànhcủa nó trong thờikỳmới. Do đó, đốivới các nhà nghiêncứu và phát triển, việc kiểm trasự hoạt độngcủa các tínhnăngmới, các giao thứcmới (như các giao thức truyềndữ liệu, các giao thức định tuyến, )trước khi triển khaitrênthựctế làrất quantrọng vàcần thiết. Công việc này không những giúp giảmrủi ro và chi phí mà còn đảmbảosự chắc chắn và tính ổn địnhcủa việc triển khai các công nghệmới. Chính vì thế màmột môi trường giảlậpmạng hoàn chỉnh là côngcụ thiếtyếu cho việc kiểm tra, thử nghiệm các công nghệmới trên cácmạng lớn cócấu trúcphứctạp. Ngoàimục đích kinhtế thươngmại, các côngcụ giảlậpmạng còn góp phần rấtlớn trong việchổ trợ cho cácmục đíchhọctập và nghiêncứucủa sinh viên, giảng viên chuyên ngànhmạng máy tính ở các trường Đạihọc-Cao đẳng,cũng như các cá nhân, tổ chức đang làm việc trong lỉnh vực mạng. Hiện nay, các côngcụ và môi trường giảlậpmạng xuất hiện chưa nhiều trong khi nhucầucủa thị trường làrấtlớn, nhất là khimạng không dây ra đời và ngày càng trở nên phổ biến thì nhucầu này càng tr ở nêncấp thiết. Trong phạm vicủa đề tài luậnvăntốt nghiệp – “tìm hiểu ngôn ngữ mô hình hóamạng và xây dựngbộ côngcụ phát sinh Topology chomạng”, chúng tôisẽ nghiêncứu, tìm hiểu các ngôn ngữ mô hình hóamạng đang đượcsửdụng thôngdụng, đồng thời giới thiệu cácbộ côngcụ phát sinh Topology chomạng, vàcuối cùng là xây dựngchương trình ứng dụng phát sinh Topology chomạng không dây cókếthợp với mạng có dây.

pdf226 trang | Chia sẻ: tuandn | Lượt xem: 2045 | Lượt tải: 5download
Bạn đang xem trước 20 trang tài liệu Luận văn Tìm hiểu ngôn ngữ mô hình hóa mạng và xây dựng bộ công cụ phát sinh Topology cho mạng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Nhận xét của giáo viên hướng dẫn ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… Nhận xét của giáo viên phản biện ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… ………………………………………………………………… LỜI CẢM ƠN Chúng con xin tỏ lòng biết ơn sâu sắc đến ba mẹ và gia đình đã nuôi dưỡng, giáo dục và tạo điều kiện tốt nhất cho chúng con thực hiện đề tài này. Chúng em xin chân thành cảm ơn khoa Công nghệ thông tin và quý Thầy, Cô trong khoa, trường Đại học Khoa học Tự nhiên TpHCM đã tạo điều kiện cho chúng em học tập và thực hiện luận văn tốt nghiệp này. Đặc biệt, chúng em xin chân thành cảm ơn Thầy Phan Xuân Huy đã tận tình hướng dẫn, chỉ bảo chúng em trong quá trình thực hiện đề tài. Mặc dù chúng em đã cố gắng hoàn thành luận văn với tất cả sự nỗ lực của bản thân, nhưng luận văn chắc chắn không tránh khỏi những thiếu sót nhất định, kính mong sự cảm thông và tận tình chỉ bảo của quý Thầy, Cô và các bạn. Phú Quý&Quang Hiếu Tháng 7/2005 4 MỤC LỤC Trang Danh sách các bảng................................................................................................ 12 Danh sách các hình ................................................................................................ 14 Danh sách các từ viết tắt ........................................................................................ 18 Tóm tắt luận văn .................................................................................................... 22 Chương mở đầu ..................................................................................................... 24 1. Dẫn nhập................................................................................................. 24 2. Mục đích và ý nghĩa đề tài....................................................................... 25 3. Đối tượng và phạm vi nghiên cứu............................................................ 25 A. Ngôn ngữ mô hình hóa mạng và các môi trường giả lập mạng .......................... 27 Phần 1 SSFNet Models và Domain Modeling Language......................... 27 Chương 1 SSF và SSFNet Models .................................................... 28 1.1 SSF Model............................................................................. 28 1.1.1 Giới thiệu.................................................................... 28 1.1.2 Các đặc tính của SSF .................................................. 28 1.1.3 Các phiên bản cài đặt của SSF .................................... 28 1.1.4 Giới thiệu các lớp cơ sở của SSF................................. 29 1.1.5 Trình tự quá trình giả lập............................................. 34 1.2 SSFNet Model ....................................................................... 36 1.2.1 Giới thiệu.................................................................... 36 1.2.2 Tổ chức thư mục SSFNet ............................................ 38 1.2.3 Các giao thức hổ trợ trong SSFNet.............................. 38 1.2.4 Các gói thư viện trong SSFNet.................................... 39 1.2.4.1 SSF.OS................................................................. 39 1.2.4.2 SSF.Net ................................................................ 40 Chương 2 Domain Modeling Language ............................................ 42 2.1 Giới thiệu ngôn ngữ DML ..................................................... 42 5 2.1.1 DML là gì?.................................................................. 42 2.1.2 Cấu trúc ngữ pháp của DML....................................... 42 2.1.3 Quá trình biên dịch DML............................................ 44 2.2 Các bước cài đặt và biên dịch chương trình............................ 45 2.2.1 Môi trường Windows .................................................. 45 2.2.2 Môi trường Unix ......................................................... 48 2.3 Các đối tượng và thuộc tính của DML .................................. 48 2.3.1 Đối tượng Net ............................................................. 50 2.3.1.1 Định nghĩa và khai báo ......................................... 50 2.3.1.2 Các thuộc tính của Net.......................................... 52 2.3.2 Đối tượng Host ........................................................... 54 2.3.2.1 Định nghĩa và khai báo ......................................... 54 2.3.2.2 Các thuộc tính của Host ........................................ 54 2.3.3 Đối tượng Router ........................................................ 56 2.3.3.1 Định nghĩa và khai báo ......................................... 56 2.3.3.2 Các thuộc tính của Router ..................................... 57 2.3.4 Link ............................................................................ 58 2.3.4.1 Định nghĩa và khai báo ......................................... 58 2.3.4.2 Các thuộc tính của Link ........................................ 59 2.3.5 Traffic......................................................................... 60 2.3.5.1 Định nghĩa và khai báo ......................................... 60 2.3.5.2 Các thuộc tính của Traffic..................................... 60 2.3.6 Protocol ...................................................................... 60 2.3.6.1 Định nghĩa và khai báo ......................................... 60 2.3.6.2 Các thuộc tính của Protocol .................................. 61 2.3.6.3 Cấu hình một Host là FTP Client ......................... 65 2.3.6.4 Cấu hình một Host là FTP Server.......................... 66 2.4 Ciao thức BGP và SSFNet ................................................... 67 2.4.1 Giới thiêu về giao thức BGP ....................................... 67 6 2.4.2 Các yếu tố đánh giá BGP ............................................ 69 2.4.3 BGP trong SSFNet...................................................... 71 2.4.3.1 Các mô hình tùy chọn cấu hình BGP .................... 71 2.4.3.2 Tạo các sub-network và các AS ............................ 71 2.4.3.3 Chồng giao thức cấu hình cho Boundary Router ... 72 2.4.3.4 Các thuộc tính của BGP........................................ 73 2.5 Các từ khóa hổ trợ trong DML............................................... 75 2.5.1 Từ khóa _extend ......................................................... 75 2.5.2 Từ khóa _find ............................................................. 75 2.5.3 Từ khóa _dictionary .................................................... 76 2.5.4 Ví dụ minh họa ........................................................... 76 Phần 2 Công cụ giả lập mạng NS-2 và Ngôn ngữ TCL ........................... 78 Chương 3 Công cụ giả lập mạng NS-2 ............................................. 78 3.1 Tổng quan về NS-2 ............................................................. 78 3.2 Kiến trúc của NS-2 .............................................................. 78 3.3 Các thành phần cấu hình mạng trong NS-2 .......................... 81 3.3.1 Lớp Simulator ............................................................... 78 3.3.1.1 Khởi tạo đối tượng Simulator................................ 78 3.3.1.2 Các bộ lập lịch và các sự kiện .............................. 78 3.3.1.3 Các phương thức khác ......................................... 83 3.3.1.4 Tóm tắt ................................................................ 83 3.3.2 Cấu hình Node ............................................................. 84 3.3.2.1 Tạo Node ............................................................. 84 3.3.2.2 Cấu hình cho MobileNode ................................... 84 3.3.2.3 Cấu hình cho Base-Station Node .......................... 85 3.3.2.4 Bảng tóm tắt các tham số cấu hình cho Node ....... 85 3.3.3 Tạo liên kết cho các Node ............................................ 87 3.4 Các Agent trong NS-2 .......................................................... 88 3.4.1 Giới thiệu ..................................................................... 88 7 3.4.2 UDP Agent .................................................................. 89 3.4.3 TCP Agent ................................................................... 91 3.4.3.1 Một số TCP agent bên gởi ................................... 92 3.4.3.1.1 TCP Tahoe .................................................. 92 3.4.3.1.2 TCP Reno .................................................... 93 3.4.3.1.3 TCP Newreno .............................................. 94 3.4.3.2 Một số TCP agent bên nhận ................................. 94 3.4.3.3 TCP agent hai chiều ............................................. 95 3.4.4 Các ví dụ minh họa ...................................................... 96 3.5 Ứng dụng trong NS-2 ........................................................... 97 3.5.1 Lớp Application ........................................................... 97 3.5.2 Phân loại ứng dụng ...................................................... 97 3.5.2.1 Ứng dụng phát sinh lưu lượng mạng .................... 98 3.5.2.2 Ứng dụng giả lập mạng ........................................ 99 3.5.3 Các ví dụ minh họa .................................................... 100 3.6 Mạng không dây trong NS-2 .............................................. 101 3.6.1 Các thành phần cấu hình của một MobileNode .......... 101 3.6.2 Tạo mô hình mạng không dây trong NS-2 .................. 101 3.6.3 Tạo kịch bản chuyển động cho các Node .................... 103 3.6.4 Giao thức định tuyến cho mạng không dây ................. 104 3.6.4.1 Giới thiệu tổng quan .......................................... 104 3.6.4.2 Giao thức định tuyến TORA .............................. 106 3.6.4.3 Giao thức định tuyến DSDV .............................. 108 3.6.4.4 Giao thức định tuyến DSR ................................. 110 3.6.4.5 Giao thức định tuyến AODV ............................. 112 Chương 4 Ngôn ngữ TCL ................................................................ 117 4.1 Tổng quan và một số đặc điểm của ngôn ngữ TCL ............. 117 4.2 Cú pháp của TCL ............................................................... 118 4.2.1 Khai báo biến và mảng ............................................... 118 8 4.2.2 Các biểu thức toán học trong TCL .............................. 119 4.2.3 Thay thế và lập nhóm ................................................. 120 4.2.3.1 Thay thế ............................................................. 120 4.2.3.2 Lập nhóm ........................................................... 121 4.2.4 Cấu trúc điều khiển .................................................... 121 4.2.4.1 Điều kiện if ........................................................ 121 4.2.4.2 Vòng lặp for ....................................................... 121 4.2.4.3 Vòng lặp while .................................................. 122 4.2.4.4 Thủ tục .............................................................. 122 4.2.4.5 Tập lệnh của TCL .............................................. 124 4.2.4.5.1 Nhóm lệnh điều khiển ................................ 124 4.2.4.5.2 Nhóm lệnh sự kiện ..................................... 125 4.2.4.5.3 Nhóm lệnh về file ...................................... 125 4.2.4.5.4 Nhóm lệnh trên danh sách ......................... 126 4.2.4.5.5 Nhóm lệnh trên xử lý chuỗi ....................... 127 4.2.4.5.6 Nhóm lệnh trên xử lý biến ......................... 127 4.2.4.5.7 Nhóm lệnh về thời gian ............................. 128 Chương 5 Ngôn ngữ hướng đối tượng Otcl ...................................... 133 5.1 Otcl là ngôn ngữ hướng đối tượng của TCL ....................... 133 5.2 Lớp và đối tượng trong Otcl ............................................... 133 5.3 Phương thức khởi tạo và hủy cho lớp ................................. 133 5.4 Khai báo các phương thức cho lớp ..................................... 134 5.5 Khai báo các thành phần dữ liệu ......................................... 135 B. Giới thiệu các công cụ phát sinh Topology mạng ............................................ 137 Phần 3 Các công cụ hổ trợ ngôn ngữ DML ........................................... 137 Chương 6 DMLEditor..................................................................... 138 6.1 Giới thiệu............................................................................. 138 6.2 Các tính năng nổi bật của DMLEditor.................................. 138 6.3 Các bước cài đặt DMLEditor ............................................... 138 9 6.4 Quá trình thiết kế trên DMLEditor....................................... 139 Chương 7 RacewayViewer ............................................................. 143 7.1 Giới thiệu............................................................................. 143 7.2 Các tính năng nổi bật của RacewayViewer .......................... 143 7.3 Các bước cài đặt RacewayViewer........................................ 143 7.4 Quá trình thiết kế trên RacewayViewer................................ 144 Chương 8 NetViewer ...................................................................... 148 8.1 Giới thiệu............................................................................. 148 8.2 Các tính năng nổi bật của NetViewer ................................... 148 8.3 Các bước cài đặt NetViewer ................................................ 148 8.4 Quá trình thiết kế trên NetViewer ........................................ 149 Phần 4 Các công cụ hổ trợ ngôn ngữ TCL ............................................ 155 Chương 9 BRITE............................................................................ 155 9.1 Thiết kế và cài đặt BRITE .................................................. 155 9.1.1 Download và cài đặt BRITE........................................ 156 9.1.2 Giao diện bằng GUI .................................................... 158 9.1.3 Giao diện bằng dòng lệnh............................................ 158 9.1.4 Các file cấu hình ......................................................... 159 9.1.5 Định dạng output của BRITE ...................................... 160 9.2 Kiến trúc của BRITE .......................................................... 162 9.2.1 Qui trình làm viêc của BRITE .................................... 162 9.2.2 Kiến trúc của BRITE .................................................. 162 9.2.2.1 Lớp Model ......................................................... 163 9.2.2.1.1 Mô hình đẳng cấp Router-level .................. 164 9.2.2.1.2 Mô hình đẳng cấp AS-level ....................... 166 9.2.2.1.3 Mô hình phân cấp top-down ...................... 166 9.2.2.1.4 Mô hình phân cấp botton-up ...................... 167 9.2.2.1.5 Mô hình Imported File ............................... 167 9.3 Các tham số trong giao diện BRITE ................................... 168 10 9.4 Hạn chế của BRITE ............................................................ 170 Chương 10 NS-2 và NAM ................................................................ 171 10.1 Cài đặt NS-2 và NAM trên Window.................................. 171 10.1.1 Download NS-2 và NAM ......................................... 171 10.1.2 Cài đặt NS-2 ............................................................ 171 10.1.3 Chạy NS-2 và NAM ................................................. 172 10.2 Cài đặt NS-2 và NAM trên Linx ....................................... 173 10.2.1 Download NS-2 và NAM ......................................... 173 10.2 .2 Cài đặt ..................................................................... 174 10.2.3 Chạy NS-2 và NAM ................................................. 175 Phần 5 Các công cụ khác ...................................................................... 176 Chương 11 Otter ............................................................................... 176 11.1 Giới thiệu .......................................................................... 176 11.2 Các tính năng nổi bật của Otter.......................................... 176 11.3 Các bước cài đặt Otter ....................................................... 177 11.4 Quá trình thiết kế trên Otter............................................... 178 C. Xây dựng chương trình ứng dụng BRITE........................................................ 182 Phần 6 Cơ sở lý thuyết .......................................................................... 182 Chương 12 Lý thuyết cơ bản về mạng không dây ............................. 183 12.1 Giới thiệu ......................................................................... 183 12.1.1 Mạng không dây cố định .......................................... 184 12.2.2 Mạng không dây di động .......................................... 185 12.2 Mạng MANET ................................................................. 185 12.2.1 Tổng quan về mạng MANET ................................... 185 12.2.2 Phân loại mạng MANET theo cách thức định tuyến . 186 12.2.2.1 Mạng MANET định tuyến Single-hop ............ 186 12.2.2.2 Mạng MANET định tuyến Multi-hop ............... 186 12.2.2.3 Mô hình MANET định tuyến MobileMulti-hop 187 12.2.3 Phân loại mạng MANET theo chức năng của Node .. 187 11 12.2.3.1 Mạng MANET đẳng cấp .................................. 187 12.2.3.2 Mạng MANET phân cấp .................................. 187 12.2.3.3 Mạng MANET kết hợp .................................... 188 Phần 7 Xây dựng ứng dụng................................................................... 190 Chương 13 Giới thiệu ứng dụng ........................................................ 190 13.1 Giới thiệu ......................................................................... 190 13.2 Ngôn ngữ cài đặt và tính tương thích ................................ 190 13.3 Các mô hình mạng trong ứng dụng ................................... 191 13.3.1 Mạng MANET ......................................................... 191 13.3.2 Wired-cum-Wireless ................................................ 191 Chương 14 Các chức năng chính của ứng dụng................................. 192 14.1 Giới thiệu các lớp trong module wireless .......................... 192 14.2 Giao diện chính module Wireless ..................................... 193 14.3 Cấu hình các wireless node ............................................... 196 14.4 Tạo kịch bản chuyển động ................................................ 199 14.4.1 Tạo bằng tay ....................................................... 201 14.4.2 Tạo ngẫu nhiên ................................................... 202 14.4.3 Ý nghĩa của tạo bằng tay và ngẫu nhiên ............... 202 14.5 Tạo kịch bản ứng dụng ..................................................... 202 14.6 Giải thuật phát sinh số Domain và Cluster ......................... 204 14.7 Tiến hành giả lập ............................................................... 206 14.7.1 Các bước xây dựng kịch bản và biên dịch ................. 206 14.7.2 Các ví d