You are on page 1of 27

I HC BCH KHOA H NI

Bo co Project
Mn hc: K thut mng nng cao ti: Phn mm chat trong mng LAN trn Android
Ging vin hng dn: T.S Trn Minh Trung Nhm thc hin: Nhm 3
H tn Nguyn Th Mnh Nguyn Duy Khnh Nguyn Vn Hng Nguyn B Nguyn M s sinh vin 20091740 20091439 20091384 20091932 Lp in T Vin Thng 11 K54 in T Vin Thng 11 K54 in T Vin Thng 11 K54 in T Vin Thng 11 K54

H Ni, thng 12, nm 2013

MC LC
LI GII THIU ......................................................................................................................................... 2 I. 1. 2. II. 1. 2. 3. III. 1. 2. 3. IV. 1. 2. GII THIU TI V LP K HOCH THC HIN .......................................................... 3 Gii thiu ti ............................................................................................................................... 3 Lp k hoch thc hin .................................................................................................................. 3 PHN TCH YU CU V PHN CNG NHIM V ........................................................... 3 Yu cu chc nng ca phn mm ................................................................................................ 3 Yu cu phi chc nng ca phn mm.......................................................................................... 5 Phn chia cng vic cho cc thnh vin ........................................................................................ 5 GII THIU V LP TRNH NG DNG ANDROID ........................................................... 6 H iu hnh Android .................................................................................................................... 6 Lp trnh ng dng trn Android ................................................................................................. 7 Lp trnh ng dng mng .............................................................................................................. 7 THIT K CHNG TRNH ...................................................................................................... 8 Thit k giao din ............................................................................................................................ 8 Truyn d liu gia cc thit b. .................................................................................................... 9 2.1. Socket............................................................................................................................................. 9 2.2.Truyn d liu. ............................................................................................................................... 9 2.3. Kch bn trao i bn tin gia cc thit b trong mng............................................................. 10 3. 4. 5. 6. 7. V. 1. 2. 3. 4. 5. 6. VI. Phn chia cc module chc nng ................................................................................................. 12 Module tm kim thit b trong mng LAN ................................................................................ 12 Module thc hin chc nng chat text ........................................................................................ 13 Module tnh ton khong cch t thit b ti b pht WiFi...................................................... 14 Module thc hin chc nng truyn/nhn file ........................................................................... 18 TRIN KHAI THC HIN ............................................................................................................ 19 Module tm kim cc thit b c trong mng LAN ..................................................................... 19 Cc loi bn tin thng bo truyn gia cc thit b ................................................................... 21 Thc hin chc nng tr chuyn bng vn bn (chat text) ....................................................... 22 Thc hin tnh ton khong cch thit b ti b pht sng WiFi ............................................. 22 Thc hin chc nng truyn v nhn file thng qua socket...................................................... 22 Truyn v nhn file s dng WiFi P2P ....................................................................................... 23 KT QU V NH GI .......................................................................................................... 24 1

LI GII THIU
Khi i sng c nng cao cng vi khoa hc k thut pht trin, nhu cu gii tr cng dng ln. Cc loi hnh gii tr khng ngng gia tng v ngy cng phong ph, a dng vi mt lot ng dng nh: nghe nhc, xem phim, mng x hi, chat Trong bi cnh Internet bng n cng vi s xut hin ca nhng thit b di ng nh: in thoi Smart Phone, my tnh bng iu ny em li nhng li ch khng th ph nhn nh kt ni hng triu ngi ch vi kt ni mng, trao i thng tin nhanh chng, tin li, lin lc vi i tc trong cng vic Con ngi ang ngy cng c nhu cu giao tip khng ch trc tip m cn ngay c trn mng. Vi s pht trin vt bc v nhng li ch ca n, c th ni hin nay cc thit b di ng Android ang c mt khp ni t nhng vn phng cho n khu gii tr. Xut pht t tng , nhm em la chn ti thit k mt ng dng Chat trn thit b Android. ng dng ny ra i nhm phc v cho nhng nhn vin vn phng c nhu cu trao i vi nhau trong cng vic v gii tr. Vi thit b di ng v truy cp vo cng mt mng Wifi, ngi dng c th trao i vi nhau d dng, nhanh chng v thun li. Trong ng dng, cc phng chat c phn chia gip ngi dng d dng la chn cng vi chc nng chat thoi rt ngn thi gian trao i. C th ni ng dng p ng c nhng yu cu c bn ca mt ng dng Chat trn thit b di ng. Qua vic thc hin ng dng ny, chng em hiu thm kin thc v mng, thit b Android v p dng c kin thc lp trnh hc. Do trnh kin thc v thi gian hn ch nn ng dng vn cn nhiu thiu st. V vy nhm em rt mong nhn c kin ng gp ca thy gio v cc bn chng em hon thin kin thc hn. Chng em xin chn thnh cm n thy T.S Trn Minh Trung nhit tnh hng dn nhm em hon thnh ti ny!

