1.Overview

Consonance is a portal where Apps can be purchased by users for their network. The Vendor portal of Consonance is a portal through which Vendors can publish their apps to the external world.

2.Vendor Management

2.1.Registration

To be able to publish Apps, the Vendor needs to have a Vendor account in Consonance.

Hence the first step is to register the organization in Consoance. To do so, you will need

the following information:

Name of the Organization

Address

Organization Phone

URL for the Organization

Name of Primary User of the Account

Email of the Primary User of the Account

Contact Phone of the Primary User of the Account

Password of the Primary User of the Account

The provided details can be modified later if required, except the registered email.

The registration process is triggered by clicking on “Create an account” in the home page. The user is

presented with a sign-up screen where the above information can be entered. After acceptance of

“Terms Of Service” the account needs approval from Admin of Consonance before the Vendor can

start uploading Apps to the store.

The Approval process could take couple of days to conduct the necessary background checks. The

Vendor will receive notification via the registered email upon completing the process.

Upon successful activation, the Vendor can login to Vendor portal of Consonance using the registered email and

password and is assigned the role of Vendor Admin for that Organization.

2.2.Users

A registered Vendor Admin can now administer the account themselves or create additional users to manage the publishing of Apps. To accomplish this, the Vendor Admin navigates to the “Users” tab on the top menu and clicks on “Add User”.

For each user to be added, the following information needs to be provided:

Name

Email

Contact Phone

Password

Role – VENDOR ADMIN or VENDOR USER

The user account is created, and an email sent to the registered email address with the details for the new user to login.

The organization can have the following types of users – VENDOR ADMIN or VENDOR USER. Based on the type of user, the capabilities vary. The below table will list out the capabilities of the two types of users in vendor portal of Consonance.

Capability

VENDOR USER

VENDOR ADMIN

_* only for user apps

1

Upload Apps

2

View all Apps belonging to the

Organization

3

Modify any App belonging to the

Organization

_*

4

Update/Upgrade all Apps belonging to

the Organization

_*

5

App State change Notification

_*

6

Cancel App Submission (before it is

approved)

_*

7

Cancel App Modifications (before it is

approved)

_*

8

Feature an App

_*

9

Deprecate an App

_*

10

Promotional Pricing

_*

11

Create Additional Users

_*

12

Contact System Admin in case of any

questions or concerns

There can be multiple Vendor Users or Vendor Admins within an Organization. This is a way by which responsibilities for Apps can be separated based on the functionality or the target audience of the Apps (e.g. Enterprise, Service Provider etc).

3.App Life Cycle

3.1.My Apps Page

When the user first logs in, the user lands on the “My Apps” Page. Since there are no Apps belonging to the user yet, the option to Upload a new App exists there.

In the occasion that user had already uploaded a few Apps, those Apps are listed, along with relevant information such as, Last Updated Date, number of Purchases, number of Reviews, number of Questions, and the Current App Status.

User can filter the Apps being viewed based on the Status of the App (e.g. Active, Pending etc). Clicking on an App takes the user to the details of the App.

Users can initiate a set of Actions pertaining to an App by clicking on the Gear Icon present on each App. These set of Actions are described below:

Modify App Details

Update App Version

Feature An App

Promote An App

3.2.App Upload

In order to upload an App, user clicks on “Upload App” in “My Apps” page. This will take the user through a four step process. At the end of the 4th step, user can submit the App for approval. The App goes into the System queue where it will be examined for conformance and upon its validation the App will be available for the Users to purchase in user portal of Consonance.

First Step:

In the first step, user provides the following information pertaining to the App:

Name – Name of the App

Version – Version of the App

Description – Short description of the App

Category – eg. Security, Management, etc

Type – Specifies if App resides on Controller or external to Controller

Tags – Useful to identify the App for users to lookup.

Price – Price of the App

Licensing Model – Can be One-time purchase or Subscription based (monthly/annual)

Icon – PNG format and recommended to be of 512×512 resolution

The name and version combination needs to be unique within an Organization. Details such as Description, Category, Type, Tags and Price can be modified later but will require re-approval.

After providing all the above details, user can navigate to the second step.

Second Step:

Here user provides the following information:

Resources needed for the App to function

Hardware

Minimum CPU, Memory requirements and any other dependencies

Software

Additional Components which need to be present in the system. E.g. DB

Compatibility Controllers the APP supports If Openflow compatible, then the Devices/Versions it supports If Openflow compatible, then the Capabilities it supports

For every controller selected, user needs to provide the versions supported as well. While providing Openflow Version, user needs to indicate Device Name and the Openflow Version it requires to support.

