Re: time stamps of skb packets in NF_HOOKS callbacks
From: John Que <hidden>
Date: 2006-08-18 05:43:09
Evgeniy, Sorry ! ; last sentence in my reply was chopped so here is my message again with this last sentence (complete this time) Thnks, I appreciate your (quick) answer; Following your answer I tried adding a call to net_enable_timestamp() in a module I wrote which use NF_HOOKS. This is what is done , for example, in ipq_rcv_skb(struct sk_buff *skb) in linux-2.6.14 in net/ipv4/netfilter/ip_queue.c. After doing so I get timestamps which are not 0. what I wonder now is : 1) does this have ANY performance implication (when dealing with a high network load which can get to 50,000 packets per second? 2) It does work as I said, but I want to be cautios: Am I permitted to add this method ? are there any implications for adding this method which can create troubles ? I must say that I am NOT changing anywhere the timestamp; it's only for statistics. Regards, John On 8/17/06, Evgeniy Polyakov [off-list ref] wrote:
On Thu, Aug 17, 2006 at 05:37:15PM +0300, John Que (qwejohn@gmail.com) wrote:quoted
Hello, I am using NF_HOOKS (a "PRE_ROUTING" hook). When I try to print the time stamps (sec and usec) of skb packets which I recieve in the hook callback I get 0. Other skb fileds are correct. According to my understanding, the time stamp should be updated when the packet is received. Isn't it so ? Any idea why am I getting "0" for tstamp fields (tstamp is a field in sk_buff and is an intance of skb_timeval).Timestamps are disabled by default, if you have sockets which enable SO_TIMESTAMP or netfilter queue target and other agents which can enable it, you will see updated values in skb->tstamp. -- Evgeniy Polyakov