I2NSF Working Group                                             J. Jeong
Internet-Draft                                   Sungkyunkwan University
Intended status: Informational                                   S. Hyun
Expires: September 12, November 3, 2019                              Chosun University
                                                                  T. Ahn
                                                           Korea Telecom
                                                                S. Hares
                                                                  Huawei
                                                                D. Lopez
                                                          Telefonica I+D
                                                          March 11,
                                                             May 2, 2019

 Applicability of Interfaces to Network Security Functions to Network-
                        Based Security Services
                   draft-ietf-i2nsf-applicability-09
                   draft-ietf-i2nsf-applicability-10

Abstract

   This document describes the applicability of Interface to Network
   Security Functions (I2NSF) to network-based security services in
   Network Functions Virtualization (NFV) environments, such as
   firewall, deep packet inspection, or attack mitigation engines.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on September 12, November 3, 2019.

Copyright Notice

   Copyright (c) 2019 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (https://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  I2NSF Framework . . . . . . . . . . . . . . . . . . . . . . .   5
   4.  Time-dependent Web Access Control Service . . . . . . . . . .   6   7
   5.  I2NSF Framework with SFC  . . . . . . . . . . . . . . . . . .   8  10
   6.  I2NSF Framework with SDN  . . . . . . . . . . . . . . . . . .  10  12
     6.1.  Firewall: Centralized Firewall System . . . . . . . . . .  13  15
     6.2.  Deep Packet Inspection: Centralized VoIP/VoLTE Security
           System  . . . . . . . . . . . . . . . . . . . . . . . . .  14  15
     6.3.  Attack Mitigation: Centralized DDoS-attack Mitigation
           System  . . . . . . . . . . . . . . . . . . . . . . . . .  16  15
   7.  I2NSF Framework with NFV  . . . . . . . . . . . . . . . . . .  19  17
   8.  Security Considerations . . . . . . . . . . . . . . . . . . .  20  19
   9.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .  20  19
   10. Contributors  . . . . . . . . . . . . . . . . . . . . . . . .  21  19
   11. References  . . . . . . . . . . . . . . . . . . . . . . . . .  21  20
     11.1.  Normative References . . . . . . . . . . . . . . . . . .  21  20
     11.2.  Informative References . . . . . . . . . . . . . . . . .  22  21
   Appendix A.  Changes from draft-ietf-i2nsf-applicability-08 draft-ietf-i2nsf-applicability-09 . . .  25  23
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  25  23

1.  Introduction

   Interface to Network Security Functions (I2NSF) defines a framework
   and interfaces for interacting with Network Security Functions
   (NSFs).  Note that Network Security Function (NSF) is defined as
   software that provides a
   funcional block for a security set of security-related services, such as
   (i) detecting unwanted activity, (ii) blocking or mitigating the
   effect of such unwanted activity in order to fulfil service within an I2NSF framework that
   has well-defined I2NSF NSF-facing interface
   requirements, and other external
   interfaces (iii) supporting communication stream integrity and well-defined functional behavior [NFV-Terminology].
   confidentiality [i2nsf-terminology].

   The I2NSF framework allows heterogeneous NSFs developed by different
   security solution vendors to be used in the Network Functions
   Virtualization (NFV) environment [ETSI-NFV] by utilizing the
   capabilities of such products NSFs through I2NSF interfaces such as Customer-
   Facing Interface [consumer-facing-inf-dm] and the virtualization of security
   functions in the NFV platform. NSF-Facing Interface
   [nsf-facing-inf-dm].  In the I2NSF framework, each NSF initially
   registers the profile of its own capabilities into the Security
   Controller (i.e., network operator management system [RFC8329]) in order for themselves to
   the I2NSF system via Registration Interface [registration-inf-dm] so
   that each NSF can be available selected and used to enforce a given security
   policy from I2NSF User (i.e., network security administrator).  Note
   that Developer's Management System (DMS) is management software that
   provides a vendor's security service software as a Virtual Network
   Function (VNF) in an NFV environment (or middlebox in the system.  In
   addition, legacy
   network) as an NSF, and registers the capabilities of an NSF into
   Security Controller via Registration Interface for a security service
   [RFC8329].

   Security Controller is validated by the defined as a management component that
   contains control plane functions to manage NSFs and facilitate
   information sharing among other components (e.g., NSFs and I2NSF User
   (also called
   User) in an I2NSF Client) that a system administrator (as [i2nsf-terminology].  Security Controller
   maintains the mapping between a user) is
   employing, capability and an NSF, so that the system administrator it can request
   perform to translate a high-level security
   services through the policy received from I2NSF
   User to a low-level security policy configured and enforced in an NSF
   [policy-translation].  Security Controller. Controller can monitor the states and
   security attacks in NSFs through NSF monitoring [nsf-monitoring-dm].

   This document illustrates the applicability of the I2NSF framework
   with four different scenarios:

   1.  The enforcement of time-dependent web access control.

   2.  The application of I2NSF to a Service Function Chaining (SFC)
       environment [RFC7665].

   3.  The integration of the I2NSF framework with Software-Defined
       Networking (SDN) [RFC7149] to provide different security
       functionality such as firewalls [opsawg-firewalls], Deep Packet
       Inspection (DPI), and Distributed Denial of Service (DDoS) attack
       mitigation.

   4.  The use of Network Functions Virtualization (NFV) [ETSI-NFV] as a
       supporting technology.

   The implementation of I2NSF in these scenarios has allowed us to
   verify the applicability and effectiveness of the I2NSF framework for
   a variety of use cases.

2.  Terminology

   This document uses the terminology described in [RFC7665], [RFC7149],
   [ITU-T.Y.3300], [ONF-OpenFlow], [ONF-SDN-Architecture],
   [ITU-T.X.1252], [ITU-T.X.800],

   [NFV-Terminology], [RFC8329],
   [i2nsf-terminology], [consumer-facing-inf-dm], [i2nsf-nsf-cap-im],
   [nsf-facing-inf-dm], [registration-inf-dm], and
   [nsf-triggered-steering]. [i2nsf-terminology].  In addition,
   the following terms are defined below:

   o  Software-Defined Networking (SDN): A set of techniques that
      enables to directly program, orchestrate, control, and manage
      network resources, which facilitates the design, delivery and
      operation of network services in a dynamic and scalable manner
      [ITU-T.Y.3300].

   o  Network Function: A funcional block within a network
      infrastructure that has well-defined external interfaces and well-
      defined functional behavior [NFV-Terminology].

   o  Network Security Function (NSF): A funcional block within Software that provides a
      security service within a network infrastructure that has well-
      defined external interfaces set of
      security-related services.  Examples include detecting unwanted
      activity and well-defined functional
      behavior[NFV-Terminology]. blocking or mitigating the effect of such unwanted
      activity in order to fulfil service requirements.  The NSF can
      also help in supporting communication stream integrity and
      confidentiality [i2nsf-terminology].

   o  Network Functions Virtualization (NFV): A principle of separating
      network functions (or network security functions) from the
      hardware they run on by using virtual hardware abstraction
      [NFV-Terminology].

   o  Service Function Chaining (SFC): The execution of an ordered set
      of abstract service functions (i.e., network functions) according
      to ordering constraints that must be applied to packets, frames,
      and flows selected as a result of classification.  The implied
      order may not be a linear progression as the architecture allows
      for SFCs that copy to more than one branch, and also allows for
      cases where there is flexibility in the order in which service
      functions need to be applied [RFC7665].

   o  Firewall: A service function at the junction of two network
      segments that inspects some suspicious packets that attempt to
      cross the boundary.  It also rejects any packet that does not
      satisfy certain criteria for, for example, disallowed port numbers
      or IP addresses.

   o  Centralized Firewall System: A centralized firewall that can
      establish and distribute policy rules into network resources for
      efficient firewall management.

   o  Centralized VoIP Security System: A centralized security system
      that handles the security functions required for VoIP and VoLTE
      services.

   o  Centralized DDoS-attack Mitigation System: A centralized mitigator
      that can establish and distribute access control policy rules into
      network resources for efficient DDoS-attack mitigation.

      +------------+
      | I2NSF User |
      +------------+
             ^
             | Consumer-Facing Interface
             v
   +-------------------+     Registration     +-----------------------+
   |Security Controller|<-------------------->|Developer's Mgmt System|
   +-------------------+      Interface       +-----------------------+
             ^
             | NSF-Facing Interface
             v
      +----------------+ +---------------+   +-----------------------+
      |      NSF-1     |-|     NSF-2     |...|         NSF-n         |
      |   (Firewall)   | | (Web Filter)  |   |(DDoS-Attack Mitigator)|
      +----------------+ +---------------+   +-----------------------+

                         Figure 1: I2NSF Framework

3.  I2NSF Framework

   This section summarizes the I2NSF framework as defined in [RFC8329].
   As shown in Figure 1, an I2NSF User can use security functions by
   delivering high-level security policies, which specify security
   requirements that the I2NSF user wants to enforce, to the Security
   Controller via the Consumer-Facing Interface
   [consumer-facing-inf-dm].

   The Security Controller receives and analyzes the high-level security
   policies from an I2NSF User, and identifies what types of security
   capabilities are required to meet these high-level security policies.
   The Security Controller then identifies NSFs that have the required
   security capabilities, and generates low-level security policies for
   each of the NSFs so that the high-level security policies are
   eventually enforced by those NSFs [policy-translation].  Finally, the
   Security Controller sends the generated low-level security policies
   to the NSFs [i2nsf-nsf-cap-im][nsf-facing-inf-dm].

   The Security Controller requests NSFs to perform low-level security
   services via the NSF-Facing Interface. Interface [nsf-facing-inf-dm].

   As shown in Figure 1, with a Developer's Management System (DMS), (called
   DMS), developers (or vendors) inform the Security Controller of the
   capabilities of the NSFs through the
   I2NSF Registration Interface
   [registration-inf-dm] for registering (or deregistering) the
   corresponding NSFs.  Note that an inside attacker at the DMS can
   seriously weaken the I2NSF system's security.  That is, DMS can be
   compromised to attack the Security Controller by providing the
   Security Controller with malicious NSFs, and controlling those NSFs
   in real time.  To deal with this type of threat, the role of the DMS
   should be restricted to providing an I2NSF system with the software package/
   image
   package/image for NSF execution, and the DMS should never be able to
   access NSFs in online/activated status for the I2NSF system's
   security.  On the other hand, an access to running (online) active NSFs should be
   allowed only to the Security Controller, not the DMS.  Also, DMS during the
   provisioning time of those NSFs to the I2NSF system.  However, note
   that an inside attacker can access the active NSFs, which are being
   executed as either VNFs or middleboxes in the I2NSF system, through a
   back door (i.e., an IP address and a port number that are known to
   the DMS to control an NSF).  However, the Security Controller can
   detect and prevent inside attacks by monitoring the
   activity activities of all
   the DMSs as well as the NSFs through the I2NSF NSF monitoring
   functionality [nsf-monitoring-dm].  Through the NSF monitoring, the
   Security Controller can monitor the activities and states of NSFs,
   and then can make a diagnosis to see whether the NSFs are working in
   normal conditions or in abnormal conditions including the insider
   threat.  Note that the monitoring of the DMSs is out of scope for
   I2NSF.

   The Consumer-Facing Interface between can be implemented as an XML file based
   on the Consumer-Facing Interface data model [consumer-facing-inf-dm]
   along with RESTCONF [RFC8040], which befits a web-based user
   interface for an I2NSF User and the to send a Security Controller can be implemented using, for example, RESTCONF [RFC8040]. a high-
   level security policy.  Data models specified by YANG [RFC6020]
   describe high-level security policies to be specified by an I2NSF
   User.  The data model defined in [consumer-facing-inf-dm] can be used
   for the I2NSF Consumer-Facing Interface.

   The NSF-Facing Interface between  Note that an inside
   attacker at the Security Controller and NSFs I2NSF User can
   be implemented using NETCONF [RFC6241].  YANG data models describe
   low-level security policies for misuse the sake of NSFs, which are
   translated from I2NSF system so that the high-level security policies by
   network system under the Security
   Controller.  The data model defined I2NSF system is vulnerable to security
   attacks.  To handle this type of threat, the Security Controller
   needs to monitor the activities of all the I2NSF Users as well as the
   NSFs through the I2NSF NSF monitoring functionality
   [nsf-monitoring-dm].  Note that the monitoring of the I2NSF Users is
   out of scope for I2NSF.

   The NSF-Facing Interface can be implemented as an XML file based on
   the NSF-Facing Interface YANG data model [nsf-facing-inf-dm] along
   with NETCONF [RFC6241], which befits a command-line-based remote-
   procedure call for a Security Controller to configure an NSF with a
   low-level security policy.  Data models specified by YANG [RFC6020]
   describe low-level security policies for the sake of NSFs, which are
   translated from the high-level security policies by the Security
   Controller.  The data model defined in [nsf-facing-inf-dm] can be
   used for the I2NSF NSF-Facing Interface.

   The Registration Interface between the Security Controller and the
   Developer's Management System can be implemented as an XML file based on
   the Registration Interface YANG data model [registration-inf-dm]
   along with NETCONF [RFC6241], which befits a command-line-based
   remote-procedure call for a DMS to send a Security Controller an
   NSF's capability information.  Data models specified by RESTCONF
   [RFC8040]. YANG
   [RFC6020] describe the registration of an NSF's capabilities to
   enforce security services at the NSF.  The data model defined in
   [registration-inf-dm] can be used for the I2NSF Registration
   Interface.

   Also, the I2NSF framework can enforce multiple chained NSFs for the
   low-level security policies by means of SFC techniques for the I2NSF
   architecture described in [nsf-triggered-steering]. [RFC7665].

   The following sections describe different security service scenarios
   illustrating the applicability of the I2NSF framework.

