The objective of this lab is to examine the effect of ATM adaptation layers and service classes on the performance of the network.
Asynchronous Transfer Mode (ATM) is a connection-oriented, packet-switched technology. The packets that are switched in an ATM network are of a fixed length, 53 bytes, and are called cells. The cell size has a particular effect on carrying voice traffic effectively. The ATM Adaptation Layer (AAL) sits between ATM and the variable-length packet protocols that might use ATM, such as IP. The AAL header contains the information needed by the destination to reassemble the individual cells back into the original message. Because ATM was designed to support all sorts of services, including voice, video, and data, it was felt that different services would have different AAL needs. AAL1 and AAL2 were designed to support applications, like voice, that require guaranteed bit rates. AAL3/4 and AAL5 provide support for packet data running over ATM.
ATM provides QoS capabilities through its five service classes: CBR, VBR-rt, VBR-nrt, ABR, and UBR. With CBR (constant bit rate), sources transmit stream traffic at a fixed rate. CBR is well-suited for voice traffic that usually requires circuit switching. Therefore, CBR is very important to telephone companies. UBR, unspecified bit rate, is ATM’s best-effort service. There is one small difference between UBR and the best-effort model. Because ATM always requires a signaling phase before data is sent, UBR allows the source to specify a maximum rate at which it will send. Switches may make use of this information to decide whether to admit or reject the new VC (virtual circuit).
In this lab you will set up an ATM network that carries three applications: Voice, Email, and FTP. You will study how the choice of the adaptation layer as well as the service classes can affect the performance of the applications.
Create a New Project
1. Start OPNET IT Guru Academic Edition ⇒ Choose New from the File menu.
2. Select Project and click OK ⇒ Name the project <your initials>_ATM, and the scenario CBR_UBR ⇒ Click OK.
3. In the Startup Wizard: Initial Topology dialog box, make sure that Create Empty Scenario is selected ⇒ Click Next ⇒ Select Choose From Maps from the Network Scale list ⇒ Click Next ⇒ Choose USA from the maps ⇒ Click Next ⇒ From the Select Technologies list, include the atm_advanced Model Family as shown in the following figure⇒ Click Next ⇒ Click OK.
Create and Configure the Network
Initialize the Network:
1. The Object Palette dialog box should now be on the top of your project workspace. If it is not there, open it by clicking . Make sure that atm_advanced is selected from the pull-down menu on the object palette.
2. Add to the project work space the following objects from the palette: Application Config, Profile Config, two atm8_crossconn_adv switches, and a subnet.
a. To add an object from a palette, click its icon in the object palette ⇒ Move your mouse to the workspace and click to place the object ⇒ Right-click to get out of “object creation mode.”
3. Close the Object Palette dialog box and rename (right-click on the node ⇒ Set Name) the objects you added as shown and then save your project:
PCM stands for Pulse Code Modulation. It is a procedure used to digitize speech before transmitting it over the network.
Configure the Applications:
- Right-click on the Applications node ⇒ Edit Attributes ⇒ Expand the Application Definitions attribute and set rows to 3 ⇒ Name the rows: FTP,
EMAIL, and VOICE.
i. Go to the FTP row ⇒ Expand the Description hierarchy ⇒ Assign High Load to FTP.
ii. Go to the EMAIL row ⇒ Expand the Description hierarchy ⇒ Assign High Load to Email.
iii. Go to the VOICE row ⇒ Expand the Description hierarchy ⇒ Assign PCM Quality Speech to Voice.
2. Click OK and then save your project.
- Right-click on the Profiles node ⇒ Edit Attributes ⇒ Expand the Profile Configuration attribute and set rows to 3.
i. Name and set the attributes of row 0 as shown:
ii. Name and set the attributes of row 1 as shown:
⇒ Close the Object Palette dialog box.
Configure the NorthEast Subnet:
- Double-click on the NorthEast subnet node. You get an empty workspace, indicating that the subnet contains no objects.
- Add the following items to the subnet workspace: one atm8_crossconn_adv switch, one atm_uni_server_adv, four atm_uni_client_adv, and connect them with bidirectional atm_adv links ⇒ Close the palette ⇒ Rename the objects as shown.
Hint: To edit the attributes of multiple nodes in a single operation, select all nodes simultaneously using shift and left-click; then Edit Attributes of one of the nodes, and select Apply Changes to Selected Objects.
Client Address is the Transport Adaptation Layer (TPAL) address of the node. This value must be unique for each node.
The TPAL model suite presents a basic, uniform interface between applications and transport layer models. All interactions with a remote application through TPAL are organized into sessions. A session is a single conversation between two applications through a transport protocol.
The queue configuration specifies a one-to-one mapping between output port queues and the QoS that they support. A specific queue may be configured to support a specific QoS.
4. Change the data rate attribute for all links to DS1.
5. For both NE_Voice1 and NE_Voice2, set the following attributes:
i. Set ATM Application Parameters to CBR only.
ii. Expand the ATM Parameters hierarchy ⇒ Set Queue Configuration to
iii. Expand the Application: Supported Profiles hierarchy ⇒ Set rows to 1 ⇒ Expand the row 0 hierarchy ⇒ Set Profile Name to VOICE_P.
iv. Application: Supported Services ⇒ Edit its value ⇒ Set rows to 1 ⇒ Set
Name of the added row to VOICE ⇒ Click OK.
v. Expand the Application: Transport Protocol hierarchy ⇒ Voice Transport = AAL2.
6. For NE_Voice1, select Edit Attributes ⇒ Edit the value of the Client Address attribute and write down NE_Voice1.
7. For NE_Voice2, select Edit Attributes ⇒ Edit the value of the Client Address attribute and write down NE_Voice2.
8. Configure the NE_DataServer as follows:
i. Application: Supported Services ⇒ Edit its value ⇒ Set rows to 2 ⇒ Set
Name of the added rows to: EMAIL and FTP ⇒ Click OK.
ii. Expand the Application: Transport Protocol Specification hierarchy ⇒ Voice Transport = AAL2.
iii. Edit the value of the Server Address attribute and write down
9. For both NE_Data1 and NE_Data2, set the following attributes:
i. Expand the ATM Parameters hierarchy ⇒ Set Queue Configuration to
ii. Expand the Application: Supported Profiles hierarchy ⇒ Set rows to 2 ⇒ Set Profile Name to FTP_P (for row 0) and to EMAIL_P (for row 1).
10. For NE_Data1, select Edit Attributes ⇒ Edit the value of the Client Address attribute and write down NE_Data1.
11. For NE_Data2, select Edit Attributes ⇒ Edit the value of the Client Address attribute and write down NE_Data2.
12. Save your project.
The subnets of the other regions should be similar to the NorthEast one except for the names and client addresses.
- Make three copies of the subnet we just created.
- Rename (right-click on the node ⇒ Set Name) the subnets and connect them to the switches with bidirectional atm_adv links as shown. (Note: You will be asked to pick the node inside the subnet to be connected to the link. Make sure to choose the “switch” inside each subnet to be connected.)
- Change the data rate for all links to DS1.
5. Select and double-click each of the new subnets (total four subnets) and change the names, client address, and server address of the nodes inside these subnets as appropriate (e.g., replace NE with SW for the SouthWest subnet).
Hint: To do step 6, you can right-click on any voice station and choose
Edit Similar Nodes. This brings up a table in which each node occupies one row and attributes are shown in the columns.
Follow the same procedure with similar steps in this lab.
6. For all voice stations in all subnets (total of eight stations), edit the value of the
Application: Destination Preferences attribute as follows:
i. Set rows to 1 ⇒ Set Symbolic Name to Voice Destination ⇒ Click on (…) under the Actual Name column ⇒ Set rows to 6 ⇒ For each row choose a voice station that is not in the current subnet. The following figure shows the actual names for one of the voice stations in the NorthEast subnet:
7. For all data stations in all subnets (total of eight stations), configure the
Application: Destination Preferences attribute as follows:
i. Set rows to 2 ⇒ Set Symbolic Name to FTP Server for the one row and Email Server for the other row ⇒ For each symbolic name (i.e., FTP Server and Email Server), click on (…) under the Actual Name column ⇒ Set rows to 3 ⇒ For each row choose a data server that is not in the current subnet. The following figure shows the actual names for one of the data stations in the NorthEast subnet:
Hint: To do step 8 in a single operation, you can use the right-click menu on any switch to Select Similar Nodes; then Edit Attributes, and check Apply Changes to Selected Objects. This feature does work, even across objects in different subnets.
Max_Avail_BW is the maximum bandwidth allocated to this queue. Calls will be admitted into this queue only if they are within the maximum available bandwidth requirement.
8. For all switches in the network (total of six switches), configure the Max_Avail_BW of the CBR queue to be 100%, as shown below, and the
Min_Guaran_BW to be 20%.
9. Save your project.
Choose the Statistics
To test the performance of the applications defined in the network, we will collect one of the many available statistics as follows:
1. Right-click anywhere in the project workspace and select Choose Individual Statistics from the pop-up menu.
2. In the Choose Results dialog box, choose the following statistics:
3. Click OK.
Configure the Simulation
Here we need to configure the duration of the simulation:
2. Set the duration to be 10.0 minutes.
3. Click OK. We will be running the simulation later.
Duplicate the Scenario
In the network we just created, we used the CBR service class for the Voice application and the UBR service class for the FTP and Email applications. To analyze the effect of such different classes of services, we will create another scenario that is similar to the CBR_UBR scenario we just created but it uses only one class of service, UBR, for all applications. In addition, to test the effect of the ATM adaptation layer, in the new scenario we will use AAL5 for the Voice application rather than AAL2.
1. Select Duplicate Scenario from the Scenarios menu and give it the name
UBR_UBR ⇒ Click OK.
2. For all voice stations in all subnets, reconfigure them as follows. (Check the note below for a faster way to carry out this step.)
i. Set ATM Application Parameters to UBR only.
ii. ATM Parameters ⇒ Set Queue Configuration to UBR.
iii. Application: Transport Protocol ⇒ Set Voice Transport to AAL5.
3. Save your project.
Note: One easy way to carry out step 2 above is through the network browser as follows:
- Select Show Network Browser from the View menu.
- Select Nodes from the drop-down menu, and check the Only Selected check box as shown in the following figure.
- Write voice in the find field and click Enter.
- In the network browser you should see a list of all voice stations selected.
- Right-click on any of the voice stations in the list, select Edit Attributes, and check Apply Changes to Selected Objects.
- Carry out the configuration changes in step 2 above.
- To hide the network browser, deselect Show Network Browser from the View menu.
Run the Simulation
To run the simulation for both scenarios simultaneously:
1. Go to the Scenarios menu ⇒ Select Manage Scenarios.
2. Change the values under the Results column to <collect> (or <recollect>) for both scenarios. Compare to the following figure.
3. Click OK to run the two simulations. Depending on the speed of your processor, this may take several minutes to complete.
4. After the two simulation runs complete, one for each scenario, click Close.
5. Save your project.
View the Results
To view and analyze the results:
1. Select Compare Results from the Results menu.
2. Change the drop-down menu in the right-lower part of the Compare Results dialog box from As Is to time_average as shown.
3. Select the voice Packet Delay Variation statistic and click Show. The resulting graph should resemble the one below. (Note: Result may vary slightly due to different node placement.)