4.2.2.1 Định nghĩa các chính sách
Tất cả các luồng có cùng địa chỉ nguồn và đích đều lệ thuộc vào một chính sách chung. Chính sách quy định loại bộ đo đƣợc dùng để đo các tham số lƣu lƣợng đầu vào liên quan.
Một bảng các chính sách đƣợc dùng trong NS2 để lƣu trữ loại chính sách của mỗi luồng. Bảng này bao gồm:
1) Địa chỉ nút nguồn 2) Địa chỉ nút đích 3) Loại chính sách 4) Loại thiết bị đo 5) Điểm mã khởi đầu
6) CIR (tốc độ thông tin cho phép) 7) CBS (kích thƣớc cụm cho phép)
8) C bucket (kích thƣớc hiện thời của dung lƣợng cho phép) 9) EBS (kích thƣớc cụm vƣợt mức)
10) E bucket (kích thƣớc hiện thời của dung lƣợng vƣợt quá) 11) PIR (tốc độ thông tin tối đa)
12) PBS (kích thƣớc cụm tối đa)
13) P bucket (kích thƣớc hiện thời của dung lƣợng tối đa) 14) Thời gian đến của gói tin cuối
15) Tốc độ gửi tin trung bình
16) Độ dài cửa sổ TSW (TSW là chính sách dựa trên tốc độ truyền trung bình là lấy bình quân theo kích thƣớc cửa sổ dữ liệu tính theo giây). Giá trị mặc định là 1 giây (1s).
Mỗi loại chính sách sau đây định bộ đo mà nó sử dụng:
1) TSW2CM (TSW2CMPolicer): Dùng CIR và 2 thứ tự ƣu tiên hủy gói. 2) TSW3CM (TSW3CMPolicer): Dùng một CIR, một PIR và 3 thứ tự ƣu tiên
hủy gói. Mức ƣu tiên trung bình đƣợc dùng theo xác suất khi CIR vƣợt mức cho phép.
3) Token Bucket (TokenBucketPolicer): Dùng CIR; CBS và 2 thứ tự ƣu tiên hủy gói.
4) Single Rate Three Color Marker (srTCMPolicer): Dùng CIR, CBS, EBS và PBS để chọn từ 3 drop precedences.
5) Two Rate Three Color Marker (trTCMPolicer): Dùng CIR, CBS, EBS và PBS để chọn từ 3 drop precedences.
6) NullPolicer: không rút ngắn các gói tin bất kỳ
Một bảng chính sách định nghĩa cho mỗi loại chính sách điểm mã khởi đầu cũng nhƣ là một hay hai điểm mã giảm mức. Điểm mã khởi đầu thƣờng đƣợc gọi là “green code” và điểm mã giảm mức thấp nhất là “red”. Nếu có một điểm mã khác ở giữa thì nó là “yellow”.
4.2.2.2 Kịch bản mô phỏng 1
Trong kết nối TCP, việc mất một số đoạn gây ảnh hƣởng nhiều hơn lên hiệu năng của phiên kết nối so với các đoạn khác. Thực hiện ƣu tiên dùng mô hình DiffServ sẽ làm hiệu suất kết nối TCP đƣợc cải thiện đáng kể.
Mục đích của việc mô phỏng dùng mô hình DiffServ để chỉ ra rằng có thể đánh dấu ƣu tiên các gói tin nhạy cảm mà không cần bất kỳ thông tin nào của lớp vận chuyển, do đó sẽ đơn giản hóa việc thực hiện đánh dấu ƣu tiên các gói TCP.
Yêu cầu bài toán
Mở đầu cho phân loại dịch vụ: Hai mức ƣu tiên đƣợc định nghĩa. Mức cao hơn “gói tin vào” hay “green packets” và mức thấp hơn “gói tin ra” hay “red packets”. Chúng ta tập chung vào chính sách đơn giản nhất có sẵn trong NS: cửa sổ thời gian trƣợt (5 chính sách: TSW2CM, TSW3CM,...). Một tốc độ cho phép CIR đƣợc định nghĩa cho mỗi router biên. Miễn là tốc độ kết nối dƣới mức CIR thì tất cả gói tin đƣợc đánh dấu là mức ƣu tiên cao. Khi tốc độ vƣợt mức CIR thì các gói tin đƣợc đánh dấu theo xác suất bình quân, mà tốc độ của gói tin đƣợc đánh dấu với mức ƣu tiên cao cùng với CIR. Tốc độ truyền đƣợc tính theo tốc độ trung bình trên “cửa sổ TSW”; trong phần mô phỏng thì khoảng thời gian cửa sổ là 20 s. Thời gian mô phỏng kéo dài 60s.
Thực hiện việc thay đổi CIR tại nút biên nguồn và nghiên cứu ảnh hƣởng của nó đến hiệu suất.
Topo mạng đơn giản với một nút thắt cổ chai đƣợc cấu hình nhƣ sau:
Hình 4.6. Mô hình mạng 1 S0 E0 Sn E E1 D En Core S1 En-1 Sn-1
Mỗi nút nguồn đƣợc kết nối tới nút biên tƣơng ứng nơi lƣu lƣợng đƣợc đánh dấu theo các tham số đƣợc chỉ rõ ở dƣới. Router biên đƣợc kết nối tới router lõi tại nút thắt cổ chai và sau đó qua một router khác để tới đích.
Topo khảo sát với 15 nút nguồn, mỗi nút nguồn tạo ra các kết nối TCP. Mô phỏng với mạng LAN (có trễ truyền dẫn nhỏ) với đƣờng truyền hoàn toàn đối xứng.
Đánh giá hiệu năng mạng DiffServ với các tham số định trƣớc:
- Đƣờng truyền giữa nút biên và nút nguồn tƣơng ứng có độ trễ 0.01ms và băng thông 6Mbps.
- Đƣờng truyền giữa nút biên và nút đích tƣơng ứng có độ trễ 0.01ms và băng thông 10Mbps.
- Đƣờng truyền giữa nút trung tâm và nút biên gắn với nút nguồn có độ trễ 0.1ms và băng thông 6Mbps.
- Đƣờng truyền giữa nút trung tâm và nút biên gắn với nút đích có độ trễ 1ms và băng thông 10Mbps.
Mô hình lưu lượng: Một file đƣợc truyền có phân bố xác suất Pareto với tham
số shape là 1.25 và kích thƣớc trung bình 10kbytes. File đƣợc truyền đến mỗi nút nguồn theo tiến trình Poisson với tốc độ trung bình 5 file/giây. Nhiều phiên truyền từ cùng 1 nút nguồn có thể đƣợc kích hoạt đồng thời.
Tham số quản lý việc xếp hàng: Hàng đợi đƣợc xây dựng tại router nút cổ chai,
chọn kích thƣớc hàng đợi là 100 gói tin. Các tham số quản lý hàng đợi tại các nút khác không ảnh hƣởng đến kết quả.
Trong hàng đợi thắt cổ chai tại nút trung tâm, quản lý hàng đợi multi-RED dùng phiên bản RIO-D (chọn tham số giống nhau cho cả 2 mức ƣu tiên). Chọn tham số giống nhau với cả hai mức ƣu tiên mục đích là để tạo ra các điều kiện cho phép nghiên cứu ảnh hƣởng của DiffServ khi giảm xác suất mất các đoạn dễ bị mất và tác động của nó đến hiệu suất của hoạt động trên đƣờng truyền TCP (độ trễ, thông lƣợng).
set cir0 100000; # policing parameter set cir1 100000; # policing parameter
Kích thƣớc hàng đợi trung bình đƣợc giám sát, với mỗi loại gói tin (dùng hàm mũ chuẩn lấy trung bình với tham số wq = 0.01). Các gói tin có màu cho trƣớc bắt đầu bị loại bỏ khi số hàng đợi trung bình của gói tin vƣợt quá giá trị minw (chọn minw = 15). Xác suất hủy gói tăng tuyến tính với kích thƣớc hàng đợi trung bình cho đến khi đạt tới giá trị maxw = 45, trong đó xác suất hủy gói lấy giá trị maxp = 0.5. Khi vƣợt quá giá trị này thì xác suất hủy gói bằng 1.
Tốc độ đến của các bít tại nút cổ chai là: 4 15*1.04*10 *8
5.672
Kết quả trên thu đƣợc nhƣ sau: Một gói tin kích thƣớc trung bình 1040 bytes trong 1000 bytes là dữ liệu và 40 bytes là mào đầu phụ. Một file ftp trung bình là 104 bytes dữ liệu có nghĩa là tổng kích thƣớc trung bình khoảng 1.04*104*8 bits. Kết quả này thu đƣợc khi nhân số nút nguồn và chia cho thời gian trung bình giữa các file đến tại 1 nút.
Kịch bản mô phỏng nhiều nguồn và mỗi nguồn tạo nhiều phiên TCP chia sẻ cùng một đƣờng truyền nút cổ chai và một đích. Thiết đặt các tham số:
set cir0 100000; #policing parameter set cir1 100000; #policing parameter set pktSize 1000
set NodeNb 15; # số nút nguồn
set NumberFlows 360; # số luồng trên một nút nguồn set sduration 60; # thời gian mô phỏng
Định nghĩa thời gian bắt đầu truyền và kích thƣớc gói tin đến sau tiến trình Poissoon:
For {set i 1} {$i<=$NodeNb} {incr i} { Set t [$ns now]
For {set i 1} {$i<=$NumberFlows} {incr i} { $tcpsrc($i,$j) set sess $j
$tcpsrc($i,$j) set node $i Set t [expr $t + [$RV value]] $tcpsrc($i,$j) set starts $t
$tcpsrc($i,$j) set size [expr [$RVSize value]]
$ns at [$tcpsrc($i,$j) set starts] $ftp($i,$j) send [$tcpsrc($i,$j) set size]
$ns at [$tcpsrc($i,$j) set starts] countFlows $i 1 }}
For {set j 1} {$j<=NodeNb} {incr j} { Set Cnts($j) 0
Bảng kết quả thu đƣợc khi chạy mô phỏng:
Trong đó:
- TotPkts: Số gói tin gửi đến core router, yêu cầu router đƣa vào bộ đệm rồi phân tuyến.
- TxPkts: Số gói tin core router xử lý đƣợc, tức là phân tuyến, chuyển tiếp cho edge router thành công.
- edrops: Số gói tin router hủy sớm theo cơ chế của RED, nghĩa là gói tin gửi đến router, router phân tích các hàng đợi của nó và hủy ngay, không lƣu trữ vào hàng đợi.
- ldrops: Số gói tin router hủy do liên kết quá tải, nghĩa là gói tin đã đƣợc đƣa vào hàng đợi, nhƣng sau đó vẫn không thể chuyển tiếp đƣợc do liên kết bận.
Tỷ lệ phân tuyến thành công của core router 0.987%, cho biết hiệu suất hoạt động của mạng là tƣơng đối cao.
Số gói tin dữ liệu đƣợc truyền thành công trong mô phỏng không phụ thuộc vào tốc độ CIR, với độ lệch chuẩn là 395 gói tin. Xác suất mất gói thấp dẫn đến thông lƣợng cũng thấp, nó luôn không đổi giống nhƣ một hàm của CIR.
Trong mô phỏng, một file có kích thƣớc trung bình 10Kbytes, là kích thƣớc đã đƣợc tính trung bình trên mạng Internet. Việc gói tin bị mất sẽ làm giảm hiệu suất hoạt động của mạng, vì vậy loại trừ việc mất gói tin sẽ cải thiện đáng kể hiệu suất.
4.2.2.3 Kịch bản mô phỏng 2
Yêu cầu bài toán
Mô phỏng mỗi chính sách làm thay đổi CBR rate để xem core router chịu tải đến đâu, khi nào thì tỉ lệ phân tuyến thành công không chấp nhận đƣợc nữa, tức tỉ lệ gói tin router hủy đi cao, so sánh giữa các chính sách khác nhau. Đồ thị vẽ ra dạng đƣờng, trục x là rate, trục y là tỉ lệ phân tuyến thành công, mỗi một chính sách tạo ra một đƣờng đồ thị. Cấu hình mạng nhƣ sau:
Hình 4.7. Mô hình mạng 2
Mô phỏng mô hình mạng 2 với năm chính sách khác nhau: srTCM, trTCM, TB- WIRR, TSW2CM, TSW3CM. Mạng DiffServ với các tham số định trƣớc:
- Đƣờng truyền giữa nút biên và nút nguồn tƣơng ứng có độ trễ 5ms và băng thông 10Mbps.
- Đƣờng truyền giữa nút biên và nút đích tƣơng ứng có độ trễ 5ms và băng thông 10Mbps. S1 E1 S2 E2 D1 D2 UDP CBR UDP CBR Null Null Core
- Đƣờng truyền giữa nút trung tâm và nút biên gắn với nút nguồn có độ trễ 5ms và băng thông 5Mbps.
- Đƣờng truyền giữa nút trung tâm và nút biên gắn với nút đích có độ trễ 5ms và băng thông 5Mbp.
Thực hiện
Tính tỷ lệ phân tuyến thành công của core router. So sánh giữa các chính sách.
Tỉ lệ phân tuyến thành công của core router = TxPkts/TotPkts, là một
thông số quan trọng cho biết hiệu quả hoạt động của DiffServ.
Bảng 4.2. Tỷ lệ phân tuyến thành công các core router của các chính sách Policy Rate TB-WIRR srTCM trTCM TSW2CM TSW3CM 2000000 1% 1% 1% 1% 1% 3000000 0.835% 0.830% 0.832% 0.838% 0.832% 4000000 0.627% 0.620% 0.623% 0.626% 0.622% 8000000 0.502% 0.5% 0.503% 0.501% 0.499% 10000000 0.5% 0.5% 0.5% 0.5% 0.499%
Đồ thị sau biểu thị tỷ lệ phân tuyến đƣợc tổng kết trong bảng:
Hình 4.8. Đồ thị tỷ lệ phân tuyến thành công của core router
Ta nhận thấy với các tham số chính sách nhƣ nhau và với cùng tốc độ thì tỷ lệ phân tuyến là xấp xỉ nhƣ nhau. Với mỗi chính sách, ta thay đổi tốc độ thì tỷ lệ phân tuyến thay đổi nhƣ sau:
Tốc độ dƣới 2000000 thì tỷ lệ phân tuyến luôn bằng 1% tức là số gói tin router hủy sớm theo cơ chế của RED và số gói tin router hủy do liên kết quá tải là 0 kết quả là hiệu suất hoạt động của DiffServ luôn ở mức cao. Khi tốc độ trên 10000000 thì tỷ lệ này là 0.5%, điều này chứng tỏ tốc độ càng cao dẫn tới quá trình phân tuyến của core router giảm dần gây ảnh hƣởng đến hiệu suất của DiffServ.
1 2000000 3000000 4000000 …….. 8000000 9000000 10000000 rate CBR 0.5 0 : TB-WIRR : srTCM tỉ lệ phân tuyến (%)
4.2.2.4 Kịch bản mô phỏng 3
Mạng LAN khảo sát có tô-pô và cấu hình nhƣ sau:
Hình 4.9. Mô hình mạng khảo sát 3
Trong mô hình trên, S0 ... S2 là các nút mạng. E1, E2 là Egde có thể xem là các switch, giữa E2 và E2 là Core. CBR là nguồn sinh lƣu lƣợng. Null là đích của nguồn sinh lƣu lƣợng CBR.
Kịch bản: Sử dụng NS2 mô phỏng một mô hình mạng bao gồm 3 nút bắt nguồn, 3 nút trung gian và 3 nút đích, đã đƣợc cấu hình nhƣ các nút ranh giới của miền DiffServ. Từ đó cho phép để thiết lập một cơ chế kiểm soát giao thông đa dạng, với chính sách srTCM, quản lý hàng đợi Drop và schedulers WIRR. Nguồn CBR đƣợc cố định với kích thƣớc gói tin là 256 bytes.
Các thông số và kịch bản của thí nghiệm đƣợc tóm tắt: Send Receive Traffic
Class
Protocol Traffic Rate Pkt
S1 D1 EF UDP CBR 450 256 S2 D2 AF UDP CBR 450 256 S3 D3 BE UDP CBR 450 256 Chính sách sử dụng trong thí nghiệm là srTCM: S1 -> D1 S2 ->D2 S3 ->D3 srTCM srTCM srTCM CIR 400 400 400 CBS 10000 10000 20000 EBS 20000 15000 30000 PBS 10000 10000 10000 S0 E1 S2 E2 D1 D2 D3 UDP CBR UDP CBR Null Null Core S1 Null UDP CBR
Kết quả mô phỏng:
Với mục đích của thí nghiệm là xác định và vẽ đồ thị sự thay đổi theo thời gian mô phỏng của hệ số sử dụng đƣờng truyền của kết nối UDP.
Kết quả thu đƣợc nhƣ sau:
Results S1 ->D1 S2 -> D2 S3 -> D3 E1 -> E2
Sent 23185 24201 28350 75742
Receive 23185 17661 9975 50821
Drop 0 6546 18375 24921
Các luồng có cùng chính sách srTCM nhƣng thay đổi tốc độ của mỗi luồng ta nhận thấy: S1 ->D1 tỷ thành công các gói tin gửi đi là 100%, ngƣợc lại, S2 -> D2 với tốc độ lớn hơn 450 nên tỷ lệ thành công đạt đƣợc 73% và S3 -> D3 tăng tốc độ lên 700 thì tỷ lệ thành công của gói tin gửi đi chỉ đạt 35%.
Hình 4.7. Đồ thị mô tả mất gói trong khoảng thời gian 120s
Từ sơ đồ của hình vẽ ta nhận thấy, trong khoảng thời gian 120s các gói tin đi từ S1 -> D1 không bị mất mát trong quá trình truyền đi. Tỷ lệ mất gói tin lớn nhất nằm trên luồng E1 -> E2 và tỷ lệ mất gói tăng theo thời gian mô phỏng.
Kết quả tính độ trễ và biến thiên trễ:
Flow S1 -> D1 S2 -> D2 S3 -> D3 E1 -> E2
Delay 0.05579 0.194664 0.426573 0.166417
Jitter 0.001621 0.066632 0.260945 0.184243
Luồng S1 -> D1 với lớp lƣu lƣợng EF có độ trễ và biến thiên trễ nhỏ nhất trong khoảng thời gian 120s với độ trễ là 0.05579, biến thiên trễ 0.001621. Luồng S3 -> D3
với lớp lƣu lƣợng BE có tỷ lệ mất gói lớn nên độ trễ và biến thiên trễ cao hơn hẳn so với luồng S1 -> D1, đƣờng đồ thị màu xanh (blue) thể hiện rõ nét độ trễ hàng đợi của lớp lƣu lƣợng BE.
Mất gói: kiểm tra ảnh hƣởng của tốc độ đánh dấu CIR đến xác suất mất gói tin
SYN và của gói tin dữ liệu đầu tiên trong kết nối, ta thấy rằng cần giảm việc mất gói tin cho cả hai để đạt đƣợc tốc độ CIR nhƣ mong muốn. Những gói tin dễ bị tấn công làm giảm hiệu suất đáng kể vì chúng gây ra thời gian gián đoạn dài. Trong mạng tốc độ cao thời gian truyền file rất ngắn (tổng thời gian truyền ngắn hơn nhiều thời gian time-out), vì thế ta mang muốn đạt hiệu suất cao hơn bằng cách loại trừ thời gian time- out này. Trong mạng tốc độ thấp thì việc loại trừ thời gian time-out là không cần thiết. Thông lƣợng: các luồng lƣu lƣợng CBR0,CBR1,CBR2 đều truyền dữ liệu
trong những khoảng thời gian nhƣ nhau nhƣng thông lƣợng trung bình khác nhau. Với đƣờng truyền phù hợp thì hiệu suất về thông lƣợng và độ trễ của UDP đạt đƣợc sẽ cao.
KẾT LUẬN
Qua quá trình tìm hiểu và nghiên cứu dƣới sự giúp đỡ nhiệt tình của thầy giáo hƣớng dẫn PGS.TS Hồ Sĩ Đàm, tôi đã hoàn thành luận văn: “Giải pháp đảm bảo chất lượng dịch vụ (QoS) trên mạng IP; đánh giá, so sánh hiệu quả đảm bảo QoS của DiffServ và IntServ”.
Trong luận văn này, tôi đã tìm hiểu và giới thiệu khái quát về đảm bảo chất lƣợng dịch vụ, đánh giá chất lƣợng dịch vụ qua mạng IP. Một số vấn đề cốt lõi của các kỹ thuật đảm bảo QoS IP và tiêu chí đánh giá QoS thông qua việc đánh giá các tham số đặc trƣng cho QoS IP. Đi sâu vào việc khảo sát, đánh giá hai mô hình IntServ và