PC networking for Mlat


Why can't it be easier to set up as a Ground Station and Master User?

 

I am aware that not everybody finds it easy to set up and maintain their system to be a Ground Station (GS), even when it is possible.  I sometimes get complaints that it is all too difficult.

However, I would like to explain in simple terms why it is all necessary.

The underlying problem relates to the way almost all domestic computers connect to the Internet.  

To use an analogy from the postal system, your PC's letter box is not out on the street - it is a pigeon hole behind the front desk (router).  

When a Master User requests raw data from a Ground Station so that it can perform an Mlat, it sends a request to the street address (WAN IP address) but he does not know the apartment number within the building.  

The postman (the network) delivers the request to the right street address (WAN IP address) but he is not allowed to enter the building.  He can only deliver it to the front desk (router) and even if he knew it (he doesn't), he would not be able to pass to the front desk, the apartment number inside the building.

For the request to reach the Ground Station's PC inside the building (LAN address), the front desk (router) must know in advance that any such requests from outside should always go to Apartment 123 on the first floor (LAN address).

For a Master User making a request, most of the time it is much simpler.  Front desks (routers) are pretty smart (and nosey) and if they see a request message being posted out to some distant address, then when a reply comes straight back from that same address, they know without being told, who asked for it and they automatically send the reply to the correct place.  Easy. Nothing much to set up.

That way round it works without too much trouble because at the Master User end, the MU always first initiates the request to the GS and the replies come straight back from them.  Nothing ever comes in without there first having been a request going out to that GS.  The outgoing request is noted by the front desk (router) and so it knows where to deliver the reply.

The problem is not that easy at the Ground Station.  This time requests arrive out of the blue and the front desk (router) cannot guess which apartment (LAN address) is expecting it, unless it is told what to do with such requests.

This is why, to be a Ground Station, you have to tell your front desk (router), which Apartment is to receive those requests.  This is what "port forwarding" is all about.

There are some things that make this process more difficult and some things that can make it easier.

Some apartment blocks (LANs) change the apartment numbers (LAN IP addresses) every day.  This requires the front desk to be updated every time (port forwarding).  Often you can solve that by demanding a fixed apartment number (1) or at least asking that it only changes once a year (2).  Rarely, this is not possible at all but most front desks can be persuaded with a bit of effort.

Some front desks (routers) understand simple messages sent to them, to tell them where to send these incoming requests (3).  If your front desk is one of those and if the feature is turned on, then a single click (4) can do everything - even if you have to do it every day.  Turning the feature on may be fiddly but you only have to do that once.  When it is done, then the rest is a breeze.

What is not possible, with the present network, is for all of this stuff to be completely unnecessary.  A Ground Station is never going to know who wants raw until they ask.  Therefore the request is always going to come as a surprise to the front desk.   

In a simpler system, say with only one GS and one MU, the GS could be instructed to ask the MU if there are any requests, on a continuous basis.  The MU won't actually get the question (for the same reason the GS wouldn't get it) but it primes the front desk so that when an eventual request does come in from that MU, the front desk can guess where to send it.  This is how and why VoiP (Skype etc.) works without all the port forwarding pain.  It is easy for one to one, but with hundreds of MUs, any one of which can make a request from any GS, this simply cannot be done.

It could all be done through the server, and this is what used to happen in the early days of Mlat.  However, that required the request to be downloaded to the relevant GS at their next sharing cycle (once per minute) and the total time taken to respond to an Mlat request was far too long (minutes).

Unfortunately, until everyone is using IPv6 and every point on the network has its own letterbox, port forwarding will continue to be necessary for this type of network.

For completeness, it should be noted that some Internet connections really do have their post box out on the street.  For example, in the UK, the "3" network wireless broadband dongle gives the PC a WAN address directly and all of this front desk does not exist. For them, there is no setup required.

Finally, it should be pointed out that there are already more than 500 validated Ground Stations in operation, so with the help and encouragement of John Locker and a few other kind souls (and the occasional kind 'sole', I notice) it really isn't "all too difficult".

 

  1. Fixed LAN IP address.  Set up in the router.
  2. Long lease on LAN IP address.  Set up in the router.
  3. uPnP. A feature of many routers that allows simple control of port forwarding from within the LAN.
  4. Nne click on the script button in PP if you configure the script to run upnpmaster.bat in the application directory with uPnP enabled in the router.

 

From a posting by Bev on the Plane Plotter Yahoo group.