Comments (8)
what problem are you dealing?
from ios-ntp.
I don't know what the cause is, but all the associations become invalid quite quickly. The software won't let the number of associations drop below eight, but even those eight are invalidated over and over again. There may be networking changes that impact CocoaAsyncSocket
so I'll check any new code over there later today.
from ios-ntp.
:( Any luck @gavineadie?
from ios-ntp.
The cause is that the iOS clock is already so close to true time that the small variations in any association's sampling actually have a relatively small average and large standard deviation. For example, three samples, in microseconds are: 8.8, -3.5 and -1.6 which gives an average of 1.2 mSec within a SD of 5.4 mSec.
The association rejection criteria include requiring that the SD of samples be small compared to the average .. you can see this make sense if the clock time is not accurate (more than, say, ~20 mSec off true), but it breaks down if the clock is already accurate.
This library has lost its value as iOS has matured! iOS now uses NTP internally, so it keeps good time. This library is still useful for detecting a deliberate manual resetting of time to an incorrect value for nefarious purposes (which, I suspect, is its main use anyway).
from ios-ntp.
@gavineadie It's also still useful to track time to some internal NTP server that gets a time value from something else. i.e. the space industry.
from ios-ntp.
@gavineadie Interesting! I had no idea. I'm one of those people using NetAssociation
it to prevent clock manipulation ;) Do you know if iOS exposes that NTP time (before it's offset by the user) anywhere?
from ios-ntp.
@bassrock .. NTP could certainly be used to distribute time from private servers slaved to extraordinary sources, perhaps for simulations in which multiple computer need to behave as if they were operating in the past or the future.
@warpling .. no, iOS does not reveal anything about how time is derived and maintained. I've lobbied Apple for a "CoreTime" framework like "CoreLocation" without success (I believe a CoreTime framework does exist but is private to Apple with unknown functionality). Such a framework, if public, could reveal deviation from true time, accuracy and source (phone company, GPS, NTP, user setting, etc).
from ios-ntp.
@gavineadie Thanks for lobbying Apple ;) And thanks again for all your work on this library.
from ios-ntp.
Related Issues (20)
- iOS-ntp returning same value as device HOT 4
- Question for one-time check HOT 4
- Watching possible issue in CocoaAsyncSocket code
- Cocoa Pods released version HOT 1
- Hardcoded NTP Pool names HOT 13
- import error HOT 1
- EXC_BAD_ACCESS HOT 6
- What is missing from RFC 5905 HOT 2
- Grabbing ntpClientRecvTime Twice HOT 1
- Ability to Change the Time Servers Without Reboot
- Account for Packet Loss in One-Off Mode HOT 1
- Any update for cocoapod, version is still 1.1.1 HOT 2
- v1.1.7 updates coming soon .. HOT 1
- when not network to network, error: " dnssd_clientstub deliver_request ERROR:"
- Does not compile because of lacking GCDAsyncUpdSocket HOT 3
- 该网络时间从哪来?
- 有啥用呢? HOT 1
- How to get the accurate network time after modifying the system time HOT 13
- demo clock is wrong HOT 5
- Whether the poll interval can be automatically increase?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ios-ntp.