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

Định tuyến khôi phục trên đồ thị phẳng dựa trên thông tin vị trí cho mạng cảm biến không dây

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 (1.46 MB, 55 trang )

ĐAI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

VŨ VĂN DIỆN

ĐỊNH TUYẾN KHÔI PHỤC TRÊN ĐỒ THỊ
PHĂNG DỰA TRÊN THÔNG TIN VỊ TRÍ CHO
MẠNG CẢM BIẾN KHÔNG DÂY

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

HÀ NỘI - 2016


ĐAI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

VŨ VĂN DIỆN

ĐỊNH TUYẾN KHÔI PHỤC TRÊN ĐỒ THỊ PHĂNG DỰA TRÊN
THÔNG TIN VỊ TRÍ CHO MẠNG CẢM BIẾN KHÔNG DÂY
Ngành: Công nghệ thông tin
Chuyên ngành: Truyền dữ liệu và mạng máy tính
Mã số: 60.48.01.02

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

NGƢỜI HƢỚNG DẪN KHOA HỌC: TS Trần Trúc Mai
TS Lê Đình Thanh

HÀ NỘI - 2016




LỜI CAM ĐOAN
Em xin cam đoan nội dung của luận văn “Định tuyến khôi phục trên đồ
thị phẳng dựa trên thông tin vị trí cho mạng cảm biến không dây” là sản phẩm
do em thực hiện dƣới sự đồng hƣớng dẫn của TS Trần Trúc Mai và TS Lê
Đình Thanh. Trong toàn bộ nội dung của luận văn, những điều đƣợc trình bày
là do em nghiên cứu đƣợc từ các tài liệu tham khảo. Tất cả các tài liệu tham
khảo đều có xuất xứ rõ ràng và đƣợc trích dẫn hợp pháp.
Em xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo
quy định cho lời cam đoan của mình.
Hà Nội, ngày 26 tháng 01 năm 2016
Ngƣời cam đoan

Vũ Văn Diện


LỜI CẢM ƠN
Trong quá trình học tập và hoàn thành luận văn tốt nghiệp, em đã nhận
đƣợc rất nhiều sự giúp đỡ, động viên từ thầy cô, gia đình và bạn bè. em muốn
bày tỏ sự tri ân sâu sắc của mình tới tất cả trong quyển luận văn này.
Em xin bày tỏ sự cảm ơn đặc biệt tới TS Trần Trúc Mai và TS Lê Đình
Thanh, những ngƣời đã định hƣớng cho em trong lựa chọn đề tài, đƣa ra
những nhận xét quý giá và trực tiếp hƣớng dẫn em trong suốt quá trình nghiên
cứu và hoàn thành luận văn tốt nghiệp.
Em xin cảm ơn các thầy cô trong Trƣờng Đại học Công nghệ - ĐHQG
Hà Nội đã truyền thụ kiến thức cho em trong suốt khoảng thời gian học tập
tại trƣờng, đem đến cho em cảm hứng để theo đuổi con đƣờng nghiên cứu
khoa học và công việc của em sau này.
Hà Nội, ngày 26 tháng 01 năm 2016


Vũ Văn Diện


MỤC LỤC
LỜI CAM ĐOAN ....................................................................................................................... 1
MỤC LỤC...................................................................................................................................... 5
DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT ................................................. 5
DANH MỤC CÁC HÌNH VẼ ĐỒ THỊ ............................................................ 6
MỞ ĐẦU ........................................................................................................... 9
CHƢƠNG 1: TỔNG QUAN VỀ ĐỊNH TUYẾN DỰA TRÊN THÔNG TIN
VỊ TRÍ CHO MẠNG CẢM BIẾN KHÔNG DÂY ....................................................... 9
1.1.Mạng cảm biến không dây ..................................................................... 10
1.2.Những vấn đề gặp phải trong định tuyến cho mạng cảm biến không dây11
1. 3 Định tuyến dựa trên thông tin vị trí ........................................................ 5
CHƢƠNG 2: CÁC KỸ THUẬT XÂY DỰNG ĐỒ THỊ PHẲNG .......................14
2.1. Các kỹ thuật khôi phục ........................................................................... 7
2.1.1.Tổng quan .......................................................................................... 7
2.1.2. Định tuyến gói tin theo biên của vùng trống .................................. 14
2.1.3.Định tuyến khôi phục sử dụng đồ thị phẳng .................................... 29
2.2. Đồ thị Gabriel........................................................................................ 23
2.2.1.Định nghĩa ........................................................................................ 23
2.2.2.Các xây dựng ................................................................................... 24
2.3.Đồ thi RNG (Relative Neighborhood Graph) ........................................ 37
2.3.1.Định nghĩa ........................................................................................ 37
2.3.2.Cách xây dựng ................................................................................. 38
2.4.Đồ thị Hypocomb (Hypocomb Graph) .................................................. 39
2.4.1 Một số ký hiệu trong đồ thị.............................................................. 39
2.4.2 Đồ thị Besh ...................................................................................... 29
2.4.3.Đồ thị Reduced Hypocomb ............................................................. 31

