Virtual Ports

The ExaLINK Fusion has the concept of virtual ports. A virtual port pair can be thought of as a pipe with an A side and a B side, where traffic flows in both directions between A and B. Each side of a virtual port can be connected to another Fusion object, enabling a range of network and data flow possibilities.

Virtual ports are created using the virtual-port command, and must be named in the format Vnumber, for example:

[email protected]> config virtual-port V1
Created virtual port pair V1A and V1B

As with other commands, virtual ports can be removed with the no virtual port command.

Once created, each side of the virtual port can be used like any other port. The following contrived example shows a simple use of virtual ports:

[email protected]> config
[email protected](config)> patch A1 V1A
Patch created between port "A1" and port "V1A"
[email protected](config)> patch A2 V1B
Patch created between port "A2" and port "V1B"

This would effectively create a patch between A1 and A2. Note this could have been done with patch A1 A2, however the intention here is to describe the use of virtual ports.

A more realistic example use of these objects would be if a user wanted to aggregate traffic from a number of servers towards a single destination, where some servers are considered higher priority than others. This could be implemented by the use of cascaded mux objects as follows:

A diagram showing cascaded mux objects connected via an external patch cable

Cascaded mux objects joined by an external patch cable

The use of virtual ports allows this cascading to be done without the external patch cable, for example:

A diagram showing cascaded mux objects connected via virtual ports

Cascaded mux objects joined by virtual ports

The config to implement this would be:

[email protected]> config
[email protected](config)> virtual-port V1
Created virtual port pair V1A and V1B
[email protected](config)> mux mux1
Created mux "mux1"
[email protected](config-mux:mux1)> port A1; port A2; port A3; port A4
Added downstream port "A1" to mux "mux1"
Added downstream port "A2" to mux "mux1"
Added downstream port "A3" to mux "mux1"
Added downstream port "A4" to mux "mux1"
[email protected](config-mux:mux1)> port upstream V1A
Added upstream port "V1A" to mux "mux1"
[email protected](config-mux:mux1)> exit
[email protected](config)> mux mux2
Created mux "mux2"
[email protected](config-mux:mux2)> port V1B, port B1; port B2
Added downstream port "V1B" to mux "mux2"
Added downstream port "B1" to mux "mux2"
Added downstream port "B2" to mux "mux2"
[email protected](config-mux:mux2)> port upstream C1
Added upstream port "C1" to mux "mux2"

This page was last updated on Jun-18-2019.