home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / drafts / draft_n_r / draft-ohba-tagsw-vs-csr-00.txt < prev    next >
Text File  |  1997-04-25  |  16KB  |  376 lines

  1. Multi-Protocol Label Switching WG                          Yoshihiro Ohba
  2. Internet Draft                                             Toshiba
  3. Expiration Date: October 1997
  4.                                                            Hiroshi Esaki
  5.                                                            Toshiba
  6.  
  7.                                                            Yasuhiro Katsube
  8.                                                            Toshiba
  9.  
  10.                                                            April  1997
  11.  
  12.  
  13.     Comparison of Tag Switching and Cell Switch Router
  14.                 draft-ohba-tagsw-vs-csr-00.txt
  15.  
  16. Status of this Memo
  17.  
  18. This document is an Internet-Draft.  Internet-Drafts are working
  19. documents of the Internet Engineering Task Force (IETF), its areas,
  20. and its working groups.  Note that other groups may also distribute
  21. working documents as Internet-Drafts.
  22.  
  23. Internet-Drafts are draft documents valid for a maximum of six months
  24. and may be updated, replaced, or obsoleted by other documents at any
  25. time.  It is inappropriate to use Internet-Drafts as reference
  26. material or to cite them other than as "work in progress."
  27.  
  28. To learn the current status of any Internet-Draft, please check the
  29. "1id-abstracts.txt" listing contained in the Internet-Drafts Shadow
  30. Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe),
  31. munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or
  32. ftp.isi.edu (US West Coast).
  33.  
  34. Abstract
  35.  
  36. Tag Switching and Cell Switch Router are layer integration
  37. technologies between L2 and L3 to provide high-speed cut-through
  38. mechanisms for L3 packet transfer by mapping between L3 and L2
  39. datagram labels. TDP and FANP, used in Tag Switching and Cell Switch
  40. Router, respectively, are protocols that notify the mapping
  41. information between peer routers.  Although the objectives of both
  42. technologies are the same, there are several differences in methods
  43. for achieving the objective. This memo compares the two technologies
  44. and discusses how to merge them.
  45.  
  46. 1. Tag Switching
  47.  
  48. In Tag Switching, the mapping is called binding, and the binding is
  49. uniquely identified by 32-bit fixed length index called tag. Tags are
  50. allocated based mainly on destination address to support
  51. destination-based routing (of course Tag Switching can support other
  52. allocation policies). A destination-based binding is created when the
  53. routing protocol running on the TSR creates a new routing table entry. 
  54. This type of allocation is called "control-traffic-driven."
  55.  
  56. As for tag allocation, Tag Switching allows three modes: downstream
  57. tag allocation, downstream tag allocation on demand, and upstream tag
  58. allocation. Downstream tag allocation on demand is currently defined
  59. for supporting ATM. Hereafter we focus on downstream on demand for the
  60. purpose of discussion on tag management over ATM. See [1] for other
  61. modes.
  62.  
  63. Tag Switching uses two methods for advertising the mapping between L2
  64. and L3 labels. One method is using existing protocol packets, i.e.,
  65. tags are carried in the protocol messages such as BGP, PIM, and RSVP
  66. [2] messages. The other method is using Tag Distribution Protocol
  67. (TDP) [3] which is the specialized protocol for distributing tags. TDP
  68. is used where the former method is not efficient (e.g., an OSPF area).
  69.  
  70. TDP runs between two Tag Switching Routers (TSRs) over a connection
  71. oriented transport layer with guaranteed sequential delivery (e.g.,
  72. TCP). In other words, one TDP session is established between peer
  73. TSRs. A TDP session is kept by sending keep-alive packets periodically
  74. to its peer. If a TDP does not see keep-alive packets from its peer
  75. within certain interval, the TDP session is deleted.
  76.  
  77. In ATM environment, a tag information exchanged (via TDP) between peer
  78. TSRs contains a VPI/VCI of cell header [4], which puts a restriction
  79. on Tag Switching that a TSR is not allowed to connect its peer via
  80. conventional ATM switches since VPI/VCI is re-written at each ATM
  81. switch.
  82.  
  83. When ATM-TSR receives a tag binding request for a certain route from
  84. an upstream neighbor ATM-TSR, it creates the binding between incoming
  85. tag (VPI/VCI) and the route, and advertises them to the peer that
  86. originated the request. The ATM-TSR then requests for an outgoing tag
  87. (VPI/VCI) to the next hop for that route. After receiving the binding
  88. from the next hop neighbor, the ATM-TSR associates the incoming tag
  89. with the outgoing tag, which enables cut-through packet forwarding.
  90.  
  91. Once a binding is created, it is not deleted as long as the route for
  92. the corresponding destination is kept unchanged or the TDP session is
  93. alive.
  94.  
  95. If a new binding request for a route arrives and there are already
  96. some binding(s) for the same route, the ATM-TSR must create a new
  97. different incoming tag for the same route and request for a different
  98. outgoing tag. This is because packets which have the same destination
  99. but arrived at different input interfaces cannot be multiplexed onto a
  100. single VC unless some non-interleaving scheduling mechanism is
  101. supported in the underlying L2 switch. As a result, the bindings are
  102. created for each (ingress-TSR, destination address prefix).
  103.  
  104. When a tag binding is no longer needed, the ATM-TSR may delete the
  105. binding and notify the next hop. Then the next hop ATM-TSR also
  106. destroy the corresponding binding and notify the next hop, and this
  107. process is repeated at each ATM-TSR. In this point, we can say that
  108. globally synchronized (end-to-end) states are maintained by using TDP.
  109.  
  110. Tag Switching also allows a packet to carry a set of tags, organized
  111. as a stack [1,5]. Each tag in a stack corresponds to each routing
  112. hierarchy, e.g., BGP and IGP. This enables Tag Switching to scale.
  113.  
  114. 2. Cell Switch Router (CSR)
  115.  
  116. In CSR [8], FANP (Flow Attribute Notification Protocol) [6] plays the
  117. same role as TDP in Tag Switching.  FANP runs between two CSRs over
  118. unreliable transport (the current FANP implementation runs over IP
  119. with unreserved protocol-id). No FANP level session is established
  120. between peer CSRs.
  121.  
  122. To identify the mapping between L3/L2 labels, a CSR allocates a VCID
  123. (Virtual Connection IDentifier). FANP can support various types
  124. (lengths) of VCIDs depending on L2. Fixed length (12-octet) VCID is
  125. defined for ATM, which is composed of 6-octet ESI (End System
  126. Identifier) of an ATM end-system address, and 6-octet ID which
  127. uniquely identifies VCIDs allocated by the same CSR. The use of VCID
  128. instead of VPI/VCI makes CSR independent of topological design. This
  129. means that, with VCID negotiation procedure, CSRs can be
  130. interconnected through the ATM switches that changes incoming VPI/VCI
  131. values to the different outgoing VPI/VCI values.
  132.  
  133. VCIDs are uniquely allocated based mainly on a pair of IP source and
  134. destination addresses. We refer to such a pair as a flow. The
  135. allocation is made when the first trigger packet arrives. Trigger
  136. packet is a packet which contains one of certain TCP/UDP port numbers
  137. and certain address pair.  This type of allocation is called
  138. "data-traffic-driven."
  139.  
  140. As for the VCID management over ATM, current FANP specification
  141. supports upstream VCID allocation policy, e.g., after allocating a
  142. VCID a CSR advertises the VCID and the corresponding (source,
  143. destination) pair to the downstream neighbor CSR, and the receiving
  144. CSR installs these information. Since the current CSR implementation
  145. is flow-based, the receipt of incoming VCID does not trigger off a new
  146. allocation of an outgoing VCID at the receiving CSR. Instead,
  147. allocations are always triggered by arrivals of trigger packets.
  148.  
  149. After the mapping information for the flow is installed at the
  150. downstream CSR, the CSR periodically sends refresh packets to the
  151. upstream neighbor as long as there are any packet arrivals for that
  152. flow in each period. Refresh packets are sent flow-by-flow. The
  153. interval used to send refresh packets is called RefreshInterval. If no
  154. data packet arrives within N*RefreshInterval, the mapping information
  155. created for the incoming flow and the incoming VC for that flow are
  156. deleted.
  157.  
  158. The upstream CSR sets a timer on receiving the first refresh packet
  159. from its downstream neighbor.  The timer is called Dead Timer, and the
  160. value set to Dead Timer is called DeadInterval. The upstream CSR keeps
  161. the outgoing VC and the mapping information for that flow as long as
  162. it receives a refresh packet from the downstream neighbor before Dead
  163. Timer expires. Dead Timer is always reset on receiving a refresh
  164. packet before expiration of Dead Timer. If no refresh packet is
  165. received within DeadInterval, the CSR deletes the outgoing mapping
  166. information and release the outgoing VC for that flow. This means that
  167. CSR employs a soft state mechanism in mapping management. Note that
  168. our implementation also allows state deletion at any time when a CSR
  169. receives a release packet from its downstream neighbor.
  170.  
  171. Unlike Tag Switching, deletion of a state (mapping) for a flow is
  172. executed locally, without notifying the deletion that would cause the
  173. deletion of entire states for the flow along the path. Hence we can
  174. say that local (link-by-link) states are maintained by using FANP.
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.         Table 1: Comparison of Tag Switching and CSR
  201. +-------------------+-------------------------+---------------------------+
  202. |                   | Tag Switching           | CSR                       |
  203. +===================+=========================+===========================+
  204. | Method for        | (1) use existing        |                           |
  205. | binding info.     |     protocol packets    | use FANP                  |
  206. | delivery          | (2) use TDP             |                           |
  207. +-------------------+-------------------------+---------------------------+
  208. | Trigger to create | Route change            | Arrival of trigger packet |
  209. | a state           |(control-traffic-driven) | (data-traffic-driven)     |
  210. +-------------------+-------------------------+---------------------------+
  211. | Unit of state     | (ingress-TSR,dst)       | (src,dst)                 |
  212. +-------------------+-------------------------+---------------------------+
  213. | Impact of         | Not local               | Local                     |
  214. | state change      | (when TDP is used)      |                           |
  215. +-------------------+-------------------------+---------------------------+
  216. | Consistency with  | Both deletes old binding immediately                |
  217. | routing state     | when routing state changes.                         |
  218. +-------------------+-------------------------+---------------------------+
  219. | Binding allocation| downstream allocation   | upstream allocation only  |
  220. | policy            | (in most cases)         |                           |
  221. +-------------------+-------------------------+---------------------------+
  222. | How to deal with  | Loop prevention by using| Loop correction           |
  223. | loops             | TDP hopcount or TTL     |                           |
  224. |                   | field in tag stack      |                           |
  225. +-------------------+-------------------------+---------------------------+
  226. | Hierarchy support | Yes                     | No                        |
  227. +-------------------+-------------------------+---------------------------+
  228.  
  229. 3. Comparison
  230.  
  231. We summarize the features of Tag Switching and CSR in ATM environment
  232. in Table 1.
  233.  
  234. 3.1 Method for binding information delivery
  235.  
  236. There are two methods for Tag Switching to deliver binding
  237. information: (1) using existing protocol packets, and (2) using TDP.
  238. When method (1) is used, reliability of delivery is realized by the
  239. carrying protocol. When method (2) is used, TCP guarantees the
  240. reliability.  On the contrary, CSR always uses FANP for the binding
  241. information delivery. FANP has its own reliable delivery mechanism,
  242. used in common with unicast and multicast, over unreliable transport.
  243.  
  244. 3.2 Trigger to create a state
  245.  
  246. Installation of state with the current CSR is driven by data traffic
  247. for the legacy packet traffic. The operation overview for RSVP traffic
  248. is given in [7]. In contrast installation of state with tag switching
  249. is driven directly by control traffic (e.g., unicast routing updates,
  250. RSVP messages, PIM messages).
  251.  
  252. 3.3 Unit of state
  253.  
  254. In CSR, a state is created for (src, dst).  In Tag Switching, a state
  255. is created for (ingress TSR, dst).
  256.  
  257. 3.4 Impact of state change
  258.  
  259. When a state change occurs in a TSR with TDP, it causes direct state
  260. changes at other TSRs (e.g., by sending TDP_PIE_REMOVE_BIND messages). 
  261. So, if a TDP session fails in some node, say A, for some reason, the
  262. entire bindings for all routes that go through node A are completely
  263. deleted from the network and only hop-by-hop packet transfer is
  264. permitted for those routes, unless VC merging is not available. On the
  265. contrary, changes in state with CSR are purely local, default-VC
  266. (hop-by-hop) transfer is carried out only between node A and its
  267. neighbor routers.
  268.  
  269. 3.5 Consistency with routing state
  270.  
  271. When a routing state changes, both Tag Switching and CSR immediately
  272. deletes the old bindings associated to the change, and creates new
  273. bindings according to the new routing state.
  274.  
  275. 3.6 Binding allocation policy
  276.  
  277. As for binding allocation, Tag Switching employs downstream allocation
  278. policy in most cases whereas CSR employs upstream allocation
  279. policy. However, downstream allocation seems inapplicable to multicast
  280. cut-through on multi-access ATM network using the standard ATM
  281. Forum/ITU-T signaling.
  282.  
  283. 3.7 Loop detection
  284.  
  285. There are two methods to deal with loops over label switching path:
  286. loop correction and loop prevention. In the loop correction, MPLS
  287. level loops are allowed to be set up over a label switching path, and
  288. data may be transmitted over the loops, but the loops is later
  289. detected and closed. On the contrary, in the loop prevention, data is
  290. never transmitted over a MPLS level loop.
  291.  
  292. CSR has a loop correction mechanism in which MPLS level loops
  293. disappear as soon as the related L3 level loops disappear.  
  294. Tag Switching has two loop prevention mechanisms. 
  295. One method is using TDP level hop count which is carried in TDP
  296. messages. Another method is using TTL field of tag
  297. stack which is prepended to each IP packet [5]. 
  298.  
  299. 3.8 Hierarchy support
  300.  
  301. The idea of hierarchical tag support in Tag Switching is good in terms
  302. of scalability.
  303.  
  304. References
  305.  
  306. [1] Y. Rekhter et al., 
  307.     "Cisco System's Tag Switching Architecture Overview," 
  308.     Internet RFC 2105, Feb. 1997.
  309.  
  310. [2] F. Baker, 
  311.     "Use of Flow Label for Tag Switching," Internet Draft, 
  312.     draft-baker-flow-label-00.txt, Oct. 1996.
  313.  
  314. [3] P. Doolan et al., 
  315.     "Tag Distribution Protocol," Internet Draft, 
  316.     draft-doolan-tdp-spec-00.txt, Sep. 1996.
  317.  
  318. [4] B. Davie et al., 
  319.     "Use of Tag Switching With ATM," Internet Draft, 
  320.     draft-davie-tag-switching-atm-01.txt, Jan. 1997.
  321.  
  322. [5] E. Rosen et al., 
  323.     "Tag Switching: Tag Stack Encodings," Internet Draft, 
  324.     draft-rosen-tag-stack-01.txt, March 1997.
  325.  
  326. [6] K. Nagami et al., 
  327.     "Flow Attribute Notification Protocol (FANP) Specification,"
  328.     Internet Draft, draft-rfced-info-nagami-00.txt, Nov. 1996.
  329.  
  330. [7] Y. Katsube et al., 
  331.     "Interoperation Scenario Between Distinct Types of Cut-through,"
  332.     Internet Draft, Apl. 1997.
  333.  
  334. [8] Y. Katsube et al., 
  335.     "Toshiba's Router Architecture Extensions for ATM : Overview", 
  336.     Internet RFC 2098, Feb. 1997.
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344. Authors 
  345.  
  346.      Yoshihiro Ohba
  347.     R&D Center, Toshiba Corporation, 
  348.     1 Komukai-Toshiba-cho, Saiwai-ku, 
  349.     Kawasaki, 210, Japan 
  350.     Tel: +81-44-549-2238 
  351.     Fax: +81-44-520-1806 
  352.     Email: ohba@csl.rdc.toshiba.co.jp 
  353.  
  354.       Hiroshi Esaki 
  355.     Computer and Network Division, 
  356.     Toshiba Corporation, 
  357.     1-1-1 Shibaura, 
  358.     Minato-ku, 105-01, Japan. 
  359.     Tel: +81-3-3457-2536 
  360.     Fax: +81-3-5444-9234 
  361.     Email: hiroshi@isl.rdc.toshiba.co.jp 
  362.  
  363.       Yasuhiro Katsube 
  364.     R&D Center, Toshiba Corporation, 
  365.     1 Komukai-Toshiba-cho, Saiwai-ku, 
  366.     Kawasaki, 210, Japan 
  367.     Tel: +81-44-549-2238 
  368.     Fax: +81-44-520-1806 
  369.     Email: katsube@isl.rdc.toshiba.co.jp  
  370.  
  371. Acknowledgment
  372.  
  373. We appreciate Yakov Rekhter and Paul Doolan of Cisco Systems Inc. 
  374. for giving us comments on this document.
  375.  
  376.