[multipathtcp] q about off-path proxy (explicit mode)

Yoshifumi Nishida <nishida@sfc.wide.ad.jp> Sat, 25 March 2017 13:08 UTC

Return-Path: <nishida@sfc.wide.ad.jp>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6AAE7129442 for <multipathtcp@ietfa.amsl.com>; Sat, 25 Mar 2017 06:08:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.401
X-Spam-Level:
X-Spam-Status: No, score=-1.401 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_SORBS_SPAM=0.5, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001] autolearn=no autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gRGRk7kQmZA2 for <multipathtcp@ietfa.amsl.com>; Sat, 25 Mar 2017 06:08:26 -0700 (PDT)
Received: from mail.sfc.wide.ad.jp (shonan.sfc.wide.ad.jp [203.178.142.130]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3242B129440 for <multipathtcp@ietf.org>; Sat, 25 Mar 2017 06:08:25 -0700 (PDT)
Received: from mail-ot0-f171.google.com (mail-ot0-f171.google.com [74.125.82.171]) by mail.sfc.wide.ad.jp (Postfix) with ESMTPSA id B7DF429C7E4 for <multipathtcp@ietf.org>; Sat, 25 Mar 2017 22:08:23 +0900 (JST)
Received: by mail-ot0-f171.google.com with SMTP id t8so3498623otf.3 for <multipathtcp@ietf.org>; Sat, 25 Mar 2017 06:08:23 -0700 (PDT)
X-Gm-Message-State: AFeK/H25fYcCsvF2wv3jvAvqcMc2Ucd0xCL94vN5P9b/7k2lTzO0VGzc0wgMxwebBVjQPARioHqkgQQfFDVWRA==
X-Received: by 10.157.82.77 with SMTP id q13mr7365775otg.161.1490447302373; Sat, 25 Mar 2017 06:08:22 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.157.41.137 with HTTP; Sat, 25 Mar 2017 06:08:21 -0700 (PDT)
From: Yoshifumi Nishida <nishida@sfc.wide.ad.jp>
Date: Sat, 25 Mar 2017 06:08:21 -0700
X-Gmail-Original-Message-ID: <CAO249yc3MOaPjBsmYqsZgW3AaxKmpA_wr2TxvgLZLwP6rf9dwA@mail.gmail.com>
Message-ID: <CAO249yc3MOaPjBsmYqsZgW3AaxKmpA_wr2TxvgLZLwP6rf9dwA@mail.gmail.com>
To: multipathtcp <multipathtcp@ietf.org>
Content-Type: multipart/alternative; boundary=f403043c4aa003bb62054b8dcee6
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/brxpmc1yEOcjN8YMJXkDhEEv-cU>
Subject: [multipathtcp] q about off-path proxy (explicit mode)
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 25 Mar 2017 13:08:28 -0000

Hello,
Now, I am trying to understand off-path (explicit mode) scenarios.
In explicit mode, we need to tell the final destination to the proxy
through MP_Convert Information Element. But, this requires mptcp
connections. In order to clarify which cases can use this mode, I have
drawn the following 7 cases.
I am wondering if we can support case 3) 4) 5) with explicit mode or not.
Also, supporting case 6), 7) seems to be a bit unclear.
It would be great if some folks could clarify this.

------------------------------------------------------------
-----------------


     C ... client,   S ... Server,  P ... Proxy,  MCIE ... MP_Convert
Information Element
   ====   ... mptcp connection
   ----   ... tcp connection


single proxy cases

1)   C ========== P -------- S         : C tells S's addr to P by MCIE
2)   C ========== P ======== S         : C tells S's addr to P by MCIE
3)   C ---------- P ======== S         : How C tell S's address to P?

double proxy cases

4)   C -------- P1 ======== P2 ------- S  : How C tell S's address to P1?
5)   C -------- P1 ======== P2 ======= S  : How C tell S's address to P1?
6)   C ======== P1 ======== P2 ------- S  : C tells S's addr to P1 by MCIE
and P1 forwards it to P2?
7)   C ======== P1 ======== P2 ======= S  : C tells S's addr to P1 by MCIE
and P1 forwards it to P2?