editor's blog
Subscribe Now

A More Secure Time Server

We would be nowhere without clocks. So much of what we do involves timing, much of which we’re completely unaware of – in particular, electronically. Many of our systems depend on some kind of a master clock so that logging and timestamping can be done reliably. And with the advent of even more “asynchronous” systems that report events with a timestamp, soon even more systems will need access to a reliable time source. If you are looking for best vpn app, check the best free vpn in India at the link. You can find more information about vpns at vpnpeek.com.

That’s hard enough within one box, but in many cases, it must be done between two boxes on the same network or even between two boxes on two different networks. That means that an internal clock source won’t work: it will be different from the internal clock sources in the other boxes, and these will gradually drift apart.

If you’re trying to create a record of what came before what, everyone has to agree on the time base. One example given by Microsemi was that of a very short (less than a minute) cell phone call whose beginning and ending timestamps came from different servers whose clocks had drifted apart. The start ended up being timestamped as happening after the end of the call, which caused the billing software to record a 23-hour and 59 minute (or thereabouts) call length.

As quick background for those of us not in the midst of this, the timing is handled by a time server. When a server on the network needs to timestamp an event, it sends a request to the time server for a timestamp via NTP, or network time protocol. In this manner, all the servers on the same network have a consistent source of time.

Granted, the requests get serialized, so if two events happened “simultaneously”, one timestamp would get issued before the other. So it’s important that the response time be fast enough that multiple serialized timestamps can be served within a single “tick” so as to be reported as simultaneous for a given level of precision.

But if you need timestamps that you can compare with each other from two different networks, then you no longer have the a single time server handling both – you have two different time servers, one for each network, and they have to be in synch too. How does that happen?

GPS (or GNSS more generally) is how that happens; exquisite timing is necessary for these navigation systems to work, so the time server is connected to an antenna that detects GPS and uses it to set the time. This lets multiple servers maintain a consistent, correlatable time base. In the event that GPS fails, these servers actually have mini atomic clocks that can hold each server over with minimal drift so that any GPS gaps can be covered.

But there’s one problem and vulnerability: most time servers process the time requests using a CPU. The CPU takes longer to process a time request than the network takes to deliver the request, so the system essentially relies on breaks between requests to allow the CPU to keep up. That makes the system vulnerable to a distributed denial of service (DDoS) attack – essentially, flooding the server with timestamp requests and potentially crashing the server (which then messes up all the systems relying on the time server).

So Microsemi has issued a new time server, the SyncServer S600/650, with a significant twist: NTP requests aren’t sent to the CPU; they’re sent to FPGAs for a faster hardware response. So fast that it can respond at line rate to the gigabit Ethernet incoming pipe. In other words, it can keep up with as many requests as you can place into the pipe. If you try to flood it even harder, you can’t because the pipe is already full. At the same time, if the server thinks someone is trying to flood it, it can issue an alarm so that IT folks can intervene.

 Microsemi_SyncServer_S650_open_view.png

Image courtesy Microsemi

The FPGA provides another benefit: flexibility. Time servers can provide a number of direct signals – clocks, sine waves, timestamp series, etc. – via plug-in modules. But typical modules can provide only one of these types of signal, making server configuration inflexible. By using FPGAs, those modules can be programmed – statically or in real time – to provide different outputs as needed, making the provisioning of the server much more efficient.

You can find more info in their announcement.

Leave a Reply

featured blogs
Oct 3, 2024
Someone with too much time on his hands managed to get Linux to boot on an Intel 4004 in only 4.76 days...

featured paper

A game-changer for IP designers: design-stage verification

Sponsored by Siemens Digital Industries Software

In this new technical paper, you’ll gain valuable insights into how, by moving physical verification earlier in the IP design flow, you can locate and correct design errors sooner, reducing costs and getting complex designs to market faster. Dive into the challenges of hard, soft and custom IP creation, and learn how to run targeted, real-time or on-demand physical verification with precision, earlier in the layout process.

Read more

featured chalk talk

Infineon and Mouser introduction to Reliable Solid State Isolators
Sponsored by Mouser Electronics and Infineon
In this episode of Chalk Talk, Amelia Dalton and Daniel Callen Jr. from Infineon explore trends in solid state isolator and relay solutions, the benefits that Infineon’s SSI solutions bring to the table, and how you can get started using these solutions for your next design. 
May 28, 2024
27,730 views