All the details provided in this section can be modified, if desired, after the App is approved. User can proceed to the third step after filling all the above information.

Third Step:

In this step, User can provide more instructive information about the App, which will help the consumer pre as well as post purchase

Screenshots – conveys how the App screens and dashboard looks

Videos – conveys the benefits of the App as well as tips to use the App

Guides – contains Specs, Usage manuals and License Agreements

User is encouraged to provide as much information about the App as possible, so that consumers get more insight about the App before their purchase. All the provided data can be modified or added to, if desired, even after the App is approved.

Unlike the Screenshots and Guides, the Videos are not uploaded to the AppStore. The links to the actual video is maintained and referred to.

User can proceed to the fourth step after specifying the above information.

Fourth Step:

As part of this step, user provides the actual image of the App. User reviews all of the data entered so far before submitting. User can navigate back to the previous three steps in case any of details need to be changed or wants to add more details. The App file can be of type jar/kar file or OVA file and cannot exceed 4GB.

On successful submission of the App, user is navigated to “My Apps” page, which displays the entry for the newly uploaded App. The state of the App will be “PENDING”. An acknowledgement of the submittal is sent to the submitters email address as well as the Vendor Admins of the Organization.

If there is any error in the App submission, the validation errors will be displayed and user can navigate backwards through the 4-step process and resubmit the App with modifications.

The App submission is notified to the AppStore Admin as well. The AppStore System Admin evaluates the App according to the set of criteria and based on it either approves the App or declines it. The App status updates are notified to all concerned Vendor Admins and the original submitter. If the App has been approved, the state of App changes to “ACTIVE” and users can now purchase and download the App. If Admin had declined the App, the state of App changes to “DECLINED” with the reason for decline. User can then resubmit the App after necessary modifications.

If for any reason, submitter decides to withdraw the App, User can go to “My Apps” tab and click on “Cancel” option in the Gear icon for the corresponding App. Vendor Admins also have the capability to perform this action.

Notes:

Some things to be noted as part of the App Process are

The App Name, Version and Vendor combination is unique to the entire AppStore.

The Name of the App and Licensing Model cannot be modified throughout the lifetime of the App.

Details such as Description, Category, Type, Tags, Price, Screenshots, Video Links and Guides can be modified at any point but requires approval from the AppStore Admin.

The Version needs to be updated to a unique value whenever the App binary is updated.

It is mandatory to upload License Agreement for the App.

App Limits:

Name

64

Maximum length

Version

16

Maximum length

Description

1K

Maximum length in characters

Icon Size

512 KB

Maximum size

Resources Specified

8

Maximum for Hardware and Software

App Size

4 GB

Maximum size of jar/kar file or OVA file

Screenshots

2 - 10

Number allowed [PNG/JPG]. Each image cannot exceed 5Mb

Video Links

0 - 5

Number allowed [Youtube]

Documents

2 - 4

Number allowed (EULA, User guide) – Txt/PDF. Max size allowed 4Mb

Tags

0 - 10

Number allowed, Spaces should be allowed

Vendor admins/users

4

Maximum number of users/admins in a vendor

3.3.App Summary Page

When the user is in “My Apps” page or in “All Apps” page, clicking on name of the App will take the user to the Summary Page of that App.

The App Summary Page provides users a detailed view of all the attributes of the App in a single glance. These details include Name, Description, Category, Type, Status, Price, Licensing Model, Tags, Submitter, Hardware and Software requirements, SDN Controllers supported, Openflow version and Openflow capabilities, Screenshots, Videos, and Documents. It will also display if the App is currently featured, and if it has any promotional price.

Vendor Admin can Modify or Update any App belonging to the Organization from the Summary Page while the Vendor Users can Modify or Update only Apps belonging to that user.

User also has the facility to make an App Featured or provide Promotional Pricing from the App Summary Page.

3.4.Modify App

User can begin App modification process by clicking on “Enable Modifications” button in the App Summary page or by clicking on the Gear icon and selecting “Modify App”. This will enable the edit icon for the relevant sections. Clicking on the Edit icon takes user to the relevant Step where the attributes can be changed. User has the facility to navigate back and forth among the 4 steps to modify other details as needed. At the end of the 4th step, user can click on “Submit” or “Abandon” changes It is worth noting that App Name, Version, Licensing Mode, and App file cannot be modified.

Clicking on Save or Abandon will direct the user to “All Apps” page. If user had submitted new changes, there will be a new entry for this App under “Pending Apps” tab with the state “MODIFICATIONS PENDING” in addition to the current ACTIVE app which is displayed under “Active Apps” tab. Once App modification is approved, there will be only one entry for this App under “Active Apps” tab and this will reflect the modifications.

