Object-Oriented Discovery Framework for Network Services
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing discovery protocols for devices and services on computer networks are error-prone and difficult to implement, requiring developers to design protocol-specific libraries and change program flow, leading to significant rework when switching between similar protocols.
Innovation Solution
A programming framework that provides an object-oriented abstraction of discovery protocols, allowing developers to create discoverable applications by deriving from a generic discoverable class and configuring with attributes, minimizing protocol-specific knowledge and process flow impacts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If discovery protocols are implemented directly in applications, then discovery functionality is achieved, but implementation complexity and error-proneness increase significantly
Solution Approach 1:
The patent introduces a discovery service as an intermediary component that handles all discovery protocol operations. Applications interact with this service through a simplified interface rather than implementing protocols directly. The service acts as a mediator between applications and the complex discovery protocols, abstracting away the complexity while maintaining reliable discovery functionality.
Solution Approach 2:
The patent extracts the complex discovery protocol implementation from applications and places it in a separate discovery service. This separation removes the burden of protocol complexity from applications, allowing them to focus on their core functionality while the discovery service handles protocol-specific complexity and error handling.
2Adaptability or versatility
If protocol-specific libraries are designed for each discovery protocol, then protocol functionality is achieved, but development time and rework increase when switching protocols
Solution Approach 1:
The patent creates a universal discovery service that can handle multiple discovery protocols through a single standardized interface. The service is designed to be protocol-agnostic, allowing it to work with different protocols (such as SSDP, mDNS, or custom protocols) without requiring applications to be recompiled or reconfigured. This multi-functionality enables easy protocol switching while maintaining consistent application behavior.
Solution Approach 2:
The discovery service is designed with dynamic configuration capabilities, allowing it to adapt to different protocols and environments at runtime. The service can dynamically select and switch between different discovery protocols based on configuration or environmental conditions, providing flexibility without requiring application-level changes.
3Reliability
If applications are modified to embed discovery processes, then discoverability is improved, but program flow and programming logic are significantly impacted
Solution Approach 1:
The discovery service acts as an intermediary that applications can query for discoverable devices and services. Applications maintain their existing program flow and only interact with the discovery service through simple method calls or interface queries. The service handles all complex discovery operations in the background, returning results that applications can use without disrupting their原有 programming logic.
Solution Approach 2:
The patent segments the discovery functionality into a separate service module, allowing applications to remain focused on their core functionality. Applications can optionally integrate discovery capabilities by querying the discovery service, but this integration does not require fundamental changes to their program flow. The segmentation enables discoverability while preserving application simplicity.
Data Source
AI summary
An object-oriented programming framework allows developers to write applications for services and devices that are automatically “discoverable” by applications associated with other devices and services on a network. An attribute is added to a class in an application or web service object and an associated, generic discoverable base class is appended to the application to make the application discoverable on the network. The discovery framework imposes minimal requirements on the application in which it is embedded, so nearly every application can be converted into a “discoverable” application. The discovery protocol-dependent details are hidden from the application itself, so exchanging the discovery protocol can be done without affecting the application.


