This guide is intended to give you some tips on troubleshooting a number of network-related issues, it will cover a variety of topics and give you some tips and methods of getting information when you have an issue so that you can either help yourself or at least provide valid information when you are requesting assistance.
The connection for some people has issues but not everyone #
If this is the case then there is a very good chance the issue is not with our network, if the issue was local to our network segment where your server is housed then it is almost certain that everyone would be impacted.
There are however some circumstances where it may be a specific inbound or outbound network path that has the issue, in order to troubleshoot this we need to be able to check the connection between the server and the user having an issue in both directions and ideally an example in both directions of a user that is not having any issues with connectivity to the server.
This can be achieved by running an MTR report, this will check the network path and quality between the 2 points, it is important to run this between the server and the end user having issues and then for the end user to also run this between their local computer and the server.
The command in Linux for this is simply mtr for example:
mtr 12.34.56.78
This needs to be ran from the server to the end user AND from the end user having the issue to the server, only having it in 1 direction is of no use, it is also necessary to run this for at least 100 pings or 100 seconds. If the results do not give you an indication of where the issue is in terms of latency or dropped packets then please provide MTR reports in a support ticket and we will be happy to help
Windows Users can download a free utility called WinMTR here: https://sourceforge.net/projects/winmtr/
The server was unreachable for xx minutes #
Please run an MTR report from the computer you are attempting to connect to the server from, this will give you a visual representation of the network path between your computer and the server and should also give you a good indication of where the network is failing.
Because there are so many possible reasons for this which could be at any point in the network before our network and also many possible software or local ISP issues without having at least an MTR report ran for 100 pings or 100 seconds we will not be able to investigate this further for you unless you have this information.
If this is frequent you can also request IPMI access to your server so that you can run an MTR report from your server back to your own IP address even if you cannot reach it through its public IP address.
Also consider what specifically was unreachable, if you could not reach your website or game server for example but the ssh session was up or the server responds to ping then it is not likely to be a networking issue and rather a software, config or resource issue on the server itself, this is not something we can help with unless you have a managed package with us.
I have a 1/2.5/5/10Gbit port but my speeds are slower than that, why? #
You may have a 10Gbit port on your server however that does not always mean that the server you are downloading or uploading data from or to is capable of the same speeds.
There is also the question of latency, as a rule the greater the geographical distance is between your server and the source or destination server the more network points (hops) it will need to traverse, with each hop the latency will increase, this will slow down the maximum speed available simply due to the latency.
For example if you have a 10Gbit server in Frankfurt, it is not reasonable to expect 10Gbit download speeds from a server in Los Angeles as it is likely you will have 300+ms latency and the traffic will have to go over 20 or more network hops in between your server in Frankfurt and the one in Los Angeles.
Many people also check the speed of their servers out using speedtest.net, this service was designed with the home isp market in mind, many of the servers in speedtest.net do not have more than 1Gbit connections if that so it is not reasonable to expect them to be able to push the sorts of speeds you are are requesting of them.
Please check our network testing page here: speedtest Test the connection on your server using the iperf3 method shown on that page, if you get significantly less speed than you were expecting please share the results with us in a support ticket and we will be happy to help.
I ran an MTR report and it shows packet loss or high latency on 1 hop #
An MTR report can be counter-intuitive to read if you are not an experienced network engineer, MTR uses ICMP packets, this is a low priority network protocol on many platforms and as such you may see a high value in the middle of the route to the endpoint.
What this actually means is that the traffic has been de-prioritised on that hop only as ICMP as TCP and possibly UDP has been given priority by that router, so you could see 200ms in the middle yes the endpoint only sees 2ms, it is the endpoint that will be the more accurate.
The same thing also applies to packet loss on 1 hop, if it is not seen from end to end then the traffic is actually arriving it is just that 1 router is completely de-prioritising ICMP traffic in favour of TCP/UDP.
In simple terms seeing high latency or packet loss in the middle of an MTR, on 1 hop, is nothing to be concerned about and is quite normal, it will in no way impact actual TCP or UDP traffic. If the traffic is ultimately arriving at the destination at an expected latency without packet loss on the last hop then it is likely everything is fine. It is always advisable to check both ways from the source to the destination by running an MTR test in both directions as there may be different network paths depending on the traffic direction.
Further technical reading here.