Users cannot modify an App, which is already in “MODIFICATION PENDING” state. Users can choose to cancel the modification before it is approved. To achieve this, user needs to navigate to “Pending Apps” under “All Apps” tab and click on the gear icon corresponding to this App and select “CANCEL”.

A Vendor Admin can modify any App belonging to the Organization. A Vendor User can modify only the Apps belonging to the user. System Admin can approve or decline App modifications. When the modification is approved or declined, email notification will be sent to the user who has submitted the App for modification along with all the Vendor Admins in that Organization.

Price Modifications

A Similar approach is taken when the Price of an App is changed. This action also requires Appstore Admin approval and cycles through the same set of states.

Update App

When users want to provide a new version of existing Apps, they will need to utilize the Update feature. User can begin App update process by clicking on “Update” button in App Summary page or from the Gear icon. User is taken through the 4 step process, with all the Attributes prefilled. User can choose to only modify those attributes which need change. The App Name cannot be modified while it is mandatory to update the App Version and App image file.

In the first step, user is presented with an additional field to what’s new in the version being provided. This provides a quick summary for the customer to decide whether to upgrade to that particular version. In the fourth step, user can opt to deactivate the current version of App upon approval of the new version or provide both options to coexist.

Upon submission, user will be directed to the “My Apps” page with UPDATE PENDING status for the new version. Users cannot modify/update an App which is in “UPDATE PENDING” or “MODIFICATION PENDING” state. Users have the option to cancel the update before it is approved if they need to further modify any attributes.

A Vendor Admin can update any App belonging to the Organization while Vendor User can update only the App belonging to the user. Email notifications are sent to the user who has submitted the App and all the Vendor Admins in that Organization as the App changes state to ACTIVE/DEPRECATE. The Approval process gets reset if the App is withdrawn and resubmitted. The App will move to the end of the System Admin queue.

3.5.Feature App

Vendors can feature their Apps in the user portal of Consonance for a specified period of time. While it is featured, the App is prominently displayed in the carousal on the top of the user portal.

Only Vendor admins can feature the Apps in their organization. In order to feature an App, user need to click on “Feature App” in the Gear icon corresponding to the App or directly in the App Summary page. It will open a pop-up requesting information for Timeline of Start Date and End Date. The feature start can be immediate. End Date cannot be the same as start date. Promotion end time is effective midnight PST of the specified date.

Please note that the new price of the App cannot be greater than the original price of the App. Once an app is featured, it can be modified only by contacting the system admin.

While an App is currently featured, user can modify/update the App. Upon its approval the new version will automatically get featured in place of the old one.

3.6.Promote App

Users can promote their Apps for a defined period of time. Both Vendor User and Vendor admin can promote their Apps. A Vendor Admin can promote any App belonging to his Vendor. In order to promote an App, user need to click on “App Promotion” in the Gear icon corresponding to the App or directly in the App Summary page. It will open a pop-up requesting information for New Price, Promotion Start Date and End Date. The start of the Promotion can be immediate. End Date cannot be the same as start date. Promotion end time is effective midnight PST of the specified date.

Please note that the new price of the App cannot be greater than the original price of the App.

If the user wishes to cancel the promotion for an App before the specified end date, it can be done only by contacting the system admin.

While an App is under promotion, user can modify/update the App, provided the price of the App does not change.

3.7.States of an App

The table below lists out the various App states its description:

PENDING

Awaiting Approval from AppStore Admin

App enters this state upon submission

While in PENDING state, App will not be displayed in User portal of Consonance and hence not available for purchase

System Admin needs to take action and App can move to the following states

ACTIVE – upon Approval

DECLINED – when Validation fails

ACTIVE

App is available for purchase in user portal of Consonance

App enters this state when System Admin approves an App.

From ACTIVE state, the App can transition to the below states:

DEPRECATED – indicates App will no longer be available for purchase in Consonance

MODIFICATION PENDING – indicates App information has been modified and resubmitted for approval to System Admin.

PRICE PENDING – indicates the price/cost of App has been modified, and is pending approval by System Admin.

DEPRECATED

App is no longer available for purchase in Consonance

App can be downloaded by already purchased users

App can move to DEPRECATED state:

If the System Admin determines it should not be available in User portal of Consonance.

When user decides to deprecate the App (eg. Release of new version)

Purchased users are notified when App is deprecated.

From DEPRECATED state:

App can possibly be moved back to ACTIVE state, if the System Admin determines a need for it to be available in Consonance

Can be moved to DELETED state, if the System Admin determines the App has violated the terms and conditions

