A Study of Network Traffic Pattern and its Impact on Performance in Implementation of Web Services

: Problem statement: Currently it is evident that the web service is emerging as a solution for business applications and deployment of web services witnesses exponential growth. Web services rely on networks particularly internet for implementing and consuming them in different applications. Whenever a network is involved in a software system, network traffic payload measurement and communication pattern play a key role in determining and enhancing performance of the software system. Thus, this study emphasizes the need for network traffic payload measurement in evaluating performance of implementation of web services. Approach: Further empirical measurement of the network traffic payload in implementation of web services is carried out to analyze performance of realization of web services. In this work, the web service realization is done through a model with three-tier approach which is suitable for business applications. Results and Conclusion: This study reports empirical results of network traffic involved in different implementations of web services.


INTRODUCTION
Web services: Web services emerged as the standard solution for describing, discovering and deploying functionalities over the web through open standard protocols SOAP, WSDL and UDDI. A web service describes business functionality exposed by a company, usually through an internet connection, for the purpose of providing a way for another company or software program to use the service (Cheng et al., 2002). So, a Web service is a core technology for sharing information resources and integrating processes in companies or organizations (Lee, 2008). Web services play a vital role in business applications due to its unique inherent property of interoperability. The web service has become the most convincing application of the internet. Web service architecture involves three different roles as service provider, service consumer and service registry and communication takes place between these three systems to find and consume a web service. Here SOAP is used as a protocol for messaging between service consumer and service provider. UDDI is used as the protocol for registering services. WSDL is used as a protocol for describing services and binding information about the web service. In a nutshell, web service involves communication between three remote systems by using industry standard protocols and communication takes place through the internet.
Network traffic measurement: Traffic measurement in networks provides different types of data and quantifiable value of the size of the data communicated over a path. Network traffic analysis and modelling play a major role in charactering network performance and so it has been a focus of many researches (Meng et al., 2009). In this context, the monitoring includes two basic procedures: network traffic gathering and analysis of the gathered data. There are two types of network traffic measurement. A measurement system is called active if it injects synthetic measurement traffic, such as probe packets, in the network. Passive measurement systems, on the other hand, do not inject any measurement traffic but rather observe the actual traffic flowing in the network (Humar and Bester, 2003). The information gained from traffic of the network helps in other aspects of the system as follows here. The knowledge of the traffic characteristics is crucial to the design and operation of a network (Lamparter and Stauffer, 2003). Internet traffic measurement is required for network management, traffic engineering, security and so on (Donghua et al., 2006). In diagnosing potential performance or quality problems, operators benefit from having an accurate and timely view of the flow of traffic across the network (Zhang et al., 2005). It is important that traffic engineering of IP networks should be based on realistic traffic measurement and modeling, since measurements will be used to predict real traffic characteristics (Liang et al., 2003). Accurate measurement and analysis of network traffic behavior characteristics are the main means of offering high quality QoS to users (Zeng et al., 2009). Now it is evident that the following two facts are so vital in the current era of software development. One is, web services are going to be the solution or part of the solution of any software product or system for business applications. Another one is, network traffic measurement plays a critical role in the performance of software system which exploits network or internet infrastructure. The realization of web service happens through the internet and so network traffic also plays a role in performance of web services. Based on these motivational factors, this work empirically measures and analyses traffic payload measurement and its impact on performance of realization of web services.
Related works: Several research efforts were on network traffic measurement to look into the traffic characteristics and patterns or models both in internet and LAN. Non-linear time series prediction method was applied to the traffic measurement data in the work (Meng et al., 2009). The study (Lamparter and Stauffer, 2003) describes AKQUI, a tool for network traffic measurement. Donghua et al. (2006) four algorithms were developed based on network processors to handle high speed network traffic measurement. The study (Lazarou et al., 2008) presents a measure of traffic burstiness, called the index of variability that describes the degree of variability of a typical network. In the study (Jerkins and Wang, 1998), close look at the traffic measurements in packet networks and factors that can have an impact on traffic were discussed. In the study (Liang et al., 2003), it demonstrates how to measure and analyze the interval time and size of HTTP packets and derive statistical parameters from them. The study (Phan et al., 2007a) outlined a method to reduce SOAP traffic in low bandwidth networks by using similaritybased multicasting protocol. The study (Ningawa et al., 2008) proposes a network traffic simulation model for BACnet object access of building facility monitoring systems to evaluate the communication performance. The study (Qiao et al., 2004) presents an empirical study of the predictability of network traffic at different resolutions using linear and nonlinear models. The study (Ernoz et al., 2007) analyses the characteristics of the network behavior within a clustered, multi-tiered data center. The study (Wan and Horng, 2008) presents an intelligent monitoring system for local-area network traffic to capture, parse the captured packets and analyzes current network traffic in real time manner. The study (Rahman et al., 2008) developed a fuzzy logic based traffic models using imprecise data sets that can be obtained realistically. The study (Zeng et al., 2009) proposes a novel self-adaptive sampling method based on aggregated time-serial evolution trend to reflect more information about network traffic bursting. The study (Jing et al., 2009) introduces a multiple-combination model in order to avoid the limitations of single models and enhance the accuracy of network traffic predicting. The study (Feng, 2000) presents a comprehensive study on the adverse effects of TCP on application-generated traffic and characterize the behavior of this affected traffic via the coefficient of variation. As it is discussed above, many research works were done to analyze network traffic in various dimensions such as traffic patterns, modeling and predicting traffic. SOAP performance enhancement through traffic reduction using different techniques like SOAP compression, SOAP multicasting was discussed in the study (Tekli et al., 2011). The work (Al-Shammary and Khalil, 2011) proposed clustering technique for aggregating similar SOAP messages for size reduction. The SOAP multicast routing protocol was explored based on similarity in SOAP messages for reducing network traffic (Phan et al., 2007b). In this study, as a novel experimental approach, network traffic payload involved in implementation of web services using different platforms is explored. Further it emphasizes the impact of network traffic payload in performance of realization of web services.

