410 likes | 561 Views
Bluetooth. Šta je Bluetooth ?. Bluetooth je sta ndard za bežični prenos podataka i govora, kratkog dometa, namenjen za malu potrošnju i jeftine bežične komunikacije koje se baziraju na radio tehnologiji.
E N D
Šta je Bluetooth? • Bluetooth je standard za bežični prenos podataka i govora, kratkog dometa, namenjen za malu potrošnju i jeftine bežične komunikacije koje se baziraju na radio tehnologiji. • Bluetooth specifikacija je sada postala IEEE standard pod nazivom 802.15 WPAN (Wireless Personal Area Network). • Veliki broj kompanija kakve su Ericsson, Intel, Nokia, Toshiba, Microsoft, Motorola, i druge, članovi su Bluetooth Special Interest Group (SIG) koja prvenstveno ima za cilj da radi na razvoju i evoluciji ovog standarda, kao i njegovom masovnom uvodjenju na tržište.
Šta se definiše Bluetooth-om? • Bluetooth specifikacijom se definiše kako se Bluetooh uredjaji, sa namerom da komuniciraju, medjusobno grupišu. • Recimo, pri tome, da jedna BT-WPAN (Bluetooth Wireless Personal Area Network) se sastoji od piconet-a. • Svaki piconet predstavlja grupa (cluster) od osam Bluetooth uredjaja. Jedan od uredjaja je master (gospodar) a ostali su slave-ovi (sluge). • Dva piconet-a se mogu medjusobno povezati preko zajedničkog Bluetooth uredjaja (gateway ili bridge) formirajući scatternet. • Medjusobno povezani piconet-i u, okviru scatternet-a, formiraju backbone (kičmu) za MANET (Mobile Area Network). • MANET omogućava da dva uredjaja koji su medjusobno van dometa pokrivanja mogu da razmenjuju podatke preko nekoliko skokova (hops) u scatternet-u.
Na šta se odnose tekuće implementacije Bluetooth-a? • Tekuće implementacije Bluetooth-a se prvenstveno odnose na jednostavne veze tipa tačka-ka-tački (point-to-point) izmedju dva uredjaja, koji se medjusobno nalaze u dometu. • Bluetooth specifikacijom ne definišu se samo povezivanja tipa tačka-ka-taki, nego i konekcije pomoću kojih se ostvaruju složene mrežne topologije. • Cilj je da se formiraju Bluetooth scatternet-ovi koji će omogućiti efektivne i efikasne komunikacije preko većeg broja preskoka sa prihvatljivim vremenskim odzivom i malom (mikro) potrošnjom.
Bluetooth protokol stack • Bluetooth specifikacija deli Bluetooth protokol stack na tri logičke grupe: • Transport Protocol grupa, • Middleware Protocol grupa, i • Application grupa.
Protokoli transport grupe • Protokoli u okviru Transport grupe omogućavaju da Bluetooth uredjaji: • medjusobno se lociraju • upravljaju fizičkim i logičkim vezama radi uspešnog povezivanja sa protokolima viših nivoa i aplikacija. • Transport Protocol grupa ne koincidira sa transportnim-nivoom OSI modela. • Aktivnosti u okviru grupe više odgovaraju aktivnostima na nivou-veze (data-link level) i fizičkom nivou OSI modela.
Šta spada u okviru Transport Protocol grupe? • U okviru Transport Protocol grupe spadaju sledeći nivoi i interfejsi: • Radio (RF) • Osnovni opseg (Baseband) • Upravljač vezom (Link Manager) • Logička kontrola veze i adaptacija (Logical Link Control & Adaptation - L2CAP) • Interfejs host kontrolera (Host Controller Interface - HCI) • Nabrojani protokoli podržavaju kako sinhroni tako i asinhroni prenos, pri čemu su svi neophodni kada se govori o podršci komunikacije izmedju Bluetooth uredjaja.
Protokoli Middleware grupe • Middleware Protocol grupa sadrži: • protokole razvijenih od strane kompanija iz Bluetooth SIG-grupe, • protokole razvijenih za potrebe industrijskih standarda, • protokole razvijenih od strane ostalih (third-party) kompanija • Ovi protokoli omogućavaju da postojeće i nove aplikacije budu operativne preko Bluetooth veza.
Šta uključuju protokoli razvijeni za industrijske standarde? • Protokoli razvijeni za industrijske standarde uključuju: • Protokole tipa tačka-ka-tački (Point-to-Point Protocol - PPP) • Internet protokol (Internet Protocol - IP) • Transmisiono upravljački protokol (Transmission Control Protocol - TCP) • Bežični aplikacioni protokol (Wireless Application Protocol - WAP) • Protokol za razmenu objekata (Object Exchange Protocol - OBEX)
Šta uključuju protokoli razvijeni od strane SIG • Protokoli razvijeni od strane SIG grupe uključuju: • Emulator serijskog porta (RFCOM) - obezbedjuje usluge da se legalne aplikacije bez problema izvršavaju, koristeći pri tome usluge protokola iz Bluetooth-ove Transport-ne grupe • Paketno bazirane TCS (Telephone Control Signaling) protokole koji se koriste za upravljanje telefonskim operacijama • SDP (Service Discovery Protocol) koji omogućava da uredjaji medjusobno razmenjuju informaciju koja se odnosi na to koji od uredjaja kojih od servisa može da pruži.
Interoperabilnost sa postojećim protokolima i aplikacijama • Korišćenje već postojeće razvijenih protokola i "glatko" sprezanje sa postojećim aplikacijama predstavljaju najveći izazov u razvoju Bluetooth aplikacija za SIG-ovu grupu komapanija. • Razlog je jednostavan: Što se veći broj aplikacija podržava od strane Bluetooth-a to je i masovnost korišćenja veća, a indirektno i profit od prodaje uredjaja veći.
Protokoli aplikacione grupe • Aplikacionu grupu čine aktuelne aplikacije koje koriste Bluetooth linkove. • Legalno razvijene aplikacije kao i specijalne aplikacije za potrebe Bluetooth-a.
Podnivoi u okviru transportne grupe • Podnivoi u okviru transportne grupe su: • Radio (Radio layer) • Osnovni opseg (Baseband layer) • Nivo Link Manager • L2CAP (Logical Link Control & Application) • HCI (Host Controller Interface)
Radio layer • Specifikacije Radio podnivoa prvenstveno se odnose na projektovanje Bluetooth primo/predajnika (transceiver)
Baseband layer • Definiše na koji način Bluetooth uredjaji pretražuju druge uredjaje i povezuju se sa njima. • Uloge master-a i slave-a, koje uredjaji mogu posedovati, kao i sekvence frekventnih skakanja koje koriste ovi uredjaji, definišu se na ovom nivou. • Sa ciljem da dele vazdušni interfejs (etar) uredjaji koriste TDD (Time Division Duplexing), i paketno baziranu pozivnu šemu (Packet Based Polling Scheme). • Master i slave komuniciraju samo preko unapred-odredjenih vremenskih slotova. • Na ovom nivou definisani su i tipovi paketa, procedure za procesiranje paketa, strategije za detekciju i korekciju grešaka, skremblovanje signala, šifrovanje, prenos paketa, i retransmisija.
Baseband layer – dva tipa komunikacionih veza • Nivo osnovnog opsega podržava dva tipa komunikacionih veza: • SCO (Synchronous Connection-Oriented) - karakteriše se periodičnom i jednoslotnom paketnom dodelom. Ovaj tip veze prvenstveno je namenjen za prenos signala govora jer se u ovom slučaju zahteva brži i konzistentni prenos podataka. Uredjaj koji ima izvedenu SCO vezu, ima rezervisane vremenske slotove za korišćenje. Njegovi paketi podataka tretiraju se kao prioritetni paketi i opslužuju se pre ACL paketa. • ACL (Asynchronous Connection Less) - uredjaj sa izvedenom ACL vezom predaje pakete promenljive dužine u trajanju od 1, 3, ili 5 vremenskih slotova.
Link Manager nivo • Link Manager implementira LMP (Link Manager Protocol), koji upravlja osobinama bežične veze izmedju uredjaja. • LMP upravlja: • dodelom propusnog opsega za prenos podataka, • rezervacijom propusnog opsega za prenos audio signala, • autorizovanošću (authentication), • odnosom izmedju uredjaja, • šifrovanjem podataka , • kontrolom potrošnje energije (a obzirom da se većina uredjaja napaja baterijski). • Kontrola potrošnje energije podrazumeva prelazak na režim rada smanjene potrošnje i odredjivanje nivoa snage zračenja predajnika sve sa ciljem da se produži životni vek baterije.
L2CAP nivo • Predstavlja interfejs izmedju protokola na višim nivoima i transportnim protokolima na nižem nivou. • L2CAP podržava multipleksiranje nekoliko protokola na višem nivou, kakvi su RFCOMM i SDP. • Ovo omogućava da nekoliko protokola i aplikacija dele bežični interfejs. • L2CAP je takodje odgovoran za segmentaciju paketa i reasembliranje, kao i održavanje servisa izmedju uredjaja.
HCI nivo • Definiše standardni interfejs kojim aplikacije na višem nivou mogu da pristupe nižiim nivoima u protokol stack-u. • Ovaj nivo nije obavezan deo specifikacije. • Njegova namena je da obezbedi interoperabilnost izmedju uredjaja kao i korišćenje postojećih protokola i aplikacija sa viših nivoa.
Kako radi Bluetooth uređaj • Bluetooth-ov primopredajnik je uredjaj koji koristi FHSS (Frequency-Happing Spread-Spectrum) tehniku rada u 2,4 GHz ISM (Industrial, Scientific, Medical) frekventnom opsegu. • Kod najvećeg broja zemalja dostupno je 79 kanala, a kod malog broja 23. • Nominalna širina propusnog opsega svakog kanala je 1 MHz. • Medjunarodnim regulativama (kakva je američka FCC deo 15247) omogućava se maksimalna predajna snaga na 1W, pri čemu se samo 75 od 79 kanala koristi na pseudoslučajni način za potrebe FHSS-a. • Uredjaj ne može raditi na dati kanal duže od 0,4 s u okviru perioda od 30 s.
Kako radi Bluetooth uređaj- ograničenja • Ograničenja (ili restrikcije) donešena su sa ciljem da se minimiziraju interferencije u ISM opsegu (band-u) koji se takodje koristi od strane: • uredjaja koji svoj rad baziraju na 802.11 b/g standardima • kućnih RF uredjaja • prenosivih telefona • mikrotalasnih ploči • Kada se povezuje sa drugim Bluetooth uredjajima, Bluetooth uredjaj u normalnom režimu rada menja frekvenciju 1600 puta u sekundi, sa rezidentnim vremenom od 625 s. • Kada se nalazi u režimu pretraživanja ili straničenja Bluetooth uredjaj skače 3200 puta u sekundi sa rezidentnim vremenom od 312,5 s.
Domet Bluetooth uređaja • Bluetooth primopredajnik koristi svih 79 kanala, i kod standardne predaje pseudoslučajno skače po svim kanalima brzinom od 1600 skokova u sekundi. • Domet predajnika je oko 10 m, mada ako se koriste osetljiviji ulazni pojačavači može da se poveća i do 100 m. • S obzirom da primopredajnik zauzima malu površinu na štampanoj ploči on se lako ugradjuje u fizičke uredjaje, čineći ga da bude pravi radio link koji može biti svuda prisutan.
Format paketa • Bluetooth specifikacija, za potrebe komunikacije izmedju uredjaja, koristi tehnike TDD i TDMA. • Jedan vremenski slot traje 625 s i odgovara paketu jedinične dužine. • Na Baseband nivou paket sadrži kôd-pristupa (access code), zaglavlje, (header) i informaciju za korisnika (payload)
Sadržaj polja u okviru formata paketa • Kôd-pristupa koji je obima 72 bita sadrži piconet adresu (da bi drugi piconet-ovi filtrirali poruku). • Zaglavlje sadrži upravljačke podatke o vezi, kodirane sa FEC-om (Forward Error Correcting) kôdom. • Ovaj kôd je repetitivni kôd što znači da se svaki bit u zaglavlju, radi postizanja visoke pouzdanosti u prenosu, predaje po tri puta. • Zaglavlje je obiično dužine 18 bitova, i sadrži adresu aktivnog člana za tekuće aktivni slave. • Informacija za korisnika može da sadrži od 0 do 2475 bitova podataka. • Informacija korisnika može biti zaštićena FEC kôdom za brzinu od 1/3 (slučaj kada se svaki bit prenosi po tri puta, ovaj slučaj važi za SCO paket), FEC kôdom brzine 2/3 (za slučaj kada se koristi Hamming-ov kôd, koji je u stanju da koriguje jednostruku, a detektuje sve dvostruke greške), i FEC kôd za brzinu 3/3 (slučaj kada ne postoji kôd za detekciju greške).
SCO veza i ACL veza • Kod SCO veza, paketi moraju biti dužine jedan vremenski slot. • Kod ACL veza, paketi mogu biti dužine 1, 3, ili 5 vremenskih slotova.
Bluetooth – polling paketni prenos • Bluetooth koristi polling- bazirani paketni prenos. • Sve komunikacije izmedju uredjaja ostvaruju se izmedju master-a i slave-a korišćenjem TDD, pri čemu ne postoji direktna komunikacija tipa slave-slave. • Master poziva (poll) svaki aktivni slaveda bi saznao da li on ima podatke za predaju. • Pri tome slave može da predaje samo kada je prozvan. • Takodje, slave mora da pošalje svoje podatke u vremenskom slotu koji neposredno sledi nakon onog slota kada je prozvan. • Master predaje samo u parno numerisanim slotovima, dok slave-ovi predaju samo u neparno numerisanim vremenskim slotovima. • U svakom vremenskom slotu koristi se različit frekventni kanal.
Piconet • Bluetooth specifikacija definiše piconet kao ad-hoc, spontano grupisanje (clustering) Bluetooth uredjaja. • Kod cluster-a jedan uredjaj ima ulogu master-a dok su ostali uredjaji tipa slave. • I pored toga što ne postoji ograničenje o ukupnom broju slave-ova u piconet-u, ipak maksimalno aktivan broj slave-ova po piconet-u, u datom trenutku, može biti sedam. • Ako postoji više od sedam slave-ova ostatak slave-ova mora biti u stanju parkiran (parked). • Maksimalan broj parkiranih slave-ova po piconet-u može biti 255, tj. oni koji se mogu direktno odrediti preko parked slave address kako je to definisano od SIG-a (Special Internet Group). Ipak, dozvoljeno je indirektno adresiranje parkiranih slave-ova preko njihove specifične Bluetooth device address-e, pri čemu se obezbedjuje pristup bilo kolikom broju parkiranih slave-ova. • Da bi se reaktivirao parkirani slave, master mora prvo da postavi tekuće aktivni slave u parkirano stanje.
Kako se postaje Master? • Kada se dva Bluetooth uredjaja nadju u komunikacionom dometu, oni će pokušati da medjusobno komuniciraju. • Ako piconet nije dostupan u tom trenutku, pokreće se proces pregovaranja. • Jedan od uredjaja postaje master (obično je to onaj uredjaj koji je inicirao komunikacije), a drugi će biti slave. • Svaki Bluetooth uredjaj u okviru piconet-a može funkcionisati kao master, slave, ili bridge. • Ove uloge su privremene i egzistiraju onoliko dugo dokle god postoji piconet.
Šta radi Master? • Master uredjaj je taj koji bira frekvencije, tj. sekvencu frekventnog skakanja, tajming (kada će se skok desiti), i redosled prozivke (polling) slave-ova. • Master takodje može nareditislave-u da komutira u različite režime rada koji se pre svega odnose na periode neaktivnosti. • Master i slave moraju da razmene informaciju o adresama i taktovanju (clock) sa ciljem da se slave pridruži piconet-u.
Šta je Global ID? • Svaki Bluetooth uredjaj ima svoj jedinstveni Global ID koji se koristi za kreiranje redosleda skakanja. • Master radio predaje svoj Global ID i ofset u frekventnom skakanju svakom od slave-ova u piconet-u. • Slave pri tome mora da bude u stanju da ponovo kreira (rekreira) sekvencu frekventnog-skakanjapiconet-u kome je pridružen. • Slave mora da zna koja se frekvencija u datom trenutku koristi, a takodje mora da sinhronzuje svoj takt sa taktom master-a. • Slavene podešava svoj sopstveni takt. • Umesto toga slave prati trag o veličini clock-drift-a izmedju njegovog takta i takta master-a, pa shodno tome podešava plan koji se odnosi na trenutak njegove predaje.
Funkcija bridge-a? • Bluetooth uredjaj tipa most (bridge) ili gateway se koristi da medjusobno poveže dva ili veći broj piconet-a u multi-hop komunikacioni sistem. • Most komunicira sa svim piconet-ovima koji su povezani na njega podešavajući samog sebe na takt piconet-a sa kojim u datom trenutku želi da komunicira. • Bridge može u datom trenutku da komunicira samo sa jednim piconet-om. • S obzirom da bridge uvodi dodatni sistemski overhead, iz razloga što mora da se prilagodjava čas na jedno čas na drugo taktovanje ako želi da komunicira sa piconet-ovima, on može da predstavlja potencijalno usko grlo sistema.
Kako se formira scatternet? • Uredjaj tipa bridgemože biti slave u svim piconet-ovima na koje je povezan, ili može biti master u jednom a slave u drugom. • Povezivanjem dva ili većeg broja piconet-ova preko uredjaja tipa bridge formira se Bluetooth scatternet.
Režimi rada bluetooth uređaja • Bluetooth uredjaj može biti u jednom od sledećih stanja: • pasivno (standby) • pretraživanje (inquiry) • stranično (page) • povezano (connected) • predaja (transmit) • zamrznuto (hold) • parkirano (park) • njuškanje (sniff)
Režim rada Stand-by • Uredjaj je u standby režimu rada kada je uključen na napajanje, ali još nije pridružen piconet-u.
Režim rada inquiry • Uređaj ulazi u stanje inquiry kada pošalje zahtev da bi pronašao druge uredjaje na koje može da se poveže.
Režim rada page • Master u postojećem piconet-u takodje može biti u page stanju. • U page stanje ulazi u trenutku kada pošalje poruku kojom pretražuje uredjaje koje on može pozvati (pokaniti) da se pridruže njegovom piconet-u.
Režim rada connected • Kada se ostvari uspešna komunikacija izmedju master-a i novog uredjaja, novi uredjaj preuzima ulogu slave-a, ulazi u stanje Connected, i prima aktivnu adresu. • Kada je povezan (connected), slave može da predaje samo kada je prozvan.
Režim rada transmit • U toku prenosa svojih podataka, slave ulazi u stanje Transmit. • Na kraju predaje on se vraća u stanje Connected.
Režim rada sniff • Stanje Sniff karakteriše se mikropotrošnjom, tj. to je stanje u kome slave "odspava" unapred odredjen broj vremenskih slotova. • Nakon toga se uredjaj ponovo vraća u neaktivno stanje sve dok ne pristigne naredni naznačeni Sniff vremenski slot.
Režim rada hold • Stanje Hold je drugo low-power stanje u kome slave nije aktivan za unapred odredjen vremenski period. • U toku Hold stanja ne postoji prenos podataka.
Režim rada park • Kada slave uredjaj nema da prima podatke, master može da naredi slave-u da udje u stanje Park. • Kada udje u stanje Park slave se odriče svoje aktivne adrese u piconet-u. • Adresa se zatim dodeljuje drugom slave-u koga master reaktivira iz stanja Park.