Protocol Testing

What is Protocol Testing?

The protocol testing is a cumulative term used by the communication industries or organizations for the testing of different protocols in the domains of VoIP, Wireless, Switching, and Routing, etc. In the protocol testing, we tests the structure of packets which are sent over a network using protocol testing tools. During the test, routers and switches are involved which form the parts of devices or products under test. Routers we can imagine as a bus which is used for the transportation and the routing protocols as the traffic signals on the road.

 

Software Protocols:

Software protocols are the common set of rules and constraints that each computers will obey when communicating with each other over a network. These rules define the data and its format that should be followed by all computers during data transfer through a network.Protocols can be categorized into two categories. They are routed protocols and a routing protocols.

  • Routed Protocols: Routed protocols are the set of rules which are obeyed by the computers in order to send the user data from one network to another network.Routed protocols are used in IP, IPX, and AppleTalk. It is applicable to the user traffic such asweb-traffic, e-mails, file transfers, etc.
  • Routing Protocols: Routing protocols are network set of rules which help to determine routes for the routers. It comes into play when we need to determine which routing data packets would be sent between routers. E.g., RIP, IGRP, EIGRP, etc. A different type of communication determinesthe use of a different kind of protocol.

Below is the summary of Computer protocols that fall under the protocol testing.

S No. Protocol Description
1. FTP FTP stands for File Transfer Protocol. This protocol is applicable during the transfer of files between one computer/node to another computer/node over a network.
2. HTTP HTTP stands for Hypertext Transfer Protocol. This protocol is applicable during the transfer of HTML page in encrypted form in order to provide security to the sensitive data.
3. POP3 POP3 stands for Post Office Protocol. This protocol is used to receive emails.
4. SMTP SMTP stands for Simple Mail Transfer Protocol. This protocol is used to send emails.
5. TCP/IP TCP/IP stands for Transmission Control Protocol/ Internet protocol. It is applicable duringsending of information in small packets over the Internet.
6. UDP/ ICMP UDP/ ICMPstands for User Datagram Protocol/Internet Control Message Protocol. It is applicable during sending of small amount of information in data-packets over internet.

 

Scope of Protocol Testing:

Protocol testing has wide scope in the organizations such as CISCO, JUNIPER, etc. which manufactures networking devices such as routers, modems, switches, wireless access points, etc. Protocol testing for these devices involves checking of EIGRP (Enhanced Interior Gateway Routing Protocol) or OSPF (Open Shortest Path First), etc.

 

Protocol Testing Scope in OSI Model:

The popular OSI model has total 7 layer of network communication out of which data link and network layer are very important.

  • Data link layer: Examples of data link layer are Ethernet, Mac address, Token Ring, Frame Relay, etc.
  • Network layer: Examples of network layer are the available path in the network for communication between nodes (IP address).

 

Procedure of Protocol Testing:

To conduct protocol testing, we require protocol analyzer and simulator. Together, they are used for scalability, performance, protocol algorithm etc. of the device.

  • Protocol analyzer is used to ensure proper decoding along with call and session analysis. It is carried out by DUT (device under test) to check the structure of the packets send by the devices (i.e. switches, routers, etc.).
  • Simulator is used to simulate various entities of networking element.

 

Types of Protocol Testing:

Protocol testing involves the following three checks.

  • Bandwidth: It is the rate of packets transmitted per second.
  • Correctness: It is tested to receive the expected packets for the intended protocol.
  • Latency: The time elapsed in receiving a data packet during its transit from the source node to the destination node.

Protocol testing is sub-classified into performance and functional testing.

  • Performance Testing: It covers the performance aspects of the devices under test such as stress testing, load testing, reliability testing, etc.
  • Functional Testing: It covers the behavioural aspects of the device under test such as negative testing, conformance testing (tested for adherence like IEEE, RFC etc.), interoperability testing (interoperability for different vendors are tested), network feature testing (testing the features of the devices against the requirements and design document) etc.

 

Sample Test Cases Design For Protocol Testing:

The following are the sample test cases for the protocol testing of a router.

Test Case ID Test Case Name Test Case Description
TC1 Operating speed of Line To test the device operating speed at 100Mbps, along with the utilization of all the available bandwidth to handle incoming traffic.
TC2 Protocol conversation rate To test and track a TCP conversation between two or more devices for the verification of their correct operating behaviour.
TC3 Negative testing Enter the negative test data such as incorrect key in order to check the user for authentication and the device behaviour.
TC4 Performance of telephone switch Performance analysis of the device during the pool of 500 – 1000 telephone calls and its capability to switch over the calls.
TC5 Spanning Tree: Root Path Cost Variation To test the effect of the topology variation versus the Root Path Cost changes.
TC6 Spanning Tree: Port Blocking To test the spanning tree protocol for the mitigation of cycles in the network, blocking redundant links, etc.
TC7 Each Root Bridge for distinct MSTI To test that each MSTI can have distinct Root Bridge.
TC8 Response time Test to evaluate the response time of a device against the invite request for the session initiation.

 

Protocol Testing Tools:

The following are the protocol testing tools which are widely used by the Network companies.

  • Scapy: It is a powerful packet manipulating which is used for Packet Crafting. It is used to create packets, encode and decode packets on the network, capture packets to analyze them, and inject packets into the network or internet.

    Download Scapy

  • TTCN: It is awell-knowntesting language that defines test scenario for the implementation of the protocol testing. A TCCN test suite contains the test cases which are written in the TTCN programming language for the behavioral testing of the routing devices
  • Wireshark: It is one of the powerful testing tool which is used for the protocol testing. It permits to capture real time packets and display them in the human readable formats. It permits us to dive deep into the network traffic in order to inspect individual packets by implementing color coding and filters.

    Download Wireshark

 

Conclusion:

In this article, we discussed about the protocol testing. We covered protocol testing procedures, sample test cases and the testing tools used to conduct protocol testing. This is unique type of testing, share your experience which help our QA friends to understand more insight of protocol testing.

Leave a Comment

Share This Post