Portál AbcLinuxu, 10. května 2025 08:45
Mam server (linux debian lenny 5.0.9 amd64), ktory bezi na XenServeri. A mam klientov, ktori su schovani za IPSec tunelom nasledovnym sposobom:
<Server> ---ethernet--- <IPSec_VPN_EndPoint> --( ISP )-- <IPSec_VPN_EndPoint> ---ethernet--- <Klient>
A mam nasledovny problem: Na uvedenom serveri bezi webova aplikacia, na ktoru pristupuju klienti spoza IPSec tunela... lenze zobrazovanie web obsahu je neskutocne pomale a po investigacii (tcpdump/wireshark) som zistil, ze dochadza k velkemu mnozstvu retransmisii a strate packetov z dovodu, ze server proste posiela ramce lubovolnej velkosti kludne presahujucej 1500B (napr. 17000B ramec a pod.. v zavislosti od payloadu)!
Podla mojho zistovania to klientom na rovnakej subnete ako je server, vobec nevadi. Vadi to az IPSec tunelu, ktory ma MAX MTU este o nieco nizsie ako je 1500 - konkretne 1260B. Teda pokus prepasovat kazdy ramec velkosti vacsej ako je 1260B skonci jeho dropnutim (ak je DF bit je na 1... a to veru ze nastaveny je). Za normalnych okolnosti tento problem pri pouziti IPSec tunela a inych serveroch riesim modifikovanim ziaducej MSS od klienta (na clamp-mss-to-pmtu cez iptables) a obe strany spojenia sa bez problemov prisposobia.
Avsak pri tomto serveri to vsetko zlyhalo, konkretne:Zaujimave vsak je, ze pri zostavovani TCP spojenia si v SYN packetoch oba konce vymenia spravne hodnoty MSS.. presne podla toho, ako im to forcnem. Avsak server to proste ignoruje...
Este dodam, ze problem sa netyka jednej aplikacie (web server), ale odskusal som to napr aj pri prenose suborov cez ssh (scp)... problem je uplne rovnaky.
Za akekolvek rady dakujem.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.