2.4.4. Local Hypocomb ............................................................................. 31


CHƢƠNG 3: ĐÁNH GIÁ HIỆU NĂNG CỦA ĐỊNH TUYẾN KHÔI PHỤC
TRÊN CÁC ĐỒ THỊ PHẲNG.............................................................................................33
3.1.Công cụ mô phỏng và phân tích kết quả ................................................ 33
3.1.1. Giới thiệu ngôn ngữ lập trình mô phỏng NS2 ................................ 33
3.1.2. Công cụ hỗ trợ phân tích kết quả mô phỏng................................... 35
3.2.Thực nghiệm mô phỏng ......................................................................... 48
3.2.1.Giới thiệu ......................................................................................... 48
3.2.2.Một số độ đo đánh giá hiệu năng ..................................................... 48
3.2.3.Các thông số mô phỏng ................................................................... 49
3.3 Kết quả đánh giá .................................................................................... 38
3.3.1.Đánh giá theo tỉ lệ phân phối gói tin thành công ............................. 38
3.3.2.Đánh giá theo tổng phát gói tin........................................................ 39
3.3.3.Độ dài đƣờng đi ............................................................................... 40
KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN ......................................................................42
TÀI LIỆU THAM KHẢO ..................................................................................................43


DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT

WSN :

Wireless Sensor Netwoks - Mạng cảm biến không dây

GPS :

Global Positioning System - Hệ thống định vị toàn cầu


GPRP:

Geographic routing protocol - giao thức định tuyến dựa trên

thông tin vị trí
GAR:

Greedy Anti-void Routing

CS :

Curved Stick

GF :

Geographic forwarding – Chuyển tiếp dựa trên thông tin vị trí

RR :

Recovery routing – Định tuyến khôi phục

HC :

Hypocomb

LHC :

Local Hypocomb

GG :


Gabriel Graph

RNG :

Relative Neighborhood Graph

GF :

Greedy Forwarding

PF

Perimeter Forwarding

:


DANH MỤC CÁC HÌNH VẼ ĐỒ THỊ
Hình 1.1.Vòng tròn nét liền cho biết phạm vi truyền thông của nút p là 1. ........ 8
Hình 1.2.Ví dụ về nút bị kẹt mạnh ....................................................................................... 9
Hình 1.3.(i) uvxy là một hình vuông, uv có độ dài lớn hơn 1 nên xóa cạnh
này.(ii) uvw lớn hơn 1200 v là nút bị kẹt mạnh theo quy tắc TENT. ...................10
Hình 1.4 Greedy Sweeping ở t1 ...........................................................................................10
Hình 1.5.Cạnh giao nhau thuộc loại đầu tiên, trƣớc và sau. ....................................12
Hình 1.6.Cạnh giao nhau thuộc loại thứ 2, trƣớc và sau. ..........................................12
Hình 1.7. Ý tƣởng quả bóng lăn trong kỹ thuật GAR [6] .........................................13
Hình 1.8. Kỹ thuật GAR và BoundHole [6] ...................................................................14
Hình 1.9.Nút Nc là nút PEG. ........................................................................... 22
Hình 1.10. Nút PEG Nc [6] ....................................................................................................16

Hình 1.11 Pseudo code của thuật toán CS [6]. ..............................................................18
Hình 1.12 Kỹ thuật Curved Stick [6] ................................................................................18
Hình 1.13. Quy tắc bàn tay phải, x nhận gói tin từ y, và chuyển tiếp nó đến
láng giềng đầu tiên ngƣợc chiều kim đồng hồ. .............................................................20
Hình 1.14. Ví dụ định tuyến trên mặt ...............................................................................21
Hình 2.1.Một ví dụ đơn giản về đồ thị Gabriel [23] ...................................................23
Hình 2.2.Cách xây dựng đồ thị Gabriel ...........................................................................25
Hình 2.3. Đồ thi Gabriel[23].................................................................................................26
Hình 2.4. Một trƣờng hợp đơn giản về đồ thị RNG với 2 điểm i, j ......................27
Hình 2.5.Cách xây dựng đồ thị RNG ................................................................................27
Hình 2.6 Đồ thị RNG hoàn chỉnh. ......................................................................................28
Hình 2.7 Quan hệ chặn............................................................................................................30
Hình 2.8 Đồ thị Besh ...............................................................................................................31
Hình 2.9. Đồ thị UDG và một số đồ thị phẳng Hypocomb [3]...............................32
Hình 3.1. Kiếm trúc NS-2 ......................................................................................................33


Hình 3.2.Các tham số mô phỏng .........................................................................................37
Hình 3.3. Tỉ lệ phân phối gói tin thành công .................................................................38
Hình 3.4. Tổng phát gói tin khi sử dụng topo mạng với 50, 100 và 200 nút. ...39
Hình 3.5. Tỉ lệ phần trăm độ dài đƣờng đi thực tế so với đƣờng đi ngắn nhất,
với 100 nút. ..................................................................................................................................40


