sp-protocol-ids-01 RFC added
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
diff --git a/rfc/sp-protocol-ids-01.txt b/rfc/sp-protocol-ids-01.txt
new file mode 100644
index 0000000..fff09f7
--- /dev/null
+++ b/rfc/sp-protocol-ids-01.txt
@@ -0,0 +1,169 @@
+
+
+
+
+Internet Engineering Task Force G. D'Amore, Ed.
+Internet-Draft
+Intended status: Informational March 27, 2014
+Expires: September 28, 2014
+
+
+ TLS Mapping for Scalability Protocols
+ sp-tls-mapping-01
+
+Abstract
+
+ This document defines the mapping for scalability protocols (SP)
+ running on top of Transport Layer Security (TLS) v1.2 on top of TCP.
+
+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 September 28, 2014.
+
+Copyright Notice
+
+ Copyright (c) 2014 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.
+
+
+
+
+
+
+D'Amore Expires September 28, 2014 [Page 1]
+
+Internet-Draft TLS/TCP mapping for SPs March 2014
+
+
+1. Underlying protocol
+
+ This mapping should be layered directly on the top of TLS [TLS]
+ secured connections. While it is possible to use TLS on top of other
+ transports, this document specifically concerns itself with TLS
+ running on top of TCP [TCP].
+
+ Other combinations may be contemplated, and should follow the same
+ details as discussed here.
+
+ As when running SP over TCP directly, the TCP port number is
+ determined by the applicaton or user.
+
+ This mapping follows the details of SP over TCP [SPoverTCP].
+
+2. Connection initiation
+
+ An initial connection is first established using TCP, then performing
+ a TLS handshake. This handshake establishes the security parameters
+ of the connection, including negotiation of cipher suites, exchanging
+ keys, and possibly performing one or two-way authentication.
+
+ The specific details of the TLS negotiation are determined by the the
+ application(s) involved, and are not specified here. This includes
+ selection of the specific version of TLS or possibly falling back to
+ SSL version 3 (but not SSL version 1 or 2).
+
+ TLS presents an encrypted channel that may be treated as a full
+ duplex byte stream between peers. This mapping sits within that
+ channel.
+
+ Note also that TLS peers may rekey periodically. This happens in the
+ without involving the upper protocol, and the details need not
+ concern us here.
+
+ Once the TLS layer connection has been established, the communication
+ commences as detailed in SPoverTCP [SPoverTCP]. This includes the
+ exchange of the initial protocol headers identifying the version of
+ SP in use, and the specific protocol type, as well as requirements to
+ disconnect upon receipt of an invalid protocol header or an
+ unrecognized SP version.
+
+3. IANA Considerations
+
+ This memo includes no request to IANA.
+
+
+
+
+
+
+D'Amore Expires September 28, 2014 [Page 2]
+
+Internet-Draft TLS/TCP mapping for SPs March 2014
+
+
+4. Security Considerations
+
+ Security considerations are explored in depth as part of TLS [TLS].
+ This document does not provide any further implications beyond that
+ in TLS itself.
+
+ The use of SSLv2 is explicitly forbidden [RFC6176], as SSLv2 contains
+ known weaknesses.
+
+5. References
+
+ [TCP] Postel, J., "Transmission Control Protocol", STD 7, RFC
+ 793, September 1981.
+
+ [TLS] Dierks, T. and E. Rescorla, "The Transport Layer Security
+ (TLS) Protocol Version 1.2", RFC 5246, August 2008.
+
+ [RFC6176] Turner, S. and T. Polk, "Prohibiting Secure Sockets Layer
+ (SSL) Version 2.0", RFC 6176, March 2011.
+
+ [SPoverTCP]
+ Sustrik, M., "TCP mapping for SPs", August 2013.
+
+Author's Address
+
+ Garrett D'Amore (editor)
+
+ Email: garrett@damore.org
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+D'Amore Expires September 28, 2014 [Page 3]
+
diff --git a/rfc/sp-protocol-ids-01.xml b/rfc/sp-protocol-ids-01.xml
new file mode 100644
index 0000000..5148a77
--- /dev/null
+++ b/rfc/sp-protocol-ids-01.xml
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="US-ASCII"?>
+<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
+
+<rfc category="info" docName="sp-protocol-ids-01">
+
+ <front>
+
+ <title abbrev="List of SP protocol IDs">
+ List of SP protocol IDs
+ </title>
+
+ <author fullname="Martin Sustrik" initials="M." role="editor"
+ surname="Sustrik">
+ <address>
+ <email>sustrik@250bpm.com</email>
+ </address>
+ </author>
+
+ <date month="June" year="2014" />
+
+ <area>Applications</area>
+ <workgroup>Internet Engineering Task Force</workgroup>
+
+ <keyword>SP</keyword>
+ <keyword>IANA</keyword>
+
+ <abstract>
+ <t>This document is intended to be a central repository of SP protocol
+ IDs. The intention is to pass the task to IANA later on.</t>
+ </abstract>
+
+ </front>
+
+ <middle>
+
+ <section anchor="Introduction" title="Introduction">
+ <t>Different mappings for scalability protocols (see, for example
+ <xref target='SPoverTCP'>SPoverTCP</xref>) define a protocol header
+ which in turn contains SP endpoint type ID. The ID consists of
+ protocol ID and end the endpoint role:</t>
+
+ <figure>
+ <artwork>
++-----------------------+------------------------+
+| Protocol ID (12 bits) | Endpoint role (4 bits) |
++-----------------------+------------------------+
+ </artwork>
+ </figure>
+
+ <t>Protocol IDs denote the SP protocol used (such as request/reply or
+ publish/subscribe), while endpoint role determines the role of the
+ endpoint within the topology (requester vs. replier, publisher vs.
+ subscriber et c.) Both numbers are in network byte order.</t>
+
+ <t>Protocol IDs are global, while endpoint roles are specific to any given
+ protocol. As such, protocol IDs are defined in this document, while
+ endpoint roles are defined in specific SP protocol RFCs.</t>
+
+ <t>Note that there's no versioning of SP protocols. New versions of old
+ protocols should register with new protocol ID.</t>
+
+ </section>
+
+ <section anchor="ProtocolIDs" title="Protocol IDs">
+
+ <t>1 - pair (v1)</t>
+ <t>2 - publish/subscribe (v1)</t>
+ <t>3 - request/reply (v1)</t>
+ <t>4 - unassigned</t>
+ <t>5 - pipeline (v1)</t>
+ <t>6 - survey (v1)</t>
+ <t>7 - bus (v1)</t>
+ <t>8-3839 - unassigned</t>
+ <t>3840-4095 local and experimental</t>
+
+ </section>
+
+ <section anchor="IANA" title="IANA Considerations">
+ <t>This memo describes numbers that should be eventually
+ managed by IANA.</t>
+ </section>
+
+ <section anchor="Security" title="Security Considerations">
+ <t>There are no security considerations.</t>
+
+ </section>
+
+ </middle>
+
+ <back>
+ <references>
+ <reference anchor='SPoverTCP'>
+ <front>
+ <title>TCP mapping for SPs</title>
+ <author initials='M.' surname='Sustrik' fullname='M. Sustrik'/>
+ <date month='August' year='2013'/>
+ </front>
+ <format type='TXT' target='sp-tcp-mapping-01.txt'/>
+ </reference>
+ </references>
+
+ </back>
+
+</rfc>
+