Sunday, July 3, 2016

Inter-VTS Exchange Format (IVEF)

The argument I heard for IVEF over AIS is that you get Radar info with IVEF. That seems like a bit wonky to me. When you talk about AIS, that usually implies that the system is talking NMEA and more recently, that might mean NMEA 0183 sentences wrapped in NMEA TAG BLOCK metadata. While I am not a big fan of NMEA, it does have messages for all sorts of stuff and there are message for Radar and ARPA targets in the spec. So why invent another protocol encoded in XML when you could either use NMEA or go something like MessagePack, protobuf/grcp, thrift, etc. Taking a look at the IVEF, there are things like logging in. One thing that has been well established is that security is very hard to get correct. So why not use a standard that tons of people use and beat up like OAUTH2?  I have no idea what IVEF would really buy anyone. Really, this feels like reinventing basic RPC services that the internet has had for ages.

And if you really want to pass radar targets via AIS, you could make RAVDM messages and use type 27 position reports with mmsi equal to your arpa target number.  Someone could even propose a change to ITU-1371 for type 1 or 27  to specifically designate radar targets.

Additionally, the reference implementation is GPL licensed, so any proprietary vendor will have to write their own implementation.  Outside of OpenCPN, there hasn't been a lot of open source software on ships and none that I know of in VTS operations centers. The big defense contractors like Lockheed are particularly against using open source from what I have seen.

Some figures from IALA Recommendation on the Inter-VTS Exchange Format (IVEF) Service, IALA V-145:

In NMEA 0183 4.0 (I bought this damn doc):

  • Sentence: RSD – Radar System Data  
  • Talker: Radar and/or Radar Plotting RA
See also:
My notes for people (not in the United States) setting up their own VTS  and/or WhaleAlert and/or Met/Hydro systems:

You can transmit standard IMO 289 AIS msg 8-1-22 using a simple computer (e.g. RaspberryPi + Linux), ssh via keys (just use passwordless), using any of a Class-A, ATON, or Basestation transceiver.  You just have to send it serial BBM messages. I originally used a class-A transceiver which left a "ship" at the location of the transceiver on short and then switched to a blue force Class A transceiver (which really is just a bios patch to the unit) to transmit only the area notices without sending the 1-2-3-5-27 messages a normal class b will send. will send IMO 289 standard 8-1-22 messages.


You could even do this with a software defined radio and have the entire hardware system cost < $300 USD (raspberrypi, gps board, sdr board, cell modem, power amplifier, cables, rf filters and antennas [ build your own J-Pole antennas ]) and the software would then be free after you get the basic glue scripts written.  SDR AIS transmission is specifically not allowed in the US, but would be totally awesome if allowed by the "competent regional authority" [that's the official term] in your area.

A word of warning:

As I tell everyone I talk to, I strongly encourage you to make sure you are always passthrough the original AIS NMEA through the system.  You will likely need it at a later date as your needs expand.  And IVEF does not give you very much of what comes through on the AIS channels and there are some super important missing things in the specification.

No comments:

Post a Comment