Hoàng Đăng Hải Học Viên: Lê Đăng Phong [1-22] Vũ Anh Tuấn



tải về 0.59 Mb.
trang3/19
Chuyển đổi dữ liệu13.08.2016
Kích0.59 Mb.
#17954
1   2   3   4   5   6   7   8   9   ...   19

1.4. Gói dữ liệu


Một gói trong NS được hình thành bởi một chồng các mào đầu, và một không gian dữ liệu như hình 10

Hình 10: Khuôn dạng gói trong NS

Khuôn dạng mào đầu gói được tạo ra ngay khi đối tượng Simulator được khởi tạo, bao gồm một tập tất cả các mào đầu đã đăng ký, chẳng hạn các mào đầu thường được sử dụng: IP, TCP, RTP và các mào đầu theo dõi. Điều này có nghĩa là cho dù một mào đầu cụ thể nào đó có được sử dụng hay không, thì một chồng gồm tất cả các mào đầu đã đăng ký vẫn được tạo ra khi một gói được cấp phát bởi một đối tượng Agent, và các đối tượng mạng có thể can thiệp tới bất kỳ mào đầu nào của gói.

Thường thì một gói chỉ có duy nhất một chồng mào đầu (và con trỏ không gian dữ liệu được để bằng null). Mặc dù một gói có thể mang dữ liệu thực tế (từ một ứng dụng nào đó) bằng việc cấp phát không gian dữ liệu, nhưng lại có rất ít ứng dụng và Agent hỗ trợ việc này, bởi vì việc tải dữ liệu thực trong môi trường mô phỏng là điều vô nghĩa. Tuy nhiên, nếu bạn muốn thực hiện một ứng dụng giao tiếp với một ứng dụng khác qua mạng, thì có thể bạn muốn sử dụng đặc tính này với một chút sửa đổi đối tượng Agent cơ sở.


2. Giao tiếp với bộ thông dịch: Liên kết OTcl


NS là một công cụ mô phỏng hướng đối tượng, bao gồm bản thân NS là một đối tượng được viết bằng C++ và một bộ thông dịch OTcl. NS hỗ trợ kiến trúc cây phân cấp theo lớp trong C++ (cây phân cấp biên dịch) và kiến trúc cây phân cấp theo lớp tương tự trong bộ thông dịch OTcl(cây phân cấp thông dịch). Hai cây phân cấp này có quan hệ chặt chẽ với nhau. Từ góc nhìn của người dùng, tồn tại mối quan hệ 1-1 giữa một lớp trong cây phân cấp thông dịch và một lớp trong cây phân cấp biên dịch. Gốc của cả hai cây phân cấp này là lớp TclObject. Người dùng sẽ tạo ra các đối tượng mô phỏng thông qua bộ thông dịch, những đối tượng này, thuộc vào cây phân cấp thông dịch, được khởi tạo trong bộ thông dịch và sẽ được ánh xạ sang một đối tượng tương ứng trong cây phân cấp biên dịch.

Cây phân cấp thông dịch được tự động thiết lập thông qua các hàm được định nghĩa trong lớp TclClass. Các đối tượng tạo bởi người dùng được ánh xạ thông qua các hàm được định nghĩa trong lớp TclObject. Ngoài ra vẫn có các cây phân cấp khác trong C++ và OTcl, đó là những cây thực sự không có quan hệ với nhau.


2.1 Các khái niệm


Trước hết ta tìm hiểu tại sao NS lại sử dụng hai ngôn ngữ C++ và OTcl. Đó là bởi vì, trong quá trình thực hiện mô phỏng có hai việc khác nhau cần phải thực hiện:

Một mặt, việc mô phỏng chi tiết cề các giao thức đòi hỏi phải sử dụng một ngôn ngữ lập trình hệ thống, nhằm xử lý hiệu quả với các dữ liệu dạng byte, các mào đầu gói hay thực hiện các giải thuật tính toán trên một số lượng lớn dữ liệu. Đối với những công việc như vậy thì tốc độ thực thi là rất quan trọng, còn thời gian thay đổi, nâng cấp (quá trình chạy mô phỏng, tìm lỗi, sửa lỗi, biên dịch và chạy lại) sẽ ít quan trọng hơn.

