Newsgroup: it.comp.reti.ip-admin
Titolo: Perché bisogna modificare l'MTU?

Dalla documentazione che ho trovato in rete, abbassando l'MTU si evita la
frammentazione dei pacchetti aumentando l'efficienza della trasmissione
dati. In teoria, anche se un pacchetto viene frammentato, dovrebbe arrivare
a destinazione comunuque. Allora, perch� con alcune connessioni adsl,
tipicamente quelle su ppoe bisogna abbassare il valore dell'MTU altrimenti
si hanno problemi nell'utilizzo della rete?
Da quello che vedo, sembrerebbe che i pacchetti non debbano essere
frammentati soltanto metre attraversano il tratto di rete che va dal router
adsl di casa al primo router del provider. Se � cos� perch�?
Grazie

 wrote in message 
news:h4i8or$4p7$1...@aioe.org...

Mi sembra che PPPoE utilizzi 8 bytes in pi� per gli headers, perci� conviene 
abbassare l'MTU a 1492 bytes (di solito su Ethernet � 1500) per evitare che 
il pacchetto mandato al livello 2 superi il massimo supportato.
La frammentazione � sempre meglio evitarla perch� � un'operazione onerosa 
per il router o l'host di destinazione (� il router a frammentare, ma � 
l'host di destinazione a dover riassemblare i pacchetti). 

 Grazie
Lungo la tratta client > server la possibilità che il pacchetto venga
frammentato perchè qualche apparato a MTU minore di 1500 c'è, la
regola che si usa noramalmente è frammentare se necessario prima
possibile per ridurre le possibili frammentazioni successive.
Se tu hai mtu a 1500 e usi una pppoe tutti i tui pacchetti che
superano il valore 1492 vengono divisi in 2. e ti trovi poi con un
pacchetto da 1492 e uno più piccolo,
se poi il traffico passa su una macchina con mtu 1400 (esempio)  il
pacchetto da 1492 (che era già stato frammentato in due pacchetti)
viene diviso nuovamente in uno da 1400 + uno più piccolo,
sei partito con un unico pacchetto da 1500 e ti trovi con tre
frammenti, se il pc fosse stato settato per generare pacchetti da 1400
(questo valore è solo un esempio) invece di 3 i frammenti sarebbero
nel migliore dei casi 2.
Per vedere lungo una tratta che MTU max è disponibile devi fare ping
ip (uno dei server che devi raggiungere o un sito internet) -f (per
bloccare la frammentazione) -l 1472
1472 corrisponde a 1500 di mtu perchè và agginta la dimensione del
header ip che è 28, tu devi diminuire questo valore fino a quando il
ping passa, al valore trovato sommi 28 e trovi il miglior MTU per
quella tratta.
Ciao

 possibile per ridurre le possibili frammentazioni successive.
[cut]
Grazie ad entrambi, sulla teoria ci siamo, che la frammentazione � meglio
evitarla, quello che non mi spiego � perch� venga reso impossibile il
normale uso della rete.
Es.: su una sessione ssh, server connesso ad adsl con ppoe ed mtu 1500,
finch� davo comandi brevi tutto andava, se ad esempio facevo un ls -l di una
directory si bloccava la connessione. Abbassato l'mtu ha ripreso a funzione.
L'altra cosa che non mi torna � che se io che ho ppoa (mtu 1500), mi collego
a qualcuno con ppoe (mtu 1492), perch� soltanto chi utilizza ppoe deve
portare obbligatoriamente l'mtu a 1492 e non entrambi visto che i pacchetti
viaggiano in entrambe le direzioni?

viaggiano in entrambe le direzioni?
MSS.
-- 
ciao, |
Marco | The Internet is full. Go away.  -- Joel Furr

 Firewall stupido che blocca gli ICMP fragmentation needed.
ho trovato:
When using SSL / SSH, the sending machine will set the IP “do not
fragment” (DF) header bit to “1″
Che sia vero? io non uso ssh.
Ciao

 viaggiano in entrambe le direzioni?
Se tu fai la prova di ottimizzazione puntando il ping a una macchina
connessa tramite pppoe probabilmente il risultato sarà 1464, se tu
vuoi ottimizzare specificatamente verso quell'ip puoi allineare il tuo
MTU a quel valore, naturalmente se statisticamente tu ti connetti più
spesso a apparati con MTU 1500 abbassando l'MTU tu genererai una
frammentazione maggiore di quella necessaria.
Nel caso della frammentazione, comunicando verso una connessione pppoe
considera che un numero di pacchetti X passeranno su internet a 1500
MTU e solo tra l'ISP e il client di destinazione saranno frammentati a
1492.
Ciao

 Grazie ad entrambi, sulla teoria ci siamo
Ma anche no :)
A partire dal fatto che la maggior parte del traffico ha DF=1 e quindi non 
esiste frammentazione.
Ciao,
-- 
  Daniele Orlandi							つづく

 non esiste frammentazione.
Quindi questo spiegherebbe il perché si verifica il problema. Ma di chi è 
il compito di impostare questo flag nei pacchetti? Programmando e facendo 
uso dei socket, non mi sono mai imbattutto nella possibilità di settare 
questo flag. Qualche impostazione a livello di sistema operativo?