4.  Time-dependent Web Access Control Service

   This service scenario assumes that an enterprise network
   administrator wants to control the staff members' access to a
   particular Internet service (e.g., Example.com) during business
   hours.  The following is an example high-level security policy rule
   for a web filter that the administrator requests: Block the staff
   members' access to Example.com from 9 AM (i.e., 09:00) to 6 PM. PM (i.e.,
   18:00) by dropping their packets.  Figure 2 is an example XML code
   for this web filter:

   <I2NSF>
     <name>block_website</name>
     <cond>
       <src>Staff_Member's_PC</src>
       <dest>Example.com</dest>
       <time-span-start>9:00AM</time-span-start>
       <time-span-end>-6:00PM</time-span-end>
     </cond>
     <action>block<action>
   </I2NSF> filter that is sent from the I2NSF User to the Security
   Controller via the Consumer-Facing Interface
   [consumer-facing-inf-dm]:

   <?xml version="1.0" encoding="UTF-8" ?>
   <ietf-i2nsf-cfi-policy:policy>
     <policy-name>block_website</policy-name>
     <rule>
       <rule-name>block_website_during_working_hours</rule-name>
       <event>
         <time-information>
           <begin-time>09:00</begin-time>
           <end-time>18:00</end-time>
         </time-information>
       </event>
       <condition>
         <firewall-condition>
           <source-target>
             <src-target>Staff_Member's_PC</src-target>
           </source-target>
         </firewall-condition>
         <custom-condition>
           <destination-target>
             <dest-target>Example.com</dest-target>
           </destination-target>
         </custom-condition>
       </condition>
       <action>
         <primary-action>drop</primary-action>
       </action>
     </rule>
   </ietf-i2nsf-cfi-policy:policy>

            Figure 2: An XML Example for Time-based Web-filter

   The security policy name is "block_website" with the tag "name".  The
   filtering condition has "policy-
   name", and the source group "Staff_Member's_PC" security policy rule name is
   "block_website_during_working_hours" with the tag "src", the destination website "Example.com" with "rule-name".  The
   filtering event has the tag "dest", time span where the filtering start begin time is
   the time "9:00AM" "09:00" (i.e., 9:00AM) with the tag " time-
   span-start", "begin-time", and the
   filtering end time is the time "6:00PM" "18:00" (i.e., 6:00PM) with the tag "time-span-end".
   "end-time".  The filtering condition has the source target of
   "Staff_Member's_PC" with the tag "src-target", the destination target
   of a website "Example.com" with the tag "dest-target".  The action is
   to "block" "drop" the packets satisfying the above condition, that is, to drop those packets. event and condition with
   the tag "primary-action".

   After receiving the high-level security policy, the Security
   Controller identifies required security capabilities, e.g., IP
   address and port number inspection capabilities and URL inspection
   capability.  In this scenario, it is assumed that the IP address and
   port number inspection capabilities are required to check whether a
   received packet is an HTTP packet from a staff member.  The URL
   inspection capability is required to check whether the target URL of
   a received packet is in the Example.com domain or not.

   The Security Controller maintains the security capabilities of each
   NSF running in the I2NSF system, which have been reported by the
   Developer's Management System via the Registration interface.  Based
   on this information, the Security Controller identifies NSFs that can
   perform the IP address and port number inspection and URL inspection
   [policy-translation].  In this scenario, it is assumed that an NSF of a
   firewall NSF has the IP address and port number inspection
   capabilities and an NSF of a web filter NSF has URL inspection capability.

   The Security Controller generates low-level security rules for the
   NSFs to perform IP address and port number inspection, URL
   inspection, and time checking.  Specifically, the Security Controller
   may interoperate with an access control server in the enterprise
   network in order to retrieve the information (e.g., IP address in
   use, company identifier (ID), and role) of each employee that is
   currently using the network.  Based on the retrieved information, the
   Security Controller generates low-level security rules to check
   whether the source IP address of a received packet matches any one
   being used by a staff member.  In addition, the low-level security
   rules should be able to determine that a received packet is of HTTP
   protocol.  The low-level security rules for web filter check that the
   target URL field of a received packet is equal to Example.com.
   Finally, the Security Controller sends the low-level security rules
   of the IP address and port number inspection to the NSF of firewall NSF and
   the low-level rules for URL inspection to the NSF of web filter. filter NSF.

   The following describes how the time-dependent web access control
   service is enforced by the NSFs of firewall and web filter.

   1.  A staff member tries to access Example.com during business hours,
       e.g., 10 AM.

   2.  The packet is forwarded from the staff member's device to the
       firewall, and the firewall checks the source IP address and port
       number.  Now the firewall identifies the received packet is an
       HTTP packet from the staff member.

   3.  The firewall triggers the web filter to further inspect the
       packet, and the packet is forwarded from the firewall to the web
       filter.  SFC technology can be utilized to support such packet
       forwarding in the I2NSF framework [nsf-triggered-steering]. [RFC7665].

   4.  The web filter checks the target URL field of the received
       packet, and realizes the packet is toward Example.com.  The web
       filter then checks that the current time is in business hours.
       If so, the web filter drops the packet, and consequently the
       staff member's access to Example.com during business hours is
       blocked.

      +------------+
      | I2NSF User |
      +------------+
             ^
             | Consumer-Facing Interface
             v
   +-------------------+     Registration     +-----------------------+
   |Security Controller|<-------------------->|Developer's Mgmt System|
   +-------------------+      Interface       +-----------------------+
         ^       ^
         |       | NSF-Facing Interface
         |       |-------------------------
         |                                |
         | NSF-Facing Interface           |
   +-----v-----------+             +------v-------+
   |  +-----------+  |      ------>|     NSF-1    |
   |  |Classifier |  |      |      |  (Firewall)  |
   |  +-----------+  |      |      +--------------+
   |     +-----+     |<-----|      +--------------+
   |     | SFF |     |      |----->|     NSF-2    |
   |     +-----+     |      |      |     (DPI)    |
   +-----------------+      |      +--------------+
                            |             .
                            |             .
                            |             .
                            |      +-----------------------+
                            ------>|        NSF-n          |
                                   |(DDoS-Attack Mitigator)|
                                   +-----------------------+

                   Figure 3: An I2NSF Framework with SFC

