International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol XXXV, Part B2. Istanbul 2004
The RTCM messages are sent over the Internet by two servers,
one written in the Python language, and the other supplied by
the EUREF-IP within the NTRIP project.
Figure I. The GPS+GLONASS Permanent Station CAGZ
2.2 The DGGI Server
The Python language was chosen for its features of portability
between different OSs and rapid application development.
Given the peculiar characteristics of the server, we did not use
the standard server classes of the Python library (much more
oriented towards FTP- or HTTP-like servers).
The DGPS server main program (base dgps stream.py) uses
two class libraries ("modules", in Python terms). The first one
(gril.py) defines the classes used to communicate with the Javad
GPS receiver, using its proprietary GPS Receiver Interface
Language (GRIL). The other (TCP Broadcaster.py) defines the
TCP Broadcaster class, which is the actual TCP server. The
main program thus creates the two objects, "receiver" and
"server", connects them, and initializes the RTCM messages
transmission.
The figure 2 shows the UML sequence diagram of the server.
Basically, the server waits for connection requests on the TCP
2101 port (assigned by IANA for the DGPS transmissions Over
the Internet). Every client which sends a connection request is
added to a list of active clients. At the same time, the program
checks if new data are available on the receiver by using the
select() system call. If this is the case, it downloads the new data
and sends them to all the connected clients. If while sending
data to a client a TCP error (ECONNRESET or ENOTCONN)
is encountered, this means that the client is no longer listening;
thus, the connection is closed and the client is removed from the
list.
The DGPS corrections (RTCM 1 and 31 messages) are sent
every 3 seconds while the station information (messages 3 and
16 with the station name and coordinates) are sent every 30
seconds. At the present time, the station also sends the RTCM
18 and 19 messages for RTK.
The service has a web page with all the information about the
permanent station and the transmitted RTCM messages. The
service, which is online since July 2002, is free of charge. The
DGGI server software code is available upon request (the
receiver setup and communication modules are specific to the
Javad-Topcon receiver).
uA
N
DGGI
Differential GPS/GLONASS via Internet
Diagramma di Sequenza — Base DGPS
Versione Single— Thread (definitiva)
Server: updater — registry registry[i
TCP_Broadcaster PortWatcher Setv. Registry SingleServer
i T
1
1
i
|
1
'
!_ [xcept())
add (server)
1
1
I
t
1
1
1
1
invia al client
———-
x x X X
Figure 2. Scheme of the DGGI Server
2.3 The NTRIP Server
The NTRIP Server, supplied by the EUREF-IP project, uses a
protocol based on HTTP/1.1, adapted to support the streaming
of GNSS data. The system is implemented in three applications,
named NrripServer, NtripClient and NtripCaster. The former
two are technically HTTP clients, while the latter is the true
HTTP server. The NtripServer software runs on the permanent
station PC, and as a client connects to the NtripCaster on the
port 80 (assigned to the HTTP protocol), then sends to it the
differential corrections as the receiver produces them.
The NtripCaster is a HTTP server based on /cecast, a free
(GNU license) software designed to broadcast streaming media
(mainly audio and video) on the Internet. Such an architecture
was chosen for its ability to send its data to many users (even
thousands) at the same time. The NtripCaster, redesigned to
manage GNSS data, keeps updated a “source table" listing all
the active data sources (permanent stations) which can supply
RTCM corrections.
The NtripClient, or “GNSS Internet Radio”, runs on the client
computer (be it a common PC , a lap-top, or a hand-held system
with Windows CE), which is connected to the "rover" GPS
receiver by a serial cable. Upon starting, the software
downloads the source table; the user selects the station whose
RTCM correction will be used (usually the nearest one); then,
the sofiware connects to the chosen station and starts
downloading the corrections, which are sent to the receiver
through the serial port.
Intei
Figur
31 C
The cli
class (i
1-meter
DGPS 1
32 CI
The firs
Lii2s
apply
RTK/O
receive]
Internet
operate
mode,
correcti
6 obser
time), v
same ti
“near-re
ones ot
a time «
the lat
produce
adding |
to date.
of the
positior
applicat
can sto]
adequat
The “ex
precisio
this mo
previou
extrapo
time ta