TSC-I2 (TSC-Internet2)

TSC-I2 is a software package to provide alternative to traditional gettimeofday() system call, and to provide more precise time at micro-second level. Its components include a user-mode daemon tsci2d, a C library libtsci2 and a set of utility tools as tsci2demo and tsci2measure. Current implementation supports IA32, AMD64 and Power PC architectures, as well as Linux, FreeBSD, Mac OS X and Microsoft Windows operating systems.

It's name consists of two parts: TSC is the 64 bit register that increments at CPU cycle speed, whose high resolution nature is taken advantage of; Internet2 is a consortium working on advanced next generation internet, who is a sponsor and user of this package. Possible Internet2 applications that will be using tsc-i2 include thrulay and owamp.

See also the project page.



Tarball releases of TSC-I2 are published here on a irregular basis. The lastest release is version 0.08.

Source code of TSC-I2 is hosted on sourceforge.net and can be got through anonymous CVS:

cvs -d:pserver:anonymous@cvs.sf.net:/cvsroot/tsc-xluo checkout -P tsc-xluo


1. Background 2. Free-running Clock 3. Periodically Recalibrated Clock 4. PLL Loop Controlled Clock
5. Ongoing Work


  1. David Mills NTP resouce page.
  2. Alex Holkner's fasttime.
  3. Mills, D.L. Improved algorithms for synchronizing computer network clocks. IEEE/ACM Trans. on Networks (June 1995), 245-254. [PS].
  4. A design notes of NTP 4. [PDF].
  5. NTP implementation, v4.2.0. [tarball].
  6. Stanislav Shalunov, NTP Implementation and Assumptions about the Network. [PDF].
  7. Attila Piasztor,Darryl Veitch,PC Based Precision Timing Without GPS. [PDF].


Xun Luo(Homepage, Email) is the author of TSC-I2 and maintains all the source codes and documentations. Your bug reports, improvement suggestions and other inputs are greatly welcome and appreciated. Thanks for using TSC-I2!

Supported by SourceForge.net Logo   Internet2   Google Summer of code

Last updated on $Date: 2005/08/29 04:28:43 $ by Xun Luo.