5.  I2NSF Framework with SFC

   In the I2NSF architecture, an NSF can trigger an advanced security
   action (e.g., DPI or DDoS attack mitigation) on a packet based on the
   result of its own security inspection of the packet.  For example, a
   firewall triggers further inspection of a suspicious packet with DPI.
   For this advanced security action to be fulfilled, the suspicious
   packet should be forwarded from the current NSF to the successor NSF.
   SFC [RFC7665] is a technology that enables this advanced security
   action by steering a packet with multiple service functions (e.g.,
   NSFs), and this technology can be utilized by the I2NSF architecture
   to support the advanced security action.

      +------------+
      | I2NSF User |
      +------------+
             ^
             | Consumer-Facing Interface
             v
   +-------------------+     Registration     +-----------------------+
   |Security Controller|<-------------------->|Developer's Mgmt System|
   +-------------------+      Interface       +-----------------------+
         ^       ^
         |       | NSF-Facing Interface
         |       |-------------------------
         |                                |
         | NSF-Facing Interface           |
   +-----v-----------+             +------v-------+
   |  +-----------+  |      ------>|     NSF-1    |
   |  |Classifier |  |      |      |  (Firewall)  |
   |  +-----------+  |      |      +--------------+
   |     +-----+     |<-----|      +--------------+
   |     | SFF |     |      |----->|     NSF-2    |
   |     +-----+     |      |      |     (DPI)    |
   +-----------------+      |      +--------------+
                            |             .
                            |             .
                            |             .
                            |      +-----------------------+
                            ------>|        NSF-n          |
                                   |(DDoS-Attack Mitigator)|
                                   +-----------------------+

                   Figure 3: An I2NSF Framework with SFC

   Figure 3 shows an I2NSF framework with the support of SFC.  As shown
   in the figure, SFC generally requires classifiers and service
   function forwarders (SFFs); classifiers are responsible for
   determining which service function path (SFP) (i.e., an ordered
   sequence of service functions) a given packet should pass through,
   according to pre-configured classification rules, and SFFs perform
   forwarding the given packet to the next service function (e.g., NSF)
   on the SFP of the packet by referring to their forwarding tables.  In
   the I2NSF architecture with SFC, the Security Controller can take
   responsibilities of generating classification rules for classifiers
   and forwarding tables for SFFs.  By analyzing high-level security
   policies from I2NSF users, the Security Controller can construct SFPs
   that are required to meet the high-level security policies, generates
   classification rules of the SFPs, and then configures classifiers
   with the classification rules over NSF-Facing Interface so that
   relevant traffic packets can follow the SFPs.  Also, based on the
   global view of NSF instances available in the system, the Security
   Controller constructs forwarding tables, which are required for SFFs
   to forward a given packet to the next NSF over the SFP, and
   configures SFFs with those forwarding tables over NSF-Facing
   Interface.

   To trigger an advanced security action in the I2NSF architecture, the
   current NSF appends a metadata describing the security capability
   required for the advanced action to the suspicious packet and to the
   network service header (NSH) of the packet [RFC8300].  It then sends
   the packet to the classifier.  Based on the metadata information, the
   classifier searches an SFP which includes an NSF with the required
   security capability, changes the SFP-related information (e.g.,
   service path identifier and service index [RFC8300]) of the packet
   with the new SFP that has been found, and then forwards the packet to
   the SFF.  When receiving the packet, the SFF checks the SFP-related
   information such as the service path identifier and service index
   contained in the packet and forwards the packet to the next NSF on
   the SFP of the packet, according to its forwarding table.