MODIFICATION PENDING

App retains its Version in this state

Apps in ACTIVE state can move to MODIFICATION PENDING state if user modifies App details and resubmits

Current App continues to be available in User portal of Consonance, while App is in this state

User cannot modify the App further while it is pending. If required, User has to cancel submission and resubmit with corrections

From MODIFICATION PENDING state:

App can move to ACTIVE state, if the System Admin approves the modifications.

If new changes are deemed to be invalid, the changes can be DECLINED.

PRICE PENDING

Apps in ACTIVE state can move to PRICE PENDING state, if user submits request for price modification

While in PRICE PENDING state,

User cannot modify the price again until the current modification is approved by the System Admin

New Price takes effect immediately upon approval

If desired, User can cancel the price modification submitted

From this state,

App can move to ACTIVE state, if the System Admin approves.

Price change can be DECLINED if deemed inappropriate

UPDATE PENDING

Awaiting Approval from AppStore Admin

App enters this state when user submits new Version of the App

System Admin needs to take action and App can transition to

ACTIVE – upon Approval

DECLINED – when Validation fails

If Approved, this version can be made available to purchase and existing version can be automatically moved to DEPRECATED state OR both Versions can be ACTIVE.

DECLINED

Apps in PENDING state can move to DECLINED state if System Admin declines the App submission.

If declined, the user will have the option to modify the App details and resubmit it for Approval.

4.All Apps

When user is on “All Apps” tab, an additional horizontal menu is available with the below three sub tabs:

Pending – displays Apps which are in PENDING state

Active – displays Apps which are in ACTIVE state

Inactive – displays Apps which are in other states (eg: DELETED, DEPRECATED, DECLINED etc)

For each app, details such as Name, Version, Owner, Last Updated Date, and current Status are displayed. In addition to these details, each App entry has a gear and message icon.

Based on the role of the logged in user, there are certain actions that can be taken by clicking on the Gear Icon beside each App.

Clicking on the gear icon provides user – the current state of App, a list of next possible states of the App which the user is allowed to move. If user wishes to change the current state of App, it mandatory to provide the justification for doing so in the message text box.

Hovering on the message icon displays additional information about the current state of App.

5.Users

When user clicks on “Users” tab, a list of all the users belonging to the Organization is displayed. For each user, information such as Name of user, Email, Role, Joined date, and current State are displayed. Vendor Admins can create additional users from the Organization. To accomplish this, Vendor Admin navigates to the “Users” tab on the top menu and clicks on “Add User”.

For each user to be added, the following information needs to be provided:

Name

Email

Contact Phone

Password

Role – VENDOR ADMIN or VENDOR USER

The user account is created, and an email sent to the registered email address with the details for the new user to login.

6.My Profile

Logged in users can view and edit their Profile information. To accomplish this, user needs to click on the user icon on the top right corner and select “My Profile”. Details such as Name of User, Email, Phone, and Role are displayed. In this screen, the user can edit profile information as well as change password. When user submits request to change password, upon successful submission of password change, the current login session of user will expire and user is logged out. In order to re-login into vendor portal, user needs to use the new password.

7.Forgot Password

If user forgets the login password, following the below instructions will help user to reset the password.

Go to Sign-In page of vendor portal.

Click on “Forgot your password?”

Enter user’s registered email address and click “Submit”. After submitting the email address, it will be verified and an email will be sent to the user with a link to reset the password.

Clicking on reset password link will navigate user to Password Reset page. In this page, User needs to enter the new password, confirm it and click “Submit”.

Once successfully submitted, user will be redirected to the Sign-In page and can login with the new password.

8.Contact Admin

If users have any questions or concerns, they can reach out to the Admin by clicking on the User Icon and selecting “Help Center”. Help Center will give user the option to view all the existing FAQ about Consonance. User can also send an email to the system admin, using the email listed under “Contact us”.

Suggest Edit

Captcha :

Flow Analyzer

1.Overview

Flow Analyzer from Nuviso is a Controller agnostic SDN App and is packaged with the Allegro product. It provides insights into the network and identifies optimal path between two end points, based on various parameters requested by the user. It examines flows on each device in the network, and correlates path taken by each flow. The App also provides a heat map based on current traffic conditions to help users tune their network.

2.Flow Correlation

Flow Correlation is one of the pivotal functionalities offered by Flow Analyzer App. It provides insight into the configuration of network and determines whether an incoming packet will reach the intended destination.

Given a source device and match criteria, the App displays all possible matching flows to the user. The match criteria can consist of:

Device ID – indicates the source device from where the flow originates

Input Port – indicates the originating point of the flow

