Configuring ORCA NLR Sherpa handler

WARNING

Sherpa has discontinued operation on NLR as of 2012. This page is maintained purely for historical reasons.

Overview

The NLR Sherpa handler provides ORCA with the ability to invoke the dynamic VLAN service named Sherpa provided by the National Lambda Rail.

Configuration

NLR handler is self-contained and does not require any external software. It is configured by specifying nlr.site.properties property pointing to a nlr.site.properties file usually installed under $ORCA_HOME/config. Example of an actor configuration file.

Handler details

The NLR handler accepts the following properties from the controller:

  • config.interface.1 - first interface name
  • config.interface.2 - second interface name
  • resource.bandwidth - bandwidth in Bps
  • unit.vlan.tag - optional tag to use. If no tag is specified, NLR Sherpa will issue it and it will be returned as part of unit.vlan.tag return property

Return properties:

  • unit.vlan.tag
  • unit.vlan.reservation in the form tag|interfaceA|tag|interfaceZ|tag

Principle of operation

Sherpa allows the user to maintain a pool of reserved tags that can be bound to paths. The handler is designed to take advantage of this feature to enable it to reach sites that operate with a narrow set of vlan tags. The unit.vlan.tag property is optional to the handler. Her is the pseudocode the describes how the handler behaves at join:

if unit.vlan.tag is empty
    retrieve the list of previously reserved tags
    if list is not empty
        retrieve the first tag
    else
        pick a random new tag
        reserve a new tag
    endif
    provision path for the selected tag
else
    retrieve the list of previously reserved tags
    if unit.vlan.tag is on the list
        provision the path for this tag
    else
        attempt to reserve the tag
        if successful
            provision the path for the tag
        else
            fail with exception
    endif
endif

For leave the handler removes the path and attempts to re-reserve the tag used for the path for future use.