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

Phát triển bộ tiện ích APE Testbed hỗ trợ kiểm thử mạng di dộng Adhoc

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.03 MB, 65 trang )

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
---------------------------------------

TRẦN DANH HƯNG

PHÁT TRIỂN BỘ TIỆN ÍCH APE TESTBED
H

TR

IỂ

TH

NG DI ỘNG AD-HOC

LUẬN VĂN TH C SĨ

Ỹ THUẬT

TP. HỒ CHÍ MINH – NĂM 2016


HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
---------------------------------------

TRẦN DANH HƯNG

PHÁT TRIỂN BỘ TIỆN ÍCH APE TESTBED
H


TR

IỂ

TH

NG DI ỘNG AD-HOC

Chuyên ngành: Hệ thống thông tin
ã số: 60.48.01.04

LUẬN VĂN TH C SĨ

Ỹ THUẬT

NGƢỜI HƢỚNG DẪN KHOA HỌC : TS. LÊ TRUNG QUÂN

TP. HỒ CHÍ MINH – Năm 2016


i

LỜI CA

OAN

Tôi cam đoan đây là công trình nghiên cứu của riêng tôi.
Các số liệu, kết quả nêu trong luận văn là trung thực và chƣa từng đƣợc ai
công bố trong bất kỳ công trình nào khác.
Tp. HCM, ngày 01 tháng 09 năm 2016

Học viên thực hiện luận văn

Trần Danh Hưng


ii

LỜI CẢ

ƠN

Tôi xin trân trọng cảm ơn thầy Lê Trung Quân, giáo viên hƣớng dẫn của tôi,
ngƣời đã chỉ bảo, hƣớng dẫn, và động viên tôi trong suốt quá trình thực hiện luận
văn này. Nhờ sự hƣớng dẫn tận tình của thầy mà tôi mới có thể vƣợt qua những khó
khăn về chuyên môn trong quá trình thực hiện luận văn.
Tôi cũng xin gửi lời cảm ơn đến quý thầy cô trƣờng Học viện Công nghệ
Bƣu chính Viễn thông đã tạo điều kiện học tập và truyền đạt nhiều kiến thức quý
báu trong quá trình học cao học.
Xin cảm ơn các bạn trong lớp Cao học Hệ thống thông tin M14CQIS01-N,
đặc biệt là ban cán sự lớp, đã đồng hành và hỗ trợ tôi trong suốt quá trình học.
Cuối cùng tôi cũng xin cảm ơn gia đình và đồng nghiệp tôi đã giúp đỡ tôi
trong quá trình thực hiện luận văn này.

Tp. HCM, ngày 01 tháng 09 năm 2016
Học viên thực hiện luận văn

Trần Danh Hưng


iii


MỤC LỤC
LỜI CAM ĐOAN.......................................................................................................i
LỜI CẢM ƠN .......................................................................................................... ii
MỤC LỤC............................................................................................................... iii
DANH MỤC CÁC KÍ HIỆU, CÁC CHỮ VIẾT TẮT .............................................. v
DANH MỤC CÁC BẢNG .......................................................................................vi
DANH MỤC CÁC HÌNH ...................................................................................... vii
CHƢƠNG 1 -

TỔNG QUAN T NH H NH NGHI N C U APE TESTBED V

MỤC TI U LUẬN VĂN .......................................................................................... 1
Tổng quan .......................................................................................... 1

1.1.

1.1.1. Mạng di động Adhoc (MANET) .................................................... 1
1.1.2. APE testbed ................................................................................... 3
1.1.3. So sánh APE testbed và các công cụ hỗ trợ kiểm thử mạng
MANET khác 4
1.1.4. Tình hình nghiên cứu/phát triển của APE testbed .......................... 6
1.2.

Mục tiêu của luận văn ........................................................................ 7

1.3.

Tóm tắt phƣơng pháp luận, các kết quả đạt đƣợc............................... 7


1.4.

Phạm vi, giới hạn của đề tài ............................................................... 7

1.5.

Cấu trúc của Luận văn ....................................................................... 8

CHƢƠNG 2 2.1.

Thực hiện cập nhật

bộ công cụ APE testbed .. 9

Phân tích APE testbed ....................................................................... 9

