draft-ietf-tcpm-converters-13.txt   draft-ietf-tcpm-converters-14.txt 
TCPM Working Group O. Bonaventure, Ed. TCPM Working Group O. Bonaventure, Ed.
Internet-Draft Tessares Internet-Draft Tessares
Intended status: Experimental M. Boucadair, Ed. Intended status: Experimental M. Boucadair, Ed.
Expires: April 24, 2020 Orange Expires: May 7, 2020 Orange
S. Gundavelli S. Gundavelli
Cisco Cisco
S. Seo S. Seo
Korea Telecom Korea Telecom
B. Hesmans B. Hesmans
Tessares Tessares
October 22, 2019 November 04, 2019
0-RTT TCP Convert Protocol 0-RTT TCP Convert Protocol
draft-ietf-tcpm-converters-13 draft-ietf-tcpm-converters-14
Abstract Abstract
This document specifies an application proxy, called Transport This document specifies an application proxy, called Transport
Converter, to assist the deployment of TCP extensions such as Converter, to assist the deployment of TCP extensions such as
Multipath TCP. This proxy is designed to avoid inducing extra delay Multipath TCP. This proxy is designed to avoid inducing extra delay
when involved in a network-assisted connection (that is, 0-RTT). when involved in a network-assisted connection (that is, 0-RTT).
This specification assumes an explicit model, where the proxy is This specification assumes an explicit model, where the proxy is
explicitly configured on hosts. explicitly configured on hosts.
skipping to change at page 2, line 4 skipping to change at page 2, line 4
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://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."
This Internet-Draft will expire on April 24, 2020. This Internet-Draft will expire on May 7, 2020.
Copyright Notice Copyright Notice
Copyright (c) 2019 IETF Trust and the persons identified as the Copyright (c) 2019 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 40, line 15 skipping to change at page 40, line 15
[I-D.boucadair-radext-tcpm-converter] [I-D.boucadair-radext-tcpm-converter]
Boucadair, M. and C. Jacquenet, "RADIUS Extensions for Boucadair, M. and C. Jacquenet, "RADIUS Extensions for
0-RTT TCP Converters", draft-boucadair-radext-tcpm- 0-RTT TCP Converters", draft-boucadair-radext-tcpm-
converter-02 (work in progress), April 2019. converter-02 (work in progress), April 2019.
[I-D.boucadair-tcpm-dhc-converter] [I-D.boucadair-tcpm-dhc-converter]
Boucadair, M., Jacquenet, C., and R. K, "DHCP Options for Boucadair, M., Jacquenet, C., and R. K, "DHCP Options for
0-RTT TCP Converters", draft-boucadair-tcpm-dhc- 0-RTT TCP Converters", draft-boucadair-tcpm-dhc-
converter-03 (work in progress), October 2019. converter-03 (work in progress), October 2019.
[I-D.nam-mptcp-deployment-considerations]
Boucadair, M., Jacquenet, C., Bonaventure, O., Henderickx,
W., and R. Skog, "Network-Assisted MPTCP: Use Cases,
Deployment Scenarios and Operational Considerations",
draft-nam-mptcp-deployment-considerations-01 (work in
progress), December 2016.
[I-D.olteanu-intarea-socks-6] [I-D.olteanu-intarea-socks-6]
Olteanu, V. and D. Niculescu, "SOCKS Protocol Version 6", Olteanu, V. and D. Niculescu, "SOCKS Protocol Version 6",
draft-olteanu-intarea-socks-6-07 (work in progress), July draft-olteanu-intarea-socks-6-07 (work in progress), July
2019. 2019.
[I-D.peirens-mptcp-transparent] [I-D.peirens-mptcp-transparent]
Peirens, B., Detal, G., Barre, S., and O. Bonaventure, Peirens, B., Detal, G., Barre, S., and O. Bonaventure,
"Link bonding with transparent Multipath TCP", draft- "Link bonding with transparent Multipath TCP", draft-
peirens-mptcp-transparent-00 (work in progress), July peirens-mptcp-transparent-00 (work in progress), July
2016. 2016.
skipping to change at page 44, line 30 skipping to change at page 44, line 24
* Address various comments received during last call * Address various comments received during last call
o 10-13: o 10-13:
* Changes to address the comments from Phil: Add a new section to * Changes to address the comments from Phil: Add a new section to
group data plane considerations in one place + add a new group data plane considerations in one place + add a new
appendix with more details on address modes + rearrange the appendix with more details on address modes + rearrange the
MPTCP text. MPTCP text.
o 14: fixed nits (the shepherd write-up)
Appendix B. Example Socket API Changes to Support the 0-RTT Convert Appendix B. Example Socket API Changes to Support the 0-RTT Convert
Protocol Protocol
B.1. Active Open (Client Side) B.1. Active Open (Client Side)
On the client side, the support of the 0-RTT Converter protocol does On the client side, the support of the 0-RTT Converter protocol does
not require any other changes than those identified in Appendix A of not require any other changes than those identified in Appendix A of
[RFC7413]. Those modifications are already supported by multiple TCP [RFC7413]. Those modifications are already supported by multiple TCP
stacks. stacks.
skipping to change at page 47, line 5 skipping to change at page 47, line 5
(Client). No dedicated IP address pool is provisioned to the (Client). No dedicated IP address pool is provisioned to the
Transport Converter. Transport Converter.
For Multipath TCP, the Transport Converter preserves the source IP For Multipath TCP, the Transport Converter preserves the source IP
address used by the Client when establishing the initial subflow. address used by the Client when establishing the initial subflow.
Data conveyed in secondary subflows will be proxied by the Transport Data conveyed in secondary subflows will be proxied by the Transport
Converter using the source IP address of the initial subflow. An Converter using the source IP address of the initial subflow. An
example of a proxied Multipath TCP connection with address example of a proxied Multipath TCP connection with address
preservation is shown in Figure 25. preservation is shown in Figure 25.
Transport Transport
Client Converter Server Client Converter Server
@:C1,C2 @:Tc @:S @:C1,C2 @:Tc @:S
|| | | || | |
|src:C1 SYN dst:Tc|src:C1 dst:S| |src:C1 SYN dst:Tc|src:C1 dst:S|
|-------MPC [->S:port]------->|-------SYN------->| |-------MPC [->S:port]------->|-------SYN------->|
|| | | || | |
||dst:C1 src:Tc|dst:C1 src:S| ||dst:C1 src:Tc|dst:C1 src:S|
|<---------SYN/ACK------------|<-----SYN/ACK-----| |<---------SYN/ACK------------|<-----SYN/ACK-----|
|| | | || | |
|src:C1 dst:Tc|src:C1 dst:S| |src:C1 dst:Tc|src:C1 dst:S|
|------------ACK------------->|-------ACK------->| |------------ACK------------->|-------ACK------->|
| | | | | |
|src:C2 ... dst:Tc| ... | |src:C2 ... dst:Tc| ... |
||<-----Secondary Subflow---->|src:C1 dst:S| ||<-----Secondary Subflow---->|src:C1 dst:S|
|| |-------data------>| || |-------data------>|
| .. | ... | | .. | ... |
Legend: Legend:
Tc: IP address used by the Transport Converter on its customer-facing Tc: IP address used by the Transport Converter on its customer-facing
interface. interface.
Figure 25: Example of Address Preservation Figure 25: Example of Address Preservation
The Transport Converter must be on the forwarding path of incoming The Transport Converter must be on the forwarding path of incoming
traffic. Because the same (destination) IP address is used for both traffic. Because the same (destination) IP address is used for both
proxied and non-proxied connections, the Transport Converter should proxied and non-proxied connections, the Transport Converter should
not drop incoming packets it intercepts if no matching entry is found not drop incoming packets it intercepts if no matching entry is found
for the packets. Unless explicitly configured otherwise, such for the packets. Unless explicitly configured otherwise, such
skipping to change at page 48, line 27 skipping to change at page 48, line 27
| | | | | |
|dst:C src:Tc|dst:Te src:S| |dst:C src:Tc|dst:Te src:S|
|<---------SYN/ACK------------|<-----SYN/ACK-----| |<---------SYN/ACK------------|<-----SYN/ACK-----|
| | | | | |
|src:C dst:Tc|src:Te dst:S| |src:C dst:Tc|src:Te dst:S|
|------------ACK------------->|-------ACK------->| |------------ACK------------->|-------ACK------->|
| | | | | |
| ... | ... | | ... | ... |
Legend: Legend:
Tc: IP address used by the Transport Converter for its customer-facing Tc: IP address used by the Transport Converter for its customer-facing
interface. interface.
Te: IP address used by the Transport Converter for its Internet-facing Te: IP address used by the Transport Converter for its Internet-facing
interface. interface.
Figure 26: Address Sharing Figure 26: Address Sharing
Appendix E. Differences with SOCKSv5 Appendix E. Differences with SOCKSv5
At a first glance, the solution proposed in this document could seem At a first glance, the solution proposed in this document could seem
similar to the SOCKS v5 protocol [RFC1928] which is used to proxy TCP similar to the SOCKS v5 protocol [RFC1928] which is used to proxy TCP
connections. The Client creates a connection to a SOCKS proxy, connections. The Client creates a connection to a SOCKS proxy,
exchanges authentication information and indicates the destination exchanges authentication information and indicates the destination
address and port of the final server. At this point, the SOCKS proxy address and port of the final server. At this point, the SOCKS proxy
 End of changes. 10 change blocks. 
33 lines changed or deleted 28 lines changed or added

This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/