Che cos'è il controllo del flusso di rete?
Il controllo del flusso di rete è un mezzo per le reti di comunicazione per gestire la congestione del traffico sulla rete. Diverse tecniche possono essere utilizzate sia per reti basate su circuiti sia per reti a commutazione di pacchetto come quelle utilizzate su Internet. Attraverso l'uso di tecniche di controllo del flusso, la rete è in grado di fornire una migliore qualità generale del servizio e ridurre la frequenza delle comunicazioni interrotte.
Le reti di circuiti, come le reti multiplexing a divisione di tempo per determinati tipi di comunicazione digitale, in genere utilizzano circuiti dedicati per la comunicazione. In questi casi, la rete potrebbe non utilizzare tutti i suoi canali disponibili per la larghezza di banda. Se un canale è inattivo mentre l'altro traffico è in attesa di essere trasmesso, è possibile implementare tecniche di controllo del flusso di rete per bilanciare l'array dei circuiti di comunicazione disponibili.
Con tali reti di circuiti, viene utilizzata una tecnica nota come controllo di ammissione della connessione (CAC) per un corretto controllo del flusso di rete. Gli algoritmi vengono utilizzati per osservare la rete e prendere decisioni sull'utilizzo delle risorse disponibili. In generale, gli algoritmi funzionano per consentire l'uso di un circuito in base alla valutazione di determinate variabili, come il tipo di servizio necessario, la qualità del servizio che deve essere soddisfatto e altre informazioni sul traffico come le tariffe di picco e le tariffe sostenibili. Uno svantaggio è che alcuni metodi CAC danno anche la priorità ai circuiti disponibili, riservando in tal modo alcuni circuiti per occasionali connessioni ad alta priorità, il che vanifica lo scopo poiché quei circuiti rimangono ancora inattivi se non ci sono comunicazioni ad alta priorità in transito.
Con le reti a commutazione di pacchetto, è possibile implementare una miriade di possibili tecniche di controllo del flusso di rete a seconda del tipo di rete o del software o hardware disponibile. Nella maggior parte dei casi, una rete a commutazione di pacchetto utilizzerà una sorta di buffer, che è un meccanismo di archiviazione per l'acquisizione di pacchetti di dati quando vengono ricevuti da un mittente. I pacchetti vanno nel buffer e l'applicazione del destinatario li estrae per l'uso. Se la trasmissione di invio è più veloce della capacità dell'estremità ricevente di elaborare i dati dal buffer, può riempirsi rapidamente.
Nelle reti TCP (Transmission Control Protocol), il controllo del flusso di rete può essere gestito tramite una tecnica nota come ridimensionamento delle finestre. L'handshaking a tre vie che si verifica durante una connessione TCP consente di trasmettere informazioni sulla dimensione della finestra del destinatario. In questo modo, il destinatario può far sapere al mittente quanta sala buffer è disponibile in modo che il mittente possa evitare di inviare troppi dati.
L'elemento di telecomunicazione standard raccomandato 232 (RS-232) discute anche le disposizioni per gestire il controllo del flusso di rete nelle reti serializzate. Con RS-232, si suddivide in una soluzione basata su software o su una soluzione basata su hardware. La tecnica del software è anche nota come controllo di flusso XON-XOFF, in cui un segnale XON viene inviato dal destinatario che dichiara di essere in grado di ricevere dati e XOFF quando ha un buffer completo. Possono verificarsi errori se il segnale di comunicazione è errato, per cui il mittente potrebbe non ricevere correttamente un segnale XOFF e continuare a spingere i pacchetti sul destinatario. I segnali di controllo del flusso vengono inoltre inviati sullo stesso canale della comunicazione dati, che utilizza una piccola quantità di larghezza di banda.
Il controllo del flusso di rete basato su hardware, d'altra parte, è molto più affidabile a spese aggiuntive dell'implementazione di linee fisiche aggiuntive. In questo caso, vengono impostate linee di controllo della trasmissione separate: una viene chiamata linea RTS (richiesta di invio) e l'altra è la linea CTS (clear to send). L'estremità di invio annuncia la sua intenzione di trasmettere sulla linea RTS e il destinatario annuncia la sua capacità di ricevere sulla linea CTS.