|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: May 2005
Città: napoli
Messaggi: 1335
|
MTU ottimale vs PPPoA/PPPoE
Lo scopo di questo posto è dimostrare, con formule alla mano, quale sia l'MTU ottimale per connessioni ADSL con protocolli PPPoA e PPPoE.
A chi se ne frega delle spiegazioni e delle formule consiglio di andare alle conclusioni ![]() Prima di iniziare, è necessario introdurre il concetto di cella ATM. I dati che viaggiono su ADSL vengono sempre impacchettati, indipendentemente dal tipo di incapsulamento scelto, in celle (o pacchetti) ATM. Ogni cella ATM contiente un payload (i dati che il modem invia o riceve) fisso, di dimensione pari a 48 byte. Il payload è sempre accompagnato da un Header (intestazione) di dimensione pari a 5 byte. Quindi di per sè l'efficienza del protocollo ATM è pari a: eff_ATM=48/(48+5)=90.57% Questo significa che i dati che inviamo o riceviamo possono viaggare a una velocità massima idelae pari al 90.57% della velocità "agganciata" dal modem. Tuttavia la velocità massima è in realtà minore a causa dell'overhead introdotto dai protocolli incapsulanti che agiscono a monte dell'ATM. E' importante osservare che l'ATM si aspetta sempre dal protocollo incapsulante superiore un pacchetto dati multiplo di 48 byte, perchè, come abbiamo detto, le celle ATM portano in ogni caso 48 bytes di dati. Se questo non avviene, il protocollo incapsulante superiore aggiunge un padding (riempimento) in maniera tale da soddisfare questa condizione. Questo padding ovviamente non contiene dati e quindi diminuisce l'efficienza dell'adsl, in altre parole diminuisce la velocità con la quale scarichiamo ![]() In generale è possibile annullare il padding agendo sull'MTU. Ma ora procediamo separatamente per PPPoA e PPPoE. PPPoA In questo caso i protocolli utilizzati sono, nell'ordine di incapsulamento: TCP/IP - 40 bytes header PPP - 2 bytes header AAL5 - Padding + 8 bytes Trailer ATM - 5 bytes header per ogni cella Accanto ad ogni protocollo ho indicato il numero di bytes che non fanno parte dei dati utili. Come si vede il protocollo responsabile del padding per avere un numero intero di celle ATM è l'AAL5. Da notare che il pacchetto AAL5 viene scomposto in tante celle ATM fino ad esaurimento del pacchetto stesso. Il numero di celle ATM dipenderà dall'MTU, ovverro dalle dimensioni del pacchetto TCP/IP. Vediamo ora di scoprire qual'e' l'MTU che garantisce la maggiore efficienza per il PPPoA. MTU = 1500 Questo è il valore di MTU generalmente consigliato per il PPPoA. Verifichiamo che sia effettivamente il valore di MTU che garantisce l'efficienza massima del protocollo: Overhead fisso 40 (TCP/IP) + 2 (PPP) + 8 (AAL5) = 50 bytes Numero di celle ATM necessarie Ceil (1500 (MTU) + 2 (PPP) + 8 (AAL5) / 48) = 32 Padding necessario 32*48-(1500 (MTU) + 2 (PPP) + 8 (AAL5)) = 26 OverHead finale = 50 (Overhead fisso)+ 26 (PAdding) + 5*32 (Header celle)= 236 Efficienza 1460/(1460+236)=86.08 % MTU = 1492 Questo MTU viene impostato da negoziazione automatica con il modem da alcuni provider anche su PPPoA Ripetendo i calcoli: Efficienza 1452/(1452+244)=85.61 % Quindi l'efficienza, come c'era da aspettarsi, è scesa. MTU = 1478 Questo MTU è il più grande MTU trasportabile (ricordiamo che il massimo MTU trasportabile è 1500, il collo di bottiglia è il PPP e generalmente le schede Ethernet se colleghiamo il pc al router via ethernet) che garantisce padding nullo. In questo caso si ha: Efficienza 1438/(1438+205) = 87.52 % Quindi 1478 è l'MTU che garantisce la massima efficienza su ADSL con PPPoA. La TCP Window Size dovrebbe essere quindi impostata ad un valore multiplo di 1438. PPPoE In questo caso i protocolli utilizzati sono, nell'ordine di incapsulamento: TCP/IP - 40 bytes header PPP - 2 bytes header PPPoE - 6 Bytes Header MAC - 14 Bytes Header LLC - 10 Bytes Header AAL5 - Padding + 8 bytes Trailer ATM - 5 bytes header per ogni cella Come vediamo, ci sono tre protocolli in più. Questo comporta che l'overhead è maggiore. Ci aspettiamo quindi un'efficienza minora. Ma come vedremo ci possono essere casi in cui il PPPoE è più efficiente del PPPoA... MTU = 1492 Questo è il massimo MTU impostabile con il PPPoE; la limitazione è indotta dal protocollo MAC, che può trasportare un payload massimo di 1500 bytes. A questi 1500 bytes vanno sottratti i 2 bytes del PPP e i 6 bytes del PPPoE, arrivando così ai 1492 bytes lasciati disponibili per il TCP/IP, l'MTU appunto. Andiamo avanti con i calcoli: Overhead fisso 40 (TCP/IP) + 2 (PPP) + 6 (PPPoE) + 14 (MAC) + 10 (LLC) + 8 (AAL5) = 80 bytes Numero di celle ATM necessarie Ceil (1492 (MTU) + 2 (PPP) + 6 (PPPoE) + 14 (MAC) + 10 (LLC) + 8 (AAL5) / 48) = 32 Padding necessario 32*48-(1492 (MTU) + 2 (PPP) + 6 (PPPoE) + 14 (MAC) + 10 (LLC) + 8 (AAL5) ) = 4 OverHead finale = 80 (Overhead fisso)+ 4 (PAdding) + 5*32 (Header celle)= 236 Efficienza 1452/(1452+236)=86.02 % Si vede subito che questa è la massima efficienza raggiungibile con il PPPoE. Da notare che con MTU 1492 il PPPoE è più efficiente del PPPoA, 86.02 % contro 85,61%; la cosa triste è che in PPPoA alcuni provider settano l'MTU su questo valore... Conclusione: PPPoA Valore consigliato per MTU: 1478 Efficienza con valore consigliato: 87.52 % Valore consigliato per TCP Window Size: multiplo di 1438 PPPoE Valore consigliato per MTU: 1492 Efficienza con valore consigliato: 86.02 % Valore consigliato per TCP Window Size: multiplo di 1452 Guadagno PPPoA vs PPPoE: 1.5 %
__________________
Mobo: Giga UD4H - Procio: i7 4770K 4.5 Ghz@1.25 with Noctua 12SE in Push-Pull - Ram: 8X2 GB G.Skill 1600 TridentX - Video: MSI 680GTX - Audio: Creative Z - PSU: Corsair HX1000 ![]() SetVoltage 1.4-Guide x 4870 X2-I quadri della mia girl! Ultima modifica di astaris : 25-04-2008 alle 19:40. Motivo: Correzioni ortografiche varie |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: May 2004
Città: Salerno
Messaggi: 21185
|
|
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: May 2005
Città: napoli
Messaggi: 1335
|
Quote:
__________________
Mobo: Giga UD4H - Procio: i7 4770K 4.5 Ghz@1.25 with Noctua 12SE in Push-Pull - Ram: 8X2 GB G.Skill 1600 TridentX - Video: MSI 680GTX - Audio: Creative Z - PSU: Corsair HX1000 ![]() SetVoltage 1.4-Guide x 4870 X2-I quadri della mia girl! Ultima modifica di astaris : 25-04-2008 alle 19:29. |
|
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: May 2004
Città: Salerno
Messaggi: 21185
|
Quote:
|
|
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: May 2005
Città: napoli
Messaggi: 1335
|
Quote:
![]() Ho copiato il post nell'altro thread ![]()
__________________
Mobo: Giga UD4H - Procio: i7 4770K 4.5 Ghz@1.25 with Noctua 12SE in Push-Pull - Ram: 8X2 GB G.Skill 1600 TridentX - Video: MSI 680GTX - Audio: Creative Z - PSU: Corsair HX1000 ![]() SetVoltage 1.4-Guide x 4870 X2-I quadri della mia girl! |
|
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: May 2004
Città: Salerno
Messaggi: 21185
|
Chiuso
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:55.