| draft-ietf-trill-directory-assist-mechanisms-12v3.original | draft-ietf-trill-directory-assist-mechanisms-12v3preedits.txt | |||
|---|---|---|---|---|
| INTERNET-DRAFT D. Eastlake | ||||
| INTERNET-DRAFT Donald Eastlake | Intended status: Proposed Standard L. Dunbar | |||
| Intended status: Proposed Standard Linda Dunbar | Expires: September 1, 2017 Huawei | |||
| Huawei | R. Perlman | |||
| Radia Perlman | ||||
| EMC | EMC | |||
| Yizhou Li | Y. Li | |||
| Huawei | Huawei | |||
| Expires: September 1, 2017 March 2, 2017 | March 2, 2017 | |||
| TRILL: Edge Directory Assist Mechanisms | TRILL: Edge Directory Assist Mechanisms | |||
| <draft-ietf-trill-directory-assist-mechanisms-12.txt> | <draft-ietf-trill-directory-assist-mechanisms-12.txt> | |||
| Abstract | Abstract | |||
| This document describes mechanisms for providing directory service to | This document describes mechanisms for providing directory service to | |||
| TRILL (Transparent Interconnection of Lots of Links) edge switches. | TRILL (Transparent Interconnection of Lots of Links) edge switches. | |||
| The directory information provided can be used in reducing multi- | The directory information provided can be used in reducing multi- | |||
| destination traffic, particularly ARP/ND and unknown unicast | destination traffic, particularly ARP/ND and unknown unicast | |||
| flooding. It can also be used to detect traffic with forged source | flooding. It can also be used to detect traffic with forged source | |||
| addresses. | addresses. | |||
| Status of This Memo | Status of This Memo | |||
| This Internet-Draft is submitted to IETF in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
| provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
| Distribution of this document is unlimited. Comments should be sent | ||||
| to the TRILL working group mailing list. | ||||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF), its areas, and its working groups. Note that | Task Force (IETF). Note that other groups may also distribute | |||
| other groups may also distribute working documents as Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| The list of current Internet-Drafts can be accessed at | This Internet-Draft will expire on September 1, 2017. | |||
| http://www.ietf.org/1id-abstracts.html. The list of Internet-Draft | ||||
| Shadow Directories can be accessed at | Copyright Notice | |||
| http://www.ietf.org/shadow.html. | ||||
| Copyright (c) 2017 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. | ||||
| INTERNET-DRAFT TRILL: Directory Service Mechanisms | INTERNET-DRAFT TRILL: Directory Service Mechanisms | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction............................................4 | 1. Introduction............................................4 | |||
| 1.1 Uses of Directory Information..........................5 | 1.1 Uses of Directory Information..........................5 | |||
| 1.2 Terminology............................................5 | 1.2 Terminology............................................5 | |||
| 2. Push Model Directory Assistance Mechanisms..............7 | 2. Push Model Directory Assistance Mechanisms..............7 | |||
| 2.1 Requesting Push Service................................7 | 2.1 Requesting Push Service................................7 | |||
| 2.2 Push Directory Servers.................................7 | 2.2 Push Directory Servers.................................7 | |||
| 2.3 Push Directory Server State Machine....................8 | 2.3 Push Directory Server State Machine....................8 | |||
| 2.3.1 Push Directory States................................9 | 2.3.1 Push Directory States................................9 | |||
| 2.3.2 Push Directory Events and Conditions................11 | 2.3.2 Push Directory Events and Conditions................11 | |||
| 2.3.3 State Transition Diagram and Table..................12 | 2.3.3 State Transition Diagram and Table..................12 | |||
| 2.4 End Stations and Push Directories.....................13 | 2.4 End Stations and Push Directories.....................13 | |||
| 2.5 Additional Push Details...............................14 | 2.5 Additional Push Details...............................14 | |||
| 2.6 Primary to Secondary Server Push Service..............15 | 2.6 Primary to Secondary Server Push Service..............15 | |||
| skipping to change at page 2, line 48 | skipping to change at page 3, line ? | |||
| 3.5.1 Pull Directory Hosted on an End Station.............33 | 3.5.1 Pull Directory Hosted on an End Station.............33 | |||
| 3.5.2 Use of Pull Directory by End Stations...............34 | 3.5.2 Use of Pull Directory by End Stations...............34 | |||
| 3.5.3 Native Pull Directory Messages......................35 | 3.5.3 Native Pull Directory Messages......................35 | |||
| 3.6 Pull Directory Message Errors.........................35 | 3.6 Pull Directory Message Errors.........................35 | |||
| 3.6.1 Error Codes.........................................36 | 3.6.1 Error Codes.........................................36 | |||
| 3.6.2 Sub-Errors Under Error Codes 1 and 3................37 | 3.6.2 Sub-Errors Under Error Codes 1 and 3................37 | |||
| 3.6.3 Sub-Errors Under Error Codes 128 and 131............37 | 3.6.3 Sub-Errors Under Error Codes 128 and 131............37 | |||
| 3.7 Additional Pull Details...............................38 | 3.7 Additional Pull Details...............................38 | |||
| 3.8 The No Data Flag......................................38 | 3.8 The No Data Flag......................................38 | |||
| 3.9 Pull Directory Service Configuration..................39 | 3.9 Pull Directory Service Configuration..................39 | |||
| 4. Directory Use Strategies and Push-Pull Hybrids.........41 | 4. Directory Use Strategies and Push-Pull Hybrids.........41 | |||
| 5. TRILL ES-IS............................................43 | 5. TRILL ES-IS............................................43 | |||
| 5.1 PDUs and System IDs...................................43 | 5.1 PDUs and System IDs...................................43 | |||
| 5.2 Adjacency, DRB Election, Hellos, TLVs, Etc............44 | 5.2 Adjacency, DRB Election, Hellos, TLVs, Etc............44 | |||
| 5.3 Link State............................................44 | 5.3 Link State............................................44 | |||
| INTERNET-DRAFT TRILL: Directory Service Mechanisms | ||||
| Table of Contents Continued | ||||
| 6. Security Considerations................................45 | 6. Security Considerations................................45 | |||
| 6.1 Directory Information Security........................45 | 6.1 Directory Information Security........................45 | |||
| 6.2 Directory Confidentiality and Privacy.................45 | 6.2 Directory Confidentiality and Privacy.................45 | |||
| 6.3 Directory Message Security Considerations.............45 | 6.3 Directory Message Security Considerations.............45 | |||
| 7. IANA Considerations....................................47 | 7. IANA Considerations....................................47 | |||
| 7.1 ESADI-Parameter Data Extensions.......................47 | 7.1 ESADI-Parameter Data Extensions.......................47 | |||
| 7.2 RBridge Channel Protocol Numbers......................48 | 7.2 RBridge Channel Protocol Numbers......................48 | |||
| 7.3 The Pull Directory (PUL) and No Data (NOD) Bits.......48 | 7.3 The Pull Directory (PUL) and No Data (NOD) Bits.......48 | |||
| 7.4 TRILL Pull Directory QTYPEs...........................49 | 7.4 TRILL Pull Directory QTYPEs...........................49 | |||
| 7.5 Pull Directory Error Code Registries..................49 | 7.5 Pull Directory Error Code Registries..................49 | |||
| 7.6 TRILL-ES-IS MAC Address...............................49 | 7.6 TRILL-ES-IS MAC Address...............................49 | |||
| Normative References......................................50 | Normative References......................................50 | |||
| Informational References..................................51 | Informational References..................................51 | |||
| Acknowledgments...........................................53 | Acknowledgments...........................................53 | |||
| Authors' Addresses........................................54 | Authors' Addresses........................................54 | |||
| Copyright, Disclaimer, and Additional IPR Provisions......55 | ||||
| INTERNET-DRAFT TRILL: Directory Service Mechanisms | INTERNET-DRAFT TRILL: Directory Service Mechanisms | |||
| 1. Introduction | 1. Introduction | |||
| [RFC7067] gives a problem statement and high level design for using | [RFC7067] gives a problem statement and high level design for using | |||
| directory servers to assist TRILL [RFC6325] [RFC7780] edge nodes in | directory servers to assist TRILL [RFC6325] [RFC7780] edge nodes in | |||
| reducing multi-destination ARP/ND [ARPND], reducing unknown unicast | reducing multi-destination ARP/ND [ARPND], reducing unknown unicast | |||
| flooding traffic, and improving security against address spoofing | flooding traffic, and improving security against address spoofing | |||
| within a TRILL campus. Because multi-destination traffic becomes an | within a TRILL campus. Because multi-destination traffic becomes an | |||
| increasing burden as a network scales up in number of nodes, reducing | increasing burden as a network scales up in number of nodes, reducing | |||
| skipping to change at page 41, line 52 | skipping to change at page 41, line 52 | |||
| configured so that some use Push Directory services and some use Pull | configured so that some use Push Directory services and some use Pull | |||
| Directory services for the same Data Label if both Push and Pull | Directory services for the same Data Label if both Push and Pull | |||
| Directory services are available for that Data Label. And there can | Directory services are available for that Data Label. And there can | |||
| be Data Labels for which directory services are not used at all. | be Data Labels for which directory services are not used at all. | |||
| There are a wide variety of strategies that a TRILL switch can adopt | There are a wide variety of strategies that a TRILL switch can adopt | |||
| for making use of directory assistance. A few suggestions are given | for making use of directory assistance. A few suggestions are given | |||
| below. | below. | |||
| - Even if a TRILL switch will normally be operating with | - Even if a TRILL switch will normally be operating with | |||
| information from a complete Push Directory server, there will be a | information from a complete Push Directory server, there will be a | |||
| period of time when it first comes up before the information it | period of time when it first comes up before the information it | |||
| holds is complete. Or, it could be that the only Push Directories | holds is complete. Or, it could be that the only Push Directories | |||
| that can push information to it are incomplete or that they are | that can push information to it are incomplete or that they are | |||
| just starting and may not yet have pushed the entire directory. | just starting and may not yet have pushed the entire directory. | |||
| INTERNET-DRAFT TRILL: Directory Service Mechanisms | INTERNET-DRAFT TRILL: Directory Service Mechanisms | |||
| Thus, it is RECOMMENDED that all TRILL switches have a strategy | Thus, it is RECOMMENDED that all TRILL switches have a strategy | |||
| for dealing with the situation where they do not have complete | for dealing with the situation where they do not have complete | |||
| directory information. Examples are to send a Pull Directory query | directory information. Examples are to send a Pull Directory query | |||
| or to revert to [RFC6325] behavior. | or to revert to [RFC6325] behavior. | |||
| - If a TRILL switch receives a native frame X resulting in | - If a TRILL switch receives a native frame X resulting in | |||
| seeking directory information, a choice needs to be made as to | seeking directory information, a choice needs to be made as to | |||
| what to do if it does not already have the directory information | what to do if it does not already have the directory information | |||
| it needs. In particular, it could (1) immediately flood the TRILL | it needs. In particular, it could (1) immediately flood the TRILL | |||
| Data packet resulting from ingressing X in parallel with seeking | Data packet resulting from ingressing X in parallel with seeking | |||
| the directory information, (2) flood that TRILL Data packet after | the directory information, (2) flood that TRILL Data packet after | |||
| a delay, if it fails to obtain the directory information, or (3) | a delay, if it fails to obtain the directory information, or (3) | |||
| discard X if it fails to obtain the information. The choice might | discard X if it fails to obtain the information. The choice might | |||
| depend on the priority of frame X since the higher that priority | depend on the priority of frame X since the higher that priority | |||
| typically the more urgent the frame is and the greater the | typically the more urgent the frame is and the greater the | |||
| probability of harm in delaying it. If a Pull Directory request is | probability of harm in delaying it. If a Pull Directory request is | |||
| sent, it is RECOMMENDED that its priority be derived from the | sent, it is RECOMMENDED that its priority be derived from the | |||
| priority of the frame X with the derived priority configurable and | priority of the frame X with the derived priority configurable and | |||
| having the following defaults: | having the following defaults: | |||
| Ingressed If Flooded If Flooded | Ingressed If Flooded If Flooded | |||
| Priority Immediately After Delay | Priority Immediately After Delay | |||
| -------- ----------- ----------- | -------- ----------- ----------- | |||
| 7 5 6 | 7 5 6 | |||
| 6 5 6 | 6 5 6 | |||
| 5 4 5 | 5 4 5 | |||
| 4 3 4 | 4 3 4 | |||
| 3 2 3 | 3 2 3 | |||
| 2 0 2 | 2 0 2 | |||
| skipping to change at page 50, line 7 | skipping to change at page 50, line 7 | |||
| 7.6 TRILL-ES-IS MAC Address | 7.6 TRILL-ES-IS MAC Address | |||
| Action 12: IANA is requested to assign a TRILL multicast MAC address | Action 12: IANA is requested to assign a TRILL multicast MAC address | |||
| from the "TRILL Multicast Addresses" registry on the TRILL Parameters | from the "TRILL Multicast Addresses" registry on the TRILL Parameters | |||
| IANA web page [value 01-80-C2-00-00-47 recommended]. Description is | IANA web page [value 01-80-C2-00-00-47 recommended]. Description is | |||
| "TRILL-ES-IS". Reference is [this document]. | "TRILL-ES-IS". Reference is [this document]. | |||
| INTERNET-DRAFT TRILL: Directory Service Mechanisms | INTERNET-DRAFT TRILL: Directory Service Mechanisms | |||
| Normative References | 8. References | |||
| 8.1. Normative References | ||||
| [RFC826] - Plummer, D., "An Ethernet Address Resolution Protocol", | [RFC826] - Plummer, D., "An Ethernet Address Resolution Protocol", | |||
| RFC 826, November 1982. | RFC 826, November 1982. | |||
| [RFC903] - Finlayson, R., Mann, T., Mogul, J., and M. Theimer, "A | [RFC903] - Finlayson, R., Mann, T., Mogul, J., and M. Theimer, "A | |||
| Reverse Address Resolution Protocol", STD 38, RFC 903, June | Reverse Address Resolution Protocol", STD 38, RFC 903, June | |||
| 1984 | 1984 | |||
| [RFC2119] - Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] - Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", BCP 14, RFC 2119, March 1997 | Requirement Levels", BCP 14, RFC 2119, March 1997 | |||
| skipping to change at page 51, line 35 | skipping to change at page 52, line ? | |||
| Ghanwani, A., and S. Gupta, "Transparent Interconnection of | Ghanwani, A., and S. Gupta, "Transparent Interconnection of | |||
| Lots of Links (TRILL): Clarifications, Corrections, and | Lots of Links (TRILL): Clarifications, Corrections, and | |||
| Updates", RFC 7780, DOI 10.17487/RFC7780, February 2016, | Updates", RFC 7780, DOI 10.17487/RFC7780, February 2016, | |||
| <http://www.rfc-editor.org/info/rfc7780>. | <http://www.rfc-editor.org/info/rfc7780>. | |||
| [RFC7961] - Eastlake 3rd, D. and L. Yizhou, "Transparent | [RFC7961] - Eastlake 3rd, D. and L. Yizhou, "Transparent | |||
| Interconnection of Lots of Links (TRILL): Interface Addresses | Interconnection of Lots of Links (TRILL): Interface Addresses | |||
| APPsub-TLV", RFC 7961, DOI 10.17487/RFC7961, August 2016, | APPsub-TLV", RFC 7961, DOI 10.17487/RFC7961, August 2016, | |||
| <http://www.rfc-editor.org/info/rfc7961>. | <http://www.rfc-editor.org/info/rfc7961>. | |||
| [rfc6439bis] - D. Eastlake, Y. Li, M. Umair, A. Banerjee, and F. Hu, | [rfc6439bis] - Eastlake 3rd, D., Li, Y., Umair, M., Banerjee, A., and F. Hu, | |||
| "Routing Bridges (RBridges): Appointed Forwarders", draft-ietf- | "Routing Bridges (RBridges): Appointed Forwarders", draft-ietf-trill-rfc6439bis, work in progress, June 2016. | |||
| trill-rfc6439bis, work in progress. | ||||
| Informational References | 8.2. Informative References | |||
| [RFC7067] - Dunbar, L., Eastlake 3rd, D., Perlman, R., and I. | [RFC7067] - Dunbar, L., Eastlake 3rd, D., Perlman, R., and I. | |||
| Gashinsky, "Directory Assistance Problem and High-Level Design | Gashinsky, "Directory Assistance Problem and High-Level Design | |||
| Proposal", RFC 7067, November 2013. | Proposal", RFC 7067, November 2013. | |||
| [RFC7978] - Eastlake 3rd, D., Umair, M., and Y. Li, "Transparent | [RFC7978] - Eastlake 3rd, D., Umair, M., and Y. Li, "Transparent | |||
| Interconnection of Lots of Links (TRILL): RBridge Channel | Interconnection of Lots of Links (TRILL): RBridge Channel | |||
| Header Extension", RFC 7978, DOI 10.17487/RFC7978, September | Header Extension", RFC 7978, DOI 10.17487/RFC7978, September | |||
| 2016, <http://www.rfc-editor.org/info/rfc7978>. | 2016, <http://www.rfc-editor.org/info/rfc7978>. | |||
| [ARPND] - Y. Li, D. Eastlake, L. Dunbar, R. Perlman, I. Gashinsky, | [ARPND] - Li, Y., Eastlake 3rd, D., Dunbar, L., Perlman, R., and I. Gashinsky, | |||
| "TRILL: ARP/ND Optimization", draft-ietf-trill-arp- | "TRILL: ARP/ND Optimization", draft-ietf-trill-arp-optimization, work in progress, June 2016. | |||
| optimization, work in progress. | ||||
| [DirAsstEncap] L. Dunbar, D. Eastlake, R. Perlman, I. Gashingksy, | ||||
| INTERNET-DRAFT TRILL: Directory Service Mechanisms | ||||
| "Directory Assisted TRILL Encapsulation", draft-ietf-trill- | [DirAsstEncap] Dunbar, L., Eastlake 3rd, D., Perlman, R., and I. Gashingksy, | |||
| directory-assisted-encap, work in progress. | "Directory Assisted TRILL Encapsulation", draft-ietf-trill-directory-assisted-encap, work in progress, June 2016. | |||
| [SmartEN] R. Perlman, F. Hu, D. Eastlake, K. Krupakaran, T. Liao, | [SmartEN] Perlman, R., Hu, F., Eastlake 3rd, D., Krupakaran, K., and T. Liao, | |||
| "TRILL Smart Endnodes", draft-ietf-trill-smart-endnodes", | "TRILL Smart Endnodes", draft-ietf-trill-smart-endnodes, work in progress, June 2016. | |||
| draft-ietf-trill-smart-endnodes, work in progress. | ||||
| [X.233] - ITU-T Recommendation X.233: Protocol for providing the | [X.233] - International Telecommunication Union, ITU-T Recommendation X.233, "Protocol for providing the | |||
| connectionless-mode network service: Protocol specification, | connectionless-mode network service: Protocol specification", | |||
| International Telecommunications Union, August 1997 | August 1997. | |||
| INTERNET-DRAFT TRILL: Directory Service Mechanisms | INTERNET-DRAFT TRILL: Directory Service Mechanisms | |||
| Acknowledgments | Acknowledgments | |||
| The contributions of the following persons are gratefully | The contributions of the following persons are gratefully | |||
| acknowledged: | acknowledged: | |||
| Amanda Barber, Matthew Bocci, Alissa Cooper, Stephen Farrell, | Amanda Barber, Matthew Bocci, Alissa Cooper, Stephen Farrell, | |||
| Daniel Franke, Igor Gashinski, Joel Halpern, Susan Hares, Alexey | Daniel Franke, Igor Gashinski, Joel Halpern, Susan Hares, Alexey | |||
| skipping to change at page 55, line 4 | skipping to change at line 2428 | |||
| Email: Radia@alum.mit.edu | Email: Radia@alum.mit.edu | |||
| Yizhou Li | Yizhou Li | |||
| Huawei Technologies | Huawei Technologies | |||
| 101 Software Avenue, | 101 Software Avenue, | |||
| Nanjing 210012, China | Nanjing 210012, China | |||
| Phone: +86-25-56622310 | Phone: +86-25-56622310 | |||
| Email: liyizhou@huawei.com | Email: liyizhou@huawei.com | |||
| INTERNET-DRAFT TRILL: Directory Service Mechanisms | ||||
| Copyright, Disclaimer, and Additional IPR Provisions | ||||
| Copyright (c) 2017 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. The definitive version of | ||||
| an IETF Document is that published by, or under the auspices of, the | ||||
| IETF. Versions of IETF Documents that are published by third parties, | ||||
| including those that are translated into other languages, should not | ||||
| be considered to be definitive versions of IETF Documents. The | ||||
| definitive version of these Legal Provisions is that published by, or | ||||
| under the auspices of, the IETF. Versions of these Legal Provisions | ||||
| that are published by third parties, including those that are | ||||
| translated into other languages, should not be considered to be | ||||
| definitive versions of these Legal Provisions. For the avoidance of | ||||
| doubt, each Contributor to the IETF Standards Process licenses each | ||||
| Contribution that he or she makes as part of the IETF Standards | ||||
| Process to the IETF Trust pursuant to the provisions of RFC 5378. No | ||||
| language to the contrary, or terms, conditions or rights that differ | ||||
| from or are inconsistent with the rights and licenses granted under | ||||
| RFC 5378, shall have any effect and shall be null and void, whether | ||||
| published or posted by such Contributor, or included with or in such | ||||
| Contribution. | ||||
| End of changes. 26 change blocks. | ||||
| 69 lines changed or deleted | 60 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||