US20180145945A1 - Information centric network island bridging - Google Patents
Information centric network island bridging Download PDFInfo
- Publication number
- US20180145945A1 US20180145945A1 US15/487,808 US201715487808A US2018145945A1 US 20180145945 A1 US20180145945 A1 US 20180145945A1 US 201715487808 A US201715487808 A US 201715487808A US 2018145945 A1 US2018145945 A1 US 2018145945A1
- Authority
- US
- United States
- Prior art keywords
- domain
- island
- inter
- discovery
- interest
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H04L61/2076—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- G06F17/30345—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
- H04L41/5006—Creating or negotiating SLA contracts, guarantees or penalties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
- H04L41/5009—Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
- H04L41/5019—Ensuring fulfilment of SLA
- H04L41/5025—Ensuring fulfilment of SLA by proactively reacting to service quality change, e.g. by reconfiguration after service quality degradation or upgrade
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/091—Measuring contribution of individual network components to actual service level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/12—Network monitoring probes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/04—Interdomain routing, e.g. hierarchical routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/14—Routing performance; Theoretical aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/60—Router architectures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/20—Traffic policing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
- H04L47/286—Time to live
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/78—Architectures of resource allocation
- H04L47/783—Distributed allocation of resources, e.g. bandwidth brokers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5076—Update or notification mechanisms, e.g. DynDNS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H04L67/16—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/2876—Pairs of inter-processing entities at each side of the network, e.g. split proxies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Definitions
- Embodiments described herein generally relate to computer network communications and more specifically to information centric network (ICN) island bridging.
- ICN information centric network
- IoT The Internet of Things
- IoT devices integrate components that may have previously lacked communication mechanisms with each other and other networked entities to widely provide access to the IoT device.
- Example IoT devices may include sensors, such as cameras, thermometers, moisture sensors, light sensors, motion sensors, and the like.
- Other IoT devices may include appliances (e.g., a refrigerator, oven, washing machine, dryer, water heater, water softener, etc.), home automation components (e.g., lights, thermostats, locks, doors, etc.), industrial automation e.g., machinery, lights, access mechanisms, etc.), and even furniture.
- IoT installations are part of larger functional solutions and bundled as a product.
- a security company may offer cameras, motion sensors, electronic locks, etc. as part of a security product in a home or business.
- Other products may include home automation (e.g., lights, thermostats, etc.), inventory management (e.g., radio frequency identification (RFID) readers), or workplace health and safety systems (e.g., equipment monitors, employee activity monitors, etc.).
- RFID radio frequency identification
- workplace health and safety systems e.g., equipment monitors, employee activity monitors, etc.
- Several of these IoT based products may be installed in a single location or may have overlapping areas of operation (e.g., a security system and a home automation system may coexist in the same home).
- FIG. 1 is a block diagram of an example of an environment including a system for ICN island bridging, according to an embodiment.
- FIG. 2 illustrates an example of ICN island bridging, according to an embodiment.
- FIG. 3 illustrates an example of an ICN and routing table, according to an embodiment.
- FIG. 4 illustrates an example of an ICN and routing table, according to an embodiment
- FIG. 5 illustrates a flow diagram of an example of a method for ICN island bridging, according to an embodiment.
- FIG. 6 is a block diagram illustrating an example of a machine upon which one or more embodiments may be implemented.
- IoT installations may exist within a single larger entity such as a business or a home for different purposes such as security, lighting, heating and cooling, etc.
- an IoT system providing a service such as smart lighting
- the system typically includes underlying sensing or actuating devices connected using either a wireless or a wired technology as appropriate with a user interface to allow users to interact with the system.
- the system comprises multiple applications (e.g., light and temperature sensors in the same IoT system), it is commonly proprietary and closed.
- ICN Information Centric Network
- ICNs are emerging as a solution to some data congestion issues that wide-spread IoT device deployments may bring.
- ICN is an umbrella term for a new networking paradigm in which information itself is named and requested from the network instead of hosts (e.g., machines that provide information).
- hosts e.g., machines that provide information.
- IP Internet protocol
- a device locates a host and requests content from the host. The network understands how to route (e.g., direct) packets based on the address specified in the packet.
- ICN does not include a request for a particular machine, and does not use addresses. Instead, to get content, a device requests named content from the network itself. The content request may be called an interest and transmitted via an interest packet.
- a record of the interest is kept, for example, in a pending interest table.
- a device with content matching the name in the interest may send a data packet in response to the interest packet.
- the data packet is tracked back through the network to the source by following the traces of the interest left in the network devices.
- Matching the named data in an ICN may follow several strategies.
- the data is named hierarchically, such as with a universal resource identifier (URI).
- URI universal resource identifier
- a video may be named www.somedomain.com/videos/v8675309.
- the hierarchy may be the publisher, “www.somedomain.com,” a sub-category, “videos,” and the canonical identification “v8675309.”
- ICN equipment will generally attempt to match the name to a greatest degree.
- an ICN device has a cached item or route for both “www.somedomain.com/videos” and “www.somedomain.com/videos/v 8675309 ,” the ICN device will match the later for an interest packet specifying “www.somedomain.com/videos/v8675309.”
- an expression may be used in matching by the ICN device.
- the interest packet may specify “www.somedomain.com/videos/v8675*” where ‘*’ is a wildcard.
- any cached item or route that includes the data other than the wildcard will be matched.
- additional meta-data may be attached to the interest packet, the cached data, or the route, to provide an additional level of matching.
- the data name may be specified as “www.somedomain.com/videos/v8675309,” but also include a version number or timestamp, time range, endorsement, etc.
- the interest packet may specify the name and also the version number, or version range, desired. The matching may then locate routes or cached data matching the name and then perform the additional comparison of meta-data or the like to arrive at an ultimate decision as to whether data or a route matches the interest packet for responding to the interest packet or forwarding the interest packet respectively.
- ICN has advantages over host-based networking because the data segments are individually named. This permits aggressive caching throughout the network as a network device may provide a data packet in response to an interest as easily as an original author. Accordingly, it is less likely that the same segment of a network will transmit duplicates of the same data requested by different devices. Such an architecture is useful when a network branches from a central information provider to many leaves, such as occurs in many IoT deployments.
- Fine grained encryption is another feature of many ICNs.
- a typical data packet includes a name for the data that matches the name in the interest packet. Further, the data packet includes the requested data and may include additional information that may, for example, be used to filter similarly named data (e.g., by creation time, expiration time, version, etc.).
- the data packet may also encrypt its contents with a publisher key or provide a cryptographic hash of the data and the name.
- knowing the key e.g., from a certificate of an expected publisher
- This technique also allows the aggressive caching of the data packets throughout the network because each data packet is self-contained and secure. This contrasts with many host-based networks that rely on encrypting a connection between two hosts to securely communicate. With connection encryption, the network devices have no access to the data to cache the data.
- Example ICNs include content centric networking (CCN), as specified in the Internet Engineering Task Force (IETF) draft specifications for CCNx 0.x and CCN. 1.x, and named data networking (NDN), as specified in the NDN technical report DND-0001.
- CCN content centric networking
- IETF Internet Engineering Task Force
- NDN data networking
- IoT system interoperability is not simply solved by using standard ICN implementations.
- ICN islands e.g., domains or other logical encapsulations within an ICN that may be within the same subnet or different subnets.
- ICN naming domains that support an IoT context or application as well as ICN island attribute exposure are described to uniquely identify and characterize the capabilities of an ICN island as a logical or functional entity to support bridging.
- participating ICN islands identify the various types of information that a given ICN island is willing to expose to other ICN islands as a logical functional entity.
- the exposed attributes include content generated within the ICN island.
- content may include raw sensor data, processed metrics, or analytics, among others.
- the exposed attributes include attributes of the ICN island itself.
- attributes may include the ICN island's name, functions (e.g., lighting, security, etc.), scope of operation (e.g., does it span a home, a building, a park, a business, etc.), among others.
- the exposed attributes include metrics (e.g., demographics) about the devices that are in the ICN island.
- metrics may include attributes of the number of devices (e.g., sensors, actuators, etc.) within the ICN island, device locations within the ICN island, a mapping of device physical locations to a logical naming (e.g., addressing) plan (e.g., and its relationship to the namespace domain), the radio technology used by the various devices, or specific permission levels for the various types of functions supported by the different devices within the ICN island, among others.
- the exposed attributes include connectivity information about other connected ICN islands. This connectivity information may be used to construct routes to direct traffic, such as how to reach distant or disconnected ICN islands.
- the exposed attributes include access policies for the ICN island, for the devices within the ICN island, devices in different ICN islands, or data available (e.g., generated or derived) from the entities within each island.
- Access policies may take several forms, such as access control lists (ACLs), entry via a clearinghouse, etc.
- ICN communication is sufficient—intra-island communication may use ICN style publish-subscribe models to communicate. Inter-island communication however, is achieved via one or more enhancements to the standard ICN communications model.
- a mapping from one network e.g., a wireless network for lighting or surveillance systems
- the network plane e.g., name-based routing
- name spaces from a first ICN island are mapped to work in a second ICN island. This mapping addresses potential name space collisions.
- the name of an entity in the first ICN island is mapped to the second ICN island by prepending a value corresponding to the first IC island (e.g., a prefix of the first ICN island is present whenever the entity is named outside of the first ICN island).
- entities within an island are named based on physical or logical node or system clusters as well as entity data features. For example, nodes that have similar attributes describing their location, functions, other criteria for bridging or group formation have names representing these relationships.
- ICN discovery e.g., search
- ICN islands advertise their connectivity or the connectivity of other connected or nested ICN islands. This allows construction of ICN routes to connect ICN islands that are not directly connected.
- a new publication-subscription model including new “discovery” packets analogous to interest packets allows ICN island discovery in terms of what type of systems are connected (e.g., light management, security, temperature, etc.).
- the discovery e.g., subscription request
- a centralized system e.g., a database
- advertisement packets e.g., analogous to ICN publish or service advertisement packets
- ICN island bridging offers an efficient and universal mechanism to permit interoperability between different IoT systems.
- the ICN modifications described throughout enable ICN island interactions without resorting to application layer work-grounds, resulting in a robust networking solution to a variety of IoT installations. Variations and examples of these ICN improvements to support ICN islands and ICN island bridging are discussed below.
- FIG. 1 is a block diagram of an example of an environment 100 including a system 105 for ICN island bridging, according to an embodiment.
- the environment 100 includes a first ICN island 140 (e.g., a home automation system) and a second ICN island 150 (e.g., a security system).
- the first ICN island includes a content router communicating with an upstairs light and a downstairs light.
- the second ICN island includes two content routers, one of which communicates with an upstairs camera and a downstairs camera, the second of which communicates with an offsite security data center 155 .
- the system 105 includes a network interface 110 , a controller 125 , and a data store 130 .
- the components of the system 105 are implemented in computer hardware, such as circuitry.
- the system 105 is a content router that is in both the first and the second ICN islands.
- the system 105 belongs to multiple domains. This, however, is not required.
- the system 105 is part of only one ICN island with a communication pathway external to the ICN island.
- the system 105 is called an island domain node.
- the system 105 is communicatively coupled via a content router to a non-island server 160 .
- the system 105 is positioned to enable inter-ICN island communications.
- intra-island communications may operate on standard ICN principles.
- the system 105 interfaces with intra-island nodes to provide inter-island data in some examples.
- the network controller 110 is arranged to receive a request that includes a data identifier.
- the data identifier which may also be called a data name, is an ICN convention whereby data is identified rather than a host from which the data is to be obtained.
- the controller 125 is arranged to use an inter-domain discovery to identify a destination domain corresponding to the data identifier in the request.
- Standard ICN communication may reveal that the data of the data identifier is available within an ICN island (e.g., island 140 or island 150 ).
- the system 105 has inter-island communication capabilities and thus may look outside of a given island.
- the controller 125 is arranged to query a local store 130 of domain capabilities with the data identifier to produce search results.
- the local store may be a database, cache, or other data structure to maintain capabilities or attributes of one or more ICN islands.
- the result of the query include a set of domain identifiers.
- the data identifier is used as a key, index, or search term to the data store 130 to return domain identifiers (e.g., names, numbers, or identifiers of one or more ICN islands).
- domain identifiers e.g., names, numbers, or identifiers of one or more ICN islands.
- the ICN islands corresponding to the domain identifiers thus are likely to be able to satisfy the request.
- the controller 125 is arranged to obtain a service set of a different domain than the domain to which the system 105 belongs. The controller 125 may then update the local store 130 with the service set. By this mechanism the controller 125 maintains knowledge of the other ICN islands.
- the controller 125 queries an inter-domain service 160 .
- the inter-domain service 160 operates as a clearinghouse for ICN island information.
- the inter-domain service 160 may implement access control or other permissions to flexibly control what information is available based on the source and requester.
- the inter-domain service 160 may maintain connections (e.g., interests) to its ICN islands such that changes to those islands' attributes are propagated as data packets to the inter-domain service 160 .
- the controller 125 is arranged to place (e.g., via the network interface 110 ) a discovery interest on an inter-island information centric network.
- a discovery interest includes a services filter.
- the services filter includes one or more filters to refine the discovery request.
- a discovery interest to the ICN island 150 may include a service filter to limit responses to the house.
- a response to the discovery interest has contents based on the services filter.
- the data center 155 may have attributes or services to expose to the system 105 , those attributes or services will not be returned because they do not pertain to the house. However, the cameras that are in the house may be exposed to the system 105 as a response to the discovery interest.
- the discovery interest is different than other interests of the inter-island information centric network such that a node of the inter-island information centric network does not remove the discovery interest, from a pending interest structure, in response to a single response to the discovery interest.
- the discovery interest is persistent in the ICN. This permits multiple responses from different ICN islands to pass through the same content routers.
- the discovery interest includes a time-to-live (TTL).
- TTL time-to-live
- the discovery interest may be removed from the pending interest structure (e.g., in content routers) based on the TTL. This allows cleanup of persistent discovery interests.
- the discovery interest includes a total count.
- the discovery interest may be removed from the pending interest structure based on a number of responses received to the discovery interest and the total count.
- the interest may be persistent until a certain number of responses are achieved.
- This technique permits the discovery interest to be cleaned up more quickly if the number of responses are predictable by the system 105 .
- the discovery interest is sent at regular intervals. This is a “refresh” of the discovery interest. By regularly removing and refreshing discovery interests, the system 105 may maintain an efficient and continuous discovery of ICN islands without becoming stale.
- the controller 125 is arranged to modify the request to create an inter-domain request.
- the controller is arranged to add the destination domain to the data identifier.
- the data identifier is hierarchical and the domain identifier is added to the top of the hierarchy. For example, if data is named ‘lighting-system/upstairs/control/intensity’, where ‘/’ is the hierarchical delimiter and moving from left-to-right moves down the hierarchy, the domain identifier ‘lighting-system’ appears at the left-most position. This approach allows an easy naming convention for nested domains.
- the inner domain identifier is placed first and the out domain identifier placed second, resulting in a name ‘/home-control/lighting-system/upstairs/control/intensity’.
- the domain identifier is flagged in the data identifier.
- the data name ‘upstairs/d:lighting-system/control/intensity’ or ‘/upstairs/control/intensity[lighting-system]’ illustrate additional techniques to identify the domain identifier.
- the network controller 110 is arranged to communicate the inter-domain request to an inter-domain information centric network. Once the inter-domain request is communicated to the inter-domain ICN, the request may be satisfied by an entity outside of the requester's ICN island. The modification of the request in this manner permits intra-island naming conventions and to be separated from inter-island naming requirements. This reduces name collisions and permits data naming to be tailored to different environments. Further, the goal of network-layer bridging is achieved, allowing differing IoT installations to communicate with each other while continuing to communicate internally without modification.
- the discovery and use of other ICN islands described above has the system 105 in the role of a user of other ICN islands.
- the system 105 may also serve other ICN islands.
- the network interface 110 is arranged to receive a discovery interest from an inter-island information centric network.
- the controller 125 is arranged to provide a response to the discovery interest based on selectors in the discovery interest and a database (e.g., housed in the local store 130 ) of intra-island services.
- the intra-island services may include services provided directly by the system 105 as well as those provided by other entities in the system's ICN island.
- the data center 155 may send a discovery interest with a selector for the location of the house and lighting services.
- the system 105 may return a service corresponding to the lights of the ICN island 140 .
- the system 105 may include the domain identifier for the ICN island 140 .
- the appropriate ICN island identifier is applied to the data identifier such that the inter-island ICN correctly routes the interest.
- the system 105 operates as a gateway, translating the inter-domain data identifier into an appropriate intra-domain identifier.
- intra-domain entities know their domain identifier and thus may ignore it in an interest. This permits a simple pass-through model of communication whereby the system 105 need not be involved in routing the interest.
- the system 105 maintains a record of service provided by the ICN island to which it belongs. This record may operate similarly to the inter-island discovery discussed above directed to intra-island entities (e.g., discovery interests, etc.). In an example, the system 105 may perform ad-hoc querying of intra-island entities upon receipt of the inter-island discovery request.
- the controller 125 is arranged to communicate (e.g., via the network interface 110 or via a separate network interface (not shown) dedicated to intra-island communication) a second discovery interest to the intra-island information centric network. The system 105 may then receive service metrics from other intra-island nodes in response to the second discovery interest. The controller 125 is arranged to then update the database of intra--island services based on the received service metrics.
- a security apparatus permits flexible mixing of different ICN islands.
- Access control lists (ACLs), based on device or domain identifiers may be implemented. Beyond specifically identifying what entities may receive discovery responses, the security may he based on keys. In this example, the contents of the response are based on a key presented in the discovery interest.
- the controller 125 is arranged to extract a security identifier from the discovery interest and filter entries of the database of intra-island services based on the security identifier.
- the granularity of the response based on an ACL, key, or combination of both, may be as refined as a single attribute, to the entire ICN
- FIG. 2 illustrates an example of ICN island bridging 200 , according to an embodiment.
- the bridging 200 described below provides additional examples of the environment 100 described above.
- the following discussion is in the context of a home lighting system ICN island 205 and a home security system ICN island 215 .
- Entities within the home security system ICN island 215 may use the request handler 220 to make inter-domain requests to the home lighting system ICN island 205 .
- the request handler 220 queries the network information database 210 of the home lighting system ICN island 205 to discover what services, data, or attributes are accessible to the home security system ICN island 215 .
- the bridging 200 includes a naming scheme to allow inter-island information sharing.
- ICN islands cluster configurations e.g., whether the ICN islands are recursively clustered, hierarchically clustered, or peers
- the naming scheme reflects the clustering organization. ICN islands that are recursively clustered have a namespace domain that reflects the nesting nature of the deployments.
- the naming scheme reflects the relationship by attaching a common domain name space identifier (e.g., domain identifier) to the ICN islands.
- a common domain name space identifier e.g., domain identifier
- the bridging 200 uses a modified ICN Island research and discovery mechanism.
- the mechanism is modified in the sense that it operates differently than standard ICN messaging.
- the publication-subscription procedure may be changed into a distributed scheme for discovering different ICN islands and sending requests to these ICN islands.
- the bridging 200 uses a new type of interest packet for “discovering” other (e.g., adjacent) ICN islands.
- ICN islands may be logically related or physically related.
- the discovery packets may be called discovery interest packets.
- a discovery interest packet indicates a request for details of ICN islands (e.g., adjacent ICN islands or others).
- the “selector” section of the discovery interest packet specifies whether the discovery pertains to information about a particular type of island or all the islands within a certain vicinity, for example.
- the selector section of the discovery interest packet may also contain the physical or logical domain from which the discovery interest originates. For instance, a node may communicate a discovery interest packet requesting details of all ICN islands that are located within a particular building specified by the selector section of the discovery interest packet.
- Discovery packets are forwarded through an inter-domain ICN until they reach a node that is able to respond to the request.
- the responding node may first check whether the discovery interest packet has permission to access the requested information. If the permissions permit disclosure (e.g., the requesting node, domain, or discovery interest is authorized), the responding node may then determine what level of information it is permitted to provide to the requestor. Once these issues are resolved, the responding node provides, to the extent permitted, the requested information. In an example, the responding node may not actually respond to the discovery interest packet itself. Instead, the responding node may forward the discovery interest packet to a local gateway or coordinator that provides the response.
- the response (e.g., data packet)contains details of all nodes within the responding ICN island. In an example, the response also includes details specifying how to control or request changes of the entities in the responding ICN island.
- the discovery interest packet may include a threshold distance (e.g., logical hops, geographic location, etc.). If the discovery packet reaches a location that is beyond the threshold distance, an inter-domain node (e.g., content router, other node, etc.) may refrain from forwarding the discovery interest packet.
- a threshold distance e.g., logical hops, geographic location, etc.
- the response packet has a name that includes the name provided in the discovery interest packet along with a suffix that is unique to the ICN island.
- any data packet that includes the name in the discovery interest packet will be considered a response and forwarded to the node that sent out the discovery interest packet.
- time-out threshold e.g., TTL
- the discovery interest packet may be removed from pending interest tables (PITS) in inter-domain ICN nodes instead of when a response to the discovery interest packet passes through a node as it is traditionally done.
- PITS pending interest tables
- the requesting node may use this information to request data, control, services, or adjustments from entities within the responding ICN island or the responding ICN island itself. For example, the requesting node may transmit a request to a manager or coordinator of the responding ICN island in the form of a data packet with a name that includes source and destination node. The ICN island manager or coordinator is then responsible for sending out periodic interest packets to ensure that discovery requests are routed to it. This technique may also be used to signal when the responding ICN island is not accepting requests.
- a node may refrain from sending the interest packets, indicating that it is not able to take any requests at this time.
- a node once a node sends out a request to an adjacent island, it also immediately subscribes (e.g., transmits an interest packet) to any ACK packets that originate from the adjacent island.
- NID 210 is used to store information about a given ICN island.
- the discovery interest packet is forwarded to the NID 210 .
- the NID 210 may then apply the security techniques discussed above and provide an appropriate response based on the discovery interest packet and security measures.
- the NM 210 includes a registry of information that is consistent and contains information on the ICN island, such as size of the network, other ICN islands with which it connects, the type of nodes installed in it, their geographical location, their permissions (e.g., which determines their accessibility to external nodes of the ICN island, or to internal nodes inside the same ICN island), the possibility of acceptance of commands from external networks—for example, the ability of the home security system ICN island 215 sending actuation commands to the home lighting system ICN island 205 , the network technology that links them together, etc.
- the NID 210 is located within a gateway device that provides connectivity to the different IoT systems in the ICN island and may also act as a proxy to other ICN islands or networks (e.g., the Internet).
- the NID 210 is illustrated within the home lighting system ICN island 205 , in an example, the NID 210 may reside in a hierarchy above the various ICN islands that access it. In this example, the NID 210 may provide query and update services to several ICN islands.
- An inter-domain NID 210 may be located at a node accessible by more than one ICN island be it a physical node or a logical node in a cloud.
- the NID 210 placement may be changed on-demand (e.g., transferred from one node to another) assist a variety of scenarios, such as mobility scenarios.
- the NID 220 may implement a standard application programing interface (API).
- the API includes one or more of a query call, an update call, a record new data call, an authorization call (e.g., permissions based access).
- a common API allows multiple vendors or generations of products to interoperate, be they residential or commercial, because there is a standardized way to interoperate and share information between the systems without compromising on security.
- the techniques described above result in a self-learning and updating inter-island communication network. This is an important feature as network participation by various nodes change over time, including small time scales, such as every minute or every hour.
- the self-learning elements of discovery described above permit the NID 210 to accurately reflect the ICN island throughout these changes.
- FIG. 3 illustrates an example of an ICN 300 and routing table 305 , according to an embodiment.
- the ICN 300 follows a traditional peer-based relationship between different ICN islands A, B, C, and D.
- the routing table 305 is from the perspective of ICN island D and illustrates the network, route, and naming prefix used to access entities within a particular ICN island.
- an entity from the ICN island D may preface the data name with ‘A’ (e.g., ‘A/light/lighting-control’). Because no entity in D has the ‘A’ preface, the interest is routed outside of D to C where it may be routed directly to A or through B to A.
- ‘A’ e.g., ‘A/light/lighting-control’
- FIG. 4 illustrates an example of an ICN 400 and routing table 405 , according to an embodiment. It cannot be assumed that all ICN islands that bridge will peer directly, some will be contained within other ICN islands. In these scenarios, name spaces may be modified to avoid name space collisions. In an example, a hierarchical prefix may be used for each ICN island. Thus, as layers of embedded networks are added, the domain identifier of the outermost layer is prepended to a data identifier.
- the ICN 400 includes ICN islands E, F, G, H, and I. ICN islands F and G are embedded inside of H. Thus, any communication to or from F and G to E or I must pass through H.
- the routing table 405 from the perspective of ICN island E, illustrates the routing and naming used to permit communication with embedded domains F and G. This same concept may be extended to bridging logical ICN islands as well as physically separated ICN islands.
- FIG. 5 illustrates a flow diagram of an example of a method 500 for ICN island bridging, according to an embodiment.
- the operations of the method 500 are implemented in computer hardware, such as that described above, or described below with respect to FIG. 6 (e.g., circuitry).
- the method 500 may be executed in an ICN by an island domain node.
- the island domain node belongs to multiple domains.
- a request is received at an island domain node in an information centric network, the request including a data identifier.
- an inter-domain discovery is used to identify a destination domain corresponding to the data identifier.
- inter-domain discovery includes querying a local store of domain capabilities with the data identifier to produce search results and returning a set of domain identifiers from the search results.
- the method 500 is extended to include obtaining a service set of a different domain than the domain and updating the local store of the island domain node with the service set.
- obtaining the service set of the different domain includes querying an inter-domain service.
- obtaining the service set of the different domain includes placing a discovery interest on an inter-island information centric network.
- the discovery interest includes a services filter.
- a response to the discovery interest has contents based on the services filter.
- the discovery interest is sent at regular intervals.
- the discovery interest is different than other interests of the inter-island information centric network such that a node of the inter-island information centric network does not remove the discovery interest, from a pending interest structure, in response to a single response to the discovery interest.
- the discovery interest includes a TTL.
- the discovery interest is removed from the pending interest structure based on the TTL.
- the discovery interest includes a total count.
- the discovery interest is removed from the pending interest structure based on a number of responses received to the discovery interest and the total count.
- the request is modified to create an inter-domain request.
- modifying the request to create the inter-domain request includes adding the destination domain to the data identifier.
- the data identifier is hierarchical.
- the domain identifier is at a top of the hierarchy.
- the domain identifier is flagged in the data identifier.
- the inter-domain request is communicated to an inter-domain information centric network.
- the method 500 may be extended to include receiving a discovery interest from an inter-island information centric network and providing a response to the discovery interest based on selectors in the discovery interest and a database of intra-island services.
- providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes extracting a security identifier from the discovery interest and filtering entries of the database of intra-island services based on the security identifier.
- providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes filtering entries of the database based on the selectors.
- the method 500 may be extended to include communicating a second discovery interest to an intra-island information centric network from the island domain node. Service metrics from other intra-island nodes may then be received. The database of intra-island services may be updated based on the received service metrics.
- the systems, devices, and techniques described above provide a variety of benefits over existing IoT networks. For example, if details of a system are exposed at the ICN level, there is no need to call up into the application layer of to find information published by its private cloud. Having such information allows for a far greater variety of interactions between different IoT systems even though they may be deployed by different vendors using different wireless technologies, greatly improving interoperability. Further, having a clearly defined interface at the ICN level allows third party analytics to be deployed across IoT installations, providing a broader view an environment than would otherwise be possible. This also permits flexibility in deploying new application. Additionally, exposing data or services across ICN islands enables a data economy allowing the combination of data across islands in new and interesting ways, which may be unanticipated by the designers of the original islands.
- FIG. 6 illustrates a block diagram of an example machine 600 upon which any one or more of the techniques (e.g., methodologies) discussed herein may perform. Examples, as described herein, may include, or may operate by, logic or a number of components, or mechanisms in the machine 600 .
- Circuitry e.g., processing circuitry
- Circuitry membership may be flexible over time. Circuitries include members that may, alone or in combination, perform specified operations when operating. In an example, hardware of the circuitry may be immutably designed to carry out a specific operation (e.g., hardwired).
- the hardware of the circuitry may include variably connected physical components (e.g., execution units, transistors, simple circuits, etc.) including a machine readable medium physically modified (e.g., magnetically, electrically, moveable placement of invariant massed particles, etc.) to encode instructions of the specific operation.
- a machine readable medium physically modified (e.g., magnetically, electrically, moveable placement of invariant massed particles, etc.) to encode instructions of the specific operation.
- the instructions enable embedded hardware (e.g., the execution units or a loading mechanism) to create members of the circuitry in hardware via the variable connections to carry out portions of the specific operation when in operation.
- the machine readable medium elements are part of the circuitry or are communicatively coupled to the other components of the circuitry when the device is operating.
- any of the physical components may be used in more than one member of more than one circuitry.
- execution units may be used in a first circuit of a first circuitry at one point in time and reused by a second circuit in the first circuitry, or by a third circuit in a second circuitry at a different time. Additional examples of these components with respect to the machine 600 follow.
- the machine 600 may operate as a standalone device or may be connected (e.g., networked) to other machines. In a networked deployment, the machine 600 may operate in the capacity of a server machine, a client machine, or both in server-client network environments. In an example, the machine 600 may act as a peer machine in peer-to-peer (P2P) (or other distributed) network environment.
- the machine 600 may be a personal computer (PC), a tablet PC, a set-top box (STB), a personal digital assistant (PDA), a mobile telephone, a web appliance, a network router, switch or bridge, or any machine capable of executing instructions (sequential or otherwise) that specify actions to be taken by that machine.
- machine shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein, such as cloud computing, software as a service (SaaS), other computer cluster configurations.
- cloud computing software as a service
- SaaS software as a service
- the machine 600 may include a hardware processor 602 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), a hardware processor core, or any combination thereof), a main memory 604 , a static memory (e.g., memory or storage for firmware, microcode, a basic-input-output (BIOS), unified extensible firmware interface (UEFI), etc.) 606 , and mass storage 621 (e.g., hard drive, tape drive, flash storage, or other block devices) some or all of which may communicate with each other via an interlink (e.g., bus) 608 .
- a hardware processor 602 e.g., a central processing unit (CPU), a graphics processing unit (GPU), a hardware processor core, or any combination thereof
- main memory 604 e.g., a static memory (e.g., memory or storage for firmware, microcode, a basic-input-output (BIOS), unified extensible firmware interface (UEFI), etc.) 60
- the machine 600 may further include a display unit 610 , an alphanumeric input device 612 (e.g., a keyboard), and a user interface (UI) navigation device 614 (e.g., a mouse).
- the display unit 610 , input device 612 and UI navigation device 614 may be a touch screen display.
- the machine 600 may additionally include a storage device (e.g., drive unit) 616 , a signal generation device 618 (e.g., a speaker), a network interface device 620 , and one or more sensors 621 , such as a global positioning system (GPS) sensor, compass, accelerometer, or other sensor.
- GPS global positioning system
- the machine 600 may include an output controller 628 , such as a serial (e.g., universal serial bus (USB), parallel, or other wired or wireless (e.g., infrared (IR), near field communication (NFC), etc.) connection to communicate or control one or more peripheral devices (e.g., a printer, card reader, etc.).
- a serial e.g., universal serial bus (USB), parallel, or other wired or wireless (e.g., infrared (IR), near field communication (NFC), etc.) connection to communicate or control one or more peripheral devices (e.g., a printer, card reader, etc.).
- USB universal serial bus
- IR infrared
- NFC near field communication
- Registers of the processor 602 , the main memory 604 , the static memory 606 , or the mass storage 616 may be, or include, a machine readable medium 622 on which is stored one or more sets of data structures or instructions 624 (e.g., software) embodying or utilized by any one or more of the techniques or functions described herein.
- the instructions 624 may also reside, completely or at least partially, within any of registers of the processor 602 , the main memory 604 , the static memory 606 , or the mass storage 616 during execution thereof by the machine 600 .
- one or any combination of the hardware processor 602 , the main memory 604 , the static memory 606 , or the mass storage 616 may constitute the machine readable media 602 .
- machine readable medium 622 is illustrated as a single medium, the term “machine readable medium” may include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) configured to store the one or more instructions 624 .
- machine readable medium may include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) configured to store the one or more instructions 624 .
- machine readable medium may include any medium that is capable of storing, encoding, or carrying instructions for execution by the machine 600 and that cause the machine 600 to perform any one or more of the techniques of the present disclosure, or that is capable of storing, encoding or carrying data structures used by or associated with such instructions.
- Non-limiting machine readable medium examples may include solid-state memories, optical media, magnetic media, and signals (e.g., radio frequency signals, other photon based signals, sound signals, etc.).
- a non-transitory machine readable medium comprises a machine readable medium with a plurality of particles having invariant (e.g., rest) mass, and thus are compositions of matter.
- non-transitory machine-readable media are machine readable media that do not include transitory propagating signals.
- Specific examples of non-transitory machine readable media may include: non-volatile memory, such as semiconductor memory devices (e.g., Electrically Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM)) and flash memory devices; magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks.
- non-volatile memory such as semiconductor memory devices (e.g., Electrically Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM)) and flash memory devices
- EPROM Electrically Programmable Read-Only Memory
- EEPROM Electrically Erasable Programmable Read-Only Memory
- flash memory devices e.g., electrically Erasable Programmable Read-Only Memory (EEPROM)
- EPROM Electrically Programmable Read-On
- the instructions 624 may be further transmitted or received over a communications network 626 using a transmission medium via the network interface device 620 utilizing any one of several transfer protocols (e.g., frame relay, internet protocol (IP), transmission control protocol (TCP), user datagram protocol (UDP), hypertext transfer protocol (HTTP), etc.).
- transfer protocols e.g., frame relay, internet protocol (IP), transmission control protocol (TCP), user datagram protocol (UDP), hypertext transfer protocol (HTTP), etc.
- Example communication networks may include a local area network (LAN), a wide area network (WAN), a packet data network (e.g., the Internet), mobile telephone networks (e.g., cellular networks), Plain Old Telephone (POTS) networks, and wireless data networks (e.g., Institute of Electrical and Electronics Engineers (IEEE) 802.11 family of standards known as Wi-Fi®, IEEE 802.16 family of standards known as WiMax®), IEEE 802.15.4 family of standards, peer-to-peer (P2P) networks, among others, in an example, the network interface device 620 may include one or more physical jacks (e.g., Ethernet, coaxial, or phone jacks) or one or more antennas to connect to the communications network 626 .
- LAN local area network
- WAN wide area network
- POTS Plain Old Telephone
- wireless data networks e.g., Institute of Electrical and Electronics Engineers (IEEE) 802.11 family of standards known as Wi-Fi®, IEEE 802.16 family of standards known as WiMax®
- the network interface device 620 may include a plurality of antennas to wirelessly communicate using at least one of single-input multiple-output (SIMO), multiple-input multiple-output (MIMO), or multiple-input single-output (MISO) techniques.
- SIMO single-input multiple-output
- MIMO multiple-input multiple-output
- MISO multiple-input single-output
- transmission medium shall be taken to include any intangible medium that is capable of storing, encoding or carrying instructions for execution by the machine 600 , and includes digital or analog communications signals or other intangible medium to facilitate communication of such software.
- a transmission medium is a machine readable medium.
- Example 1 is a system for information centric network island bridging, the system comprising: a network interface to receive a request at an island domain node in an information centric network, the request including a data identifier; and a controller to: use an inter-domain discovery to identify a destination domain corresponding to the data identifier; modify the request to create an inter-domain request; and communicate the inter-domain request to an inter-domain information centric network.
- Example 2 the subject matter of Example 1 optionally includes wherein the island domain node belongs to multiple domains.
- Example 3 the subject matter of any one or more of Examples 1-2 optionally include wherein, to modify the request to create the inter-domain request, the controller is to add the destination domain to the data identifier.
- Example 4 the subject matter of Example 3 optionally includes wherein the data identifier is hierarchical, and wherein the domain identifier is at a top of the hierarchy.
- Example 5 the subject matter of any one or more of Examples 3-4 optionally include wherein the domain identifier is flagged in the data identifier.
- Example 6 the subject matter of any one or more of Examples 1-5 optionally include wherein, to use the inter-domain discovery, the controller is to: query a local store of domain capabilities with the data identifier to produce search results; and return a set of domain identifiers from the search results.
- Example 7 the subject matter of Example 6 optionally includes wherein the controller is to: obtain a service set of a different domain than the domain; and update the local store of the island domain node with the service set.
- Example 8 the subject matter of Example 7 optionally includes wherein, to obtain the service set of the different domain, the controller is to query an inter-domain service.
- Example 9 the subject matter of any one or more of Examples 7-8 optionally include wherein, to obtain the service set of the different domain, the controller is to place a discovery interest on an inter-island information centric network.
- Example 10 the subject matter of Example 9 optionally includes wherein the discovery interest is different than other interests of the inter-island information centric network such that a node of the inter-island information centric network does not remove the discovery interest, from a pending interest structure, in response to a single response to the discovery interest.
- Example 11 the subject matter of Example 10 optionally includes wherein the discovery interest includes a time-to-live, and wherein the discovery interest is removed from the pending interest structure based on the time-to-live.
- Example 12 the subject matter of any one or more of Examples 10-11 optionally include wherein the discovery interest includes a total count, and wherein the discovery interest is removed from the pending interest structure based on a number of responses received to the discovery interest and the total count.
- Example 13 the subject matter of any one or more of Examples 9-12 optionally include wherein the discovery interest includes a services filter, and wherein a response to the discovery interest has contents based on the services filter.
- Example 14 the subject matter of any one or more of Examples 9-13 optionally include wherein the discovery interest is sent at regular intervals.
- Example 15 the subject matter of any one or more of Examples 1-14 optionally include wherein the network interface is to receive a discovery interest from an inter-island information centric network; and wherein the controller is to provide a response to the discovery interest based on selectors in the discovery interest and a database of intra-island services.
- Example 16 the subject matter of Example 15 optionally includes wherein, to provide the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services, the controller is to extract a security identifier from the discovery interest and filtering entries of the database of intra-island services based on the security identifier.
- Example 17 the subject matter of any one or more of Examples 15-16 optionally include wherein, to provide the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services, the controller is to filter entries of the database based on the selectors.
- Example 18 the subject matter of any one or more of Examples 15-17 optionally include wherein the controller is to: communicate a second discovery interest to an intra-island information centric network from the island domain node; receive service metrics from other intra-island nodes; and update the database of intra-island services based on the received service metrics.
- Example 19 is a method for information centric network island bridging, the method comprising: receiving a request at an island domain node in an information centric network, the request including a data identifier; using an inter-domain discovery to identify a destination domain corresponding to the data identifier; modifying the request to create an inter-domain request; and communicating the inter-domain request to an inter-domain information centric network.
- Example 20 the subject matter of Example 19 optionally includes wherein the island domain node belongs to multiple domains.
- Example 21 the subject matter of any one or more of Examples 19-20 optionally include wherein modifying the request to create the inter-domain request includes adding the destination domain to the data identifier.
- Example 22 the subject matter of Example 21 optionally includes wherein the data identifier is hierarchical, and wherein the domain identifier is at a top of the hierarchy.
- Example 23 the subject matter of any one or more of Examples 21-22 optionally include wherein the domain identifier is flagged in the data identifier.
- Example 24 the subject matter of any one or more of Examples 19-23 optionally include wherein using the inter-domain discovery includes: querying a local store of domain capabilities with the data identifier to produce search results; and returning a set of domain identifiers from the search results.
- Example 25 the subject matter of Example 24 optionally includes obtaining a service set of a different domain than the domain; and updating the local store of the island domain node with the service set.
- Example 26 the subject matter of Example 25 optionally includes wherein obtaining the service set of the different domain includes querying an inter-domain service.
- Example 27 the subject matter of any one or more of Examples 25-26 optionally include wherein obtaining the service set of the different domain includes placing a discovery interest on an inter-island information centric network.
- Example 28 the subject matter of Example 27 optionally includes wherein the discovery interest is different than other interests of the inter-island information centric network such that a node of the inter-island information centric network does not remove the discovery interest, from a pending interest structure, in response to a single response to the discovery interest.
- Example 29 the subject matter of Example 28 optionally includes wherein the discovery interest includes a time-to-live, and wherein the discovery interest is removed from the pending interest structure based on the time-to-live.
- Example 30 the subject matter of any one or more of Examples 28-29 optionally include wherein the discovery interest includes a total count, and wherein the discovery interest is removed from the pending interest structure based on a number of responses received to the discovery interest and the total count.
- Example 31 the subject matter of any one or more of Examples 27-30 optionally include wherein the discovery interest includes a services filter, and wherein a response to the discovery interest has contents based on the services filter.
- Example 32 the subject matter of any one or more of Examples 27-31 optionally include wherein the discovery interest is sent at regular intervals.
- Example 33 the subject matter of any one or more of Examples 19-32 optionally include receiving a discovery interest from an inter-island information centric network; and providing a response to the discovery interest based on selectors in the discovery interest and a database of intra-island services.
- Example 34 the subject matter of Example 33 optionally includes wherein providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes extracting a security identifier from the discovery interest and filtering entries of the database of intra-island services based on the security identifier.
- Example 35 the subject matter of any one or more of Examples 33-34 optionally include wherein providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes filtering entries of the database based on the selectors.
- Example 36 the subject matter of any one or more of Examples 33-35 optionally include communicating a second discovery interest to an intra-island information centric network from the island domain node; receiving service metrics from other intra-island nodes; and updating the database of intra-island services based on the received service metrics.
- Example 37 is at least one machine readable medium including instructions that, when executed by processing circuitry, cause the processing circuitry to perform any method of Examples 19-36.
- Example 38 is a system comprising means to perform any method of Examples 19-36.
- Example 39 is at least one machine readable medium including instructions for information centric network island bridging, the instructions, when executed by processing circuitry, cause the processing circuitry to perform operations comprising: receiving a request at an island domain node in an information centric network, the request including a data identifier; using an inter-domain discovery to identify a destination domain corresponding to the data identifier; modifying the request to create an inter-domain request; and communicating the inter-domain request to an inter-domain information centric network.
- Example 40 the subject matter of Example 39 optionally includes wherein the island domain node belongs to multiple domains.
- Example 41 the subject matter of any one or more of Examples 39-40 optionally include wherein modifying the request to create the inter-domain request includes adding the destination domain to the data identifier.
- Example 42 the subject matter of Example 41 optionally includes wherein the data identifier is hierarchical, and wherein the domain identifier is at a top of the hierarchy.
- Example 43 the subject matter of any one or more of Examples 41-42 optionally include wherein the domain identifier is flagged in the data identifier.
- Example 44 the subject matter of any one or more of Examples 39-43 optionally include wherein using the inter-domain discovery includes: querying a local store of domain capabilities with the data identifier to produce search results; and returning a set of domain identifiers from the search results.
- Example 45 the subject matter of Example 44 optionally includes wherein the operations include: obtaining a service set of a different domain than the domain; and updating the local store of the island domain node with the service set.
- Example 46 the subject matter of Example 45 optionally includes wherein obtaining the service set of the different domain includes querying an inter-domain service.
- Example 47 the subject matter of any one or more of Examples 45-46 optionally include wherein obtaining the service set of the different domain includes placing a discovery interest on an inter-island information centric network.
- Example 48 the subject matter of Example 47 optionally includes wherein the discovery interest is different than other interests of the inter-island information centric network such that a node of the inter-island information centric network does not remove the discovery interest, from a pending interest structure, in response to a single response to the discovery interest.
- Example 49 the subject matter of Example 48 optionally includes wherein the discovery interest includes a time-to-live, and wherein the discovery interest is removed from the pending interest structure based on the time-to-live.
- Example 50 the subject matter of any one or more of Examples 48-49 optionally include wherein the discovery interest includes a total count, and wherein the discovery interest is removed from the pending interest structure based on a number of responses received to the discovery interest and the total count.
- Example 51 the subject matter of any one or more of Examples 47-50 optionally include wherein the discovery interest includes a services filter, and wherein a response to the discovery interest has contents based on the services filter.
- Example 52 the subject matter of any one or more of Examples 47-51 optionally include wherein the discovery interest is sent at regular intervals.
- Example 53 the subject matter of any one or more of Examples 39-52 optionally include wherein the operations include: receiving a discovery interest from an inter-island information centric network; and providing a response to the discovery interest based on selectors in the discovery interest and a database of intra-island services.
- Example 54 the subject matter of Example 53 optionally includes wherein providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes extracting a security identifier from the discovery interest and filtering entries of the database of intra-island services based on the security identifier.
- Example 55 the subject matter of any one or more of Examples 53-54 optionally include wherein providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes filtering entries of the database based on the selectors.
- Example 56 the subject matter of any one or more of Examples 53-55 optionally include wherein the operations include: communicating a second discovery interest to an intra-island information centric network from the island domain node; receiving service metrics from other intra-island nodes; and updating the database of intra-island services based on the received service metrics.
- Example 57 is a system for information centric network island bridging, the system comprising: means for receiving a request at an island domain node in an information centric network, the request including a data identifier; means for using an inter-domain discovery to identify a destination domain corresponding to the data identifier; means for modifying the request to create an inter-domain request; and means for communicating the inter-domain request to an inter-domain information centric network.
- Example 58 the subject matter of Example 57 optionally includes wherein the island domain node belongs to multiple domains.
- Example 59 the subject matter of any one or more of Examples 57-58 optionally include wherein the means for modifying the request to create the inter-domain request includes means for adding the destination domain to the data identifier.
- Example 60 the subject matter of Example 59 optionally includes wherein the data identifier is hierarchical, and wherein the domain identifier is at a top of the hierarchy.
- Example 61 the subject matter of any one or more of Examples 59-60 optionally include wherein the domain identifier is flagged in the data identifier.
- Example 62 the subject matter of any one or more of Examples 57-61 optionally include wherein the means for using the inter-domain discovery includes: means for querying a local store of domain capabilities with the data identifier to produce search results; and means for returning a set of domain identifiers from the search results.
- Example 63 the subject matter of Example 62 optionally includes means for obtaining a service set of a different domain than the domain; and means for updating the local store of the island domain node with the service set.
- Example 64 the subject matter of Example 63 optionally includes wherein the means for obtaining the service set of the different domain includes means for querying an inter-domain service.
- Example 65 the subject matter of any one or more of Examples 63-64 optionally include wherein means for obtaining the service set of the different domain includes means for placing a discovery interest on an inter-island information centric network.
- Example 66 the subject matter of Example 65 optionally includes wherein the discovery interest is different than other interests of the inter-island information centric network such that a node of the inter-island information centric network does not remove the discovery interest, from a pending interest structure, in response to a single response to the discovery interest.
- Example 67 the subject matter of Example 66 optionally includes wherein the discovery interest includes a time-to-live, and wherein the discovery interest is removed from the pending interest structure based on the time-to-live.
- Example 68 the subject matter of any one or more of Examples 66-67 optionally include wherein the discovery interest includes a total count, and wherein the discovery interest is removed from the pending interest structure based on a number of responses received to the discovery interest and the total count.
- Example 69 the subject matter of any one or more of Examples 65-68 optionally include wherein the discovery interest includes a services filter, and wherein a response to the discovery interest has contents based on the services filter.
- Example 70 the subject matter of any one or more of Examples 65-69 optionally include wherein the discovery interest is sent at regular intervals.
- Example 71 the subject matter of any one or more of Examples 57-70 optionally include means for receiving a discovery interest from an inter-island information centric network; and means for providing a response to the discovery interest based on selectors in the discovery interest and a database of intra-island services.
- Example 72 the subject matter of Example 71 optionally includes wherein the means for providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes means for extracting a security identifier from the discovery interest and filtering entries of the database of intra-island services based on the security identifier.
- Example 73 the subject matter of any one or more of Examples 71-72 optionally include wherein the means for providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes means for filtering entries of the database based on the selectors.
- Example 74 the subject matter of any one or more of Examples 71-73 optionally include means for communicating a second discovery interest to an intra-island information centric network front the island domain node; means for receiving service metrics from other intra-island nodes; and means for updating the database of intra-island services based on the received service metrics.
- Example 75 is at least one machine-readable medium including instructions, which when executed by a machine, cause the machine to perform operations of any of the operations of Examples 1-74.
- Example 76 is an apparatus comprising means for performing any of the operations of Examples 1-74.
- Example 77 is a system to perform the operations of any of the Examples 1-74.
- Example 78 is a method to perform the operations of any of the Examples 1-74.
- the terms “a” or “an” are used, as is common in patent documents, to include one or more than one, independent of any other instances or usages of “at least one” or “one or more.”
- the term “or” is used to refer to a nonexclusive or, such that “A or B” includes “A but not B,” “B but not A,” and “A and B,” unless otherwise indicated.
Abstract
Description
- This patent application claims the benefit of priority, under 35 U.S.C. § 119, to U.S. Provisional Application Ser. No., 62/424,985, titled “INFORMATION-CENTRIC NETWORKING METHODS AND APPARATUSES” and filed on Nov. 21, 2016, the entirety of which is hereby incorporated by reference herein.
- Embodiments described herein generally relate to computer network communications and more specifically to information centric network (ICN) island bridging.
- The Internet of Things (IoT) is an emerging class of devices and connections. Generally, IoT devices integrate components that may have previously lacked communication mechanisms with each other and other networked entities to widely provide access to the IoT device. Example IoT devices may include sensors, such as cameras, thermometers, moisture sensors, light sensors, motion sensors, and the like. Other IoT devices may include appliances (e.g., a refrigerator, oven, washing machine, dryer, water heater, water softener, etc.), home automation components (e.g., lights, thermostats, locks, doors, etc.), industrial automation e.g., machinery, lights, access mechanisms, etc.), and even furniture.
- Some IoT installations are part of larger functional solutions and bundled as a product. For example, a security company may offer cameras, motion sensors, electronic locks, etc. as part of a security product in a home or business. Other products may include home automation (e.g., lights, thermostats, etc.), inventory management (e.g., radio frequency identification (RFID) readers), or workplace health and safety systems (e.g., equipment monitors, employee activity monitors, etc.). Several of these IoT based products may be installed in a single location or may have overlapping areas of operation (e.g., a security system and a home automation system may coexist in the same home).
- In the drawings, which are not necessarily drawn to scale, like numerals may describe similar components in different views. Like numerals having different letter suffixes may represent different instances of similar components. The drawings illustrate generally, by way of example, but not by way of limitation, various embodiments discussed in the present document.
-
FIG. 1 is a block diagram of an example of an environment including a system for ICN island bridging, according to an embodiment. -
FIG. 2 illustrates an example of ICN island bridging, according to an embodiment. -
FIG. 3 illustrates an example of an ICN and routing table, according to an embodiment. -
FIG. 4 illustrates an example of an ICN and routing table, according to an embodiment, -
FIG. 5 illustrates a flow diagram of an example of a method for ICN island bridging, according to an embodiment. -
FIG. 6 is a block diagram illustrating an example of a machine upon which one or more embodiments may be implemented. - Different types of IoT installations (e.g., applications, products, functional domains, etc.) may exist within a single larger entity such as a business or a home for different purposes such as security, lighting, heating and cooling, etc. Although such systems may be physically located in the same building and belong to the same owner, they are often unable to interact directly with each other. That is, an IoT system providing a service, such as smart lighting, is typically designed as a vertically integrated system comprising the entire hardware and software stack. Thus, the system typically includes underlying sensing or actuating devices connected using either a wireless or a wired technology as appropriate with a user interface to allow users to interact with the system. Even if the system comprises multiple applications (e.g., light and temperature sensors in the same IoT system), it is commonly proprietary and closed.
- The cause of inter-system interoperability is often a lack of a common framework to share data from one system to another. To address this issue, some have implemented application layer solutions using a customized application for interaction between the systems. This application layer approach generally involves designing interoperation between specific higher level application and involves more computational resources resulting in constrained (e.g., not general) or inefficient operations. A more general and lower-level (e.g., at the network layer) solution may result in better performance and efficiency than would otherwise be achieved. The Open Connectivity Consortium (OCF) is working to create an interoperability layer to work with different types of sensors. However, OCF is focusing on abstracting the underlying sensors to the IoT applications and there is little effort to bridge different IoT systems.
- Achieving efficient IoT system interoperability may provide several benefits. For example, given a surveillance system that detects intrusion in a certain area of the home, the surveillance system may benefit from increased lighting in that area for better video quality. In this example, the surveillance system would benefit from being able to inform the lighting system about its requirements and coordinate activities such as increasing or decreasing the light intensity for a surveillance camera. The current lack of interoperability of disparate systems impedes this inter-system cooperation because details of the lighting system and its controls are not generally available to the surveillance system. It would, however, be significantly more efficient if such data were available within the network, as opposed to an application layer. An Information Centric Network (ICN) may be used to provide the missing interoperability functionality from current installations. If the data (e.g., control data or sensing data) were available at the ICN layer rather than at the application layer, efficiency and scalability of using this data between different IoT systems would be improved.
- ICNs are emerging as a solution to some data congestion issues that wide-spread IoT device deployments may bring. ICN is an umbrella term for a new networking paradigm in which information itself is named and requested from the network instead of hosts (e.g., machines that provide information). In a host-based networking paradigm, such as used in the Internet protocol (IP), a device locates a host and requests content from the host. The network understands how to route (e.g., direct) packets based on the address specified in the packet. In contrast, ICN does not include a request for a particular machine, and does not use addresses. Instead, to get content, a device requests named content from the network itself. The content request may be called an interest and transmitted via an interest packet. As the interest packet traverses network devices (e.g., routers), a record of the interest is kept, for example, in a pending interest table. When a device with content matching the name in the interest is encountered, that device may send a data packet in response to the interest packet. Typically, the data packet is tracked back through the network to the source by following the traces of the interest left in the network devices.
- Matching the named data in an ICN may follow several strategies. Generally, the data is named hierarchically, such as with a universal resource identifier (URI). For example, a video may be named www.somedomain.com/videos/v8675309. Here, the hierarchy may be the publisher, “www.somedomain.com,” a sub-category, “videos,” and the canonical identification “v8675309.” As an interest traverse an ICN, ICN equipment will generally attempt to match the name to a greatest degree. Thus, if an ICN device has a cached item or route for both “www.somedomain.com/videos” and “www.somedomain.com/videos/v8675309,” the ICN device will match the later for an interest packet specifying “www.somedomain.com/videos/v8675309.” In an example, an expression may be used in matching by the ICN device. For example, the interest packet may specify “www.somedomain.com/videos/v8675*” where ‘*’ is a wildcard. Thus, any cached item or route that includes the data other than the wildcard will be matched. In an example, additional meta-data may be attached to the interest packet, the cached data, or the route, to provide an additional level of matching. For example, the data name may be specified as “www.somedomain.com/videos/v8675309,” but also include a version number or timestamp, time range, endorsement, etc. In this example, the interest packet may specify the name and also the version number, or version range, desired, The matching may then locate routes or cached data matching the name and then perform the additional comparison of meta-data or the like to arrive at an ultimate decision as to whether data or a route matches the interest packet for responding to the interest packet or forwarding the interest packet respectively.
- ICN has advantages over host-based networking because the data segments are individually named. This permits aggressive caching throughout the network as a network device may provide a data packet in response to an interest as easily as an original author. Accordingly, it is less likely that the same segment of a network will transmit duplicates of the same data requested by different devices. Such an architecture is useful when a network branches from a central information provider to many leaves, such as occurs in many IoT deployments.
- Fine grained encryption is another feature of many ICNs. A typical data packet includes a name for the data that matches the name in the interest packet. Further, the data packet includes the requested data and may include additional information that may, for example, be used to filter similarly named data (e.g., by creation time, expiration time, version, etc.). To address malicious entities providing false information under the same name, the data packet may also encrypt its contents with a publisher key or provide a cryptographic hash of the data and the name. Thus, knowing the key (e.g., from a certificate of an expected publisher) allows the recipient to ascertain whether the data is from that publisher. This technique also allows the aggressive caching of the data packets throughout the network because each data packet is self-contained and secure. This contrasts with many host-based networks that rely on encrypting a connection between two hosts to securely communicate. With connection encryption, the network devices have no access to the data to cache the data.
- Example ICNs include content centric networking (CCN), as specified in the Internet Engineering Task Force (IETF) draft specifications for CCNx 0.x and CCN. 1.x, and named data networking (NDN), as specified in the NDN technical report DND-0001.
- IoT system interoperability is not simply solved by using standard ICN implementations. The problem of bridging between two or more independent IoT systems configured as ICN islands (e.g., domains or other logical encapsulations within an ICN that may be within the same subnet or different subnets). ICN naming domains that support an IoT context or application as well as ICN island attribute exposure are described to uniquely identify and characterize the capabilities of an ICN island as a logical or functional entity to support bridging.
- To use an ICN based information plane to bridge multiple ICN islands (e.g., that may be built on networks of heterogeneous functions with either the same or heterogeneous connectivity), participating ICN islands identify the various types of information that a given ICN island is willing to expose to other ICN islands as a logical functional entity.
- In an example, the exposed attributes include content generated within the ICN island. Such content may include raw sensor data, processed metrics, or analytics, among others.
- In an example, the exposed attributes include attributes of the ICN island itself. Such attributes may include the ICN island's name, functions (e.g., lighting, security, etc.), scope of operation (e.g., does it span a home, a building, a park, a business, etc.), among others.
- In an example, the exposed attributes include metrics (e.g., demographics) about the devices that are in the ICN island. Such metrics may include attributes of the number of devices (e.g., sensors, actuators, etc.) within the ICN island, device locations within the ICN island, a mapping of device physical locations to a logical naming (e.g., addressing) plan (e.g., and its relationship to the namespace domain), the radio technology used by the various devices, or specific permission levels for the various types of functions supported by the different devices within the ICN island, among others.
- In an example, the exposed attributes include connectivity information about other connected ICN islands. This connectivity information may be used to construct routes to direct traffic, such as how to reach distant or disconnected ICN islands.
- In an example, the exposed attributes include access policies for the ICN island, for the devices within the ICN island, devices in different ICN islands, or data available (e.g., generated or derived) from the entities within each island. Access policies may take several forms, such as access control lists (ACLs), entry via a clearinghouse, etc.
- Within an ICN island, standard ICN communication is sufficient—intra-island communication may use ICN style publish-subscribe models to communicate. Inter-island communication however, is achieved via one or more enhancements to the standard ICN communications model. In an example, a mapping from one network (e.g., a wireless network for lighting or surveillance systems) to another is implemented using a single naming hierarchy. Here, the network plane (e.g., name-based routing) bridges islands with heterogeneous network connectivity and without modification. In an example, name spaces from a first ICN island are mapped to work in a second ICN island. This mapping addresses potential name space collisions. For example, the name of an entity in the first ICN island is mapped to the second ICN island by prepending a value corresponding to the first IC island (e.g., a prefix of the first ICN island is present whenever the entity is named outside of the first ICN island).
- In an example, entities within an island are named based on physical or logical node or system clusters as well as entity data features. For example, nodes that have similar attributes describing their location, functions, other criteria for bridging or group formation have names representing these relationships.
- In an example, ICN discovery (e.g., search) mechanisms are modified to allow the ICN islands to be discovered based on their exposed attributes. In an example, ICN islands advertise their connectivity or the connectivity of other connected or nested ICN islands. This allows construction of ICN routes to connect ICN islands that are not directly connected.
- In an example, a new publication-subscription model including new “discovery” packets analogous to interest packets allows ICN island discovery in terms of what type of systems are connected (e.g., light management, security, temperature, etc.). In an example, the discovery (e.g., subscription request) is directed to a centralized system (e.g., a database) to serve as an efficient clearinghouse of ICN island capabilities and interfaces. In an example, advertisement packets (e.g., analogous to ICN publish or service advertisement packets) may be used to maintain the central system's records.
- ICN island bridging offers an efficient and universal mechanism to permit interoperability between different IoT systems. The ICN modifications described throughout enable ICN island interactions without resorting to application layer work-grounds, resulting in a robust networking solution to a variety of IoT installations. Variations and examples of these ICN improvements to support ICN islands and ICN island bridging are discussed below.
-
FIG. 1 is a block diagram of an example of anenvironment 100 including asystem 105 for ICN island bridging, according to an embodiment. Theenvironment 100 includes a first ICN island 140 (e.g., a home automation system) and a second ICN island 150 (e.g., a security system). The first ICN island includes a content router communicating with an upstairs light and a downstairs light. The second ICN island includes two content routers, one of which communicates with an upstairs camera and a downstairs camera, the second of which communicates with an offsitesecurity data center 155. - The
system 105 includes anetwork interface 110, acontroller 125, and adata store 130. The components of thesystem 105 are implemented in computer hardware, such as circuitry. As illustrated, thesystem 105 is a content router that is in both the first and the second ICN islands. Thus, in an example, thesystem 105 belongs to multiple domains. This, however, is not required. In an example, thesystem 105 is part of only one ICN island with a communication pathway external to the ICN island. As part of an ICN island, thesystem 105 is called an island domain node. For example, as illustrated, thesystem 105 is communicatively coupled via a content router to anon-island server 160. Thus, thesystem 105 is positioned to enable inter-ICN island communications. As noted above, intra-island communications may operate on standard ICN principles. However, as detailed below, thesystem 105 interfaces with intra-island nodes to provide inter-island data in some examples. - The
network controller 110 is arranged to receive a request that includes a data identifier. The data identifier, which may also be called a data name, is an ICN convention whereby data is identified rather than a host from which the data is to be obtained. - The
controller 125 is arranged to use an inter-domain discovery to identify a destination domain corresponding to the data identifier in the request. Standard ICN communication may reveal that the data of the data identifier is available within an ICN island (e.g.,island 140 or island 150). However, thesystem 105 has inter-island communication capabilities and thus may look outside of a given island. In an example, thecontroller 125 is arranged to query alocal store 130 of domain capabilities with the data identifier to produce search results. The local store may be a database, cache, or other data structure to maintain capabilities or attributes of one or more ICN islands. The result of the query include a set of domain identifiers. That is, the data identifier is used as a key, index, or search term to thedata store 130 to return domain identifiers (e.g., names, numbers, or identifiers of one or more ICN islands). The ICN islands corresponding to the domain identifiers thus are likely to be able to satisfy the request. - In an example, the
controller 125 is arranged to obtain a service set of a different domain than the domain to which thesystem 105 belongs. Thecontroller 125 may then update thelocal store 130 with the service set. By this mechanism thecontroller 125 maintains knowledge of the other ICN islands. In an example, to obtain the service set of the different domain, thecontroller 125 queries aninter-domain service 160. Theinter-domain service 160 operates as a clearinghouse for ICN island information. Theinter-domain service 160 may implement access control or other permissions to flexibly control what information is available based on the source and requester. Theinter-domain service 160 may maintain connections (e.g., interests) to its ICN islands such that changes to those islands' attributes are propagated as data packets to theinter-domain service 160. - In an example, to obtain the service set of the different domain, the
controller 125 is arranged to place (e.g., via the network interface 110) a discovery interest on an inter-island information centric network. This is an example of ad-hoc discovery or direct inter-island discovery performed by thesystem 105. In an example, the discovery interest includes a services filter. The services filter includes one or more filters to refine the discovery request. Thus, if thesystem 105 is interested in sensors at the home and no others, a discovery interest to theICN island 150 may include a service filter to limit responses to the house. In an example, a response to the discovery interest has contents based on the services filter. Thus, although thedata center 155 may have attributes or services to expose to thesystem 105, those attributes or services will not be returned because they do not pertain to the house. However, the cameras that are in the house may be exposed to thesystem 105 as a response to the discovery interest. - In an example, the discovery interest is different than other interests of the inter-island information centric network such that a node of the inter-island information centric network does not remove the discovery interest, from a pending interest structure, in response to a single response to the discovery interest. Thus, the discovery interest is persistent in the ICN. This permits multiple responses from different ICN islands to pass through the same content routers. In an example, the discovery interest includes a time-to-live (TTL). Here, the discovery interest may be removed from the pending interest structure (e.g., in content routers) based on the TTL. This allows cleanup of persistent discovery interests. In an example, the discovery interest includes a total count. Here, the discovery interest may be removed from the pending interest structure based on a number of responses received to the discovery interest and the total count. Thus, instead of being persistent for a period of time, the interest may be persistent until a certain number of responses are achieved. This technique permits the discovery interest to be cleaned up more quickly if the number of responses are predictable by the
system 105. In an example, the discovery interest is sent at regular intervals. This is a “refresh” of the discovery interest. By regularly removing and refreshing discovery interests, thesystem 105 may maintain an efficient and continuous discovery of ICN islands without becoming stale. - The
controller 125 is arranged to modify the request to create an inter-domain request. In an example, to modify the request to create the inter-domain request, the controller is arranged to add the destination domain to the data identifier. In an example, the data identifier is hierarchical and the domain identifier is added to the top of the hierarchy. For example, if data is named ‘lighting-system/upstairs/control/intensity’, where ‘/’ is the hierarchical delimiter and moving from left-to-right moves down the hierarchy, the domain identifier ‘lighting-system’ appears at the left-most position. This approach allows an easy naming convention for nested domains. For example, if ICN island ‘lighting-system’ is completely embedded in an ICN island ‘home-control’, the inner domain identifier is placed first and the out domain identifier placed second, resulting in a name ‘/home-control/lighting-system/upstairs/control/intensity’. In an example, the domain identifier is flagged in the data identifier. For example, the data name ‘upstairs/d:lighting-system/control/intensity’ or ‘/upstairs/control/intensity[lighting-system]’ illustrate additional techniques to identify the domain identifier. - The
network controller 110 is arranged to communicate the inter-domain request to an inter-domain information centric network. Once the inter-domain request is communicated to the inter-domain ICN, the request may be satisfied by an entity outside of the requester's ICN island. The modification of the request in this manner permits intra-island naming conventions and to be separated from inter-island naming requirements. This reduces name collisions and permits data naming to be tailored to different environments. Further, the goal of network-layer bridging is achieved, allowing differing IoT installations to communicate with each other while continuing to communicate internally without modification. - The discovery and use of other ICN islands described above has the
system 105 in the role of a user of other ICN islands. Thesystem 105, however, may also serve other ICN islands. In an example, thenetwork interface 110 is arranged to receive a discovery interest from an inter-island information centric network. Thecontroller 125 is arranged to provide a response to the discovery interest based on selectors in the discovery interest and a database (e.g., housed in the local store 130) of intra-island services. The intra-island services may include services provided directly by thesystem 105 as well as those provided by other entities in the system's ICN island. For example, thedata center 155 may send a discovery interest with a selector for the location of the house and lighting services. Thesystem 105 may return a service corresponding to the lights of theICN island 140. As part of the response, thesystem 105 may include the domain identifier for theICN island 140. Thus, upon a subsequent interest to a light ofICN island 140, for example, the appropriate ICN island identifier is applied to the data identifier such that the inter-island ICN correctly routes the interest. Once the interest reaches the destination domain, it may be handled in a variety of ways. In an example, thesystem 105 operates as a gateway, translating the inter-domain data identifier into an appropriate intra-domain identifier. In an example, intra-domain entities know their domain identifier and thus may ignore it in an interest. This permits a simple pass-through model of communication whereby thesystem 105 need not be involved in routing the interest. - The
system 105 maintains a record of service provided by the ICN island to which it belongs. This record may operate similarly to the inter-island discovery discussed above directed to intra-island entities (e.g., discovery interests, etc.). In an example, thesystem 105 may perform ad-hoc querying of intra-island entities upon receipt of the inter-island discovery request. Thus, in an example, thecontroller 125 is arranged to communicate (e.g., via thenetwork interface 110 or via a separate network interface (not shown) dedicated to intra-island communication) a second discovery interest to the intra-island information centric network. Thesystem 105 may then receive service metrics from other intra-island nodes in response to the second discovery interest. Thecontroller 125 is arranged to then update the database of intra--island services based on the received service metrics. - An aspect of inter-system communication not yet addressed is security. A security apparatus permits flexible mixing of different ICN islands. Access control lists (ACLs), based on device or domain identifiers may be implemented. Beyond specifically identifying what entities may receive discovery responses, the security may he based on keys. In this example, the contents of the response are based on a key presented in the discovery interest. Thus, in an example, to provide the response to the discovery interest based on selectors in the discovery interest and the database of intra--island services, the
controller 125 is arranged to extract a security identifier from the discovery interest and filter entries of the database of intra-island services based on the security identifier. In an example. The granularity of the response based on an ACL, key, or combination of both, may be as refined as a single attribute, to the entire ICN -
FIG. 2 illustrates an example of ICN island bridging 200, according to an embodiment. The bridging 200 described below provides additional examples of theenvironment 100 described above. The following discussion is in the context of a home lightingsystem ICN island 205 and a home securitysystem ICN island 215. Entities within the home securitysystem ICN island 215 may use therequest handler 220 to make inter-domain requests to the home lightingsystem ICN island 205. To perform its functions, therequest handler 220 queries thenetwork information database 210 of the home lightingsystem ICN island 205 to discover what services, data, or attributes are accessible to the home securitysystem ICN island 215. - As noted earlier, currently, there are no solutions to the problem of accessing to private clouds of individual IoT applications. Further, there is no framework that supports the sharing of IoT application system information at the networking layer (e.g., plane). Here, however, is described a framework to define IoT subsystems as ICN islands with the ability to share data between each other. The bridging 200 includes a naming scheme to allow inter-island information sharing. Depending on ICN islands cluster configurations (e.g., whether the ICN islands are recursively clustered, hierarchically clustered, or peers), the naming scheme reflects the clustering organization. ICN islands that are recursively clustered have a namespace domain that reflects the nesting nature of the deployments. For example, if two ICN islands are part of the same domain (e.g. they are both in the same home), then the naming scheme reflects the relationship by attaching a common domain name space identifier (e.g., domain identifier) to the ICN islands.
- The bridging 200 uses a modified ICN Island research and discovery mechanism. The mechanism is modified in the sense that it operates differently than standard ICN messaging. For example, the publication-subscription procedure may be changed into a distributed scheme for discovering different ICN islands and sending requests to these ICN islands. To achieve his, the bridging 200 uses a new type of interest packet for “discovering” other (e.g., adjacent) ICN islands. Here, ICN islands may be logically related or physically related. The discovery packets may be called discovery interest packets.
- A discovery interest packet indicates a request for details of ICN islands (e.g., adjacent ICN islands or others). The “selector” section of the discovery interest packet specifies whether the discovery pertains to information about a particular type of island or all the islands within a certain vicinity, for example. The selector section of the discovery interest packet may also contain the physical or logical domain from which the discovery interest originates. For instance, a node may communicate a discovery interest packet requesting details of all ICN islands that are located within a particular building specified by the selector section of the discovery interest packet.
- Discovery packets are forwarded through an inter-domain ICN until they reach a node that is able to respond to the request. The responding node may first check whether the discovery interest packet has permission to access the requested information. If the permissions permit disclosure (e.g., the requesting node, domain, or discovery interest is authorized), the responding node may then determine what level of information it is permitted to provide to the requestor. Once these issues are resolved, the responding node provides, to the extent permitted, the requested information. In an example, the responding node may not actually respond to the discovery interest packet itself. Instead, the responding node may forward the discovery interest packet to a local gateway or coordinator that provides the response. In an example, the response (e.g., data packet)contains details of all nodes within the responding ICN island. In an example, the response also includes details specifying how to control or request changes of the entities in the responding ICN island.
- In an example, the discovery interest packet may include a threshold distance (e.g., logical hops, geographic location, etc.). If the discovery packet reaches a location that is beyond the threshold distance, an inter-domain node (e.g., content router, other node, etc.) may refrain from forwarding the discovery interest packet.
- In an example, to facilitate discovery among several ICN islands, multiple responses are permitted for a single discovery interest packet. To achieve this end, in an example, the response packet has a name that includes the name provided in the discovery interest packet along with a suffix that is unique to the ICN island. Thus any data packet that includes the name in the discovery interest packet will be considered a response and forwarded to the node that sent out the discovery interest packet. In an example, time-out threshold (e.g., TTL) is included in the discovery interest packet. After the time-out expires, the discovery interest packet may be removed from pending interest tables (PITS) in inter-domain ICN nodes instead of when a response to the discovery interest packet passes through a node as it is traditionally done.
- Once the requesting (e.g., subscribing) node receives details of the other ICN islands, the requesting node may use this information to request data, control, services, or adjustments from entities within the responding ICN island or the responding ICN island itself. For example, the requesting node may transmit a request to a manager or coordinator of the responding ICN island in the form of a data packet with a name that includes source and destination node. The ICN island manager or coordinator is then responsible for sending out periodic interest packets to ensure that discovery requests are routed to it. This technique may also be used to signal when the responding ICN island is not accepting requests. For example, if there is some maintenance going on in the home lighting
system ICN island 205, it may refrain from sending the interest packets, indicating that it is not able to take any requests at this time. In an example, once a node sends out a request to an adjacent island, it also immediately subscribes (e.g., transmits an interest packet) to any ACK packets that originate from the adjacent island. - In an example,
NID 210 is used to store information about a given ICN island. In an example, the discovery interest packet is forwarded to theNID 210. TheNID 210 may then apply the security techniques discussed above and provide an appropriate response based on the discovery interest packet and security measures. To perform these functions, theNM 210 includes a registry of information that is consistent and contains information on the ICN island, such as size of the network, other ICN islands with which it connects, the type of nodes installed in it, their geographical location, their permissions (e.g., which determines their accessibility to external nodes of the ICN island, or to internal nodes inside the same ICN island), the possibility of acceptance of commands from external networks—for example, the ability of the home securitysystem ICN island 215 sending actuation commands to the home lightingsystem ICN island 205, the network technology that links them together, etc. In an example, theNID 210 is located within a gateway device that provides connectivity to the different IoT systems in the ICN island and may also act as a proxy to other ICN islands or networks (e.g., the Internet). - Although the
NID 210 is illustrated within the home lightingsystem ICN island 205, in an example, theNID 210 may reside in a hierarchy above the various ICN islands that access it. In this example, theNID 210 may provide query and update services to several ICN islands. Aninter-domain NID 210 may be located at a node accessible by more than one ICN island be it a physical node or a logical node in a cloud. In an example, theNID 210 placement may be changed on-demand (e.g., transferred from one node to another) assist a variety of scenarios, such as mobility scenarios. - To permit
effective NID 210 operation by, for example, therequest handler 220, theNID 220 may implement a standard application programing interface (API). In an example, the API includes one or more of a query call, an update call, a record new data call, an authorization call (e.g., permissions based access). A common API allows multiple vendors or generations of products to interoperate, be they residential or commercial, because there is a standardized way to interoperate and share information between the systems without compromising on security. - The techniques described above result in a self-learning and updating inter-island communication network. This is an important feature as network participation by various nodes change over time, including small time scales, such as every minute or every hour. The self-learning elements of discovery described above permit the
NID 210 to accurately reflect the ICN island throughout these changes. -
FIG. 3 illustrates an example of anICN 300 and routing table 305, according to an embodiment. TheICN 300 follows a traditional peer-based relationship between different ICN islands A, B, C, and D. The routing table 305 is from the perspective of ICN island D and illustrates the network, route, and naming prefix used to access entities within a particular ICN island. Thus, to communicate with a lighting control in ICN island A, an entity from the ICN island D may preface the data name with ‘A’ (e.g., ‘A/light/lighting-control’). Because no entity in D has the ‘A’ preface, the interest is routed outside of D to C where it may be routed directly to A or through B to A. -
FIG. 4 illustrates an example of an ICN 400 and routing table 405, according to an embodiment. It cannot be assumed that all ICN islands that bridge will peer directly, some will be contained within other ICN islands. In these scenarios, name spaces may be modified to avoid name space collisions. In an example, a hierarchical prefix may be used for each ICN island. Thus, as layers of embedded networks are added, the domain identifier of the outermost layer is prepended to a data identifier. - The ICN 400 includes ICN islands E, F, G, H, and I. ICN islands F and G are embedded inside of H. Thus, any communication to or from F and G to E or I must pass through H. The routing table 405, from the perspective of ICN island E, illustrates the routing and naming used to permit communication with embedded domains F and G. This same concept may be extended to bridging logical ICN islands as well as physically separated ICN islands.
-
FIG. 5 illustrates a flow diagram of an example of amethod 500 for ICN island bridging, according to an embodiment. The operations of themethod 500 are implemented in computer hardware, such as that described above, or described below with respect toFIG. 6 (e.g., circuitry). Themethod 500 may be executed in an ICN by an island domain node. In an example, the island domain node belongs to multiple domains. - At
operation 505, a request is received at an island domain node in an information centric network, the request including a data identifier. - At
operation 510, an inter-domain discovery is used to identify a destination domain corresponding to the data identifier. In an example, inter-domain discovery includes querying a local store of domain capabilities with the data identifier to produce search results and returning a set of domain identifiers from the search results. In an example, themethod 500 is extended to include obtaining a service set of a different domain than the domain and updating the local store of the island domain node with the service set. In an example, obtaining the service set of the different domain includes querying an inter-domain service. - In an example, obtaining the service set of the different domain includes placing a discovery interest on an inter-island information centric network. In an example, the discovery interest includes a services filter. In an example, a response to the discovery interest has contents based on the services filter. In an example, the discovery interest is sent at regular intervals.
- In an example, the discovery interest is different than other interests of the inter-island information centric network such that a node of the inter-island information centric network does not remove the discovery interest, from a pending interest structure, in response to a single response to the discovery interest. In an example, the discovery interest includes a TTL. In an example, the discovery interest is removed from the pending interest structure based on the TTL. In an example, the discovery interest includes a total count. In an example, the discovery interest is removed from the pending interest structure based on a number of responses received to the discovery interest and the total count.
- At
operation 515, the request is modified to create an inter-domain request. In an example, modifying the request to create the inter-domain request includes adding the destination domain to the data identifier. In an example, the data identifier is hierarchical. In an example, the domain identifier is at a top of the hierarchy. In an example, the domain identifier is flagged in the data identifier. - At
operation 520, the inter-domain request is communicated to an inter-domain information centric network. - The
method 500 may be extended to include receiving a discovery interest from an inter-island information centric network and providing a response to the discovery interest based on selectors in the discovery interest and a database of intra-island services. In an example, providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes extracting a security identifier from the discovery interest and filtering entries of the database of intra-island services based on the security identifier. In an example, providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes filtering entries of the database based on the selectors. - The
method 500 may be extended to include communicating a second discovery interest to an intra-island information centric network from the island domain node. Service metrics from other intra-island nodes may then be received. The database of intra-island services may be updated based on the received service metrics. - The systems, devices, and techniques described above provide a variety of benefits over existing IoT networks. For example, if details of a system are exposed at the ICN level, there is no need to call up into the application layer of to find information published by its private cloud. Having such information allows for a far greater variety of interactions between different IoT systems even though they may be deployed by different vendors using different wireless technologies, greatly improving interoperability. Further, having a clearly defined interface at the ICN level allows third party analytics to be deployed across IoT installations, providing a broader view an environment than would otherwise be possible. This also permits flexibility in deploying new application. Additionally, exposing data or services across ICN islands enables a data economy allowing the combination of data across islands in new and interesting ways, which may be unanticipated by the designers of the original islands.
-
FIG. 6 illustrates a block diagram of an example machine 600 upon which any one or more of the techniques (e.g., methodologies) discussed herein may perform. Examples, as described herein, may include, or may operate by, logic or a number of components, or mechanisms in the machine 600. Circuitry (e.g., processing circuitry) is a collection of circuits implemented in tangible entities of the machine 600 that include hardware (e.g., simple circuits, gates, logic, etc.). Circuitry membership may be flexible over time. Circuitries include members that may, alone or in combination, perform specified operations when operating. In an example, hardware of the circuitry may be immutably designed to carry out a specific operation (e.g., hardwired). In an example, the hardware of the circuitry may include variably connected physical components (e.g., execution units, transistors, simple circuits, etc.) including a machine readable medium physically modified (e.g., magnetically, electrically, moveable placement of invariant massed particles, etc.) to encode instructions of the specific operation. In connecting the physical components, the underlying electrical properties of a hardware constituent are changed, for example, from an insulator to a conductor or vice versa. The instructions enable embedded hardware (e.g., the execution units or a loading mechanism) to create members of the circuitry in hardware via the variable connections to carry out portions of the specific operation when in operation. Accordingly, in an example, the machine readable medium elements are part of the circuitry or are communicatively coupled to the other components of the circuitry when the device is operating. In an example, any of the physical components may be used in more than one member of more than one circuitry. For example, under operation, execution units may be used in a first circuit of a first circuitry at one point in time and reused by a second circuit in the first circuitry, or by a third circuit in a second circuitry at a different time. Additional examples of these components with respect to the machine 600 follow. - In alternative embodiments, the machine 600 may operate as a standalone device or may be connected (e.g., networked) to other machines. In a networked deployment, the machine 600 may operate in the capacity of a server machine, a client machine, or both in server-client network environments. In an example, the machine 600 may act as a peer machine in peer-to-peer (P2P) (or other distributed) network environment. The machine 600 may be a personal computer (PC), a tablet PC, a set-top box (STB), a personal digital assistant (PDA), a mobile telephone, a web appliance, a network router, switch or bridge, or any machine capable of executing instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while only a single machine is illustrated, the term “machine” shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein, such as cloud computing, software as a service (SaaS), other computer cluster configurations.
- The machine (e.g., computer system) 600 may include a hardware processor 602 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), a hardware processor core, or any combination thereof), a
main memory 604, a static memory (e.g., memory or storage for firmware, microcode, a basic-input-output (BIOS), unified extensible firmware interface (UEFI), etc.) 606, and mass storage 621 (e.g., hard drive, tape drive, flash storage, or other block devices) some or all of which may communicate with each other via an interlink (e.g., bus) 608. The machine 600 may further include adisplay unit 610, an alphanumeric input device 612 (e.g., a keyboard), and a user interface (UI) navigation device 614 (e.g., a mouse). In an example, thedisplay unit 610,input device 612 andUI navigation device 614 may be a touch screen display. The machine 600 may additionally include a storage device (e.g., drive unit) 616, a signal generation device 618 (e.g., a speaker), anetwork interface device 620, and one ormore sensors 621, such as a global positioning system (GPS) sensor, compass, accelerometer, or other sensor. The machine 600 may include an output controller 628, such as a serial (e.g., universal serial bus (USB), parallel, or other wired or wireless (e.g., infrared (IR), near field communication (NFC), etc.) connection to communicate or control one or more peripheral devices (e.g., a printer, card reader, etc.). - Registers of the
processor 602, themain memory 604, thestatic memory 606, or themass storage 616 may be, or include, a machinereadable medium 622 on which is stored one or more sets of data structures or instructions 624 (e.g., software) embodying or utilized by any one or more of the techniques or functions described herein. Theinstructions 624 may also reside, completely or at least partially, within any of registers of theprocessor 602, themain memory 604, thestatic memory 606, or themass storage 616 during execution thereof by the machine 600. In an example, one or any combination of thehardware processor 602, themain memory 604, thestatic memory 606, or themass storage 616 may constitute the machinereadable media 602. While the machinereadable medium 622 is illustrated as a single medium, the term “machine readable medium” may include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) configured to store the one ormore instructions 624. - The term “machine readable medium” may include any medium that is capable of storing, encoding, or carrying instructions for execution by the machine 600 and that cause the machine 600 to perform any one or more of the techniques of the present disclosure, or that is capable of storing, encoding or carrying data structures used by or associated with such instructions. Non-limiting machine readable medium examples may include solid-state memories, optical media, magnetic media, and signals (e.g., radio frequency signals, other photon based signals, sound signals, etc.). In an example, a non-transitory machine readable medium comprises a machine readable medium with a plurality of particles having invariant (e.g., rest) mass, and thus are compositions of matter. Accordingly, non-transitory machine-readable media are machine readable media that do not include transitory propagating signals. Specific examples of non-transitory machine readable media may include: non-volatile memory, such as semiconductor memory devices (e.g., Electrically Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM)) and flash memory devices; magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks.
- The
instructions 624 may be further transmitted or received over acommunications network 626 using a transmission medium via thenetwork interface device 620 utilizing any one of several transfer protocols (e.g., frame relay, internet protocol (IP), transmission control protocol (TCP), user datagram protocol (UDP), hypertext transfer protocol (HTTP), etc.). Example communication networks may include a local area network (LAN), a wide area network (WAN), a packet data network (e.g., the Internet), mobile telephone networks (e.g., cellular networks), Plain Old Telephone (POTS) networks, and wireless data networks (e.g., Institute of Electrical and Electronics Engineers (IEEE) 802.11 family of standards known as Wi-Fi®, IEEE 802.16 family of standards known as WiMax®), IEEE 802.15.4 family of standards, peer-to-peer (P2P) networks, among others, in an example, thenetwork interface device 620 may include one or more physical jacks (e.g., Ethernet, coaxial, or phone jacks) or one or more antennas to connect to thecommunications network 626. In an example, thenetwork interface device 620 may include a plurality of antennas to wirelessly communicate using at least one of single-input multiple-output (SIMO), multiple-input multiple-output (MIMO), or multiple-input single-output (MISO) techniques. The term “transmission medium” shall be taken to include any intangible medium that is capable of storing, encoding or carrying instructions for execution by the machine 600, and includes digital or analog communications signals or other intangible medium to facilitate communication of such software. A transmission medium is a machine readable medium. - Example 1 is a system for information centric network island bridging, the system comprising: a network interface to receive a request at an island domain node in an information centric network, the request including a data identifier; and a controller to: use an inter-domain discovery to identify a destination domain corresponding to the data identifier; modify the request to create an inter-domain request; and communicate the inter-domain request to an inter-domain information centric network.
- In Example 2, the subject matter of Example 1 optionally includes wherein the island domain node belongs to multiple domains.
- In Example 3, the subject matter of any one or more of Examples 1-2 optionally include wherein, to modify the request to create the inter-domain request, the controller is to add the destination domain to the data identifier.
- In Example 4, the subject matter of Example 3 optionally includes wherein the data identifier is hierarchical, and wherein the domain identifier is at a top of the hierarchy.
- In Example 5, the subject matter of any one or more of Examples 3-4 optionally include wherein the domain identifier is flagged in the data identifier.
- In Example 6, the subject matter of any one or more of Examples 1-5 optionally include wherein, to use the inter-domain discovery, the controller is to: query a local store of domain capabilities with the data identifier to produce search results; and return a set of domain identifiers from the search results.
- In Example 7, the subject matter of Example 6 optionally includes wherein the controller is to: obtain a service set of a different domain than the domain; and update the local store of the island domain node with the service set.
- In Example 8, the subject matter of Example 7 optionally includes wherein, to obtain the service set of the different domain, the controller is to query an inter-domain service.
- In Example 9, the subject matter of any one or more of Examples 7-8 optionally include wherein, to obtain the service set of the different domain, the controller is to place a discovery interest on an inter-island information centric network.
- In Example 10, the subject matter of Example 9 optionally includes wherein the discovery interest is different than other interests of the inter-island information centric network such that a node of the inter-island information centric network does not remove the discovery interest, from a pending interest structure, in response to a single response to the discovery interest.
- In Example 11, the subject matter of Example 10 optionally includes wherein the discovery interest includes a time-to-live, and wherein the discovery interest is removed from the pending interest structure based on the time-to-live.
- In Example 12, the subject matter of any one or more of Examples 10-11 optionally include wherein the discovery interest includes a total count, and wherein the discovery interest is removed from the pending interest structure based on a number of responses received to the discovery interest and the total count.
- In Example 13, the subject matter of any one or more of Examples 9-12 optionally include wherein the discovery interest includes a services filter, and wherein a response to the discovery interest has contents based on the services filter.
- In Example 14, the subject matter of any one or more of Examples 9-13 optionally include wherein the discovery interest is sent at regular intervals.
- In Example 15, the subject matter of any one or more of Examples 1-14 optionally include wherein the network interface is to receive a discovery interest from an inter-island information centric network; and wherein the controller is to provide a response to the discovery interest based on selectors in the discovery interest and a database of intra-island services.
- In Example 16, the subject matter of Example 15 optionally includes wherein, to provide the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services, the controller is to extract a security identifier from the discovery interest and filtering entries of the database of intra-island services based on the security identifier.
- In Example 17, the subject matter of any one or more of Examples 15-16 optionally include wherein, to provide the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services, the controller is to filter entries of the database based on the selectors.
- In Example 18, the subject matter of any one or more of Examples 15-17 optionally include wherein the controller is to: communicate a second discovery interest to an intra-island information centric network from the island domain node; receive service metrics from other intra-island nodes; and update the database of intra-island services based on the received service metrics.
- Example 19 is a method for information centric network island bridging, the method comprising: receiving a request at an island domain node in an information centric network, the request including a data identifier; using an inter-domain discovery to identify a destination domain corresponding to the data identifier; modifying the request to create an inter-domain request; and communicating the inter-domain request to an inter-domain information centric network.
- In Example 20, the subject matter of Example 19 optionally includes wherein the island domain node belongs to multiple domains.
- In Example 21, the subject matter of any one or more of Examples 19-20 optionally include wherein modifying the request to create the inter-domain request includes adding the destination domain to the data identifier.
- In Example 22, the subject matter of Example 21 optionally includes wherein the data identifier is hierarchical, and wherein the domain identifier is at a top of the hierarchy.
- In Example 23, the subject matter of any one or more of Examples 21-22 optionally include wherein the domain identifier is flagged in the data identifier.
- In Example 24, the subject matter of any one or more of Examples 19-23 optionally include wherein using the inter-domain discovery includes: querying a local store of domain capabilities with the data identifier to produce search results; and returning a set of domain identifiers from the search results.
- In Example 25, the subject matter of Example 24 optionally includes obtaining a service set of a different domain than the domain; and updating the local store of the island domain node with the service set.
- In Example 26, the subject matter of Example 25 optionally includes wherein obtaining the service set of the different domain includes querying an inter-domain service.
- in Example 27, the subject matter of any one or more of Examples 25-26 optionally include wherein obtaining the service set of the different domain includes placing a discovery interest on an inter-island information centric network.
- In Example 28, the subject matter of Example 27 optionally includes wherein the discovery interest is different than other interests of the inter-island information centric network such that a node of the inter-island information centric network does not remove the discovery interest, from a pending interest structure, in response to a single response to the discovery interest.
- In Example 29, the subject matter of Example 28 optionally includes wherein the discovery interest includes a time-to-live, and wherein the discovery interest is removed from the pending interest structure based on the time-to-live.
- In Example 30, the subject matter of any one or more of Examples 28-29 optionally include wherein the discovery interest includes a total count, and wherein the discovery interest is removed from the pending interest structure based on a number of responses received to the discovery interest and the total count.
- In Example 31, the subject matter of any one or more of Examples 27-30 optionally include wherein the discovery interest includes a services filter, and wherein a response to the discovery interest has contents based on the services filter.
- In Example 32, the subject matter of any one or more of Examples 27-31 optionally include wherein the discovery interest is sent at regular intervals.
- In Example 33, the subject matter of any one or more of Examples 19-32 optionally include receiving a discovery interest from an inter-island information centric network; and providing a response to the discovery interest based on selectors in the discovery interest and a database of intra-island services.
- In Example 34, the subject matter of Example 33 optionally includes wherein providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes extracting a security identifier from the discovery interest and filtering entries of the database of intra-island services based on the security identifier.
- In Example 35, the subject matter of any one or more of Examples 33-34 optionally include wherein providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes filtering entries of the database based on the selectors.
- In Example 36, the subject matter of any one or more of Examples 33-35 optionally include communicating a second discovery interest to an intra-island information centric network from the island domain node; receiving service metrics from other intra-island nodes; and updating the database of intra-island services based on the received service metrics.
- Example 37 is at least one machine readable medium including instructions that, when executed by processing circuitry, cause the processing circuitry to perform any method of Examples 19-36.
- Example 38 is a system comprising means to perform any method of Examples 19-36.
- Example 39 is at least one machine readable medium including instructions for information centric network island bridging, the instructions, when executed by processing circuitry, cause the processing circuitry to perform operations comprising: receiving a request at an island domain node in an information centric network, the request including a data identifier; using an inter-domain discovery to identify a destination domain corresponding to the data identifier; modifying the request to create an inter-domain request; and communicating the inter-domain request to an inter-domain information centric network.
- In Example 40, the subject matter of Example 39 optionally includes wherein the island domain node belongs to multiple domains.
- In Example 41, the subject matter of any one or more of Examples 39-40 optionally include wherein modifying the request to create the inter-domain request includes adding the destination domain to the data identifier.
- In Example 42, the subject matter of Example 41 optionally includes wherein the data identifier is hierarchical, and wherein the domain identifier is at a top of the hierarchy.
- In Example 43, the subject matter of any one or more of Examples 41-42 optionally include wherein the domain identifier is flagged in the data identifier.
- In Example 44, the subject matter of any one or more of Examples 39-43 optionally include wherein using the inter-domain discovery includes: querying a local store of domain capabilities with the data identifier to produce search results; and returning a set of domain identifiers from the search results.
- In Example 45, the subject matter of Example 44 optionally includes wherein the operations include: obtaining a service set of a different domain than the domain; and updating the local store of the island domain node with the service set.
- In Example 46, the subject matter of Example 45 optionally includes wherein obtaining the service set of the different domain includes querying an inter-domain service.
- In Example 47, the subject matter of any one or more of Examples 45-46 optionally include wherein obtaining the service set of the different domain includes placing a discovery interest on an inter-island information centric network.
- In Example 48, the subject matter of Example 47 optionally includes wherein the discovery interest is different than other interests of the inter-island information centric network such that a node of the inter-island information centric network does not remove the discovery interest, from a pending interest structure, in response to a single response to the discovery interest.
- In Example 49, the subject matter of Example 48 optionally includes wherein the discovery interest includes a time-to-live, and wherein the discovery interest is removed from the pending interest structure based on the time-to-live.
- In Example 50, the subject matter of any one or more of Examples 48-49 optionally include wherein the discovery interest includes a total count, and wherein the discovery interest is removed from the pending interest structure based on a number of responses received to the discovery interest and the total count.
- In Example 51, the subject matter of any one or more of Examples 47-50 optionally include wherein the discovery interest includes a services filter, and wherein a response to the discovery interest has contents based on the services filter.
- In Example 52, the subject matter of any one or more of Examples 47-51 optionally include wherein the discovery interest is sent at regular intervals.
- In Example 53, the subject matter of any one or more of Examples 39-52 optionally include wherein the operations include: receiving a discovery interest from an inter-island information centric network; and providing a response to the discovery interest based on selectors in the discovery interest and a database of intra-island services.
- In Example 54, the subject matter of Example 53 optionally includes wherein providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes extracting a security identifier from the discovery interest and filtering entries of the database of intra-island services based on the security identifier.
- In Example 55, the subject matter of any one or more of Examples 53-54 optionally include wherein providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes filtering entries of the database based on the selectors.
- In Example 56, the subject matter of any one or more of Examples 53-55 optionally include wherein the operations include: communicating a second discovery interest to an intra-island information centric network from the island domain node; receiving service metrics from other intra-island nodes; and updating the database of intra-island services based on the received service metrics.
- Example 57 is a system for information centric network island bridging, the system comprising: means for receiving a request at an island domain node in an information centric network, the request including a data identifier; means for using an inter-domain discovery to identify a destination domain corresponding to the data identifier; means for modifying the request to create an inter-domain request; and means for communicating the inter-domain request to an inter-domain information centric network.
- In Example 58, the subject matter of Example 57 optionally includes wherein the island domain node belongs to multiple domains.
- In Example 59, the subject matter of any one or more of Examples 57-58 optionally include wherein the means for modifying the request to create the inter-domain request includes means for adding the destination domain to the data identifier.
- In Example 60, the subject matter of Example 59 optionally includes wherein the data identifier is hierarchical, and wherein the domain identifier is at a top of the hierarchy.
- In Example 61, the subject matter of any one or more of Examples 59-60 optionally include wherein the domain identifier is flagged in the data identifier.
- In Example 62, the subject matter of any one or more of Examples 57-61 optionally include wherein the means for using the inter-domain discovery includes: means for querying a local store of domain capabilities with the data identifier to produce search results; and means for returning a set of domain identifiers from the search results.
- In Example 63, the subject matter of Example 62 optionally includes means for obtaining a service set of a different domain than the domain; and means for updating the local store of the island domain node with the service set.
- In Example 64, the subject matter of Example 63 optionally includes wherein the means for obtaining the service set of the different domain includes means for querying an inter-domain service.
- In Example 65, the subject matter of any one or more of Examples 63-64 optionally include wherein means for obtaining the service set of the different domain includes means for placing a discovery interest on an inter-island information centric network.
- In Example 66, the subject matter of Example 65 optionally includes wherein the discovery interest is different than other interests of the inter-island information centric network such that a node of the inter-island information centric network does not remove the discovery interest, from a pending interest structure, in response to a single response to the discovery interest.
- In Example 67, the subject matter of Example 66 optionally includes wherein the discovery interest includes a time-to-live, and wherein the discovery interest is removed from the pending interest structure based on the time-to-live.
- In Example 68, the subject matter of any one or more of Examples 66-67 optionally include wherein the discovery interest includes a total count, and wherein the discovery interest is removed from the pending interest structure based on a number of responses received to the discovery interest and the total count.
- In Example 69, the subject matter of any one or more of Examples 65-68 optionally include wherein the discovery interest includes a services filter, and wherein a response to the discovery interest has contents based on the services filter.
- In Example 70, the subject matter of any one or more of Examples 65-69 optionally include wherein the discovery interest is sent at regular intervals.
- In Example 71, the subject matter of any one or more of Examples 57-70 optionally include means for receiving a discovery interest from an inter-island information centric network; and means for providing a response to the discovery interest based on selectors in the discovery interest and a database of intra-island services.
- In Example 72, the subject matter of Example 71 optionally includes wherein the means for providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes means for extracting a security identifier from the discovery interest and filtering entries of the database of intra-island services based on the security identifier.
- In Example 73, the subject matter of any one or more of Examples 71-72 optionally include wherein the means for providing the response to the discovery interest based on selectors in the discovery interest and the database of intra-island services includes means for filtering entries of the database based on the selectors.
- In Example 74, the subject matter of any one or more of Examples 71-73 optionally include means for communicating a second discovery interest to an intra-island information centric network front the island domain node; means for receiving service metrics from other intra-island nodes; and means for updating the database of intra-island services based on the received service metrics.
- Example 75 is at least one machine-readable medium including instructions, which when executed by a machine, cause the machine to perform operations of any of the operations of Examples 1-74.
- Example 76 is an apparatus comprising means for performing any of the operations of Examples 1-74.
- Example 77 is a system to perform the operations of any of the Examples 1-74.
- Example 78 is a method to perform the operations of any of the Examples 1-74.
- The above detailed description includes references to the accompanying drawings, which form a part of the detailed description. The drawings show, by way of illustration, specific embodiments that may be practiced. These embodiments are also referred to herein as “examples.” Such examples may include elements in addition to those shown or described. However, the present inventors also contemplate examples in which only those elements shown or described are provided. Moreover, the present inventors also contemplate examples using any combination or permutation of those elements shown or described (or one or more aspects thereof), either with respect to a particular example (or one or more aspects thereof), or with respect to other examples (or one or more aspects thereof) shown or described herein.
- All publications, patents, and patent documents referred to in this document are incorporated by reference herein in their entirety, as though individually incorporated by reference. In the event of inconsistent usages between this document and those documents so incorporated by reference, the usage in the incorporated reference(s) should be considered supplementary to that of this document; for irreconcilable inconsistencies, the usage in this document controls.
- In this document, the terms “a” or “an” are used, as is common in patent documents, to include one or more than one, independent of any other instances or usages of “at least one” or “one or more.” In this document, the term “or” is used to refer to a nonexclusive or, such that “A or B” includes “A but not B,” “B but not A,” and “A and B,” unless otherwise indicated. In the appended claims, the terms “including” and “in which” are used as the plain-English equivalents of the respective terms “comprising” and “wherein.” Also, in the following claims, the terms “including” and “comprising” are open-ended, that is, a system, device, article, or process that includes elements in addition to those listed after such a term in a claim are still deemed to fall within the scope of that claim. Moreover, in the following claims, the terms “first,” “second,” and “third,” etc. are used merely as labels, and are not intended to impose numerical requirements on their objects.
- The above description is intended to be illustrative, and not restrictive. For example, the above-described examples (or one or more aspects thereof) may be used in combination with each other. Other embodiments may be used, such as by one of ordinary skill in the art upon reviewing the above description. The Abstract is to allow the reader to quickly ascertain the nature of the technical disclosure and is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. Also, in the above Detailed Description, various features may be grouped together to streamline the disclosure. This should not be interpreted as intending that an unclaimed disclosed feature is essential to any claim. Rather, inventive subject matter may lie in less than all features of a particular disclosed embodiment. Thus, the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate embodiment. The scope of the embodiments should be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled.
Claims (24)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/487,808 US20180145945A1 (en) | 2016-11-21 | 2017-04-14 | Information centric network island bridging |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662424985P | 2016-11-21 | 2016-11-21 | |
US15/487,808 US20180145945A1 (en) | 2016-11-21 | 2017-04-14 | Information centric network island bridging |
Publications (1)
Publication Number | Publication Date |
---|---|
US20180145945A1 true US20180145945A1 (en) | 2018-05-24 |
Family
ID=62144086
Family Applications (12)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/414,036 Active 2037-08-19 US10356197B2 (en) | 2016-11-21 | 2017-01-24 | Data management in an information-centric network |
US15/414,462 Active 2038-11-18 US10785341B2 (en) | 2016-11-21 | 2017-01-24 | Processing and caching in an information-centric network |
US15/414,459 Active 2039-03-05 US10848584B2 (en) | 2016-11-21 | 2017-01-24 | Routing in an information-centric network |
US15/414,044 Active 2037-09-11 US10244071B2 (en) | 2016-11-21 | 2017-01-24 | Data management in an edge network |
US15/487,688 Active 2037-11-23 US10681166B2 (en) | 2016-11-21 | 2017-04-14 | Network coding in an information centric network |
US15/487,808 Abandoned US20180145945A1 (en) | 2016-11-21 | 2017-04-14 | Information centric network island bridging |
US15/487,841 Active 2037-09-01 US10681167B2 (en) | 2016-11-21 | 2017-04-14 | Distributed computing resources in an information centric network |
US15/638,092 Active 2038-08-31 US10834223B2 (en) | 2016-11-21 | 2017-06-29 | Hybrid information-centric and host-oriented networks |
US16/362,946 Active US10979522B2 (en) | 2016-11-21 | 2019-03-25 | Data management in an edge network |
US16/511,855 Active US10805418B2 (en) | 2016-11-21 | 2019-07-15 | Data management in an information-centric network |
US16/997,278 Active US11316946B2 (en) | 2016-11-21 | 2020-08-19 | Processing and caching in an information-centric network |
US17/228,386 Active US11601522B2 (en) | 2016-11-21 | 2021-04-12 | Data management in an edge network |
Family Applications Before (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/414,036 Active 2037-08-19 US10356197B2 (en) | 2016-11-21 | 2017-01-24 | Data management in an information-centric network |
US15/414,462 Active 2038-11-18 US10785341B2 (en) | 2016-11-21 | 2017-01-24 | Processing and caching in an information-centric network |
US15/414,459 Active 2039-03-05 US10848584B2 (en) | 2016-11-21 | 2017-01-24 | Routing in an information-centric network |
US15/414,044 Active 2037-09-11 US10244071B2 (en) | 2016-11-21 | 2017-01-24 | Data management in an edge network |
US15/487,688 Active 2037-11-23 US10681166B2 (en) | 2016-11-21 | 2017-04-14 | Network coding in an information centric network |
Family Applications After (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/487,841 Active 2037-09-01 US10681167B2 (en) | 2016-11-21 | 2017-04-14 | Distributed computing resources in an information centric network |
US15/638,092 Active 2038-08-31 US10834223B2 (en) | 2016-11-21 | 2017-06-29 | Hybrid information-centric and host-oriented networks |
US16/362,946 Active US10979522B2 (en) | 2016-11-21 | 2019-03-25 | Data management in an edge network |
US16/511,855 Active US10805418B2 (en) | 2016-11-21 | 2019-07-15 | Data management in an information-centric network |
US16/997,278 Active US11316946B2 (en) | 2016-11-21 | 2020-08-19 | Processing and caching in an information-centric network |
US17/228,386 Active US11601522B2 (en) | 2016-11-21 | 2021-04-12 | Data management in an edge network |
Country Status (4)
Country | Link |
---|---|
US (12) | US10356197B2 (en) |
CN (1) | CN109863734B (en) |
DE (1) | DE112017005885T5 (en) |
WO (1) | WO2018093813A1 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190019402A1 (en) * | 2017-07-16 | 2019-01-17 | Sure Universal Ltd. | Set-top box gateway architecture for universal remote controller |
US20190141568A1 (en) * | 2018-08-08 | 2019-05-09 | Ravikumar Balakrishnan | Publisher control in an information centric network |
US20190327337A1 (en) * | 2018-04-19 | 2019-10-24 | Futurewei Technologies, Inc. | Secure and Reliable On-Demand Source Routing in an Information Centric Network |
WO2020028793A1 (en) * | 2018-08-02 | 2020-02-06 | Synadia Communications, Inc. | System and method for a distributed computing cluster architecture |
US11277492B2 (en) | 2019-04-17 | 2022-03-15 | Sure Universal Ltd. | Seamless connectivity to smart devices, cameras and home care devices over WiFi networks and cloud |
US11330613B2 (en) | 2020-03-09 | 2022-05-10 | Cisco Technology, Inc. | Video-call aware uplink scheduler using pending in interest table snooping |
Families Citing this family (90)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10530884B2 (en) * | 2015-03-25 | 2020-01-07 | Nec Corporation | Method and device of processing ICN interest messages in a DTN scenario |
JP6631996B2 (en) * | 2016-05-11 | 2020-01-15 | アルパイン株式会社 | Electronic device, database construction method and system |
US10255369B2 (en) * | 2016-07-20 | 2019-04-09 | Oath Inc. | Device identification for multiple device IDS |
US10439890B2 (en) * | 2016-10-19 | 2019-10-08 | Tata Consultancy Services Limited | Optimal deployment of fog computations in IoT environments |
WO2018073940A1 (en) * | 2016-10-20 | 2018-04-26 | 楽天株式会社 | Information processing device, information processing method, program and storage medium |
US10356197B2 (en) | 2016-11-21 | 2019-07-16 | Intel Corporation | Data management in an information-centric network |
US10686762B2 (en) * | 2016-12-12 | 2020-06-16 | Cisco Technology, Inc. | Secure data exchange platform |
US11039225B2 (en) | 2016-12-15 | 2021-06-15 | Microsoft Technology Licensing, Llc | Declarative IoT data control |
US10917706B2 (en) * | 2016-12-15 | 2021-02-09 | Microsoft Technology Licensing, Llc | Configurable IoT device data collection |
US20180189303A1 (en) * | 2016-12-29 | 2018-07-05 | Ca, Inc. | Publisher-subscriber system with publisher based taxonomy for multi-data source publisher |
US10292197B1 (en) * | 2017-03-24 | 2019-05-14 | Sprint Communications Company L.P. | Evolved packet data gateway priority services |
EP3635999B1 (en) * | 2017-06-09 | 2022-08-03 | Telefonaktiebolaget LM Ericsson (PUBL) | Seamless mobility for icn producers |
CN107332909B (en) * | 2017-07-03 | 2020-03-31 | 中兴通讯股份有限公司 | Method and device for realizing data transmission |
US11363422B2 (en) * | 2017-07-21 | 2022-06-14 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and network node for enhancing message communication in a communication network |
US10536859B2 (en) | 2017-08-15 | 2020-01-14 | Charter Communications Operating, Llc | Methods and apparatus for dynamic control and utilization of quasi-licensed wireless spectrum |
US20190057045A1 (en) * | 2017-08-16 | 2019-02-21 | Alibaba Group Holding Limited | Methods and systems for caching based on service level agreement |
US10680938B2 (en) * | 2017-09-11 | 2020-06-09 | Futurewei Technologies, Inc. | Method and apparatus for information centric networking (ICN) over locator/identifier separator protocol (LISP) |
US10340976B2 (en) | 2017-10-16 | 2019-07-02 | Charter Communications Operating, Llc | Methods and apparatus for coordinated utilization of quasi-licensed wireless spectrum |
US10492204B2 (en) * | 2017-11-15 | 2019-11-26 | Charter Communications Operating, Llc | Methods and apparatus for utilization of quasi-licensed wireless spectrum for IoT (Internet-of-Things) services |
US10341456B2 (en) * | 2017-11-20 | 2019-07-02 | Marc Berger | Caching sticker profiles within a sticker communication system |
EP3729777A1 (en) * | 2017-12-18 | 2020-10-28 | Telefonaktiebolaget LM Ericsson (publ) | Virtual edge node as a service |
US10742736B2 (en) * | 2017-12-19 | 2020-08-11 | Western Digital Technologies, Inc. | Integrated erasure coding for data storage and transmission |
US10405192B2 (en) | 2018-01-15 | 2019-09-03 | Charter Communications Operating, Llc | Methods and apparatus for allocation and reconciliation of quasi-licensed wireless spectrum across multiple entities |
US11652741B2 (en) * | 2018-03-23 | 2023-05-16 | Clearblade, Inc. | Method for receiving a request for an API in an IoT hierarchy |
US10541942B2 (en) | 2018-03-30 | 2020-01-21 | Intel Corporation | Technologies for accelerating edge device workloads |
US11790301B2 (en) * | 2018-03-30 | 2023-10-17 | Jetsmarter Inc. | Reducing latency using pre-aggregation data processing techniques |
US10862971B2 (en) | 2018-04-27 | 2020-12-08 | EMC IP Holding Company LLC | Internet of things gateway service for a cloud foundry platform |
US11432284B2 (en) | 2018-05-22 | 2022-08-30 | Charter Communications Operating, Llc | Methods and apparatus for intra-cell and inter-frequency mobility optimization and mitigation of session disruption in a quasi-licensed wireless system |
US11012362B2 (en) | 2018-06-18 | 2021-05-18 | Akamai Technologies, Inc. | Download management with congestion mitigation for over the air content delivery to vehicles |
US10667172B2 (en) * | 2018-06-18 | 2020-05-26 | Akamai Technologies, Inc. | Download management with congestion mitigation for over the air content delivery to vehicles |
US10715640B2 (en) * | 2018-07-13 | 2020-07-14 | EMC IP Holding Company LLC | Internet of things gateways of moving networks |
US10972942B2 (en) * | 2018-07-20 | 2021-04-06 | Netsia, Inc. | System and method for a distributed ledger for base station slicing using blockchain |
US10721295B2 (en) * | 2018-07-24 | 2020-07-21 | Cisco Technology, Inc. | Popularity-based load-balancing for fog-cloud placement |
KR102025921B1 (en) * | 2018-08-09 | 2019-09-26 | 숭실대학교산학협력단 | Method of data caching in delay tolerant network based on information centric network, computer readable medium and device for performing the method |
CN110830535B (en) * | 2018-08-10 | 2021-03-02 | 网宿科技股份有限公司 | Processing method of super-hot file, load balancing equipment and download server |
US10735778B2 (en) | 2018-08-23 | 2020-08-04 | At&T Intellectual Property I, L.P. | Proxy assisted panoramic video streaming at mobile edge |
US11025589B1 (en) * | 2018-08-31 | 2021-06-01 | Cisco Technology, Inc | Location-independent data-object name mapping |
US10803025B2 (en) | 2018-09-06 | 2020-10-13 | At&T Intellectual Property I, L.P. | System and process for scalable and secure content delivery |
US11424961B2 (en) * | 2018-09-14 | 2022-08-23 | Hewlett Packard Enterprise Development Lp | Exporting the device sharing attribute for host devices from a wireless controller to a switch |
US20210326185A1 (en) * | 2018-09-26 | 2021-10-21 | Telefonaktiebolaget Lm Ericsson (Publ) | Method, first agent and computer program product controlling computing resources in a cloud network for enabling a machine learning operation |
US10951711B2 (en) | 2018-10-08 | 2021-03-16 | Booz Allen Hamilton Inc. | Methods and systems for acquiring and processing data at intelligent edge devices via software kernels |
US11681725B2 (en) | 2018-10-10 | 2023-06-20 | EMC IP Holding Company LLC | Tiered forensics of IoT systems in cloud and time series databases |
WO2020092933A1 (en) * | 2018-11-02 | 2020-05-07 | Intel Corporation | Techniques in retrieving cached content using information centric networking for protocol data unit sessions |
CN109347967B (en) * | 2018-11-02 | 2021-08-03 | 网宿科技股份有限公司 | Method and device for acquiring audio and video data |
US11032370B2 (en) * | 2018-11-14 | 2021-06-08 | Toyota Jidosha Kabushiki Kaisha | Wireless communications in a vehicular macro cloud |
KR102394773B1 (en) * | 2018-12-07 | 2022-05-06 | 한국전자통신연구원 | Method and System for processing Name-based In-network |
EP3671447A1 (en) * | 2018-12-21 | 2020-06-24 | XRSpace CO., LTD. | Dispatching method and edge computing system |
US11064321B2 (en) | 2018-12-29 | 2021-07-13 | Intel Corporation | Content centric dynamic ad hoc networking |
US10980025B2 (en) | 2019-01-31 | 2021-04-13 | Charter Communications Operating, Llc | Methods and apparatus for frequency transition management in a quasi-licensed wireless system |
US11129171B2 (en) | 2019-02-27 | 2021-09-21 | Charter Communications Operating, Llc | Methods and apparatus for wireless signal maximization and management in a quasi-licensed wireless system |
US11212085B2 (en) | 2019-03-29 | 2021-12-28 | Intel Corporation | Technologies for accelerated hierarchical key caching in edge systems |
US11243817B2 (en) | 2019-03-29 | 2022-02-08 | Intel Corporation | Technologies for data migration between edge accelerators hosted on different edge locations |
GB2582830A (en) * | 2019-04-05 | 2020-10-07 | Numbereight Tech Ltd | Sensor hierarchy for context inference |
US11223697B2 (en) * | 2019-04-15 | 2022-01-11 | Cisco Technology, Inc. | Scaling microservices communication over information centric networks |
US11128471B2 (en) * | 2019-04-25 | 2021-09-21 | Microsoft Technology Licensing, Llc | Accessibility controls in distributed data systems |
US11057495B2 (en) * | 2019-05-01 | 2021-07-06 | Ciena Corporation | Selecting where to process data associated with Internet of Things (IoT) devices |
EP3963843A4 (en) | 2019-05-02 | 2023-01-25 | INTEL Corporation | Quality of service (qos) in information centric networking (icn) |
CN110222043B (en) * | 2019-06-12 | 2021-08-24 | 青岛大学 | Data monitoring method, device and equipment of cloud storage server |
US11184457B2 (en) * | 2019-06-27 | 2021-11-23 | Intel Corporation | Information-centric network data cache management |
US11296993B2 (en) * | 2019-06-28 | 2022-04-05 | Intel Corporation | Information centric network approximate computation caching |
US11509745B2 (en) * | 2019-06-28 | 2022-11-22 | Intel Corporation | Efficient remote function execution in an information centric network |
US11374779B2 (en) | 2019-06-30 | 2022-06-28 | Charter Communications Operating, Llc | Wireless enabled distributed data apparatus and methods |
US11792113B2 (en) * | 2019-07-05 | 2023-10-17 | Intel Corporation | Information centric network dynamic compute orchestration |
US11438771B2 (en) | 2019-07-11 | 2022-09-06 | Charter Communications Operating, Llc | Apparatus and methods for heterogeneous coverage and use cases in a quasi-licensed wireless system |
US11182222B2 (en) | 2019-07-26 | 2021-11-23 | Charter Communications Operating, Llc | Methods and apparatus for multi-processor device software development and operation |
CN110505280B (en) * | 2019-07-29 | 2022-10-25 | 网宿科技股份有限公司 | P2P transmission control method and P2P node |
US11102064B2 (en) * | 2019-08-28 | 2021-08-24 | International Business Machines Corporation | Dynamically adapting an internet of things (IOT) device |
US11528748B2 (en) | 2019-09-11 | 2022-12-13 | Charter Communications Operating, Llc | Apparatus and methods for multicarrier unlicensed heterogeneous channel access |
US11210410B2 (en) | 2019-09-17 | 2021-12-28 | International Business Machines Corporation | Serving data assets based on security policies by applying space-time optimized inline data transformations |
US11669368B2 (en) * | 2019-09-28 | 2023-06-06 | Intel Corporation | Multi-tenant data protection in edge computing environments |
US11317296B2 (en) | 2019-10-02 | 2022-04-26 | Charter Communications Operating, Llc | Apparatus and methods for interference handling and switching operating frequencies for devices being supported by a wireless access node |
KR102272699B1 (en) * | 2019-10-17 | 2021-07-06 | 숭실대학교산학협력단 | A method for processing data by an edge node in a network including a plurality of terminals and the edge node |
US11026205B2 (en) | 2019-10-23 | 2021-06-01 | Charter Communications Operating, Llc | Methods and apparatus for device registration in a quasi-licensed wireless system |
US11581911B2 (en) | 2019-10-28 | 2023-02-14 | Charter Communications Operating, Llc | Apparatus and methods for phase noise mitigation in wireless systems |
US11457485B2 (en) | 2019-11-06 | 2022-09-27 | Charter Communications Operating, Llc | Methods and apparatus for enhancing coverage in quasi-licensed wireless systems |
CN111262785B (en) * | 2020-01-16 | 2021-09-28 | 北京工业大学 | Multi-attribute probability caching method in named data network |
US11363466B2 (en) | 2020-01-22 | 2022-06-14 | Charter Communications Operating, Llc | Methods and apparatus for antenna optimization in a quasi-licensed wireless system |
US11444996B2 (en) * | 2020-04-20 | 2022-09-13 | Cisco Technology, Inc. | Two-level cache architecture for live video streaming through hybrid ICN |
CN113630428B (en) * | 2020-05-08 | 2022-09-02 | 中国电信股份有限公司 | Acquisition method and acquisition system for service data |
US11483715B2 (en) | 2020-07-06 | 2022-10-25 | Charter Communications Operating, Llc | Apparatus and methods for interference management in a quasi-licensed wireless system |
US11778055B2 (en) * | 2020-07-13 | 2023-10-03 | Samsung Electronics Co., Ltd. | Systems and methods for storage-efficient sensors |
US11575512B2 (en) * | 2020-07-31 | 2023-02-07 | Operant Networks | Configurable network security for networked energy resources, and associated systems and methods |
US11877344B2 (en) | 2020-12-14 | 2024-01-16 | Charter Communications Operating, Llc | Apparatus and methods for wireless coverage enhancement using technology detection |
CN112717376B (en) * | 2021-01-04 | 2022-12-02 | 厦门梦加网络科技股份有限公司 | Method and system for enhancing stability of mobile phone online game |
CN112671932B (en) * | 2021-01-25 | 2021-12-03 | 中林云信(上海)网络技术有限公司 | Data processing method based on big data and cloud computing node |
JP7059417B1 (en) * | 2021-03-18 | 2022-04-25 | ヤフー株式会社 | Information processing equipment, information processing methods and information processing programs |
CN113037872B (en) * | 2021-05-20 | 2021-08-10 | 杭州雅观科技有限公司 | Caching and prefetching method based on Internet of things multi-level edge nodes |
FR3126585A1 (en) * | 2021-08-27 | 2023-03-03 | Thales | METHOD FOR PROCESSING A REQUEST FOR INTEREST IN AN NDN NETWORK |
US11962455B2 (en) | 2021-11-29 | 2024-04-16 | T-Mobile Usa, Inc. | Prioritizing multiple issues associated with a wireless telecommunication network |
WO2023161666A1 (en) * | 2022-02-27 | 2023-08-31 | Doka Janos | System and method for forwarding-information base compression by distribution in named data networks |
Citations (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040139170A1 (en) * | 2003-01-15 | 2004-07-15 | Ming-Teh Shen | Method and apparatus for management of shared wide area network connections |
US6874030B1 (en) * | 2000-11-13 | 2005-03-29 | Cisco Technology, Inc. | PPP domain name and L2TP tunnel selection configuration override |
US20090225654A1 (en) * | 2008-03-07 | 2009-09-10 | David Clyde Sharp | Methods and systems for capability-based system collaboration |
US7606897B2 (en) * | 2007-04-05 | 2009-10-20 | Yahoo! Inc. | Accelerated and reproducible domain visitor targeting |
US20120166806A1 (en) * | 2010-12-28 | 2012-06-28 | Futurewei Technologies, Inc. | Method and Apparatus to Use Identify Information for Digital Signing and Encrypting Content Integrity and Authenticity in Content Oriented Networks |
US20120204224A1 (en) * | 2011-02-04 | 2012-08-09 | Futurewei Technologies, Inc. | Method and Apparatus for a Control Plane to Manage Domain-Based Security and Mobility in an Information Centric Network |
US8429325B1 (en) * | 2010-08-06 | 2013-04-23 | Integrated Device Technology Inc. | PCI express switch and method for multi-port non-transparent switching |
US20130111063A1 (en) * | 2011-11-01 | 2013-05-02 | Electronics And Telecommunications Research Institute | Routing method in content-centric network |
US20130173822A1 (en) * | 2011-12-28 | 2013-07-04 | Samsung Electronics Co., Ltd. | Method of implementing content-centric network (ccn) using internet protocol (ip)-based network in gateway, and gateway |
US20130282920A1 (en) * | 2012-04-24 | 2013-10-24 | Futurewei Technologies, Inc. | Principal-Identity-Domain Based Naming Scheme for Information Centric Networks |
US20130332955A1 (en) * | 2012-06-11 | 2013-12-12 | Samsung Electronics Co., Ltd. | Routing method for inter/intra-domain in content centric network |
US20130339481A1 (en) * | 2012-06-11 | 2013-12-19 | Samsung Electronics Co., Ltd. | Method for content discovery of node in intra-domain and inter-domain in content centric network and node therefor |
US8631080B2 (en) * | 2009-03-12 | 2014-01-14 | Microsoft Corporation | Email characterization |
US20140098819A1 (en) * | 2012-10-08 | 2014-04-10 | Electronics And Telecommunications Research Institute | Convergence network based on identifier and communication method using the same |
US20140173076A1 (en) * | 2012-12-14 | 2014-06-19 | Futurewei Technologies, Inc. | Method and Apparatus for Policy Based Routing in Information Centric Networking Based Home Networks |
US8874718B2 (en) * | 2007-04-04 | 2014-10-28 | Huawei Technologies Co., Ltd. | Method and device for storing domain name system records, method and device for parsing domain name |
US8898735B2 (en) * | 2011-09-21 | 2014-11-25 | Samsung Electronics Co., Ltd. | Network apparatus based on content name, method of generating and authenticating content name |
US8966122B2 (en) * | 2012-04-16 | 2015-02-24 | Opendns, Inc. | Cross-protocol communication in domain name systems |
US9009313B2 (en) * | 2004-07-12 | 2015-04-14 | NetSuite Inc. | Simultaneous maintenance of multiple versions of a web-based business information system |
US20150248455A1 (en) * | 2014-02-28 | 2015-09-03 | Palo Alto Research Center Incorporated | Content name resolution for information centric networking |
US9160648B2 (en) * | 2012-01-05 | 2015-10-13 | Samsung Electronics Co., Ltd. | Content-centric network and method of performing routing between domains therefor |
US20150319241A1 (en) * | 2014-05-01 | 2015-11-05 | Palo Alto Research Center Incorporated | Accountable content stores for information centric networks |
US20150319204A1 (en) * | 2012-12-18 | 2015-11-05 | Orange | Technique for communication in a communication network centered on information |
US9191338B2 (en) * | 2010-09-28 | 2015-11-17 | Amazon Technologies, Inc. | Request routing in a networked environment |
US9246803B2 (en) * | 2014-01-02 | 2016-01-26 | Futurewei Technologies, Inc. | Method and apparatus for scalable content routing and mobility in named data networks |
US20160036730A1 (en) * | 2013-04-12 | 2016-02-04 | Nec Europe Ltd. | Method and system for providing an information centric network |
US20160149913A1 (en) * | 2013-06-28 | 2016-05-26 | TELEFONAKTIEBOLAGET L M ERRICSSON (publ) | Access Control in an Information Centric Network |
US9401864B2 (en) * | 2013-10-31 | 2016-07-26 | Palo Alto Research Center Incorporated | Express header for packets with hierarchically structured variable-length identifiers |
US20160241510A1 (en) * | 2015-02-18 | 2016-08-18 | Go Daddy Operating Company, LLC | Generating consistent suggested domain names from user feedback |
US20160255535A1 (en) * | 2013-10-30 | 2016-09-01 | Interdigital Patent Holdings, Inc. | Enabling information centric networks specialization |
US9479476B2 (en) * | 2008-03-31 | 2016-10-25 | Amazon Technologies, Inc. | Processing of DNS queries |
US20170019371A1 (en) * | 2015-07-17 | 2017-01-19 | Verisign, Inc. | Methods and systems for domain name data networking |
US9647876B2 (en) * | 2012-10-22 | 2017-05-09 | Futurewei Technologies, Inc. | Linked identifiers for multiple domains |
US20170142226A1 (en) * | 2014-01-31 | 2017-05-18 | Interdigital Patent Holdings, Inc. | Methods, apparatuses and systems directed to enabling network federations through hash-routing and/or summary-routing based peering |
US20170149934A1 (en) * | 2015-11-24 | 2017-05-25 | Le Holdings (Beijing) Co., Ltd. | Method, device and system for data cross-domain request |
US20170289140A1 (en) * | 2016-03-31 | 2017-10-05 | Oracle International Corporation | System and method for integrating a transactional middleware platform with a centralized access manager for single sign-on in an enterprise-level computing environment |
US9985930B2 (en) * | 2016-09-14 | 2018-05-29 | Wanpath, LLC | Reverse proxy for accessing local network over the internet |
US20180227390A1 (en) * | 2014-08-29 | 2018-08-09 | Idac Holdings, Inc. | Apparatus for interfacing between information centric networks (icns) and internet protocol (ip) networks |
Family Cites Families (94)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6452708B1 (en) * | 2000-01-11 | 2002-09-17 | Aurora Networks, Inc. | Reverse digitized communications architecture |
US7162433B1 (en) * | 2000-10-24 | 2007-01-09 | Opusone Corp. | System and method for interactive contests |
US8024395B1 (en) * | 2001-09-04 | 2011-09-20 | Gary Odom | Distributed processing multiple tier task allocation |
US20030079027A1 (en) * | 2001-10-18 | 2003-04-24 | Michael Slocombe | Content request routing and load balancing for content distribution networks |
US7231442B2 (en) * | 2002-04-03 | 2007-06-12 | Tonic Software, Inc. | Global network monitoring system |
US6826602B1 (en) * | 2002-09-12 | 2004-11-30 | Bellsouth Intellectual Property Corporation | System and method for reverse content distribution |
AU2003299018A1 (en) * | 2002-09-18 | 2004-04-08 | Mitsui Bussan Logistics, Inc. | System and method for distribution chain management |
US20050187960A1 (en) * | 2002-10-30 | 2005-08-25 | Fujitsu Limited | Stream server |
US7355983B2 (en) * | 2004-02-10 | 2008-04-08 | Cisco Technology, Inc. | Technique for graceful shutdown of a routing protocol in a network |
JP4604796B2 (en) * | 2005-03-29 | 2011-01-05 | ソニー株式会社 | Wireless communication apparatus and wireless communication method |
US20080162568A1 (en) * | 2006-10-18 | 2008-07-03 | Huazhang Shen | System and method for estimating real life relationships and popularities among people based on large quantities of personal visual data |
WO2009030643A2 (en) * | 2007-09-06 | 2009-03-12 | Edgeware Ab | An apparatus and a method for data streaming applications |
US8386622B2 (en) * | 2008-05-16 | 2013-02-26 | Palo Alto Research Center Incorporated | Method and apparatus for facilitating communication in a content centric network |
JP4572968B2 (en) * | 2008-08-06 | 2010-11-04 | ソニー株式会社 | Packet detection device, packet detection method, wireless communication device, wireless communication method, and computer program |
US8516494B2 (en) * | 2008-06-16 | 2013-08-20 | International Business Machines Corporation | Executing an application on a parallel computer |
US8452869B2 (en) * | 2009-12-09 | 2013-05-28 | Electronics And Telecommunications Research Institute | System and method for managing customized service level agreement monitoring |
US8918835B2 (en) * | 2010-12-16 | 2014-12-23 | Futurewei Technologies, Inc. | Method and apparatus to create and manage virtual private groups in a content oriented network |
EP2702514B1 (en) * | 2011-05-12 | 2017-02-22 | Huawei Technologies Co., Ltd. | Method and system for longest prefix matching of variable-sized hierarchical names by treelets |
US9379970B2 (en) * | 2011-05-16 | 2016-06-28 | Futurewei Technologies, Inc. | Selective content routing and storage protocol for information-centric network |
US9289683B2 (en) * | 2011-06-07 | 2016-03-22 | Nike, Inc. | Virtual performance system |
FR2977419B1 (en) * | 2011-06-28 | 2013-08-09 | Univ Paris Sud 11 | METHOD FOR EXTINTING ROUTERS IN A COMMUNICATIONS NETWORK AND ROUTER USING THE SAME |
CN102244900B (en) * | 2011-07-15 | 2014-01-22 | 上海华为技术有限公司 | Method, device and system for synchronizing cached data heat value, and distributed caching method |
US20130080243A1 (en) * | 2011-09-22 | 2013-03-28 | Jacqueline R. Dias | Pay per insert system |
US20130080249A1 (en) * | 2011-09-22 | 2013-03-28 | Jacqueline R. Dias | Pay Per Insert System |
US8972477B1 (en) * | 2011-12-01 | 2015-03-03 | Amazon Technologies, Inc. | Offline browsing session management |
EP2789115A1 (en) * | 2011-12-09 | 2014-10-15 | Huawei Technologies Co., Ltd | Method for network coding packets in content-centric networking based networks |
KR20130093812A (en) * | 2012-01-12 | 2013-08-23 | 삼성전자주식회사 | A communication method of contents router to control a traffic transmission rate in a content centric network and the content router |
US8762570B2 (en) * | 2012-02-21 | 2014-06-24 | Futurewei Technologies, Inc. | Method and apparatus for adaptive forwarding strategies in content-centric networking |
US10623408B1 (en) | 2012-04-02 | 2020-04-14 | Amazon Technologies, Inc. | Context sensitive object management |
US9628285B2 (en) * | 2012-06-01 | 2017-04-18 | Telefonaktiebolaget L M Ericsson (Publ) | Increasing failure coverage of MoFRR with dataplane notifications |
US8824276B2 (en) * | 2012-06-01 | 2014-09-02 | Telefonaktiebolaget L M Ericsson (Publ) | Increasing failure coverage of MOFRR with dataplane notifications |
US9052942B1 (en) * | 2012-12-14 | 2015-06-09 | Amazon Technologies, Inc. | Storage object deletion job management |
EP2932694B1 (en) | 2013-01-07 | 2017-08-23 | Huawei Technologies Co., Ltd. | Contextualized information bus |
US10194414B2 (en) * | 2013-01-07 | 2019-01-29 | Futurewei Technologies, Inc. | Information centric networking based service centric networking |
US9426020B2 (en) * | 2013-03-15 | 2016-08-23 | Cisco Technology, Inc. | Dynamically enabling selective routing capability |
CN108063717A (en) * | 2013-05-31 | 2018-05-22 | 华为技术有限公司 | The method, apparatus and system to E-Packet centered on information in network ICN |
EP3011583A4 (en) * | 2013-06-21 | 2017-03-29 | DH Technologies Development PTE. Ltd. | Contamination filter for mass spectrometer |
EP2827556B1 (en) | 2013-07-16 | 2016-02-17 | Alcatel Lucent | Method and system for content curation in internet networks |
US9906436B2 (en) | 2013-08-05 | 2018-02-27 | Futurewei Technologies, Inc. | Scalable name-based centralized content routing |
EP2835942B1 (en) * | 2013-08-05 | 2019-10-09 | Alcatel Lucent | Dynamic interest forwarding mechanism for information centric networking |
US9980351B2 (en) * | 2013-08-12 | 2018-05-22 | Abl Ip Holding Llc | Lighting element-centric network of networks |
US9301211B2 (en) | 2013-08-20 | 2016-03-29 | Telefonaktiebolaget L M Ericsson (Publ) | Reporting performance and controlling mobility between different radio access technologies |
EP2860940B1 (en) * | 2013-09-27 | 2016-09-14 | Alcatel Lucent | Method for caching |
US20150106730A1 (en) | 2013-10-11 | 2015-04-16 | Futurewei Technologies, Inc. | Framework for screen content sharing system with generalized screen descriptions |
CN105813698B (en) * | 2013-10-14 | 2018-02-09 | 耐克创新有限合伙公司 | The fitness training system calculated for merging the energy expenditure from multiple devices |
KR102126018B1 (en) | 2013-11-06 | 2020-06-23 | 삼성전자주식회사 | Operating method of transmission node and receiver node processing packet including location information of field and the packet including the location information of the field |
US9374304B2 (en) * | 2014-01-24 | 2016-06-21 | Palo Alto Research Center Incorporated | End-to end route tracing over a named-data network |
KR20150091880A (en) * | 2014-02-04 | 2015-08-12 | 한국전자통신연구원 | Method and Apparatus for communicating contents based on ICN in mobile Ad-hoc Network |
US9836540B2 (en) * | 2014-03-04 | 2017-12-05 | Cisco Technology, Inc. | System and method for direct storage access in a content-centric network |
US9626413B2 (en) | 2014-03-10 | 2017-04-18 | Cisco Systems, Inc. | System and method for ranking content popularity in a content-centric network |
US10063476B2 (en) * | 2014-03-28 | 2018-08-28 | Research & Business Foundation Sungkyunkwan University | Content centric networking system providing differentiated service and method of controlling data traffic in content centric networking providing differentiated service |
US9825860B2 (en) * | 2014-05-30 | 2017-11-21 | Futurewei Technologies, Inc. | Flow-driven forwarding architecture for information centric networks |
US9426113B2 (en) | 2014-06-30 | 2016-08-23 | Palo Alto Research Center Incorporated | System and method for managing devices over a content centric network |
US9729616B2 (en) | 2014-07-18 | 2017-08-08 | Cisco Technology, Inc. | Reputation-based strategy for forwarding and responding to interests over a content centric network |
US10200747B2 (en) * | 2014-07-24 | 2019-02-05 | University Of Central Florida Research Foundation, Inc. | Computer network providing redundant data traffic control features and related methods |
US9497282B2 (en) * | 2014-08-27 | 2016-11-15 | Palo Alto Research Center Incorporated | Network coding for content-centric network |
US9652061B2 (en) * | 2014-08-28 | 2017-05-16 | Dell Products, Lp | System and method for utilizing fingerprints as user inputs |
US20160085830A1 (en) | 2014-09-18 | 2016-03-24 | Palo Alto Research Center Incorporated | Reputation-based discovery of content objects |
US9942831B2 (en) * | 2014-10-01 | 2018-04-10 | Telefonaktiebolaget L M Ericsson (Publ) | Node and method for handling information centric networking based communications |
US9819643B2 (en) * | 2014-10-13 | 2017-11-14 | Telefonaktiebolaget L M Ericsson (Publ) | CCN name patterns |
JP6492172B2 (en) * | 2014-10-14 | 2019-03-27 | アイディーエーシー ホールディングス インコーポレイテッド | Anchoring IP devices in ICN networks |
US9891742B2 (en) * | 2014-10-17 | 2018-02-13 | Dell Products, Lp | Method and apparatus for managing touch functionality in a repetitively flexible device |
US9661080B2 (en) * | 2014-10-21 | 2017-05-23 | Helium Systems, Inc. | Systems and methods for smart device networking with an endpoint and a bridge |
US20160135109A1 (en) * | 2014-11-12 | 2016-05-12 | Qualcomm Incorporated | Opportunistic ioe message delivery via wan-triggered forwarding |
US20160156714A1 (en) * | 2014-12-01 | 2016-06-02 | Fujitsu Limited | Content placement in an information centric network |
US9590948B2 (en) * | 2014-12-15 | 2017-03-07 | Cisco Systems, Inc. | CCN routing using hardware-assisted hash tables |
US10237189B2 (en) * | 2014-12-16 | 2019-03-19 | Cisco Technology, Inc. | System and method for distance-based interest forwarding |
US10466092B1 (en) * | 2014-12-19 | 2019-11-05 | Amazon Technologies, Inc. | Sensor data processing system |
WO2016105241A1 (en) * | 2014-12-23 | 2016-06-30 | Emc Corporation | Selective compression in data storage systems |
US9538446B1 (en) * | 2015-07-29 | 2017-01-03 | Fortinet, Inc | Directed station roaming in cloud managed Wi-Fi network |
WO2016112399A1 (en) * | 2015-01-09 | 2016-07-14 | Fresh Digital, Inc. | Systems and methods for providing location specific content and notifications utilizing beacons and drones |
WO2016114392A1 (en) * | 2015-01-15 | 2016-07-21 | 日本電気株式会社 | Information output device, camera, information output system, information output method, and program |
US9838333B2 (en) | 2015-01-20 | 2017-12-05 | Futurewei Technologies, Inc. | Software-defined information centric network (ICN) |
US10726625B2 (en) * | 2015-01-28 | 2020-07-28 | CCP hf. | Method and system for improving the transmission and processing of data regarding a multi-user virtual environment |
US9736263B2 (en) * | 2015-02-16 | 2017-08-15 | Telefonaktiebolaget L M Ericsson (Publ) | Temporal caching for ICN |
US10404748B2 (en) * | 2015-03-31 | 2019-09-03 | Guidewire Software, Inc. | Cyber risk analysis and remediation using network monitored sensors and methods of use |
US10579672B2 (en) * | 2015-04-03 | 2020-03-03 | David M. ORBACH | Audio snippet information network |
US20160313957A1 (en) * | 2015-04-21 | 2016-10-27 | Wandr LLC | Real-time event management |
US10978489B2 (en) * | 2015-07-24 | 2021-04-13 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device, display panel, method for manufacturing semiconductor device, method for manufacturing display panel, and information processing device |
US20170034055A1 (en) * | 2015-07-28 | 2017-02-02 | Futurewei Technologies, Inc. | Handling Consumer Mobility in Information-Centric Networks |
US9960999B2 (en) * | 2015-08-10 | 2018-05-01 | Futurewei Technologies, Inc. | Balanced load execution with locally distributed forwarding information base in information centric networks |
US10007513B2 (en) * | 2015-08-27 | 2018-06-26 | FogHorn Systems, Inc. | Edge intelligence platform, and internet of things sensor streams system |
US10454820B2 (en) * | 2015-09-29 | 2019-10-22 | Cisco Technology, Inc. | System and method for stateless information-centric networking |
US9929954B2 (en) * | 2015-10-12 | 2018-03-27 | Futurewei Technologies, Inc. | Hash-based overlay routing architecture for information centric networks |
US10686702B2 (en) * | 2015-11-06 | 2020-06-16 | Cable Television Laboratories, Inc. | Preemptive caching of content in a content-centric network |
US10079759B2 (en) * | 2016-02-05 | 2018-09-18 | Fujitsu Limited | Naming schemes and routing protocols in information centric networking networks |
US10051071B2 (en) * | 2016-03-04 | 2018-08-14 | Cisco Technology, Inc. | Method and system for collecting historical network information in a content centric network |
US10027578B2 (en) * | 2016-04-11 | 2018-07-17 | Cisco Technology, Inc. | Method and system for routable prefix queries in a content centric network |
US20170302631A1 (en) * | 2016-04-18 | 2017-10-19 | Cisco Technology, Inc. | Method and system for routing with minimum name disclosure in a content centric network |
US10187258B2 (en) * | 2016-04-26 | 2019-01-22 | Cognito Networks, Inc. | Creating and managing dynamic internet of things entities |
EP3466186B1 (en) * | 2016-05-31 | 2021-10-06 | Telefonaktiebolaget LM Ericsson (PUBL) | Distinguishing icn from non-icn traffic in a mobile network |
US10956412B2 (en) | 2016-08-09 | 2021-03-23 | Cisco Technology, Inc. | Method and system for conjunctive normal form attribute matching in a content centric network |
US10291512B2 (en) * | 2016-09-13 | 2019-05-14 | Cisco Technology, Inc. | Interest message path steering and multi-path traceroute in information-centric networking |
US10356197B2 (en) | 2016-11-21 | 2019-07-16 | Intel Corporation | Data management in an information-centric network |
-
2017
- 2017-01-24 US US15/414,036 patent/US10356197B2/en active Active
- 2017-01-24 US US15/414,462 patent/US10785341B2/en active Active
- 2017-01-24 US US15/414,459 patent/US10848584B2/en active Active
- 2017-01-24 US US15/414,044 patent/US10244071B2/en active Active
- 2017-04-14 US US15/487,688 patent/US10681166B2/en active Active
- 2017-04-14 US US15/487,808 patent/US20180145945A1/en not_active Abandoned
- 2017-04-14 US US15/487,841 patent/US10681167B2/en active Active
- 2017-06-29 US US15/638,092 patent/US10834223B2/en active Active
- 2017-11-15 WO PCT/US2017/061670 patent/WO2018093813A1/en active Application Filing
- 2017-11-15 DE DE112017005885.6T patent/DE112017005885T5/en active Pending
- 2017-11-15 CN CN201780065922.2A patent/CN109863734B/en active Active
-
2019
- 2019-03-25 US US16/362,946 patent/US10979522B2/en active Active
- 2019-07-15 US US16/511,855 patent/US10805418B2/en active Active
-
2020
- 2020-08-19 US US16/997,278 patent/US11316946B2/en active Active
-
2021
- 2021-04-12 US US17/228,386 patent/US11601522B2/en active Active
Patent Citations (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6874030B1 (en) * | 2000-11-13 | 2005-03-29 | Cisco Technology, Inc. | PPP domain name and L2TP tunnel selection configuration override |
US20040139170A1 (en) * | 2003-01-15 | 2004-07-15 | Ming-Teh Shen | Method and apparatus for management of shared wide area network connections |
US9009313B2 (en) * | 2004-07-12 | 2015-04-14 | NetSuite Inc. | Simultaneous maintenance of multiple versions of a web-based business information system |
US8874718B2 (en) * | 2007-04-04 | 2014-10-28 | Huawei Technologies Co., Ltd. | Method and device for storing domain name system records, method and device for parsing domain name |
US7606897B2 (en) * | 2007-04-05 | 2009-10-20 | Yahoo! Inc. | Accelerated and reproducible domain visitor targeting |
US20090225654A1 (en) * | 2008-03-07 | 2009-09-10 | David Clyde Sharp | Methods and systems for capability-based system collaboration |
US9479476B2 (en) * | 2008-03-31 | 2016-10-25 | Amazon Technologies, Inc. | Processing of DNS queries |
US8631080B2 (en) * | 2009-03-12 | 2014-01-14 | Microsoft Corporation | Email characterization |
US8429325B1 (en) * | 2010-08-06 | 2013-04-23 | Integrated Device Technology Inc. | PCI express switch and method for multi-port non-transparent switching |
US9191338B2 (en) * | 2010-09-28 | 2015-11-17 | Amazon Technologies, Inc. | Request routing in a networked environment |
US20120166806A1 (en) * | 2010-12-28 | 2012-06-28 | Futurewei Technologies, Inc. | Method and Apparatus to Use Identify Information for Digital Signing and Encrypting Content Integrity and Authenticity in Content Oriented Networks |
US20120204224A1 (en) * | 2011-02-04 | 2012-08-09 | Futurewei Technologies, Inc. | Method and Apparatus for a Control Plane to Manage Domain-Based Security and Mobility in an Information Centric Network |
US8898735B2 (en) * | 2011-09-21 | 2014-11-25 | Samsung Electronics Co., Ltd. | Network apparatus based on content name, method of generating and authenticating content name |
US20130111063A1 (en) * | 2011-11-01 | 2013-05-02 | Electronics And Telecommunications Research Institute | Routing method in content-centric network |
US20130173822A1 (en) * | 2011-12-28 | 2013-07-04 | Samsung Electronics Co., Ltd. | Method of implementing content-centric network (ccn) using internet protocol (ip)-based network in gateway, and gateway |
US9160648B2 (en) * | 2012-01-05 | 2015-10-13 | Samsung Electronics Co., Ltd. | Content-centric network and method of performing routing between domains therefor |
US8966122B2 (en) * | 2012-04-16 | 2015-02-24 | Opendns, Inc. | Cross-protocol communication in domain name systems |
US20130282920A1 (en) * | 2012-04-24 | 2013-10-24 | Futurewei Technologies, Inc. | Principal-Identity-Domain Based Naming Scheme for Information Centric Networks |
US20130339481A1 (en) * | 2012-06-11 | 2013-12-19 | Samsung Electronics Co., Ltd. | Method for content discovery of node in intra-domain and inter-domain in content centric network and node therefor |
US20130332955A1 (en) * | 2012-06-11 | 2013-12-12 | Samsung Electronics Co., Ltd. | Routing method for inter/intra-domain in content centric network |
US20140098819A1 (en) * | 2012-10-08 | 2014-04-10 | Electronics And Telecommunications Research Institute | Convergence network based on identifier and communication method using the same |
US9647876B2 (en) * | 2012-10-22 | 2017-05-09 | Futurewei Technologies, Inc. | Linked identifiers for multiple domains |
US20140173076A1 (en) * | 2012-12-14 | 2014-06-19 | Futurewei Technologies, Inc. | Method and Apparatus for Policy Based Routing in Information Centric Networking Based Home Networks |
US20150319204A1 (en) * | 2012-12-18 | 2015-11-05 | Orange | Technique for communication in a communication network centered on information |
US20160036730A1 (en) * | 2013-04-12 | 2016-02-04 | Nec Europe Ltd. | Method and system for providing an information centric network |
US20160149913A1 (en) * | 2013-06-28 | 2016-05-26 | TELEFONAKTIEBOLAGET L M ERRICSSON (publ) | Access Control in an Information Centric Network |
US20160255535A1 (en) * | 2013-10-30 | 2016-09-01 | Interdigital Patent Holdings, Inc. | Enabling information centric networks specialization |
US9401864B2 (en) * | 2013-10-31 | 2016-07-26 | Palo Alto Research Center Incorporated | Express header for packets with hierarchically structured variable-length identifiers |
US9521076B2 (en) * | 2014-01-02 | 2016-12-13 | Futurewei Technologies, Inc. | Method and apparatus for scalable content routing and mobility in named data networks |
US9246803B2 (en) * | 2014-01-02 | 2016-01-26 | Futurewei Technologies, Inc. | Method and apparatus for scalable content routing and mobility in named data networks |
US20170142226A1 (en) * | 2014-01-31 | 2017-05-18 | Interdigital Patent Holdings, Inc. | Methods, apparatuses and systems directed to enabling network federations through hash-routing and/or summary-routing based peering |
US20150248455A1 (en) * | 2014-02-28 | 2015-09-03 | Palo Alto Research Center Incorporated | Content name resolution for information centric networking |
US20150319241A1 (en) * | 2014-05-01 | 2015-11-05 | Palo Alto Research Center Incorporated | Accountable content stores for information centric networks |
US20180227390A1 (en) * | 2014-08-29 | 2018-08-09 | Idac Holdings, Inc. | Apparatus for interfacing between information centric networks (icns) and internet protocol (ip) networks |
US20160241510A1 (en) * | 2015-02-18 | 2016-08-18 | Go Daddy Operating Company, LLC | Generating consistent suggested domain names from user feedback |
US20170019371A1 (en) * | 2015-07-17 | 2017-01-19 | Verisign, Inc. | Methods and systems for domain name data networking |
US20170149934A1 (en) * | 2015-11-24 | 2017-05-25 | Le Holdings (Beijing) Co., Ltd. | Method, device and system for data cross-domain request |
US20170289140A1 (en) * | 2016-03-31 | 2017-10-05 | Oracle International Corporation | System and method for integrating a transactional middleware platform with a centralized access manager for single sign-on in an enterprise-level computing environment |
US9985930B2 (en) * | 2016-09-14 | 2018-05-29 | Wanpath, LLC | Reverse proxy for accessing local network over the internet |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190019402A1 (en) * | 2017-07-16 | 2019-01-17 | Sure Universal Ltd. | Set-top box gateway architecture for universal remote controller |
US10867507B2 (en) * | 2017-07-16 | 2020-12-15 | Sure Universal Ltd. | Set-top box gateway architecture for universal remote controller |
US20190327337A1 (en) * | 2018-04-19 | 2019-10-24 | Futurewei Technologies, Inc. | Secure and Reliable On-Demand Source Routing in an Information Centric Network |
US10986209B2 (en) * | 2018-04-19 | 2021-04-20 | Futurewei Technologies, Inc. | Secure and reliable on-demand source routing in an information centric network |
WO2020028793A1 (en) * | 2018-08-02 | 2020-02-06 | Synadia Communications, Inc. | System and method for a distributed computing cluster architecture |
US11388058B2 (en) | 2018-08-02 | 2022-07-12 | Synadia Communications Inc. | System and method for a distributed computing cluster architecture |
US11962471B2 (en) | 2018-08-02 | 2024-04-16 | Synadia Communications Inc. | System and method for a distributed computing cluster architecture |
US20190141568A1 (en) * | 2018-08-08 | 2019-05-09 | Ravikumar Balakrishnan | Publisher control in an information centric network |
US11218907B2 (en) * | 2018-08-08 | 2022-01-04 | Intel Corporation | Publisher control in an information centric network |
US11277492B2 (en) | 2019-04-17 | 2022-03-15 | Sure Universal Ltd. | Seamless connectivity to smart devices, cameras and home care devices over WiFi networks and cloud |
US11330613B2 (en) | 2020-03-09 | 2022-05-10 | Cisco Technology, Inc. | Video-call aware uplink scheduler using pending in interest table snooping |
Also Published As
Publication number | Publication date |
---|---|
CN109863734B (en) | 2022-08-30 |
US20180146071A1 (en) | 2018-05-24 |
US20190349445A1 (en) | 2019-11-14 |
US10805418B2 (en) | 2020-10-13 |
US20180146060A1 (en) | 2018-05-24 |
DE112017005885T5 (en) | 2019-08-01 |
US20180146058A1 (en) | 2018-05-24 |
US10785341B2 (en) | 2020-09-22 |
US20180145927A1 (en) | 2018-05-24 |
US20180146059A1 (en) | 2018-05-24 |
US10681166B2 (en) | 2020-06-09 |
US10979522B2 (en) | 2021-04-13 |
WO2018093813A1 (en) | 2018-05-24 |
US10848584B2 (en) | 2020-11-24 |
US11316946B2 (en) | 2022-04-26 |
US10244071B2 (en) | 2019-03-26 |
US11601522B2 (en) | 2023-03-07 |
CN109863734A (en) | 2019-06-07 |
US20200059529A1 (en) | 2020-02-20 |
US10681167B2 (en) | 2020-06-09 |
US20210377359A1 (en) | 2021-12-02 |
US20210105335A1 (en) | 2021-04-08 |
US20180146041A1 (en) | 2018-05-24 |
US10834223B2 (en) | 2020-11-10 |
US20180145907A1 (en) | 2018-05-24 |
US10356197B2 (en) | 2019-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180145945A1 (en) | Information centric network island bridging | |
US11770296B2 (en) | Decentralized data storage and processing for IoT devices | |
US9769034B2 (en) | Method and apparatus for policy based routing in information centric networking based home networks | |
Liu et al. | Efficient naming, addressing and profile services in Internet-of-Things sensory environments | |
EP3043585A1 (en) | Systems and methods for providing iot services | |
EP3005659B1 (en) | Load balancing in the internet of things | |
EP3758334B1 (en) | Optimizing operations in icn based networks | |
JP6302050B2 (en) | System and method for improved discovery | |
JP5957111B2 (en) | Service discovery in service-oriented architecture (SOA) networks | |
Kalghoum et al. | Towards a novel cache replacement strategy for named data networking based on software defined networking | |
Atzori et al. | Enhancing identifier/locator splitting through social internet of things | |
Moreno-Vozmediano | A hybrid mechanism for resource/service discovery in ad-hoc grids | |
Li et al. | Delivering internet-of-things services in MobilityFirst future internet architecture | |
Balakrishnan et al. | Aspect oriented middleware for Internet of things: a state-of-the art survey of service discovery approaches | |
US20200220919A1 (en) | Overlay resource trees in a communication network | |
Benomar et al. | Enabling secure RESTful web services in IoT using OpenStack | |
Corujo et al. | Research challenges towards a managed information-centric network of things | |
Sazonov et al. | Identification system model for energy-efficient long range mesh network based on digital object architecture | |
Gulati et al. | Software-defined content dissemination scheme for Internet of healthcare vehicles in COVID-like scenarios | |
Sooraj et al. | Naming services in the Internet of Things | |
Ayed et al. | Blockchain and IoT: A proposed security framework | |
Wirtz et al. | Opening the loops-Towards semantic, information-centric networking in the Internet of Things | |
US20240146685A1 (en) | Capability discovery in an information centric network | |
Yassine et al. | Routing approaches in named data network: a survey and emerging research challenges | |
Zhou et al. | Service discovery protocol in wireless sensor networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTEL CORPORATION, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GUPTA HYDE, MARUTI;SCHOOLER, EVE M.;SRIKANTESWARA, SRIKATHYAYANI;AND OTHERS;SIGNING DATES FROM 20170505 TO 20170706;REEL/FRAME:043432/0383 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STCV | Information on status: appeal procedure |
Free format text: APPEAL BRIEF (OR SUPPLEMENTAL BRIEF) ENTERED AND FORWARDED TO EXAMINER |
|
STCV | Information on status: appeal procedure |
Free format text: ON APPEAL -- AWAITING DECISION BY THE BOARD OF APPEALS |
|
STCV | Information on status: appeal procedure |
Free format text: BOARD OF APPEALS DECISION RENDERED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION |