The game has an integrated system of testing the internet channel to our servers. It can be launched via the game settings. You can launch the check from the login window, from the Garage and directly from the battle.
It is important to run the check at the right time. In particular, if you encountered connectivity issues while being in battle, then you should run the connectivity check directly from the battle.
The result of the connectivity check is a report displayed on the screen and duplicated in the net.log file.
The connectivity bug report should include the screenshots of both that report and game logs. Adding logs is very important, because they main contain important information in addition to the connectivity report.
In most cases, it’s one of the nodes along the route, starting from the player’s PC and ending with the game server, that is responsible for the connection problems that can be encountered.
A route is a sequence of routers through which the packets pass from the game to the server and from the server to the game. A typical route looks like this:
PC HOME ROUTER PLAYER PROVIDER’S ROUTER ... INTERNET ROUTERS ... N-2. DATACENTER PROVIDER ROUTER N-1. DATACENTER ROUTER N. SERVER
There are a lot of routers on the internet. Consequently, as a rule, a packet can pass through more than one route.
Moreover, a part of the packets can pass through one route, and another part can pass through the other ones. It’s impossible to predict this in advance.
It takes some time for the packet to pass through the route. This time period is called “ping” and is usually measured in milliseconds.
Of course, the lower the ping, the better. It is also easy to understand that the more nodes on the route, the higher the ping. In addition, the ping depends on the workload of routers on a specific route and on some other circumstances.
If at least one node on one of the possible routes does not let the packets pass through (completely or partially), then the game experiences a packet loss.
There can be different reasons behind packet losses. Here are some of them:
- the router cannot manage the workload and drops packets that it cannot process
- the packet size is larger than the router can handle (see more about MTU)
You can check the value of ping and packet loss to each node on the route. Obtaining this information is called tracing.
Typically, the result of tracing looks like this:
1. <1 ms <1 ms <1 ms 192.168.40.252 2. <1 ms 2 ms <1 ms vl1502.ar13-23.ekb.ru.mirasystem.net [188.8.131.52] 3. 19 ms 4 ms 3 ms be3-4030.sr32-27.ekb.ru.mirasystem.net [184.108.40.206] 4. 1 ms 1 ms 1 ms asb-cr01-ae9.200.ekt.mts-internet.net [220.127.116.11] 5. * 1 ms 2 ms zoo-cr03-be1.66.ekt.mts-internet.net [18.104.22.168] 6. * 17 ms * vish-cr01-be7.66.kaz.mts-internet.net [22.214.171.124] 7. * * * Request timed out. 8. * * 65 ms a197-cr01-ae10.77.msk.mts-internet.net [126.96.36.199] 9. 64 ms 65 ms 64 ms anc-cr03-ae3.177.ff.mts-internet.net [188.8.131.52] 10. 64 ms 64 ms 64 ms 184.108.40.206 11. 72 ms 73 ms 72 ms et-24-1.agg01.ams-01.leaseweb.net [220.127.116.11] 12. 73 ms 73 ms 72 ms ae-101.br01.ams-01.nl.leaseweb.net [18.104.22.168] 13. 71 ms 71 ms 71 ms be-110.cr02.ams-01.nl.leaseweb.net [22.214.171.124] 14. 71 ms 71 ms 71 ms po-1004.ce01.ams-01.nl.leaseweb.net [126.96.36.199] 15. 67 ms 67 ms 67 ms 188.8.131.52
The exchange of data on the internet occurs according to several protocols. Protocol is a set of rules by which two devices exchange data between each other. Here are a few examples of such protocols:
- TCP. The most famous and popular protocol on the internet. A distinctive feature of this protocol is that it has a built-in data integrity control mechanism, which makes it relatively slow.
- UDP. Unlike TCP, this protocol does not care that all packets reach their destination, which ensures high speed of data transfer. It is commonly used in streaming audio and video content, as well as in online games.
- ICMP. Designed specifically for the transmission of service messages. In particular, the well-known command “ping” uses the ICMP protocol.
It is easy to see that when we ping an address on the internet, we use the ICMP protocol. At the same time, the game uses the UDP protocol for data transfer, so a situation may occur, when “the ping is good, but there are still packet losses”.
Of course, theoretically, it’s possible to ping addresses using the UDP protocol. But in practice, many routers on the Internet do not support this feature and it is impossible to get a clear result of a route tracing based on the UDP protocol.
Therefore, in Crossout, tracing to the server is performed using the ICMP protocol, but at the same time, the amount of packet loss to game servers is calculated based on the passage of UDP packets.