Anteprima
Vedrai una selezione di 8 pagine su 34
Telecomunicazioni Top-Down Pag. 1 Telecomunicazioni Top-Down Pag. 2
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Telecomunicazioni Top-Down Pag. 6
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Telecomunicazioni Top-Down Pag. 11
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Telecomunicazioni Top-Down Pag. 16
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Telecomunicazioni Top-Down Pag. 21
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Telecomunicazioni Top-Down Pag. 26
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Telecomunicazioni Top-Down Pag. 31
1 su 34
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

Modalità di invio dei riscontri (ACK) nell'entità TCP ricevente

L'entità TCP ricevente può emettere i riscontri (ACK) secondo due modalità:

  • Immediata: appena vengono accettati i dati, emette immediatamente un segmento vuoto (senza dati) che contiene l'appropriato numero di riscontro.
  • Cumulativa: appena vengono accettati i dati, tiene memoria della necessità di inviare un riscontro, ma aspetta un segmento in uscita nel quale inserirlo. Per evitare lunghi ritardi, attiva un timer di finestra. Se il tempo di questo timer si esaurisce prima che venga inviato un riscontro, emette un segmento vuoto che contiene l'appropriato numero di riscontro.

Supponiamo di avere la trasmissione di un pacchetto di L bit:

  1. Impossibile che RTO < RTT -> non si può impostare il timer ad un tempo minore dell'effettivo tempo di trasmissione, perché allo scadere del timer non si riceverebbe il riscontro e si avrebbero ritrasmissioni non necessarie (timeout prematuro).
  2. Deve essere RTO >= ...

RTT -> Se RTO >> RTT si avrebbe un uso inefficiente delle risorse e una reazione lenta alla perdita di segmenti3. Il settaggio ottimale è RTO = RTT• RTT si può stimare attraverso il SampleRTT in modo da ottimizzare il settaggio dell'RTO: tempo misurato dall'istante di trasmissione di un segmento fino all'istante di ricezione dell'ACK relativo, che ignora le ritrasmissione• Dato che il SampleRTT varia nel tempo in modo imprevedibile, occorre una stima "smoothed" dell'RTT: media di più campioni recenti dell'RTT (non semplicemente il valore corrente di SampleRTT) • Si ha una stima dell'RTT medio in base a quello effettivo• Problema:a. Al 50% RTO > RTT -> il responso verrà ricevuto correttamenteb. Al 50% RTO < RTT -> timeout prematuro• L'RTO è una sovrastima dell'RTT unito ad una distanza cautelativa da esso• Determina il valore di RTO associato ad

segmento correttamente trasmesso.
  • segmento non riemesso
  • TCP ha lo scopo di offrire un servizio di trasferimento dati affidabile utilizzando il servizio inaffidabile offerto dallo strato di rete (IP)
  • Si utilizzano esclusivamente:
    • segmenti ACK
    • timeout di ritrasmissione
  • Le ritrasmissioni sono avviate da
    • esaurimento del timeout
    • ACK duplicati Top-Down Pagina 12
  • Il periodo di timeout spesso è relativamente lungo: elevato ritardo prima di ritrasmettere il pacchetto perduto
  • L'entità TCP emittente può rivelare precocemente i segmenti perduti tramite l'analisi degli ACK duplicati:
    • L'entità TCP emittente spesso invia molti segmenti
    • Se un segmento viene smarrito, è probabile che ci saranno molti ACK duplicati
  • Se l'entità TCP emittente riceve 3 ACK duplicati per lo stesso dato, suppone che il segmento che segue il dato riscontrato sia andato perduto
    • ritrasmissione rapida
    • si ritrasmette il segmento prima che

scada il timer• ACK di questi 3 segmenti fermi sul sequence number aspettato dopo la ricezione del primo segmento (fermi sul sequence number delsecondo segmento perso)• Sono ACK duplicati del primo segmento inviato dall'host B• Avviene la ritrasmissione del secondo segmento prima dello scadere del timeout• Quando il dato viene ricevuto correttamente nel livello di trasporto viene inserito in un buffer• Il buffer tende a riempirsi con il passare del tempo => se aumenta l'accodamento dei segmenti e il buffer si riempie, si può verificare un bufferoverflow con perdita di messaggi nel livello di trasporto• Bisogna introdurre il controllo di flusso• Il controllo di flusso ha lo scopo di limitare il ritmo di emissione dei dati da parte di un host per evitare la saturazione della capacità del buffer di ricezione• TCP utilizza un controllo di flusso basato su una finestra scorrevole di larghezza variabile: lo scorrimento e la

larghezza della finestra sono controllati dall'entità TCP ricevente

Il controllo di flusso opera a livello di byte: gli ottetti sono numerati in sequenza a partire dal numero scelto durante il 3-way handshaking (procedura di instaurazione della connessione)

