Re: [iovisor-dev] XDP at netdev1.2 - "XDP port abstraction" proposal

2016-08-23 Thread Jesper Dangaard Brouer via iovisor-dev
On Mon, 22 Aug 2016 14:57:00 -0700
Tom Herbert via iovisor-dev  wrote:

> On Mon, Aug 22, 2016 at 2:44 PM, Thomas Graf  wrote:
> > 2016-08-09 17:47 GMT-04:00 Tom Herbert via iovisor-dev
> > :  
> >> Hi,
> >>
> >> I requested a workshop at netdev (Oct. 5-7 in Tokyo) to present and
> >> showcase XDP. The goal of this is to start providing the public
> >> information about XDP and to start talking about real world use cases
> >> and development.
> >>
> >> I am looking for presenters of various topics in XDP. The content
> >> might be similar to what we had at XDP summit, but the target audience
> >> should be considered to be potentail users and programmers of XDP as
> >> opposed to developers working on the infrastructure.  
> >
[...]
> 
> So far we'd have:
>   - Ceth
>   - Cilium
>   - ILA router/load balancer
> 
> We should also have an overview and introduction to XDP. So I'm
> thinking 30 minutes for intro/overview then 1 hr. for the above (e.g.
> 20 minutes for each).

I have a infrastructure related subject, that I would like to discuss
during the XDP workshop.

- "XDP port abstraction"

Currently XDP only supports packet forwarding (back) out the incoming
interface, this is rather limiting.  Instead of doing something Linux
specific like using the ifindex, I'm proposing to introduce what I call
a XDP port abstraction.  This is inspired by the mSwitch[1][2] paper
(by Michio Honda).

The basic idea: When loading a XDP program it register which
port-abstraction table "instance" it is using (or creates a new
instance).  And as minimum register its own port, which also need to be
provided as meta-data as "incoming-port" to the XDP program. The
port-abstraction is a table lookup, and the XDP program simply returns
an index into this table.  The kernel handles forwarding between ports
(mSwitch "fabric"), based on the port "type" in the table.  XDP
implements the "logic" behind the forwarding decision, and several XDP
programs can share a bpf-map to synchronize their decisions/state.
(See mSwitch data plane split between "fabric" and "logic").

The port "type" should be though as wide/abstract as possible.  It
should be easy to introduce a new "type" of port.  An obvious "type"
would be net_device, but the forwarding efficiency depend on what
features or NDO-functions the specific net_device supports.  I even
imagine a socket could be a port-type.  AFAIK Tom imagine a hardware
specific port-type.

Paper: [1] http://info.iet.unipi.it/~luigi/papers/20150617-mswitch-paper.pdf
Slides: [2] http://www.slideshare.net/micchie/mswitch-paper-talk-at-sosr-2015



A side-note: the mSwitch paper also contains a novel approach of
sorting and grouping incoming packets before forwarding.  This is also
something that is needed, but it is orthogonal to the port-abstraction
table.

-- 
Best regards,
  Jesper Dangaard Brouer
  MSc.CS, Principal Kernel Engineer at Red Hat
  Author of http://www.iptv-analyzer.org
  LinkedIn: http://www.linkedin.com/in/brouer
___
iovisor-dev mailing list
iovisor-dev@lists.iovisor.org
https://lists.iovisor.org/mailman/listinfo/iovisor-dev


Re: [iovisor-dev] XDP at netdev1.2

2016-08-22 Thread Tom Herbert via iovisor-dev
On Mon, Aug 22, 2016 at 2:44 PM, Thomas Graf  wrote:
> 2016-08-09 17:47 GMT-04:00 Tom Herbert via iovisor-dev
> :
>> Hi,
>>
>> I requested a workshop at netdev (Oct. 5-7 in Tokyo) to present and
>> showcase XDP. The goal of this is to start providing the public
>> information about XDP and to start talking about real world use cases
>> and development.
>>
>> I am looking for presenters of various topics in XDP. The content
>> might be similar to what we had at XDP summit, but the target audience
>> should be considered to be potentail users and programmers of XDP as
>> opposed to developers working on the infrastructure.
>
> I would love to demo Cilium to provide some context. Hopefully by then
> we will have the loadbalancer running on XDP but I think it will be a
> valuable demo to provide some context for the kernel work either way.
>
> Time requirement is about 20-30 minutes, depends a bit on much context
> has already been provided in the session.
>
That's great.

The way it's looking is that we'll have 1 1/2 hours for the XDP
workshop. We're going to have two XDP HW talks (Barefoot and
Netronome) that are going to be done as separate talks. So for the
workshop we will try to devote most of the time to use cases and
demos.

