This article is part of a series of 5 where I am talking about the Microsoft Azure network bandwidth. For a better understanding please make sure you read also the other parts:
- What does Microsoft mean by low / moderate / high / very high / extremely high Azure network bandwidth (part 1)
- The isolated network setup (the environment used for network analysis) (part 2)
- What happens when we perform a PING? (part 2.1)
- What happens when we perform a PING in size of 4086 bytes? (part 2.2)
- Now let’s see what exactly happens when a file is copied over the network (file share) (part 2.3)
- Now let’s see what exactly happens when MS SQL traffic is performed (part 2.4)
- Now let’s see what exactly happens when IIS HTTP/HTTPS traffic is performed (part 2.5)
- The IOmeter benchmark tests who reproduce as close as possible the HTTP/HTTPS, SMB and MS SQL network traffic (part 3)
- The Azure Virtual Machines used to run the IOmeter benchmarks (part 4)
- Results and interpretations
What happens when we perform a PING in size of 4086 bytes?
In case the amount of ping data is “large” (in this case 4086 bytes) a PING at the network level is basically “split” in three frames. This split is influenced by the value of Maximum Transmission Unit (MTU) the network adapter has been set with. MTU is the size (in bytes) of the largest protocol data unit that the layer can pass onwards. To be more precise, MTU “is the maximum size of an IP packet that can be transmitted without fragmentation – including IP headers but excluding headers from lower levels in the protocol stack”.
If the amount of data an application is sending over the network is larger than the MTU size, then at the network layer the data is split and transmitted over multiple packets.
In this example the communication is performed between two virtual machines connected over Ethernet and the MTU is – 1500 bytes (the default value).
In the following screens we can see how Wireshark is representing the network traffic performed by a 4086 bytes PING echo request.
Frame no. 3.
Frame no. 4
Frame no. 5 (reassembled).
So, in the end we can say, for a 4086 bytes PING echo request, Wireshark represents the traffic as three frames:
- Frame no. 3 length: 1514 bytes (ETH = 14 bytes | IP = 20 bytes | Data = 1480 bytes)
- Frame no. 4 length: 1514 bytes (ETH = 14 bytes | IP = 20 bytes | Data = 1480 bytes)
- Frame no. 5 length: 1168 bytes (ETH = 14 bytes | IP = 20 bytes | ICMP header = 8 bytes | data = 1126 bytes)
Reassembled IPv4 = 1480 bytes + 1480 bytes + 1134 bytes = 4094 bytes
Total data = 1480 bytes + 1480 bytes + 1126 bytes = 4086 bytes
Overall network traffic (3 frames): 1514 bytes + 1514 bytes + 1168 bytes = 4196 bytes