Time Sensitive Control Streams in IEEE P1722A v1.3

Similar documents
Time Sensitive Control Streams in IEEE P1722A v1.6

P1722a V1 Headers. Jeff Koftinoff Oct (b)

Transport protocols Introduction

AVDECC clarifications. Part 2 AEM commands. Revision 4 [WIP] 8/5/2016

IEEE P Additional Feature Considerations. IEEE P F2F - Detroit - Oct 21, Jeff Koftinoff

Draft AVBTP over IEEE 802.3

CCNA 1 Chapter 7 v5.0 Exam Answers 2013

IEEE P1722 AVBTP. Version 0.01, Alan K. Bartky Bartky Networks Send comments to

MAC Protocol Proposal for Fixed BWA Networks Based on DOCSIS. Re: Medium Access Control Task Group Call for Contributions Session #4

Transporting Voice by Using IP

RTP library implementation. Design Specification v 1.0

Streamware Workbench Release

Internet Streaming Media. Reji Mathew NICTA & CSE UNSW COMP9519 Multimedia Systems S2 2007

AVB Network Sizes April 2014 IEEE 1722 F2F. Jeff Koftinoff

Draft AVBTP over IEEE 802.3

A PROPOSED REVISION TO IRIG 218 BASED ON REAL WORLD EXPERIENCE Gary A. Thom GDP Space Systems 300 Welsh Road, Horsham, PA

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet

DRAFT IEEE P

DQDB. Distributed Queue Dual Bus (DQDB) DQDB is a MAN. Unlike FDDI, DQDB is an IEEE standard: 802.6

Transport Layer. Gursharan Singh Tatla. Upendra Sharma. 1

RMIT University. Data Communication and Net-Centric Computing COSC 1111/2061. Lecture 2. Internetworking IPv4, IPv6

Objectives. Chapter 10. Upon completion you will be able to:

Operating Omega ATS and Lynx ATS. QUOTE TRANSFER PROTOCOL (QTP) SPECIFICATION v 1.05

Lecture 3. The Network Layer (cont d) Network Layer 1-1

INTERNATIONAL TELECOMMUNICATION UNION

Business Data Networks and Security 10th Edition by Panko Test Bank

Lecture 8. Network Layer (cont d) Network Layer 1-1

Internet Streaming Media

Transport Protocol (IEX-TP)

Internet Protocol version 6

EITF25 Internet Techniques and Applications L7: Internet. Stefan Höst

Advanced Network Training Multicast

OSI Data Link & Network Layer

INTRODUCTORY COMPUTER

µtasker Document µtasker Multicasting and Internet Group Management Protocol (IGMP)

TSD. Discussion about the AVTP timestamp for H.264 video transmission described in 1722_D12 chapter 9.5. Christian Sörensen

IP Multicast: Does It Really Work? Wayne M. Pecena, CPBE, CBNE

The Internet. 9.1 Introduction. The Internet is a global network that supports a variety of interpersonal and interactive multimedia applications.

TCP/IP and the OSI Model

The CANoe.Ethernet Solution

CSCD 433/533 Advanced Networks Fall Lecture 14 RTSP and Transport Protocols/ RTP

ECE 650 Systems Programming & Engineering. Spring 2018

Defining Networks with the OSI Model. Module 2

Mixed-Media Bridging

4 rd class Department of Network College of IT- University of Babylon

ECE 435 Network Engineering Lecture 15

Network Layer (4): ICMP

Automotive Ethernet AVB Functional and Interoperability Specification Revision Sept 2016 Authors:

University of New Hampshire InterOperability Laboratory Ethernet in the First Mile Consortium

Internet Engineering Task Force (IETF) B. Claise Cisco Systems, Inc. G. Muenz Technische Universitaet Muenchen April 2010

Enhancing Synchronous Ethernet Management with ESMC

EEC-682/782 Computer Networks I

Chapter 5 Network Layer

Operating Systems. 16. Networking. Paul Krzyzanowski. Rutgers University. Spring /6/ Paul Krzyzanowski

Planning for Information Network

cs144 Midterm Review Fall 2010

Protocol Layers & Wireshark TDTS11:COMPUTER NETWORKS AND INTERNET PROTOCOLS

156.25MHz in Xilinx Virtex6 w/ -2 speed grade

