Internet DRAFT - draft-romascanu-opsawg-auto-attach-framework
draft-romascanu-opsawg-auto-attach-framework
Internet Engineering Task Force P. Unbehagen, Ed.
Internet Draft D. Romascanu
Intended status: Informational J. Seligson
Expires: February 2017 C. Keene
Avaya
August 2016
A Framework for Automatic Attachment of Network Objects to Core
Networks
draft-romascanu-opsawg-auto-attach-framework-01.txt
Abstract
This informational document describes a method that allows for the
automatic attachment of network objects (e.g. end stations, network
devices, sensors, automation elements) to a core network based on
the individual services that are run or configured on the objects,
and the mapping of the services to the managed paths in the network.
The framework proposed by this document describes the operations
that need to happen in order to have the network objects connected
to the network ('attached') in an automatic manner and start
providing their functionality and services without any requirement
or dependency between the protocol stack on the network objects and
the method used to build the bridging or routing paths in the
network core.
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), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
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."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
Unbehagen, Romascanu Expires February 18, 2017 [Page 1]
Internet-Draft Auto-attach Framework August2016
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
This Internet-Draft will expire on February 18, 2016.
Copyright Notice
Copyright (c) 2016 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
(http://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 .............................................. 3
2. Terminology and Abbreviations.............................. 3
3. Requirements Language...................................... 4
4. Auto Attachment Framework, Model and Components............ 4
4.1. Discussion ............................................. 6
5. Auto Attachment Process.................................... 6
5.1. Element Discovery....................................... 6
5.2. Services Configuration.................................. 7
6. Security Considerations.................................... 8
7. IANA Considerations........................................ 9
8. Further and Related Work................................... 9
9. Acknowledgments ........................................... 9
10. References .............................................. 10
10.1. Normative References.................................. 10
10.2. Informative References................................ 10
Unbehagen, Romascanu Expires February 18, 2017 [Page 2]
Internet-Draft Auto-attach Framework August2016
1. Introduction
Large networking deployments are often faced with the problem of
connecting 'legacy' end stations to an upgraded network
infrastructure, or with the demand to interconnect large numbers of
network objects that perform different tasks, transmit information,
or and controlled remotely across this network infrastructure. This
informational document describes a method that allows for the
automatic attachment of network objects (e.g. end stations, network
devices, sensors, automation elements) to a core network based on
the individual services that are run or configured on the objects,
and the mapping of the services to the managed paths in the network.
The framework proposed by this document describes the operations
that need to happen in order to have the network objects connected
to the network ('attached') in an automatic manner and start
providing their functionality and services without any requirement
or dependency between the protocol stack on the network objects and
the method used to build the bridging or routing paths in the
network core.
2. Terminology and Abbreviations
AAC - Auto Attach Client agent that resides on a non-SPB/PBB
capable element that uses LLDPDUs to request I-SID assignment for
the VLANs which have been configured on its network port.
AAS - Auto Attach Server agent that processes VLAN to I-SID requests
from AAC elements that are connected to a SPB BEB
Element - Any end device or network node that may implement the auto
attach functionality
LAN - Local Area Network
LLDP - Link Layer Discovery Protocol
MUD - Manufacturer User Description
VLAN - Virtual Local Area Network
Unbehagen, Romascanu Expires February 18, 2017 [Page 3]
Internet-Draft Auto-attach Framework August2016
3. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
4. Auto Attachment Framework, Model and Components
This section provides an overview of the behavior of auto attachment
functionality. The scheme proposed in this document is applicable at
the link layer or at the network layer. Is the currently subject of
proposed standardization work in the IEEE 802.1 Working Group [AA],
and it is consistent with work proposed in the IETF in the Network
Virtualization Overlays (nvo3) and Interface to the Routing System
(i2rs) Working Groups.
The purpose of Auto Attach is to allow an end-device to connect to a
networking device at the edge of a bridged or routed network in the
core without any further knowledge or assumption of the protocol(s)
being run in the core. The end-device is called an AA client (AAC)
and the networking device at the edge of the core network is called
the AA server (AAS). An AA Client is a device that does not support
the bridging or routing protocol in the core but supports some form
of binding definition between the applications or services that it
is running and the format of the data packets that it sends to the
network (for example VLAN tags, or tunnel identifiers), if
connectivity permits, has the ability to advertise this data to a
directly connected AA Server. An AA Server is network device that
potentially accepts externally generated service to tags or tunnels
assignments that can be used for automated configuration purposes.
The client identifies itself to the server and then requests service
to tags binding(s). The server will either accept or reject each
binding request. If accepted, any traffic on the (locally
significant) VLAN or tunnel is forwarded through the routed network
at the parameters required by the service.
The simplification brought by the auto-attachment scheme consists of
the use of widely deployed protocols on the first hop connection
between the AAC and the AAS which allow for the interaction between
the two entities to happen in an automatic manner, without requiring
manual configuration of attachment information at multiple
locations. AACs that utilize this automated method for service
assignment pass the assignment information to the AASs where the
mappings are processed and approved or rejected. Specific actions
are taken on both entities based on the outcome of the mapping
request.
Unbehagen, Romascanu Expires February 18, 2017 [Page 4]
Internet-Draft Auto-attach Framework August2016
Auto Attachment Controller
(SDN/Policy Server)
| |
(6) | (6) |
V V
+--------+ +--------+ +---------+
|estation| | | | |
| AAC |---------| AAS |---------| core |
| (3) | | (3) | | Network |
+--------+ +--------+ +---------+
<----------(1)--------> <-------(2)------>
<----------(4)--------> <-------(5)------>
Figure 1: Conceptual Auto Attach Model
(1) Auto-Attachment Primitives
(2) Routing Control Plane
(3) 'horizontal' data model
(4) Service Tag
(5) Service Route/Tunnel ID
(6) 'vertical' data model
Figure 1 depicts a conceptual example of the process where an AAC
can use a one-hop protocol (1) e.g. LLDP that includes the Auto-
Attachment Primitives to communicate the need to connect a service
to the appropriate route or tunnel in the bridged or routed network
which runs the core bridging or routing protocol (2). A 'horizontal'
data model (3) is shared by the AAC and AAS and synchronized after
the initial exchange of information. If the binding requests are
being accepted, the AAC will start sending traffic using the service
tag (4), traffic which will be routed or tunneled appropriately in
the bridged or routed paths (5). The policy data model (6) allows
for the interaction between the network devices and the end-stations
to a policy server, allowing for the integration of AA scheme in a
policy-based service management environment.
An Auto Attach Client (AAC) can run in any device (end station,
estation) that connects to a core network. One field of applications
can be for example Internet of Things (IoT) devices that connect to
Unbehagen, Romascanu Expires February 18, 2017 [Page 5]
Internet-Draft Auto-attach Framework August2016
a network. The service association is automated with relative low
resources, allowing connection of the devices to the appropriate
network services and applications.
The different classes of devices that run AACs may be configured by
means that are specific for the respective classes of applications
or services. A YANG module may instantiate the 'vertical' data model
(6) of the Auto Attachment framework allowing for standard-based
interaction with the Auto Attachment Controllers, which are
instantiated as policy or Software Define Networks (SDN) servers.
4.1. Discussion
At least one proprietary implementation introduces the concept of an
Auto Attach Proxy. Such an optional block placed between an AAC and
AAS would allow for multiplexing and/or virtualizing the access to
servers. At this phase we decided to leave this optional block for
further study.
5. Auto Attachment Process
The auto-attachment process is composed of a one-hop two steps
protocol that performs the following functions:
- Element Discovery
- Services Configuration
5.1. Element Discovery
The first stage of establishing AA connectivity involves element
discovery. An Auto Attach agent resides on all capable elements.
Server agents control the Auto Attach (AA) of service tags to routes
or tunnels when enabled to accept and process such requests from AAC
elements. Typically this is done through a global service setting
and through per-port settings that control the transmission of
information in the one-hop protocol (1) on the appropriate links
that interface AAC's and AAS's.
Once the required AA settings are enabled on the elements (e.g., the
AA service and the per-port AA settings) the AA agent on each
element type, both AAC and AAS, advertises its capabilities (i.e.,
server/client) through protocol (1) primitives to each other.
Following discovery of AA capabilities by both the AAC and the AAS,
the AA agent on each element is aware of all AA services currently
provided by the network elements to which it is directly connected.
Based on this information, an AAC agent can determine whether Auto
Unbehagen, Romascanu Expires February 18, 2017 [Page 6
Internet-Draft Auto-attach Framework August2016
Attach data, namely locally administered assignments, should be
exported to the AAS that is associated with an edge networking
device to which it is attached to on its network uplink ports.
5.2. Services Configuration
Service mappings can be established when these two criteria are met:
1. AA Server found during discovery
AAC - - AAS peering was established during the discovery
process
2. Service Tags / Routes mapping are defined locally
Assuming that an administrator has defined one or more tags /
routes mappings, or AAC bindings have been received for
processing
Each mapping assignment in an AA request received by the AAS is
processed individually and can be accepted or rejected. An
assignment may be rejected for a number of reasons, such as server
resource limitations or, for example, restrictions related only to
the source AAC. Rejected assignments are passed back to the
originating AAC with a rejected state and, if appropriate, an
indication as to why the rejection occurred. Limited state
information may be maintained on the server related to rejected
assignments.
Each route (or tunnel, or VLAN) that is associated with an accepted
assignment is instantiated on the AAS bridge if it does not already
exist.
The AAS agent is responsible for tracking which, if any, of these
actions are performed so that settings can be cleared when they are
no longer needed. This can occur, for example, when configuration
changes on an AAC updates the received assignment list when an AAC
associated with a downlink port changes or an AAC connection
disappears entirely.
Each station tag (e.g. VLAN, subnet) that is associated with a
service assignment must be defined on the client's device. The port
associated with the uplink connecting the AAC to the AAS must be a
member of the VLAN or Subnet assignment lists that are sent to and
accepted by the AAS. This allows tagged traffic on to pass through
the edge networking device into the core routed network when
required. To ensure that markings are maintained between devices,
Unbehagen, Romascanu Expires February 18, 2017 [Page 7]
Internet-Draft Auto-attach Framework August2016
traffic on the uplink port MUST be tagged. If a tag has not been
created before the assignment itself, it is automatically created by
the AAC agent when a proposed assignment is accepted. Port tagging
and the port VLAN or subnet membership update are also performed by
the AAC automatically based on assignment acceptance. To ensure
consistency, tags SHOULD NOT be deleted as long as they are
referenced in any I-SID/VLAN assignments on the device.
An AAC must handle primary AAS loss and this requires maintenance
of a server's inactivity timer. In order to make this possible a
time-alive mechanism needs to be implemented between any AAC and its
primary AAS. If an interruption of communication is detected, the
service is considered interrupted, the service tags / routes
assignments accepted by the server are considered rejected.
Assignment data is then defaulted (reverts to the 'pending' state)
and the AA agent, which resides on the AAC, removes related
settings. If a back-up mechanism (alternate routes to the primary
AAS, secondary AAS) exists it will be activated.
A "last updated" timestamp is associated with all active assignments
on the AAS. When this value is not updated for a pre-determined
amount of time, the service tags / routes assignment is considered
obsolete. Obsolete assignment data and related settings are removed
by the AAS.
The current routes / tags assignment list is advertised by an AAC at
regular intervals. During processing of this data, an AAS must
handle list updates and delete assignments from previous
advertisements that are no longer present. Though these entries
would be processed appropriately when they timeout, the AAS attempts
to update the data in real-time and SHOULD initiate deletion
immediately upon detection of this condition.
6. Security Considerations
It is important to provide an option to ensure that the
aforementioned Auto Attach communication is secure in terms of data
integrity (i.e., the data has not been altered in transit) and
authenticity (i.e., the data source is valid).
There are several ways this can be ensured:
- Assume that the one-hop link between the end device and the
network device makes use of certificate based authentication like
IEEE 802.1AR [AR] certificates
- Check data integrity and perform source validation by using an
optional keyed-hash message authentication code (HMAC) to protect
Unbehagen, Romascanu Expires February 18, 2017 [Page
Internet-Draft Auto-attach Framework August2016
the Discovery and Configuration message exchanges. This type of
message authentication allows communicating parties to verify that
the contents of the message have not been altered and that the
source is authentic. Use of this mechanism is optional and is
controlled through a user-configurable attribute.
7. IANA Considerations
This memo includes no request to IANA.
Note: the section will be removed during conversion into an RFC by
the RFC Editor.
8. Further and Related Work
- Standard extensions to the IEEE 802.1AB (LLDP) [LLDP] protocol are
developed by the IEEE 802.1 Working Group. The relevant project is
IEEE 802.1Qcj [AA] for 'Automatic Attachment to Provider Backbone
Bridges (PBB) services'.
- Element Discovery could be implemented by using one of the
protocols that implement the Manufacturer User Description
Specification [MUD-SPEC]. The MUD LLDP Extension, the MUD URL DHCP
Option and the MUD URC X.509 Extension defined in [MUD-SPEC] can
be used for the purpose of instantiating the Discovery process.
9. Acknowledgments
The first version of this document that introduced the auto attach
concept was co-authored by Nigel Bragg and Ludovic Beliveau.
We would like to thank the following people (in no particular order)
for their contributions:
Zenon Kuc
Cristian Mema
Roger Lapuh
Craig Griffin
Chris Buerger
Keith Krajewski
Eliot Lear
Unbehagen, Romascanu Expires February 18, 2017 [Page 9]
Internet-Draft Auto-attach Framework August2016
This document was prepared using 2-Word-v2.0.template.dot.
10. References
10.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[LLDP] IEEE STD 802.1AB, "IEEE Standard for Local and
Metropolitan Area Networks-- Station and Media Access
Control Connectivity Discovery", 2005.
[AR] IEEE STD 802.1AR, "IEEE Standard for Local and metropolitan
area networks - Secure Device Identity", 2009.
10.2. Informative References
[AA] IEEE 802.1Qcj, "Standard for Local and Metropolitan Area
Networks-Media Access Control (MAC) Bridges and Virtual
Bridged Local Area Networks Amendment: Automatic
Attachment to Provider Backbone Bridging (PBB) services"
[MUD-SPEC] Lear E. and R. Droms, "Manufacturer Usage Description
Specification",draft-lear-ietf-netmod-mud-04 (work in
progress), August 2016.
Authors' Addresses
Paul Unbehagen Jr., editor
Avaya
1300 W. 120th Avenue
Westminster, CO 80234
US
Email: unbehagen@avava.com
Dan Romascanu,
Avaya
Azrieli Center Holon
26, HaRokhmim Str., Bldg. D
Holon, 5885849
Unbehagen, Romascanu Expires February 18, 2017 [Page 10]
Internet-Draft Auto-attach Framework August2016
Israel
Phone: +972-3-645-8414
Email: dromasca@avaya.com
John Seligson
Avaya
4655 Great America Parkway
Santa Clara, CA 95054
US
Email: jseligso@avaya.com
Carl Keene
Avaya
600 Technology Park Dr
Boston, MA 01821
US
Email: ckeene@avava.com
Unbehagen, Romascanu Expires February 18, 2017 [Page 11]