Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Hoppa till innehållet

Carrier Sense Multiple Access

Från Wikipedia

Carrier Sense Multiple Access, förkortat CSMA, finns i två varianter, CSMA/CD och CSMA/CA. Både CSMA/CD och CSMA/CA är metoder för att reglera tillgången till ett delat fysiskt medium, som en koppartråd, en optisk fiber eller ett radioband.

CSMA/CD står för Carrier Sense Multiple Access / Collision Detection och används framförallt inom ethernet/IEEE 802.3 och ibland kallas även hela standarden IEEE 802.3 för CSMA/CD. Tekniken utvecklades av Robert Metcalfe och presenterades 1972 tillsammans med ethernet. Från början hade den använts för att reglera radiotrafiken mellan öarna i Hawaii i det så kallade ALOHAnet. Som namnet antyder har noderna i ett nätverk som använder CSMA/CD ett gemensamt medium som de delar. När en av noderna skall använda mediet känner den först av så att inte någon annan nod håller på att sända (s.k. carrier sensing). Andra noders trafik kan upptäckas då ethernet är ett broadcast LAN och de bitar en nod skickar kopieras av den gemensamma nätverkshubben och skickas ut på nätverkshubbens samtliga portar, således får alla noder en kopia av en nods skickade bitar.

Medan datat skickas kontrollerar noden också hela tiden att ingen annan trafik än den egna finns på mediet. En nod känner av detta med hjälp av att mäta spänningsnivå innan och under sändning, dvs om det är någon inkommande signal eller inte. Om noden upptäcker en signal då den ska sända så väntar den till signalen försvinner plus 96 bitars tid och börjar sedan sända. Om noden under själva sändningen upptäcker en inkommande signal, d.v.s. att en annan nod sänder samtidigt, uppstår en kollision och noden avslutar genast sin sändning och skickar istället ut en störsignal (s.k. jam-signal). Här uppstår något som kallas en exponential backoff-fas, de noder vars sändningar kolliderat drar sig tillbaka och väntar en slumpartad tid (enligt en exponential backoff-algoritm) innan de åter sätter igång sin sändning. Men hur kan över huvud taget en kollision uppstå om noderna hela tiden känner av om någon annan sänder för tillfället? Svaret är att det trots allt finns en viss naturlig fördröjning, om än mycket liten, innan en nods bitar når de andra noderna. Med andra ord, om nod A börjar sända så kan det hända att nod B börjar sända strax efter, då signalen genererad från nod A:s sändning kanske ännu inte hunnit ut på nod B:s kanal. Nod B blir förstås väldigt snart varse om nod A:s sändning och upphör då genast sin egen. Vidare är B:s antal utskickade bitar med största sannolikhet så få till antalet innan den upptäcker nod A:s sändning att det är för lite för att utgöra tillräcklig signalstyrka för nod A att upptäckta kollisionen. Därav behovet av den sedan utskickade störsignalen, vilken är av storleken 48 bitar.

CSMA/CA står för Carrier Sense Multiple Access / Collision Avoidance och används framför allt inom IEEE 802.11. Eftersom bandbredden i radiobanden för ett trådlöst LAN är mer begränsad och mer känslig för störningar ville konstruktörerna undvika, avoid, kollisioner och omsändningar. Detta gör noderna bl. a. genom att, innan data skickas, skicka en RTS-signal (Request To Send, ungefär anhållan om att sända) och sedan invänta en CTS-signal (Clear To Send, ungefär tillåtelse att sända) innan data sänds. Detta ger en viss overhead i ostörd trafik men skall ge en bättre utnyttjande av bandbredden så fort det finns störningar. Vem det är som svarar med CTS-signalen beror lite på vilken typ av nät det gäller men i ett infrastrukturnät är det accesspunkten som sköter det och under goda förhållanden utan mycket störningar undviker nyare utrustning att skicka dessa RTS/CTS-signaler helt.