Puoi ridurre RTT aumentando la larghezza di banda su un collegamento?


9

Aumentare la larghezza di banda su un collegamento da, diciamo, 1mb a 30mb riduce la RTT?

Ho trovato una risposta dicendo di no. Qualcuno può spiegare per favore?

Inoltre, quali sono i migliori meccanismi per ridurre la RTT?


Qualche risposta ti è stata d'aiuto? in tal caso, dovresti accettare la risposta in modo che la domanda non continui a comparire per sempre, cercando una risposta. In alternativa, potresti fornire e accettare la tua risposta.
Ron Maupin

Risposte:


9

Aumentare la larghezza di banda su un collegamento da diciamo 1mb a 30mb riduce la RTT?

In breve, sì; stai modificando il ritardo di serializzazione ; a 1 Mbps il ritardo di serializzazione non è banale.

Confrontare il ritardo di serializzazione per un pacchetto di 1500 byte a 1 Mbps e 30 Mbps:

1500 Bytes * 8 bits/Byte / 1,000,000 bits/second    = 12 milliseconds (at 1Mbps)
1500 Bytes * 8 bits/Byte / 30,000,000 bits/second   = 0.4 milliseconds (at 30Mbps)

Ricorda anche che quelli sono numeri unidirezionali; dovresti raddoppiarli quando consideri RTT. Se ti interessa la differenza di 11,6 millisecondi in ciascuna direzione a 1500 byte è un'altra domanda, ma a rigor di termini puoi influenzare RTT con la velocità di collegamento.


1m contro 30m su, diciamo, un collegamento ethernet 100m, non farà alcuna differenza. Ogni frame, cella di atm, ecc. Si muove alla velocità del collegamento.
Ricky Beam,

Per quanto comune sia Ethernet, nessuno ha detto nulla al riguardo, quindi è prematuro insistere sul fatto che sia necessario. Esistono molti servizi WAN offerti senza Ethernet. Il bitrate grezzo nella scheda di rete è ciò che dovrebbe essere usato nella formula sopra
Mike Pennington,

Ciao Mike, grazie per la tua risposta, apprezzalo. E se sto semplicemente usando il ping? Se eseguo il ping da un'estremità all'altra, il ping RTT rimarrà lo stesso indifferente dal collegamento da 100 Mb a un collegamento da 1 GB. (Completa NIC fisica diversa) Non trasferire alcun dato da un punto a un altro in cui vengono considerati i ritardi di serializzazione. Grazie
NetworkNinja il

1
Spiega quale problema stai risolvendo riducendo la latenza. Sembra che potresti provare a risolvere un problema specifico ma abbiamo bisogno di ulteriori informazioni al riguardo
Mike Pennington,

6

Aumentare la larghezza di banda su un collegamento da diciamo 1mb a 30mb riduce la RTT?

No, aumentare la larghezza di banda non riduce la RTT in senso stretto. Dico "rigorosamente parlando" perché dipende da cosa stai misurando!

Scenario 1: il livello fisico

Data la seguente semplice topologia che è facile da seguire, una connessione Ethernet in rame in esecuzione a 1 Mbps con un MTU di 1500 byte tra due dispositivi con un cavo da 10 metri, questo ha lo stesso RTT (il tempo necessario per un pacchetto di richiesta echo ICMP per viaggiare dal dispositivo 1 al dispositivo 2 e il messaggio di risposta echo ICMP per viaggiare dal dispositivo 2 al dispositivo 1) come una connessione Ethernet in rame 10/30/50 / 100mbps tra loro con un MTU da 1500 byte sullo stesso cavo da 10 metri.

Questo perché il "ritardo" del segnale lungo il cavo di rame è correlato alla sua costante dialettica ( permittività relativa ). Vedi quelle due pagine di Wikipedia per ulteriori informazioni sulla fisica che non rientrano nel campo di applicazione qui.

In sostanza, il "tempo di volo" dei segnali elettrici lungo il cavo di rame è la stessa velocità per una connessione da 10 Mbps e 1000 Mbps quando si utilizza lo stesso cavo Cat5e di lunghezza e grado. La differenza è che con una connessione a 10 Mbps i dati vengono codificati sul filo meno frequentemente di una connessione a 100 Mbps, quindi ci sono piccoli spazi tra i bit di dati quando vengono posizionati sul filo (questo si chiama ritardo di serializzazione ). Questi due articoli di Wikipedia espandono ulteriormente questi concetti: Bit time e Slot time .

Scenario 2: livello 4 e versioni successive (esempio TCP)

