Network Working Group J. Manner Internet-Draft University of Helsinki Intended status: Standards Track June 14, 2007 Expires: December 16, 2007 Generic Internet Signaling Transport over DCCP and DTLS draft-manner-nsis-gist-dccp-00.txt Status of this Memo By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of 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. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on December 16, 2007. Copyright Notice Copyright (C) The IETF Trust (2007). Abstract The General Internet Signaling Transport (GIST) protocol specification supports two transport modes: UDP for very infrequent messaging, and TCP for all other cases. However, with TCP comes certain undesirable features, e.g., head of line blocking, which affect performance when a number of sessions are multiplexed over the same TCP connection. In certain environments and deployment scenarios, an unreliable, but still congestion controlled, transport would be needed. This specification proposes DCCP as a transport Manner Expires December 16, 2007 [Page 1] Internet-Draft GIST over DCCP and DTLS June 2007 protocol for GIST. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology and Abbreviations . . . . . . . . . . . . . . . . . 4 3. DCCP Transport for GIST . . . . . . . . . . . . . . . . . . . . 4 3.1. MA Protocol Types . . . . . . . . . . . . . . . . . . . . . 4 3.2. Bit-Level Formats . . . . . . . . . . . . . . . . . . . . . 5 4. Security Considerations . . . . . . . . . . . . . . . . . . . . 5 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5 6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 5 6.1. Normative References . . . . . . . . . . . . . . . . . . . 5 6.2. Informative References . . . . . . . . . . . . . . . . . . 6 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 6 Intellectual Property and Copyright Statements . . . . . . . . . . 7 Manner Expires December 16, 2007 [Page 2] Internet-Draft GIST over DCCP and DTLS June 2007 1. Introduction The NSIS protocol suite currently includes the General Internet Signaling Transport (GIST) [I-D.ietf-nsis-ntlp], and two NSIS Signaling Layer Protocols (NSLP) for NAT/Firewall configuration [I-D.ietf-nsis-nslp-natfw] and QoS signaling [I-D.ietf-nsis-qos-nslp]. GIST provides a uniform transport service to the NSLP layer, where these higher layer protocols can indicate the type of service they require from GIST, e.g., secure or unsecure, reliable or unreliable. When GIST sets up Messaging Associations (MA) between nodes in the network, it can multiplex several sessions over one MA, provided that the transport characteristics requested by the NSLP protocols are met. Currently, GIST supports two transport protocols. D-mode is run over UDP and because it lacks congestion control, it can only be used for infrequent messaging between nodes. C-mode is run over TCP and provides a reliable congestion controlled service. However, with TCP comes certain undesirable features, e.g., head of line blocking, which affect performance when a number of sessions are multiplexed over the same TCP connection. If the first segment of a window of data is lost or delayed, TCP makes sure all data is still correctly received in order at the receiver. This causes subsequent data to be delayed until the loss of a segment is recovered. Thus, when GIST messages are multiplexed over the same MA, if a segment carrying a GIST message is lost in the beginning of the transmit window, all subsequent messages are delayed, too. In certain environments and deployment scenarios, an unreliable, but still congestion controlled, transport would be needed. This specification proposes the Datagram Congestion Control Protocol (DCCP) [RFC4340] as a transport protocol for GIST. DCCP enables congestion controlled and unreliable datagram service to the NSLP layer. A further benefit of DCCP is that a new congestion control mechanism targeted to signaling transport can be designed and deployed for GIST in the future. Also the work on DCCP Service Codes [I-D.fairhurst-dccp-serv-codes] can be used with this specification. This specification does not require any changes to the GIST or DCCP protocols. We propose two new protocols to be used with GIST Messaging Associations: 1. Forwards-DCCP: for using DCCP in unsecure mode 2. Datagram Transport Layer Security Manner Expires December 16, 2007 [Page 3] Internet-Draft GIST over DCCP and DTLS June 2007 2. Terminology and Abbreviations 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 BCP 14, RFC 2119 [RFC2119]. All other terminology is taken from the GIST specification [I-D.ietf-nsis-ntlp]. 3. DCCP Transport for GIST Currently, the GIST specification supports Forwards-TCP and TLS. The DCCP protocol is used with GIST in a similar way as TCP. The querying node opens a forward connection towards the responder. Support for this protocol is OPTIONAL. If this protocol is offered, the MA-protocol-options data MUST also be carried in the Stack-Configuration-Data object. The MA-protocol- options field formats are: 1. Query: no information apart from the field header. 2. Response: a 2 byte port number at which the connection will be accepted, followed by 2 padding bytes. 3.1. MA Protocol Types We propose two new protocols to be used with GIST Messaging Associations: 1. Forwards-DCCP: for using DCCP in unsecure mode 2. Datagram Transport Layer Security The first protocol is meant to provide unsecure, unreliable, and congestion controlled transport service to NSLP applications. The second protocol adds security, thus, providing secure, unreliable and congestion controlled service. An NSLP layer protocol can indicate these preferences in the GIST API SendMessage primitive and the Transfer-Attributes parameters. Initially DTLS is used in conjunction with DCCP. Support for this protocol in conjunction with DCCP is RECOMMENDED; associations using it can carry messages with transfer attributes requesting confidentiality and integrity protection. The description of TLS usage in the GIST specification, Section 5.7.3. [I-D.ietf-nsis-ntlp] apply also to DTLS. Manner Expires December 16, 2007 [Page 4] Internet-Draft GIST over DCCP and DTLS June 2007 3.2. Bit-Level Formats The MA-protocol-options field in the Stack-Configuration-Data MUST be used with DCCP. The responder indicates the port number where it will accept the DCCP connection. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | DCCP port number | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 4. Security Considerations This specification does not add new security considerations to what has already been raised in the GIST and DCCP protocols themselves. DCCP can use DTLS as specified in [I-D.ietf-dccp-dtls]. 5. IANA Considerations This specification requests IANA to allocate two new MA-Protocol-ID values o Forwards-DCCP with a recommended value of 4. o Datagram Transport Layer Security with a recommended value of 5. 6. References 6.1. Normative References [I-D.ietf-dccp-dtls] Phelan, T., "Datagram Transport Layer Security (DTLS) over the Datagram Congestion Control Protocol (DCCP)", draft-ietf-dccp-dtls-00 (work in progress), May 2007. [I-D.ietf-nsis-ntlp] Schulzrinne, H. and R. Hancock, "GIST: General Internet Signalling Transport", draft-ietf-nsis-ntlp-13 (work in progress), April 2007. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC4340] Kohler, E., Handley, M., and S. Floyd, "Datagram Manner Expires December 16, 2007 [Page 5] Internet-Draft GIST over DCCP and DTLS June 2007 Congestion Control Protocol (DCCP)", RFC 4340, March 2006. 6.2. Informative References [I-D.fairhurst-dccp-serv-codes] Fairhurst, G., "The DCCP Service Code", draft-fairhurst-dccp-serv-codes-03 (work in progress), March 2007. [I-D.ietf-nsis-nslp-natfw] Stiemerling, M., "NAT/Firewall NSIS Signaling Layer Protocol (NSLP)", draft-ietf-nsis-nslp-natfw-14 (work in progress), March 2007. [I-D.ietf-nsis-qos-nslp] Manner, J., "NSLP for Quality-of-Service Signaling", draft-ietf-nsis-qos-nslp-14 (work in progress), June 2007. Author's Address Jukka Manner University of Helsinki P.O. Box 68 University of Helsinki FIN-00014 University of Helsinki Finland Phone: +358 9 191 51298 Email: jmanner@cs.helsinki.fi URI: http://www.cs.helsinki.fi/u/jmanner/ Manner Expires December 16, 2007 [Page 6] Internet-Draft GIST over DCCP and DTLS June 2007 Full Copyright Statement Copyright (C) The IETF Trust (2007). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Intellectual Property The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79. Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org. Acknowledgment Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA). Manner Expires December 16, 2007 [Page 7]