2.1.1. Cấu trúc của APE testbed .............................................................. 9
2.1.2. Các thành phần cần đƣợc cập nhật ............................................... 11
2.1.3. Phân tích Kernel patches.............................................................. 13
2.1.3.1. MacKill ................................................................................. 15
2.1.3.2. Wireless driver hook ............................................................. 16
2.1.4. Các giao thức định tuyến ............................................................. 18


iv

Tiến hành cập nhật APE testbed ...................................................... 19

2.2.


2.2.1. Cập nhật MacKill......................................................................... 19
2.2.2. Cập nhật Wireless driver hook ..................................................... 22
2.2.2.1. Nguyên tắc chung .................................................................. 22
2.2.2.2. ath9k ...................................................................................... 22
2.2.2.3. rt2800usb ............................................................................... 29
2.2.2.4. Phƣơng pháp mới không cần driver hook .............................. 30
2.2.3. Cập nhật các giao thức định tuyến ............................................... 33
CHƢƠNG 3 3.1.

Đánh giá kết quả .......................................................................... 34
Cập nhật ath9k ................................................................................. 34

3.1.1. Cập nhật mã nguồn ...................................................................... 34
3.1.2. Đánh giá....................................................................................... 35
3.2.

Cập nhật các giao thức định tuyến ................................................... 37

3.2.1. Cập nhật mã nguồn ...................................................................... 37
3.2.2. Đánh giá....................................................................................... 39
3.2.3. Đánh giá tổng quan ...................................................................... 40
CHƢƠNG 4 -

Kết luận ....................................................................................... 41

DANH MỤC T I LIỆU THAM KHẢO ................................................................. 42
PHỤ LỤC ................................................................................................................ 43


v


DANH MỤC CÁC KÍ HIỆU, CÁC CHỮ VIẾT TẮT
Viết tắt

Tiếng Anh

Tiếng Việt

MANET

Mobile ad-hoc network

Mạng di động Ad-hoc

AODV

Ad hoc On-Demand Distance Vector

Định tuyến Adhoc dựa trên vector

Routing

khoảng cách khi cần

DSR

Dynamic Source Routing

Định tuyến nguồn động


OLSR

Optimized

LUNAR

SNR

Link

State

Routing

Giao thức định tuyến trạng thái

Protocol

đƣờng nối tối ƣu

Lightweight Underlay Network Ad

Định tuyến Ad-hoc mạng nền tảng

hoc Routing

đơn giản

Signal-to-noise ratio


Tỉ số tín hiệu trên nhiễu

MAC address Media access control address

Địa chỉ điều khiển truy cập thiết bị


vi

DANH MỤC CÁC BẢNG
Bảng 2.1: So sánh các bộ công cụ kiểm thử mạng di động adhoc .................. 5
Bảng 3.1: So sánh thông tin từ tài liệu APE testbed và thực tế ..................... 18
Bảng 4.1: Danh sách các API cần thay thế ................................................... 37


vii

DANH MỤC CÁC HÌNH
Hình 1.1: Sơ đồ mạng di động adhoc ............................................................. 1
Hình 1.2: Sơ đồ hoạt động của bộ công cụ APE testbed................................. 3
Hình 3.1: Danh sách file trong thƣ mục dist ................................................... 9
Hình 3.2: Danh sách file dƣới thƣ mục kernel .............................................. 10
Hình 3.3: Danh sách file dƣới thƣ mục src ................................................... 11
Hình 3.4: Các patch cho kernel .................................................................... 14
Hình 3.5: Cấu trúc của MacKill.................................................................... 15
Hình 3.6: Cấu trúc của driver hook .............................................................. 16
Hình 3.7: Cấu trúc của MacKill và cách MacKill xử lý ............................... 19
Hình 3.8: So sánh sk_buff giữa 2 kernel version .......................................... 20
Hình 3.9: Minh họa cấu trúc của driver ath9k .............................................. 23
Hình 3.10: Danh sách file trong ath9k .......................................................... 24

Hình 3.11: Danh sách các kernel module và quan hệ trong ath9k ................ 24
Hình 4.1: Kết quả build sau khi cập nhật ath9k ............................................ 35
Hình 4.2: Kết quả cập nhật cho ath9k ........................................................... 36


1

CHƯƠNG 1 - T NG QUAN T NH H NH NGHI N C U
APE TESTBED V
1.1.

ỤC TI U LUẬN VĂN

T ng quan
APE Testbed là một bộ công cụ phần mềm hỗ trợ kiểm thử mạng di động