6.  I2NSF Framework with SDN

   This section describes an I2NSF framework with SDN for I2NSF
   applicability and use cases, such as firewall, deep packet
   inspection, and DDoS-attack mitigation functions.  SDN enables some
   packet filtering rules to be enforced in network forwarding elements
   (e.g., switch) by controlling their packet forwarding rules.  By
   taking advantage of this capability of SDN, it is possible to
   optimize the process of security service enforcement in the I2NSF
   system.

   Figure 4 shows an I2NSF framework [RFC8329] with SDN networks to
   support network-based security services.  In this system, the
   enforcement of security policy rules is divided into the SDN
   forwarding elements (e.g., switch running as either a hardware middle
   box or a software virtual switch) and NSFs (e.g., firewall running in
   a form of a virtual network function [ETSI-NFV]).  Especially, SDN
   forwarding elements enforce simple packet filtering rules that can be
   translated into their packet forwarding rules, whereas NSFs enforce
   NSF-related security rules requiring the security capabilities of the
   NSFs.  For this purpose, the Security Controller instructs the SDN
   Controller via NSF-Facing Interface so that SDN forwarding elements
   can perform the required security services with flow tables under the
   supervision of the SDN Controller.

      +------------+
      |

      +------------+
      | I2NSF User |
      +------------+
             ^
             | Consumer-Facing Interface
             v
   +-------------------+     Registration     +-----------------------+
   |Security Controller|<-------------------->|Developer's Mgmt System|
   +-------------------+      Interface       +-----------------------+
      ^     ^
      |     | NSF-Facing Interface
      |     v
      | +----------------+ +---------------+   +-----------------------+
      | |      NSF-1     |-|     NSF-2     |...|         NSF-n         |
      | |   (Firewall)   | |     (DPI)     |   |(DDoS-Attack Mitigator)|
      | +----------------+ +---------------+   +-----------------------+
      |
      |
      |                                                  SDN Network
   +--|----------------------------------------------------------------+
   |  V NSF-Facing Interface                                           |
   |  +----------------+                                               |
   |  | SDN Controller |                                               |
   |  +----------------+                                               |
   |           ^                                                       |
   |           | SDN Southbound Interface                              |
   |           v                                                       |
   |      +--------+ +------------+ +--------+       +--------+        |
   |      |Switch-1|-|  Switch-2  |-|Switch-3|.......|Switch-m|        |
   |      |        | |(Classifier)| | (SFF)  |       |        |        |
   |      +--------+ +------------+ +--------+       +--------+        |
   +-------------------------------------------------------------------+

               Figure 4: An I2NSF Framework with SDN Network

   As

6.  I2NSF Framework with SDN

   This section describes an example, let us consider two different types of security rules:
   Rule A is a simple I2NSF framework with SDN for I2NSF
   applicability and use cases, such as firewall, deep packet filtering rule that checks only the IP
   address
   inspection, and port number of a given packet, whereas rule B is a time-
   consuming DDoS-attack mitigation functions.  SDN enables some
   packet inspection rule for analyzing whether an attached
   file being transmitted over a flow of packets contains malware.  Rule
   A can filtering rules to be translated into enforced in network forwarding elements
   (e.g., switch) by controlling their packet forwarding rules rules.  By
   taking advantage of this capability of SDN, it is possible to
   optimize the process of security service enforcement in the I2NSF
   system.  For example, for efficient firewall services, simple packet
   filtering can be performed by SDN forwarding elements (e.g.,
   switches), and thus be enforced by these elements.  In contrast, rule B
   cannot complicated packet filtering based on packet payloads
   can be enforced performed by a firewall NSF.  This optimized firewall using
   both SDN forwarding elements, but it has to be enforced
   by NSFs with anti-malware capability.  Specifically, elements and a flow of firewall NSF is more efficient
   than a firewall where SDN forwarding elements forward all the packets
   to a firewall NSF for packet filtering.  This is forwarded because packets to and reassembled
   be filtered out can be early dropped by an NSF SDN forwarding elements
   without consuming further network bandwidth due to reconstruct the
   attached file stored in the flow forwarding of packets.  The NSF then analyzes
   the file packets to check the existence of malware.  If the file contains
   malware, the NSF drops the packets.

   In firewall NSF.

   Figure 4 shows an I2NSF framework [RFC8329] with SDN, the Security Controller can analyze
   given SDN networks to
   support network-based security policy rules and automatically determine which of services.  In this system, the
   given
   enforcement of security policy rules should be enforced by is divided into the SDN
   forwarding elements (e.g., switch running as either a hardware middle
   box or a software virtual switch) and which should be enforced by NSFs.  If some NSFs (e.g., firewall running in
   a form of the given
   rules requires security capabilities a virtual network function (VNF) [ETSI-NFV]).  Note that can be provided by SDN
   forwarding elements, then
   NSFs are created or removed by the Security Controller instructs NFV Management and Orchestration
   (MANO) [ETSI-NFV-MANO], performing the SDN
   Controller via NSF-Facing Interface so that life-cycle management of NSFs
   as VNFs.  Refer to Section 7 for the detailed discussion of the NSF
   life-cycle management in the NFV MANO for I2NSF.  SDN forwarding
   elements enforce simple packet filtering rules that can be translated
   into their packet forwarding rules, whereas NSFs enforce those complicated
   NSF-related security policy rules with flow tables under requiring the
   supervision security capabilities of the
   NSFs.  Note that SDN Controller.  Or if some packet forwarding rules require are for packet
   forwarding or filtering by flow table entries at SDN forwarding
   elements, and NSF rules are for security
   capabilities that cannot enforcement at NSFs (e.g.,
   firewall).  Thus, simple firewall rules can be provided enforced by SDN packet
   forwarding rules at SDN forwarding elements but
   by NSFs, then (e.g., switches).  For
   the tasks for security enforcement (e.g., packet filtering), the
   Security Controller instructs relevant NSFs to
   enforce those rules.

   The distinction between software-based the SDN Controller via NSF-Facing
   Interface so that SDN forwarding elements and
   NSFs, which can both run as virtual network functions, may be
   necessary for some management purposes in this system.  For this, we can take advantage perform the required
   security services with flow tables under the supervision of the NFV MANO where there SDN
   Controller.

   As an example, let us consider two different types of security rules:
   Rule A is a subsystem simple packet filtering rule that
   maintains checks only the descriptions IP
   address and port number of the capabilities each VNF can offer
   [ETSI-NFV-MANO].  This subsystem can determine whether a given
   software element (VNF instance) packet, whereas rule B is a time-
   consuming packet inspection rule for analyzing whether an NSF or attached
   file being transmitted over a virtualized SDN
   switch.  For example, if a VNF instance has anti-malware capability
   according to the description flow of the VNF, it could be considered as an
   NSF. packets contains malware.  Rule
   A VNF onboarding system [VNF-ONBOARDING] can be used as such a
   subsystem that maintains the descriptions translated into packet forwarding rules of each VNF SDN forwarding
   elements and thus be enforced by these elements.  In contrast, rule B
   cannot be enforced by forwarding elements, but it has to tell whether be enforced
   by NSFs with anti-malware capability.  Specifically, a VNF instance flow of
   packets is for forwarded to and reassembled by an NSF or for a virtualized SDN switch.

   For to reconstruct the support of SFC
   attached file stored in the flow of packets.  The NSF then analyzes
   the file to check the existence of malware.  If the file contains
   malware, the NSF drops the packets.

   In an I2NSF framework with SDN, as shown in
   Figure 4, network the Security Controller can analyze
   given security policy rules and automatically determine which of the
   given security policy rules should be enforced by SDN forwarding
   elements (e.g., switch) and which should be enforced by NSFs.  If some of the given
   rules requires security capabilities that can play be provided by SDN
   forwarding elements, then the
   role of either SFC Classifier or SFF, which are explained in
   Section 5.  Classifier and SFF have an Security Controller instructs the SDN
   Controller via NSF-Facing Interface so that SDN forwarding elements
   can enforce those security policy rules with
   Security flow tables under the
   supervision of the SDN Controller.  This interface is used to update  Or if some rules require security
   service function chaining information for traffic flows.  For
   example, when it
   capabilities that cannot be provided by SDN forwarding elements but
   by NSFs, then the Security Controller instructs relevant NSFs to
   enforce those rules.

   The distinction between software-based SDN forwarding elements and
   NSFs, which can both run as virtual network functions (VNFs), may be
   necessary for some management purposes in this system.  Note that an
   SDN forwarding element (i.e., switch) is a specific type of VNF
   rather than an NSF because an NSF is for security services rather
   than for packet forwarding.  For this distinction, we can take
   advantage of the NFV MANO where there is a subsystem that maintains
   the descriptions of the capabilities each VNF can offer
   [ETSI-NFV-MANO].  This subsystem can determine whether a given
   software element (VNF instance) is an NSF or a virtualized SDN
   switch.  For example, if a VNF instance has anti-malware capability
   according to the description of the VNF, it could be considered as an
   NSF.  A VNF onboarding system [VNF-ONBOARDING] can be used as such a
   subsystem that maintains the descriptions of each VNF to tell whether
   a VNF instance is for an NSF or for a virtualized SDN switch.

   For the support of SFC in the I2NSF framework with SDN, as shown in
   Figure 4, network forwarding elements (e.g., switch) can play the
   role of either SFC Classifier or SFF, which are explained in
   Section 5.  Classifier and SFF have an NSF-Facing Interface with
   Security Controller.  This interface is used to update security
   service function chaining information for traffic flows.  For
   example, when it needs to update an SFP for a traffic flow in an SDN
   network, as shown in Figure 4, SFF (denoted as Switch-3) asks
   Security Controller to update the SFP for the traffic flow (needing
   another security service as an NSF) via NSF-Facing Interface.  This
   update lets Security Controller ask Classifier (denoted as Switch-2)
   to update the mapping between the traffic flow and SFP in Classifier
   via NSF-Facing Interface.

   The following subsections introduce three use cases from [RFC8192]
   for cloud-based security services: (i) firewall system, (ii) deep
   packet inspection system, and (iii) attack mitigation system.  [RFC8192]