I.

GII THIU TI V LP K HOCH THC HIN


1. Gii thiu ti ti nhm chng em la chn l: Pht trin phn mm chat trong mng LAN qua WiFi chy trn in thoi Android. Chc nng chnh ca phn mm ny l gi tin nhn tr chuyn dng vn bn gia cc thit b Android kt ni vi nhau trong mt mng cc b thng qua WiFi. Ngi dng s dng phn mm ny c th tm kim c cc ngi dng khc cng ang s dng phn mm ny trong mng LAN, hin th danh sch cc phng chat (chat room) do mnh cng nh cc ngi dng khc to ra. Ngi dng tham gia vo cc phng chat tr chuyn vi cc ngi dng khc. Ngoi chc nng chnh l gi tin nhn tr chuyn dng vn bn, phn mm cn c cc chc nng khc nh chia s file gia cc ngi dng vi nhau, tr chuyn bng li ni (voice chat), tnh ton gn ng khong cch t thit b ca ngi dng ti b pht sng WiFi. 2. Lp k hoch thc hin Di y l bn k hoch thc hin project m nhm ra:

Hnh 1: Bng k hoch thc hin project

II.

PHN TCH YU CU V PHN CNG NHIM V


1. Yu cu chc nng ca phn mm a. Chc nng kt ni Cc thit b yu cu phi c kt ni vo cng mt mng LAN ca mt WiFi access point Ngi dng phi kt ni vo mng LAN trc khi s dng c cc chc nng khc
3

b. To, qun l v tham gia phng chat (chat room) Cho php to cc phng chat mi ngi c th tham gia vo Ngi to phng c th xa phng m mnh to Hin th danh sch cc phng hin c (do mnh to v do cc thnh vin khc to) trong mng T ng cp nht danh sch phng chat theo nh k thi gian. Ngi dng cng c th trc tip ra yu cu cp nht danh sch phng. Ngi dng c th tham gia v ri khi phng (do mnh hoc do thnh vin khc to) theo mun c. Qun l danh sch thnh vin Sau khi kt ni vo mng, ngi dng c th xem danh sch cc thnh vin ang cng s dng phn mm ny trong mng Khi tham gia vo mt phng chat, ngi dng c th xem danh sch cc thnh vin khc ang trong cng phng vi mnh d. Gi v nhn tin nhn chat dng text T danh sch thnh vin, ngi dng bm chn mt thnh vin bt k bt u thc hin lt chat vi thnh vin Hoc t danh sch phng, ngi dng chn mt phng m mnh mun tham gia bt u thc hin lt chat trong phng T giao din chng trnh, ngi dng nhp ni dung tin nhn, n nt Gi gi ti cc thnh vin ang chat vi mnh e. Chc nng chat voice c thc hin gia 2 ngi vi nhau Ngi dng chn mt thnh vin bt k gi yu cu thc hin lt chat voice ti thnh vin . Nu pha bn kia chp nhn yu cu th phin chat c bt u. f. Chc nng gi/nhn file Cho php gi v nhn file trong khi ang chat Ngi dng nhn biu tng nt Gi file trn giao din, chn file mun gi. Nhng thnh vin khc c th chn nhn hoc khng nhn file. Nu chp nhn th qu trnh truyn file mi c bt u.
4

