1 Introduction

Optical switching has resulted in tremendous increase in physical capacity of communication networks [1]. WDM (wavelength division multiplexing) has enhanced the bandwidth for optical fibers by transmitting data simultaneously on many non-overlapping channels (wavelengths) [2]. Because of ever-increasing transmission rates and available capacity with fibers, even a single link or node failure in a network causes huge data loss [3]. Therefore it is imperative to implement routing technique supporting resilience in WDM optical network. This paper compares unicast routing techniques employing different traffic distributions over UDP and implements them on NSFNET network of 14 nodes with and without failure. In this investigation, failure over a single link is taken into consideration. Single link failures are more probable as compared to simultaneously occurring multi-link failures [4]. Besides link failures, channel and equipment failures are also possible in WDM networks. Incompetent network management software or hardware degradation are main reasons for equipment failures in the network nodes [5]. A channel failure occurs due to the failure of transmitting and/or receiving equipment operating on that channel or wavelength. Equipment and channel failures are less common as compared to the link failures and cause great loss to the optical network as large number of connections gets disrupted [5]. Simultaneously working on protocols and services of physical, transport and network layer to create single network infrastructure is technically complex. Complexity is further enhanced when such a network infrastructure is expected to meet QoS requirements of the evolving Internet applications [6].

In this paper, a network of 14 nodes NSFNET (National Science Foundation Network) is simulated using NS2 (network simulator 2) without failure and with single link failure. The analysis in this paper provides insight into unicast routing techniques supporting resilience and their performance analysis by measuring average end to end delay, average throughput, and average jitter. This analysis is performed under CBR, exponential, Poisson and Pareto traffic distribution. The novelty of this work lies in the implementation of diverse traffic and network layer protocols and their possible combinations to meet QoS of a high-speed network. In Sect. 1.1 and 1.2 dynamic routing techniques and traffic distributions are briefly discussed. Section 2 covers simulation model, simulation parameters of the network, description of methodology and modeling of parameters. Simulation results are presented in Sect. 3. Section 3 also covers the comparative analysis. Section 4 summarizes the main conclusion of the paper along with the future scope.

1.1 Routing strategies

Dynamic routing schemes can perform under any changes in network state, so these schemes can better enhance the performance of high speed networks in contrast to static routing schemes [7]. Dynamic routing strategies considered under analysis are session routing, LS (link state) routing approach and DV (distance vector). Main points of contrast between DV and LS approach are listed in Table 1.

Table 1 Comparison of DV and LS technique [8, 10, 11]

1.1.1 Session routing

Session routing implementation is similar to static routing in terms of the initial application of SPF (shortest path first) algorithm. Session routing strategy implements Dijkstra all-pairs SPF algorithm before the simulation starts [9]. It can adapt to any network change by implementing the same algorithm whereas static routing cannot respond to network dynamics. Backup route computation is done instantaneously in session routing and communication can be reestablished after an occurrence of network failure.

1.1.2 Distance vector: DV routing

Each node distributes a vector to its immediate neighbors. Vector contains the distance of a node to all other nodes. Distribution can be done periodically or when there is update from any node or malfunctioning of any link. DV approach follows steps given below with initial assumptions (a). Each node keeps the record of the cost of links to each of its directly connected nodes and (b). Infinite cost is assigned to a down link.

  1. 1.

    Define distances at each node x.

  2. 2.

    Apply Bellman-Ford Approach [12], Calculate \( {\mathbf{D}}_{{\mathbf{x}}} \left( {\mathbf{y}} \right) \, = \, {\mathbf{min}} \, \left\{ {{\mathbf{c}}\left( {{\mathbf{x}}, \, {\mathbf{v}}} \right) \, + \, {\mathbf{D}}_{{\mathbf{v}}} \left( {\mathbf{y}} \right)} \right\}{\text{over all neighbors v,}} \)where Dx(y) is cost of least-cost path from x to y, c(x, v) is cost of link between nodes x and v.

  3. 3.

    Every node sends a message to its directly connected neighbors about its distance from all nodes in network.

  4. 4.

    Each node update distances based on neighbors.

  5. 5.

    Forwarding tables are updated.

  6. 6.

    Repeat from step 2 when there is a update.

1.1.3 Link state: LS routing

In this protocol, nodes calculate the shortest path tree by using Dijkstra’s algorithm. This is done with help of link state information which is shared by every node with its neibouring nodes. Dijkstra’s is one of the most widely used algorithms for Internet routing [13]. Reliable flooding and shortest path calculation by each node using Dijkstra’s algorithm (steps given below) are two phases of operation of LS algorithm [14]. Each node pass the information about local topology to all nodes. LSP (link state packet) with a unique sequence number is transmitted on all links by each node. New LSP’s are accepted, stored and forwarded to all links by neighboring nodes. In case of link failure, a new LSP is sent with cost infinity to signal the breakdown situation.

