Enter the maze

How to get two into one -

the cunning world of multiplexing

Multiplexed strand

Ever tried to have two conversations at the same time? You are on the phone, talking to one friend and chatting to another sitting next to you at the same time. Did you know you were multiplexing? - It is just a fancy word for having two conversations at the same time. Multiplexing can get pretty complicated. You start with one sentence, then part way switch to another then back again. If you chop it up into bursts of just a few words you will soon lose both conversations. Unless that is you've worked out a way to let those you are talking to know when you're talking to them. For example you could say. 'Hang on I'm talking to Paul' then speak to him and when you're finished say, 'right Ursula, back with you, where were we'. This way of structuring conversations might seem obvious, and it is, but it's an example of a communications protocol. When it comes to sending hundreds of conversations over a network it is the computers that have to work out the best way to keep the information flowing, and they often use very human tricks.

Time for a protocol

Conversations between computers look dull. All they ever say is 100010100100110. Of course all those binary bits are words or pictures or music or movies, broken down into the instructions needed to build them at the other end. But the connections between computers have limits, clever as they are there is a limit to how much stuff (data) you can get through them. Like a water pipe you can only force so much through. Computer scientists and other engineers call this limit the 'bandwidth of the channel'. A large bandwidth means lots of data can go through. To make sure that all the data gets through in time to be useful it is often broken into lumps: packets of data, which like the conversation with your two friends, go through the connection chopping and changing between them. That means each packet can be worked on at their destinations in parallel. It's multiplexing and its doing it with time.

If you use an optical fibre as a way to link computers together you can play another multiplexing trick

One at a time please

So imagine you have two packets of data, one is A=1111 and the other is B=0000. We need to have decided a communications protocol first. In this case it's simple - first bit through belongs to A, then next belongs to B - and repeat. So A and B go into our multiplexer and what is transmitted is 10101010. The two packets get interleaved like cards in a perfect shuffle. At the other end we have a 'demultiplexer' which also knows the protocol and applies the reverse, picking out each second bit in turn so recovering A and B. Now suppose we have a third packet C = 1010 say. A slight tweak to the protocol to extend it to include a third package (bits run ABCABC etc) and we transmit 101100101100, where packet C is now broken up to lie at every third bit in the stream. Of course you can play this trick for more and more packets, but remember at some stage you want to be able to rebuild them so you don't want to have to wait too long to get all the bits through. The delay in transmitting data is often called latency, a bit like the delay from standing in a queue buying tickets at the cinema before you get in. You want to keep latency to a minimum. So you can make time work for you up to point, but there is another trick to play, and it's quite illuminating.

Let there be light

Multiplexed strand

If you use an optical fibre as a way to link computers together you can play another multiplexing trick. An optical fibre is a long 'light pipe' made by drawing glass into a long, long, long, thin thread. You put data in as stream of light pulses at one end (flash for 1, dark for 0) and they bounce around till they pop out the other end, and that other end can be miles away! Your data is traveling at nearly the speed of light, which is fast, but using light has another advantages. Light has a wavelength. It is the difference in wavelengths that causes you to see different colours when your eye picks it up. Fortunately different wavelengths of light don't mix when they pass through each other, so you can send different light pulse streams on different wavelengths of light through your fibre. They all bounce around together inside. When they emerge you can use a prism, or some such device, to split out the different wavelengths, and recover the data. Add to these optical data streams a bit of time multiplexing as described earlier and you can increase bandwidth and cut latency enough to be able to video conference by optical fibre from the UK to the USA.

So you see multiplexing is quite a bright, time saving idea.