Ethernet Match – indicates the ether type

TCP-Source Port – indicates Layer 4 – tcp source port

TCP-Destination Port – indicates Layer 4 – tcp destination port

UDP – Source Port – indicates Layer 4 – udp source port

UDP – Destination Port – indicates Layer 4 – udp destination port

IPV4 Source – indicates source IP address

IPV4 Destination – indicates destination IP address

VLAN – ID – indicates the originating Vlan ID

IP Protocol – indicates the IP protocol

Device ID, Input Port and Ethernet Match are mandatory information that the user needs to provide, and rest of the information is optional. After entering the criteria, user can Submit the request for Flow Correlation.

If there are any flows that match the given criteria, they will be returned to the user. For each matching flow, the App provides details of the entire end-to-end path taken by the flow. These details can include information such as ID of the matched flow, all the devices traversed by the flow, flow statistics such as packet count, byte count, Rx Capcity, and Tx Capacity. The flows are also highlighted in the topology to make it easier for the user to correlate the path of the flow.

If there are too many flows matching the input criteria given, the User is prompted to increase the match criteria and resubmit the Flow Correlation request.

3.Alternate/Optimal Path

3.1.Optimal path based on least Hops

Flow Analyzer App identifies best possible path between two end points based on the parameters provided by user. To find optimal path between two end points with least number of hops, the User needs to provide below information and click on “Hops” button to submit the request:

Source Node – indicates the source device

Destination Node – indicated the destination device

Exclusion Node – indicates the devices that user would like to exclude from the path. User can select to exclude multiple devices.

Exclusion Port – indicates the device ports that user would like to exclude from the path. User can select to exclude multiple device ports.

Source Node and Destination Node are mandatory information that User needs to provide. Based on the inputs given by user, the App returns the best possible path with least number of hops. For each link along the suggested path, user is provided information such as source port and destination port of the link, stats of each link, and each link is labelled and highlighted in the topology.

3.2.Optimal path based on least Latency

To find optimal path with least latency between two endpoints, User needs to provide below information and click on “Latency” button to submit the request:

Source Node – indicates the source device

Destination Node – indicated the destination device

Exclusion Node – indicates the devices that user would like to exclude from the path. User can select to exclude multiple devices.

Exclusion Port – indicates the device ports that user would like to exclude from the path. User can select to exclude multiple device ports.

Source Node and Destination Node are mandatory information that User needs to provide. Based on the inputs given by user, the App returns the best possible path with least latency. For each link along the suggested path, user is provided information such as source port and destination port of the link, stats of each link, and each link is labelled and highlighted in the topology.

3.3.Optimal path based on maximum available Bandwidth

To find optimal path with maximum available bandwidth between two end points, the User needs to provide below information and click on “Bandwidth” button to submit the request:

Source Node – indicates the source device

Destination Node – indicated the destination device

Exclusion Node – indicates the devices that user would like to exclude from the path. User can select to exclude multiple devices.

Exclusion Port – indicates the device ports that user would like to exclude from the path. User can select to exclude multiple device ports.

Source Node and Destination Node are mandatory information that User needs to provide. Based on the inputs given by user, the App returns the best possible path with maximum available bandwidth. For each link along the suggested path, user is provided information such as source port and destination port of the link, stats of each link, and each link is labelled and highlighted in the topology.

4.Heat Map

Flow Analyser App constantly monitors the traffic flowing through the network and provides a visual summary of the current health of network. Using this feature, Users can identify the most and least congested points in the network, and thereby tune to their network. The heat map uses color codes to represent different levels of congestion in the network. Below is how the colors in the Heat map need to be interpreted:

Ports which have significant amount of traffic flowing through them are depicted with red color

Ports which have moderate amount of traffic flowing through them are depicted with yellow color

Ports which have trivial amount of traffic flowing through them are depicted with green color.

On the topology, user can click on a device, a link or a port to see more detailed information pertaining to that entity.

Clicking on a device will display more information about this device on the right side panel. This information can include the Manufacturer Name, Version, all the ports on this device, and statistics for each port.

When user clicks on a port, a list of all the flows on this port are displayed on the right side panel. For each flow, information such as Flow ID, Ethernet Type, Input Match Port, and flow stats are displayed.

When user clicks on a link, information such as the end-points of the link, and link statistics are displayed on the right side panel.

5.Dependencies

The App works in conjunction with Allegro to realize its features. It relies on the ability of Allegro to discover the devices in the network, and collect data pertaining to each device. Flow Analyzer leverages the port statistics, link bandwidth and its latency to calculate network utilization.

Flow Analyzer App is limited to the type of Controllers supported by Allegro.