Packet switching is the method by which the internet works, it features delivery of packets of data between devices over a shared network. For example the school web server sending you a webpage over the internet or you sending an email to a friend. To get from one device to another the data packets will have to travel through network adapters, switches, routers and other network nodes. The route taken by each packet might vary and at times there might be a lot of data travelling through these nodes meaning packets will be queued. This will result in varying times it takes to send data from one device to another depending on the traffic load in the network.

Different routes taken by three different data packets being sent to the same destination

If you play computer games online you might have heard the term latency (or lag), this is the time taken to send data from one device to another. The higher the latency (time taken to send data), the less responsive your game will be. People with very low latency tend to do better at games as their machines will be more responsive.

Example: The ping command

To see the time it takes to send a message using packet switching you can use the ping command to time how long it takes to send data to another device, in this case we have used the command prompt to ping the www.example.com server:

As you can see the same data is being sent to the same location in all 5 attempts, but the second attempt met traffic on the way and took much longer. However, at 180.1 milliseconds you probably wouldn't notice.

As packet switching doesn't define a set route for data to be sent by, any disruption in the network can be circumnavigated by re-routing:

demonstration of how the internet can re-route message if nodes fail. This makes the internet very robust

Example: The trace command

The tracert command is used to map the route from one machine to another on the internet showing all the intermediate nodes, in this case, the message took ten steps to get there. The code above shows a trace from a home network to the www.google.com website. You can see that the 4th hop got lost and the data had to be re-routed.

If data requires multiple chunks then the order of each packet is noted

Packets sent onto the network, moving from router to router taking different paths (set by the router). Each packet's journey time can therefore differ.

Once packets arrive they are re-ordered

Message sent from recipient to sender indicating that the message has been received

If no confirmation message, sender transmits data again

Exercise: Internet/Intranet/World Wide Web

For the following packets (Green, Blue, Red), assuming each step from router to router takes an equal time. What order will the packets arrive at their destination? How do we make sure that the packets are read in the correct order?

Answer :

Green

Red

Blue

Each packet has a sequence number attached to it, so that it can be ordered when it reaches its destination.

What happens if a packet gets permanently lost on the way to a host?

Answer :

The packet will be resent until a confirmation message is returned from the recipient

What happens if a router on the network fails? How will the packets get to their destination?