Private Island Networks Inc.

PI-EXP Web Server for Private Island FPGA Networked Nodes

An overview of the PI-EXP web server that provides a browser based user interface via the LAN into a Private Island node.

Overview

The Private Island Explorer (PI-EXP) Web Server provides a browser based user interface (UI) to a Private Island FPGA-based (PI) node via an Ethernet LAN. The server is intentionally light weight and currently relies on the aiohttp Web framework to serve pages to a browser and also exchange information via a WebSocket interface. This in-progress article describes the goals, features, usage, dependencies, and design of the project.

The opens source PI-EXP Python project can be cloned from our local Git server.

Overview

The PI-EXP project is developed with Python and various Web technologies, such as JavaScript, HTML, and CSS. The Web server relies on the aiohttp Web framework to serve HTML pages and provide other core Web server support, such as template and context processing.

The Python PyShark library and tshark network traffic analyzer are utilized to capture responses from the embedded soft controller and automated messages generated from blocks like the Machine Learning Engine (MLE).

The figure below depicts how the PI-EXP server interfaces with a PI Node. The user interface is provided via the browswer and enables the user to send queries via the LAN to the controller for various purposes and also receive packets / messages that are triggered automatically depending on how the PI node is configured.

Figure 1: PI-EXP interfacing to a PI Node

PI-EXP Views

The sections below explain the various views provided by the PI-EXP UI. Note that these are all in various stages of development.

Home

Stage: concept

Provides overall status of PI node and a graphical, interactive view of the internal PI modules within the FPGA. Supports clicking on modules and redirecting to the associated UI view.

Figure 2: PI-EXP Home View

Controller

Stage: prototype

Use this view to send individual read and write messages via the LAN to the controller. Note that accessing certain addressable space can trigger additional action, such as accessing MDIO registers within an Ethernet PHY.

Figure 3: PI-EXP Controller

Machine Learning Engine

Stage: concept

This view currently logs vectors (packets) generated by the MLE. Future uses of this view may be to integrate inferencing and its results.

MDIO

Stage: prototype

This view currently performs a quick scan of the Ethernet PHY's internal registers via its MDIO interface. Refer to the PHY's datasheet for the definition of each register.

Note that at the time of testing this feature there is an address skew in the registers by one. This appears to be in the FPGA image and requires further investigation.

Figure 4: PI-EXP MDIO

Switch Fabric

Stage: not started

Didn't find an answer to your question? Post your issue below or in our new FORUM, and we'll try our best to help you find a solution.

And please note that we update our site daily with new content related to our open source approach to network security and system design. If you would like to be notified about these changes, then please join our mailing list.

share
subscribe to mailing list:

Please help us improve this article by adding your comment or question:

your email address will be kept private
authenticate with a 3rd party for enhanced features, such as image upload
previous month
next month
Su
Mo
Tu
Wd
Th
Fr
Sa
loading