Tải bản đầy đủ (.pdf) (118 trang)

ứng dụng giải thuật di truyền mờ cho bài toán quản lý hàng đợi tích cực (aqm) trong viễn thông

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.55 MB, 118 trang )

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP




LUẬN VĂN THẠC SỸ KỸ THUẬT

NGÀNH KỸ THUẬT ĐIỆN TỬ


ỨNG DỤNG GIẢI THUẬT DI TRUYỀN MỜ CHO
BÀI TOÁN QUẢN LÝ HÀNG ĐỢI TÍCH CỰC
(AQM) TRONG VIỄN THÔNG





LÊ HOÀNG










Thái Nguyên, 2010
BỘ GIÁO DỤC VÀ ĐÀO TẠO
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP




LUẬN VĂN THẠC SỸ KỸ THUẬT



ỨNG DỤNG GIẢI THUẬT DI TRUYỀN MỜ CHO
BÀI TOÁN QUẢN LÝ HÀNG ĐỢI TÍCH CỰC
(AQM) TRONG VIỄN THÔNG



Ngành: Kỹ thuật điện tử
Mã số: 605270
Học viên: Lê Hoàng
Ngƣời HD khoa học: PGS. TS. Lê Bá Dũng









Thái Nguyên, 2010
Trang i
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

ĐẠI HỌC THÁI NGUYÊN
TRƢỜNG ĐẠI HỌC
KỸ THUẬT CÔNG NGHIỆP

CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc



THUYẾT MINH
LUẬN VĂN THẠC SỸ KỸ THUẬT

Học viên: Lê Hoàng
Lớp: Cao học - K11
Chuyên ngành: Kỹ thuật Điện tử
Người hướng dẫn khoa học: PGS.TS Lê Bá Dũng
Ngày giao đề tài: 20 tháng 01 năm 2010.
Ngày hoàn thành: 5 tháng 9 năm 2010.

CÁN BỘ HƢỚNG DẪN KHOA HỌC




PGS.TS Lê Bá Dũng
HỌC VIÊN



Lê Hoàng

BAN GIÁM HIỆU
KHOA SAU ĐẠI HỌC





Trang ii
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

LỜI CAM ĐOAN

Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi, các số liệu, kết
quả nêu trong luận văn này là trung thực và là công trình nghiên cứu của riêng tôi,
luận văn này không giống hoàn toàn bất cứ luận văn hoặc các công trình đã có trước
đó.
Thái Nguyên, ngày 23 tháng 8 năm 2010
Tác giả luận văn



Lê Hoàng













Trang iii
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

LỜI CẢM ƠN

Trong suốt quá trình học tập và tốt nghiệp, tôi đã nhận được sự giúp đỡ tận
tình của các thầy cô giáo và tôi đặc biệt muốn cảm ơn:
Thầy giáo PGS. TS. Lê Bá Dũng, Viện công nghệ thông tin, Viện khoa học và
công nghệ Việt Nam.
Thầy giáo ThS. Nguyễn Phương Huy, Bộ môn Điện tử viễn thông, Khoa Điện
tử, Trường Đại học Kỹ thuật Công nghiệp Thái Nguyên.

đã tận tình giúp đỡ, hướng dẫn tôi trong thời gian thực hiện đề tài, cảm ơn sự
giúp đỡ của gia đình, bạn bè và các đồng nghiệp trong thời gian qua.
Vì đề tài liên quan tới nhiều lĩnh vực mới với kiến thức rất rộng, bản thân tôi
phải tham khảo rất nhiều tài liệu và các bài báo quốc tế. Mặc dù đã cố gắng, song do
điều kiện về thời gian và kinh nghiệm thực tế còn nhiều hạn chế nên không thể
tránh khỏi thiếu sót (nhất là trong quá trình biên tập và dịch tài liệu thành tiếng
Việt). Vì vậy, tôi rất mong nhận được sự đóng góp ý kiến của các thầy cô cũng như

của các bạn bè, đồng nghiệp.
Một lần nữa tôi xin chân thành cảm ơn!

Tác giả luận văn




Lê Hoàng




Trang iv
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

LỜI NÓI ĐẦU
Ngành Điện tử viễn thông luôn phải đáp ứng một nhiệm vụ quan trọng là cung
cấp các dịch vụ truyền thông tin xa một cách mềm dẻo, nhanh chóng và chính xác
nhất. Để đáp ứng nhiệm vụ trên, vấn đề quản lý hàng đợi tích cực luôn được đặt lên
hàng đầu. Tuy nhiên việc quản lý hàng đợi tích cực luôn là vấn đề phức tạp.
Trên mạng viễn thông, kỹ thuật định tuyến cũng hỗ trợ cho quá trình định
tuyến mạng, điều khiển công suất đầu cuối di dộng, quản lý tài nguyên mạng, quản
lý chất lượng mạng, điều khiển lưu lượng mạng, tạo điều kiện xây dựng một mạng
viễn thông thông minh.
Việc kết hợp Giải thuật di truyền và Logic mờ tạo ra các thiết bị có độ thích
nghi cao và thông minh như con người đáp ứng các bài toán phức tạp trong điều
kiện thiếu thông tin.
Xuất phát từ các vấn đề trên, tác giả chọn đề tài: “Ứng dụng giải thuật di
truyền mờ cho bài toán quản lý hàng đợi tích cực (AQM) trong viễn thông”.

Nội dung chính của luận văn này tập trung vào nghiên cứu việc xây dựng nên
phương pháp để giải quyết các bài toán điều khiển lưu lượng thông minh trên mạng
viễn thông hiện tại. Nhằm giải quyết được vấn đề tránh tắc nghẽn và tối ưu hoá thời
gian truyền nhận các gói dữ liệu thông qua các router trên mạng. Nội dung chính
của luận văn là ứng dụng giải thuật di truyền mờ vào bài toán AQM trên mạng hiện
nay, cấu trúc luận văn bao gồm các chương sau:
Chƣơng 1: Các kiến thức tổng quan.
Chƣơng 2: Bài toán quản lý hàng đợi tích cực trong viễn thông.
Chƣơng 3: Ứng dụng giải thuật di truyền mờ cho bài toán quản lý hàng đợi
tích cực trong viễn thông.
Cuối cùng là kết luận và hướng phát triển của đề tài.


Trang v
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

MỤC LỤC
Trang
Thuyết minh luận văn thạc sỹ kỹ thuật i
Lời cam đoan ii
Lời cảm ơn iii
Lời nói đầu iv
Mục lục v
Danh mục các bảng biểu viii
Danh mục các hình vẽ ix
Các thuật ngữ viết tắt xi
CHƢƠNG 1: CÁC KIẾN THỨC TỔNG QUAN
1.1 Giới thiệu 1
1.1.1 Điều khiển tắc nghẽn trên mạng internet 1
1.1.2 Chất lượng dịch vụ trên internet 2