MỞ ĐẦU
Ngày nay, với sự phát triển không ngừng của công nghệ thông tin đã
mang lại nhiều hiệu quả đối với khoa học cũng nhƣ trong các hoạt động thực
tế, trong đó mạng máy tính là một lĩnh vực đem lại hiệu quả thiết thực cho
con ngƣời. Thông qua mạng máy tính chúng ta có thể chia sẻ thông tin ở bất
kì nơi nào trên mạng, tìm kiếm thông tin một cách nhanh chóng, chính xác và

hiệu quả.
Mặc dù mạng máy tính đã xuất hiện từ lâu nhƣng cho đến những năm
gần đây, cùng với sự ra đời các thiết bị di động thì nhu cầu nghiên cứu và phát
triển các hệ thống mạng không dây ngày càng trở nên cấp thiết. Nhiều công
nghệ, phần cứng, các giao thức, chuẩn giao tiếp mạng lần lƣợt ra đời và đang
đƣợc tiếp tục nghiên cứu để nâng cao hiệu năng làm việc. Mạng cảm biến
không dây ra đời là một trong những thành tựu cao của công nghệ chế tạo và
công nghệ thông tin. Một lĩnh vực nổi bật của mạng cảm biến không dây
(Wireless Sensor Network - WSN) là sự kết hợp việc cảm nhận, tính toàn và
truyền thông vào một thiết bị nhỏ và những thiết bị này tạo ra một kết nối
rộng lớn thông qua mạng hình lƣới (Mesh networking protocols). Trong khi
khả năng của từng thiết bị là không mạnh thì việc kết hợp hàng trăm, hàng
nghìn thiết bị lại nhƣ vậy yêu cầu phải có công nghệ mới.
Những ứng dụng của mạng cảm biến không dây cũng ngày càng rộng
lớn trong hầu hết các lĩnh vực trong cuộc sống nhƣ: lĩnh vực quân sự, y tế sức
khỏe, bảo vệ môi trƣờng, trong các ngành công nghiệp, nông nghiệp ... Mặc
dù còn đối mặt với nhiều thách thức trong việc phát triển và mở rộng, nhất là
vấn đề năng lƣợng và quản lí năng lƣợng. Nhƣng trong một tƣơng lai không
xa, mạng cảm biến không dây và các ứng dụng của nó sẽ không ngừng lớn
mạnh và sẽ trở thành một phần không thể thiếu trong cuộc sống con ngƣời
nếu nhƣ chúng ta có thể phát huy hết các điểm mạnh mà không phải mạng
nào cũng có đƣợc nhƣ mạng cảm biến không dây.
1


Trong luận văn này, bên cạnh việc đƣa ra cái nhìn tổng quan về mạng
cảm biến không dây, vấn đề định tuyến, định tuyến dựa trên thông tin vị trí và
các kỹ thuật khôi phục đi theo biên sau cực tiểu địa phƣơng đã có, em còn tiến
hành cài đặt và đánh giá định tuyến khôi phục trên các đồ thị phẳng. Từ đó,
đƣa ra nhận định định tuyến khôi phục trên đồ thị phẳng nào thì cho kết quả

tốt hơn.
Tổ chức luận văn
Luận văn đƣợc bố cục theo các chƣơng nhƣ sau:
- Chương 1: Giới thiệu về mạng cảm biến không dây và ứng dụng,
những vấn đề gặp phải trong mạng cảm biến không dây, định tuyến
dựa trên thông tin vị trí, các kỹ thuật khôi phục
- Chương 2: Trình bày các kỹ thuật xây dựng đồ thị phẳng.
- Chương 3: Đánh giá hiệu năng của định tuyến khôi phục trên các đồ
thị phẳng.

2


CHƢƠNG 1: TỔNG QUAN VỀ ĐỊNH TUYẾN DỰA TRÊN
THÔNG TIN VỊ TRÍ CHO MẠNG CẢM BIẾN KHÔNG DÂY
1.1.Mạng cảm biến không dây
Mạng cảm biến không dây (WSN: Wireless Sensor Networks) bao
gồm nhiều nút cảm biến. Mỗi nút bao gồm có các thành phần sau:
- Vi điều khiển bao gồm: CPU, ROM, RAM, ADC, DAC.
- Sensor: cảm nhận thế giới bên ngoài, sau đó chuyển dữ liệu qua bộ
phận chuyển đổi để xử lý.
-Bộ phát radio
- Nguồn năng lƣợng (pin) và có thể có cả bộ phận định vị.
Node cảm biến là thành phần quan trọng nhất trong WSN. Do vậy, việc
thiết kế các node cảm biến sao cho có thể tiết kiệm đƣợc tối đa nguồn năng
lƣợng là vấn đề quan trọng hàng đầu
Nút cảm biến có nhiệm vụ thu nhận các tín hiệu vật lý từ môi trƣờng
xung quanh. Tín hiệu vật lý thu nhận đƣợc đƣợc lƣợng hóa bằng bộ chuyển
đổi tƣơng tự - số (ADC) rồi đƣợc chuyển vào bộ vi xử lý . Thông thƣờng, mỗi
thiết bị cảm biến chỉ đo đƣợc một tín hiệu vật lý nhƣ nhiệt độ, độ ẩm, áp suất,

