From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr1-x434.google.com (mail-wr1-x434.google.com [IPv6:2a00:1450:4864:20::434]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id D29AA3B29E for ; Thu, 27 Oct 2022 17:44:46 -0400 (EDT) Received: by mail-wr1-x434.google.com with SMTP id bs21so4387530wrb.4 for ; Thu, 27 Oct 2022 14:44:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=5FKR5xnqhEX9OkbVFeTTZhLHsbHz2r/PoHa0v2hUFRw=; b=dyXyV1WcTpzYhEGVvtnWunZHaWWXK4+kE+V9Bb2/jufcBVayk1v+hyluqMMao6ONFk K+Ff2aZJxdV6OTY7n+T0CJZSkGAw+9Vr955A4s6at0Qx2Od5PJGR1aEkLPjwBCgI3yDQ HOQqFKMrpinZ1Dv9pS9jee9U10ScXxmtv34Up8T6tkw1+y2xVFsvL2LzAN20bAW1W2oG Xi2nqwt0Rq6o5q+sYj2Kc7WpncMhkagoCIYuEi4gSzjgOUMEa1EY1tv4OplUQWH0yHot I3F5C4qBHmOhxsSIF/Fjr7wYJA/r6PgSeRKrIYZRBfNOKxx7rJmEmjmIjiX81YXvwNx2 6Xlw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5FKR5xnqhEX9OkbVFeTTZhLHsbHz2r/PoHa0v2hUFRw=; b=1MISdqXtMmoGiFZ+jDiStW+rAvDJvfIK+GhUatyxtmLdia0REQgg12FJi68Yukc1NC l/Upydwpsg+uA4towXwUrX0QZLVRpRU8FYKmr0n7QRivLGTQTkTI8pD1Ggb4AXKP11bZ Ge2lG2KEyZLeJCmpONpT3jU6OUA/acAF7Aaihtd7mjQ0pJM4x0u9Q08qAVzf+J5EKJqy 70lfoHE6lRfnJIb8xI2WK+x7I2PL07OnN70+vi8Gmjcf4AEzCLug1Xe48Aojr7oOM4q5 eZBA8zfO03jnu0UvNNYczNvdLE91L6+1Yvv2ueCK1zHkK+9CkqCx/JKW6pIqoKUptwBu PFUQ== X-Gm-Message-State: ACrzQf2BHQkJdTk5Q+0OPKJAs4dYaPu23tgdBK9bJ60vwc0L+YyrDrkC /WDlFjVI/IsBF/C/2TQsr+j8NvjtwoEOCPy2TZk9rdUYJ4k= X-Google-Smtp-Source: AMsMyM7J35pGpVJ5Hyew4pH0P1saktQ/D+y3wbDDNYOS32whGNMlIZbsR5YzhJOcSiqLOP2QzSNnD7jmLx5TM4KIec8= X-Received: by 2002:a05:6000:3cf:b0:231:6ed6:e978 with SMTP id b15-20020a05600003cf00b002316ed6e978mr32516024wrg.500.1666907085828; Thu, 27 Oct 2022 14:44:45 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Dave Taht Date: Thu, 27 Oct 2022 14:44:33 -0700 Message-ID: To: Herbert Wolverson Cc: libreqos Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: Re: [LibreQoS] Integration system, aka fun with graph theory X-BeenThere: libreqos@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: Many ISPs need the kinds of quality shaping cake can do List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 27 Oct 2022 21:44:47 -0000 Not necessarily useful in this context, but one of my all time favorite graphing tools was the gource animations for commit logs and developer interest. You think that's kind of a boring subject, yes? Well, play one of these animations back... https://gource.io/ I've always kind of wanted to see a network evolve over time, in much the same way. On Thu, Oct 27, 2022 at 2:33 PM Herbert Wolverson via LibreQoS wrote: > > So I've been doing some work on getting UISP integration (and integration= s in general) to work a bit more smoothly. > > I started by implementing a graph structure that mirrors both the network= s and sites system. It's not done yet, but the basics are coming together n= icely. You can see my progress so far at: https://github.com/thebracket/Lib= reQoS/tree/integration-common-graph > > Our UISP instance is a great testcase for torturing the system. I even fo= und a case of UISP somehow auto-generating a circular portion of the tree. = We have: > > Non Ubiquiti devices as "other devices" > Sections that need shaping by subnet (e.g. "all of 192.168.1.0/24 shared = 100 mbit") > Bridge mode devices using Option 82 to always allocate the same IP, with = a "service IP" entry > Various bits of infrastructure mapped > Sites that go to client sites, which go to other client sites > > In other words, over the years we've unleashed a bit of a monster. Cleani= ng it up is a useful talk, but I wanted the integration to be able to handl= e pathological cases like us! > > So I fed our network into the current graph generator, and used graphviz = to spit out a directed graph: > > That doesn't include client sites! Legend: > > Green =3D the root site. > Red =3D a site > Blue =3D an access point > Magenta =3D a client site that has children > > So the part in "common" is designed heavily to reduce repetition. When it= 's done, you should be able to feed in sites, APs, clients, devices, etc. i= n a pretty flexible manner. Given how much code is shared between the UISP = and Splynx integration code, I'm pretty sure both will be cut to a tiny fra= ction of the total code. :-) > > I can't post the full tree, it's full of client names. > _______________________________________________ > LibreQoS mailing list > LibreQoS@lists.bufferbloat.net > https://lists.bufferbloat.net/listinfo/libreqos --=20 This song goes out to all the folk that thought Stadia would work: https://www.linkedin.com/posts/dtaht_the-mushroom-song-activity-69813666656= 07352320-FXtz Dave T=C3=A4ht CEO, TekLibre, LLC