MÔ HÌNH HÓA VÀ CHỐNG TẤN CÔNG TỪ CHỐI DỊCH VỤ TỐC ĐỘ THẤP VÀO GIAO THỨC TCP GIÚP ỔN ĐỊNH HỆ THỐNG TĂNG BẢO MẬT TRONG DỊCH VỤ
Trang 1ĐẠI HỌC HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
MÔ HÌNH HÓA VÀ CHỐNG TẤN CÔNG TỪ CHỐI DỊCH VỤ
TỐC ĐỘ THẤP VÀO GIAO THỨC TCP
LUẬN ÁN TIẾN SĨMẠNG MÁY TÍNH VÀ TRUYỀN THÔNG DỮ LIỆU
HÀ NỘI – 2024
Trang 2ĐẠI HỌC HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
MÔ HÌNH HÓA VÀ CHỐNG TẤN CÔNG TỪ CHỐI DỊCH VỤ
TỐC ĐỘ THẤP VÀO GIAO THỨC TCP
Ngành: Mạng máy tính và truyền thông dữ liệu
Chuyên ngành: Mạng máy tính và truyền thông dữ liệu
Mã số: 9480102.01
LUẬN ÁN TIẾN SĨMẠNG MÁY TÍNH VÀ TRUYỀN THÔNG DỮ LIỆU
TẬP THỂ HƯỚNG DẪN KHOA HỌC:
1 GS TS NGUYỄN THANH THỦY
2 TS NGUYỄN ĐẠI THỌ
HÀ NỘI – 2024
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan luận án này là kết quả nghiên cứu của tôi, được thực hiện dưới sựhướng dẫn của GS TS Nguyễn Thanh Thủy và TS Nguyễn Đại Thọ Các kết quả
và số liệu trình bày trong luận án là hoàn toàn trung thực và chưa từng được công bốtrong bất kỳ công trình của ai khác Những tài liệu, nội dung nghiên cứu của các tácgiả khác mà luận án sử dụng đều được trích dẫn đầy đủ và ghi rõ nguồn gốc
Nghiên cứu sinh
Trang 4Gửi đến bố mẹ, em trai và những người bạn chân thành của tôi,
những người luôn động viên, tin tưởng và tạo điều kiện tốt nhất cho tôi trong
công việc nghiên cứu cũng như trong cuộc sống
Trang 5MỤC LỤC
Danh sách hình vẽ . viii
Danh sách bảng . xiii
Danh sách thuật ngữ và từ viết tắt . xiv
Danh sách biến và tham số . xviii
Lời cảm ơn . xxii
Mở đầu . 1
1 Tổng quan về tấn công từ chối dịch vụ phân tán và tấn công từ chối dịch vụ phân tán tốc độ thấp . 6
1.1 Tấn công từ chối dịch vụ phân tán 6
1.1.1 Khái niệm tấn công từ chối dịch vụ và tấn công từ chối dịch vụ phân tán 6
1.1.2 Nguồn gốc của tấn công từ chối dịch vụ phân tán 7
1.1.3 Khó khăn và thách thức trong chống tấn công từ chối dịch vụ phân tán 8
1.2 Tấn công từ chối dịch vụ phân tán tốc độ thấp 14
1.2.1 Khái niệm tấn công từ chối dịch vụ phân tán tốc độ thấp 14
1.2.2 Cơ chế điều khiển tắc nghẽn của giao thức TCP 15
1.2.3 Mô hình lưu lượng của tấn công từ chối dịch vụ phân tán tốc độ thấp 24
1.2.4 Phát hiện và chống tấn công từ chối dịch vụ phân tán tốc độ thấp 25
Trang 61.2.5 Mô hình phân tích của tấn công từ chối dịch vụ phân tán tốc
độ thấp 421.3 Kết luận 44
2 Thông lượng TCP trong điều kiện có tấn công từ chối dịch vụ phân tán tốc độ thấp . 45
2.1 Mô hình mạng và các giả thiết 472.2 Một dòng TCP sử dụng báo nhận tức thời 512.2.1 Kích thước cửa sổ tắc nghẽn không bị chia đôi trước khi TCP
rơi vào trạng thái chờ phát lại gói tin 532.2.2 Kích thước cửa sổ tắc nghẽn bị chia đôi trước khi TCP rơi vào
trạng thái chờ phát lại gói tin 632.2.3 Các kết quả mô phỏng 692.3 Nhiều dòng TCP đồng nhất sử dụng báo nhận tức thời 722.3.1 Kích thước cửa sổ tắc nghẽn không bị chia đôi trước khi TCP
rơi vào trạng thái chờ phát lại gói tin 732.3.2 Kích thước cửa sổ tắc nghẽn bị chia đôi trước khi TCP rơi vào
trạng thái chờ phát lại gói tin 782.3.3 Hiện tượng bất đối xứng của tiến trình kích thước cửa sổ tắc
nghẽn 832.3.4 Các kết quả mô phỏng 922.4 Một hoặc nhiều dòng TCP đồng nhất sử dụng báo nhận trễ 982.4.1 Kích thước cửa sổ tắc nghẽn không bị chia đôi trước khi TCP
rơi vào trạng thái chờ phát lại gói tin 1022.4.2 Kích thước cửa sổ tắc nghẽn bị chia đôi trước khi TCP rơi vào
trạng thái chờ phát lại gói tin 1082.4.3 Các kết quả mô phỏng 1142.5 So sánh phương pháp ước lượng đề xuất với các phương pháp khác 120
Trang 72.6 Kết luận 125
3 Chống tấn công từ chối dịch vụ phân tán tốc độ thấp . 126
3.1 Thuật toán quản lý hàng đợi tích cực Phát hiện sớm ngẫu nhiên 126
3.2 Tiếp cận dựa trên độ đo tỉ lệ tham gia tắc nghẽn mạng 129
3.2.1 Khảo sát giá trị độ đo tỉ lệ tham gia tắc nghẽn mạng của các dòng gói tin 132
3.2.2 Hiệu năng của tiếp cận dựa trên độ đo tỉ lệ tham gia tắc nghẽn mạng 138
3.2.3 Ảnh hưởng của tiếp cận đối với sự công bằng của các kết nối TCP 139
3.3 Phương pháp thích ứng ngưỡng 140
3.3.1 Sự hội tụ giá trị độ đo của các dòng tấn công 140
3.3.2 Tỉ lệ lấy mẫu tắc nghẽn của liên kết 142
3.3.3 Phương pháp thích ứng ngưỡng 143
3.4 Đánh giá mô phỏng 145
3.4.1 Sự thích ứng ngưỡng 145
3.4.2 Hiệu năng của tiếp cận với ngưỡng thích nghi 147
3.5 Kết luận 151
4 Tăng cường hiệu năng của tiếp cận dựa trên độ đo tỉ lệ tham gia tắc nghẽn mạng . 152
4.1 Vấn đề của độ đo cũ và đề xuất độ đo mới 152
4.2 Các kết quả mô phỏng 157
4.2.1 Khảo sát giá trị độ đo mới của các dòng TCP trong điều kiện bình thường 157
4.2.2 Phân biệt các dòng TCP với các dòng tấn công dựa trên độ đo mới 158
Trang 84.2.3 So sánh hiệu năng của tiếp cận dựa trên độ đo mới với tiếp
cận ban đầu 161
4.3 Kết luận 168
Kết luận . 169
Danh sách các công trình khoa học của luận án . 171
Tài liệu tham khảo . 172
Phụ lục . 182
Trang 9DANH SÁCH HÌNH VẼ
1.1 Một dòng tấn công LDDoS 24
2.1 Cấu trúc mạng trong nghiên cứu mô phỏng và ước lượng thông lượngTCP trong điều kiện có tấn công LDDoS 482.2 Kích thước cửa sổ tắc nghẽn khiCT < ssthresh 532.3 Đường thời gian của một dòng TCP trong điều kiện có tấn công LDDoS
với giả thiếtCT < ssthresh 572.4 Kích thước cửa sổ tắc nghẽn khissthresh < CT < W 592.5 Đường thời gian của một dòng TCP trong điều kiện có tấn công LDDoS
với giả thiếtssthresh < CT < W 602.6 Kích thước cửa sổ tắc nghẽn khiW < CT 622.7 Kích thước cửa sổ tắc nghẽn bị chia đôi một lần trước khi timeout
vàCT < ssthresh 632.8 Kích thước cửa sổ tắc nghẽn bị chia đôi một lần trước khi timeout
vàssthresh < CT < Wmax
2 652.9 Kích thước cửa sổ tắc nghẽn bị chia đôi một lần trước khi timeout
và Wmax
2 < CT < W 672.10 Kích thước cửa sổ tắc nghẽn bị chia đôi một lần trước khi timeout
vàW < CT 682.11 Các kết quả so sánh với một dòng TCP sử dụng báo nhận tức thời 712.12 Kích thước cửa sổ tắc nghẽn khi CT
K < ssthresh 752.13 Kích thước cửa sổ tắc nghẽn khissthresh < CT
K < W 762.14 Kích thước cửa sổ tắc nghẽn khiW < CT
K 772.15 Kích thước cửa sổ tắc nghẽn bị chia đôi một lần trước khi timeout
và CT
K < ssthresh 78
Trang 102.16 Kích thước cửa sổ tắc nghẽn bị chia đôi một lần trước khi timeout
vàssthresh < CT
K <
W max
2 802.17 Kích thước cửa sổ tắc nghẽn bị chia đôi một lần trước khi timeout
và Wmax
2 <
CT
K < W 812.18 Kích thước cửa sổ tắc nghẽn bị chia đôi một lần trước khi timeout
vàW < CT
K 822.19 TCP rơi vào trạng thái timeout khi kích thước cửa sổ tắc nghẽn đạtWmax
và CT
K < ssthresh 842.20 TCP rơi vào trạng thái timeout khi kích thước cửa sổ tắc nghẽn đạtWmax
vàssthresh < CT
K <
Wmax
2 852.21 TCP rơi vào trạng thái timeout khi kích thước cửa sổ tắc nghẽn đạtWmax
và Wmax
2 <
CT
K < W 862.22 TCP rơi vào trạng thái timeout khi kích thước cửa sổ tắc nghẽn đạtW max
vàW < CT
K 872.23 TCP rơi vào trạng thái timeout ngay sau khi kích thước cửa sổ tắc nghẽn
bị giảm một nửa từWmax và CT
K < ssthresh2 882.24 TCP rơi vào trạng thái timeout ngay sau khi kích thước cửa sổ tắc nghẽn
bị giảm một nửa từWmax vàssthresh2 < CT
K < ssthresh1 892.25 TCP rơi vào trạng thái timeout ngay sau khi kích thước cửa sổ tắc nghẽn
bị giảm một nửa từWmax vàssthresh1 < CT
K <
W max
2 902.26 TCP rơi vào trạng thái timeout ngay sau khi kích thước cửa sổ tắc nghẽn
bị giảm một nửa từW max và Wmax
2 <
CT
K < W 912.27 TCP rơi vào trạng thái timeout ngay sau khi kích thước cửa sổ tắc nghẽn
bị giảm một nửa từWmax vàW < CT
K 922.28 Các kết quả so sánh của ba tập mô phỏng trong mạng với nt_bw = 100
(Mbps) vàbn_bw = 5(Mbps) 94
Trang 112.29 Ước lượng thông lượng TCP khi có tấn công LDDoS với cấu hình mạng
nt_bw = 100(Mbps) vàbn_bw = 5(Mbps) cho tập mô phỏng thứ nhấtvớint_dl = 22(mili giây) 942.30 Ước lượng thông lượng TCP khi có tấn công LDDoS với cấu hình mạng
nt_bw = 100(Mbps) và bn_bw = 5(Mbps) cho tập mô phỏng thứ haivớint_dl = 2(mili giây) 952.31 Ước lượng thông lượng TCP khi có tấn công LDDoS với cấu hình mạng
nt_bw = 100 (Mbps) vàbn_bw = 5 (Mbps) cho tập mô phỏng thứ bavớint_dl = 7(mili giây) 952.32 Các kết quả so sánh của ba tập mô phỏng trong mạng vớint_bw = 1000
(Mbps) vàbn_bw = 20(Mbps) 962.33 Ước lượng thông lượng TCP khi có tấn công LDDoS với cấu hình mạng
cấu hình mạngnt_bw = 100 (Mbps) vàbn_bw = 5(Mbps) cho tập môphỏng thứ hai vớint_dl = 2(mili giây) 116
Trang 122.39 Ước lượng thông lượng TCP với báo nhận trễ khi có tấn công LDDoS với
cấu hình mạngnt_bw = 100 (Mbps) vàbn_bw = 5(Mbps) cho tập mô
phỏng thứ ba vớint_dl = 7(mili giây) 116
2.40 Các kết quả so sánh của ba tập mô phỏng trong mạng với nt_bw = 100 (Mbps) vàbn_bw = 5(Mbps) Báo nhận trễ được sử dụng 117
3.1 Cấu trúc của một mạng mô phỏng 133
3.2 Kết quả của tập mô phỏng thứ nhất 135
3.3 Kết quả của tập mô phỏng thứ hai 135
3.4 Kết quả của tập mô phỏng thứ ba 136
3.5 Kết quả của tập mô phỏng thứ tư 136
3.6 Sự phân bố xác suất của giá trị CPR của các dòng TCP và các dòng tấn công LDDoS 137
3.7 Thông lượng TCP chuẩn hóa khi có tấn công DDoS tốc độ thấp xảy ra 138
3.8 Độ lệch chuẩn của thông lượng tốt của 10 dòng TCP mới 140
3.9 CPR của dòng tấn công DDoS tốc độ thấp đầu tiên 141
3.10 CSR của liên kết nghẽn cổ chai trong điều kiện bình thường 142
3.11 Sự thích ứng củaτ trên toàn thời gian mô phỏng 146
3.12 Sự thích ứng củaτ trong khoảng thời gian [119, 126] (giây) 146
3.13 Thông lượng TCP chuẩn hóa khi có tấn công DDoS tốc độ thấp xảy ra 150
4.1 Mô hình tính giá trị CPR cho mỗi dòng gói tin 154
4.2 Mô hình tính giá trị CIR cho mỗi dòng gói tin 154
4.3 Các giá trị CIR của 30 dòng TCP đi qua liên kết nghẽn cổ chai 157
4.4 Sự khác nhau về giá trị CIR giữa các dòng TCP thông thường và các dòng tấn công DDoS tốc độ thấp 160
4.5 Thông lượng TCP chuẩn hóa trong điều kiện có tấn công DDoS tốc độ thấp khi sử dụng tiếp cận dựa trên CPR và tiếp cận dựa trên CIR 162
Trang 134.6 Kết quả so sánh hai tiếp cận vớiTa thay đổi 1634.7 Kết quả so sánh hai tiếp cận vớiTb thay đổi 1644.8 Kết quả so sánh hai tiếp cận vớiRb thay đổi 165A.1 Kích thước cửa sổ tắc nghẽn của mỗi dòng trong tập hợp 13 dòng TCP 199A.2 Kích thước cửa sổ tắc nghẽn của mỗi dòng trong tập hợp 7 dòng TCP 204A.3 Minh họa các gói tin TCP trong đường đi từ nguồn TCP danh nghĩa đến
nút nhận chung ở cuối vòng 9 211
Trang 14DANH SÁCH BẢNG
1.1 Ưu, nhược điểm của một số mô hình phát hiện tấn công LDDoS 311.2 Ưu, nhược điểm của một số mô hình chống tấn công LDDoS 402.1 Các tham số được thay đổi trong các kịch bản tấn công với một dòng TCP
sử dụng báo nhận tức thời 692.2 Số lần phục hồi sớm sau timeout của các dòng TCP trong khoảng thờigian [139, 159] (giây) do hiện tượng rò rỉ gói tin 1192.3 Số lượng chu kỳ trong đó hiện tượng phục hồi sớm xảy ra do rò rỉ gói tintrong khoảng thời gian [139, 159] (giây) 1192.4 So sánh phương pháp ước lượng đề xuất với các phương pháp khác theotiêu chí sai số tương đối bằng các thí nghiệm trong mạng với nt_bw =
1000(Mbps) vàbn_bw = 20(Mbps) và các dòng TCP sử dụng báo nhậntức thời 1222.5 So sánh phương pháp ước lượng đề xuất với các phương pháp khác theotiêu chí sai số tương đối bằng các thí nghiệm trong mạng với nt_bw =
100(Mbps) vàbn_bw = 5(Mbps) và các dòng TCP sử dụng báo nhận trễ.1243.1 Các biến và tham số của thuật toán RED 1273.2 Các tham số của tấn công DDoS tốc độ thấp 149A.1 Song ngữ Anh – Việt 182A.2 Các giá trị thông lượng tốt và độ lệch chuẩn SD (đơn vị: Mbit) của 10dòng TCP mới tương ứng với các giá trị khác nhau củaτ 185
Trang 15DANH SÁCH THUẬT NGỮ VÀ TỪ VIẾT TẮT
Từ viết tắt Từ gốc Giải nghĩa
AFI Attack Frequency
Intensification
Tăng cường tần số tấn công
AIMD Additive Increase
Multiplicative Decrease
Chính sách tăng theo cấp số cộng và giảm theo cấp số nhân
AKN-FGD Adaptive Kohonen Network
based Fine-Grained Detection
Phát hiện tấn công chi tiết dựa trên mạng Kohonen thích nghi
AQM Active Queue Management Quản lý hàng đợi tích cực
ARI Attack Burst Rate
Intensification
Tăng cường tốc độ các đợt bùng nổ gói tin tấn công
ARPA Advanced Research Projects
Agency
Cơ quan dự án nghiên cứu nâng cao thuộc
Bộ quốc phòng Mỹ ARPANET Advanced Research Projects
Agency Network
Một trong những mạng máy tính đầu tiên hình thành nên mạng Internet ngày nay AWI Attack Burst Width
CHOKe CHOose and Keep for
responsive flows; CHOose and Kill for unresponsive flows
Chọn và giữ các dòng gói tin có trách nhiệm; Chọn và diệt các dòng gói tin không có trách nhiệm
CIR Congestion Interval Rate Tỉ lệ khoảng thời gian tắc nghẽn
CLDAP Connection-less Lightweight
Directory Access Protocol
Giao thức truy cập thư mục nhẹ không kết nối
CPR Congestion Participation Rate Tỉ lệ tham gia tắc nghẽn mạng
CPU Central Processing Unit Bộ xử lý trung tâm
CSR Congestion Sample Rate Tỉ lệ lấy mẫu tắc nghẽn
DDoS Distributed
Denial-of-Service
Từ chối dịch vụ phân tán
DFT Discrete Fourier Transform Biến đổi Fourier rời rạc
DNS Domain Name System Hệ thống tên miền
Trang 16DANH SÁCH THUẬT NGỮ VÀ TỪ VIẾT TẮT (tiếp theo)
Từ viết tắt Từ gốc Giải nghĩa
EWMA Exponential Weighted
Moving Average
Trung bình động trọng số lũy thừa
FCE Flow Connection Entropy Entropy kết nối dòng
FPSE Fourier Power Spectrum
Entropy
Entropy phổ công suất Fourier
FRED Flow Random Early
Detection
Phát hiện sớm ngẫu nhiên dòng
FR-RED Fractal Residual based
Realtime Detection
Phát hiện tấn công thời gian thực dựa trên phần dư phân dạng
FTP File Transfer Protocol Giao thức truyền tải tệp tin
HTTP HyperText Transfer Protocol Giao thức truyền tải siêu văn bản
trên giây ICMP Internet Control Message
Protocol
Giao thức thông điệp điều khiển liên mạng
IETF Internet Engineering Task
Force
Nhóm chuyên trách kỹ thuật liên mạng
IoT Internet of Things Internet vạn vật
ISP Internet Service Provider Nhà cung cấp dịch vụ Internet
KPCA Kernel Principal Component
Analysis
Phân tích thành phần chính trung tâm
LBNL Lawrence Berkeley National
NCAS Normalized Cumulative
Amplitude Spectrum
Phổ biên độ tích lũy chuẩn hóa
Trang 17DANH SÁCH THUẬT NGỮ VÀ TỪ VIẾT TẮT (tiếp theo)
Từ viết tắt Từ gốc Giải nghĩa
NS-2 Network Simulator version 2 Phần mềm mô phỏng mạng phiên bản thứ
2 QoS Quality-of-Service Chất lượng dịch vụ
RED Random Early Detection Thuật toán quản lý hàng đợi phát hiện sớm
ngẫu nhiên RED-PD Random Early Detection with
Preferential Dropping
Thuật toán quản lý hàng đợi phát hiện sớm ngẫu nhiên loại bỏ gói tin theo ưu tiên RFC Request For Comments Tài liệu yêu cầu bình luận
RIVF Research, Innovation and
Vision for the Future
Hội thảo quốc tế về nghiên cứu, đổi mới và tầm nhìn cho tương lai
RoQ Reduction of Quality Giảm chất lượng
RRED Robust Random Early
Detection
Thuật toán RED mạnh mẽ
SDN Software-defined Network Mạng định nghĩa bởi phần mềm
SFB Stochastic Fair Blue Thuật toán quản lý hàng đợi xanh
công bằng ngẫu nhiên SMTP Simple Mail Transfer
Protocol
Giao thức truyền tải thư đơn giản
SoICT International Symposium on
Information and Communication Technology
Hội thảo quốc tế về công nghệ thông tin và truyền thông
SRED Stabilized Random
Early Drop
Loại bỏ gói tin sớm ngẫu nhiên ổn định
SVR Support Vector Regression Hồi quy véc tơ hỗ trợ
Tbps Terabits Per Second Một đơn vị đo tốc độ truyền dữ liệu;
1 Tbps = 1012bit/giây TCP Transmission Control
Protocol
Giao thức điều khiển truyền dữ liệu
TCP-pack-size
TCP packet size Kích thước gói tin TCP
Telnet Terminal Network Chương trình dòng lệnh kết nối với
các thiết bị từ xa qua mạng
Trang 18DANH SÁCH THUẬT NGỮ VÀ TỪ VIẾT TẮT (tiếp theo)
Từ viết tắt Từ gốc Giải nghĩa
UDP User Datagram Protocol Giao thức gói dữ liệu người dùng
UTR The ratio of UDP traffic to
TCP traffic
Tỉ lệ giữa lưu lượng UDP và lưu lượng TCP
VNU Vietnam National University Trường Đại học Quốc gia Việt Nam
Clustering Algorithm with Weighted Euclidean Distance
Thuật toán phân cụm dịch chuyển trung bình nâng cao với khoảng cách Euclide có trọng số
WFE Wavelet Feature Extraction Trích xuất đặc trưng sóng
WIDE Widely Integrated Distributed
Environment
Môi trường phân tán tích hợp rộng rãi
WPSE Wavelet Power Spectrum
Entropy
Entropy phổ công suất sóng
Trang 19DANH SÁCH BIẾN VÀ THAM SỐ
Ký hiệu Tên đầy đủ Giải nghĩa
ack _ dl Time period used by the delayed
ACK mechanism
Khoảng thời gian được sử dụng bởi cơ chế báo nhận trễ (đơn vị: mili giây)
avg Average queue size at the
bottleneck link (packets)
Kích thước hàng đợi trung bình tại liên kết nghẽn cổ chai (đơn vị: gói tin)
B Queue size at the bottleneck link
(packets)
Kích thước hàng đợi tại liên kết nghẽn cổ chai (đơn vị: gói tin)
bn _ bw Bandwidth of the bottleneck
link from router R0 to router R1
in Figure 2.1 (Mbps)
Băng thông của liên kết nghẽn cổ chai giữa router R0 và router R1 trong Hình 2.1 (đơn vị: Mbps)
bn _ dl One-way propagation delay of
the bottleneck link from router
R0 to router R1 in Figure 2.1
(ms)
Thời gian trễ truyền dẫn một chiều của liên kết nghẽn cổ chai giữa router R0 và router R1 trong Hình 2.1 (đơn vị: mili giây)
C Bandwidth of the bottleneck
link in units of packets/second
Băng thông của liên kết nghẽn cổ chai (đơn vị: gói tin/giây)
congested The congestion status of the
current sampling period
Trạng thái tắc nghẽn của khoảng thời gian lấy mẫu hiện thời
count Number of packets since last
marked or dropped packet
Số lượng gói tin đến kể từ gói tin bị đánh dấu hoặc loại bỏ cuối cùng
CT Bandwidth-delay product or the
capacity of the pipeline from
source to destination
Tích băng thông và thời gian trễ truyền dẫn hai chiều hay là dung lượng của đường ống
từ nguồn đến đích
cwnd Congestion Window Size Kích thước cửa sổ tắc nghẽn
d Length of a sampling period in
the CPR-based approach
Độ dài của một khoảng thời gian lấy mẫu trong tiếp cận dựa trên CPR
f The associated flow of a packet Dòng tương ứng với một gói tin
F i A packet flow passing through a
router
Một dòng gói tin đi qua router
g Number of attack groups Số lượng nhóm tấn công
K Number of TCP connections Số lượng kết nối TCP
L Number of levels in the Bloom
filter
Số lượng mức của bộ lọc Bloom
m Number of attack flows in each
attack group and n = g × m
Số lượng dòng tấn công trong mỗi nhóm
và n = g × m
Trang 20DANH SÁCH BIẾN VÀ THAM SỐ (tiếp theo)
Ký hiệu Tên đầy đủ Giải nghĩa
M ACK ACK packet size (bytes) Kích thước gói tin báo nhận (đơn vị: bytes)
max p The maximum value for p b Giá trị lớn nhất của p b
max _ seen _ The maximum sequence number
of data packets TCP receiver has
received so far
Số tuần tự lớn nhất của các gói tin dữ liệu
mà bên nhận TCP đã nhận được
maxth The maximum threshold for the
average queue size
Ngưỡng lớn nhất của kích thước hàng đợi trung bình
minRT O The Minimum Retransmission
Time Out
Thời gian chờ phát lại gói tin nhỏ nhất
minth The minimum threshold for the
average queue size
Ngưỡng nhỏ nhất của kích thước hàng đợi trung bình
MT CP TCP packet size (bytes) Kích thước gói tin TCP (đơn vị: bytes)
MU DP LDDoS attack packet size
(bytes)
Kích thước gói tin tấn công LDDoS (đơn vị: bytes)
n Number of attack flows Số lượng dòng tấn công
N Number of times the congestion
window size has been halved
before timeout or the number of
bins in each level of the Bloom
filter depending on the context
Số lần kích thước cửa sổ tắc nghẽn bị giảm một nửa trước khi timeout hoặc số lượng ô nhớ trong mỗi mức của bộ lọc Bloom
Nc Number of TCP connections Số lượng kết nối TCP
next _ The sequence number of a data
packet TCP receiver is expecting
to receive
Số tuần tự của một gói tin dữ liệu mà bên nhận TCP đang chờ
nt _ bw Bandwidth of left- and
right-most links in Figure 2.1 (Mbps)
Băng thông của các liên kết mạng bên trái router R0 và bên phải router R1 trong Hình
2.1 (đơn vị: Mbps)
nt _ dl One-way propagation delay of
left- and right-most links in
Figure 2.1 (ms)
Thời gian trễ truyền dẫn một chiều của các liên kết bên trái router R0 và bên phải router R1 trong Hình 2.1 (đơn vị: mili giây)
pa Current packet marking or
pkt An incoming packet to a router Một gói tin đến router
q Current queue size Kích thước hàng đợi hiện thời
Trang 21DANH SÁCH BIẾN VÀ THAM SỐ (tiếp theo)
Ký hiệu Tên đầy đủ Giải nghĩa
q _ time Start of the queue idle time Thời gian bắt đầu khi hàng đợi rỗng
R b Burst rate of an attack flow or a
whole LDDoS attack depending
on the context
Tùy theo ngữ cảnh có thể là tốc độ mỗi đợt bùng nổ gói tin của một dòng tấn công hoặc của cả cuộc tấn công LDDoS
R+b Burst rate of a whole LDDoS
attack
Tốc độ mỗi đợt bùng nổ gói tin của cả cuộc tấn công LDDoS
liệu mà nguồn TCP đã gửi đi cho đến thời điểm hiện tại
RT O Retransmission Time Out Thời gian chờ phát lại gói tin của TCP
RT T Round Trip Time Thời gian đi về của gói tin
RT T VAR Round Trip Time Variation Biến thiên thời gian đi về của gói tin
rwnd Receiver’s Window Size Kích thước cửa sổ nhận
s Start time of a LDDoS attack
flow
Thời điểm bắt đầu của một dòng tấn công LDDoS
S i,t Number of packets from flow F i
arriving at a router in the time
period of [t, t + d]
Số lượng gói tin của dòng F i đến router trong khoảng thời gian [t, t + d]
SRT T Smoothed Round Trip Time Thời gian đi về của gói tin đã làm trơn
ssthresh Slow Start Threshold Ngưỡng khởi động chậm
T Two-way propagation delay of
TCP packets (second) or set of
sampling periods (depending on
the context)
Thời gian trễ truyền dẫn hai chiều của các gói tin TCP (đơn vị: giây) hoặc tập các khoảng thời gian lấy mẫu (tùy theo ngữ cảnh)
T a Inter-burst period of an attack
flow or a whole LDDoS attack
depending on the context
Tùy theo ngữ cảnh có thể là khoảng thời gian giữa hai đợt bùng nổ gói tin liên tiếp của một dòng tấn công hoặc của cả cuộc tấn công LDDoS
Ta+ Inter-burst period of a whole
LDDoS attack
Khoảng thời gian giữa hai đợt bùng nổ gói tin liên tiếp của cả cuộc tấn công LDDoS
Tb Burst length of an attack flow or
a whole LDDoS attack
depend-ing on the context
Tùy theo ngữ cảnh có thể là chiều dài mỗi đợt bùng nổ gói tin của một dòng tấn công hoặc của cả cuộc tấn công LDDoS
Tb+ Burst length of a whole LDDoS
attack
Chiều dài mỗi đợt bùng nổ gói tin của cả cuộc tấn công LDDoS
Trang 22DANH SÁCH BIẾN VÀ THAM SỐ (tiếp theo)
Ký hiệu Tên đầy đủ Giải nghĩa
T 1 Round trip time of a TCP packet
when the queue at the bottleneck
link is empty (second)
Thời gian đi về của một gói tin TCP khi hàng đợi tại liên kết nghẽn cổ chai trống rỗng (đơn vị: giây)
T∗ Set of sampling periods when
a router’s outgoing link is
con-gested
Tập các khoảng thời gian lấy mẫu khi liên kết đầu ra của một router bị tắc nghẽn
W Congestion window size of a
TCP flow just before a timeout
event due to LDDoS attacks
Kích thước cửa sổ tắc nghẽn của một dòng TCP ngay trước khi bị timeout do tấn công LDDoS gây ra
W max The maximum congestion
win-dow size a TCP flow can achieve
based on its particular path from
source to destination
Kích thước cửa sổ tắc nghẽn lớn nhất một dòng TCP có thể đạt được dựa trên đường
đi cụ thể của nó từ nguồn đến đích
α Smoothing coefficient in the
RTT calculation or decrement
step in our adaptation method
for the CPR threshold depending
on the context
Tùy theo ngữ cảnh có thể là hệ số làm trơn trong tính toán thời gian đi về của gói tin hoặc giá trị bước giảm trong phương pháp thích ứng ngưỡng CPR
β Smoothing coefficient in the
RTTVAR calculation or
increase factor in our adaptation
method for the CPR threshold
depending on the context
Tùy theo ngữ cảnh có thể là hệ số làm trơn trong tính toán biến thiên thời gian đi về của gói tin hoặc giá trị bước tăng trong phương pháp thích ứng ngưỡng CPR
ζ i CIR of flow F i Giá trị CIR của dòng F i
θ i CPR of flow F i Giá trị CPR của dòng F i
σ The starting time difference
between two consecutive attack
groups assuming that all attack
flows in a group have the same
starting time
Hiệu thời gian bắt đầu của hai nhóm tấn công liên tiếp với giả sử rằng tất cả các dòng tấn công trong một nhóm có cùng thời gian bắt đầu
τ CPR or CIR threshold
depend-ing on the context
Ngưỡng CPR hoặc CIR tùy theo ngữ cảnh
Trang 23LỜI CẢM ƠN
Em xin gửi lời cảm ơn chân thành, sâu sắc đến hai thầy hướng dẫn, GS TS NguyễnThanh Thủy và TS Nguyễn Đại Thọ Dưới sự hướng dẫn của các thầy cùng với nhữngquy định luôn luôn tạo điều kiện của nhà trường trên cơ sở lấy người học là trung tâm,nghiên cứu sinh (NCS) cảm thấy được tự do và chủ động cao nhất để có thể theo đuổicác ý tưởng nghiên cứu mới mẻ nhưng cũng đầy thách thức mà tập thể hướng dẫn vàNCS đã đề ra
NCS xin chân thành cảm ơn các thầy cô giáo trong khoa Công nghệ thông tin vàtất cả cán bộ, nhân viên của trường Đại học Công nghệ, Đại học Quốc gia Hà Nội
Nỗ lực của các thầy cô và cán bộ nhà trường đã tạo nên một môi trường học tập trungthực và lành mạnh để những NCS như em có được ngày hôm nay Trong quá trìnhhọc tập và rèn luyện, NCS rất may mắn được các thầy cô sau hướng dẫn và giúp đỡ:(1) Thầy PGS TS Hà Quang Thụy và PGS TS Trương Ninh Thuận môn Phươngpháp nghiên cứu và kỹ năng viết báo cáo khoa học (2) Thầy TS Trần Trúc Mai mônTruyền thông không dây nâng cao (3) Thầy TS Nguyễn Đại Thọ môn Đánh giá hiệunăng mạng (4) Thầy TS Trần Trúc Mai, TS Lê Đình Thanh và TS Nguyễn Đại Thọtham gia đánh giá hai chuyên đề NCS
NCS xin gửi những tình cảm thân thiết đến các bạn cùng khóa K22, đặc biệt làchuyên ngành Mạng máy tính và truyền thông dữ liệu, cảm ơn tất cả bạn bè, đồngnghiệp và đặc biệt là những người thân trong gia đình đã luôn ủng hộ, động viên vàgiúp đỡ để NCS có thể hoàn thành luận án này
Trải qua quá trình nghiên cứu nghiêm túc, thận trọng và tỉ mỉ, NCS hướng tới mộtluận án có chất lượng và hữu ích Dù đã cố gắng hết sức nhưng luận án vẫn khôngthể tránh khỏi thiếu sót, với tinh thần cầu thị và khiêm tốn, NCS xin đón nhận tất cảnhững ý kiến khen chê để bản thân có thể hiểu biết và hoàn thiện hơn nữa trên conđường nghiên cứu khoa học của mình
Trang 24Mở đầu
1 Bối cảnh nghiên cứu và lý do chọn đề tài
Tấn công từ chối dịch vụ phân tán tốc độ thấp vào giao thức TCP – LDDoS
(TCP-targeted low-rate distributed denial-of-service) là một loại tấn công từ chối dịch vụ
phân tán DDoS (distributed denial-of-service), được giới thiệu lần đầu tiên bởi A.
Kuzmanovic và E Knightly vào năm 2003 [1] So với tấn công DDoS truyền thống,LDDoS khó bị phát hiện hơn do tốc độ gửi gói tin tấn công trung bình khá thấp xuất
phát từ hành vi gửi gói tin tấn công theo từng đợt bùng nổ (burst) cách đều nhau,
mỗi đợt với một tốc độ cao và diễn ra trong khoảng thời gian ngắn Mặc dù vậy, loạitấn công này làm cho các kết nối TCP liên tục rơi vào trạng thái chờ phát lại gói tin
(timeout) và thông lượng bị giảm mạnh.
Các cơ chế hiện có để phát hiện và chống tấn công DDoS [2] [3] thường dựa trên
đo lường thống kê có thể không hiệu quả đối với các tấn công LDDoS, biến chúngtrở thành thách thức thực sự trong mạng Internet hiện nay Nó cho thấy sự cần thiếtcủa việc nghiên cứu các cơ chế và giải pháp để chống lại cách thức tấn công lén lút
này Các thiết bị định tuyến (router) thường chỉ thực hiện một nhiệm vụ duy nhất là
lưu trữ và trung chuyển gói tin từ nguồn đến đích Tuy nhiên, ngày càng có nhiều ýkiến cho rằng các thiết bị này cần phải tham gia nhiều hơn vào việc phát hiện và điềuchỉnh các nguồn dữ liệu chiếm nhiều băng thông hoặc các nguồn tấn công DDoS [3]
Vì vậy, cải tiến cơ chế quản lý hàng đợi tích cực AQM (Active Queue Management)
tại router nhằm mục đích chống tấn công LDDoS là một hướng nghiên cứu phù hợpvới xu hướng chung hiện nay
2 Các vấn đề còn tồn tại
Có rất nhiều cơ chế và giải pháp đã được đề xuất để phát hiện và chống tấn côngLDDoS và một số mô hình phân tích để ước lượng thông lượng TCP khi có tấn công
Trang 25xảy ra Hiệu quả của một số cơ chế và giải pháp chống tấn công LDDoS chưa đượclàm rõ và tăng cường Bên cạnh đó, các mô hình phân tích với mục đích là đánh giáhiệu quả tấn công dưới dạng thông lượng TCP dựa trên các tham số đã biết của cuộctấn công và của môi trường mạng, tuy nhiên các mô hình này lại chưa đáp ứng đượcyêu cầu về tính chính xác hoặc nếu có thì lại gặp phải nhược điểm không xem xét tất
cả các trường hợp có thể xảy ra, chẳng hạn như mô hình của Luo [4] chưa xem xétcác trường hợp trong đó kích thước cửa sổ tắc nghẽn của các kết nối TCP bị giảm mộtnửa một hoặc nhiều lần trước khi timeout
3 Mục tiêu nghiên cứu
Xuất phát từ các vấn đề còn tồn tại nêu trên, luận án hướng đến hai mục tiêu chính:
1 Đề xuất và xây dựng một phương pháp mới để ước lượng thông lượng TCP khi
có tấn công xảy ra Phương pháp mới phải đạt được độ chính xác cao và khắcphục được nhược điểm của các mô hình đã có
2 Nghiên cứu nâng cao hiệu quả chống tấn công LDDoS của một cơ chế hỗ trợ
router, gọi là tiếp cận dựa trên độ đo tỉ lệ tham gia tắc nghẽn mạng CPR
(Con-gestion Participation Rate)
4 Đối tượng, phạm vi và phương pháp nghiên cứu
4.1 Đối tượng nghiên cứu
Đối tượng nghiên cứu của luận án là: (1) hành vi và thông lượng của các kết nối TCPtrong điều kiện có tấn công LDDoS xảy ra (2) các thuật toán quản lý hàng đợi tíchcực tại router, trong đó tập trung chủ yếu vào tiếp cận dựa trên độ đo CPR để chốngtấn công LDDoS
Trang 26và truyền thông máy tính Ngay trong công trình nghiên cứu tiên phong về tấn côngLDDoS [6], các tác giả cũng chỉ có thể thực hiện một số thử nghiệm đơn giản trên môitrường Internet với chỉ một nguồn TCP, một nút nhận và một máy tính tấn công Việcđánh giá tác động của tấn công LDDoS đối với nhiều nguồn TCP được các tác giảthực hiện thông qua mô phỏng Các nghiên cứu tiếp theo về LDDoS cũng sử dụng môphỏng mạng bên cạnh một số phương pháp khác như thực hiện thí nghiệm trên mạngthật hoặc sử dụng tập dữ liệu công khai, v.v (tham khảo các mục 1.2.4và1.2.5).
4.3 Phương pháp nghiên cứu
Luận án sử dụng 2 phương pháp nghiên cứu chính: (1) phân tích và tổng hợp lý thuyết(2) mô hình hóa và so sánh kết quả lý thuyết với kết quả mô phỏng Các phương pháptoán học được sử dụng để mô tả sự kiện tấn công và đề xuất giải pháp Kết quả của
mô hình lý thuyết được so sánh với kết quả mô phỏng Hiệu năng của tiếp cận dựatrên độ đo CPR và các cải tiến cũng được đánh giá và so sánh thông qua mô phỏng
và đều đi qua một liên kết nghẽn cổ chai Các dòng TCP này được gọi là đồng
Trang 27nhất Trong trường hợp này và khi TCP sử dụng báo nhận tức thời (immediate
ACK), các nghiên cứu trước đây [7] [8] đã chỉ ra có sự đồng bộ chung (global
synchronization) giữa các dòng TCP và tiến trình kích thước cửa sổ tắc nghẽncủa chúng trùng khớp hoặc gần như trùng khớp với nhau Do đó, thông lượngcủa mỗi dòng TCP trong tập hợp là như nhau và có thể tính được Phương phápước lượng đề xuất kết hợp sử dụng phân tích rời rạc cho giai đoạn khởi độngchậm và xấp xỉ liên tục cho giai đoạn tránh tắc nghẽn đối với tiến trình kíchthước cửa sổ tắc nghẽn của mỗi dòng TCP Kết quả mô phỏng cho thấy phươngpháp mới đạt được độ chính xác cao hơn so với các phương pháp khác Trong
trường hợp TCP sử dụng báo nhận trễ (delayed ACK), các dòng TCP mặc dù có
thời gian trễ truyền dẫn giống nhau nhưng tiến trình kích thước cửa sổ tắc nghẽncủa chúng không trùng khớp với nhau và việc tính thông lượng của từng dòngTCP là không thể thực hiện được Trong trường hợp này, tác giả đề xuất một giátrị cận trên và một giá trị cận dưới cho thông lượng TCP Kết quả mô phỏng chothấy thông lượng TCP rơi vào hoặc rất gần với khoảng giá trị đề xuất trong cáctrường hợp được xem xét Trên cơ sở đó, tác giả đề xuất phương pháp lựa chọnmột trong hai giá trị trên là giá trị ước lượng chính thức và nó cũng đạt được độchính xác cao hơn so với các đề xuất khác
Nội dung này đã được công bố trong kỷ yếu hội thảo RIVF năm 2020 [C3] và
đã được gửi đến tạp chí Journal of Information Security and Applications năm
2024 và đang chờ kết quả phản biện
2 Phân tích và nghiên cứu hiệu năng của một cơ chế hỗ trợ router chống tấn côngLDDoS, gọi là tiếp cận dựa trên độ đo CPR Qua đó, tác giả đề xuất hai ý tưởng
để cải tiến và tăng cường hiệu năng như sau:
• Thứ nhất là đề xuất phương pháp thay đổi ngưỡng CPR theo thời gian đểgiúp tiếp cận bảo tồn được thông lượng TCP cao trong điều kiện có tấncông LDDoS đồng thời có thể chia sẻ băng thông công bằng cho các kếtnối TCP trong điều kiện bình thường khi không có tấn công xảy ra
Nội dung này đã được công bố trong kỷ yếu hội thảo SoICT năm 2017[C1]
và trong tạp chí VNU Journal of Computer Science and Communication
Trang 28Engineering năm 2024[J1].
• Thứ hai là đề xuất một độ đo mới gọi là tỉ lệ khoảng thời gian tắc nghẽn
CIR (Congestion Interval Rate) để thay thế độ đo CPR giúp bảo vệ thông
lượng TCP tốt hơn khi có tấn công LDDoS hoặc DDoS xảy ra
Nội dung này đã được công bố trong kỷ yếu hội thảo SoICT năm 2018[C2]
và đã được gửi đến tạp chí Computer Communications năm 2024 và đangchờ kết quả phản biện
6 Cấu trúc của luận án
Luận án bao gồm 4 chương:
• Chương1trình bày tổng quan về tấn công từ chối dịch vụ phân tán DDoS và tấncông từ chối dịch vụ phân tán tốc độ thấp LDDoS
• Chương 2 trình bày phương pháp mới ước lượng thông lượng TCP trong điềukiện có tấn công LDDoS
• Chương 3 phân tích tiếp cận dựa trên độ đo CPR để chống tấn công LDDoS,trên cơ sở đó đề xuất cơ chế thay đổi ngưỡng CPR theo thời gian
• Chương 4 thảo luận và làm rõ các vấn đề hiện tại của tiếp cận dựa trên độ đoCPR và đề xuất độ đo CIR mới để bảo vệ thông lượng TCP tốt hơn khi có tấncông xảy ra
Trang 29và chống tấn công LDDoS, phần cuối cùng giới thiệu một số mô hình phân tích đã cócủa các tấn công LDDoS.
1.1 Tấn công từ chối dịch vụ phân tán
1.1.1 Khái niệm tấn công từ chối dịch vụ và tấn công từ chối dịch vụ phân tán
Tấn công từ chối dịch vụ DoS (denial-of-service attack) là một hành động nhằm ngăn
chặn hoặc làm suy yếu việc sử dụng hợp pháp mạng cũng như các hệ thống máy tính,các ứng dụng bằng cách làm cạn kiệt các tài nguyên như bộ xử lý trung tâm CPU, băngthông, bộ nhớ trong, không gian đĩa cứng (theo [9]) Nếu có nhiều máy tính tham gia
vào tấn công thì nó được gọi là tấn công từ chối dịch vụ phân tán DDoS (distributed
denial-of-service attack)
Một số tấn công DDoS điển hình: (1) Tấn công DDoS truyền thống sử dụng mộtmạng lưới lên đến hàng trăm nghìn máy tính tham gia, mỗi máy tính phát gói tinnhanh nhất có thể đến một mục tiêu trên mạng nhằm làm cạn kiệt băng thông của
Trang 30đường truyền kết nối đến hệ thống mục tiêu (2) Tấn công DDoS sử dụng gói tin yêucầu kết nối của giao thức TCP (gói tin SYN) [10] [11] Nó khai thác cơ chế bắt tay ba
bước (three-way handshake) của TCP trong việc khởi tạo một kết nối với mục đích
xấu là làm đầy nội dung bảng thông tin các kết nối trên máy chủ, làm cho các máy tínhthông thường không thể kết nối đến máy chủ nữa (3) Tấn công quảng bá có hướng
ICMP hay còn gọi là tấn công “smurf ” [1] [12] sử dụng gói tin quảng bá có hướng,với địa chỉ nguồn giả mạo là địa chỉ của nạn nhân, gửi đến một mạng ở xa, sau đómỗi máy tính trong mạng ở xa đó nhận được một bản sao chép của gói tin quảng bá
và gửi gói tin trả lời về địa chỉ của máy nạn nhân dẫn đến nạn nhân bị choáng ngợp vàphải xử lý một số lượng gói tin lớn (4) Tấn công phản xạ dựa trên hệ thống tên miềnDNS [13] sử dụng các điểm yếu trong nguyên lý hoạt động của hệ thống tên miền đểtạo ra một số lượng lớn gói tin gửi đến nạn nhân
Tấn công DDoS là một loại tấn công mạng với mục đích gây ra từ chối hoặc suygiảm dịch vụ đối với người dùng bình thường Các dịch vụ mà DDoS nhắm tới rất đadạng có thể kể đến như là dịch vụ truyền tệp tin FTP, dịch vụ web, dịch vụ tên miềnDNS, các ứng dụng như GitHub v.v Tấn công DDoS có thể lợi dụng các máy chủcung cấp dịch vụ như DNS, CLDAP, SMTP để trung chuyển và khuếch đại lưu lượngtấn công cũng như che dấu các máy tính tấn công Các cuộc tấn công DDoS với sốlượng, quy mô và cường độ ngày càng tăng cho thấy mức độ nguy hiểm leo thang củaloại hình tấn công này (xem phụ lụcA.3về các sự kiện tấn công DDoS gần đây)
1.1.2 Nguồn gốc của tấn công từ chối dịch vụ phân tán
Mạng Internet đã được xây dựng cách đây vài thập kỷ và đã trở nên phổ biến trên toànthế giới Mặc dù hiệu năng của mạng Internet dưới dạng thời gian trễ mạng, thônglượng, hiện tượng tắc nghẽn mạng đã được cải thiện đáng kể từ khi thành lập, nguyên
lý hoạt động của nó vẫn gần như không thay đổi, mạng Internet vẫn hoạt động dựa
trên 2 nền tảng: dịch vụ nỗ lực tối đa (best-effort service) và mô hình đầu cuối tới đầu cuối (end-to-end paradigm) Ở trung tâm của mạng Internet, các router chịu trách
nhiệm trung chuyển gói tin từ nguồn tới đích Nguồn và đích là những máy tính cuối,
là nơi gói tin được gửi và nhận Dịch vụ nỗ lực tối đa có nghĩa là các router trung gian
Trang 31chỉ đơn giản thực hiện nhiệm vụ lưu trữ (storing) và đẩy (forwarding) gói tin đến đích Tất cả các công việc khác, nổi bật trong đó là điều khiển tắc nghẽn mạng (network
congestion control), được dành cho các máy tính cuối Vì thế mô hình đầu cuối tớiđầu cuối, và đặc biệt là điều khiển tắc nghẽn đầu cuối, đóng vai trò quan trọng trongviệc tránh và làm dịu bớt tắc nghẽn mạng xảy ra trên Internet Ở thời điểm hiện tại,TCP vẫn là giao thức vận chuyển chủ yếu trong mạng Internet và do đó cơ chế điềukhiển tắc nghẽn của nó chiếm ưu thế trong điều khiển tắc nghẽn đầu cuối Nếu không
có cơ chế điều khiển tắc nghẽn của giao thức TCP, mạng Internet có thể trở nên tắcnghẽn nghiêm trọng và không thể sử dụng được như thời điểm tháng 10 năm 1986 khi
mà nó phải chịu một chuỗi sụp đổ do tắc nghẽn [14]
Tuy nhiên vấn đề vẫn chưa dừng lại ở đây Nếu một máy tính trở nên độc hại bằngcách gửi gói tin liên tục vào mạng với một tốc độ cao hoặc chỉ đơn giản là không sửdụng cơ chế điều khiển tắc nghẽn [15], nó sẽ làm tổn thương các máy tính khác đanggiao tiếp bởi vì một vài tài nguyên như là băng thông mạng, các chu kỳ của bộ xử lýhoặc dung lượng bộ nhớ trên router hay trên máy tính cuối bị cạn kiệt Trong khi đó,mạng trung gian vẫn truyền các gói tin tới đích một cách thụ động và không làm gì
để ngăn chặn lưu lượng mạng từ máy tính độc hại này Hiện tượng nổi tiếng này đượcgọi là tấn công từ chối dịch vụ Internet có thể đem đến cho chúng ta một cách thứctiện lợi để truy cập thông tin cũng như giao tiếp với nhau nhưng nó cũng mang theotrong kiến trúc chức năng của nó nguồn gốc sâu xa của nguy cơ tấn công DDoS
1.1.3 Khó khăn và thách thức trong chống tấn công từ chối dịch vụ phân tán
Tấn công từ chối dịch vụ phân tán DDoS là một thách thức lớn đối với sự ổn định vàtin cậy của mạng Internet Các nhà khoa học đã dành nhiều thời gian và công sức vào
nghiên cứu phát hiện tấn công (attack detection), truy vết ngược các nguồn tấn công (traceback of attacking sources) cũng như giảm thiểu tác hại và lọc các gói tin tấn công (attack mitigation and filtering) [16–26] Tuy nhiên, có hai yêu cầu khiến choviệc thiết kế các hệ thống chống tấn công DDoS trở nên khó khăn [27]:
1 Có khả năng phân loại gói tin Tấn công DDoS thường bao gồm một số lượng
Trang 32lớn các gói tin thông thường Chúng trộn lẫn hoàn toàn với một số ít các gói tinđược gửi đi từ các máy tính thông thường và không có một sự khác biệt nào trên
cơ sở từng gói tin Để thực hiện việc phân biệt lưu lượng, các hệ thống phòngchống DDoS phải nhóm tất cả các gói tin hướng đến nạn nhân vào các cấu trúcvới ngữ nghĩa cao hơn (chẳng hạn như “tất cả lưu lượng trao đổi giữa hai địachỉ IP”, “tất cả lưu lượng HTTP”, “tất cả lưu lượng xuất phát từ một địa chỉ IP”,v.v ), sau đó lưu trữ nhiều thông tin thống kê trên các cấu trúc này theo thời gian
để phát hiện các giao tiếp với dung lượng lớn hoặc bất thường Các gói tin thuộcvào các cấu trúc nghi ngờ sau đó sẽ được kiểm soát, trong khi các gói tin thuộcvào các cấu trúc thể hiện hành vi thông thường sẽ được cho đi qua
2 Có thể kiểm soát được phần lớn lưu lượng tấn công Lưu lượng tấn công
DDoS được tạo ra từ vô số các máy tính tấn công gọi là zombies, trải rộng trên
khắp Internet và chỉ hội tụ ở lân cận với nạn nhân Hệ thống phòng chống DDoSphải kiểm soát được phần lớn lưu lượng tấn công để giảm nhẹ tác hại của tấncông tác động đến nạn nhân Điều này cho thấy nếu hệ thống là một điểm thì
nó phải được đặt gần nạn nhân hoặc nếu hệ thống là phân tán thì các nút phòngchống tấn công của nó phải bao phủ phần lớn mạng Internet
Các hệ thống chống tấn công DDoS trong thực tế có thể không đáp ứng được cả haiyêu cầu trên, đặc biệt đối với các hệ thống một điểm và có tính chất độc lập như các
cơ chế hỗ trợ router Để phân biệt lưu lượng một cách chính xác, các router cần một
bộ nhớ lớn để phục vụ việc lưu trữ thông tin thống kê.1 Tuy nhiên dung lượng bộ nhớtrên các router rất hạn chế do nhiều nguyên nhân khác nhau [8] Vì vậy các cơ chế hỗtrợ router chống tấn công DDoS thường đối mặt với vấn đề không đủ bộ nhớ để lưu
trữ thông tin của tất cả các dòng gói tin đi qua, đặc biệt đối với các router lõi (core
router), nơi có đến hàng triệu dòng gói tin đi qua trong vòng một giờ (theo [2]) Mặtkhác, sự cần thiết của việc kiểm soát phần lớn lưu lượng tấn công lại yêu cầu việc đặtcác hệ thống này tại những điểm trung chuyển một lượng lớn gói tin Hai yêu cầu nàythường khó có thể được thỏa mãn nếu là hệ thống một điểm Phần lớn các hệ thống
1 Việc lưu trữ thông tin thống kê của các dòng gói tin tại router đi ngược lại một trong những nguyên lý thiết
kế ban đầu của mạng Internet, nhưng đó là một việc làm cần thiết.
Trang 33phòng chống DDoS một điểm sẽ hy sinh mục tiêu đầu tiên, đó là phân biệt lưu lượng,
để đạt được mục tiêu thứ hai, kiểm soát một lượng lớn lưu lượng tấn công Theo cáchnày, các hệ thống chống tấn công DDoS một điểm sẽ được đặt tại hoặc gần với nạnnhân cho phép chúng có thể phát hiện và kiểm soát lưu lượng của các tấn công DDoS,tuy nhiên do thiếu dung lượng bộ nhớ, chúng thường phải sử dụng các kỹ thuật như
bộ lọc Bloom [28] để lưu trữ thông tin của một số lượng rất lớn các dòng gói tin trongđiều kiện không gian bộ nhớ hạn chế tại router, nhưng điều này lại làm giảm tính chọnlọc của hệ thống bởi vì sẽ xảy ra trường hợp thông tin của hai dòng gói tin khác nhau
bị trộn lẫn và trở nên nhập nhằng do được lưu trữ tại cùng một vị trí trong bộ nhớ.Các hệ thống một điểm có thể được đặt tại ba vị trí khác nhau: gần với nạn nhân
(gọi là victim-end defense), tại mạng trung gian (gọi là intermediate-network defense), hoặc tại mạng nguồn nơi có máy tính tấn công (gọi là source-end defense).
cứ bất thường nào Tuy nhiên, phạm vi phản ứng của các hệ thống này rất hạnchế Chúng nằm trên đường đi của các cuộc tấn công DDoS tổng lực và phải
xử lý một số lượng lớn gói tin mà các cuộc tấn công tạo ra Mục tiêu tấn côngkhi đó chuyển từ nạn nhân sang hệ thống phòng thủ, dẫn đến khả năng xử lý vàdung lượng lưu trữ còn lại của hệ thống rất hạn chế hoặc bị cạn kiệt hoàn toàn
Do đó, chúng gặp khó khăn trong việc triển khai các thủ tục phân loại lưu lượngnâng cao vì việc này đòi hỏi phải có một bộ nhớ lớn và khả năng tính toán nhanh
để lưu trữ và kiểm tra thông tin thống kê của mỗi dòng gói tin đi qua
• Hệ thống đặt tại mạng trung gian Các hệ thống chống tấn công DDoS một
điểm cũng có thể được triển khai tại mạng trung gian, khi đó chúng thường đượccài đặt tại một thiết bị router lõi và phát hiện tấn công thông qua các bất thườngquan sát được tại đây Vì các router lõi phải tiếp nhận và xử lý một lượng gói tin
Trang 34khổng lồ đến và đi nên chúng thường bỏ qua tất cả các tấn công DDoS, ngoạitrừ những tấn công có quy mô lớn Tài nguyên của nạn nhân thường bị cạn kiệtnghiêm trọng bởi các cuộc tấn công trông giống như những trục trặc nhỏ trong
bộ nhớ đệm bận rộn của một router lõi Các cuộc tấn công bị phát hiện có thểđược ngăn chặn một cách nhanh chóng nhờ vào tài nguyên mạng dồi dào Tuynhiên, phản ứng có thể gây ra những thiệt hại phụ thêm vì các router lõi chỉ cóthể thực hiện các tác vụ giới hạn tốc độ đơn giản và không thể dành nhiều bộnhớ và các chu kỳ của bộ xử lý cho việc phân loại lưu lượng
• Hệ thống đặt tại mạng nguồn Một lựa chọn khác là triển khai các hệ thống
một điểm tại mạng nguồn nơi xuất phát của lưu lượng tấn công Trong trườnghợp này, khả năng phát hiện các tấn công DDoS có thể khó khăn hơn Các hệthống này không thể dễ dàng quan sát được những tác động mà lưu lượng mạnggây ra đối với nạn nhân Hơn nữa, bởi vì chúng chỉ có thể giám sát một phần nhỏlưu lượng của cuộc tấn công, nên rất khó phát hiện các bất thường Tuy nhiên,các hệ thống này cũng không phải là không có ưu điểm Do lưu lượng tấn côngnhỏ, không thể áp đảo hệ thống nên hệ thống có thể phản ứng hiệu quả hơn vớitấn công Nó cũng cho phép các hệ thống phòng thủ có thể triển khai các cơ chếphân loại lưu lượng phức tạp và kết quả là giúp giảm thiệt hại phụ thêm gây rađối với lưu lượng mạng thông thường
Các hệ thống phân tán chống tấn công DDoS kết hợp cả ba hệ thống chống tấncông DDoS một điểm nói trên Hệ thống phòng vệ đặt tại hoặc gần nạn nhân phát hiệncuộc tấn công và gửi thông báo đến các hệ thống khác, các hệ thống này sau đó sẽphối hợp để ngăn chặn các dòng tấn công Mục tiêu là thiết lập các phản ứng gần vớinguồn tấn công nhất có thể, như vậy giảm thiểu được thiệt hại gây ra đối với lưu lượngmạng thông thường Nếu một phản ứng tại mạng nguồn gây ra thiệt hại phụ thêm, cónghĩa là nó không đủ chọn lọc, tác động sẽ chỉ được áp dụng đối với lưu lượng bìnhthường đi ra từ mạng nguồn đó Lưu lượng đi ra từ các mạng nguồn khác sẽ khôngphải chịu tác động của các phản ứng này Các hệ thống phân tán là một giải pháp phùhợp để xử lý nguy cơ của các cuộc tấn công DDoS Tuy nhiên, chúng là các giải pháp
ở mức cơ sở hạ tầng, dàn trải trên nhiều dải mạng và miền quản trị Nó đại diện cho
Trang 35những cam kết chính của các chủ thể tham gia Internet Các hệ thống như vậy rất khó
để có thể triển khai và duy trì Hơn nữa, sự hợp tác phòng chống DDoS rất khó để đạtđược vì mạng Internet được quản lý theo cách thức phân tán, không một tổ chức riêng
lẻ nào có thể quản lý và chịu trách nhiệm hoàn toàn cho sự hoạt động ổn định và trơntru của nó Các miền quản trị được điều hành độc lập một cách nghiêm ngặt Bảo mật
và xác thực các kênh liên lạc cũng gây ra chi phí cao nếu có nhiều chủ thể tham gia.Các tấn công DDoS có một số đặc điểm khiến chúng khó bị phát hiện và loại bỏ:
• Giả mạo địa chỉ nguồn Kẻ tấn công thường giả mạo địa chỉ nguồn trong một
cuộc tấn công, cụ thể là giả mạo thông tin trường địa chỉ IP nguồn trong phầntiêu đề của các gói tin tấn công Lợi ích mà kẻ tấn công nhận được từ việc giảmạo địa chỉ IP nguồn đó là làm cho việc truy vết các máy tính tham gia tấn côngtrở nên rất khó khăn Điều này dẫn đến một số hậu quả tai hại Các tập tin lưuthông tin truy cập trong các máy tính có địa chỉ IP giả mạo không có tác dụng
gì trong việc xác định kẻ tấn công Điều này khuyến khích các tấn công DDoSxảy ra Hơn nữa, việc che dấu địa chỉ của các máy tính tấn công cho phép kẻtấn công có thể sử dụng lại chúng cho các lần tấn công tiếp theo Cuối cùng,các gói tin tấn công mang theo rất nhiều các địa chỉ như thể chúng đến từ nhiềunguồn khác nhau làm sụp đổ các kỹ thuật chia sẻ công bằng là một giải phápđơn giản cho vấn đề quá tải tài nguyên Lợi ích khác của việc giả mạo địa chỉ
IP nguồn đối với kẻ tấn công là khả năng cho phép các tấn công phản xạ [29]
Kẻ tấn công, với địa chỉ của nạn nhân, yêu cầu một dịch vụ công mà việc này
sẽ tạo ra các trả lời với kích thước lớn cho những yêu cầu kích thước nhỏ cụthể (hiệu ứng khuếch đại) Kẻ tấn công tạo ra nhiều yêu cầu nhất có thể mà tàinguyên của anh ta cho phép, giả mạo địa chỉ nguồn của nạn nhân, và gửi chúngđến các máy chủ công cộng Các máy chủ này sẽ hướng một số lượng lớn cáctrả lời đến nạn nhân (do vậy phản xạ và nhân lên lực lượng tấn công) và làm quátải tài nguyên của nạn nhân Một trường hợp phổ biến của tấn công phản xạ đó
là kẻ tấn công gửi một số lượng lớn các yêu cầu truy vấn tên miền là các gói tinUDP đến một máy chủ tên miền, sử dụng một địa chỉ IP giả mạo của một nạnnhân làm địa chỉ nguồn cho các gói tin tấn công Bởi vì các trả lời của các máy
Trang 36chủ tên miền có kích thước lớn hơn rất nhiều các yêu cầu truy vấn, và như vậy
có nguy cơ khuếch đại băng thông ở đây Ngay cả khi việc truy vết ngược đượcthực hiện, nó vẫn không thể giải quyết được các tấn công phản xạ Các máy chủcông cộng là những thành phần vô tình tham gia trong đó dịch vụ bình thườngcủa chúng bị lạm dụng trong cuộc tấn công Chúng không sở hữu bất cứ thôngtin nào về kẻ tấn công Mặt khác, các dịch vụ của chúng không thể bị vô hiệuhóa (để ngăn chặn cuộc tấn công) bởi vì như vậy sẽ ảnh hưởng đến rất nhiềucác máy trạm khác Chúng ta có thể ngăn chặn các tấn công phản xạ bằng cáchgiới hạn số lượng trả lời mà các máy chủ tên miền tạo ra cho một địa chỉ IP cụthể Tiếp cận này yêu cầu các máy chủ phải lưu trữ danh sách các địa chỉ IP, tuynhiên việc này lại dẫn đến nguy cơ tiêu thụ một lượng lớn tài nguyên bộ nhớ.Việc đọc và kiểm tra địa chỉ nguồn trong phần tiêu đề của mỗi gói tin là không
đủ để xác định nguồn của nó bởi vì bộ giao thức TCP/IP không có khả năngđảm bảo địa chỉ nguồn trong một gói tin là địa chỉ của máy tính sinh ra nó Thayvào đó, chúng ta cần phải truy vết ngược dòng gói tin đi qua các router từ nguồntới đích Điều này yêu cầu sự phối hợp của các kỹ sư mạng quản lý các router và
là một công việc khó hơn nhiều so với chỉ đơn giản đọc thông tin địa chỉ nguồntrong tiêu đề của mỗi gói tin Đây không phải là một công việc mà bên nhận góitin có thể yêu cầu tự động Ngược lại, nó yêu cầu các kỹ sư mạng truy vấn mộtcách cụ thể thông tin của dòng gói tin từ các router Đây là một quá trình thủcông và tốn nhiều thời gian và công sức để thực hiện
Cuối cùng, để đảm bảo tính xác thực của địa chỉ nguồn của các gói tin, chúng ta
có thể triển khai các bộ lọc đầu vào ((ingress filtering)) trên router, được đề xuất
bởi Ferguson và Senie trong [19] Tuy nhiên, các bộ lọc này cần phải được triểnkhai gần với các hệ thống nguồn để đảm bảo thông tin địa chỉ nguồn được chínhxác nhất Nói chung các hệ thống này nên được triển khai tại router kết nối mạng
của người dùng với mạng Internet (border or edge router) Bất chấp khuyến cáo
an ninh lâu năm này (từ năm 2000), các nhà cung cấp dịch vụ Internet vẫn khôngtriển khai các bộ lọc này và kết quả là các tấn công sử dụng các gói tin với địachỉ nguồn giả mạo tiếp tục xuất hiện một cách thường xuyên
Trang 37• Số lượng máy tính tấn công lớn Ngay cả khi việc truy vết ngược được thực
hiện thành công trong các trường hợp giả mạo địa chỉ IP, vẫn rất khó khăn đểđưa ra các hành động đối với hàng trăm hoặc hàng nghìn máy tính tấn công.Một số lượng lớn như vậy ngăn cản bất cứ phản ứng tự động nào nhằm dừng cácdòng tấn công tại các vị trí gần với các nguồn tấn công
• Sự giống nhau giữa lưu lượng tấn công và lưu lượng thông thường Bất kỳ
loại lưu lượng nào cũng có thể được sử dụng để thực hiện một cuộc tấn côngDDoS thành công Một vài loại lưu lượng yêu cầu một dung lượng tấn côngcao hơn để thành công so với các lưu lượng khác và các loại gói tin khác nhaunhắm đến các tài nguyên khác nhau Tuy nhiên, nếu mục đích chỉ đơn giản làlàm què quặt hoạt động của nạn nhân, kẻ tấn công chỉ cần gửi một dung lượng
đủ lớn của bất cứ loại lưu lượng nào và làm tắc nghẽn mạng của nạn nhân Kẻtấn công có xu hướng tạo ra các gói tin giống với gói tin bình thường nhằm chegiấu dòng độc hại trong lưu lượng bình thường Bởi vì các gói tin độc hại không
có gì khác với các gói tin thông thường nên không thể lọc lưu lượng tấn công từlưu lượng thông thường mà chỉ dựa trên việc kiểm tra các gói tin cụ thể Một hệthống chống tấn công DDoS phải lưu trữ một số lượng dữ liệu thống kê nhằmtrích rút ngữ nghĩa giao dịch từ các dòng gói tin và do vậy phân biệt lưu lượngthông thường (thuộc vào các giao dịch dài và thể hiện hành vi tốt) với lưu lượngtấn công Với sự xuất hiện của các tấn công LDDoS, các dòng tấn công càng trởnên khó phân biệt với các dòng TCP thông thường, thậm chí còn tốt hơn đối vớimột số chỉ số như là tốc độ gửi gói tin, đặc điểm bùng nổ, nhất là trong các cuộctấn công quy mô lớn với hàng trăm nghìn máy tính tham gia
1.2 Tấn công từ chối dịch vụ phân tán tốc độ thấp
1.2.1 Khái niệm tấn công từ chối dịch vụ phân tán tốc độ thấp
Tấn công từ chối dịch vụ phân tán tốc độ thấp LDDoS (TCP-targeted low-rate
dis-tributed denial-of-service attack) là tấn công từ chối dịch vụ phân tán DDoS với mục
Trang 38đích làm giảm thông lượng của các kết nối TCP, khai thác cơ chế chờ phát lại gói tincủa giao thức TCP để giảm tốc độ tấn công trung bình và tránh phát hiện bởi các cơchế chống tấn công DDoS.
Lưu lượng tấn công LDDoS bao gồm các đợt bùng nổ gói tin tấn công hay còn gọi
là xung được gửi đi một cách định kỳ, mỗi đợt với một tốc độ cao và diễn ra trongkhoảng thời gian ngắn Theo [30], các tấn công LDDoS có 2 đặc điểm chính: (1) xungtốc độ cao và (2) sự định kỳ
Một biến thể của tấn công LDDoS là tấn công giảm chất lượng RoQ [31–35] Cáctấn công RoQ cũng có tốc độ thấp nhưng khác với LDDoS, chúng không khai thác cơchế chờ phát lại gói tin mà khai thác chính sách tăng theo cấp số cộng và giảm theocấp số nhân AIMD của TCP đối với kích thước cửa sổ tắc nghẽn Giống như LDDoS,các tấn công RoQ cũng bao gồm một dãy các đợt bùng nổ gói tin tấn công, tuy nhiêncác đợt bùng nổ gói tin tấn công này được gửi đi một cách ngẫu nhiên và không theomột quy luật nào Các tấn công RoQ làm giảm thông lượng của các kết nối TCP bằngcách gây ra hiện tượng mất gói tin cho các kết nối này Với một kết nối TCP, chỉ cầnmột gói tin bị mất thì kích thước cửa sổ tắc nghẽn của nó sẽ giảm xuống và thônglượng của kết nối cũng sẽ giảm theo Tấn công RoQ rất thu hút kẻ tấn công bởi vì cácđợt bùng nổ gói tin tấn công không cần được đồng bộ với khoảng thời gian chờ phátlại gói tin của các kết nối TCP mà có thể được gửi đi bất kỳ Bên cạnh đó, mục tiêucủa mỗi đợt bùng nổ gói tin tấn công cũng đơn giản hơn, không cần phải làm cho mộtcửa sổ gói tin TCP bị mất để gây ra hiện tượng timeout như trong trường hợp tấn côngLDDoS mà chỉ cần làm mất một gói tin TCP Tấn công RoQ có thể không làm chothông lượng TCP giảm về gần bằng không như LDDoS nhưng chúng vẫn làm giảmchất lượng dịch vụ một cách đáng kể Hơn nữa, những tấn công này lại khó bị pháthiện hơn bởi vì chúng không hoạt động hay thể hiện một mẫu tần số xác định nào
1.2.2 Cơ chế điều khiển tắc nghẽn của giao thức TCP
Một trong những mạng máy tính đầu tiên góp phần hình thành nên mạng Internet ngàynay là ARPANET, ra đời năm 1969 với 4 nút mạng, đó là mạng chuyển mạch gói vàtriển khai bộ giao thức TCP/IP ARPANET được tài trợ bởi Cơ quan dự án nghiên cứu
Trang 39nâng cao ARPA thuộc Bộ quốc phòng Mỹ Phương thức chuyển mạch gói triển khaitrong mạng ARPANET dựa trên các khái niệm và thiết kế của Leonard Kleinrock,Paul Baran, Donald Davies và Lawrence Roberts Các giao thức giao tiếp TCP/IP củaARPANET được phát triển bởi Robert Kahn và Vint Cerf, tích hợp với các khái niệm
từ dự án CYCLADES của người Pháp dưới sự chỉ đạo của Louis Pouzin [36–45]
Số nút mạng cũng như số máy trạm tham gia vào ARPANET tăng lên nhanh chóngtheo thời gian cho đến khi một sự cố tắc nghẽn mạng lớn xảy ra vào tháng 10 năm
1986 Theo một thống kê trong [46] tại thời điểm tháng 11 năm 1986, tức là sau thờiđiểm tắc nghẽn mạng một tháng, số máy trạm là 5089 nhưng hầu hết các đường truyềnxương sống vẫn duy trì băng thông từ 50 đến 56 (kbit/giây) như lúc ban đầu thành lậpmạng Van Jacobson trong [14] đã mô tả sự cố nghẽn mạng xảy ra trên một đườngtruyền với băng thông 32 (kbit/giây) nối từ một địa điểm trong khuôn viên trườngĐại học California Berkeley tới phòng thí nghiệm quốc gia Lawrence Berkeley cách
đó khoảng 400 m Trong khoảng thời gian tắc nghẽn, thông lượng của đường truyềngiảm khoảng 1000 lần còn 40 (bit/giây) Jacobson và đồng nghiệp đã bị cuốn hút bởihiện tượng băng thông giảm đột ngột hàng nghìn lần này và bắt tay vào một cuộcđiều tra lý do tại sao mọi thứ lại trở nên tồi tệ như vậy Jacobson nghi ngờ phiên bảnTCP 4.3BSD đã hoạt động sai và có thể được điều chỉnh để hoạt động tốt hơn trongđiều kiện mạng không lường trước được Ông đã đề xuất và triển khai thuật toán điềukhiển tắc nghẽn cho giao thức TCP, và giao thức TCP khi đó được gọi là TCP Tahoe,được công bố năm 1988 trong [14] Sau đó 2 năm Jacobson sửa đổi TCP Tahoe để tạothành TCP Reno [47]
Cơ chế điều khiển truyền dữ liệu của giao thức TCP dựa trên khái niệm cửa sổ Đểtruyền dữ liệu, chẳng hạn một tệp, từ một máy tính nguồn tới một máy tính đích bằnggiao thức TCP, một kết nối TCP sẽ được thiết lập giữa 2 máy tính, sau đó quá trìnhtruyền dữ liệu sẽ diễn ra trên kết nối này Nguồn gửi sẽ chia nhỏ tệp thành nhiều góitin và đánh số thứ tự cho các gói tin để gửi đến máy đích Bên cạnh đó, nó phải duytrì một biến gọi là kích thước cửa sổW xác định số lượng gói tin lớn nhất được phépgửi đi mà chưa có báo nhận Khi số lượng gói tin đã gửi đi và chưa có báo nhận bằng
W, nguồn TCP phải chờ một gói tin báo nhận trở về trước khi nó có thể gửi đi một gói
Trang 40tin mới Gói tin báo nhận ACK được tạo ra bởi máy đích mỗi khi nó nhận được mộtgói tin với dữ liệu mới từ nguồn TCP gửi đến, sau đó gói tin báo nhận sẽ được gửi vềnguồn (gói tin này có thể bị làm trễ để giảm một nửa số lượng gói tin báo nhận hoặc
để chờ dữ liệu từ máy đích gửi đến nguồn nếu là giao tiếp hai chiều) Khoảng thờigian từ thời điểm nguồn TCP gửi một gói tin dữ liệu đến thời điểm gói tin báo nhậntương ứng trở về gọi là thời gian đi về của gói tin RTT Hai đặc điểm quan trọng đượcrút ra từ mô hình điều khiển truyền dựa trên cửa sổ, thứ nhất đó là đặc điểm tự định
thời (self-clocking), điều này có nghĩa là nguồn TCP sẽ tự động gửi gói tin chậm lại
nếu mạng trở nên tắc nghẽn và các gói tin báo nhận bị trễ Đặc điểm thứ hai là kíchthước cửa sổ quyết định tốc độ gửi gói tin vào mạng của nguồn TCP: có W gói tinđược gửi đi trong mỗi khoảng thời gian RTT Trước khi có đề xuất của Jacobson năm
1988, kích thước cửa sổW là giá trị cố định cho mỗi kết nối TCP và đặc điểm tự địnhthời là cơ chế điều khiển tắc nghẽn duy nhất trên mạng Internet (theo [48–50]) và nó
đã không đủ để giúp cho mạng Internet tránh khỏi một sự sụp đổ do tắc nghẽn như đãdiễn ra vào tháng 10 năm 1986 Ý tưởng của Jacobson là tự động thay đổi giá trị W
theo mức độ tắc nghẽn mạng
Trong phiên bản TCP Tahoe mà Jacobson đề xuất năm 1988 đưa ra khái niệm cửa
sổ tắc nghẽn cwnd Mỗi kết nối TCP duy trì một cửa sổ tắc nghẽn Tại bất kỳ thờiđiểm nào số lượng gói tin đã gửi đi nhưng chưa có báo nhận không được vượt quá giátrị nhỏ nhất của cwnd và rwnd, trong đó rwnd là kích thước cửa sổ nhận, liên quanđến kích thước bộ nhớ đệm của kết nối ở máy đích
Định nghĩa 1.1 Cửa sổ tắc nghẽn của một kết nối TCP là số lượng gói tin lớn nhất
mà kết nối đó có thể gửi đi mà chưa có báo nhận.
Khi một kết nối TCP khởi động, cwnd = 1 gói tin và chỉ có duy nhất một góitin được gửi đi Sau đó TCP sẽ tăng tốc độ gửi gói tin vào mạng bằng cách tăng gấpđôicwnd sau mỗi khoảng thời gian RTT Điều này tương ứng với việc tăngcwnd lên
1 gói tin mỗi khi nguồn TCP nhận được một gói tin báo nhận Giai đoạn này đượcgọi là khởi động chậm Mặc dù tên gọi là khởi động chậm nhưng tốc độ gửi gói tincủa TCP trong giai đoạn này tăng nhanh theo cấp số mũ, sau khoảng thời gian RTT
kể từ lúc gửi gói tin đầu tiên thì cwnd = 2(gói tin), sau2 ×RTT cwnd = 4(gói tin),