Controllo della congestione: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
(27 versioni intermedie di 18 utenti non mostrate) | |||
Riga 1:
▲In [[telecomunicazioni]] nell'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]] della [[rete di trasporto]]. Può essere implementata nel [[livello di collegamento]], di [[livello di rete|rete]], di [[livello di trasporto|trasporto]] o anche al [[livello applicazioni|applicativo]].
==Descrizione==
Nelle reti a pacchetto, infatti, i [[pacchetto|pacchetti]] attraversano una grande quantità di [[apparato di rete|dispositivi]] diversi, come ad esempio [[router]], [[switch]], [[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]], ossia a situazioni nelle quali non sono in grado di smistare tutto il [[traffico (telecomunicazioni)|traffico]] in arrivo causando perdita di pacchetti o eccessivi ritardi. ▼
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] {{Webarchive|url=https://web.archive.org/web/20110411023625/http://www.isticom.it/documenti/normazione/pdf/ST%20768.pdf |date=11 aprile 2011 }} - Interfacce analogiche d'utente per centrali telefoniche urbane (2003)</ref>.
Il controllo della congestione permette di migliorare le prestazioni della rete evitando perdite di pacchetti e limitando il ritardo a causa delle ritrasmissioni dei pacchetti persi. ▼
▲Nelle reti a commutazione di pacchetto
Il termine controllo di congestione si applica specificamente alle reti a commutazione di pacchetto, nelle quali è possibile 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.
==Controllo della Congestione sulle reti [[Internet Protocol|IP]]==▼
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]].
{{vedi anche|Controllo della congestione in TCP}}▼
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 finalizzato a non eccedere la capacità di memorizzazione del ricevitore, e quindi esclusivamente determinato dalla capacità del destinatario di ricevere e "consumare" i dati inviati dal mittente.
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.
Il [[livello di trasporto|protocollo di trasporto]] [[Transmission Control Protocol|TCP]] implementa un meccanismo end-to-end di [[Controllo della congestione in TCP|controllo della congestione]].
Altri protocolli di trasporto, quali [[User Datagram Protocol|UDP]], non implementano forme di controllo della congestione.
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.
==Note==
<references/>
==Bibliografia==
* {{cita libro | titolo= Reti di calcolatori e internet: Un approccio Top-Down | autore= J. Kurose | autore2= K. Ross | editore= Pearson | edizione= 6ª ed. | ISBN = 978-88-7192-938-5 | anno = 2013 }}
* {{cita libro | titolo= Computer Networking : Principles, Protocols and Practice | autore= Olivier Bonaventure | url= https://inl.info.ucl.ac.be/CNP3 | lingua= inglese | accesso= 11 luglio 2017 | urlarchivio= https://web.archive.org/web/20170728072418/https://inl.info.ucl.ac.be/cnp3 | dataarchivio= 28 luglio 2017 | urlmorto= sì }}
==Voci correlate==
* [[Controllo di flusso]]
* [[Controllo di errore]]
==Collegamenti esterni==
* {{cita web|http://cnp3book.info.ucl.ac.be/2nd/html/principles/sharing.html#network-congestion|Sharing resources}}
{{Controllo di autorità}}
{{Portale|Telematica}}
Line 22 ⟶ 57:
[[Categoria:Protocolli livello trasporto]]
[[Categoria:Protocolli livello applicazione]]
|