Multicast

Parent Previous Next

Application / Networking
Block Name: Multicast

Code File Location: VisualSim/actor/lib/networking/Multicast

Description

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.

Fields

Task_Source- This field is not modified.

MC_Dest_Nodes- If this is the Source node, then this field is updated with the value in memory for the Task_Message Multicast name.

Task_Destination- This field computes the next node for this packet. This field is modified.

Task_Hop- This is the same as the Task_Destination.  This field is modified.

Task_ID- This field is set to -1.  This field is modified.

To illustrate the usage, look at the following Examples in the BDE.

Multicast Example

 

Parameter

Explanation

 Type  

 Example 

Multicast_Layer_Name

Unique name for this multicast block.  Must be unique for all blocks in the model, not just other multicast.

String

"Multi_1"

Connected_Node_Name

This is the name of the Node that this Multicast block is connected directly too.

String

"Node_1"

Routing_Table_Name

This is the Routing_Table block name that is responsible for routing the packet within this network.

String

"RT"


 

  Port 

 Explanation 

fr_layer

From the Application layer.  Can be a Traffic Generator or a Layer block.

to_layer

To the Application layer.  Can be a Traffic Generator or a Layer block. 

fr_Node

From the Node block

to_Node

To the Node block


Created with the Personal Edition of HelpNDoc: Free HTML Help documentation generator