Steve Smith talks the internet's postal service, the packet, and how it is used to transmit data all over the internet.
Episode #3-44 released on July 27, 2013
The letter was one of the most important forms of communication to change the world, and the packet has achieved no less in its time. To understand what a network packet is, you only need to think of the idea of an envelop with a letter inside.
This envelop contains a data payload, also known as user data, and various headers like origin IP address, destination IP address, TTL, internet header length, type of service, length of packet in bytes, identification tags, fragmentation flags, header checksum, protocol type, fragment offset position, and more.
The easiest way to explain all this, is to identify each of the parts in relation to its tasks.
For the most part, packet-loss, is a normal and important part of the way internet communications work. When packets are lost, this is an indication of various scenarios, such as an indication that a specific path is not a viable solution, therefore other packets will change course. It is, also, an indication to slow down sending future packets, to avoid bandwidth bloat, which occurs when too many packets are within the memory of any router on the way from or to your computer or server. And, because the packet doesn't have to deal with mortality, we give them a TTL, or Time To Live, which is counted in hops. A single hop is the act traversal from one router, computer, server, etc... to another. If the TTL is set to 15, your packet must reach its destination before the counter runs to zero. It the TTL of the packet is 0, it is deleted, and is considered lost.
Packets can, also, be corrupted during transmission, and therefore a header checksum is provided to validate the packet is not corrupted when reaching its destination. If the packet is corrupted, it is deleted, and announced as lost, if the protocol requires the packet to be replaced. The header checksum is a more efficient way of determining if the packet is corrupted, but parity testing of each character is another way of testing for corruption, just not timely enough, and not implemented as a result.
When streaming content like video or audio, order is important, but packets can travel in any direction, and come back out of order, this is way the UDP protocol exists, and is well suited to this type communication. One detail, the type of service header would register as being streaming content, and the protocol header would indicate that these packets are UDP based, and nothing else. Only packets received in order will be processed, and only if the checksum validates that the packet is not corrupted. If packets are missing, and come later, they are ignored, and deleted. Missing packets are one of the reasons for artifacting in either video and audio transmissions. A high packet-loss ratio is, also, an indicator that the Quality of Service settings are not optimal, and may need to be adjusted for streaming content.
When the integrity of the file is important, like a download, we use TCP. Taking note of the packet length, identification and length of the packet, and validating the header checksum, we are able to have files rebuilt nearly identically to the original. If a packet is lost, or corrupted in transmission, it is simply re-requested. As a matter of function, all packets contain the total number of packets that you should be receiving, there making it simpler for the assembly of the final file download.
And, that is why the internet works, the way it does.
Next week, I shall be discussing the benefits of wired connections versus wireless, and how the type of connections relate to speed, and how it slows everything down.
Remember to like this episode if you were interested in today's topic, share if you think someone else could benefit from the topic, and subscribe if you want to learn more. For the show notes of this episode and others, for more information on other ways to subscribe to our show, to subscribe to our weekly newsletter, and how to participate by submitting your questions, comments, suggestions, and stories, head over to TQAWeekly.com.
Host : Steve Smith | Music : Jonny Lee Hart | Editor : Steve Smith | Producer : Zed Axis Productions
Feel free to ask more questions, comment on the content, share other possible solutions, and suggestions. An account is required, please register, or login to leave your comment. Thank you for your input.
A single player game, Bayonetta is a third person 3D action game with a similar combat system and style to Devil May Cry series. We control a witch, Bayonetta, tasked with eliminating angelic enemies with the most amount of flair possible. As the game progresses, and you gain more and more halos, you get to upgrade skills, weapons, and much more, but you must travel to hell to do so.
Published on April 21st, 2017