Re: [sfc] questions of "load balancing considerations" in the draft-quinn-sfc-arch-05

Sharon <sbarkai@gmail.com> Thu, 29 May 2014 21:32 UTC

Return-Path: <sbarkai@gmail.com>
X-Original-To: sfc@ietfa.amsl.com
Delivered-To: sfc@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B85C71A02CE for <sfc@ietfa.amsl.com>; Thu, 29 May 2014 14:32:58 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, SPF_PASS=-0.001] autolearn=ham
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 cWgVyvjA1Uwi for <sfc@ietfa.amsl.com>; Thu, 29 May 2014 14:32:56 -0700 (PDT)
Received: from mail-yk0-x236.google.com (mail-yk0-x236.google.com [IPv6:2607:f8b0:4002:c07::236]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BA1791A0262 for <sfc@ietf.org>; Thu, 29 May 2014 14:32:56 -0700 (PDT)
Received: by mail-yk0-f182.google.com with SMTP id 9so803009ykp.13 for <sfc@ietf.org>; Thu, 29 May 2014 14:32:52 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=CJXUfQXqBCnwGYxCWT/HkEO4Gm28hZ3pSMjYCKV8QcM=; b=wlw2CXPwy5O0pbjFYkoLLtnkTupiieXhDDEBLc7wM9USBS1ufT7Q0zba3/e2hySJQe eyRjw9hSi9rRjmNO5N5nTqW8cgZjGX9gAPrTzoNARsXNOhe9TTVNVuM0nwQwmuG9trn3 rPnIsTvs1Mc27Zaorz8+rGmiGbZzGeTseG4pY0tYofAeubb4cFJkDlrsUKSMTSD7fEvO Bp1LpEOlesiXekOshrLHJXYzthAJmvbGb12fnibG6VxClDP2S5CqRLR1jnQP4+TNBIZy nVmMX4X654u+Op40kOoMoavkMOEk3GJ5ZXw1biczVYWVN+1x/QKl2TCePLhaNg3psKmq UFzQ==
X-Received: by 10.236.137.198 with SMTP id y46mr13945788yhi.31.1401399172372; Thu, 29 May 2014 14:32:52 -0700 (PDT)
Received: from [192.168.1.109] (108-214-96-27.lightspeed.sntcca.sbcglobal.net. [108.214.96.27]) by mx.google.com with ESMTPSA id m50sm2827525yha.8.2014.05.29.14.32.51 for <multiple recipients> (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 29 May 2014 14:32:51 -0700 (PDT)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (1.0)
From: Sharon <sbarkai@gmail.com>
X-Mailer: iPad Mail (11D201)
In-Reply-To: <53878F04.40909@joelhalpern.com>
Date: Thu, 29 May 2014 14:32:50 -0700
Content-Transfer-Encoding: quoted-printable
Message-Id: <D12D6BDD-A8DB-44A7-956B-92AD7B7EEC11@gmail.com>
References: <CFABB759.2DEF3%kegray@cisco.com> <4A95BA014132FF49AE685FAB4B9F17F645D2762A@dfweml701-chm.china.huawei.com> <AE4576EC-DE09-4E07-8FDF-937485E201D1@gmail.com> <53878F04.40909@joelhalpern.com>
To: Joel Halpern Direct <jmh.direct@joelhalpern.com>
Archived-At: http://mailarchive.ietf.org/arch/msg/sfc/w431AAxylu-Nw9kEO7Hbkyb6dkA
Cc: "Joel M. Halpern" <jmh@joelhalpern.com>, "Paul Quinn (paulq)" <paulq@cisco.com>, "Ken Gray (kegray)" <kegray@cisco.com>, "sfc@ietf.org" <sfc@ietf.org>, Linda Dunbar <linda.dunbar@huawei.com>
Subject: Re: [sfc] questions of "load balancing considerations" in the draft-quinn-sfc-arch-05
X-BeenThere: sfc@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Network Service Chaining <sfc.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sfc>, <mailto:sfc-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/sfc/>
List-Post: <mailto:sfc@ietf.org>
List-Help: <mailto:sfc-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sfc>, <mailto:sfc-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 29 May 2014 21:32:58 -0000

Yes, I guess you are right Joel.
I assumed load-balancing inherently has classification ability.
Otherwise the chain hop is statically circuited, no HA/LB.
--szb

> On May 29, 2014, at 12:48, Joel Halpern Direct <jmh.direct@joelhalpern.com> wrote:
> 
> I am not at all sure I am following your diagram.
> An SFF is concerned with forwarding packets to (and handling packets from) its attached SFs.  If you want the SFF to also affect downstream processing, for example by changing the service path the packet is on, then you need a classifier co-located with the SFF.
> 
> Yours,
> Joel
> 
>> On 5/29/14, 12:09 PM, Sharon wrote:
>> "the SFF nodes to which the multiple instances of SF2 or SF4 are attached"
>> 
>> Can't the SFF node make a load balancing decision on instances not
>> attached to it?
>> In which case "the SFF node" is enough
>> 
>> Location A                                                       Location B
>> Functions - SFF/NVE - Underlay - NVE/SFF - Functions
>> 
>> The load balancing KPI decisions (and the invariant that keeps states
>> consistent)
>> May be known in Location A for SFs in location B where A/B are different
>> racks or goes.
>> KPIs that are factored in can include both those of the Underlay network
>> and the chain.
>> 
>> --szb
>> 
>> On May 28, 2014, at 14:49, Linda Dunbar <linda.dunbar@huawei.com
>> <mailto:linda.dunbar@huawei.com>> wrote:
>> 
>>> Joel, Eric, and Ken,
>>> 
>>> Thank you very much for the explanation.
>>> 
>>> Based on what you said, the description on how “control entity  push
>>> to the sf1 nodes …” should be removed from the text, specifically:
>>> 
>>> “In this
>>> 
>>>   case, the control entity will push to the sf1 nodes, a table of
>>> 
>>>   sorts:[L1] <#_msocom_1> sf2 with a series of next hops, and if
>>> needed some weighted or
>>> 
>>>   other metrics (these could also be decided locally by some policy,
>>> 
>>>   but sf1 would need to be aware of expand/contract triggers and
>>> 
>>>   actions).”
>>> 
>>> Should also change the sentence after the Figure 5 to
>>> 
>>> “Either through an imbedded action in sf1 and sf3, the SFF nodes to
>>> which the multiple instances of SF2 or SF4 are attached, or through
>>> external
>>> 
>>>   control, the service functions sf2 and sf4 are elastically expanded
>>> 
>>>   and contracted dynamically.”
>>> 
>>> Linda
>>> 
>>> *From:*Ken Gray (kegray) [mailto:kegray@cisco.com]
>>> *Sent:* Wednesday, May 28, 2014 4:24 PM
>>> *To:* Linda Dunbar; Paul Quinn (paulq); Joel M. Halpern
>>> *Cc:* sfc@ietf.org <mailto:sfc@ietf.org>
>>> *Subject:* Re: [sfc] questions of "load balancing considerations" in
>>> the draft-quinn-sfc-arch-05
>>> 
>>> +1 to Joel … the picture would be ugly at best.  We attempted a
>>> generic HA/LB slide to make a point and even it was ugly …such are the
>>> limitations of ASCII art.
>>> 
>>> In line …
>>> 
>>> *From: *Linda Dunbar <linda.dunbar@huawei.com
>>> <mailto:linda.dunbar@huawei.com>>
>>> *Date: *Wednesday, May 28, 2014 3:34 PM
>>> *To: *"Paul Quinn (paulq)" <paulq@cisco.com <mailto:paulq@cisco.com>>,
>>> "Joel M. Halpern" <jmh@joelhalpern.com <mailto:jmh@joelhalpern.com>>
>>> *Cc: *"sfc@ietf.org <mailto:sfc@ietf.org>" <sfc@ietf.org
>>> <mailto:sfc@ietf.org>>
>>> *Subject: *[sfc] questions of "load balancing considerations" in the
>>> draft-quinn-sfc-arch-05
>>> 
>>> Paul and Joel,
>>> 
>>> Does the Load Balancing Figure 5 (of draft-quinn-sfc-arch-05) assume
>>> that SF1 is responsible for balancing traffic among the 3 instances of
>>> SF2, and SF3 is responsible for balancing traffic among the 3
>>> instances of SF4?
>>> 
>>> <keg> Document text below the picture says "Either through an imbedded
>>> action in sf1 and sf3, or through external
>>> 
>>> control, the service functions sf2 and sf4 are elastically
>>> expanded and contracted dynamically."
>>> 
>>> Isn’t it a single point of failure?
>>> 
>>> <keg> Document text immediately subsequent to that picture and
>>> paragraph illustrates HA scenarios.
>>> 
>>> Some service functions are Stateful, i.e. they may require packets
>>> from same flows to traverse the same service function instance. For
>>> the Load Balancing scheme described by Figure 5, do you assume that
>>> SF1 and SF3 will be responsible for making sure that same flows go
>>> through the same service function instance?
>>> 
>>> <keg> Again, the aforementioned text deliberately allows this
>>> responsibility to be either imbedded in the elasticity-causing
>>> function or to be controlled externally or centrally.  We don't get
>>> into the mechanics as these can vary.  While stateful/bidirectional
>>> does add an additional burden, it can be accommodated without an
>>> explosion of discrete chains.  For example, it could be handled "at
>>> allocation time" if elasticity is managed via a separate entity and
>>> the individual allocations reflected through service chain control in
>>> the initial metadata bound to at the classification point in either
>>> direction.  OR, if the devices are working as a paired system (single
>>> vendor or ecosystem) with integrated elasticity, they could pass
>>> metadata between them when sf1 or sf3 does the initial dynamic
>>> allocation (affecting local forwarding on it's partner).  That's
>>> probably not an exhaustive list of ways to solve the problem.  8^)
>>> 
>>> <keg> The point of this section was that elasticity and HA should not
>>> cause an inordinate explosion of discrete chains without recommending
>>> a particular solution.  That is,  you shouldn't create unnecessary
>>> complexity where it doesn't need to exist.
>>> 
>>> For the stateful service functions, if a flow is switched from
>>> SF-Instance-X to SF-Instance-Y, the SF-Instance-Y needs to synchronize
>>> the states from SF-Instance-X. Who is responsible for those states
>>> maintenance for the Load Balancing described in Figure 5?
>>> 
>>> <keg> None of those entities exist in Figure 5.  Can you re-phrase
>>> your question from the figure?
>>> 
>>> Linda
>>> 
>>> ------------------------------------------------------------------------
>>> 
>>> [L1] <#_msoanchor_1>Require pushing policies to SF1 on how to load
>>> balance multiple instances of SF2.
>>> 
>>> SF1 may not have the capability to balance among multiple instances of
>>> SF2
>>> 
>>> _______________________________________________
>>> sfc mailing list
>>> sfc@ietf.org <mailto:sfc@ietf.org>
>>> https://www.ietf.org/mailman/listinfo/sfc