ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN ĐIỆN TỬ - VIỄN THÔNG
Báo cáo bài tập lớn
Cơ sở truyền số liệu
Đề bài số 4
Giảng viên hướng dẫn: TS. Phạm Văn Tiến
Nhóm sinh viên thực hiện:
Lê Ngọc Tuấn ĐTTT2 – K56 20112425
Lê Thị Thúy CNĐTTT1 – K57 20146907
Nguyễn Đăng Việt CNĐTTT2 – K57 20125871
Hoàng Văn Tùng ĐTTT2 – K56 20112134
Đàm Minh Tiến CNĐTTT1 – K57 20146908
Hà Nội, 11-2014
Mục lục
Danh mục hình ảnh
I. Đề bài và yêu cầu
Cho mạng thông tin có cấu hình như bên dưới. Nút s1 và s2 tương ứng tạo ra các
nguồn lưu lượng tcp1và udp2 gửi gói tin đến nút d dựa trên giao thức truyền tương
ứng là TCP và UDP. Các gói được phát sinh gói tại các nguồn này một cách đều đặn
với tốc độ tương ứng là 400 và 600 gói/s, chiều dài gói là 1200byte. Nút s3 có nguồn
lưu lượng UDP phát ra các gói gửi tới nút d3 với chiều dài là 1024byte, số lượng gói
tuân theo phân bố Poisson, tốc độ 500 gói/s. Các hàng đợi gắn với các liên kết sử
dụng cơ chế SFQ. Biết rằng nguồn s3 cả 3 nguồn cùng được kích hoạt từ đầu, nhưng
nguồn s3 cứ hoạt động được 10s thì lại ngừng nghỉ 5s rồi lại hoạt động trở lại.
1. Viết kịch bản và chạy mô phỏng hệ thống thông tin nói trên trong khoảng thời gian
không ngắn hơn 4 phút.
2. Thu thập và vẽ đồ thị trễ xếp hàng các gói trên các hàng đợi của các nút mạng. Chu
kỳ thu thập số liệu không dài hơn 10s.
3. Trong một phiên mô phỏng, giả thiết ban đầu bộ đệm của các nút là 50 gói, cứ sau
20 giây tham số này lại giảm đi 20% giá trị. Hãy vẽ đồ thị biểu diễn tỉ lệ mất gói tại
một máy chủ.
2. Các phương thức định tuyến
NS2 thực thi ba chính sách định tuyến: static routing (định tuyến tĩnh), session routing
(định tuyến phiên), DV routing (định tuyến véc tơ khoảng cách) và Link-state (trạng
thái liên kết).
Dùng phương thức rtproto trong lớp Simulator để xác định chính sách định tuyến
được dùng.
$ns rtproto <type>
type: Static, Session, DV, cost, multicast-path, LS.
- Link-state : sử dụng thuật toán SPF (shortest path first) cập nhật các thông tin về
cơ chế định tuyến cho các node trên hệ thống mạng. Mỗi node sẽ gửi bảng mô tả
trạng thái của các liên kết riêng của mình lên mạng. Chỉ các thay đổi mới được gửi
đi. Ưu điểm là tốc độ cao, không chiếm dụng băng thông nhiều như thuật toán DV
tuy nhiên thực hiện phức tạp. Đối với mô hình lớn thuật toán này có thể làm tăng
độ trễ truyền gói tin.
- Distance vector : (còn gọi là thuật toán Bellman-Ford) gửi bảng định tuyến tới các
node lân cận theo một chu kỳ nhất định. Ưu điểm là dễ thực hiện, dễ kiểm tra. Tuy
nhiên thời gian cập nhật lâu, chiếm dụng băng thông lớn trên mạng.
- - Static routing : Phương thức tính toán định tuyến Static là phương thức tính toán
đường truyền mặc định trong NS-2. Phương thức này sử dụng thuật toán SPF.
Thuật toán tính đường truyền chạy chính xác một lần tại lúc khởi động mô phỏng.
Khi cấu trúc mạng thay đổi phải cập nhật lại, do đó chỉ thích hợp trong hệ thống
đơn giản, có kết nối đơn và đường truyền dữ liệu đã được xác định trước.
- - Session: Sử dụng thuật toán SPF để tính toán tối ưu đường truyền, bảng định
tuyến sẽ được cập nhật ngay lập tức khi topo mạng có sự thay đổi.
3. Cơ chế SFQ (Stochastic Fairness Queuing)
SFQ là cơ chế xếp hàng công bằng với xác suất ngẫu nhiên
Quy tắc sắp xếp hàng đợi này được thiết kế để đảm bảo rằng mỗi luồng đều có
được sự công bằng khi truy cập vào mạng và để ngăn chặn các luồng có tốc độ truyền
dữ liệu lớn chiếm dụng băng thông.
(trong nam hoặc graph) đã được định nghĩa từ trước. Ví dụ:
set nf [open out.nam w]n
puts $nf “$a”
1.4. Lệnh if
Cấu trúc lệnh if cũng giống như trong c++:
if{expression} {
<execute some comands>
} else{
<execute some comand>
}
1.5. Vòng lặp for
for{ set i 0}{$i < 5} {incr i}{
<execute some comands>
}
2. Tổng quan về nam
NAM là công cụ hiển thị trong NS2 nó đưa ra màn hình sơ đồ mạng chúng ta cần
đánh giá.
3. Tổng quan về awk
AWK là một ngôn ngữ lập trình được thiết kế để xử lý các dữ liệu dạng text trong
file hoặc trong dòng thông tin. Mỗi dòng text (trong file) được AWK xử lý như một
bản ghi. Các cột text đóng vai trò như các trường dữ liệu. Với tên cột $1, $2, tương
ứng với cột 1, cột 2,… trong file.
AWK có thể xử lý với cấu trúc điều kiện (IF) và vòng lặp (FOR), nhờ AWK người
dùng không cần phải lập trình riêng bằng các ngôn ngữ như C, C#, ASM,… để có thể
tách dữ liệu từ file text ra.
Cấu trúc file AWK
BEGIN{[khai báo biến];}
{
Các câu lệnh ;
}
Src
No
de
Dst
No
de
Pac
ket
typ
e
Pac
ket
size
(FL
AG
)
-
Col
or
Src
Por
t
Dst
Por
t
Seq
uen
ce
Nu
- Gói tin từ S1 đi qua node_1, node_3, node_4, node_5 đến nút d
- Gói tin từ S2 đi qua node_2, node_3, node_4, node_5 đến nút d
- Gói tin từ S3 đi qua node_3, node_4 đến d3
2. Vẽ đồ thị trễ xếp hàng
Hình : Trễ xếp hàng tại kiên kết giữa node_1 và node_3
Hình 3: Trễ xếp hàng tại kiên kết giữa node_2 và node_3
Hình :Trễ xếp hàng tại kiên kết giữa node_3 và node_4
Hình : Trễ xếp hàng tại kiên kết giữa node_4 và node_5
Nhận xét:
- Ờ đồ thị trễ xếp hàng tại liên kết giữa node_3 và node_4 ta thấy có những khoảng
thời gian thời gian trễ xếp hàng giảm do khi đó nguồn s3 ngừng hoạt động nên
lượng gói tin đẩy đến liên kết này giảm dẫn đến trễ xếp hàng giảm.
- Trễ xếp hàng tại các liên kết giữa máy tính và bộ định tuyến là không đáng kể do
băng thông của các liên kết này là 100MB, rất lớn so với tốc độ luồng dữ liệu.
3. Vẽ đồ thị tỉ lệ mất gói tại các nút
Hình : Tỉ lệ mất gói tại node_2(%)
Hình : Tỉ lệ mất gói tại node_3(%)
Hình : Tỉ lệ mất gói tại node_4(%)
Nhận xét:
Qua quan sát quá trình mô phỏng em nhận thấy chỉ xảy ra hiện tượng mất gói tại các
node_2, node_3, node_4 với các gói tin từ các nguồn S1 và S2.
- Tại node_2, node_2 được nối với một luồng UDP có tốc độ truyền tin rất nhanh,
tốc độ sinh gói của nguồn là 600 gói/s vượt quá băng thông của đường truyền là
3Mbps nên xảy ra hiện tượng mất gói. Tỉ lệ mất gói khoảng 40%.
- Tại node_3 có 3 luồng đến, băng thông ở đây là 4Mbps. Tỉ lệ mất gói ở đây tương
đối thấp do băng thông lớn và hiện tượng mất gói chỉ xảy ra với gói tin từ nguồn
S2 do tốc độ truyền của luồng TCP từ nguồn S1 và UDP từ nguồn S3 thấp hơn và
cơ chế SFQ. Nguồn S3 cứ hoạt đông được 10 giây lại nghỉ 5 giây nên dẫn tỉ lệ
mất gói có lúc giảm xuống 0 như trên đồ thị vì khi nguồn S3 ngừng hoạt động thì
băng thông đủ đến truyền tất cả các gói tin.
thành công hơn nữa trong đào tạo và nghiên cứu khoa học.
Tài liệu tham khảo
[1] />[2] />[3] NS Simulator for Beginners
[4] Slide bài giảng Cơ sở truyền số liệu của Thầy Phạm Văn Tiến