1.1.3 Cấu trúc luận văn 3
1.2 Tổng quan về AQM và TCP 4
1.2.1 TCP và quản lý hàng đợi tích cực (AQM) 4
1.2.2 Các dịch vụ tích hợp và phân biệt 11
1.3 Giải thuật di truyền 12
1.3.1 Giới thiệu 12
1.3.2 Giải thuật di truyền và tìm kiếm tối ưu 13
1.3.3 Cấu trúc một giải thuật di truyền 14
1.3.3.1 Cấu trúc một giải thuật di truyền đơn giản 14
1.3.3.2 Các phép toán của giải thuật di truyền 14
1.3.3.2.1 Sinh sản (Reproduction) 14
1.3.3.2.2 Lai ghép (Crossover) 16
1.3.3.2.3 Đột biến (Mutation) 17
1.3.4 Ứng dụng của giải thuật di truyền 18
1.4 Giải thuật di truyền mờ 18
1.4.1 Giới thiệu 18
1.4.2 Giải thuật di truyền kết hợp với logic mờ 19
1.4.2.1 Phân loại kỹ thuật kết hợp 20
Trang vi
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

1.4.2.2 Một số ví dụ về kỹ thuật kết hợp di truyền mờ 20
1.4.2.2.1 Hệ thống ghép cặp di truyền mờ 20
1.4.2.2.2 Thiết kế hệ thống di truyền mờ bằng giải thuật di truyền 21
1.4.2.2.3 Điều khiển mờ tự động của hệ thống giải thuật di truyền 22
1.4.2.3 Tóm tắt một số ứng dụng thực tế của hệ kết hợp di truyền mờ 23
1.4.3 Tổng kết và kết luận 23
CHƢƠNG 2: BÀI TOÁN QUẢN LÝ HÀNG ĐỢI TÍCH CỰC (AQM)
TRONG VIỄN THÔNG
2.1 Giới thiệu 25

2.2 Kỹ thuật chống mất gói trong các mạng TCP/IP tắc nghẽn 26
2.2.1 Giới thiệu 26
2.2.2 Quản lý hàng đợi tích cực (AQM) 26
2.2.2.1 Lưu lượng tải và phát hiện sớm 27
2.2.2.2 Tránh thông báo tắc nghẽn xác định 30
2.2.2.3 RED thích nghi (ARED) 31
2.2.2.4 Độ nhạy RTT 34
2.2.2.5 Sự đánh giá 36
2.2.2.6 Sử dụng gói mất để thông báo tắc nghẽn 38
2.2.3 Điều khiển tắc nghẽn máy chủ cuối 41
2.2.3.1 Điều chỉnh tốc độ truyền tối thiểu 41
2.2.3.2 Điều chỉnh tăng tuyến tính 44
2.2.4 Điều chỉnh hiệu suất tối ưu 48
2.2.5 Kết luận và công việc tương lai 50
2.3 BLUE phương pháp mới cho AQM 51
2.3.1 Giới thiệu 51
2.3.2 Sự hạn chế của RED 52
2.3.3 Blue 54
2.3.3.1 Thuật toán Blue 55
2.3.3.3 Tìm hiểu về Blue 56
2.3.3.4 Hiệu quả của ECN timeouts 59
2.3.3.5 Sự đánh giá 61
2.3.4 Blue cân bằng ngẫu nhiên (SFB) 63
2.3.4.1 Thuật toán SFB 63
2.3.4.2 Sự đánh giá 66
2.3.4.3 Sự hạn chế của SFB 68
2.3.4.4 SFB với hàm hash động 71
Trang vii
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên


2.3.4.5 Độ nhạy RTT 74
2.4 Kết luận và công việc tương lai 74
CHƢƠNG 3: ỨNG DỤNG GIẢI THUẬT DI TRUYỀN MỜ CHO BÀI TOÁN
QUẢN LÝ HÀNG ĐỢI TÍCH CỰC (AQM) TRONG VIỄN THÔNG
3.1 Mở đầu 76
3.2 AQM sử dụng giải thuật di truyền 77
3.2.1 Sơ đồ tổng quát giả sử có một cấu hình mạng như hình 3.1 77
3.2.2 Thiết kế thuật toán di truyền mờ 78
3.2.2.1 Bộ điều khiển mờ 78
3.2.2.2 Giải thuật di truyền mờ cho tìm kiếm tối ưu các dạng hàm thuộc 80
3.2.3.1 Mã hoá 81
3.2.2.4 Lai tạo 84
3.2.2.5 Đột biến 84
3.2.2.6 Hàm thích nghi 84
3.2.3 Mô hình hệ thống 85
3.3 Quá trình thực nghiệm 85
3.3.1 Xác định đối tượng 85
3.3.2 Kết quả thực nghiệm thể hiện qua mô phỏng 87
3.3.3 Đánh giá tỷ lệ mất gói dùng RED, BLUE, và Fuzz-GA-AQM 91
KẾT LUẬN 95
PHẦN PHỤ LỤC 97
Tài liệu tham khảo 98









Trang viii
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

DANH MỤC CÁC BẢNG BIỂU
Bảng 1.1 Kết quả tính toán cho các nhiễm sắc thể 15
Bảng 1.2 Quần thể mới 16
Bảng 1.3 So sánh đặc điểm giữa logic mờ và giải thuật di truyền 19
Bảng 1.4 Phân loại việc kết hợp giữa các hệ thống di truyền mờ 20
Bảng 1.5 Các ứng dụng kỹ thuật FL-GA cho hệ thống điều khiển 21
Bảng 1.6 Ví dụ về hệ thống FL-GA ứng dụng giải bài toán phân tích dữ liệu 21
Bảng 1.7 Những ứng dụng của hệ thống kết hợp di truyền mờ 23
Bảng 2.1 Tỷ lệ mất gói của SFB theo Mbs (1 luồng không đáp ứng) 66
Bảng 2.2 Tỷ lệ mất của SFB (một luồng không đáp ứng, một luồng dao động) 73
Bảng 3.1 Cơ sở luật – các luật ngôn ngữ 80

















Trang ix
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

DANH MỤC CÁC HÌNH VẼ
Hình 1.1 Ví dụ về hành vi cửa sổ tắc nghẽn TCP 7
Hình 1.2 Tiêu đề gói tin TCP/IP 9
Hình 1.3 Các hành vi mất gói/đánh dấu gói của Red 10
Hình 1.4 Kiến trúc mạng dịch vụ phân biệt DiffServ 12
Hình 1.5 Bánh xe roulette 16
Hình 1.6 Cơ chế lai ghép giữa 2 nhiễm sắc thể 17
Hình 1.7 Sử dụng giải thuật di truyền để cải tiến hiệu suất của hệ thống mờ 21
Hình 1.8 Kiến trúc của hệ thống điều khiển tự động giải thuật di truyền 22
Hình 2.1 Sự phát triển của các thuật toán AQM theo thời gian 25
Hình 2.2 Mô hình (topo) mạng 28
Hình 2.3 phát hiện sớm tích cực (maxp = 0.250) 28
Hình 2.4 Phát hiện sớm tiêu cực (maxp = 0,016) 29
Hình 2.5 Tác động của AED trên RED-ECN 30
Hình 2.6 Tác động của max
th
và kích thước hàng đợi 31
Hình 2.7 Thuật toán ARED 32
Hình 2.8 Các hành vi mất gói/đánh dấu của ARED 32
Hình 2.9 Phát hiện ngẫu nhiên sớm tĩnh (SRED) 33
Hình 2.10 RED thích nghi 34
Hình 2.11 Topo mạng với sự biến đổi RTT 34
Hình 2.12 RED tĩnh thông qua sự thay đổi RTT 35
Hình 2.13 RED thích nghi thông qua sự thay đổi RTT 35
Hình 2.14 Kết quả đã kiểm tra 36
Hình 2.15 Hiệu suất quản lý hàng đợi 37
Hình 2.16 Tác động của phát hiện sớm quá tích cực trong RED 38

