Optimization means that the network will work effectively, both technically and in terms of costs. Data network optimizations comes to achieve these goals, so the customer can work without any interruptions, without any “the network is slow” complains, but still in reasonable and suitable prices.
A while ago, a young software company, which developed a smartphone app that accesses gaming farms in the country, took international MPLS lines from Europe and the US, from two leading communication providers. The purpose of the lines was to reduce the overall latency between the smartphone in the US to the farm in Europe. In a continuous inspection of the phone-to-game latency, it turns out that with normal access via the Internet we got latencies that are no worth, and usually even better, than access through international lines at a cost of tens of thousands of Euro’s per month. The advantage of international lines is of course a commitment to high availability, and the question here is whether it is worth the high prices compared to standard Internet access? We will get to it.
In another case we started to work with a company that developed an application that worked over satellite connection, and they took the Inmarsat services. They launched the application for testing for several weeks, and after a month they received a bill of thousands of dollars. Since they only performed some basic tests, they could not understand the reason for this. A short Wireshark test revealed that they were working on the app over TCP and to keep channels open they decided to send TCP Keep Alive messages every few seconds. Since Inmarsat charged them by Dollars per Megabytes, they paid for millions of TCP Keep-alive transmitted over the network. The solution was to change the TCP counters that would keep Connection open for a while only, to match the Keep Alive messages that would be sent less frequently.
Last example and a funny one. Many years ago, in the primaries of one of the largest parties in the country, polling stations operated over a cellular network that was still a 2.5-3 generation (depending on the reception area). In a particular polling station, in an area where there was problematic cellular coverage, voting took several minutes, that is, from the moment the voting computer opened until the voter was able to complete the selection. At noon, many voters arrived, large queues of voters formed, and hundreds of voters got very nerves. A short Wireshark test shows that the delay on the cellphone was about 400mS, and during the voting process, about 100 packets passed between PCs at the voting stations and the servers. Simple calculation shows us that sending a hundred packets over 400mS delay takes at forty seconds, add to this some load on the network, and we got nervous voters. The solution was to simply sit down with the software guys, reduce if the amount of information that passes over the network (came out that 80% of them were not necessary), and the voters traffic jam was released. In a research I did later it turns out that the software tests were done over a direct LAN connection in a delay of less than 1mS.
For the previous problem with the gaming machines, the answer to a question whether to use Internet connectivity in extremely low prices or expensive MPLS lines with guarantied uptime – they are still with the MPLS lines. Their management does not want to take the risk, even though it is small, that users will not be able to get to the game and move on to play with other applications.
This is about network optimization – make it work, make the prices fair, consider technical and economic parameters and make the best decision to your organization.