Extendable interoperability of network devices

The system provides a framework for network devices to access communication protocol information from a remote server or local storage, enabling seamless interoperability across different network technologies, including legacy and new ones, without modifying existing standards, thus ensuring backward compatibility and facilitating network integration.

DE102015002190B4Undetermined Publication Date: 2026-06-25AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
View PDF 8 Cites 0 Cited by

Patent Information

Authority / Receiving Office
DE · DE
Patent Type
Patents
Current Assignee / Owner
AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
Filing Date
2015-02-19
Publication Date
2026-06-25

AI Technical Summary

Technical Problem

Existing network devices struggle with interoperability across multiple network technologies, especially when new technologies are developed, requiring revisions to existing standards like IEEE 1905.1, and lack backward compatibility with older devices.

Method used

A system that allows network devices to access communication protocol information from a remote server or local storage, using a common abstraction layer to enable communication between devices with different network technologies, including legacy and newly developed technologies, by utilizing an XML document for protocol information and a resource location mechanism.

Benefits of technology

Enables extensible interoperability between devices using various network technologies, ensuring backward compatibility and allowing seamless communication without requiring updates to existing standards, facilitating integration of new technologies into existing networks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

Network device (102A) comprising: at least one processor circuit configured to: identify another network device (102D) in a network; characterized in that the at least one processor circuit is further configured to: determine whether a communication protocol identifier received from the other network device (102D) indicates that communication protocol information associated with the other network device (102D) is stored locally or is to be requested from the other network device (102D).
Need to check novelty before this filing date? Find Prior Art

Description