6.1.  Firewall: Centralized Firewall System

   A centralized network firewall can manage each network resource and
   apply common rules to individual network elements (e.g., switch).
   The centralized network firewall controls each forwarding element,
   and firewall rules can be added or deleted dynamically.

   The procedure of

   A time-based firewall operations in this system is as follows:

   1.  A switch forwards an unknown flow's packet to one of the SDN
       Controllers.

   2.  The SDN Controller forwards the unknown flow's packet to an
       appropriate security service application, such as the Firewall.

   3.  The Firewall analyzes, typically, the headers and contents of the
       packet.

   4.  If the Firewall regards the packet as a malicious one with a
       suspicious pattern, it reports the malicious packet to the SDN
       Controller.

   5.  The SDN Controller installs new rules (e.g., drop packets with
       the suspicious pattern) into underlying switches.

   6.  The suspected packets are dropped by these switches.

   Existing SDN protocols can be used through standard interfaces
   between the firewall application and switches
   [RFC7149][ITU-T.Y.3300][ONF-OpenFlow] [ONF-SDN-Architecture].

   Legacy firewalls have some challenges such as the expensive cost,
   performance, management of access control, establishment of policy,
   and packet-based access mechanism.  The proposed framework can
   resolve the challenges through the above centralized firewall system
   based on SDN as follows:

   o  Cost: The cost of adding firewalls to network resources such as
      routers, gateways, and switches is substantial due to the reason
      that we need to add firewall on each network resource.  To solve
      this, each network resource can be managed centrally such that a
      single firewall is manipulated by a centralized server.

   o  Performance: The performance of firewalls is often slower than the
      link speed of network interfaces.  Every network resource for
      firewall needs to check firewall rules according to network
      conditions.  Firewalls can be adaptively deployed among network
      switches, depending on network conditions in the framework.

   o  The management of access control: Since there may be hundreds of
      network resources in a network, the dynamic management of access
      control for security services like firewall is a challenge.  In
      the framework, firewall rules can be dynamically added for new
      malware.

   o  The establishment of policy: Policy should be established for each
      network resource.  However, it is difficult to describe what flows
      are permitted or denied for firewall within a specific
      organization network under management.  Thus, a centralized view
      is helpful to determine security policies for such a network.

   o  Packet-based access mechanism: Packet-based access mechanism is
      not enough for firewall in practice since the basic unit of access
      control is usually users or applications.  Therefore, application
      level rules can be defined and added to the firewall system
      through the centralized server.

6.2.  Deep Packet Inspection: Centralized VoIP/VoLTE Security System

   A centralized VoIP/VoLTE security system can monitor each VoIP/VoLTE
   flow and manage VoIP/VoLTE security rules, according to the
   configuration of a VoIP/VoLTE security service called VoIP Intrusion
   Prevention System (IPS).  This centralized VoIP/VoLTE security system
   controls each switch for the VoIP/VoLTE call flow management by
   manipulating the rules that can be added, deleted or modified
   dynamically.

   The centralized VoIP/VoLTE security system can cooperate with a
   network firewall to realize VoIP/VoLTE security service.
   Specifically, a network firewall performs the basic security check of
   an unknown flow's packet observed by a switch.  If the network
   firewall detects that the packet is an unknown VoIP call flow's
   packet that exhibits some suspicious patterns, then it triggers the
   VoIP/VoLTE security system for more specialized security analysis of
   the suspicious VoIP call packet.

   The procedure of VoIP/VoLTE security operations in this system is as
   follows:

   1.  A switch forwards an unknown flow's packet to the SDN Controller,
       and the SDN Controller further forwards the unknown flow's packet
       to the Firewall for basic security inspection.

   2.  The Firewall analyzes the header fields of the packet, and
       figures out that this is an unknown VoIP call flow's signal
       packet (e.g., SIP packet) of a suspicious pattern.

   3.  The Firewall triggers an appropriate security service function,
       such as VoIP IPS, for detailed security analysis of the
       suspicious signal packet.  In order for this triggering of VoIP
       IPS to be served, the suspicious packet is sent to the Service
       Function Forwarder (SFF) that is usually a switch in an SDN
       network, as shown in Figure 4.  The SFF forwards the suspicious
       signal packet to the VoIP IPS.

   4.  The VoIP IPS analyzes the headers and contents of the signal
       packet, such as calling number and session description headers
       [RFC4566].

   5.  If, for example, the VoIP IPS regards the packet as a spoofed
       packet by hackers or a scanning packet searching for VoIP/VoLTE
       devices, it drops the packet.  In addition, the VoIP IPS requests
       the SDN Controller to block that packet and the subsequent
       packets that have the same call-id.

   6.  The SDN Controller installs new rules (e.g., drop packets) into
       underlying switches.

   7.  The malicious packets are dropped by these switches.

   Existing SDN protocols can be used through standard interfaces
   between the VoIP IPS application and switches [RFC7149][ITU-T.Y.3300]
   [ONF-OpenFlow][ONF-SDN-Architecture].

   Legacy hardware based VoIP IPS has some challenges, such as
   provisioning time, the granularity of security, expensive cost, and
   the establishment of policy.  The I2NSF framework can resolve the
   challenges through the above centralized VoIP/VoLTE security system
   based on SDN as follows:

   o  Provisioning: The provisioning time of setting up a legacy VoIP
      IPS to network is substantial because it takes from some hours to
      some days.  By managing the network resources centrally, VoIP IPS
      can provide more agility in provisioning both virtual and physical
      network resources from a central location.

   o  The granularity of security: The security rules of a legacy VoIP
      IPS are compounded considering the granularity of security.  The
      proposed framework can provide more granular security by
      centralizing security control into a switch controller.  The VoIP
      IPS can effectively manage security rules throughout the network.

   o  Cost: The cost of adding VoIP IPS to network resources, such as
      routers, gateways, and switches is substantial due to the reason
      that we need to add VoIP IPS on each network resource.  To solve
      this, each network resource can be managed centrally such that a
      single VoIP IPS is manipulated by a centralized server.

   o  The establishment of policy: Policy should be established for each
      network resource.  However, it is difficult to describe what flows
      are permitted or denied for VoIP IPS within a specific
      organization network under management.  Thus, a centralized view
      is helpful to determine security policies for such a network.