g. Chc nng xc nh khong cch gia cc thit b Da vo cng tn hiu sng WiFi m thit b thu c, phn mm c th tnh ton c khong cch gn ng t thit b ca ngi dng n cc access point trong khng gian xung quanh T mc tiu l a ra cng thc tnh khong cch gn ng gia cc thnh vin trong mng vi nhau. 2. Yu cu phi chc nng ca phn mm Phn mm chy trn cc thit b in thoi, my tnh bng s dng h iu hnh Android phin bn 2.3 tr ln Thit lp kt ni gia cc thit b nhanh chng, kt ni n nh trong qu trnh s dng Phn mm d s dng: giao din trc quan, ph hp vi thit b di ng, ngi s dng c th di chuyn gia cc tc v mt cch n gin.

3. Phn chia cng vic cho cc thnh vin Qua nhng phn tch v chc nng nh trn, nhm chng em phn chia nhim v thc hin cho tng thnh vin trong nhm nh sau: Thnh Vin Nguyn Th Mnh Nhim v Qun l project, phn chia cng vic Phn tch chc nng Thit k giao din Lp trnh cc chc nng Client Server v chc nng chat vn bn, truyn file qua Socket Lp trnh chc nng qun l danh sch phng chat v danh sch thnh vin trong mng Nguyn Duy Khnh Phn tch chc nng Lp trnh phn truyn file qua WiFi P2P Lp trnh module tm kim thit b trong mng Lp trnh chc nng xc nh khong cch gia cc thit b Nguyn Vn Hng Lp bng k hoch thi gian thc hin d n Phn tch chc nng Phn tch v m t kch bn kt ni v trao i
5

d liu gia cc thit b trong khi chat. Lp trnh chc nng ca server Nguyn B Nguyn Phn tch chc nng Nghin cu l thuyt v a ra phng php l thuyt tnh khong cch gn ng t thit b n cc access point. Lp trnh chc nng tnh ton khong cch

III. GII THIU V LP TRNH NG DNG ANDROID


1. H iu hnh Android Android l h iu hnh da trn nn tng Linux c thit k dnh cho cc thit b di ng nh in thoi thng minh (smartphone), my tnh bng (tablet), Hin nay, Android c h tr, pht trin bi Google v Lin minh thit b cm tay m (Open Handset Alliance). Android c m ngun m v Google pht hnh m ngun theo Giy php Apache. m ngun m cng vi mt giy php khng c nhiu rng buc cho php cc nh pht trin thit b, mng di ng v cc lp trnh vin nhit huyt c iu chnh v phn phi Android mt cch t do. Ngoi ra, Android cn c mt cng ng lp trnh vin ng o chuyn vit cc ng dng m rng chc nng ca thit b, bng mt loi ngn ng lp trnh Java c sa i. Nhng yu t ny gip Android tr thnh nn tng in thoi thng minh ph bin nht th gii, chim 81.0% th trng h iu hnh smartphone tnh n qu 3 nm 2013 (theo s liu ca IDC). Hnh di y m t kin trc tng quan ca h iu hnh Android:

Hnh 2: Kin trc h iu hnh Android 2. Lp trnh ng dng trn Android to ng dng cho h iu hnh Android, ta c nhiu phng php khc nhau la chn. Trong , phng php chnh do Google xut v h tr l s dng Android SDK v ngn ng lp trnh Java. Android SDK l b cng c pht trin phn mm ca Android, do Google cung cp. Android SDK cung cp th vin API v cc cng c cho lp trnh vin pht trin, g li v kim th phn mm cho Android. Ngn ng c s dng chnh lp trnh ng dng cho Android l ngn ng Java. Tt c cc ng dng trn nn tng Android trc khi chy u c bin dch thnh mt dng m trung gian c tn l Dalvik bytecode. M trung gian ny sau s c thc thi qua my o Dalvik Virtual Machine. Th vin API do Android SDK c vit bng ngn ng Java. Lp trnh vin s dng cc hm trong API vit m ngun. 3. Lp trnh ng dng mng Android Framework cung cp cho ngi lp trnh nhiu th vin h tr cho vic lp trnh cc ng dng lin quan ti mng. - java.net: l package cha cc class h tr cho lp trnh mng ca Java API.
7

org.apache: th vin do Apache Software Foundation pht trin v cung cp, tp trung ch yu vo HTTP v cc giao thc lin quan. android.net: th vin ca Android Framework

IV. THIT K CHNG TRNH


1. Thit k giao din Di y l mt s hnh phc ha thit k giao din ca chng trnh:

Hnh 3: Mn hnh chnh

Hnh 4: Mn hnh danh sch phng chat