Hình 2.17 Mạng ví dụ 40
Hình 2.18 Thuật toán SUBTCP 42
Hình 2.19 Topo mạng 42
Hình 2.20 Tốc độ gửi tối thiểu và hiệu suất của TCP 43
Hình 2.21 Đồ thị hàng đợi để giảm kích thước segment và tăng kích thước cửa sổ 44
Hình 2.22 Thuật toán SUBTCP dựa trên băng thông 46
Hình 2.23 Thuật toán dựa trên băng thông SUBTCP 46
Hình 2.24 Hiệu suất của thuật toán tăng tuyến tính đã sửa đổi 47
Hình 2.25 Hiệu suất tuyến tính phụ SUBTCP 48
Hình 2.26 Hiệu suất thông qua lưu lượng lải 49
Hình 2.27 So sánh hiệu suất 50
Hình 2.28 Sự mở rộng cho ARED 51
Hình 2.29 Ví dụ về RED 53
Hình 2.30 Thuật toán Blue 55
Hình 2.31 Topo mạng 56
Hình 2.32 Đồ thị chiều dài hàng đợi của RED và BLUE 57
Hình 2.33 Hành vi đánh dấu của RED 58
Hình 2.34 Hành vi đánh dấu của BLUE (p
m
) 59
Trang x
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

Hình 2.35 Đồ thị chiều dài hàng đợi của RED và BLUE với ECN timeouts 60
Hình 2.36 Hành vi đánh dấu với ECN timeouts 60
Hình 2.37 Hiệu suất của RED và BLUE với ECN timeouts 61
Hình 2.38 Thí nghiệm mô phỏng 62
Hình 2.39 Hiệu suất quản lý hàng đợi 62
Hình 2.40 Thuật toán SFB 64
Hình 2.41 Ví dụ về SFB 65

Hình 2.42 Băng thông của các luồng TCP với SFB (luồng 45Mbs) 67
Hình 2.43 Băng thông của các luồng dùng RED và SFQ (luồng 45Mbs) 68
Hình 2.44 Băng thông của các luồng TCP dùng RED và SFQ (luồng 45Mbs) 69
Hình 2.45 Xác suất của sự phân loại sai 70
Hình 2.46 Băng thông của các luồng TCP dùng SFB 71
Hình 2.47 Băng thông các luồng TCP với thuật toán SFB sửa đổi 72
Hình 2.48 Băng thông của các luồng TCP(1 luồng không đáp ứng, 1 dao động) 73
Hình 2.49 Băng thông của các luồng TCP với sự biến đổi RTT 74
Hình 3.1 Biểu diễn nút cổ chai từ A sang B 77
Hình 3.2 Sơ đồ hệ thống điều khiển GA-fuzzy-AQM 77
Hình 3.3 Các đầu vào (đầu vào một và hai) bộ điều khiển mờ 79
Hình 3.4 Đầu ra bộ điều khiển mờ 79
Hình 3.5 Hệ luật của bộ điều khiển mờ 79
Hình 3.6 Một suy diễn của bộ điều khiển mờ 79
Hình 3.7 Cấu trúc giải thuật di truyền tổng quát 81
Hình 3.8 Dạng hàm thuộc A cho quá trình mã hoá 82
Hình 3.9 Dạng hàm thuộc B cho quá trình mã hoá 82
Hình 3.10 Dạng hàm thuộc C cho quá trình mã hoá 82
Hình 3.11 Một nhiễm sắc thể cho chuỗi mã hoá 83
Hình 3.12 Quá trình lai tạo 84
Hình 3.13 Mô hình hệ thống điều khiển mờ cho AQM 85
Hình 3.14 Chỉnh định mô hình mờ bằng GA 85
Hình 3.15 gói dữ liệu đầu ra tiệm cận vói gói dữ liệu yêu cầu q
0
=200 88
Hình 3.16 Tín hiệu điều khiên mờ (đỏ) và tín hiệu sai số (xanh) 88
Hình 3.17 Hệ mờ, được xây dựng từ hệ luật trước khi dùng GA 89
Hình 3.18 Gói tín hiệu đầu ra (đỏ) bám tín hiệu yêu cầu (xanh) (dùng GA) 89
Hình 3.19 Tín hiệu điều khiên mờ (đỏ) và tín hiệu sai số (xanh) (dùng GA) 90
Hình 3.20 Hệ mờ sau khi đã chỉnh các biến đầu vào và ra (dùng GA) 90

Hình 3.21 Tỷ lệ mất gói của RED, BLUE và Fuzz-GA-AQM 92
Hình 3.22 Hiệu suất quản lý hàng đợi của Red, Blue và Fuzz-GA-AQM 94
Trang xi
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

CÁC THUẬT NGỮ VIẾT TẮT
Viết tắt
Tên gốc
Giải thích
ACK
ACKnowledgments
xác nhận, báo nhận
AED
Aggressive Early Detection
Phát hiện sớm tích cực
AQM
Active Queue Management
Quản lý hàng đợi tích cực
ARED
Adaptive Random Early Detection
RED thích nghi
ARIO
Adaptive Random Early Detection
with Input/Output
RED với cổng vào ra thích nghi
Besteffort
Best-effort network
Mạng nỗ lực tốt nhất
CBQ
Class Based Queue

Hàng đợi trên cơ sở lớp
CBWFQ
Class Base Weighted Fair Queue
WFQ trên cơ sở lớp
CED
Conservative Early Detection
Phát hiện sớm tiêu cực
CSFQ
Core-Stateless Fair Queueing
Hàng đợi công bằng không trạng
thái lõi
CWR
Congestion Window Reduced
Giảm cửa sổ tắc nghẽn
DiffServ
Differentiated Services
Dịch vụ phân biệt
ECN
Explicit Congestion Notification
Thông báo tắc nghẽn tường minh
ECT
ECN Capable Transport
Bít truyền tải khả năng ECT
FIFO
First In First Out
Hàng đợi kiểu vào trước ra trước
FRED
Fair Random Early Detection
RED cân bằng
EWMA

Exponentially Weighted Moving
Average
Trung bình dịch chuyển luỹ thừa
hàm trọng
GA
Genetic Alogrymth
Giải thuật di truyền
IETF
Internet Engineering Task Force
Nhóm đặc trách kỹ thuật Internet
InteServ
Intergrated Services
Dịch vụ tích hợp
ICN
Implicit Congestion Notification
Thông báo tắc nghẽn ẩn
IP
Internet Protocol
Giao thức Internet
IS
Intergrated Service
Dịch vụ tích hợp
ISP
Internet Service Provider
Nhà cung cấp dịch vụ Internet
LAN
Local Area Network
Mạng nội vùng
NS
Network Simulator

Mô phỏng mạng
PI
Proportional Integral
Bộ điều khiển tỷ lệ tích phân
PID
Proportional Integral Derivative
Bộ điều khiển tỷ lệ vi tích phân
PQ
Priority Queue
Hàng đợi ưu tiên
Trang xii
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

Viết tắt
Tên gốc
Giải thích
RED
Random Early Detection
Phát hiện sớm ngẫu nhiên
QoS
Quality of Services
Chất lượng dịch vụ
RIO
RED with In/Out put
RED với các cổng vào ra
RSVP
Resource Reservation Protocol
Giao thức dành trước tài nguyên
RTT
Round Trip Time