CROSS-REFERENCES TO REGISTRATIONS RELATED TO THIS REGISTRATION The present patent application claims the benefits of the preliminary US patent application filed on February 20, 2014, with serial number 61 / 942,277 entitled “Extensible Interoperability of Network Devices”, the preliminary US patent application filed on February 26, 2014, with serial number 61 / 944,668 entitled “Extensible Interoperability of Network Devices”, and the preliminary US patent application filed on February 26, 2014, with serial number 61 / 945,068 entitled “Extensible Interoperability of Network Devices”, all of which are hereby incorporated by reference for all purposes into the present application as if they were fully set forth herein. TECHNICAL AREA The present invention relates generally to the interoperability of network devices, including the extendable interoperability of network devices across multiple network technologies. BACKGROUND Network devices in a network environment can support one or more network technologies, including both wireless and wired technologies. As additional wireless and / or wired network technologies are developed, network devices that support these technologies can be added to the network environment. US 2009 / 0 198 797 A1 describes a technology in which a network device uses a document to transmit its device description information to a network entity when connecting to a network. Based on this device description information, the device is provisioned via a provisioning document, which the device uses to configure itself to interact with the network. US 2010 / 0049804A1 describes an instant messaging system with messaging devices having individual addresses, which include client functionality and a transceiver or data transmission and reception device for performing instant messaging between the messaging devices. 1905.1-2013 - IEEE Standard for a Convergent Digital Home Network for Heterogeneous Technologies, IEEE Communications Society, 12 April 2013, describes a standard that defines an abstraction layer for multiple home networking technologies and provides a common interface for widely used home networking technologies. US 2006 / 0187858A1 describes a method for network discovery of a mobile device for use of at least one of several access networks within an IP network. US 2005 / 0078679A1 describes a method for establishing a connection between a first and a second device in a network, comprising a bridge device that connects a first subnetwork to a second subnetwork. US 2006 / 0059003A1 describes a method for selecting a device to perform a service using contextual information for the device contained in a request from a checkpoint device to the device or in a response from the device to the checkpoint device. BRIEF SUMMARY OF THE INVENTION In accordance with the present invention, a network device having the features of claim 1 and a method implemented by means of a network device having the features of claim 10 are provided. Advantageous further training opportunities arise from the dependent sub-requirements. It is advantageous to distinguish the remote server from the network device and the other network device. Advantageously, the network device has a first bridge device for a first network technology, and the other network device has a second bridge device for a second network technology that differs from the first network technology. Conveniently, the topology response message includes a media type field set to a fixed value to indicate that the communication protocol information associated with the network device should be retrieved by the other network device. It is convenient for the fixed value to be either 255 or 0xFF. Conveniently, the communication protocol information includes an XML (Extensible Markup Language) document stored on the remote server, wherein the XML document contains: a name of a network technology organization associated with the network device, an OUI (Organizationally Unique Identifier) ​​or CID (Company Identifier) ​​of the network technology organization associated with the network device, a name of a variant of a network technology associated with the network device, and information for deriving at least one key associated with the network device. Advantageously, the method further comprises the following steps: deriving the at least one key associated with the network device, which is based at least partly on the information for deriving the at least one key; and communicating with the other device at least partly on the basis of the at least one key. Conveniently, the instructions also include the following: instructions for retrieving the communication protocol information from a local storage device when the communication protocol identifier indicates that the communication protocol information is stored locally. Conveniently, the communication protocol information includes an XML (Extensible Markup Language) document containing a name of a network technology organization associated with the network device, an OUI (Organizationally Unique Identifier) ​​or CID (Company Identifier) ​​of the network technology organization associated with the network device, a name of a variant of a network technology associated with the network device, and information for deriving at least one key associated with the network device. Advantageously, the instructions further include: instructions for deriving the at least one key associated with the network device, based at least in part on the information for deriving the at least one key; and instructions for communicating with the network device, based at least in part on the at least one key. BRIEF DESCRIPTION OF THE DRAWINGS Certain features of the claimed technology are set forth in the appended claims. However, for illustrative purposes, several embodiments of the claimed technology are shown in the following figures. Fig. 1 illustrates an exemplary network environment in which a system for extensible interoperability of network devices can be implemented according to one or more implementations. Fig. 2 illustrates an exemplary network environment in which a system for extensible interoperability of network devices can be implemented according to one or more implementations. Fig. 3 illustrates a flowchart of an exemplary process of a network device in a system for extensible interoperability of network devices according to one or more implementations.Figure 4 illustrates a flowchart of an exemplary process for a network device in a system for extensible interoperability of network devices according to one or more implementations. Figure 5 conceptually illustrates an exemplary electronic system with which one or more implementations of the claimed technology can be implemented. DETAILED DESCRIPTION The following description is intended to describe various configurations of the claimed technology and is not meant to represent the only configurations in which the claimed technology can be implemented in practice. The accompanying drawings are incorporated into this document and form part of the detailed description. The detailed description contains specific details intended to facilitate a better understanding of the claimed technology. However, the claimed technology is not limited to the specific details set forth in this document and can be implemented in practice using one or more of these configurations. In one or more cases, the structures and components are shown in the form of block diagrams to prevent the concepts of the claimed technology from becoming obscure. The claimed system for extensible interoperability of network devices allows network devices utilizing any number of network technologies (including network technologies yet to be developed) to access a common abstraction layer and / or the network operations enabled by a common abstraction layer, such as the abstraction layer specified in IEEE (Institute of Electrical and Electronics Engineers) Standard 1905.1 and its amendments and supplements. In particular, the claimed system allows a device added to a network to communicate whether existing devices in the network should retrieve communication protocol information from a local data storage device or from a remote server to enable communication with the added device.For example, devices can contain communication protocol information for specific network technologies, such as legacy network technologies included in the IEEE 1905.1 standard (or another standard) stored in local data storage, while communication protocol information for other network technologies, such as newly developed network technologies, may be stored on a remote server. The added device can provide existing devices with a resource location so they can access the communication protocol information from the remote server when needed. The existing network devices can retrieve the communication protocol information from the remote server via the resource location and use this information to communicate with the added device. In this way, the claimed system enables extensible interoperability between devices using older network technologies and devices using newly developed network technologies. Thus, the claimed system provides a framework for extending the interoperability of network devices (for example, via IEEE 1905.1 or another standard) to additional network technologies not supported by the original standard, as well as to any network technologies developed after the standard's completion, for example, without requiring revisions to the standard's provisions. The framework also enables backward compatibility with older devices that support the original standard (for example, IEEE 1905.1 or another standard), so that the older devices remain interoperable across the additional network technologies. Fig. 1 illustrates an exemplary network environment 100 in which a system for extensible interoperability of network devices can be implemented according to one or more implementations. Not all components shown need be used; however, one or more implementations may include additional components not shown in the figure. Deviations in the arrangement and type of components are possible without altering the nature or scope of protection of the claims set forth in this document. Additional components, different components, or fewer components may be provided. The exemplary network environment 100 includes one or more network devices 102A to 102D, one or more electronic devices 104A to 104E, an external network 110, and a remote server 112. In one or more implementations, one or more of the network devices 102A to 102D are referred to as bridging devices or management elements, while one or more of the electronic devices 104A to 104F are referred to as network devices, for example, in addition to the network devices 102A to 102D. The network devices 102A to 102D and the electronic devices 104A to 104E may be communicatively coupled or capable of being communicatively coupled via one or more network technologies, such as Wi-Fi, MoCA, Ethernet, HomePlug, Powerline, Bluetooth, ZigBee, or other wireless or wired network technologies.In one or more implementations, the network device 102A also functions as a gateway device, connecting the other network devices 102B to 102D and the electronic devices 104A to 104E to the external network 110, such as the Internet and the remote server 112. One or more of the network devices 102A to 102D, the electronic devices 104A to 104E, and / or the remote server 112 may be the electronic system discussed below in conjunction with Fig. 5, or they may fully or partially comprise the electronic system. A customer service or network technician, also located outside the network, can access the information in the network and then, based on the resource location information, also access the remote server 112 to obtain information to guide the network user. The electronic devices 104A to 104E can be computer devices such as laptops or desktop computers, smartphones, set-top boxes, tablet devices, televisions, or other display devices with one or more processors coupled to and / or embedded within them, or other suitable computer devices or things (for example, Internet of Things) that, for example, have one or more network interfaces and / or can be coupled to a device having one or more network interfaces. In the example shown in Fig. 1, the electronic device 104A is depicted as a tablet device, the electronic device 104B as a smartphone, the electronic device 104C as a laptop computer, the electronic device 104D as a set-top box device, and the electronic device 104E as a desktop computer.The set-top box device can be coupled to an output device 106, such as a television, monitor, speakers, or any device capable of displaying video content, and it can be capable of displaying video content on that device. In one or more implementations, the set-top box device is integrated into the output device 106, and the output device 106 is referred to as a network device. Network devices 102A to 102D can include one or more network devices, such as switches, routers, bridges, media converters, or generally any network devices. In the example shown in Fig. 1, network device 102A is depicted as a MoCA (Multimedia over Coax Alliance) bridge, network device 102B is depicted as a powerline bridge, such as a bridge conforming to IEEE 1901 (Institute of Electrical and Electronics Engineers), network device 102C is depicted as a wireless bridge, such as a bridge conforming to IEEE 802.11, and network device 102D is depicted as a bridge for an additional network technology other than one or more variants of MoCA, one or more variants of IEEE 1901, one or more variants of IEEE 802.11, and / or one or more variants of IEEE 802.3.Thus, the network devices 102A to 102D can each have at least two different types of network interfaces to provide the bridging functionality. In the example of Fig. 1, the electronic device 104D can furthermore have at least one MoCA network interface and / or be coupled with it, the electronic device 104C can have at least one powerline network interface and / or be coupled with it, the electronic devices 104A to 104B can have at least one wireless network interface and / or be coupled with it, and the electronic device 104E can have at least one network interface of the additional network technology and / or be coupled with it. Thus, the exemplary network environment 100 can utilize several wireless and wired network technologies to provide network communication between one or more of the network devices 102A to 102D and / or the electronic devices 104A to 104E. To enable the management of the exemplary network environment 100, the network devices 102A to 102D and / or the electronic devices 104A to 104E can utilize an abstraction layer that hides the diversity of media access control across the different network technologies, such as the abstraction layer provided for in IEEE 1905.1 and its amendments. The abstraction layer enables one or more network operations across the different network technologies, such as…Topology discovery, diagnostics, security setup, configuration of secondary wireless access points, advanced path selection, and / or advanced power management. The abstraction layer provides unique addresses to identify network devices and the various network technologies. Communication protocol information, such as configuration parameters, security information, etc., for some of the network technologies is preconfigured (with respect to the abstraction layer) and stored locally in the network devices 102A to 102D and / or the electronic devices 104A to 104E, and / or information for accessing such communication protocol information is stored locally in the network devices 102A to 102D and / or the electronic devices 104A to 104E. In one or more implementations, these network technologies may include one or more variants of MoCA, one or more variants of IEEE 1901, one or more variants of IEEE 802.11, and / or one or more variants of IEEE 802.3.However, the communication protocol information for other network technologies and / or variants can be stored (with respect to the network abstraction layer) on the remote server 112, for example, in the form of one or more XML (Extensible Markup Language) documents. Thus, the attributes and / or configuration parameters associated with a network technology and / or variant, such as a network technology and / or variant not included in the IEEE 1905.1 standard (or any other standard), can be published in a document accessible on the network, such as an XML document on the remote server 112, and therefore do not need to be preconfigured and stored in the network devices 102A to 102D and / or the electronic devices 104A to 104E.In one or more implementations, the communication protocol information, for example in the form of one or more XML documents, is stored for each additional network technology on a different remote server 112. In this operation, the network devices 102A to 102D and / or the electronic devices 104A to 104E (collectively referred to as devices 102A to 102D, 104A to 104E) connect to the network environment 100 and exchange notification messages specifying the network addresses of the devices 102A to 102D, 104A to 104E. The devices 102A to 102D, 104A to 104E use these network addresses to request topology information from any of the other devices 102A to 102D, 104A to 104E that are unknown and / or have recently been added to the network environment 100. The topology information can indicate whether the communication protocol information for the other devices 102A to 102D, 104A to 104E is locally accessible or should be retrieved, for example from the remote server 112. If the topology information indicates that the communication protocol information for a specific device, such as network device 102D and / or electronic device 104E, is to be retrieved from remote server 112, for example, one or more of the other devices 102A to 102C, 104A to 104D send a request to network device 102D to obtain a resource location for accessing the communication protocol information. Network device 102D then responds with a message containing the resource location. One or more of the devices 102A to 102C, 104A to 104E then retrieve the communication protocol information using the resource location, for example, from remote server 112.In one or more implementations, the communication protocol information for the network device 102D can be retrieved from any location that can be identified by means of the resource location information, for example, from the network device 102D itself and / or from any device that is coupled to the external network 110. One or more of the devices 102A to 102C, 104A to 104D utilize at least some of the communication protocol information to enable communication with the network device 102D and / or the electronic device 104E. For example, the communication protocol information may include information for implementing a security mechanism used by the network device 102D and / or the electronic device 104E. Exemplary processes for one or more of the devices 102A to 102D, 104A to 104E implementing the claimed technology are discussed below with reference to Figures 3 and 4. Fig. 2 illustrates an exemplary network environment 200 in which a system for discovering services over infrastructure networks can be implemented according to one or more implementations. Not all components shown need be used; however, one or more implementations may include additional components not shown in the figure. Deviations in the arrangement and type of components are possible without altering the nature or scope of protection of the claims set forth in this document. Additional components, different components, or fewer components may be provided. The network environment 200 includes network devices 102A and 102D, electronic devices 104D and 104E, and output device 106. Network device 102A includes a memory 202A, a processor circuit 204A, a network interface 206A, and a LAN interface 208A (Local Area Network). Network device 102D includes a memory 202B, a processor circuit 204B, a network interface 206B, and a LAN interface 208B. In the example shown in Figures 1 and 2, network device 102A is illustrated as a MoCA bridge, and network device 102D is illustrated as a bridge to an additional network technology, such as one not described in IEEE 1905.1. Thus, LAN interface 208A of network device 102A is a MoCA interface, while LAN interface 208B of network device 102D is an interface of the additional network technology. Network device 102A is coupled to electronic device 104D via a MoCA connection through LAN interface 208A, while network device 102D is coupled to electronic device 104E via an additional network technology connection through LAN interface 208B. For illustrative purposes, the connection between the LAN interface 208B and the electronic device 104E is shown as a solid line in Fig. 2; however, the connection can be wired or wireless. Furthermore, for illustrative purposes, a single electronic device 104D is shown in Fig. 2 communicatively coupled to the LAN interface 208A; however, any number of electronic devices can be communicatively coupled to the LAN interface 208A, for example, via a MoCA network and / or one or more MoCA network devices. Similarly, for illustrative purposes, Fig.2. A single electronic device 104E is illustrated in such a way that it is communicatively coupled with the LAN interface 208B; however, any number of electronic devices can be communicatively coupled with the LAN interface 208B, for example via a network of the additional network technology and / or one or more network devices which implement the additional network technology. Network interfaces 206A to 206B use a common network technology, such as Ethernet, enabling network devices 102A and 102D to communicate with each other. In one or more implementations, network interfaces 206A to 206B can use different network technologies, and one or more intermediate network devices (not shown) can facilitate communication between network devices 102A and 102D. Thus, network devices 102A and 102D act as a bridge for electronic devices 104D and 104E, allowing them to communicate even though they use different network interfaces, such as MoCA and the additional network technology. In one or more implementations, one or more of the memory elements 202A to 202B, the processor circuits 204A to 204B, the network interfaces 206A to 206B, and / or the LAN interfaces 208A to 208B can be implemented in software (for example, subroutines and code) and / or in hardware (for example, an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), a PLD (Programmable Logic Device), a control unit, a state machine, logic gates, discrete hardware components, or any other suitable devices) and / or a combination of both. Additional features and functions of these modules according to various manifestations of the claimed technology are further described in this disclosure. Figure 3 illustrates a flowchart of an exemplary process 300 of a network device 102A according to one or more implementations. For the sake of clarity, the exemplary process 300 is described in this document primarily with reference to the network device 102A of Figures 1 to 2; however, the exemplary process 300 is not limited to the network device 102A of Figures 1 to 2. For example, the exemplary process 300 can be carried out using one or more of the other devices 102B to 102D, 104A to 104E, and / or the exemplary process 300 can be carried out using one or more components of the network device 102A. Furthermore, for the sake of clarity, the blocks of the exemplary process 300 are described in this document as occurring serially or linearly. However, several blocks of the exemplary process 300 can occur in parallel.Furthermore, the blocks of the exemplary process 300 may be executed in a different order than the one shown, and / or one or more of the blocks of the exemplary process 300 may not be executed. Network device 102A receives a notification message, such as a discovery message, from one of the other devices 102B through 102D, 104A through 104E, such as network device 102D, which has been newly added to the network environment 100 or which was previously unknown to network device 102A (302). In one or more implementations, the notification message is a multicast or broadcast message. In response to receiving the notification message from network device 102D (302), network device 102A sends a topology request message addressed to the network address of network device 102D (304). In response to sending the topology request message to network device 102D (304), network device 102A receives a topology response message from network device 102D (306).In one or more implementations, the topology request and topology response messages are unicast messages. The topology response message contains one or more TLV (Type-Length-Value) elements corresponding to network device 102D and / or one or more devices adjacent to network device 102D, such as electronic device 104E. One of the TLV elements in the topology response message is a TLV of type "Device Information." The "Device Information" TLV has a 16-bit value for the media type, which specifies the variant of the network technology or communication protocol used by network device 102D. In one or more implementations, the most significant 8 bits of the media type value specify a network technology, and the least significant 8 bits of the media type value specify a particular variant of the network technology.Example values ​​for the media type are shown below in Table 1. Table 1: Example values ​​for the media type. 00IEEE 802.3u FastEthernetn.v. (n=0) 1IEEE 802.3ab Gigabit Ethernetn.v. (n=0) 2~255 Reserved Values ​​Reserved (n=0) 10IEEE 802.11b(2.4 GHz)n = 10 1 IEEE 802.11g (2.4 GHz) 2IEEE 802.11a (5GHz) 3IEEE 802.11n (2.4 GHz) 4IEEE 802.11n (5 GHz) 5IEEE 802.11ac (5 GHz) 6IEEE 802.11ad (60 GHz) IEEE 802.11af (Whitespace) 8~255 Reserved Values ​​Reserved (n=0) 20IEEE 1901 Wavelet Network Membership: Network ID (NID) n=7 IEEE 1901 FFT 2-255 Reserved Values ​​Reserved 30MOCA v1.1n=0 1~255 Reserved Values 4 to 2540~255 Reserved values ​​Reserved (n=0) 255 or (0xFF)255Unknown medium=0 If the network device 102D uses one of the known network technologies listed in Table 1, the network device 102D uses the media type values ​​in Table 1 associated with that network technology. However, if the network device 102D uses a network technology, or a variant thereof, not listed in Table 1, such as a newly developed network technology, then the network device 102D sets bits 15 to 8 and / or bits 7 to 0 to the media type value associated with "Unknown Medium" in Table 1, for example, 255 (or 0xFF as a hexadecimal value). Thus, upon receiving the topology response message, including the TLV for the media type, the network device 102A determines whether the communication protocol information associated with the network device 102D is to be stored locally or retrieved, for example, from the remote server 112 (308). For example, the network device 102A may be preconfigured to store communication protocol information (or information for remotely accessing such communication protocol information) locally for one or more of the available network technologies listed in Table 1 above, such as IEEE 802.3, IEEE 802.11, IEEE 1901, and / or MoCA and / or variants thereof.If bits 15 through 8 of the TLV for the media type of the topology response message received by network device 102D are set to 0, 1, or 2, network device 102A determines that the communication protocol information associated with network device 102D (and / or information for remotely accessing such communication protocol information) is stored locally on network device 102A. However, if bits 15 through 8 of the TLV for the media type are set to 255 (or the hexadecimal value 0xFF) or any other value not listed in the table, network device 102A determines that the communication protocol information associated with network device 102D (and / or information for remotely accessing such communication protocol information) is not stored locally on network device 102A.Since the value for the media type indicates whether the communication protocol information is stored locally on the network device 102A, the value for the media type can also be referred to as the communication protocol identifier. If network device 102A determines that the communication protocol information (and / or information for accessing the communication protocol information) is not stored locally (308), network device 102A sends a communication protocol request message to network device 102D (310). In one or more implementations, the communication protocol request message is a unicast message, also known as a generic PHY query message. The communication protocol request message has a new message identifier (MID) value, which could be, for example, a message sequence number. In response to the sending of the Communication Protocol Request message, network device 102A receives a Communication Protocol Reply message from network device 102D (312). In one or more implementations, the Communication Protocol Reply message is a unicast message, also known as a generic PHY reply message. In one or more implementations, the Communication Protocol Reply message has the same message identifier value as the Communication Protocol Request message. The Communication Protocol Reply message contains a TLV of type "generic PHY device information" that describes the local network interfaces of network device 102D. An example format of the "generic PHY device information" TLV is shown below in Table 2.Table 2: Example of the TLV of type “generic PHY device information” Table 2: Example of the TLV of type “generic PHY device information”. tlvType1 Octet20TLV of type “generic PHY device information” tlvLength2 OctetsVariableNumber of octets in the following field (Note: For restrictions regarding the length and division of TLVs, see 7.1.1) tlvValue6 Octet MAC address of the device according to IEEE1905.1, abstraction level 1 Octet Number of local interfaces 6 octets, any EUI-48 value, MAC address of the local interface 3 OctetteOUI of the network technology of the generic PHY device for the local interface 1 Octet variant index of the network technology of the generic PHY device for the local interface 32 octets (Variant name) 1 Octet Number of octets in the following URL field 1 Octets: Number of octets in the following field for specific information The octet URL refers to the XML description of the generic PHY device represented by the OUI. This URL must be publicly available. Octets - Specific information about the variant The 8 fields mentioned above are repeated k-1 times. In one or more implementations, the values ​​of the three octets corresponding to the IEEE OUI (Organizationally Unique Identifier) ​​or CID (Company Identifier) ​​of the generic network technology for the PHY device are determined, at least in part, by mapping the media type values ​​of the topology response message to the three octets corresponding to the OUI. Table 3 below shows an example mapping of the media type values ​​to the three octets corresponding to the OUI. Table 3: Example Mapping of Media Type Values ​​to the OUI 00:12:0FIEEE 802.30 00:0F:ACIEEE 802.111 0A:87:36IEEE 19012 00:22:0FMoCA (Multimedia over Coax Alliance)3 (other)(other)255 (or OxFF) Network Device 102A extracts a resource location from the communication protocol response message to access communication protocol information associated with one or more network interfaces of Network Device 102D (314). For example, Network Device 102A extracts the number of octets corresponding to the “URL to the XML description of the generic PHY device” specified above in Table 2. For the sake of clarity, Network Device 102A is described as extracting a single resource location from the communication protocol response message; however, Network Device 102A can retrieve one or more distinct resource locations corresponding to one or more network interfaces of Network Device 102D, which may utilize different network technologies.The 102D network device can also cache remote data, making it available for local use later. The cache can be indexed, using information such as the OUI and the variant index. The network device 102A then retrieves the communication protocol information, at least partially, based on the resource location information (316). The resource location information may be associated with a remote server that is publicly accessible via the external network 110, such as the remote server 112. Thus, the network device 102A can use the resource location information to retrieve the communication protocol information from the remote server 112. In one or more implementations, the communication protocol information is stored in an XML document and is referred to as the generic PHY device's XML description document. Thus, the set of variants of a network technology belonging to a network technology organization is described in an XML-formatted document that is made publicly available online by the network technology organization, for example, on remote server 112. Using an XML-formatted document allows the communication protocol information to be processed consistently and without human intervention or interpretation, for example, by network device 102A. A network technology organization can use an IEEE OUI to identify its network technology variants in its generic PHY device XML description document. For one or more implementations, the generic PHY device XML description document can include sample communication protocol information from the fields described in Table 4. The subfields of "NetworkingTechnologyVariant" can be repeated for each variant. Table 4: Generic PHY Device XML Fields OrgName: Name of the network technology organization OrgUrlURL of the network technology organization OUIOUI, the network technology organization NetworkingTechnologyVariantGenericPhyIndexIndex of the network technology variant VariantName: Name of the network technology variant VariantUrlURL to the network technology specification Description: Brief description of the network technology variant DataPlaneName: Name of the data plane interface of the variant of the network technology DataPlaneReference Number of the section or clause in the reference document that describes the data plane interface SME Name: Name of the SME of network technology SME Reference Number of the section or clause in the reference document describing the SME IEEE 8021 Bridging: Set to "True" if the network technology supports bridging according to IEEE 802.1. VariantSpecificSpecific information about the variant InterfaceTypeMessageArraySecurity message data field UKeyDerivation: String specifying how the U-key of the network technology is derived from the network key according to IEEE 1905. CoexistenceMechanismName(s) of the coexistence method(s) used by the variant of the network technology An example of an XML schema for a generic PHY device is shown in Table 5 below. In one or more implementations, the "schemaLocation" field of the generic PHY device's XML description document contains a URL (Uniform Resource Locator) that points to a storage location of the file "GenericPhylnfoV 1.xsd". Table 5: XML schema for a generic PHY device After retrieving the communication protocol information (316), for example, in the form of the generic PHY device's XML description document, the network device 102A uses at least some of the communication protocol information to enable communication with the network device 102D (320). For example, the network device 102A can use the information contained at least in the "UkeyDerivation" field to derive a security mechanism, such as a network technology U-key, which the network device 102D uses, for example, for encryption. In one or more implementations, if the "UKeyDerivation" field is null or empty, the network device 102A can determine that the network device 102D does not use encryption.The network device 102A then derives the security mechanism at least partially based on the "UKeyDerivation" field and uses the security mechanism to communicate securely with the network device 102D. If the network device 102A determines that the communication protocol information (and / or information for accessing the communication protocol information) is stored locally (308), the network device 102A retrieves the communication protocol information (or the information for accessing the communication protocol information) associated with the network device 102D locally (318). The network device 102A then communicates with the network device 102D at least partially based on at least some of the communication protocol information (320). Figure 4 illustrates a flowchart of an exemplary process 400 of a network device 102D according to one or more implementations. For the sake of clarity, the exemplary process 400 is described in this document primarily with reference to the network device 102D of Figures 1 to 2; however, the exemplary process 400 is not limited to the network device 102D of Figures 1 to 2. For example, the exemplary process 400 can be carried out using one or more of the other devices 102B to 102D, 104A to 104E, and / or the exemplary process 400 can be carried out using one or more components of the network device 102D. Furthermore, for the sake of clarity, the blocks of the exemplary process 400 are described in this document as occurring serially or linearly. However, several blocks of the exemplary process 400 can occur in parallel.Furthermore, the blocks of the exemplary process 400 may be executed in a different order than the one shown, and / or one or more of the blocks of the exemplary process 400 may not be executed. Network Device 102D establishes a connection to a network, such as network environment 100 and / or 200 (402). Network Device 102D sends a notification message or a discovery message to inform the other devices 104A to 104C, 102A to 102E of its presence on the network (404). In one or more implementations, the notification message may be a broadcast or multicast message. The notification message includes a network address and / or device address associated with Network Device 102D. In response to sending the notification message (404), Network Device 102D receives a topology request message from one of the other devices 104A to 104C, 102A to 102E, such as Network Device 102A (406). In response to receiving the topology request message (406), network device 102D sends a topology response message, for example, to network device 102A (408). The topology response message has a TLV of type "Device Information" that contains one of the media type values ​​described above in Table 1. For illustrative purposes, in example process 400, network device 102D sets the media type value to 255 (or the hexadecimal value 0xFF) to indicate that at least one network interface of network device 102D uses a network technology and / or variant not listed in Table 1. In response to the sending of the topology response message (408), network device 102D receives the communication protocol request message, for example, from network device 102A (410). In response to receiving the communication protocol request message (410), network device 102D sends a communication protocol response message containing a resource location for accessing communication protocol information associated with network device 102D, for example, to network device 102A (412). In one or more implementations, the communication protocol response message may contain one or more of the fields described above in Table 2.The network device 102A can use the resource location information to retrieve the communication protocol information associated with the network device 102D, for example in the form of an XML document that has one or more of the fields described above in Table 4. Network device 102D can then communicate with network device 102A, at least partially, based on the communication protocol information (414). For example, network device 102D can use a security mechanism that network device 102A can derive from the "UKeyDerivation" field. In one or more implementations, the communication protocol information can include additional values ​​and / or information, such as any information that can enable communication between network devices 102A and 102D. Figure 5 conceptually illustrates an exemplary electronic system 500 with which one or more implementations of the claimed technology can be implemented. The electronic system 500 may be, for example, one or more of the network devices 102A to 102D, one or more of the electronic devices 104A to 104E and / or the output device 106, one or more wearable devices, a desktop computer, a laptop computer, a tablet device, a telephone and / or, more generally, any electronic device. Such an electronic system 500 has various types of computer-readable media and interfaces to various other types of computer-readable media.The electronic system 500 comprises a bus 508, one or more processing unit(s) 512, a system memory 504, a read-only memory (ROM) 510, a permanent storage device 502, an input device interface 514, an output device interface 506, one or more network interface(s) 516 and / or subsets and variations thereof. The bus 508 collectively represents all system buses, peripheral buses, and chipset buses that communicatively connect the various internal devices of the electronic system 500. In one or more implementations, the bus 508 communicatively connects the one or more processing unit(s) 512 to the ROM 510, the system memory 504, and the permanent storage device 502. From these various storage units, the one or more processing unit(s) 512 retrieve instructions to be executed and data to be processed in order to carry out the processes of the claimed disclosure. The one or more processing unit(s) 512 can, in different implementations, be a single processor or a multi-core processor. The ROM 510 stores static data and instructions used by the one or more processing unit(s) 512 and other modules of the electronic system 500. Alternatively, the permanent storage device 502 can be a read / write storage device. The permanent storage device 502 can be a non-volatile storage unit in which instructions and data are stored even when the electronic system 500 is switched off. In one or more implementations, a mass storage device (such as a magnetic disk or an optical disk and the corresponding disk drive) can be used as the permanent storage device 502. In one or more implementations, a removable storage device (such as a floppy disk, a flash drive, and the corresponding disk drive) can be used as the permanent storage device 502. Like the permanent storage device 502, the system memory 504 can be a read / write storage device. However, unlike the permanent storage device 502, the system memory 504 can be a volatile read / write memory, such as RAM (Random Access Memory). The system memory 504 can store one or more of the instructions and / or data that can be used at runtime by the one or more processing units 512.In one or more implementations, the processes of the claimed disclosure are stored in the system memory 504, in the permanent storage device 502, and / or in the ROM 510. From these various storage units, the one or more processing unit(s) 512 retrieve instructions to be executed and data to be processed in order to execute the processes of one or more implementations. Bus 508 also provides a connection to the input and output device interfaces 514 and 506. The input device interface 514 allows a user to transmit information and select commands to the electronic system 500. Input devices that can be used with the input device interface 514 can include, for example, alphanumeric keyboards and pointing devices (also called "cursor control devices"). The output device interface 506 can, for example, allow the display of images generated by the electronic system 500.Output devices that can be used with the 506 Output Device Interface can include, for example, printers and display devices such as an LCD (Liquid Crystal Display), an LED (Light Emitting Diode), an OLED (Organic Light Emitting Diode), a flexible display, a flat panel display, a solid-state display, a projector, or any other device for outputting information. One or more implementations can include devices that function as both input and output devices, such as a touchscreen.In these implementations, the feedback provided to the user can be any form of sensory feedback, such as visual, auditory, or tactile feedback; and input from the user can be received in any form, including auditory, speech, or tactile input. As shown in Fig. 5, the bus 508 also couples the electronic system 500 to one or more networks (not shown) via one or more network interface(s) 516. The one or more network interface(s) can be a Bluetooth interface, a BLE interface (Bluetooth Low Energy), a ZigBee interface, an Ethernet interface, a Wi-Fi interface, a MoCA interface, a HomePlug interface, an RGMII interface (Reduced Gigabit Media Independent Interface), or generally any interface for connecting to a network.In this way, the electronic system 500 can be part of one or more networks of computers (such as a LAN (Local Area Network), a PAN (Personal Area Network), a P2P (Peer-to-Peer) network, a WAN (Wide Area Network), or an intranet or a network consisting of networks, such as the Internet). Any or all components of the electronic system 500 can be used in connection with the claimed disclosure. Implementations within the scope of protection of this disclosure may be carried out in whole or in part using a physical, computer-readable storage medium (or several physical, computer-readable storage media of one or more types) which encode one or more instructions. The physical, computer-readable storage medium may also be non-volatile by its nature. The computer-readable storage medium can be any storage medium that can be read and written to, or otherwise accessed by a general-purpose or specialized computer device, including any processing electronics and / or processing circuitry capable of executing instructions. For example, the computer-readable medium can include—but is not limited to—any volatile semiconductor memory, such as RAM, DRAM, SRAM, T-RAM, Z-RAM, and TTRAM. The computer-readable medium can also include any non-volatile semiconductor memory, such as ROM, PROM, EPROM, EEPROM, NVRAM, Flash memory, SSD, nvSRAM, FeRAM, FeTRAM, MRAM, PRAM, CBRAM, SONOS, RRAM, NRAM, Racetrack memory, FJG, and Millipede memory. Furthermore, the computer-readable storage medium can be any non-semiconductor memory, such as optical disk storage, magnetic disk storage, magnetic tape, other magnetic storage devices, or any other medium capable of storing one or more instructions. In one or more implementations, the physical, computer-readable storage medium can be directly coupled to a computer device, while in other implementations, the physical, computer-readable storage medium can be indirectly coupled to a computer device, for example, via one or more wired connections, one or more wireless connections, or any combination thereof. Instructions can be directly executable or can be used to develop executable instructions. For example, instructions can be implemented as executable or non-executable machine code, or as instructions in a higher-level language that can be compiled to produce executable or non-executable machine code. Furthermore, instructions can be implemented as data or contain data. Computer-executable instructions can also be organized in any format, including routines, subroutines, programs, data structures, objects, modules, applications, applets, functions, and so on. As experts in this field recognize, details, including but not limited to the number, structure, sequence, and organization of instructions, can vary considerably without altering the underlying logic, function, processing, and output. While the above discussion mainly concerns microprocessors or multi-core processors that execute software, one or more implementations are executed using one or more integrated circuits, such as ASICs (Application Specific Integrated Circuits) or FPGAs (Field Programmable Gate Arrays). In one or more implementations, such integrated circuits execute instructions stored within the circuit itself. Experts in this field would recognize that the various blocks, modules, elements, components, procedures, and algorithms described in this document for illustrative purposes can be implemented as electronic hardware, computer software, or a combination of both. To illustrate this interchangeability of hardware and software, various blocks, modules, elements, components, procedures, and algorithms have been described above in general terms with regard to their functionality. Whether such functionality is implemented as hardware or software depends on the specific application and the design constraints to which the overall system is subject. Experts in this field can implement the described functionality in different ways for each specific application.Different components and blocks may be arranged in other ways (for example, arranged in a different order or divided in other ways) without deviating from the scope of protection of the claimed technology. It is understood that any specific sequence or hierarchy of blocks in the disclosed processes is an illustration of exemplary approaches. It is understood that the specific sequence or hierarchy of blocks in the processes can be rearranged based on design preferences, or that all illustrated blocks can be executed. Any of the blocks can be executed concurrently. In one or more implementations, multitasking and parallel processing may be advantageous. Furthermore, the separation of different system components in the embodiments described above should not be interpreted as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products. As used in this patent specification and in any claims of this patent application, the terms "access point", "receiver", "computer", "server", "processor", and "memory" all refer to electronic or other technological devices. These terms do not refer to any person or group of persons. For the purposes of this patent specification, the terms "display" and "display" mean displaying on or by means of an electronic device. As used in this document, the phrase "at least one of" before a list of elements, where "and" or "or" are used to separate the individual elements, serves to modify the list as a whole and not each individual item in the list (for example, each element). The phrase "at least one of" does not require a selection of at least one of the listed elements; rather, the phrase allows a meaning that includes at least one of any one of the elements and / or at least one of any combination of the elements and / or at least one of each of the elements. For example, the phrases "at least one of A, B, and C" or "at least one of A, B, or C" each refer to only A, only B, or only C; any combination of A, B, or C; and / or at least one of each A, B, and C. The predicative phrases "configured such that," "operational such that," and "programmed such that" do not imply any material or immaterial modification of an object, but are intended to be used interchangeably. In one or more implementations, the statement that a processor is configured to monitor and control an operation or a component also means that the processor is programmed to monitor and control the operation, or that the processor is operational such that it monitors and controls the operation. Similarly, the statement that a processor is configured to execute code can be interpreted as meaning that a processor is programmed to execute code, or that it is operational such that it executes code.