Shortest path calculation by Dijkstra’s Algorithm [14].

  1. 1.

    Set source node distance to itself as 0.

  2. 2.

    Set distance from the source of all other nodes to infinite initially.

  3. 3.

    Set predecessor of source to NIL.

  4. 4.

    While Q is not empty where Q is queue of all nodes each holding a key value corresponding to its distance from source node.

    1. (a)

      Extract node with minimum key value, Nmin.

    2. (b)

      For all the neighboring nodes (Nadj) of Nmin which are not visited earlier if d[Nadj] > d[Nmin] + w(Nmin, Nadj), where d[Nadj] is distance of Nadj from source, d[Nmin] is distance of Nmin from source, w(Nmin, Nadj)is cost of link Nmin, Nadj.

    3. (c)

      Calculate updated distance from source node, d[Nadj] = d[Nmin] + w(Nmin, Nadj).

    4. (d)

      Update the key values in Q.

    5. (e)

      Set predecessor of Nadj to Nmin.

    6. (f)

      Nmin is removed from queue.

  5. 5.

    Repeat from 4.

1.2 Traffic distributions

If the traffic distribution does not properly represent the actual traffic characteristics, then the network quality estimated may be overestimation or underestimation of the actual value. Hence the selection of traffic model needs to be accurate and in accordance with service requirements. QoS estimation cannot be provided unless there is a clear understanding of traffic and applications using the network [15]. Statistical studies on network traffic behavior show that network traffic has fractal behavior i.e. self-similarity and LRD (long range dependency). This implies burstiness, at a wide range of time scales [16]. Traffic arrival processes used over UDP in the analysis are CBR, exponential, Pareto, and Poisson.

In CBR, the packets are generated at constant rate for all the nodes in a network. In NS2, configuration parameters for CBR are packet size, packet interval, random noise, and packet sending rate. Either rate or interval parameter value is set but not both simultaneously [17].

In exponential, packets are generated at each node at a fixed rate during the ON periods, and packet generation is stopped during OFF periods. Both ON and OFF periods are derived from exponential distribution [18]. NS2 implements exponential distribution traffic model with parameters: packet size, packet sending rate, burst time, and idle time.

Exponential distribution describes the time between events in a Poisson process [21].

The interrupted Poisson process (IPP) is also a two-state process. Packets are generated only during active (ON) state according to a Poisson distribution with a specified rate. IPP and ON–OFF models differ in inter-arrival time during the ON state [19]. Exponential distribution parameters are applicable to Poisson distribution with condition that for Poisson traffic. Burst time is set to 0 and packet sending rate to a very large value [17].

The time spent in the ON periods for Pareto distribution is an independent identically distributed random variable [19]. NS2 implementation of Pareto distribution traffic model has same parameters as exponential distribution with one additional parameter i.e. Packet Shape. The lower value of shape parameter in range 1–1.5 should be selected for simulation of real traffic bursts as it gives higher variation in peak values of ON and OFF time period which is needed for exhibiting busty nature of traffic [20]. Pareto is good for modeling situations where items concerned are highly skewed e.g. the current Internet traffic.

2 Simulation and modeling

Simulation is performed on NS2, which is an event-driven simulation tool. NS2 is applicable for analyzing the dynamic nature of communication networks. NS2 enables the user to specify and simulate the behavior of network protocols [22]. Figure 1 shows NSFNET with 14 nodes and 21 links simulated in NS2. Packets are seen traversing the working path. Dynamic routing techniques with CBR, exponential, Pareto and Poisson traffic distribution over UDP are simulated and analyzed on the network under test.

Fig. 1
figure 1

Schematic for network under test

Figure 2 illustrates single link (link 5–13) failure on working path. Packets are traversing backup path. As network is considered to have uniform cost over all links, backup path is same for tested routing techniques but path calculation approach is different for all techniques.

Fig. 2
figure 2

Schematic for network under single link failure

The parameters shown in Table 2 have been used for simulation of all considered routing and traffic cases. Parameters specific to CBR, exponential, Poisson and Pareto traffic distribution are shown in Table 3.

Table 2 Simulation parameters
Table 3 Parameters specific to traffic distributions