độ sáng, độ rung chuyển hay nồng độ khí CO2, v.v.. Để đo nhiều tín hiệu vật
lý đồng thời, ngƣời ta tích hợp nhiều thiết bị cảm biến thành một bảng các
thiết bị cảm biến. Bộ phận thu/phát tín hiệu không dây có nhiệm vụ điều chế
và phát tín hiệu dƣới dạng sóng không dây, đồng thời thu và giải điều chế tín
hiệu. Các chuẩn công nghệ đƣợc sử dụng phổ biến cho WSN bao gồm IEEE
802.15.4, ZigBee. Bộ phận định vị, ví dụ thiết bị GPS, cho biết vị trí (tọa độ)
của nút cảm biến. Bộ vi xử lý có năng lực tính toán hạn chế. Tƣơng tự, bộ nhớ
có dung lƣợng cũng hạn chế. Pin có nhiệm vụ cung cấp điện cho nút hoạt
động, có kích thƣớc nhỏ và thƣờng không nạp điện bổ sung. Tất cả các thành
phần kể trên cấu thành một máy tính siêu nhỏ với khả năng tính toán và

3


truyền dữ liệu. Nhiều nút cảm biến đƣợc triển khai trên một khu vực tạo thành
một mạng tự hợp của các nút cảm biến.
Do vậy, một mạng cảm biến cho phép truy nhập thông tin mọi lúc mọi
nơi bằng cách thu thập, xử lý, phân tích và phát tán dữ liệu. Dẫn tới cảm biến
tham gia một cách tích cực trong việc tạo ra một môi trƣờng thông minh.
Mạng cảm biến hứa hẹn sẽ là một cuộc cách mạng trong một loạt các
ứng dụng. Điều này là có thể bởi tính linh hoạt, chính xác, hiệu quả về giá
thành và dễ dàng về triển khai của mạng, theo Tilaketal. Những bộ cảm biến
thông minh cho phép giám sát, thăm dò và thu thập dữ liệu liên quan đến bất
kỳ hỏng hóc nào của máy móc, động đất, lũ lụt, thậm chí là một vụ tấn công
khủng bố.
1.2.Những vấn đề gặp phải trong định tuyến cho mạng cảm biến không
dây
Mạng cảm biến không dây có những đặc tính riêng sau dẫn đến những
thách thức cho việc thiết kế các thuật toán định tuyến cho mạng cảm biến
không dây:

- Tài nguyên (năng lực tính toán, bộ nhớ, pin) của mỗi nút hết sức hạn
chế: Đây là thách thức lớn khi thiết kế các thuật toán định tuyến cho mạng
cảm biến không dây. Những thuật toán áp dụng đƣợc cho mạng cảm biến
không dây phải yêu cầu tính toán cũng nhƣ lƣu trữ rất ít tại mỗi nút. Đồng
thời, những thuật toán này phải giải quyết tốt vấn đề cân bằng tải để ít nút
phải hoạt động nhiều hơn và sớm ngừng hoạt động do pin hết điện.
- Số lƣợng nút đƣợc triển khai có thể rất lớn: Có thể hàng nghìn nút
đƣợc triển khai trên vùng rộng lớn. Đặc điểm này càng làm tăng yêu cầu tính
toán cũng nhƣ lƣu trữ rất ít tại mỗi nút.
- Nút thay đổi chế độ thức và ngủ: Để tiết kiệm điện của pin và kéo
dài tuổi thọ các nút, một số nhà sản xuất cung cấp các nút có khả năng đi vào
chế độ ngủ khi rỗi hay theo chu kỳ. Đây là một thách thức cho các thuật toán
định tuyến vì các liên kết giữa các nút hay bị thay đổi.
4


- Nút ngừng hoạt động: Do các nút cảm biến có thể đƣợc đặt ở một số
nơi có điều bên ngoài khắc nghiệt, hoặc các node có nguồn nuôi bị hết pin.
Nên các nút cảm biên có thể bị ngừng hoạt động
- Nút đƣợc bổ sung: Các nút mới có thể đƣợc bổ sung để lấp các vùng
trống do các nút
đã ngừng hoạt động để lại hoặc để mở rộng khu vực triển khai.
Trên đây là các thách thức gặp phải trong quá trình nghiên cứu mạng
cảm biến không dây. Để mạng cảm biến đƣợc triển khai trên thực tế cẩn có
những nghiên cứu để giải quyết đƣợc các thách thức trên.
1. 3. Định tuyến dựa trên thông tin vị trí
Trƣớc đây, trong định tuyến trên mạng hay sử dụng phƣơng pháp định
tuyến dựa trên thông tin về topo mạng Các phƣơng pháp định tuyến dựa trên
thông tin topo nhƣ DSDV [10] , WRP [11], STAR [12], sử dụng tác tử di
động [14], AIR [15], OLSR [16] và TBRPF [17], DSR [10], AODV [18],

