[Click] Broadcast packets in ARPQuerier

Eddie Kohler kohler at cs.ucla.edu
Thu Oct 27 09:37:10 EDT 2005


Hi Dagang & Johan,

Well, the Clickish way would be to use multiple elements.  Such as:

/* wherever */
    -> broadcast_class::IPClassifier(
                dst host 255.255.255.255 or dst host LOCALBROADCAST, -);
outq :: Queue -> ...;
broadcast_class[0] -> EtherEncap(0x0800, SRCETH, ff:ff:ff:ff:ff:ff) -> outq;
broadcast_class[1] -> ARPQuerier(SRCETH, ...) -> outq;

But it makes some sense to add functionality to ARPQuerier to handle this, so 
I have.  If you give ARPQuerier a source IP address that is also a prefix, 
then it will figure out the corresponding local broadcast address.  On 
receiving packets destined for either that broadcast address or 
255.255.255.255, it'll send the packet to ff:ff:ff:ff:ff:ff.

Eddie


Dagang LI wrote:
> Dear all,
> 
> Seems that the ARPQuerier does not differentiate broadcast IP packets 
> from unicast IP packets,
> this way when it receives a broadcast packet it will send queries for 
> that broadcast IP address
> which will never be replied. Can we solve this by adding several entries 
> in the _map[] table for
> these special addresses before hand when the table is initiated? Such as 
> mapping between
> 255.255.255.255 and FF:FF:FF:FF:FF:FF.
> 
> Kind regards,
> Johan & Dagang
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click



More information about the click mailing list