FreeBSD / MPD Ver. 5.7 Paketverluste

15/05/2015 - 18:26 von Frank Graf | Report spam
Hallo,

ich habe einen VDSL Router mit FreeBSD und MPD 5.7. Nun habe ich
festgestellt daß Paketverluste zwischen der physikalischen WAN
Schnittstelle (PPPoE Pakete) und dem virtuellen Interface
(hier: ng0) von MPD auftreten.

Ich hatte Probleme mit einem Client welcher eine MTU von 1500
verwendet. Dadurch bin ich auf dieses Problem gestossen.

Ich habe testweise einen Ping mit einer payload von 1500 ausgeführt
und dies mit tcpdump aufgezeichnet.

So sieht es normalerweise auf der Schnittstelle ng0:
(das 3. Paket fehlt)

No. Source Destination Protocol Length Info
133 fbsd-ip srv-ip IPv4 1496 Fragmented IP protocol (proto=ICMP 1, off=0, ID=ca88) [Reassembled in #134]
134 fbsd-ip srv-ip ICMP 60 Echo (ping) request id=0xb95e, seq3/8448, ttld (no response found!)
135 srv-ip fbsd-ip IPv4 1496 Fragmented IP protocol (proto=ICMP 1, off=0, ID=4c1b)
136 srv-ip fbsd-ip IPv4 32 Fragmented IP protocol (proto=ICMP 1, off72, ID=4c1b)

Bei der ping Sequenz 34 hat es zufàllig einmal funktioniert:

137 fbsd-ip srv-ip IPv4 1496 Fragmented IP protocol (proto=ICMP 1, off=0, ID=ca89) [Reassembled in #138]
138 fbsd-ip srv-ip ICMP 60 Echo (ping) request id=0xb95e, seq4/8704, ttld (reply in 141)
139 srv-ip fbsd-ip IPv4 1496 Fragmented IP protocol (proto=ICMP 1, off=0, ID=4c77) [Reassembled in #141]
140 srv-ip fbsd-ip IPv4 32 Fragmented IP protocol (proto=ICMP 1, off72, ID=4c77) [Reassembled in #141]
141 srv-ip fbsd-ip ICMP 52 Echo (ping) reply id=0xb95e, seq4/8704, ttlX (request in 138)

Die ping Antwort enthàlt 3 Fragmente weil der Router des ISP die
Pakete in PPP einpacken muß und dadurch erneut fragmentieren muß.

Der Server (srv-ip) antwortet mit zwei Paketen. Er hat eine Ethernet
Schnittstelle mit einer MTU von 1500. Dadurch wird beim einfügen des
PPP Headers erneut fragmentiert.

In dem Log auf der physikalischen Schnittstelle (PPPoE) sieht man immer
alle Pakete/Fragmente.

Können die Paketverluste auf einen Konfigurationsfehler zurück zu
führen sein?

Bei der PPP Implementierung als user Prozess unter FreeBSD tritt das
Problem nicht auf. Aus Performance Gründen (VDSL 100) verwende ich MPD.

Mit dem user PPP schafft der Router nur etwa einen Durchsatz von ca.
18 MBit/s. Dabei ist die CPU gar nicht hoch belastet (PPP Prozess
10% Last).

Ist es richtig daß der pppd unter FreeBSD kein PPPoE unterstützt?
Habe in der Doku dazu nichts gefunden.


Frank
 

Lesen sie die antworten

#1 Frank Graf
18/05/2015 - 18:53 | Warnen spam
Am Fri, 15 May 2015 16:26:12 +0000 schrieb Frank Graf:


ich habe einen VDSL Router mit FreeBSD und MPD 5.7. Nun habe ich
festgestellt daß Paketverluste zwischen der physikalischen WAN
Schnittstelle (PPPoE Pakete) und dem virtuellen Interface
(hier: ng0) von MPD auftreten.

Ich hatte Probleme mit einem Client welcher eine MTU von 1500
verwendet. Dadurch bin ich auf dieses Problem gestossen.

Ich habe testweise einen Ping mit einer payload von 1500 ausgeführt
und dies mit tcpdump aufgezeichnet.

So sieht es normalerweise auf der Schnittstelle ng0:
(das 3. Paket fehlt)



Mittlerweile habe ich rausgefunden daß die NAT Funktion von MPD
das Problem verursacht. Wenn ich NAT deaktiviere gibt es keine
Paketverluste:

:~ # tcpdump -n -i ng0 icmp and host <srv-ip>
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ng0, link-type NULL (BSD loopback), capture size 65535 bytes
capability mode sandbox enabled
18:23:28.828079 IP fbsd-ip > srv-ip: ICMP echo request, id 35424, seq 0, length 1472
18:23:28.828117 IP fbsd-ip > srv-ip: ip-proto-1
18:23:28.851736 IP srv-ip > fbsd-ip: ip-proto-1
18:23:28.851875 IP srv-ip > fbsd-ip: ICMP echo reply, id 35424, seq 0, length 1472
18:23:28.851896 IP srv-ip > fbsd-ip: ip-proto-1
18:23:29.829108 IP fbsd-ip > srv-ip: ICMP echo request, id 35424, seq 1, length 1472
18:23:29.829164 IP fbsd-ip > srv-ip: ip-proto-1
18:23:29.852939 IP srv-ip > fbsd-ip: ip-proto-1
18:23:29.853232 IP srv-ip > fbsd-ip: ICMP echo reply, id 35424, seq 1, length 1472
18:23:29.853254 IP srv-ip > fbsd-ip: ip-proto-1



Frank

Ähnliche fragen