Model deployed for experimentation:
Multi-tier design: The multi-tier system design is better suitable for any business application. It involves the logical separation of the tasks that formulates the application. In the model shown in Fig. 1, the web service server acts as a service provider which provides many standard generic web services. The application server is simply a web server that contains the web applications which in turn consumes the web services provided by the web service server.
The following three components serve as the various tiers for the model given in Fig. 1.
Web service server: Web service server acts as the container for web services. It provides WSDL document for the services rendered by the web service server.    Application server: It implements user application which consumes web services described by a WSDL document (provided in the web service server) through client proxy. The application server includes the logic which uses the web service. The application server provides a generic http based web application which can be accessed from any other systems connected to the network.

Clients:
Clients are the systems connected to this network through which user can access the application served by the application server. The generic model is realized with different platforms in different tiers as shown in Table 1. Each approach is tested with single common web service application for studying its performance based on network traffic.

Test case and deployment environment:
In this study, an application is developed for storing and retrieving text messages on request. The web service server implements and provides a web method which returns a text message for a request. It contains WSDL document for the method stated above. The application server provides an application which consumes this web service. The deployment environment consists of two machines, one for web services provider and another for the application server. Thin clients access the application from the application server. These systems are connected by means of 100 MB Ethernet LAN. The configurations of the systems stated above are listed in Table 2. Wireshark is used for analyzing performance based on network traffic involved in communication between different tiers for materializing web services in this model.

Main results:
The total network traffic involved in web services materialization in each of the four realization types was captured through the use Wireshark and applying appropriate filters. The output from the tool Wireshark also helps in estimating the total time elapsed for the task.
After connection establishment, Hyper Text Transfer Protocol (HTTP) transactions takes place for visualizing and consuming web services. The client, application server and web service server choose a port number randomly and http service uses port number 80 as per the TCP port assignment conventions. Network traffic happens through three systems namely client, application server and web service server have been captured using Wireshark tool. The experiments have been repeatedly carried out and measurements were observed in all the experiments. Though there was a tiny variation in the traffic structure but the order of performance between different realizations with respect to both time and traffic load remains unchanged. To avoid external interference, network of these systems is isolated from other networks and kept as individual entities.

Network traffic load details:
Http traffic load: HTTP is the main protocol deployed for implementation of web services, as the total process happens through the internet. The Table 3-5 gives a complete picture of http traffic involved in each case for realization of web services. Table 3 shows that total http traffic is high in the case of RIV, then in RI and same in RII and RIII. More Http traffic will certainly consume more time for completion of the task and also it increases traffic load in internet. It is clear from the above table that realization RII and RIII needs lesser http traffic compared to other realizations.     Table 4 provides details of HTTP requests in each case of realization. As it is observed in the above table, in every case two times POST request message, one is from client to the application server for submitting form and the other is from the application server to a web server for calling the service. But only in RI and RIV, it is found that two times GET is applied as follows: HTTP:GET /netclient/theme/com/sun/webui/jsf/suntheme/javascript /theme/nls/en/suntheme.js This happens only in the cases of one J2EE is deployed in Application server. This is due to the fact that the language of the web page content is retrieved from the server. This may be avoided by the technology deployed in order to reduce unnecessary traffic happens between the systems.
The Table 5 gives details of HTTP response messages. The message 100 continue, that is, the initial part of the request has been received and the client may continue with its request, is used one time in RIV, two times in RII and RIII and nil in the case of RI. The message 200 OK, that is, the request is successful, is used two times in all the cases, one for the client request to the application server and the other is to request from application server to the web server.
The message, 404 not found, the document is not found, happens two times only in the cases of one J2EE is used as an application server. This message is due to the fact that when a client attempts to retrieve document, which is already discussed in Http: GET happens in Http request, related to language of the content of the web page.

