Skip to main content
  • 产品
  • Evaluate our Software
  • 下载
  • Free Utilities
  • 购买
  • 支持
  • 关于我们
  • Search
    • Contact Us
    • Forum
    • Knowledge Base
    • Newsletter
    • RSS
  •   工作机会
  •   视频
  •   永续性
  • emNet
  • SNTP Client
  • Technology
  • Add-Ons
  • Tools

SNTP client

The emNet SNTP client implementation is an optional extension which can be integrated into your application seamlessly. It combines a maximum of performance with a small memory footprint. The SNTP client implementation allows an embedded system to use real timestamps from a remote NTP server without using a RTC or to initialize a RTC. The SNTP protocol is based on SNTP v4.

Contact us
Downloads
Documentation
SEGGER emNet
  1. 1.Overview
    1. 1.1.Key features
  2. 2.Requirements
  3. 3.Resource Usage
  4. 4.Relevant parts

Overview

The SNTP protocol is an API on top of the TCP/IP protocol, it provides a way of synchronizing the target time with a local or remote NTP server over the network.

SNTPc client application layer

Key features

  • Low memory footprint
  • Seamless integration with the emNet TCP/IP stack
  • Time synchronization with a remote NTP server

Requirements

The emNet SNTPc implementation requires the emNet TCP/IP stack.

Using SNTP, an emNet application can synchronize its time with an NTP server either in the local network or in a remote network to use a timestamp with the current date and time or to initialize its own RTC with a good start value.

The NTP Timestamp

The NTP timestamp used is represented by a 64-bit value consisting of two 32-bit fields. The first 32-bit field contains the complete seconds passed since January 1st 1900. The second 32-bit field contains fractions of a second in 232 picoseconds.

More information about the NTP timestamp can be found in RFC 1305.

The Epoch Problem (year 2036 problem)

The NTP timestamp reserves only 32-bit for full seconds passed which equals a little bit more than 136 years. As the NTP time is based on January 1st 1900 this means that the timestamp will overlap back to 0 some time in 2036. A timestamp older than a reference timestamp can be interpreted as valid time, too, as long as it does not count up to the reference timestamp.

Based on this solution there are several possible ways of extending this period even more:

  • The easiest solution to extend the timestamp to be used for around 136 years is for the target to remember the date it was built or had its firmware changed. It can then use this timestamp as reference extending the NTP timestamp for further 136 years.
  • Storing the current year in non volatile memory using it as reference in which epoch the target runs.
  • Using other sources as reference for the epoch such as timestamps from other sources.

Resource Usage

The ROM usage depends on the compiler options, the compiler version and the used CPU. The memory requirements of the SNTP Client module presented in the tables below have been measured on an ARM7 and a Cortex-M3 system. Details about the further configuration can be found in the sections of the specific example.

ROM Usage on an ARM7 System

The following resource usage has been measured on an ARM7 system using IAR Embedded Workbench V6.30.6, Thumb mode, no interwork, size optimization.

Add-onROM
emNet SNTP Client moduleApproximately 0.5 KByte

ROM Usage on a Cortex-M3 System

The following resource usage has been measured on a Cortex-M3 system using IAR Embedded Workbench V6.30.6, size optimization.

Add-onROM
emNet SNTP Client moduleApproximately 0.5 KByte

RAM Usage

Add-onRAM
emNet SNTP Client module Approximately 24 Byte

Relevant parts

The SNTP client module implements the relevant parts of the following Request For Comments (RFC).

RFC#Description
[RFC 4330]Direct Link: Simple Network Time Protocol (SNTP) Version 4 for IPv4, IPv6 and OSI
[RFC 1305]Direct Link: Network Time Protocol (Version 3) - Specification, Implementation and Analysis

全球总部

德国: SEGGER Microcontroller GmbH

地址: Ecolab-Allee 5
40789 Monheim am Rhein, Germany
电邮: info@segger.com
电话: +49-2173-99312-0
传真: +49-2173-99312-28

网点分布

中国:哲戈微系统科技(上海)有限公司

地址: 中国上海市闵行区秀涟路133号
大虹桥国际A 栋218室
邮编201199
电邮: china@segger.com
电话: +86-133-619-907-60

通过ISO 9001认证

ISO 9001

30多年的嵌入式行业经验

First-class embedded software tools since 1992
  • 版本说明
  • 免责声明
  • 隐私策略
  • 沪ICP备2022005181号
  • 沪公网安备 31011202014525号
© 2025 SEGGER - 版权所有.

您即将离开 segger.cn 而访问境外网站,是否继续?