Discussion:
Probe that fires on incoming IP and/or UDP (Solaris 10)
Toby Riddell
2011-02-15 03:37:50 UTC
Permalink
On Solaris 10, is there a probe that fires on receipt of an IP/UDP
packet? I've spent some time looking for one but can't seem to find
what I want. (It's unfortunate that its not running OpenSolaris as
otherwise we'd use the ip provider.)

What I'm trying to do is collect data on the latency between a packet
being received and it making its way into a userlevel process.

Thanks.
Rao Shoaib
2011-02-15 04:27:47 UTC
Permalink
Post by Toby Riddell
On Solaris 10, is there a probe that fires on receipt of an IP/UDP
packet? I've spent some time looking for one but can't seem to find
what I want. (It's unfortunate that its not running OpenSolaris as
otherwise we'd use the ip provider.)
What I'm trying to do is collect data on the latency between a packet
being received and it making its way into a userlevel process.
Thanks.
_______________________________________________
dtrace-discuss mailing list
It depends from where you would like to start measuring. From the NIC,
MAC layer or IP there are queues in each sub system. If the packet is an
externally generated packet you could trap it in ip at ip_udp_input() or
in udp at udp_input(). However it will be very difficult for you to
filter the packets because it will require knowledge of how the packet
is constructed.

Rao.
Toby Riddell
2011-02-15 15:39:41 UTC
Permalink
Thanks for the pointer - this is what I needed. (For dissecting the
packet I'm going to use the code from udpsnoop.d in the DTrace
Toolkit.)
Post by Toby Riddell
On Solaris 10, is there a probe that fires on receipt of an IP/UDP
packet? I've spent some time looking for one but can't seem to find
what I want. (It's unfortunate that its not running OpenSolaris as
otherwise we'd use the ip provider.)
What I'm trying to do is collect data on the latency between a packet
being received and it making its way into a userlevel process.
Thanks.
_______________________________________________
dtrace-discuss mailing list
It depends from where you would like to start measuring. From the NIC, MAC
layer or IP there are queues in each sub system. If the packet is an
externally generated packet you could trap it in ip at ip_udp_input() or in
udp at udp_input(). However it will be very difficult for you to filter the
packets because it will require knowledge of how the packet is constructed.
Rao.
Loading...