用于可扩展设备发现的边缘便利消息代理:海报

Zhe Huang, Bharath Balasubramanian, Azzam Alsudais, Kaustubh R. Joshi
{"title":"用于可扩展设备发现的边缘便利消息代理:海报","authors":"Zhe Huang, Bharath Balasubramanian, Azzam Alsudais, Kaustubh R. Joshi","doi":"10.1145/3132211.3132456","DOIUrl":null,"url":null,"abstract":"Searching for a particular device in an ocean of devices is a perfect illustration of the idiom 'searching a needle in a haystack'. Yet the future IoT and edge computing platforms are facing an even more challenging problem because their mission-critical operations (e.g., application orchestration, device and application telemetry, inventory management) depend on their capability of identifying nodes of interest from potentially millions of service providers across the globe according to highly dynamic attributes such as geo-location information, bandwidth availability, real-time workload and so on. For example, a vehicular-based crowd sensing application that collects air quality data near an exit of a highway needs to locate cars in close proximity to the exit among millions of cars running on the road. In a business model where an enterprise offers a framework for clients to avail such edge/IoT services, we investigate the following problem: \"among millions of IoT/Edge nodes, how do we locate and communicate with only those nodes that satisfy certain attributes, especially when some of these attributes change rapidly?\" In this paper, we address this problem through the design of a scalable message broker based on the following novel intuition: device discovery should be a joint effort between a centrally managed enterprise-level system (high availability, low accuracy) and the fully decentralized edge (high accuracy, unpredictable availability). To elaborate, the enterprise can centrally maintain and manage the attributes of all the IoT devices. However, since millions of devices cannot constantly update their attribute information, central management has the issue of attribute staleness. Clearly the devices themselves have the most up-to-date information. However, it is not feasible for every request to be routed to million devices connected by unpredictable networks, where only some of them may possess the correct attributes. In this paper, we propose a message broker, in which requests for relatively static device attributes are handled by the centrally managed system, whereas, requests for dynamic attributes are handled by peer-to-peer networks of the edge devices containing those attributes. This combination provides a scalable solution wherein, based on client needs, we can obtain attribute values without compromising on freshness or performance. There exist several previous works that aim to tackle the device searching problem. Name-based networking solutions such as Intentional Naming System (INS) [1], Auspice [5], and global name service [3] propose to implement a centrally managed name resolution service. Devices periodically update their status information and descriptions in a push approach. While maintaining complete knowledge of every device in the network centrally makes the searching much easier, the excessive workload from millions of devices updating their status in a highly dynamic environment renders the scheme unsaleable. At the other end of the spectrum, a pull-based solution such as Geocast [2] eliminates the status update workload entirely by forwarding device searching query to the devices and relying on the devices to voluntarily identify themselves if their status and attributes match the query. However, the pull-based solutions require an attribute-aware message routing scheme such as distributed hash table [4] that knows exactly how to reach to devices that may match the query. Such design also suffers from longer query response delay caused by query forwarding, and increased security risks because they trust the devices to honestly report their identities and attributes. A better solution should be able to combine the strengths from both the push and pull design principles. Based on the targeted edge/IoT enviroment and applications, we identify the following design goals for a message broker being able to support a large scale, highly dynamic network enviroment: • Searchability. The message broker must be able to identify and access devices according to arbitrary attributes, service descriptions and queries. • Verifiability. The message broker must be able to verify attributes and descriptions with the authoritative information source. • Scalability. The message broker must be able to support a large scale deployment with minimum infrastructure cost. • Timeliness. The message broker must identify devices according to the latest attributes and device status when requested by the users. • Inclusiveness. The message broker must return a device list that contains every active devices that match the received query. • Robustness. The message broker must be resilient to service failures and high network churn. In our design, searchability allows the message broker to be expressive so that applications and devices can declare their own attribute keys and values. The message broker allows device query to contain tailor-made device searching logic so that the applications have tremendous flexibility to define how to identify the corresponding nodes of interest. Among the declared attribute keys and values, the applications also have the freedom to declare who are the authoritative source of information for each attribute. Only the authoritative information source is allowed to access and modify certain attribute field of the corresponding devices. Such verifiability can effectively prevent malicious attacks such as identity spoofing and eavesdropping. To achieve scalability, the message broker offloads the device status upload workload to the end devices. Some selected end devices will receive status update from others. By maintaining the list of such representative devices, the message broker service is capable of pulling the up-to-date device status when needed. The message broker can effectively offset the extra workload of frequently updating the dynamic attribute by limiting the scope of message exchanges. This mechanism allows the message broker to offer multi-granular attribute update channels for applications with different timeliness requirements. Static attributes such as device affiliation can be updated through a global channel while a dynamic attribute such as geo-location will be exchanged in a smaller scope. In the extreme cases where real-time varying attributes will be collected, devices are no longer exchanging/updating their attributes and status information with other devices. A communication channel will be established among the nodes of interests for pulling the status and attributes directly in an on-demand manner. In our design, the inclusiveness and robustness are achieved by strong semantics that regulate and manage the message exchanges among devices. The inclusiveness guarantees that the applications can reach every active node of interest through the message broker. It givens the applications complete view of available services and resources in the globe. Each of the components is designed and implemented as a distributed system which tolerates certain level of failures. More importantly, they are designed to be self-sustainable so that they do not depend on each other to function properly. Figure 1 shows the architecture of our proposed message broker system that we refer to as EF-broker. EF-broker mainly provides three services: (1) device discovery and inventory management (DDIM), (2) dynamic group management (DGM), and (3) communication channel orchestration engine (CCOE). The DDIM is implemented as a centrally managed, geo-distributed bookkeeping service that maintain a global view of all active devices. It serves as the rendezvous point of newly arrived devices while it also maintains the availability of devices by requiring them to update their attributes and status in a low frequency as heartbeat signals. Such global attribute update channel disseminates the status update messages to geo-distributed DDIM servers in an eventual consistent manner. DDIM is capable of answering device queries that depend on relatively static attribute values efficiently. To keep track of dynamic device attributes whose values change frequently, for each dynamic attribute key, a peer-to-peer cluster of devices that we refer to as dynamic group (DG) are created. Devices in the same DG exchange attributes and status information in a much higher frequency using gossip protocols. Because of the gossip protocols, every device maintains fresh attributes and status of other members in the same group. Representative devices are selected as the entry points of each DG. The representative nodes disseminate and maintain the membership list of the DG in a strong consistent manner in order to achieve inclusiveness. The centrally managed, geo-distributed dynamic group management (DGM) service is introduced to manage the life-cycles of a large number of DGs. It is responsible of creating, terminating, splitting, merging of DGs, as well as maintaining and repairing entry points for DGs. The DGM service provides a more fine-granular attribute update channel by forwarding device queries to the entry points of the appropriate DGs. At last, EF-broker is also capable of creating pub-sub channels among devices in the DGs in an on-demand manner so that applications can pull real-time attributes and status directly from the nodes of interests. The CCOE is introduced to manage the life-cycles of the pub-sub channels.","PeriodicalId":389022,"journal":{"name":"Proceedings of the Second ACM/IEEE Symposium on Edge Computing","volume":"15 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2017-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":"{\"title\":\"An edge-facilitated message broker for scalable device discovery: poster\",\"authors\":\"Zhe Huang, Bharath Balasubramanian, Azzam Alsudais, Kaustubh R. Joshi\",\"doi\":\"10.1145/3132211.3132456\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Searching for a particular device in an ocean of devices is a perfect illustration of the idiom 'searching a needle in a haystack'. Yet the future IoT and edge computing platforms are facing an even more challenging problem because their mission-critical operations (e.g., application orchestration, device and application telemetry, inventory management) depend on their capability of identifying nodes of interest from potentially millions of service providers across the globe according to highly dynamic attributes such as geo-location information, bandwidth availability, real-time workload and so on. For example, a vehicular-based crowd sensing application that collects air quality data near an exit of a highway needs to locate cars in close proximity to the exit among millions of cars running on the road. In a business model where an enterprise offers a framework for clients to avail such edge/IoT services, we investigate the following problem: \\\"among millions of IoT/Edge nodes, how do we locate and communicate with only those nodes that satisfy certain attributes, especially when some of these attributes change rapidly?\\\" In this paper, we address this problem through the design of a scalable message broker based on the following novel intuition: device discovery should be a joint effort between a centrally managed enterprise-level system (high availability, low accuracy) and the fully decentralized edge (high accuracy, unpredictable availability). To elaborate, the enterprise can centrally maintain and manage the attributes of all the IoT devices. However, since millions of devices cannot constantly update their attribute information, central management has the issue of attribute staleness. Clearly the devices themselves have the most up-to-date information. However, it is not feasible for every request to be routed to million devices connected by unpredictable networks, where only some of them may possess the correct attributes. In this paper, we propose a message broker, in which requests for relatively static device attributes are handled by the centrally managed system, whereas, requests for dynamic attributes are handled by peer-to-peer networks of the edge devices containing those attributes. This combination provides a scalable solution wherein, based on client needs, we can obtain attribute values without compromising on freshness or performance. There exist several previous works that aim to tackle the device searching problem. Name-based networking solutions such as Intentional Naming System (INS) [1], Auspice [5], and global name service [3] propose to implement a centrally managed name resolution service. Devices periodically update their status information and descriptions in a push approach. While maintaining complete knowledge of every device in the network centrally makes the searching much easier, the excessive workload from millions of devices updating their status in a highly dynamic environment renders the scheme unsaleable. At the other end of the spectrum, a pull-based solution such as Geocast [2] eliminates the status update workload entirely by forwarding device searching query to the devices and relying on the devices to voluntarily identify themselves if their status and attributes match the query. However, the pull-based solutions require an attribute-aware message routing scheme such as distributed hash table [4] that knows exactly how to reach to devices that may match the query. Such design also suffers from longer query response delay caused by query forwarding, and increased security risks because they trust the devices to honestly report their identities and attributes. A better solution should be able to combine the strengths from both the push and pull design principles. Based on the targeted edge/IoT enviroment and applications, we identify the following design goals for a message broker being able to support a large scale, highly dynamic network enviroment: • Searchability. The message broker must be able to identify and access devices according to arbitrary attributes, service descriptions and queries. • Verifiability. The message broker must be able to verify attributes and descriptions with the authoritative information source. • Scalability. The message broker must be able to support a large scale deployment with minimum infrastructure cost. • Timeliness. The message broker must identify devices according to the latest attributes and device status when requested by the users. • Inclusiveness. The message broker must return a device list that contains every active devices that match the received query. • Robustness. The message broker must be resilient to service failures and high network churn. In our design, searchability allows the message broker to be expressive so that applications and devices can declare their own attribute keys and values. The message broker allows device query to contain tailor-made device searching logic so that the applications have tremendous flexibility to define how to identify the corresponding nodes of interest. Among the declared attribute keys and values, the applications also have the freedom to declare who are the authoritative source of information for each attribute. Only the authoritative information source is allowed to access and modify certain attribute field of the corresponding devices. Such verifiability can effectively prevent malicious attacks such as identity spoofing and eavesdropping. To achieve scalability, the message broker offloads the device status upload workload to the end devices. Some selected end devices will receive status update from others. By maintaining the list of such representative devices, the message broker service is capable of pulling the up-to-date device status when needed. The message broker can effectively offset the extra workload of frequently updating the dynamic attribute by limiting the scope of message exchanges. This mechanism allows the message broker to offer multi-granular attribute update channels for applications with different timeliness requirements. Static attributes such as device affiliation can be updated through a global channel while a dynamic attribute such as geo-location will be exchanged in a smaller scope. In the extreme cases where real-time varying attributes will be collected, devices are no longer exchanging/updating their attributes and status information with other devices. A communication channel will be established among the nodes of interests for pulling the status and attributes directly in an on-demand manner. In our design, the inclusiveness and robustness are achieved by strong semantics that regulate and manage the message exchanges among devices. The inclusiveness guarantees that the applications can reach every active node of interest through the message broker. It givens the applications complete view of available services and resources in the globe. Each of the components is designed and implemented as a distributed system which tolerates certain level of failures. More importantly, they are designed to be self-sustainable so that they do not depend on each other to function properly. Figure 1 shows the architecture of our proposed message broker system that we refer to as EF-broker. EF-broker mainly provides three services: (1) device discovery and inventory management (DDIM), (2) dynamic group management (DGM), and (3) communication channel orchestration engine (CCOE). The DDIM is implemented as a centrally managed, geo-distributed bookkeeping service that maintain a global view of all active devices. It serves as the rendezvous point of newly arrived devices while it also maintains the availability of devices by requiring them to update their attributes and status in a low frequency as heartbeat signals. Such global attribute update channel disseminates the status update messages to geo-distributed DDIM servers in an eventual consistent manner. DDIM is capable of answering device queries that depend on relatively static attribute values efficiently. To keep track of dynamic device attributes whose values change frequently, for each dynamic attribute key, a peer-to-peer cluster of devices that we refer to as dynamic group (DG) are created. Devices in the same DG exchange attributes and status information in a much higher frequency using gossip protocols. Because of the gossip protocols, every device maintains fresh attributes and status of other members in the same group. Representative devices are selected as the entry points of each DG. The representative nodes disseminate and maintain the membership list of the DG in a strong consistent manner in order to achieve inclusiveness. The centrally managed, geo-distributed dynamic group management (DGM) service is introduced to manage the life-cycles of a large number of DGs. It is responsible of creating, terminating, splitting, merging of DGs, as well as maintaining and repairing entry points for DGs. The DGM service provides a more fine-granular attribute update channel by forwarding device queries to the entry points of the appropriate DGs. At last, EF-broker is also capable of creating pub-sub channels among devices in the DGs in an on-demand manner so that applications can pull real-time attributes and status directly from the nodes of interests. The CCOE is introduced to manage the life-cycles of the pub-sub channels.\",\"PeriodicalId\":389022,\"journal\":{\"name\":\"Proceedings of the Second ACM/IEEE Symposium on Edge Computing\",\"volume\":\"15 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2017-10-12\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"1\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of the Second ACM/IEEE Symposium on Edge Computing\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/3132211.3132456\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the Second ACM/IEEE Symposium on Edge Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3132211.3132456","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

摘要

在设备的海洋中搜索特定的设备是“大海捞针”这个成语的完美例证。然而,未来的物联网和边缘计算平台正面临着一个更具挑战性的问题,因为它们的关键任务操作(例如,应用程序编排、设备和应用程序遥测、库存管理)依赖于它们根据地理位置信息、带宽可用性、实时工作负载等高度动态属性,从全球数百万潜在服务提供商中识别感兴趣节点的能力。例如,一个基于车辆的人群传感应用程序收集高速公路出口附近的空气质量数据,需要在道路上行驶的数百万辆汽车中定位靠近出口的汽车。在企业为客户提供框架以利用此类边缘/物联网服务的商业模式中,我们研究了以下问题:“在数百万个物联网/边缘节点中,我们如何定位并仅与满足某些属性的节点进行通信,特别是当其中一些属性快速变化时?”在本文中,我们通过基于以下新颖直觉的可伸缩消息代理的设计来解决这个问题:设备发现应该是集中管理的企业级系统(高可用性,低准确性)和完全分散的边缘(高精度,不可预测的可用性)之间的共同努力。具体来说,企业可以对所有物联网设备的属性进行集中维护和管理。然而,由于数以百万计的设备不能不断更新其属性信息,因此集中管理存在属性过时的问题。显然,这些设备本身拥有最新的信息。然而,将每个请求路由到由不可预测的网络连接的数百万个设备是不可行的,其中只有一些设备可能具有正确的属性。在本文中,我们提出了一个消息代理,其中对相对静态设备属性的请求由集中管理的系统处理,而对动态属性的请求由包含这些属性的边缘设备的对等网络处理。这种组合提供了一个可扩展的解决方案,根据客户端的需求,我们可以在不影响新鲜度或性能的情况下获得属性值。已有一些先前的工作旨在解决设备搜索问题。基于名称的网络解决方案,如意向命名系统(international Naming System, INS)[1]、祥和[5]和全局名称服务[3],建议实现集中管理的名称解析服务。设备以推送的方式定期更新其状态信息和描述。虽然集中维护网络中每个设备的完整信息使搜索变得更加容易,但在高度动态的环境中,数百万台设备更新其状态的过度工作量使该方案无法销售。另一方面,基于拉的解决方案,如Geocast[2],通过将设备搜索查询转发给设备,并依靠设备在其状态和属性与查询匹配时自动标识自己,完全消除了状态更新工作负载。然而,基于拉的解决方案需要一个属性感知的消息路由方案,例如分布式哈希表[4],它确切地知道如何到达可能匹配查询的设备。这样的设计还面临着由于查询转发而导致的更长的查询响应延迟,以及增加的安全风险,因为他们相信设备会诚实地报告他们的身份和属性。更好的解决方案应该能够结合推拉设计原则的优势。基于目标边缘/物联网环境和应用程序,我们确定了能够支持大规模,高度动态网络环境的消息代理的以下设计目标:消息代理必须能够根据任意属性、服务描述和查询来识别和访问设备。•可验证性。消息代理必须能够使用权威信息源验证属性和描述。•可伸缩性。消息代理必须能够以最小的基础设施成本支持大规模部署。•及时性。当用户请求时,消息代理必须根据最新的属性和设备状态标识设备。•包容。消息代理必须返回一个设备列表,其中包含与接收到的查询匹配的所有活动设备。•鲁棒性。消息代理必须能够适应服务故障和高网络波动。在我们的设计中,可搜索性允许消息代理具有表现力,以便应用程序和设备可以声明它们自己的属性键和值。 消息代理允许设备查询包含定制的设备搜索逻辑,以便应用程序在定义如何识别感兴趣的相应节点方面具有极大的灵活性。在声明的属性键和值中,应用程序还可以自由声明谁是每个属性的权威信息源。只有权威信息源才能访问和修改相应设备的某些属性字段。这种可验证性可以有效防止身份欺骗、窃听等恶意攻击。为了实现可伸缩性,消息代理将设备状态上传工作负载卸载到终端设备。一些选定的终端设备将接收来自其他设备的状态更新。通过维护这些代表性设备的列表,消息代理服务能够在需要时获取最新的设备状态。通过限制消息交换的范围,消息代理可以有效地抵消频繁更新动态属性的额外工作负载。此机制允许消息代理为具有不同时效性需求的应用程序提供多粒度属性更新通道。诸如设备关联之类的静态属性可以通过全局通道更新,而诸如地理位置之类的动态属性将在较小的范围内交换。在收集实时变化属性的极端情况下,设备不再与其他设备交换/更新其属性和状态信息。在兴趣节点之间建立通信通道,按需直接提取状态和属性。在我们的设计中,通过规范和管理设备之间的消息交换的强语义来实现包容性和鲁棒性。包容性保证了应用程序可以通过消息代理到达每个感兴趣的活动节点。它为应用程序提供了全球可用服务和资源的完整视图。每个组件都被设计和实现为一个分布式系统,它可以容忍一定程度的故障。更重要的是,它们的设计是自我可持续的,这样它们就不依赖于彼此来正常工作。图1显示了我们提议的消息代理系统的体系结构,我们将其称为EF-broker。EF-broker主要提供三种服务:(1)设备发现和库存管理(DDIM);(2)动态组管理(DGM);(3)通信通道编排引擎(CCOE)。DDIM实现为集中管理的地理分布式簿记服务,它维护所有活动设备的全局视图。它作为新到达设备的集合点,同时它还通过要求设备以低频率更新其属性和状态(作为心跳信号)来维护设备的可用性。这样的全局属性更新通道以最终一致的方式将状态更新消息传播到地理分布的DDIM服务器。DDIM能够有效地回答依赖于相对静态属性值的设备查询。为了跟踪其值经常变化的动态设备属性,对于每个动态属性键,将创建一个对等的设备集群,我们将其称为动态组(DG)。同一DG中的设备使用八卦协议以更高的频率交换属性和状态信息。由于八卦协议,每个设备都保持同一组中其他成员的新属性和状态。选择有代表性的设备作为每个DG的入口点。代表节点以强有力的一致方式分发和维护总干事的成员名单,以实现包容性。引入集中管理的地理分布式动态组管理(DGM)服务,对大量dg的生命周期进行管理。它负责创建,终止,分裂,合并dg,以及维护和修复dg的入口点。DGM服务通过将设备查询转发到适当dg的入口点来提供更细粒度的属性更新通道。最后,EF-broker还能够在dg中的设备之间按需创建pub-sub通道,以便应用程序可以直接从感兴趣的节点中提取实时属性和状态。引入CCOE来管理发布-子通道的生命周期。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
An edge-facilitated message broker for scalable device discovery: poster
Searching for a particular device in an ocean of devices is a perfect illustration of the idiom 'searching a needle in a haystack'. Yet the future IoT and edge computing platforms are facing an even more challenging problem because their mission-critical operations (e.g., application orchestration, device and application telemetry, inventory management) depend on their capability of identifying nodes of interest from potentially millions of service providers across the globe according to highly dynamic attributes such as geo-location information, bandwidth availability, real-time workload and so on. For example, a vehicular-based crowd sensing application that collects air quality data near an exit of a highway needs to locate cars in close proximity to the exit among millions of cars running on the road. In a business model where an enterprise offers a framework for clients to avail such edge/IoT services, we investigate the following problem: "among millions of IoT/Edge nodes, how do we locate and communicate with only those nodes that satisfy certain attributes, especially when some of these attributes change rapidly?" In this paper, we address this problem through the design of a scalable message broker based on the following novel intuition: device discovery should be a joint effort between a centrally managed enterprise-level system (high availability, low accuracy) and the fully decentralized edge (high accuracy, unpredictable availability). To elaborate, the enterprise can centrally maintain and manage the attributes of all the IoT devices. However, since millions of devices cannot constantly update their attribute information, central management has the issue of attribute staleness. Clearly the devices themselves have the most up-to-date information. However, it is not feasible for every request to be routed to million devices connected by unpredictable networks, where only some of them may possess the correct attributes. In this paper, we propose a message broker, in which requests for relatively static device attributes are handled by the centrally managed system, whereas, requests for dynamic attributes are handled by peer-to-peer networks of the edge devices containing those attributes. This combination provides a scalable solution wherein, based on client needs, we can obtain attribute values without compromising on freshness or performance. There exist several previous works that aim to tackle the device searching problem. Name-based networking solutions such as Intentional Naming System (INS) [1], Auspice [5], and global name service [3] propose to implement a centrally managed name resolution service. Devices periodically update their status information and descriptions in a push approach. While maintaining complete knowledge of every device in the network centrally makes the searching much easier, the excessive workload from millions of devices updating their status in a highly dynamic environment renders the scheme unsaleable. At the other end of the spectrum, a pull-based solution such as Geocast [2] eliminates the status update workload entirely by forwarding device searching query to the devices and relying on the devices to voluntarily identify themselves if their status and attributes match the query. However, the pull-based solutions require an attribute-aware message routing scheme such as distributed hash table [4] that knows exactly how to reach to devices that may match the query. Such design also suffers from longer query response delay caused by query forwarding, and increased security risks because they trust the devices to honestly report their identities and attributes. A better solution should be able to combine the strengths from both the push and pull design principles. Based on the targeted edge/IoT enviroment and applications, we identify the following design goals for a message broker being able to support a large scale, highly dynamic network enviroment: • Searchability. The message broker must be able to identify and access devices according to arbitrary attributes, service descriptions and queries. • Verifiability. The message broker must be able to verify attributes and descriptions with the authoritative information source. • Scalability. The message broker must be able to support a large scale deployment with minimum infrastructure cost. • Timeliness. The message broker must identify devices according to the latest attributes and device status when requested by the users. • Inclusiveness. The message broker must return a device list that contains every active devices that match the received query. • Robustness. The message broker must be resilient to service failures and high network churn. In our design, searchability allows the message broker to be expressive so that applications and devices can declare their own attribute keys and values. The message broker allows device query to contain tailor-made device searching logic so that the applications have tremendous flexibility to define how to identify the corresponding nodes of interest. Among the declared attribute keys and values, the applications also have the freedom to declare who are the authoritative source of information for each attribute. Only the authoritative information source is allowed to access and modify certain attribute field of the corresponding devices. Such verifiability can effectively prevent malicious attacks such as identity spoofing and eavesdropping. To achieve scalability, the message broker offloads the device status upload workload to the end devices. Some selected end devices will receive status update from others. By maintaining the list of such representative devices, the message broker service is capable of pulling the up-to-date device status when needed. The message broker can effectively offset the extra workload of frequently updating the dynamic attribute by limiting the scope of message exchanges. This mechanism allows the message broker to offer multi-granular attribute update channels for applications with different timeliness requirements. Static attributes such as device affiliation can be updated through a global channel while a dynamic attribute such as geo-location will be exchanged in a smaller scope. In the extreme cases where real-time varying attributes will be collected, devices are no longer exchanging/updating their attributes and status information with other devices. A communication channel will be established among the nodes of interests for pulling the status and attributes directly in an on-demand manner. In our design, the inclusiveness and robustness are achieved by strong semantics that regulate and manage the message exchanges among devices. The inclusiveness guarantees that the applications can reach every active node of interest through the message broker. It givens the applications complete view of available services and resources in the globe. Each of the components is designed and implemented as a distributed system which tolerates certain level of failures. More importantly, they are designed to be self-sustainable so that they do not depend on each other to function properly. Figure 1 shows the architecture of our proposed message broker system that we refer to as EF-broker. EF-broker mainly provides three services: (1) device discovery and inventory management (DDIM), (2) dynamic group management (DGM), and (3) communication channel orchestration engine (CCOE). The DDIM is implemented as a centrally managed, geo-distributed bookkeeping service that maintain a global view of all active devices. It serves as the rendezvous point of newly arrived devices while it also maintains the availability of devices by requiring them to update their attributes and status in a low frequency as heartbeat signals. Such global attribute update channel disseminates the status update messages to geo-distributed DDIM servers in an eventual consistent manner. DDIM is capable of answering device queries that depend on relatively static attribute values efficiently. To keep track of dynamic device attributes whose values change frequently, for each dynamic attribute key, a peer-to-peer cluster of devices that we refer to as dynamic group (DG) are created. Devices in the same DG exchange attributes and status information in a much higher frequency using gossip protocols. Because of the gossip protocols, every device maintains fresh attributes and status of other members in the same group. Representative devices are selected as the entry points of each DG. The representative nodes disseminate and maintain the membership list of the DG in a strong consistent manner in order to achieve inclusiveness. The centrally managed, geo-distributed dynamic group management (DGM) service is introduced to manage the life-cycles of a large number of DGs. It is responsible of creating, terminating, splitting, merging of DGs, as well as maintaining and repairing entry points for DGs. The DGM service provides a more fine-granular attribute update channel by forwarding device queries to the entry points of the appropriate DGs. At last, EF-broker is also capable of creating pub-sub channels among devices in the DGs in an on-demand manner so that applications can pull real-time attributes and status directly from the nodes of interests. The CCOE is introduced to manage the life-cycles of the pub-sub channels.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
High speed object tracking using edge computing: poster abstract Parkmaster: an in-vehicle, edge-based video analytics service for detecting open parking spaces in urban environments PredriveID: pre-trip driver identification from in-vehicle data Privacy-preserving of platoon-based V2V in collaborative edge: poster abstract Fast and accurate object analysis at the edge for mobile augmented reality: demo
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1