On Jul 4, 2012, at 6:08 PM, Budnev Vladimir wrote:

> Good day to all.
> 
> What is the correct way to distinguish udp packets that obtained by 
> application and were send on 255.255.255.255 ip addr from those that were 
> send to unicast ip?
> 
> Seems it is impossible with read/recvfrom so we'v made that with libpcap. It 
> coul be done with directly bpf api without pcap wrapper but i'm not sure 
> about how big pcap overhead is.
> 
> The questions is if we have about 1Gb incoming traffic and using pcap filter 
> for specific port how big is impact of using pcap in such situation? Is it 
> possbile to estimate? Target traffic is about 1Mbit and while testing CPU is 
> about 1-2% but i'm not sure about all the conditions.
> 
> recfrom recieves all the data without loss in such condition, is it possible 
> that pcap because of its filtering nature(i dont know in details how bpf is 
> realized deep in kernel:( ) will add big overhead while listening?
> 
> 
> _______________________________________________
> freebsd-...@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"


If I'm understanding your question correctly you can lookup the ip(4) manual 
page :

     If the IP_RECVDSTADDR option is enabled on a SOCK_DGRAM socket, the 
recvmsg call will return the destination IP address for a UDP datagram.  The 
msg_control field in the msghdr structure points to a buffer
     that contains a cmsghdr structure followed by the IP address.  The cmsghdr 
fields have the following values:

You can use this in you application and get the destination address of the 
packets be it unicast IP or the broadcast 
address._______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"

Reply via email to