Netdev List
 help / color / mirror / Atom feed
From: Jiannan Ouyang <ouyangj@fb.com>
To: Joe Stringer <joe@ovn.org>, Harald Welte <laforge@gnumonks.org>
Cc: "osmocom-net-gprs@lists.osmocom.org"
	<osmocom-net-gprs@lists.osmocom.org>,
	netdev <netdev@vger.kernel.org>, ovs dev <dev@openvswitch.org>,
	"Pablo Neira Ayuso" <pablo@netfilter.org>,
	Pravin B Shelar <pshelar@nicira.com>,
	"Wieger IJntema" <wieger.ijntema.tno@gmail.com>,
	"Yang, Yi Y" <yi.y.yang@intel.com>,
	Amar Padmanabhan <amarpadmanabhan@fb.com>
Subject: Re: [PATCH net-next v1 0/3] Flow Based GTP Tunneling
Date: Thu, 13 Jul 2017 22:54:10 +0000	[thread overview]
Message-ID: <AAC8ECB0-A089-4308-989D-65E18B9EFAB7@fb.com> (raw)
In-Reply-To: <CAPWQB7F4aLDnZpqLqqDpNpzHG2nLOUAvcdibqR1CC4cO_ymz0g@mail.gmail.com>

Hi Harald and Jeo,

Thank you for the code review. They are really helpful!

> On 7/13/17, 11:14 AM, "Joe Stringer" <joe@ovn.org> wrote:
> 
    > On 13 July 2017 at 00:12, Harald Welte <laforge@gnumonks.org> wrote:
    >> I'm not familiar with the details here, but does this imply that you
    >> are matching on the outer (transport layer) source IP address? If so,
    >> please note this is in violation of the 3GPP specifications for GTP,
    >> which require explicitly that the TEID is the *only* criteria for
    >> matching an encapsulated packet to the tunnel.  Basically anyone can
    >> send you an encapsulated packet from any random source IP, just as long
    >> as the TEID matches a tunnel, it will be decapsulated.
    >>
    >> This is [presumably] in order to take care of mobility, as the
    >> subscribers' phone moves around different MME/S-GW/SGSN, each having
    >> different source IP addresses.
    >
    > I think that this will be hard to avoid; the several existing tunnel
    > implementations that OVS plugs into all allow matching on the outer
    > addresses/ports, I don't see a good way to restrict it without
    > introducing completely new metadata_dst paths for GTP. I'd prefer not
    > to introduce something like this if we can avoid it; several tunnels
    > currently share all of the same metadata_dst code and that's proven
    > sufficient for all cases so far. If someone wishes to implement the
    > 3GPP standard correctly then they should not create matches like this.
    > In quite a few cases, OVS tends to take the approach that we give the
    > user the tools to do what they need to do, but if they wish to shoot
    > themselves in the foot then that's up to them. We can of course work
    >  towards ensuring the OVS userspace guides users in the right direction
    > though.
    
The flow listed out here is an example for the nature of the match
that can be performed, but the actual match rule that is programmed
 by the control plane should wildcard the tun_src as noted by Harald. 

It is the control plane’s responsibility to enforce the 3GPP Specifications, 
e.g. creating flow rules to make TEID the only criteria for matching an 
encapsulated packet to the tunnel.  

I will provide a 3GPP compliant example in the next version, thank Harald
 for pointing it out.

-Jiannan


      reply	other threads:[~2017-07-13 22:54 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-13  0:44 [PATCH net-next v1 0/3] Flow Based GTP Tunneling Jiannan Ouyang
2017-07-13  0:44 ` [PATCH net-next v1 3/3] openvswitch: Add GPRS Tunnel Protocol (GTP) vport support Jiannan Ouyang
     [not found] ` <20170713004455.3946570-1-ouyangj-b10kYP2dOMg@public.gmane.org>
2017-07-13  0:44   ` [PATCH net-next v1 1/3] gtp: refactor to support flow-based gtp encap and decap Jiannan Ouyang
2017-07-13  7:26     ` Harald Welte
2017-07-14  0:55       ` Jiannan Ouyang
     [not found]         ` <3729E0DA-08AB-4C5C-B9EC-C76DAAA60E10-b10kYP2dOMg@public.gmane.org>
2017-07-14  8:03           ` Harald Welte
2017-07-31  7:21     ` Andreas Schultz
2017-08-02 12:52       ` Pablo Neira Ayuso
2017-07-13  0:44   ` [PATCH net-next v1 2/3] gtp: Support creating flow-based gtp net_device Jiannan Ouyang
     [not found]     ` <20170713004455.3946570-3-ouyangj-b10kYP2dOMg@public.gmane.org>
2017-07-13  7:35       ` Harald Welte
2017-07-14  1:01         ` Jiannan Ouyang
2017-07-14  8:12           ` Harald Welte
2017-07-13 18:01     ` Joe Stringer
2017-07-13  1:28   ` [PATCH net-next v1 0/3] Flow Based GTP Tunneling Joe Stringer
2017-07-13  7:12 ` Harald Welte
2017-07-13 18:14   ` Joe Stringer
2017-07-13 22:54     ` Jiannan Ouyang [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=AAC8ECB0-A089-4308-989D-65E18B9EFAB7@fb.com \
    --to=ouyangj@fb.com \
    --cc=amarpadmanabhan@fb.com \
    --cc=dev@openvswitch.org \
    --cc=joe@ovn.org \
    --cc=laforge@gnumonks.org \
    --cc=netdev@vger.kernel.org \
    --cc=osmocom-net-gprs@lists.osmocom.org \
    --cc=pablo@netfilter.org \
    --cc=pshelar@nicira.com \
    --cc=wieger.ijntema.tno@gmail.com \
    --cc=yi.y.yang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox