Latence réseau et TFTP / PXE
jeudi 3 septembre 2015 à 11:14GuiGui's Show - Liens
Quand ton infra est répartie sur plusieurs sites géographiques en France et dans le monde, y'a des trucs qui marchent pas top-top comme centraliser le serveur TFTP en charge d'envoyer l'image pour installer les desktops. Même chose pour les périphériques qui récupérent leur config par TFTP (téléphones IP, visio,...)
TFTP = 512 octets de payload par défaut
Un lien avec une latence de 30ms (RTT) entre le serveur et le client
Linux = environ 6 Mo
Initrd = environ 30 Mo
36 Mo = 37748736 octets / 512 octets = 73728 paquets nécessaires. Auxquels il faut ajouter les TFTP ACK (qui sont bloquants). On double donc le nombre de paquets. RTT = 30ms, ça veut dire qu'un couple DATA/ACK va mettre 30 ms pour voyager. 73728 couples * 30 ms = 2211840 ms = 36 minutes.
C'est proche de ce que l'on observe : il nous faut 30 minutes pour booter un Linux en PXE au bout de ce lien...
On peut utiliser iPXE (https://linuxfr.org/news/presentation-d-ipxe-un-chargeur-d-amorcage-en-pxe) + HTTP (oui... :( ) sur les machines qui supportent. On peut aussi utiliser l'option TFTP « blocksize » (https://tools.ietf.org/html/rfc2348) sur le peu de matos qui la supporte... Et pour le reste baaaaaaaah...
(Permalink)
Quand ton infra est répartie sur plusieurs sites géographiques en France et dans le monde, y'a des trucs qui marchent pas top-top comme centraliser le serveur TFTP en charge d'envoyer l'image pour installer les desktops. Même chose pour les périphériques qui récupérent leur config par TFTP (téléphones IP, visio,...)
TFTP = 512 octets de payload par défaut
Un lien avec une latence de 30ms (RTT) entre le serveur et le client
Linux = environ 6 Mo
Initrd = environ 30 Mo
36 Mo = 37748736 octets / 512 octets = 73728 paquets nécessaires. Auxquels il faut ajouter les TFTP ACK (qui sont bloquants). On double donc le nombre de paquets. RTT = 30ms, ça veut dire qu'un couple DATA/ACK va mettre 30 ms pour voyager. 73728 couples * 30 ms = 2211840 ms = 36 minutes.
C'est proche de ce que l'on observe : il nous faut 30 minutes pour booter un Linux en PXE au bout de ce lien...
On peut utiliser iPXE (https://linuxfr.org/news/presentation-d-ipxe-un-chargeur-d-amorcage-en-pxe) + HTTP (oui... :( ) sur les machines qui supportent. On peut aussi utiliser l'option TFTP « blocksize » (https://tools.ietf.org/html/rfc2348) sur le peu de matos qui la supporte... Et pour le reste baaaaaaaah...
(Permalink)