La procedura di controllo di flusso TCP utilizza i seguenti parametri:

  • SN (Sequence Number): si riferisce al primo byte contenuto nel segmento
  • AckN (Acknowledgement Number): Identifica il numero di sequenza del prossimo byte che l'entità ricevente aspetta di ricevere
  • RecWindow (Window): Identifica il numero massimo di byte che l'entità emittente può emettere consecutivamente senza ricevere riscontro per alcuno di questi

Un riscontro (AckN=X e RecWindow=W) significa che

  • sono riscontrati tutti gli ottetti ricevuti fino a quello numerato con X - 1
  • l'entità TCP emittente è autorizzata a trasmettere fino a ulteriori W ottetti, ovvero
fino all'ottetto numerato con X+W – 1 Nell'intestazione del receiver sono scritti i byte che possono essere ancora immagazzinati nel buffer in modo che il sender ridimensioni la finestra in base a quanti byte può effettivamente ricevere il receiver Top-Down Pagina 13 Throughput di una connessione TCP martedì 25 ottobre 2022 13:00 L'efficienza (throughput - TH) di una connessione TCP, nell'ipotesi di overhead nullo e di assenza di ritrasmissioni, è dato da dove • W : larghezza (byte) della finestra in trasmissione • C : bit rate della connessione • d : ritardo di propagazione end to end sulla connessione • Cd : prodotto banda-ritardo: = numero massimo di bit che stanno sul canale che sono stati trasmessi ma non sono stati ricevuti • = Cd: (prodotto banda ritardo espresso in bit) • TH = W/2α ○ Tempo di trasmissione di una finestra = W/C ○ Numero massimo di bit trasmissibile in un RTT = 2d.C = 2α • Ilrouter)○ basso throughput (congestione della rete)○ alta variabilità del ritardo (congestione della rete)

router)

  • Tipi di congestione:
    • Congestione forte: si verifica quando la risorsa è molto stressata e si perdono molti segmenti, in particolare quando durante la trasmissione scade l'RTO (RTO < RTT) => per molto tempo non sono stati ricevuti ACK di risposta e ci sono state molte perdite
    • Congestione debole: il buffer di rete sta per riempirsi, ma a volte la risorsa lo trova pieno e altre volte no, in particolare quando si ha fast recovery la congestione è debole, perché si perdono pochi segmenti
  • Controllo di congestione punto-punto
    • nessun supporto esplicito dalla rete
    • la congestione è dedotta osservando le perdite e i ritardi nei sistemi terminali
  • Metodo adottato dal TCP: Controllo di congestione assistito dalla rete
    • Il protocollo TCP cerca di rallentare il sender (come nel controllo di flusso) usando un meccanismo a finestra che non vede la rete, quindi bisogna capire la dimensione della finestra senza avere accesso alla rete
i router forniscono un feedback ai sistemi terminali un singolo bit per indicare la congestione (Explicit Congestion Notification o ECN) L'entità ricevente comunica in modo esplicito al mittente il bit rate in trasmissione Top-Down Pagina 14
  • Il protocollo TCP utilizza i seguenti meccanismi
    • esaurimento dell'RTO come un sintomo di congestione
    • la finestra di congestione (Congestion Window - Congwin) che si affianca alla finestra di ricezione operante nel controllo di flusso e impone una limitazione addizionale alla quantità di traffico che un host può inviare in una connessione
    • soglia (Threshold)
  • il valore della soglia è pari alla metà del valore della Congwin al momento in cui viene rilevata una perdita
  • all'inizio della connessione (slow start) la soglia è posta uguale a
  • L'entità emittente determina nel tempo il valore della finestra disponibile (Available Window - Awdn) dove Awdn =
numero di segmenti di lunghezza massima (MSS) che possono essere inviati senza riscontro. Il numero di segmenti MSS che possono essere inviati senza riscontro non deve superare il minimo tra le larghezze Congwin della finestra di congestione e RecWindow della finestra di ricezione, ovvero: <Awdn min {Congwin, RecWindow} Congwin ed RecWindow sono quantità espresse in numero di segmenti MSS. RecWindow è la larghezza comunicata nell'ultimo ACK ricevuto e ottenuta dall'entità TCP emittente dividendo il numero contenuto nel campo Window di questo ACK per il numero di ottetti che compongono una MSS. Il controllo di congestione AIMD (Additive Increase and Multiplicative Decrease) aumenta il valore di CongWin (sondando la rete) fino a quando non si verifica una perdita. Questo avviene attraverso due meccanismi: - Incremento additivo: aumenta CongWin di 1 MSS a ogni RTT in assenza di eventi di perdita. - Decremento moltiplicativo: riduce a 1 CongWin dopo un evento di perdita. Si verifica una perdita quando la trasmissione stava avvenendo troppo velocemente per la capacità della rete.

larghezza della banda• Una perdita implica che la rete è saturata, quindi bisogna chiudere la finestra e poi riprendere

Dettagli
A.A. 2022-2023
34 pagine
SSD Ingegneria industriale e dell'informazione ING-INF/03 Telecomunicazioni

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher annalucia.lamacchia di informazioni apprese con la frequenza delle lezioni di Telecomunicazioni e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Roma La Sapienza o del prof Polverini Marco.