Hnh 5: Mn hnh danh sch thnh vin

Hnh 6: Mn hnh chat vn bn

2. Truyn d liu gia cc thit b. 2.1. Socket. - Socket l mt lp nm gia lp Application v lp presentation trong m hnh 7 lp OSI. N cho php phn pht d liu ti cc ng dng vi 1 cng xc nh. T hp gia a ch IP v s cng to thnh a ch SOCKET.

Mi thit ng dng s c gn vi 1 cng nht nh. ng dng s nghe ngng trn cng , khi c yu cu kt ni ti, nu cng rnh th s chp nhn 1 kt ni. Kt ni s c thit lp gia 2 thit b, nu tn ti kt ni gia 2 cng ny, th kt ni n sau s khng c kt ni.

2.2.Truyn d liu.
9

truyn d liu, chng ta s dng socket. Khi ng dng Chat c bt nn, n s to ra 1 socket ti mt port c s hiu c nh c chn trc. Mi khi c yu cu kt ni ti, phn mm s chp nhn kt ni, sau khi kt ni thnh cng, phn mm s t ng chuyn kt ni sang 1 cng khc (cng c sn) nhng li cng c nh ca server cho vic nghe kt ni t cc thit b khc. 2.3. Kch bn trao i bn tin gia cc thit b trong mng Sau khi to server lng nghe v chp nhn cc yu cu kt ni t cc my khc, ta cn quy nh cc bc cn phi thc hin khi trao i d liu gia cc thit b, cng nh nh dng cc loi bn tin cho tng mc ch thng tin khc nhau thun tin cho qu trnh truyn t v phn tch thng tin. Cc mc di y trnh by cc bc truyn/nhn thng tin gia cc my, phn chia theo tng chc nng c th. a. Tm kim v qun l danh sch thnh vin trong mng cng s dng phn mm - S thut ton.

Hnh 7:Thut ton tm kim cc thit b cng s dng phn mm trong mng Khi bt u m ng dng, n s t ng qut cc a ch IP trong mng, sau khi qut xong, phn mm s gi bn tin thng bo n tt c cc my. Nu my no c ci t phn mm v phn mm ang chy, n s gi li bn tin phn hi. Da vo bn tin phn hi, cc my s cp nht li danh sch thnh vin online (Sn sng chat). Trong khi chy ng dng, phn mm s t ng gi bn tin thng bo n tt c cc my c trong list, cc my nhn c bn tin thng bo s gi li
10

phn hi. Khi nhn c phn hi, phn mm s t ng cp nht li danh sch.

Hnh 8: Thut ton cp nht danh sch thnh vin b. To, qun l v tham gia phng chat Lp phng Chat. - Ngi lp phng chat s gi bn tin thng bo v phng chat mi ti tt c cc my trong list. Cc my nhn c s hin th phng chat trong list. - Ngi dng gi bn tin tm phng chat. Nhng my trong mng c phng chat s phn hi li. Ngi dng s cp nht danh sch phng chat da vo cc bn tin phn hi Tham gia phng chat. - Mt my c kh nng tham gia nhiu phng chat. Mi phng chat s c 1 ID xc nh. Khi tham gia phng chat, ngi dng s gi yu cu ti ch phng chat. Ch phng s lu li a ch ngi mi vo v thm ngi v danh sch thnh vin ca phng. c. Tr chuyn bng tin nhn vn bn Khi ngi dng gi tin nhn: - Ngi dng khng phi l ch phng s gi tin nhn cho ch phng chat. Ch phng chat nhn c tin nhn s truyn li cho cc thnh vin cn li.

11

Ngi dng l ch phng s gi tin nhn cho tt c cc thnh vin trong phng. d. Gi/nhn file gia cc thnh vin - Ngi mun gi file gi mt tin nhn di dng tin nhn tr chuyn vn bn thng thng vi mt thuc tnh km theo ch ra l tin nhn mi thnh vin khc nhn file. ng thi s m thm mt server port khc lng nghe cc yu cu truyn file t cc my khc. - Cc thnh vin cn li khi nhn c tin nhn c thuc tnh cho bit l tin nhn mi nhn file, nu mun ti file v my mnh th s to socket kt ni ti server port pha ngi gi dnh phc v cho vic truyn file. Sau khi kt ni thnh cng, qu trnh truyn/nhn file s c din ra gia 2 thit b. 3. Phn chia cc module chc nng thc hin cc yu cu chc nng ra, phn mm c thit k v trin khai thnh cc module chc nng chnh nh sau: Module thc hin chc nng tm kim thit b c phn mm ang hot ng trong cng mng LAN. Module thc hin chc nng chat text Module thc hin tnh ton khong cch t thit b Android ti im pht sng ca WiFi Access Point. Module thc hin chc nng truyn/nhn file

