趣味のこと、技術的なこと、適当につらつら書きます。NTPサーバーに接続して時刻を受信したい欲求があったので実装してみました。NTPはおなじみの時刻同期に使用するプロトコルです。Windowsには標準でNTPクライアントが実装されているので、知らぬまま時刻同期されていたり、意識している人はNICTに接続するようにしたり、同期間隔を変更したりしていると思います。ストアアプリでは、特にWindowsPhoneではシステム時刻を自由に設定できないのであまりNTPとつなげる意味はないですが、時計アプリを作りたいとか、OAuthなどで時刻を認証の一要素として使うなどで一時的な利用には十分つかえるはずです。原文はこちらに、有志による日本語訳はこちらにあります。NTPはUDPを使って通信するのでソケット通信が必要です。ストアアプリ結構めんどくさいんすよ。NTPで時刻同期をする際、伝送の遅延などを考慮する必要があるため、4つの時間が必要になります。定義されていて、遅延時間を考慮する計算式が書かれています。NTPについてはこの辺がわかっていれば、あとは受信した情報を解析してやるだけです。