1 | ----------------------------------------------------------------------
|
---|
2 | ntripserver
|
---|
3 | ----------------------------------------------------------------------
|
---|
4 |
|
---|
5 | (c) German Federal Agency for Cartography and Geodesy (BKG), 2002-2007
|
---|
6 |
|
---|
7 |
|
---|
8 | Files in ntripserver.tgz
|
---|
9 | ------------------------
|
---|
10 | - ntripserver.tar: ntripserver program tar archive
|
---|
11 | - makefile: preconfigured makefile for convenient installation
|
---|
12 | - ntripserver.c: c source file
|
---|
13 | - README: Readme file for the ntripserver program
|
---|
14 | - startntripserver.sh: shell script to start the ntripserver program
|
---|
15 |
|
---|
16 |
|
---|
17 | NTRIP
|
---|
18 | -----
|
---|
19 | The ntripserver is a HTTP client based on "Networked Transport of
|
---|
20 | RTCM via Internet Protocol" (NTRIP). This is an application-level
|
---|
21 | protocol streaming Global Navigation Satellite System (GNSS) data
|
---|
22 | over the Internet. NTRIP is a generic, stateless protocol based on
|
---|
23 | the Hypertext Transfer Protocol HTTP/1.1. The HTTP objects are
|
---|
24 | enhanced to GNSS data streams.
|
---|
25 |
|
---|
26 | NTRIP is designed for disseminating differential correction data
|
---|
27 | (e.g in the RTCM-104 format) or other kinds of GNSS streaming data to
|
---|
28 | stationary or mobile users over the Internet, allowing simultaneous
|
---|
29 | PC, Laptop, PDA, or receiver connections to a broadcasting host. NTRIP
|
---|
30 | supports wireless Internet access through Mobile IP Networks like GSM,
|
---|
31 | GPRS, EDGE, or UMTS.
|
---|
32 |
|
---|
33 | NTRIP is implemented in three system software components:
|
---|
34 | NTRIP clients, NTRIP servers and NTRIP casters. The NTRIP caster is the
|
---|
35 | actual HTTP server program whereas NTRIP client and NTRIP server are
|
---|
36 | acting as HTTP clients.
|
---|
37 |
|
---|
38 |
|
---|
39 | ntripserver
|
---|
40 | -----------
|
---|
41 | The program ntripserver is designed to provide real-time data
|
---|
42 | from a single NTRIP source running under a POSIX operating system.
|
---|
43 |
|
---|
44 | Basically the ntripserver grabs a GNSS byte stream (Input, Source)
|
---|
45 | from either
|
---|
46 |
|
---|
47 | 1. a Serial port, or
|
---|
48 | 2. an IP server, or
|
---|
49 | 3. a File, or
|
---|
50 | 4. a SISNeT Data Server, or
|
---|
51 | 5. a UDP server, or
|
---|
52 | 6. an NTRIP Version 1.0 Caster
|
---|
53 |
|
---|
54 | and forwards that incoming stream to either
|
---|
55 |
|
---|
56 | 1. an NTRIP Version 2.0 Caster via TCP/IP (Output, Destination), or
|
---|
57 | 2. an NTRIP Version 2.0 Caster via RTSP/RTP (Output, Destination), or
|
---|
58 | 3. an NTRIP Version 1.0 Caster.
|
---|
59 |
|
---|
60 | Please note, the options to support NTRIP Version 2.0 are currently still
|
---|
61 | under development and should be used with care. Keep in mind that details
|
---|
62 | of the NTRIP Version 2.0 transport protocol are still under discussion
|
---|
63 | and may be changed.
|
---|
64 |
|
---|
65 |
|
---|
66 | Installation
|
---|
67 | ------------
|
---|
68 | To install the program run
|
---|
69 |
|
---|
70 | - gunzip ntripserver.tgz
|
---|
71 | - tar -xf ntripserver.tar
|
---|
72 | - make, or
|
---|
73 | - make debug (for debugging purposes).
|
---|
74 |
|
---|
75 | The exacutable will show up as ntripserver.
|
---|
76 |
|
---|
77 |
|
---|
78 | Usage
|
---|
79 | -----
|
---|
80 | The user may call the program with the following options:
|
---|
81 |
|
---|
82 | -h|? print this help screen
|
---|
83 |
|
---|
84 | -E <ProxyHost> Proxy server host name or address, required i.e. when
|
---|
85 | running the program in a proxy server protected LAN,
|
---|
86 | optional
|
---|
87 | -F <ProxyPort> Proxy server IP port, required i.e. when running
|
---|
88 | the program in a proxy server protected LAN, optional
|
---|
89 | -R <maxDelay> Reconnect mechanism with maximum delay between reconnect
|
---|
90 | attemts in seconds, default: no reconnect activated,
|
---|
91 | optional
|
---|
92 |
|
---|
93 | -M <InputMode> Sets the input mode (1 = Serial Port, 2 = IP server,
|
---|
94 | 3 = File, 4 = SISNeT Data Server, 5 = UDP server, 6 = NTRIP Caster),
|
---|
95 | mandatory
|
---|
96 |
|
---|
97 | <InputMode> = 1 (Serial Port):
|
---|
98 | -i <Device> Serial input device, default: /dev/gps, mandatory if
|
---|
99 | <InputMode>=1
|
---|
100 | -b <BaudRate> Serial input baud rate, default: 19200 bps, mandatory
|
---|
101 | if <InputMode>=1
|
---|
102 |
|
---|
103 | <InputMode> = 2|5 (IP port | UDP port):
|
---|
104 | -H <ServerHost> Input host name or address, default: 127.0.0.1,
|
---|
105 | mandatory if <InputMode> = 2|5
|
---|
106 | -P <ServerPort> Input port, default: 1025, mandatory if <InputMode>= 2|5
|
---|
107 | -f <ServerFile> Name of initialization file to be send to server,
|
---|
108 | optional
|
---|
109 | -x <ServerUser> User ID to access incoming stream, optional
|
---|
110 | -y <ServerPass> Password, to access incoming stream, optional
|
---|
111 | -B Bind to incoming UDP stream, optional for <InputMode> = 5
|
---|
112 |
|
---|
113 | <InputMode> = 3 (File):
|
---|
114 | -s <File> File name to simulate stream by reading data from (log)
|
---|
115 | file, default is /dev/stdin, mandatory for <InputMode> = 3
|
---|
116 |
|
---|
117 | <InputMode> = 4 (SISNeT Data Server):
|
---|
118 | -H <SisnetHost> SISNeT Data Server name or address,
|
---|
119 | default: 131.176.49.142, mandatory if <InputMode> = 4
|
---|
120 | -P <SisnetPort> SISNeT Data Server port, default: 7777, mandatory if
|
---|
121 | <InputMode> = 4
|
---|
122 | -u <SisnetUser> SISNeT Data Server user ID, mandatory if <InputMode> = 4
|
---|
123 | -l <SisnetPass> SISNeT Data Server password, mandatory if <InputMode> = 4
|
---|
124 | -V <SisnetVers> SISNeT Data Server Version number, options are 2.1, 3.0
|
---|
125 | or 3.1, default: 3.1, mandatory if <InputMode> = 4
|
---|
126 |
|
---|
127 | <InputMode> = 6 (NTRIP Version 1.0 Caster):
|
---|
128 | -H <SourceHost> Source caster name or address, default: 127.0.0.1,
|
---|
129 | mandatory if <InputMode> = 6
|
---|
130 | -P <SourcePort> Source caster port, default: 2101, mandatory if
|
---|
131 | <InputMode> = 6
|
---|
132 | -D <SourceMount> Source caster mountpoint for stream input, mandatory if
|
---|
133 | <InputMode> = 6
|
---|
134 | -U <SourceUser> Source caster user Id for input stream access, mandatory
|
---|
135 | for protected streams if <InputMode> = 6
|
---|
136 | -W <SourcePass> Source caster password for input stream access, mandatory
|
---|
137 | for protected streams if <InputMode> = 6
|
---|
138 |
|
---|
139 | -O <OutputMode> Sets output mode for communatation with destination caster, optional
|
---|
140 | 1 = http: NTRIP Version 2.0 Caster in TCP/IP mode
|
---|
141 | 2 = rtsp: NTRIP Version 2.0 Caster in RTSP/RTP mode
|
---|
142 | 3 = ntrip1: NTRIP Version 1.0 Caster
|
---|
143 |
|
---|
144 | Defaults to NTRIP Version 1.0, but will change to 2.0 in future versions
|
---|
145 | Note that the program automatically falls back from mode rtsp to mode http and
|
---|
146 | further to mode ntrip1 if necessary.
|
---|
147 |
|
---|
148 | -a <DestHost> Destination caster name or address, default: 127.0.0.1,
|
---|
149 | mandatory
|
---|
150 | -p <DestPort> Destination caster port, default: 2101, mandatory
|
---|
151 | -m <DestMount> Destination caster mountpoint for stream upload,
|
---|
152 | mandatory
|
---|
153 | -n <DestUser> Destination caster user ID for stream upload to
|
---|
154 | mountpoint, only for NTRIP Version 2.0 destination
|
---|
155 | casters, mandatory
|
---|
156 | -c <DestPass> Destination caster password for stream upload to
|
---|
157 | mountpoint, mandatory
|
---|
158 | -N <STR-record> Sourcetable STR-record
|
---|
159 | optional for NTRIP Version 2.0 in RTSP/RTP and TCP/IP mode
|
---|
160 |
|
---|
161 |
|
---|
162 | Example1: Reading from serial port and forward to NTRIP Version 1.0 Caster:
|
---|
163 |
|
---|
164 | ./ntripserver -M 1 -i /dev/ttys0 -b 9600 -O 2 -a www.euref-ip.net -p 2101 -m Mount2
|
---|
165 | -n serverID -c serverPass
|
---|
166 |
|
---|
167 | Example2: Reading from NTRIP Version 1.0 Caster and forward to NTRIP Version 2.0
|
---|
168 |
|
---|
169 | ./ntripserver -M 6 -H www.euref-ip.net -P 2101 -D Mount1 -U clientID -W clientPass
|
---|
170 | -O 1 -a www.goenet-ip.fi -p 2101 -m Mount2 -n serverID -c serverPass
|
---|
171 |
|
---|
172 |
|
---|
173 | NTRIP Caster password and mountpoint
|
---|
174 | ------------------------------------
|
---|
175 | Feeding data streams into the NTRIP system using the ntripserver
|
---|
176 | program needs a password (and a user ID for NTRIP Version 2.0)
|
---|
177 | and one mountpoint per stream.
|
---|
178 | For the NTRIP Broadcasters EUREF-IP or IGS-IP this is currently
|
---|
179 | available from http://igs.bkg.bund.de/index_ntrip_prov.htm
|
---|
180 |
|
---|
181 |
|
---|
182 | Disclaimer
|
---|
183 | ----------
|
---|
184 | Note that this example server implementation is currently an
|
---|
185 | experimental software. The BKG disclaims any liability nor
|
---|
186 | responsibility to any person or entity with respect to any loss or
|
---|
187 | damage caused, or alleged to be caused, directly or indirectly by the
|
---|
188 | use and application of the NTRIP technology.
|
---|
189 |
|
---|
190 |
|
---|
191 | Further information
|
---|
192 | -------------------
|
---|
193 | URL: http://igs.bkg.bund.de/index_ntrip.htm
|
---|
194 | E-mail: euref-ip@bkg.bund.de
|
---|