Hi,

Something I discovered with the latest git pull code:

Using the same interface in a fromdevice and todevice element, seems to cause a 
loop e.g.

Eth0 receives 1 pps but transmits e.g. 80k pps @ 1500bytes or line rate 1gbps. 
This can be replicated with the config below:

FromDevice(eth0, PROMISC true)->Queue->ToDevice(eth0);

To test this the following example can be used at the source of the packets:

// Where ethX is connected to eth0:
RatedSource(DATA \<DATA>, RATE 1, LIMIT 10, ACTIVE true, STOP true) -> Queue -> 
ToDevice(ethX);
FromDevice(ethX, PROMISC true)
-> c::Counter -> Queue -> Discard;


Script(
    wait 1,
    print c.rate,
    loop
);

Changing the interface in the ToDevice to a different interface e.g. eth1 
solves the problem...

When adding another fromdevice and todevice pair even with different interfaces 
(as long as a fromdevice interface and todevice interface match somewhere in 
the config) the problem returns e.g
FromDevice(eth0, PROMISC true)->Queue->ToDevice(eth1);
FromDevice(eth1, PROMISC true)->Queue->ToDevice(eth0);

I have checked whether this is because of promiscuous mode but found the same 
result when removing promisc and using EtherEncap.

A
_______________________________________________
click mailing list
[email protected]
https://amsterdam.lcs.mit.edu/mailman/listinfo/click

Reply via email to