xenU sending too big packets
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
xen-3.1 (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
xen-3.2 (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
xen-3.3 (Ubuntu) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
etup: amd64, xen0 = ubuntu 7.10 ("gutsy"), xenU = ubuntu 7.10 ("gutsy"),
network config with xenU routing via xen0.
scp xenU:file . very slow, ~50KB/s
scp xen0:file . several MB/s
on xen0:
scp xenU:file . many MB/s
had a look at tcpdump, I see lines like this:
10:55:30.319389 IP (tos 0x8, ttl 64, id 59286, offset 0, flags [DF], proto TCP
(6), length 2948) xenU.22 > desktop: . 47785:50681(2896) ack 0 win 404
<nop,nop,timestamp 20681576 687514747>
10:55:30.319399 IP (tos 0xc8, ttl 64, id 52994, offset 0, flags [none], proto
ICMP (1), length 576) xen0 > xenU: ICMP desktop unreachable - need to frag
(mtu 1500), length 556 IP (tos 0x8, ttl 64, id 59286, offset 0, flags [DF],
proto TCP (6), length 2948) xenU.22 > desktop.41056: . 47785:50681(2896) ack
0 win 404 <nop,nop,timestamp 20681576 687514747>[|icmp]
so the xenU is sending packets with size 2948? why?
ifconfig on xenU:
eth0 Link encap:Ethernet HWaddr 00:16:3E:6D:03:2D
inet addr:xenU Bcast:... Mask:255.
inet6 addr: fe80::216:
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:34918213 errors:0 dropped:0 overruns:0 frame:0
TX packets:34262839 errors:0 dropped:0 overruns:0 carrier:0
RX bytes:12337072144 (11.4 GB) TX bytes:48486812526 (45.1 GB)
so the MTU is 1500 which is fine. xenU sending too big packets.
== WORK AROUND ==
It seems that turning off TX checksum offloading within the domU eliminates the issue:
ethtool -K ethN tx off
summary: |
- xenU sending too big packets on ubuntu 7.10 "gutsy" + xenU sending too big packets |
Changed in xen-3.2 (Ubuntu): | |
status: | New → Confirmed |
Changed in xen-3.3 (Ubuntu): | |
status: | New → Confirmed |
description: | updated |
tags: | added: review-request |
ethtool -K eth0 tx off
in xenU fixes the problem.