Ad-hoc (MANET)

1.1.1. Mạng di động Adhoc (MANET)
Mạng di động ad-hoc (mobile ad-hoc network – MANET [3]) là một loại
hình mạng không dây của các thiết bị di động có khả năng tự cấu hình liên tục. Di
động ở đây không phải nói tới các loại điện thoại di động, mà có nghĩa là các thiết
bị trong mạng có thể di chuyển đƣợc. Khác với mạng không dây thƣờng gặp với các
thiết bị đều kết nối trực tiếp với một Wifi router ở trung tâm, trong mạng di động
ad-hoc các thiết bị không có trung tâm mà thay vào đó chúng kết nối lẫn nhau với
vai trò bình đẳng. Khi một thiết bị di chuyển, nó sẽ thƣờng xuyên thay đổi dƣờng
kết nối (đến các thiết bị gần hơn trong lúc nó di chuyển).

H nh 1.1: S


ng i

ng a h

Mạng di động Adhoc có thể đƣợc sử dụng trong những trƣờng hợp sau 4]:


2

-

Vùng bị thiên tai, hạ tầng mạng đã bị phá hủy.

-

Tại khu vực công trƣờng đang xây dựng

-

Trong gia đình/công sở (dùng nhƣ mạng WLAN)

-

Mạng cảm biến (Sensor networks) nối các loại cảm biến trên cơ thể ngƣời
hoặc trong hệ thống nhà thông minh.


Ngoài ra, mạng di động Ad-hoc còn có một biến thể khác gọi là VANET
(Vehicular ad hoc network). Ban đầu VANET là mạng MANET cho các phƣơng
tiện giao thông. Nhƣng ngày nay VANET đã phát triển thành một lĩnh vực độc lập

và ngày càng đƣợc quan tâm 5]
Tuy có nhiều ƣu điểm, nhƣng mạng MANET vẫn còn vấp phải nhiều thách
thức. Một nghiên cứu 10] cho rằng mạng MANET cần giải quyết các thách thức
về:
-

Định tuyến

-

Multicast

-



-

Bảo mật

-

Năng lƣợng

-



Với những thách thức đó, mạng MANET cần tiếp tục đƣợc nghiên cứu và
phát triển trƣớc khi có thể đƣợc sử dụng rộng rãi



3

1.1.2. APE testbed
APE testbed là một công cụ hỗ trợ kiểm thử, từ đó giúp các nhà quản trị
mạng triển khai, đánh giá và quản trị mạng di dộng Adhoc.
Mô hình của APE:

H nh 1.2: S

h

t

ng

a

ông

APE t st

APE testbed là một công cụ tốt để kiểm thử và đánh giá một mạng di động
Adhoc. Tuy nhiên APE testbed lại có nhƣợc điểm là hỗ trợ ít thiết bị, chỉ hỗ trợ các
loại card mạng ORiNOCO và WaveLAN (hoặc các thiết bị khác dùng cùng
chipset).


4


Ngoài ra, do đã dừng phát triển nên các công cụ và các protocol trong bộ
APE testbed cũng đã out-of-date, không thể sử dụng trên các hệ thống hiện nay.
Luận văn này hƣớng tới cập nhật bộ APE testbed cho kernel Linux mới, hỗ
trợ một vài driver card mạng không dây mới, và sử dụng nó để hỗ trợ triển khai,
quản lý và đánh giá mạng di động ad-hoc.

1.1.3. So sánh APE testbed và các công cụ hỗ trợ kiểm thử mạng MANET
khác
Hiện nay các công cụ cho kiểm thử và đánh giá mạng MANET đã và đang
đƣợc triển khai trên thế giới gồm có:
 APE testbed (Adhoc Protocol Evaluation testbed)
 Emulab (vừa là tên hệ thống testbed thực tế vửa là tên phần mềm)
 ManetLab
 mLab
Dƣới đây là bảng so sánh giữa các bộ công cụ này.
(Chú ý: Server và Client nhắc tới trong bảng là các thành phần của mỗi bộ
công cụ, chứ bản thân mạng di động Adhoc không có quan hệ Server-Client)


5

B ng 1.1: S s nh
OS

a

c nodes

ông

Phần

ng

i

th

ng i

Gi i h n

ng a h
Lần

H tr

r t

nh t uối
APE testbed

