[projet-agregation] Format des paquets reçus dans un TUN

Laurent GUERBY laurent at guerby.net
Ven 11 Nov 19:54:24 CET 2011


On Fri, 2011-11-11 at 18:54 +0100, Jocelyn Delalande wrote:
> D'où question : je comprend bien que ce pseudo-header de niveau 2 est 
> éventuellement nécessaire, même sur un tun (donc niveau 3), mais ces 
> pseudo en-têtes tun sont elles documentées quelque-part ? On ne trouve pas…

Bonsoir,

A priori pour ce projet on s'interesse au niveau 2 donc
seulement au tap, pas la peine de jouer avec tun :).

La documentation de /dev/tun est dans les sources du kernel :

http://www.mjmwired.net/kernel/Documentation/networking/tuntap.txt

<<
 3.2 Frame format:
103	  If flag IFF_NO_PI is not set each frame format is: 
104	     Flags [2 bytes]
105	     Proto [2 bytes]
106	     Raw protocol(IP, IPv6, etc) frame.
>>

Le seul flag defini dans les sources du 3.0.8 a l'air d'etre :

./include/linux/if_tun.h:#define TUN_PKT_STRIP	0x0001
./drivers/net/tun.c:			pi.flags |= TUN_PKT_STRIP;

Probablement utiliser IFF_NO_PI donc.

> Pour l'instant on va se contenter de dropper ces premiers octets, mais 
> on aimerait comprendre de manière précise ce qu'est ce truc.
> 
> Merci d'avance si vous avez des pistes :)

En cherchant une solution a un probleme particulier des membres de
tetaneutral.net sur une ADSL je pense avoir une méthode alternative de
tunnel aggregant : plutot que de faire du /dev/tun juste faire un tunnel
UDP qui dispatche les paquets sur plusieurs connections UDP. Et ensuite
lancer un simple openvpn (qui va gerer authentification et compression)
par dessus ce tunnel UDP.

J'ai un bout de code qui ne marche pas encore mais ca devrait pas
tarder. Une piste de plus :).

Laurent




More information about the projet-agregation mailing list