6.3.  Attack Mitigation: Centralized DDoS-attack Mitigation System

   A centralized DDoS-attack mitigation can manage each network resource
   and configure enforced with packet filtering rules to each switch for DDoS-attack mitigation (called
   DDoS-attack Mitigator) on a common server.  The centralized DDoS-
   attack mitigation system defends servers against DDoS attacks outside
   the private network, that is, from public networks.

   Servers are categorized into stateless servers (e.g., DNS servers) and stateful servers (e.g., web servers).  For DDoS-attack
   mitigation, the forwarding of traffic flows in switches can be
   dynamically configured such that malicious traffic flows are handled
   by the paths separated from normal traffic flows in order to minimize
   the impact of those malicious traffic on the the servers.  This flow
   path separation can be done by
   a flow forwarding path management
   scheme based on [AVANT-GUARD].  This management should consider the
   load balance among the switches for the defense against DDoS attacks.

   The procedure of DDoS-attack mitigation in time span (e.g., work hours).  With this system is as follows:

   1.  A Switch periodically reports an inter-arrival pattern of time-based firewall, a
       flow's packets to one of the SDN Controllers.

   2.  The SDN Controller forwards the flow's inter-arrival pattern to
       an appropriate
   time-based security service application, such policy can be enforced, as DDoS-attack
       Mitigator.

   3.  The DDoS-attack Mitigator analyzes the reported pattern for the
       flow. explained in
   Section 4.  If the DDoS-attack Mitigator regards the pattern as a DDoS
       attack, it computes  For example, employees at a packet dropping probability corresponding company are allowed to suspiciousness level and reports this DDoS-attack access
   social networking service websites during lunch time or after work
   hours.

6.2.  Deep Packet Inspection: Centralized VoIP/VoLTE Security System

   A centralized VoIP/VoLTE security system can monitor each VoIP/VoLTE
   flow and manage VoIP/VoLTE security rules, according to the
       SDN Controller.

   5.  The SDN Controller installs new rules into switches (e.g.,
       forward packets with the suspicious inter-arrival pattern with
   configuration of a
       dropping probability).

   6.  The suspicious flow's packets are randomly dropped by switches
       with the dropping probability.

   For the above VoIP/VoLTE security service called VoIP Intrusion
   Prevention System (IPS).  This centralized DDoS-attack mitigation system, VoIP/VoLTE security system
   controls each switch for the existing
   SDN protocols VoIP/VoLTE call flow management by
   manipulating the rules that can be used through standard interfaces between the
   DDoS-attack mitigator application and switches [RFC7149]
   [ITU-T.Y.3300][ONF-OpenFlow][ONF-SDN-Architecture]. added, deleted or modified
   dynamically.

   The centralized DDoS-attack mitigation VoIP/VoLTE security system has challenges similar can cooperate with a
   network firewall to realize VoIP/VoLTE security service.
   Specifically, a network firewall performs the centralized basic security check of
   an unknown flow's packet observed by a switch.  If the network
   firewall system.  The proposed framework can
   resolve detects that the challenges through packet is an unknown VoIP call flow's
   packet that exhibits some suspicious patterns, then it triggers the above centralized DDoS-attack
   mitigation
   VoIP/VoLTE security system based on SDN as follows:

   o  Cost: The cost for more specialized security analysis of adding DDoS-attack mitigators to network
      resources such as routers, gateways, and switches is substantial
      due to
   the reason that we need to add suspicious VoIP call packet.

6.3.  Attack Mitigation: Centralized DDoS-attack mitigator on
      each network resource.  To solve this, Mitigation System

   A centralized DDoS-attack mitigation can manage each network resource can
      be managed centrally such that a single
   and configure rules to each switch for DDoS-attack mitigator is
      manipulated by mitigation (called
   DDoS-attack Mitigator) on a centralized common server.

   o  Performance: The performance of DDoS-attack mitigators is often
      slower than the link speed of network interfaces.  The checking of centralized DDoS-
   attack mitigation system defends servers against DDoS attacks may reduce the performance of outside
   the network interfaces. private network, that is, from public networks.

   Servers are categorized into stateless servers (e.g., DNS servers)
   and stateful servers (e.g., web servers).  For DDoS-attack mitigators can be adaptively deployed among network
      switches, depending on network conditions in
   mitigation, the framework.

   o  The management forwarding of network resources: Since there may traffic flows in switches can be hundreds
      of network resources
   dynamically configured such that malicious traffic flows are handled
   by the paths separated from normal traffic flows in an administered network, order to minimize
   the dynamic
      management impact of network resources for performance (e.g., load
      balancing) is a challenge for DDoS-attack mitigation.  In those malicious traffic on the
      framework, for dynamic network resource management, servers.  This flow path
   separation can be done by a flow forwarding path management scheme can handle the load balancing of
      network switches
   based on [AVANT-GUARD].  With this  This management scheme, should consider the
      current and near-future workload can be spread load
   balance among the network switches for DDoS-attack mitigation.  In addition, DDoS-attack
      mitigation rules can be dynamically added for new the defense against DDoS attacks.

   o  The establishment of policy: Policy should be established for each
      network resource.  However, it is difficult to describe what flows
      are permitted or denied for new DDoS-attacks (e.g., DNS reflection
      attack) within a specific organization network under management.
      Thus, a centralized view is helpful to determine security policies
      for such a network.

   So far this section has described the procedure and impact of the three use cases for network-based network-
   based security services using the I2NSF framework with SDN networks.
   To support these use cases in the proposed data-driven security
   service framework, YANG data models described in
   [consumer-facing-inf-dm], [nsf-facing-inf-dm], and
   [registration-inf-dm] can be used as Consumer-Facing Interface, NSF-
   Facing Interface, and Registration Interface, respectively, along
   with RESTCONF [RFC8040] and NETCONF [RFC6241].

                                                  +--------------------+
   +-------------------------------------------+  | ----------------   |
   |            I2NSF User (OSS/BSS)           |  | | NFV          |   |
   +------+------------------------------------+  | | Orchestrator +-+ |
          |  Consumer-Facing Interface            | -----+---------- | |
   +------|------------------------------------+  |      |           | |
   | -----+----------  (a)  -----------------  |  |  ----+-----      | |
   | |  Security    +-------+  Developer's  |  |  |  |        |      | |
   | |Controller(EM)|       |Mgmt System(EM)|  +-(b)-+ VNFM(s)|      | |
   | -----+----------       -----------------  |  |  |        |      | |
   |      |  NSF-Facing Interface              |  |  ----+-----      | |
   |  ----+-----    ----+-----    ----+-----   |  |      |           | |
   |  |NSF(VNF)|    |NSF(VNF)|    |NSF(VNF)|   |  |      |           | |
   |  ----+-----    ----+-----    ----+-----   |  |      |           | |
   |      |             |             |        |  |      |           | |
   +------|-------------|-------------|--------+  |      |           | |
          |             |             |           |      |           | |
   +------+-------------+-------------+--------+  |      |           | |
   |         NFV Infrastructure (NFVI)         |  |      |           | |
   | -----------    -----------    ----------- |  |      |           | |
   | | Virtual |    | Virtual |    | Virtual | |  |      |           | |
   | | Compute |    | Storage |    | Network | |  |      |           | |
   | -----------    -----------    ----------- |  |  ----+-----      | |
   | +---------------------------------------+ |  |  |        |      | |
   | |         Virtualization Layer          | +-----+ VIM(s) +------+ |
   | +---------------------------------------+ |  |  |        |        |
   | +---------------------------------------+ |  |  ----------        |
   | | -----------  -----------  ----------- | |  |                    |
   | | | Compute |  | Storage |  | Network | | |  |                    |
   | | | Hardware|  | Hardware|  | Hardware| | |  |                    |
   | | -----------  -----------  ----------- | |  |                    |
   | |          Hardware Resources           | |  |   NFV Management   |
   | +---------------------------------------+ |  | and Orchestration  |
   |                                           |  |       (MANO)       |
   +-------------------------------------------+  +--------------------+
   (a) = Registration Interface
   (b) = Ve-Vnfm Interface

     Figure 5: I2NSF Framework Implementation with respect to the NFV
                     Reference Architectural Framework

