Re: [forces] Comment on draft-haleplidis-forces-openflow-lib-00

"Haleplidis Evangelos" <ehalep@gmail.com> Wed, 30 May 2012 22:32 UTC

Return-Path: <ehalep@gmail.com>
X-Original-To: forces@ietfa.amsl.com
Delivered-To: forces@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3E54211E80A2 for <forces@ietfa.amsl.com>; Wed, 30 May 2012 15:32:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.599
X-Spam-Level:
X-Spam-Status: No, score=-3.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1CNly2fPj3Hx for <forces@ietfa.amsl.com>; Wed, 30 May 2012 15:32:36 -0700 (PDT)
Received: from mail-wi0-f172.google.com (mail-wi0-f172.google.com [209.85.212.172]) by ietfa.amsl.com (Postfix) with ESMTP id 2EDA711E8073 for <forces@ietf.org>; Wed, 30 May 2012 15:32:36 -0700 (PDT)
Received: by wibhj8 with SMTP id hj8so3485435wib.13 for <forces@ietf.org>; Wed, 30 May 2012 15:32:35 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:references:in-reply-to:subject:date:message-id :mime-version:content-type:content-transfer-encoding:x-mailer :thread-index:content-language; bh=yvTzvjRLrmvDCnQdJoAFAV1mYpaMMAl8y0jYTXlzo4M=; b=r1K7QeiZdlH5P0qq0nMQJT8dwNSIwEdVO6Tix/ph3ms78Fl76zBEhfiFaqFDtbG2+K PpF0RICtC/8hC8Mi9sb9LAHbaaLfyAvAR34h3hcffy6e8AZaIXdh+kkccBCMoFmZmxQc LotiRKkFmc1hWSSa6hzvzjtWNLWkLluButkt1mSsduLDr3QteJlJmJC5SEAnliZvH3/R 2vHB8zP5t98GAWD612YFb3vg9wexT9t8ZPImFF7qqh5V/SNJXkgOJvdQohB9zX3llAXN Rn0gXB2V79BrRikf/HHKo45wptPurSuFnuAKnE7zPLk6vabPA1yYCgLb6Tp79ai6o8O1 AwmQ==
Received: by 10.216.196.91 with SMTP id q69mr11773834wen.185.1338417155205; Wed, 30 May 2012 15:32:35 -0700 (PDT)
Received: from EhalepXPS (ppp046177009001.dsl.hol.gr. [46.177.9.1]) by mx.google.com with ESMTPS id n11sm3504367wiv.9.2012.05.30.15.32.32 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 30 May 2012 15:32:34 -0700 (PDT)
From: Haleplidis Evangelos <ehalep@gmail.com>
To: 'Jamal Hadi Salim' <hadi@mojatatu.com>
References: <CAAFAkD--Zf7rzjLgQ8rspreUR3kGHzeJaappZZG_zq+GkYy=ow@mail.gmail.com>
In-Reply-To: <CAAFAkD--Zf7rzjLgQ8rspreUR3kGHzeJaappZZG_zq+GkYy=ow@mail.gmail.com>
Date: Thu, 31 May 2012 01:32:30 +0300
Message-ID: <00dc01cd3eb4$1b063740$5112a5c0$@com>
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-7"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Office Outlook 12.0
Thread-Index: Ac08NKxIb7OZVMv5TQeePe2gHSJtigCIC0tA
Content-Language: el
Cc: forces@ietf.org, draft-haleplidis-forces-openflow-lib@tools.ietf.org
Subject: Re: [forces] Comment on draft-haleplidis-forces-openflow-lib-00
X-BeenThere: forces@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: ForCES WG mailing list <forces.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/forces>, <mailto:forces-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/forces>
List-Post: <mailto:forces@ietf.org>
List-Help: <mailto:forces-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/forces>, <mailto:forces-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 30 May 2012 22:32:37 -0000

Greetings Jamal,

Thank you for the comments.

Please see inline.

Regards,
Evangelos Haleplidis.