Windows 95/98 hoặc

Chỉ hỗ trợ

2005

AODV-UU


[6]

Linux (cũ, giai đoạn

card mạng

(version 0.5)

Mad-hoc AODV

2005)

OriNOCO và

x86

OLSR

WaveLAN

DSR
LUNAR
TORA

Emulab [7]

Server: FreeBSD

x86


-

Client: FreeBSD

Vẫn cập nhật

không có thông

liên tục cho

tin

tới nay (trên

Linux

git server)

WindowsXP
ManetLab

OS X 10.7 hoặc mới

Máy tính

Card mạng

[8]

hơn


Apple (Mac)

trên các máy

2013

không có thông
tin

Mac
mLab [9]

Server: Debian

x86

Client: any Linux

ARM (chỉ hỗ

-

2006

không có thông

(version 1.0)

tin


trợ 3 loại
thiết bị là
CerfCube,
iPAQ và
Zaurus)

Hầu hết các công cụ trên đều không còn đƣợc tiếp tục phát triển nữa (có thể
là do thiếu nguồn tài trợ nhƣ APE testbed), ngoại trừ Emulad. Nhƣng Emulab chỉ
đƣợc sử dụng cho bản thân hệ thống Emulab, ngƣời dùng khó có thể sử dụng nó để
xây dựng hệ thống kiểm thử khác.


6

Trong bảng so sánh trên, APE testbed có ƣu thế về hỗ trợ nhiều protocol.
Ngoài ra, nó còn có những ƣu điểm sau:
 Khả năng tùy biến cao và dễ dàng chạy nhiều routing protocols (giao thức
định tuyến) để so sánh
 Ngƣời dùng có thể lựa chọn những protocol cần sử dụng khi build
 Cho ph p kiểm thử một mạng di động ad-hoc một cách tự động với các kịch
bản (script) chọn trƣớc. Ngƣời sử dụng có thể dùng các kịch bản có s n hoặc
tự xây dựng kịch bản theo ý mình.
 Có k m theo công cụ để tổng hợp các thông số kết quả của ph p kiểm thử và
phân tích dựa trên những tiêu chí:
o Sự thay đổi đƣờng truyền
o Số lƣợng nút trung gian (khi ping giữa các nút)
o Tính tối ƣu của đƣờng đi
o Tỉ lệ thành công của các lệnh Ping giữa các nút


1.1.4. Tình hình nghiên cứu/phát triển của APE testbed
APE testbed đƣợc phát triển trong dự án APE project của Khoa Hệ thống
Máy tính (Department of Computer Systems) thuộc đại học Uppsala, Thụy Điển với
tài trợ từ Erricson [5].
APE testbed đƣợc chính thức phát hành 5 phiên bản từ 0.1 đến 0.5 trong giai
đoạn từ 2001 – 2005.
Năm 2002 các tác giả đã thử nghiệm thành công sử dụng APE testbed cho
một hệ thống thực gồm 37 nút, và báo cáo điều này trong hội nghị WCNC 2002
[11].
Năm 2005, APE đƣợc sử dụng và đánh giá trong một luận văn của đại học
Uppsala nghiên cứu các phƣơng pháp đánh giá mạng Adhoc 12]. Trong nghiên cứu


7

này APE testbed đƣợc đánh giá tốt với khả năng cài đặt / sử dụng đơn giản và dễ
thích nghi, nhƣng vẫn còn yếu điểm về đồng bộ thời gian.
Tuy nhiên APE testbed không đƣợc chính thức phát triển nữa sau phiên bản
0.5 (có thể là do không còn đƣợc tài trợ nữa).

1.2.

M

ti u

a u nv n

việc xây dựng testbed phục vụ nghiên cứu
-


Kernel mới (3.x 4.x)

-

Các driver Wifi mới

Cụ thể là driver ath9k của hãng Atheros và rt2800usb của Realtek.

1.3.

T

tắt hư ng h

u n

ết u

t ư

Tóm tắt phƣơng pháp thực hiện luận văn:
-

Nghiên cứu cấu trúc của APE Testbed
o Cấu trúc
o Cách hoạt động
o Các thành phần nào cần đƣợc port lên môi trƣờng mới

-


Tìm hiểu những phần nào của APE Testbed cần đƣợc cập nhật để hỗ trợ
Linux kernel mới, và những phần nào không cần.

-