7.  I2NSF Framework with NFV

   This section discusses the implementation of the I2NSF framework
   using Network Functions Virtualization (NFV).

   NFV is a promising technology for improving the elasticity and
   efficiency of network resource utilization.  In NFV environments,
   NSFs can be deployed in the forms of software-based virtual instances
   rather than physical appliances.  Virtualizing NSFs makes it possible
   to rapidly and flexibly respond to the amount of service requests by
   dynamically increasing or decreasing the number of NSF instances.
   Moreover, NFV technology facilitates flexibly including or excluding
   NSFs from multiple security solution vendors according to the changes
   on security requirements.  In order to take advantages of the NFV
   technology, the I2NSF framework can be implemented on top of an NFV
   infrastructure as show in Figure 5.

   Figure 5 shows an I2NSF framework implementation based on the NFV
   reference architecture that the European Telecommunications Standards
   Institute (ETSI) defines [ETSI-NFV].  The NSFs are deployed as
   virtual network functions (VNFs) in Figure 5.  The Developer's
   Management System (DMS) in the I2NSF framework is responsible for
   registering capability information of NSFs into the Security
   Controller.  Those  However, those NSFs are created or removed by a virtual
   network functions manager (VNFM) in the NFV architecture MANO that performs the
   life-cycle management of VNFs.  Note that the life-cycle management
   of VNFs are out of scope for I2NSF.  The Security Controller controls
   and monitors the configurations (e.g., function parameters and
   security policy rules) of VNFs. VNFs via NSF-Facing Interface along with
   NSF monitoring capability [nsf-facing-inf-dm][nsf-monitoring-dm].
   Both the DMS and Security Controller can be implemented as the
   Element Managements (EMs) in the NFV architecture.  Finally, the
   I2NSF User can be implemented as OSS/BSS (Operational Support
   Systems/Business Support Systems) in the NFV architecture that
   provides interfaces for users in the NFV system.

   The operation procedure in the I2NSF framework based on the NFV
   architecture is as follows:

   1.  The VNFM has a set of virtual machine (VM) images of NSFs, and
       each VM image can be used to create an NSF instance that provides
       a set of security capabilities.  The DMS initially registers a
       mapping table of the ID of each VM image and the set of
       capabilities that can be provided by an NSF instance created from
       the VM image into the Security Controller.

   2.  If the Security Controller does not have any instantiated NSF
       that has the set of capabilities required to meet the security
       requirements from users, it searches the mapping table
       (registered by the DMS) for the VM image ID corresponding to the
       required set of capabilities.

   3.  The Security Controller requests the DMS to instantiate an NSF
       with the VM image ID via VNFM.

   4.  When receiving the instantiation request, the VNFM first asks the
       NFV orchestrator for the permission required to create the NSF
       instance, requests the VIM to allocate resources for the NSF
       instance, and finally creates the NSF instance based on the
       allocated resources.

   5.  Once the NSF instance has been created by the VNFM, the DMS
       performs the initial configurations of the NSF instance and then
       notifies the Security Controller of the NSF instance.

   6.  After being notified of the created NSF instance, the Security
       Controller delivers low-level security policy rules to the NSF
       instance for policy enforcement.

   We can conclude that the I2NSF framework can be implemented based on
   the NFV architecture framework.  Note that the registration of the
   capabilities of NSFs is performed through the Registration Interface
   and the lifecycle management for NSFs (VNFs) is performed through the
   Ve-Vnfm interface between the DMS and VNFM, as shown in Figure 5.
   More details about the I2NSF framework based on the NFV reference
   architecture are described in [i2nsf-nfv-architecture].

8.  Security Considerations

   The same security considerations for the I2NSF framework [RFC8329]
   are applicable to this document.

   This document shares all the security issues of SDN that are
   specified in the "Security Considerations" section of [ITU-T.Y.3300].

9.  Acknowledgments

   This work was supported by Institute for Information & communications
   Technology Promotion (IITP) grant funded by the Korea government
   (MSIP) (No.R-20160222-002755, Cloud based Security Intelligence
   Technology Development for the Customized Security Service
   Provisioning).

   This work has been partially supported by the European Commission
   under Horizon 2020 grant agreement no. 700199 "Securing against
   intruders and other threats through a NFV-enabled environment
   (SHIELD)".  This support does not imply endorsement.

10.  Contributors

   I2NSF is a group effort.  I2NSF has had a number of contributing
   authors.  The following are considered co-authors:

   o  Hyoungshick Kim (Sungkyunkwan University)
   o  Jinyong Tim Kim (Sungkyunkwan University)

   o  Hyunsik Yang (Soongsil University)

   o  Younghan Kim (Soongsil University)

   o  Jung-Soo Park (ETRI)

   o  Se-Hui Lee (Korea Telecom)

   o  Mohamed Boucadair (Orange)

11.  References

11.1.  Normative References

   [ETSI-NFV]
              "Network Functions Virtualisation (NFV); Architectural
              Framework", Available:
              https://www.etsi.org/deliver/etsi_gs/
              nfv/001_099/002/01.01.01_60/gs_nfv002v010101p.pdf, October
              2013.

   [ITU-T.Y.3300]
              "Framework of Software-Defined Networking",
              Available: https://www.itu.int/rec/T-REC-Y.3300-201406-I,
              June 2014.

   [NFV-Terminology]
              "Network Functions Virtualisation (NFV); Terminology for
              Main Concepts in NFV", Available:
              https://www.etsi.org/deliver/etsi_gs/
              NFV/001_099/003/01.02.01_60/gs_nfv003v010201p.pdf,
              December 2014.

   [ONF-OpenFlow]
              "OpenFlow Switch Specification (Version 1.4.0)",
              Available: https://www.opennetworking.org/wp-
              content/uploads/2014/10/openflow-spec-v1.4.0.pdf, October
              2013.

   [ONF-SDN-Architecture]
              "SDN Architecture (Issue 1.1)", Available:
              https://www.opennetworking.org/wp-
              content/uploads/2014/10/TR-
              521_SDN_Architecture_issue_1.1.pdf, June 2016.

   [RFC6020]  Bjorklund, M., "YANG - A Data Modeling Language for the
              Network Configuration Protocol (NETCONF)", RFC 6020,
              October 2010.

   [RFC6241]  Enns, R., Bjorklund, M., Schoenwaelder, J., and A.
              Bierman, "Network Configuration Protocol (NETCONF)",
              RFC 6241, June 2011.

   [RFC7149]  Boucadair, M. and C. Jacquenet, "Software-Defined
              Networking: A Perspective from within a Service Provider
              Environment", RFC 7149, March 2014.

   [RFC7665]  Halpern, J. and C. Pignataro, "Service Function Chaining
              (SFC) Architecture", RFC 7665, October 2015.

   [RFC8040]  Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF
              Protocol", RFC 8040, January 2017.

   [RFC8192]  Hares, S., Lopez, D., Zarny, M., Jacquenet, C., Kumar, R.,
              and J. Jeong, "Interface to Network Security Functions
              (I2NSF): Problem Statement and Use Cases", RFC 8192, July
              2017.

   [RFC8300]  Quinn, P., Elzur, U., and C. Pignataro, "Network Service
              Header (NSH)", RFC 8300, January 2018.

   [RFC8329]  Lopez, D., Lopez, E., Dunbar, L., Strassner, J., and R.
              Kumar, "Framework for Interface to Network Security
              Functions", RFC 8329, February 2018.

