UX Connect

 

Abstract

The 'Connect' ux-application shows up-to-date information about the connection status from ONAP-CCSDK to netconf-servers. 

Related issues

SDNC-581: SDN-R: UX-Client - ConnectClosed

 

nodeId vs mountpointId vs deviceName vs pnfId vs network-element-name vs ip-address

Several information and data models describing the same "thing" but focus on different views or aspects. Identifiers of the "thing" may have different names but its value s the same.

The term "nodeId" is used by OpenDaylight to identify a node of a topology. In transport telecommunication networks the node often, a device or network-element. Therefore, the value of nodeId, device-name or network-element-name must be the same. The ONAP project "Active and Available Inventory (AAI)" defines "physical network functions (PNF)" - The value of the pnfId should be also the same as nodeId. 

A "Mountpoint" in OpenDaylight is describes a NetConf-Server and it connectivity from OpenDaylight point of view. If a network-element supports NetConf and runs a NetConf-Server, then the Mountpoint has the information about the NetworkElement-Management-IP-Address (AAI:PNF/oam-ip-address) and its name (nodeId).

 

General

Telecomunication

ITU-T G.771 = ONF TR 512

AAI-API

General

Telecomunication

ITU-T G.771 = ONF TR 512

AAI-API

Topology

  • List of nodes

  • List of edges

Network

  • List of NetworkElements

  • List of Links

Domain (to be verified)

  • List of ControlConstucts

  • List of Links

network

  • List of PNFs

  • List of physical-links

 

User documentation

The 'Connect' application provides up-to-date connectivity information about the wireless devices in the network. It automatically displays new network elements and their connection status. Despite the network elements usually automatically mount themselves, an additional small window allows manually mounting devices/mediators. For better understanding alarms and status, a connection status log lists all the connection status changes of OpenDaylight mount points.

Specification

“Connect” User Interface should be implemented to show the available Network elements as a table.

Below are the UI elements to be implemented.

The table views should implement the common ux-framework-table supporting filtering, sorting and pagination.

 

The graphical user interface should be divided into two different sections using tabs:

  1. Network Elements

  2. Connection Status Log

Network Elements

Network Elements are physical network functions, which are planned or expected in the network. This means the identifier, IP addresses and its required configuration is well-known and available in a planning database or in ONAP A&AI.

This view also offers to manually configure/mount the device with the '+' icon. The SDN controller will then start connecting the Netconf server.

 button on the top right corner should be implemented to allow users to add/mount a device.

Reload Button: Reloads/Refresh the Network Elements table

The “Network Elements” tab shows the table with the following columns:

  1. Node Name

  2. Required

  3. Connection Status

  4. Host

  5. Port

  6. Core Model

  7. Type

 

By right-clicking on an element in the table, a context menu should be opened offering further functionality.

Context Menu

The context menu should offer the following actions for a selected element:

 

Action

Icon

Action

Icon

Web Client

Mount

Unmount

Info

Edit

Remove

 

Additionally, shortcuts (links) to other applications should be available:

  • Inventory

  • "FCAPS" Apps:

    • Fault

    • Configuration

    • Accounting

    • Performance

    • Security

If one of the application links is selected, the corresponding app should be opened and its available data filtered based on the selected network element.

 

Web Client button

The Web Uri Action is only available if the network element supports the weburi extension.

If the weburi extension is not available, the button should not be visible.

As the network element itself must be queried, the button can only be available, if the network element is connected.

 

To get all extensions of a network element: The data provider provides the REST-API to read the data :-  /rests/operations/data-provider:read-gui-cut-through-entry

 

Edit button

The Edit button should allow updating the following properties of a network element:

  • Username

  • Password

  • Required

If the Edit button is clicked, a popup should be shown to edit the properties.

 

Info button: Yang capabilities

As per the old DLUX the info button shows the yang capabilities of the element as below:

