[Ns-developers] bridging and wifi

Mathieu Lacage mathieu.lacage at sophia.inria.fr
Mon Aug 25 11:56:22 PDT 2008


hi,

I started trying to implement wifi bridging so, I have, naturally, a
couple of questions. Here is the basic scenario I am trying to test:

  Lan      Wifi

 0  1  2 ********* 3
 |  |  |
 -------

Node 2 is bridging lan to wifi. Node 1 is generating traffic towards
Node 3 so, I expect that traffic to be transparently bridged from lan to
wifi. For simplicity, let's say that wifi network is adhoc. Let's go
through the scenario.

1) node 1 sends ARP request macsrc=mac1, macdst=broadcast on lan
2) node 2 receives ARP request, bridge learns that mac1 is located on
lan0, forwards broadcast to all interfaces, except incoming one.
3) node 2 sends wifi broadcast macsrc=mac1, macdst=broadcast
4) node 3 receives wifi broadcast, sees ARP request macsrc=mac1, sends
reply ARP reply (unicast), macsrc=mac4, macdst=mac1.
8) wifi device on node 3 sends unicast frame, waits for wifi ACK

The problem, here is that no one is ever going to generate the wifi ACK
for this unicast frame: node 2 will probably receive the ARP reply
correctly, forward it back to node 1 through the bridge, but it will
never be able to send a wifi ACK to node 3 because it has no idea that
it should do this. wifi ACKs are generated only for unicast frames
targetted at _oneself_ and node 2 does not know that it is the target of
the unicast frame because its own address is not equal to the
destination of the unicast frame.

At this point, I got a bit stomped and went back to some serious wifi
spec reading and thinking but I still don't really know how that is
expected to work. Gustavo, do you have any idea ?

Mathieu



More information about the Ns-developers mailing list