Chu kỳ truyền nhận
SACK
Selective ACKnowledgments
Xác nhận lựa chọn
SFB
Stochastic Fair BLUE
Blue công bằng ngẫu nhiên
SFQ
Stochastic Fair Queueing
Hàng đợi công bằng ngẫu nhiên
SUBTCP
SUBTCP
Thuật toán TCP sửa đổi
SRED
Statis RED
RED tĩnh
TCP
Transport Control Protocol
Giao thức điều khiển truyền thông
TOS
Type Of Service
Kiểu dịch vụ
UDP
User Data Protocol
Giao thức dữ liệu người sử dụng
WFQ
Weighted Fair Queue
Hàng đợi cân bằng có trọng số
WRED
Weighted RED

RED có trọng số

Trang 1
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

CHƢƠNG 1
CÁC KIẾN THỨC TỔNG QUAN
Nội dung chính
1.1 Giới thiệu
1.2 Kiến thức tổng quan
1.3 Giải thuật di truyền
1.4 Giải thuật di truyền mờ
1.1 Giới thiệu
Sự thành công của Internet như ngày nay chủ yếu là do sức mạnh của các giao
thức. Bằng cách phục vụ mọi đối tượng người dùng và sự phát triển mạnh mẽ các
dịch vụ tương thích, mạng Internet có chức năng cung cấp mọi nền tảng thiết yếu
cho các ứng dụng như WWW. Là một trong phần lớn các ứng dụng được triển khai
rộng rãi trên mạng Internet ngày nay, không phải ngẫu nhiên mà tất cả các ứng dụng
đều được xây dựng trên TCP/IP. Hơn một thập kỷ qua, TCP/IP đã luôn đáp ứng
được các thách thức của các ứng dụng mới và cung cấp một nền tảng vững chắc để
xây dựng các ứng dụng.
Với sự gia tăng nhanh chóng của WWW, Internet đã đáp ứng sự tăng trưởng
lớn mạnh về nhu cầu truy cập từ người dùng và nhu cầu cho các dịch vụ ứng dụng
mới. Là kết quả của những thách thức mới, các điểm yếu trong TCP/IP đã trở nên
ngày càng rõ rệt. Tỷ lệ mất gói tăng và chất lượng mạng giảm đã gây ra những vấn
đề nghiêm trọng đối với người dùng. Ngoài ra, không có khả năng hỗ trợ các dịch
vụ mới đã cản trở nghiêm trọng việc triển khai rộng rãi các ứng dụng nhạy cảm về
băng thông. Luận án này tập trung vào những thách thức cực kỳ quan trọng với
Internet ngày nay và mô tả việc điều khiển tắc nghẽn hiện nay như thế nào và kỹ
thuật AQM có thể được sửa đổi để giải quyết điều đó.

1.1.1 Điều khiển tắc nghẽn trên mạng internet
Sự thành công chủ yếu của TCP/IP trong thập kỷ qua là khả năng cung cấp
dịch vụ theo nhu cầu rất cao của người dùng. Lý do chính ở đây chính là cơ chế
điều khiển tắc nghẽn của TCP [57]. Ý tưởng phía sau điều khiển tắc nghẽn TCP là
để điều khiển tải mạng bởi có thể điều chỉnh tốc độ nguồn theo mức độ tắc nghẽn
trong mạng. Cụ thể hơn, nếu nguồn TCP phát hiện hay thấy gói mất dựa trên các
thông tin về các gói đã gửi, nó giảm tốc độ gửi để tránh mất gói thêm và tránh tắc
Trang 2
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

nghẽn. Nếu nguồn TCP quan sát thấy tất cả các gói dữ liệu đang được chuyển đi, nó
dần dần tăng tốc độ gửi để tận dụng tối đa khả năng của mạng. Nhờ cơ chế điều
khiển tắc nghẽn, tài nguyên mạng được chia sẻ giữa các luồng trong thời gian xảy ra
tắc nghẽn. Việc chia sẻ này cho phép các luồng với RTT (Round trip Time là thời
gian từ lúc truyền tới lúc nhận thông báo đã nhận) giống nhau đạt thông lượng như
nhau và tránh việc một luồng bị tắc nghẽn hoàn toàn. Bằng cách này, TCP có thể
giảm thiểu mất gói với hiệu quả đáng kể trong khi sử dụng mạng tối đa trong suốt
thập kỷ qua.
Gần đây, khi nhu cầu của người dùng tăng nhanh hơn khả năng nâng cấp hạ
tầng mạng của các nhà cung cấp, khả năng cung cấp dịch vụ nỗ lực tối đa (Best-
effort) của TCP bị kém đi. Đặc biệt là sự gia tăng đáng báo động liên quan đến tỷ lệ
mất gói đã được quan sát trên một số kết nối mạng [80]. Gói mất tăng dẫn đến sự
kém ổn định và hiệu quả của mạng vì nguồn và các router liên tục tạo ra và chuyển
tiếp các gói dữ liệu mà sau đó lại bị mất. Để giải quyết vấn đề tăng tỷ lệ mất gói
trong mạng Internet, nhóm đặc trách kỹ thuật Internet (Internet Engineering Task
Force - IETF) đang xem xét việc triển khai các Thông báo tắc nghẽn tường minh
(Explicit Congestion Notification - ECN) [43, 82] và Quản lý hàng đợi tích cực
(Active Queue Management - AQM) [20, 46] nhằm ngăn ngừa mất gói. Ý tưởng
phía sau ECN là cung cấp cho mạng khả năng thông báo tường minh về tắc nghẽn
của nguồn TCP và để nguồn TCP giảm tốc độ truyền của chúng nhằm đáp ứng lại

thông báo. Vì nguồn TCP chỉ giảm tốc độ truyền xuống sau khi phát hiện một gói
mất, nếu không dùng ECN, số gói mất quan sát qua mạng Internet vẫn luôn lớn hơn
0. Trong khi ECN cung cấp cho mạng một cơ chế để giảm mất gói, nó phải được
dùng kết hợp với AQM để đạt được hiệu quả. Mục tiêu của AQM là phát hiện sớm
tắc nghẽn để chuyển thông báo tắc nghẽn tới các nguồn trước khi tràn hàng đợi và
mất gói xảy ra. Nhờ việc lấy thông báo tắc nghẽn từ gói mất và sử dụng cơ chế
AQM, IETF hy vọng rằng tỷ lệ mất gói trong mạng Internet có thể được kiểm soát.
1.1.2 Chất lƣợng dịch vụ trên internet
Các dịch vụ thực hiện bởi TCP thông qua Internet ngày nay thường được gọi
là nỗ lực tối đa (Best efforts). Sử dụng hàng đợi đơn giản FIFO trong mạng kết hợp
với điều khiển tắc nghẽn TCP tại các điểm kết cuối, các nguồn duy trì sự công bằng
tương đối giữa chúng khi ghép kênh qua cùng kết nối cổ chai. Theo nhu cầu, các
dịch vụ mới đã phát triển, thiếu sự phân biệt trong dịch vụ mạng đã trở thành vấn đề.
Kết quả là, với số lượng ngày càng tăng của các ứng dụng như các ứng dụng luồng
Trang 3
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

