The Elagaphant v.2
Updated 3rd feb 2012
There is a new version which is not on this site.. google is your friend here
Consider this a work in progress and that I'm doing a "Lucas" , So expect it to change over time, paragraphs you liked suddenly being changed to some horrendous CGI effect that ruins the charm, and topics suddenly firing first between edits. Once it has enough "likes" I will cash in by releasing a few special editions of it that will include special behind the scenes documentaries, never before seen photos of me typing at my keyboard and a "making of video" which will basically me lobbing a fraps captures up on youtube.
First off unlike the Blackops version of this thread which you can view HERE in all its glorious chaos and lack of structure, I unfortunately will not have as much time to answer specific questions, but I hope like the blops thread this one will grow naturally from input from other people as well. Any tips or hints from people i'll make a point of adding to front post so unlike the last post which frankly got a tad confusing all the relevant info should be easily accessible to all.
Protip: due to the lack of a search function on each subforum to find stuff, If i was you I would bookmark this thread so you can find it easily if need be or use the "tag" function and type in elagaphant.
Contents with clickable links for that full on multimedia experience
Changing the DNS server on your xbox
MW3 SERVER STATUS
Advanced settings and tweaks
Faffing with QoS
Faffing with the MTU settings
Additional topics that people might be interested in.
UDP the short bus protocol
The game engine
optimizing the TV
All the infomation so far is geared towards the assumption you will have a wired connection, although most of the stuff i talk about covers both there are some little tweaks and settings especially for wireless and i will add these at some point in the future.
The Basics - How online cod games work, some frequently used terminology and often mentioned subjects
Contary to popular belief , playing online on an xbox is not always an "out the box experience", once you get under the bonnet so to speak what you basically have is a network device that runs multimedia applications. as such it can and does at times need a few tweaks here and there. The long standing argument I have heard from people has always been "why should I need too" when it comes to optimizing - the simple answer is you don't but having your game run smoother with a lower ping (also called latency but will be referred to throughout this post as ping) is a no brainer if you ask me.
I Have not gone into actual game mechanics in this version so unless people actually want explanations of how stuff like lag comp and hit markers ect work I am skipping that whole can of worms. As with the previous incarnation of this post please bear in mind where possible infomation i have given is correct through either verifiing or using my knowledge of the mechanics and or subjects. I do not work for nor have I ever been associated with cod dev team but have worked in the game industry and have a fimly rooted knowelge of networking both for gaming and in general.
Before I start getting under the bonnet of the connections I think its always good to give a short explanation of how stuff actually works and some frequently used terminology and dispelling a few misconceptions, that way people have a better understanding of why a certain tweak does what it does, and what the heck I or others might be talking about. I've added a pseudo FAQ now to save myself and others constantly having to repeat the same stuff now you can just direct people here..
The server model.
So all cod games on the xbox use what is called a "listen server", It is basically another players xbox that "hosts" the game as well as runs the game for that player so in effect is doing two jobs at once. It differs from a "dedicated" server which does nothing but host games and everyone connects to that server. Sometimes you may hear the phrase "p2p" to describe the connections this is actually incorrect and an entirely different type of server model where instead of players all connecting to one "server" they connect to each other and update each other its a horrible system and causes some freaky wild laggy results anyone who remembers playing early madden games online will know what I am referring to here as they actually used proper p2p . There has always been a argument for dedicated servers in Cod personaly they bring their own sets of problems. I am sure there will be numerous posts made in the coming months about this very issue so I will not spend time on it here.
Game data, traffic and ping.
All the information sent to and from the host/players is sent by UDP packets, the speed at which you send and receive these packets is what determines your "ping" , ping is the one of the most important aspect of online play quite simply the lower the ping, the smoother and more enjoyable your game will be. Nearly all the following tips and hints are designed to lower your ping and equally to make sure that data is flowing to and from your xbox in the best way it can. One important aspect of your ping is it isnt just determined by your distance to a host which I will cover in this next bit.
The Interwebz... how it routes data badly and why your bandwidth shouldn't be read as speed.
When Al Gore invented the internet (tis true I read it on the internet) everything was basically free and full of unicorns and rainbows, and no one really cared what went where and how, unfortunately this all changed when big business moved in and noticed people would pay to watch a cat play the keyboard, and successfully managed to sell old rope online. Nowadays the buzzword for the internet is net neutrality where the aim is for everything to be treated equally unfortunately in the real world it isnt, Isps treat UDP packets as second class traffic and give precedence to TCP/IP traffic which is what the main parts of the internet work by. Some isps especially in the uk wrongly treat game traffic as p2p torrent traffic and it falls foul of the isps measures to stem the use of torrents on their network. there are numerous things nowadays that mess up gaming online. Stuff like traffic management policies that are designed to keep an isps data flowing at peak uage times as classic example of this all this adds to how your data is now routed through the internet.
Routing of game traffic
When your send data from your pc to the host or vice versa, its goes from your xbox, through your home network, to the isp's dns servers (think satnav or that guy you asked directions from when you finally admitted you were lost and pulled over) then through the XLSP gateway (which is xbl's own little routing and verification stop off) then to the host (or in some games cases the dedicated servers) and/or to the games own servers that sit behind the xlps gateway. These game servers in the case of cod are where the stats, the devs own system diagnostic wizardary, and soon to be live elite servers sit. The time it takes to whizz through all this is what we term "ping", it is dependant on many factors not all data travels by the fastest path as the internet like a road system has bottle necks, broken paths and traffic jams. Data hops between faster fibre optic lines and slower adsl lines, through various and servers before it reaches the required place. Another good point to remember even with the recent cern discovery (to be verified) it means there is a finite speed at which data can theoretically travel across the net which in turn means regardless of anything else there will come a point where regardless of what you do or tweak you ping cannot get any lower.
Internet speed is a very popular misconception, and the numbers you get quoted by your isp always confuse people as the isps wrongly refer to these numbers as speed, when in fact it is bandwidth. Your data still travels at the same "speed" what increases when you pay more for your internet and get a "faster" package is the amount of data you can down/upload at the same time. for example if you upgraded from a 1mb to 10mb connection and downloaded a file yes you would receive it approx 10 times faster but thats not because you are getting it faster, it is because you are getting more of it in one go. This is an important fact to remember .I will add though Fibre optic cable is obviously faster than the old fashion copper wire based adsl connections (unless you live in the UK or Ireland where pikeys keep knicking all the copper cabling). Although fibre optic uses light the data does NOT travel at the speed of light , it actually travels at apporx 60% of the speed of light due to the light bouncing off the inside of the cables and a few other more geeky reasons like air, and light travels slower thru glass to give you a rough idea this means you will never be able to ping lower than between 70-80ms from new york to London for example with a direct connection based on the speed of light once you add the variables that slow the data down a more real world number is closer to 120ms.
When it comes to what bandwitdh you need to play online it may surprise you to know the absolute min suggested by microsoft is 512k down, 256k up , obviously this isnt going to give you a great expereince but it gives you an indication of what the architecture was designed for, As a rule of thumb your everyday run of the mill basic adsl is more than adequate. the only exception of this is if you want to get host, if so the more upload speed you have the better expereince players connecting you will have.
One comment I see alot on game forums especially in regards to cod is the "netcode" is years old, this is basically correct for the most part , There is a good reason for this though as things haven't changed for years. Internet protocols were developed at a time when connections were dial up and bandwidth was tiny, and even a good few years afterwards even something as basic as an isdn home connection was considered fast. As such even though we are now have super fast fibre optic connections that send data hurtling around the world at nearly the speed of light... the decades old protocols and the same packet sizes used back in the late 80's are still used today so running a game off years old netcode doesn't matter. Netcode doesnt just cover the way data is handled though but for the proposes of reference in forum posts and my description here thats the part i dealt with before the semantic pointer outters arrive.
So Thats the basics covered so now onto the bit you probably actually came here to read.
Tips, tricks and hints to optimize your connection and pwn noobs like a leet pro
First off one big huge mahoosive disclaimer, any tweaks suggested should only be done if you feel confident and understand the whats and wherefores, and more importantly how to reverse them. I have listed them by most likely to achieve a positive result and also by complexity. So basically the further down the list you get the more technical they become. I am not guaranteeing any or all of these will work but they have all been tested and proven to help some people to some degree when playing online.
The first tip is RTFM!, no I am not intentionally being sarcastic (although maybe just a little bit), but it never ceases to amaze me how many people don't take the time to read the proper manual that came with their equipment. Most people read the quick start paper guide that was loose in the box and never realise on that disk you never looked at is usually a proper full manual usually saved as a .pdf file.
Batton down the mainsail we're heading into Port
Ports are basically little gateways in your network that allows data through, they also control the infamous open/moderate/strict NAT part of xbl. So should always be your first step in setting up an xbox. Two things to remember at this point, there are set ports that control and are used by xbl which allow matchmaking and chat for example to function correctly, and extra ports that are specific to certain games.One of the biggest debates i've seen on gaming forums is the "throw it into the dmz to open the NAT" IN my opinion this is not advisable at all without going into a huge diatribe, routers have firewalls for a reason, putting your xbox the wrong side of that protection is a bad idea. Most times I've found people who are having Nat issues usually say something like "i tried to forward the ports and it didnt work" , Protip restarting your xbox and router/modem can do magical things once you port forward. i am sure even without checking there is already a few dmz threads lurking on these new forums so be warned.
At present we do not know the port numbers for mw3 so until they are released and I can update this part thats all on the game port parts.
A Port protip time!
Luckily for you guys (and me as it saved a heap of typing) that all round nice guy and general uber mod foxhound has already made the definitive guide to ports and Nat. He has also added a few links to some really good resources explaining how networks work and if i was you I would take the time to read both the thread and check out some of the links he has supplied.
|Type of port||UDP||TCP/IP|
|Xbox specific for Nat and XBL||53,88,3074||53,80,3074|
|Xbox specific for using Kinnect||1863||1863|
|MW3 Game specific||none||none|
Not all equipment is created equally, especially if your isp gave it to you free.
If like me you are serious about your gaming, one of the things you can do which will help your online experience is choosing or using the right equipment. The first thing to look at is also the cheapest and most overlooked if you use a wired connection, and that is your network (cat) cable. When you set up your system or for that matter when checking it over always make sure the cat cable isnt kinked. Secondly I personally make a point of throwing away the free cable you get with your equipment from the isp and invest in what I know is a good quality cable. Typically you will have a cat5 cable given to you this is fine if your home network isnt a gigabit network, if it is invest in a cat6 cable again bearing in mind that cheap doesnt always mean quality. without getting into the technicals here your xbox isnt a gigabit device so the only real point of adding it is if you want the data to flow faster along your home network maybe for streaming or sharing files between pcs for example.
Another good tip is measure the distance from the xbox to the router/moden and get a cable made that lenth although in itself not a major fix shorter the cable better the network.
Routers and modems you get free from the isp when you signed your life away to them are cheap generic nasty things hence they are free (even though we know they arent as the price of them is included in your monthly fees).they are great for people who just want to tinker around the net look at emails and watch the occasional cat plinking away on a keyboard. what they are not good for is delivering the high quality delivery and speed that gaming requires so if you have the spare bucks to - Invest in a good quality gaming router. You dont have to spend 100's here theres some really great low budget stuff out there, and lots of decent places to get reviews before buying.
The router I currently use I bought 2nd hand off that "auction site" cost me £25 quid ($40 in silly money) and hasnt let me down once in the last year odd I've had, and no one said you cant sell the router you got online either . Also with isp provided routers you invariably do not have access to the settings you really need access to when you enter its basic admin settings. This alone is imo reason to bin the thing or flog it online and invest in a better one.
The same is true for those with free cable modems, in fact I would even go as far as to say in some cases these are the single weakest link in a network for some people, again it is really worth investing in a decent cable modem or modem/router combo the difference is basically night and day to some people.
When you use either of these they both have what is called a buffer,this is basically a holding area for packets and allows the router or modem to process packets at a speed it can handle, the faster the router the smoother the traffic flows the slower you start to lose packets and the whole thing backs up and eventually dies. what does this mean for you in gaming terms ? . you have sync issues,things start jumping across the screen , disappearing reappearing as your xbox receives data out of sequence and at the very worse you modem keels over and has a heart attack and needs to be left for a while and then reset.
I have found a great little flash thingymabob that demonstrates this better than I could in words. Use your cursor keys to speed up the traffic and you will see after awhile what happens to packets in both a buffered and non buffered environment.
Time to roll up the sleeves and get a tinkering into the gubbins of stuff
Before you even start tinkering under the hood, now would be a good time to actually your internet connection, this way you can highlight any potential issues that might be isp related as opposed to your setup (if there are any).
You might see people post results of "speedtests" whilst these server a purpose at times for network trouble shooting you are much better to run what is called a pingtest.PINGTEST is one of the best sites to run one of these, as it breaks down and explains what each value does, when you do run a test dont choose a server thats really close try a few spread out as this would give you amuch better indication of how your online play would be. Once you recoeve your results look at the sperate sections packet loss, ping and jitter,. to save me the trouble of explaining mouseover each one and it will explain what they are/do/mean. If you have a really high jitter and packet loss this could be an issue with your isp. It never hurts to give them a call and say did some tests i seem to have a high jitter on my line can you test it.
*disclaimer try/do at your own risk if you dont get it or dont know how to change something back dont start tinkering.
The first "tweak" is a pretty basic one that will drop your ping down by varying degrees and involves a change to your xbox's network settings.
The DNS server setting on your Xbox.
A dns server basically acts as the address book and route planner, when you type say www.callofduty.com into a browser a dns server translates that url into an ip address and sends you off to the correct place as the internet actually uses ip addresses not urls to find and route stuff.
when you plug in your xbox and set it up for the first time it just connects to the default network dns which is going to be your router /cable modem or isp. These are not dns servers so when your xbox sends a request for matchmaking or in xboxs case an ip address the router just takes that requests thinks screw this im not a dns server and passes it over to the next link the chain which for the majority of people would be your isps servers.
In gaming terms this means your request or packet ect might have gone through a few extra unneeded hops before it reaches the main dns server and is sent whizzing along the interwebz, quite simply it means your ping to be matchmade has increased as theres extra hops.
what changing the dns setting in you xbox will do is eliminate these extra hops and your xbox is sending the request/packet straight out to the net.
In theory depending on your connection, you may or may not find matchmaking is slightly faster and the game is slightly better, if you have a super best money can buy connection already you prolly wont notice that much if any of a difference but again, you have optimized the connection for xbox somewhat will knock a few ms off your usual ping. It should be noted doing this is not meant to lower ping, it just speeds up matchmaking slightly which in turn would hopefully mean you get matchmade slightly faster or to a better session.
Changing the dns settings on your xbox
First off credit to this goes to ISilentKiller4I for this idea as he was the one who bought it up originally on the blackops forum.
I'll post a simple then a more complex version and also finally explain what it does,
1) Turn on your xbox and via the dashboard open up the system settings tab and scroll down and click onto Network settings
2) Select the connection you use and then press configure network
3) You should now have a screen that is tabbed basic settings with the dns setting at the bottom, scroll down to the dns settings and press A
4) Chose "manual" and the screen will now show two options primary and secondary dns servers
5) Highlight primary , press a and enter this EXACTLY 184.108.40.206 (then press start button to confirm)
6) Highlight secondary, press A and enter this exactly 220.127.116.11 (then press start button to confirm)
7) reboot xbox and away you go.
18.104.22.168 and 22.214.171.124 are googles public dns servers they are usually some of the fastest hence used for the simple method
Complex version that might give better results
1) Goto Here and download namebench for your operating system (mac or windows) its a small program only 5mb odd
2) Run the program and you should see it has entered your details ie, location, browsr ect (make sure these are correct if not change then in the drop down menus Make sure that Include best available regional dns servicesis checked, then hit Start, it takes about 3-5 mins to run the entire program so sit back twiddle thumbs till it finishes.
3) Once it has finished it should give you a list of the fastest dns servers in your area , with the highest showing a percentage increase on speed in the top left hand box, dont worry about any warning messages you get to do with hijacked domains in the list ect as we arent changing your browser dns only the xbox.
4) Top right hand box will show the primary and secondary dns sever ip addresses for the fastest dns server it found.
5) Turn on your xbox and via the dashboard open up the system settings tab and scroll down and click onto Network settings
6) Select the connection you use and then press configure network
7) You should now have a screen that is tabbed basic settings with the dns setting at the bottom, scroll down to the dns settings and press A
8) Chose "manual" and the screen will now show two options primary and secondary dns servers
9) Highlight primary , press a and enter EXACTLY the ip address for primary shown in namebench in the top right hand box (then press start button to confirm)
10) Highlight secondary, press A and enter EXACTLY the ip address for secondary shown in namebench in the top right hand box (then press start button to confirm)
11) reboot xbox and away you go.
For either version if you want to swap back to your original settings for whatever reason
1) Open up the system settings tab and scroll down and click onto Network settings
2) Select the connection you use and then press configure network
3) You should now have a screen that is tabbed basic settings with the dns setting at the bottom, scroll down to the dns settings and press A
4) Chose "Automatic" reboot the xbox
It's time to get your kicks down on router 66
As I said before not all routers are created equal, so I will break this next part down into two parts - basic routers (where you cant change many settings) and advanced routers (where you can). Another problem when dealing with routers is there is so many different makes and models it would be nigh on impossible to explain how each works, so instead I will concentrate on what in my expereinces have been the basic features of each. You may need to actually consult your manuals to see where and if these settings are located in the admin menus.(or in some cases how to actually get to the admin menu). For this first part I am going to go through a WIRED connection, (wireless will come later)
So first off the single most important thing you can do with your router regardless of type is make sure it is upto date with its firmware, all routers that I have tried allow you to update the firmware, even if you just got it still see if it needs an update as its probably been sitting on a shelf for months before you got your mitts on it this is especially important as nowadays most routers are unpnp (universal plug and play).
Step 1 for basic routers.
So you have your xbox connected to the router, the router connected to your internet connection, you've run the network test on the xbox and its all working fine with an open nat (see the link to foxhounds how to above). time to set up the application permissions.
Basic routers and advanced routers both usully have a setting to allow certian applications set permissions, usually these are found in "advanced settings menus on basic routers (for uk BTinternet users using a homehub for example these are found in the advanced setting menu)
All you need to do here is assign from the whats usually a drop down box or a box to enter a specific device a service and then the device, so in the homehubs case you want to make sure you have xbox live selected for application/game and your xbox in device. Basically the same for other types of routers.After that im afraid theres not much else you can do hence i always suggest if possible to invest in a decent router.
Step 1 for advanced routers, Follow the above rough guide but you should find you also have the ability to add specific port numbers and packet type so refer to the port lists above and make sure UDP is selected for packet type.
The following steps are designed to tweak certian settings to optimize your online play, I am a firm believer in the adage of "dont fix what isn't broken", so with that in mind if you find your online gaming expereinces are fine dont tinker. They are also settings that only advanced routers have so those with your bog standard routers like the homehub can stop reading now and go play a video game of your choice.