Why is capacity important when it comes to measuring high bandwidth connections, such as 10 Gbps or even 100 Gbps? The bandwidth of a connection defines the finite limit of any network segment's ability to support concurrent users. It is therefore important for the testing process to provide the metrics that accurately validate the concurrency and experience of users.
Simply running a test between two 10 Gbps devices will not accomplish this. Firstly, because the demand can never exceed the limit of capacity and, second, such a test cannot assess if the regulatory policies that govern the data are operating correctly to ensure concurrent users get the same experience when demand exceeds capacity.
Consider a four-lane road between two cities. A multi-lane road exists for the same purpose, to provide more capacity to allow commuters to share the road. However, we also know as demand rises the traffic starts to slow and the journey takes longer. How much longer depends on how well the road manages traffic. As an example, we all know that if the demand for traffic arriving at a red light exceeds the time allocated to the green light, an ever increasing delay occurs.
So, what must the test process do differently to test a 10 Gbps connection? Firstly, as indicated above, running a test using two 10 Gbps computers at each end of the connection is not a useful test when it comes to concurrent user demand.
To understand the test process, we need to examine the road example in more depth.
If the road between the two cities is 10 miles end-to-end and the speed limit is 60mph (1 mile a minute) we can now define the user experience because we can factor in the crucial measure of experience, which is trip time! The best user experience you can achieve is to arrive at the destination in 10 minutes. To do so means the road is perfect. The test method is straightforward, put several vehicles on the road and measure how long they take to get to the other end. If all the vehicles are still arriving in 10 minutes, you can state that the road is perfect. If they don't arrive in 10 minutes you know the road is congested. This test method is called a behavioral test.
Understanding the user experience using a behavioral test is one of the most valuable tests MyConnection Server can run regardless of the bandwidth measured. It does not have to be a very large bandwidth, it just has to be a connection that users are expected to share.
How can an MCS Behavioral Test be applied to a 10 Gbps or even a 100 Gbps connection?
Consider a company that has a multi-story office building in each of two cities and each building supports 50 users with 50 1 Gbps computers. The buildings are connected by a 10 Gbps connection with a trip latency of 10 milliseconds. The maximum demand of both offices combined for 100 concurrent users is 100 Gbps. This exceeds the 10 Gbps connection by a factor of 10. So, the big question for the assessment test to answer is, "What does this mean for the user experience on a day-to-day basis?". Two 10 Gbps devices running a test cannot assess the user experience because demand can never exceed 10 Gbps. More importantly, there is a myriad of other devices such as routers, switches, load balancers, proxy servers, and firewalls, etc. that share the same limitation.
So, how should it be tested?
The goal of a behavioral test is two-fold.
- The test must be able to generate any size of demand from anywhere in the network i.e. not just 10 Gbps to 10 Gbps
- The test must be able to identify the point at which any user does not arrive on time. In the case of the road, the test is easy. Testing a network is not as simple, however.
Creating an MCS behavioral test for a 10 Gbps connection requires that the test method can incorporate and run on any number of workstations or test devices at the same time no matter where they are in the world. MCS's ability to automate this allows a connection of any bandwidth size to be assessed with a user demand that exceeds the connection capacity. This test model also allows the assessment to be conducted in a manner that matches the design purpose of an entire network, not just a single connection. Such a test is valuable because the test can validate and expose problems with the policies and provisioning rules that manage demand across an entire network. This defines a behavioral test.
The most important part of the test process must be strictly disciplined and must conform to RFC6349.
Why is this important?
It is important because the test must be able to assess when packets are not arriving on time. In the two cities example, the 10 Gbps connection had a trip time of 10 milliseconds. Unlike the majority of speed tests on the Internet, even the most popular ones, the test process must be able to strictly control the exact amount of data (bits) allowed to enter the network from all test locations.
By doing this, the test can validate the result against the trip time to report when the delay is increasing and by how much. Failure to manage the time element means that the test will not be able to tell the difference between 10 users doing 1 Mbps versus 1 user doing 10 Mbps despite one being 10 times faster. As an example, if the payload was 1 million bits then over 10 milliseconds (100 trips in a second) the result of a single user MUST report 94.8 Mbps (includes 6% overhead, 94% efficiency). This result is called the equilibrium of the connection. If the test does not attain equilibrium, then the connection has slowed and the amount of delay can be reported for every shared user. This allows the different network segments within a global network to be individually assessed, not just the concurrent users.
MyConnection Server ACS multi-port behavioral test servers
Any number of MCS ACS test servers (from 2-port to 16-port) can be combined in a single behavioral test. A single MCS 16-port ACS server will deliver exactly 1 Gbps (pure gigabit) per port to generate a 16 Gbps concurrent user payload. An ACS multi-port server is designed to have no operating system or file system. This design eliminates overhead (<1%) and security threats ensuring the test assessment process addresses only the network infrastructure and excludes the user workstation.
Additionally, the ACS device can validate all the bad TCP quality events while the test is running so problems are identified quickly and accurately. For example, Bytes retransmitted, Bytes lost, CRC errors, Fast Retransmits, Timeout Retransmits, packet order, Max Delay (waiting for data), and many more metrics that are normally not accessible.
