[[:start|Vai all'inizio]] ====== ADSL: Scegliere l'MTU (PPPoA/PPPoE) ====== ==== PPPoA ==== Protocolli in 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. 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\\ === MTU a 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: Efficienza: 1460/(1460+236)=86.08 %\\ === MTU a 1492 === Questo MTU viene negoziato da molti providers.\\ Efficienza: 1452/(1452+244)=85.61 % === MTU a 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 % === Conclusioni === 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 ==== Protocolli 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 minore. L'MTU massimo impostabile con il PPPoE e 1492; 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. 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\\ === MTU a 1492 === 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%.\\ ==== Conclusioni ==== === 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\\