Intro_Course_4_1 - nasa/gunns GitHub Wiki

Intro Course 4.1: Define Network Boundaries

The first thing to do is define the scope of your network. Not just what aspect it will be, but how much of the vehicle system or subsystem will be in this network vs. another network. Here are some tenets to live by:

  • Do not blindly follow subsystem boundaries in vehicle design documentation. Although that might be what your users want, conceptual subsystem scope in documentation is not a basis for GUNNS network boundaries. Physical boundaries are.
  • Completely physically isolated systems with no possibility of flowing between them (even with “leak” malfunctions) should be separate networks.
  • Conceptually separate systems (such as different subsystems of a vehicle) that can flow between them only at a few loosely coupled interfaces (such as a gas supply subsystem flowing into a cabin volume) should be separate networks.
    • Networks of the same aspect can flow directly between each other, using special supply & demand links.
    • For stability, these interfaces should only be at locations where they’re loosely coupled.
    • See Aspect Architecture: Coupling and Sim Bus Lag for a description of coupling. In this case, we’re coupling two networks together, rather than two aspects of a modelled device, but the concepts are the same.
    • See the discussion on link connection rules and common problems in supply & demand links for more info about coupling.
  • Flow loops should be self-contained in one network — never break a loop into multiple networks.
    • Bisecting a flow loop creates two tightly-coupled interfaces between the two networks. Tightly coupled = bad.
  • Minimize the number of nodes in each network for speed.
    • For instance, two networks of 20 nodes each together run 4 times faster than one network of the same 40 nodes.
    • If you have a self-contained system with a clear external boundary, but it’s divided into two sections that are loosely coupled to each other, then think about making them separate networks to reduce each network’s node count.

Previous Page / Next Page

⚠️ **GitHub.com Fallback** ⚠️