Re: Patch for nanosecond scheduling precision in ns-3-click

Eddie Kohler <[email protected]>
Newsgroups gmane.network.routing.click
Organization Harvard University
Message-ID <[email protected]>
Hi Lalith,

This change looks generally good, but surely ns defines some version 
variables that we can use to detect whether "cursimnode->curtime" is a 
timespec or a timeval. If it doesn't, then please add one: #define 
NS_CURTIME_IS_TIMESPEC 1. Then Click can be made to work cleanly with 
either, for instance:

#if NS_CURTIME_IS_TIMESPEC
   *ts = cursimnode->curtime;
#else
   ts->tv_sec = cursimnode->curtime.tv_sec;
   ts->tv_nsec = cursimnode->curtime.tv_usec * 1000;
#endif

The timer scheduling code in routerthread.cc would also need a fork: #if 
CLICK_NS && NS_CURTIME_IS_TIMESPEC /timespec-code/ #elif CLICK_NS 
/timeval-code/ #endif.

Make sense?

Sascha, did you end up trying this?
Eddie


On 12/31/11 7:46 AM, Lalith Suresh wrote:
> Hello all,
>
> After Sascha raised this issue on the ns-3-users list [1], I tried
> making a quick patch to make Click's NS code use timespec, and make
> the corresponding changes on the ns-3 side as well.
>
> I've pushed the changes to my ns-3-click [2] and Click [3]
> repositories. Kindly review. I'll push to ns-3-dev once the Click side
> changes are applied. Note that this will probably break the ns-2
> patches for nsclick.
>
>
> [1] http://groups.google.com/group/ns-3-users/browse_thread/thread/2be8d60531bd82a8
> [2] http://code.nsnam.org/lalith/ns-3-click-dev
> [3] https://github.com/lalithsuresh/click
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.