home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / drafts / draft_ietf_q_t / draft-ietf-qosr-framework-01.txt < prev    next >
Text File  |  1997-07-30  |  79KB  |  1,479 lines

  1. INTERNET DRAFT                
  2. draft-ietf-qosr-framework-01.txt              July, 28, 1997
  3.                         
  4.  
  5.                 A Framework for QoS-based Routing in the Internet
  6.  
  7.      Eric Crawley          Raj Nair     Bala Rajagopalan  Hal Sandick
  8.      Gigapacket Networks   Arrowpoint   NEC USA           IBM
  9.  
  10.  
  11.  
  12. Status of this Memo
  13.  
  14.    This document is an Internet Draft.  Internet Drafts are working
  15.    documents of the Internet Engineering Task Force (IETF), its Areas,
  16.    and its Working Groups. Note that other groups may also distribute
  17.    working documents as Internet Drafts.
  18.  
  19.    Internet Drafts are draft documents valid for a maximum of six
  20.    months. Internet Drafts may be updated, replaced, or obsoleted by
  21.    other documents at any time.  It is not appropriate to use Internet
  22.    Drafts as reference material or to cite them other than as a "working
  23.    draft" or "work in progress."
  24.  
  25.    To learn the current status of any Internet Draft, please check the
  26.    1id-abstracts.txt listing contained in the Internet Drafts Shadow
  27.    Directories on ds.internic.net, nic.nordu.net, ftp.nisc.sri.com or
  28.    munnari.oz.au.
  29.  
  30.    Distribution of this memo is unlimited.
  31.  
  32.    This Internet Draft expires on January, 28, 1998.
  33.  
  34.  
  35.                 ABSTRACT
  36.  
  37. QoS-based routing is being recognized as the missing piece in the evolution 
  38. of QoS-based service offerings in the Internet. This document describes
  39. some of the QoS-based routing issues and requirements, and proposes a framework for 
  40. QoS-based routing in the Internet. This framework is based on extending the current
  41. Internet routing model of intra and interdomain routing to support QoS. The ideas 
  42. expressed in this document are subject to discussion and expected to evolve based on 
  43. inputs received over time. 
  44.  
  45.  
  46. 1. SCOPE OF  DOCUMENT & PHILOSOPHY
  47.  
  48. This document proposes a framework for QoS-based routing, with the 
  49. objective of fostering the development of an Internet-wide solution while 
  50. encouraging innovations in solving the many problems that arise. QoS-based 
  51. routing has many complex facets and it is recommended that the following 
  52. two-pronged approach be employed towards its development:
  53.  
  54.  
  55. draft-ietf-qosr-framework-01.txt                                              [Page 1]
  56.  
  57.  1. Encourage the growth and evolution of novel intradomain QoS-based routing 
  58.     architectures. This is to allow the development of independent, innovative 
  59.     solutions that address the many QoS-based routing issues. Such solutions may
  60.     be deployed in autonomous systems (ASs), large and small, based on their 
  61.     specific needs.
  62.  
  63.  2. Specify simple, consistent and stable interactions between ASs implementing
  64.     routing solutions developed as above. 
  65.  
  66. This approach follows the traditional separation between intra and interdomain 
  67. routing. It allows solutions like QOSPF [PGW97, ZSSC96], Integrated PNNI 
  68. [IPNNI] or other schemes to be deployed for intradomain routing without any  
  69. restriction, other than their ability to interact with a common, and perhaps 
  70. simple, interdomain routing protocol. The need to develop a single, all 
  71. encompassing solution to the complex problem of QoS-based routing is therefore 
  72. obviated. As a practical matter, there are many different views on how QoS-based
  73. routing should be done. Much overall progress can be made if an opportunity 
  74. exists for various ideas to be developed and deployed concurrently, while some 
  75. consensus on the interdomain routing architecture is being developed.
  76. Finally, this routing model is perhaps the most practical from an evolution
  77. point of view. It is superfluous to say that the eventual success of a
  78. QoS-based Internet routing architecture would depend on the ease of evolution.
  79.  
  80. The aim of this draft is to describe the QoS-based routing issues, identify 
  81. basic requirements on intra and interdomain routing, and describe an extension
  82. of the current interdomain routing model to support QoS. It is not an objective 
  83. of this draft to specify the details of intradomain QoS-based routing architectures.  
  84. This is left up to the various intradomain routing efforts that might follow.  Nor 
  85. is it an objective to specify the details of the interface between reservation protocols 
  86. such as RSVP and QoS-based routing. The specific interface functionality needed,
  87. however, would be clear from the intra and interdomain routing solutions devised.
  88. In the intradomain area, the goal is to develop the basic routing 
  89. requirements while allowing maximum freedom for the development of solutions. In
  90. the interdomain area, the objectives are to identify the QoS-based 
  91. routing functions, and facilitate the development of a routing protocol that 
  92. allows relatively simple interaction between domains. The views presented in 
  93. this draft are expected to evolve as consensus emerges on Internet-wide QoS- based 
  94. routing needs.
  95.  
  96. In the next section, a glossary of relevant terminology is given. In Section 3, 
  97. the objectives of QoS-based routing are described and the issues that must be dealt 
  98. with by QoS-based Internet routing efforts are outlined. In Section 4, some 
  99. requirements on intradomain routing are defined. These requirements are 
  100. purposely broad, putting few constraints on solution approaches. The 
  101. interdomain routing model and issues are described in Section 5 and QoS-based
  102. multicast routing is discussed in Section 6.  The interaction between QoS-based 
  103. routing and resource reservation protocols is briefly considered in Section 7. 
  104. Related work is described in Section 8. Finally, summary and conclusions are 
  105. presented in Section 9.
  106.  
  107.  
  108.  
  109. draft-ietf-qosr-framework-01.txt                                              [Page 2]
  110.  
  111. 2.  GLOSSARY
  112.  
  113. The following glossary lists the terminology used in this draft and an explanation 
  114. of what is meant. Some of these terms may have different connotations, but when 
  115. used in this draft, their meaning is as given.
  116.  
  117. Alternate Path Routing : A routing technique where multiple paths, rather 
  118. than just the shortest path, between a source and a destination are utilized to
  119. route traffic. One of the objectives of alternate path routing is to distribute 
  120. load among multiple paths in the network.
  121.  
  122. Autonomous System (AS): A routing domain which has a common intradomain routing 
  123. plan and administrative authority.
  124.  
  125. Source: A host or router that can be identified by a unique unicast IP address. 
  126.  
  127. Unicast destination: A host or router that can be identified by a unique unicast
  128. IP address.
  129.  
  130. Multicast destination: A multicast IP address indicating all hosts and routers 
  131. that are members of the corresponding group.
  132.  
  133. IP flow (or simply "flow"): An IP packet stream from a source to a destination 
  134. (unicast or multicast) with an associated Quality of Service (QoS) (see below) 
  135. and higher level demultiplexing  information. The associated QoS could be 
  136. "best-effort".
  137.  
  138. Quality-of-Service (QoS): A set of service requirements to be met by the 
  139. network while transporting a flow. 
  140.  
  141. Service class: The definitions of the semantics and parameters of a specific 
  142. type of QoS.
  143.  
  144. Integrated services:  The Integrated Services model for the Internet
  145. defined in RFC 1633 allows for integration of QoS services with the best
  146. effort services of the Internet.  The Integrated Services (IntServ)
  147. working group in the IETF has defined two service classes, Controlled
  148. Load Service [W96] and Guaranteed Service [SPG97].
  149.  
  150. RSVP:  The ReSerVation Protocol [BZBH96].  A QoS signaling protocol for the
  151. Internet.
  152.  
  153. Path: A unicast or multicast path.
  154.  
  155. Unicast path: A sequence of links from an IP source to a unicast IP destination,
  156. determined by the routing scheme for forwarding packets. 
  157.  
  158. Multicast path (or Multicast Tree): A subtree of the network topology in which 
  159. all the leaves and zero or more interior nodes are members of the same multicast
  160. group. A multicast path may be per-source, in which case the subtree is rooted 
  161. at the source.
  162.  
  163.  
  164. draft-ietf-qosr-framework-01.txt                                              [Page 3]
  165.  
  166. Flow set-up: The act of establishing state in routers along a path to satisfy the 
  167. QoS requirement of a flow.
  168.  
  169. Crankback: A technique where a flow setup is recursively backtracked along the 
  170. partial flow path up to the first node that can determine an alternative path 
  171. to the destination.
  172.  
  173. QoS-based routing: A routing mechanism under which paths for flows are
  174. determined based on some knowledge of resource availability in the network as 
  175. well as the QoS requirement of flows. 
  176.  
  177. Route pinning: A mechanism to keep a flow path fixed for a duration of time.
  178.  
  179. Flow Admission Control (FAC): A process by which it is determined whether a 
  180. link or a node has sufficient resources to satisfy the QoS required for a flow. 
  181. FAC is typically applied by each node in the path of a flow during flow set-up 
  182. to check local resource availability. 
  183.  
  184. Higher-level admission control: A process by which it is determined whether or 
  185. not a flow set-up should proceed, based on estimates of the overall resource 
  186. usage by the flow. Higher-level admission control may result in the failure of 
  187. a flow set-up even when FAC at each node along the flow path indicates resource 
  188. availability.
  189.  
  190.  
  191. 3.  QOS-BASED ROUTING ISSUES 
  192.  
  193. Under QoS-based routing,  paths for flows would be determined based on 
  194. some knowledge of resource availability in the network, as well as the QoS 
  195. requirement of flows. The main objectives of QoS-based routing are:
  196.  
  197. 1.  Dynamic determination of feasible paths:  QoS-based routing can determine 
  198.     a path, from among possibly many choices, that has a good chance of 
  199.     accommodating the QoS of the given flow. Feasible path selection may be 
  200.     subject to policy constraints, such as path cost, provider selection, etc. 
  201.  
  202. 2.  Optimization of resource usage: A network state-dependent QoS-based 
  203.     routing scheme can aid in the efficient utilization of network resources 
  204.     by improving the total network throughput. Such a routing scheme can be the 
  205.     basis for efficient network engineering.
  206.  
  207. 3.  Graceful performance degradation: State-dependent routing can compensate 
  208.     for transient inadequacies in network engineering (e.g., during focused 
  209.     overload conditions), giving better throughput and a more graceful 
  210.     performance degradation as compared to a state-insensitive routing 
  211.     scheme [A84].
  212.  
  213. QoS-based routing in the Internet, however, raises many issues:
  214.  
  215. -  How do routers determine the QoS capability of each outgoing link and  reserve   
  216.    link resources? Note that some of these links may be virtual, over ATM   
  217.    networks and others may be broadcast multi-access links. 
  218.  
  219.  
  220. draft-ietf-qosr-framework-01.txt                                              [Page 4]
  221.  
  222. -  What is the granularity of routing decision (i.e., destination-based, source
  223.    and destination-based, or flow-based)?
  224.  
  225. -  What routing metrics are used and how are QoS-accommodating paths computed for 
  226.    unicast flows? 
  227.  
  228. -  How are QoS-accommodating paths computed for multicast flows with different 
  229.    reservation styles and receiver heterogeneity? 
  230.  
  231. -  What are the performance objectives while computing QoS-based paths?
  232.  
  233. -  What are the administrative control issues?
  234.  
  235. -  What factors affect the routing overheads?, and
  236.  
  237. -  How is scalability achieved?
  238.  
  239. Some of these issues are discussed briefly next. Interdomain routing is discussed in 
  240. Section 5.
  241.  
  242. 3.1  QoS Determination and Resource Reservation 
  243.      ------------------------------------------
  244.  
  245. To determine whether the QoS requirements of a flow can be accommodated 
  246. on a link, a router must be able to determine the QoS available on the link. It 
  247. is still an open issue as to how the QoS availability is determined for 
  248. broadcast multiple access links (e.g., Ethernet). A related problem is the 
  249. reservation of resources over such links. The ISSLL working group and the IEEE 
  250. 802.1 group are attempting to resolve these issues. 
  251.  
  252. Similar problems arise when a router is connected to a large non-broadcast 
  253. multiple access network, such as ATM. In this case, if the destination of a flow is 
  254. outside the ATM network, the router may have multiple egress choices. 
  255. Furthermore, the QoS availability on the ATM paths to each egress point may be 
  256. different.  The issues then are, 
  257.  
  258.    o   how does a router determine all the egress choices across the ATM network?
  259.    o   how  does it determine what QoS is available over the path to each egress 
  260.         point?, and 
  261.    o   what QoS value does the router advertise for the ATM link.  
  262.  
  263. Typically, IP routing over ATM (e.g., NHRP) allows the selection of a single egress 
  264. point in the ATM network, and the procedure does not incorporate any knowledge 
  265. of the QoS required over the path. An approach like I-PNNI [IPNNI] would be 
  266. helpful here, although with some complexity. 
  267.  
  268.  
  269.  
  270.  
  271. draft-ietf-qosr-framework-01.txt                                              [Page 5]
  272.  
  273. 3.2  Granularity of Routing Decision
  274.      -------------------------------
  275.  
  276. Routing in the Internet is currently based only on the destination
  277. address of a packet.  Many multicast routing protocols require routing
  278. based on the source and destination of a packet.  The Integrated
  279. Services architecture and RSVP allow QoS determination for an
  280. individual flow between a source and destination.  This set of routing
  281. granularities presents a problem for QoS routing solutions.
  282.  
  283. If routing based only on destination address is considered, then all
  284. flows between any source and the destination will be routed over the
  285. same path.  This is acceptable if the path has adequate capacity but it can
  286. be a problem if there are multiple flows to a destination that exceed
  287. the capacity of the link.
  288.  
  289. One version of QOSPF [ZSSC96] determines QoS routes based on source 
  290. and destination address.  This implies that all traffic between a given source 
  291. and destination, regardless of the flow, will travel down the same route.
  292. Again, the route must have capacity for all the QoS traffic for the
  293. source/destination pair.  The amount of routing state is also increased
  294. since the routing tables must include source/destination pairs instead
  295. of just destination.  This amount of state increases rapidly as the
  296. traditional routes are summarized.
  297.  
  298. The best granularity is found when routing is based on individual flows
  299. but this has a tremendous cost for routing state.  Each QoS flow can be
  300. routed separately between any source and destination.  Use of the IPv6
  301. flow label can help in identifying or classifying flows. 
  302.  
  303. Both source/destination and flow based routing also have a dangerous
  304. property when it comes to route loop detection.  If a node along a flow
  305. or source/destination based path loses the state information for the
  306. flow and the flow based route is different from the destination only
  307. based routing, the potential exists for a route loop to form when the
  308. node forwards the packet based on destination routing towards a node
  309. earlier on the path.
  310.  
  311. 3.3   Metrics and Path Computation
  312.       ----------------------------
  313.  
  314. 3.3.1 Metric Selection and Representation
  315.  
  316. There are some considerations in defining suitable link and node metrics [WC96]. 
  317. First, the metrics must represent the basic network properties of interest. Such
  318. metrics include residual bandwidth, delay and jitter. Since the flow QoS requirements 
  319. have to be mapped onto path metrics, the metrics define the types 
  320. of QoS guarantees the network can support. Alternatively, QoS routing cannot support 
  321. QoS requirements that cannot be meaningfully mapped onto a reasonable combination of 
  322. path metrics. Second, path computation based on a metric or a combination of metrics 
  323. must not be too complex as to render them impractical. In this regard, it is worthwhile
  324.  
  325. draft-ietf-qosr-framework-01.txt                                              [Page 6]
  326.  
  327. to note that path computation based on certain combinations of metrics
  328. (e.g., delay and jitter) is theoretically hard. Thus, the allowable combinations
  329. of metrics must be determined taking into account the complexity of computing paths 
  330. based on these metrics and the QoS needs of flows. A common strategy to allow
  331. flexible combinations of metrics while at the same time reduce the path computation
  332. complexity is to utilize "sequential filtering". Under this approach, a combination
  333. of metrics is ordered in some fashion, reflecting the importance of different metrics
  334. (e.g., cost followed by delay, etc.). Paths based on the primary metric are
  335. computed first (using a simple algorithm, e.g., shortest path) and a subset of them are 
  336. eliminated based on the secondary metric and so forth until a single path is found. 
  337. This is an approximation technique and it trades off global optimality for
  338. path computation complexity. 
  339.  
  340. Now, once suitable link and node metrics are defined, a uniform representation of them
  341. is required across independent domains, employing possibly different routing
  342. schemes, in order to derive path metrics consistently 
  343. (path metrics are obtained by the composition of link and node metrics). 
  344. Encoding of the maximum, minimum, range, and granularity of the metrics are needed. 
  345. Also, the definitions of comparison and accumulation operators are required. 
  346. In addition, suitable triggers must be defined for indicating a significant 
  347. change from a minor change.  The former will cause a routing update to be 
  348. generated. The stability of the QoS routes would depend on the ability to 
  349. control the generation of updates. With interdomain routing, it is essential to obtain 
  350. a fairly stable view of the interconnection among the ASs.
  351.  
  352. 3.3.2  Metric Hierarchy
  353.  
  354. A hierarchy can be defined among various classes of service based on the 
  355. degree to which traffic from one class can potentially degrade service of 
  356. traffic from lower classes that traverse the same link. In this hierarchy, 
  357. guaranteed constant bit rate traffic is at the top and "best-effort" datagram 
  358. traffic at the bottom.  Classes providing service higher in the hierarchy 
  359. impact classes providing service in lower levels. The same situation is not 
  360. true in the other direction. For example, a datagram flow cannot affect a real-
  361. time service. Thus, it may be necessary to distribute and update different 
  362. metrics for each type of service in the worst case.  But, several advantages 
  363. result by identifying a single default metric.  For example, one could derive a 
  364. single metric combining the availability of datagram and real-time service 
  365. over a common substrate.
  366.  
  367. 3.3.3  Datagram Flows
  368.  
  369. A delay-sensitive metric is the probably the most obvious type of metric 
  370. suitable for datagram flows. However, it requires careful analysis to avoid 
  371. instabilities and to reduce storage and bandwidth requirements. For example, 
  372. we could use a recursive filtering technique that is based on a simple and 
  373. efficient weighted averaging algorithm [NC94]. This filter is used to stabilize 
  374. the metric. While it is adequate for smoothing most loading patterns, it will 
  375. not distinguish between patterns consisting of regular bursts of traffic and 
  376. random loading. Among other stabilizing tools, is a minimum time between 
  377. updates that can help filter out high-frequency oscillations.
  378.  
  379.  
  380. draft-ietf-qosr-framework-01.txt                                              [Page 7]
  381.  
  382. 3.3.4 Real-time Flows
  383.  
  384. In real-time quality-of-service, delay variation is generally more critical than
  385. delay as long as the delay is not too high.  Clearly, voice-based applications 
  386. cannot tolerate more than a certain level of delay. The condition of varying 
  387. delays may be expected to a greater degree in a shared medium environment with 
  388. datagrams, than in a network implemented over a switched substrate.  Routing a 
  389. real-time flow therefore reduces to an exercise in allocating the required 
  390. network resources while minimizing fragmentation of bandwidth. The resulting 
  391. situation is a bandwidth-limited minimum hop path from a source to the destination.  
  392. In other words, the router performs an ordered search through paths of increasing 
  393. hop count until it finds one that meets all the bandwidth needs of the flow. 
  394. To reduce contention and the probability of false probes (due to inaccuracy in 
  395. route tables), the router could select a path randomly from a "window" of paths
  396. which meet the needs of the flow and satisfy one of three additional criteria: 
  397. best-fit, first-fit or worst-fit. Note that there is a similarity between the 
  398. allocation of bandwidth and the allocation of memory in a multiprocessing system. 
  399. First-fit seems to be appropriate for a system with a high real-time flow arrival 
  400. rates; and worst-fit is ideal for real-time flows with high holding times.
  401. This rather nonintuitive result was shown in [NC94].
  402.  
  403. 3.3.5  Path Properties
  404.  
  405. Path computation by itself is merely a search technique, e.g., Shortest Path 
  406. First (SPF) is a search technique based on dynamic programming. The 
  407. usefulness of the paths computed depends to a large extent on the metrics 
  408. used in evaluating the cost of a path with respect to a flow.
  409.  
  410. Each link considered by the path computation engine must be evaluated 
  411. against the requirements of the flow, i.e., the cost of providing the services 
  412. required by the flow must be estimated with respect to the capabilities of the 
  413. link. This requires a uniform method of combining features such as delay, 
  414. bandwidth, priority and other service features. Furthermore, the costs must 
  415. reflect the lost opportunity of using each link after routing the flow.
  416.  
  417. 3.3.6  Performance Objectives 
  418.  
  419. One common objective during path computation is to improve the total network throughput.
  420. In this regard, merely routing a flow on any path that accommodates its QoS  
  421. requirement is not a good strategy. In fact, this corresponds to uncontrolled 
  422. alternate routing and may adversely impact performance at higher traffic loads.
  423. It is therefore necessary to consider the total resource allocation for a flow 
  424. along a path, in relation to available resources, to determine whether or not 
  425. the flow should be routed on the path [RSR95].  Such a mechanism is referred to 
  426. in this draft as "higher level admission control". The goal of this is to ensure
  427. that the "cost" incurred by the network in routing a flow with a given QoS is 
  428. never more than the  revenue gained.  The routing cost in this regard may be the
  429. lost revenue in potentially blocking other flows that contend for the same 
  430. resources. The formulation of the higher level admission control strategy, with 
  431. suitable administrative hooks and with fairness to all flows desiring entry to 
  432. the network, is an issue. The fairness problem arises because flows 
  433.  
  434. draft-ietf-qosr-framework-01.txt                                              [Page 8]
  435.  
  436. with smaller reservations tend to be more successfully routed than flows with 
  437. large reservations, for a given engineered capacity.  To guarantee a certain 
  438. level of acceptance rate for "larger" flows, without over-engineering the 
  439. network, requires a fair higher level admission control mechanism. The application
  440. of higher level admission control to multicast routing is discussed later.
  441.  
  442. 3.4   Administrative Control
  443.       ----------------------
  444.  
  445. There are several administrative control issues. First, within an AS employing 
  446. state-dependent routing, administrative control of routing behavior may be 
  447. necessary. One example discussed earlier was higher level admission control. 
  448. Some others are described in this section. Second, the control of interdomain 
  449. routing based on policy is an issue. The discussion of interdomain routing is 
  450. defered to Section 5. 
  451.  
  452. Two areas that need administrative control, in addition to appropriate routing 
  453. mechanisms, are handling flow priority with preemption, and resource allocation 
  454. for multiple service classes.
  455.  
  456. 3.4.1  Flow Priorities and Preemption
  457.  
  458. If there are critical flows that must be accorded higher priority than other 
  459. types of flows, a mechanism must be implemented in the network to 
  460. recognize flow priorities. There are two aspects to prioritizing flows. First, 
  461. there must be a policy to decide how different users are allowed to set 
  462. priorities for flows they originate. The network must be able to verify that a 
  463. given flow is allowed to claim a priority level signaled for it. Second, the 
  464. routing scheme must ensure that a path with the requested QoS will be found 
  465. for a flow with a probability that increases with the priority of the flow. In 
  466. other words, for a given network load, a high priority flow should be more 
  467. likely to get a certain QoS from the network than a lower priority flow 
  468. requesting the same QoS. Routing procedures for flow prioritization can be 
  469. complex.  Identification and evaluation of different procedures are areas that 
  470. require investigation. 
  471.  
  472. 3.4.2 Resource Control 
  473.  
  474. If there are multiple service classes, it is necessary to engineer a network to 
  475. carry the forecasted traffic demands of each class. To do this, router and link 
  476. resources may be logically partitioned among various service classes. It is 
  477. desirable to have dynamic partitioning whereby unused resources in various 
  478. partitions are dynamically shifted to other partitions on demand [ACFH92]. 
  479. Dynamic sharing, however, must be done in a controlled  fashion in order to 
  480. prevent traffic under some service class from taking up more resources than 
  481. what was engineered for it for prolonged periods of time. The design of such 
  482. a resource sharing scheme, and its incorporation into the QoS-based routing 
  483. scheme are significant issues. 
  484.  
  485.  
  486. draft-ietf-qosr-framework-01.txt                                              [Page 9]
  487.  
  488. 3.5   QoS-Based Routing for Multicast Flows 
  489.       -------------------------------------
  490.  
  491. QoS-based multicast routing is an important problem, especially if the notion 
  492. of higher level admission control is included. The dynamism in the receiver 
  493. set allowed by IP multicast, and receiver heterogeneity add to the problem. 
  494. With straightforward implementation of distributed heuristic algorithms for 
  495. multicast path computation [W88, C91], the difficulty is essentially one of 
  496. scalability. To accommodate QoS, multicast path computation at a router 
  497. must have knowledge of not only the id of subnets where group members are 
  498. present, but also the identity of branches in the existing tree. In other words,
  499. routers must keep flow-specific state information. Also, computing optimal 
  500. shared trees based on the shared reservation style [BZBH96], may require 
  501. new algorithms.  Multicast routing is discussed in some detail in Section 6.
  502.  
  503. 3.6    Routing Overheads 
  504.        -----------------
  505.  
  506. The overheads incurred by a routing scheme depend on the type of the routing 
  507. scheme, as well as the implementation. There are three types of overheads to be 
  508. considered: computation, storage and communication. It is necessary to understand 
  509. the implications of choosing a routing mechanism in terms of these overheads. 
  510.  
  511. For example, considering link state routing, the choice of the update propagation 
  512. mechanism is important since network state is dynamic and changes relatively 
  513. frequently. Specifically, a flooding mechanism would result in many unnecessary 
  514. message transmissions and processing.  Alternative techniques, such as tree-based 
  515. forwarding [R96], have to be considered. A related issue is the quantization of 
  516. state information to prevent frequent updating of dynamic state. While coarse 
  517. quantization reduces updating overheads, it may affect the performance of the 
  518. routing scheme.  The tradeoff has to be carefully evaluated.
  519.  
  520. QoS-based routing incurs certain overheads during flow establishment, for example, 
  521. computing a source route. Whether this overhead is disproportionate compared to 
  522. the length of the sessions is an issue. In general, techniques for the 
  523. minimization of routing-related overheads during flow establishment must be 
  524. investigated. Approaches that are useful include pre-computation of routes, 
  525. caching recently used routes, and TOS routing based on hints in packets 
  526. (e.g., the TOS field).  
  527.  
  528. 3.7    Scaling by Hierarchical Aggregation 
  529.        -----------------------------------
  530.  
  531. QoS-based routing should be scalable, and hierarchical aggregation is a 
  532. common technique for scaling (e.g., [PNNI96]). But this introduces problems with 
  533. regard to the accuracy of the aggregated state information [L95]. Also, the 
  534. aggregation of paths under multiple constraints is difficult. One of the 
  535. difficulties is the risk of accepting a flow based on inaccurate information, 
  536. but not being able to support the QoS requirements of flow because the 
  537. capabilities of the actual paths that are aggregated are not known during 
  538. route computation.  Performance impacts of aggregating path metric 
  539.  
  540. draft-ietf-qosr-framework-01.txt                                              [Page 10]
  541.  
  542. information must therefore be understood. A way to compensate for 
  543. inaccuracies is to use crankback, i.e., dynamic search for alternate paths as a 
  544. flow is being routed. But crankback increases the time to 
  545. set up a flow, and may adversely affect the performance of the routing 
  546. scheme under some circumstances. Thus, crankback must be used 
  547. judiciously, if at all, along with a higher level admission control mechanism. 
  548.  
  549.  
  550. 4. INTRADOMAIN ROUTING REQUIREMENTS
  551.  
  552. At the intradomain level, the objective is to allow as much latitude as 
  553. possible in addressing the QoS-based routing issues. Indeed, there are many 
  554. ideas about how QoS-based routing services can be provisioned within ASs. 
  555. These range from on-demand path computation based on current state 
  556. information, to statically provisioned paths supporting a few service classes. 
  557. Another aspect that might invite differing solutions is performance 
  558. optimization. Based on the technique used for this, intradomain routing could 
  559. be very sophisticated or rather simple. Finally, the service classes supported,
  560. as well as the specific QoS engineered for a service class, could differ from 
  561. AS to AS. For instance, some ASs may not support guaranteed service, while others 
  562. may. Also, some ASs supporting the service may be engineered for a better delay 
  563. bound than others. Thus, it requires considerable thought to determine the high 
  564. level requirements for intradomain routing that both supports the overall view 
  565. of QoS-based routing in the Internet and allows maximum autonomy in developing 
  566. solutions.
  567.  
  568. Our view is that certain minimum requirements must be satisfied by 
  569. intradomain routing in order to be qualified as "QoS-based" routing. These 
  570. are:
  571.  
  572. - The routing scheme must route a flow along a path that can accommodate 
  573.   its QoS requirements, or indicate that the flow cannot be admitted with the 
  574.   QoS currently being requested.
  575.  
  576. - The routing scheme must indicate disruptions to the current route of a flow 
  577.   due to topological changes.
  578.  
  579. - The routing scheme must accommodate best-effort flows without any resource reservation 
  580.   requirements. That is, present best effort applications and protocol stacks need not 
  581.   have to change to run in a domain employing QoS-based routing.
  582.  
  583. - The routing scheme may optionally support QoS-based multicasting with receiver 
  584.   heterogeneity and shared reservation styles.
  585.  
  586. In addition, the following capabilities are also recommended:
  587.  
  588. - Capabilities to optimize resource usage.
  589.  
  590. - Implementation of higher level admission control procedures to limit 
  591.   the overall resource utilization by individual flows.
  592.  
  593.  
  594. draft-ietf-qosr-framework-01.txt                                              [Page 11]
  595.  
  596. Further requirements along these lines may be specified. The requirements 
  597. should capture the consensus view of QoS-based routing, but should not 
  598. preclude particular approaches (e.g., TOS-based routing) from being 
  599. implemented. Thus, the intradomain requirements are expected to be rather 
  600. broad.
  601.  
  602.  
  603. 5. INTERDOMAIN ROUTING 
  604.  
  605. The fundamental requirement on interdomain QoS-based routing is scalability.
  606. This implies that interdomain routing cannot be based on highly dynamic network
  607. state information. Rather, such routing must be aided by sound network engineering
  608. and relatively sparse information exchange between independent routing domains. 
  609. This approach has the advantage that it can be realized by straightforward extensions 
  610. of the present Internet interdomain routing model. A number of issues, however, need 
  611. to be addressed to achieve this, as discussed below.
  612.  
  613. 5.1 Interdomain QoS-Based Routing Model
  614.     -----------------------------------
  615.  
  616. The interdomain QoS-based routing model is depicted below:
  617.  
  618.           AS1                   AS2             AS3
  619.       ___________        _____________      ____________
  620.      |           |      |             |    |            |
  621.      |           B------B             B----B            |
  622.      |           |      |             |    |            |
  623.       -----B-----       B-------------      --B---------
  624.             \         /                      /
  625.              \       /                      /
  626.           ____B_____B____         _________B______
  627.          |               |       |                |
  628.          |               B-------B                |
  629.          |               |       |                |
  630.      |               B-------B              |
  631.           ---------------         ----------------
  632.                AS4                           AS5
  633.  
  634. Here, ASs exchange standardized routing information via border nodes B. 
  635. Under this model, each AS can itself consist of a set of interconnected ASs, 
  636. with standardized routing interaction. Thus, the interdomain routing model 
  637. is hierarchical.  Also, each lowest level AS employs an intradomain QoS-
  638. based routing scheme (proprietary or standardized by intradomain routing 
  639. efforts such as QOSPF). Given this structure, some questions that arise are:
  640.  
  641. - What information is exchanged between ASs?
  642.  
  643. - What routing capabilities does the information exchange lead to? (E.g., source 
  644.   routing, on-demand path computation, etc.)
  645.  
  646. - How is the external routing information represented within an AS?
  647.  
  648.  
  649. draft-ietf-qosr-framework-01.txt                                              [Page 12]
  650.  
  651. - How are interdomain paths computed?
  652.  
  653. - What sort of policy controls may be exerted on interdomain path computation 
  654.   and flow routing?, and
  655.  
  656. - How is interdomain QoS-based multicast routing accomplished?
  657.  
  658. At a high level, the answers to these questions depend on the routing paradigm. 
  659. Specifically, considering link state routing, the information exchanged between 
  660. domains would consist of an abstract representation of the domains in the form of 
  661. logical nodes and links, along with metrics that quantify their properties and resource 
  662. availability.  The hierarchical structure of the ASs may be handled by a hierarchical link 
  663. state representation, with appropriate metric aggregation.
  664.  
  665. Link state routing may not necessarily be advantageous for interdomain routing for 
  666. the following reasons:
  667.  
  668. -  One advantage of intradomain link state routing is that it would allow fairly
  669.    detailed link state information be used to compute paths on demand for 
  670.    flows requiring QoS. The state and metric aggregation used in interdomain 
  671.    routing, on the other hand, erodes this property to a great degree.
  672.  
  673. -  The usefulness of keeping track of the abstract topology and metrics of a 
  674.    remote domain, or the interconnection between remote domains is not obvious. 
  675.    This is especially the case when the remote topology and metric encoding are  
  676.    lossy.
  677.  
  678. -  ASs may not want to advertise any details of their internal topology or 
  679.    resource availability.
  680.  
  681. -  Scalability in interdomain routing can be achieved only if information 
  682.    exchange between domains is relatively infrequent. Thus, it seems practical 
  683.    to limit information flow between domains as much as possible. 
  684.  
  685. Compact information flow allows the implementation QoS-enhanced versions of existing 
  686. interdomain protocols such as BGP-4. We look at the interdomain routing issues in this
  687. context.
  688.  
  689. 5.2  Interdomain Information Flow
  690.      ---------------------------- 
  691.  
  692. The information flow between routing domains must enable certain basic functions:
  693.  
  694. 1.  Determination of reachability to various destinations
  695.  
  696. 2.  Loop-free flow routes
  697.  
  698. 3.  Address aggregation whenever possible
  699.  
  700.  
  701. draft-ietf-qosr-framework-01.txt                                              [Page 13]
  702.  
  703. 4.  Determination of the QoS that will be supported on the path to a destination.
  704.     The QoS information should be relatively static, determined from the engineered 
  705.     topology and capacity of an AS rather than ephemeral fluctuations in traffic 
  706.     load through the AS. Ideally, the QoS supported in a transit AS should be 
  707.     allowed to vary significantly only under exceptional circumstances, such as 
  708.     failures or focused overload. 
  709.  
  710. 5.  Determination, optionally, of multiple paths for a given destination, based on 
  711.     service classes.
  712.  
  713. 6.  Expression of routing policies, including monetary cost, as a function of flow 
  714.     parameters, usage and administrative factors. 
  715.  
  716. Items 1-3 are already part of existing interdomain routing. Item 5 is also a straightfoward
  717. extension of the current model. The main problem areas are therefore items 4 and 6. 
  718.  
  719. The QoS of an end-to-end path is obtained by composing the QoS available in each transit AS.
  720. Thus, border routers must first determine what the locally available QoS is in order to
  721. advertise routes to both internal and external destinations. The determination of local
  722. "AS metrics" (corresponding to link metrics in the intradomain case) should not be
  723. subject to too much dynamism. Thus, the issue is how to define such metrics and what
  724. triggers an occasional change that results in re-advertisements of routes. 
  725.  
  726. The approach suggested in this draft is not to compute paths based on residual or 
  727. instantaneous values of AS metics (which can be dynamic), but utilize only the QoS 
  728. capabilities engineered for aggregate transit flows. Such engineering may be based on 
  729. the knowledge of traffic to be expected from each neighboring ASs and the corresponding 
  730. QOS needs.  This information may be obtained based on contracts agreed upon prior to the 
  731. provisioning of services. The AS metric then corresponds to the QoS capabilities of the 
  732. "virtual path" engineered through the AS (for transit traffic) and a different metric 
  733. may be used for different neighbors. This is illustrated in the following figure.
  734.  
  735.  
  736.           AS1                   AS2             AS3
  737.       ___________        _____________      ____________
  738.      |           |      |             |    |            |
  739.      |           B------B1           B2----B            |
  740.      |           |      |             |    |            |
  741.       -----B-----       B3------------      --B---------
  742.             \         /                  
  743.              \       /                    
  744.           ____B_____B____        
  745.          |               |       
  746.          |               |
  747.          |               |       
  748.      |               |
  749.           ---------------
  750.                AS4                         
  751.  
  752.  
  753.  
  754. draft-ietf-qosr-framework-01.txt                                              [Page 14]
  755.  
  756. Here, B1 may utlise an AS metric specific for AS1 when computing path metrics to be  
  757. advertised to AS1. This metric is based on the resources engineered in AS2 for transit
  758. traffic from AS1. Similarly, B3 may utilize a different metric when computing path metrics 
  759. to be advertised to AS4. Now, it is assumed that as long as traffic flow into AS2 from 
  760. AS1 or AS4 does not exceed the engineered values, these path metrics would hold. 
  761. Excess traffic due to transient fluctuations, however, may be handled as best effort.
  762.  
  763. Thus, this model is different from the intradomain model, where end nodes pick
  764. a path dynamically based on the QoS needs of the flow to be routed. Here, paths
  765. within ASs are engineered based on presumed, measured or declared traffic and QoS 
  766. requirements. Under this model, an AS can contract for routes via 
  767. multiple transit ASs with different QoS requirements. For instance, AS4 above can
  768. use both AS1 and AS2 as transits for same or different destinations. Also, a QoS 
  769. contract between one AS and another may generate another contract between the second 
  770. and a third AS and so forth. 
  771.  
  772. An issue is what triggers the recomputation of path metrics within an AS. Failures
  773. or other events that prevent engineered resource allocation should certainly trigger
  774. recomputation. Recomputation should not be triggered in response to arrival of flows
  775. within the engineered limit. 
  776.  
  777. 5.3   Path Computation
  778.       ----------------
  779.  
  780. Path computation for an external destination at a border node is based on 
  781. reachability, path metrics and local policies of selection. If there are multiple
  782. selection criteria (e.g., delay, bandwidth, cost, etc.), mutiple alternaives may have to be 
  783. maintained as well as propagated by border nodes. Selection of a path from among many 
  784. alternatives would depend on the QoS requests of flows, as well as policies. Path computation 
  785. may also utilze any heuristics for optimizing resource usage. 
  786.  
  787. 5.4  Flow Aggregation
  788.      ----------------
  789.  
  790. An important issue in interdomain routing is the amount of flow state to be processed
  791. by transit ASs. Reducing the flow state by aggregation techniques must therefore be
  792. seriously considered. Flow aggregation means that transit traffic through an 
  793. AS is classified into a few aggregated streams rather than being routed at the individual 
  794. flow level. For example, an entry border router may classify various transit flows entering an 
  795. AS into a few coarse categories, based on the egress node and QoS requirements of the flows.
  796. Then, the aggregated stream for a given traffic class may be routed as a single 
  797. flow inside the AS to the exit border router. This router may then present individual
  798. flows to different neighboring ASs and the process repeats at each entry border
  799. router. Under this scenario, it is essential that entry border routers keep track of
  800. the resource requirements for each transit flow and apply admission control to determine
  801. whether the aggregate requirement from any neighbor exceeds the engineered limit. If so,
  802. some policy must be invoked to deal with the excess traffic. Otherwise, it may be assumed 
  803. that aggregated flows are routed over paths that have adequate resources to guarantee QoS for 
  804. the member flows. Finally, it is possible that entry border routers at a transit AS
  805. may prefer not to aggregate flows if finer grain routing within the AS may be more
  806. efficient (e.g., to aid load balancing within the AS).
  807.  
  808.  
  809. draft-ietf-qosr-framework-01.txt                                              [Page 15]
  810.  
  811. 5.5   Path Cost Determination
  812.       -----------------------
  813.  
  814. It is hoped that the integrated services Internet architecture would allow 
  815. providers to charge for IP flows based on their QoS requirements. A QoS-
  816. based routing architecture can aid in distributing information on expected 
  817. costs of routing flows to various destinations via different domains. Clearly, 
  818. from a provider's point of view, there is a cost incurred in guaranteeing QoS 
  819. to flows.  This cost could be a function of several parameters, some related to 
  820. flow parameters, others based on policy. From a user's point of view, the 
  821. consequence of requesting a particular QoS for a flow is the cost incurred, 
  822. and hence the selection of providers may be based on cost. A routing scheme 
  823. can aid a provider in distributing the costs in routing to various destinations,
  824. as a function of several parameters, to other providers or to end users.  In 
  825. the interdomain routing model described earlier, the costs to a destination will 
  826. change as routing updates are passed through a transit domain. One of the 
  827. goals of the routing scheme should be to maintain a uniform semantics for 
  828. cost values (or functions) as they are handled by intermediate domains. As an 
  829. example, consider the cost function generated by border node B1 in domain 
  830. A and passed to node B2 in domain B below. The routing update may be 
  831. injected into domain B by B2 and finally passed to B4 in domain C by router 
  832. B3. Domain B may interpret the cost value received from domain A in any 
  833. way it wants, for instance, adding a locally significant component to it.  But 
  834. when this cost value is passed to domain C, the meaning of it must be what 
  835. domain A intended, plus the incremental cost of transiting domain B, but not 
  836. what domain B uses internally.
  837.  
  838.     Domain A                    Domain B           Domain C
  839.      ____________          ___________      ____________
  840.     |            |        |           |    |            |
  841.     |            B1------B2          B3---B4            |
  842.     |            |        |           |    |            |
  843.      ------------          -----------      ------------
  844.  
  845. A problem with charging for a flow is the determination of the cost when the QoS 
  846. promised for the flow was not actually delivered. Clearly, when a flow is 
  847. routed via multiple domains, it must be determined whether each domain delivers 
  848. the QoS it declares possible for traffic through it.
  849.  
  850.  
  851. 6. QOS-BASED MULTICAST ROUTING
  852.  
  853. The goals of QoS-based multicast routing are as follows:
  854.  
  855. - Scalability to large groups with dynamic membership
  856.  
  857. - Robustness in the presence of topological changes
  858.  
  859. - Support for receiver-initiated, heterogeneous reservations
  860.  
  861. - Support for shared reservation styles, and
  862.  
  863.  
  864. draft-ietf-qosr-framework-01.txt                                              [Page 16]
  865.  
  866. - Support for "global" admission control, i.e., administrative control of 
  867.   resource consumption by the multicast flow.
  868.  
  869. The RSVP multicast flow model is as follows. The sender of a multicast 
  870. flow advertises the traffic characteristics periodically to the receivers. On 
  871. receipt of an advertisement, a receiver may generate a message to reserve 
  872. resources along the flow path from the sender. Receiver reservations may be 
  873. heterogeneous. Other multicast models may be considered. 
  874.  
  875. The multicast routing scheme attempts to determine a path from the sender to 
  876. each receiver that can accommodate the requested reservation. The routing 
  877. scheme may attempt to maximize network resource utilization by minimizing 
  878. the total bandwidth allocated to the multicast flow, or by optimizing some 
  879. other measure.
  880.  
  881. 6.1   Scalability, Robustness and Heterogeneity
  882.       -----------------------------------------
  883.  
  884. When addressing scalability, two aspects must be considered:
  885.  
  886.   1.  The overheads associated with receiver discovery. This overhead is incurred 
  887.       when determining the multicast tree for forwarding best-effort sender 
  888.       traffic characterization to receivers.
  889.  
  890.   2.  The overheads associated with QoS-based multicast path computation.This 
  891.       overhead is incurred when flow-specific state information has to be 
  892.       collected by a router to determine QoS-accommodating paths to a receiver.
  893.  
  894. Depending on multicast routing scheme, one or both of these aspects become 
  895. important. For instance, under the present RSVP model, reservations are 
  896. established on the same path over which sender traffic characterizations are 
  897. sent, and hence there is no path computation overhead. On the other hand, 
  898. under the proposed QOSPF model [ZSSC96] of multicast source routing, 
  899. receiver discovery overheads are incurred by MOSPF [M94] receiver location 
  900. broadcasts, and additional path computation overheads are incurred due to 
  901. the need to keep track of existing flow paths. Scaling of QoS-based multicast 
  902. depends on both these scaling issues. However, scalable best-effort 
  903. multicasting is really not in the domain of QoS-based routing work (solutions 
  904. for this are being devised by the IDMR WG [BCF94, DEFV94]). QoS-based 
  905. multicast routing may build on these solutions to achieve overall scalability. 
  906.  
  907. There are several options for QoS-based multicast routing. Multicast source 
  908. routing is one under which multicast trees are computed by the first-hop 
  909. router from the source, based on sender traffic advertisements. The advantage 
  910. of this is that it blends nicely with the present RSVP signaling model. Also, 
  911. this scheme works well when receiver reservations are homogeneous and the 
  912. same as the maximum reservation derived from sender advertisement.  The 
  913. disadvantages of this scheme are the extra effort needed to accommodate 
  914. heterogeneous reservations and the difficulties in optimizing resource 
  915. allocation based on shared reservations.
  916.  
  917.  
  918. draft-ietf-qosr-framework-01.txt                                              [Page 17]
  919.  
  920. In these regards, a receiver-oriented multicast routing model seems to have 
  921. some advantage over multicast source routing. Under this model:
  922.  
  923.   1. Sender traffic advertisements are multicast over a best-effort tree which 
  924.      can be different from the QoS-accommodating tree for sender data.
  925.  
  926.   2. Receiver discovery overheads are minimized by utilizing a scalable IDMR 
  927.      scheme (e.g., PIM, CBT), to multicast sender traffic characterization.
  928.  
  929.   3. Each receiver-side router independently computes a QoS-accommodating path 
  930.      from the source, based on the receiver reservation. This path can be computed 
  931.      based on unicast routing information only, or with additional multicast 
  932.      flow-specific state information. In any case, multicast path computation is
  933.      broken up into multiple, concurrent unicast path computations.
  934.  
  935.   4. Routers processing unicast reserve messages from receivers aggregate 
  936.      resource reservations from multiple receivers.
  937.  
  938. Flow-specific state information may be limited in Step 3 to achieve scalability.
  939. In general, limiting flow-specific information in making multicast 
  940. routing decisions is important in any routing model. The advantages of this 
  941. model are the ease with which heterogeneous reservations can be 
  942. accommodated, and the ability to handle shared reservations. The 
  943. disadvantages are the incompatibility with the present RSVP signaling model,
  944. and the need to rely on reverse paths when link state routing is not used. 
  945. Both multicast source routing and the receiver-oriented routing model 
  946. described above utilize per-source trees to route multicast flows. Another 
  947. possibility is the utilization of shared, per-group trees for routing flows. 
  948. The computation and usage of such trees require further work. 
  949.  
  950. Finally, scalability at the interdomain level may be achieved if QoS-based 
  951. multicast paths are computed independently in each domain. This principle is 
  952. illustrated by the QOSPF multicast source routing scheme which allows 
  953. independent path computation in different OSPF areas. It is easy to 
  954. incorporate this idea in the receiver-oriented model also. An evaluation of 
  955. multicast routing strategies must take into account the relative advantages 
  956. and disadvantages of various approaches, in terms of scalability features and 
  957. functionality supported.
  958.  
  959. 6.2    Multicast Admission Control
  960.        ---------------------------
  961.  
  962. Higher level admission control, as defined for unicast, prevents excessive 
  963. resource consumption by flows when traffic load is high . Such an admission 
  964. control strategy must be applied to multicast flows when the flow path 
  965. computation is receiver-oriented or sender-oriented. In essence, a router 
  966. computing a path to/ for a receiver must determine whether the incremental 
  967. resource allocation for the receiver is excessive under some administratively 
  968. determined admission control policy. Other admission control criteria, based 
  969. on the total resource consumption of a tree may be defined. 
  970.  
  971.  
  972. draft-ietf-qosr-framework-01.txt                                              [Page 18]
  973.  
  974. 7.    QOS-BASED ROUTING AND RESOURCE RESERVATION PROTOCOLS 
  975.  
  976. There must clearly be a well-defined interface between routing and resource reservation
  977. protocols. The nature of this interface, and the interaction between routing and resource
  978. reservation has to be determined carefully to avoid incompatibilities. The importance of
  979. this can be readily illustrated in the case of RSVP.
  980.  
  981. RSVP has been designed to operate independent of the underlying routing scheme. 
  982. Under this model, RSVP PATH messages establish the reverse path for RESV 
  983. messages.  In essence, this model is not compatible with QoS-based routing 
  984. schemes that compute paths after receiver reservations are received. While this
  985. incompatibility can be resolved in a simple manner for unicast flows, multicast
  986. with heterogeneous receiver requirements is a more difficult case [GKS97].  For this, 
  987. reconciliation between RSVP and QoS-based routing models is necessary. Such a 
  988. reconciliation, however, may require some changes to the RSVP model depending 
  989. on the QoS-based routing model. On the other hand, QoS-based routing schemes 
  990. may be designed with RSVP compatibility as a necessary goal. How this affects 
  991. scalability and other performance measures must be considered. 
  992.  
  993.  
  994. 8. RELATED WORK 
  995.  
  996. "Adaptive" routing, based on network state, has a long history, 
  997. especially in circuit-switched networks. Such routing has also been 
  998. implemented in early datagram and virtual circuit packet networks. More 
  999. recently, this type of routing has been the subject of study in the context of 
  1000. ATM networks, where the traffic characteristics and topology are 
  1001. substantially different from those of circuit-switched networks [MMR96]. It 
  1002. is instructive to review the adaptive routing methodologies, both to 
  1003. understand the problems encountered and possible solutions. 
  1004.  
  1005. Fundamentally, there are two aspects to adaptive, network state-dependent 
  1006. routing. 
  1007.  
  1008.   1.  Measuring and gathering network state information, and
  1009.   2.  Computing routes based on the available information.
  1010.  
  1011. Depending on how these two steps are implemented, a variety of routing 
  1012. techniques are possible. These differ in the following respects:
  1013.  
  1014. -  what state information is used
  1015. -  whether local or global state is used
  1016. -  what triggers the propagation of state information
  1017. -  whether routes are computed in a distributed or centralized manner
  1018. -  whether routes are computed on-demand, pre-computed, or in a hybrid manner
  1019. -  what optimization criteria, if any, are used in computing routes
  1020. -  whether source routing or hop by hop routing is used, and
  1021. -  how alternate route choices are explored
  1022.  
  1023. It should be noted that most of the adaptive routing work has focused on 
  1024. unicast routing. Multicast routing is one of the areas that would be prominent 
  1025. with Internet QoS-based routing. We treat this separately, and the following 
  1026. review considers only unicast routing. This review is not exhaustive, but 
  1027. gives a brief overview of some of the approaches.
  1028.  
  1029.  
  1030. draft-ietf-qosr-framework-01.txt                                              [Page 19]
  1031.  
  1032. 8.1 Optimization Criteria
  1033.     ---------------------
  1034.  
  1035. The most common optimization criteria used in adaptive routing is 
  1036. throughput maximization or delay minimization. A general formulation of 
  1037. the optimization problem is the one in which the network revenue is 
  1038. maximized, given that there is a cost associated with routing a flow over a 
  1039. given path [MMR96, K88]. In general, global optimization solutions are 
  1040. difficult to implement, and they rely on a number of assumptions on the 
  1041. characteristics of the traffic being routed [MMR96]. Thus, the practical 
  1042. approach has been to treat the routing of each flow (VC, circuit or packet 
  1043. stream to a given destination) independently of the routing of other flows. 
  1044. Many such routing schemes have been implemented.
  1045.  
  1046. 8.2  Circuit Switched Networks
  1047.      -------------------------
  1048.  
  1049. Many adaptive routing concepts have been proposed for circuit-switched 
  1050. networks. An example of a simple adaptive routing scheme is sequential 
  1051. alternate routing [T88]. This is a hop-by-hop destination-based routing 
  1052. scheme where only local state information is utilized.  Under this scheme, a 
  1053. routing table is computed for each node, which lists multiple output link 
  1054. choices for each destination. When a call set-up request is received by a node, 
  1055. it tries each output link choice in sequence, until it finds one that can 
  1056. accommodate the call. Resources are reserved on this link, and the call set-up 
  1057. is forwarded to the next node. The set-up either reaches the destination, or is 
  1058. blocked at some node. In the latter case, the set-up can be cranked back to the 
  1059. previous node or a failure declared. Crankback allows the previous node to 
  1060. try an alternate path. The routing table under this scheme can be computed in 
  1061. a centralized or distributed manner, based only on the topology of the 
  1062. network. For instance, a k-shortest-path algorithm can be used to determine k 
  1063. alternate paths from a node with distinct initial links [T88]. Some 
  1064. mechanism must be implemented during path computation or call set-up to 
  1065. prevent looping.
  1066.  
  1067. Performance studies of this scheme illustrate some of the pitfalls of alternate 
  1068. routing in general, and crankback in particular [A84, M86, YS87]. 
  1069. Specifically, alternate routing improves the throughput when traffic load is 
  1070. relatively light, but adversely affects the performance when traffic load is 
  1071. heavy. Crankback could further degrade the performance under these 
  1072. conditions. In general, uncontrolled alternate routing (with or without 
  1073. crankback) can be harmful in a heavily utilized network, since circuits tend 
  1074. to be routed along longer paths thereby utilizing more capacity. This is an 
  1075. obvious, but important result that applies to QoS-based Internet routing also. 
  1076.  
  1077. The problem with alternate routing is that both direct routed (i.e., over 
  1078. shortest paths) and alternate routed calls compete for the same resource. At 
  1079. higher loads, allocating these resources to alternate routed calls result in the
  1080. displacement of direct routed calls and hence the alternate routing of these 
  1081. calls. Therefore, many approaches have been proposed to limit the flow of 
  1082. alternate routed calls under high traffic loads. These schemes are designed 
  1083.  
  1084. draft-ietf-qosr-framework-01.txt                                              [Page 20]
  1085.  
  1086. for the fully-connected logical topology of long distance telephone networks 
  1087. (i.e., there is a logical link between every pair of nodes). In this topology, 
  1088. direct routed calls always traverse a 1-hop path to the destination and 
  1089. alternate routed calls traverse at most a 2-hop path.
  1090.  
  1091. "Trunk reservation" is a scheme whereby on each link a certain bandwidth is 
  1092. reserved for direct routed calls [MS91]. Alternate routed calls are allowed on 
  1093. a trunk as long as the remaining trunk bandwidth is greater than the reserved 
  1094. capacity. Thus, alternate routed calls cannot totally displace direct routed 
  1095. calls on a trunk. This strategy has been shown to be very effective in 
  1096. preventing the adverse effects of alternate routing. 
  1097.  
  1098. "Dynamic alternate routing" (DAR) is a strategy whereby alternate routing is 
  1099. controlled by limiting the number of choices, in addition to trunk reservation 
  1100. [MS91]. Under DAR, the source first attempts to use the direct link to the 
  1101. destination. When blocked, the source attempts to alternate route the call via 
  1102. a pre-selected neighbor. If the call is still blocked, a different neighbor is 
  1103. selected for alternate routing to this destination in the future. The present call 
  1104. is dropped. DAR thus requires only local state information. Also, it "learns" 
  1105. of good alternate paths by random sampling and sticks to them as long as possible.
  1106.  
  1107. More recent circuit-switched routing schemes utilize global state to select 
  1108. routes for calls. An example is AT&T's Real-Time Network Routing (RTNR) 
  1109. scheme [ACFH92]. Unlike schemes like DAR, RTNR handles multiple 
  1110. classes of service, including voice and data at fixed rates. RTNR utilizes a 
  1111. sophisticated per-class trunk reservation mechanism with dynamic bandwidth 
  1112. sharing between classes. Also, when alternate routing a call, RTNR utilizes 
  1113. the loading on all trunks in the network to select a path. Because of the fully-
  1114. connected topology, disseminating status information is simple under RTNR; 
  1115. each node simply exchanges status information directly with all others.
  1116.  
  1117. From the point of view of designing QoS-based Internet routing schemes, 
  1118. there is much to be learned from circuit-switched routing. For example, 
  1119. alternate routing and its control, and dynamic resource sharing among 
  1120. different classes of traffic. It is, however, not simple to apply some of the 
  1121. results to a general topology network with heterogeneous multirate traffic. 
  1122. Work in the area of ATM network routing described next illustrates this.
  1123.  
  1124. 8.3 ATM Networks
  1125.     ------------
  1126.  
  1127. The VC routing problem in ATM networks presents issues similar to that 
  1128. encountered in circuit-switched networks. Not surprisingly, some extensions 
  1129. of circuit-switched routing have been proposed. The goal of these routing 
  1130. schemes is to achieve higher throughput as compared to traditional shortest-
  1131. path routing. The flows considered usually have a single QoS requirement, 
  1132. i.e., bandwidth. 
  1133.  
  1134. The first idea is to extend alternate routing with trunk reservation to general 
  1135. topologies [SD95].  Under this scheme, a distance vector routing protocol is 
  1136. used to build routing tables at each node with multiple choices of increasing 
  1137.  
  1138. draft-ietf-qosr-framework-01.txt                                              [Page 21]
  1139.  
  1140. hop count to each destination. A VC set-up is first routed along the primary 
  1141. ("direct") path. If sufficient resources are not available along this path, 
  1142. alternate paths are tried in the order of increasing hop count. A flag in the 
  1143. VC set-up message indicates primary or alternate routing, and bandwidth on 
  1144. links along an alternate path is allocated subject to trunk reservation. The 
  1145. trunk reservation values are determined based on some assumptions on traffic 
  1146. characteristics. Because the scheme works only for a single data rate, the 
  1147. practical utility of it is limited. 
  1148.  
  1149. The next idea is to import the notion of controlled alternate routing into 
  1150. traditional link state QoS-based routing [RSR95, GKR96]. To do this, first 
  1151. each VC is associated with a maximum permissible routing cost. This cost 
  1152. can be set based on expected revenues in carrying the VC or simply based on 
  1153. the length of the shortest path to the destination. Each link is associated with
  1154. a metric that increases exponentially with its utilization. A switch computing 
  1155. a path for a VC simply determines a least-cost feasible path based on the link 
  1156. metric and the VC's QoS requirement. The VC is admitted if the cost of the 
  1157. path is less than or equal to the maximum permissible routing cost. This 
  1158. routing scheme thus limits the extent of "detour" a VC experiences, thus 
  1159. preventing excessive resource consumption. This is a practical scheme and 
  1160. the basic idea can be extended to hierarchical routing. But the performance of 
  1161. this scheme has not been analyzed thoroughly. A similar notion of admission 
  1162. control based on the connection route was also incorporated in a routing 
  1163. scheme presented in [ACG92].
  1164.  
  1165. Considering the ATM Forum PNNI protocol [PNNI96], a partial list of its stated 
  1166. characteristics are as follows:
  1167.  
  1168.          o   Scales to very large networks
  1169.          o   Supports hierarchical routing
  1170.          o   Supports QoS
  1171.          o   Uses source routed connection setup
  1172.          o   Supports multiple metrics and attributes
  1173.          o   Provides dynamic routing
  1174.  
  1175. The PNNI specification is sub-divided into two protocols: a signaling and a 
  1176. routing protocol. The PNNI signaling protocol is used to establish point-to-
  1177. point and point to multipoint connections and supports source routing, 
  1178. crankback and alternate routing. PNNI source routing allows loop free paths.  
  1179. Also, it allows each implementation to use its own path computation 
  1180. algorithm. Furthermore, source routing is expected to support incremental 
  1181. deployment of future enhancements such as policy routing.
  1182.  
  1183. The PNNI routing protocol is a dynamic, hierarchical link state protocol that 
  1184. propagates topology information by flooding it through the network.  The 
  1185. topology information is the set of resources (e.g., nodes, links and addresses) 
  1186. which define the network. Resources are qualified by defined sets of metrics 
  1187. and attributes (delay, available bandwidth, jitter, etc.) which are grouped by 
  1188. supported traffic class.  Since some of the metrics used will change frequently 
  1189. e.g., available bandwidth, threshold algorithms are used to determine if the 
  1190. change in a metric or attribute is significant enough to require propagation of 
  1191. updated information. Other features include, auto configuration of the 
  1192. routing hierarchy, connection admission control (as part of path calculation) 
  1193. and aggregation and summarization of topology and reachability information.
  1194.  
  1195.  
  1196. draft-ietf-qosr-framework-01.txt                                              [Page 22]
  1197.  
  1198. Despite its functionality, the PNNI routing protocol does not address the 
  1199. issues of multicast routing, policy routing and control of alternate routing. A 
  1200. problem in general with link state QoS-based routing is that of efficient 
  1201. broadcasting of state information. While flooding is a reasonable choice with 
  1202. static link metrics it may impact the performance adversely with dynamic metrics.
  1203.  
  1204. Finally, Integrated PNNI [I-PNNI] has been designed from the start to take
  1205. advantage of the QoS Routing capabilities that are available in PNNI and integrate 
  1206. them with routing for layer 3.  This would provide an integrated layer 2
  1207. and layer 3 routing protocol for networks that include PNNI in the ATM
  1208. core.  The I-PNNI specification has been under development in the ATM
  1209. Forum and, at this time, has not yet incorporated QoS routing mechanisms
  1210. for layer 3. 
  1211.  
  1212. 8.4   Packet Networks
  1213.       ---------------
  1214.  
  1215. Early attempts at adaptive routing in packet networks had the objective of 
  1216. delay minimization by dynamically adapting to network congestion.  
  1217. Alternate routing based on k-shortest path tables, with route selection based 
  1218. on some local measure (e.g., shortest output queue) has been described [R76, 
  1219. YS81]. The original ARPAnet routing scheme was a distance vector protocol 
  1220. with delay-based cost metric [MW77]. Such a scheme was shown to be prone 
  1221. to route oscillations [B82]. For this and other reasons, a link state delay-
  1222. based routing scheme was later developed for the ARPAnet [MRR80]. This 
  1223. scheme demonstrated a number of techniques such as triggered updates, 
  1224. flooding, etc., which are being used in OSPF and PNNI routing today. 
  1225. Although none of these schemes can be called QoS-based routing schemes, 
  1226. they had features that are relevant to QoS-based routing.
  1227.  
  1228. IBM's System Network Architecture (SNA) introduced the concept of Class 
  1229. of Service (COS)-based routing [A79, GM79].  There were several classes of 
  1230. service:  interactive, batch, and network control.  In addition, users could 
  1231. define other classes. When starting a data session an application or device 
  1232. would request a COS.  Routing would then map the COS into a statically 
  1233. configured route which marked a path across the physical network.  Since 
  1234. SNA is connection oriented, a session was set up along this path and the 
  1235. application's or device's data would traverse this path for the life of the 
  1236. session. Initially, the service delivered to a session was based on the network 
  1237. engineering and current state of network congestion. Later, transmission 
  1238. priority was added to subarea SNA.  Transmission priority allowed more 
  1239. important traffic (e.g. interactive) to proceed before less time-critical traffic 
  1240. (e.g. batch) and improved link and network utilization. Transmission priority 
  1241. of a session was based on its COS.
  1242.  
  1243. Subarea SNA later evolved to support multiple or alternate paths between 
  1244. nodes.  But, although assisted by network design tools, the network 
  1245. administrator still had to statically configure routes. IBM later introduced 
  1246. SNA's Advanced Peer to Peer Networking (APPN) [B85]. APPN added new 
  1247. features to SNA including dynamic routing based on a link state database.  
  1248. An applications would use COS to indicate it traffic requirements and APPN 
  1249.  
  1250. draft-ietf-qosr-framework-01.txt                                              [Page 23]
  1251.  
  1252. would calculate a path capable of meeting these requirements.  Each COS 
  1253. was mapped to a table of acceptable metrics and parameters that qualified the 
  1254. nodes and links contained in the APPN topology Database.  Metrics and 
  1255. parameters used as part of the APPN route calculation include, but are not 
  1256. limited to:  delay, cost per minute, node congestion and security.  The 
  1257. dynamic nature of APPN allowed it to route around failures and reduce 
  1258. network configuration.
  1259.  
  1260. The service delivered by APPN was still based on the network engineering, 
  1261. transmission priority and network congestion.  Then in 1995 IBM introduced 
  1262. an extension to APPN, High Performance Routing (HPR)[IBM97]. HPR uses 
  1263. a highly responsive congestion avoidance algorithm called adaptive rate 
  1264. based (ARB) congestion control.  Using predictive feedback methods, the 
  1265. ARB algorithm prevents congestion and improves network utilization.  Most 
  1266. recently, an extension to the COS table has been defined so that HPR routing 
  1267. could recognize and take advantage of ATM QoS capabilities.
  1268.  
  1269. Considering IP routing, both IDRP [R92] and OSPF support  type of service (TOS)-
  1270. based routing. While the IP header has a TOS field, there is no standardized way of 
  1271. utilizing it for TOS specification and routing. It seems possible to make use of the 
  1272. IP TOS feature, along with TOS-based routing and proper network engineering, to 
  1273. do QoS-based routing. Among the newer schemes, Source Demand Routing (SDR) 
  1274. [ELRV96] allows  on-demand path computation by routers and the implementation 
  1275. of strict and loose source routing. The Nimrod architecture [CCM96] has a number 
  1276. of concepts built in to handle scalability and specialized path computation. 
  1277.  
  1278.  
  1279. 9. SUMMARY AND CONCLUSIONS
  1280.  
  1281. In this draft, a framework for QoS-based Internet routing was defined. This 
  1282. framework emphasizes the traditional separation between intra and 
  1283. interdomain routing. This approach is especially meaningful in the case of 
  1284. QoS-based routing, since there are many views on how QoS-based routing 
  1285. should be accomplished and many different needs. The objective of this draft 
  1286. was to encourage the development of different solution approaches for 
  1287. intradomain routing, subject to some broad requirements, while consensus on 
  1288. interdomain routing is achieved. To this end, the QoS-based routing issues
  1289. were described, and some broad intradomain routing requirements and an interdomain 
  1290. routing model were defined. In addition, QoS-based multicast routing was discussed 
  1291. and a detailed review of related work was presented. 
  1292.  
  1293.  
  1294. REFERENCES 
  1295.  
  1296. [A79]    V. Ahuja, "Routing and Flow Control in SNA" IBM Systems Journal, 18 
  1297.          No. 2, pp.  298-314, 1979.
  1298.  
  1299. [A84]    J. M. Akinpelu, "The Overload Performance of Engineered Networks with 
  1300.          Non-Hierarchical Routing," AT&T Technical Journal, Vol. 63, pp. 1261-
  1301.          1281, 1984. 
  1302.  
  1303.  
  1304. draft-ietf-qosr-framework-01.txt                                              [Page 24]
  1305.  
  1306. [ACFH92] G. R. Ash, J. S. Chen, A. E. Frey and B. D. Huang, "RealTime Network 
  1307.      Routing in a Dynamic Class-of-Service Network," Proceedings of ITC 13,
  1308.          1992.
  1309.  
  1310. [ACG92]  H. Ahmadi, J. Chen, and R. Guerin, "Dynamic Routing and Call Control in
  1311.          High-Speed Integrated Networks," Proceedings of ITC-13, pp. 397-403, 
  1312.          1992. 
  1313.  
  1314. [B82]    D. P. Bertsekas, "Dynamic Behavior of Shortest Path Routing Algorithms 
  1315.          for Communication Networks," IEEE Trans. Auto.  Control, pp. 60-74, 1982.
  1316.  
  1317. [B85]    A. E. Baratz, "SNA Networks of Small Systems", IEEE Journal on Selected
  1318.      Areas in Communications, May 1985.
  1319.  
  1320. [BCF94]  A. Ballardie, J. Crowcroft and P. Francis, "Core-Based Trees: A 
  1321.          Scalable Multicast Routing Protocol," Proceedings of SIGCOMM `94.
  1322.  
  1323. [BCS94]  R. Braden, D. Clark, and S. Shenker, "Integrated Services in the 
  1324.          Internet Architecture: An Overview," RFC 1633, July, 1994. 
  1325.  
  1326. [BZ92]   S. Bahk and M. El Zarki, "Dynamic Multi-Path Routing and How it 
  1327.          Compares with Other Dynamic Routing Algorithms for High Speed Wide 
  1328.          Area Networks," Proceedings of SIGCOMM `92, pp. 53-64, 1992. 
  1329.  
  1330. [BZBH96] R. Braden, L. Zhang, S. Berson, S. Herzog, S. Jamin. Resource
  1331.          ReSerVation Protocol (RSVP) -- Version 1 Functional Specification.
  1332.          Internet Draft, draft-ietf-rsvp-spec-16. June, 1997. 
  1333.  
  1334. [C91]    C-H. Chow, "On Multicast Path Finding Algorithms," Proceedings of 
  1335.          the IEEE INFOCOM `91, pp. 1274-1283, 1991. 
  1336.  
  1337. [CCM96]  I. Castineyra, J. N. Chiappa, and M. Steenstrup, "The Nimrod Routing 
  1338.          Architecture," Internet Draft, draft-ietfnimrod-routing-arch-01.txt, 
  1339.          Febrauary, 1996.
  1340.  
  1341. [DEFV94] S. E. Deering, D. Estrin, D. Farinnacci, V. Jacobson, C-G. Liu, and 
  1342.      L. Wei, "An Architecture for Wide-Area Multicast Routing," Technical 
  1343.          Report, 94-565, ISI, University of Southern California, 1994.
  1344.  
  1345. [ELRV96] D. Estrin, T. Li, Y. Rekhter, K. Varadhan, and D.  Zappala, "Source 
  1346.          Demand Routing: Packet Format and Forwarding Specification (Version 1)," 
  1347.      RFC 1940, May, 1996. 
  1348.  
  1349. [GKR96]  R. Gawlick, C. R. Kalmanek, and K. G. Ramakrishnan, "On-Line Routing 
  1350.          of Permanent Virtual Circuits," Computer Communications, March, 1996.
  1351.  
  1352. [GKS97]  R. Guerin, S. Kamat, and S. Herzog, "QoS Path Management with RSVP,"
  1353.      Internet Draft, draft-guerin-qospath-mgmt-rsvp-00.txt, April, 1997.
  1354.  
  1355. [GM79]   J. P. Gray, T. B. McNeil, "SNA Multi-System Networking," IBM Systems 
  1356.          Journal, 18 No. 2, pp.  263-297, 1979.
  1357.  
  1358.  
  1359. draft-ietf-qosr-framework-01.txt                                              [Page 25]
  1360.  
  1361. [SPG97]  S. Shenker, C. Partridge, R. Guerin. Specification of Guaranteed Quality 
  1362.      of Service. Internet Draft draft-ietf-intserv-guaranteed-svc-08.txt, 
  1363.      February 1997. 
  1364.  
  1365. [IBM97]  IBM Corp, SNA APPN - High Performance Routing Architecture Reference, 
  1366.          Version 2.0, SV40-1018, February 1997.
  1367.  
  1368. [IPNNI]  ATM Forum Technical Committee. Integrated PNNI (I-PNNI) v1.0 Specification. 
  1369.          af-96-0987r1, September 1996. 
  1370.  
  1371. [JMW83]  J. M. Jaffe, F. H. Moss, R. A. Weingarten, "SNA Routing: Past, Present,
  1372.      and Possible Future," IBM Systems Journal, pp.  417-435, 1983.
  1373.  
  1374. [K88]    F.P. Kelly, "Routing in Circuit-Switched Networks: Optimization, Shadow
  1375.          Prices and Decentralization," Adv. Applied Prob., pp. 112-144, March, 1988.
  1376.  
  1377. [L95]    W. C. Lee, "Topology Aggregation for Hierarchical Routing in ATM Networks," 
  1378.          ACM SIGCOMM Computer Communication Review, 1995.
  1379.  
  1380. [M86]    L. G. Mason, "On the Stability of Circuit-Switched Networks with 
  1381.          Non-hierarchical Routing," Proc. 25th Conf. On Decision and Control, pp. 
  1382.          1345-1347, 1986.
  1383.  
  1384. [M94]    J. Moy, "MOSPF: Analysis and Experience," RFC 1585,  March, 1994.
  1385.  
  1386. [MMR96]  D. Mitra, J. Morrison, and K. G. Ramakrishnan, "ATM Network Design and 
  1387.      Optimization: A Multirate Loss Network Framework," Proceedings of IEEE
  1388.          INFOCOM `96, 1996.
  1389.  
  1390. [MRR80]  J. M. McQuillan, I. Richer and E. C. Rosen, "The New Routing Algorithm 
  1391.      for the ARPANET," IEEE Trans.  Communications, pp. 711-719, May, 1980.
  1392.  
  1393. [MS91]   D. Mitra and J. B. Seery, "Comparative Evaluations of Randomized and 
  1394.          Dynamic Routing Strategies for Circuit Switched Networks," IEEE Trans. 
  1395.          on Communications, pp. 102-116, January, 1991.
  1396.  
  1397. [MW77]   J. M. McQuillan and D. C. Walden, "The ARPANET Design Decisions," Computer 
  1398.      Networks, August, 1977.
  1399.  
  1400. [NC94]   Nair, R. and Clemmensen, D. : "Routing in Integrated Services Networks,"
  1401.          Proc. 2nd International Conference on Telecommunications Systems  Modeling 
  1402.      and Analysis, March 1994
  1403.  
  1404. [PGW96]  T. Przygienda, R. Guerin, and D. Williams, "QoS Routing Mechanisms and OSPF
  1405.          extensions," Internet Draft, draft-guerin-qos-routing-ospf-01.txt, 
  1406.          April, 1997.
  1407.  
  1408. [PNNI96] ATM Forum PNNI subworking group, "Private Network-Network Interface Spec.
  1409.      v1.0 (PNNI 1.0)", afpnni-0055.00, March 1996. 
  1410.  
  1411. [R76]    H. Rudin, "On Routing and "Delta Routing": A Taxonomy and Performance 
  1412.          Comparison of Techniques for Packet-Switched Networks," IEEE Trans. 
  1413.          Communications, pp. 43-59, January, 1996.
  1414.  
  1415.  
  1416. draft-ietf-qosr-framework-01.txt                                              [Page 26]
  1417.  
  1418. [R92]     Y. Rekhter, "IDRP Protocol Analysis: Storage Overhead," ACM Comp. Comm.
  1419.          Review, April, 1992.
  1420.  
  1421. [R96]    B. Rajagopalan, "Efficient Link State Routing," Draft,available from 
  1422.          braja@ccrl.nj.nec.com.
  1423.  
  1424. [RSR95]  B. Rajagopalan, R. Srikant and K. G. Ramakrishnan, "An Efficient ATM 
  1425.          VC Routing Scheme," Draft, 1995 (Available from braja@ccrl.nj.nec.com)
  1426.  
  1427. [SD95]   S. Sibal and A. Desimone, "Controlling Alternate Routing in General- Mesh 
  1428.          Packet Flow Networks," Proceedings of ACM SIGCOMM `95, 1995.
  1429.  
  1430. [T88]    D. M. Topkis, "A k-Shortest-Path Algorithm for Adaptive Routing in 
  1431.          Communications Networks," IEEE Trans.  Communications, pp. 855-859, 
  1432.          July, 1988.
  1433.  
  1434. [W88]    B. M. Waxman, "Routing of Multipoint Connections," IEEE JSAC, 
  1435.          pp. 1617-1622, December, 1988.  
  1436.  
  1437. [W96]    J. Wroclawski. Specification of the Controlled-Load Network Element
  1438.          Service. Internet Draft, draft-ietf-intserv-ctrl-load-svc-05.txt,
  1439.          May, 1997. 
  1440.  
  1441. [WC96]   Z. Wang and J. Crowcroft, "QoS Routing for Supporting Resource 
  1442.          Reservation," available at http://boom.cs.ucl.ac.uk/staff/zwang/pub.htm.
  1443.  
  1444. [YS81]   T. P. Yum and M. Schwartz, "The Join-Based Queue Rule and its Application 
  1445.          to Routing in Computer Communications Networks," IEEE Trans. Communications, 
  1446.          pp. 505-511, 1981.
  1447.  
  1448. [YS87]   T. G. Yum and M. Schwartz, "Comparison of Routing Procedures for 
  1449.          Circuit-Switched Traffic in Nonhierarchical Networks," IEEE Trans. 
  1450.          Communications, pp. 535-544, May, 1987.
  1451.  
  1452. [ZSSC96] Z. Zhang, C. Sanchez, B. Salkewicz, and E. Crawley, "QoS Extensions to
  1453.      OSPF," Internet Draft, draft-zhang-qos-ospf-00.txt, June, 1996.
  1454.  
  1455.  
  1456. AUTHORS' ADDRESSES
  1457.  
  1458.    Bala Rajagopalan                          Raj Nair
  1459.    NEC USA, C&C Research Labs                Arrowpoint
  1460.    4 Independence Way                         235 Littleton Rd.
  1461.    Princeton, NJ 08540                       Westford, MA 01886
  1462.    U.S.A                                     U.S.A
  1463.    Ph: +1-609-951-2969                       Ph: +1-508-692-5875, x29
  1464.    Email: braja@ccrl.nj.nec.com              Email: nair@arrowpoint.com
  1465.  
  1466.    Hal Sandick                               Eric S. Crawley
  1467.    IBM ND, E95/B664                          Gigapacket Networks
  1468.    800 Park Offices Drive                    25 Porter Rd.
  1469.    RTP, NC 27705                             Littelton, MA 01460
  1470.    U.S.A                                     U.S.A
  1471.    Ph: +1-919-254-4614                       Ph: +1-508-486-0665
  1472.    Email: sandick@vnet.ibm.com               Email: esc@gigapacket.com
  1473.  
  1474.  
  1475.          *******  This draft expires on January, 28, 1998  ********
  1476.  
  1477.  
  1478.  
  1479.