Nghiên cứu cấu trúc của Linux kernel mới và các driver Wireless ath9k
và rt2800usb.

-

Tiến hành port các phần đó
o Chứng minh bằng thực nghiệm.

1.4.

Ph

vi gi i h n

a

t i

-

Hệ điều hành: Linux (do hiện tại APE testbed chỉ hỗ trợ Linux)

-


Cập nhật các driver: mục tiêu chính là ath9k và rt2800usb (các driver cũ
trong APE testbed sẽ bị bỏ qua)


8

1.5.

C u tr

a Lu n v n

Chƣơng 1: Giới thiệu về mạng di động Adhoc, APE testbed và mục tiêu của
luận văn.
Chƣơng 2: Thuật lại quá trình nghiên cứu bộ công cụ APE testbed và các
thông tin liên quan (driver ath9k và rt2800usb, một số update của Linux kernel).
Sau đó là kết quả của quá trình nghiên cứu này, và kết quả cập nhật bộ APE testbed.
Chƣơng 3: Đánh giá kết quả.
Chƣơng 4: Kết luận.


9

CHƯƠNG 2 - THỰC HIỆN CẬP NHẬT
BỘ CÔNG CỤ APE TESTBED
2.1.

Phân tích APE testbed

2.1.1. Cấu trúc của APE testbed

Gói APE testbed gồm 2 phần chính: APE binary distribution và APE source
code.
 APE binary distribution: là gói APE đã đƣợc build và có thể sử dụng ngay.
 APE source code: gói source code của APE, bao gồm
o ./dist: chứa source code để build một Linux distribution hoàn chỉnh
(bằng buildroot, là một công cụ hỗ trợ build Linux)

H nh 2.1: Danh s h fi tr ng thư

ist

o ./doc: chứa tài liệu hƣớng dẫn chính thức của APE testbed dƣới định
dạng TeX (có Makefile để chuyển thành dạng pdf và một số định
dạng khác)
o ./kernel: chứa mã nguồn các thành phần liên quan đến kernel, cụ thể
là:
 ape-config: .config file chứa các config cần cho APE testbed
(có nhiều version cho Linux 2.4 – 2.6)


10

 orinoco-0.15rc2-kismet: driver cho các card Wifi ORiNOCO
 wlags49_cs-7.18-linux-2.6:

driver

cho

các


card

Wifi

ORiNOCO dùng cổng PCI, cung cấp bởi nhà sản xuất
 patches: các patches cho kernel và các driver wifi để có thể sử
dụng APE testbed. Trong đó chứa các thay đổi cần để APE
testbed móc nối tới WiFi driver và lấy dữ liệu cần thiết (tạm
gọi là các Driver hook)

H nh 2.2: Danh s h fi

ư i thư

rn

o ./src: chứa mã nguồn của các thành phần còn lại của APE testbed
(không liên quan đến kernel)
 analysis: chứa các Analysis Tools, thực tế là các perl script có
tác dụng phân tích log xuất ra từ APE testbed
 apeview: một công cụ để xem kết quả phân tích log (từ
Analysis Tools) dƣới dạng đồ họa
 aodv-uu-0.9.1: một mã nguồn cho giao thức định tuyến AODV
(Ad hoc On-Demand Distance Vector) trong MANET
 dsr-uu-0.1: một mã nguồn cho giao thức định tuyến DSR
(Dynamic Source Routing) trong MANET
 mackill: một công cụ để chặn kết nối dựa vào địa chỉ MAC
(cần patch tƣơng ứng trong kernel để có thể sử dụng)



11

 runtime: Các công cụ hỗ trợ cho quá trình hoạt động của APE
testbed, ví dụ nhƣ start_test thực hiện chạy APE scenario, spyd
thực hiện việc thu thập dữ liệu …
 scenarios: các kịch bản cho APE testbed
 tools: các công cụ khác (thực ra hiện tại chỉ có một).

H nh 2.3: Danh s h fi

ư i thư

sr

2.1.2. Các thành phần cần được cập nhật
Dựa vào những thông tin trên, có thể đi đến kết luận những phần sau cần
đƣợc cập nhật mới:
 ./dist: cập nhật buildroot mới và kernel Linux mới
 ./doc: chỉ cần cập nhật thông tin
 ./kernel: đây là phần quan trọng nhất cần đƣợc cập nhật, vì nó gắn liền
