Skip to content

Mission Statement

matejcik edited this page Nov 11, 2016 · 1 revision

A brief overview of what we're building and what are the expectations.

Defining Usecase

A customer has an existing wired network with the usual stuff: smart switches, VLAN splitters, endpoints, trunks, twisted-pair cables, etc. They want to move their network to the cloud with as few changes as possible.

LSDN should allow them to write a config file describing their physical network configuration, in terms of:

  • Linux network interfaces of virtualized machines
  • active network devices, e.g. switches, firewalls etc.
  • connections between them

This description is then translated to a set of TC rules that, when installed in the kernel, perform packet routing and filtering logically equivalent to that of the physical network.

Requirements

  1. It must be possible to express commonly used network devices and network features (e.g., learning switches, VLANs)
  2. It must be possible to tunnel packets from one physical host implementing part of the virtual network to another physical host with a different part of the virtual network.
  • obviously, the other host must run properly configured LSDN counterpart
  • a good idea might be to allow setup of both hosts from the same configuration file
  1. It must be possible to modify the network on-the-fly: "disconnect box B, connect box A to port 13 of switch Foo"
  • a daemon can keep network configuration in memory and regenerate rules in response to such commands
  • or the configuration can be serialized and loaded/applied through a CLI tool
Clone this wiki locally