dữ liệu số (streaming) đa phương tiện liên tục phá vỡ TCP và cơ chế điều khiển tắc
nghẽn ủng hộ UDP và cơ chế điều khiển theo mức độ ưu tiên riêng.
Với sự nỗ lực để giải quyết các nhu cầu ngày càng tăng của các ứng dụng,
IETF đã phát triển một số kiến trúc để cải tiến cơ sở hạ tầng Internet hiện tại cho
phép mạng cung cấp các dịch vụ dự báo áp dụng trên kết cuối cơ sở. Kết quả của nỗ
lực này đã được tiêu chuẩn hoá thành giao thức thiết lập dành trước tài nguyên
(Resource Reservation Setup Protocol - RSVP) [22, 102] và một tập hợp liên quan
tới các lớp dịch vụ [87, 97]. Trong phương pháp này, các ứng dụng cá nhân thông
báo tài nguyên yêu cầu tới mạng thông qua kết cuối cơ sở. Để đạt được điều này,
các phần tử mạng trung gian (router, switch, vv) dành lượng tài nguyên phù hợp cho
ứng dụng. Khi các gói tiếp theo đến mỗi phần tử mạng, chúng được dự kiến cách
đáp ứng các yêu cầu của ứng dụng. Kiến trúc dịch vụ này cung cấp một nền tảng
vững chắc cho các lớp dịch vụ khác nhau trên Internet, đảm bảo sự công bằng và

đáp ứng sự thay đổi mạng. Ngoài ra, hỗ trợ cho các dịch vụ như vậy có thể cần thêm
một lượng đáng kể trong tiêu đề gói tin trong hệ thống. Vì vậy, IETF cũng xem xét
một cách tiếp cận tiến hóa hơn để cung cấp các dịch vụ phân biệt trên Internet. Với
phương pháp này, như đã nêu do các dịch vụ phân biệt Differentiated Services
(DiffServ) làm việc theo nhóm, sử dụng bit kiểu dịch vụ (Type of Service- ToS)
trong tiêu đề IP [16, 31, 81, 86] nhằm cung cấp dịch vụ chất lượng khác nhau cho
các ứng dụng. Mục tiêu của DiffServ là xác định một tập tối thiểu các khối có thể
được sử dụng để xây dựng các dịch vụ cho các ứng dụng đang phát triển.
1.1.3 Cấu trúc luận văn
Nội dung chính của luận văn này tập trung vào nghiên cứu việc xây dựng
phương pháp để giải quyết các bài toán điều khiển lưu lượng thông minh trên mạng
viễn thông hiện tại. Nhằm giải quyết được vấn đề tránh tắc nghẽn và tối ưu hoá thời
gian truyền nhận các gói dữ liệu thông qua các router trên mạng. Nội dung chính
của luận văn là ứng dụng giải thuật di truyền mờ cho bài toán AQM trên mạng viễn
thông hiện nay, cấu trúc luận văn bao gồm các chương sau:
Chƣơng 1: Trình bày về các kiến thức tổng quan liên quan tới các lĩnh vực mà
đề tài cần sử dụng bao gồm: TCP và AQM, giải thuật di truyền. Mô hình kết hợp
giữa giải thuật di truyền và logic mờ nhằm giải quyết một số bài toán phức tạp.
Đánh giá được ưu điểm nổi trội của giải thuật di truyền mờ nhằm tối ưu hoá luật mờ
và vét cạn các lời giải.
Trang 4
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

Chƣơng 2: Tìm hiểu về bài toán quản lý hàng đợi tích cực (AQM) trong mạng
viễn thông hiện nay. Những phương pháp và thuật toán đã và đang được sử dụng,
đánh giá được ưu nhược điểm của từng phương pháp. Minh chứng về những điểm
yếu trong AQM hiện nay. Đề xuất một phương pháp sửa đổi thuật toán điều khiển
tắc nghẽn nhằm đạt kết quả tốt hơn.
Chƣơng 3: Tiếp tục giải quyết bài toán trong chương 2 bằng việc sử dụng mô
hình mới kết hợp giữa giải thuật di truyền và logic mờ, đưa ra đánh giá thông qua

các kết quả đạt được so với các phương pháp trước đó. Từ đó đưa ra kết luận có thể
hay không thể áp dụng phương pháp này cho các thiết bị viễn thông và internet hiện
tại.
Cuối cùng là kết luận và hướng phát triển của đề tài.
1.2 Tổng quan về AQM và TCP
1.2.1 TCP và quản lý hàng đợi tích cực (AQM)
Điều quan trọng nhất là phải tránh được tỷ lệ mất gói cao trong Internet. Khi
một gói bị mất trước khi nó đến đích, tất cả các tài nguyên mà nó đã sử dụng để
truyền đi đều bị mất theo. Trong trường hợp đặc biệt, tình trạng này có thể dẫn đến
tắc nghẽn hoàn toàn [57]. Tỷ lệ mất gói rất cao trong thời điểm tắc nghẽn nặng, khi
số lượng lớn các kết nối mâu thuẫn với băng thông mạng hạn chế. Với sự bùng nổ
của WWW, các nghiên cứu gần đây đã cho thấy tăng nhu cầu đối với băng thông
mạng làm tăng tỷ lệ mất gói trên số lượng kết nối tắc nghẽn trong Internet [80].
TCP sử dụng một bộ các giải thuật điều khiển tắc nghẽn: Khởi đầu chậm
(slow start), tránh tắc nghẽn (congestion avoidance), truyền lại nhanh (fast
retransmission) và khôi phục nhanh (fast recovery). Những giải thuật này rất quan
trọng và cùng kiến tạo nên bộ khung cho cơ chế kiểm soát nghẽn của TCP.
Giải thuật khởi đầu chậm (slow start)
Sau khi kết nối TCP được mở, nếu bên gửi tiến hành gửi ngay toàn bộ số
lượng gói (segment) dữ liệu bằng với kích thước cửa sổ được bên nhận thông báo,
các router trung gian và các đường kết nối có tốc độ chậm giữa bên gửi và bên nhận
có thể gặp vấn đề tràn bộ đệm hay vượt quá băng thông kết nối. Giải thuật khởi đầu
chậm sẽ tránh tình trạng này. Bên gửi chỉ có thể gửi một lượng dữ liệu tới mức nhỏ
nhất giữa cửa sổ tắc nghẽn và cửa sổ nhận được bên nhận thông báo cho bên gửi.
Kích thước khởi đầu của cwnd là một segment. Sau đó, ứng với mỗi ACK
(acknowledgedment) nhận được, giá trị cwnd được tăng thêm một segment. Ví dụ,
Trang 5
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

sau khi nhận được ACK đầu tiên, cwnd tăng lên thành 2 segment, và bên gửi có thể

