Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 35.262.729 Times

Time::Skew 0.1

  Date Added: January 11, 2010  |  Visits: 840


Report Broken Link
Printer Friendly Version

Product Homepage
Download (84 downloads)

Time::Skew is a Perl module that computes local clock skew with respect to a remote clock. SYNOPISI use Time::Skew # Init Convex Hull and timing data my $hull=[]; my $result={}; # Iterate data point introduction Time::Skew::convexhull($result,$datapoint,$hull); This module supports the computation of the skew between two clocks: the (relative) skew is the speed with which two clocks diverge. For instance, if yesterday two clocks, at the same time, showed respectively 10:00 and 10:05, while today when the former shows 10:00 the latter shows 10:04, we say that their relative skew is 1 minute/24 hours, roughly 7E-4. The module contains one single subroutine, which accepts as input a pair of timestamps, associated to a message from host A to host B: the timestamps correspond to the time when the message was sent, and to the time when message is received. Each timestamp reflects the value of the local clock where the operation takes place: the clock of host A for the send, the clock of B for the receive. Please note that the module does _not_ contain any message exchange facility, but only the mathematics needed to perform the skew approximation, once timestamps are known. The subroutine takes as argument: a reference to a hash where values related to the timing of the network path from A to B; a 2-elems array (a data point in the sequel) containing the timestamp of the receive event, and the differece between the send timestamp and the receive timestamp for one message; a stack containing some data points, those that form the convex hull. The usage is very simple, and is illustrated by the following example: #!/usr/bin/perl -w use strict; use Time::Skew; # Initialize data my $hull=[]; my $result={}; while ( 1 ) { # Exchange message and acquire a new data point my $datapoint = acquire(); # Call the convexhull subroutine Time::Skew::convexhull($result,$datapoint,$hull); # After first message some results are still undefined ( defined $result->{skewjitter} ) || next; # here you can use the results }; } The data returned in the "result" hash is the following: result->{skew} the clock skew; result->{skewjitter} the variance of the skew estimate, used to estimate convergence; result->{jitter} difference between the current delay and the previous delay; result->{delay} the communication delay, decremented by a constant (yet unknown) value, used to compute communication jitter; result->{elems} the number of data points in the convex hull; result->{select} the index of the data point in the convex hull used to compute the skew; result->{itimestamp} the timestamp, first element in the data point just passed to the subroutine; result->{delta} the timestamp difference, second element in the data point just passed to the subroutine; The data returned in the "hull" stack is a series of data points, selected from those passed to successive calls of the subroutine. The number of data points in the "hull" stack usually does not exceed 20 units. The algorithm is very fast: each call consists in scanning at most all data points in the "hull" stack, performing simple arithmetic operations for each element. The algorithm must be fed with a sequence of data points before returning significant results. The accuracy of the estimate keeps growing while new data points are passed to the subroutine. A rough rule of thumb to evaluate estimate accuracy is to observe the skew jitter, and assume it corresponds to the skew estimate accuracy. Paths with quite regular communication delay (small jitter) converge faster..

Requirements: No special requirements
Platforms: Linux
Keyword: Clock Clock Skew Convex Hull Data Data Point Data Points Hull Libraries Module Perl Module Points Respect To Skew Timeskew
Users rating: 0/10

License: Freeware Size: 45.06 KB
More Reviews or Write Review

Miscellaneous  -  Convex hull and diameter of 2d point sets 1.1
This script returns the convex hull (separated into upper and lower chains of vertices) and the diameter (farthest pair of points), given input consisting of a list of 2d points represented as pairs (x,y). The convex hull algorithm is Graham's...
Miscellaneous  -  Finding the convex hull of a set of 2D points 1.0
This simple code calculates the convex hull of a set of 2D points and generates EPS files to visualise them.
Development Tools  -  FAST CONVEX HULL ALGORITHM 1.0
Even if totally m-coded, this routine is particularly fast in computing convex hull of 2D points. In many cases seems to be much faster than the matlab library routine. The main reason is that, differently from convhull, this algorithm jumps the...
10 KB  
Development Tools  -  Fitting NURBS to a given set of data points 1.0
Run the file main.m and everything works fine.The matrix A contains the data points and it can be changed in the file inputfile.m
337.92 KB  
The Matlab convhulln is a gateway to the quickhull algorithm ( see ). In my opinion, one weak point of this mex routine is that it processes all the points without performing any preliminary filtering.In many cases it would be faster...
10 KB  
Libraries  -  Data::Type::Docs 0.01.15
Data::Type::Docs is a Perl module with the manual overview. MANUALS Data::Type::Docs::FAQ Frequently asked questions. Data::Type::Docs::FOP Frequently occuring problems. Data::Type::Docs::Howto Point to point recipes how to get...
70.66 KB  
Libraries  -  Audio::Data 1.029
Audio::Data is a module for representing audio data to perl. SYNOPSIS use Audio::Data; my $audio = Audio::Data->new(rate => , ...); $audio->method(...) $audio OP ... Audio::Data represents audio data to perl in a fairly compact and...
88.06 KB  
Libraries  -  Data::Page::Viewport 1.02
Data::Page::Viewport is a Perl module to scroll thru data a page, or just an item, at a time. Synopsis This is a complete, tested, runnable program. #!/usr/bin/perl use strict; use warnings; use Data::Page::Viewport; #...
8.19 KB  
Libraries  -  Data::Stag::HashDB 0.10
Data::Stag::HashDB is a perl used for building indexes over Stag files or objects. SYNOPSIS # parsing a file into a hash my $hdb = Data::Stag::HashDB->new; $hdb->unique_key("ss_details/social_security_no"); $hdb->record_type("person"); my...
440.32 KB  
Libraries  -  Data::FormValidator::Constraints 4.40
Data::FormValidator::Constraints is a Perl module with basic sets of constraints on input profile. SYNOPSIS use Data::FormValidator::Constraints qw(:all); In an Data::FormValidator profile: constraint_methods => { email => email(), fax =>...
88.06 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  Math::GMPf 0.29
Math::GMPf - perl interface to the GMP library's floating point (mpf) functions.
30.72 KB  
Programming  -  Net::Wire10 1.08
Net::Wire10 is a Pure Perl connector that talks to Sphinx, MySQL and Drizzle servers. Net::Wire10 implements the low-level network protocol, alias the MySQL wire protocol version 10, necessary for talking to one of the aforementioned...
30.72 KB  
Programming  -  logilab-common 0.56.2
a bunch of modules providing low level functionnalities shared among some python projects devel Please note that some of the modules have some extra dependencies. For instance, logilab.common.db will require a db-api 2.0 compliant...
174.08 KB  
Programming  -  OpenSSL for linux 1.0.0a
The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolkit implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a...
3.83 MB  
Libraries  -  wolfSSL 4.0.0
The wolfSSL embedded SSL/TLS library is a lightweight SSL library written in ANSI standard C and targeted for embedded and RTOS environments - primarily because of its small size, speed, and feature set. It is commonly used in standard operating...
3.88 MB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB