Closed prabinakpattnaik closed 2 years ago
As per process: issue - magma/magma#11134 PR with proposal - magma/magma#11135
Dear Magma Member we are internet service provider in South Sudan . Below is our website https://dishnetafrica.com/
we are interested to provide VAS(Value Added Service) in the community here. Having DPI function in Magma will help to activate different Mobile App based services.
One example is to provide free/limited IPTV data plans as an offers to increase the subscriber base.
I request Magma Team to support new/green field operators like us for greater adoption of Magma.
can we expect this feature in the upcoming release say version 1.8 or 1.9 ?
Looking forward to your response & support.
Thank You.
Thank you for submitting this proposal. The MCF grant program is devoted to “kickstarting” sustainable, Magma-powered commercial products and businesses. The MCF Governing Board will prioritize proposals that are directly linked to deals or a sales pipeline. While the technical and feature work is clearly defined, we are unable to prioritize this proposal without clear revenue opportunities.
Proposal: Deep packet inspection service to enforce policy rules on 5G SA Deployments
Authors: prabinak@wavelabs.ai Last Updated: 2022-01-12
Overview
DPI (Deep Packet Inspection) is a traffic recognition method that classifies IP traffic in real time. DPI identifies protocols, applications and application attributes. In addition to IP traffic classification, DPI engines extract protocol and application-based metadata, providing insight into user behavior and application usage. Examples of metadata that can be extracted from IP traffic include the following:
Metadata category Example metadata Traffic volume Per user, per protocol, per application, per flow, per direction.
Service detection Differentiation between for example Skype audio and video calls
Quality of service Jitter, throughput, latency, roundtrip time, ramp-up time, packet loss,retransmissions
Purpose
TIP OCN Functional requirement REQ-OCN-18 for FWA deployment asks for application detection as a minimum DPI requirement. Adding DPI support on Magma will help enterprises that subscribe to FWA services get the following benefits 1) DPI is required to deliver real-time intelligence about traffic to create the most effective solution. 2) With DPI-enabled FWA Deployments, operators have the ability to tailor policies and adjust the traffic shaper based on time, package, or applications. 3) DPI will be applied to improve network efficiency, but ultimately it will allow carriers to deliver tailored Edge / Application services that increase customer satisfaction, create differentiation, and provide revenue growth. 4) Policy and charging control: Provides policy control and charging software vendors with the capability to define bandwidth guarantees, priorities and limits, offer fine-grained QoS for an additional fee and deliver real-time charging and billing support. It can offers a high detection rate (> 95 %) and accurate application identification for policy and billing purposes. 5) Enterprises can leverage DPI to block or throttle access to risky or unauthorized applications, block policy-violating usage patterns or prevent unauthorized data access within corporate-approved applications, stop data exfiltration attempts by external attackers or potential data leaks caused by both malicious and negligent insiders.
Wavelabs as a
VAR
(Value Added Reseller) for magma 5G SA core received RFPs from FWA service providers. DPI is a feature asked by all the service providers.Gap (Design) Analysis
To provide DPI support on magma OVS and Pipelined will need the following changes;
Provide the new Opaque DPI Interface that integrates with the open source DPI plugin. (dynamically any 3rd party / external / customer DPI engine can be hooked with OVS seamlessly)
Implement the sample plugin will demonstrate the DPI public API that was given for DPI-enabled-OVS. This sample plugin will simply write out the ethernet packet from OVS to a file.
Implement the test-dpi plugin, to demonstrate the interfacing capablity of DPI with OVS. This can be extended to full-fledged DPI engine as we now have raw ethernet packet from OVS
Implement the DPI engine Init the DPI engine Destroy the DPI engine Traffic processing Logging support (which enables plugin developers to log their contents directly into OVS logging framework. A handy tool for debugging & maintenance)
Kernel datapath modified to clone all the incoming packets to send it to userspace with special label for DPI.
Create DPI controller for marking a flow with an App ID derived from DPI in Pipelined. Assigns the App ID to each new IP tuple.
Delivery Approach
Feature will be delivered in a single milestone with the following 7 process gates
The DPI will support for service based and application based traffic.
Test Plan
• Verify the packet processing in DPI engine using logs • Traffic Testing UDP/TCP/ICMP with Video/Audio/Chat • Verify the Logging API to provided to log onto the OVS logfile, directly from dpi-plugin using below Loglevels: DPIERR DPIINFO DPIWARN DPIDEBUG • Verify the DPI controller functionality in pipelined using test-DPI controller. • Introduce a command-line switch to dynamically load any DPI plugin. Here is the syntax sudo ovs-vswitchd --dpi-engine=
Roadmaps
This section should break out the development roadmap into a number of milestones.
Reference
https://www.fiercewireless.com/sponsored/deep-packet-inspection-getting-most-out-5g https://www.thefastmode.com/expert-opinion/21162-dpi-supporting-sase-for-5g-security https://www.thefastmode.com/expert-opinion/15934-how-dpi-drives-monetization-in-the-5g-era https://github.com/kspviswa/dpi-enabled-ovs https://kspviswa.github.io/dpi-enabled-ovs/