Claims

Network device (102A) comprising: at least one processor circuit configured to: identify another network device (102D) in a network; characterized in that the at least one processor circuit is further configured to: determine whether a communication protocol identifier received from the other network device (102D) indicates that communication protocol information associated with the other network device (102D) is stored locally or is to be requested from the other network device (102D). Network device (102A) according to claim 1, wherein the at least one processor circuit is further configured to do the following: when the communication protocol identifier indicates that the communication protocol information is to be obtained by the other network device (102D): receive a message from the other network device (102D) which includes a resource location indication for accessing communication protocol information associated with the other network device (102D); retrieve the communication protocol information via the resource location indication; and use at least some of the communication protocol information to enable communication with the other network device (102D) over the network. Network device (102A) according to claim 1, wherein the at least one processor circuit is further configured for: retrieving the communication protocol information by means of the resource location information from a remote server via an external network that is different from the network. Network device (102A) according to claim 3, wherein the remote server differs from the network device (102A) and the other network device (102D). Network device (102A) according to claim 4, wherein the communication protocol information comprises an XML document (Extensible Markup Language) stored on the remote server. Network device (102A) according to claim 5, wherein the XML document comprises: a name of a network technology organization associated with the other network device (102D), an OUI (Organizationally Unique Identifier) ​​or a CID (Company Identifier) ​​of the network technology organization associated with the other network device (102D), a name of a variant of a network technology associated with the other network device (102D), and information for deriving at least one key associated with the other network device (102D). Network device (102A) according to claim 6, wherein the at least one processor circuit is further configured for: deriving the at least one key associated with the other network device (102D), based at least partly on the information for deriving the at least one key; and communicating with the other network device (102D) at least partly on the basis of the at least one key. Network device (102A) according to claim 1, wherein the network device (102A) has a first bridge device connected to the first network technology, and the other network device (102D) has a second bridge device connected to a second network technology which differs from the first network technology. Network device (102A) according to claim 1, wherein the at least one processor circuit is further configured to: receive a notification message from the other network device (102D), the notification message comprising a network address of the other network device (102D); send a topology request message to the other network device (102D) using the network address of the other network device (102D); receive a topology response message from the other network device (102D), the topology response message comprising a field for the media type set to a value indicating that the communication protocol information associated with the other network device (102D) is to be received by the other network device (102D); send a request message to the other network device (102D); and receive the message in response to the request message.A method implemented by means of a network device (102D), the method comprising: receiving a topology request message from another network device (102A) over a network; sending a topology response message to the other network device (102A) over the network, the topology response message comprising an indication that communication protocol information associated with the network device (102D) is stored locally or is to be retrieved by the other network device (102A); characterized in that the method further comprises: if the indication specifies that the communication protocol information is to be retrieved by the other network device (102A): receiving a communication protocol request message from the other network device (102A);and sending a communication protocol response message that includes a resource location indication for retrieving the communication protocol information stored on a remote server.