TCP/IP Protocol Suite

Lecture 11: IP routing, IP protocols

Need For Protocol Architecture

Internet Engineering Task Force (IETF) Category: Informational. May IEEE Information Element for the IETF

Network Working Group Request for Comments: October 2009

Device Discovery and Configuration. Ashley Butterworth Apple Inc.

Internet Streaming Media. Reji Mathew NICTA & CSE UNSW COMP9519 Multimedia Systems S2 2006

CSCI Computer Networks

Introduction to Networking

Need For Protocol Architecture

RTP. Prof. C. Noronha RTP. Real-Time Transport Protocol RFC 1889

3G TS V3.1.0 ( )

Internet Streaming Media

TA Document SMPTE Time Code and Sample Count Transmission Protocol Ver.1.0

Monitoring Data CHAPTER

FAIRNESS CONSIDERATIONS FOR PLCA EXAMPLE MICROPHONE USE CASE. Dr. Kirsten Matheus

Overview of Ethernet Networking

Transporting Voice by Using IP

Introduction. IP Datagrams. Internet Service Paradigm. Routers and Routing Tables. Datagram Forwarding. Example Internet and Conceptual Routing Table

Additional Material. Suguru Yamaguchi Nara Institute of Science and Technology Department of Information Science Information Network I/No.

Internet Engineering Task Force INTERNET DRAFT. C. Perkins Nokia Research Center R. Droms(ed.) Cisco Systems 1 March 2001

7th Slide Set Computer Networks

ECE4110 Internetwork Programming. Introduction and Overview

Chapter 4 Network Layer: The Data Plane

Internet Engineering Task Force. C. Perkins Nokia Research Center R. Droms(ed.) Cisco Systems 22 November 2000

HD Radio Air Interface Design Description Layer 2 Channel Multiplex Rev. I August 23, 2011

Interrupt transfers & USB 2.0 & USB 3.0. Group Members Mehwish Awan Mehwish Kiran

UDP: Datagram Transport Service

RoE CPRI mapper strawman proposals v2

ATM-DB Firmware Specification E. Hazen Updated January 4, 2007

Network Working Group. Category: Informational Fraunhofer FOKUS J. Quittek M. Stiemerling NEC P. Aitken Cisco Systems, Inc.

CSC 401 Data and Computer Communications Networks

ADC ACQUISITION MODE...

Class A Bridge Latency Calculations

CS 428/528 Computer Networks Lecture 01. Yan Wang

Goals and topics. Verkkomedian perusteet Fundamentals of Network Media T Circuit switching networks. Topics. Packet-switching networks

BMW Group Technology Office Palo Alto Automotive Use Cases AVB in a vehicular environment.

Lecture-4. TCP/IP-Overview:

RTP: A Transport Protocol for Real-Time Applications

b. Suppose the two packets are to be forwarded to two different output ports. Is it

Command Transport Protocol (CTP)

Optical Data Interface ODI-2 Transport Layer Preliminary Specification

Transcription:

Time Sensitive Control Streams in IEEE P1722A v1.3 info: Revision: 1.3 IEEE P1722A-tscs Date: 2011-07-11 Author: Table of Contents Jeff Koftinoff <jeff.koftinoff@ieee.org> 1 Overview 2 Requirements 3 Packet Format 2 2 3 3.1 tv field............................................... 4 3.2 cfd field.............................................. 4 3.2.1 packetized CFD field.................................... 4 3.2.1.1 CFD for control stream 3.2.1.2 CFD for control packets............................... 4............................... 4 3.2.2 Standard cfd's....................................... 4 3.3 tdm_count field.......................................... 5 3.4 tdm field.............................................. 5 3.5 bf field............................................... 5 3.6 ef field............................................... 5 3.7 tscs_payload_length....................................... 5 3.8 tscs_payload........................................... 5 4 Open Items for Discussion 4.1 Examples of 1722.1 in TSCS................................... 5 5 4.2 Examples of TCP and UDP transport............................... 5 4.3 Examples of TDM capabilities.................................. 6 4.4 CAN-bus payload structure.................................... 6