When the info button is clicked the same display of yang capabilities will be followed in the new implementation as well showing just the module name and revision without table properties like sorting/filter/pagination.

Example 1 :  "(urn:ietf:params:xml:ns:yang:ietf-netconf-monitoring?revision=2010-10-04)ietf-netconf-monitoring",

from the above capability the highlighted date 2010-10-04 will be the revision and ietf-netconf-monitoring will be the module .

Example 2:  "urn:ietf:params:netconf:capability:notification:1.0"

for the above capability as we do not have revision and the module name , this details/ entry will not be considered to display in the UI.

Example 3: urn:ietf:params:netconf:capability:yang-library:1.0?revision=2019-01-04&module-set-id=60,

even the above capability is not considered as it has special character '&' after the date followed by some value

 

The requested information source will be: GET /restconf/operational/network-topology:network-topology/topology/topology-netconf/node/{node-id}

 

Greyed out (inactive) actions / links

inactive elements have a gray color (g), active elements are black (b)

Display status

Mount

Unmount

Info

Edit

Remove

Display status

Mount

Unmount

Info

Edit

Remove

Connected

b

b

b

b

b

Connecting

b

b

g

b

b

Disconnected

b

b

g

b

b

The links to the Accounting and Security app are always inactive, as they are not implemented as of Frankfurt release.

The links to Fault, Configuration and Performance are always active.

The Web Uri is only available if the network element is connected and supports the weburi extension.

 

Status → action → result

 

ODL Mountpoint

ES required

Display status

Action

ODL Rest

ES database (Client or Server)

GUI

 

ODL Mountpoint

ES required

Display status

Action

ODL Rest

ES database (Client or Server)

GUI

1

exists 

true

Connected/ing

User: Press minus

Remove ODL mountpoint

delete-network-elementconnection

Not in the list anymore.

2

exists 

false

Connected/ing

User: Press minus

Remove ODL mountpoint

delete-network-elementconnection

Not in the list anymore.

3

exists 

true

Connected/ing

User: Edit and change to required=false

no change

Change status to required=false

In list, required=false

4

exists 

false

Connected/ing

User: Edit and change to required=true

no change

Change status to required=true

In list, required=true

5

not existing

no existing

no entry

User: Add new mountpoint + button

Create ODL mountpoint

create-network-element

In list, required=true / false based on user selection

6

exists

false

Connected/ing

User: Unmount

Remove ODL mountpoint

 

Not in list anymore.

7

exists

true

Connected/ing

User: Unmount

Remove ODL mountpoint

 

In list with the connection status= Disconnected

8

not existing

true

Disconnected

User: Edit and change to required=false

no change

delete-network-elementconnection

Not in list anymore.

9

not existing

true

Disconnected

User: Press minus

no change

delete-network-elementconnection

Not in list anymore

10

not existing

true

Disconnected

User: Edit and chage to required=false

no change

delete-network-elementconnection

Not in list anymore

11

exists & connected/ing

false

Connected/ing

Other: Mountpoint removed via RESTConf 

 

Devicemanager has 
has to remove data if required=false

(Could be removed by client before)

Not in list anymore

12

not existing

not existing

no entry

Other: Mountpoint created via RESTConf

 

Devicemanager has to create
data with required=false

In list, required=false

 

Connection Status Log

The log lists the connection status changes between SDN Controller and NetConf servers (devices).

The “Connection Status Log” tab shows the table with the following columns:

  1. Time

  2. Node Name

  3. Connection Status

 

Data provider

The values are stored in an ElasticSearch database. The data provider provides the REST-API to read/write/update the data.

  1. Network Elements:

    1. The entity name to read the Networks element is read-network-element-connection-list

    2. The entity name to write to the Network elements is create-network-element-connection

    3. The entity name to update the Network element is update-network-element-connection

    4. The entity name to delete from network elements list is delete-network-element-connection

  2. Connection Status Log:

    1. The entity name to read the Connection status Log is read-connectionlog-list