Interfaces and Buses / Audio_Video_Bridging / AVB_Node
Block Name: AVB_Node
Code File Location: VisualSim/actor/lib/networking/avb/AVB_Node
Quick Overview
Operation
Data Structure
Required Data Structure Fields
Connectivity in the Model
Detailed Description
Examples
AVB_Node block is used to emulate the operation of a Audio Video Bridging Node block. This block contains the admission control, stream reservation protocol, clock synchronization and the traffic shaping. This block can act as both a Talker and a Listener. The input to this block from the Application layer is either an Ethernet, AVB Talker Advertise or a AVB Stream. The output from this block to the network is a Ethernet packet, AVB stream, Talker Advertise (Register or DeRegister), Talker Failed and Listener Ready. The input from the network is a Talker Advertise (Register or DeRegister), Listener Ready, Ethernet packet, AVB stream and Talker Failed. The output from this block to the Application Layer are AVB or Ethernet stream to this destination, and Talker Failed.
The block is connect to the StreamRP on the Application side and connectionless to the network.
For a detailed description of AVB and AVB_Node, review the AVB support document.
When a packet enters this block from the Aplication side, the following actions are performed based on the packet type
When a packet enters this block from the Network side, the following actions are performed based on the packet type. The types of packet are an Ethernet arriving at the destination, a Listener Ready from the destination for a AVB Stream, Talker Failed from the network or a AVB stream.
The Data Structure arriving from the Application Layer and the Network have the following fields:
{BLOCK = "Traffic", |
Name of the block generating the packet |
The following fields are required and their acceptable values
For Talker Advertise and Register |
For Talker Advertise and DeRegister |
For Listener Ready |
For Talker Failed |
For Ethernet stream |
For AVB Stream |
On the Application side, the minimum configuration will be Ethernet Traffic->StreamRP->Node block
On the Network side, the Link Setup table of the AVB_Config_Table lists the connectivity
This block is used with the Node blocks to simulate the Internet multicast protocol. The block works in conjunction with a Init_Memory block. The lower ports (fr_Node and to_Node) are connected to the Node ports (node_input and node_output) respectively. The top ports (fr_layer and to_layer) are connected to the Layer_Block ports () respectively. Each instance of the multicast block must have a unique multicast name.
The configuration of the multicasts are done in the Init_Memory. There are two parts to the definition. The first row must contain the following sequence
Multicast_List global {"Multicast_1","Multicast_2"}
where the Multicast_List is a keyword, type must always be global and the array must be the list of all the multicasts.
The Init_Memory must contain a separate line for each item in the array. The following example:
Multicast_1 global {"Node_6","Node_5","Node_7","Node_2","Node_3","Node_4"}
where the Multicast_1 is the string from the Multicast_List, type must always be global and the array must be the list of all the Nodes that must receive this multicast. For a Broadcast, this will contain the list of all the Nodes on this network excluding the Source node.
Any transaction that must be multicast or broadcast (as a multicast) must contain the name of the multicast item as a string in the Task_Message field of the incoming Data Structure at the source Multicast block or the Node block. The block manages the spanning tree algorithm for the routing of the multicast packets.
To illustrate the usage, look at the following Examples in the BDE.
AVB Example
AVB with Multi-Bridge
AVB with Dynamic Instantiation
Parameter |
Explanation |
Type |
Example |
Node_Name |
Unique name for this AVB Node. Must be unique for all blocks in the model, not just other multicast. |
String |
"Multi_1" |
Clock_Sync |
true if the Node support Clock Sync message and false if the message are ignored.. |
String |
true |
Routing_Table_Name |
This is the Routing_Table block name that is responsible for routing the packet within this network. |
String |
"RT" |
Port |
Explanation |
port_in |
From the Application layer. Can be a AVB StreamRP, Traffic Generator or a Layer block. |
port_out |
To the Application layer. Can be a StreamRP, Traffic Generator or a Layer block. |
virtual |
The packet is sent virtually to the Bridge and/or Nodes. |
Created with the Personal Edition of HelpNDoc: Free Qt Help documentation generator