Cc mc tip theo s trnh by chi tit hn v tng module. 4. Module tm kim thit b trong mng LAN Khi ngi dng bt ng dng ln, module ny c chc nng tm kim cc thit b c trong cng mng LAN nhm gi bn tin thng bo n cc thit b khc v s c mt ca n. Thut ton ca module:

12

Hnh 9. Thut ton tm kim cc thit b c trong mng LAN

5. Module thc hin chc nng chat text Module ny thc hin cc chc nng sau: Lp phng chat Qun l danh sch phng chat Qun l danh sch cc thnh vin tham gia vo phng chat
13

Gi tin nhn tr chuyn dng text gia cc thnh vin S dng k thut lp trnh mng bng Socket trong Java, ta thc hin truyn, nhn cc bn tin mang thng tin thng bo v ni dung tin nhn tr chuyn gia cc thit b trong mng. Cc bc c bn to v tham gia mt phng chat:

Hnh 10: Cc bc to v tham gia phng chat ca ch phng v cc thnh vin khc (khch) Cc bc cc thnh vin trong mt phng chat gi tin nhn tr chuyn vi nhau c m t trong mc 2.3.c. 6. Module tnh ton khong cch t thit b ti b pht WiFi a. Gii thiu Vic nh v thit b smartphone trong khu vc thng qua wifi ca access point gip cho vic qun l mi ngi trong mt phm vi nh d dng hn vi chi ph thp Trong tng lai, khi m h thng mng wifi pht trin mnh m v c quy hoch r rng, chng em tin rng kh nng nh v ca smartphone thng qua

14

access point wifi s cng pht trin mnh, gia tng s lng ng dng tin ch v c nhng u im vt tri so vi h thng GPS b. C s l thuyt Khi truyn sng v tuyn trong khng gian, cng tn hiu nhn c ti my thu s b suy hao bi mi trng truyn sng, khong cch truyn v tn s truyn sng Theo nghin cu ta c c cng thc suy hao ca tn hiu v tuyn trong khng gian l: PL (dbm) = 32,44 + 10nlogf + 10nlogD + D (1) Trong f : tn s sng v tuyn, n v GHz( vi sng wifi f = 2,4 GHZ) D: khong cch truyn sng, n v m : h s suy hao mi trng, n v dbm/m ( ty thuc vo iu kin mi trng nh ma bo, khi bi.. vi mi trng ang xt trong vn phng, trng hc th 0 ) n: h s suy hao ng truyn( ph thuc mi trng) Mi trng H s suy hao n Khng gian t do 2 th 2,7 3,5 Trong nh nhn thng 1,6 1,8 Trong nh c vt cn 4-6 Bng 1: H s suy hao ca sng v tuyn theo mi trng Cng tn hiu nhn c ti my thu ( y l smartphone android ) c tnh theo cng thc: RSSI (dbm) = Ptx + Gtx PL + Grx (2) Trong : - RSSI : Cng tn hiu nhn c (Received signal strength indication ) - Ptx : Cng sut pht ca access point, n v dbm - Gtx : Tng ch ca access point, n v dbm - Grx : Tng ch ca my thu ( smartphone), n v dbm - PL : Path Loss, suy hao ng truyn trong khng gian y Ptx, Gtx, Grx l cc tham s c nh ph thuc vo tng loi access point v smartphone. Do c th thy cng tn hiu RSSI nhn c ca smartphone ph thuc ch yu vo khong cch ca thit b vi my thu access point T (1) v (2) ta c cng thc :
15

RSSI (dbm) = Ptx +Gtx + Grx 32,44 10nlogf 10nlogD n gin ta c th vit li l: RSSI (dbm) = A + KlogD (3) Trong A v K l hng s, ph thuc vo loi thit b v mi trng truyn sng, ta c th o c A v K bng kt qu thc nghim T (3) ta c th suy ra khong cch gia in thoi v access point: D = 10(-A+RSSI)/K (m) c. Cc vn gy nhiu Cc vn gy nhiu lm nh hng n kt qu o : shadowing v fading - Shadowing : hin tng tn hiu thu c b suy gim do c s che khut ca vt cn

