Internet DRAFT - draft-perlman-trill-cloudlet
draft-perlman-trill-cloudlet
TRILL WG Radia. Perlman
Internet-Draft Intel Labs
Intended status: Standards Track Fangwei. Hu
Expires: January 31, 2013 ZTE Corporation
Donald. Eastlake 3rd
Huawei technology
July 30, 2012
TRILL Cloudlet
draft-perlman-trill-cloudlet-00
Abstract
This draft addresses the problems of nickname exhaustion, size of
endnode learning table in access RBs, and the size of the core TRILL
network. It does this by creating an invisible level of hierarchy at
the edge that we refer to as a "cloudlet".
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 http://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 January 31, 2013.
Copyright Notice
Copyright (c) 2012 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
Perlman, et al. Expires January 31, 2013 [Page 1]
Internet-Draft TRILL Cloudlet July 2012
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Smart Endnode . . . . . . . . . . . . . . . . . . . . . . . . . 3
4. Multi-homing . . . . . . . . . . . . . . . . . . . . . . . . . 5
5. Building a Cloudlet . . . . . . . . . . . . . . . . . . . . . . 5
6. Security Considerations . . . . . . . . . . . . . . . . . . . . 6
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 6
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6
9. Normative References . . . . . . . . . . . . . . . . . . . . . 6
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 7
Perlman, et al. Expires January 31, 2013 [Page 2]
Internet-Draft TRILL Cloudlet July 2012
1. Overview
The IETF TRILL (Transparent Interconnection of Lots of Links)
protocol implemented by devices called RBridges (Routing Bridges,
[RFC6325]), provides optimal pair-wise data frame forwarding without
configuration, safe forwarding even during periods of temporary
loops, and support for multipathing of both unicast and multicast
traffic. TRILL accomplishes this by using IS-IS([RFC1195])
([RFC6165]) ([RFC6326bis])link state routing and encapsulating
traffic using a header that includes a hop count.Devices that
implement TRILL are called "RBridges" (Routing Bridges) or TRILL
Switches.
This draft addresses the problems of nickname exhaustion, size of
endnode learning table in access RBs, and the size of the core TRILL
network. It does this by creating an invisible level of hierarchy at
the edge that we refer to as a "cloudlet".
A cloudlet looks to the core like a collection of endnodes attached
to a core access RB. The cloudlet can be a mixture of endnodes,
hypervisors, switches, and simple RBs. A cloudlet will not consume
nicknames, nor introduce LSPs into the core. In this draft we will
build the concept from the simplest case; a cloudlet consisting of a
single endnode, and expand the idea in subsequent sections.
2. Terminology
This document uses the acronyms defined in([RFC6325]) and the
following phrase:
Smart end node: An end node that can do TRILL encapsulation/
decapsulation.
Simple RBridge: An edge RBridge that assign its nickname to the smart
end node attached. It should response the querying from its attached
smart end node.
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 ([RFC2119]).
3. Smart Endnode
Suppose endnode E is attached to RBridge R. E signals to R that E
wishes to be a "smart endnode". Let's take the figure 1 as the
example.
Perlman, et al. Expires January 31, 2013 [Page 3]
Internet-Draft TRILL Cloudlet July 2012
E------R
figure1
E, will do TRILL encapsulation/decapsulation and endnode learning of
endnodes it is in communication with, freeing its attached RB, R,
from learning the addresses of nodes corresponding with E. When E
encapsulates, E uses R's nickname as "ingress" in the TRILL header.
Although this draft is explaining the concept rather than exact
details of packet formats, a logical way for E to signal R that E
wishes to act as a smart endnode is by having E issue a TRILL-Hello,
with a flag indicating that E wants to be a "smart endnode", and
perhaps a flag indicating that E wishes to receive ESADI. A logical
way for R to respond is by including E in its neighbor list in R's
TRILL-Hello, with a flag indicating that R hears E's Hello, but
acknowledges that E is a smart endnode rather than a true RB
neighbor. R also includes R's nickname in its TRILL-Hello.
The endnode E does not issue LSPs, nor does it receive LSPs. It does
the following:
o It keeps an endnode table of (MAC, nickname) of end nodes with
which the smart end node is communicating. Entries in this table
are populated the same way that an edge RBridge populates the
entries in its table:
* learning from (source, ingress) on packets it decapsulates
* from ESADI([TRILL-ESADI]), TRILL ESADI is an end station system
distribution protocol, which can be used to distribute the
(MAC,nickname) entry.
* by querying a directory,Smart end node E can get the (MAC,
nickname) entry by querying a directory. The RBridges which
the smart end nodes are attached act as directory server. Both
the push and pull model are supported in this
document([Directory]). In push model, the RBridge pushes down
the MAC and egress nickname mapping for the hosts which might
communicate with hosts attached to the RBridge. In pull
model,smart end node sends a pull request to the RBridge if it
has no the entry of (MAC, nickname) of the destination end
node.
* by having some entries configured
The Simple RBridge R does the following:
Perlman, et al. Expires January 31, 2013 [Page 4]
Internet-Draft TRILL Cloudlet July 2012
o It marks the port to smart end node E as being "leave
encapsulated"
o For attached access ports, simple RBridge R keeps, for each such
port, a set of MAC addresses of end nodes on those ports. For
each of those MAC addresses, R keeps a new flag indicating whether
that MAC address is a "smart endnode".
o When receiving a packet with R's nickname as egress, if the
destination MAC address in the enclosed packet is listed as "smart
endnode", R leaves the packet encapsulated when forwarding to E.
4. Multi-homing
Now suppose E is attached to the TRILL campus in two places; to
RBridges R1 and R2.
There are two ways for this to work:
(1) E can choose either R1 or R2's nickname, when encapsulating a
frame, whether the encapsulated frame is sent via R1 or R2.
Most likely, E would always choose the same one, unless that one
was unreachable, and then E would switch to the other.
(2) R1 and R2 might indicate, in their Hello, another nickname that
attached end nodes may use if they are multihomed to R1 and R2,
separate from R1 and R2's nicknames (which they would also list
in their Hello). This would be useful if there were many end
nodes multihomed to the same set of RBridges. This would be
analogous to a pseudonode nickname; return traffic would go via
the shortest path from the source to the endnode, whether it is
R1 or R2. If E loses connectivity to R2, then E would revert to
using R1's nickname. This does use a nickname, but hopefully
would be shared by many end nodes multihomed to the same set of
RBridges.
(When end ndoe E loses connectivity to one of the RBridges, how to
detect the connectionless and how to switch to another RBridge will
be defined later in this document.)
5. Building a Cloudlet
Another level of functionality might be to build reasonably large
cloudlets, with multiple hops of ordinary spanning tree bridges,
and/or "simple RBridges". A "simple RBridge" is one that only is
aware of the topology of the cloudlet. In other words, the cloudlet
Perlman, et al. Expires January 31, 2013 [Page 5]
Internet-Draft TRILL Cloudlet July 2012
operates like a lower level of routing. Inside the TRILL core,
forwarding is based on nicknames. Inside the cloudlet, forwarding is
based on MAC addresses of the end nodes in the cloudlet, although the
packet being forwarded may be encapsulated with a TRILL header. If
all end nodes in the cloudlet are smart end nodes, then packets
inside the cloudlet would always be encapsulated. If there in a
"normal" endnode N, in the cloudlet, then N would issue
unencapsulated packets, and the first simple RBridge R1, would
encapsulate it, and R1 would maintain the endnode cache entries for
end nodes communicating with N. Likewise, when R1 is forwarding to N,
R1 would decapsulate the packet.
RBridges within the cloudlet have to know whether the packet belongs
in the cloudlet or the TRILL campus. This is done based on the
"egress nickname" in the encapsulated packet. If the egress nickname
is the nickname to be used by the cloudlet, then the packet is
forwarded only within the cloudlet. If the egress nickname is not
one used by the cloudlet, the packet is forwarded to the "true
RBridge" that attaches the cloudlet to the TRILL campus. If the
cloudlet is multihomed to R1 and R2, say, and the "ingress nickname"
indicates R1's nickname, then the cloudlet forwards the encapsulated
packet towards R1. If the cloudlet is multihomed and is using a
pseudonode nickname, then the cloudlet forwards to whichever of R1 or
R2 is closer.
6. Security Considerations
For general TRILL Security Considerations, see([RFC6325]).
7. Acknowledgements
TBD
8. IANA Considerations
9. Normative References
[Directory]
Linda, D., Eastlake, D., Perlman, R., and I. Gashinsky,
"TRILL Edge Directory Assistance Framework", raft-ietf-
trill-directory-framework-00 (work in process), July 2012.
[RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and
dual environments", RFC 1195, December 1990.
Perlman, et al. Expires January 31, 2013 [Page 6]
Internet-Draft TRILL Cloudlet July 2012
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC6165] Banerjee, A. and D. Ward, "Extensions to IS-IS for Layer-2
Systems", RFC 6165, April 2011.
[RFC6325] Perlman, R., Eastlake, D., Dutt, D., Gai, S., and A.
Ghanwani, "Routing Bridges (RBridges): Base Protocol
Specification", RFC 6325, July 2011.
[RFC6326bis]
Eastlake, D., Banerjee, A., Dutt, D., Ghanwani, A., and R.
Perlman, "Transparent Interconnection of Lots of Links
(TRILL) Use of IS-IS",
draft-eastlake-isis-rfc6326bis-07.txt, work in process,
March 2012.
[TRILL-ESADI]
Zhai, H., Hu, F., Perlman, R., and D. Eastlake, "TRILL
(Transparent Interconnection of Lots of Links): The ESADI
(End Station Address Distribution Information) Protocol",
draft-ietf-trill-esadi-00.txt (work in process),
June 2012.
Authors' Addresses
Radia Perlman
Intel Labs
2200 Mission College Blvd.
Santa Clara, CA 95054-1549
USA
Phone: +1-408-765-8080
Email: Radia@alum.mit.edu
Fangwei Hu
ZTE Corporation
No.889 Bibo Rd
Shanghai, 201203
China
Phone: +86 21 68896273
Email: hu.fangwei@zte.com.cn
Perlman, et al. Expires January 31, 2013 [Page 7]
Internet-Draft TRILL Cloudlet July 2012
Donald Eastlake,3rd
Huawei technology
155 Beaver Street
Milford, MA 01757
USA
Phone: +1-508-634-2066
Email: d3e3e3@gmail.com
Perlman, et al. Expires January 31, 2013 [Page 8]