So far we'd have:
  - Ceth
  - Cilium
  - ILA router/load balancer

We should also have an overview and introduction to XDP. So I'm
thinking 30 minutes for intro/overview then 1 hr. for the above (e.g.
20 minutes for each). What I'm hoping is that we can snag a few people
to get really interested in this and then maybe have some followup
hallway discussions on potential projects and contribution (very
import everyone attending wear their XDP T-shirt, I'll bring some
extras :-) )

Tom
___
iovisor-dev mailing list
iovisor-dev@lists.iovisor.org
https://lists.iovisor.org/mailman/listinfo/iovisor-dev


Re: [iovisor-dev] XDP at netdev1.2

2016-08-22 Thread Thomas Graf via iovisor-dev
2016-08-09 17:47 GMT-04:00 Tom Herbert via iovisor-dev
:
> Hi,
>
> I requested a workshop at netdev (Oct. 5-7 in Tokyo) to present and
> showcase XDP. The goal of this is to start providing the public
> information about XDP and to start talking about real world use cases
> and development.
>
> I am looking for presenters of various topics in XDP. The content
> might be similar to what we had at XDP summit, but the target audience
> should be considered to be potentail users and programmers of XDP as
> opposed to developers working on the infrastructure.

I would love to demo Cilium to provide some context. Hopefully by then
we will have the loadbalancer running on XDP but I think it will be a
valuable demo to provide some context for the kernel work either way.

Time requirement is about 20-30 minutes, depends a bit on much context
has already been provided in the session.

Thomas
___
iovisor-dev mailing list
iovisor-dev@lists.iovisor.org
https://lists.iovisor.org/mailman/listinfo/iovisor-dev


Re: [iovisor-dev] XDP at netdev1.2

2016-08-22 Thread Tom Herbert via iovisor-dev
On Mon, Aug 22, 2016 at 2:32 PM, Yunsong Lu  wrote:
> I can run from 30 minutes to 1 hour, depending on what's the overall plan.
>
We have 1 1/2 hr. so will need to limit to 30 min.

> Any demo plan? We're discussing what to demo there.
>
Yes, a demo would be great!

Tom

> Thanks,
> Yunsong
>
>
>> On Aug 22, 2016, at 17:21, Tom Herbert  wrote:
>>
>>> On Tue, Aug 9, 2016 at 3:02 PM, Yunsong Lu  wrote:
>>> Sounds great.
>>>
>>> What we're doing is to finalize a version of CETH and get it reviewed by 
>>> the community in the next a few weeks, and I can talk about it in detail.
>>
>> Hi Yunsong,
>>
>> Can you tell me how much time you'd like?
>>
>> Tom
>>
>>
>>> The other thing on my mind is to test and show some user cases, for example 
>>> your LB and router. Will you put your code somewhere so that we can try it 
>>> out?
>>>
>>> Do you have a link to the documents presented at XDP Summit?
>>>
>>> Thanks,
>>> Yunsong
>>>
>>> -Original Message-
>>> From: Tom Herbert [mailto:t...@herbertland.com]
>>> Sent: Tuesday, August 09, 2016 2:48 PM
>>> To: Tom Herbert via iovisor-dev; Yunsong Lu
>>> Subject: XDP at netdev1.2
>>>
>>> Hi,
>>>
>>> I requested a workshop at netdev (Oct. 5-7 in Tokyo) to present and 
>>> showcase XDP. The goal of this is to start providing the public information 
>>> about XDP and to start talking about real world use cases and development.
>>>
>>> I am looking for presenters of various topics in XDP. The content might be 
>>> similar to what we had at XDP summit, but the target audience should be 
>>> considered to be potentail users and programmers of XDP as opposed to 
>>> developers working on the infrastructure.
>>>
>>> If you would like to present please let me know. I will put together the 
>>> agenda over next couple of weeks.
>>>
>>> Thanks,
>>> Tom
___
iovisor-dev mailing list
iovisor-dev@lists.iovisor.org
https://lists.iovisor.org/mailman/listinfo/iovisor-dev


Re: [iovisor-dev] XDP at netdev1.2

2016-08-22 Thread Yunsong Lu via iovisor-dev
I can run from 30 minutes to 1 hour, depending on what's the overall plan.

Any demo plan? We're discussing what to demo there.

Thanks,
Yunsong


