Best network for latency (not EE)

If you can’t tell the difference yourself when playing the game then I think you have your answer.

I’m still trying to track down the difference between strict and moderate NAT though...

Bear in mind that "NAT" as usually discussed is actually also Port Address Translation (PAT).

Strict, Moderate and Open are names Microsoft popularised. Strict has the most aggressive aggressive port assignment approach, Moderate is a half-way house, Open is basically a full uPnP implementation permitting arbitrary inbound and outbound port mappings.

The best generic equivalent names for Strict, Moderate and Open are probably 'Port Restricted Cone NAT', 'Restricted Cone NAT' and 'Full Cone NAT'.

Some further reading:
https://en.wikipedia.org/wiki/Network_address_translation
https://techdifferences.com/difference-between-nat-and-pat.html
https://badmodems.com/Forum/viewtopic.php?t=21


Symmetric NAT also changes all traffic's source port at the router, which is not Double NAT but is more secure. Essentially, each request to a new destination receives a new NAT mapping, irrespective of whether the source IP and port is the same. The Wikipedia article diagrams help explain the difference.


Double NAT is where your machine is sat behind a router (e.g. ISP provided router), and the ISP router's gateway is another router handing out private range IP addresses. It's that second router which actually has the direct route to the Internet. This means all traffic has to go through two address translation steps which causes problems for inbound traffic which is not being sent in response to your own outbound traffic.

In the past this was most common when someone had an ISP router, but also wanted to use their own router. They would connect their own router's WAN to a LAN port on the ISP router, but not disabling the routing features on the second router, so both devices end up handing out DHCP IP addresses and performing NAT on devices connected to them.

Traffic from a PC on their 'inner' router (router1) routes to the 'outer' router (router2) which has the WAN link.

Any traffic from devices on the inner router was considered a single machine's traffic by the outer router, because how would it know any different?

That's fine for going out to the Internet, and also for returning packets for that connection in most cases because of how port forwards (listening ports for responses) are dynamically set up. However for arbitrary incoming data, how does the 'outer' router know who the intended recipient is? It will not, unless the outer 'router2' already has a static route (aka port forward) created, pointing to 'router1' (inner) -- and then the inner router also has a port forward going to the IP of the actual computer.


Appropriating Netgear's diagram:
https://kb.netgear.com/30186/What-is-Double-NAT
1.png


You can see how the traffic has to navigate two private networks to reach the Internet.

Using dumb switches to extend a network works differently, because they use MAC addressing at Layer 2 to direct packets. That's why you can hang an 8 port switch off a 4 port router and effectively gain 7 extra sockets with no added NAT complications. The requirement is that all switches are physically connected to the same network segment as the router, Layer 2 routing doesn't go through routers.

The lines blur a bit when you get 'smart' or Layer 3 switches which can do all manner of clever things, they can almost behave like routers. Out of scope for this response though.

Some scenarios actually benefit from Double NAT - it's useful for higher security setups, and some people just prefer being able to run an isolated network within a network. It can be a more pragmatic approach than implementing something like VLANs or port isolation. It's different to how things like isolated 'guest networks' function on WiFi routers though, that can be accomplished with routing tables and a separate DHCP range.

ISPs are essentially doing double NATting more frequently as they run out of IPv4 blocks, it's called Carrier Grade NAT (CG-NAT). It's been commonplace on mobile networks for years.
 
Last edited:
Bear in mind that "NAT" as usually discussed is actually also Port Address Translation (PAT).

Strict, Moderate and Open are names Microsoft popularised. Strict has the most aggressive aggressive port assignment approach, Moderate is a half-way house, Open is basically a full uPnP implementation permitting arbitrary inbound and outbound port mappings.

The best generic equivalent names for Strict, Moderate and Open are probably 'Port Restricted Cone NAT', 'Restricted Cone NAT' and 'Full Cone NAT'.

Some further reading:
https://en.wikipedia.org/wiki/Network_address_translation
https://techdifferences.com/difference-between-nat-and-pat.html
https://badmodems.com/Forum/viewtopic.php?t=21


Symmetric NAT also changes all traffic's source port at the router, which is not Double NAT but is more secure. Essentially, each request to a new destination receives a new NAT mapping, irrespective of whether the source IP and port is the same. The Wikipedia article diagrams help explain the difference.


Double NAT is where your machine is sat behind a router (e.g. ISP provided router), and the ISP router's gateway is another router handing out private range IP addresses. It's that second router which actually has the direct route to the Internet. This means all traffic has to go through two address translation steps which causes problems for inbound traffic which is not being sent in response to your own outbound traffic.

In the past this was most common when someone had an ISP router, but also wanted to use their own router. They would connect their own router's WAN to a LAN port on the ISP router, but not disabling the routing features on the second router, so both devices end up handing out DHCP IP addresses and performing NAT on devices connected to them.

Traffic from a PC on their 'inner' router (router1) routes to the 'outer' router (router2) which has the WAN link.

Any traffic from devices on the inner router was considered a single machine's traffic by the outer router, because how would it know any different?

