Multipath TCP (MPTCP) Meeting : IETF87, Tuesday July 30th, 2013, 1300-15:00 Location : Berlin, Potsdam 2 Chairs : Philip Eardley Yoshifumi Nishida (absent) AD : Martin Stiemerling URL : http://tools.ietf.org/wg/mptcp/ Note Taker: Alan Ford -------------------------------------------------------------------------------------------- 1: Chair Slide Phil Eardley: Status Update: API doc is done (RFC6897). That's last milestone complete of original charter. Hi-light for Berlin meeting: Sunday tutorial was done by Olivier. Slide is very informative. Interop for MPTCP will be held Reporting updates for MPTCP in tsvarea Implementation survey - good results came back. There are four implementations currently maintained. (see http://tools.ietf.org/html/draft-eardley-mptcp-implementations-survey-02) Simple interoperability checks with Linux and others are done. It's fair to say that RFC is well understood. All implementations implement signaling protocols. An interesting exception is ADD_ADDR. We'll need more discussion on this. -------------------------------------------------------------------------------------------- 2: FreeBSD MPTCP Implementation Update - Nigel Williams Version 0.4 to be released later this week. Alan Ford With regard to receive buffer issue, is there anything we can do better on the spec? Nigel Williams We will think about it later. But, supporting DATA ACK might help. Simone Ferlin Has it been tried on ARM devices? Nigel: No. We're using x86. Simone: We'd like to run your implementation on ARM architecture. -------------------------------------------------------------------------------------------- 3: Linux MPTCP Implementation Update - Christoph Paasch v0.87: lots of performance improvements; supports TSO. Now can use sendfile() and splice(). Showed video of adding interfaces and increasing throughput. Adding a 10Gbps link adds about 10Gbps to the flow. Michael Tuxen: What is MTU? Christoph: We use jambo frame. Also TSO. Michael: Why 2 interfaces cannot get 20Gbps? Christoph: There's variance. no specific reason. Issue identified: FTP, two paths, via Firewall NAT. If the first subflow fails due to address rewriting, an incorrect address will be used on the MPTCP-level retransmission on the second subflow. Costin Raiciu: The problem does not come from MPTCP. It comes from application. Christoph: Yes, but we might need more sophisticated API. Lars Eggard: We don't have to fix these problems, but need to identify problems and selectively use MPTCP. ????: We might need to think about what kind of APIs will be required. TCP Normalizers window-size issue. If window shrunk, may drop the connection Jana Iyengar: Shrinking windows is legal, so why is a Normalizer doing this? Costin: The solution you mentioned sounds like a hack. Christoph: Yes. It's not very clean solution. Jana: I'm wondering this might be a bug in a middlebox. Christoph: We observed at least one big vender has this behavior. Alan Ford: Q about earlier part. How does DSS and TSO/sendfile work together? Christoph: The all-encompassing DSS gets repeated in every packet. -------------------------------------------------------------------------------------------- 4: Conformance Tests for Multipath TCP - Yvan Coene Lars: You might want to check Packetdrill. Yuchung Cheng: I don't see any big technical problem to use packetdrill for mptcp tests. Michael Tuxen: Conformance test is very useful. Can we standardize conformance test at this wg? Martin Stiemerling: I don't think the WG should do as an WG item now. But, you're in the place to discuss it. -------------------------------------------------------------------------------------------- 5: Use cases for MPTCP - Costin Raiciu Aaron Ding: Smart phone antennas are not as good as laptops. It will be more challenging if you use smart phone. Costin: We wanted to use smart phone. But, we need to change wifi driver. We couldn't do it on our smart phone. Naeem Khademi: How many stations are competing? If multiple AP environments may behave very differently. Costin: Just 1 station is competing. Naeem: If your nic changes wifi channel but don't migrate for some reason, you might lose some data. Costin: The AP uses a buffer which can fill the pipe. If there're many connections, yes, it might be an issue. ????: Energy efficiency will be a problem with 2 NICs. Costin: yes. but the result is the 1 NIC case. If you use multiple NICs, you don't need switching. -------------------------------------------------------------------------------------------- 6: Residual threats analysis for MPTCP - Marcelo Bagnulo Braun Roberto Peon: There might be variations on attack: a snooper can be separate from an attacker. Real solution requires full crypto. Marcelo: On path attack can hijack your connection? Yes. Michael Tuxen: Is there any use of HMAC in ADD_ADDR? Marcelo: No. There's nothing. Alan Ford: NAT might be an issue to make HMAC solution work. Marcelo: For source address, you are right. But, we can do on destination address. ????: There will be some cases where destination address is NATed. Alan: Does not need to permit every case to work. we need to stop attack even if some cases don't work. Mirja Kuehlewind: Are these in addition to TCP threats? Marcelo: Yes. These are all additional risks. ????: Reset Attack is not in your scope? Marcelo: My take on that is it's not an additional risk. Roberto: MPTCP attacker can change route to a high-performance box off-path and requires only a low-performance box on-path. This is a new risk, when previously analysis and attack would have to be on-path. Costin: This is a feature of MPTCP. Mirja: Generic comments. In some cases, we might need upper layer solution. Phil: Interim meeting in a month or two to talk about future steps. -------------------------------------------------------------------------------------------- 7: NorNet Testbed: A Platform for Evaluating Multi-Path Transport in the Real-World Internet - Thomas Dreibholz -------------------------------------------------------------------------------------------- 8: Why protocol stacks should be in user-space? - Michio Honda Mirja Kuehlewind: Did you re-implment everything or using existing codes? Michio: I've re-implemented so far.