Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

In its default state (where no "regions" or "layouts" are defined), it should look and behave similarly to the "classic" Topology view.

 

Note that this view is currently "experimental", although the longer term plan is to bring it up to par with the "classic" view, which it will eventually replace.

Regions

The ONOS model of the network includes Region objects which can be configured with a collection of Devices (switches) "belonging" to that region. 

...

Code Block
onos> regions
id=rDE, name=Germany, type=COUNTRY
  master=[localhost]
  of:0000000000000013
  of:0000000000000014
  of:0000000000000015
  of:0000000000000016
  of:0000000000000017
id=rES, name=Spain, type=COUNTRY
  master=[localhost]
  of:0000000000000018
  ...

 

(Another region command we'll look at is region-add-peer-loc, but we'll defer that until we have covered layouts).

Note that regions do not have any notion of hierarchy; they are simply "collections of devices". The hierarchy is expressed using Layouts

Layouts

Layouts are used to define a "containment" hierarchy for the regions, as well as provide configuration information for the UI, such as which background decoration to use when displaying the layout; for example a geographical map.

A Layout is a "UI construct" that has an associated region "backing" it. Layouts can define a specific some other layout as a its parent , to construct a hierarchy(except the root layout, of course), thereby allowing a hierarchy of layouts to be constructed.

This could be pictured as followsshown here:

Note that the "root" (default) layout does not have a backing region. Any devices (and their attached hosts) that have not been assigned to a region will appear in the topology view at this top level.

Layouts can be configured using a number of CLI commands:

layout-add

Layouts can be added to the model with the layout-add command.

...

Code Block
layout-add root @europe . . 4.66 -2562.93 -412.56
 
layout-add lUK @europe rUK root 11.63 -6652.54 -938.04
layout-add lIT @europe rIT root 7.15 -4818.73 -1330.36
layout-add lFR @europe rFR root 8.98 -5378.99 -1334.77

layout-add lMilan +segmentRouting rMilan lIT 0.86 68.58 54.71

 

...

Note that currently the <scale>, <offset-x>, <offset-y> values can be determined by trial and error. See the section on Useful Techniques below for more details.