Mặt khác, một phần lớn các công việc nghiên cứu mạng lại liên quan đến những thay đổi nhỏ các tham số đầu vào, thay đổi cấu hình hay việc tìm hiểu nhanh chóng một số mô hình mạng nào đó. Trong trường hợp này, thời gian lặp lại (thay đổi tham số, cấu hình và chạy lại) lại trở nên quan trọng, còn thời gian thực thi sẽ ít quan trọng hơn.

NS đáp ứng cả hai yêu cầu trên bằng cách sử dụng hai ngôn ngữ C++ và OTcl. C++ có thời gian thực thi nhanh, nhưng chậm trong việc thay đổi nâng cấp, phù hợp với việc triển khai chi tiết các giao thức hay xử lý gói. OTcl chạy chậm hơn nhưng lại dễ dang thay đổi nhanh, phù hợp với việc thiết lập cấu hình mô phỏng. NS (thông qua tclcl) đưa ra cơ chế cho phép sử dụng các đối tượng và biến trong môi trường cả hai ngôn ngữ C++ và OTcl.

Mục đích sử dụng OTcl để:


  • Thực hiện thiết lập cấu hình mô phỏng và những công việc chỉ thực hiện một lần.

  • Thực hiện những việc có thể giải quyết bằng cách tổ hợp các các đối tượng C++

và sử dụng C++ để:

  • Thực hiện những công việc yêu cầu xử lý trên mỗi gói của luồng dữ liệu

  • Sửa đổi những lớp C++ có sẵn

Ví dụ: links là những đối tượng OTcl, được lắp ráp từ các đối tượng C++: trễ, xếp hàng, mất gói... Đối với những công việc yêu cầu xử lý chi tiết, cụ thể hơn (nguyên lý hàng đợi hay một mô hình trễ đặc thù nào đó chẳng hạn) thì chúng ta sẽ cần phải xây dựng một đối tượng C++ mới.

2.2 Tổng quan về mã lệnh


Chúng ta sử dụng thuật ngữ "bộ thông dịch" để nói đến thông dịch OTcl. Mã giao tiếp với bộ thông dịch được đặt trong thư mục /tclcl và toàn bộ phần còn lại mã mô phỏng được đặt trong thư mục NS-2.

Có một số lớp được định nghĩa trong thư mục /tclcl cho giao tiếp với bộ thông dịch OTcl, chúng ta chỉ xem xét 6 lớp trong số đó được sử dụng trong NS:



  • Lớp Tcl: chứa các hàm cho phép mã C++ truy nhập tới bộ thông dịch

  • Lớp TclObject: là lớp cơ sở của tất cả các đối tượng mô phỏng

  • Lớp TclClass: định nghĩa cây phân cấp thông dịch và các hàm cho phép người dùng khởi tạo các đối tượng TclObject

  • Lớp TclCommand: định nghĩa các câu lệnh thông dịch đơn giản

  • Lớp EmbeddedTcl: định nghĩa các hàm để nạp các câu lệnh có sẵn ở múc cao hơn, cho phép thiết lập câu hình mô phỏng dễ dàng hơn.

  • Lớp InstVar: định nghĩa các hàm cho phép truy nhập tới các biến thành viên C++.

Каталог: Hoc%20Tap -> Cong%20Nghe%20Wan
Hoc%20Tap -> Point to Point Protocol (ppp) ppp được xây dựng dựa trên nền tảng giao thức điều khiển truyền dữ liệu lớp cao (High-Level Data link Control (hdlc)) nó định ra các chuẩn cho việc truyền dữ liệu các giao diện dte và dce của mạng wan như V
Hoc%20Tap -> Cấu hình Application Port-Mapping với cbac mục tiêu: Cấu hình để router nhận ra các ứng dụng không sử dụng port chuẩn. Mô hình
Hoc%20Tap -> ĐẢng cộng sản việt nam đẢng ủy phưỜng 04
Hoc%20Tap -> CiR = Bc / Tc
Hoc%20Tap -> Mean command : ip ospf mtu-ignore Diagram : Problems
Hoc%20Tap -> R1# ip route 0 0 0 0 FastEthernet0/0 R2# show run
Cong%20Nghe%20Wan -> Câu hỏi về kết nối chi nhánh về Head Office dùng wan
Cong%20Nghe%20Wan -> 1/ Cáp đồng gshdsl
Cong%20Nghe%20Wan -> 1. xu hưỚng chuẩn hoá VÀ CẤu trúc giao thứC

tải về 0.59 Mb.

Chia sẻ với bạn bè của bạn:
1   2   3   4   5   6   7   8   9   ...   19




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương