CSMA/CD: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Alfio (discussione | contributi)
m punteggiatura
 
(95 versioni intermedie di 68 utenti non mostrate)
Riga 1:
{{F|telecomunicazioni|maggio 2012|Questa voce manca completamente di fonti}}
==Definizione==
In [[telecomunicazioni]] CSMA/CD è l'([[acronimo]] [[Lingua inglese|inglese]] di '''Carrier Sense Multiple Access with Collision Detection''', ovvero '''accesso multiplo tramite rilevamento della portante con rilevamento delle collisioni'''.) Èè un' [[protocollo di rete|protocollo]] di [[accesso multiplo]], evoluzione del protocollo di [[livello MAC]] del[[CSMA]], nato per la risoluzione dei conflitti di trasmissione, ovvero collisioni, dovuti al [[CSMA]] puro, presenti in un certo [[dominio di collisione]] su [[rete locale|reti locali]] [[cablaggio|cablate]] di tipo [[broadcast]].
 
In pratica, il protocollo CSMA/CD consente ad un computer di utilizzare la rete [[Ethernet]] soltanto se nessun altro elaboratore la sta già utilizzando.
È nato per la risoluzione del conflitti di trasmissione dovuti al [[CSMA]] puro.
 
==Descrizione==
L'algoritmo è il seguente:
Il protocollo implementa la direttiva: "''Ascolta prima di trasmettere e mentre trasmetti. Se mentre trasmetti rilevi collisioni, fermati, segnala a tutte le altre stazioni la collisione e riprova più tardi secondo modalità di ritrasmissione stabilite''."
 
L'[[algoritmo]] è dunque il seguente:
* L'adattatore sistema il frame in un buffer;
* Se il canale è inattivo si procede alla trasmissione, se è occupato si attende prima di ritrasmettere;
* Mentre si trasmette l'adattatore monitora la rete (è questo il vero e proprio Collision Detection), se non riceve segnali da altri adattatori considera il frame spedito, tale segnale si ricava confrontandolo con quello che trasmette, se i due differiscono è avvenuta una collisione, quindi va interrotta la trasmissione;
* Se l'adattatore riceve, durante una trasmissione, un segnale da un altro adattatore, arresta la trasmissione e trasmette un segnale di disturbo (jam);
* Dopo aver abortito la trasmissione attende in maniera esponenziale (''backoff esponenziale'').
 
* L'adattatore sistema il [[data frame|frame]] da trasmettere in un [[buffer]];
L'attesa esponenziale funziona in questo modo: gli adattatori aspettano un tempo casuale entro un valore massimo ''d'' (il protocollo che usa il CSMA/CD, ad esempio [[Ethernet]], fissa tale valore). Se viene generata nuovamente una collisione il valore ''d'' viene raddoppiato, così fino a che questo è sufficientemente grande. Questa tecnica viene chiamata '''recessione binaria esponenziale'''. Avviene perché se altri adattatori sono contemporaneamente in attesa, tutti simultaneamente tenteranno di trasmettere provocando altre collisioni.
* Se il canale è inattivo (''idle''), cioè non si rilevano altri pacchetti trasmessi da altre stazioni, si attende un tempo di 96 bit-time e si procede alla trasmissione, se invece è occupato (''busy'') si attende che il canale torni libero prima di ritrasmettere;
* MentreDurante sil'intera trasmettetrasmissione l'adattatore monitora la rete (è questo il vero e proprio ''Collision Detection''),: se non riceve segnali da altri adattatori considera il frame spedito,. taleIl segnale che valuta l'eventuale collisione o meno si ricava confrontandoloconfrontando il segnale ricevuto con quello che trasmette,trasmesso: se i due differiscono è avvenuta una collisione, quindi va interrotta la trasmissione;
* Se l'adattatore riceve, durante una trasmissione, un segnale da un altro adattatore, arresta la trasmissione e trasmette un segnale di disturbo (''jamming signal'') di 32 bit che avverte le altre stazioni dell'avvenuta collisione bloccandone la contemporanea trasmissione. Questo passaggio è necessario perché sulle lunghe distanze il segnale potrebbe essere attenuato a tal punto da non permettere alle altre stazioni di rilevarlo, generando quindi un'inconsapevole collisione;
* Dopo aver abortito la trasmissione le stazioni trasmittenti applicano ciascuna un ''algoritmo di subentro'' attendendo in maniera esponenziale randomizzata il tempo per la ritrasmissione (''[[algoritmo di backoff esponenziale binario]]'').
 
L'attesa esponenziale funziona in questo modo: gli adattatori di ciascuna stazione aspettano un tempo casuale entro un valore massimo ''d'' (il protocollo che usa il CSMA/CD, ad esempio [[Ethernet]], fissa tale valore). Se vienesi generatagenera nuovamenteuna unanuova collisione il valore ''d'' viene raddoppiato, così fino a che questo èrisulti sufficientemente grande da non produrre collisioni. Questa tecnica viene chiamata '''recessione binaria esponenziale'''. Avvieneed avviene perché setutti gli altri adattatori che sono contemporaneamente in attesa, tuttipotrebbero simultaneamente tenterannotentare di trasmettereritrasmettere provocandogenerando altrenuove collisioni, da cui appunto la necessità di estendere il tempo massimo di subentro.
Il segnale di disturbo viene inviato per avvertire tutti gli adattatori che è avvenuta una collisione.
 
==Condizione necessaria per il Collision Detection==
Condizione necessaria per la rilevazione della collisione da parte di una stazione trasmittente è che il tempo di trasmissione <math>T_t</math> cioè il tempo di immissione in rete della trama di dimensione minima sia maggiore o al più uguale al tempo massimo di andata e ritorno (''RTT Round trip Time''):
 
<math>\ T_t = L/C >= RTT = 2D/V </math>/K
 
dove L è lunghezza della trama di dimensione minima, C è la [[velocità di trasmissione]], ''D'' la lunghezza del segmento di rete e ''V'' la velocità di propagazione del segnale nel [[mezzo trasmissivo]]. Considerando che C, L e V sono quantità prefissate, questa relazione si traduce a sua volta in un limite massimo sulla lunghezza ''D'' del segmento di rete. Esplicitando infatti la relazione rispetto a ''D'' nel caso limite di uguaglianza si trova che:
 
<math>\ Dmax = (L V)/(2 C) = T_t V/2</math>
 
In generale la distanza massima percorribile dalla trama (D) aumenta proporzionalmente con L (lunghezza della trama minima) e V (velocità di propagazione) e diminuisce proporzionalmente con C. Per cui si scopre anche che se si aumenta la velocità di trasmissione per avere prestazioni di collegamento più elevate, se si vuole mantenere immutata la lunghezza ''D'' del segmento di rete e continuare ad usufruire della tecnica di Collision Detection si dovrà necessariamente aumentare anche L. Questa condizione sul diametro massimo di una rete locale basata su CSMA/CD
CD impone quindi un limite sull'estensione della rete locale stessa, ma ne favorisce a suo tempo anche più elevate [[velocità di trasmissione]].
 
==Applicazioni==
Il CSMA/CD era utilizzato nelle ormai obsolete varianti di [[Ethernet]] su mezzo condiviso ([[10BASE5]], [[10BASE2]]) e in quelle su rame che usavano gli [[Hub (informatica)|hub]]. Le moderne reti Ethernet, che fanno uso di [[switch]] con connessioni [[full-duplex]], non usano il CSMA/CD in quanto i segmenti sono isolati.
 
== Voci correlate ==
* [[CSMA]]
* [[CSMA/CA]]
* [[IEEE 802.3|IEEE 802.3, CSMA/CD Access MethodBA]]
* [[IEEE 802.3]]
 
== Collegamenti esterni ==
* {{Collegamenti esterni}}
* {{FOLDOC}}
 
{{Ethernet}}
[[Categoria:Telecomunicazioni]]
{{Portale|informatica|telematica}}
[[categoria:Informatica]]
[[Categoria:Protocolli di rete]]
 
[[Categoria:TelecomunicazioniEthernet]]
[[de:Carrier Sense Multiple Access / Collision Detection]]
[[en:Carrier sense multiple access with collision detection]]
[[es:CSMA/CD]]
[[fi:CSMA/CD]]
[[fr:CSMA/CD]]
[[he:CSMA/CD]]
[[ja:CSMA/CD]]
[[pl:CSMA/CD]]
[[zh:CSMA/CD]]