layers and alternative application layers

24
Layers and Alternative Application Layers Malcolm Clarke September 10, 2012

Upload: remedios-carrillo

Post on 31-Dec-2015

38 views

Category:

Documents


1 download

DESCRIPTION

Layers and Alternative Application Layers. Malcolm Clarke September 10, 2012. General Concepts of Layers. Object Approach. Agent Object. Manager Proxy Object. Events. Actions. Get. Set. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Layers and Alternative Application Layers

Layersand

Alternative Application Layers

Malcolm Clarke

September 10, 2012

Page 2: Layers and Alternative Application Layers

General Concepts of Layers

Page 3: Layers and Alternative Application Layers

Object Approach

Handle

Type

Unit-Code

Simple-Nu-Observed-Value

Absolute-Time-Stamp

The object approach of 11073 is a general mechanism to update values of all attributes from the object in the Agent to its proxy object in the Manager This can be done asynchronously (Events) or by polling (Get) Can also act on the object to update attributes (Set) or interact (Actions)

Handle

Type

Unit-Code

Simple-Nu-Observed-Value

Absolute-Time-Stamp

Events

Actions

Get

Set

AgentObject

ManagerProxy Object

Page 4: Layers and Alternative Application Layers

Layers - ACSEApplication Code

Object Layer

ROSE

(Service Layer)

ACSE

(Association layer)

Transport

Network

This is achieved using physical connection and exchanging APDU between peer entities in the ACSE (Association Control Service Element) ACSE is responsible for association and messages are exchanged for Associate, Release and Abort

APDU

Associate, Release, Abort

Page 5: Layers and Alternative Application Layers

Layers - ROSEApplication Code

Object Layer

ROSE

(Service Layer)

ACSE

(Association layer)

Transport

Network

Once associated, PDU are exchanged between peer entities in ROSE (Remote Operation Service Element) ROSE is responsible for providing METHODS to access and manage Objects and messages are exchanged for Get, Set, Event and Action

APDU

Associate, Release, AbortPDU

Methods

Get, Set, Event, Action

Page 6: Layers and Alternative Application Layers

Layers – Object LayerApplication Code

Object Layer

ROSE

(Service Layer)

ACSE

(Association layer)

Transport

Network

ROSE operates on peer objects in the Object Layer ACSE and ROSE constitute the Association Layer

APDU

Associate, Release, AbortPDU

Methods

Get, Set, Event, ActionPDU

Parameters

Attribute values

