Network Entity Interface for Virtual Network Functions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In software-defined networks (SDNs), the existing methods for interfacing network entities (NEs) with virtual network functions (VNFs) require modifying and recompiling NE code for each new VNF addition, limiting deployment flexibility and violating the SDN paradigm's separation of control and data planes, leading to performance constraints.
Innovation Solution
A generic interface is established between a network entity and a virtual network function, using a function table with pointers for input and output parameters, metadata, and a control protocol to manage VNF calls independently of the NE code, allowing VNFs to be called without being built-in features, thus avoiding code modifications and recompilation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If VNFs are implemented within the network controller, then the network controller can directly access and manage VNFs, but the control plane becomes coupled with the data path, losing SDN flexibility and requiring performance-optimized languages like C instead of Java
Solution Approach 1:
The patent introduces a network entity as an intermediary component that sits between the network controller and VNFs. The network entity receives information about VNFs from the controller and maintains a function table with pointers to VNF interfaces, allowing the controller to access VNFs without being directly coupled to them. This mediator preserves SDN flexibility while enabling efficient VNF management.
2Speed
If software-based NEs are used to replace hardware-based NEs, then deployment speed increases, but the software-based NEs initially contain fewer features and require code modification and recompilation when new VNFs are added
Solution Approach 1:
The patent implements a dynamic function table in the network entity that can be updated at runtime without requiring code modification or recompilation. When new VNFs are added, the controller provides information about them and updates the function table with new pointer entries, allowing the software-based NE to adapt dynamically to new features while maintaining deployment speed advantages.
Solution Approach 2:
The patent segments the VNF interface access mechanism into a separate function table structure that is independent of the core NE code. This segmentation allows the VNF-related functionality to be updated independently through table modifications rather than requiring changes to the compiled NE binary, thus maintaining deployment flexibility.
3Adaptability or versatility
If a generic interface with function table and pointers is used between NE and VNF, then deployment flexibility improves and code modification is avoided, but the interface complexity increases
Solution Approach 1:
The patent creates a universal function table structure that can accommodate multiple different VNF types through a standardized interface. Each function entry uses the same pointer-based structure (first pointer for input parameters, second pointer for output parameters, third pointer for packet content), allowing the system to manage diverse VNFs through a single unified mechanism, thus managing complexity through standardization.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method for interfacing a network entity (NE) in a software defined network (SDN) and a virtual network function (VNF) by acquiring information about said VNF, calling for said VNF using a function table (FT1; FT2) stored in the NE storing multiple function entries (FE1,..., FEm,..., FEn), each function entry referring to a different virtual network function (VNF1, ..., VNF1m), and each function entry (FEm) containing at least the following information: • a first pointer (P1 in p_vnfInputParams) for acquiring input parameters required by the VFN; • a second pointer (P2 in p_vnf0utputParams) for providing output execution results to the NE; • a third pointer (P3 in p_vnfPacketParams) for accessing the current data packet in order that the called VNF processes said data packet.