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-00.txt < prev    next >
Text File  |  1997-03-25  |  72KB  |  1,475 lines

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