idnits 2.17.1 draft-ietf-i2nsf-applicability-12.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 : ---------------------------------------------------------------------------- ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (June 18, 2019) is 1764 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- No issues found here. Summary: 1 error (**), 0 flaws (~~), 1 warning (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 I2NSF Working Group J. Jeong 3 Internet-Draft Sungkyunkwan University 4 Intended status: Informational S. Hyun 5 Expires: December 20, 2019 Chosun University 6 T. Ahn 7 Korea Telecom 8 S. Hares 9 Huawei 10 D. Lopez 11 Telefonica I+D 12 June 18, 2019 14 Applicability of Interfaces to Network Security Functions to Network- 15 Based Security Services 16 draft-ietf-i2nsf-applicability-12 18 Abstract 20 This document describes the applicability of Interface to Network 21 Security Functions (I2NSF) to network-based security services in 22 Network Functions Virtualization (NFV) environments, such as 23 firewall, deep packet inspection, or attack mitigation engines. 25 Status of This Memo 27 This Internet-Draft is submitted in full conformance with the 28 provisions of BCP 78 and BCP 79. 30 Internet-Drafts are working documents of the Internet Engineering 31 Task Force (IETF). Note that other groups may also distribute 32 working documents as Internet-Drafts. The list of current Internet- 33 Drafts is at https://datatracker.ietf.org/drafts/current/. 35 Internet-Drafts are draft documents valid for a maximum of six months 36 and may be updated, replaced, or obsoleted by other documents at any 37 time. It is inappropriate to use Internet-Drafts as reference 38 material or to cite them other than as "work in progress." 40 This Internet-Draft will expire on December 20, 2019. 42 Copyright Notice 44 Copyright (c) 2019 IETF Trust and the persons identified as the 45 document authors. All rights reserved. 47 This document is subject to BCP 78 and the IETF Trust's Legal 48 Provisions Relating to IETF Documents 49 (https://trustee.ietf.org/license-info) in effect on the date of 50 publication of this document. Please review these documents 51 carefully, as they describe your rights and restrictions with respect 52 to this document. Code Components extracted from this document must 53 include Simplified BSD License text as described in Section 4.e of 54 the Trust Legal Provisions and are provided without warranty as 55 described in the Simplified BSD License. 57 Table of Contents 59 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 60 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 61 3. I2NSF Framework . . . . . . . . . . . . . . . . . . . . . . . 5 62 4. Time-dependent Web Access Control Service . . . . . . . . . . 6 63 5. I2NSF Framework with SFC . . . . . . . . . . . . . . . . . . 9 64 6. I2NSF Framework with SDN . . . . . . . . . . . . . . . . . . 11 65 6.1. Firewall: Centralized Firewall System . . . . . . . . . . 13 66 6.2. Deep Packet Inspection: Centralized VoIP/VoLTE Security 67 System . . . . . . . . . . . . . . . . . . . . . . . . . 14 68 6.3. Attack Mitigation: Centralized DDoS-attack Mitigation 69 System . . . . . . . . . . . . . . . . . . . . . . . . . 14 70 7. I2NSF Framework with NFV . . . . . . . . . . . . . . . . . . 15 71 8. Security Considerations . . . . . . . . . . . . . . . . . . . 17 72 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 18 73 10. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 18 74 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 19 75 11.1. Normative References . . . . . . . . . . . . . . . . . . 19 76 11.2. Informative References . . . . . . . . . . . . . . . . . 20 77 Appendix A. Changes from draft-ietf-i2nsf-applicability-10 . . . 22 78 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22 80 1. Introduction 82 Interface to Network Security Functions (I2NSF) defines a framework 83 and interfaces for interacting with Network Security Functions 84 (NSFs). Note that an NSF is defined as software that provides a set 85 of security-related services, such as (i) detecting unwanted 86 activity, (ii) blocking or mitigating the effect of such unwanted 87 activity in order to fulfil service requirements, and (iii) 88 supporting communication stream integrity and confidentiality 89 [i2nsf-terminology]. 91 The I2NSF framework allows heterogeneous NSFs developed by different 92 security solution vendors to be used in the Network Functions 93 Virtualization (NFV) environment [ETSI-NFV] by utilizing the 94 capabilities of such NSFs through I2NSF interfaces such as Customer- 95 Facing Interface [consumer-facing-inf-dm] and NSF-Facing Interface 96 [nsf-facing-inf-dm]. In the I2NSF framework, each NSF initially 97 registers the profile of its own capabilities with the Security 98 Controller (i.e., network operator management system [RFC8329]) of 99 the I2NSF system via the Registration Interface 100 [registration-inf-dm]. This registration enables an I2NSF User 101 (i.e., network security administrator) to select and use the NSF to 102 enforce a given security policy. Note that Developer's Management 103 System (DMS) is management software that provides a vendor's security 104 service software as a Virtual Network Function (VNF) in an NFV 105 environment (or middlebox in the legacy network) as an NSF, and 106 registers the capabilities of an NSF into Security Controller via 107 Registration Interface for a security service [RFC8329]. 109 Security Controller maintains the mapping between a capability and an 110 NSF, so it can perform to translate a high-level security policy 111 received from I2NSF User to a low-level security policy configured 112 and enforced in an NSF [policy-translation]. Security Controller can 113 monitor the states and security attacks in NSFs through NSF 114 monitoring [nsf-monitoring-dm]. 116 This document illustrates the applicability of the I2NSF framework 117 with four different scenarios: 119 1. The enforcement of time-dependent web access control. 121 2. The application of I2NSF to a Service Function Chaining (SFC) 122 environment [RFC7665]. 124 3. The integration of the I2NSF framework with Software-Defined 125 Networking (SDN) [RFC7149] to provide different security 126 functionality such as firewalls [opsawg-firewalls], Deep Packet 127 Inspection (DPI), and Distributed Denial of Service (DDoS) attack 128 mitigation. 130 4. The use of Network Functions Virtualization (NFV) [ETSI-NFV] as a 131 supporting technology. 133 The implementation of I2NSF in these scenarios has allowed us to 134 verify the applicability and effectiveness of the I2NSF framework for 135 a variety of use cases. 137 2. Terminology 139 This document uses the terminology described in [RFC7665], [RFC7149], 140 [ITU-T.Y.3300], [ONF-SDN-Architecture], [ITU-T.X.800], 141 [NFV-Terminology], [RFC8329], and [i2nsf-terminology]. In addition, 142 the following terms are defined below: 144 o Software-Defined Networking (SDN): A set of techniques that 145 enables to directly program, orchestrate, control, and manage 146 network resources, which facilitates the design, delivery and 147 operation of network services in a dynamic and scalable manner 148 [ITU-T.Y.3300]. 150 o Network Function: A functional block within a network 151 infrastructure that has well-defined external interfaces and well- 152 defined functional behavior [NFV-Terminology]. 154 o Network Security Function (NSF): Software that provides a set of 155 security-related services. Examples include detecting unwanted 156 activity and blocking or mitigating the effect of such unwanted 157 activity in order to fulfil service requirements. The NSF can 158 also help in supporting communication stream integrity and 159 confidentiality [i2nsf-terminology]. 161 o Network Functions Virtualization (NFV): A principle of separating 162 network functions (or network security functions) from the 163 hardware they run on by using virtual hardware abstraction 164 [NFV-Terminology]. 166 o Service Function Chaining (SFC): The execution of an ordered set 167 of abstract service functions (i.e., network functions) according 168 to ordering constraints that must be applied to packets, frames, 169 and flows selected as a result of classification. The implied 170 order may not be a linear progression as the architecture allows 171 for SFCs that copy to more than one branch, and also allows for 172 cases where there is flexibility in the order in which service 173 functions need to be applied [RFC7665]. 175 o Firewall: A service function at the junction of two network 176 segments that inspects some suspicious packets that attempt to 177 cross the boundary. It also rejects any packet that does not 178 satisfy certain criteria for, for example, disallowed port numbers 179 or IP addresses. 181 o Centralized Firewall System: A centralized firewall that can 182 establish and distribute policy rules into network resources for 183 efficient firewall management. 185 o Centralized VoIP Security System: A centralized security system 186 that handles the security functions required for VoIP and VoLTE 187 services. 189 o Centralized DDoS-attack Mitigation System: A centralized mitigator 190 that can establish and distribute access control policy rules into 191 network resources for efficient DDoS-attack mitigation. 193 +------------+ 194 | I2NSF User | 195 +------------+ 196 ^ 197 | Consumer-Facing Interface 198 v 199 +-------------------+ Registration +-----------------------+ 200 |Security Controller|<-------------------->|Developer's Mgmt System| 201 +-------------------+ Interface +-----------------------+ 202 ^ 203 | NSF-Facing Interface 204 v 205 +----------------+ +---------------+ +-----------------------+ 206 | NSF-1 |-| NSF-2 |...| NSF-n | 207 | (Firewall) | | (Web Filter) | |(DDoS-Attack Mitigator)| 208 +----------------+ +---------------+ +-----------------------+ 210 Figure 1: I2NSF Framework 212 3. I2NSF Framework 214 This section summarizes the I2NSF framework as defined in [RFC8329]. 215 As shown in Figure 1, an I2NSF User can use security functions by 216 delivering high-level security policies, which specify security 217 requirements that the I2NSF user wants to enforce, to the Security 218 Controller via the Consumer-Facing Interface 219 [consumer-facing-inf-dm]. 221 The Security Controller receives and analyzes the high-level security 222 policies from an I2NSF User, and identifies what types of security 223 capabilities are required to meet these high-level security policies. 224 The Security Controller then identifies NSFs that have the required 225 security capabilities, and generates low-level security policies for 226 each of the NSFs so that the high-level security policies are 227 eventually enforced by those NSFs [policy-translation]. Finally, the 228 Security Controller sends the generated low-level security policies 229 to the NSFs via the NSF-Facing Interface [nsf-facing-inf-dm]. 231 As shown in Figure 1, with a Developer's Management System (called 232 DMS), developers (or vendors) inform the Security Controller of the 233 capabilities of the NSFs through the Registration Interface 234 [registration-inf-dm] for registering (or deregistering) the 235 corresponding NSFs. 237 The Consumer-Facing Interface can be implemented with the Consumer- 238 Facing Interface YANG data model [consumer-facing-inf-dm] using 239 RESTCONF [RFC8040] which befits a web-based user interface for an 240 I2NSF User to send a Security Controller a high-level security 241 policy. Data models specified by YANG [RFC6020] describe high-level 242 security policies to be specified by an I2NSF User. The data model 243 defined in [consumer-facing-inf-dm] can be used for the I2NSF 244 Consumer-Facing Interface. Note that an inside attacker at the I2NSF 245 User can misuse the I2NSF system so that the network system under the 246 I2NSF system is vulnerable to security attacks. To handle this type 247 of threat, the Security Controller needs to monitor the activities of 248 all the I2NSF Users as well as the NSFs through the I2NSF NSF 249 monitoring functionality [nsf-monitoring-dm]. Note that the 250 monitoring of the I2NSF Users is out of scope of I2NSF. 252 The NSF-Facing Interface can be implemented with the NSF-Facing 253 Interface YANG data model [nsf-facing-inf-dm] using NETCONF [RFC6241] 254 which befits a command-line-based remote-procedure call for a 255 Security Controller to configure an NSF with a low-level security 256 policy. Data models specified by YANG [RFC6020] describe low-level 257 security policies for the sake of NSFs, which are translated from the 258 high-level security policies by the Security Controller. The data 259 model defined in [nsf-facing-inf-dm] can be used for the I2NSF NSF- 260 Facing Interface. 262 The Registration Interface can be implemented with the Registration 263 Interface YANG data model [registration-inf-dm] using NETCONF 264 [RFC6241] which befits a command-line-based remote-procedure call for 265 a DMS to send a Security Controller an NSF's capability information. 266 Data models specified by YANG [RFC6020] describe the registration of 267 an NSF's capabilities to enforce security services at the NSF. The 268 data model defined in [registration-inf-dm] can be used for the I2NSF 269 Registration Interface. 271 The I2NSF framework can chain multiple NSFs to implement low-level 272 security policies with the SFC architecture [RFC7665]. 274 The following sections describe different security service scenarios 275 illustrating the applicability of the I2NSF framework. 277 4. Time-dependent Web Access Control Service 279 This service scenario assumes that an enterprise network 280 administrator wants to control the staff members' access to a 281 particular Internet service (e.g., Example.com) during business 282 hours. The following is an example high-level security policy rule 283 for a web filter that the administrator requests: Block the staff 284 members' access to Example.com from 9 AM (i.e., 09:00) to 6 PM (i.e., 285 18:00) by dropping their packets. Figure 2 is an example XML code 286 for this web filter that is sent from the I2NSF User to the Security 287 Controller via the Consumer-Facing Interface 288 [consumer-facing-inf-dm]: 290 291 292 block_website 293 294 block_website_during_working_hours 295 296 297 09:00 298 18:00 299 300 301 302 303 304 Staff_Member's_PC 305 306 307 308 309 Example.com 310 311 312 313 314 drop 315 316 317 319 Figure 2: An XML Example for Time-based Web-filter 321 The security policy name is "block_website" with the tag "policy- 322 name", and the security policy rule name is 323 "block_website_during_working_hours" with the tag "rule-name". The 324 filtering event has the time span where the filtering begin time is 325 the time "09:00" (i.e., 9:00AM) with the tag "begin-time", and the 326 filtering end time is the time "18:00" (i.e., 6:00PM) with the tag 327 "end-time". The filtering condition has the source target of 328 "Staff_Member's_PC" with the tag "src-target", the destination target 329 of a website "Example.com" with the tag "dest-target". The action is 330 to "drop" the packets satisfying the above event and condition with 331 the tag "primary-action". 333 After receiving the high-level security policy, the Security 334 Controller identifies required security capabilities, e.g., IP 335 address and port number inspection capabilities and URL inspection 336 capability. In this scenario, it is assumed that the IP address and 337 port number inspection capabilities are required to check whether a 338 received packet is an HTTP packet from a staff member. The URL 339 inspection capability is required to check whether the target URL of 340 a received packet is in the Example.com domain or not. 342 The Security Controller maintains the security capabilities of each 343 active NSF in the I2NSF system, which have been reported by the 344 Developer's Management System via the Registration interface. Based 345 on this information, the Security Controller identifies NSFs that can 346 perform the IP address and port number inspection and URL inspection 347 [policy-translation]. In this scenario, it is assumed that a 348 firewall NSF has the IP address and port number inspection 349 capabilities and a web filter NSF has URL inspection capability. 351 The Security Controller generates low-level security rules for the 352 NSFs to perform IP address and port number inspection, URL 353 inspection, and time checking. Specifically, the Security Controller 354 may interoperate with an access control server in the enterprise 355 network in order to retrieve the information (e.g., IP address in 356 use, company identifier (ID), and role) of each employee that is 357 currently using the network. Based on the retrieved information, the 358 Security Controller generates low-level security rules to check 359 whether the source IP address of a received packet matches any one 360 being used by a staff member. In addition, the low-level security 361 rules should be able to determine that a received packet is of HTTP 362 protocol. The low-level security rules for web filter check that the 363 target URL field of a received packet is equal to Example.com. 364 Finally, the Security Controller sends the low-level security rules 365 of the IP address and port number inspection to the firewall NSF and 366 the low-level rules for URL inspection to the web filter NSF. 368 The following describes how the time-dependent web access control 369 service is enforced by the NSFs of firewall and web filter. 371 1. A staff member tries to access Example.com during business hours, 372 e.g., 10 AM. 374 2. The packet is forwarded from the staff member's device to the 375 firewall, and the firewall checks the source IP address and port 376 number. Now the firewall identifies the received packet is an 377 HTTP packet from the staff member. 379 3. The firewall triggers the web filter to further inspect the 380 packet, and the packet is forwarded from the firewall to the web 381 filter. The SFC architecture [RFC7665] can be utilized to 382 support such packet forwarding in the I2NSF framework. 384 4. The web filter checks the target URL field of the received 385 packet, and realizes the packet is toward Example.com. The web 386 filter then checks that the current time is in business hours. 387 If so, the web filter drops the packet, and consequently the 388 staff member's access to Example.com during business hours is 389 blocked. 391 +------------+ 392 | I2NSF User | 393 +------------+ 394 ^ 395 | Consumer-Facing Interface 396 v 397 +-------------------+ Registration +-----------------------+ 398 |Security Controller|<-------------------->|Developer's Mgmt System| 399 +-------------------+ Interface +-----------------------+ 400 ^ ^ 401 | | NSF-Facing Interface 402 | |------------------------- 403 | | 404 | NSF-Facing Interface | 405 +-----v-----------+ +------v-------+ 406 | +-----------+ | ------>| NSF-1 | 407 | |Classifier | | | | (Firewall) | 408 | +-----------+ | | +--------------+ 409 | +-----+ |<-----| +--------------+ 410 | | SFF | | |----->| NSF-2 | 411 | +-----+ | | | (DPI) | 412 +-----------------+ | +--------------+ 413 | . 414 | . 415 | . 416 | +-----------------------+ 417 ------>| NSF-n | 418 |(DDoS-Attack Mitigator)| 419 +-----------------------+ 421 Figure 3: An I2NSF Framework with SFC 423 5. I2NSF Framework with SFC 425 In the I2NSF architecture, an NSF can trigger an advanced security 426 action (e.g., DPI or DDoS attack mitigation) on a packet based on the 427 result of its own security inspection of the packet. For example, a 428 firewall triggers further inspection of a suspicious packet with DPI. 429 For this advanced security action to be fulfilled, the suspicious 430 packet should be forwarded from the current NSF to the successor NSF. 431 SFC [RFC7665] is a technology that enables this advanced security 432 action by steering a packet with multiple service functions (e.g., 433 NSFs), and this technology can be utilized by the I2NSF architecture 434 to support the advanced security action. 436 Figure 3 shows an I2NSF framework with the support of SFC. As shown 437 in the figure, SFC generally requires classifiers and service 438 function forwarders (SFFs); classifiers are responsible for 439 determining which service function path (SFP) (i.e., an ordered 440 sequence of service functions) a given packet should pass through, 441 according to pre-configured classification rules, and SFFs perform 442 forwarding the given packet to the next service function (e.g., NSF) 443 on the SFP of the packet by referring to their forwarding tables. In 444 the I2NSF architecture with SFC, the Security Controller can take 445 responsibilities of generating classification rules for classifiers 446 and forwarding tables for SFFs. By analyzing high-level security 447 policies from I2NSF users, the Security Controller can construct SFPs 448 that are required to meet the high-level security policies, generates 449 classification rules of the SFPs, and then configures classifiers 450 with the classification rules over NSF-Facing Interface so that 451 relevant traffic packets can follow the SFPs. Also, based on the 452 global view of NSF instances available in the system, the Security 453 Controller constructs forwarding tables, which are required for SFFs 454 to forward a given packet to the next NSF over the SFP, and 455 configures SFFs with those forwarding tables over NSF-Facing 456 Interface. 458 To trigger an advanced security action in the I2NSF architecture, the 459 current NSF appends metadata describing the security capability 460 required to the suspicious packet via a network service header (NSH) 461 [RFC8300]. It then sends the packet to the classifier. Based on the 462 metadata information, the classifier searches an SFP which includes 463 an NSF with the required security capability, changes the SFP-related 464 information (e.g., service path identifier and service index 465 [RFC8300]) of the packet with the new SFP that has been found, and 466 then forwards the packet to the SFF. When receiving the packet, the 467 SFF checks the SFP-related information such as the service path 468 identifier and service index contained in the packet and forwards the 469 packet to the next NSF on the SFP of the packet, according to its 470 forwarding table. 472 +------------+ 473 | I2NSF User | 474 +------------+ 475 ^ 476 | Consumer-Facing Interface 477 v 478 +-------------------+ Registration +-----------------------+ 479 |Security Controller|<-------------------->|Developer's Mgmt System| 480 +-------------------+ Interface +-----------------------+ 481 ^ ^ 482 | | NSF-Facing Interface 483 | v 484 | +----------------+ +---------------+ +-----------------------+ 485 | | NSF-1 |-| NSF-2 |...| NSF-n | 486 | | (Firewall) | | (DPI) | |(DDoS-Attack Mitigator)| 487 | +----------------+ +---------------+ +-----------------------+ 488 | 489 | 490 | SDN Network 491 +--|----------------------------------------------------------------+ 492 | V NSF-Facing Interface | 493 | +----------------+ | 494 | | SDN Controller | | 495 | +----------------+ | 496 | ^ | 497 | | SDN Southbound Interface | 498 | v | 499 | +--------+ +------------+ +--------+ +--------+ | 500 | |Switch-1|-| Switch-2 |-|Switch-3|.......|Switch-m| | 501 | | | |(Classifier)| | (SFF) | | | | 502 | +--------+ +------------+ +--------+ +--------+ | 503 +-------------------------------------------------------------------+ 505 Figure 4: An I2NSF Framework with SDN Network 507 6. I2NSF Framework with SDN 509 This section describes an I2NSF framework with SDN for I2NSF 510 applicability and use cases, such as firewall, deep packet 511 inspection, and DDoS-attack mitigation functions. SDN enables some 512 packet filtering rules to be enforced in network forwarding elements 513 (e.g., switch) by controlling their packet forwarding rules. By 514 taking advantage of this capability of SDN, it is possible to 515 optimize the process of security service enforcement in the I2NSF 516 system. For example, for efficient firewall services, simple packet 517 filtering can be performed by SDN forwarding elements (e.g., 518 switches), and complicated packet filtering based on packet payloads 519 can be performed by a firewall NSF. This optimized firewall using 520 both SDN forwarding elements and a firewall NSF is more efficient 521 than a firewall where SDN forwarding elements forward all the packets 522 to a firewall NSF for packet filtering. This is because packets to 523 be filtered out can be early dropped by SDN forwarding elements 524 without consuming further network bandwidth due to the forwarding of 525 the packets to the firewall NSF. 527 Figure 4 shows an I2NSF framework [RFC8329] with SDN networks to 528 support network-based security services. In this system, the 529 enforcement of security policy rules is divided into the SDN 530 forwarding elements (e.g., a switch running as either a hardware 531 middle box or a software virtual switch) and NSFs (e.g., a firewall 532 running in a form of a VNF [ETSI-NFV]). Note that NSFs are created 533 or removed by the NFV Management and Orchestration (MANO) 534 [ETSI-NFV-MANO], performing the lifecycle management of NSFs as VNFs. 535 Refer to Section 7 for the detailed discussion of the NSF lifecycle 536 management in the NFV MANO for I2NSF. For security policy 537 enforcement (e.g., packet filtering), the Security Controller 538 instructs the SDN Controller via NSF-Facing Interface so that SDN 539 forwarding elements can perform the required security services with 540 flow tables under the supervision of the SDN Controller. 542 As an example, let us consider two different types of security rules: 543 Rule A is a simple packet filtering rule that checks only the IP 544 address and port number of a given packet, whereas rule B is a time- 545 consuming packet inspection rule for analyzing whether an attached 546 file being transmitted over a flow of packets contains malware. Rule 547 A can be translated into packet forwarding rules of SDN forwarding 548 elements and thus be enforced by these elements. In contrast, rule B 549 cannot be enforced by forwarding elements, but it has to be enforced 550 by NSFs with anti-malware capability. Specifically, a flow of 551 packets is forwarded to and reassembled by an NSF to reconstruct the 552 attached file stored in the flow of packets. The NSF then analyzes 553 the file to check the existence of malware. If the file contains 554 malware, the NSF drops the packets. 556 In an I2NSF framework with SDN, the Security Controller can analyze 557 given security policy rules and automatically determine which of the 558 given security policy rules should be enforced by SDN forwarding 559 elements and which should be enforced by NSFs. If some of the given 560 rules requires security capabilities that can be provided by SDN 561 forwarding elements, then the Security Controller instructs the SDN 562 Controller via NSF-Facing Interface so that SDN forwarding elements 563 can enforce those security policy rules with flow tables under the 564 supervision of the SDN Controller. Or if some rules require security 565 capabilities that cannot be provided by SDN forwarding elements but 566 by NSFs, then the Security Controller instructs relevant NSFs to 567 enforce those rules. 569 The distinction between software-based SDN forwarding elements and 570 NSFs, which can both run as VNFs, may be necessary for some 571 management purposes in this system. Note that an SDN forwarding 572 element (i.e., switch) is a specific type of VNF rather than an NSF 573 because an NSF is for security services rather than for packet 574 forwarding. For this distinction, we can take advantage of the NFV 575 MANO where there is a subsystem that maintains the descriptions of 576 the capabilities each VNF can offer [ETSI-NFV-MANO]. This subsystem 577 can determine whether a given software element (VNF instance) is an 578 NSF or a virtualized SDN switch. For example, if a VNF instance has 579 anti-malware capability according to the description of the VNF, it 580 could be considered as an NSF. A VNF onboarding system 581 [VNF-ONBOARDING] can be used as such a subsystem that maintains the 582 descriptions of each VNF to tell whether a VNF instance is for an NSF 583 or for a virtualized SDN switch. 585 For the support of SFC in the I2NSF framework with SDN, as shown in 586 Figure 4, network forwarding elements (e.g., switch) can play the 587 role of either SFC Classifier or SFF, which are explained in 588 Section 5. Classifier and SFF have an NSF-Facing Interface with 589 Security Controller. This interface is used to update security 590 service function chaining information for traffic flows. For 591 example, when it needs to update an SFP for a traffic flow in an SDN 592 network, as shown in Figure 4, SFF (denoted as Switch-3) asks 593 Security Controller to update the SFP for the traffic flow (needing 594 another security service as an NSF) via NSF-Facing Interface. This 595 update lets Security Controller ask Classifier (denoted as Switch-2) 596 to update the mapping between the traffic flow and SFP in Classifier 597 via NSF-Facing Interface. 599 The following subsections introduce three use cases from [RFC8192] 600 for cloud-based security services: (i) firewall system, (ii) deep 601 packet inspection system, and (iii) attack mitigation system. 603 6.1. Firewall: Centralized Firewall System 605 A centralized network firewall can manage each network resource and 606 apply common rules to individual network elements (e.g., switch). 607 The centralized network firewall controls each forwarding element, 608 and firewall rules can be added or deleted dynamically. 610 A time-based firewall can be enforced with packet filtering rules and 611 a time span (e.g., work hours). With this time-based firewall, a 612 time-based security policy can be enforced, as explained in 613 Section 4. For example, employees at a company are allowed to access 614 social networking service websites during lunch time or after work 615 hours. 617 6.2. Deep Packet Inspection: Centralized VoIP/VoLTE Security System 619 A centralized VoIP/VoLTE security system can monitor each VoIP/VoLTE 620 flow and manage VoIP/VoLTE security rules, according to the 621 configuration of a VoIP/VoLTE security service called VoIP Intrusion 622 Prevention System (IPS). This centralized VoIP/VoLTE security system 623 controls each switch for the VoIP/VoLTE call flow management by 624 manipulating the rules that can be added, deleted or modified 625 dynamically. 627 The centralized VoIP/VoLTE security system can cooperate with a 628 network firewall to realize VoIP/VoLTE security service. 629 Specifically, a network firewall performs the basic security check of 630 an unknown flow's packet observed by a switch. If the network 631 firewall detects that the packet is an unknown VoIP call flow's 632 packet that exhibits some suspicious patterns, then it triggers the 633 VoIP/VoLTE security system for more specialized security analysis of 634 the suspicious VoIP call packet. 636 6.3. Attack Mitigation: Centralized DDoS-attack Mitigation System 638 A centralized DDoS-attack mitigation can manage each network resource 639 and configure rules to each switch for DDoS-attack mitigation (called 640 DDoS-attack Mitigator) on a common server. The centralized DDoS- 641 attack mitigation system defends servers against DDoS attacks outside 642 the private network, that is, from public networks. 644 Servers are categorized into stateless servers (e.g., DNS servers) 645 and stateful servers (e.g., web servers). For DDoS-attack 646 mitigation, the forwarding of traffic flows in switches can be 647 dynamically configured such that malicious traffic flows are handled 648 by the paths separated from normal traffic flows in order to minimize 649 the impact of those malicious traffic on the servers. This flow path 650 separation can be done by a flow forwarding path management scheme 651 based on [AVANT-GUARD]. This management should consider the load 652 balance among the switches for the defense against DDoS attacks. 654 So far this section has described the three use cases for network- 655 based security services using the I2NSF framework with SDN networks. 656 To support these use cases in the proposed data-driven security 657 service framework, YANG data models described in 658 [consumer-facing-inf-dm], [nsf-facing-inf-dm], and 659 [registration-inf-dm] can be used as Consumer-Facing Interface, NSF- 660 Facing Interface, and Registration Interface, respectively, along 661 with RESTCONF [RFC8040] and NETCONF [RFC6241]. 663 +--------------------+ 664 +-------------------------------------------+ | ---------------- | 665 | I2NSF User (OSS/BSS) | | | NFV | | 666 +------+------------------------------------+ | | Orchestrator +-+ | 667 | Consumer-Facing Interface | -----+---------- | | 668 +------|------------------------------------+ | | | | 669 | -----+---------- (a) ----------------- | | ----+----- | | 670 | | Security +-------+ Developer's | | | | | | | 671 | |Controller(EM)| |Mgmt System(EM)| +-(b)-+ VNFM(s)| | | 672 | -----+---------- ----------------- | | | | | | 673 | | NSF-Facing Interface | | ----+----- | | 674 | ----+----- ----+----- ----+----- | | | | | 675 | |NSF(VNF)| |NSF(VNF)| |NSF(VNF)| | | | | | 676 | ----+----- ----+----- ----+----- | | | | | 677 | | | | | | | | | 678 +------|-------------|-------------|--------+ | | | | 679 | | | | | | | 680 +------+-------------+-------------+--------+ | | | | 681 | NFV Infrastructure (NFVI) | | | | | 682 | ----------- ----------- ----------- | | | | | 683 | | Virtual | | Virtual | | Virtual | | | | | | 684 | | Compute | | Storage | | Network | | | | | | 685 | ----------- ----------- ----------- | | ----+----- | | 686 | +---------------------------------------+ | | | | | | 687 | | Virtualization Layer | +-----+ VIM(s) +------+ | 688 | +---------------------------------------+ | | | | | 689 | +---------------------------------------+ | | ---------- | 690 | | ----------- ----------- ----------- | | | | 691 | | | Compute | | Storage | | Network | | | | | 692 | | | Hardware| | Hardware| | Hardware| | | | | 693 | | ----------- ----------- ----------- | | | | 694 | | Hardware Resources | | | NFV Management | 695 | +---------------------------------------+ | | and Orchestration | 696 | | | (MANO) | 697 +-------------------------------------------+ +--------------------+ 698 (a) = Registration Interface 699 (b) = Ve-Vnfm Interface 701 Figure 5: I2NSF Framework Implementation with respect to the NFV 702 Reference Architectural Framework 704 7. I2NSF Framework with NFV 706 This section discusses the implementation of the I2NSF framework 707 using Network Functions Virtualization (NFV). 709 NFV is a promising technology for improving the elasticity and 710 efficiency of network resource utilization. In NFV environments, 711 NSFs can be deployed in the forms of software-based virtual instances 712 rather than physical appliances. Virtualizing NSFs makes it possible 713 to rapidly and flexibly respond to the amount of service requests by 714 dynamically increasing or decreasing the number of NSF instances. 715 Moreover, NFV technology facilitates flexibly including or excluding 716 NSFs from multiple security solution vendors according to the changes 717 on security requirements. In order to take advantages of the NFV 718 technology, the I2NSF framework can be implemented on top of an NFV 719 infrastructure as show in Figure 5. 721 Figure 5 shows an I2NSF framework implementation based on the NFV 722 reference architecture that the European Telecommunications Standards 723 Institute (ETSI) defines [ETSI-NFV]. The NSFs are deployed as VNFs 724 in Figure 5. The Developer's Management System (DMS) in the I2NSF 725 framework is responsible for registering capability information of 726 NSFs into the Security Controller. However, those NSFs are created 727 or removed by a virtual network function manager (VNFM) in the NFV 728 MANO that performs the lifecycle management of VNFs. Note that the 729 lifecycle management of VNFs is out of scope of I2NSF. The Security 730 Controller controls and monitors the configurations (e.g., function 731 parameters and security policy rules) of VNFs via the NSF-Facing 732 Interface along with the NSF monitoring capability 733 [nsf-facing-inf-dm][nsf-monitoring-dm]. Both the DMS and Security 734 Controller can be implemented as the Element Managements (EMs) in the 735 NFV architecture. Finally, the I2NSF User can be implemented as OSS/ 736 BSS (Operational Support Systems/Business Support Systems) in the NFV 737 architecture that provides interfaces for users in the NFV system. 739 The operation procedure in the I2NSF framework based on the NFV 740 architecture is as follows: 742 1. The VNFM has a set of virtual machine (VM) images of NSFs, and 743 each VM image can be used to create an NSF instance that provides 744 a set of security capabilities. The DMS initially registers a 745 mapping table of the ID of each VM image and the set of 746 capabilities that can be provided by an NSF instance created from 747 the VM image into the Security Controller. 749 2. If the Security Controller does not have any instantiated NSF 750 that has the set of capabilities required to meet the security 751 requirements from users, it searches the mapping table 752 (registered by the DMS) for the VM image ID corresponding to the 753 required set of capabilities. 755 3. The Security Controller requests the DMS to instantiate an NSF 756 with the VM image ID via VNFM. 758 4. When receiving the instantiation request, the VNFM first asks the 759 NFV orchestrator for the permission required to create the NSF 760 instance, requests the VIM to allocate resources for the NSF 761 instance, and finally creates the NSF instance based on the 762 allocated resources. 764 5. Once the NSF instance has been created by the VNFM, the DMS 765 performs the initial configurations of the NSF instance and then 766 notifies the Security Controller of the NSF instance. 768 6. After being notified of the created NSF instance, the Security 769 Controller delivers low-level security policy rules to the NSF 770 instance for policy enforcement. 772 We can conclude that the I2NSF framework can be implemented based on 773 the NFV architecture framework. Note that the registration of the 774 capabilities of NSFs is performed through the Registration Interface 775 and the lifecycle management for NSFs (VNFs) is performed through the 776 Ve-Vnfm interface between the DMS and VNFM, as shown in Figure 5. 778 8. Security Considerations 780 The same security considerations for the I2NSF framework [RFC8329] 781 are applicable to this document. 783 This document shares all the security issues of SDN that are 784 specified in the "Security Considerations" section of [ITU-T.Y.3300]. 786 Note that an inside attacker (or supply chain attacker) at the DMS 787 can seriously weaken the I2NSF system's security. Note that a 788 malicious NSF provider (as a DMS) is relevant to an insider attack, 789 and a compromised NSF provider is relevant to a supply chain attack. 790 Also, note that a malicious (or compromised) DMS sending the wrong 791 NSF may not modify the original code of the NSF but may alter the 792 sent NSF as an instant. As a result, a malicious (or compromised) 793 DMS can attack the Security Controller by providing the Security 794 Controller with malicious (or compromised) NSFs, and controlling 795 those NSFs in real time. Also, an unwitting DMS vendor could be 796 compromised and their infrastructure could be coerced into 797 distributing modified NSFs. To deal with these types of threats, the 798 role of the DMS should be restricted to providing an I2NSF system 799 with the software package/image for NSF execution, and the DMS should 800 never be able to access NSFs in activated status for the I2NSF 801 system's security. On the other hand, an access to active NSFs 802 should be allowed only to the Security Controller, not the DMS during 803 the provisioning time of those NSFs to the I2NSF system. However, 804 note that an inside attacker (or supply chain attacker) can access 805 the active NSFs, which are being executed as either VNFs or 806 middleboxes in the I2NSF system, through a back door (i.e., an IP 807 address and a port number that are known to the DMS to control an 808 NSF). However, the Security Controller may detect and prevent those 809 inside attacks (or supply chain attacks) by monitoring the activities 810 of all the DMSs as well as the NSFs through the I2NSF NSF Monitoring 811 Interface [nsf-monitoring-dm] as part of the I2NSF NSF-Facing 812 Interface. Through the NSF Monitoring Interface, the Security 813 Controller can monitor the activities and states of NSFs, and then 814 can make a diagnosis to see whether the NSFs are working in normal 815 conditions or in abnormal conditions including the insider threats 816 (or supply chain threats). Note that the monitoring of the DMSs is 817 out of scope of I2NSF. However, as a general caution, a mitigation 818 strategy for insider attacks and supply chain attacks is not to use 819 an NSF without prior testing for an automated security action in the 820 I2NSF system. 822 9. Acknowledgments 824 This work was supported by Institute for Information & communications 825 Technology Promotion (IITP) grant funded by the Korea government 826 (MSIP) (No.R-20160222-002755, Cloud based Security Intelligence 827 Technology Development for the Customized Security Service 828 Provisioning). 830 This work has been partially supported by the European Commission 831 under Horizon 2020 grant agreement no. 700199 "Securing against 832 intruders and other threats through a NFV-enabled environment 833 (SHIELD)". This support does not imply endorsement. 835 10. Contributors 837 I2NSF is a group effort. I2NSF has had a number of contributing 838 authors. The following are considered co-authors: 840 o Hyoungshick Kim (Sungkyunkwan University) 842 o Jinyong Tim Kim (Sungkyunkwan University) 844 o Hyunsik Yang (Soongsil University) 846 o Younghan Kim (Soongsil University) 848 o Jung-Soo Park (ETRI) 850 o Se-Hui Lee (Korea Telecom) 852 o Mohamed Boucadair (Orange) 854 11. References 856 11.1. Normative References 858 [ETSI-NFV] 859 "Network Functions Virtualisation (NFV); Architectural 860 Framework", Available: 861 https://www.etsi.org/deliver/etsi_gs/ 862 nfv/001_099/002/01.01.01_60/gs_nfv002v010101p.pdf, October 863 2013. 865 [ITU-T.Y.3300] 866 "Framework of Software-Defined Networking", 867 Available: https://www.itu.int/rec/T-REC-Y.3300-201406-I, 868 June 2014. 870 [NFV-Terminology] 871 "Network Functions Virtualisation (NFV); Terminology for 872 Main Concepts in NFV", Available: 873 https://www.etsi.org/deliver/etsi_gs/ 874 NFV/001_099/003/01.02.01_60/gs_nfv003v010201p.pdf, 875 December 2014. 877 [ONF-SDN-Architecture] 878 "SDN Architecture (Issue 1.1)", Available: 879 https://www.opennetworking.org/wp- 880 content/uploads/2014/10/TR- 881 521_SDN_Architecture_issue_1.1.pdf, June 2016. 883 [RFC6020] Bjorklund, M., "YANG - A Data Modeling Language for the 884 Network Configuration Protocol (NETCONF)", RFC 6020, 885 October 2010. 887 [RFC6241] Enns, R., Bjorklund, M., Schoenwaelder, J., and A. 888 Bierman, "Network Configuration Protocol (NETCONF)", 889 RFC 6241, June 2011. 891 [RFC7149] Boucadair, M. and C. Jacquenet, "Software-Defined 892 Networking: A Perspective from within a Service Provider 893 Environment", RFC 7149, March 2014. 895 [RFC7665] Halpern, J. and C. Pignataro, "Service Function Chaining 896 (SFC) Architecture", RFC 7665, October 2015. 898 [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF 899 Protocol", RFC 8040, January 2017. 901 [RFC8192] Hares, S., Lopez, D., Zarny, M., Jacquenet, C., Kumar, R., 902 and J. Jeong, "Interface to Network Security Functions 903 (I2NSF): Problem Statement and Use Cases", RFC 8192, July 904 2017. 906 [RFC8300] Quinn, P., Elzur, U., and C. Pignataro, "Network Service 907 Header (NSH)", RFC 8300, January 2018. 909 [RFC8329] Lopez, D., Lopez, E., Dunbar, L., Strassner, J., and R. 910 Kumar, "Framework for Interface to Network Security 911 Functions", RFC 8329, February 2018. 913 11.2. Informative References 915 [AVANT-GUARD] 916 Shin, S., Yegneswaran, V., Porras, P., and G. Gu, "AVANT- 917 GUARD: Scalable and Vigilant Switch Flow Management in 918 Software-Defined Networks", ACM CCS, November 2013. 920 [consumer-facing-inf-dm] 921 Jeong, J., Kim, E., Ahn, T., Kumar, R., and S. Hares, 922 "I2NSF Consumer-Facing Interface YANG Data Model", draft- 923 ietf-i2nsf-consumer-facing-interface-dm-05 (work in 924 progress), June 2019. 926 [ETSI-NFV-MANO] 927 "Network Functions Virtualisation (NFV); Management and 928 Orchestration", Available: 929 https://www.etsi.org/deliver/etsi_gs/nfv- 930 man/001_099/001/01.01.01_60/gs_nfv-man001v010101p.pdf, 931 December 2014. 933 [i2nsf-terminology] 934 Hares, S., Strassner, J., Lopez, D., Xia, L., and H. 935 Birkholz, "Interface to Network Security Functions (I2NSF) 936 Terminology", draft-ietf-i2nsf-terminology-07 (work in 937 progress), January 2019. 939 [ITU-T.X.800] 940 "Security Architecture for Open Systems Interconnection 941 for CCITT Applications", March 1991. 943 [nsf-facing-inf-dm] 944 Kim, J., Jeong, J., Park, J., Hares, S., and Q. Lin, 945 "I2NSF Network Security Function-Facing Interface YANG 946 Data Model", draft-ietf-i2nsf-nsf-facing-interface-dm-06 947 (work in progress), June 2019. 949 [nsf-monitoring-dm] 950 Jeong, J., Chung, C., Hares, S., Xia, L., and H. Birkholz, 951 "I2NSF NSF Monitoring YANG Data Model", draft-ietf-i2nsf- 952 nsf-monitoring-data-model-00 (work in progress), March 953 2019. 955 [opsawg-firewalls] 956 Baker, F. and P. Hoffman, "On Firewalls in Internet 957 Security", draft-ietf-opsawg-firewalls-01 (work in 958 progress), October 2012. 960 [policy-translation] 961 Yang, J., Jeong, J., and J. Kim, "Security Policy 962 Translation in Interface to Network Security Functions", 963 draft-yang-i2nsf-security-policy-translation-03 (work in 964 progress), March 2019. 966 [registration-inf-dm] 967 Hyun, S., Jeong, J., Roh, T., Wi, S., and J. Park, "I2NSF 968 Registration Interface YANG Data Model", draft-ietf-i2nsf- 969 registration-interface-dm-04 (work in progress), June 970 2019. 972 [VNF-ONBOARDING] 973 "VNF Onboarding", Available: 974 https://wiki.opnfv.org/display/mano/VNF+Onboarding, 975 November 2016. 977 Appendix A. Changes from draft-ietf-i2nsf-applicability-10 979 The following changes have been made from draft-ietf-i2nsf- 980 applicability-11: 982 o This version has reflected further questions and comments from 983 Roman Danyliw who is a Security Area Director. 985 o The security issues and discussion related to Developer's 986 Management System (DMS) are moved to Section 8. The monitoring of 987 DMSs is out of scope of I2NSF. 989 o Some typos are corrected. 991 Authors' Addresses 993 Jaehoon Paul Jeong 994 Department of Computer Science and Engineering 995 Sungkyunkwan University 996 2066 Seobu-Ro, Jangan-Gu 997 Suwon, Gyeonggi-Do 16419 998 Republic of Korea 1000 Phone: +82 31 299 4957 1001 Fax: +82 31 290 7996 1002 EMail: pauljeong@skku.edu 1003 URI: http://iotlab.skku.edu/people-jaehoon-jeong.php 1005 Sangwon Hyun 1006 Department of Computer Engineering 1007 Chosun University 1008 309 Pilmun-daero, Dong-Gu 1009 Gwangju 61452 1010 Republic of Korea 1012 Phone: +82 62 230 7473 1013 EMail: shyun@chosun.ac.kr 1015 Tae-Jin Ahn 1016 Korea Telecom 1017 70 Yuseong-Ro, Yuseong-Gu 1018 Daejeon 305-811 1019 Republic of Korea 1021 Phone: +82 42 870 8409 1022 EMail: taejin.ahn@kt.com 1023 Susan Hares 1024 Huawei 1025 7453 Hickory Hill 1026 Saline, MI 48176 1027 USA 1029 Phone: +1-734-604-0332 1030 EMail: shares@ndzh.com 1032 Diego R. Lopez 1033 Telefonica I+D 1034 Jose Manuel Lara, 9 1035 Seville 41013 1036 Spain 1038 Phone: +34 682 051 091 1039 EMail: diego.r.lopez@telefonica.com