ĐẠI HỌC QUỐC GIA HÀ NỘI
KHOA CÔNG NGHỆ
LÊ MINH VIỆT
HIỆU SUẤT HOẠT ĐỘNG TCP TRÊN MẠNG
KHÔNG DÂY AD HOC
LUẬN VĂN THẠC SĨ
NGƯỜI HƯỚNG DẪN: TS. VŨ DUY LỢI
HÀ NỘI: 2003
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
Mở đầu
1. Cơ sở thực tiễn, mục đích và phạm vi nghiên cứu ứng dụng của đề tài
Hiện nay mạng Internet đang trở thành cơ sở hạ tầng thông tin liên lạc
của cả xã hội. Internet có ảnh hưởng đến hầu hết các lĩnh vực đời sống.
Internet được xem như là mạng của các mạng. Các mạng vật lý khác
nhau phát triển và tích hợp trong mạng Internet. Giao thức truyền thông
chủ yếu của mạng Internet là giao bộ giao thức chuẩn TCP/IP. Tuy nhiên
việc nghiên cứu, giải quyết các vấn đề điều khiển lưu lượng số liệu TCP
trên các mạng vật lý khác nhau nhằm nâng cao hiệu quả hoạt động của
mạng có ý nghĩa lý luận và thực tiễn sâu sắc đặc biệt là đối với mạng
không dây Ad hoc. Chúng ta không thể áp dụng giao thức TCP/IP chuẩn
cho mạng không dây Ad hoc bởi vì lỗi mất đường truyền thường xuyên
xảy ra.
Qua tìm hiểu tài liệu kỹ thuật tiêu chuẩn về hệ thống mạng viễn thông
không dây, nguyên tắc hoạt động của bộ giao thức TCP/IP, các hệ thống
mạng viễn thông không dây, mạng Internet hoạt động trong thực tế em
nhận thấy có một vấn đang được các nhà khoa học, các phòng nghiên cứu
và các công ty tin học ở nhiều nước đang hết sức quan tâm đó là “phương
pháp nào nâng cao hiệu suất TCPtrên mạng không dây Ad hoc“. Các
phương án hiện có đều có những ưu và nhược điểm riêng chưa thể chắc
chắn đạt được hiệu suất cao nhất. Sử dụng công cụ mô phỏng mạng bằng
máy tính (Network simulator – NS) trong thí nghiệm của mình và tiến
hành thay đổi các tham số môi trường em mong muốn sẽ góp phần nâng
cao hiệu suất TCP của mạng không dây Ad hoc.
2
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
Luận văn là kết quả ghi lại tóm tắt những nghiên cứu của em bao gồm
ba chương. Phần mở đầu trình bày phương pháp luận, mục đích nghiên
cứu, tổng quan về Internet, giao thức TCP và công cụ mô phỏng mạng
bằng máy tính. Chương một trình bày khái niệm đặc điểm và ứng dụng
của mạng không dây Ad hoc. Chương hai là tổng quát về một số phương
pháp nâng hiệu suất TCP trên mạng không dây Ad hoc như F-TCP, ITCP, Snoop Protocol. Chương ba đi sâu vào nghiên cứu cải thiện hiệu
suất TCP của phương pháp nhận biết hiện tượng mất thứ tự (OOO – Out
of Order) và phương pháp cảnh báo (ECN - Explicit Congestion
Notification).
2. Tổng quan về mạng Internet và giao thức TCP
Internet ra đời từ một dự án nghiên cứu, phát triển mạng thông tin
máy tính dựa trên công nghệ chuyển mạng gói phục vụ nghiên cứu
phát triển của Bộ quốc phòng Mỹ ở thập kỷ 60. Internet ngày nay đã
trở thành mạng của các mạng thông tin máy tính toàn cầu, được kết
nối với nhau trên cơ sở bộ giao thức trao đổi số liệu TCP/IP
(Transmission Control Protocol/Internet Protocol). TCP/IP đang đáp
ứng hầu hết các dịch vụ thông tin liên lạc của xã hội, tiến tới trở thành
hạ tầng thông tin liên lạc duy nhất của xã hội thông tin tương lai.
Lịch sử phát triển của Internet:
1969: đưa vào sử dụng thử nghiệm mạng thông tin máy tính trên
cơ sở sử dụng công nghệ mạng chuyển mạch gói
1977: thử nghiệm thành công việc kết nối ba mạng thông tin máy
tính của ba trường đại lớn ở Mỹ bằng giao thức TCP/IP.
1986: việc đưa vào sử dụng mạng NFSNET, mạng xương sống tốc
độ cao (34 Mbps – 45 Mbps) phục vụ cho nghiên cứu, giảng dạy đã
3
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
kích thích sự phát triển mạnh mẽ của Internet trong cộng đồng nghiên
cứu khoa học và giáo dục ở Mỹ và các nước Tây Âu.
1990/1991: Internet được thương mại hoá với sự ra đời của tổ chức
khuyến khích phát triển và sử dụng Internet “Xã hội Internet”
(Internet society), đánh dấu thời kỳ bùng nổ của Internet. Kể từ đây
Internet trở thành mạng thông tin máy tính của toàn xã hội.
1997: đã có hơn 100 000 mạng thông tin máy tính được kết nối
trong Internet toàn cầu với hơn 15 triệu máy chủ và 50 triệu người sử
dụng. Người ta dự đoán con số này sẽ tăng gấp đôi sau mỗi năm.
Có thể kể đến những yếu tố chính thúc đẩy sự phát triển mạnh mẽ
của Internet mà thực chất là việc mở rộng thực hiện kết nối một cách
mềm dẻo, tin cậy các máy tính và các mạng máy tính với nhau trên cơ
sở bộ giao thức trao đổi số liệu TCP/IP sau đây:
Việc sử dụng bộ giao thức TCP/IP trong hệ điều hành UNIX
để thực hiện trao đổi số liệu giữa các tiến trình trên một máy
và giữa các máy được kết nối trong mạng. Unix là hệ điều
hành được sử dụng rộng rãi từ năm 1983 trong các trường
đại học và trong các viện nghiên cứu ở Mỹ.
Kỹ thuật vi xử lí và các máy tính cá nhân (Personal
computer) ra đời vào giữa những năm 1980 đã ngày càng
được hoàn thiện, nâng cao về công suất tính toán và tiện lợi
trong giao diện với người sử dụng, thực sự rút ngắn khoảng
cách giữa người sử dụng với các thiết bị tính toán, làm cho
máy tính thâm nhập ngày càng sâu vào tất cả các lĩnh vực
của đời sống xã hội, thúc đẩy nhu cầu kết nối máy tính và
mạng máy tính.
4
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
NFSNET – mạng xương sống Internet ra đời năm 1986 tại
Mỹ có tốc độ truy nhập đường trục là 45 Mbps đã nâng cao
một bước cơ bản về dải thông và chất lượng truy cập mạng,
đáp ứng được nhu cầu trao đổi thông tin ngày càng cao trong
cộng đồng nghiên cứu khoa học và giáo dục.
Thống nhất tên miền (DNS) đã làm cho vấn đề truy nhập
Internet trở nên đơn giản và tiện lợi [1].
Trong thời gian gần đây do sự thành công và phát triển không
ngừng của mạng Internet, rất nhiều doanh nghiệp đã nhận thức được
tầm quan trọng của mạng Internet đối với hoạt động của doanh
nghiệp. Internet là một môi trường lý tưởng để giới thiệu sản phẩm và
dịch vụ của từng doanh nghiệp tới một số lượng người dùng lớn trên
một phạm vi rộng không bị cách trở bởi các yếu tố không gian và thời
gian. Mặt khác, Internet cũng cho phép các doanh nghiệp có một môi
trường trao đổi thông tin thuận lợi, qua đó có thể tăng khả năng hợp
tác giữa các đối tác của doanh nghiệp.
Trong khoa học giáo dục nhờ có mạng Internet mà rất nhiều
phương pháp học tập, nghiên cứu, trao đổi thông tin xuất hiện. Cách
học từ xa qua mạng ngày nay đang ngày càng trở nên phổ biến.
Internet là kho thông tin vô cùng phong phú cho tất cả mọi người có
nhu cầu tìm hiểu, nghiên cứu ở bất kỳ lĩnh vực nào từ văn hoá xã hội,
y học, sinh học, kinh tế, khoa học kỹ thuật cho đến vui chơi giải
trí...vv
TCP là giao thức truyền số liệu ra đời cách đây hai ba thập kỷ.
Trong mô hình kết nối mở các hệ thống tính toán ISO/OSI, TCP
tương ứng với chức năng tầng giao vận (transport) và thêm một số
chức năng của tầng phiên (session). TCP hoạt động đặc biệt tin cậy,
5
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
hiệu quả trong mạng hữu tuyến và ứng dụng rộng rãi trong mạng
Internet hiện nay. TCP sử dụng giao thức Go-back-N và cơ chế truyền
lại gói tin dựa vào khoảng thời gian (timeout) . Khoảng thời gian
timeout được đánh giá bằng độ trễ round-trip. Bên phát sẽ phát lại
những gói tin mà nó không nhận được tín hiệu trả lời ACK từ bên thu
quá thời gian timeout qui định. Nếu gói tin thường xuyên phải truyền
lại TCP coi đó là hiện tượng tắc nghẽn và điều khiển quá trình
thu/phát bằng cơ chế điều khiển tắc nghẽn – cơ chế cửa sổ (window).
Khi xảy ra tắc nghẽn TCP giảm kích thước cửa sổ truyền (tức là giảm
tốc độ truyền) để tránh tắc nghẽn mạng và truyền lại những gói tin bị
mất.
3. NS - Network Simulator
NS là công cụ hỗ trỡ đắc lực trong phòng thí nghiệm để nghiên cứu,
mô phỏng, thiết kế mạng trước khi trước khi triển khai thực tế. NS càng
ngày càng có vai trò quan trọng vì nhu cầu phát triển tin học cần phải xây
dựng mạng qui mô lớn, phức tạp. Với những mạng qui mô lớn đòi hỏi
công việc thiết kế, tính toán hiệu suất mạng trước khi triển khai là hết sức
cần thiết vì nó tránh hậu quả như tắc nghẽn mạng hoặc thông lượng chưa
đạt mong muốn cần phải thiết kế lại. Sử dụng NS giảm được chi phí
trong quá trình thiết kế, tối ưu mạng.
NS mô phỏng mạng theo sự kiện (event – driven). NS2 được viết bằng
ngôn ngữ C++ và dụng giao diện command hướng đối tượng Otcl (object
tool command language). NS1 sử dụng ngôn ngữ giao diện kiểu
command Tcl (tool command language). Tcl như một ngôn ngữ cấu hình
(configuration language).
6
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
Quá trình mô phỏng nhờ bộ máy (engine) thông dịch (interpreter).
Interpreter là lớp shell trong Unix, Linux (Otclsh). Chương trình mô
phỏng có cấu trúc nhiều lớp (theo kiểu hướng đối tượng), lớp chính là lớp
mô phỏng (Simulator Class). Các phương thức tạo mới và xoá được sử
dụng để khởi tạo và giải phóng lớp. Ngoài ra còn rất nhiều các phương
thức dùng để cấu hình các khối (khối – block là các phần của mạng).
Để mô phỏng một mạng hoạt động NS sử dụng ba khối cơ bản là: nút
mạng (node), liên kết mạng (link) và các agent. Node là các thiết bị đầu
cuối truyền nhận dữ liệu. Mỗi node sau khi khởi tạo có một địa chỉ duy
nhất. Link là khối có chức năng liên kết các Node trong mạng với nhau.
Tuỳ theo loại Link ta có thể phân chia thành các mạng khác nhau: mạng
simple-link nếu link là vô hướng (undirection) hoặc mạng duplex-link
nếu link là hai chiều (bi-direction). Agent là những đối tượng điều khiển
quá trình mô phỏng. Nó giống như một tiến trình làm nhiệm vụ vận
chuyển dữ liệu giữa nguồn tới đích. Mỗi agent sau khi tạo ra được gắn
với một node và được gán một số cổng (port) xác định.
7
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
Chương 1
cơ bản về mạng không dây kiểu ad hoc
1.1 Khái niệm về mạng không dây Ad hoc
Trong môi truờng phát thanh vô tuyến các thiết bị thu, phát hoàn toàn
độc lập và cách xa nhau. Quá trình truyền âm thanh được thực hiện bởi
sóng âm (sóng radio). Mô hình phát thanh có tính chất phi tập trung, chịu
ảnh hưởng của tiếng ồn (noise), giảm âm (fading) và chất lượng của các
thiết bị đầu cuối. Mạng không dây kiểu Ad hoc gần tương tự như mạng
phát thanh vô tuyến. Trong môi trường mạng Ad hoc các gói tin được
truyền từ node nguồn đến node đích thông qua các node trung gian. Node
vừa đóng vai trò là thiết bị nhận xử lí thông tin (giống như một Host),
vừa có vai trò như một thiết bị dẫn đường (giống như một Router) làm
nhiệm vụ điều khiển gói tin trên đường truyền.
Trong mạng không dây kiểu Ad hoc vị trí của các node luôn luôn thay
đổi bất kỳ lúc nào. Do đó Topo của mạng liên tục bị biến đổi không có
qui luật. D.B.Johnson và D.A.Maltz đưa ra một định nghĩa khá tổng quát
về mạng không dây kiểu Ad hoc đó là “ sự liên kết tạm thời giữa các thiết
bị (Node) tạo thành một mạng tạm thời (Temporary Network) không cần
thiết bị điều khiển, quản lí tập trung hay các thiết bị chuẩn như trong
mạng diện rộng (WAN)”
Mạng không dây kiểu Ad hoc được chia thành hai loại là mạng di
động kiểu Ad hoc và mạng cảm biến thông minh Ad hoc. Mạng cảm biến
8
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
thông minh Ad hoc là một lớp mới của mạng không dây Ad hoc được
phát triển trong những năm qua. Mạng gồm hàng trăm hoặc hàng nghìn
node cảm biến có thể truyền thông với nhau. Mạng có độ tin cậy cao
trong những môi trường phức tạp, khó dự đoán trước được. Mạng cảm
biến thông minh Ad hoc giống như là các trung tâm dữ liệu (Data
Centric). Khác với các mạng thông thường (trong mạng thông thường
một node nào đó bất kỳ – node nguồn sẽ thực hiện gửi số liệu nếu có nhu
cầu) mạng cảm biến thông minh Ad hoc truyền số theo một tính chất nào
đó (chẳng hạn như nơi nhiệt độ là 100 0C).
Những nghiên cứu, ứng dụng về mạng không dây hiện nay đang được
các viện nghiên cứu, các công ty và chính phủ ở nhiều quốc gia rất quan
tâm. Lĩnh vực này hiện đã và đang được áp dụng mạnh mẽ phục vụ cuộc
sống. Hơn nữa lĩnh vực này còn khá mới mẻ nên còn nhiều cơ hội để
nghiên cứu, sáng tạo.
1.2 Đặc điểm của mạng không dây Ad hoc
a) Topo luôn luôn thay đổi
Liên kết giữa các node trong mạng chủ yếu là kiểu liên kết hai
chiều (bi-directional). Liên kết một chiều (unidirection) cũng có sử
dụng nhưng chỉ khi nguồn năng lượng cung cấp ở hai node không
giống nhau. Đối với mạng hữu tuyến Topo của mạng là xác định trước
(có các dạng bus, vòng, sao..vv) tuy nhiên trong mạng di động Ad hoc
liên kết thường xuyên bị mất vì nguyên nhân các node mạng liên tục
di chuyển không theo qui luật nào cho nên Topo của mạng không thể
xác định trước.
9
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
b) Bị hạn chế băng thông
Nếu không xét ảnh hưởng của các yếu tố như đa truy nhập
(multiple access), nhiễu, độ ổn định của thiết bị sử dụng...vv tốc độ
của mạng không dây nhỏ hơn tốc độ cực đại của sóng vô tuyến.
c) Hạn chế bởi nguồn cung cấp năng lượng
Nguồn cung cấp năng lượng cho các thiết bị không dây khá đa
dạng, có thể là nguồn điện hoặc thậm chí là pin. Môi trường mạng có
nhiều đặc trưng riêng, không thuận tiện để cung cấp năng lượng và chi
phí cao vì vậy phải sử dụng năng lượng rất tiết kiệm.
d) Bảo mật kém
So với mạng hữu tuyến thì độ an toàn của mạng không dây kém
hơn về mặt vật lí. Thông tin truyền trong môi trường không gian khó
kiểm soát hơn hơn trên mạng hữu tuyến. Mạng không dây dễ bị mất
thông tin do hacker tấn công bằng hình thức như nghe lén...vv
1.3 ứng dụng của mạng không dây
a) Điều khiển thực
Tưởng tượng khi chúng ta đang đi du lịch trên ôtô hay tàu hỏa
trong thành phố và muốn tìm kiếm một vị trí cần đến như bệnh viện,
trường học..vv chúng ta cần có một chương trình móc nối với một cơ
sở dữ liệu từ xa qua mạng không dây. Mô hình mạng không dây được
ứng dụng nhiều trong những hệ thống loại này.
b) Khám bệnh từ xa
Trong những tình huống đặc biệt chẳng hạn như tai nạn giao thông
xảy ra tại một những nơi xa trung tâm, bệnh viện lớn. Lúc đó nếu có
được sự hỗ trợ từ xa của các Bác sĩ chuyên gia giỏi, có thiết bị tra cứu
hồ sơ gốc lưu trữ của bệnh nhân thì việc chữa bệnh chắc chắn mang
10
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
lại hiệu quả tích cực, nhanh chóng, chính xác mà lại không bị mất thời
gian di chuyển bệnh nhân. Đây cũng là một lĩnh vực sử dụng nhiều
công nghệ mạng không dây.
c) Các ứng dụng xử lí đồ họa từ xa
Đó là ứng dụng kết hợp từ ba hệ thống khác nhau là hệ thống
thông tin địa lí (GIS), hệ thống định vị toàn cầu (GPS) và các hệ thống
không dây di động hiệu năng cao. Truy xuất dữ liệu hoàn toàn tùy
thuộc vào vị trí của người sử dụng.
d) Giáo dục qua internet
Thành tựu về mạng không dây được các nhà quân sự ứng dụng đầu
tiên. Xuất phát từ nhu cầu thực tiễn tại chiến trường con người rất khó
khăn trong việc xây dựng một mạng lưới thông tin liên lạc hữu tuyến.
Mạng di động không dây là giải pháp thay thế hiệu quả. Internet là
mạng máy tính khổng lồ liên kết các mạng với nhau trong đó có mạng
không dây Ad hoc. Ngày nay mạng di động không dây đã được áp
dụng rộng rãi qua internet.
11
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
Chương 2
tổng quan về phương pháp nâng cao hiệu suất hoạt động TCP
trên mạng không dây kiểu ad hoc
2.1 Những yếu tố chính ảnh hưởng đến hiệu suất hoạt động TCP trong
môi trường không dây
Giao thức TCP xuất hiện gần ba thập kỷ nên đã được thay đổi và
đáp ứng tốt trong môi trường mạng hữu tuyến. TCP đáng tin cậy đối
với những mạng có lỗi bit thấp, phổ biến và thông dụng nhất là mạng
hữu tuyến. Sở dĩ như vậy là TCP yêu cầu bên phát truyền lại những
gói tin bị mất nếu như bên phát không nhận được tín hiệu trả lời ACK
của bên thu. Bên phát điều khiển tắc nghẽn bằng cơ chế cửa sổ. Mỗi
lần bên phát nhận ra gói tin bị mất nó nhanh chóng giảm kích thước
cửa sổ điều khiển tắc nghẽn xuống để giảm tốc độ phát dữ liệu. Sau
đó bên phát chuyển sang trạng thái sửa lỗi, phát chậm.
Để xác định những gói tin bị mất bên phát sử dụng một trong hai
kỹ thuật là xác định thời gian timeout của một gói tin hoặc nhận biết
dựa trên thứ tự gói tin được truyền.
TCP chuẩn giả thiết lỗi xảy ra là do tắc nghẽn mạng chứ không
phải do mất liên kết. Nếu tắc nghẽn xảy ra TCP điều chỉnh cửa sổ và
12
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
truyền lại những gói dữ liệu bị mất. Tuy nhiên trong môi trường mạng
không dây Ad hoc tỷ lệ lỗi bit rất cao. Do đó điều khiển tắc nghẽn
bằng cơ chế cửa số không những không cải thiện hiệu suất hoạt động
của TCP mà ngược lại còn làm giảm đáng kể hiệu suất TCP.
Sau đây là những yếu tố quan trọng ảnh hưởng tới hiệu suất hoạt
động TCP trên mạng không dây.
a) Băng thông bị hạn chế
Đó là một trong những yếu tố quan trọng ảnh hưởng đến hiệu suất
hoạt động của TCP trong mạng. Tốc độ của mạng LAN hiện nay cỡ
khoảng 100 Mbps nếu sử dụng cáp đồng còn nếu sử dụng cáp quang
thì tốc độ lên đến hàng Gb. Trong khi đó tốc độ tiêu chuẩn IEEE
802.11b của mạng không dây Ad hoc chỉ khoảng 11 Mbps.
b) Thời gian trễ (round trip) lớn hơn mạng hữu tuyến
Tốc độ nhận tín hiệu ACK từ phía nhận bị ảnh hưởng trực tiếp khi
phía gửi tăng kích thước cửa sổ điều khiển tắc nghẽn. Vì độ trễ lớn
hơn mạng hữu tuyến cho nên kích thước cửa sổ điều khiển tắc nghẽn
sẽ tăng chậm hơn. Do đó trực tiếp ảnh hưởng đến thông lượng của
mạng.
c) Nút mạng thường xuyên thay đổi
Kiến trúc mạng không dây Ad hoc gồm nhiều vùng (mỗi vùng gọi
là một cell), mỗi vùng có một trạm điều khiển (Base Station – BS).
Khi một nút mạng di chuyển từ vùng A đến vùng B thì toàn bộ thông
tin cần thiết ở trạm điều khiển A phải được chuyển sang trạm điều
khiển B. Quá trình xử lý này gọi là bắt tay (Handoff), tuỳ theo phương
pháp áp dụng quá trình bắt tay làm mất kết nối trong một khoảng thời
gian ngắn. TCP không quan tâm đến nguyên nhân bị mất kết nối, xem
13
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
đó là nguyên nhân do tắc nghẽn và thực hiện quá trình điều khiển tắc
nghẽn cùng với cơ chế phòng tránh tắc nghẽn. Việc các nút mạng
thường xuyên di chuyển giữa các vùng gây ảnh hưởng nghiêm trọng
tới hiệu suất hoạt động TCP.
Tỷ lệ lỗi bit trong môi trường không dây khoảng từ 10 -3 đến 10-1
còn đối với môi trường hữu tuyến thì tỷ lệ đó thấp hơn nhiều, chỉ vào
khoảng 10-6 đến 10-8. Sở dĩ mạng không dây có tỷ lệ lỗi bit cao vì
đường truyền liên tục bị dán đoạn do các node thường xuyên di
chuyển cho nên bên phát không nhận được tín hiệu ACK từ bên thu
trong khoảng thời gian timeout. Kết quả là bên phát phải truyền lại cả
gói tin, khởi tạo lại đồng hồ thời gian (theo hàm số mũ) và đóng cửa
sổ điều khiển tắc nghẽn của gói tin. Khả năng gói tin bị mất lại thường
ở những node cuối cùng cho nên quá trình truyền lại cả gói tin phải
bắt đầu từ đầu làm ảnh hưởng đến tải mạng.
Phương pháp sửa lỗi trước (Forward Error Correction – FEC) có
thể sử dụng để nâng cao hiệu suất. Tuy nhiên FEC chỉ có hiệu quả
trong một số điều kiện nhất định, gây phí tổn băng thông. Do vậy sử
dụng FEC thực sự không phải là phương pháp tối ưu. Nó không khắc
phục được những khó khăn trong môi trường không dây có những yếu
đặc biệt như địa hình phức tạp chẳng hạn.
d) Không khai thác hết khả năng của mạng
Nguyên tắc hoạt động của cơ chế điều khiển tắc nghẽn TCP là kích
thước của cửa sổ tăng lên khi bên phát nhận được tín hiệu ACK từ
Bên thu và ngược lại. Các ứng dụng nhỏ như email hay web browsing
tỏ ra không phù hợp với cơ chế này vì khi kích thước cửa sổ bắt đầu
tăng lên đến mức tối đa (nghĩa là mạng đạt công suất phát cực đại) thì
14
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
dữ liệu truyền đã hết. Hạn chế này không chỉ riêng trong mạng Ad hoc
mà kể cả mạng hữu tuyến.
f) Nguồn cung cấp năng lượng bị giới hạn
Như chúng ta đã biết nguồn năng lượng cung cấp cho các thiết bị
như laptop, PDA, wireless phone có giới hạn. Thường xuyên phải
truyền lại dữ liệu do lỗi sẽ làm tăng chi phí phải cung cấp năng lượng.
2.2 Tổng quan về những phương pháp nâng cao hiệu suất TCP trong
mạng không dây kiểu Ad hoc
F-TCP (Feedback - TCP) dựa vào tầng mạng tại các Host trung
gian để nhận biết lỗi xảy ra khi một trong các MH di chuyển. Trường
hợp thông thường trạng thái của bên phát là đang hoạt động (active),
mọi gói tin được chuyển đi bằng giao thức TCP chuẩn. Ngay khi một
MH nhận biết lỗi xảy ra nó lập tức chuyển gói tin thông báo lỗi đường
truyền (Route Failure Notification - RFN) đến cho bên phát. Nhận
được gói tin RFN bên phát ngừng phát, chuyển về trạng thái ngủ
(snooze) đồng thời thiết lập lại các biến trạng thái như đồng hồ
timeout, cửa sổ. Bên phát chờ ở chế độ ngủ cho đến khi nào nó nhận
được gói tin xác nhận đường truyền đã thông suốt. Lúc đó nó lại
chuyển về trạng thái active để tiếp tục phát.
Nhận thông báo RRN
snooze
active
Nhận thông báo RFN
Hình 2.1 – Sơ đồ chuyển trạng thái của F-TCP
15
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
M-TCP (Mobile-TCP) nâng cao hiệu suất TCP bằng cách ngăn
chặn giảm cửa sổ điều khiển tắc nghẽn. Giao thức này hỗ trợ mạng
kiến trúc ba lớp. Lớp dưới cùng là các MH, lớp giữa là các Mobile
Support Station (MSS) còn trên cùng là các SH (Supervisory Host).
Một số MSS tập hợp lại trong cùng một miền dưới sự điều khiển của
một SH. MSS chỉ là các thiết bị xử lí đơn giản. Các MH truyền tin với
nhau thông qua MSS. SH phải là thiết bị xử lí phức tạp, có chức năng
như một gateway. SH quản lí kết nối và thực hiện chức năng chọn
đường. SH phải duy trì kết nối TCP giữa bên phát với nó và từ nó đến
các MH. Khi có nhu cầu truyền dữ liệu SH làm nhiệm vụ chuyển tiếp
(forward) những gói tin đó đến MH, sau đó nó lại phải chuyển tín hiệu
ACK từ bên thu cho bên phát. Một chức năng nữa của SH là quản lí
đồng hồ thời gian. Khi SH nhận được tín hiệu ACK cuối cùng nó sẽ
chuyển tín hiệu ACK chấp nhận của byte dữ liệu cuối cùng cho bên
phát rồi thiết lập đồng hồ thời gian về 0. Trường hợp quá thời gian qui
định (timeout) mà SH không nhận được tín hiệu ACK của bên thu (có
thể do mất kết nối, tốc độ truyền quá thấp vì phải chia sẻ kết nối hoặc
do nhiễu...vv) SH gửi thông báo đến cho bên phát. SH yêu cầu bên
phát giảm kích thước cửa sổ truyền về 0, chuyển sang trạng thái chờ
và không có phản ứng gì (persist). MH lưu lại tuyến đường các gói tin
đi qua để thực hiện chức năng sửa lỗi. ưu điểm của phương pháp này
là tránh chi phí không cần thiết khi MH di chuyển. Nếu MH không
mất kết nối nhưng tốc độ truyền quá thấp SH sẽ yêu cầu bên phát
giảm kích thước cửa sổ truyền xuống 0. Khi MH di chuyển đến vùng
khác nhưng vẫn trong cùng một miền chịu sự giám sát của SH thì các
16
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
thông tin về MH không cần phải cập nhật vào BS mới. Bắt tay chỉ xảy
ra khi MH di chuyển giữa hai miền khác nhau. Sau khi MH di chuyển
đến miền mới nó sẽ gửi đến SH thông báo “HELLO”. Nhận được
thông báo “HELLO” SH sẽ truyền lại những gói tin chưa được xác
nhận cho MH và yêu cầu bên phát chuyển từ trạng thái chờ sang trạng
thái hoạt động để tiếp tục phát.
Hình 2.2 – Kiến trúc mạng không dây Ad hoc trên cơ sở M-TCP
17
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
Hình 2.3 Sơ đồ thiết lập liên kết M-TCP
I-TCP (Indirect-TCP) chia kết nối thành hai nửa: từ FH đến Mobile
Support Router (MSR) là kết nối hữu tuyến còn nửa từ MSR đến MH
là kết nối không dây. Nửa trước nhanh hơn, độ tin cậy cao hơn, nửa
sau chậm hơn, khả năng xảy ra lỗi nhiều hơn. Khi cần truyền dữ MH
yêu cầu tạo kết nối TCP với MSR. MSR có nhiệm vụ thiết lập kết nối
TCP với FH, FH chỉ nhìn thấy MH thông qua MSR. Khi MH di
chuyển, toàn bộ thông tin kết nối cũng sẽ được cập nhật vào MSR
mới. Việc cập nhật thông tin là hoàn toàn trong suốt đối với FH. FH
không cần phải tạo lại liên kết với MSR mới.
I-TCP sử dụng trong mạng diện rộng (wide area network - WAN)
hiệu quả cao hơn nhiều so với sử dụng trong mạng cục bộ (LAN) .
Trong mạng cục bộ khi MH di chuyển gây ra phí tổn vì MSR phải
thực hiện nhiệm vụ bắt tay (Handoff), chọn lại đường truyền với cơ
chế điều khiển tắc nghẽn cùng với chiến lược điều khiển lùi (backoff)
theo hàm số mũ của TCP chuẩn của mạng hữu tuyến. Mặt khác tại
18
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
những vùng giao nhau MH giảm kích thước cửa sổ điều khiển tắc
nghẽn nên bắt buộc FH phải giảm tốc độ truyền dữ liệu. Tốc độ truyền
chỉ tăng lên khi quá trình bắt tay hoàn tất. Sở dĩ I-TCP trong mạng
WAN đạt được hiệu suất cao hơn so với TCP chuẩn vì đặc điểm của
mạng WAN là thời gian trễ (round trip delay) lớn, thời gian đó đủ để
quá trình bắt tay, sửa lỗi giữa MH và MSR hoàn tất.
2.3 Giao thức Snoop
Giao thức Snoop thực hiện một số thay đổi phần mềm tầng liên kết
(link). ý tưởng chính của giao thức snoop là lưu lại các gói tin tại các
trạm cơ sở (Base Station - BS) sau đó truyền lại nếu lỗi xảy ra. Snoop
hoạt động trong mạng có kiến trúc hai phần: phần cố định và phần thay
đổi. Snoop thực hiện quá trình chọn đường và truyền lại gói tin đã mất tại
các trạm cơ sở. Quá trình gồm từ việc lưu gói tin chưa xác nhận, truyền
lại gói tin bị mất và xử lí timeout. Kết quả cải thiện hiệu suất mạng thật
đáng ngạc nhiên. Hơn thế ưu điểm của giao thức snoop là không phải sửa
đổi TCP trên mạng hữu tuyến và các ứng dụng hiện có.
Tại trạm cơ sở có thêm một module chọn đường snoop, module snoop
thực hiện nhiệm vụ điều khiển các gói tin đi đúng hướng tới đích. Đồng
thời snoop còn có nhiệm vụ lưu lại những gói tin đang gửi từ FH đến MH
mà chưa được xác nhận. Ngoài ra snoop còn ghi lại đường đi của tất cả
các tín hiệu ACK gửi đi từ MH. Khi biết một gói tin bị mất (do nhận
được tín hiệu ACK bị lặp lại hoặc do timeout) snoop sẽ truyền lại gói tin
nếu gói tin đó đã được lưu trong cache (quá trình truyền lại là cục bộ,
không cần phải gửi lại tín hiệu ACK cho bên phát). Xử lí lỗi hoàn toàn
trong suốt đối với FH nên không cần cơ chế điều khiển tắc nghẽn của
TCP chuẩn.
19
Hiệu suất hoạt động TCP trên mạng không dây Ad hoc
Mô đun snoop có hai thủ tục là snoop_data() và snoop_ack() [2].
Snoop_data() xử lí các gói tin đến từ FH. Có ba loại gói tin như sau:
gói tin mới theo thứ tự TCP.
gói tin không đúng thứ tự đã được cache từ trước đó.
gói tin không đúng thứ tự nhưng chưa được cache.
Hình 2.4 là sơ đồ hoạt động của thủ tục snoop_data(). Khi trạm cơ sở
nhận được một gói tin nó kiểm tra nếu là gói tin mới, đến đúng thứ tự thì
gói tin sẽ được lưu lại một bản sao và chuyển tiếp đến đích. Nếu gói tin là
mới nhưng đến không đúng thứ tự thì gói tin bị đánh dấu là bị mất do tắc
nghẽn cần phải gửi lại. Trường hợp gói tin không phải là mới (gói tin mà
nguồn phát truyền lại vì tắc nghẽn) nó sẽ lập tức được chuyển tiếp đến
đích và bộ đếm được tăng lên 1 giá trị.
Packet arrives
No
1. Forward packet
2. Reset local rexmit counter
New
packet
Yes
No
1. Mark as cong. lost
2. Forward pkt
Insequence
Yes
1. Cache packet
2. Forward to mobile
20
Hình 2.4-Sơ đồ thực hiện của snoop_data()
- Xem thêm -