AllJoyn SYSTEM ARCHITECTURE

来源:互联网 发布:淘宝营销活动有哪些 编辑:程序博客网 时间:2024/06/03 04:45

原文链接:

https://allseenalliance.org/developers/learn/core/system-description/system-architecture

 

SYSTEM ARCHITECTURE

Network architecture

AllJoyn®网络架构取决于网络部署方案。本部分记录了以下部署方案:

·        独立AllJoyn网络(StandaloneAllJoyn network):一个近端网络与一组可能被连接在相同或不同的接入介质的的对等设备。

·        远程可访问AllJoyn网络(Remoteaccessible AllJoyn network):近端网络中的设备所提供的服务都可以从近端网络之外被访问和控制。

Standalone AllJoyn network

独立的AllJoyn网络架构相对比较简单,它由两个或更多对等节点走到一起,并动态地形成一个AllJoyn网络。对等节点可以通过不同的接入网络连接在一起,比如Wi-Fi.。AllJoyn发布和发现机制无缝地发现这些对端设备,不用关心底层使用的传输机制。

下图描述一个典型的独立AllJoyn网络的网络架构。

Figure: Standalone AllJoyn network architecture

注:在Wi-Fi部署中,AllJoyn框架要求Wi-Fi接入点关闭无线隔离(Wireless Isolation),以使用点对点通信。(Enable WirelessIsolation : When enabled, devices connected over wirelesscan only access the Internet. They won't be able to access any other devices orlog in to your router.)

Bridging multiple transports/桥接多种传输技术

独立的AllJoyn网络中的节点可以通过有线或者无线链接,包括通过Wi-Fi,PLC(Power-line communication,电力线上网)和以太网连接。只要Wi-Fi AP关闭无线隔离,位于这种网络中的网络节点就可以相互通信。

下图描述一个设备通过Wi-Fi,PLC,和以太网传输连接的AllJoyn网络的上层网络架构。

Figure: Bridging multiple transports

Remote accessible AllJoyn network

远程可访问AllJoyn网络是一个近端IoE网络,其中的设备所提供的服务都可以从近端IOE网络之外被访问和/或控制。远程可访问性是通过系统中的一个网关节点来实现的。网关节点通过标准的互联网风格的API(例如REST)暴露设备的功能和控制给现有的基于云的服务。近端IoE网络之外的移动设备可以通过基于云的服务,以及通过网关节点和近端IOE网络内的设备进行通信。

下图描述一个远程可访问AllJoyn网络的上层网络架构。

Figure: Remote accessible AllJoyn network architecture

Device architecture

使能AllJoyn的设备可以支持一个或多个AllJoyn应用。设备(例如移动电话和平板)上的每个应用可以捆绑一个AllJoyn路由器。或者,设备上的AllJoyn路由器可以作为独立路由器运行,设备上的分多个应用共享该AllJoyn路由器;这种设备的例子包括电视和机顶盒(STB:set-top box)等。此外还可以进行混合部署,一台设备同时具有捆绑AllJoyn路由器服务于某些应用,还具有一个独立的AllJoyn路由器服务于设备上的其他应用。

注意:一个应用程序总是寻找一个预装的AllJoyn核心,所以这只会在如下情况下才发生:如果预装的AllJoyn核心的版本低于捆绑的AllJoyn核心。

下面描述AllJoyn设备的部署方案:

·        捆绑AllJoyn路由器和单一的应用程序

·        捆绑AllJoyn路由器和多个应用程序

·        独立的AllJoyn路由器和多个应用程序

Single app with bundled AllJoyn router

在这个部署方案中,AllJoyn应用程序包包括一个应用程序和一个AllJoyn路由器。该应用可以支持特定应用的服务,以及一个或多个服务框架。应用程序通过AllJoyn标准核心库连接到AllJoyn路由器。捆绑AllJoyn路由器情况中,应用和AllJoyn路由器之间的通信是本地的(在同一进程),可以使用函数/API调用来完成。

下图描述捆绑AllJoyn路由器部署情况下单个应用的AllJoyn设备架构。

Figure: AllJoyn device architecture (single app with bundled AllJoynrouter)

Multiple apps with bundled AllJoyn router

在这个部署方案中,AllJoyn功能的设备支持多个应用程序。这些应用都捆绑一个AllJoyn路由器的实例。

下图描述捆绑AllJoyn路由器部署场景中多个应用程序的AllJoyn设备架构。

Figure: AllJoyn device architecture (multiple apps with bundled AllJoynrouter)

Multiple apps with standalone AllJoynrouter

在这个部署方案中,AllJoyn功能的设备支持一个独立的AllJoyn路由器。设备上的多个应用程序的连接和使用相同的独立的AllJoyn路由器。应用程序和独立AllJoyn路由器之间的通信是跨进程边界的,可以使用象UNIX域套接字或TCP这样的方式来传输。

下图描述一个独立的AllJoyn路由器部署场景中多个应用程序的AllJoyn设备架构。

Figure: AllJoyn device architecture (multiple apps with standalone AllJoynrouter)

AllJoyn router architecture

AllJoyn路由器提供了许多功能,以支持AllJoyn架构的主要特征。下图描述AllJoyn路由器的功能体系结构。

Figure: AllJoyn router functional architecture

AllJoyn路由器支持的主要功能使用到多种底层传输机制。广告和搜索模块(Advertisement and Discovery module)提供传输机制无关的广播和发现功能。同样地,显示为其他的功能,包括会议,数据交换,以及无会话信号模块,都提供传输机制无关的功能。所有这些AllJoyn功能工作在各种传输机制上包括Wi-Fi,有线传输,蓝牙,以及其他任何本地传输方式。

AllJoyn总线管理和控制功能由总线管理模块(Bus Management module)提供。安全模块(Security module)提供AllJoyn的安全功能,包括基于SASL的认证。

消息和信号传输层(Message and Signal Transport layer)负责将应用层信令和数据封装成D-Bus格式的消息封装。传输抽象层(Transport Abstraction Layer)为核心AllJoyn功能提供各种底层传输机制的抽象。Bluetooth等各种传输相关的模块提供特定的传输功能来完成核心AllJoyn功能。AllJoyn路由器使用操作系统抽象层(OS Abstraction Layer)来与不同的底层操作系统平台进行交互。

Thin app architecture

AllJoyn精简应用程序是专为能源,内存和CPU资源受限的设备设计的。精简应用程序被设计成具有非常小的内存占用,并且通常是单线程。精简应用程序包括应用程序代码和AllJoyn精简核心库(AJTCL);它不包括AllJoyn路由器。

精简AllJoyn设备只有一个轻量级的应用程序,它使用运行在其他标准AllJoyn设备上的AllJoyn路由器来发广告,探索,并与其他AllJoyn设备交流。精简应用程序和AllJoyn路由器之间的通信跨设备边界,采用TCP传输。

下图描述AllJoyn精简应用程序的体系结构。

Figure: AllJoyn thin app architecture

AllJoyn frameworkprotocol stack

下图描述AllJoyn框架协议栈。

Figure: AllJoyn protocol stack

AllJoyn框架协议的顶层是应用程序,它提供许多应用层服务和支持一些服务框架。这些应用层服务通过该应用所支持的AllJoyn接口定义。应用程序位于AllJoyn核心库之上,它可以调用核心AllJoyn功能。

AllJoyn核心库下面是AllJoyn路由器,它实现核心AllJoyn特性,包括广告/发现,会话建立,无会话信号,认证等。AllJoyn路由器支持采用多种底层传输方法来进行发现和通信,并为支持的底层传输提供了一个抽象传输层。AllJoyn路由器属于标准OSI分层模型中的应用层。

AllJoyn路由器之下是标准的OSI层:传输,网络,第2层和物理层。

 

0 0
原创粉丝点击