On Tue, May 26, 2020 at 01:51:54PM -0700, Han Zhou wrote:
> On Tue, May 26, 2020 at 1:18 PM Ben Pfaff <b...@ovn.org> wrote:
> >
> > Hi Han!
> >
> > I'm working on the port of ovn-northd to DDlog.  It works, and now we're
> > working on optimizations.  One of the areas where the DDlog
> > implementation has performance limitations is around ID allocation for
> > datapaths and ports, so Leonid is working on a new allocator.
> >
> > OVN supports static assignments for datapath and port IDs, which I
> > believe is for the use of interconnection.  The new allocator is going
> > to work out better if statically assigned IDs are limited to some range
> > that the allocator does not use for dynamic assignments.  For example,
> > the static assignments could be the top half (or top N, or whatever) of
> > the range.  Is that something that would be OK for the interconnection
> > feature?  If so, we can make OVN allocation much more efficient; if not,
> > we'll have to think a lot harder.
> >
> > Thanks,
> >
> > Ben.
> 
> Hi Ben,
> 
> It is ok to have specific range for statically assigned IDs. In fact for
> DP, it is already using separated range between local and global (i.e.
> interconnection).
> 
> See lib/ovn-util.h:
> #define OVN_MAX_DP_KEY ((1u << 24) - 1)
> #define OVN_MAX_DP_GLOBAL_NUM ((1u << 16) - 1)
> #define OVN_MIN_DP_KEY_LOCAL 1
> #define OVN_MAX_DP_KEY_LOCAL (OVN_MAX_DP_KEY - OVN_MAX_DP_GLOBAL_NUM)
> #define OVN_MIN_DP_KEY_GLOBAL (OVN_MAX_DP_KEY_LOCAL + 1)
> #define OVN_MAX_DP_KEY_GLOBAL OVN_MAX_DP_KEY
> 
> For lports, since all interconnection ports are on the global DPs, there is
> no chance of ID conflict between local and global, so such separation
> wasn't necessary. However, I don't see any problem if we do that for
> performance reasons in DDlog, as long as the ID space is enough for both
> part. I think the global ports are not so many. Say we have 50 AZs, each
> with 40 interconnection ports, which would be a super large scale, then a
> range with (1u << 11 == 2048) would be more than enough.

That is good news.  Thank you!
_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to