Network Device Software Image Compatibility Check Framework

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing network devices cannot detect compatibility issues between old and new software images due to the absence of necessary compatibility checks in the existing software image, leading to potential installation failures during software updates.

Innovation Solution

A framework that allows network devices to extract and execute compatibility checks from the new software image itself, ensuring that all relevant checks are performed before installation, even if they were unknown at the time of the existing software image's creation, using a standardized and extensible plugin-based format.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If compatibility checks are defined within the existing software image, then the network device can execute compatibility checks using available code, but the device cannot detect compatibility issues with new software images that require checks unknown at the time of the existing image's creation

Engineering Contradiction:
Improvecompatibility check reliabilityVSAvoidcompatibility check adaptability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

Instead of extracting compatibility checks from the existing software image (old → new), the patent inverts the approach by extracting compatibility checks from the new software image (new → old). This allows the new image to define checks that are relevant to its compatibility requirements, enabling detection of issues that the old image could not anticipate.

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The patent performs compatibility checks before installing the new software image by extracting and executing check code from the new image's file system. This preliminary action ensures compatibility issues are detected before the update proceeds, preventing potential installation failures.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If the network device extracts and executes compatibility check code from the new software image's file system, then all necessary compatibility checks can be performed, but the device requires access to and execution capability within the new image's file structure

Engineering Contradiction:
Improvecompatibility check coverageVSAvoidfile system access complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The new software image serves itself by containing its own compatibility check code within its file system. The network device extracts and executes this self-provided check code, allowing the image to define its own compatibility requirements without external intervention or additional device complexity.

Inventive Principle:
Principle #25Self-service

3Ease of operation

If compatibility checks are performed using code from the existing software image, then the checking process is simple and straightforward, but the checks cannot identify incompatibilities specific to newer software versions

Engineering Contradiction:
Improvecompatibility check simplicityVSAvoidcompatibility detection accuracy
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The patent inverts the source of compatibility checks from the old software image to the new software image. This allows the checks to be precisely tailored to the new image's requirements, improving detection accuracy while maintaining operational simplicity through automated extraction and execution.

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentUS11137992B2Framework for checking the compatibility of new software images
Publication Date: 2021.10.05 ARISTA NETWORKS INC
  • US11137992B2 patent drawing
  • US11137992B2 patent drawing
  • US11137992B2 patent drawing

AI summary

A framework for checking the compatibility of new software images to be installed on network devices is provided. In one set of embodiments, a network device running a first software image can receive, from a user, a command to install a second software image onto the network device in place of the first software image. Prior to installing the second software image, the network device can extract code for a compatibility check from a location within the second software image. The network device can then execute the code for the compatibility check and present a result value indicating a result of the compatibility check to the user.