[Bier] DISCUSS? SI vs. sub-domains - draft-ietf-bier-architecture-02 (was: Re: Questions on draft-eckert-bier-te-arch-01)

Toerless Eckert <eckert@cisco.com> Tue, 13 October 2015 17:37 UTC

Return-Path: <eckert@cisco.com>
X-Original-To: bier@ietfa.amsl.com
Delivered-To: bier@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 576CE1A0076 for <bier@ietfa.amsl.com>; Tue, 13 Oct 2015 10:37:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.511
X-Spam-Level:
X-Spam-Status: No, score=-14.511 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01, USER_IN_DEF_DKIM_WL=-7.5] 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 uAAYFkRFKXeh for <bier@ietfa.amsl.com>; Tue, 13 Oct 2015 10:37:45 -0700 (PDT)
Received: from alln-iport-7.cisco.com (alln-iport-7.cisco.com [173.37.142.94]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id ACD5F1A004A for <bier@ietf.org>; Tue, 13 Oct 2015 10:37:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=4427; q=dns/txt; s=iport; t=1444757865; x=1445967465; h=date:from:to:cc:subject:message-id:mime-version: in-reply-to; bh=b86Z4KUqUhRGEJIHalt9j/vz6Mg8aBsHjHx+ImlMOao=; b=LJKVPdl9wKLuRz8W3+ZiKARs4gNIoRjlCpx2xIrOp6w4AYjLJGQPPnk/ r62QKilm5OABjyCmFr1V0ErRm+XyNsO0Z+G6hiT5FBFmK1Q0guGAJmcd0 UySWe9+DjGziiSaTZpLkx2eWArJpLA5glqRRpr5xLGNMXLHc5DtjFJKtq M=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0BWAgDEQB1W/4ENJK1egya7M4QiAQ2BWoMTggp/AoFHOBQBAQEBAQEBgQqEKAEEHQoTMQ4tBgkaGgU1FC6IE8IoAQEBAQEBAQECAQEBAQEBAQEBAQEXkC4BAVAHhC4FjgSIEo0SCIFYjQGJQINvHwEBQoIRHRaBXh6FZIFAAQEB
X-IronPort-AV: E=Sophos;i="5.17,679,1437436800"; d="scan'208";a="197537481"
Received: from alln-core-9.cisco.com ([173.36.13.129]) by alln-iport-7.cisco.com with ESMTP; 13 Oct 2015 17:37:42 +0000
Received: from mcast-linux1.cisco.com (mcast-linux1.cisco.com [172.27.244.121]) by alln-core-9.cisco.com (8.14.5/8.14.5) with ESMTP id t9DHbeAa007617 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 13 Oct 2015 17:37:41 GMT
Received: from mcast-linux1.cisco.com (localhost.cisco.com [127.0.0.1]) by mcast-linux1.cisco.com (8.13.8/8.13.8) with ESMTP id t9DHbe8C005688; Tue, 13 Oct 2015 10:37:40 -0700
Received: (from eckert@localhost) by mcast-linux1.cisco.com (8.13.8/8.13.8/Submit) id t9DHbeA3005687; Tue, 13 Oct 2015 10:37:40 -0700
Date: Tue, 13 Oct 2015 10:37:40 -0700
From: Toerless Eckert <eckert@cisco.com>
To: Caitlin Bestler <caitlin.bestler@nexenta.com>
Message-ID: <20151013173739.GX13294@cisco.com>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <561C2441.6090606@nexenta.com>
User-Agent: Mutt/1.4.2.2i
Archived-At: <http://mailarchive.ietf.org/arch/msg/bier/i1jaJe7Iv0HJY3SnBZVC25iptgU>
Cc: "bier@ietf.org" <bier@ietf.org>, Antoni Przygienda <antoni.przygienda@ericsson.com>, Eric C Rosen <erosen@juniper.net>
Subject: [Bier] DISCUSS? SI vs. sub-domains - draft-ietf-bier-architecture-02 (was: Re: Questions on draft-eckert-bier-te-arch-01)
X-BeenThere: bier@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "\"Bit Indexed Explicit Replication discussion list\"" <bier.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/bier>, <mailto:bier-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/bier/>
List-Post: <mailto:bier@ietf.org>
List-Help: <mailto:bier-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/bier>, <mailto:bier-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 13 Oct 2015 17:37:47 -0000

On Mon, Oct 12, 2015 at 02:21:05PM -0700, Caitlin Bestler wrote:
> This is more of an issue of document clarity than a request for an 
> architecture change.
> 
> My areas of expertise are at the application layer, host stacks, NICs 
> and L2 switching. Viewed through those perspectives
> there is virtually nothing in the architecture document that explains 
> why a sub-domain exists and what the implications of
> using a sub-domain vs. the use of an SI-subset are. Section 6.1's 
> discussion of adolescences alludes to a few specifics, but
> does not present an explanation.

Caitlin, 

Q1: I think you are referring to the BIER arch, not just BIER-TE arch,
so i changed the mail thread subject. Maybe the BIER arch authorw will
comment on your call for more clarity. If you are asking for specific clarity
in BIER-TE, pls. let me know.

Q2: "adolescences" ? I do not understand.

To answer your content question, SI vs sub-domain.

-> An application using BIER does not want/need to be bothered with
   bits in a bitstring. It simply creates BIER sockets(), optionally
   specifies a sub-domain (other than 0), and the list of BFER
   BFR-prefixes (IP addresses of receivers) that this socket should send copies
   to. Sends packets. Andds/removes BFR-prefixes over time if receiver
   set is changing.  Done. (*)

   How does this magic work ? The most important piece is SIs. SIs
   allow to have a 16 bit space of BFR-ids that are through routing
   underlay (eg: IGP) mapped to BFR-prefixes. 

   Why then SI and sub-domains ?
   
   Well, network operator will start (IMHO) assigning SI to BFER based
   on physical network topology.  As explained in prior emails for large
   networks, i think this would not be randomn, but based on geography -
   split up network into regions, assign BFERs in one region BFR-ids with 
   same SI (as much as possible).

   Now some app sends out humunguous amount of data and always
   has eg: < 256 receivers, but  they're all in a different region.
   Bummer: 20 regions, 10 receivers each, but sender needs to send
   out 10 copies anyhow because of SI allocation. So network operator
   creates another virtual BIER network... oops: sub-domain. In this
   subdomain only the potential BFER for this app/user are mapped
   to BFR-id, and e voila, the app uses this sub-domain, and the
   traffic in the network is again as efficient as we'd like - only
   one  packet sent to reach all receivers.

-> Is this the full answer for your use-case, DC ? Not quite i think.
   Would be good to discuss more, but i don't see you coming to Yokohama ?

   Eg: AFAIK, DCs have huge (>> 2^16) VMs. Each user/application will
   most likely have much less than 2^16 receivers. Creating per-app
   sub-domains sounds like the obvious starting point. SIs would come
   into the process automatically, as soon as an applicatin requires more
   than Bitstringlength possible receivers. BUT:

   1. AFAIK, we have not defined for BIER any automated schemes to assign unique
   BFR-id to receivers. Doing it once for eg: the physcial topology - manually
   is a well known process for operators (like allocation of loopback addresses).
   Doing this repeatedly for multiple apps IMHO requires an automated
   scheme. This would be a good (potentially DC centric) signaling
   problem to look into.

   2. I do not know how many BIFT routers in the future would support.
   Its definitely important to find solutions that minimize the
   number of required BIFT. Each BIFT is in-network state, and one of
   BIERs claim to fame is to reduce state. Of course, even if you
   had a lot of state with BIER its still better than MPLS/PIM because
   its not dynamically changing with membership, but we should try
   to propose (SI,sub-domain) solutions that are as efficient as possible.

   So,... i don't know enough about your DC targets: Number of overall
   network-wide possible receivers, number of different app-instances
   (eg: with different subset of possible receivers),...

-> Hope this gives an idea why today i think the framework of (SI,subdomain)
   is necessary (can't get rid of either without making apps more difficult),
   but also sufficient (can't think of additionally useful concepts to scale BIER
   receivers AND create the option for optimized replication).

Cheers
    Toerless