Controllo della congestione: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Aggiorno i contenuti della voce. Cronologia: https://it.wikipedia.org/w/index.php?title=Utente:FabiorWikiTIM/Controllo_della_congestione&action=history
Riga 1:
{{Voce Scuole|Federico II}}
{{F|protocolli di rete|dicembre 2010}}
In [[telecomunicazioni]] nellNell'ambito delle [[rete di telecomunicazioni|reti di telecomunicazioni]] il '''controllo della congestione''' è una funzionalità delle [[Rete informatica|reti]] a [[commutazione di pacchetto]], il cui scopo è prevenire e limitare i fenomeni di [[congestione (reti)|congestione]] che possono verificarsi nei [[nodo (informatica)|nodi]] interni di [[commutazione (telecomunicazioni)|commutazione]] della [[rete di trasporto]] attraverso un controllo di trasmissione da parte degli agenti (mittente e destinatario) di una comunicazione. Può essere implementato nel [[livello di collegamento]], di [[livello di rete|rete]], di [[livello di trasporto|trasporto]] o anche al [[livello applicazioni]].
 
==Descrizione==
In generale, in una rete di telecomunicazioni, un problema di [[congestione (reti)|congestione]] è determinato da un eccesso di domanda rispetto alle capacità trasmissive della rete.
 
Nelle reti a commutazione di circuito (es. la rete telefonica) una situazione di congestione si manifesta nella impossibilità di instaurare una connessione tra due terminali (''telefonata''). Tale circostanza viene manifestata all'utente che ha richiesto la telefonata attraverso uno speciale ''tono di congestione''<ref>Ministero delle Comunicazioni - [http://www.isticom.it/documenti/normazione/pdf/ST%20768.pdf Specifica Tecnica n.768] - Interfacce analogiche d'utente per centrali telefoniche urbane (2003)</ref>.
Nelle reti a pacchetto, infatti, i [[pacchetto (reti)|pacchetti]] attraversano una grande quantità di [[apparato di rete|dispositivi]] diversi, come ad esempio [[router]], [[switch]], [[bridge (informatica)|bridge]]. Questi dispositivi, e i collegamenti che li interconnettono, hanno capacità di elaborazione e di trasmissione limitate ovvero finite, che possono portare, in molti casi, a situazioni di [[congestione (reti)|congestione]], ossia a situazioni nelle quali i nodi suddetti non sono in grado di smistare tutto il [[traffico (telecomunicazioni)|traffico]] offerto in ingresso da varie [[connessione (informatica)|connessioni]] tra utenti causando perdita di pacchetti e/o eccessivi ritardi.
 
Nelle reti a pacchetto,commutazione infattidi pacchetto, i [[pacchetto (reti)|pacchetti]] attraversano una grande quantità di [[apparato di rete|dispositivi]] diversi, come ad esempio [[router]], [[switch]], [[bridge (informatica)|bridge]]. Questi dispositivi, e i collegamenti che li interconnettono, hanno capacità di elaborazione e di trasmissione limitate ovvero finite, che possono portare, in molti casi, a situazioni di [[congestione (reti)|congestione]], ossia a situazioni nelle quali i nodidispositivi suddetti non sono in grado di smistare tutto il [[traffico (telecomunicazioni)|traffico]] offerto in ingresso da varie [[connessione (informatica)|connessioni]] tra utenti causando perdita di pacchetti e/o eccessivi ritardi.
 
Il termine controllo di congestione si applica specificamente alle reti a commutazione di pacchetto, nelle quali è possbile esercitare un'azione di controllo sulle sorgenti di traffico (rallentamento del tasso di trasmissione dei pacchetti) nel momento in cui viene rilevata una situazione di congestione.
Un obiettivo desiderabile dei meccanismi di controllo della congestione è il perseguimento di una forma di equità (in Inglese, ''fairness'') nella ripartizione delle risorse trasmissive tra i flussi di traffico concomitanti.
 
La funzionalità di controllo della congestione è suscettibile di diverse modalità di implementazione,
che possono coinvolgere il [[livello di collegamento]], di [[livello di rete|rete]], di [[livello di trasporto|trasporto]] o anche il [[livello applicazioni]].
 
I vari meccanismi di controllo della congestione differiscono per:
* la modalità con la quale si rileva la congestione o il suo approssimarsi;
* le azioni intraprese quando una congestione è rilevata.
 
La rilevazione della congestione può essere effettuata:
* dalla rete, attraverso una forma esplicita di segnalazione di congestione da parte dei dispositivi;
* dai terminali della comunicazione, che rilevano la congestione dagli effetti che essa produce su flusso di pacchetti scambiati (perdita di pacchetti).
 
Il controllo della congestione permette dunque di migliorare le prestazioni della rete evitando perdite di pacchetti e limitando il ritardo a causa delle ritrasmissioni dei pacchetti persi.
 
Si differenzia dal [[controllo di flusso]] che è invece un meccanismo di controllo di trasmissione tipicamentefinalizzato dettatoa dallenon eccedere la capacità esclusivamentedi memorizzazione del destinatarioricevitore, e finalizzatoquindi aesclusivamente nondeterminato eccedere ladalla capacità del destinatario di elaborazionericevere e memorizzazione"consumare" deli solodati ricevitoreinviati da parte deldal mittente.
 
===Controllo della Congestione suin reti [[Internet Protocol|IP]]===
Il protocollo di [[livello di rete]] [[Internet Protocol|IP]] non possiede strumenti di controllo della congestione. Questa funzionalità viene quindi implementata dai livelli superiori:, sia per quanto riguarda la rilevazione della congestione che per quanto riguarda l'azione di riduzione del tasso di trasmissione. Il meccanismo [[Explicit Congestion Notification]] (ECN), definito nella RFC 3168<!--<ref>RFC 3168</ref>-->, prevede un ruolo attivo dei router IP nella segnalazione di una imminente congestione agli endpoint TCP, attraverso un flag nell'header IP.
 
* [[Transmission Control Protocol|TCP]] è ilIl [[livello di trasporto|protocollo di trasporto]] principale[[Transmission usatoControl suProtocol|TCP]] IP,implementa edun offremeccanismo funzionalitàend-to-end di [[Controllo della congestione in TCP|controllo della congestione]].
{{vedi anche|Controllo della congestione in TCP}}
 
*Altri protocolli di trasporto, quali [[User Datagram Protocol|UDP]], l'altro protocollo di trasporto usato su IP non implementaimplementano invece alcuna formaforme di controllo di flusso o della congestione,. anche se queste funzionalità possono essere realizzate al [[livello applicazioni]].
 
Per applicazioni che non utilizzano TCP, le funzionalità di controllo di congestione possono essere realizzate al [[livello applicazioni|livello applicazione]]. I meccanismi di controllo di congestione implementati a livello applicazione perseguono l'obiettivo di essere ''TCP-friendly'', ovvero quello di consentire alle sorgenti di traffico di trasmettere ad un tasso non superiore a quello consentito ad una sorgente TCP nelle stesse condizioni.
Ciò al fine di perseguire, in situazioni di congestione, la equa ripartizione della capacità trasmissiva (''fairness'') tra flussi TCP e non-TCP.
Esempi di meccanismi di controllo della congestione a livello applicazione sono TFRC (TCP Friendly Rate Control)<ref>RFC 5348</ref> e pgmcc<ref>
{{cita pubblicazione |nome= Luigi|cognome= Rizzo|titolo= pgmcc: a TCP friendly single rate Multicast congestion control scheme|rivista= ACM SIGCOMM Computer Communication Review|editore= ACM|città= |volume= 30|numero= 4|anno= 2000|mese= ottobre|pp= 17-28|id= |pmid= |url= http://web.cs.ucla.edu/classes/fall03/cs218/paper/pgmcc.pdf|lingua= Inglese|accesso= 05/07/2017|abstract= }}</ref>.
Lo schema di controllo della congestione TFRC si pone come obiettivo quello di competere in maniera equa con i flussi TCP su scale dei tempi di media durata, ma di consentire un tasso di trasmissione meno variabile di quello imposto da TCP su scale dei tempi brevi.
A tal fine, TFRC misura la probabilità di perdita ed il round trip time di una comunicazione end-to-end ed usa questi come parametri per un modello del throughput TCP. Il throughput previsto da questo modello è quindi usato per determinare il tasso di trasmissione di un flusso TFRC.
 
==Voci correlate==
* [[Controllo di flusso]]
* [[Controllo di errore]]
{{vedi* anche|[[Controllo della congestione in TCP}}]]
 
==Note==
<references/>
 
==Bibliografia==
* {{cita libro | titolo= Reti di calcolatori e internet: Un approccio Top-Down | autore= J. Kurose | autore2= K. Ross | editore= Pearson | edizione= 6a ed. | ISBN = 978-88-7192-938-5 | anno = 2013 | lingua=italiano}}
* {{cita libro | titolo= Computer Networking : Principles, Protocols and Practice | autore= Olivier Bonaventure | url=https://inl.info.ucl.ac.be/CNP3 | lingua=inglese}}
 
==Collegamenti esterni==
* {{cita web|http://cnp3book.info.ucl.ac.be/2nd/html/principles/sharing.html#network-congestion|Sharing resources}}
 
{{Portale|Telematica}}