Dynamic routing techniques with diverse traffic scenarios are compared with help of mathematical model of average E2E delay, packet wise E2E delay, average throughput, instantaneous throughput and average jitter. The E2E delay is composed of transmission delay, propagation delay, processing delay and queuing delay. The average delay is delay incurred due to all the packets. Average throughput is a total number of bytes received at the destination averaged over simulation time. Instantaneous throughput is total bytes received at each progressive time instant. Jitter is variation in packet delay. Average jitter is jitter incurred due to all the packets. Following is the brief description of a sequence of steps executed to model the network and analyze its performance.

  1. 1.

    Event scheduler is created to queue the events that are generated during simulation.

  2. 2.

    Tracing is enabled to record the events during simulation.

  3. 3.

    Network topology is defined according to parameters shown in Table 2. Each link having a bandwidth of 10 Gb and propagation delay of 5 ms.

  4. 4.

    Each link is associated with a DropTail queue in MAC (media access control) sub layer.

  5. 5.

    Dynamic network layer protocols (DV, LS, and session) are incorporated for selecting the working path and backup path (in case of a single link failure).

  6. 6.

    UDP agents are created in pair, one source agent for source node and one sink agent for the destination node.

  7. 7.

    Traffic generators (CBR, exponential, Pareto, and Poisson) are applied for 1.4 s to generate packets for transmission.

  8. 8.

    Each combination of network layer protocol and traffic generator is simulated for 1.9 s.

  9. 9.

    24 Trace files are obtained for DV routing with CBR traffic, DV routing with exponential traffic, DV routing with Pareto traffic, DV routing with Poisson traffic, LS routing with CBR traffic, LS routing with exponential traffic, LS routing with Pareto traffic, LS routing with Poisson traffic, session routing with CBR traffic, session routing with exponential traffic, session routing with Pareto traffic, session routing with Poisson traffic, and each case with single link failure in network.

  10. 10.

    Each trace file is analyzed for calculating desired performance parameters like packet wise delay, average E2E Delay, Instantaneous throughput, average throughput and average jitter.

    1. (a)

      E2E delay is the time consumed to establish the route. Control and information traffic share common channel and channel bandwidth is fixed [23]. E2E delay of ith packet Di is calculated by subtracting the time at which ith packet is enqueued at source node from the time ith packet is received by destination node as given in Eq. 1. Average E2E delay is obtained by summating E2E delay of all the packets divided by total number of packets as given in Eq. 2

      $$ Di = T_{d \, - } T_{s} $$
      (1)
      $$ Dav = \mathop \sum \limits_{i = 1}^{n} {\text{Di}}/{\text{n,}} $$
      (2)

      n is the total number of packets, Dav is the average E2E delay, Di is the E2E delay of ith packet, Ts is the time instant at which a packet is enqueued into link buffer at source node, Td is the time instant at which a packet is received by destination node.

    2. (b)

      Average jitter is average deviation of delay because of all the packets, from the average delay [24]. Jitter is modeled as given in Eq. 3

      $$ J \, = \sqrt {\frac{1}{n - 1}\mathop \sum \limits_{i = 1}^{n} (Di - Dav)^{2} } , $$
      (3)

      J is the average jitter.

    3. (c)

      Throughput is modeled by adding size of all the data packets and dividing the result by applied application duration.

3 Results and discussions

The network shown in Fig. 1 is simulated with different routing techniques i.e. DV, LS, and session. As the network under consideration is unweighted, the primary path traversed by packets is same under all dynamic routing techniques but with different computational approach. This gives different E2E delay, throughput and jitter with different routing techniques. This analysis is made under diverse traffic patterns. The values obtained for average E2E delay, throughput and jitter for all the considered cases of routing technique and traffic distribution are shown in Table 4. It is observed that least average E2E delay is obtained for LS routing technique with Poisson traffic distribution and session routing has the highest value irrespective of traffic distribution. It is seen that highest average throughput is attained for session routing technique with CBR traffic and least for LS routing technique with Poisson traffic. Least jitter is offered by session routing technique with Poisson traffic. Table 5 is depicting the values obtained for all the parameters under each routing and traffic case for network under single link failure. It is observed that overall comparative parameter analysis for DV, LS, and session remain same as analyzed for network without failure. Session routing has different parameter variation w.r.t. traffic distributions under normal network operation and with single link failure. For session routing, as observed from Table 5, the maximum average E2E delay is with Pareto traffic, maximum throughput is for Pareto traffic and least jitter is for CBR traffic under single link failure.

Table 4 Parameter values for DV, LS and Session routing under diverse traffic without any failure in Network
Table 5 Parameter values for DV, LS and session routing under diverse traffic with single link failure in network