11.2.  Informative References

   [AVANT-GUARD]
              Shin, S., Yegneswaran, V., Porras, P., and G. Gu, "AVANT-
              GUARD: Scalable and Vigilant Switch Flow Management in
              Software-Defined Networks", ACM CCS, November 2013.

   [consumer-facing-inf-dm]
              Jeong, J., Kim, E., Ahn, T., Kumar, R., and S. Hares,
              "I2NSF Consumer-Facing Interface YANG Data Model", draft-
              ietf-i2nsf-consumer-facing-interface-dm-03 (work in
              progress), March 2019.

   [ETSI-NFV-MANO]
              "Network Functions Virtualisation (NFV); Management and
              Orchestration", Available:
              https://www.etsi.org/deliver/etsi_gs/nfv-
              man/001_099/001/01.01.01_60/gs_nfv-man001v010101p.pdf,
              December 2014.

   [i2nsf-nfv-architecture]
              Yang, H., Kim, Y., Jeong, J., and J. Kim, "I2NSF on the
              NFV Reference Architecture", draft-yang-i2nsf-nfv-
              architecture-04 (work in progress), November 2018.

   [i2nsf-nsf-cap-im]
              Xia, L., Strassner, J., Basile, C., and D. Lopez,
              "Information Model of NSFs Capabilities", draft-ietf-
              i2nsf-capability-04 (work in progress), October 2018.

   [i2nsf-terminology]
              Hares, S., Strassner, J., Lopez, D., Xia, L., and H.
              Birkholz, "Interface to Network Security Functions (I2NSF)
              Terminology", draft-ietf-i2nsf-terminology-07 (work in
              progress), January 2019.

   [ITU-T.X.1252]
              "Baseline Identity Management Terms and Definitions",
              April 2010.

   [ITU-T.X.800]
              "Security Architecture for Open Systems Interconnection
              for CCITT Applications", March 1991.

   [nsf-facing-inf-dm]
              Kim, J., Jeong, J., Park, J., Hares, S., and Q. Lin,
              "I2NSF Network Security Function-Facing Interface YANG
              Data Model", draft-ietf-i2nsf-nsf-facing-interface-dm-03
              (work in progress), March 2019.

   [nsf-monitoring-dm]
              Jeong, J., Chung, C., Hares, S., Xia, L., and H. Birkholz,
              "A YANG Data Model for Monitoring I2NSF Network Security
              Functions", draft-ietf-i2nsf-nsf-monitoring-data-model-00
              (work in progress), March 2019.

   [nsf-triggered-steering]
              Hyun, S., Jeong, J., Park, J., and S. Hares, "Service
              Function Chaining-Enabled I2NSF Architecture", draft-hyun-
              i2nsf-nsf-triggered-steering-06 (work in progress), July
              2018.

   [opsawg-firewalls]
              Baker, F. and P. Hoffman, "On Firewalls in Internet
              Security", draft-ietf-opsawg-firewalls-01 (work in
              progress), October 2012.

   [policy-translation]
              Yang, J., Jeong, J., and J. Kim, "Security Policy
              Translation in Interface to Network Security Functions",
              draft-yang-i2nsf-security-policy-translation-03 (work in
              progress), March 2019.

   [registration-inf-dm]
              Hyun, S., Jeong, J., Roh, T., Wi, S., and J. Park, "I2NSF
              Registration Interface YANG Data Model", draft-ietf-i2nsf-
              registration-interface-dm-02 (work in progress), March
              2019.

   [RFC4566]  Handley, M., Jacobson, V., and C. Perkins, "SDP: Session
              Description Protocol", RFC 4566, July 2006.

   [VNF-ONBOARDING]
              "VNF Onboarding", Available:
              https://wiki.opnfv.org/display/mano/VNF+Onboarding,
              November 2016.

Appendix A.  Changes from draft-ietf-i2nsf-applicability-08 draft-ietf-i2nsf-applicability-09

   The following changes have been made from draft-ietf-i2nsf-
   applicability-08:
   applicability-09:

   o  This version has reflected the additional questions and comments from Eric
      Rescorla Roman
      Danyliw who is a Security Area Director as follows.

   o  In Section 3, for a Developer's Management System, 1, the problem description of
      an inside attacker I2NSF components and interfaces
      is addressed, clarified with typo correction.

   o  In Section 2, unnecessary references are deleted, and the
      definition of a possible solution for term "NSF" is clarified with the I2NSF terminology
      draft [i2nsf-terminology].

   o  In Section 3, inside attacks is suggested through at DMS or I2NSF NSF monitoring
      functionality. User are described
      clearly along with feasible counterattacks against those inside
      attacks.  Also, some restrictions on the role usage of the DMS are
      required to deal RESTCONF and NETCONF with YANG data
      model language is clarified for three I2NSF interfaces such as the inside attacks.
      Consumer-Facing Interface, NSF-Facing Interface, and Registration
      Interface.

   o  In Section 4, an a real XML code for the time-dependent web access
      control is explained added for the Consumer-Facing Interface as an example.

   o  In Section 5, the network service header (NSH) as a reference is
      added for the metadata format for I2NSF traffic steering based on
      SFC.

   o  In Section 6, the definitions of an SDN forwarding element and an
      NSF are clarified such that clarified.  Also, the optimization of an SDN forwarding element SDN-and-NFV-based
      firewall is a switch
      running as either a hardware middle box or a software virtual
      switch, explained clearly in terms of delay and an NSF is a virtual network function for a security
      service.  It also discusses about how to determine whether a given
      software element in virtualized environments is an NSF or a
      virtualized switch.
      bandwidth saving.

Authors' Addresses

   Jaehoon Paul Jeong
   Department of Software
   Sungkyunkwan University
   2066 Seobu-Ro, Jangan-Gu
   Suwon, Gyeonggi-Do  16419
   Republic of Korea

   Phone: +82 31 299 4957
   Fax:   +82 31 290 7996
   EMail: pauljeong@skku.edu
   URI:   http://iotlab.skku.edu/people-jaehoon-jeong.php
   Sangwon Hyun
   Department of Computer Engineering
   Chosun University
   309 Pilmun-daero, Dong-Gu
   Gwangju  61452
   Republic of Korea

   Phone: +82 62 230 7473
   EMail: shyun@chosun.ac.kr

   Tae-Jin Ahn
   Korea Telecom
   70 Yuseong-Ro, Yuseong-Gu
   Daejeon  305-811
   Republic of Korea

   Phone: +82 42 870 8409
   EMail: taejin.ahn@kt.com

   Susan Hares
   Huawei
   7453 Hickory Hill
   Saline, MI  48176
   USA

   Phone: +1-734-604-0332
   EMail: shares@ndzh.com

   Diego R. Lopez
   Telefonica I+D
   Jose Manuel Lara, 9
   Seville  41013
   Spain

   Phone: +34 682 051 091
   EMail: diego.r.lopez@telefonica.com