8. Üb ung zur V orlesung „V ernetzte Systeme“ WS 2001/2 002 Prof. Dr . F . Mattern Ausgabedatum:10.Dez.2001 Abgabedatum:17.Dez.2001 Hinweis:BitteschreibenSieimmerIhreÜbungsgruppennummerunddieNamender beidenBearbeiteraufdieLösung! A ufgabe 29 (Bluetooth)
BeiBluetoothhandeltessichumeinSystemzurspontanen,drahtlosenKommunika- tionüberkurzeEntfernungen(ca.10m).BluetoothwirdindennächstenJahrenbei portablenGerätenvoraussichtlichbreiteAnwendungfinden. DiekleinsteEinheiteinesBluetooth-SystemsisteinsogenanntesPiconetz.Dieses bestehtauseinemMasterundbiszusiebenSlaves.1DerMastergibtdenTaktvor undentscheidet,welcheStationsendendarf.InnerhalbeinesPiconetzeskönnendaher keineKollisionenauftreten. Problemekönnenauftauchen,wennsichmehrerePiconetzezueinemsogenann- tenScatternetzüberlappen.DiePiconetzeuntereinandersindnichtsynchronisiert,es handeltsichhierbeiumeindezentralesSystem,indemKollisionenauftretenkönnen. UmdiesemProblementgegenzuwirken,wirdbeiBluetoothdassogenannteFre- quenzsprungverfahren(“FrequencyHopping”)eingesetzt:esgibt79verfügbareFre- quenzkanäle,aufdenengesendetwerdenkann.21600malinderSekundewirdder FrequenzkanalnacheinempseudozufälligenMusterneubestimmt.DajedesPiconetz seineeigene(allenStationenimPiconetzbekannte)Frequenzreihenfolgehat,istsomit dieWahrscheinlichkeit,dasssichzweiPiconetzebeimSendenstören,gering.Wenn eineKollisiondurchBenutzunggleicherFrequenzendennochauftritt,sowirddies bemerktunddieentsprechendenPaketewerdenerneutgesendet. FürdieAufgabenehmenSiebittean,dassinallenPiconetzeninjedemZeitschlitz gesendetwirdunddassproZeitschlitzgenaueinPaketgesendetwird,welchesden Zeitschlitzausfüllt. 1InBluetoothkannjedeStationpotentiellMastersein.DieserwirdjenachBedarfspontanbestimmt. 2Dieseliegenjeweilsbei
. 1
a)(2Punkte)WiegrossistdieWahrscheinlichkeit,dassfüreingesendetesPaket eineKollisionauftritt,wennsichzweiPiconetzeüberlappen?3 b)(2Punkte)WiegrossistdieseWahrscheinlichkeitbei10sichüberlappendenPi- conetzen? c)(4Punkte)EinPaketwirddirektimanschliessendenZeitschlitzvomEmpfänger bestätigt.AuchsolcheAcknowledgement-PaketekönnendurchStörungeines anderenPiconetzesverlorengehen.BerechnenSiedieTeilaufgabena)undb) neu,unterderAnnahme,dasseinPaketnurdannalserfolgreichgesendetgilt, wennsowohldasPaketselbstalsauchdasAcknowledgement-Paketnichtge- störtwerden. d)(4Punkte)BerechnenSiedieTeilaufgabena)undb)neu,unterAnnahme,dass allePiconetzedesScatternetzesbezüglichderZeitpunkte,zudenenFrequenz- wechselstattfinden,synchronisiertsind.4
A ufgabe 30 (Sliding-Windo w-Pr otok oll mit Ringpuff er)
RingpuffererlaubendasSpeicherneinerfortlaufendenReihevonWertenineinerend- lichenDatenstruktur.EinsolcherPufferkannalseinfacherCache-Speicherbenutzt werden,indemdieletztenMAX_BUFEinträgezwischengespeichertwerden.Auchals Undo-SpeicherineinemEditorkanneinsolcherRingpufferzumEinsatzkommen. BesondersimSliding-Window-ProtokollbietetsichdieVerwendungvonRingpuffern zumZwischenspeichernderzusendendenunddernochnichtbestätigtenBlöckeim Sendefensterbzw.derempfangenenunderwartetenBlöckeimEmpfangsfensteran. NehmenSiean,dassfürdieRealisierungeinesEmpfangsfenstersderGrösseMAX_- BUFeinArrayBuf[0:MAX_BUF-1]alsRingpufferverwendetwird.EineInteger- VariablenfeenthaltedieSequenznummerdesalsnächstenerwartetenBlocks(next frameexpected).DerPufferseieingebettetzwischenzweiKommunikationsschichten, diejeweilsneuempfangenePaketeanliefernbzw.gepuffertePaketeanfordern.Be- achtenSie,dassindiesemSzenariodasEmpfangsfensternurdannweiterrückenkann, wennvonderdarüberliegendenSchichtauchwirklicheinPaketangefordertwurde– erfolgtdiesnicht,fülltsichirgendwannderPufferundneuangeliefertePaketemüssen abgelehntwerden. SchildernSie(inPseudocode),wasgeschieht(alsowelcheVariablenwieverändert werden,welcheWertezurückgegebenwerdenbzw.welcheAcknowledgementswann versendetwerden),wenn a)(3Punkte)dietieferliegendeKommunikationsschichteinDatenpaketmitderSe- quenznummersanbietet, b)(3Punkte)diedarüberliegendeKommunikationsschichteinDatenpaketanfor- dert. 3BeachtenSiedabeibitte,dassdieZeitschlitzedereinzelnenPiconetzezwargleichlang,abernicht synchronsind. 4IgnorierenSiedabeidieAcknowledgement-Pakete 2BeachtenSie,dassgepuffertePaketeimmerinderrichtigenReihenfolgeweiter- geleitetwerdenmüssen,dassderPuffervollseinkannunddassDatenpaketemit zukleineroderzugrosserSequenznummergeeignetbehandeltwerdenmüssen. (MüssenimletztenFallauchAcknowledgementsversandtwerden?) c)(2Punkte)WennderPufferleerist,diedarüberliegendeKommunikationsschicht abereinDatenpaketanfordert,solltedieserAufrufandenPufferblockieren. SchildernSie,wasbeieinerImplementierungbeachtetwerdenmuss,wennder PufferaberdennochwährenddieserBlockadeDatenpaketedertieferliegenden Kommunikationsschichtentgegennehmenkönnensoll. 3