với Linux kernel cũ (2.4 và 2.6) nên không sử dụng đƣợc nữa.
 ./src: các công cụ trong phần này phần lớn là cho user space, nên lẽ ra
không cần cập nhật gì. Nhƣng trong đó có các mã nguồn giao thức định
tuyến (aodv-uu, dsr-uu, madhoc) cần đƣợc cập nhật vì chúng là kernel
module, cũng gắn với kernel.


12


Ngoài ra, APE testbed còn hỗ trợ một số giao thức định tuyến khác là
OLSR, LUNAR, TORA. Các giao thức định tuyến này không đƣợc để k m
với bộ mã nguồn APE, mà để sử dụng ngƣời dùng phải download từ nơi
khác và thêm vào APE. Các giao thức định tuyến ngoài này cũng cần đƣợc
cập nhật.
Tóm lại có 2 phần chính cần đƣợc cập nhật là:
-

Kernel patches (tất cả các phần trong ./kernel)
o MacKill
o Wireless driver hook (là các sửa đổi trong driver để APE testbed
lấy thông tin)

-

Các giao thức định tuyến.


13

2.1.3. Phân tích Kernel patches
Nhƣ đã giới thiệu ở mục 3.1.1, mã nguồn APE về kernel có 4 phần:
o ape-config
o orinoco-0.15rc2-kismet
o wlags49_cs-7.18-linux-2.6
o patches
Trong đó 2 driver orinoco-0.15rc2-kismet và wlags49_cs-7.18-linux-2.6 chỉ
là reference driver, nên ta có thể loại bỏ.
Thƣ mục patches là quan trọng nhất, chứa các patch files cho Linux kernel
để hỗ trợ APE Testbed.



14

H nh 2.4: Các patch cho kernel


15

2.1.3.1. MacKill
Công cụ này gồm 2 phần:
-

./src/mackill/mackill.c: một kernel module, là phần chính của công cụ
MacKill, nhận các MAC address từ ngƣời dùng thông qua một procfs
/proc/net/mackill

-

./kernel/patches/mackill*.patch: p Linux kernel loại bỏ các gói có MAC
address trùng với danh sách trong mackill kernel module.
User nhập
Nhận gói

+

/* APE MAC-filter BEGIN */

+


if (mac_kill && (*mac_kill)(skb)) {

MacKill

+

kfree_skb(skb);

bỏ

qua

+

dev_put(dev);

gói hiện

+

continue;

tại

+

MAC address

/proc/net/mackill


}

MacKill
(kernel module)

+extern int (*mac_kill)(struct sk_buff *);

Xử lý gói

Linux kernel +

APE./src/mackill/ma

APE/kernel/patches

ckill.c

/mackill*.patch
H nh 2.5: C u tr

a

a

i


16

2.1.3.2. Wireless driver hook

Phần này nghiên cứu về các thay đổi trong Wifi driver mà APE đã thực hiện
để lấy đƣợc thông tin cần thiết (tạm gọi là driver hook). Mục đích là để hiểu những
gì cần làm cho một Wifi driver mới
Do APE hỗ trợ một vài Wifi driver nên ta chỉ tìm hiểu một driver tiêu biểu
là wavelan2 (Ghi chú: WaveLAN là tên sản phẩm Wifi trƣớc khi đổi tên thành
ORiNOCO)

+

/* Do superspy collection of statistics */

+#if (LINUX_VERSION_CODE >= VERSION(1,3,0))
+

char *srcaddr = skb->mac.raw + MAC_ADDR_SIZE;

+#else
+

char *srcaddr = skb->data + MAX_ADDR_SIZE;

+#endif
+

//printk("WVLAN2: calling superspy_gather\n");

+

wvlan2_superspy_gather(dev, srcaddr);



+

status = hcf_get_data(lp->hcfCtx, HFS_Q_INFO, stats,

2);
+

if (status == HCF_SUCCESS) {

+

/* Save quality information for this packet */

+

len = sprintf(spy_info, "%6d %ld.%06ld %s %3d

%3d\n",
+

pkt,

+

currentTime.tv_sec,

+

currentTime.tv_usec,


+

mac_address,

+

(u_char) dbm(stats[1]),

+

(u_char) dbm(stats[0]));

+

/proc/net/superspy

User lấy

}

thông tin ra



H nh 2.6: C u tr

a riv r h



×