Overview
App to show networks in a graphical view with basic functions.
GUI
Map and information example
Information (detail) example
To show the details of a given site or link, the right-hand information panel should be used.
As links and sites contain different data, two separate panels are shown below.
If the site details are shown, the user should be able to click on one of the available links (e.g. Link1) in the table, which should open Link1 in the details panel and highlight said link on the map.
It should be possible to navigate back in the details panel. (If Link1 was opened via the details panel, the user should be able to navigate back to the site)
Site or link details can be shared via the current url in the browser window.
Links offer a button to "calculate link". Losses such as obstruction loss are calculated for the given link.
Additional map functionality
The map should offer a search bar to search sites or links by name. If a site/link was found, the map should center on the element and show its details.
The map offers an infobox in which the currently visible and total number of links and sites are shown.
Topology-api-server availability
The backend for the network map, the topology-api-server, will be hosted outside of sdnc. Accordingly, the network map has to check if a connection to the server can be established.
If the connection can be established, no info is needed as the tiles and model data load.
If the connection cannot be established, a suitable info text + icon should appear on the map.
URL
centering map
If latitude, longitude and zoom values are passed in via the url, the map should center on that location.
If the latitude, longitude, zoom part is removed from the url, the map should stay at its former location.
working with details
If a site or link are passed in via the url (via details), the details panel should load the information. The detail-element should be highlighted on the map and the map re-centered accordingly.
If no site nor link with such a name can be found, the details panel should show an error message.
If the details part of the url is removed, the details panel should change to an empty state.
Architecture
Note on Link Calculation
Originally, the link calculation should have been included in the network map.
After further discussions, the decision was made to move the link calculation functionality into a new app.
The ODLUX Link Calculator accesses the topology-api server to do its calculations.
Interfaces
URL
odluxurl/{lat},{lon},{zoom}*/details/{detailsName}
*the zoom is optional. If no zoom was passed, a default zoom of 11 should be used
Updating the URL
The URL can be set manually by the user. The map and details panel will adjust accordingly.
When the map stops moving or a details element, either link or site, is loaded, the URL gets updated automatically.
Image
- Topology-api server backend is provided as docker image.
- Docker image with node base container (Dockerhub)
- Startup configuration via -e command line option
- Choose model data provider
- Model "5GBerlin" (Used for ONAP Integration test)
- Model "Winlab" (OWL/Cosmos demo)
- htTracking with URL (Used for OSNL Integration test)
- Choose model data provider
Use case
Use case | description |
---|---|
Browse network | Present a network in map
|
Link calculation |
|
Roadmap
Version 1 Study and conceptual approach (Guilin)
Implementation
- General
- Prototyp for study and presentation purpose
- Use public available (License conditions) server like Openstreetmap -> request Ok for presentations and this study purpose
- Browser app
- Map visualization of database topology information for a "planner"
- Map projection: WGS84-Format and marcator
- Interface and first release abstract map provider
- Scaling/Performance
- Zoom function (World .. till 50 meters) See http://webhelp.esri.com/arcgisserver/9.3/java/index.htm#designing_overlay_gm_mve.htm
- Handling of 50000+ map elements
- show up to 1000 in one zoom level
- Investigate and proof of concept of map-framework for browser implementation on top of ONAP/React/Typescript App Framework
- List: MapBox, OpenLayer, Favorit MapBox. Both BSD .. to investigate license conditions for bundling with MapApp
- For desktop screens size, not mobile
- Interface for value add extension (Makro function, Gui cut through to other application)
- Topology-API
- Technology independent. Path could be Optical, Ethernet, Microwave
- REST Interface
- API Part 1: Network Model (ODLUX NetworkApp Model)
- Site containing devices
- Device with ports
- Link, Connections between ports of different devices (Not a Cable)
- Path via multiple links
- API Part 2: GeoJSON to present NetworkModel elements
- GeoJSON
- Elements: Site, SiteLink, Path
- API Part 3: Link Calculations
- Calculate various losses
- Provide rain data for North Europe
- Tile-API
- REST Interface
- Define in OpenAPI_Specification
- Approach should be generic, starting with OpenStreetmap data
- Server side
- Topology server
- Providing Topology-API
- Uses internal "test-model"
- Imports network data
- Provided as docker image
- Tile server
- Rendering an providing tiles
- Based on openstreetmap base data
- Providing Tile-API
- Provided as docker image
- ONAP ODLUX based WEBServer
- model provider
- Provider1: for integration test purpose
- Provider2: for demo purpose
- contains all elements: sites, links, devices
- less than 100 objects
- model defined in text file format, like JSON or CSV
- one time import during startup
- Topology server
Integration test
- Test data with up to 30000 sites using all elements of Topology-API
- Test cases for IT acceptance
- Startup of GUI
- After click on site the related info are presented in information view
- Clicking on device in the information view will show link and path in the grapical view
- Zoom in and out
- Verify Help page content
Assumed schedule
- M06/2020
- EPIC available
- Implementation start
- 08-09/2020
- Start of Integration test
- 11-12/2020
- Available data
Version 2 (> Guilin)
Points to cover
- Consider results of study phasis
- Satellite map provider,
- Other map providers
- Own map data providing server