Skip to content

Network Fabric Management Overview

MetalSoft is capable of of automatically deploying complex network configurations on a multitude of switch brands including Cisco, Juniper, Dell, Cumulus, HP and others.

The approach that MetalSoft Fabric Manager takes is “intent-based” in the sense that the “consumer” fully describes the desired network “services” and topology and the system then translates those into actual switch and OS configurations, based on “admin” or “provider”-defined “policies”. This approach helps network admins offload some of the day-to-day operational changes to other users or systems and enables cloud-like consumption of physical infrastructure.

The user defines the “intent” via the Infrastructure Designer, the CLI, Terraform, Ansible or the API.

Another important concept in MetalSoft is vendor and sometimes technology abstraction. We operate largely with cross-vendor concepts such as a “distributed link aggregation” instead of vendor specific terms such as MLAG or VLT.

The advantage of this approach is that the network operators can safely use multiple vendors at the same time, make transitions between them etc, ultimately improving the cost-effectiveness of the data center.

MetalSoft uses several important concepts:

  • Fabrics These capture the behaviour and settings of a group of endpoints. Fabrics typically configure the switches and other devices it “manages” but may also be “unmanaged” in the sense that they track IP and VLAN allocation to endpoints but do not actually configure anything on network equipments such as switches. There are multiple types of fabrics: Ethernet, Infiniband, Fiberchannel.

  • Infrastructures

    This is a multi-tenancy construct similar to a “VPC” in which a tenant-specific network blueprint is defined. It defines a security boundary and informs the system not just about endpoint and logical network ownership but also about when to allocate separate VLANS or VNIs and when not.

  • Logical Networks

    Logical Networks are an abstract concept on top of a Fabric that reflects the intent of connecting endpoints, servers, VMs, storage drives etc. to each other or with outside world.

    The implementation of a logical network depends on the underlying Fabric and other configurations. For example, in the case of Ethernet fabrics it typically maps to a separate OSI Layer 2 network, usually implemented with a different VLAN ID and one or more IPv4 and IPv6 subnets out of which IPs are allocated to the connected endpoints.

    Logical networks are typically created from Logical Network Profiles.

  • Logical Network Profiles

    Logicla Network Profiles act as templates for creating Logical Networks. Instead of creating a logical network for each user, admins simply define a Logical Network Profile and then users create networks based on this template, without admin’s intervention. A network profile is created on a specific fabric. Different fabric types will have different network profiles.

    An ethernet network profile can have:

    1. a VLAN entry for which a VLAN ID can be manually or automatically allocated from the range speficied on the underlying fabric’s settings.
    2. a VNI can also be specified which can be either manually or automatically allocated from the range specified in the fabric settings.
    3. a set of IPv4 subnets from which IPs are allocated to endponts (if multiple subnets are specified an IP from each will be allocated)
    4. a set of IPv6 subnets from which IPs are allocated to endpoints (if multiple subnets are specified an IP from each will be allocated)
    5. An external connection. If specified the logical network will be connected to the external connection.

    An infiniband network profile can have:

    1. A pkey that can be either manually or automatically set from the range of PKEYS configured on the Fabric.

    A fibrechannel network profile can have:

    1. A FCID that can be either manually or automatically set from the range of FCIDs configured on the Fabric
  • Subnets

    Subnets are Ipv4 or IPv6 prefixes from which either individual IPs or other smaller subnets are allocated to satisfy the need for IPs of a particular logical network in the context of an infrastructure. Multiple subnets will be allocated if the subnet pools are listed in the network profiles VLAN/VNI entries.

  • Endpoints

    We use endpoints to define a network device connected to one or more ports in the network

  • Connection A connection between an endpoint and a logical network is customized via the settings on a connection. This defines:

    1. Tagged/untagged
    2. Link aggregation type: single device link aggregation, distributed link aggregation (MLAG, MCLAG, VLT etc.)
    3. MTU
  • Sites

    A site is basically a physical location, usually a single datacenter. A site can have one or more Fabrics.