LBAR [19], preemptive routing [20], DLAR [21], và NCP-based [22] yêu cầu
các nút phải lƣu trữ nhiều thông tin về các đƣờng định tuyến. Yêu cầu này
vƣợt ngoài khả năng đáp ứng của các nút cảm biến. Ngoài ra, định tuyến topo
sử dụng nhiều gói tin điều khiển để tìm và duy trì các đƣờng đƣờng định
tuyến. Ngoài tác động làm giảm băng thông sẵn có cho dữ liệu, nhiều gói tin
điều khiển tiêu hao điện năng của các nút và hệ quả là làm giảm tuổi thọ của
các nút. Với đặc điểm nhƣ vậy, định tuyến dựa trên topo hầu nhƣ không áp
dụng đƣợc cho mạng cảm biến. Và điều này đòi hỏi cần có một phƣơng pháp
mới phù hợp cho mạng cảm biến
Những năm gần đây, phƣơng pháp định tuyến dựa trên thông tin vị trí
đã ra đời [1] [2] và đã trở thành phƣơng pháp định tuyến đƣợc sử dụng rộng
rãi trong mạng cảm biến không dây. Định tuyến dựa trên thông tin vị trí giả
thiết rằng: mỗi nút biết về vị trí của nó bằng việc sử dụng hệ thống định vị
nhƣ GPS hoặc bằng kỹ thuật định vị nào đó. Ngoài ra, định tuyến cần sử dụng
một thuật toán khác, đƣợc gọi là dịch vụ thông tin vị trí (location service) [1]
5


[2], để xác định vị trí của nút đích. Trƣớc khi thực hiện thuật toán định tuyến,
nút nguồn xác định vị trí của nút đích thông qua triệu gọi dịch vụ thông tin vị
trí, chẳng hạn sử dụng hệ thống định vị toàn cầu GPS. Thông tin về vị trí nút
đích, sau đó, đƣợc gắn vào tiêu đề mỗi gói tin cần chuyển đi và đƣợc sử dụng
làm thông tin dẫn đƣờng. Các nút không phải duy trì các đƣờng đi cũng nhƣ
các trạng thái định tuyến.
Định tuyến dựa trên thông tin vị trí sử dụng kết hợp chuyển tiếp dựa
trên thông tin vị trí (geographic forwarding - GF) và định tuyến khôi phục
(recovery routing - RR) để định tuyến gói tin.
Chuyển tiếp dựa trên thông tin vị trí là kỹ thuật chuyển gói tin từ nút
này đến nút khác gần đích hơn. Độ gần đích của một nút có thể đo bằng
khoảng cách từ nút đó đến nút đích. Nút không có láng giềng gần đích hơn

đƣợc gọi là cực tiểu địa phƣơng (local minimum). Cực tiểu địa phƣơng xuất
hiện ở biên của những vùng trống (hole), hay vùng không có nút cảm biến, và
biên của mạng. Để mỗi nút nhận đƣợc gói tin biết nên sử dụng chuyển tiếp
dựa trên thông tin vị trí hay định tuyến khôi phục cho gói tin nhận đƣợc, một
thông tin chỉ dẫn đƣợc gọi là chế độ (mode) định tuyến đƣợc ghi trong tiêu đề
của gói tin. Chế độ định tuyến có thể là tham lam (greedy) hoặc khôi phục
(recovery). Nút nguồn thiết lập chế độ tham lam, hay chế độ sử dụng chuyển
tiếp dựa trên thông tin vị trí, cho gói tin. Khi nhận đƣợc gói tin ở chế độ tham
lam, cực tiểu địa phƣơng sẽ thay đổi gói tin sang chế độ khôi phục, hay chế
độ sử dụng định tuyến khôi phục, đồng thời ghi thông tin về vị trí của nó vào
tiêu đề gói tin ở trƣờng cực tiểu địa phƣơng gặp cuối cùng. Khi nhận đƣợc gói
tin ở chế độ khôi phục, nút gần đích hơn cực tiểu địa phƣơng gặp cuối cùng
khôi phục gói tin về chế độ tham lam. Ở những tình huống còn lại, nút nhận
đƣợc gói tin không thay đổi chế độ định tuyến của gói tin mà chỉ chuyển tiếp
gói tin bằng việc áp dụng chuyển tiếp dựa trên thông tin vị trí hay định tuyến
khôi phục tùy theo chế độ định tuyến hiện tại của gói tin.

6


CHƢƠNG 2: CÁC KỸ THUẬT XÂY DỰNG ĐỒ THỊ PHẲNG
2.1. Các kỹ thuật khôi phục
2.1.1.Tổng quan
Khi chuyển tiếp tham lam gặp thất bại, thì quá trình chuyển tiếp gói tin
từ nguồn đến đích sẽ chuyển sang định tuyến khôi phục.
Có hai kỹ thuật chinh đƣợc sử dụng trong kỹ thuật khôi phục:
- Định tuyến gói tin đi theo biên của vùng trống
- Định tuyến gói trên đồ thị phẳng.
2.1.2. Định tuyến gói tin theo biên của vùng trống
Ta sẽ tìm hiểu một số thuật toán định tuyến chính đi theo biên của vùng