Bng 2: Cng tn hiu suy gim qua cc cht liu Fading : Cng tn hiu thu dao ng nhanh khi MS dch chuyn mt khong cch nh, nguyn nhn gy pha inh nhanh l do tn hiu thu l tng hp ca nhiu thnh phn n t nhiu hng khc nhau vi cng , pha hoc tn s khc nhau, ngu nhin theo thi gian

16

Hnh 11: Hin tng fading, multipath

Hnh 12: M hnh suy hao fading s dng Qua biu trn ta thy cc nh hng do shadowing v fading lm cho thng s RSSI thu c c sai lch kh ln 10dbm

17

Do gim sai s khuyn ngh khong cch thc hin tnh ton nn nh hn hoc bng 30m v o trong tm nhn thng khng c vt cn d. Kt qu thc nghim V cc thng s Ptx, Gtx, Grx ca acess point v mobile khng th xc nh trc tip bng cc cng c c sn trn mobile, hn na nh sn xut cng khng cng b cc thng tin trn ca thit b v th chng em xin php c ti u cc thng s trn thng qua cc php o thc nghim Thc nghim qu trnh o vi mi trng trong phng khng c vt cn, thit b s dng l Access point: tenda w311r, smartphone: lenovo A390 Khong cch Ln o 1 Ln o 2 Ln o 3 Gi tr s D(m) RSSI( dbm) RSSI (dbm) RSSI(dbm) dng (dbm) 1 -36 -36 -35 -35 2 -42 -43 -42 -42 3 -45 -46 -46 -46 Bng 3: Kt qu thc nghim o cng RSSI T cc kt qu o ng vi khong cch 1m v 2m ta c h phng trnh l: RSSI(1m)= A + Klog1 RSSI(2m)= A + Klog2 Suy ra A = -36 K = -20 Thay li A= -36, K = -20, vo cng thc vi D= 3m ta c: RSSI= -45,54 -46 dbm ( tha mn) Vy ta c cng thc tnh khong cch t smartphone Lenovo A390 ti acess point tenda w311r l: RSSI(dbm)= -36 - 20logD Suy ra

D = 10-(RSSI + 36)/20 m
7. Module thc hin chc nng truyn/nhn file 7.1. Truyn file bng Socket Khi ngi dng ang tr chuyn vi cc ngi dng khc bng tin nhn vn bn, ngi dng c th la chn mt tp tin bt k trong b nh ca thit b v gi li mi nhn file ti cc thnh vin khc ang tham gia cng phng chat vi mnh. Module chc nng ny m nhn thc hin qu trnh gi cc bn tin thng bo lin quan n vic gi file v vic truyn, nhn file gia cc thit b.
18

Vic gi, nhn cc bn tin thng bo v vic truyn, nhn d liu ca file vn c thc hin da trn k thut lp trnh Socket trong Java. y, ngoi server phc v cho vic truyn nhn cc bn tin thng bo v tin nhn vn bn, ta cn to v duy tr mt Server Socket trn thit b mun gi file ng vai tr l server phc v cc my c nhu cu nhn file. 7.2. Truyn file s dng WiFi P2P WiFi P2P (WiFi Direct) l mt tnh nng mi c h tr trn Android t phin bn Android 4.0 (API level 14) vi iu kin thit b c phn cng h tr. WiFi P2P cho php cc thit b kt ni vi nhau trc tip qua WiFi m khng cn thng qua mt access point trung gian. S dng WiFi P2P, ta c th tm kim v kt ni, cng nh truyn d liu gia cc thit b c h tr tnh nng ny vi nhau.

V.

TRIN KHAI THC HIN


1. Module tm kim cc thit b c trong mng LAN

Hnh 13. Thut ton tm kim cc thit b c trong mng LAN


19