> On Aug 22, 2016, at 17:21, Tom Herbert  wrote:
> 
>> On Tue, Aug 9, 2016 at 3:02 PM, Yunsong Lu  wrote:
>> Sounds great.
>> 
>> What we're doing is to finalize a version of CETH and get it reviewed by the 
>> community in the next a few weeks, and I can talk about it in detail.
> 
> Hi Yunsong,
> 
> Can you tell me how much time you'd like?
> 
> Tom
> 
> 
>> The other thing on my mind is to test and show some user cases, for example 
>> your LB and router. Will you put your code somewhere so that we can try it 
>> out?
>> 
>> Do you have a link to the documents presented at XDP Summit?
>> 
>> Thanks,
>> Yunsong
>> 
>> -Original Message-
>> From: Tom Herbert [mailto:t...@herbertland.com]
>> Sent: Tuesday, August 09, 2016 2:48 PM
>> To: Tom Herbert via iovisor-dev; Yunsong Lu
>> Subject: XDP at netdev1.2
>> 
>> Hi,
>> 
>> I requested a workshop at netdev (Oct. 5-7 in Tokyo) to present and showcase 
>> XDP. The goal of this is to start providing the public information about XDP 
>> and to start talking about real world use cases and development.
>> 
>> I am looking for presenters of various topics in XDP. The content might be 
>> similar to what we had at XDP summit, but the target audience should be 
>> considered to be potentail users and programmers of XDP as opposed to 
>> developers working on the infrastructure.
>> 
>> If you would like to present please let me know. I will put together the 
>> agenda over next couple of weeks.
>> 
>> Thanks,
>> Tom
___
iovisor-dev mailing list
iovisor-dev@lists.iovisor.org
https://lists.iovisor.org/mailman/listinfo/iovisor-dev


Re: [iovisor-dev] XDP at netdev1.2

2016-08-22 Thread Tom Herbert via iovisor-dev
On Tue, Aug 9, 2016 at 3:02 PM, Yunsong Lu  wrote:
> Sounds great.
>
> What we're doing is to finalize a version of CETH and get it reviewed by the 
> community in the next a few weeks, and I can talk about it in detail.
>

Hi Yunsong,

Can you tell me how much time you'd like?

Tom


> The other thing on my mind is to test and show some user cases, for example 
> your LB and router. Will you put your code somewhere so that we can try it 
> out?
>
> Do you have a link to the documents presented at XDP Summit?
>
> Thanks,
> Yunsong
>
> -Original Message-
> From: Tom Herbert [mailto:t...@herbertland.com]
> Sent: Tuesday, August 09, 2016 2:48 PM
> To: Tom Herbert via iovisor-dev; Yunsong Lu
> Subject: XDP at netdev1.2
>
> Hi,
>
> I requested a workshop at netdev (Oct. 5-7 in Tokyo) to present and showcase 
> XDP. The goal of this is to start providing the public information about XDP 
> and to start talking about real world use cases and development.
>
> I am looking for presenters of various topics in XDP. The content might be 
> similar to what we had at XDP summit, but the target audience should be 
> considered to be potentail users and programmers of XDP as opposed to 
> developers working on the infrastructure.
>
> If you would like to present please let me know. I will put together the 
> agenda over next couple of weeks.
>
> Thanks,
> Tom
___
iovisor-dev mailing list
iovisor-dev@lists.iovisor.org
https://lists.iovisor.org/mailman/listinfo/iovisor-dev


Re: [iovisor-dev] XDP at netdev1.2

2016-08-09 Thread Yunsong Lu via iovisor-dev
Sounds great.

What we're doing is to finalize a version of CETH and get it reviewed by the 
community in the next a few weeks, and I can talk about it in detail.

The other thing on my mind is to test and show some user cases, for example 
your LB and router. Will you put your code somewhere so that we can try it out?

Do you have a link to the documents presented at XDP Summit?

Thanks,
Yunsong

-Original Message-
From: Tom Herbert [mailto:t...@herbertland.com] 
Sent: Tuesday, August 09, 2016 2:48 PM
To: Tom Herbert via iovisor-dev; Yunsong Lu
Subject: XDP at netdev1.2

Hi,

I requested a workshop at netdev (Oct. 5-7 in Tokyo) to present and showcase 
XDP. The goal of this is to start providing the public information about XDP 
and to start talking about real world use cases and development.

I am looking for presenters of various topics in XDP. The content might be 
similar to what we had at XDP summit, but the target audience should be 
considered to be potentail users and programmers of XDP as opposed to 
developers working on the infrastructure.

If you would like to present please let me know. I will put together the agenda 
over next couple of weeks.

Thanks,
Tom
___
iovisor-dev mailing list
iovisor-dev@lists.iovisor.org
https://lists.iovisor.org/mailman/listinfo/iovisor-dev