trống. Đó là các thuật toán:
-Thuật toán BOUNDHOLE
-Thuật toán GAR
-Thuật toán Curved Stick
1).Thuật toán BOUNDHOLE
1.1).Ý tƣởng
BoundHole [2] [6] [7] là một kỹ thuật khôi phục đi theo biên hiệu quả.
Trong đó, BoundHole sử dụng kỹ thuật quay (sweeping) để chuyển tiếp gói
tin theo biên vùng trống.
1.2).Mô tả
Trong [2] nhóm tác giả định nghĩa các nút bị kẹt mà ở đó gói tin bị kẹt
khi chuyển tiếp tham lam và phát triển một quy tắc cục bộ, gọi là quy tắc
TENT cho mỗi nút trong mạng để kiểm tra một gói tin có bị kẹt hay không.
Để đƣa gói tin ra khỏi các nút bị kẹt, họ đã đƣa ra thuật toán BOUNDHOLE,
để xây dựng các đƣờng đi xung quanh các vùng trống.
Có hai loại nút bị kẹt: nút bị kẹt yếu và nút bị kẹt mạnh.

7


(1).Nút bị kẹt yếu: một nút p thuộc S đƣợc gọi là nút bị kẹt yếu nếu tồn tại
một nút b thuộc S nằm ngoài phạm vi truyền của p mà không có làng giềng
nào của p gần với b hơn p. Đích b đƣợc gọi là một nút đen của p.

Hình 1.1.Vòng tròn nét liền cho biết phạm vi truyền thông của nút p là 1.
Định nghĩa này của nút bị kẹt phù hợp cho các ứng dụng mà ở đó các
đích định tuyến là các nút trong mạng. Trong chuyển tiếp tham lam, các gói
tin chỉ bị kẹt ở các nút bị kẹt. Các vùng trống theo định nghĩa này là các mặt
có tối thiểu 4 đỉnh trong lƣới tam giác Delaunay với tất cả các cạnh có độ dài
lớn hơn 1 bị loại bỏ.

(2).Tìm các vùng trống: Cho một tập các nút S trong mặt phẳng, sơ đồ
voronoi phân chia mặt phẳng thành các vùng nồi đƣợc gọi là tế bào Voronoi,
trong đó các điểm trong một cell chỉ gần nhất với 1 nút. Lƣới tam giác
Delaunay là đồ thị kép của sơ đồ Voronoi, bằng việc kết nối các nút mà tế bào
tƣơng ứng của nó là tiếp giáp trong sơ đồ Voronoi.
) Bổ đề 1: Trong lƣới tam giác Delaunay DT(S), nếu tất cả các cạnh tiếp
giáp với p không dài hơn 1 thì p không phải là một nút bị kẹt.
) Định lý 1: Tất cả các nút bị kẹt yếu phải ở trên biên của vùng trống.
Tuy nhiên, định nghĩa về nút bị kẹt yếu không đủ cho các ứng dụng mà
ở đó đích đến không phải là một nút trong mạng. Điều này dẫn đến sự ra đời
của nút bị kẹt mạnh, quy tắc TENT, và thuật toán BOUNDHOLE.

8


) Nút bị kẹt mạnh: Nút p thuộc S là một nút bị kẹt mạnh nếu tồn tại một vị
trí q nằm ngoài phạm vi truyền của p mà ở đó không có láng giềng nào của p
gần q hơn p. Tập hợp các điểm q nhƣ vậy đƣợc gọi là vùng đen. Tất cả các
nút bị kẹt yếu có thể trở thành một nút bị kẹt mạnh.

Hình 1.2.Ví dụ về nút bị kẹt mạnh

) Quy tắc TENT: Chúng ta sử dụng một quy tắc đơn giản đẻ phát hiện ra
một nút bị kẹt. Đối với mỗi nút p, chúng ta xét các nút láng giềng của p theo
chiều ngƣợc chiều kim đồng hồ. Với mỗi cặp nút láng giềng u và v, chúng ta
vẽ đƣờng trung trực của up và vp. Hai đƣờng trung trực này cắt nhau tại O.
Nếu O nằm trong phạm vi truyền thông của p, vùng đen phải nằm trong phạm
vi truyền thông của p. Do u và v là tiếp giáp theo chiều ngƣợc chiều kim đồng
hồ, nên không có nút ở trong vùng trống. Do vậy, p không bị kẹt ở một nút
bất kỳ trong vùng đƣợc xác định bởi pu và pv. Chúng ta nói rằng p không bị

kẹt theo hƣớng upv. Ngƣợc lại nếu tâm O nằm ngoài phạm vi truyền thông
của p thì có thể có một đích trong mặt phẳng mà ở đó gói tin có thể bị kẹt ở p.
Do vậy, quy tắc TENT là đủ và cần thiết đề phát hiện nút bị kẹt. Ở đây, chúng
ta gọi một góc kẹt ở một nút p là góc tạo bởi p và cặp láng giềng của nó mà
tại đó p gặp cực tiểu địa phƣơng. Một nút là một nút kẹt mạnh nếu nó có tối
thiểu một góc kẹt.

9


Để xác định một nút có bị kẹt hay không, ta có thể dựa vào góc của nó
với một cặp láng giềng. Nút p là nút không bị kẹt nếu góc upv nhỏ hơn 120o.
Nên một nút có nhiều nhất 3 hƣớng kẹt.

Hình 1.3.(i) uvxy là một hình vuông, uv có độ dài lớn hơn 1 nên xóa cạnh này.(ii)
uvw lớn hơn 1200 v là nút bị kẹt mạnh theo quy tắc TENT.

Nhƣ trong hình 1.3, góc uvw lớn hơn 120o nên v là nút bị kẹt mạnh
theo quy tắc TENT.
) BOUNDHOLE – thuật toán tìm vùng trống
Không giống nhƣ trƣờng hợp của các nút bị kẹt yếu, mà ở đó các vùng
trống có thể đƣợc định nghĩa nhƣ là một mặt trong trong đồ thị Delaunay giới
hạn. Ở đây chúng ta cần xác định chúng và làm thế nào để đi qua chúng.

Hình 1.4 Greedy Sweeping ở t1
Nhƣ trong hình 1.4, có các nút s, p, t1, t2,… bao quanh một vùng trống.
Nút p bị kẹt theo hƣớng spt1. Phƣơng pháp ở đây là bắt đầu từ một nút bị kẹt
p, quay theo hƣớng bị kẹt và kết nối đến láng giềng t1 theo hƣớng ngƣợc
10



chiều kim đồng hồ. Rồi gói tin từ t1 đƣa đến nút láng giềng trên biên của vùng
trống, trong trƣờng hợp này là t2. Việc xác định t2 thế nào làm nhiệm vụ của
BOUNDHOLE. Lặp lại tiến trình này cho mỗi nút mà gói tin đó tới. Gói tin
sẽ đánh dấu biên của vùng trống và trả lại nó cho p khi đi hết vùng trống. Do
vậy, vùng trống đƣợc định nghĩa nhƣ là một vùng đóng đƣợc bao quanh bởi
chu trình xác định bởi BOUNDHOLE.
) Thuật toán tham lam – BOUNDHOLE
Giả sử p là một nút bị kẹt và góc spt1 là hƣớng kẹt, chúng ta sử dụng thuật
toán sau để tìm ra vùng trống chứa p trên biên. Chúng ta sẽ cố gắng tìm ra chu
trình đóng quay lại p. Chu trình đƣợc tìm thấy bởi quy tắc cục bộ ở mỗi nút.
Chu trình pt1t2…tkp đƣợc định hƣớng. Thuật toán làm việc nhƣ sau:
1) Chúng ta sử “quy tắc bàn tay phải” bắt đầu từ t1, quay t1p với t1 làm gốc
quay theo chiều ngƣợc chiều kim đồng hồ, điểm đầu tiên nó gặp là t2.
Rồi lại tiếp tục lấy t2 làm gốc quay t2t1 theo chiều ngƣợc chiều kim
đồng hồ.
2) Thủ tục này tiếp tục đến khi đƣờng đi pt1t2…tk quay trở lại p và tạo
thành một vùng đóng.

(3).Cạnh giao nhau: Trong trƣờng hợp cạnh tjtj+1 giao với cạnh titi+1, j > i, có
thể có hai trƣờng hợp. Loại đầu tiên, nút tj không nhìn thấy nút ti và ti+1. Loại
thứ 2 là nút ti không nhìn thấy nút tj và tj+1. Với loại đầu tiên, chúng ta xóa các
đoạn ti+1ti+2…tjtj+1, và tiếp tục trên t0t1…titj+1tj, p = t0.

11


Hình 1.5.Cạnh giao nhau thuộc loại đầu tiên, trước và sau.
Với loại thứ 2, chúng ta có ti+1 nhƣ là chặng kế tiêp cho tj và tiếp tục trên
t0…tjti+1ti, p = t0.


Hình 1.6.Cạnh giao nhau thuộc loại thứ 2, trước và sau.
Thuật toàn BOUNDHOLE tìm ra một vùng trống cho mỗi nút kẹt mạnh
và một hƣớng kẹt đơn giản và mang tính cục bộ. Việc tính toán ở mỗi nút chỉ
phụ thuộc vào láng giềng của nó.
) Kết thúc thuật toán: thuật toán BOUNDHOLE kết thúc và phát hiện ra
một vùng trống. BOUNDHOLE tạo ra một chuỗi các nút t0t1…tk trong đó t0 =
p.
Nhƣ vậy, BOUNHOLE là kỹ thuật đi theo biên [1] đƣợc sử dụng để
phát hiện các vùng trống. Cụ thể, một gói tin Hole Boundary Detection
(HBD) đƣợc sinh ra bởi một nút biên và đƣợc chuyển tiếp dọc theo biên của
vùng trống cho đến khi quay về nút đã sinh ra nó. Thông tin vị trí các nút biên
lần lƣợt đƣợc ghi trong thân của gói tin HBD. Khi nhận lại gói tin HBD, nút
đã sinh ra nó có thông tin đầy đủ về vùng trống.
12


 2). Thuật toán GAR
 2.1).Ý tƣởng
