source: ntrip/trunk/ntripserver/README

Last change on this file was 9448, checked in by stuerze, 22 months ago

data upload to localhost added

File size: 9.2 KB
2 ntripserver
5(c) German Federal Agency for Cartography and Geodesy (BKG), 2002-2021
8Files in
10- makefile: preconfigured makefile for convenient installation
11- ntripserver.c: c source file
12- README: Readme file for the ntripserver program
17The ntripserver is a HTTP client based on "Networked Transport of
18RTCM via Internet Protocol" (NTRIP). This is an application-level
19protocol streaming Global Navigation Satellite System (GNSS) data
20over the Internet.
21NTRIP Version 1.0 is a generic, stateless protocol based on the
22Hypertext Transfer Protocol HTTP/1.1. The HTTP objects are
23enhanced to GNSS data streams.
25The primary motivation for NTRIP Version 2.0 is to develop a fully
26HTTP-compatible Internet protocol standard that would work with proxy
27servers and to add an optional data transport via UDP. Hence, one
28NTRIP Version 2.0 transport approach is still based on HTTP1.1 on top
29of TCP. The second NTRIP Version 2.0 transport approach is based on
30both, the Internet Standard Protocol RTSP (Real Time Streaming Protocol)
31for stream control on top of TCP and the Internet Standard Protocol RTP
32(Real Time Transport Protocol) for data transport on top of
33connectionless UDP.
35NTRIP is designed for disseminating differential correction data
36(e.g in the RTCM-104 format) or other kinds of GNSS streaming data to
37stationary or mobile users over the Internet, allowing simultaneous
38PC, Laptop, PDA, or receiver connections to a broadcasting host. NTRIP
39supports wireless Internet access through Mobile IP Networks like GSM,
42NTRIP is implemented in three system software components:
43NTRIP clients, NTRIP servers and NTRIP casters. The NTRIP caster is the
44actual HTTP server program whereas NTRIP client and NTRIP server are
45acting as HTTP clients.
50The program ntripserver is designed to provide real-time data
51from a single NTRIP source running under a POSIX operating system.
53The purpose of this program is to pick up a GNSS data stream (Input, Source)
54from either
56 1. a Serial port, or
57 2. an IP server, or
58 3. a File, or
59 4. a SISNeT Data Server, or
60 5. a UDP server, or
61 6. an NTRIP Version 1.0 Caster
62 7. an NTRIP Version 2.0 Caster in HTTP mode
64and forward that incoming stream (Output, Destination) to either
66 1. an NTRIP Version 2.0 Caster via TCP/IP (Output, Destination), or
67 2. an NTRIP Version 2.0 Caster via RTSP/RTP (Output, Destination), or
68 3. an NTRIP Version 2.0 Caster via plain UDP (Output, Destination), or
69 4. an NTRIP Version 1.0 Caster, or
70 5. an IP server via TCP/IP
74To install the program run
76- gunzip ntripserver.tgz
77- tar -xf ntripserver.tar
78- make, or
79- make debug (for debugging purposes).
81To compile the source code on a Windows system where a mingw gcc
82compiler is available, you may like to run the following command:
84- gcc -Wall -W -O3 -DWINDOWSVERSION ntripserver.c -DNDEBUG
85 -o ntripserver -lwsock32, or
86- mingw32-make, or
87- mingw32-make debug
89The executable will show up as ntripserver on Linux
90or ntripserver.exe on a Windows system.
94The user may call the program with the following options:
96./ntripserver [OPTIONS]
98 -h|? print this help screen
100 -E <ProxyHost> Proxy server host name or address, required i.e. when
101 running the program in a proxy server protected LAN,
102 optional
103 -F <ProxyPort> Proxy server IP port, required i.e. when running
104 the program in a proxy server protected LAN, optional
105 -R <maxDelay> Reconnect mechanism with maximum delay between reconnect
106 attemts in seconds, default: no reconnect activated,
107 optional
108 -M <InputMode> Sets the input mode (1 = Serial Port, 2 = IP server,
109 3 = File, 4 = SISNeT Data Server, 5 = UDP server, 6 = NTRIP1 Caster,
110 7 = NTRIP2 Caster in HTTP mode),
111 mandatory
112 <InputMode> = 1 (Serial Port):
113 -i <Device> Serial input device, default: /dev/gps, mandatory if
114 <InputMode>=1
115 -b <BaudRate> Serial input baud rate, default: 19200 bps, mandatory
116 if <InputMode>=1
117 -f <InitFile> Name of initialization file to be send to input device,
118 optional
119 <InputMode> = 2|5 (IP port | UDP port):
120 -H <ServerHost> Input host name or address, default:,
121 mandatory if <InputMode> = 2|5
122 -P <ServerPort> Input port, default: 1025, mandatory if <InputMode>= 2|5
123 -f <ServerFile> Name of initialization file to be send to server,
124 optional
125 -x <ServerUser> User ID to access incoming stream, optional
126 -y <ServerPass> Password, to access incoming stream, optional
127 -B Bind to incoming UDP stream, optional for <InputMode> = 5
128 <InputMode> = 3 (File):
129 -s <File> File name to simulate stream by reading data from (log)
130 file, default is /dev/stdin, mandatory for <InputMode> = 3
131 <InputMode> = 4 (SISNeT Data Server):
132 -H <SisnetHost> SISNeT Data Server name or address,
133 default:, mandatory if <InputMode> = 4
134 -P <SisnetPort> SISNeT Data Server port, default: 7777, mandatory if
135 <InputMode> = 4
136 -u <SisnetUser> SISNeT Data Server user ID, mandatory if <InputMode> = 4
137 -l <SisnetPass> SISNeT Data Server password, mandatory if <InputMode> = 4
138 -V <SisnetVers> SISNeT Data Server Version number, options are 2.1, 3.0
139 or 3.1, default: 3.1, mandatory if <InputMode> = 4
140 <InputMode> = 6|7 (NTRIP Version 1.0|2.0 Caster):
141 -H <SourceHost> Source caster name or address, default:,
142 mandatory if <InputMode> = 6|7
143 -P <SourcePort> Source caster port, default: 2101, mandatory if
144 <InputMode> = 6|7
145 -D <SourceMount> Source caster mountpoint for stream input, mandatory if
146 <InputMode> = 6|7
147 -U <SourceUser> Source caster user Id for input stream access, mandatory
148 for protected streams if <InputMode> = 6|7
149 -W <SourcePass> Source caster password for input stream access, mandatory
150 for protected streams if <InputMode> = 6|7
151 -O <OutputMode> Sets output mode for communication with destination caster / server
152 1 = http : NTRIP Version 2.0 Caster in TCP/IP mode
153 2 = rtsp : NTRIP Version 2.0 Caster in RTSP/RTP mode
154 3 = ntrip1: NTRIP Version 1.0 Caster
155 4 = udp : NTRIP Version 2.0 Caster in Plain UDP mode
156 5 = tcpip : IP server in TCP/IP mode
157 Defaults to NTRIP1.0, but will change to 2.0 in future versions
158 Note that the program automatically falls back from mode rtsp to mode http and
159 further to mode ntrip1 if necessary.
160 -a <DestHost> Destination caster/server name or address, default:,
161 mandatory
162 -p <DestPort> Destination caster/server port, default: 2101,
163 mandatory
164 -m <DestMount> Destination caster mountpoint for stream upload,
165 only for NTRIP destination casters, mandatory
166 -n <DestUser> Destination caster user ID for stream upload to mountpoint,
167 only for NTRIP Version 2.0 destination casters, mandatory
168 -c <DestPass> Destination caster password for stream upload to mountpoint,
169 only for NTRIP destination casters, mandatory
170 -N <STR-record> Sourcetable STR-record
171 optional for NTRIP Version 2.0 in RTSP/RTP and TCP/IP mode
174Example1: Reading from serial port and forward to NTRIP Version 1.0 Caster:
176./ntripserver -M 1 -i /dev/ttys0 -b 9600 -O 2 -a -p 2101 -m Mount2
177 -n serverID -c serverPass
179Example2: Reading from NTRIP Version 1.0 Caster and forward to NTRIP Version 2.0
181./ntripserver -M 6 -H -P 2101 -D Mount1 -U clientID -W clientPass
182 -O 1 -a -p 2101 -m Mount2 -n serverID -c serverPass
185NTRIP Caster password and mountpoint
187Feeding data streams into the NTRIP system using the ntripserver
188program needs a password (and a user ID for NTRIP Version 2.0)
189and one mountpoint per stream.
190For the NTRIP Broadcasters EUREF-IP or IGS-IP please contact or
195Note that this example server implementation is currently an
196experimental software. The BKG disclaims any liability nor
197responsibility to any person or entity with respect to any loss or
198damage caused, or alleged to be caused, directly or indirectly by the
199use and application of the NTRIP technology.
202Further information
Note: See TracBrowser for help on using the repository browser.