Figure 3 shows delay versus packet ID co-plot for DV, LS and session routing technique with diverse traffic. Figure 4 shows delay versus packet ID co-plot for different routing under diverse traffic on occurrence of single link failure. It is observed from Fig. 3 that in session routing, each packet experience same delay irrespective of traffic distribution. As plotted in Fig. 4, the delay is not same for all packet IDs in session routing, few packets are experiencing more delay as compared to the uniform value of delay attained when network did not experience failure. The number of packets varies with traffic distribution pattern and hence average delay is different for diverse traffic patterns.

Fig. 3
figure 3

Delay versus packet ID co plot for DV, LS and session routing technique with a CBR, b Pareto, c Poisson and d exponential traffic distribution

As observed from Fig. 3, delay for a maximum number of packets is 0.005 s with LS routing which results in an overall least average delay. For DV routing, comparatively less number of packets are holding 0.005 s delay so overall average delay is more than LS. In DV and LS routing techniques, few packets are experiencing more delay when network faces link failure. Under failure, the average value of delay for DV routing has increased more than LS routing as can be observed from Fig. 4.

Fig. 4
figure 4

Delay versus packet ID co plot for DV, LS and session routing technique with a CBR, b Pareto, c Poisson and d exponential traffic distribution for network with failure

Figure 5 shows throughput versus simulation time co-plot for DV, LS and session routing under diverse traffic patterns. In Fig. 6, throughput variation under network failure is plotted for different routing techniques with diverse traffic. As observed from Figs. 5 and 6a, b, c, the instantaneous value of throughput for DV and session routing is almost same. The instantaneous value of throughput for session routing is more than DV routing after the instant failure has occurred under exponential traffic as observed from Fig. 6d. Instantaneous throughput for LS routing is highest under Pareto and exponential traffic and least under Poisson traffic. Under CBR traffic, LS routing has the highest throughput for time instants greater than 0.4 s.

Fig. 5
figure 5

Throughput versus simulation time co plot for DV, LS and session routing technique with a CBR, b Pareto, c Poisson and d exponential traffic distribution

Fig. 6
figure 6

Throughput versus simulation time co plot for DV, LS and session routing technique with a CBR, b Pareto, c Poisson and d exponential traffic distribution for network with failure

Average E2E delay plot for DV, LS and session routing for various traffic distributions considered is shown in Fig. 7. Figure 7 also covers the E2E delay values for the case of single link failure in the network. Maximum value for E2E delay is obtained for session routing with failure. It is observed that E2E delay for session routing is almost same for each of the traffic distribution considered. Minimum value of average E2E delay is obtained for LS routing with Poisson traffic. Throughput plot for considered routing and traffic combinations is shown in Fig. 8. For each case considered average value of throughput is least for Poisson traffic. Average jitter for the test combinations under consideration is plotted in Fig. 9. Overall LS routing has maximum value of average jitter. Average jitter for each case of routing and traffic is least for Poisson traffic distribution except the case of session routing with single link failure, for which average jitter is maximum for Poisson traffic.

Fig. 7
figure 7

Average E2E delay under different traffic distributions

Fig. 8
figure 8

Throughput under different traffic distributions

Fig. 9
figure 9

Average jitter under different traffic distribution

4 Conclusion and future scope

Evolving internet applications and their QoS requirements have made it challenging to design network infrastructure supporting resilience. Protocols and services of different layers have to be cautiously selected for a particular network meeting its QoS requirements. In this paper, the effect of diverse traffic distributions and routing techniques on QoS of high-speed networks has been investigated. QoS requirements are tested through mathematical modeling of average E2E delay, throughput, and jitter. A network of 14 nodes, NSFNET is simulated without failure and with single link failure. Simulation, network modeling, and mathematical analysis are performed using NS2 version 2.35. Average E2E delay, average and instantaneous throughput, jitter is calculated for the network configured with dynamic routing under diverse traffic arrival distributions. It is observed that least average E2E delay is offered by link state routing with Poisson traffic distribution and highest delay is offered by session routing technique with Pareto traffic distribution over UDP. Average value of throughput is highest for session routing with CBR traffic (without failure) and with Pareto traffic (with single link failure). Network attains best instantaneous values of throughput for LS routing with exponential traffic. LS routing with Poisson traffic offers least average and instantaneous throughput. Minimum jitter is offered by session routing with Poisson traffic (without failure) and CBR traffic (with single link failure). The investigations in this paper provide insight into the decision of routing technique and traffic arrival distribution for a particular application to meet QoS requirements. The presented investigations can be extended to the development of routing algorithm which will be hybrid of static, session, DV and LS routing technique. Development of an automated system to decide appropriate routing and traffic distribution according to the application requirement is planned as the future scope of the work reported here.