Designing and modeling network routing algorithms has been extensively investigated and formulated by Prosser [35], McQuillan [32], Kleinrock [29], and others [5, 17]. The algorithms described in this chapter are organized around the research of Fultz [15], who consolidated an excellent taxonomy for classifying network routing algorithms (Table 9.1). The transition from topological classifications to routing algorithms is easily understood, since there is a noticeable overlap between classifying networks according to the type of routing algorithms used and according to their topological structure. Also, this list should not be considered all-inclusive because of ongoing trends in network development. However, it does provide a good basis from which to proceed into a more detailed study of network theory. Classification of routing algorithms






 Split traffic

 Ideal observer




  Local delay estimate

  Shortest queue + bias


  Periodic update

  Asynchronous update

Flow Control


 Buffer storage allocation

 Special route assignment