Greedy Anti-void Routing [6] [7] (GAR) là kỹ thuật khôi phục đi theo
biên nhằm mục đích đƣa các gói tin ra khỏi vùng trống khi gặp cực tiểu địa
phƣơng bằng cách truyền gói tin đó qua các nút biên. Ý tƣởng chính của cách
tiếp cận này đó là sử dụng một quả bóng lăn (GAR Rolling Ball) để lăn và
qua đó chọn nút chuyển gói tin kế tiếp.

Hình 1.7. Ý tưởng quả bóng lăn trong kỹ thuật GAR [7]
 2.2). Mô tả
Kỹ thuật GAR sử dụng một quả bóng lăn (GAR Rolling Ball) có kích
thƣớc bằng một nửa vòng tròn phạm vi của nút hiện tại. Kế tiếp đó, quả bóng
lăn sẽ lăn tròn xung quanh tâm của nút hiện tại, khi đó nút nào có quả bóng

lăn chạm đến đầu tiên thì nút đó sẽ là nút kế tiếp đƣợc gói tin chuyển tới.

13


Hình 1.8. Kỹ thuật GAR và BoundHole [7]
Trong hình 1.8, nút N_local là nút hiện tại, khi đó phạm vi giao tiếp của
N_local là vòng tròn có tâm là chính nó, trong đó các nút N4, N5, N6, N7, N8 là
các láng giềng mà nó có thể truyền thông tới. Khi lăn quả bóng GAR thì nút
đầu tiên quả bóng này gặp chính là nút N6. Và quá trình này lại tiếp tục với
N6. Với kỹ thuật BoundHole ta sẽ không thể tìm ra và chuyển gói tin tới nút
Ne (nút cần thiết để chuyển gói tin ra ngoài vùng trống) và khi đó BoundHole
sẽ tạo vòng lặp định tuyến khiến gói tin bị mắc kẹt.
Trong khi đó, với quả bóng lăn (Gar Rolling Ball) của GAR lại có thể
chọn đƣợc Ne. Khi đó đƣờng định tuyến mà kỹ thuật GAR tạo ra sẽ là N_local
N6, N7, N8, Ne, N10… Mặc dù hạn chế đƣợc nhƣợc điểm rất lớn của
BOUNDHOLE. Tuy nhiên có thể thấy, trƣờng hợp này GAR lại tìm ra và
chuyển gói tin qua các nút không thực sự cần thiết cho định tuyến, do đó

14


đƣờng đi không tối ƣu. Bên cạnh đó, chọn thừa nút cũng có thể làm tăng chi
phí mạng.
 2.3). Đánh giá
GAR là một kỹ thuật khôi phục đi theo biên hiệu quả. Ƣu điểm đáng kể
của kỹ thuật này là khắc phục đƣợc nhƣợc điểm tạo vòng lặp định tuyến của
kỹ thuật BoundHole. Tuy nhiên, nhƣợc điểm lớn nhất của GAR là kỹ thuật
này lại thƣờng chọn nhầm những nút không cần thiết, dẫn đến tạo ra đƣờng
định tuyến dài, gây tốn kém chi phí.

 3). Thuật toán CS
3.1). Ý tƣởng thuật toán
Curved Stick[7] (CS) là cách tiếp cận có ý tƣởng từ việc làm sao để
phát hiện ra đúng các nút biên vùng trống và đồng thời tạo đƣợc đƣờng tuyền
gói tin hiệu quả tối ƣu? Từ đây, ý tƣởng chính của thuật toán là xác định các
nút PEG (potential-exit-gate) là các nút có tiềm năng chuyển tiếp đƣợc gói tin
ra ngoài vùng trống để rồi sau đó sử dụng thanh cong quét chọn chúng làm
nút kế tiếp.

Hình 1.9.Nút Nc là nút PEG.
15


Vấn đề ở đây là giả sử Na là nút hiện tại thì làm sao để Na chọn đúng
nút Nc– nút PEG là nút kế tiếp chứ không phải chọn Nb (ở đây Na và Nb
không giao tiếp đƣợc với Nd, ngƣợc lại Nc thì có thể).
* 3.2). Mô tả
Định nghĩa 1.(Vùng trống): Chúng ta định nghĩa một vùng trống nhƣ
là một chuỗi tuần hoàn của các nút: H = {Ni, Ni +1, ..., Ni + j, Ni} trong đó
nó không tồn tại một liên kết Ek,l mà Nk là bên trong các lỗ và N1 là bên ngoài
lỗ hoặc Nl ∈ H.
Định nghĩa 2.(Nút biên):Chúng ta định nghĩa một nút nhƣ một nút biên
nếu nó nằm trên ranh giới của mạng hoặc của một vùng trống bên trong
mạng.
Định nghĩa 3.(Nút potential-exit-gate): Chúng ta nói một nút Nc là một
nút tiềm năng potential-exit-gate (PEG) theo hƣớng ∠Na Nc Nb nếu có một vị
trí X ∈R2 vào phạm vi truyền thông N’c s và nằm ngoài phạm vi truyền thông
của Na và Nb, là các nút ranh giới.

Hình 1.10. Nút PEG Nc [7]


16


×