NTRIP定位

NTRIP协议

NTRIP 的全称是 Networked Transport of RTCM via Internet Protocol,即 “通过互联网协议进行RTCM网络传输”。

简单来说,它是一种通过互联网实时播发差分校正数据的标准协议和格式。

  • RTCM: 指的是差分数据遵循 RTCM(海事无线电技术委员会)标准格式。这是一种国际通用的、用于传输差分GPS/GNSS校正数据的标准格式。

  • Internet Protocol: 意味着它使用常见的互联网协议(如 TCP/IP, HTTP)进行数据传输,而不是传统的无线电(如电台、FM副载波)。

它的主要目的是取代传统的UHF电台、FM副载波等无线差分数据链,利用无处不在的互联网(移动网络、Wi-Fi、以太网)来实现更远距离、更稳定、更灵活的差分数据服务。

NTRIP 的工作原理与流程

注册挂载点(NtripClient)

请求报文

最开始需要向服务端发送一个http请求,用来接收服务端的数据(这是一个长连接)
http报文格式为

1
2
3
4
5
6
7
GET /Mountpoint HTTP/1.1
User-Agent: NTRIP MyRTKReceiver/1.0
Host: host:port
Accept: */*
Connection: close
Authorization: Basic base64{username:password}
Ntrip-Version: NTRIP /2.0

客户端向服务端发起一个GET请求,请求的path /Mountpoint 即是这次的挂载点

User-Agent是客户端的版本
Authorization是验证字段格式为 Basic+空格+{username冒号password}的base64编码
Ntrip-Version则是NTRIP使用的协议版本,一般默认1.0

返回报文

成功
NTRIP /1.0
1
HTTP 200 OK

返回的报文并不是一个标准的http报文,报文是ICY,当请求成功,接收到报文后,服务端并不会将这次连接关闭,会实时将最新的信息推送到客户端。

NTRIP /2.0
1
ICY 200 OK

返回的报文并不是一个标准的http报文,报文是ICY,当请求成功,接收到报文后,服务端并不会将这次连接关闭,会实时将最新的信息推送到客户端。

挂载点无效

1
ERROR - Bad MountPoint

认证失败

1
EOF

上报差分数据(NtripServer)

请求报文

参考资料

https://www.cnblogs.com/hanford/p/6028156.html