Bc 1: Tm di a ch tm kim: - Xc nh a ch IP ca mng con. - Xc nh s bit a ch dng cho Net ID v Host ID. - Xc nh di a ch tm kim l di a ch tng ng vi Host ID. Bc 2: Xt tng a ch IP trong di tm kim, thc hin ln lt cc phng thc xc nh thit b c trong mng tng ng vi a ch IP Bc 2.1. c trong file ARP ln 1: - Xc nh c a ch ca Router bng cch c trong file ARP c lu ng dn /proc/net/arp. - Nu tm thy a ch MAC trong bng ARP th thm i tng vi a ch IP ny vo. Bc 2.2. Ping Ping n a ch IP ny, nu nhn c phn hi trc khi timeout th thm i tng vi a ch IP ny vo. Bc 2.3. c trong file ARP ln 2: - c trong file ARP c lu ng dn /proc/net/arp. - Nu tm thy a ch MAC trong bng ARP th thm i tng vi a ch IP ny vo. Bc 2.4. Dng phng thc TCP Kt ni TCP qua cc cng 139, 445, 22 v 80, nu nhn c phn hi kt ni thnh cng th thm i tng vi a ch IP ny vo. Trong : - Port 139 v 445 c s dng truy cp vo ti nguyn share trn my tnh khc cng trong mng Lan theo giao thc BIOS v TCP 139: NetBIOS Session Service 445: Microsoft-DS SMB file sharing

20

- Port 22: Secure Shell (SSH) used for secure logins, file transfers (scp, sftp) and port forwarding - Port 80: HTTP Bc 2.5. c trong file ARP ln 3: - c trong file ARP c lu ng dn /proc/net/arp. - Nu tm thy a ch MAC trong bng ARP th thm i tng vi a ch IP ny vo. Bc 3: Tip tc thc hin nh vy n ht di tm kim ta c mt danh sch cc i tng vi a ch IP ang trong cng mng LAN Wifi. 2. Cc loi bn tin thng bo truyn gia cc thit b cc thit b trao i bn tin mang ni dung cc li yu cu cng nh phn hi cho cc yu cu, cc thng tin thng bo v trng thi, cc bn tin trao i gia cc thit b c chia lm cc loi sau: HELLO_WORLD: l bn tin m thit b gi ti tt c cc thit b khc trong mng thng bo s c mt ca mnh trong mng khi mi tham gia vo mng ADV_SELF: bn tin mang thng tin v c nhn mnh trong mng. Cc thng tin bao gm tn, danh sch cc phng chat do mnh lp, khong cch t v tr ca mnh ti cc b pht sng WiFi gn ADV_ROOM: bn tin cha danh sch cc phng chat do mnh lp, c gi ti cc ngi dng khc thng bo v cc phng do mnh qun l ADV_NEW_ROOM: bn tin cha thng tin v 1 phng chat va c to. Khi ngi dng to ra mt phng chat mi, ngi dng s gi bn tin ny ti tt c cc ngi dng khc thng bo v mt phng mi c to. ADV_FILE: bn tin cha thng tin v tn file v kch thc file m ta mun truyn cho cc thnh vin khc trong phng chat. REQ_UPDATE_ROOM: li yu cu cp nht danh sch phng chat mi nht, c gi cho tt c cc ngi dng trong mng cp nht danh sch phng chat ang c trong mng.

21

REQ_JOIN_ROOM: l li yu cu tham gia vo mt phng chat m ta gi ti ngi qun l phng thng bo v vic mnh mun tham gia vo phng chat . ALLOW_JOIN_ROOM: bn tin m ngi qun l phng chat phn hi li cho bn tin REQ_JOIN_ROOM ca mt thnh vin khc gi ti thng bo cho thnh vin c php tham gia vo phng chat. TEXT_MESSAGE: l bn tin cha ni dung tin nhn tr chuyn vn bn gia cc thnh vin trong phng chat vi nhau. 3. Thc hin chc nng tr chuyn bng vn bn (chat text) Module chc nng chat text c trin khai thc hin da trn thut ton v phng thc c m tra trong mc 2.3, phn IV. Khi trin khai s dng cc loi bn tin c m t trong mc 2 trn. 4. Thc hin tnh ton khong cch thit b ti b pht sng WiFi - T nghin cu l thuyt v o thc nghim, ta xy dng c cng thc tnh khong cch t thit b n Access Point nh sau: D = 10^[-(RSSI + 36)/20] m - Tm danh sch cc Access Point, tng ng vi mi Access Point ta thu c cng tn hiu thu RSSI. p dng cng thc trn ta tnh ton c khong cch t thit b n cc Access Point xung quanh n. - Theo mt chu k nh sn, thit b s gi bn tin mang thng tin v khong cch gia n vi cc Access Point cho cc thit b khc. - Thng tin v khong cch t mt thit b ti cc b pht sng c bao gm trong bn tin ADV_SEFL m thit b gi ti cho cc my khc. Cc my khc khi nhn c bn tin ny s phn tch v c c kt qu. 5. Thc hin chc nng truyn v nhn file thng qua socket Khi mt my mun truyn file cho cc my khc trong mng, my s ng vai tr l server. Cc my trong mng mun nhn c file th s kt ni vi my server trong vai tr client. Server s x l yu cu ca tng client trong tng thread ring bit. Di y l s flow chart m t cc bc x l ca chc nng ny:

