A rift in the NTP world
A rift in the NTP world
Posted Feb 9, 2017 19:13 UTC (Thu) by Cyberax (✭ supporter ✭, #52523)In reply to: A rift in the NTP world by ballombe
Parent article: A rift in the NTP world
Rust's portability is OK for all practical purposes - you might not be able to run it on OS/360 or DEC Alpha, but do you really need it?
Posted Feb 10, 2017 19:10 UTC (Fri)
by jra (subscriber, #55261)
[Link]
Never thought I'd be agreeing with one of your posts so much, but HURRAH for posting that !
I've been trying to get new engineers scared of writing network-facing code in C for many years now.
Posted Feb 11, 2017 23:27 UTC (Sat)
by mbiebl (subscriber, #41876)
[Link]
Posted Feb 15, 2017 17:13 UTC (Wed)
by dublin (guest, #114125)
[Link] (4 responses)
Operating at real-world timescales, you probably don't even want the OS in the loop for timing critical processing - modern OSes and hardware are now fast enough to really give you a false sense of security about the ability of a system to reliably do hard realtime control - "statistically works almost all the time" is NOT the same as "will work every time, guaranteed" - the latter is required in life-critical applications.
Most of the discussion here is making a fatally flawed assumption - namely, that "regular" computers (PCs, servers, etc.) are the main kinds of things that need time synchronization. This is why the full functionality of the original NTP codebase (and its offshoots such as PTP) is important - as IoT moves increasingly into hard realtime (especially for apps like comms between self-driving cars, robots cooperating in the same workspace, etc.), PTP or something similar is required. (PTP is the Precision Time Protocol offshoot of NTP, and is the leading current standard in high-resolution industrial/commercial measurements.) NTP proper is only good to about 1/100 of a second - but 10 ms is forever: long enough for very, very bad things to happen in the real world.
So in short, this isn't just about syncing PC clocks - that's pretty much trivial - the real issue is secure, reliable, synchronized microsecond clocks suitable for hard realtime IoT. As Mills says, the NTP group really does understand what that takes. I'm not convinced the NTPSec guys do... (at least not yet.)
Posted Feb 15, 2017 17:46 UTC (Wed)
by Cyberax (✭ supporter ✭, #52523)
[Link] (2 responses)
Hint: lots of hard-realtime trading systems are written in... Java. And these systems are not these laughable cases like stability control in cars where a failure simply leads to lost lives. If a trading system failure occurs then a much worse outcome happens - people lose MONEY.
> Operating at real-world timescales, you probably don't even want the OS in the loop for timing critical processing - modern OSes and hardware are now fast enough to really give you a false sense of security about the ability of a system to reliably do hard realtime control - "statistically works almost all the time" is NOT the same as "will work every time, guaranteed" - the latter is required in life-critical applications.
NTP is designed to do one thing - synchronize clocks of computers across the wide-area network. It needs to be as good as the network jitter, which for regular Internet is usually within multiple milliseconds.
Posted Feb 16, 2017 16:28 UTC (Thu)
by Wol (subscriber, #4433)
[Link] (1 responses)
> No, it's not. And assembly? LOL.
Which is why a lot of time critical stuff was (and is) written in Fortran.
Fortran was the language of choice when simulations had difficulty keeping up with the real world, for example in weather forcasting ...
Cheers,
Posted Feb 16, 2017 19:23 UTC (Thu)
by Cyberax (✭ supporter ✭, #52523)
[Link]
Weather stuff is written in all kinds of languages. It does NOT need to do anything realtime, just fast enough. Fortran is used simply because the earliest models hark back to the beginning of 60-s.
Posted Feb 15, 2017 18:01 UTC (Wed)
by moltonel (guest, #45207)
[Link]
Concerning "will work every time, guaranteed", it's a no-brainer that Rust's safety guarantees make that goal easier to attain than C. And yes, you can boot to Rust to avoid that pesky interfering OS.
Sure, nothing beat C's portability. But when I see that Rust is arriving on Arduino for example, I stop worrying.
A rift in the NTP world
A rift in the NTP world
A rift in the NTP world
A rift in the NTP world
No, it's not. And assembly? LOL.
WTF OS has to do with the language of a fairly simple daemon? And IoT? You've forgotten to mention Machine Learning and Big Data for the complete Bullshit Bingo.
A rift in the NTP world
Wol
A rift in the NTP world
A rift in the NTP world