Data la seguente topologia di esempio, una connessione Ethernet in rame funzionante a 1 Mbps con un MTU di 1500 byte tra due dispositivi con un cavo da 10 metri. Se hai una quantità X di dati che supponiamo siano 100 Megabyte di dati da trasportare tra il dispositivo 1 e il dispositivo 2, ciò richiederà più tempo rispetto a una connessione Ethernet in rame da 30 o 100 Mbps con un MTU di 1500 byte su un 10 metri cavo di rame tra gli stessi due dispositivi. Questo perché richiede più tempo per codificare e trasmettere i dati sul filo e la scheda NIC di ricezione sarà altrettanto lenta nel ricevere e decodificare i segnali.

Qui l'RTT di "dati effettivi" che è forse un singolo file da 100 MB richiederà più tempo perché con i protocolli di livello superiore introdotti non solo è necessario trasferire i dati ma anche i pacchetti SYN, ACK e PUSH possono essere scambiati qui usando ulteriori bit time, prima a livello di applicazione è possibile inviare un messaggio dal dispositivo 2 al dispositivo 1 dicendo "Ho ricevuto tutti i dati ora".

Inoltre, quali sono i migliori meccanismi per ridurre la RTT.

Risposta breve: non molto

Risposta lunga:

Per portare questo in un esempio di vita reale espandendo gli esempi sopra; Se stai eseguendo il "ping" tra due dispositivi collegati tra loro tramite diversi router e / o switch intermedi, l'RTT è un prodotto della distanza fisica e del tempo impiegato dai segnali per viaggiare così lontano e indietro attraverso tutti quei dispositivi (in pratica ). Se QoS è configurato su questi dispositivi, è possibile aumentare anche il ritardo end-to-end e complicare ulteriormente il modello.

Non c'è molto che tu possa fare qui a parte (in una situazione puramente ipotetica in cui il denaro non è un oggetto e la politica non importa ecc.); Installare una connessione in fibra che corre direttamente dal dispositivo 1 al dispositivo 2 tagliando tutti gli switch e i router in mezzo. Sarebbe uno scenario ideale. Realisticamente potresti aggiornare qualsiasi collegamento in rame o wireless alla fibra (non che la fibra sia enormemente più veloce [ i ], [ ii ]) e provare a rendere il percorso di connessione il più diretto possibile in modo che i dati passino attraverso il minor numero di dispositivi intermedi e diversi connessioni fisiche. L'ottimizzazione QoS e l' ingegneria del traffico (instradamento basato sui vincoli) possono anche aiutare su distanze maggiori con molti salti intermedi.

Se vuoi trasferire dati tra i punti con quello che ritieni abbia "un RTT troppo alto" puoi guardare tecnologie come TCP SACK che è già in uso in molti posti, ma se leggi su quello ti darà un punto di partenza in quanto ci sono altre tecnologie simili che puoi quindi esaminare. Ciò include tecnologie come acceleratori e compressori WAN, anche se ciò si estinguerebbe dall'ambito di questo argomento. Con il trasferimento dei dati su un collegamento con RTT elevato è necessario considerare il BDP (prodotto di ritardo di larghezza di banda, [ iii ]) - quando si utilizza qualcosa come TCP, questo ti terrà sempre indietro.

[i] Il tempo di "volo" su un mezzo dielettrico in rame è molto simile a una guida d'onda in fibra

[ii] Ciò potrebbe cambiare, tuttavia, nuove ricerche e tecnologie spero che la velocità della luce in una fibra salga dalla media di 0,6 * c a quasi 1,0 * c, http://www.orc.soton.ac.uk/ speedoflight.html

[iii] http://www.kehlet.cx/articles/99.html - Esempio BDP


Grazie per la tua risposta Bensley. Quindi, se voglio migliorare il mio ping al mio ISP (diciamo che ho un server dedicato nel mio ISP) posso ridurre il mio ping a loro aumentando il mio collegamento nel mio ufficio? Grazie
NetworkNinja il

A meno che non apporti una modifica sostanziale, probabilmente se al momento disponevi di un collegamento wireless e sei passato a fibra ottica o hai un collegamento ADSL di rame che passa attraverso molti router (come spesso fa l'ADSL) prima di raggiungere i tuoi server, la modifica a fibra ottica potrebbe ridurre la RTT. Passare da 10 a 30 Mbps sullo stesso collegamento non cambierà l'RTT. = (Forse di alcuni nanosecondi! Nulla che noteresti però). Questo perché il segnale viaggia attraverso meno parti dell'attrezzatura (di solito) per raggiungere la destinazione ...
jwbensley

... Se si disponesse di una connessione in rame per oltre 10 miglia, se fosse necessario connettersi a molti switch e / o router perché il segnale deve essere ripetuto. Ogni volta che si inseriscono altri dispositivi nel percorso, l'RTT aumenta. Questo perché ogni dispositivo che riceve il segnale deve interpretarlo prima di inoltrarlo. Quando si confronta una connessione da 1 Gbps e una connessione da 10 Gbps, NON si spostano 1 Gb di dati 10 volte al secondo, si spostano 10 Gb di dati una volta al secondo (si spostano più dati, non si spostano dati più velocemente)
jwbensley

@networkninja perché sei così ossessionato dalla riduzione dei tempi di ping. Se sei davvero su un collegamento da 1 Mbps, il ping non è sempre una misurazione accurata della latenza poiché potrebbe essere diverso dalla dimensione del pacchetto del tuo traffico reale
user5025

4

La cosa che influenza più direttamente RTT è la velocità di segnalazione. Guarda la progressione di Ethernet negli eoni: 10M, 100M, 1G, 10G, 40G e 100G. Ogni versione successiva (tranne 40G) è 10 volte più veloce della precedente; il tempo di trasmissione di un singolo bit è lungo 1/10. Il tempo di trasmissione di un frame completo (1500B) diminuisce di un fattore 10.

Pertanto, la risposta alla tua domanda dipende dal livello del collegamento. Se la modifica della larghezza di banda non ha variazioni corrispondenti nella velocità del collegamento, avrà un effetto minimo su RTT, poiché la sorveglianza del traffico non viene eseguita per bit . Ad esempio, la mia connessione metro-e in ufficio è fisicamente 1G, ma ha una forma di 100M su entrambe le estremità. I bit scorrono a velocità 1G; i frame Ethernet verranno ritardati se necessario per mantenere la media (oltre 1s, 10s, ecc.) a 100M o meno. In termini semplici, un singolo frame trasmette alla velocità del collegamento.

Se stai parlando di DSL, allora il cambiamento nella larghezza di banda è molto probabilmente anche un cambiamento nella velocità del collegamento. Ma non sempre. La velocità di sincronizzazione sarà normalmente superiore alla frequenza del profilo. La mia linea DSL si sincronizza a 8 M verso il basso, 1 M verso l'alto, ma il profilo lo limita a 6 / 512k. Ho visto le linee Uverse sincronizzarsi fino a 60 M ma hanno ancora un profilo di 25 M.


3

Nessuno ha menzionato il caricamento del link.

Su collegamenti altrimenti vuoti, allora non c'è molta differenza tra 1 Mb e 30 Mb - assicurati che la codifica possa essere eseguita in 1/30 del tempo, ma questo è trascurabile se la distanza è il fattore dominante.

Tuttavia, se il collegamento da 1 Mb è pesantemente caricato (sovraccarico?), Si vedranno tempi di ping aumentati (e fluttuanti).

Lo stesso carico di traffico su un collegamento da 30 Mb rappresenta solo un po 'della sua capacità e quindi i tempi di ping saranno più rapidi e coerenti.

Il TWAMP (Two-Way Active Measurement Protocol) definisce un metodo flessibile per misurare le prestazioni IP di andata e ritorno tra due dispositivi qualsiasi in una rete che supporta lo standard.


1
Credo che tu stia parlando di ritardo in coda
Mike Pennington,

1

La vera risposta è complicata.

La latenza è composta da più componenti.

  1. Tempo trascorso viaggiando attraverso il mezzo fisico
  2. Tempo trascorso seduto in coda
  3. Tempo impiegato per la serializzazione e la deserializzazione dei dati
  4. Tempo impiegato per l'elaborazione

Il tempo trascorso viaggiando attraverso il mezzo fisico può essere modificato solo scegliendo un altro mezzo fisico.

Il tempo trascorso seduti in coda sarà generalmente ridotto con collegamenti più veloci. Quindi il tempo speso per la serializzazione e la deserializzazione dei dati.

Gli effetti sull'elaborazione possono diventare complicati. Se la fase di elaborazione rimane invariata, in genere richiederà meno tempo a una velocità di trasmissione dati più rapida. Tuttavia, le tecniche progettate per estrarre più larghezza di banda dai collegamenti esistenti possono anche introdurre ulteriori ritardi di elaborazione. Un classico esempio di ciò è l'interlacciamento DSL.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.