GithubHelp home page GithubHelp logo

netgroup-polito / frog4-gui Goto Github PK

View Code? Open in Web Editor NEW
3.0 12.0 0.0 14.92 MB

Graphical User Interface for the FROG4 orchestration framework

Python 11.49% JavaScript 64.94% HTML 20.48% CSS 3.08% Shell 0.01%
service-graph gui nfv orchestrator-gui service-deployment

frog4-gui's People

Contributors

cicciob92 avatar cuttica avatar daniele91 avatar davidexx92 avatar fabiomignini avatar farmanullahcs avatar frisso avatar gabrielecastellano avatar giacomoranieri avatar giacomoratta avatar ivanocerrato avatar madluigi avatar mauriciovasquezbernal avatar piscoroma avatar rbrtbnfgl avatar riccardo14 avatar valentinpopov avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

frog4-gui's Issues

Rule data doesn't not change when editing rule

When editing a rule (e.g., adding a description) and closing the window, the new rule data is not shown in the left-side window.
You have to select again the link in the bigswitch, which triggers an update of the left-window. At this point, the changes you made in the link properties are shown.

So, it looks like when the object properties are modified, pressing the ok button does not trigger any change in the left-side window.

Tooltips for VNF ports.

Currently no tooltip is shown when the mouse is over a VNF port. It should show the name of the port on the VNF (i.e., the same text that is shown on the port of the bigswitch).
The tooltip shown on the corresponding port of the bigswitch is absolutely fine.

Document user database

Document how to create users in the userDB, and how that data is stored in the db (table format).

Remove the "how to start" window

This window, shown on the left side of the screen, looks useless, as it results exactly the same of the tooltips that appear in the menu bar. Given this, we can delete this and stay with a cleaner screen.
The "help" button can simply be deleted or transformed in the "info" button, which prints the info (authors, etc).

Empty fields in the NF-FG

When fileds are left empty in the graphical configuration, those fields should not be present in the json. This is surely a legibilty problem and could create problems during the parsing phase.

Avoid 'static' users

Currently the system needs to be configured with user father/bigboss. Please remove that limitation in the code.

Re-organize and clean the code

The organization of the code is not clear and should be improved.
For example, VNF templates are present in two folders:

  • fg-gui/nfg/templates/nfg/templates_json/
  • templates_json

and, btw, those should be read from the external VNF repository, so they should even not be part of the code.

Delete button

Add a delete button that deletes the graph currently shown.

Tooltips for links

Links between VNF and the bigswitch should not show any tooltip.
Instead, links in the big switch should show a tooltip that has the flowrules in both directions (maybe on two different lines, if possible; e.g. "description_direct_rule\ndescription_reverse_rule"). Currently only one direction is shown.

No message box when successfully opening a JSON

Delete the message box
"Message Info
Download Riuscito"

when successfully opening a JSON. Message box are usually needed in case of errors, but if everything is fine, let's just show what the user expect to see.

Show flowrule details

If the "description" of the flow rule is not null, show the description in the title (within round parenthesis), on the box in the left side of the screen.
If the description is null, show (vnfport1 --> vnfport2) (currently only "vnfport1" is shown). The title is a a little bit long, but it's more clear.

Change view for YANG lists

In case a YANG list has only leafs, it should be better to print it as a table (e.g., the NAT table). This would improve the readability.

Integrate the GUI with the UN

Modify the backend in order to interface with the UN.
Step 1: use directly the sqlite DB in the UN
Step 2: modify the backend adapter of the dashboard in order to read/write data through the REST interface of the UN.

Creation of a bidirectional link

When creating a link:

  • use "unidirectional link" or "bidirectional link" in the link type (no "simple link")
  • if the "bidirectional link" is chosen, use "Port in (direct)" and "Port in (reverse)"; use the terms "direct" and "reverse" every time we need to specify a given direction (instead of "2").

Remove external libraries from the code

Do not include the code of the external libraries (i.e., vnf template and nffg library); include them in your project as submodules in order to avoid code duplication.

Bug in determining if the bigswitch view is needed

Some graphs that should be shown with the "simplified view" are instead shown only in the bigswitch mode.
An example is the graph named "graph-json", stored on the server. This graph has only direct links, no splittings; however, we are unable to switch to the simple view.

Edit graph ID

Each forwarding graph includes a graph ID, a name and a description.

  1. Show the "name (id: xxx)" on the right side of the screen (currently it shows only "id"), unless the name is void; in this case show only ID.

  2. When clicking on that link, open a window that allow to customize both ID, name, and description with three strings.

repository cleanup and gui setup

Right now, there are a lot of files to move from the config folder to the proper folders to set up the gui. This is error prone and makes the configuration of the gui hard to be authomized.

Proposal: let the contrib folder as it is, but also copy the required files in the proper folders of the gui. In that folders, please add a README says that "file xy is actually part of the library AB available at URL .."

Warning message

Change from

Warning: It's possible only Coplex View, because there is a split

to

This graph can only be shown in the Big Switch view because at least a splitting exists in the flowrules.

In addition; change the tooltip of the big switch button from "Big Switch" to "Toggle Simple/Big Switch view".

API towards orchestrators

The API towards orchestrator has to distinguish, using PUT and POST, the creation and the update of a graph.
In case of creation, it does not specify the graph ID, which is received by the orchestrator as a result of the creation.

Changes in actions

The actions section of the schema has been changed (https://github.com/netgroup-polito/nffg-library/blob/master/schema.json).
In particular, "output" has been renamed to "output_to_port" (string) while "output_to_controller" (boolean), "drop" (boolean) and "push_vlan" (string) have been added.
I ask you, if it's possibile, to modify the json renaming "output".
"drop", "output_to_controller" and "push_vlan" should be added to the graphical creation of flowrules considering their type (string or boolean). Also "pop_vlan" thas is present, should be changed to a boolean value. Referring to #11, default value of boolean fields is false and they should be present in the json only if true.
Is it possible to dynamically read fileds and types from the schema, avoiding to modify the code every time there is a change?
Thank you and sorry for all these requests ๐Ÿ˜„

Improve the visualization of the bigswitch rules

In the summary view, show only the rule name and, if available input/output port.
A new option should be available to show the list of flow rules (with the most significant fields) as a table. Aside each rule, a dedicated button should be used to show the complete rule, hence also the fields that are not shown in the table.
This mimics what OpenDayLight Hydrogen does:
https://wiki.opendaylight.org/view/File:FlowStatitistics.jpg

Important: the list of fields shown in the table should be easily customizable, e.g., through a simple (text) list.

Bug in saving graph

Step to reproduce the bug:

  • logged in
  • opened graph "semplice" from server
  • selected a flowrule
  • modified the description of the flow rule
  • saved the graph

A warning window appears saying "Errore di validazioneu'1' is not of type u'integer' ".

Document the 'users_graphs' table

Document the structure of the 'users_graphs' table.
In particular, document how visualization data is stored in the database (I presume in the 'fgpos' field), so that we know how the position of the different objects is saved.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.