> -----Original Message-----
> From: Jamal Hadi Salim [mailto:hadi@mojatatu.com]
> Sent: Sunday, May 27, 2012 9:10 PM
> To: Haleplidis Evangelos
> Cc: forces@ietf.org; draft-haleplidis-forces-openflow-
> lib@tools.ietf.org
> Subject: Comment on draft-haleplidis-forces-openflow-lib-00
> 
> Greetings Evangelos,
> 
> Attached the annotated draft with more specific comments.
> We'll try and make time tomorrow or the day after to implement the LFBs
> (purely ForCES) and vet the control-datapath messaging works. I can
> send more lower level comments then on the XML etc.
> 
> High level comments:
> 
> 0) Do you need the "LFB" suffix on every LFB?
> 

[ΕΗ] No, we can remove them.

> 1) One of the things that is confusing is the differences between
> defered set of actions and what gets applied at per flow table. Could
> you maybe add some text which clarifies right at the beginning,
> example:
> 
> "There are two types of action executions which are independent of each
> other. The first one refered to as "action list" is programmed into the
> flow table to be executed immediately within the packet pipeline upon a
> match on a flow table. The second one gets executed at the end of the
> pipeline in the "execute action set". The second type of actions is
> collected in a the metadata refered to as "Action Set" during the
> datapath processing"
> 

[ΕΗ] Thank you for this. Yes, we will add a clarification text.

> 2) Metadata can only be atomic type in ForCES. Seems theres expectation
> to do more in this model (eg the ActionSet).
> 
> 3) Is there need to model multiple tables in the OFFlowTable LFB?
> An LFB with a single table will also work with OF 1.0; for > 1.0, we
> have instances of those LFBs connected in a graph.
> (Where the instance ID is the FlowTable ID)
> 

[ΕΗ] We had a discussion with Joel. One of the main thing he is deeply
concerned is that with multiple Flow Table LFB instances connected between
them and all these instances connected with instances of action LFBs, the
full mesh connections will create a very complex graph. 

However with your suggestion, we could have only one instance of the
OFFlowTable LFB and inside have an array of an array of Flow Entries.

This will simplify the graph a lot while still having the same flexibility.

One other thing we discussed with Joel, was whether having an LFB class per
action is worth it versus the complex graph it will create (as can be seen
in figures 2, 3 and 4 in the draft). 

However if we have only one FlowTable LFB instance, the graph will be even
less messy.

What do you think?

> 4) I may be confused but it seems there is something missing in regards
> to the concept of ActionSet (both the LFB and its use in OFFlowTable
> LFB). If i understood correctly the text, the ActionSet is a runtime
> metadata that is populated at different stages of the packet processing
> in the datapath.
> If thats true, you cant have the CE populate the Action Set anywhere.
> For a single flow, each arriving packet may require a different action
> set depending on state (eg configured bandwidth being exceeded vs not).
> This means the ActionSET LFB is empty and its only role is to execute
> the action it receives in the ActionSet Metadata.
> What did i miss?

[ΕΗ] Yes, in the OF specification, the ActionSet that travels along with a
packet in the datapath is a limited array of actions. For this reason the
ActionSetLFB exists. In the draft the ActionSet LFB is currently read-only
and the CE can't configure it. So, the ActionSet LFB simply holds the
metadata value (it is an array of an array of actions) and the actionset
metadata that passes along is an index to that array.

We also had a discussion with Joel regarding the Action Set LFB. Joel
suggested we should specify which LFB makes the first allocation of the
array when the packet enters the datapath and additionally we should
explicitly specify, that the Action Set LFB is a modeling artifact and not
an implementation description, the Action Set LFB may not correspond to
anything in the implementation if the data storage can be handled in some
other way.

Joel, please correct me if I got something wrong.

Now though, if we merge all Flow Tables in one big table in one LFB, will we
need an ActionSet metadata? Shouldn't it be internally of the Flow Table
LFB?

> 
> cheers,
> jamal