Monday, 20 June 2016

Protocol Testing

What is Protocol in a software industry?

When computer communicates with each other, there is a common set of rules and conditions that each computer has to follow. In other words, protocols determine how data are transmitted between computing devices and over networks.
Protocols are classified into two categories routed protocols and a routing protocols
  • Routed Protocols: Routed protocols can be used to send the user data from one network to another network. It carries user traffic like e-mails, web-traffic, file transfers, etc. Routed protocols are IP, IPX, and AppleTalk.
  • Routing Protocols: Routing protocols are network protocols that determine routes for routers. It is only used between routers. For example RIP, IGRP, EIGRP, etc.
In simple terms, router is like a bus used for transportation while routing protocols are signals on the road.
Based on the type of communication different protocols are used.
In this tutorial we will learn

Types of computer protocols

Types of ProtocolsPurpose of Protocols
TCP/IP It is used to send information in small packets over Internet
UDP/ ICMPIt is used to send small amount of information in data-packets over internet
POP3 and SMTPIt is used for sending and receiving mail
Hypertext Transfer ProtocolIt is used to transfer HTML page in encrypted form to provide security to sensitive data
FTP It is used for transporting files over a network from one node to another
* TCP/IP- Transmission Control Protocol/ Internet protocol, UDP / ICMP- User Datagram Protocol/Internet Control Message Protocol, POP3/SMTP- Post Office Protocol / Simple Mail Transfer Protocol, HTTP- Hyper Text Transfer Protocol, FTP- File Transfer Protocol

Different types of network Protocols (L2 and L3)

The OSI model has total 7 layer of network communication, in which layer 2 and layer 3 are very crucial.
  • Layer 2: It is a data link layer. Mac address, Ethernet, Token Ring, and Frame Relay are all examples of Data link layer.
  • Layer 3: It is a network layer that determines the best available path in the network for communication. IP address is an example of layer3.

What is Protocol Testing?

Protocol testing is a generic term used by companies working in the communication industry for testing different protocols in domains of Switching, Wireless, VoIP, Routing, Switching, etc.
Companies like CISCO, JUNIPER, ALCATEL produce networking devices like routers, modems, wireless access points, etc. that use different protocols for communication, for example, CISCO uses EIGRP, OSPF, etc.
Protocol testing is nothing but checking whether EIGRP (Enhanced Interior Gateway Routing Protocol) or OSPF (Open Shortest Path First) or any other protocol is working as per respective standard.

Protocol Testing Process

  • For protocol testing, you need protocol analyzer and simulator
  • Protocol analyzer ensures proper decoding along with call and session analysis. While simulator simulates various entities of networking element
  • Usually a protocol testing is carried out by DUT (device under test) to other devices like switches and routers and configuring protocol in it
  • Thereafter checking the packet structure of the packets send by the devices
  • It checks scalability, performance, protocol algorithm etc. of the device by using tools like lxNetworks, Scapy and Wireshark

Testing Types for Protocol Testing

Protocol testing includes testing of functionality, performance, protocol stack, interoperability, etc. During protocol testing basically three checks is done.
  • Correctness: Do we receive packet X when we expected
  • Latency: How long does a packet take to transit the system
  • Bandwidth: How many packets we can send per second
Protocol testing can be segregated into two categories. Stress and Reliability Tests and Functional Tests. Stress and Reliability tests cover load testing, stress testing, performance testing, etc. While functional testing includes negative testing, conformance testing, interoperability testing, etc.
  • Conformance Testing: The protocols implemented on products are tested for adherence like IEEE, RFC etc.
  • Interoperability Testing: The interoperability for different vendors are tested. This testing is done after conformance testing is done on the appropriate platform
  • Network feature Testing: The features on networking products are tested for functionality with reference to the design document. For example features can be port-security on a switch, ACL on a router etc.


 

1 comment:

  1. Thanks for the article, excellent stuff especially enjoyed the points you covered in Important instructions section. You can get info on Agile Testing as well with some guidelines with different way of thinking.

    ReplyDelete