Using CS:GO Steam Datagram Relay connection for Matchmaking + Official Server Code List


Published 03.02.2019 в 06:00 | Guide rating: 513



Summary

Benefit using SDR Relatively better ping DoS[en.
wikipedia.
org] Protection Backup server for alternative better connection.
How it works:This is a simple presentation of how your connection would be without SDR: Your Client => CS:GO Official Dedicated Server And this is with SDR: Your Client => Steam Relay Server => CS:GO Official Dedicated Server How to toggle it: Make sure your Developer Console is enabled (go to Options > Game Settings > Enable Developer Console) Make sure you are not connected to any game server (disconnect first if so) Open the console by pressing the console key (default: ` ) Type the following commands to enable it: net_client_steamdatagram_enable_override 1 And to revert it to default (auto): net_client_steamdatagram_enable_override 0Congratulations, you can now use SDR to play on the official matchmaking dedicated servers (any mode, i.
e.
casual, competitive).
Can you get banned for using this?This is available for players use without modification, external stuff, or even sv_cheats, if this give some disadvantage like cheat, valve wouldn't allow the command to be used.
Except you are abusing or exploiting this.
Related commands The following console commands will also help you on using SDR (find datagram): "net_client_steamdatagram_enable_override" = "1" ( def.
"0" ) client - 0: Use connect method requested by GC.
>0: Always use SDR if possible.
<0: Alw "sdr" - SteamDatagram Network Configuration

Use in Official Competitive Matchmaking

Sometimes you are connecting to a wrong server that gives you bad connection.
This section will explain how to override SDR properly in Competitive mode so you could get the best ping in the game before accepting the match.
You should keep the console window open when finding the match.
Hint: the lines in blue are related to steam connection problems.
If you can't see them, then try to enable the the steam datagram option first in previous step, also make sure the sdr_spew_level verbose level is set to 5 or higher.
Find the matchFirst, you will see lines like this when finding the competitive match: Loaded default network config file.
Loaded revision 106 OK Loaded cached network config file.
Data contains revision 98, not newer than current revision 106; ignoring.
Got network config from CDN.
Data contains revision 98, not newer than current revision 106; ignoring.
Starting ping measurementYou will get text "Searching for servers and players" in the top left box And after the ping measurement finished, it should display these: Ping measurement has been active for 5.
0s.
Sending what we have to GC atl: 639ms via mad (front=526ms, back=113ms) dxb: 682ms via mad (front=526ms, back=156ms) eat: 694ms via mad (front=526ms, back=168ms) gru: 770ms via mad (front=526ms, back=244ms) hkg: 816ms via mad (front=526ms, back=290ms) iad: 628ms via mad (front=526ms, back=102ms) lax: 683ms via mad (front=526ms, back=157ms) lux: 575ms via mad (front=526ms, back=49ms) maa: 795ms via direct route mad: 526ms via direct route ord: 642ms via mad (front=526ms, back=116ms) sgp: 852ms via mad (front=526ms, back=326ms) sto: 1140ms, forced direct route instead of best triangulated route (579ms) via mad tyo: 770ms via mad (front=526ms, back=244ms) vie: 561ms via mad (front=526ms, back=35ms) bom: 812ms via maa (front=795ms, back=17ms) cpt: 1502ms via direct route jhb: 1752ms via direct route lim: 778ms via mad (front=526ms, back=252ms) scl: 822ms via mad (front=526ms, back=296ms) syd: 841ms via mad (front=526ms, back=315ms) pwt: 1809ms via direct route pwg: 1505ms via direct route pwz: 1383ms via direct route pwu: 1379ms via direct route pwj: 1720ms via direct route can: 1012ms via tsnm (front=885ms, back=127ms) sha: 952ms via tsnm (front=885ms, back=67ms) tsn: 885ms via tsnm (front=885ms, back=0ms) Ping measurement completedNow you will get the yellow text "Your best ping to official server is xxxx ms" in the top left box If you are getting results like me as shown above (600ms) which is pretty bad actually, that's because our internet bandwidth is small to ping multiple servers at once just within 5 seconds.
.
.
It's not always indicating the constant ping rate you will get to play, for the case above, it was high because of doing multiple ping at those moment.
As of recent CS:GO update, you can adjust the numbers of ping before it give accurate result by using sdr ClientMinPingsBeforePingAccurate command.
Use a lower value if you are getting high ping result, example: sdr ClientMinPingsBeforePingAccurate 2The default value for this is 10.
Adjust the number properly to fit your internet bandwidth as lowest number does not always give best result.
And then you can try to find match again.
Found the matchmaking serverThen you will see something like this: Forcing SDR connection to =[A:1:3895690245:8537]:1 as per net_client_steamdatagram_enable_override Received Steam datagram ticket for server [A:1:3895690245:8537].
match_id=3209639316682703066 Attempting connection to service in data center 'maa' Requesting session from bom#22 (155.
133.
233.
34:27036).
Ping = 78+17=95 (front+back=total).
Selected bom#22 (155.
133.
233.
34:27036) as primary, session 31f146cf.
[Ping = 78+17=95 (front+back=total).
] Requesting session from maa#7 (155.
133.
232.
34:27021).
Ping = 63+0=63 (front+back=total).
Switched to maa#7 (155.
133.
232.
34:27021) as primary, session 13c182f5.
Ping = 63+0=63 (front+back=total).
[Previous primary bom#22 (155.
133.
233.
34:27036): Ping = 78+17=95 (front+back=total).
] Selecting bom#22 (155.
133.
233.
34:27036) as backup #1, session 31f146cf.
Ping = 78+17=95 (front+back=total).
The unit for ping time is milliseconds (ms) so 1 second = 1000 milliseconds.
This time, you will be given choice to Accept the match Explanation: Attempting connection to service in data center 'maa'It's attempting to connect to game server with city code "MAA" (CS:GO Official Dedicated Server) Requesting session from bom#22 (155.
133.
233.
34:27036).
Ping = 78+17=95 (front+back=total).
Your client -> 78ms (front) -> Steam Relay Server -> 17ms (back) -> CS:GO Official Dedicated Server It's requesting a Steam Relay server session with my ping to router server "BOM" is 78 ms, and the ping from router server "BOM" to game server "MAA" is 17 ms, so in total you would have 95 ms ping when playing.
However it is still automatically selecting for lowest ping.
Selected/Switched to .
.
.
as primaryDetermines the selected router server is primary, and will be the session of relay server you connect with game server.
If it says "Switched", it means the previous router has higher ping than the switched one.
Selecting .
.
.
as backupDetermines the selected router server is secondary, and so your connection would be switched to there if it has better ping/connection or if there is problem with the primary router to the game server.
In this case, if everything seems fine until the last line, i would play in game server coded "MAA" with router coded "MAA" and having around 63 ms ping in the game, with alternative router "BOM" which have 95 ms ping in total, check the last section to see what are these server code means.
Now that the game server location you are going to connect is fixed, but will the relay server stays same? No, it will still try to find any better server to change even if you have joined the game or the match already started.
See next section.

Making Sure The Choice or Switch It

When you are in the middle of 20 seconds to accept the competitive match, you need to know if the server you are going to play is close to your location for best performance.
As of recent CS:GO update, you can check the client status by typing net_connections_stats in console.
These messages will show in blue lines, useful if you are difficult to find the text "Attempting connection to service in data center" like in previous section (this one is different example).
The game server you will play onIt says that i'm going to play on "LUX" server, with 275 ms ping.
End-to-end connection to data center 'lux': Lost Current rates: Sent: 0.
0 pkts/sec 0.
0 K/sec Recv: 0.
0 pkts/sec 0.
0 K/sec Ping:275ms Max latency variance: ???ms Quality: ???% (Dropped: ???% WeirdSeq: ???%) Lifetime stats: Totals Sent: 1 pkts 33 bytes Recv: 3 pkts 54 bytes Recv w seq: 3 pkts Dropped : 0 pkts 0.
00% OutOfOrder: 0 pkts 0.
00% Duplicate : 0 pkts 0.
00% SeqLurch : 0 pkts 0.
00% Ping histogram: (17 total samples) 0-25 : 0 0% 25-50 : 0 0% 50-75 : 0 0% 75-100 : 0 0% 100-125 : 0 0% 125-150 : 0 0% 150-200 : 0 0% 200-300 : 12 71% 300+ : 5 29% Ping distribution: 50% of pings <= 277ms 75% of pings <= 432ms No connection quality distribution available.
(0 measurement intervals) Latency variance histogram: (1 total measurements) <1 : 0 0% 1-2 : 0 0% 2-5 : 0 0% 5-10 : 0 0% 10-20 : 0 0% >20 : 1 100% No rate stats received from remote host No lifetime stats received from remote host The Steam Relay Server / router you will be usingIt says that i'm going to use "LUX" relay server (as router), isn't that same server as the game server? I will have ping 275 ms same as above (this means a direct-route).
Primary router: lux#120 (146.
66.
154.
23:27026) Ping = 275+0=275 (front+back=total) Current rates: Sent: 0.
8 pkts/sec 0.
0 K/sec Recv: 1.
6 pkts/sec 0.
0 K/sec Ping:275ms Max latency variance: ???ms Quality: 100% (Dropped:0.
00% WeirdSeq:0.
00%) Lifetime stats: Totals Sent: 25 pkts 1,996 bytes Recv: 38 pkts 1,706 bytes Recv w seq: 17 pkts Dropped : 0 pkts 0.
00% OutOfOrder: 0 pkts 0.
00% Duplicate : 0 pkts 0.
00% SeqLurch : 0 pkts 0.
00% Ping histogram: (23 total samples) 0-25 : 0 0% 25-50 : 0 0% 50-75 : 0 0% 75-100 : 0 0% 100-125 : 0 0% 125-150 : 0 0% 150-200 : 0 0% 200-300 : 14 61% 300+ : 9 39% Ping distribution: 5% of pings <= 274ms 50% of pings <= 277ms 75% of pings <= 1197ms 95% of pings <= 2328ms No connection quality distribution available.
(1 measurement intervals) Latency variance histogram not available No rate stats received from remote host No lifetime stats received from remote host Backup router: fra#91 (162.
254.
197.
72:27033) Ping = 654+3=657 (front+back=total)And it also says that selected backup router is in "FRA" with total ping 657 ms.
Am i going to accept the match? NO! I'm playing from Indonesia, why would i connect to an Europe Server (Luxembourg) with 275 ms ping, while i could play in asia servers with ping lower than 100 ms! There was a miscalculation that gives high ping result on asia servers.
So i re-search the match until Singapore "SGP" or Hong Kong "HKG" found as these two are nearest to me.
Keep in mind of the server locationsThere are many types of connection pattern based on the server location.
This game does not know geography, it just calculate best ping but sometimes the calculation is wrong.
This is my case, distance of server region sorted by closest: Indonesia (my client) Singapore (SGP) Hong Kong (HKG) Japan (TYO) Pattern 1: Direct Route This pattern is the best, you get same game server and relay server (same as case above LUX -> LUX).
Example: I connected to Hong Kong server directly.
Indonesia -> HKG -> HKG = ~ 60 ms ping Pattern 2: Helped by Router You get different relay server than the game server, however your distance to the router is closer than the game server.
Example: I connected to Japan server from Hong Kong first.
Indonesia -> HKG -> TYO = ~ 80 ms ping Think the relay server/router as the bridge, which helps you to lower the ping if your connection is slow, since relay server connection are much faster.
Pattern 3: Missed Router This pattern is worst, you get different relay server than the game server, however your distance to the game server is closer than to the router.
This is like you are going far away and turn back.
Example: I connected to Hong Kong Server but from Japan first.
Indonesia -> TYO -> HKG = ~ 100 ms ping Switching the routerIf you get pattern #3, then you should think for alternative server which would fix the pattern to become like #1 or #2.
You can change this while you are in the game or before accepting the match.
Please also note that you can only change the router, not the game server region, don't accept the match if you found wrong server at first.
To do so, use the following command: sdr ClientForceRelayClusterEnter the relay cluster code as listed in the next section.
In the case of pattern #3, i would switch my router from TYO to SGP just like pattern #2.
Indonesia -> TYO -> HKG = ~ 100 ms ping sdr ClientForceRelayCluster sgpIndonesia -> SGP -> HKG = ~ 50 ms ping Wait a while until it says "Switched to SGP as primary session" and that is how you can get a better ping.
However this is relative, sometimes SGP server might be overload or having bad connection, so choose another server, or a direct route instead (like pattern #1): Indonesia -> SGP -> HKG = ~ 70 ms ping with packet loss (due to overload) sdr ClientForceRelayCluster hkgIndonesia -> HKG -> HKG = ~ 60 ms ping After you "force" the relay cluster, it will not ping another server anymore, and stay on that.
Your previous router will be selected as backup/secondary.
To remove and restore this to default, just simply enter 2x double quotes: sdr ClientForceRelayCluster "" I keep getting =[A:ServerTicket:ServerPort]:1:corrupted packet xxxxxxxxxx at 1 Please type "disconnect" in console and re-connect the match before you get cooldown.
I keep getting Retrying public(xxx.
xxx.
xxx.
xxx:xxxx) .
.
.
Please type "disconnect" in console, attempt to re-connect until it fails and try re-connect again before cooldown.
Now check the next section to see the list of server/relay code names and its location.
Cinque TerreCinque TerreCinque TerreCinque TerreCinque Terre

Official Server / Router Code Name List

This section contains server list being used by ping measurement when you are finding the matchmaking server, sometimes you might be wondering what are the ping and the code that you found in the Developer Console window (`) means, please note this list might be incorrect and not up-to-date.
I'm surprised to see that the server location codes are similar to IATA codes[en.
wikipedia.
org] , however i did re-check the ip address based on ip-info or ping.
Please note that IP addresses here might be different within other ip-range that someone else would get.
Steam Datagram List as of April 2018 (Source: https://github.
com/SteamDatabase/SteamTracking): Code Location Relay Service ams Amsterdam, Netherlands No Yes atl Atlanta, USA Yes Yes bom Mumbai, India Yes Yes dxb Dubai, UAE Yes Yes fra Frankfurt, Germany No Yes eat Bellevue, USA Yes Yes gru Sao Paulo, Brazil Yes Yes hkg Hong Kong Yes Yes iad Washington DC, USA Yes Yes jnb Cape Town, South Africa Yes Yes lax Los Angeles, USA Yes Yes lhr London, UK No Yes lim Lima, Peru Yes Yes lux Luxembourg Yes Yes maa Chennai, India Yes Yes mad Madrid, Spain Yes Yes man Manila, Philippines No Yes mwh Moses Lake, USA No Yes okc Oklahoma, USA No Yes ord Chicago, USA Yes Yes par Paris, France No Yes scl Santiago, Chile Yes Yes sea Seattle, USA No Yes sgp Singapore Yes Yes sto Stockholm, Sweden Yes Yes sto2 Stockholm, Sweden No Yes syd Sydney, Australia Yes Yes tuk Bellevue, USA No Yes tyo Tokyo, Japan Yes Yes vie Vienna, Austria Yes Yes waw Warsaw, Poland Yes Yes It should help you with knowing the server to connect is best (closest) to your place, otherwise you would get high ping when in the game.
What's the difference between Data Center (Relay) and Routing Cluster (Service)? Data center is the main CS:GO dedicated server where the match is hosted at, while routing cluster is the connection used between the players.
In one match, everyone is on same data center but each might have connected from different routing cluster depending the best one for them.
No need to mind about the data center when forcing the relay cluster, as each datacenter has its routing cluster.
How about can, pwt, pwg, pwz, pww, pwu, pwj, sha, tsn? These server are available in region China for CS:GO Perfect World edition (-perfectworld).
They are still used to ping in normal edition for balancing.
That's all, i hope it helps alot people, and thank you for reading :)