1722.1-pane-Enumeration_Connection_Mgt-2010-04-07
Download
Report
Transcript 1722.1-pane-Enumeration_Connection_Mgt-2010-04-07
1722.1 Enumeration &
Connection Management
presented by
Chris Pane
1722.1 F2F April 7, 2010
1
Intent
Present a straw man vision of how an AVB
stream enumeration and connection protocol
could work for 1722.1.
Present vision from a top down, end to end point
of view. Details will follow.
1722.1 F2F April 7, 2010
2
Definitions
Controller – An entity on the network that
provides runtime stream allocation and
connection requests.
AMP – AVB Management Protocol
Channel - Media Content
Node – Element in the property tree that
represents a hierarchical level.
Property – A settable entity on a channel.
1722.1 F2F April 7, 2010
3
Requirements
•
•
•
•
•
•
Atomic creation/removal of streams.
Configuration of streams (channels, settings)
Runtime channel status updates (Renamed input)
Error handling back to controller.
Must support the ability to learn about already
configured streams (i.e. Multiple Controllers).
Listeners and Talkers must be able to restore state
without the controller present on network.
1722.1 F2F April 7, 2010
4
Assumptions
•
•
•
•
An AVB network can be comprised of
Talkers/Listeners and Controllers.
The IP address of Talkers and Listeners have
already been provided and decided upon (via
1722.1 Discovery).
Talkers and Listeners have already allocated
their stream address ranges via MAAP.
The scope is limited to stream creation,
connection and teardown only.
1722.1 F2F April 7, 2010
5
AVB Network startup flow
Zero Configuration
(IP Address/Svc
Discovery)
Control Link
Handshake
Enumerate
Stream
Connection
Mgmt
SRP
1722.1 F2F April 7, 2010
6
Control Link
TCP Client Server Model
Talkers/Listeners - Servers
Controllers - Clients
Once established, AMP enumeration and
stream connection management commands
can flow.
1722.1 F2F April 7, 2010
7
Example 1: Network Device
Configuration
-
/
-
AudioInputs
SPDIF_Left
SPDIF_Right
+
-
+
VideoInputs
-
System
Analog
Digital
AudioFormats
SampleRates
Video In 1
SPDIF_Left
Vendor ID
Product ID
Role Name
+
TalkerStreams
AMP
Video Out 1
TCP/IP Connection
1722.1 F2F April 7, 2010
Controller
8
Property Tree
Properties are presented to clients in a tree
fashion (similar to a hierarchical filesystem).
A minimal subset of properties are defined
and must exist in all implementations.
Wild card queries are supported
Client can request that a place in the
properties tree is maintained by the server
during life of control link
1722.1 F2F April 7, 2010
9
Proposed property Tree
-
/
-
AudioInputs
+
Analog
-
Digital
AudioFormats
SampleRates
SPDIF_Left
SPDIF_Right
+
VideoInputs
-
System
Vendor ID
Product ID
Role Name
+
TalkerStreams
1722.1 F2F April 7, 2010
10
System Node (/System)
All devices must provide the /System Node
It will contain system information such as
Current Streams
Device specific settings (Vendor ID, Manufacture
Id, …)
….others
1722.1 F2F April 7, 2010
11
AMP Commands
Handshake – Used to establish protocol
parameters for use on the control link.
ACK – Acknowledge response when no data
is expected back from a command.
EnumerateNode– Used to request from a
device that it list a set of nodes given a
specified node path on the tree.
1722.1 F2F April 7, 2010
12
AMP Commands
(Continued)
EnumerateProps – Request that a device enumerate the
properties that may exist on a given node.
GetProp – Request the possible property values for a given
property.
SetAnchor – Request that the device remember the location
within the property tree that the user is currently at. Stays valid
until control link is broken.
PublishStream – Request that a specified stream be created
atomically given the channels and properties that are specified in
the command invocation.
ListenStream – Request that a listener connect to a stream.
1722.1 F2F April 7, 2010
13
AMP Device Example
Controller
Device
AMP Handshake
Enum Nodes“\”)
AudioInputs,VideoInputs,System
Enum Nodes(“\AudioInputs”)
Analog/Digital
Enum Nodes(“\AudioInputs\Digital”)
Spdif_left, Spdif_right
SetAnchor(“\AudioInputs\Digital”)
ACK
Enum Props(“Spdif_left”)
Formats, OptoDetect,
GetProp(“Formats”)
AM824,AAC,MP3
Publish(“Str1”,SpdifL,SpdifR,(enc,AM824),sr,48k))
Success
1722.1 F2F April 7, 2010
14
AMP Device Example
(Continued)
When a device is processing a Publish
stream request, it will be taking care of the
SRP Talker/Listener SRP logic
A stream publish can fail if:
The caller has requested something that can’t be
handled by the device “Hard Fail”
An SRP request fails, causing a “Soft Failure”
condition
1722.1 F2F April 7, 2010
15
Open Items
Multiple controller configurations
Locate Functionality ?
Redundant Streams ?
Protocol Design Document
1722.1 F2F April 7, 2010
16