Course number 67605 --- 2002/2003
Exercise 2: Source-Based Adaptive Routing
Adaptive routing is done at the switches of an interconnection
network.
Each switch knows the status of the different links, and can modify
the routing to avoid problematic links.
But most modern networks use source routing.
The sender prepends a set or routing bytes to the message.
Each switch removes the first byte, uses it as an indication of
which output port to use, and forwards the rest of the message to
that port.
The sender needs to know the topology, and creates a routing table
with the correct sequence of routing bytes for each possible destination.
The question is then how to do adaptive routing -- the switches just
follow instructions, and the senders don't know the status of the
different links...
Note, however, that the connection between each node and the network
is through a smart NIC (network interface card), that includes a
processor and quite a bit of memory.
Unlike the switches, these processors are programmable.
Thus each node has a small dedicated computer to handle
communications, without interrupting the central CPU.
What to do
Ponder the question of how to do source based adaptive routing.
Think about it and discuss it with your friends.
First make sure you know what you want to achieve.
Make a list of what are the goals of adaptive routing, and why it is
a good thing.
Then try to come up with ideas that allow at least some of these
goals to be achieved in a source-routed network.
What can you do?
How do you do it?
What are the costs?
Submit
Send an email with your design and considerations to
parsys@cs.
Please use plain ASCII text, not word attachements!
If you really want something fancier (e.g. small sketches on napkins)
you can submit a hardcopy to my room/mailbox.
Due date: Tuesday, April 8 in the morning, so
I can go over them before class on Wednesday.