That's fine for going out to the Internet, and also for returning packets for that connection in most cases because of how port forwards (listening ports for responses) are dynamically set up. However for arbitrary incoming data, how does the 'outer' router know who the intended recipient is? It will not, unless the outer 'router2' already has a static route (aka port forward) created, pointing to 'router1' (inner) -- and then the inner router also has a port forward going to the IP of the actual computer.


Appropriating Netgear's diagram:
https://kb.netgear.com/30186/What-is-Double-NAT
1.png


You can see how the traffic has to navigate two private networks to reach the Internet.

Using dumb switches to extend a network works differently, because they use MAC addressing at Layer 2 to direct packets. That's why you can hang an 8 port switch off a 4 port router and effectively gain 7 extra sockets with no added NAT complications. The requirement is that all switches are physically connected to the same network segment as the router, Layer 2 routing doesn't go through routers.

The lines blur a bit when you get 'smart' or Layer 3 switches which can do all manner of clever things, they can almost behave like routers. Out of scope for this response though.

Some scenarios actually benefit from Double NAT - it's useful for higher security setups, and some people just prefer being able to run an isolated network within a network. It can be a more pragmatic approach than implementing something like VLANs or port isolation. It's different to how things like isolated 'guest networks' function on WiFi routers though, that can be accomplished with routing tables and a separate DHCP range.

ISPs are essentially doing double NATting more frequently as they run out of IPv4 blocks, it's called Carrier Grade NAT (CG-NAT). It's been commonplace on mobile networks for years.

I'm not quite sure if I understand all that, but what's the fix for this and if I get a ISP provided router will it be double NAT or strict? I didn't find any problems with friends joining my games who have moderate NAT on their Xbox and it found games quickly. I didn't want to risk it down the line so I sent it all back to EE within the 14 days. It's infuriating because EE was the best network and they allowed me to have an external antenna professionally installed to fall back on for a low price if needed
 
Last edited:
I'm not quite sure if I understand all that, but what's the fix for this and if I get a ISP provided router will it be double NAT or strict? I didn't find any problems with friends joining my games who have moderate NAT on their Xbox and it found games quickly. I didn't want to risk it down the line so I sent it all back to EE within the 14 days. It's infuriating because EE was the best network and they allowed me to have an external antenna professionally installed to fall back on for a low price if needed

Sorry, it can be tricky to explain the different NAT types without a primer in how routers work, how NAT works, how TCP works, what the difference is between Layer 2 and 3, all that good stuff.

A normal NAT only has one layer - between your private IP range (your LAN) and the public Internet. Typically lots of magic happens to get a public IP address to your router's WAN port, but this is transparent to you.

With CG-NAT, a carrier is not giving you a dedicated 'routable' (i.e., visible from the Internet) IP address for your connection. Instead your router connects to an intermediate 'middle' network where they can use private address ranges (not directly routable - useable - on the public internet), then route the traffic through a smaller pool of internet-routable IP addresses they already own.

https://en.wikipedia.org/wiki/Carrier-grade_NAT

With consumer mobile networks you're pretty much always going to have the CG-NAT (double NAT) scenario - unless you go with Three, who do provide 'standard' NAT connections (where you get an internet-routable IP address assigned to your device) if you use their alternate APN.

With restricted NAT you typically won't have problems joining games, but you will probably find you're unable to host games properly - activities which would require your connection to be able to route traffic received from the Internet without any prior outbound traffic from your machine, to establish the 'route' to and from your device.

With modern games, they have various accommodations for Restricted NAT scenarios, so sometimes you have multiplayer matching/brokering servers on the internet which can proxy the handshaking betweeen players' computers/consoles. Not always, but it's a primary concern for game developers so it tends to work OK these days.

Things like VoIP and SIP will probably not work properly unless you use STUN servers (fairly common). You wouldn't be able to host a server (like web server) on your machine and have it reachable from the Internet.


Another alternative is you pick a VPN provider who offers port forwarding and static IPs, connect through that 24/7 and set up port forwards on their system if you want to host anything.



If you're on mobile internet and you get an ISP router/MiFi, they will pretty much always behave in roughly the same way. Its WAN ("internet" - but not!) IP is assigned to the router's WAN interface, the router's DHCP server hands out IP addresses on a local range, probably something common like 192.168.0.1-254 or 10.0.0.1-254. But the router's "WAN" IP will nowadays be a private IP address within the ISP's network and a further hop is required to get out to the Internet.

CG-NAT is that middle hop upstream of your router, an extra layer of ISP network between your home network and the public internet.

Here's a poor ASCII diagram,

Code:
                  |         CG-NAT        |         Internet
                  |                       |
  PC <------>LAN  |  WAN<----------->     |
             [ ISP home]            [ISP network ]
             [ router  ]            [edge routing]
                  |                       |
  192.168.1.0     |   [magic ISP boxes]   |        (e.g.) 188.29.164.25
  your home       |   e.g. 172.16.1.0     |        traffic comes & goes
  network IP      |   private range is    |        via one or more IPs
  address range   |   assigned to WAN     |        from ISP's pool of
                  |   of your router      |        public IP addresses
 