truyền tới 2 segment dữ liệu mới. Khi mỗi ACK của các segment này được nhận,
cwnd được tăng thành 4. Việc tăng này gần với hàm mũ, cho thấy số lượng các gói
tin được đưa vào mạng tăng lên khá nhanh. Bên gửi giữ nguyên trạng thái khởi đầu
chậm tới khi kích thước của cwnd đạt tới một mức ngưỡng (ssthresh), khi đó sẽ kích
hoạt TCP chuyển sang trạng thái tránh tắc nghẽn, hoặc cho tới khi phát hiện gói mất.
Giải thuật tránh tắc nghẽn (congestion avoidance)
Giai đoạn tránh tắc nghẽn được sử dụng khi kích thước cửa sổ cwnd bằng
hoặc lớn hơn ngưỡng ssthresh để thăm dò khả năng của mạng. Khi giá trị cwnd và
ssthresh bằng nhau, bên gửi có thể sử dụng khởi đầu chậm hoặc tránh tắc nghẽn.
Trong một vài biến thể TCP, ssthresh có thể có giá trị cao, hoặc được cấu hình bằng
với kích thước cửa sổ do bên nhận thông báo. Trong pha tránh tắc nghẽn, kích
thước cửa sổ cwnd tăng lên tuyến tính và chậm hơn so với trong pha slow start, do
cwnd được tăng lên một segment cho mỗi RTT (chu kỳ truyền nhận (round-trip
time), tức là đối với mỗi ACK không bị lặp, cwnd được tăng thêm 1/cwnd. Việc
tăng này diễn ra cho đến khi cwnd đạt tới kích thước cửa sổ mà bên nhận thông báo,
hoặc tới khi xảy ra mất gói. Khoảng thời gian để cwnd đạt được giá trị cửa sổ mà
bên nhận thông báo tính theo công thức: slowstart_time=RTT x log
2
W
S
, trong đó W
S

là kích thước cửa sổ bên nhận thông báo tính bằng số segment.
Giải thuật truyền lại nhanh (Fast Retransmit)
Một segment được truyền lại khi quá thời gian chờ gửi lại (timeout là khoảng
thời gian chờ gói tin hồi đáp). TCP có thể truyền lại segment bị mất nhanh hơn bằng
cách sử dụng giải thuật truyền lại nhanh, dựa trên nguyên tắc khuyến cáo bên nhận
nên gửi ngay một ACK lặp lại khi nhận được một gói dữ liệu sai thứ tự. Khi nhận
được 3 ACK lặp lại, giải thuật truyền lại nhanh sẽ lập tức truyền lại segment bị mất

mà không phải đợi tới khi quá thời gian chờ gửi lại. Sau đó giá trị ngưỡng ssthresh
được gán bằng một nửa giá trị cwnd, với giá trị tối thiểu là 2 segment. Giá trị cwnd
được gán bằng ssthresh + 3 segment, theo đó cwnd tăng thêm số segment gây nên
ACK lặp lại. Đối với mỗi ACK lặp lại nhận được tiếp theo, cwnd tăng thêm 1
segment. Nếu giá trị mới của cwnd cho phép, một segment mới sẽ được gửi đi. Sau
khi thực hiện truyền lại nhanh, TCP sẽ thực hiện pha khôi phục nhanh.
Giải thuật khôi phục nhanh (Fast recovery)
Do bên nhận chỉ tạo ra và gửi một ACK lặp lại khi một segment đã tới nơi.
Trang 6
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

Việc nhận được ACK lặp lại không chỉ báo hiệu một segment đã bị mất, mà
còn cho thấy một segment đã rời khỏi mạng. Đó là lý do cho việc thực hiện tránh
tắc nghẽn thay vì khởi đầu chậm. Pha khôi phục nhanh được sử dụng khi nhận được
một gói tin ACK hồi đáp cho dữ liệu đã gửi. Kích thước cwnd được gán bằng giá trị
ssthresh (đã được thay đổi trong pha truyền lại nhanh). Thực tế, khi này giai đoạn
tránh tắc nghẽn được thực hiện với tốc độ giảm đi một nửa so với tốc độ khi
segment bị mất. Lưu ý rằng nếu quá thời gian chờ truyền lại, bên gửi bắt buộc thực
hiện khởi đầu chậm. Giải thuật khôi phục nhanh được áp dụng đầu tiên trong biến
thể TCP-Reno. Đây là biến thể được dùng phổ biến nhất.
Mặc dù các thuật toán này được sự dụng trong thời gian khá dài, tuy nhiên khi
số lượng luồng dữ liệu lớn với sự đa dạng các loại hình dịch vụ làm TCP kém hiệu
quả, lượng gói mất lớn ảnh hưởng nghiêm trọng đến các dịch vụ.
Cụ thể các thuật toán điều khiển tắc nghẽn đƣợc thực hiện nhƣ sau:
Khi mạng bị tắc nghẽn, một số lượng lớn các kết nối phải chia sẻ phần băng
thông kết nối hạn hẹp. Trong những thập kỷ qua, điều khiển tắc nghẽn TCP đã được
sử dụng rất hiệu quả để điều tiết tốc độ của các kết nối riêng lẻ đang chia sẻ các kết
nối mạng. Điều khiển tắc nghẽn TCP dựa trên cửa sổ. Bên gửi giữ một cửa sổ tắc
nghẽn (CWND) mà kích thước của nó giới hạn số lượng các gói NACK
(unacknowledged) mà bên gửi có thể vẫn chưa gửi hết trên mạng. Khi nhận được

ACK đối với dữ liệu được truyền thành công, bên gửi tăng tốc độ truyền nhờ tăng
kích thước cửa sổ tắc nghẽn. Tại một số thời điểm, tốc độ gửi các gói tin TCP cuối
cùng vượt quá khả năng của mạng. Khi điều này xảy ra, hàng đợi trong các router
mạng tăng lên và tràn hàng đợi, dẫn đến mất các gói. TCP giả định rằng tất cả các
gói dữ liệu bị mất là do tắc nghẽn và nó giảm cửa sổ tắc nghẽn khi phát hiện gói mất.
Thuật toán điều khiển tắc nghẽn của TCP là khá đơn giản. Khi một kết nối khởi
động, nó cố gắng đạt tới tốc độ truyền nhanh chóng bằng cách gia tăng theo cấp số
mũ của cửa sổ tắc nghẽn cho đến khi nó đạt tới một giá trị ngưỡng cụ thể
(SSTHRESH).
Giai đoạn này được gọi là khởi đầu chậm (Slow-start) và cho phép các nguồn
gửi tăng gấp đôi cửa sổ tắc nghẽn, và đó là tốc độ gửi đi sau mỗi RTT. Để tránh mất
gói quá nhiều do tốc độ gửi tăng theo cấp số nhân, TCP bên gửi thường sử dụng
phương pháp gọi là các thuật toán tránh tắc nghẽn [57, 89], sự sửa đổi TCP lần đầu
tiên triển khai trên Reno biến thể của TCP. Trong thuật toán này, TCP sử dụng giá
trị SSTHRESH gần bằng kích thước cửa sổ mà mạng có thể hỗ trợ. Khi kích thước
Trang 7
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

cửa sổ vượt quá ngưỡng này, TCP bước vào giai đoạn tránh tắc nghẽn. Trong giai
đoạn này, cửa sổ được tăng với tốc độ chậm hơn một segment sau mỗi RTT. Khi tải
tăng trên khả năng của mạng, các gói tin cuối cùng bị mất. Một trong những cách
thức mà TCP phát hiện một gói mất là thông qua việc nhận một số ACK lặp tích lũy
từ bên nhận [58]. Khi nhận được một số lượng nhất định các ACK lặp, TCP suy
luận rằng đã xảy ra mất một gói và ngay lập tức giảm tốc độ truyền xuống một nửa
do giảm một nửa cửa sổ tắc nghẽn và thiết lập SSTHRESH với giá trị mới của cửa
sổ tắc nghẽn. Các cơ chế này được gọi là truyền lại nhanh (fast retransmit) và phục
hồi nhanh (fast recovery).
Khi tắc nghẽn là đủ nghiêm trọng việc mất gói không thể được suy ra theo
cách như vậy, TCP hoạt động dựa trên cơ chế truyền lại timeout để kích hoạt truyền
lại gói tiếp theo cho các gói đã mất. Khi việc truyền lại timeout xảy ra, TCP giảm

kích thước cửa sổ một segment và truyền lại segment bị mất. Để ngăn chặn truyền
lại liên tục trong thời gian tắc nghẽn nghiêm trọng và mất mạng, TCP sử dụng một
thuật toán hàm mũ cắt-lưng (Back-off). Cụ thể, nếu bên gửi liên tục gửi segment
giống nhau, nhưng không nhận được ACK cho nó, TCP sẽ tăng gấp đôi khoảng thời
gian truyền lại timeout. Khi nhận được một ACK cho segment mới tiếp theo, TCP
thiết lập lại khoảng thời gian timeout và trở lại việc gửi bình thường.

Hình 1.1 Ví dụ về hành vi cửa sổ tắc nghẽn TCP
Hình 1.1 minh hoạ về phương thức TCP slow-start và hoạt động tránh tắc
nghẽn. Như hình vẽ cho thấy, đầu tiên TCP bắt đầu với một cửa sổ tắc nghẽn 1. Cửa
sổ đó được tăng gấp đôi sau mỗi RTT. Khi cửa sổ tắc nghẽn đạt SSTHRESH, TCP
làm chậm tốc độ tăng của nó. Cuối cùng, khi tốc độ truyền của kết nối vượt quá kết
nối cổ chai, các gói bị mất. Sự mất gói này được phát hiện bởi TCP sau đó phản ứng
bằng cách giảm một nửa cửa sổ tắc nghẽn (giả sử cơ chế truyền lại nhanh và phục
hồi nhanh được kích hoạt). Như hình vẽ cho thấy, sau khi phục hồi từ tắc nghẽn,
Trang 8
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

bên gửi TCP bước vào giai đoạn tránh tắc nghẽn vì thế cửa sổ được tăng tuyến tính
với tốc độ mỗi segment trên RTT. Trong trạng thái ổn định, TCP dao động giữa cửa
sổ W và W/2, ở đây W phụ thuộc vào khả năng của mạng và số lượng các kết nối
hiện đang hoạt động trong kết nối cổ chai.
Do tầm quan trọng của TCP và cơ chế điều khiển tắc nghẽn của nó đối với sức
mạnh của Internet, đã có một số đề xuất sửa đổi các thuật toán đó. Một trong những
đề xuất sửa đổi là xác nhận lựa chọn (Selective Acknowledgments - SACK) [71].
SACK gia tăng cơ chế xác nhận tích lũy của TCP với thông tin bổ sung cho phép
bên nhận thông báo cho bên gửi các segment đã bị mất. Bằng cách xác định thông
tin này, bên gửi TCP có thể đưa ra quyết định thông minh hơn trong việc xác định
các gói tin đã bị mất và xác định những segment được truyền lại. Điều này giúp
TCP phát hiện tắc nghẽn mất gói nhanh hơn và loại trừ truyền lại không cần thiết từ

bên gửi. Rất nhiều đề xuất sửa đổi TCP tập trung vào phục hồi từ tắc nghẽn. Nhịp
xác nhận (ACK-clocked), thường được gửi chỉ sau khi nhận được ACK đối với các
gói tin được truyền trước đó. Khi các gói dữ liệu thiếu hoặc đang gửi ACK để trả lời
phía TCP gửi, việc truyền lại timeout phải xảy ra trước khi nguồn TCP có thể gửi
lại. Bởi vì Reno biến thể của TCP giữ nguyên cửa sổ trong khi phục hồi từ tắc
nghẽn, nó thường gây ra sự truyền lại timeout tới khi nguồn không gửi gói tin ACK
trong giai đoạn phục hồi. Để giải quyết vấn đề này, một thí nghiệm đơn giản được
thực hiện. Khi bên gửi TCP nhận được bất kỳ loại ACK nào, là dấu hiệu cho biết
một gói dữ liệu đã bị mất và do đó cho phép bên gửi TCP gửi thêm một gói bổ sung
mà không gây tắc nghẽn hơn.
Sự sửa đổi này cho phép TCP duy trì ACK-clocking và ngăn không cần thiết
truyền lại timeouts. Cả FACK [70] và NewReno [44, 53] sửa đổi sử dụng cách thức
này để cải thiện hiệu năng TCP. Cuối cùng, những thay đổi cơ bản hơn cho các
thuật toán điều khiển tắc nghẽn TCP đã được đề xuất. Trong phiên bản hiện tại của
TCP, cửa sổ tắc nghẽn giống như mô hình răng cưa, tại đây cửa sổ tắc nghẽn liên
tục tăng cho đến khi mất gói xảy ra. Trong khi điều này cho phép TCP thăm dò
băng thông bổ sung, như vậy hành vi cuối cùng gây ra mất gói. Ý tưởng phía sau
Tri-S [94, 95] và Vegas [23] sửa đổi là thay đổi giai đoạn tránh tắc nghẽn vì thế nó
chỉ thực hiện tăng tuyến tính khi mạng không bị tắc nghẽn. Trong cả hai thuật toán,
nếu RTT biểu thị sự tăng độ trễ do hàng đợi đang tăng lên trong mạng, các nguồn
TCP sẽ giảm hoặc sửa kích thước cửa sổ tắc nghẽn thay vì tăng nó. Các cơ chế này,
có khả năng cải thiện tỷ lệ mất gói trong Internet, nó không tường minh như thực
Trang 9
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

hiện từng phương pháp mỗi khi tắc nghẽn kéo dài. Ngoài ra, bằng cách sửa đổi
thuật toán tăng-tuyến tính/giảm-luỹ thừa của TCP, các sửa đổi không thể đảm bảo
việc chia sẻ công bằng giữa các kết nối được ghép kênh trên tuyến [24, 61].
Ngoại trừ Tri-S và Vegas, một trong những vấn đề với thuật toán điều khiển
tắc nghẽn TCP trên các mạng hiện nay là nguồn gửi giảm tốc độ truyền của chúng

chỉ sau khi phát hiện mất gói do tràn hàng đợi. Vấn đề này xảy ra khi một lượng
thời gian đáng kể có thể đã trôi qua giữa thời điểm gói bị mất ở router và thời điểm
nguồn thực sự phát hiện mất gói. Trong khi , một lượng lớn các gói dữ liệu có thể bị
bị mất vì nguồn tiếp tục truyền tại tốc độ mà mạng không thể hỗ trợ. Vì điều này,
IETF ủng hộ việc sử dụng các thông báo tắc nghẽn tường minh (Explicit
Congestion Notification - ECN) [43, 82] và quản lý hàng đợi tích cực (Active
Queue Management - AQM) như một cách để ngăn ngừa mất gói. Ý tưởng phía sau
ECN là tách riêng gói mất từ thông báo tắc nghẽn. Trong phương pháp này, ECN
được thực hiện bằng cách sử dụng hai bit của trường kiểu dịch vụ Type-of-
service/DS của tiêu đề IP và hai bit của trường cờ dự phòng hiện tại (Currently
Reserved Flags) thuộc tiêu đề TCP như trong hình 1.2.

Hình 1.2 Tiêu đề gói tin TCP/IP
Khi một router mạng học được kinh nghiệm tắc nghẽn, nó có thể gửi tín hiệu
tường minh cho nguồn gửi thay cho các gói mất. Để làm như vậy, đầu tiên router
kiểm tra các bit khả năng truyền tải ECN (ECN-Capable Transport - ECT) để kiểm
tra nếu luồng là ECN-Capable. Nếu nó không phải là ECN-Capable, gói dữ liệu đơn
bị mất. Nếu luồng là ECN-Capable, bit kinh nghiệm tắc nghẽn (CE) được thiết lập
4-bit
version
4-bit header
length
DSCP
E
C
T

C E
16-bit total length (in bytes)
16-bit identification

3-bit flags
13-bit fragment offset
8-bit time to live (TTL)
8-bit protocol
16-bit header checksum
32-bit source IP address
32-bit destination IP address
IP header
16-bit source port number
16-bit destination port number
32-bit sequence number
32-bit acknowledgment number
4-bit
header
length
4-bit
Reserved
C
W
R
ECN Echo
U
R
G
A
C
K
P
S
H

R
S
T
S
Y
N
F
I
N


16-bit window size


16-bit TCP checksum
16-bit urgent pointer
TCP header

Trang 10
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

và sử dụng như là một thông báo đến bên nhận TCP rằng tắc nghẽn đã xảy ra. Bên
nhận TCP, khi nhận được tín hiệu này, sửa đổi phần tiêu đề TCP của ACK phản hồi
bằng cách dùng một bit chưa sử dụng hiện thời trong trường cờ TCP. Như hình 1.2
cho thấy, một bit có nhãn "ECN-echo" được dùng tại bên nhận TCP để cho biết đã
xảy ra tắc nghẽn tới bên gửi. Khi nhận được một TCP segment với việc thiết lập bit
ECN-echo, bên gửi TCP gọi cơ chế điều khiển tắc nghẽn, nếu như nó phát hiện một
gói bị mất. Ngoài ra, nó thiết lập bit "giảm cửa sổ tắc nghẽn" (Congestion Window
Reduced -CWR) của gói kế tiếp cho bên nhận để thông báo với bên nhận về điều đó,
trên thực tế, bên gửi giảm tốc độ truyền của nó.

Kết hợp với ECN, IETF cũng ủng hộ việc sử dụng AQM. Ý tưởng phía sau
AQM là để phát hiện sớm tắc nghẽn và để chuyển tải thông báo tắc nghẽn đến máy
chủ cuối, cho phép chúng giảm tốc độ truyền của mình trước khi tràn hàng đợi và
mất gói xảy ra. Một dạng AQM được IETF đề nghị để triển khai trong mạng là nhận
biết ngẫu nhiên sớm RED (Random Early Detection) [20, 46]. Red duy trì một trung
bình dịch chuyển luỹ thừa hàm trọng (Exponentially Weighted Moving Average -
EWMA) của chiều dài hàng đợi mà nó sử dụng để phát hiện tắc nghẽn. Red phát
hiện sự tăng chiều dài hàng đợi trung bình và sử dụng nó để xác định có hay không
mất hoặc đánh dấu ECN cho mỗi gói.

Hình 1.3 Các hành vi mất gói/đánh dấu gói của Red
Cụ thể hơn, sơ đồ hình 1.3 xác suất mất gói/đánh dấu của Red như là một hàm
của chiều dài hàng đợi trung bình. Như hình vẽ cho thấy, khi chiều dài hàng đợi
trung bình vượt quá ngưỡng tối thiểu (min
th
), các gói bị mất hoặc đánh dấu ngẫu
nhiên bằng một xác suất cho trước. Một kết nối nhận được thông báo tắc nghẽn
trong một form ECN-mark, nó giảm cửa sổ tắc nghẽn đi một nửa nếu phát hiện một
gói mất. Xác suất một gói đến tại hàng đợi RED phụ thuộc vào gói mất hay đánh
Trang 11
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

dấu, nói cách khác, chiều dài hàng đợi trung bình và thông số xác suất ban đầu
(max
p
). Như hình 1.3 cho thấy, cách tính xác suất mất gói/đánh dấu là một hàm
tuyến tính của chiều dài hàng đợi trung bình. Xác suất là 0 khi chiều dài hàng đợi
trung bình là nhỏ hơn hoặc bằng min
th
và tăng tuyến tính tới max

p
khi chiều dài
hàng đợi trung bình gần ngưỡng tối đa (max
th
). Khi chiều dài hàng đợi trung bình
vượt quá max
th
, tất cả các gói dữ liệu bị mất hoặc đánh dấu.
Với việc triển khai ECN và Red, IETF hy vọng rằng tỷ lệ mất gói trong mạng
Internet có thể kiểm soát. Đáng tiếc, như cho thấy ở mục 2.2 và 2.3, có những điểm
yếu trong cả hai cơ chế điều khiển tắc nghẽn TCP và trong quản lý hàng đợi RED
chúng ngăn chặn các gói đang bị mất. Với những điểm yếu này, một số thuật toán
điều khiển tắc nghẽn và quản lý hàng đợi trong đó có ngăn ngừa hiệu quả mất gói
được đề xuất và đánh giá.
1.2.2 Các dịch vụ tích hợp và phân biệt
Theo sự phát triển Internet, số lượng các ứng dụng đa dạng được triển khai đã
tăng lên đáng kể. Đáng tiếc, rất nhiều trong số các ứng dụng này đòi hỏi phải đảm
bảo thực hiện nghiêm ngặt hơn về mặt băng thông và kết cuối chậm hơn so với cơ
sở hạ tầng Internet hiện tại và cung cấp dịch vụ nỗ lực tốt nhất (best-effort) [21, 30].
Bởi vì mô hình dịch vụ best-effort như ngày nay không thể hỗ trợ mọi ứng dụng, rất
nhiều nỗ lực đã được thực hiện để xây dựng các dịch vụ bổ sung nhằm đáp ứng nhu
cầu của các ứng dụng mới.
Với nỗ lực làm phong phú và tăng thêm các dịch vụ cung cấp bởi hệ thống
mạng, IETF đã phát triển một số kiến trúc mở rộng cho phép phân phối các cấp dịch
vụ cho các đối tượng người dùng khác nhau. Một trong những kết quả của nỗ lực
này là một kiến trúc cung cấp dịch vụ phân biệt (Differentiated Services - DiffServ)
bằng cách phân bổ rõ ràng và lập kế hoạch phân phối các nguồn tài nguyên trong
mạng. Mô hình này, dựa trên giao thức đăng ký trước tài nguyên (Resource
Reservation Protocol -RSVP) [22, 102] và tập hợp liên quan tới các lớp dịch vụ [87,
97], là đặc trưng cho Internet truyền thống. Trong khi kiến trúc dịch vụ này cung

cấp một nền tảng vững chắc cho việc cung cấp các lớp dịch vụ khác nhau trên
Internet, nó có nhiệm vụ quan trọng nhằm thay đổi cơ sở hạ tầng mạng Internet. Vì
vậy, một cách tiếp cận tiến hóa hơn để cung cấp các dịch vụ phân biệt trong Internet
bằng cách sử dụng các bit kiểu dịch vụ (ToS) trong tiêu đề IP [16, 31, 81, 86] gần
đây đã thu hút được rất nhiều sự quan tâm.

×