idnits 2.17.1 draft-ietf-i2rs-usecase-reqs-summary-01.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document seems to lack the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. (The document does seem to have the reference to RFC 2119 which the ID-Checklist requires). -- The document date (May 19, 2015) is 3257 days in the past. Is this intentional? -- Found something which looks like a code comment -- if you have code sections in the document, please surround them with '' and '' lines. Checking references for intended status: Informational ---------------------------------------------------------------------------- == Missing Reference: 'I-D.ietf-cdni-framework' is mentioned on line 1388, but not defined == Unused Reference: 'RFC2119' is defined on line 1444, but no explicit reference was found in the text == Unused Reference: 'RFC3746' is defined on line 1447, but no explicit reference was found in the text == Unused Reference: 'I-D.ietf-i2rs-problem-statement' is defined on line 1492, but no explicit reference was found in the text == Unused Reference: 'I-D.ietf-i2rs-rib-info-model' is defined on line 1497, but no explicit reference was found in the text == Unused Reference: 'I-D.ietf-sfc-problem-statement' is defined on line 1502, but no explicit reference was found in the text == Unused Reference: 'I-D.lapukhov-bgp-routing-large-dc' is defined on line 1525, but no explicit reference was found in the text == Unused Reference: 'RFC5212' is defined on line 1559, but no explicit reference was found in the text == Outdated reference: A later version (-15) exists of draft-ietf-i2rs-architecture-09 == Outdated reference: A later version (-11) exists of draft-ietf-i2rs-problem-statement-06 == Outdated reference: A later version (-17) exists of draft-ietf-i2rs-rib-info-model-06 == Outdated reference: A later version (-07) exists of draft-lapukhov-bgp-routing-large-dc-06 Summary: 0 errors (**), 0 flaws (~~), 14 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 i2rs S. Hares 3 Internet-Draft Huawei 4 Intended status: Informational M. Chen 5 Expires: November 20, 2015 Huawei Technologies 6 May 19, 2015 8 Summary of I2RS Use Case Requirements 9 draft-ietf-i2rs-usecase-reqs-summary-01 11 Abstract 13 The I2RS Working Group (WG) has described a set of use cases that the 14 I2RS systems could fulfil. This document summarizes these use cases. 15 It is designed to provide requirements that will aid the design of 16 the I2RS architecture, Information Models, Data Models, Security, and 17 protocols. 19 Status of This Memo 21 This Internet-Draft is submitted in full conformance with the 22 provisions of BCP 78 and BCP 79. 24 Internet-Drafts are working documents of the Internet Engineering 25 Task Force (IETF). Note that other groups may also distribute 26 working documents as Internet-Drafts. The list of current Internet- 27 Drafts is at http://datatracker.ietf.org/drafts/current/. 29 Internet-Drafts are draft documents valid for a maximum of six months 30 and may be updated, replaced, or obsoleted by other documents at any 31 time. It is inappropriate to use Internet-Drafts as reference 32 material or to cite them other than as "work in progress." 34 This Internet-Draft will expire on November 20, 2015. 36 Copyright Notice 38 Copyright (c) 2015 IETF Trust and the persons identified as the 39 document authors. All rights reserved. 41 This document is subject to BCP 78 and the IETF Trust's Legal 42 Provisions Relating to IETF Documents 43 (http://trustee.ietf.org/license-info) in effect on the date of 44 publication of this document. Please review these documents 45 carefully, as they describe your rights and restrictions with respect 46 to this document. Code Components extracted from this document must 47 include Simplified BSD License text as described in Section 4.e of 48 the Trust Legal Provisions and are provided without warranty as 49 described in the Simplified BSD License. 51 Table of Contents 53 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 54 2. Protocol Independent Use Case Requirements . . . . . . . . . 4 55 3. BGP Use Case Requirements . . . . . . . . . . . . . . . . . . 6 56 4. IGP Use Cases . . . . . . . . . . . . . . . . . . . . . . . . 8 57 5. CCNE Use Cases . . . . . . . . . . . . . . . . . . . . . . . 10 58 6. Topology Related Use Cases . . . . . . . . . . . . . . . . . 10 59 6.1. Virtual Connection Use Case Requirements . . . . . . . . 11 60 6.2. Virtual Network Use Case Requirements . . . . . . . . . . 11 61 6.3. Topology Use Case . . . . . . . . . . . . . . . . . . . . 12 62 6.4. Virtual Topology Data Model . . . . . . . . . . . . . . . 17 63 6.5. Virtual Topology IP Data Model . . . . . . . . . . . . . 18 64 6.6. Virtual Topology Network Element . . . . . . . . . . . . 19 65 7. Requirements from SFC Use Cases . . . . . . . . . . . . . . . 20 66 8. Requirements from Traffic Steering Use Cases . . . . . . . . 21 67 9. Requirements from MPLS TE Networks Use Cases . . . . . . . . 22 68 10. Requirements from MPLS LDP Networks Use Cases . . . . . . . . 24 69 11. Requirements from Mobile Backhaul Ues Cases . . . . . . . . . 25 70 12. Requirements from Large Data Flows are . . . . . . . . . . . 27 71 13. Large Data Collection Systems . . . . . . . . . . . . . . . . 28 72 14. CDNI . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 73 15. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 31 74 16. Security Considerations . . . . . . . . . . . . . . . . . . . 31 75 17. References . . . . . . . . . . . . . . . . . . . . . . . . . 31 76 17.1. Normative References . . . . . . . . . . . . . . . . . . 31 77 17.2. Informative References . . . . . . . . . . . . . . . . . 31 78 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 34 80 1. Introduction 82 The Architecture for the Interface to the Routing System 83 [I-D.ietf-i2rs-architecture] allows for a mechanism where the 84 distributed control plane can be augmented by an outside control 85 plane through an open, accessible interface. This document 86 summarizes the use case requirements for theI2RS client-I2RS Agent 87 exchange found in the following documents: 89 o Protocol Independent described in [I-D.white-i2rs-use-case] 91 o BGP described in [I-D.keyupate-i2rs-bgp-usecases] 93 o IGP protocols as described in [draft-ietf-wu-i2rs-igp-usecases] 94 o Control of Forwarding Path by Central Control Network Element 95 (CCNE) [I-D.ji-i2rs-usecases-ccne-service] 97 o Virtual Connections and Virtual Networks described in 98 [I-D.hares-i2rs-use-case-vn-vc] 100 o Topology use cases [I-D.amante-i2rs-topology-use-cases] 102 o Topology requirements [I-D.medved-i2rs-topology-requirements] 104 o Service chaining described in [I-D.bitar-i2rs-service-chaining] 106 o Traffic Steering described in [I-D.chen-i2rs-ts-use-case] 108 o MPLS TE Networks described in [I-D.huang-i2rs-mpls-te-usecases] 110 o MPLS LDP Networks described in [I-D.chen-i2rs-mpls-ldp-usecases] 112 o Mobile BackHaul Use cases described in 113 [I-D.zhang-i2rs-mbb-usecases] 115 o Large Flows use case described in 116 [I-D.krishnan-i2rs-large-flow-use-case] 118 o Large Data Collection Systems Use cases described in 119 [I-D.swhyte-i2rs-data-collection-system] 121 o CDNI requesting routing 122 [I-D.shin-i2rs-usecases-cdni-request-routing] 124 Each group of use cases is presented in its own document. Each use 125 case is labeled with an identifier TTT-REQ-nn where TTT represents 126 the type of use case. The abbreviations for TTT are: 128 o PI - Protocol Independent 130 o BGP - BGP 132 o IGP - IGP protocols 134 o CCNE - CCNE control of forwarding path 136 o VCoD - Virtual Connections on Demand 138 o VNoD - Virtual Networks on Demand 140 o Topo - Topology Information 141 o VT-TMD - Virtual Topology: Topology Data Model 143 o VT-TDM-IP - Virtual Topology: Topology Data Mode for IP/MPLS 145 o SFC - Service Chaining requirements 147 o TS - Traffic Steering 149 o MPLS-LDP - MLPS Topologies supported by LDP 151 o MPLS-TE - MPLS-TE topologies 153 o MBH - Mobile Back-Haul 155 o L-Flow - Large Flows 157 o L-Data - Large Data Collection 159 o CDNI - CDNI networks 161 Each use case is also augmented with a notation signifying whether it 162 is in or out of scope with regard to the current I2RS charter: 164 o IC: In charter 166 o OC: Out of charter 168 o NA: not applicable to I2RS protocol, agent, client or models. 169 Usually related to specific client-side app requirements. 171 o ??: indicates this item needs additional classification aid from 172 the WG. 174 In some cases a specific draft may be out of charter, but 175 (sub)components of it's requirement set may be in charter. In 176 charter. As such, (IC|OC|NA) designations may appear at the draft 177 level, at the requirement level, or at the sub requirement level. In 178 instances where designations do not appear at more specific level, 179 the designation at the parent level should be considered to be 180 inherited. 182 2. Protocol Independent Use Case Requirements 184 This is a summary of the I2RS requirements found in the Protocol 185 Independent Use Cases described in: [I-D.white-i2rs-use-case] (IC): 187 o PI-REQ01 (IC): The ability to monitor the available routes 188 installed in the RIB of each forwarding device, including near 189 real time notification of route installation and removal. This 190 information must include the destination prefix (NLRI), a table 191 identifier (if the forwarding device has multiple forwarding 192 instances), the metric of the installed route, and an identifier 193 indicating the installing process. 195 o PI-REQ02 (IC): The ability to install source and destination based 196 routes in the local RIB of each forwarding device. This must 197 include the ability to supply the destination prefix (NLRI), the 198 source prefix (NLRI), a table identifier (if the forwarding device 199 has multiple forwarding instances), a route preference, a route 200 metric, a next hop, an outbound interface, and a route process 201 identifier. 203 o PI-REQ03 (IC): The ability to install a route to a null 204 destination, effectively filtering traffic to this destination. 206 o PI-REQ04(??): The ability to interact with various policies 207 configured on the forwarding devices, in order to inform the 208 policies implemented by the dynamic routing processes. This 209 interaction should be through existing configuration mechanisms, 210 such as NETCONF, and should be recorded in the configuration of 211 the local device so operators are aware of the full policy 212 implemented in the network from the running configuration. 214 o PI-REQ05 (OC): The ability to interact with traffic flow and other 215 network traffic level measurement protocols and systems, in order 216 to determine path performance, top talkers, and other information 217 required to make an informed path decision based on locally 218 configured policy. 220 o PI-REQ06 (IC): The ability to install destination based routes in 221 the local RIB of each forwarding device. This must include the 222 ability to supply the destination prefix (NLRI), a table 223 identifier (if the forwarding device has multiple forwarding 224 instances), a route preference, a route metric, a next hop, an 225 outbound interface, and a route process identifier. 227 o PI-REQ07 (IC): The ability to read the local RIB of each 228 forwarding device, including the destination prefix (NLRI), a 229 table identifier (if the forwarding device has multiple forwarding 230 instances), the metric of each installed route, a route 231 preference, and an identifier indicating the installing process. 233 o PI-REQ08 (IC): The ability to read the tables of other local 234 protocol processes running on the device. This reading action 235 should be supported through an import/export interface which can 236 present the information in a consistent manner across all protocol 237 implementations, rather than using a protocol specific model for 238 each type of available process. 240 o PI-REQ09 (OC for some protocols): The ability to inject 241 information directly into the local tables of other protocol 242 processes running on the forwarding device. This injection should 243 be supported through an import/export interface which can inject 244 routing information in a consistent manner across all protocol 245 implementations, rather than using a protocol specific model for 246 each type of available process. 248 o PI-REQ10 (OC): The ability to interact with policies and 249 configurations on the forwarding devices using time based 250 processing, either through timed auto-rollback or some other 251 mechanism. This interaction should be through existing 252 configuration mechanisms, such as NETCONF, and should be recorded 253 in the configuration of the local device so operators are aware of 254 the full policy implemented in the network from the running 255 configuration. 257 3. BGP Use Case Requirements 259 This is a summary of the requirements listed in 260 [I-D.keyupate-i2rs-bgp-usecases] are (IC): 262 o BGP-REQ01 (IC): I2RS client/agent exchange SHOULD support the 263 read, write and quick notification of status of the BGP peer 264 operational state on each router within a given Autonomous System 265 (AS). This operational status includes the quick notification of 266 protocol events that proceed a destructive tear-down of BGP 267 session 269 o BGP-REQ02 (IC): I2RS client SHOULD be able to push BGP routes with 270 custom cost communities to specific I2RS agents on BGP routers for 271 insertion in specific BGP Peer(s) to aid Traffic engineering of 272 data paths. These routes SHOULD be tracked by the I2RS Agent as 273 specific BGP routes with customer cost communities. These routes 274 (will/will not) installed via the RIB-Info. 276 o BGP-REQ03 (IC): I2RS client SHOULD be able to track via read/ 277 notifications all Traffic engineering changes applied via I2RS 278 agents to BGP route processes in all routers in a network. 280 o BGP-REQ04 (IC): I2RS Agents SHOULD support identification of 281 routers as BGP ASBRs, PE routers, and IBGP routers. 283 o BGP-REQ05 (IC): I2RS client-agent SHOULD support writing traffic 284 flow specifications to I2RS Agents that will install them in 285 associated BGP ASBRs and the PE routers. 287 o BGP-REQ06 (IC): I2RS Client SHOULD be able to track flow 288 specifications installed within a IBGP Cloud within an AS via 289 reads of BGP Flow Specification information in I2RS Agent, or via 290 notifications from I2RS agent 292 o BGP-REQ07 (IC): I2RS client-agent exchange SHOULD support the I2RS 293 client being able to prioritize and control BGP's announcement of 294 flow specifications after status information reading BGP ASBR and 295 PE router's capacity. BGP ASBRs and PE routers functions within a 296 router MAY forward traffic flow specifications received from EBGP 297 speakers to I2RS agents, so the I2RS Agent SHOULD be able to send 298 these flow specifications from EBGP sources to a client in 299 response to a read or notification. 301 o BGP-REQ08 (IC): I2RS Client SHOULD be able to read BGP route 302 filter information from I2RS Agents associated with legacy BGP 303 routers, and write filter information via the I2RS agent to be 304 installed in BGP RR. The I2RS Agent SHOULD be able to install 305 these routes in the BGP RR, and engage a BGP protocol action to 306 push these routers to ASBR and PE routers. 308 o BGP-REQ09 (IC): I2RS client(s) SHOULD be able to request the I2RS 309 agent to read BGP routes with all BGP parameters that influence 310 BGP best path decision, and write appropriate changes to the BGP 311 Routes to BGP and to the RIB-Info in order to manipulate BGP 312 routes 314 o BGP-REQ10 (IC): I2RS client SHOULD be able instruct the I2RS 315 agent(s) to notify the I2RS client when the BGP processes on an 316 associated routing system observe a route change to a specific set 317 of IP Prefixes and associated prefixes. Route changes include: 1) 318 prefixes being announced or withdrawn, 2) prefixes being 319 suppressed due to flap damping, or 3) prefixes using an alternate 320 best-path for a given IP Prefix. The I2RS agent should be able to 321 notify the client via publish or subscribe mechanism. 323 o BGP-REQ11 (IC): I2RS client SHOULD be able to read BGP route 324 information from BGP routers on routes in received but rejected 325 from ADJ-RIB-IN due to policy, on routes installed in ADJ-RIB-IN, 326 but not selected as best path, and on route not sent to IBGP peers 327 (due to non-selection). 329 o BGP-REQ12 (IC): I2RS client SHOULD be able to request the I2RS 330 agent to read installed BGP Policies. 332 o BGP-REQ13 (IC): I2RS client SHOULD be able to instruct the I2RS 333 Agent to write BGP Policies into the running BGP protocols and 334 into the BGP configurations. 336 o BGP-REQ14 (IC): I2RS client-agent SHOULD be able to read BGP 337 statistics associated with Peer, and to receive notifications when 338 certain statistics have exceeded limits. An example of one of 339 these protocol statistics is the max-prefix limit. 341 o BGP-REQ15 (IC): The I2RS client via the I2RS agent MUST have the 342 ability to read the loc-RIB-In BGP table that gets all the routes 343 that the CE has provided to a PE router. 345 o BGP-REQ16 (IC): The I2RS client via the I2RS agent MUST have the 346 ability to install destination based routes in the local RIB of 347 the PE devices. This must include the ability to supply the 348 destination prefix (NLRI), a table identifier, a route preference, 349 a route metric, a next-hop tunnel through which traffic would be 350 carried 352 o BGP-REQ17 (IC): The I2RS client via the I2RS agent SHOULD have the 353 the ability to read the loc-RIB-in BGP table to discover 354 overlapping routes, and determine which may be safely marked for 355 removal. 357 o BGP-REQ18 (IC): The I2RS client via the I2RS Agent SHOULD have the 358 ability to modify filtering rules and initiate a re-computation of 359 the local BGP table through those policies to cause specific 360 routes to be marked for removal at the outbound eBGP edge. 362 4. IGP Use Cases 364 This is a summary of the requirements listed in (ietf-draft-wu-ir2s- 365 igp-usecases-00.txt) (OC): 367 o IGP-REQ-01 (OC): I2RS Client/Agent SHOULD Be able to read/write 368 the the unique IGP identification for router within an AS (router- 369 id, system-id, or others). I2RS agents may notify the I2RS client 370 of the detection of another router with the same unique ID. 372 o IGP-REQ-02 (OC): I2RS Client SHOULD BE able to aid in IGP table 373 reduction by actively monitoring IGP tables and by allowing 374 changes to the IGP configuration in order to partition the IGPS 375 and place ABRs and ASBRs. The I2RS Client/Agent exchange must 376 allow for a rapid cycle of querying of IGP topology information 377 and downloading of a new protocol configuration or updating of IGP 378 nexthops in RIBs and FIBs to rapidly switch to new temporary IGP 379 topologies. These alternate topologies may be calculated by a 380 application attached to the i2rs client and updated to the i2rs 381 agent, or determined at the i2rs agent. 383 o IGP-REQ-03 (OC): I2RS protocol and models should support Loop-Free 384 Alternative (LFAs) [RFC5286] deployments in in pure IP and MPLS/ 385 LDP networks to provide single-point-failure protection for 386 unicast traffic. This includes the configuration, monitoring of 387 LFA changes, and letting off-line pre-computed paths for LFA 388 backup of all links and prefixes in the network and calculating 389 the protection coverage and recognizing optimization to be 390 downloaded to appropriate devices via the I2RS interface (Client- 391 Agent). Again, it is important to have deployment of changes 392 followed by real-time feedback. 394 o IGP-REQ-04 (OC): The I2RS programmatic interface SHOULD allow the 395 balancing of both ECMP traffic flows and end-to-end traffic flows 396 in the IGP. The I2RS SHOULD support monitoring of the dynamic 397 traffic flow in the network, and the query of the maximum capacity 398 of the network. This include the I2RS client's transmission to 399 the I2RS agent of updated configuration after an off-line 400 optimization to either spread traffic (across ECMP pathways) or 401 aggregation of traffic onto a single path so the rest of the 402 devices may power off saving power (and money. 404 o IGP-REQ-05 (OC): The I2RS interface (protocol and data models) 405 SHOULD use the subscription mechanism to filter the topology 406 changes to interested events and use the publish mechanism to 407 control the pace these events are notified. This filtering should 408 protect the I2RS Client or even applications who depend on 409 topology data from being drowned by massive original events or 410 duplicate events from different sources 412 o IGP-REQ-06 (OC): Since IGP protocol is essential to the whole 413 network, the I2RS Clients SHOULD monitor about the protocol's 414 running status before forwarding is impacted. Performance data 415 can be collected through collecting static configuration and 416 observing dynamic status. Static data includes the number of 417 instances, interfaces, nodes in the network and etc. Dynamic data 418 includes adjacency status, the number of entries in link-state 419 database and in the routing table, the calculation status, the 420 overload status, the graceful switch-over status, and others 422 o IGP-REQ-07 (OC): The I2RS interface (protocol and IMs) should 423 support a mechanism where the I2RS Clients can subscribe to the 424 I2RS Agent's notification of critical node IGP events. For 425 example, link-state database or routing table is under the status 426 of overflow or the overflow status is released, the calculation 427 continues for a long time, the system is under graceful reboot. 429 o IGP-REQ-08 (OC): The I2RS interface (protocol and IMs) should 430 support the reporting of IGP statistic such as dropped packet 431 statistics. These statistics will aid detection of network 432 failures or secruity attacks. 434 5. CCNE Use Cases 436 The use cases in I2RS Use Cases for Control of the Forwarding Path by 437 a Central Control Network Element (CCNE) 438 [I-D.ji-i2rs-usecases-ccne-service] indicate the following 439 requirements for I2RS (OC): 441 o CCNE-REQ-01 (IC): I2RS interface should support I2RS client 442 running on a CCNE to be able to pull information from both the BGP 443 RR and the PCE. This information can include: BGP topology 444 information, BGP routes, BGP statistics, BGP Peer topologies, PCE 445 topology information, and PCE state information. The I2RS 446 Client's request for reading of the RR and PCE topology 447 information needs to have timely and rapid response from the I2RS 448 Agent. 450 o CCNE-REQ-02 (IC for some constraints): I2RS client should be able 451 to set resource constraints at the I2RS Agent, and receive status 452 information on the setting of resource constraints. 454 o CCNE-REQ-03 (IC for some constraints): I2RS interface should be 455 able to set service goal value to CCNE. 457 o CCNE-REQ-04 (OC): I2RS client should be able support information 458 models that allow re-optimization traffic model at at CCNE . 460 o CCNE-REQ-05 (IC): I2RS client should be able to receive 461 notification at the CCNE, and be able to send status to the I2RS 462 agent. 464 o CCNE-REQ-06 (NA): I2RS client should work in parallel with 465 traditional network management or OAM protocols sent to the 466 general NE. 468 o CCNE-REQ-07 (NA): I2RS clients should be able to to be light 469 weight enough to be able to support running on a variety of 470 devices (routers, centralized servers, or devices doing both). 472 6. Topology Related Use Cases 474 This section describes Topology or Virtual Topology related 475 requirements the I2RS interface (protocol and information model (IM) 476 included in the following types of use cases: 478 o Virtual Connections on Demand: VCoD-REQ 480 o Virtual Networks on Demand: VNoD-REQ 482 o Virtual Topology Information Topo-REQ 484 o Virtual Topology Data Model: VT-TDM-REQ 486 o Virtual Topology IP Data Model: VT-TDMIP-REQ 488 o Virtual Topology Network Element: VT-NE-REQ (TMF-GEN-1) 490 6.1. Virtual Connection Use Case Requirements 492 o VCoD-REQ01 (OC): I2RS Agents SHOULD provide the ability to read 493 the virtual network topology database for the technology 494 supported. For optical, these are the optical connections and 495 what node they connect to, and the topologies created. For MPLS, 496 this is virtual circuit available, what nodes they connect to, and 497 the network topologies created. For IP technologies, this could 498 include the GRE tunnels, what interface it connects to, and the 499 topologies created. For Ethernet circuits this should involve 500 circuit type (e.g, point-to-point (p2p) or point-to-multipoint 501 (p2mp)) and what nodes it can reach, and the topologies created. 503 o VCoD-REQ02 (OC): I2RS Agent SHOULD provide the ability to 504 influence the configuration of a virtual circuit in a node. 506 o VCoD-REQ03 (OC): I2RS Agent SHOULD provide monitor and provide 507 statistics on the virtual connection to the I2RS client via a Read 508 request or status Notification. The I2RS client can then 509 determine if the connection falls below a quality level the 510 application has requested. If the I2RS client does determine the 511 circuit is below the required quality, it could create another 512 circuit. The I2RS may choose to create the second virtual 513 circuit, transfer flows, and then break the first circuit. 515 6.2. Virtual Network Use Case Requirements 517 The requirements for the Virtual Networks on Demand (VCoD) are: 519 o VT-VN-REQ01 (IC): I2RS Agents SHOULD provide the ability to read 520 the virtual network topology database for the technology supported 521 to determine nodes and connections. For optical, these are the 522 optical connections and what node they connect to, and the 523 topologies created. For MPLS, this is virtual circuit available, 524 what nodes they connect to, and the network topologies created. 525 For IP technologies, this could include the GRE tunnels, what 526 interface it connects to, and the topologies created. For 527 Ethernet circuits this should involve circuit type (e.g, point-to- 528 point (p2p) or point-to-multipoint (p2mp)) and what nodes it can 529 reach, and the topologies created. 531 o VNoD-REQ02 (IC): I2RS Agent SHOULD provide the ability to 532 influence the configuration of a virtual circuit in a node. 534 o VNoD-REQ03 (IC): I2RS Agent SHOULD provide monitor and provide 535 statistics on the virtual connection to the I2RS client via a Read 536 request or status Notification. The I2RS client can then 537 determine if the connection falls below a quality level the 538 application has requested. If the I2RS client does determine the 539 circuit is below the required quality, it could create another 540 circuit. The I2RS may choose to create the second virtual 541 circuit, transfer flows, and then break the first circuit. 543 o VNoD-REQ04 (IC): I2RS Agent SHOULD provide the ability to 544 influence the configuration of a virtual network in a node. 546 o VNoD-REQ05 (OC): I2RS Agent SHOULD provide the ability to report 547 statistics on the network nodes and end-to-end traffic flows via 548 read of status data or via notifications of status. 550 o VNoD-REQ06 (IC): The I2RS protocol and RIB Informational Model 551 (IM) must support logical tunnels of type MPLS as well as IP, GRE, 552 VxLAN and GRE. Large Carrier networks utilize MPLS in a variety 553 of forms (LDP, static MPLS TE, or dynamic TE LSPS created by RSVP- 554 TE or CR-LDP). 556 o VNoD-REQ07 (IC): I2RS SHOULD support Informational Models and 557 features to allow MPLS technologies to create Hub-spoke topology 558 and service routing in networks in Carriers, Enterprise, and Data 559 Centers. 561 o VNoD-REQ08 (IC): I2RS protocols, Information Models, and Data 562 Models must be able to support Carriers using these MPLS 563 technologies to support networks for Mobile BackHaul, on-demand 564 MPLS overlays, and on-demand video conferencing networkings. 566 6.3. Topology Use Case 568 The requirements in [I-D.amante-i2rs-topology-use-cases] topology use 569 cases focus around the architecture of topology manager, 570 orchestration manager, and policy in the figure below (IC): 572 +---------------+ 573 +----------------+ | 574 | Applications |-+ 575 +----------------+ 576 ^ Websockets, ReST, XMPP... 577 +------------------------+-------------------------+ 578 | | | 579 +------------+ +------------------------+ +-------------+ 580 | Policy |<----| Topology Manager |---->|Orchestration| 581 | Manager | | +--------------------+ | | Manager | 582 +------------+ | |Topology Information| | +-------------+ 583 | | Model | | 584 | +--------------------+ | 585 +------------------------+ 586 ^ ^ ^ 587 Websockets, ReST, XMPP # | * Websockets, ReST, XMPP 588 ####################### | ************************ 589 # | * 590 +------------+ | +------------+ 591 | Statistics | | | Inventory | 592 | Collection | | | Collection | 593 +------------+ | +------------+ 594 ^ | I2RS, NETCONF, SNMP, ^ 595 | | TL1 ... | 596 +------------------------+------------------------+ 597 | | | 598 +---------------+ +---------------+ +---------------+ 599 |Network Element| |Network Element| |Network Element| 600 | +-----------+ | | +-----------+ | | +-----------+ | 601 | |Information| |<-LLDP->| |Information| |<-LMP-->| |Information| | 602 | | Model | | | | Model | | | | Model | | 603 | +-----------+ | | +-----------+ | | +-----------+ | 604 +---------------+ +---------------+ +---------------+ 606 o Topo-REQ-01 (IC): The Topology Manager Should be able to collect 607 topological information via the I2RS Client-Exchange exchange from 608 a variety of sources in a normalized topological model. These 609 sources can be: 611 * Live Layer IGP IGPs with information about the active topology 612 such as the LSDB database or IGP updates, 614 * The I2RS must enable the inventory system information to query 615 for information about network components which are not not 616 visible to active L3. These systems can be active or simply 617 invisible to the L3. Examples of this are L2 Ethernet switches 618 or ROADMS. 620 * Statistic Collection systems that provide traffic information, 621 such as traffic demands or link utilizations. 623 (from section 3.2) 625 o Topo-REQ-02 (OC): Topology information is provided from Clients to 626 high-layer applications via a northbound interface (such as ReST, 627 Websockts, or XMPP. 629 o Topo-REQ-03 (IC): Topology Manager should be able to collect and 630 keep current topology information for multiple layers of the 631 network: Transport, Ethernet and IP/MPLS, as well as information 632 for multiple Layer 3 IGP areas and multiple Autonomous Systems 633 (ASes). This information must contain cross-layer unerlying 634 Shared Risk Link Groups (SRLG) within transport or Ethernet 635 layers. (from section 3.2) 637 o Topo-REQ-04 (OC): Topology manager be able to use I2RS Client- 638 Agent protocol to to collect dynamic inventory information from 639 network elements. An example of these protocols are the Link 640 Layer discovery protocols (LLDP, LMP, etc.) which automatically 641 identify remote nodes and ports. (from section 3.2) 643 o Topo-REQ-05 (IC):I2RS Should enable the Policy manager to query 644 and store the following types of policies: 646 * Policies that contain Logical identifier Numbering in order to 647 correlate IP Prefixes to 649 + link based on link type (P-P, P-PE, or PE-CE), 651 + IGP Area 653 + L2 VLAN assignments 655 * Routing Configuration policies that correlate: 657 + OSPF area/ISIS Net-ID to Node (type) 659 + BGP node related policies (aggregation routes at node, max- 660 prefix (per node), or AFI/SAFI per node 662 + Security policies - with ACLs or rate-limits 664 + Network Component access policies (for management 666 (from section 3.3) 668 o Topo-REQ-06 (OC): I2RS should enable a orchestration manager 669 attached to an I2RS client to communicate with I2RS agents into 670 order to stitch together End-to-end services for network bandwidth 671 optimization, load balancing, and Class-of-Service with point 672 services (Firewall or NAT) within the end-to-end service). The 673 orchestration manager should also be able to immediately schedule 674 any of these resources via the I2RS-Client I2RS agent exchange. 675 (from section 3.4) 677 o Topp-REQ-07 (OC): The I2RS exchange should enable a statistics 678 collector to collect statistics from the routing function of the 679 network nodes and archive and aggregate the statistics into a 680 statistics warehouse. Statistics must be given and stored in an 681 normalized form. Metadata must be stored with the statistics. 682 (from section 4.1.1.2) (Editor: there is some suggestion of 683 periodic reports) 685 o Topo-REQ-08 (IC): I2RS Client-I2RS agent exchange must be provide 686 enough interoperability that the Topology manager, Policy manager, 687 and inventory systems can be available from different vendors 689 o Topo-REQ-09 (IC): TE tunnels must be able to be created by the 690 exchange between the I2RS client and the I2RS agent. (from section 691 4.1.1) 693 o Topo-Req-10 (NA): I2RS must provide a common and up-to-date 694 normalized view of the topologies that that support security 695 auditing, and IP/MPLS Provisioning (L2/L3) which includes: 697 * Identifying Service PE's in all markets/cities where the 698 customer has identified they want service, 700 * Identifying one or more existing Servies PE's in each city with 701 connectivity to the access network(s) ( e.g.: SONET/TDM) used 702 to deliver the PE-CE tail circuits to the Service's PE), 704 * Obtain via query/notification the available capacity on 705 Services PE in both the PE-CE access interface and its uplinks 706 to terminate the tail circuit 708 * Providing the context in I2RS for an iterative query mechanism 709 needed by I2RS client attached to the the Topology to narrow 710 down the scope of resources to the set of Services PEs with the 711 appropriate uplink bandwidth and access circuit capability plus 712 capacity to realize the requested VPN service. 714 (from section 4.1.2) 716 o Topo-REQ-11 (NA): The VPN application attached to the I2RS client 717 should be able to hand the I2RS Client a candidate list of Service 718 PE's and associated access circuits to set up a Customer's VPN 719 service into the network. (from section 4.1.3) [Editor's note 720 This request shares requirements with VCoD-REQ-01.] 722 o Topo-REQ-12 (NA): The Topology Manager associated with the I2RS 723 client must be able to use the normalized view of the network to 724 set up additional queries (or notification publications) to 725 provide an accurate and comprehensive picture in order a) diagnose 726 faults/failures, and b) augment the network with additional 727 services, and c) provide network topology maps for different 728 purposes. (from section 4.1.3) 730 o Topo-REQ-13 (IC):The I2RS client-agent exchange and informational 731 models should support a Virtual Network Topology (VNT) comprise of 732 one or more LSPS and lower layer resources. The VNT of MPLS must 733 be able to link lower layer resources with the higher layer, and 734 present a normalize form the the PCE as defined [RFC5623]. 736 o Topo-REQ-14 (OC): The I2RS client-agent protocol and models should 737 support the use of a PCE to compute MPLS-TE paths within an 738 "domain" (IGP area), or across multiple "domains" (multi-area AS, 739 multiple ASes") as specified in [RFC4655]. This means the PCE 740 Informational model should support: 742 * enhanced computation in the single IGP domain 744 * cross-AS path computation based on the multiple entrance of 745 exit points from an AS, 747 * linking multiple PEs in multiple domains together, and 749 * synchronization of TED associated with the PCE to the topology 750 manager (via I2RS client/messages), and 752 * sending read/writes to the head-end-nodes 754 (section 4.3) 756 o Topo-REQ-15 (OC): the I2RS protocol and Information models should 757 support the ALTO ([RFC5693]) generation of abstract network 758 topology models and the APIs it support over web-service API. The 759 ALTO abstract network topology comes in two forms: Network Map 760 (based prefix-to PID mapping), and Cost map. The ALTO map is 761 automatically generated from BGP and IGP data which the ALTO 762 server queries from the network and makes available to 763 applications via web-service API. (from section 4.4) 765 6.4. Virtual Topology Data Model 767 The [I-D.medved-i2rs-topology-requirements] specifies the following 768 Topology Data Model requirements (IC): 770 VT-TDM-REQ1 (IC): The topology data model MAY be able to describe 771 topology and characteristics of the following layers: 773 * Optical DWDM (optional) (OC), 775 * Optical OTN (optional) (OC), 777 * L2 (Aggregated links, L2 topologies) (IC), 779 * IP/MPLS (IC), 781 * VPNs (IC), and 783 * Services (such as cloud services, or CDNs). 785 VT-TDM-REQ2 (IC): The topology data model MUST support multiple 786 Autonomous System deployments. 788 VT-TDM-REQ3 (IC): The I2RS topology data model must support 789 include topology information from multiple Administrative Domains 790 or multiple elements into a single common format. 792 VT-TDM-REQ4 (IC): The I2RS topology data model MUST be able to 793 convey enough information so that an I2RS client can correlate 794 topologies in different layers and multiple Autonomous Systems. 796 VT-TDM-REQ5 (NA): The topology data model MUST support multi-layer 797 group of elements as a means of coalescing different SFF Nodes and 798 links into a network layers from various layers. For example, 799 links with IPv4 addresses might represent Layer 3 of the network 800 topology while links with Ethernet MAC addresses might represent 801 Layer 2. 803 VT-TDM-REQ6 (IC): The topology model should allow association 804 between components of different layers. For example, Layer 2 port 805 may have several IPv4/IPv6 interfaces. The Layer-2 port and the 806 IPv4/IPv6 interfaces would have an association. 808 VT-TDM-REQ7 (NA): The topology model MUST represent both inactive 809 and active topologies in the topology Data base. Inactive 810 topologies may include new line cards, ports in down state, etc. 812 VT-TMF-DM-REQ8 (NA): The topology data model MUST be hierarchical 813 and MUST support summarization of sub-topologies. Topology 814 summarization and creation of abstract topologies can be provided 815 by either by the application associated with the I2RS client, or 816 by the I2RS Agent prior to transmission to the I2RS client. 818 VT-TDM-REQ9 (IC): The topology data model MUST be able to describe 819 abstract topologies. Abstract topologies can contain real and 820 abstract nodes and real and abstract links. An abstract topology 821 MAY be used by a provider to describe characteristics of a transit 822 network (bandwidth, delay, protection, etc.) 824 VT-TDM-REQ10 (OC): The topology data model MUST support dynamic 825 data, such as link and node utilizations (perhaps as optional 826 attributes). 828 VT-TDM-REQ11a (??): The topology data model MUST allow I2RS 829 client-agent to be able to identify and query for the path between 830 two nodes. 832 VT-TDM-REQ11b (OC): The topology data model should support the 833 I2RS Client requesting the I2RS Agent to trace the path at all 834 network layers that participate in the delivery of packets between 835 two nodes. This trace MAY involve either an I2RS Agent 836 information trace or the I2RS Agent requesting the routing 837 function trace the path at multiple levels (L3/L2.5/L2/L1) 839 VT-TDM-REQ12 (IC): The topology data model MUST support multiple 840 BGP Autonomous Systems and multiple IGP areas. Support for 841 multiple administrative domains is for further study. 843 VT-TDM-REQ13 (IC): The topology data model MUST be human-friendly, 844 i.e. not SNMP MIBs, but something much more analogous to YANG 845 models. 847 VT-TDM-REQ14 (IC): The data model SHOULD support topology 848 abstraction, allowing clients that consume topology information in 849 a constrained manner. For example, a client wishing to view only 850 interfaces and nodes present in a sub-graph of the Layer 3 851 topology should be able to specify an interest in this subset of 852 information rather than having to read out and parse through the 853 entire set of links and nodes. 855 6.5. Virtual Topology IP Data Model 857 The [I-D.medved-i2rs-topology-requirements] specifies the following 858 requirements for the Virtual Topology IP Data Model's IP/MPLS links 859 and topologies (IC): 861 o VT-TDM-IP-REQ1 (IC): The I2RS topology data model for the IP/MPLS 862 layer MUST support both link topology and prefixes, 864 o VT-TDM-IP-REQ2 (IC): The I2RS agent may import topology 865 information from the routing processes, IGP process, BGP-LS 866 information, or management processes. 868 o TM-DM-IP-REQ3 (IC): The I2RS SFC Data model must support links 869 that are IP/MPLS with the following attributes: 871 * local and Remote anchor node IDs (Router ID, AS#, Area ID, MT 872 topology), 874 * metrics, 876 * admin group, 878 * max bandwidth links 880 * unreserved/utilized bandwidth 882 * link-protection type 884 * MPLS protocol mask 886 * link prefix 888 * link characteristics (BW, Delay, error rate) 890 * Link Description, and 892 * Link-specific timers (Hello and Holddown). 894 6.6. Virtual Topology Network Element 896 The [I-D.medved-i2rs-topology-requirements] specifies the following 897 requirements (IC): 899 o VT-NE-01 (IC): Each network element should contain an inventory 900 data base which should be a definitive source of information with 901 respect to the physical HW and Logical, logically significant 902 identifiers (E.g. VLANs). The I2RS client should be able to 903 import data from this DB into the I2RS Node IM or SFC IM. 905 o VT-NE-02 (IC): The inventory DB of the network element should be 906 augmented with the physical properties associated with the ports/ 907 interfaces that are directly connected to the device (BW, media 908 type). The I2RS client should be able to import data from this 909 augmented DB into the I2RS Node IM or SFC IM. 911 o NE-3 (NA): The I2RS client may write information into the NE 912 inventory data base via the Network-element Data Model that the 913 network element may not be able to learn on its own. This 914 information may include the physical location (address), rack/bay 915 information. 917 7. Requirements from SFC Use Cases 919 The SFC use case document in [I-D.bitar-i2rs-service-chaining] 920 suggests that the following requirements (OC): 922 SFC-Use-REQ01 (IC):Address 924 has the following address requirements: 926 * IP address 928 * service-node tuple (service node IP address, Host system 929 address) 931 * host-node tuple (hosting system IP-address, system internal 932 identifier) 934 SFC-Use-REQ02 (IC):Supported Service Types 936 SHOULD include: NAT, IP Firewall, Load balancer, DPI, and others 938 SFC-Use-REQ03 (IC):Virtual contexts 940 SHOULD include: 942 * Maximum Number of virtual contexts supported 944 * Current number of virtual contexts in use 946 * Number of virtual contexts available 948 * Supported Context (VRF) 950 SFC-Use-REQ04 (IC): Customers currently on node 952 SFC-Use-REQ05 (IC): Customer Support Table (per customer ID) 954 * Customer-id 955 * List of supported Virtual Contexts 957 SFC-Use-REQ06 (OC): Service Resource table 959 which includes: 961 * index: Comprised of service node, virtual context, service type 963 * service bandwidth capacity 965 * supported packet rate (packets/second) 967 * supported bandwidth (kps) 969 * IP Forwarding support: specified as routing-instance(s), RIBs, 970 Address-families supported 972 * Maximum RIB-size (WG Note: problematic) 974 * Maximum Forward Data Base size (WG Note: problematic) 976 * Maximum Number of 64 bit statistics counters for policy 977 accounting 979 * Maximum number of supported flows for services (WG Note: 980 problematic) 982 SFC-Use-REQ07 (IC): Virtual Network Topology (VNT) 984 which includes: 986 * number of access points to which service topology applies 988 * topology of access points 990 8. Requirements from Traffic Steering Use Cases 992 The requirements from the Traffic Steering use case described in 993 [I-D.chen-i2rs-ts-use-case] are (OC): 995 o TS-REQ01 (IC): The I2RS Client-Agent must be able to collect the 996 topology (especially the exit links) and the traffic load of each 997 link; 999 o TS-REQ02 (IC): The I2RS Client-Agent must be able to read the 1000 local rib of each DC/Metro gateway and the policies deployed on 1001 each gateway; 1003 o TS-REQ03 (IC): The I2RS Client-Agent must be able to add or delete 1004 or modify the relevant rib items and relevant polices to steer the 1005 traffic as expected; and adjust traffic placement. 1007 o TS-REQ-04 (IC): The I2RS Client-Agent must have the ability to 1008 collect the LSP information either from the PCE or directly from 1009 network devices; 1011 o TS-REQ-05 (OC): The I2RS Client-Agent must have the ability to 1012 collect the traffic matrix of the network, this is used to help 1013 the I2RS client to determine how to adjust the traffic placement; 1015 o TS-REQ-06 (IC): The I2RS Client-Agent must have the ability to 1016 read the rib information and relevant policies of each network 1017 node; 1019 o TS-REQ-07 (OC):collect the topology and segment information needed 1020 to help the I2RS client to compute the end-to-end path; 1022 o TS-REQ-08 (OC):read rib (especially the segment routing rib) 1023 information; 1025 o TS-REQ-09 (??): add/delete/modify the segment rib, this finally 1026 determines how the traffic is forwarded. 1028 9. Requirements from MPLS TE Networks Use Cases 1030 Theses are the requirements from the Traffic Steering use case 1031 described in [I-D.huang-i2rs-mpls-te-usecases] (OC): 1033 o MPLS-TE-REQ-01 (OC): Network programming software managing the 1034 static CR-LSP devices may incorporate an I2RS Client along with a 1035 path calculation entity, a label management entity, and a 1036 bandwidth management entity. The I2RS Client should be abl to 1037 communicate the static configuration to the network nodes, and 1038 monitor the status of the CR-LSPs. 1040 o MPLS-TE-REQ-02 (OC): The I2Client should be able to synchronously 1041 send the configuration for all of the network nodes from egress 1042 node to ingress node via the I2RS Agents attached to each node, 1043 and be able to delay the final ingress node configuration until 1044 all the I2RS AGents on all other nodes toward the egress have 1045 denoted a successful path set-up. 1047 o MPLS-TE-REQ-03 (OC): MPLS TE defines abundant constraints such as 1048 explicit path, bandwidth, affinity, SRLG, priority, hop limit, and 1049 others. The I2RS Client Agent exchange should be able to signal 1050 concurrent local path calculation could obtain an optimized result 1051 and allow more services to be held in a TE network. The I2RS 1052 Agent should be able to trigger a global concurrent re- 1053 optimization at a specific time on multiple nodes by communicating 1054 with each node's I2RS agent. 1056 o MPLS-TE-REQ-04 (NA): The I2RS client should be able to manually 1057 calculate a re-optimization of the the MPLS TE network and send 1058 the new constraints including the calculated path to each node via 1059 the I2RS agent with an indication to re-signal the TE LSPs with 1060 make-before-break method. 1062 o MPLS-TE-REQ-05 (OC): With I2RS, the node's I2RS agent should be 1063 able to send to an I2RS client a status notification that not 1064 enough resources exist for a back up LSP and TE tunnel. Upon 1065 receiving this notification the I2RS client should be able to 1066 trigger concurrent calculation for the failed path calculation of 1067 the backup LSP or TE tunnel and send the updated paths to I2RS 1068 agents with a command to re-signal the TE LSPS with make-before- 1069 break Method. 1071 o MPLS-TE-REQ-06 (NA): With I2RS, upon receipt the failure 1072 notification from an I2RS Agent, the I2RS client would create a 1073 global concurrent optimization to handle the failure event. This 1074 would occur by the I2RS client signalling the I2RS agents on all 1075 nodes to: a) trigger a new concurrent calculation of the backup 1076 LSP or TE tunnel via failed path calculation, and b) re-signal 1077 updates to the TE LSPs process with a make-before-break method. 1079 o MPLS-TE-REQ-07 (NA): Upon receiving a signal an upgrade event 1080 signal (from operator), the I2RS client could calculate another 1081 path for the affected TE tunnels to deviate traffic away from the 1082 resource being upgraded, and then send the request to I2RS agents 1083 on the appropriate nodes to move the traffic. After the upgrade 1084 completes, the I2RS client can simply remove I2RS configurations 1085 causing the traffic to revert to the original path. Or, the I2RS 1086 can re-optimize the TE tunnels for another pathways (E.g. as a 1087 part of a sequence of upgrades). 1089 o MPLS-TE-REQ-08 (OC): I2RS agents can notify I2RS Clients of 1090 impending or existing MPLS TE overload conditions that might cause 1091 TE LSP rejections. This overload conditions include: due to CPU, 1092 memory, LSP label space, or LSP numbers. 1094 o MPLS-TE-09 (IC): Automatic bandwidth adjustment applications can 1095 also be linked to the I2RS clients need to monitor the traffic on 1096 TE tunnels in order to provide traffic analysis. The I2RS client 1097 should be able to read the TE Tunnel topology and the bandwidth 1098 analysis in order to automatically calculate a new path for the TE 1099 tunnel if it is needed. The I2RS Client also needs to be able to 1100 the I2RS agents in the nodes to install the new TE Tunnels with 1101 the make-before-break option. 1103 o MPLS-TE-REQ-10 (IC): With I2RS, the node failure or link failure 1104 can be part of the notification stream sent by an I2RS Agent to an 1105 I2RS Client on a centralized server gathering information. 1107 o MPLS-TE-REQ-11 (IC): The I2RS client can notify the I2RS agents on 1108 specific nodes (or devices) to re-signal TE LSPs one by one if 1109 there is a resource dependency. 1111 o MPLS-TE-REQ-12 (IC): The I2RS Client can gather the TE LSPs' state 1112 from I2RS Agents on all nodes in order to coordinate such handling 1113 of LSP resources. 1115 o MPLS-TE-REQ-13 (OC): The I2RS Clients collecting information from 1116 I2RS Agents can be arranged in a hierarchy to provide scaling of 1117 collections. An application hosting an I2RS client collecting 1118 information from I2RS Agents on nodes can have an I2RS Agent that 1119 reports combined information to a single location. 1121 10. Requirements from MPLS LDP Networks Use Cases 1123 These are the I2RS requirements for the MPLS LDP use case described 1124 in [I-D.chen-i2rs-mpls-ldp-usecases]: 1126 o MPLS-LDP-REQ-01 (IC): The I2RS Client-agent exchange should allow 1127 the distribution of the configuration for PWE3, MPLS LDP and 1128 associated protocols to be distributed from a central location 1129 where the global PWE3 provisioning information could be stored. 1130 The I2RS Client-Agent exchange should also be able to push the 1131 configuration of the local LDP LSR ID and peer addresses to set up 1132 the targeted session to the pseudowire endpoints. 1134 o MPLS-LDP-REQ-02 (IC): When an the end-user wants to disable 1135 IPoMPLS (IP over MPLS) application on a L2VPN/PW Targeted LDP 1136 session, the I2RS Client-I2RS agent should be able to set type of 1137 application over the established LDP session. In this way LDP 1138 speaker can only advertise to its peer the application data which 1139 the user is interested in. 1141 o MPLS-LDP-REQ-03 (OC): The I2RS Agent notifications should allow an 1142 I2RS client to subscribe to a stream of state changes regarding 1143 the LDP sessions or LDP LSPs from the I2RS Agent. Specifically it 1144 is important that LDP session is tract for sessions state coming 1145 up or going down. The I2RS Client-I2RS Agent exchange should 1146 allow additional queries to the AGent to determine a) why the 1147 service is invalid, b) calculating whether an alternate path 1148 should be switched to, and c) determining how to switch to other 1149 links or nodes in order to recover from the link failure or node 1150 failure. 1152 o MPLS-LDP-REQ04 (IC): The I2RS interface provides way to monitor 1153 and control the limited resources on these access devices. The 1154 I2RS client should be able to instruct the I2RS agent in each of 1155 these devices to set the maximum number of LDP LSPs in each device 1156 prior to enabling LDP on the devices. The I2RS client should also 1157 be able to enable a notification service on each device with a 1158 with a warning threshold. Once the number of LDP LSPs reaches the 1159 threshold, the I2RS agent will send a notification message to the 1160 I2RS client. Often the I2RS client will be associated a network 1161 management agent that can determine what next steps need to be 1162 done based on policy or operator input. 1164 11. Requirements from Mobile Backhaul Ues Cases 1166 Mobile BackHaul Use cases described in [draft-ietf-zhang-mbb- 1167 usecases-01] are: 1169 o MBH-REQ-01 (OC): The I2RS client-agent communication can 1170 distribute position-critical changes to IGP nodes using this 1171 global knowledge to quicken changes to support traffic during 1172 failures or traffic overloads. To enable this feature, the I2RS 1173 Clients-Agent communication needs to pass information on which IGP 1174 process or Level or Area the given node and links belong to. 1176 o MBH-REQ-02 (OC): I2RS must allow operators to use of I2RS clients 1177 to distribute time-critical changes in configuration to I2RS 1178 agents associated with each routing node. This feature will 1179 simplify and automate configuration and monitoring of a mobile 1180 backhaul network to allow it to readily adapt to changing network 1181 sizes (and scales) and radio applications. 1183 o MBB-REQ-03 (OC): I2RS Clients-Agent communication needs to pass 1184 information on: 1186 * T-LDP configurations and status; 1188 * BGP peer configurations, peer topologies and status; 1190 * BGP-based LSP topologies and status; 1192 * Reset VPN topologies, and per node configurations; 1194 o MBB-REQ04 (IC): Route policy enforcement in mobile backhaul 1195 networks needs to be more dynamic and flexible than the current 1196 methods take hours (or even days) to configure route policy across 1197 a network. The I2RS interface must provide a programmatic way to 1198 configure (both policy and device) and monitor thousands of 1199 devices individually whose configuration is based on the devices 1200 role (such as ASRSs in one AS, ASBRs between ASs and other 1201 service-touch nodes). 1203 o MBB-REQ-05 (NA): I2RS clients should be able to contact I2RS 1204 agents on nodes to query role-based information from the network 1205 status. After collecting the status, the I2RS client can develop 1206 the BGP policies based on role information and push the BGP 1207 policies to the I2RS agents that would load the alternate policies 1208 into the network device. The I2RS Agents loading the alternate 1209 policies could then send status back to the I2RS Client. 1211 o MBH-REQ06 (??): I2RS clients can provide centralized control of 1212 many network devices via the I2RS Client-Agent communication. The 1213 I2RS programmatic interface can automate the collection and 1214 analysis of each device's capability so that the centralized I2RS 1215 client could calculate the optimal LSP path and distribute the 1216 configuration to individual devices. Automation of the collection 1217 of device capability should be available as query, notification, 1218 or a published stream. 1220 o MBH-REQ07 (NA): While the I2RS RIB Information Model 1221 [[I-D.ietf-i2rs-rib-info-model]] provides for routes with tunnels 1222 or MPLS LSP, the features defined in this model are not sufficient 1223 to configure both types of LSPs needed for the VPN technology in 1224 mobile backhaul networks. Additional I2RS Informational models 1225 need to be created to support these features. 1227 o MBH-REQ08 (NA): The hierarchical protection architecture in mobile 1228 backhaul network offer high network reliability and more 1229 flexibility to meet the various needs of the tunnels and services. 1230 The I2RS interface in this use case is needed to automate the 1231 configuration and monitoring so that tunnel protection and service 1232 protection interwork in a flexible and reliable manner. 1234 o MBB-REQ09 (OC): The I2RS architecture (client-agent) should allow 1235 the two features for network monitoring naturally in its basic 1236 modes: 1238 * allow a combination of multi-layer network monitor tools with 1239 exact detection parameters to be configured on the network 1240 device 1242 * Facilitate the reporting the detection result as notification 1243 or publication stream 1245 It is important the result of these features allow the outages and 1246 traffic congestion or discards to be detected real-time with I2RS 1247 Client(s) in each node, and the detection result will be reported 1248 to the I2RS agents to get the exact status of the network. 1250 12. Requirements from Large Data Flows are 1252 Each of these requirements has been given an an ID number of L-Flow- 1253 nn for ease of reference. 1255 The requirements from the Large Data Flows use case described in 1256 [I-D.krishnan-i2rs-large-flow-use-case] are (IC): 1258 L-Flow-REQ-01 (IC): For redirecting large flows to a specific 1259 component, a PBR entry should be programmable for the flow with 1260 its nexthop that identifies the specific LAG or ECMP component. 1262 L-Flow-REQ-02 (IC): For adjusting the weights used to distribute 1263 traffic across components of the LAG or ECMP, I2RS should provide 1264 a programmable mechanism should be provided that identifies ECMP 1265 entries and is able to associate weights that can be programmed 1266 for each of the components. To do this in a scalable fashion, it 1267 would be useful to have the notion of an ECMP nexthop that is used 1268 by multiple routes 1270 L-Flow-REQ-03 (IC): The I2RS interface (protocol/IMs) should allow 1271 for a globally optimal path is programmed in the IP network using 1272 hop-by-hop PBR rules. These PBR rules may include: 1274 * Being able to adjust the weights of the ECMP table for 1275 different nexthops should be adjusted to factor the large flows 1277 * Being able to address an ECMP group, so that all routes sharing 1278 an ECMP group are addressed together. 1280 * the ability to program PBR entries at the edge LSR, and 1282 * the ability to program new LSPs in the network. 1284 L-Flow-REQ-04 (OC): The I2RS protocol should be able to invoke the 1285 link aggregation IEEE 802.1AX Marker Protocol via the I2RS 1286 protocol. This is useful during a period of rebalancing occurs 1287 before flows are moved. 1289 L-Flow-REQ-05 (IC): The I2rs protocol should allow Quality of 1290 Service (QoS) actions such as rate-limiting, re-marking, or 1291 discarding can be performed on the flows based on configured 1292 policies and nexthop redirection actions to be programmed, and to 1293 be programmed independently of of each other. 1295 L-Flow-REQ-06 (IC): Once a large flow has been detected, I2RS must 1296 be used to modify the forwarding tables in the router to: 1298 * In the case of large flow load balancing, be able to 1299 redirecting the large flow to a particular member with the LAG 1300 or ECMP group and readjusting the weights of the other members 1301 to account for the large flow 1303 * In the case of DDoS mitigation, the action involves rate 1304 limiting, remarking or potentially discarding the large flow in 1305 question. 1307 13. Large Data Collection Systems 1309 The requirements from the Large Data Collection Systems Use cases 1310 described in [draft-swhyte-i2rs-data-collection-system] are (OC): 1312 L-Data-REQ-01 (OC): I2rs must be able to collect large data set 1313 from the network with high frequency and resolution with minimal 1314 impact to the device's CPU and memory. 1316 L-Data-REQ-02 (IC): I2RS must be able to use a database model 1317 where the data on the network node must be able to be described in 1318 the I2RS exchange as the data plus the structure of the data. The 1319 I2RS management system consumes and understand the data only after 1320 it consumes and understand the database model or has been trained 1321 by vendor published model 1323 L-Data-REQ-03 (IC): I2RS should use a pub-sub model which allows 1324 scaling plus push or pull of data. 1326 L-Data-REQ-04 (IC): I2RS should support capability negotiation to 1327 inform a subscriber of the options for publication of data. The 1328 options include transport, security, and error handling. 1330 L-Data-REQ-05 (IC): The I2RS data tansfer should be format 1331 agnostic. This means the publisher and subscriber may agree upon 1332 XML, JSON, MTL, protobufs or any other format. 1334 L-Data-REQ-06 (IC): I2RS Transports must be able to be chosen by a 1335 I2RS Client-I2RS Agent pair. An I2RS Client-I2RS Agent pair 1336 should be allowed to negotiate the transport options from a list 1337 of options. 1339 L-DATA-REQ-07 (IC): The I2RS interface (protocol and IMs) should 1340 allow a subscribe to select portions of the data model. 1342 L-Data-REQ-08 (IC): The I2RS interface (protocol and IMs) should 1343 allow for multiple publish subscriptions at a time. 1345 L-Data-REQ-09 (IC): Timestaps should be associated with data that 1346 requires it. Not all data will require a time stamp. Additional 1347 time stamps may be added. 1349 L-Data-REQ-10 (IC): The I2RS should support the query and 1350 "introspection" of the data model. The Introspections provides 1351 support for data verification, easier inclusion in legacy data, 1352 and easier merging with data streams. 1354 L-Data-REQ-11 (IC): After the I2rs Client-Agent have exchanged 1355 capabilities, a database model, and filters used to select 1356 elements of the model to subscribe to, the framework should 1357 support a standard way to register for all the data desired, using 1358 whatever capabilities were advertised by the node. Once 1359 registration is complete, the control channel can be closed. 1360 Ensuring subscriptions are correct, complete, and replicated or 1361 not, is up to the overall system and not the agent on the network 1362 node. 1364 L-Data-REQ-12 (IC): The I2RS interface should support user 1365 subscriptions to data with the following parameters: 1367 * push of data synchronously or asynchronously via registered 1368 subscriptions 1370 * pull data off in a one-shot pull or in multiple sequences 1372 * provide dynamic subscriptions that can be setup via IPFIX feed 1374 * support of subscriber and consumer I2RS Client-agent pairs 1376 * allow remapping of a node's databases 1378 L-Data-REQ-13 (IC): The I2RS interface must handle and report 1379 errors that occur with data subscription, stale data, repeated 1380 transport failures, and other (yet unknown) errors 1382 14. CDNI 1384 The requirements from the Content Delivery Network Interaction 1385 described in [I-D.shin-i2rs-usecases-cdni-request-routing] are (OC): 1387 o CDNI-REQ-01 (OC): The I2RS interface should support two CDNI 1388 functionalities [I-D.ietf-cdni-framework]: 1390 * Request Routing Interface - Footprint and Capabilities 1391 Advertisement; the asynchronous advertisement of footprint and 1392 capabilities by a dCDN that allows a uCDN to decide whether to 1393 redirect particular user requests to that dCDN via the ALTO 1394 protocol; and 1396 * Request Routing Interface - Redirection; the synchronous 1397 operation of actually redirecting a user request via I2RS 1398 manipulation of the routing plane. 1400 o CDNI-REQ-02 (OC): The I2RS (Protocol and IM) should provide 1401 facilities to enable the query/response of information from an 1402 ALTO services in a node routing functions so that the upstream CDN 1403 provider can select a proper downstream CDN provider for a given 1404 end user request. 1406 o CDNI-REQ-03 (OC): I2RS (protocol and IM) should provide facilties 1407 to enable I2RS can help the upstream CDN provider to redirect a 1408 content request message to a downstream CDN provider for a given 1409 end user request as with the following features: 1411 * The uCDN relays this message between I2RS Clients and I2RS 1412 agents with content distribution metadata, and queries the dCDN 1413 whether user request message can be delivered. This query can 1414 have multiple dDCN that the user message can be delivered to. 1416 * the I2RS agent associated with the dCDN delivery requests 1417 indicating which dCDN (if any) the user message can be 1418 delivered to. 1420 * Allow dCDN to be managed to deliver content by having the 1421 messages to signal back to the uCDN the (destination (?)) iP 1422 address for the content, on the dCDN, and the pathway between 1423 the uCDN for surrogate deliver via the dCDN of user data. Part 1424 of this management is the passing of URL of the surrogate in 1425 dCDN (for HTTP Redirection to be transmitting) back from the 1426 dCDN to the uCDN so the uCDN can inform the end user. 1428 15. IANA Considerations 1430 This document makes no request of IANA. 1432 16. Security Considerations 1434 Routing information is very critical and sensitive information for 1435 the operators. I2RS should provide strong security mechanism to 1436 protect the routing information that it could not be accessed by the 1437 un-authorised users. It should also protect the security and 1438 integrity protection of the routing data. 1440 17. References 1442 17.1. Normative References 1444 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1445 Requirement Levels", BCP 14, RFC 2119, March 1997. 1447 [RFC3746] Yang, L., Dantu, R., Anderson, T., and R. Gopal, 1448 "Forwarding and Control Element Separation (ForCES) 1449 Framework", RFC 3746, April 2004. 1451 17.2. Informative References 1453 [I-D.amante-i2rs-topology-use-cases] 1454 Medved, J., Previdi, S., Lopez, V., and S. Amante, 1455 "Topology API Use Cases", draft-amante-i2rs-topology-use- 1456 cases-01 (work in progress), October 2013. 1458 [I-D.bitar-i2rs-service-chaining] 1459 Bitar, N., Heron, G., Fang, L., ramki, r., Leymann, N., 1460 Shah, H., and W. Haddad, "Interface to the Routing System 1461 (I2RS) for Service Chaining: Use Cases and Requirements", 1462 draft-bitar-i2rs-service-chaining-01 (work in progress), 1463 February 2014. 1465 [I-D.chen-i2rs-mpls-ldp-usecases] 1466 Chen, X. and Z. Li, "Use Cases for an Interface to LDP 1467 Protocol", draft-chen-i2rs-mpls-ldp-usecases-00 (work in 1468 progress), October 2013. 1470 [I-D.chen-i2rs-ts-use-case] 1471 Chen, M. and S. Hares, "I2RS Traffic Steering Use Case", 1472 draft-chen-i2rs-ts-use-case-01 (work in progress), July 1473 2014. 1475 [I-D.hares-i2rs-use-case-vn-vc] 1476 Hares, S. and M. Chen, "Use Cases for Virtual Connections 1477 on Demand (VCoD) and Virtual Network on Demand (VNoD) 1478 using Interface to Routing System", draft-hares-i2rs-use- 1479 case-vn-vc-03 (work in progress), July 2014. 1481 [I-D.huang-i2rs-mpls-te-usecases] 1482 Huang, T., Li, Z., and S. Hares, "Use Cases for an 1483 Interface to MPLS TE", draft-huang-i2rs-mpls-te- 1484 usecases-02 (work in progress), July 2014. 1486 [I-D.ietf-i2rs-architecture] 1487 Atlas, A., Halpern, J., Hares, S., Ward, D., and T. 1488 Nadeau, "An Architecture for the Interface to the Routing 1489 System", draft-ietf-i2rs-architecture-09 (work in 1490 progress), March 2015. 1492 [I-D.ietf-i2rs-problem-statement] 1493 Atlas, A., Nadeau, T., and D. Ward, "Interface to the 1494 Routing System Problem Statement", draft-ietf-i2rs- 1495 problem-statement-06 (work in progress), January 2015. 1497 [I-D.ietf-i2rs-rib-info-model] 1498 Bahadur, N., Folkes, R., Kini, S., and J. Medved, "Routing 1499 Information Base Info Model", draft-ietf-i2rs-rib-info- 1500 model-06 (work in progress), March 2015. 1502 [I-D.ietf-sfc-problem-statement] 1503 Quinn, P. and T. Nadeau, "Service Function Chaining 1504 Problem Statement", draft-ietf-sfc-problem-statement-13 1505 (work in progress), February 2015. 1507 [I-D.ji-i2rs-usecases-ccne-service] 1508 Ji, X., Zhuang, S., Huang, T., and S. Hares, "I2RS Use 1509 Cases for Control of Forwarding Path by Central Control 1510 Network Element (CCNE)", draft-ji-i2rs-usecases-ccne- 1511 service-02 (work in progress), July 2014. 1513 [I-D.keyupate-i2rs-bgp-usecases] 1514 Patel, K., Fernando, R., Gredler, H., Amante, S., White, 1515 R., and S. Hares, "Use Cases for an Interface to BGP 1516 Protocol", draft-keyupate-i2rs-bgp-usecases-04 (work in 1517 progress), July 2014. 1519 [I-D.krishnan-i2rs-large-flow-use-case] 1520 ramki, r., Ghanwani, A., Kini, S., McDysan, D., and D. 1521 Lopez, "Large Flow Use Cases for I2RS PBR and QoS", draft- 1522 krishnan-i2rs-large-flow-use-case-04 (work in progress), 1523 April 2014. 1525 [I-D.lapukhov-bgp-routing-large-dc] 1526 Lapukhov, P., Premji, A., and J. Mitchell, "Use of BGP for 1527 routing in large-scale data centers", draft-lapukhov-bgp- 1528 routing-large-dc-06 (work in progress), August 2013. 1530 [I-D.medved-i2rs-topology-requirements] 1531 Medved, J., Previdi, S., Gredler, H., Nadeau, T., and S. 1532 Amante, "Topology API Requirements", draft-medved-i2rs- 1533 topology-requirements-00 (work in progress), February 1534 2013. 1536 [I-D.shin-i2rs-usecases-cdni-request-routing] 1537 Shin, M. and S. Lee, "CDNI Request Routing with I2RS", 1538 draft-shin-i2rs-usecases-cdni-request-routing-00 (work in 1539 progress), July 2014. 1541 [I-D.swhyte-i2rs-data-collection-system] 1542 Whyte, S., Hines, M., and W. Kumari, "Bulk Network Data 1543 Collection System", draft-swhyte-i2rs-data-collection- 1544 system-00 (work in progress), October 2013. 1546 [I-D.white-i2rs-use-case] 1547 White, R., Hares, S., and A. Retana, "Protocol Independent 1548 Use Cases for an Interface to the Routing System", draft- 1549 white-i2rs-use-case-06 (work in progress), July 2014. 1551 [I-D.zhang-i2rs-mbb-usecases] 1552 Zhang, L., Li, Z., Liu, D., and S. Hares, "Use Cases of 1553 I2RS in Mobile Backhaul Network", draft-zhang-i2rs-mbb- 1554 usecases-01 (work in progress), February 2014. 1556 [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation 1557 Element (PCE)-Based Architecture", RFC 4655, August 2006. 1559 [RFC5212] Shiomoto, K., Papadimitriou, D., Le Roux, JL., Vigoureux, 1560 M., and D. Brungard, "Requirements for GMPLS-Based Multi- 1561 Region and Multi-Layer Networks (MRN/MLN)", RFC 5212, July 1562 2008. 1564 [RFC5286] Atlas, A. and A. Zinin, "Basic Specification for IP Fast 1565 Reroute: Loop-Free Alternates", RFC 5286, September 2008. 1567 [RFC5623] Oki, E., Takeda, T., Le Roux, JL., and A. Farrel, 1568 "Framework for PCE-Based Inter-Layer MPLS and GMPLS 1569 Traffic Engineering", RFC 5623, September 2009. 1571 [RFC5693] Seedorf, J. and E. Burger, "Application-Layer Traffic 1572 Optimization (ALTO) Problem Statement", RFC 5693, October 1573 2009. 1575 Authors' Addresses 1577 Susan Hares 1578 Huawei 1580 Email: shares@ndzh.com 1582 Mach Chen 1583 Huawei Technologies 1584 Huawei Bld., No.156 Beiqing Rd. 1585 Beijing 100095 1586 China 1588 Email: mach.chen@huawei.com