Spring 2000CS 4611 Osztott elérésű hálózatok Vázlat Busz (Ethernet) Token ring (FDDI) Vezeték nélküli (802.11)
Spring 2000CS 4612 Ethernet áttekitése Történet –Xerox PARC fejlesztette ki az 1970-es évek közepén –gyökerei az Aloha packet-radio hálózathoz nyúlnak vissza –a szabványt a Xerox, DEC, és Intel 1978-ban definiálta –az IEEE szabvány előfutára CSMA/CD –átvitel érzékelése (carrier sense) –többszörös elérés (multiple access) –ütközés felismerése (collision detection) Keretformátum Dest addr CRCPreamble Src addr TypeBody 1648
Spring 2000CS 4613 Ethernet (folyt.) Címek –egyedi, 48-bit unicast címe van minden adapternek –példa: 8:0:e4:b1:2 –broadcast: a cím minden bitje 1 –multicast: a cím első bitje 1 Sávszélesség: 10Mbps, 100Mbps, 1Gbps Hossz: 2500m (500m szegmensekből 4 ismétlővel) Probléma: osztott algoritmus, amely egyenlő (fair) hozzáférést biztosít az átviteli közeghez
Spring 2000CS 4614 Küldő Algoritmus Ha az átviteli közeg szabad… –azonnal küld –1500 bájt felső korlát az üzenetek hosszára –két egymás utáni keret között 9.6us várakozás Ha az átviteli közeg foglalt… –Várakozik, amíg a közeg felszabadul és azonnal küld –1-szinten elszánt (speciális esete a p-szinten elszántnak)
Spring 2000CS 4615 Algoritmus (folyt.) Ha ütközés történik… –32 bit jam-et küld, majd leállítja a keret további küldését –minimális kerethossz 64 bájt (header + 46 bytes of data) –Késleltet (egyenletesen sorsolva), majd ismét próbál küldeni. A késleltetés: Először: 0 or 51.2us Másodszor: 0, 51.2, or 102.4us Harmadszor: 0, 51.2, 102.4, or 153.6us n-edszer: k x 51.2us, k=0..2 n - 1 Bizonyos számú próbálkozás után feladja (rendszerint 16) exponential backoff algoritmus
Spring 2000CS 4616 Ütközés AB AB AB AB
Spring 2000CS 4617 Token Ring Áttekintése Példák –16Mbps IEEE (a korábbi IBM ring alapjain) –100Mbps Fiber Distributed Data Interface (FDDI)
Spring 2000CS 4618 Token Ring (folyt.) A működés alapelvei –A keretek egy irányban keringenek: upstream to downstream –speciális bit sablon (token) küldődik körbe a gyűrűn –a tokent meg kell ragadni (eltávolítani) a gyűrűről –küldés után a tokent vissza kell helyezni a gyűrűre közvetlen az utolsó keret után késleltetve addig, amíg az utolsó keret vissza nem tért –a küldő távolítja el a keretet a gyűrűről amikor az körbejárta a gyűrűt –az állomások kiszolgálás round-robin séma szerint Keretformátum Control CRC Start of frame End of frame Dest addr Body 48 Src addr Status 32
Spring 2000CS 4619 Időfüggő Token Algoritmus Token Foglalási Idő (Token Holding Time (THT)) –felső korlátja annak az időnek, ameddig egy állomás magánál tarthatja a tokent. Token Körbefutási Idő (Token Rotation Time (TRT)) –milyen hosszú időbe telik, amíg a token körbejár a gyűrűn. –TRT <= ActiveNodes x THT + RingLatency Egyeztetett Token Körbefutási Idő (Target Token Rotation Time (TTRT)) –TRT-re felső korlát, amelyet az állomások egyeztetve alakítanak ki
Spring 2000CS Algorithm (folyt.) Minden csúcs figyeli a TRT az egymás utáni tokenekre –ha a mért TRT > TTRT: token késik, tehát nem küld –ha a mért TRT < TTRT: token korai, tehát OK, azaz küld Az adatforgalom két osztálya –szinkron: mindig lehet küldeni (korlátozott mértékben) –aszinkron: csak akkor küldhető, ha a token korai Legrosszabb eset: 2 x TTRT két egymás utáni token között Két egymás utáni 2 x TTRT TRT nem lehetséges
Spring 2000CS Token Karbantartása A token elveszhet –nincs token a gyűrűn indításkor –bit error tönkre teheti token sablont –a csúcs, amely a tokent birtokolja, meghibásodik Token létrehozása (és a TTRT egyeztetése) –végrehajtódik ha a gyűrűhöz csatlakozik valamely csúcs, vagy valószínűsíthető, hogy hiba történt –claim frame küldése, amely magában foglalja TTRT ajánlást –claim frame fogadásakor, TTRT ajánlás felülbírálható a claim frame eltávolításával és egy új claim frame létrehozásával –Ha valamely csúcs claim frame-je körbemegy: az illető csúcs TTRT ajánlása volt a legkisebb mindenki tudja a TTRT az illető csúcs teszi rá a gyűrűre az új tokent
Spring 2000CS Karbantartás (folyt.) Érvényes token figyelése (minden csúcs figyel) –Periódikusan érvényes átvitelt kell észlelni (keretet vagy tokent) –maximum gap = ring latency + max frame < = 2.5ms –minden átvitel-érzékelésnél timer beállítása 2.5ms-ra; ha a timer lejár claim frame létrehozása
Spring 2000CS Vezeték nélküli LAN-ok IEEE Sávszélesség: 1 or 2 Mbps Fizikai közegek –spektrum szétterítéses radio (2.4GHz) –diffúz infrared (10m)
Spring 2000CS Spektrum szétterítés Alap gondolat –terítsük szét a jelet egy szélesebb átviteli frekvencia tartományra, mint kellene –eredetileg kívülről jövő zavarok kivédésére szánták Frekvencia ugrások módszere (Frequency Hopping) –Véletlen frekvencia tartományokban továbbít –A küldő és a fogadó számára közös… a pseudo véletlen szám generator és a kezdeti értékek – x 1MHz-széles frekvencia tartományokat használ
Spring 2000CS Spektrum szétterítés (folyt.) Direkt Sorozat minden bitre küldésre kerül: a bit XOR n véletlelen generált bit –a véletlen bit sorozat ismert a küldő és a fogadó számára –n-bit chipping code-nak is hívják – bit chipping code-ot definiál Random sequence: Data stream: 1010 XOR of the two:
Spring 2000CS Ütközés Elkerülése Hasonló az Ethernet Problémák: rejtett és az exponált csúcsok
Spring 2000CS MACAW A küldő RequestToSend (RTS) keretet küld A fogadó ClearToSend (CTS) kerettel válaszol Környezők… –érzékeli a CTS-t: csendben marad –érzékeli a RTS-t de a CTS-t nem: ok, küldhet A fogadó ACK-t küld ha fogadta a keretet –a környezők csendben maradnak, amíg ACK-t nem érzékelnek Ütközés –Nincs üközésérzékelés –Feltehetően ütközés történt, ha nem jön CTS válasz. Ekkor újabb RTS küldés. –exponential backoff
Spring 2000CS Mozgó csúcsok támogatása 1. eset: ad hoc hálózat 2. eset: hozzáférési pont (access points (AP)) –Osztott Rendszer (Distributed System) –Minden mozgó csúcs valamely AP-hez csatlakozik
Spring 2000CS Mozgó csúcsok (folyt) Tapogatózás (AP kiválasztása) –a csúcs Probe keretet küld –minden AP, amely veszi a Probe keretet P robeResponse kerettel válaszol –a csúcs kiválaszt egy válaszoló AP-t és ennek AssociateRequest keretet küld –ezen AP AssociationResponse kerettel válaszol –és ez az AP informálja a régi AP-t (ha volt ilyen) a kapcsolatváltásról a DS-en keresztül Az AP kiválasztása lehet –aktív: a fent leírt mód –passzív: AP-k periódikusan Beacon (éleltjel) kereteket küldenek, erre a csúcs AssociateRequest kerettel válaszol, ha csatlakozni kíván