{Association

Layer

Page 7: Layers and Alternative Application Layers

11073 Object LayerHandle

Type

Observed value

Units

Objects in 11073 are accessed indirectly Each object is referenced by its Handle and the type of the object is taken from the type attribute Each attribute is accessed by using its nomenclature code (32 bits – 16+16) The type of the attribute is defined by ASN.1 and structured types fully defined down to basic types This has the advantage of allowing multiple instances of the same object type

Parameters (Attribute:Value)

Methods (Get, Set, Event, Action)

Page 8: Layers and Alternative Application Layers

Alternative Association Layers

Page 9: Layers and Alternative Application Layers

Alternative Association Layers

Several “transport” technologies now define and support an object oriented approach and provide primitives to access and manage objects (methods) Zigbee defines the Zigbee Cluster Library (ZCL) BT LE defines ATT and GATT Could these alternative Association Layers support 11073 objects and methods?

Page 10: Layers and Alternative Application Layers

Zigbee Cluster Library

Supports Discover Attributes Read Attributes Write Attributes Report Attributes Configure reporting

Min/Max time between reports Min change between reports

Read Reporting Configuration

Page 11: Layers and Alternative Application Layers

Zigbee Cluster Library

Defines Attribute Clusters (eg General, Power configuration) The collection of clusters defined as a profile Attribute Sets in the cluster (eg Basic device information, basic device settings) Attributes in the set

Currently 12 bits used to identify the Attribute Set and 4 bits the attribute within the set

Up 1000 addressable Attribute Sets (objects) each with up to 16 addressable attributes

Page 12: Layers and Alternative Application Layers

Zigbee Attribute ReportingVariable Variable Variable Variable

ZCL Header Attribute Report 1

Attribute Report 2

Attribute Report n

2 Octets 1 Octet Variable

Attribute Identifier Attribute Data Type

Attribute Value

Page 13: Layers and Alternative Application Layers

ZCL Object Layer – exampleGeneral Attribute Set

Attribute Set Identifier Description

0x0000 Basic device information

0x0001 Basic device settings

0x0002-0xffff Defined in ZCL documentation

Identifier Name Type Range Access Default Mandatory/ Optional

0x0000 ZCLVersion Unsigned8-bit integer

0x00 – 0xff Read only 0x00 M

0x0001 ApplicationVersion

Unsigned8-bit integer

0x00 – 0xff Read only 0x00 O

Etc

Attributes of Basic Device Information Attribute Set

Page 14: Layers and Alternative Application Layers

Zigbee Cluster Library

Can we map 11073 devices to ZCL?

Page 15: Layers and Alternative Application Layers

ZCL Object Layer – take an exampleWeighing Scale Attribute Set

Attribute Set Identifier (Class) Description

0x0000 Basic device information

0x1000 MDS

0x1001 Metric

0x1002 RT-SA

0x1003 PM Store

Identifier Name Type Range Access Default Mandatory/ Optional

0x0000 Type TYPE 0x0000 – 0xffff Read only 0x0000 M

0x0001 Metric-Spec-Small

32 bit map 0x00000000 – 0xffffffff

Read only 0x00000000

M

Etc

Attributes of Basic Mass Attribute Set

Page 16: Layers and Alternative Application Layers

Metric Object AttributesAttribute Name Attribute Type Identifier NotesHandle HANDLE Unused

Type/Supplemental-Types TYPE/SupplementalTypeList 0000 Only one, type distinguishes

Metric-Spec-Small MetricSpecSmall 0001

Metric-Structure-Small MetricStructureSmall 0002

Measurement-Status MeasurementStatus 0003

Metric-Id/Metric-Id-List OID-Type/MetricIdList 0004 Only one, type distinguishes

Metric-Id-Partition NomPartition 0005

Unit-Code OID-Type 0006

Attribute-Value-Map AttrValMap Unused

Source-Handle-Reference HANDLE 0007

Label-String OCTET STRING 0008

Unit-LabelString OCTET STRING 0009

Absolute-Time-stamp/Relative-Time-Stamp/HiRes-Time-Stamp

AbsoluteTime/RelativeTime/HighResRelativeTime

0010 Only one, type distinguishes

Measure-Active-Period FLOAT-Type 0011

Page 17: Layers and Alternative Application Layers

Numeric Object Attributes

Attribute Name Attribute Type Number NotesSimple-Nu-Observed-Value SimpleNuObsValue 0012 Only one, type distinguishes

Compound-Simple-Nu-Observed-Value

SimpleNuObsValueCmp

Basic-Nu-Observed-Value BasicNuObsValue

Compound-Basic-Nu-Observed-Value

BasicNuObsValueCmp

Nu-Observed-Value NuObsValue

Compound-Nu-Observed-Value NuObsValueCmp

Accuracy FLOAT-Type 0013

Page 18: Layers and Alternative Application Layers

Enumeration Object Attributes

Attribute Name Attribute Type Number NotesEnum-Observed-Value-Simple-OID OID-Type 0012 Only one, type distinguishes

Enum-Observed-Value-Simple-Bit-Str BITS-32

Enum-Observed-Value-Basic-Bit-Str BITS-16

Enum-Observed-Value-Simple-Str EnumPrintableString

Enum-Observed-Value EnumObsValue

Enum-Observed-Value-Partition NomPartition 0013

Page 19: Layers and Alternative Application Layers

RT-SA Object Attributes

Attribute Name Attribute Type Number NotesSample-Period RelativeTime 12

Simple-Sa-Observed-Value OCTET STRING 13

Scale-and-Range-Specification ScaleRangeSpec8ScaleRangeSpec16ScaleRangeSpec32

14 Only one, type distinguishes

Sa-Specification SaSpec 15

Page 20: Layers and Alternative Application Layers

MDS Object Attributes

Attribute Name Attribute Type Number NotesHandle HANDLE

System-Type TYPE 0

System-Model SystemModel 1 == Basic Device Information

System-Id OCTET STRING 2

Dev-Configuration-Id ConfigId 3

Attribute-Value-Map AttrValMap 4

Production-Specification ProductionSpec 5

Mds-Time-Info MdsTimeInfo 6

Date-and-Time AbsoluteTime 7

Relative-Time RelativeTime 8

HiRes-Relative-Time HighResRelativeTime 9

Date-and-Time-Adjustment AbsoluteTimeAdjust 10

Page 21: Layers and Alternative Application Layers

MDS Object Attributes

Attribute Name Attribute Type Number NotesPower-Status PowerStatus == Basic Device Information

Battery-Level INT-U16 == Battery Information

Remaining-Battery-Time BatMeasure = = Derive from battery information

Reg-Cert-Data-List RegCertDataList 11

System-Type-Spec-List

TypeVerList 12

Confirm-Timeout RelativeTime 13

Page 22: Layers and Alternative Application Layers

Limitations

Not instance based addressing

Page 23: Layers and Alternative Application Layers

BT LE Attributes

BT LE also defines 16 bit attribute identifiers Provides Object Access Methods Object.Attribute could be defined for each device and correspond to specialization (ConfigId) as per ZCL Object.Attribute Sets in the cluster (MDS, Metric Objects) Attributes in the object set defined per MDS or Metric Object

Page 24: Layers and Alternative Application Layers

Questions or Comments?