22

Hnh 14: Cc bc x l ca File Server

Hnh 15: Cc bc x l ca client

Cc class thc hin chc nng server v client tng ng l FileServerThread v FileClient. 6. Truyn v nhn file s dng WiFi P2P Trc ht, s dng tnh nng WiFi P2P, ta cn thay i yu cu phin bn SDK ti thiu t phin bn10 (Android 2.3.3) ln phin bn 14 (Android 4.0). Cc hm API do Android cung cp gip vic thc hin kt ni 2 thit b d dng hn v khng yu cu ngi lp trnh phi vit nhiu m ngun. Chc nng ny c trin khai thc hin da trn hng dn trn website Android Developer (www.developer.android.com/guide/topics/connectivity/wifip2p.html).

23

VI. KT QU V NH GI
Sau khi hon thnh cc bc phn tch, thit k, lp trnh v pht trin ng dng, nhm tin hnh chy th ng dng kim nghim v sa li nu pht sinh. Qua mt thi gian chy th v kim nghim, chng em nhn thy kt qu ca ng dng nh sau: - V c bn, thc hin c cc yu cu chc nng ra. Hot ng chnh xc Phn mm chy nhanh, gp t li. Phn mm c giao din d s dng v chim t ti nguyn ca thit b.

Trn y l kt qu t c trong thi gian thc hin ti ny. Tuy t c mt s mc tiu ban u nhng phn mm cn mt s im cha hon thin nh : - Cha c chc nng chat voice Cha lu c lch s hot ng ca ngi dng, ca phng chat Vic tnh ton khong cch gi tr ln cn b sai s cao. Trong khi hot ng cn c th gp mt s bug nh tuy nhin khng nh hng ln ti qu trnh s dng ca ngi dng. Trong thi gian tip theo, mc tiu ca chng em l tip tc pht trin thm vi cc tnh nng : Thm chc nng chat voice. Lu li lch s cc phng chat, cc cuc i thoi. Ci tin giao din thm sinh ng, bt mt ngi dng. Thm cc icon biu cm sinh ng trong khi chat text. Tng chnh xc ca thut ton tnh ton khong cch. Ti u thut ton, ci thin tc khi ng chng trnh Ti u m ngun ca phn mm. Ngoi nhng kt qu t c ca phn mm, qua vic thc hin project ny, chng em thu nhn v cng c c thm nhiu kin thc v: mng my tnh, lp trnh mng, lp trnh Android. Trn y l nhng kt qu t c, nh gi ca chng em v kt qu v mc tiu pht trin tip theo cho ti. Qua vic thc hin ti ny, chng
24

em t c nhiu kt qu hu ch: nng cao v cng c kin thc v mng my tnh; tm hiu v lp trnh ng dng cho h iu hnh Android; kinh nghim lm vic nhm v quy trnh pht trin mt sn phm phn mm. Cui cng, chng em xin dnh li cm n chn thnh n thy gio Tin S Trn Minh Trung tn tnh hng dn nhm em trong sut thi gian thc hin ti t c kt qu ny.

25

VII. TI LIU THAM KHO


[1] Slide bi ging Qun tr mng TCP/IP, thy Trn Minh Trung. [2] TCP/IP Network Administration, OReilly, Second Edition 1997. [3] TCP/IP Network Application Guide, SunSoft. [4] TCP/IP Tutorial and Technical Overview, IBM RedBooks. [5] http://developer.android.com/index.html

26

You might also like