Professional Documents
Culture Documents
Tp.HCM, 7/2005
O QU THI AN
0112421
TRN TH M HNH
0112345
LI CM N
Chng em xin by t lng bit n chn thnh nht n C Hunh Thy
Bo Trn, ngi tn tm hng dn, gip chng em trong sut thi gian
thc hin lun vn ny.
Chng con xin gi tt c lng bit n su sc v s knh trng n ng
b, cha m, cng ton th gia nh, nhng ngi nui dy chng con trng
thnh n ngy hm nay.
Chng em cng xin chn thnh cm n qu Thy c trong Khoa Cng
ngh thng tin, trng i hc Khoa hc T nhin Tp.H Ch Minh tn tnh
ging dy, hng dn, gip v to iu kin cho chng em thc hin tt
lun vn ny.
Xin chn thnh cm n s gip , ng vin v ch bo rt nhit tnh
ca cc anh ch v tt c cc bn, nhng ngi gip chng ti c ngh lc
v ch hon thnh lun vn ny.
Mc d c gng ht sc, song chc chn lun vn khng khi nhng
thiu st. Chng em rt mong nhn c s thng cm v ch bo tn tnh ca
qu Thy C v cc bn.
TP.HCM, 7/2005
Nhm sinh vin thc hin
o Qu Thi An Trn Th M Hnh
LI NI U
Ngy nay, x hi pht trin mnh m, k thut ngy cng hin i nn
nhu cu v trao i thng tin, gii tr, nhu cu v iu khin thit b t
xa,ngy cng cao. V nhng h thng dy cp phc tp li khng th p
ng tt nhu cu ny, nht l nhng khu vc cht hp, nhng ni xa xi, trn
cc phng tin vn chuyn,V th cng ngh khng dy ra i v ang
pht trin mnh m, to rt nhiu thun li cho con ngi trong i sng hng
ngy. K thut khng dy phc v rt nhiu nhu cu khc nhau ca con ngi,
t nhu cu lm vic, hc tp n cc nhu cu gii tr nh chi game, xem phim,
nghe nhc, v.vVi cc nhu cu a dng v phc tp , k thut khng dy
a ra nhiu chun vi cc c im k thut khc nhau c th ph hp
vi tng nhu cu, mc ch v kh nng ca ngi s dng nh IrDA, WLAN
vi chun 802.11, ZigBee, OpenAir, UWB, Bluetooth,
Mi chun k thut u c nhng u, khuyt im ring ca n, v
Bluetooth ang dn ni ln l k thut khng dy tm ngn c nhiu u im,
rt thun li cho nhng thit b di ng. Vi mt t chc nghin cu ng o,
hin i v s lng nh sn xut h tr k thut Bluetooth vo sn phm ca
h ngy cng tng, Bluetooth ang dn lan rng ra khp th gii, xm nhp vo
mi lnh vc ca thit b in t v trong tng lai mi thit b in t u c
th c h tr k thut ny.
Xut pht t cc l do trn, chng em thc hin ti TM HIU
CNG NGH BLUETOOTH V VIT NG DNG MINH HA.
Trong ti ny, chng em tm hiu v k thut khng dy Bluetooth v xy
dng mt chng trnh truyn phonebook qua Bluetooth gia cc in thoi
Nokia s dng h iu hnh Symbian Series 60 vi nhau v vi my tnh.
Mc tiu ca ti l tm hiu cng ngh Bluetooth v xy dng mt
ng dng thng qua Bluetooth ca cc in thoi Nokia Series 60 v my tnh
minh ha hot ng ca k thut ny Cc ni dung chnh ca ti bao
gm:
MC LC
Phn 1 L THUYT V BLUETOOTH .............................................. 11
Chng 1
1.1.
1.2.
Lch s tn Bluetooth:....................................................................... 12
1.2.2.
1.3.
Cc c im ca Bluetooth. .................................................................... 14
1.4.
1.4.2.
1.4.3.
1.4.4.
1.4.5.
Mt s ng dng khc....................................................................... 20
Chng 2
2.1.2.
Piconet: ............................................................................................. 22
2.1.3.
Scatternet: ......................................................................................... 23
2.1.4.
2.1.5.
2.1.6.
2.1.7.
Cc ch kt ni:............................................................................ 27
2.
10
11
giao tip vi nhau trong khong cch ngn, bng sng v tuyn qua bng tn
chung ISM (Industrial, Scientific, Medical) trong dy tng 2.40- 2.48 GHz.
y l dy bng tng khng cn ng k c dnh ring dng cho cc thit
b khng dy trong cng nghip, khoa hc, y t.
_
1.2.
12
13
1.3.
Cc c im ca Bluetooth.
_ Tiu th nng lng thp, cho php ng dng c trong nhiu loi
thit b, bao gm c cc thit b cm tay v in thoi di ng
_ Gi thnh h (Gi mt chip Bluetooth ang gim dn, v c th
xung di mc 5$ mt n v).
14
1.4.
ng dng ca Bluetooth.
15
Nokia6600
Palm Tungsten
16
tn s tiu chun 1.2 gip trnh xung nhiu t cc thit b tn s 2,4Ghz khc
nh mng khng dy WiFi v cc in thoi khng dy.
Vi h tr Bluetooth 1.2, m thanh nghe qua tai nghe to, nh trn loa.
Tai nghe cung cp tn s tr v ln v c m lng ti a ln hn cn
thit s dng trong trng hp nht nh.
1.4.3. Thit b truyn d liu.
LevelOne
Hnh 1-3 USB Bluetooth
Bluetooth MDU 0001USB l thit b kt ni khng dy s dng cng
ngh Bluetooth class 2, vng ph sng bn knh 10m; ni vi PC qua USB 1.1.
Tuy nh nh u ngn tay nhng thit b c tch hp gn nh tt c cc
chun giao tip hin c, v d: RS232, FTP, Dial-up, Fax, OBEX (chun ng
b ha d liu cho PDA)..., nn khi lp MDU 0001USB vo th v hnh trung
PC ca bn bin thnh mt i pht sng. Ngc li, PC ny cng c th d
17
iu khin ngun nng lng trong xe hi, cc loi nhc c, trong cng
nghip, y t
18
Hnh 1-5 Mn hnh hin th theo giao din dnh cho cc cuc in thoi.
19
Do s lng cng ty tham gia vo t chc SIG ngy cng nhiu, v vy,
s lng cc loi sn phm c tch hp cng ngh Bluetooth c tung ra th
trng ngy cng nhiu, bao gm c cc thit b dn dng nh t lnh, l vi
sng, my iu ha nhit , cc loi chi...
20
21
22
23
24
25
26
27
Personal
Handyphone
System
(PHS)
[7,8].
Tri li, trong h thng ad hoc tht s th khng h c s khc bit gia cc
radio unit; tc l khng h c im khc bit gia cc trm c s v terminal.
Lin kt ad hoc ty thuc vo s lin lc gia cc thit b. Khng c c s h
tng l dy cp kim loi h tr kt ni gia cc unit di ng, khng c thit b
kim sot trung tm cho cc unit da vo to cc quan h ni lin vi nhau,
cng khng c h tr vic sp xp truyn thng. Thm vo , y khng c
s can thip ca ngi iu hnh. C th mng tng kch bn ca Bluetooth
nh th ny, n c v nh l mt s lng ln cc kt ni ad hoc cng tn ti
cng mt vng m khng c bt c s phi hp ln nhau no. i vi nhng
ng dng Bluetooth, c nhiu mng c lp chng cho ln nhau trn cng mt
vng.
H thng ad hoc radio ch c dng trong vi trng hp nh h thng
walky-talky dng bi qun i, cnh st, cu ha, v nhng i cu h ni
chung.Tuy nhin, h thng Bluetooth l h thng ad hoc radio thng mi u
tin c dng mt cch rng ri v vi quy m ln ni cng cng.
2.2.2. Kin trc ca h thng Bluetooth Radio
28
29
_ S ngn chn c th c thc hin bng cch vit code hoc chia tn s
thnh cc dy lin tc. Tuy nhin, phm vi cc dy tn ng ca cc tn hiu
c can thip trong mt mi trng sng c bit, lin tc c th rt rng.
Phn chia theo thi gian c th l mt la chn nu nh xy ra s gin on
trong cc nhp tn s ca s phn chia theo thi gian. Vic phn chia trn
tn s c kh nng hn. Trong khi tn s 2.45 GHz c th cung cp bng
thng khong 80 MHz v bng thng ca hu ht cc h thng radio u b
gii hn, mt s phn quang ph ca sng radio c th c s dng m
khng gp bt c tr ngi no. Vic lc trn cc vng bng tn s gip ngn
nhiu nhng phn khc ca dy sng radio. B lc ngn chn c th d
dng t n tn s 50 dB hoc hn na.
2.2.2.3. Multiple Access Scheme_Phi hp a truy cp:
_ Vic la chn s phi hp a truy cp cho mt h thng v tuyn ad hoc
c iu khin bi nhng lut l ca dy tng ISM v thiu s phi hp
(lack of coordination)
_ a truy cp phn chia theo tn s (FDMA) thu ht nhng h thng ad
hoc do knh trc giao ch tr li ng tn s ca my to dao ng tng
ng trn cc bng tn khc nhau. Phi hp vi vic phn chia knh truyn
mt cch thch ng v nng ng th vic nhiu c th trnh khi. ng tic
FDMA c bn li khng p ng ht nhu cu lan rng c trong dy ISM.
_ a truy cp phn chia theo thi gian (TDMA) i hi s ng b v thi
gian v cng khc khe knh trc giao. i vi nhiu lin kt ad hoc c
sp xp mt ch, vic duy tr s tham chiu khung thi gian tr nn kh
cng knh.
_ a truy cp phn chia theo m (CDMA) t ra l c tnh tt nht cho h
thng v tuyn ad hoc khi n quy nh s phn b v cp n nhng h
thng ri rc.
_ Direct sequence (DS)-CDMA khng thu ht bng v vn gn xa, n i
hi kim sot nng lng ln nhau hoc tng thm x l tha. Thm vo ,
nh TDMA, knh trc giao DS-CDMA cng quy nh vic tham chiu
30
khung thi gian. Cui cng, i vi nhng user cao cp th nhng loi chip
kh t c dng n nhng khng thu ht lm v bng thng rng
(trnh nhiu) v s tiu th hin ti ngy cng tng.
_ Nhy tn s (FH)-CDMA kt hp mt s nhng c tnh tr thnh chn
la tt nht cho h thng v tuyn ad hoc. Trung bnh mt tn hiu c th
tri ra trn mt dy tn s ln, nhng ngay lc ch c mt di bng thng
nh c s dng, trnh c hu ht kh nng nhiu trong dy ISM. Bc
nhy ca sng mang l trc giao, v vic nhiu trn nhng bc sng k
nhau c th b ngn chn bi b lc. Vic phi hp nhng bc sng c th
s khng trc giao( d sao vic phi hp ln nhau gia cc bc sng
khng c cho php theo lut FCC ), nhng bng thng hp v vic nhiu
khi ngi dng chung (co-user) ch b xem nh l gin on ngn trong vic
truyn tin, mt vic c th c khc phc bng gii php dng nhng nghi
thc tng cao hn.
_ Bluetooth da vo k thut FH-CDMA- cc packet c truyn trn nhng
tn s khc nhau. Trong dy tng ISM 2.45 GHz, nh ngha mt b 79
bc nhy, mi bc nhy cch nhau 1MHz. Vic truyn nhn s dng cc
khe thi gian. Chiu di 1 khe thi gian thng thng l 625s. Mt s ln
nhng cch phi hp bc nhy c to ra ngu nhin nhng ch cch
phi hp c bit c nh ngha bi mt unit gi l master mi kim sot
knh nhy tn s. Mt ng h ca master unit cng nh ngha mt chu k
bc nhy. Tt c nhng unit khc u gi l slave, chng dng s ng
nht ca master chn bc nhy ging nhau v cng thm khong thi
gian gin on vo ng h tng ng ca chng ng b ho vic nhy
tn s. Trong lnh vc thi gian, cc knh c chia thnh nhng slot. Mt
slot tng ng vi mt khong thi gian ti thiu l 625 s. thc hin
n gin, truyn tin song cng c thc hin bng cch p dng timedivision duplex (TDD). iu ny c ngha l mt unit s ln lt pht v
nhn. Chia ct vic pht v nhn thc s ngn chn c nhiu xuyn m
gia qu trnh pht v nhn trong my thu pht v tuyn. T khi vic pht
31
_ Vic truyn d liu trong Bluetooth c thc hin bng s dng k thut
nhy tn s, c ngha l cc packet c truyn trn nhng tn s khc
nhau. Gii bng tn ISM 2.4Ghz c chia thnh 79 knh, vi tc nhy
l 1600 ln trong mt giy, iu c th trnh c nhiu tt v chiu di
ca cc packet ngn li, tng tc truyn thng.
32
_ Vic truyn nhn s dng cc khe thi gian. Chiu di 1 khe thi gian thng
thng l 625s. Mt packet thng nm trong 1 khe n, nhng cng c
th m rng ra 3 hay 5 khe. Vi cc packet a khe, yu cu tn s phi
khng i cho n khi ton b packet gi xong.
33
* Header:
34
So snh vi cc h thng khc lm vic trong cng bng tn, sng radio
ca Bluetooth nhy tn nhanh v dng packet ngn hn. V nhy nhanh v
packet ngn s lm gim va chm vi sng t l vi sng v cc phng tin
gy nhiu khc trong kh quyn.
35
36
37
38
39
40
41
42
43
44
45
46
2.5.2.6.2.
47
ng b ha
Bo mt
2.5.3. Link Manager Protocol:
Link Manager (LM) thc hin vic thit lp knh truyn, xc nhn hp
l, cu hnh knh truyn. N tm kim nhng LM khc v giao tip vi chng
thng qua Link Manager Protocol. thc hin c vai tr ca mnh, LM
dng nhng dch v do tng Link Controller bn di cung cp.
V c bn, cc lnh LMP bao gm cc PDU (Protocol Data Unit Xem
thm trong phn SDP bn di) c gi t thit b ny sang thit b khc.
2.5.4. Host Controller Interface:
48
49
50
51
52
Giao thc RFCOMM cho php gi lp cng serial thng qua giao thc
L2CAP. Giao thc ny da trn chun ETSI TS 07.10. Ch c mt phn ca
chun TS 07.10 c dng v c chnh sa cho ph hp vi Bluetooth.
RFCOMM h tr ti a 60 kt ni cng mt lc gia 2 thit b
Bluetooth. S kt ni ti a ty thuc vo nh sn xut. i vi RFCOMM,
mt kt ni bao gm 2 ng dng chy trn 2 thit b ring bit (2 thit b u
cui).
Loi thit b: V c bn, RFCOMM cung cp cho 2 loi thit b:
Loi thit b 1 l nhng u cui nh my tnh hay my in.
Loi thit b 2 l nhng thnh phn dng truyn d liu, chng
hn modem.
Tn hiu iu khin: RFCOMM gi lp 9 mch ca chun RS232, 9
mch l:
Pin Circuit Name
102 Signal Common
103 Transmit Data (TD)
104 Received Data (RD)
105
Request
to
Send
(RTS)
106 Clear to Send (CTS)
107
Data
Set
Ready
(DSR)
108 Data Terminal Ready
(DTR)
109 Data Carrier Detect
(CD)
53
Nhiu cng ni tip gi lp: 2 thit b Bluetooth dng RFCOMM trong giao
tip gia chng c th m nhiu cng ni tip (serial port). RFCOMM h tr
ti a 60 cng, tuy nhin s cng c th dng trong mt thit b ty thuc vo
nh sn xut.
2.5.7. Service Discovery Protocol:
54
55
56
57
58
vic pht hin nhng thit b Bluetooth (idle mode procedures) v nhng kha
cnh qun l cc kt ni n nhng thit b ny devices (connecting mode
procedures). N cng nh ngha nhng phng thc lin quan ti vic s dng
nhng cp bo mt khc nhau. Thm vo , profile ny cng cha nhng
th tc nh dng ph bin ca nhng tham s c th c dng trn giao din
ngi dng. Mi thit b Bluetooth u c h tr Generic Access Profile.
Service Discovery Application Profile: nh ngha nhng tnh nng v
th tc cho mt ng dng trong thit b Bluetooth pht hin ra nhng service
ca thit b Bluetooth khc.
Serial Port Profile: nh ngha th tc cn thit ca thit b Bluetooth
thit lp nhng kt ni emulated serial cable s dng RFCOMM gia hai thit
b ngang hng.
Generic Object Exchange Profile: nh ngha nhng giao thc v th tc
s c dng bi nhng ng dng cn c nng lc trao i i tng(object
59
60
61
62
63
64
65
hnh
radio
traffic
mong
ch:
nhu
66
2.7.2.2.1.
_
Active mode
Trong ch Active, thit b tham gia hot ng trn knh sng radio.
Hold mode
Bluetooth. Master v Slave s tha thun vi nhau trong sut thi gian m
thit b Slave trong ch ny. Khi mt kt ni thit lp trong ch ny,
n khng h tr nhng gi d liu trn kt ni v c th tit kim nng
lng, lng nghe nh k mt khong thi gian lu hn hoc cng c th
tham gia vo mt Piconet mi. iu quan trng l thi gian Hold s c
tha thun trc mi khi ch Hold c thit lp.
67
Sniffmode
68
69
iu ny cho thy Slave phi lng nghe thm nhng khe thi gian Nsniff
timeout nu gi tin c nhn khi c t hn nhng khe Nsniff timeout
bn tri khong thi gian Sniff attempt. Nu Slave tip tc nhn nhng
gi tin, n s lng nghe tip tc nhng khe Nsniff timeout sau khi gi tin
cui cng c nhn, v vy nu Master vn gi nguyn qu trnh truyn
pht th Slave vn tip tc hot ng.
_ Slave c th thay i hot ng ca n ch t nhng khe Nsniff attempt
thng qua nhng khe (Nsniff attempt +Nsniff timeout) v thm ch tip
tc hot ng m khng cn tha thun li mt vi tham s. Bng cch
chn la nhng gi tr thch hp cho khong thi gian Sniff v s lng
khe m Slave phi lng nghe, t c hiu qu tit kim nng lng m
khng nh hng bt li n hiu nng ca ng dng.
_ Ch Sniff th linh hot hn ch Hold bi v Master hoc Slave c
th gii phng ch ny. Bi v ch Sniff i hi thit b Slave thay
i trng thi hot ng mt cch nh k nn n thch hp cho nhng
ng dng c s truyn pht d liu cch u nhau.
_ Ch ny th khng thch hp cho nhng ng dng i hi thng
xuyn truyn pht d liu ln. i vi nhng ng dng, thi gian truyn
pht d liu rt quan trng, bi v chng cn nhiu thi gian nn khng
th gim nng lng trong thi gian di.
2.7.2.2.4.
Park mode
_ Ch Park l mt ch nng lng thp cho php tit kim nng lng
nht.Tuy nhin trong khi ch Park, thit b khng th truyn hoc nhn
d liu v khng c lin kt SCO c thit lp. Trong ch ny, Slave
khng tham gia vo Piconet, tuy nhin n vn ng b vi knh truyn
trong Piconet. Ch ny c thm mt thun li l cho php Master h tr
hn 7 thit b Slave bng cch a nhng thit b cn li vo trng thi Park
trong khi nhng thit b khc ang hot ng trong trng thi Active. Slave
trong ch Park hot ng mt cch nh k ti ng b vi knh
truyn v lng nghe nhng thng ip broadcast. lm c iu ny,
Master h tr cu trc tn hiu phc tp lin lc vi Slave trong ch
o Qu Thi An Trn Th M Hnh
70
Park. Tuy nhin cu trc tn hiu c th thay i, sau Master dng thng
ip broadcast thng bo nhng thay i cho nhng Slave trong ch
Park.
_ Khi thit k ng dng, chng ta phi chn khong thi gian tn hiu chnh
xc tit kim nng lng trong khi duy tr thi gian hi p c th chp
nhn. Thi gian phn hi chu nh hng bI Slave cn bao lu yu cu
Unpark, hoc Master cn bao lu Unpark cho Slave. C 2 trng hp
trn iu b chi phi bi thi gian tn hiu Park.
_ Nu Slave trong ch Park mt s ng b, n s ngng hi p n
Master v c th hon ton mt kt ni. Sau Master s khi phc kt ni
bng cch gi tn hiu Paging n Slave, ri li t n vo ch Park ln
na. R rng y l s hao ph v ch. V vy nhng thit b trong ch
Park trong phn ln thi gian hot ng nn c nhng khong thi gian bo
hiu m nu Slave b nh mt tn hiu, n c th c ti ng b ln
k tip. Ni chung, Master c th gi dliu n Slave th trc tin
Slave phi c Unpark.
_ Mt v d ng dng s dng ch Park: my tnh xch tay Bluetooth dng
trnh duyt Web khng dy. Ngi s dng c th m nhiu trang Web,
nhng ti mt thi im ang c mt trang no th cc trang khc s
chuyn sang trng thi Park.
_ Mng nhng b cm bin th khng thch hp s dng ch Park bi v
trong cch b cm bin gi d liu, yu cu phi hi p ngay lp tc,
khng cho php c tr.
2.8. So snh Bluetooth vi cc k thut khng dy khc : Hng ngoi, Wi-fi
(802.11b wireless).
2.8.1. So snh Bluetooth vi Wi-Fi
71
chun p dng cho mng LAN khng dy kiu Ethernet1[3], hot ng trong
vng sng radio 2.4 Ghz. Tc truyn d liu ni chung l 1 Mbps hoc 2
Mbps vi 802.11 v 5.5 Mbps hoc 11 Mbps vi 802.11b, mc d tc c th
ln n khong 20 Mbps vi 802.11b. Wi-Fi h tr mng a im (multipoint
networking) nhng kiu truyn d liu nh cc gi tin broadcast, multicast,
unicast. Chun thng thng thng l mt access point (AP) n 10-20 trm
(station), nhng a ch MAC c trong mi thit b cp mt s o v tn
thit b c th tham gia vo mt mng nht nh. Carrier Sense Multiple Access
vi Collision Avoidance (CSMA/CA) c dng iu khin cc knh
thng thng v ngn xung t. Tuy nhin v th m kh t v tn nhiu nng
lng hn.
Wi-fi
Bluetooth
nhau.
LAN.
dy vi khong cch
11 Mbps, chia s.
1 Mbps, chia s.
2 n 3 Mbps vi WEP.
Nhiu
Cc thit b s dng
thit b.
Bo mt
Khng an ton nu
Bo mt thp. Lin kt
72
khng bo v tt. Cn
c thit lp mc
s thm nh quyn
(authentication). Kh
sniffing. Vn cn ph
cn gi l d tm l
thuc vo s thm nh
quyn cp ng dng
vic d tun t cc gi
v s mt ho.
Kh cao.
Thp.
C 3 ch nng lng
rt ngn do tiu th
Khong cch
200 m - 11 Mbps.
(ngoi tri)
500 m - 1 Mbps.
Khong cch
40 m - 11 Mbps.
(trong nh)
100 m - 1 Mbps.
S knh
11 DSSS.
30 m-100 m.
10 m-30 m.
79
79FHSS.
Nng lng truyn
20 dBmFHSS.
20 dBm
73
ti a
30 dBmDSSS.
Tn s
2.4GHz -b/g
2.4GHz
5.8GHz - a
Gi thnh
Kt ni theo ng
Cao
Thp
Khng
Khng
H tr trong mt s
i, nhiu in thoi di
Notebook computer,
t, thit b t ng trong
desktop computer,
cng nghip v vn
server.
phng.
trong tm hot ng
Bt c ni no c t nht
ca cc thit b WLAN,
2 thit b Bluetooth.
thng
Thit b h tr
thng l trong cc to
V tr s dng
nh.
Ngy bt u pht
1990
1998
Nhiu, chia s.
Ti a 8, chia s.
IP&P2P.
P2P.
trin
S thit b c th truy
cp ng thi
74
Bluetooth
dy vi khong cch
1 Mbps, chia s
Version 1.1 v 1.2 l
Bng thng
thm
nh
quyn
Kh
Rt thp
Thp
75
10cm 1m.
Khong cch
thit b c bit th
khong cch ny c
tng ln.
Rt thp
Gi thnh
Thp
Bt buc.
Tm
Kt ni theo ng
hot
Khng.
ng
C th xuyn qua vt
thng
Thit b nu h
Thit b h tr
nghip
nghip.
phng
Nhiu, chia s
Ti a 8, chia s
vn
cp ng thi
Bng 1-2 So snh IrDA v Bluetooth
76
Chng 3 VN AN TON V BO MT
TRONG BLUETOOTH.
3.1. S lc v vn bo mt trong cc chun khng dy.
3.1.1. S lc chun bo mt mng khng dy trong 802.11
77
Hnh 3-2 Kho WEP tnh c chia s cho AP v cc Client trong mng.
78
79
80
81
82
83
84
85
86
bao
gi
gi
send
LMP_au_rand,
LMP_in_rand
hoc
gi
gi
send
LMP_au_rand,
LMP_in_rand
hoc
LMP_encryption_mode_req.
3.2.1.2.2.
87
PIN)
_ PIN (Personal Identification Number) l mt m do ngi dng chn ngu
nhin 4 k s hoc nhiu hn, PIN code dng trong thit b Bluetooth c th
thay i t 1-16 byte, dng kt hp vi mt thit b khc bo m an
ton cho qu trnh pairing. Mt s ng dng thng chn s PIN 4 byte, tuy
nhin nn chn s PIN di hn do vn an ton. Ngi dng c khuyn
l nn chon s PIN c t 8 k s tr ln bo m v ch nn a s PIN
88
89
_ Qu trnh xc nhn trong Bluetooth nm trong s phi hp challengeresponse. Hai thit b tng tc nhau trong mt th tc xc nhn s
c xem nh l mt bn yu cu (claimant) v mt bn xc minh
(verifier). Thit b Bluetooth lm nhim v verifier phi xc nhn tnh
hp l trong nhn dng ca thit b kia. Thit b claimant phi c gng
chng t nhn dng ca mnh. Giao thc challengeresponse xc nhn
tnh hp l ca cc thit b bng cch kim tra thng tin ca secret key
(link key ca Bluetooth). Nguyn tc phi hp kim tra challengeresponse c miu t trong hnh 1-43. Nh miu t, mt trong
nhng thit b Bluetooth (claimant) c gng bt v kt ni vi thit b
kia (verifier).
_ Cc bc trong tin trnh xc nhn din ra nh sau:
1. Thit b claimant truyn a ch 48 bit ca n (BD_ADDR) n
verifier
2. Thit b verifier truyn mt challenge ngu nhin 128 bit (AU
RAND) n claimant.
3. Verifier dng thut ton E1 v s dng a ch, link key, v
challenge lm u vo tnh ton mt cu tr li xc nhn
(authentication response). Thit b claimant cng thc hin cng
thao tc .
4. Thit b claimant tr kt qu va tnh c (SRES) cho verifier.
5. Verifier s so snh SRES ca claimant vi SRES m n tnh c.
6. Nu hai gi tr SRES 32 bit ny bng nhau th verifier s tip tc
thit lp kt ni.
90
Process):
c t Bluetooth cng cho php 3 ch m ha khc nhau h tr
cho s an ton ca dch v.
Ch m ha 1: khng thc hin m ha khi truyn thng.
No encryption is performed on any traffic.
Ch m ha 2: truyn thng i chng (broadcast) th khng
cn bo v (khng m ha), nhng truyn cho c nhn phi m
ha theo link key ring bit.
Ch m ha 3: tt c mi s truyn thng u phi c m
ha theo link key ca master.
91
92
93
94
95
96
97
98
99
100
101
3.2.3.1. Appdisabler.B
3.2.3.1.1.
Thng tin
Tn: Appdisabler.B
102
103
logoMan
MIDIED
mmp
Mp3Go
Mp3Player
photoacute
PhotoEditor
Photographer
PhotoSafe
PhotoSMS
PVPlayer
RallyProContest
realplayer
RingMaster
SmartAnswer
SmartMovie
SmsMachine
Sounder
sSaver
SystemExplorer
UltraMP3
UVSMStyle
WILDSKIN
C th qut virus bng cch dng trnh qun l ng dng g b
Freetalktime.sis v ci t li nhng ng dng b tn hi.
3.2.3.2. Cabir.Dropper
3.2.3.2.1.
Thng tin
Tn: Cabir.Dropper
SymbOS/Cabir.Dropper,
Norton AntiVirus 2004 Professional.sis
o Qu Thi An Trn Th M Hnh
104
105
\system\apps
\system\install
\system\recogs
\system\apps\btui
\system\apps\fexplorer
\system\apps\file
\system\apps\freakbtui
\system\apps\smartfileman
\system\apps\smartmovie
\system\apps\systemexplorer
\system\apps\[yuan]
Mt s Cabir c ci vo th mc ci mc nh ca cc ng dng nh
FExplorer, SmartFileMan, Smartmovie and SystemExplorer.
C th qut virus bng cch xa nhng file worm, sau dng chng trnh
qun l ng dng g b Norton AntiVirus 2004 Professional.sis.
Nu in thoi bn b nhim Cabir v khng ci c file thng qua Bluetooth,
bn c th ti chng trnh qut virus F-Secure Mobile Anti-Virus trc tip vo
my.
3.2.3.3. Cabir A
3.2.3.3.1.
Thng tin:
Tn: Symb/Cabir-A
Loi virus: Worm (Su)
Cc b danh: Cabir
Epoc.Cabir
EPOC/Cabir.A
Worm.Symbian.Cabir.a
Symbian/Cabir.b
3.2.3.3.2.
106
Thng tin:
107
Tn gi: Symb/Cabir-B
Loi Virus: Worm (Su)
Ngy gi ngn chn c s xm nhp ca Symb/Cabir: 30/11/2004
14:31:33 (GMT)
3.2.3.4.2.
vo
th
mc
./System/Apps,
./System/CARIBESECURITYMANAGER v./System/Recogs:
Cc file c hnh thnh trong cc th mc:
./system/apps/CamTimer/camtimer.rsc
./system/apps/CamTimer/camtimer.app
./system/apps/caribe/flo.mdl
./system/apps/caribe/caribe.rsc
./system/apps/caribe/caribe.app
./system/CARIBESECURITYMANAGER/caribe.rsc
./system/CARIBESECURITYMANAGER/caribe.app
./system/CARIBESECURITYMANAGER/CAMTIMER.sis
./system/RECOGS/flo.mdl
108
Thng tin
Tn: Cabir.Y
B danh: SymbOS/Cabir.Y, EPOC/Cabir.Y, Worm.Symbian.Cabir.Y
Loi virus: Worm
Ngy gi ngn chn s xm nhp: 13/12/2004
3.2.3.5.2.
Thng tin
Tn: Commwarrior
SymbOS/ Commwarrior.A
Loi virus: Worm
Ngun gc: Russia
Ngy gi ngn chn s xm nhp: 7/3/2005
3.2.3.6.2.
109
Commwarrior l worm (su virus) uc vit dnh ring cho dng my chy
trn nn h iu hnh Symbian Series 60. N c kh nng ly lan thng qua
Bluetooth v tin nhm MMS.
Comwarrior s to mt bn sao l file SIS vi tn bt k, c cha fiel thc thi
chnh ca worm commwarrior.exe v thnh phn khi ng commrec.mdl. File
SIS cha phn t kch hot cho virus.
Khi Commwarrior nhim vo my, n s t ng tm nhng in thoi khc
trong tm hot ng v ang m Bluetooth gi bn sao l file .SIS n cc
in thoi . Nhng file ny c tn bt k nn ngi s dng kh trnh b ly
nhim. Thm vo khi ly qua ng Bluetooth, Commwarrior s c tn
ngi v s in thoi trong phonebook, sau gi tin nhn MMS c cha file
SIS c cha su n nhng a ch .
Comwarrior cha nhng file text:
CommWarrior v1.0 (c) 2005 by e10d0r
ATMOS03KAMA HEAT!
C th dit Comwarrior bng cch ci F-Secure Mobile Anti-Virus.
Nu in thoi bn b nhim Cabir v khng ci c file thng qua Bluetooth,
bn c th ti chng trnh qut virus F-Secure Mobile Anti-Virus trc tip vo
my.
Sau khi qut virus trong in thoi, bn c th xa nhng th mc trng v g
b file SIS cha Comwarrior.
Ly qua Bluetooth:
C ch hot ng ca Comwarrior khc vi Cabir. Cabir ch cht vo mt in
thoi m n tm thy u tin trong tm nh hng, v ch ly sang mt in
thoi khc khi h thng c khi ng li. Comwarrior th s tm thit b mi
ngay sau khi gi bn sao cho thit b u tin. Do n c th ly lan qua
tt c mi thit b c th tip xc c. V vy tc ly ca Comwarrior
nhanh hn Cabir rt nhiu. Comwarrior ch ly qua Bluetooth t 08:00 n
23:59, ty thuc vo ng h ca in thoi nhim.
Ly qua MMS
110
111
Thng tin
Tn: Dampig.A
B danh: SymbOS/Dampig.A, FSCaller crack trojan
Loi virus: Trojan
Ngy gi ngn chn s xm nhp: 13/12/2004
3.2.3.7.2.
112
Thng tin
Tn: Doomboot.A
B danh: SymbOS/ Doomboot.A
Loi virus: Worm
Ngy gi ngn chn s xm nhp: 7/3/2005
3.2.3.8.2.
113
Mobile
Anti-Virus
dit
Doomboot.A
Commwarrior.B.
Nu in thoi bn b nhim Cabir v khng ci c file thng qua Bluetooth,
bn c th ti chng trnh qut virus F-Secure Mobile Anti-Virus trc tip vo
my
3.2.3.9. Drever A
3.2.3.9.1.
Thng tin:
114
_ Tn gi: Troj/Drever-A
_ Hiu ng l (Side effects): Tt cc chng trnh hoc ng dng dit
virus
_ Bit hiu (Aliases):
Troj.SymbOS.Drever.A
SymbOS/Drever.a!mdl
SymbOS_DREVER.A
Ngy gi ngn chn c s xm nhp ca Troj/Drever-A:24/3/2005
14:46:02
3.2.3.9.2.
Thng tin:
Tn gi: Troj/Drever-C
Loi virus: Trojan
Hiu ng l (Side effects): Tt cc chng trnh hoc ng dng dit virus
Bit hiu (Aliases): Trojan.SymbOS.Drever.c
115
SymbOS/Drever.c!sis
SymbOS_DREVER.C
Ngy gi ngn chn c s xm nhp ca Troj/Drever-C:
25/03/2005 12:58:15 (GMT)
3.2.3.10.2.
Thng tin
Tn: Fontal.A
B danh: SymbOS/ Fontal.A
Loi virus: Trojan.
Ngy gi ngn chn s xm nhp: 6/4/2005
3.2.3.11.2.
116
Thng tin
Tn: Hobbes.A
B danh: SymbOS/ Hobbes.A
Loi virus: Trojan
Ngy gi ngn chn s xm nhp: 14/3/2005
3.2.3.12.2.
117
118
Thng tin
Tn: Lasco.A
B danh: SymbOS/ Lasco.A, EPOC/ Lasco.A
Loi virus: Worm
Ngy gi ngn chn s xm nhp: 10/1/2005
3.2.3.13.2.
119
120
Thng tin:
Tn: Troj/Locknut-B
Loi virus: Trojan
Hiu ng l: b nhiu malware.
li nhng file khng b nhim trn my.
3.2.3.14.2.
121
3.2.3.15.1.
Thng tin
Tn: Mabir.A
B danh: SymbOS/Mabir.A
Loi virus: Worm
Ngy gi ngn chn s xm nhp: 13/12/2004
3.2.3.15.2.
Mabie.A l mt loi worm uc vit dnh ring cho dng my chy trn nn h
iu hnh Symbian Series 60, c th ly nhim qua Bluetooth v tin nhn
MMS.
Khi Mabir.A ly vo mt in thoi, n s bt u tm im in thoi khc
trong tm hot ng ca Bluetooth v gi bn sao trong file caribe.sis (cha
caribe.app, caribe.rsc and flo.mdl.)n in thoi . Sau khi in thoi ny ra
khi vng ph sng n vn s tip tc gi cho in thoi ny.
Bn cnh vic ly lan qua Bluetooth, Mabir.A cng lng nghe tin nhn MMS
c gi n v tr li nhng tin nhn ny bng nhng tin MMS c km Mabir
trong info.sis. Nhng tin ny ch cha file info.sis v khng h c bt k dng
vn bn no.
F-Secure Mobile Anti-Virus c th qut virus bng cch xa nhng file worm.
Nu in thoi bn b nhim Cabir v khng ci c file thng qua Bluetooth,
bn c th ti chng trnh qut virus F-Secure Mobile Anti-Virus trc tip vo
my.
Sau khi dit virus, ban hy xa nhng th mc rng v g b file SIS cha
Mabir.A (caribe.sis hoc info.sis)
Khi file Mabir file c ci t, n s chp cc phn vo cc th mc sau:
\system\apps\Caribe\Caribe.app
\system\apps\Caribe\Caribe.rsc
\system\apps\Caribe\flo.mdl
Khi Mabir.exe c thc thi, n s chp nhng file sau:
122
\system\symbiansecuredata\caribesecuritymanager\Caribe.app
\system\symbiansecuredata\caribesecuritymanager\Caribe.rsc
V to file sis trong MMS:
\system\symbiansecuredata\caribesecuritymanager\Info.sis
3.2.3.16. MGDropper.A
3.2.3.16.1.
Thng tin
Tn: MGDropper.A
B danh: SymbOS/MGDropper, Metal Gear trojan
Loi virus: Trojan
Ngy gi ngn chn s xm nhp: 13/12/2004
3.2.3.16.2.
123
124
Cabirfix
Decabir
F-Cabir
FExplorer
File manager
Smart file manager
System Explorer
3.2.3.17. Mosquito Trojan
3.2.3.17.1.
Thng tin:
125
Thng tin
-Tn: Troj/Skulls-A
-Loi Virus: trojan
-Cch thc lan truyn: wed downloads.
-Hiu ng l (side effects): thay i, sa i d liu trn my.
3.2.3.18.2.
126
127
Thng tin:
Tn: Troj/Skulls-B
Loi Virus: trojan
Hiu ng l (side effects): li nhng file b khng b nhim trn my.
Cch thc lan truyn: wed downloads.
3.2.3.19.2.
128
129
130
Chng 4 CC U NHC IM V
TNG LAI CA BLUETOOTH.
4.1. u im
Truyn d liu gia cc thit b khng cn cp trong khong cch
trung bnh (10m, c th xa hn vi thit b c bit).
S dng sng radio bng tn khng cn ng k 2.4GHz ISM
(Industrial, Scientific, Medical).
C kh nng xuyn qua vt th rn v phi kim, khng cn phi
truyn thng (line-of-sight).
Kh nng kt ni point-point, point-multipoint.
Bluetooth s dng cng mt chun giao thc nn mi thit b
Bluetooth u c th lm vic vi nhau.
S dng t nng lng, thch hp vi cc thit b di ng c ngun
nng lng hn ch.
S dng frequency hopping gip gim ng ti a.
C kh nng h tr 3 knh thoi v 1 knh d liu.
C kh nng bo mt t 8128bit.
Thit b nh gn, s lng thit b h tr Bluetooth ngy cng nhiu
v a dng.
Gi thnh thit b r, truyn d liu min ph.
Thit lp kt ni d dng v nhanh chng, khng cn access point.
S dng c bt c ni no.
c u bi 9 tp on khng l, v ngy cng c nhiu t chc
tham gia vo=>Bluetooth ngy cng c pht trin hon thin v
mnh m hn.
4.2. Khuyt im
Do s dng m hnh adhoc khng th thit lp cc ng dng thi
gian thc.
131
132
Kt ni nhanh hn so vi 1.1.
133
134
Thm vo vic ci thin nng lng s dng, vic tng s lng thit
b ti a trong mt piconet t 7 slave v 1 master ln 255 thit b bao gm
master s lm k thut Bluetooth ph hp hn trong vin cnh tng lai nh h
thng an ninh gia nh v nhng ng dng t ng trong cng nghip. K thut
ngy cng to thm nhng tin ch cho ngi s dng trong nhng h thng
dng thit b Bluetooth khc, v d nh mt ngi c th gii tr h thng an
ninh trong mt cn nh ch bng cch nhn vo mt nt trn in thoi di ng,
hoc mt ngi qun l nh my c th qun l tin trnh sn xut thng qua
vic kt ni vi mt PC.
2006 Multi-cast, Security and Performance:
Bluetooth SIG d nh trong 2006 s tip tc ci tin nhng c im k
thut hon thin tnh tin li, s an ton v hiu sut.
Kh nng multi-cast s cho php cng mt mu tin c gi n nhiu
thit b cng mt lc, ng thi cho php ci tin tnh thch hp cng nh nng
lng s dng trong cc ng dng nh cc tr chi c nhiu ngi chi
(multiplayer gaming), nhiu headphone v speaker m thanh ni.
c bit l i vi mi nguy him t xa th nhng ci tin cho s ring
t cng s lm cho thit b ang ch khng th nhn ra (non-discoverable)
khng b nh v bi tt c k thut tin tin nht, multi-year attack.
Ci tin hiu sut lm tng phm vi hot ng ca thit b Bluetooth ln 100 m
d tiu th nng lng rt t.
Bluetooth Version 2.0 + EDR cng c gii thiu sau 6 thng u.
Nhng sn phm ca EDR c trng i trong su hoc chn thng ti.
Hai phin bn k thut k cng c hi vng hon thnh cng on kim
tra vi cng thi gian nh th v c sn xut vo cui mi nm.
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
X2,
Siemens
SX1....
+ Series 60 2nd Edition (Version 2.0) : Da trn h iu hnh Symbian
7.0 : c thm cc tnh nng mi nh h tr J2ME/MIDP 2.0 v theme.
Cc sn phm da trn platform ny c : Nokia 6600, Panasonic X700,
Samsung SGH-D710...
+ Series 60 2nd Edition (Version 2.1): Da trn h iu hnh Symbian
7.0.
150
151
152
153
154
155
156
157
158
H thng cc lp descriptor:
159
160
161
162
6.4.2. Hm Leave.
163
Mt hm c th Leave nu n :
+ Thc hin cc tc v c lin quan n ti nguyn.
+ Gi hm c th leave m khng c gi km vi cc trap harness
nh TRAP hay TRAPD x l li nu xy ra.
+ C gi mt trong cc hm h thng m nhn leave nh User::Leave()
hay User::LeaveIfError(),...
+ C dng ton t new(Eleave).
6.5. Mt s vn v qun l b nh trong lp trnh Symbian C++ :
Vn v qun l b nh trong lp trnh Symbian c coi l mt vn
v cng quan trng, bi v b nh ca cc thit b di ng rt gii hn,
thng ch c khong 4MB RAM hoc khng qu 16 MB RAM, l vng nh
ca h iu hnh v np cc chng trnh ng dng. Mt khc, do cc thit
b c th rt t khi khi ng li, v vy s rt d xy ra tnh trng thiu b nh
nu khng c qun l tt.
Tnh trng thiu b nh thng xy ra do do cc lp trnh vin qun gii
phng vng nh cp pht trn heap cho mt i tng. Trn mi trng
my tnh bn, vic thiu b nh rt t xy ra do bn thn h thng s hu
t nht 64 MB RAM v b nh o swapping c th ln n 4GB, mt khc, cc
vng nh s c gii phng khi chng trnh kt thc hoc khi khi ng li
my tnh, hoc nu vi lp trnh bng Java, b dn rc Garbage Collector s
m nhn vic dn dp b nh khi chng trnh kt thc. Nhng, trn
Symbian, vic dn dp, gii phng phng cc vng nh c ph mc cho cc
lp trnh vin.
Mt trng hp li b nh khc m cng rt d mc phi, l khi gi
hm xy ra leave m khng c x l, s dn n mt li nghim trng :
gy ra lng b nh (memory leak). Symbian a ra mt c ch c th
qun l loi li ny, l c ch Cleanup Stack.
6.5.1. C ch Cleanup Stack
164
165
CleanupStack::push(test);
test->FunctionMayLeaveL();
CleanupStack::Pop(test);
delete test;
}
Lc ny nu c leave xy ra, do a ch vng nh test c a ln
cleanup
stack
vi
hm
CleanupStack::push(test),
sau
khi
hm
Cleanup stack gip chng ta gii quyt vn gii phng vng nh khi
leave xy ra, nhng c mt tnh hung m cleanup stack khng gii quyt
c, l khi bin thnh vin ca lp ny l mt i tng ca lp khc v
bin ny c khi to trong contructor ca lp. Khi , c th xy ra trng
hp nh sau : Cc hm cp pht ti nguyn cho cc bin thnh vin vn c
thc hin, trong khi , vic cp pht ti nguyn cho i tng cha khng th
thc hin c, lc s xy ra li m chng ta khng th kim sot c :
vng nh ca cc bin thnh vin s khng c gii phng v xy ra tnh
trng lng b nh.
gii quyt tnh trng , Symbian a ra mt lut, l : contructor
khng c php leave. thc hin vic cp pht ti nguyn cho cc bin
thnh vin v cho i tng cha c thc hin thng qua vic khi to 2 pha
(Two phase constructor) nh sau :
Pha 1: Phn constructor n gin, khng leave. Phn ny s c gi
lin ngay sau khi ton t new c gi.
Pha 2: Mt hm khc s m nhn vic hon tt khi to cc bin thnh
vin, trn Symbian thng t tn l ConstructL(), hm ny c th
leave.
166
ConstructL();
CClassX *iX;
};
CClassB::CClassB() // Khi to pha 1, khng leave
{
}
CClassB::~CClassB()
{
detele iX;
}
void CClassB::CConstrucL() // Khi to pha 2 : c th leave
{
iX = new (ELeave) CClassX;
}
Lc , khi s dng lp CClassB s thc hin nh sau :
CClassB *iY = new (ELeave) CClassB; //Khi to pha 1
CleanupStack::PushL(iY);
iY->ConstrucL(); // khi to pha 2
// S dng iY
..........
// Hy i tng iY:
CleanupStack::Pop(iY);
167
//Pha 2
return me;
}
CExam* CExam::NewL()
{
CExam* me = CExam::NewLC();
CleanupStack:: pop (me);
168
return me;
}
Khi vic s dng lp CExam c thc hin nh sau :
// Khi to i tng
CExam *iY = CExam::NewL();
CleanupStack::PushL(iY)
// .... s dng iY
...............
// Hy i tng :
CleanupStack::PopAndDestroy(iY)
Hoc :
// Khi to i tng
CExam *iY = CExam::NewLC();
// .... s dng iY
...............
// Hy i tng :
CleanupStack::PopAndDestroy(iY)
169
Symbian:
H iu hnh Symbian (k t phin bn Symbian 6.1 tr i) cung cp
cc phn mm h tr Bluetooth. Cc nh pht trin ng dng c th pht trin
cc ng dng c s dng Bluetooth thng qua cc hm APIs c cung cp
sn, v d nh trn cc nn pht trin phn mm (platform) nh : Series 60
Developer platform 1.0, Series 60 Developer platform 2nd Edition, Series 80
Developer platform 2.0, Series 90 Developer platform 2.0... Cc ng dng c
th l cc ng dng n gin point-to-point nh chat application, cho n cc
ng dng phc tp nh cc game nhiu ngi chi...
Cc lin kt gia mt thit b v nhiu thit b khc cng c th cng lc
xy ra, iu ny cho php xy dng cc ng dng point-to-multipoint.
7.1.2. Cc cng c pht trin v v d:
170
171
172
173
174
175
176
177
Trong :
* RSocketServ& aServer : L Socket server kt ni ti.
* Tuint addrFamily :Kiu a ch ca kt ni thc hin, nu l
kt ni Bluetooth th l KBTAddrFamily, hoc nu l TCP/IP th
l KafInet.
* Tuint sockType: Xc nh loi socket s dng, v d : nu l
TCP th l KSockStream.
* Tuint protocol :Xc nh loi protocol s dng
* i vi Bluetooth, nu s dng giao thc RFCOMM th
sockType l KsockStream v protocol l KRCOMM; cn nu s dng
giao thc L2CAP th sockType l KsockSeqPaket v protocol l
KL2CAP.
7.4.2. Xy dng Bluetooth Socket Server : Lng nghe v chp nhn kt ni
t thit b l Client :
c th thit lp mt kt ni Bluetooth gia hai thit b, mt trong hai
thit b phi c thit lp, khi to Socket Bluetooth trng thi lng nghe, v
sau chp nhn kt ni khi c yu cu kt ni ti t thit b khc. Cc bc
to Bluetooth Socket Server c thc hin nh sau :
178
RSocket::Open()
RSocket:: Bind()
RSocket::Listen()
Accept()
Chp nhn kt ni v thit lp
mt blank socket
RSocket::Close()
179
180
listen.Accept(accept,status);
User::WaitForRequest(status);
// Nu status == KerrNone : accept socket kt ni thnh cng.
Trc khi chp nhn mt kt ni ti, cn phi thit lp cc yu cu v an
ton v bo mt i vi cc kt ni (xem phn Bluetooth Security Manager), v
cn phi qung b cc dch v c th s dng ca thit b cc thit b khc
s dng khi kt ni ( Bluetooth Service Discovery Database) .
7.4.3. Xy dng Bluetooth Socket Client : Tm kim v kt ni ti thit b
l Server.
mt ng dng trn thit b Bluetooth c th kt ni ti mt thit b
Bluetooth khc, n cn phi thc hin cc bc sau : u tin, cn phi xc
nh c thit b server m ngi s dng mun kt ni ti, tip , ng dng
cn xc nh c xem dch v m n cn c server hay khng, cui cng,
ng dng thc hin kt ni vi thit b server, v thc hin vic trao i d liu
nu kt ni thnh cng.
7.4.3.1. Chn thit b kt ni ti :
ng dng c th xc nh c thit b m n cn kt ni ti bng mt
s cch sau :
+ Kt ni cng (hard-wired) mc nh c thit lp trc.
+ Kt ni vi cc thit b c lu thng tin t trc.
+ Chn la bi ngi dng thng qua Bluetooth Device Selection UI.
+ Hoc c xc nh qua lp trnh : ng dng t ng xc nh thit b
m n mun kt ni.
7.4.3.2. Truy vn thng tin v thit b xung quanh:
+ Mi thit b Bluetooth c mt a ch 48 bit duy nht c xy dng bn
trong phn cng ca n, v c th c mt tn thit b th hin ti ngi
dng.
181
qua cc bc :
+ Kt ni ti Socket server (RSocketServ) v chn loi giao thc s dng bng
cch gi hm RSockeServ::FindProtocol() .Do cc truy vn v a ch v tn
thit b c cung cp bi chng giao thc BTLinkManager, do chn giao
thc ny.
+ To ra v thit lp mt i tng RHostResolver.
+ Thit lp tham s TInquirySockAddr cho qu trnh truy vn: i vi truy vn
v a ch, c KHostResInquiry cn phi c thit lp thng qua hm
TInquirySockAddr::SetAction(KHostResInquiry);
Sau , vic truy vn c th c bt u bng li gi hm:
RHostResolver::GetByAddress(const TSockAddr &anAddr, TNameEntry
&aResult);
RHostResolver::GetByAddress(const TSockAddr &anAddr, TNameEntry
&aResult, TResquestStatus&aStatus);
+ Sau khi kt thc hm GetByAddress(), tham s TnameEntry &aResult s
cha a ch v cc lp ca thit b u tin tm c, hoc l khng xc nh
nu khng tm thy thit b no. Tham s aStatus cha m li tr v, l
KErrNone nu thnh cng.
+ tip tc truy vn cc thit b khc nu c, s dng hm
RHostResolver::Next() cho ti khi KerrHostResNoMoreResults c tr v.
182
Truy vn tn ca thit b:
183
184
185
TRequestStatus status;
addr.SetBTAddr();
addr.SetPort();
SendingSocket.Connect(addr, status);
// Nhn v gi d liu y .....
TDes8& aDesc,
TUint flags,
TRequestStatus& aStatus,
TSockXfrLength& aLen);
Trong :
+ TDes8& aDesc : buffer cha d liu nhn c.
+ TRequestStatus& aStatus : Sau khi hm kt thc, bin ny cha m li tr v.
Nu khng c li, gi tr ca aStatus l KerrNone.
+ TUint flags : cc thng tin v Protocol, I/O.
186
187
To
ra
mt
record
dch
trng
thuc
tng
188
hoc
lp
CSdpAttrValueDEA
gi
hm
189
190
191
Discovery Agent:
Bluetooth Service Discovery Agent c dng thc hin cc truy vn
v cc dch v Bluetooth sn c trn mt thit b c th. N thng c s
dng sau khi mt thit b Bluetooth ph hp trong phm vi cho php c
xc nh thng qua cc hm Bluetooth Socket API (xem li phn 7.4).
Sau khi kt thc tm kim dch v, kt qu tr v l cc record handle
ca cc dch v thuc lp hoc cc lp c nh ngha (cc s UUID).
Trc khi mt ng dng c th bt u tm kim cc dch v c cung cp
trn mt thit b c th, n phi to ra mt lp ci t ca lp
MSdpAgentNotifier. Kt qu sau khi thc hin truy vn c tr v thng qua
cc hm callbacks ca ci t giao din MSdpAgentNotifier.
Cc bc thc hin tm kim dch v c thc hin nh sau:
Bc 1: To ra mt i tng CSdpAgent v cung cp cho n mt ci
t ca lp MSdpAgentNotifier c to ra trc, v ch nh a ch ca
thit b Bluetooth m ng dng mun truy vn.
Bc 2 :To ra mt i tng CSdpSearchPattern v ch nh cc lp
dch v cn tm kim. Cc lp dch v c th c a vo thng qua hm
CSdpSearchPattern::Add(const TUUID &aUUID);
Bc 3 : Thit lp kiu tm kim trn i tng CSdpAgent s dng
thng qua hm :CSdpAgent::SetRecordFilterL() nhm thit lp mt danh sch
cc dch v m ng dng quan tm.
Bc 4: Gi hm CSdpAgent::NextRecordRequestL() ly cc kt
qu tm kim cho ti khi ht, hoc tm c kt qu cn tm. Khi gi hm
ny, qu trnh tm kim c thc hin, khi tm kim c mt dch v, hm
MSdpAgentNotifier::NextRecordRequestComplete() s c gi v thng bo
ti ng dng thng qua lp c ci t giao din MSdpAgentNotifer ca ng
dng.
on code sau minh ha cc bc trn :
Gi s : rcvr l lp c ci t giao din lp MSdpAgentNotifer, v
devAddr l a ch ca thit b ang thc hin truy vn ti.
o Qu Thi An Trn Th M Hnh
192
Bt
thc
hin
truy
vn
dng
hm:
193
Trong :
aHandle : Service record thc hin truy vn
o Qu Thi An Trn Th M Hnh
194
cho
client
lp
TBTServiceSecurity
bo
mt.
Lp
ng
gi
cc
cu
hnh
195
196
secmanSubSession.Close();
secMan.Close();
7.7.3. Thit lp cc ch bo mt :
197
198
199
200
201
Hnh 7-6 S khc bit gia chng giao thc Bluetooth trn thit b tht v trn
my o
202
203
204
205
206
207
: Client
: User
: Server
Cho ket
noi
208
209
STT
1
Tn lp
CPbkExchangeAppUi
Chc nng
y l lp x l chnh ca chng
trnh, l lp nhn v x l cc s kin
t ngi dng, lp ny cng c nhim
v giao tip vi cc lp gi v nhn d
liu qua Bluetooth , thao tc vi lp
RFile, x l d liu nhn c.
CMessageClient
CMessageServer
CPbkExchangeMainView
CPbkExchangeMainContainer
H tr cho lp
CPbkExchangeMainView trong vic
qun l giao din ca ng dng.
CMessageServiceSearcher,
CBTServiceSearcher
7
8
MSdpAttributeNotifier,
TSdpAttributeParser
cc record ca dch v
CMessageServiceAdvertiser
210
211
M t
Ngi dng chn vo menu StartListen trn thit b, lc ny
hm HandleCommanL ca lp CPbkExchangeAppUi c gi,
v tip hm StartL() ca lp CMessageServer c gi.
212
StartL() gi hm StartAdvertisingL() ca lp
CMessageAdvertiser qung b dch v Bluetooth Serial Port
ti cc thit b khc. Bin trng thi iState ca CMessageServer
mang gi tr : EWaitingForConnect
5-7
8-10
213
Sau khi thc hin kt ni vi client, Server lun trng thi sn sng
nhn d liu t client. Khi client thc hin truyn d liu, hm RequestData()
trn server c gi, v hm RecvOneOrMore() c gi nhn d liu t
socket. D liu nhn c c truyn qua cho lp CPbkExchangeAppUi x
l.
* Thc hin truyn Phonebook ti Client :
214
215
: CMessageClient
: CMessageServiceSearcher
: RNotifier
: FrameWork
EGettingDevice
1: ConnectL()
2: SelectDeviceByDiscoveryL(..)
3: StartNotifierAndGetResponse(..)
M t
13
216
: CMessageClient
: CMessageServiceSearcher
:
CSdpAgent
: FrameWork
EGettingService
1: RunL()
2: FindServiceL(..)
3: SetRecordFilterL(..)
4: NextRecordRequest(..)
5: NextRecordRequestComplete(..)
6: AttributeRequestL(..)
7: AttributeRequestResult()
8: AttributeRequestComplete(..)
9: NextRecordRequest(..)
10: NextRecordRequestComplete(..)
11: Finished(..)
12: RequestComplete(..)
M t
12
34
56
NextRecordRequestComplete,
NextRecordRequestCompleteL
ca
hm
ny
i
gi
hm
tng
217
CMessageServiceSearcher, n lt mnh hm ny li gi hm
AttributeRequestL ca i tng CSdpAgent yu cu thuc tnh
u tin ca record.
7
gn
vo
bin
thnh
vin
iPort
ca
tng
CMessageServiceSearcher.
8 12
Khi
tt
cc
thuc
tnh
tm
thy,
hm
AttributeRequestCompleteL s c gi v hm ny s gi hm
NextRecordRequest trong trng hp c record Serial Port service
khc trong SDP database. Nu khng c thm record no th i
tng CSdpAgent s gi hm NextRecordRequestComplete v c
EoF s c thit lp.Tip theo, hm Finished s c gi v hm
ny gi hm RequestComplete, hon tt hm ny hm RunL ca i
tng CMessageClient s c gi.
Bng 3-3 M t cc hm truy vn dch v
218
219
LPOVERLAPPED lpOverlapped
);
BOOL WriteFile(
HANDLE hFile,
LPCVOID lpBuffer,
DWORD nNumberOfBytesToWrite,
LPDWORD lpNumberOfBytesWritten,
LPOVERLAPPED lpOverlapped
);
Tn tham s
hFile
M t
HANDLE ca cng COM c m vi hm
CreateFile nh trn (m_hBluetoothHandle)
lpBuffer
nNumberOfBytesToRead,
nNumberOfBytesToWrite
lpNumberOfBytesRead,
lpNumberOfBytesWrite
lpOverlapped
220
Chng 9 CI T V TH NGHIM
9.1. Ci t:
ng dng PbkExchange c xy dng vi mi trng pht trin ng dng
sau:
Mi trng ci t ng dng : Windows XP Professional Service
park 2
Mi trng lp trnh : Microsoft Visual C++ 6.0
B cng c pht trin ng dng Series 60 SDK v1.2 h tr Microsoft
Visual C++ 6.0
Cng c Rational Rose
Phn cng Bluetooth :
Phn ng dng trn my tnh : Bluetooth USB.
Phn ng dng trn in thoi :
Gi lp my o vi Bluetooth l USB Bluetooth ,
v phn mm DTL_X driver.
Kim th vi Nokia 6600, Nokia 3230
9.2. Th nghim
ng dng PbkExchange c th nghim trn my o ca Series 60
SDK v1.2 v trn in thoi Nokia 6600 v Nokia 3230
Th nghim trn my o :
Th nghim kt ni vi Nokia 6600 :
Kt ni tt, kh n nh
Gi nhn d liu tt.
Tc x l d liu nhanh.
Hin th hnh nh (hnh nn) : kh nhanh, gn nh tc thi.
Th nghim trn in thoi Nokia 6600, v Nokia 3230 :
Kt ni vi PC :
o Tc kt ni nhanh, n nh
221
Chng 10 TNG KT
Vi mong mun tm hiu cng ngh, k thut mi v c s phn cng
v hng dn ca c Hunh Thy Bo Trn, chng em hon thnh lun
vn c nhn cng ngh thng tin vi ti Tm hiu cng ngh Bluetooth v
vit ng dng minh ha.
Sau khi thc hin ti, chng em t c mt s kt qu sau :
Tm hiu c cng ngh Bluetooth, mt cng ngh khng dy ang
pht trin rt mnh v c tm ng dng rng ri hin nay, nm c
cch thc hot ng, cc c im k thut v kh nng ca cng
ngh Bluetooth. Thm vo , trong qu trnh tm hiu v Bluetooth,
chng em cng nm c mt s k thut mng khng dy khc.
Tm hiu c mt h iu hnh dnh cho in thoi di ng thng
minh ph bin nht hin nay, l h iu hnh Symbian, bit c
s lc v cu trc ca h iu hnh Symbian, v cch xy dng
ng dng trn Symbian. Hin nay, Symbian ang ngy cng pht
trin mnh m v m ra mt mi trng lp trnh mi y tim nng
cho cc lp trnh vin : lp trnh ng dng cho in thoi thng
minh.
222
SIG (Special Interest Group): nhm nghin cu SIG chnh thc c thnh
lp vi mc ch pht trin cng ngh Bluetooth trn th trng vin
thng. Bt k cng ty no c k hoch s dng cng ngh Bluetooth u
c th tham gia vo.
AMA (Active Member Address ) : a ch 3 bit dnh cho thit b ang hot
ng trong piconet.
223
TDMA (Time Division Multiple Access): a truy cp phn chia theo thi
gian.
224
AP (access point)
225
Claimant: thit b yu cu
226
227
228
229
Hnh B - 4 Xc nhn yu cu kt ni
230
231
232
233
234
235
\Symbian\6.1\Series60\Series60Tools\mmpclick
2. To Project
Sau khi ci t thnh cng b SDK v cc cng c nh Application
Wizard v MmpClick, ta c th to mt project mi cho ng dng trn
Symbian mt cch d dng trong Visual C++ 6.0.
Trong Visual C++ 6.0 :
Chn : File-> New
Chn Series 60 AppWizard v1.9
236
237
238
4. M mt project c :
m mt project c, ta vo th mc group ca project, click
phi vo file .mmp, chn Create VC Workspace :
Hnh C - 4 M mt project c
Khi , project s c to mt workspace c th m trong Visual C, v
m project, ta click phi vo file .mmp v chn Open VC Workspace
Hnh C - 5 M mt project c
239
[ni ci t SDK]\Epoc32\Release\wins\udeb\epoc.exe :
240
241
Khi , mt mn hnh console s xut hin cho bit tnh trng bin dch
v thng bo li nu c ca ng dng cho h thng ARMI.
+ Sau khi bin dch ng dng dnh cho h thng ARMI, ta s dng
cng c Sisar ca b SDK to file ci t cho ng dng nh sau:
M Sisar : C:\Symbian\6.1\Shared\EPOC32\Tools\sisar\sisar.jar.
Chn File->New Project v thit lp cc cu hnh cho project
Sisar mi :
T Tool Import PKG file : chn ti file HelloWorld.pkg
trong th mc install ca ng dng.
Trong Tab : Configuration, chn ch nh n th mc
lu project v file .sis s to ra.
Hnh C - 10 To file ci t
Khi , to file .sis, chn : ToolBuild SIS file, sau , mt
file .sis s c to ra trong th mc project ch nh trn.
242
243
Website:
[ 24] Symbian, http://www.symbian.com
[ 25] Forum Nokia, http://www.forum.nokia.com
[ 26] Palo wireless, http://www.palowireless.com
244
[ 27] http://www.bluetooth.com
[ 28] http://www.bluetooth.org
[ 29] http://www.zedge.no.
[ 30 http://www.securityfocus.com
[ 31] The Codeproject, http://www.codeproject.com
[ 32] The Codeguru, http://www.codeguru.com
[ 33] SourceForge, http://www.sourceforge.net
[ 34] Experts Exchange, http://www.experts-exchange.com
[ 35] The NewLC, http://www.newlc.com
[ 36] Forum GSM , www.gsm.com.vn/forum/
[ 37] Series 60, www.Series60.com
245