Total network traffic load involved in web service realization:
Here total network traffic happens between the systems is presented in terms of packet statistics. The Table 6 gives summarized view of total network traffic in realization of web services in each realization. The information in the Table 6 contains packet count, packet length statistics and the actual response time. The application specific transactions take place from application server to client after getting the response from the web service server, have not been included in the measurement of the actual response time, because it is based on user interface created for clients and does not depend on either platform deployed for a web service or realization and consumption of web service. It is well-known from Table 6 that realization type RII has a least packet count but time-wise realization RIII materializes web service with least time and just one more on packet count compared to RII. This shows that even though the packet count play a role in performance of web services and also other factors such as packet length and distribution of packet size within the packet length drive performance of web services. It is also observed that in the two realizations (RII and RIII) which give a response in lesser time with lesser traffic has a higher percentage of the smaller size of packets. Also the two other realizations (RI and RIV), which take more time for response with more traffic has a higher percentage of the larger size of packets when compared with RI and RIII.
From the Table 6, it is evident that realization RIII, with .Net in both application server and web service server provides better performance in response time and also in network traffic. It is also observed that network traffic and response time have a direct relationship that time increases/decreases as network traffic increases/decreases. But, not only, packet count, also packet length and actual traffic load also play a role in response time. The ultimate objective of any software system is to get the response in less time and so response time is given higher priority and network traffic comes next to response time. However network traffic earns importance in the aspect of lesser the traffic in internet, it reduces the total traffic load in the transmission medium. Whatever the transmission medium, it involves cost and so lesser traffic helps in cost reduction. Another challenge in internet is congestion, lesser network traffic certainly helps in reducing or avoiding congestion to a certain extent. It is also observed that the close similarity in traffic in the following pairs: RI and RIV, RII and RIII, that is RI and RIV uses J2EE on the application server and RII and RIII uses .Net in Application server. Figure  2 clearly depicts that the pairs of realizations RI, RIV and RII, RIII have similar traffic in terms of the total packet count , contributions of packets with smaller size and larger size. Thus it gives a very similar graph picture pattern (bucket shape) for all three series in Fig. 2. The combination of Fig. 2 and 3 indicates that actual response time also almost follows the same order and graph picture pattern as it happens in Fig. 2.

CONCLUSION
This study insisted the need for analysis of network traffic in web services and attempted to study impact of network traffic in performance of web services. Empirical analysis of network traffic in realization of web services with two standard platforms J2EE and .Net in four combinations of the model is carried out. Though response time gets higher priority compared to network traffic, it is proved that network traffic plays a key role in the estimation of response time. The performance aspect in terms of time, Http traffic and packet flow were explored and it was observed that .Net in an application server (RII and RIII) materializes web service with lesser traffic compared to other realizations. Reduction in traffic load enables better utilization of transmission medium and also reduces congestion problem to a certain extent. Further it is shown that the contribution of total packet count and corresponding number of packets of different sizes in each realization and how response time also follows the same pattern in the order of performance of realizations. Based on the empirical observation and data, software library support for web services may be fine-tuned in terms of performance, that is, attempt to materialize web services with lesser traffic load pattern but without compromise on functionality. Further these data would also help in estimating traffic load for web services.
This study may further be explored in terms of network traffic in web services. This study approached traffic only in quantifying value in terms of packets and Http requests and responses. Further, the actual traffic content may be explored so that fine tuning may be carried out to improve performance by reducing traffic load. Software platform oriented traffic analysis may be strengthened to explore opportunities for enhancement of performance in each software platform. Network traffic in cases of different sizes and types of payload can also be studied. The root-cause analysis of traffic pattern in each case would bring out a lot of latent facts which may help in understanding system in depth and also to reduce network traffic load. Network traffic with varying number of clients with different payloads may also be studied further.