Last edited:
Sorry, it can be tricky to explain the different NAT types without a primer in how routers work, how NAT works, how TCP works, what the difference is between Layer 2 and 3, all that good stuff.

A normal NAT only has one layer - between your private IP range (your LAN) and the public Internet. Typically lots of magic happens to get a public IP address to your router's WAN port, but this is transparent to you.

With CG-NAT, a carrier is not giving you a dedicated 'routable' (i.e., visible from the Internet) IP address for your connection. Instead your router connects to an intermediate 'middle' network where they can use private address ranges (not directly routable - useable - on the public internet), then route the traffic through a smaller pool of internet-routable IP addresses they already own.

https://en.wikipedia.org/wiki/Carrier-grade_NAT

With consumer mobile networks you're pretty much always going to have the CG-NAT (double NAT) scenario - unless you go with Three, who do provide 'standard' NAT connections (where you get an internet-routable IP address assigned to your device) if you use their alternate APN.

With restricted NAT you typically won't have problems joining games, but you will probably find you're unable to host games properly - activities which would require your connection to be able to route traffic received from the Internet without any prior outbound traffic from your machine, to establish the 'route' to and from your device.

With modern games, they have various accommodations for Restricted NAT scenarios, so sometimes you have multiplayer matching/brokering servers on the internet which can proxy the handshaking betweeen players' computers/consoles. Not always, but it's a primary concern for game developers so it tends to work OK these days.

Things like VoIP and SIP will probably not work properly unless you use STUN servers (fairly common). You wouldn't be able to host a server (like web server) on your machine and have it reachable from the Internet.


Another alternative is you pick a VPN provider who offers port forwarding and static IPs, connect through that 24/7 and set up port forwards on their system if you want to host anything.



If you're on mobile internet and you get an ISP router/MiFi, they will pretty much always behave in roughly the same way. Its WAN ("internet" - but not!) IP is assigned to the router's WAN interface, the router's DHCP server hands out IP addresses on a local range, probably something common like 192.168.0.1-254 or 10.0.0.1-254. But the router's "WAN" IP will nowadays be a private IP address within the ISP's network and a further hop is required to get out to the Internet.

CG-NAT is that middle hop upstream of your router, an extra layer of ISP network between your home network and the public internet.

Here's a poor ASCII diagram,

Code:
                  |         CG-NAT        |         Internet
                  |                       |
  PC <------>LAN  |  WAN<----------->     |
             [ ISP home]            [ISP network ]
             [ router  ]            [edge routing]
                  |                       |
  192.168.1.0     |   [magic ISP boxes]   |        (e.g.) 188.29.164.25
  your home       |   e.g. 172.16.1.0     |        traffic comes & goes
  network IP      |   private range is    |        via one or more IPs
  address range   |   assigned to WAN     |        from ISP's pool of
                  |   of your router      |        public IP addresses

I much appreciate your posts CW and it's a great help. What do you mean by hosting games? Is that the same as when my friends are with me and I search for a game?

I saw the other day that my Xbox said NAT type moderate and underneath it said double NAT? That was with a TPlink router which WASN'T from the ISP. What do you think the best setup I can do is then? I'm wondering if the ISP can do something for me like EE. They supply BT routers I suppose being linked with them. Search the 4GEE home router 2. Not sure what brand the router is.

I currently have a three sim plan and router, but the latency is basically double compared to EE
 
Changing router won't make any difference. If you're on Three, changing APN may (I'll send you a message with the details).

EE is owned by BT.

Exactly right regarding the game hosting. Some games run on a model where hosting of an actual match is done by one player, and the game-matching servers purely help players' games to connect to each other.

In this case, if the game's multiplayer logic decides you're capable of hosting a game, and advertises you as such to the game matching systems, if you have Strict NAT other people may find they are actually unable to connect when they try to -- unless the online netcode the developer is using has ways around it.

An example might be where your game gets notified by the game matching server that someone is trying to connect, then your machine connects out to each other player's computer as they put in the initial connection request. All the complexity over peer-to-peer connections is helped by the game matching servers 'brokering' the connections. It's an improvement over true peer-to-peer which doesn't work in strict NAT scenarios, but has other implications.

Older games (CS, UT, Quake) ran on a system where the developers ran game advertisement servers - you hosted your own server on a public IP and set it up to talk to the game developer's advertisement servers. Everyone's game downloaded a list of servers from the same central advertisement servers, then established a direct connection to the game server's public IP address. This meant if you knew the IP of the server you wanted, you could also enter it directly. (sorry if you're already familiar with this)
 
Last edited:
Also wouldnt the location of the masts play into your latency rather than just saying 'Vodafone is better for gaming'? I mean I have 3 for my 4g router and EE on my cellphone. The masts they are serviced from are different as I am rural. If I go to one end of the house EE is good but everywhere else it is ***** - so that would be terrible for gaming if you go by brand reputation rather than signal strength..?

Ed- @WJA96 I think this will explain better than a paragraph from me about the skids terminology that has crept into traditional networking.
 
Back
Top Bottom