1 Overview While IEEE Std. 1722-2011 provides for time sensitive media streams, time sensitive control streams are necessary for some use cases of control networks. Compelling reasons to use AVB time sensitive streams for control protocols include: 1. The control streams are given guaranteed bandwidth 2. The control messages can be multicast to multiple end stations 3. Multiple control streams may be time division multiplexed in one stream, evenly sharing an SRP bandwidth reservation 4. The control messages can have AVB style presentation times to allow synchronized control updates in distributed systems which share common logical controls. IEEE Std. 1722-2011 allows for iec61883-6 AM824 format time sensitive streams which has provision for transport of time division multiplexed MIDI messages which may contain control messages and MIDI System Exclusive messages. While this combination of packet encodings can be used for the transport of time sensitive control streams, a more efficient and flexible time sensitive control stream format is proposed here. These time sensitive control streams may be used for different packet oriented or message oriented protocols, such as: Open Sound Control CAN-bus IEEE P1722.1 HTTP Industrial control protocols A TSCS may be used as a response path for the above protocols when necessary. 2 Requirements The packet format for time sensitive control streams must be designed to allow the streams to contain control packets or messages which: Are limited in their maximum bandwidth usage Can span stream packets Can be much larger than a standard MTU Can be framed to allow receiver resynchronization when a device joins mid-stream or a stream packet is lost Can be associated with a 802.1AS-2011 gptp presentation time Allow for Time Division Multiplexing (TDM) of multiple separate control packets and messages over the same time sensitive stream Can be used to tunnel existing TCP/IP stream or UDP packet based protocols (in one direction per stream) Can be used to tunnel CAN-bus protocols Can be used to tunnel IEEE Std. 1722-2011 control protocols such as IEEE P1722.1 verbatim. Can be used to transport vendor specific stream or packetized protocols.

Can be sent more than once per SRP's measurement interval (125µs for class A or 250µs for class B) as the SRP's bandwidth allocation allows. 3 Packet Format A new subtype would be allocated in IEEE P1722A for time sensitive control streams (TSCS). A TSCS's packet header has the following form: subtype data 0 0 1 2 3 4 5 6 7 8 9 1 0 1 2 3 4 5 6 7 8 9 2 0 1 2 3 4 5 6 7 8 9 CD subtype sv version mr r gv tv sequence_num reserved tu 00 0 3 0 1 SRP Stream ID 04 stream_id 08 A VTP Time 12 avtp_timestamp Gateway info 16 gateway_info Packet info 20 stream_data_length (octets) tdm_count tdm_num Control Format Info 24 28 cfd (continued) cfd bf ef r1 r2 0 0 tscs_payload_length (octets) TSCS Payload tscs_payload _ The AVTPDU-TSCS packet header contains the following AVTP common stream data fields (from IEEE Std. 1722-2011 Section 5.4): cd (control/data) indicator: 1 bit subtype: 7 bits sv (StreamID valid) indicator: 1 bit version (AVTP version): 3 bits mr (media clock restart): 1 bit r (reserved): 1 bit tv (avtp_timestamp_valid): 1 bit sequence_num (sequence number): 8 bits reserved: 7 bits tu (timestamp_uncertain): 1 bit avtp_timestamp: 32 bits gateway_info: 32 bits stream_data_length: 16 bits The TSCS packet adds the following additional fields: tdm_count (control stream TDM slots count): 8 bits tdm_num (control stream TDM slot number): 8 bits cfd (control format descriptor): 48 bits EUI-48

