RCF Evaluation Engine Annotates Control Flow for Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Network device routing control functions (RCF) can be complex, making it difficult for users to understand which expressions and assignments were executed, especially with multiple operators and nested function calls, leading to unclear control flow evaluation.

Innovation Solution

An improved RCF evaluation engine provides a textual representation explaining the control flow of an RCF function, including the overall result, evaluated code, operator precedence, and called function evaluations, using a debug command to display user-written RCF code alongside explanations of control flow and indicating which branches were taken and functions invoked.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If RCF functions use multiple expressions and nested function calls to implement granular network controls, then the routing control capability is improved, but the understandability of code execution flow deteriorates

Engineering Contradiction:
Improverouting control capabilityVSAvoidunderstandability of code execution flow
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent introduces an intermediary annotation system that mediates between the complex RCF code and the user. The annotation engine generates explanatory text that bridges the gap between the implemented routing control logic and the user's understanding, without changing the underlying complex code structure.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a textual copy or representation of the code execution flow through annotations. These annotations replicate the execution path, operator precedence, and evaluation results in a human-readable format, allowing users to understand the control flow without modifying the original complex RCF functions.

Inventive Principle:
Principle #26Copying

2Adaptability or versatility

If RCF code uses multiple operators with different precedence levels, then the control flow logic becomes more powerful, but the clarity of evaluation order deteriorates

Engineering Contradiction:
Improvecontrol flow logicVSAvoidclarity of evaluation order
Core Design Contradiction:
Adaptability or versatilityVSDifficulty of detecting and measuring

Solution Approach 1:

The annotation system acts as an intermediary that explicitly shows the evaluation order. It inserts explanatory text between operators indicating which operator is evaluated first, second, etc., making the implicit precedence rules explicit and easy to understand.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent uses visual differentiation (analogous to color changes) through formatting and spacing in the annotations to highlight different evaluation stages. The textual representation uses clear delimiters and structure to visually distinguish between different levels of operator precedence and evaluation phases.

Inventive Principle:
Principle #32Color changes

3Adaptability or versatility

If RCF functions are made more complex to handle diverse routing scenarios, then the functionality is improved, but the debugging difficulty increases

Engineering Contradiction:
ImprovefunctionalityVSAvoiddebugging difficulty
Core Design Contradiction:
Adaptability or versatilityVSEase of repair

Solution Approach 1:

The annotation engine serves as a debugging intermediary that translates complex RCF execution into understandable textual explanations. It shows exactly which expressions were evaluated, what their results were, and how they contributed to the final outcome, making debugging of complex routing functions straightforward.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The annotation system provides immediate feedback about code execution by displaying evaluation results, matched expressions, and control flow decisions directly alongside the RCF code. This feedback mechanism allows users to understand and debug complex functions by seeing the actual execution path and results.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11928422B1Explanatory configuration function annotation
Publication Date: 2024.03.12 ARISTA NETWORKS INC
  • US11928422B1 patent drawing
  • US11928422B1 patent drawing
  • US11928422B1 patent drawing

AI summary

Systems, methods, and computer-readable media are disclosed for annotating configuration language function evaluation. One or more configuration language expressions may be received by a configuration language development environment. The one or more configuration language expressions may be parsed into one or more atomic configuration language expressions. Based on a particular route at the specified point of execution in an application, the one or more configuration language expressions may be evaluated. The annotations may be rendered to provide an explanation of an underlying control flow.