没有合适的资源?快使用搜索试试~ 我知道了~
ALLJOYN_THIN_CORE_chinese
需积分: 0 22 下载量 191 浏览量
2015-10-14
18:17:00
上传
评论
收藏 341KB PDF 举报
温馨提示
试读
12页
ALLJOYN_THIN_CORE的中文翻译
资源详情
资源评论
资源推荐
原文连接:https://allseenalliance.org/developers/learn/core/thin-core
380939960@qq.com
ALLJOYN® THIN CORE
Overview
AllJoyn 是一个开放源代码的软件系统,提供跨越不同设备类别运行的分布式应用程序的环境,并强调移动性,
安全性和动态配置。 AllJoyn 是“平台中立”,这意味着它被设计为尽可能独立于它所在设备上的操作系统,
硬件以及软件;做到和操作系统无关,和硬件无关,和软件无关。
AllJoyn 标准核心库(AJSCL)的组件被设计为可以运行在 Microsoft Windows,Linux,Android,iOS,OS X,
OpenWRT,或者作为互联网浏览器的插件。所有这些软件系统的一个共同特点是:它们运行在通用计算机上。
通用计算机通常具有可观的内存,可利用的能量,计算能力,以及支持多进程/多线程和多语言的操作系统
另一方面,嵌入式系统被设计成提供特定功能,并且运行在较大设备中的微控制器上。由于嵌入式系统只需要
执行特定功能或少量功能,工程师可以优化他们来降低产品的尺寸和成本,优化的有段通常包括:限制存储器
大小,处理器速度,可用功率,外围设备,用户接口,或所有上述的。 AllJoyn 精简核心库(AJTCL:AllJoyn
Thin Core Library)被设计为让嵌入式系统也能够得益于 AllJoyn 的分布式编程环境。
由于 AJTCL 运行的操作环境可能非常受限,因此运行在嵌入系统的 AllJoyn 组件必须能够适应这种限制。这
意味着我们不能在 AllJoyn 路由器拥有很多 bundling(需要多线程),不能有很多网络连接,没有大量的 RAM
和 ROM 可供使用。我们无法运行一个包括可选语言绑定的面向对象编程环境。正因为如此,AJTCL 仅包括使
用 C 语言写的 bus attachment(参见 Introduction to the AllJoyn Framework)。数据结构对应于接口,方法,
信号,属性;总线对象也进行大量的空间优化,因此开发人员的 API 也和 AllJoyn 标准核心库大不相同。
虽然 API 存在不同,但 AJSCL 和 AJTCL 的主要概念是相同的。它们可能是采用了更紧凑的形式,或者运行在
远程一台更强大的机器上。
注: 当我们提到 AllJoyn 标准核心库(AJSCL)时, 我们会明确给出这些运行在通用计算机上的组件版本
Conceptual Model
如前所述,AJTCL 和 AJSCL 的高级抽象是相同的,在 Introduction to the AllJoyn Framework
中
对这些高层
抽象已经进行了描述。我们假设读者在概念概述部分已经熟悉该文中介绍的抽象,所以这里只讲述 AJTCL 架
构的差异部分。
AllJoyn Thin Core Library is still AllJoyn
必须要明白:AJTCL 是 AllJoyn 框架的一部分。精简核心库(AllJoyn Thin Core Library)和 AJSCL 是完全可
以互操作的。由于 AllJoyn 网线协议(AllJoyn network wire protocol)在这两个库中都完整实现,因此 AJSCL 可
以完全不用关心它正在和 AJTCL 进行交互这样一个事实;反之亦然。
回想 AllJoyn 框架简介(Introduction to the AllJoyn Framework
),
一个 AllJoyn 分布式总线是由驻留在物理
上独立的计算机上的多个总线段组成。
Figure: AllJoyn distributed bus
每个总线分段位于一个给定的主机上
(
路由器(图中标注为 D 的气泡)
来实现
的守护程序(由六边形表示)。
这些六边形细化为
由于运行 AJTCL 的主机
通常没有足够的资源运行路由器
线的精简核心库借用运行在
另一台主机上的
Figure:
AllJoyn distributed bus with thin core libraries
(
如上图标注为 Host A 和 Host B 的虚线方框
),
来实现
。可能有多个 bus attachments 在一个
主机上
这些六边形细化为
服务(S)或客户端(C)。
通常没有足够的资源运行路由器
,因此 AllJoyn 架构
做了一下变动
另一台主机上的
AllJoyn 路由器。
AllJoyn distributed bus with thin core libraries
),
每个总线段由一个 AllJoyn
主机上
,每一个连接到一个本地
做了一下变动
:连接到分布式总
注意,嵌入式系统 A 和嵌入式系统 B 与主机 B 位于不同的设备上。主机 B 所在的设备负责管理其上的分布式
总线段的路由器。运行 AJTCL 的嵌入式系统和托管总线段的路由器之间通过 TCP 协议(Transmission Control
Protocol)建立连接。
嵌入式系统和路由器之间的网络通信是 AllJoyn 消息,他们实现总线方法,总线信号,以及流过各自会话的属
性,如 Introduction to the AllJoyn Framework
所述
。
有时希望允许 AJTCL 设备连接到临近的任何被发现的旧路由器上,并借用它。我们把这些称为无信任关系(从
路由器的角度)。有时需要只允许特定的 AJTCL 设备连接到特定的路由器,我们把这些为信任关系(同样从
路由器角度)。
These relationships are established using a discovery and connection process that is conceptually similar to the
discovery and connection process of clients and services. An AllJoyn router conveys its willingness to host a given
collection of AJTCL devices by advertising a well-known name. This advertisement may be driven either by router
configuration or by an advertisement specifically made by an AllJoyn component. When a connection attempt is made
to any router as a result of a discovery event, a router expecting trusted relationships may choose to challenge a
particular Thin Core Library (or impersonator of a Thin Core Library) to produce a credential. In the case of an
untrusted relationship, the router may choose to simply allow any connection attempt. In the case of an untrusted
connection, the involved router will not allow the Thin Library to perform any operations that will cause sessions to be
established with components off the local device (and which, therefore, correspond to a "service that costs you
money").这些关系通过发现和连接处理来建立,在概念上类似于客户/服务的发现和连接建立过程。AllJoyn 路
由器通过广播一个知名名称(a well-known name)来告诉主机它期望的 AJTCL 设备集合。这则通告可以通过
路由器配置,也可以通过 AllJoyn 组件专门制作的广告来驱动。发现阶段后会开始尝试连接到路由器,如果路
由器希望使用信任关系的话,它就会向特定的精简核心库(或精简核心库的模仿)要求认证凭证。如果是不受
信任关系,路由器允许任何的连接尝试。在不受信任连接的情况下,路由器将不允许精简核心库执行任何操作
去建立和本地设备组件的会话(因此相当于“付费服务” )。
AJTL 设备的连接过程可以分为三个阶段:
•
Discovery phase/发现阶段
•
Connection phase/连接阶段
•
Authentication phase/认证阶段
发现阶段工作就像 Introduction to the AllJoyn Framework
中描述的
服务发布和发现一样,不过有两个例外。
第一个例外是:进行 AJTL 发现的广播,是典型的“安静”广播(quiet advertisements)。也就是说路由器不
会无偿发送广播。
第二个例外是,给“安静”广播的响应也是悄悄地发送的, 我们称它为安静响应(quiet responses)。这意味
着响应是单播给请求者的,而不是采用多播,因为多播是“活动”广告("active" advertisements)。这样变化
的主要原因是为了让那些没有完全实现组播接收的嵌入式设备接收加入到 AllJoyn 分布式系统中。
What is an AllJoyn Thin Core Library device?
典型的 AJTCL 设备在概念上类似于无线传感器网络(WSN:Wireless Sensor Network)中的一个传感器节点(SN:
Sensor Node)。传感器节点通常是传感器/致动器(actuators),它们体积小,并受限于能源供应,计算能力,
存储器,以及其它资源。它们能够感测周围环境,与外界进行事件通信,并且可以基于内部处理或外部事件触
发一组动作。这是一个非常广泛的定义,下面罗列一小部分适合这个定义的设备采样:
•
Light switches/灯开关
剩余11页未读,继续阅读
飞越丛林
- 粉丝: 113
- 资源: 23
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0