Packet Switching is one of the most important technologies that led to the creation of the modern day internet.
To fully explain Packet Switching a bit of history is needed first - namely some history of the telephone.
In the 1800s when the telephone first became commercially available there was no complicated switching system. If you wanted to make a call to someone then all you did was tell the operator who you wished to speak to and the operator would physically connect the two lines together. This meant that to have a conversation a whole physical connection (in this case a cable) had to be dedicated to your use. When the vacuum tube was developed a new system was created called Frequency Division Multiplexing in the 1920s. Basically this meant that several different phone calls could be routed down the same physical cable by increasing the frequency of the conversations at one end of cable and then using band width filters at the other end to separate the conversations again (this works by letting every call only have a certain frequency range, about 3kHz is good enough to transmit the human voice understandably, so the first call would get the 0-3kHz band, the second 4-7kHz etc.). But still this ment that each phone call would take a fixed amount of bandwidth, it made no difference whether the people were talking or just being silent the whole channel was still dedicated to them. The technical term for this sort of system is Circuit Switching - at all points between the start and end points of the call the full capacity has to be reserved and available, no matter that it isn't being used
Obviously this is a very inefficient system to use. Its stupid to have to dedicate a connection during the period where no data is being transmitted down it.
When the forerunner to the internet, ARPANET, was being developed it was quickly realised that dedicated connections were both too wasteful in term of bandwidth and that they were not survivable enough - remember of course that ARPANET was designed to withstand being attacked. If a node in a dedicated connection is knocked out then that whole connection is knocked out, there is no mechanism for rerouting the connection while its in progress. Thus in the mid 1960s the idea of packet switching was developed.
The central concepts of packet switching were thought up at the same time, though independently, by two researchers in the US and the UK. Paul Baran was working for RAND Corporation in the early '60s and was working on a project to develop survivable communications networks for the US Air Force. He quickly realised that to be survivable there could be no central switching facility, each node on the network had to be responsible for the routing of data. Unfortunately when AT&T was approached by the Air Force to build such a network they refused and the whole plan was put on hold. At roughly the same time as this plan was put on hold - 1965 - Donald Watts Davies, a 41 year old physicist who was working for the National Physics Laboratory in the UK came up with same ideas for having a distributed network. Davies initially kept his ideas quiet since he thought that he would face resistance from the Post Office (who was then responsible for the telephone system in the UK, but that side became British Telecom later). After doing intensive studies into the validity of his ideas he gave a lecture about them in London. After the lecture he was approached by a man from the Ministry of Defence and told about Baran's research. However, unlike AT&T, the British Post Office was very interested in Davies's ideas and funded him to develop them further, which led to their being used in the creation of the ARPANET. It was said that later when when Baran and Davies finally met that Davies said "You may have got there first, but I got the name".
There are two central ideas behind packet switching. The first is that all data is split up in to smaller discrete chunks, each of which in encapsulated by a set of headers that detail where the packet it from and where its going to, as well as the position of the packet in the final piece of data - so that large pieces of data can be put back in order after they are received. The second idea is that there is no central authority that governs the route that they take between nodes. Two packets from the same host to the same destination can take completely different routes. Each node is responsible for choosing where to send each packet. This allows packets to be routed around congestion and broken nodes without it having an adverse affect on the network as a whole.
Currently there are two different approaches that are common to packet switching: Datagram Switching and Virtual Circuit Packet Switching. Datagram Switching allows packets to take any route to their destination. Each packet is seen as a separate entity and is treated as such. Every node along the route to the destination will examine the packet headers and decided where to send the packet next. Virtual Circuit Packet Switching sets up a virtual path between the host and the destination each packet then follows that path. This has the advantage of allowing shorter headers as well as ensuring that packets arrive in the same order that they are send in.
Datagram Switching is used for TCP/IP.
Virtual Circuit Packet Switching is used for frame relays and X.25
Where wizards stay up late - Katie Hafner and Matthew Lyon