bf (begin frame flag): 1 bit ef (end frame flag): 1 bit r1 (reserved1) : 1 bit r2 (reserved2) : 1 bit tscs_payload_length (time sensitive control stream payload length in octets): 12 bits tscs_payload (time sensitive control stream payload): data length is determined by tsc_payload_length, frame length is determined by stream_data_length. 3.1 tv field When the tv field is 1, this means that the avtp_timestamp field is valid and represents the presentation time of the first data byte in the tscs_payload field. 3.2 cfd field The cfd field is a 48 bit field containing an EUI-48 value, the Control Format Descriptor (CFD). If the three most significant octets of the cfd field is the IEEE Std. 1722-2011 assigned OUI, 90-e0-f0 or 91-e0-f0, then the cfd field specifies a standard CFD, otherwise the cfd field specifies a vendor specific control protocol and the CFD is prefixed by the vendor's OUI24 or OUI36. The least significant bit of the first octet of the cfd field is normally reserved in MAC-48 address for the unicast/multicast bit. In the CFD, however it is used as the packetized field, regardless if the CFD is a standard or vendor specific CFD. 3.2.1 packetized CFD field The packetized field in the CFD represents the transport style of the time sensitive control data. The packetized field may be: 0 (zero): control stream 1 (one): control packets 3.2.1.1 CFD for control stream When the packetized bit of the CFD is 0, the tscs_payload is an undelimited stream of data, analogous to a TCP/IP stream (without acknowledgement or automatic resends) or a unidirectional serial data port. The bf and ef bits are to be unused and set to 0. 3.2.1.2 CFD for control packets When the packetized bit is 1, the tscs_payload is a delimited stream of data, analogous to a UDP packet transport mechanism. The bf and ef bits are used for delimiting packets. The delimited packets may span multiple TSCS packets and may be larger than one MTU. 3.2.2 Standard cfd's When the cfd field is in the form 90-e0-f0-XX-YY-ZZ or 91-e0-f0-XX-YY-ZZ, then the value of XX can be one of: XX code Meaning 00 16 YY represents IEEE Std. 1722-2011 subtype field. ZZ represents protocol revision. 01 16 YY-ZZ doublet represents protocol defined by IANA "DCCP Well Known Ports" or "DCCP Registered Ports"

02 16 CANbus protocol, YY-ZZ represents CANbus protocol style/revision <<TBD>> 03 - FF 16 Reserved 3.3 tdm_count field The 8 bit tdm_count field specifies the number of TDM channels in this stream. A tdm_count value of 0 means 256 protocol channels are time division multiplexed within this stream. 3.4 tdm field The 8 bit tdm field specifies the control packet TDM channel that this packet's tscs_payload is associated with. The tdm field shall always be less than the value of the tdm_count field. The AVTP talker may transmit TSCS packets with the tdm field changing in any pattern required for the shared bandwidth requirements of the various embedded control channels. For instance, it may evenly share the stream's bandwidth amonst each embedded TDM channel by incrementing the tdm field every packet (and setting it back to 0 when it hits the tdm_count value). Or it may perform any arbitrary pattern that could allow some TDM channels more bandwidth. 3.5 bf field When the 1 bit bf is set it means that the first octet in this payload represents the first octet of the control stream packet. The bf field is only used when the cfd field represents a packetized cfd form. 3.6 ef field When the 1 bit ef is set it means that the last octet in this payload represents the last octet of the control stream packet. The ef field is only used when the cfd field represents a packetized cfd form. 3.7 tscs_payload_length The tscs_payload_length field is a 12 bit value and specifies the length of the tscs_payload area of the stream packet. The tscs_payload_length field may be 0, indicating no data content in the tscs_payload area. The tscs_payload field may end before the end of the stream packet - this allows for fixed sized packets and bandwidth usage regardless of control stream content. 3.8 tscs_payload The tscs_payload area may be 0 to 2048 octets in length but the entire frame is limited to the network's MTU. 4 Open Items for Discussion 4.1 Examples of 1722.1 in TSCS We need some examples of how IEEE P1722.1 packets could be transported via a TSCS. 4.2 Examples of TCP and UDP transport <<TBD>>

4.3 Examples of TDM capabilities <<TBD>> 4.4 CAN-bus payload structure As discussed on http://www.can-wiki.info/caninterfaceapi it may be relevant to define a specific CAN-bus payload structure containing the following items: /** * The CAN message structure. * Used for all data transfers between the application and the driver * using read() or write(). */ typedef struct { /** flags, indicating or controlling special message properties */ int flags; /**< Bit 0: Standard (11) or extended (29) length message */ /** Bit 1: Standard or RTR message */ int cob; /**< Bit 0..3 CAN object number, used in Full CAN */ /** Bit 4..7 CAN controller number, used if multiple buses present */ /** 0 could mean 'default channel' in both cases */ unsigned long id; /**< CAN message ID, 4 bytes */ struct timeval timestamp; /**< time stamp for received messages */ short int length; /**< number of bytes in the CAN message */ unsigned char data[8]; /**< 0 to 8 bytes of message data */ } canmsg_t; Without the timestamp since avtp_timestamp is already in the AVTPDU Input is needed from the CAN-bus experts on the best way to tunnel CAN-bus via TSCS.