On-Device Compiler for Programmable Pipeline Profiles
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Programmable pipeline devices face challenges in configuring network test or visibility functions due to limited storage capacity and lack of online connectivity, which restricts the ability to implement desired profiles without access to online sources of profiles.
Innovation Solution
Implementing on-demand, on-device compiling of programmable pipeline device profiles by storing source code and profile definitions on the device, using a local compiler to generate compiled object code for configuring the device, and providing device configuration software for creating or modifying profiles.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If compiled profile object code is stored on the device, then profile availability is improved, but storage capacity is consumed
Solution Approach 1:
The patent extracts only the essential compiler functionality and profile definition files from the device, storing minimal source code and profile definitions locally while maintaining the ability to compile profiles on-demand from external sources when connectivity is available. This reduces storage requirements while preserving profile availability.
Solution Approach 2:
The patent pre-stores profile definition files and compiler tools on the device before network connectivity is needed. These preliminary components enable the device to compile and deploy profiles independently when offline, while full profile repositories remain accessible when online.
2Adaptability or versatility
If online connectivity is maintained for profile access, then profile variety is improved, but system reliability is reduced
Solution Approach 1:
The patent implements a dynamic profile loading system that adapts its behavior based on network connectivity status. When online, the system accesses extensive profile repositories for maximum variety. When offline, it switches to using pre-stored profile definitions and compiler tools, maintaining operational reliability while reducing profile variety availability.
Solution Approach 2:
The patent introduces a local profile cache and compiler as an intermediary between the device and external profile sources. This intermediary stores essential compilation tools and profile definitions locally, enabling the system to function independently when network connectivity is lost, thus maintaining reliability while still accessing profile variety when online.
3Productivity
If profile compilation is performed on-device, then configuration speed is improved, but device complexity is increased
Solution Approach 1:
The patent implements a universal compiler framework on the device that can compile various profile types using a single integrated toolchain. This multi-functional approach enables fast profile compilation for different network test and visibility functions without requiring separate specialized compilers, thus improving configuration speed while managing device complexity through unification.
Solution Approach 2:
The patent uses simplified profile definition files as copies or representations of full profile specifications. These condensed definition files contain all necessary compilation information and can be quickly processed by the on-device compiler, enabling rapid profile generation without requiring the device to store or process entire complex profile datasets.
Data Source
AI summary
A method for on-demand, on-device compiling and use of programmable pipeline device profiles includes storing, on a network test or visibility device, programmable pipeline device source code and a plurality of different programmable pipeline device profile definitions containing parameters for implementing different programmable pipeline device profile variations. The method further include implementing, on the network test or visibility device, a compiler that receives the programmable pipeline device source code and one of the profile definitions as input and that produces as output a programmable pipeline device profile including compiled object code for configuring a programmable pipeline device to implement a network test or network visibility function. The method further includes invoking the compiler to compile, using one of the profile definitions, the programmable pipeline device source code into a programmable pipeline device profile for implementing a network test or visibility function and loading the profile on the network test or visibility device to configure the programmable pipeline device for implementing the network test or network visibility function.


