Dear Marek,

The ping with 1500 byte packets works.

The three nodes are connected in this way:
B1 --- batman --- GW1 ------- EX1
eth1 on B1 and GW1 is managed by batman. eth2 on gw1 not.
The IP configuration is:

B1:
# ip a
eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 52:54:00:00:20:01 brd ff:ff:ff:ff:ff:ff
bat0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1476 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 00:ff:ad:e2:6f:dd brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.2/24 brd 192.168.100.255 scope global bat0
# ip r
192.168.100.0/24 dev bat0  proto kernel  scope link  src 192.168.100.2
default via 192.168.100.3 dev bat0

GW1;
# ip a
eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 52:54:00:00:30:01 brd ff:ff:ff:ff:ff:ff
eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 52:54:00:00:30:02 brd ff:ff:ff:ff:ff:ff
    inet 192.168.20.3/24 brd 192.168.20.255 scope global eth2
bat0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1476 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 00:ff:15:c2:d0:73 brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.3/24 brd 192.168.100.255 scope global bat0
# ip r
192.168.100.0/24 dev bat0  proto kernel  scope link  src 192.168.100.3
192.168.20.0/24 dev eth2  proto kernel  scope link  src 192.168.20.3

EX1:
# ip a
bat0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 00:ff:a1:ff:bb:32 brd ff:ff:ff:ff:ff:ff
eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 52:54:00:00:40:01 brd ff:ff:ff:ff:ff:ff
    inet 192.168.20.4/24 brd 192.168.20.255 scope global eth1
# ip r
192.168.20.0/24 dev eth1  proto kernel  scope link  src 192.168.20.4
default via 192.168.20.3 dev eth1

I repeated the TCP test between B1 (server) and EX1 (client); the dump on B1 is:

20:04:28.900000 BAT 52:54:00:00:30:01 > 52:54:00:00:20:01: UCAST, ttl 50, IP 192.168.20.4.39127 > 192.168.100.2.8001: TCP, flags [.S....], length 12
20:04:28.910000 BAT 52:54:00:00:20:01 > 52:54:00:00:30:01: UCAST, ttl 50, IP 192.168.100.2.8001 > 192.168.20.4.39127: TCP, flags [.S..A.], length 12
20:04:28.920000 BAT 52:54:00:00:30:01 > 52:54:00:00:20:01: UCAST, ttl 50, IP 192.168.20.4.39127 > 192.168.100.2.8001: TCP, flags [....A.], length 0
20:04:29.820000 BAT 52:54:00:00:30:01 > 52:54:00:00:20:01: UCAST, ttl 50, IP 192.168.20.4.39127 > 192.168.100.2.8001: TCP, flags [...PA.], length 4
20:04:29.830000 BAT 52:54:00:00:20:01 > 52:54:00:00:30:01: UCAST, ttl 50, IP 192.168.100.2.8001 > 192.168.20.4.39127: TCP, flags [....A.], length 0
20:04:29.830000 BAT 52:54:00:00:20:01 > 52:54:00:00:30:01: UCAST, ttl 50, IP 192.168.100.2.8001 > 192.168.20.4.39127: TCP, flags [...PA.], length 6
20:04:29.830000 BAT 52:54:00:00:20:01 > 52:54:00:00:30:01: UCAST, ttl 50, IP 192.168.100.2.8001 > 192.168.20.4.39127: TCP, flags [F...A.], length 0
20:04:29.850000 BAT 52:54:00:00:30:01 > 52:54:00:00:20:01: UCAST, ttl 50, IP 192.168.20.4.39127 > 192.168.100.2.8001: TCP, flags [....A.], length 12
20:04:32.830000 BAT 52:54:00:00:20:01 > 52:54:00:00:30:01: UCAST, ttl 50, IP 192.168.100.2.8001 > 192.168.20.4.39127: TCP, flags [...PA.], length 6
20:04:38.830000 BAT 52:54:00:00:20:01 > 52:54:00:00:30:01: UCAST, ttl 50, IP 192.168.100.2.8001 > 192.168.20.4.39127: TCP, flags [...PA.], length 6
20:04:42.290000 BAT 52:54:00:00:30:01 > 52:54:00:00:20:01: UCAST, ttl 50, IP 192.168.20.4.39127 > 192.168.100.2.8001: TCP, flags [F...A.], length 12
20:04:42.290000 BAT 52:54:00:00:20:01 > 52:54:00:00:30:01: UCAST, ttl 50, IP 192.168.100.2.8001 > 192.168.20.4.39127: TCP, flags [....A.], length 0


and you can find as attachment problem.cap, that contains the dump on EX1. As you can see, packets arrive to EX1, but it seems that the application doesn't recognize them and B1 sends it again! (I ended the communication closing server application).

I have repeated the test without batman and everything works fine (ok.cap is the dump on EX1 in this case).
A question: am I the first one with this problem?
thanks

andrea

2009/10/5 Marek Lindner <lindner_marek@yahoo.de>
On Monday 05 October 2009 20:12:20 a wrote:
> No,
>
> it is not a MTU problem. TCP packet are small (I'm sending only few
> characters) and big packet size (1400 byte) ping works

The limit on ethernet is 1500 bytes - please try that.
If that still works you should log the traffic on the GW with "batctl td" to see
what your packets are doing. Feel free to post the log here if you need help.

Regards,
Marek
_______________________________________________
B.A.T.M.A.N mailing list
B.A.T.M.A.N@lists.open-mesh.net
https://lists.open-mesh.net/mm/listinfo/b.a.t.m.a.n