Routing and Traffic Engineering in Dynamic Packet-Oriented Networks

Spurred by the vision of seamless connectivity anywhere and anytime, ubiquitous and pervasive communications are playing increasingly important role in our daily lives. New types of applications are also affecting behaviour of users and changing their habits, essentially reinforcing the need for being always connected. This clearly represents a challenge for the telecommunications community especially for operating scenarios characterised by high dynamics of the network requiring appropriate routing and traffic engineering.


Introduction
Spurred by the vision of seamless connectivity anywhere and anytime, ubiquitous and pervasive communications are playing increasingly important role in our daily lives.New types of applications are also affecting behaviour of users and changing their habits, essentially reinforcing the need for being always connected.This clearly represents a challenge for the telecommunications community especially for operating scenarios characterised by high dynamics of the network requiring appropriate routing and traffic engineering.
Routing and traffic engineering are cornerstones of every future telecommunication system, thus, this chapter is concerned with an adaptive routing and traffic engineering in highly dynamic packet-oriented networks such as mobile ad hoc networks, mobile sensor networks or non-geostationary satellite communication systems with intersatellite links (ISL).The first two cases are recently particularly popular for smaller scale computer or data networks, where scarce energy resources represent the main optimisation parameter both for traffic engineering and routing.However, they require a significantly different approach, typically based on clustering, which exceeds the scope of this chapter.The third case, on the other hand, is particularly interesting from the aspect of routing and traffic engineering in large scale telecommunication networks.Even more so, since it exhibits a high degree of regularity, predictability and periodicity.It combines different segments of communication network and generally requires distinction between different types of traffic.Different restrictions and requirements in different segments typically require separate optimization of resource management.So, in order to explain all routing functions and different techniques used for traffic engineering in highly dynamic networks we use as an example the ISL network, characterized by highly dynamic conditions.Nonetheless, wherever possible the discussion is intentionally kept independent of the type of underlying network or particular communication protocols and mechanisms (e.g.IP, RIP, OSPF, MPLS, IntServ, DiffServ, etc.), although some presented techniques are an integral part of those protocols.Thus, this chapter is focusing on general routing and traffic engineering techniques that are suitable for the provision of QoS in packet-oriented ISL networks.Furthermore, most concepts, described techniques, procedures and algorithms, even if explained on an example of ISL network, can be generalised and used also in other types of networks exhibiting high level of dynamics (Liu et al., 2011;Long et al., 2010;Rao & Wang, 2010, 2011).The modular approach allows easy (re)usage of presented procedures and techniques, thus, only particular or entire procedures can be used.
ISL network exhibits several useful properties which support the development of routing procedures.These properties include (Wood et al., 2001):

•
Predictability -motion of satellites around the earth is deterministic, thus the position of satellites and their connectivity can be computed in advance, taking into account the parameters of the satellite orbit and constellation.Consequently, in an ISL network only undeterministic parameters need to be monitored and distributed through the network, thus minimizing the signalling load.

•
Periodicity -satellite positions and thus the configuration of the space segment, repeats with the orbit period, which is defined uniquely by the selected orbit altitude.
Taking into account also the terrestrial segment, an ISL network will experience a quasi-periodic behaviour on a larger scale, defined as the smallest common integer multiple of the orbit period and the traffic intensity period, referred to as the system period.

•
Regularity -a LEO constellation with an ISL network is characterized by a regular mesh topology, enabling routing procedures to be considered independently of the actual serving satellite (i.e.concealing the motion of satellites with respect to the earth from the routing procedure).Furthermore, the high level of node connectivity (typically between 2 and 6 links to the neighbouring nodes) provides several alternative paths between a given pair of satellites.

•
Constant number of network nodes -routing procedures in ISL networks are based typically on the explicit knowledge of the network topology which, in the case of satellite constellation, has a constant, predefined number of network nodes in the space (satellites) and terrestrial (gateways) segments (except in the case of a node or a link failure).This property has a direct influence on the calculation of routing tables.
The above properties are incorporated in the described routing and traffic modelling techniques and procedures.Special attention is given to properties which support the development of efficient, yet not excessively complex, adaptive routing and traffic engineering techniques.
However, for the verification, validation and performance evaluation of algorithms, protocols, or whole telecommunication systems, the development of suitable traffic models, which serve as a vital input parameter in any simulation model, is of paramount importance.Thus, at the end of the chapter we are presenting the methodology for modelling global aggregate traffic comprising of four main modules.It can be used as a whole or only selected modules can be used for particular purposes connected with simulation of particular models.
Routing and traffic engineering on one side require good knowledge of the type of network and its characteristics and on the other side also of the type of traffic in the network.This is needed not only for adapting particular techniques, procedures and algorithms to the network and traffic conditions but also for their simulation, testing and benchmarking.To this end this chapter is complemented by description of a methodology for developing a global traffic model suitable for the non-geostationary ISL networks, which consists of modules describing distribution of sources, their traffic intensity and its temporal variation, as well as traffic flow patterns.

Routing functions
The main task of any routing is to find suitable paths for user traffic from the source node to destination node in accordance with the traffic's service requirements and the network's service restrictions.Paths should accommodate all different types of services using different optimisation metrics (e.g.delay, bandwidth, etc.).Thus, different types of traffic can be routed over different routes.Routing functionality can be in general split in four core routing functions, (i) acquiring information about the network and user traffic state, and link cost calculation, (ii) distributing the acquired information, (iii) computing routes according to the traffic state information and chosen optimization criteria, and (iv) forwarding the user traffic along the routes to the destination node.
For each of these functions, several policies exist.Generally speaking, the selection of a given policy will impact (i) the performance of the routing protocol and (ii) the cost of running the protocol.These two aspects are dual and a careful design in the routing algorithm must achieve a suitable balance between the two.The following sub-sections will discuss the four core routing functions.

Acquiring information about the network and link cost calculation
The parameters of the link-cost metric should directly represent the fundamental network characteristics and the changing dynamics of the network status.Furthermore, they should be orthogonal to each other, in order to eliminate unnecessary redundant information and inter-dependence among the variables (Wang & Crowcroft, 1996).Depending on the composition rule we distinguish additive, multiplicative, concave and convex link-cost metrics (Wang, 1999).In additive link-cost metrics the total cost of the path is a sum of costs on every hop.Additive link costs include delay, jitter, cost and hop-count.Total cost of the path in the case of multiplicative link-cost metrics is a product of individual costs of links.A typical example of multiplicative link cost is link reliability.In concave and convex link-cost metrics the total cost of the path equals the cost on the hop with the minimum and maximum link cost respectively, and a typical example of link-cost metric is the available bandwidth.

Link cost for delay sensitive traffic
We show the use of the additive link-cost metric as an example for the link-cost function for the delay sensitive traffic, considering two dynamically changing parameters.The first is the intersatellite distance between neighbouring satellites, while the second is the traffic load on a particular satellite.They have a significant effect on the routing performance and are scalable with the network load and link capacity, thus being well suited for link-cost metric.(Mohorcic et al., 2004;Svigelj et al., 2004a).
The distance between satellite pairs in a non-geostationary satellite system is deterministic and can be calculated in advance.We consider this distance of a particular link l through propagation delay (T Pl ).Propagation delay in satellite communications is proportional to the number of hops between source and destination satellites, which could be used as a simplified cost metric or an additional criterion.
The traffic load on a particular satellite and its outgoing links is constantly changing in a random fashion, thus it needs to be estimated in real-time.In this case we monitor the traffic load on a satellite through the packet queuing delay (T ql ) at the respective port of the node, which is directly proportional to the traffic load on the selected outgoing link l as shown in Equation ( 2), where L r denotes the length of the r th packet in outgoing queue and C l is the capacity of the link l r r ql l Due to variation of these queuing delays, the queuing delay value T Ql , considered in the link-cost function, is periodically estimated using a fixed-size window exponential forgetting function EFF(n, χ, T ql ) on a set of the last n values of packet queuing delay collected in a given time interval (i.e.T ql [n] being the last collected value, and the other values considered being T ql [n-1],..., T ql [1]).In the EFF function, n (the depth of the function) denotes the number of memory cells in the circular register.If the number of collected T ql values m is smaller than n, then only these values are considered in the EFF function.
Furthermore, as shown in Equation (3), a forgetting factor, χ ∈ (0, 1), is introduced to make the more recent T ql values more significant in calculating T Ql .

Link cost based on expected queuing delay enhanced with Exponential Smoothing Link-Cost Function
In the case of using expected queuing delay in the assessment of the traffic load, we monitor the outgoing queues of particular traffic.A packet entering a given output queue at time t will have the expected queuing delay, T exp , given by Equation (4), where L av is the average packet length, C the link capacity, and n(t) the number of packets in the queue.
Calculation of the expected queuing delay does not require any distribution of link status between neighbouring nodes, and has the advantage of fast response to congestions on the link.However, for calculation of pre-computed routing tables the average expected queuing delay T exp_av has to be determined using Equation ( 5) at the end of each update interval T I starting at time t S .This average expected queuing delay could subsequently be already used as a link-cost metric parameter T Ql , as shown in Equation ( 6), which expresses traffic load on the link.
The consideration of link load in the link cost calculation, and consequently in route computation, may cause traffic load oscillations between alternative paths in the network (Bertsekas & Gallager, 1987).In particular, routing of packets along a given path increases the cost of used links.At the end of routing update interval this information is fed back to the routing algorithm, which chooses for the next routing update interval an alternative path.In extreme cases this may result in complete redirection of traffic load to alternative paths, eventually leading to traffic load oscillation between the two alternative paths in consecutive routing tables and hence routing instability.In ISL networks for instance traffic load oscillations impose a particular effect on delay sensitive traffic, as there are many alternative paths between a given pair of satellites with similar delays.Oscillations are especially inconvenient under heavy traffic load conditions, where the impact of traffic load parameter on the link cost is much higher than that of the propagation delay T P .Under such conditions oscillations lead to congestion on particular links, which significantly degrades routing performance.In addition, the oscillations of traffic load have also a great impact on triggered signalling, where the signalling load depends on a significant change of link cost.
In order to introduce the triggered signalling, the reduction of the oscillation of traffic load and consequently the oscillation of link cost is inevitable.Smoothing of the link cost on a particular link can be done in two ways: • Directly by modifying the link cost on particular link with a suitable smoothing function.
• Indirectly by using advanced forwarding policies, which send traffic also along the alternative paths and distribute traffic more evenly on the first and the second shortest paths and consequently smooth-out the link cost.(see section 2.4.) To reduce the oscillations one can use an exponential smoothing link-cost function, which iteratively calculates the traffic load parameter T Ql from its previous values according to Equation ( 7).The influence of the previous value is regulated with a parameter k, defined between 0 and 1 (k∈[0,1]), while the initial value for the parameter T Ql is set to 0.
Taking into account this parameter, the cost of a given link l is calculated using Equation ( 1).
If k equals 1, there is no influence of previous values on current link cost and Equation ( 7) transforms to Equation ( 6).On the other hand, if k equals 0, only propagation delay is considered in link cost calculation, which leads to traffic insensitive routing.
One of the drawbacks of the exponential smoothing link-cost function is that it takes into account in each iteration all previous values of parameter T exp_av .The value of T Q as a function of n previous values of T exp_av is given in Equation ( 8).It can be seen that the impact of previous values of T exp_av decreases exponentially with increasing value of n.
The main goal of the exponential smoothing link-cost function, which tends to suppress the traffic load oscillations, is that the link cost should reflect the actual traversing traffic flow and the traffic intensity of the region served by the satellite, and not the instantaneous fluctuations of traffic load due to oscillation.In such manner exponential smoothing algorithm promises more evenly distribution of traffic load between links and consequently a better performance for different traffic types.Furthermore it ensures, that in a lightly loaded network, the routing performance is not decreased, while it is notably enhanced in heavily loaded network.A more exhaustive explanation of exponential smoothing link cost function and optimum definition of parameter k is given in (Svigelj et al., 2004a).

Weighted delay calculation
The relative impacts of traffic load and propagation delay on the link cost are linearly regulated with a traffic weight factor (TWF l ) and a propagation delay weight factor (PDWF l ), respectively, as shown in Equation ( 9) defining weighted delay (WD l ) on the link l.This allows biasing of link cost towards shortest-path routes (PDWF l > TWF l ) or towards least loaded but slightly longer routes (PDWF l < TWF l ).
In general, as indicated in Equation ( 9), different weights can be used on different links.In a non-geostationary satellite system, however, satellites are continuously revolving around the rotating earth, so weights cannot be optimized for the traffic load of certain regions but should either be fixed or should adapt to the conditions in a given region.The later gives opportunity for further optimisation using some traffic aware heuristic approach.
Weighted delay on the link, as given by Equation ( 9), can already be used as a simple continuous link-cost function with a linear relation between both metrics.In general, however, a more sophisticated link-cost function should be able to control the relative cost of heavily loaded links with respect to lightly loaded links.This can be accomplished by a non-linear link-cost function, such as an exponentially growing function with exponent α, as given in Equation ( 10), where WD L and WD U represent lower and upper boundary values of weighted delay on the links respectively.
The first term in Equation ( 10) represents the normalised dynamically changing link cost according to variation of propagation delay (e.g.ISL length) and traffic load (e.g.queuing delay).Since it is not suitable that link cost be zero, which can cause high oscillations, a small constant (WD L /WD U ) is added to the normalised term of the link-cost function.This constant represents the normalised cost of the shortest link without any traffic load.When α = 0 a link-cost function has no influence on the routing algorithm, and path selection reduces to cost-independent routing (i.e.minimum hop count routing), while with α = 1 it selects a path with the minimum sum of link costs.Exponent values larger than 1 (α > 1) tend to eliminate heavily loaded (high cost) links from consideration, while exponent values smaller than 1 (α < 1) tend to preserve lightly loaded links.Combining Equations ( 9) and( 10), the link cost for the delay sensitive traffic, which takes into consideration delay on the link, is calculated as given by Equation (11).

Discretization
Regardless of the selected link-cost function the calculated link cost needs to be distributed throughout the network and stored in nodes for the subsequent calculation of new routing tables.In order to reduce computation effort and memory requirements, routing algorithms have been proposed that perform path selection on a small set of discrete link-cost levels.In these algorithms the appropriate number of link-cost levels needs to be defined to balance between the accuracy and computational complexity.
Equation ( 13) represents a suitable function, which converts the continuous link-cost function, given in Equation ( 12), to L discrete levels denoted as C Dl in the range between 0 and 1.In this link-cost function the minimum and maximum value for weighted delay are used, WD min and WD max .Any link with weighted delay below WD min is assigned the minimum cost 1/L, while links with weighted delay higher than WD max have link cost set to 1. ii

Link cost function for the throughput sensitive traffic
The most suitable optimization parameter for the throughput sensitive traffic, on the other hand, is the available bandwidth on the link.Thus, on each link the lengths of the traversing packets are monitored between consecutive routing table updates, and the link utilization (LU l ) is calculated according to Equation ( 14), where L r denotes the length of the r th traversing packet.The selected time interval between consecutive calculations of the sum of the packet lengths was equal to the routing table update interval T I starting at time t S . () The link-cost metric for the throughput sensitive traffic is a typical concave metric.The optimization problem is to find the paths with the maximum available bandwidth and, as an additional constraint, with minimum hop count, which minimizes the use of resources in the network.Thus, the link cost for throughput sensitive traffic is the normalized available bandwidth on the link, calculated at the end of the routing table update interval according to Equation (15).

Distributing the acquired information -signalling
Before the routes are calculated the information about network state should be distributed between nodes.An effective signalling scheme must achieve a trade-off between (a) bandwidth consumed for signalling information (b) computing and memory capacity dedicated to signalling processing and (c) improvement of the routing decisions due to the presence of signalling information (Franck & Maral, 2002a).Signalling is subdivided in two families: unsolicited and on-demand signalling.The following subsections detail these two families.

Unsolicited signalling
Unsolicited signalling is similar to unsolicited mail ads.Nodes receive at given time intervals information about the state of the other nodes.Conversely, nodes broadcast in the network information about their own state.Because a node has no control of the time it receives state information, the information might be non-topical once used for route computation.Non topical information is undesirable since it introduces a discrepancy between what is known and what the reality is.This is of particular importance for those systems which incorporate non-permanent links.Non topical information results in inaccurate and possibly poor routing decisions.Unsolicited signalling is further subdivided into periodic and triggered signalling.
Periodic signalling works by having each node broadcasting state information every p units of time, p being the broadcast period.It is not required for the broadcast period be equal for all nodes, however, it is practical to do so because (a) all nodes run the same software (b) it avoids discrepancies in the topicality of state information.Since the quality of routing decisions depends on how topical the state information is, it is expected that increasing the broadcast period results in increasing the connection blocking probability.On the other hand, increasing the broadcast period helps to keep the signalling traffic low.Periodic signalling supports easy dimensioning since the amount of signalling traffic does not depend on the amount of traffic flowing in the network and therefore can be quantified analytically.Unfortunately, this interesting characteristic is also a drawback: if the state of a node does not change during the whole broadcast period, the next broadcast will take place, regardless of whether it is useful or not.Likewise, some important state change might occur in the middle of the broadcast period without any chance for these changes to be advertised prior to the next broadcast.For these reasons, triggered signalling is worth investigating.
Instead of broadcasting periodically, the node using triggered signalling permanently monitors its state and initiates a broadcast upon a significant change of its state (threshold function).This approach is supposed to alleviate signalling traffic, holding down useless broadcasts.Triggered updates for instance are used for Routing Information Protocol (RIP).
Unfortunately, triggered signalling has two down sides.First, while periodic signalling does not depend on the actual content of state information, triggered signalling must be aware of the semantics of the state information to define what a significant state change is.Second, the amount of signalling traffic generated depends on the characteristics of the traffic load in the constellation.It does not depend on the amount of data traffic but rather on the traffic variations in the nodes and links.Since routing impacts how traffic is distributed in the network, the behaviours of routing and triggered signalling are tightly interlaced.Triggered signalling can be further sub-divided in additional versions depending on the chosen threshold function.
In networks there are two changing parameters, which have the impact on the link cost: propagation delay between neighbouring nodes and traffic load.The first can be computed in advance in each node, so it can be eliminated from signalling information.For delay sensitive traffic the new value of T Ql is broadcasted only if the value exceeds predefined threshold (Svigelj et al., 2012).If T Ql does not exceed the threshold, only the propagation delay is used as a link cost in routes calculation.In the case of throughput sensitive traffic the link cost is broadcasted only if LC l is lower than threshold (i.e. the available bandwidth is lower than threshold), otherwise value 1 (i.e.empty link) is used in routes calculation.
With an appropriate selection of thresholds the signalling load can be significantly reduced, especially for nodes, which has no intensive traffic.To omit the impact of oscillations of the link costs the triggered signalling can be used in a combination with exponential smoothing link-cost function or adaptive forwarding.

On-demand signalling
Compared to unsolicited signalling, on-demand signalling works the other way around.
When a node (called the requesting node) requires state information, it queries the other nodes (called the serving nodes) for this information.Thus, on-demand signalling yields the state information as recent as possible, with expected benefit for the routing decisions.Furthermore, the type of state information which is queried (e.g.capacity or buffer occupancy) may vary according to the type of route that must be computed.On the other hand, since the signalling procedure is triggered for each route computation, the amount of traffic generated by on-demand signalling is likely to be higher than with unsolicited signalling.Additionally, the requesting node has to gather complete information before initiating the route computation.On-demand signalling is more convenient for connection oriented networks, where the source node requests the network state information from other nodes before setting up a connection and then the route to destination node is computed.As the number of packets during a signalling session is high, additional mechanisms (caching, snooping) have to be devised, in order to limit the number of signalling packets (Franck & Maral, 2002a).

Computing routes
In the case of per-hop packet-switched routing routes cannot be computed on demand.Instead, routing tables are pre-computed for all nodes periodically or in response to a significant change in link costs, thus defining routing update intervals.Link-cost metrics for the delay sensitive traffic are typical additive metrics, and thus the shortest routes are typically calculated using the Dijkstra algorithm.The main feature of an additive metric is that the total cost for any path is a sum of costs of individual links.
On the other hand, the link cost for the throughput sensitive traffic is a concave metric.Thus, the total cost for any path equals the one on the link with minimum cost.A typical optimization criterion for the throughput sensitive traffic is to find the paths within minimum hop count with the maximum available bandwidth.Minimum hop count is an additional constraint, which is used to minimize the use of resources.The Bellman-Ford shortest path algorithm is well suited to compute paths of the maximum available bandwidths within a minimum hop count.It is a property of the Bellman-Ford algorithm that, at its h th iteration, it identifies the optimal path (in our context the path with the maximum available bandwidth) between the source and each destination not more than h hops away.In other words, because the Bellman-Ford algorithm progresses by increasing the hop count, it provides the hop count of a path as a side result, which can be used as a second optimization criterion.
Regardless of the type of traffic the second shortest path with disjoint first link can be calculated by eliminating the first link on the shortest route (i.e.LC l is set to infinity for delay sensitive traffic and to 0 in the case of throughput sensitive traffic) and using Dijkstra and Bellman Ford algorithm on such modified network.The alternative paths are used in the case of adaptive forwarding.

Forwarding the user traffic
In the route execution phase packets are forwarded on outgoing links to the next node along the path according to most recently calculated routing tables.In particular, packets are placed into an appropriate first in first out (FIFO) queue with a suitable scheduler according to the traffic type they belong to and according to the selected forwarding policy.

Static forwarding
Two representatives of static forwarding policies originally developed for regular network topologies, such as exhibited by ISL networks, are alternate link routing with deflection in the source node (ALR-S) and alternate link routing with deflection in all nodes (ALR-A) (Mohorcic et al., 2000(Mohorcic et al., , 2001)).Both policies are based on an iterative calculation of routing algorithm for determining alternative routes between satellite pairs.An additional restriction considered in static forwarding policies is that the alternative routes must consist of the same (i.e., minimum) number of hops, with a different link for the first hop.Such alternative routes with the same number of hops guarantee that the propagation delay increase for the second-choice route is kept within a well-defined limit.
After determination of alternative routes with the same number of hops between each pair of nodes (satellites) the selected forwarding policy decides which packets are forwarded along each of these routes.Different forwarding policies are depicted in Fig. 1 According to the routing table given in Table 1, the SPR policy is only forwarding user traffic along the shortest routes.This leads to very non-uniform traffic load particularly on links (A-D, B-E, and C-F). Next

www.intechopen.com
The ALR-S policy ensures a more uniform distribution of traffic load over the network, as it distinguishes between the packets passing through a particular node and the packets that are originating in that node.Packets originating in a particular node are forwarded on the link of the second shortest route (e.g. from A to F via B, from B to F via C), while packets passing through the node are forwarded on the link of the shortest route (e.g. through A to F via D, through B to F via E).By using the second-choice route only for originating packets, the delay is increased with respect to the shortest route only on the first hop, hence the increase in delay does not accumulate for the packets with a large number of hops.Between the consecutive updates of routing tables, all packets between a given pair of nodes follow the same route.Thus, ALR-S policy maintains the correct sequence of the packets within the routing interval, the same as the SPR forwarding policy.
The ALR-A policy promises an even more uniform distribution of traffic load and thus further improvement of link utilisation by alternating between the shortest and the second shortest route regardless of the packet origination node (this is denoted in Fig. 1 by dashed lines).However, packets belonging to the same session can be forwarded along different routes even within one routing table update interval, thus additional buffering is required in the destination nodes to re-order terminated packets and obtain the correct sequence.
The static forwarding policies, such as ALR-S and ALR-A, distribute packets according to a pre-selected rule.They allow significant reduction of traffic load fluctuation between links, however they do not adapt the actual traffic load on alternative routes.

Adaptive forwarding
In contrast to static forwarding an adaptive forwarding policy has to take into account the link status information to support the selection of the most appropriate between the alternative outgoing links on the route to the destination.An example of such approach is adaptive forwarding policy based on local information about the link load (Svigelj et al, 2003(Svigelj et al, , 2004b;;Mohorcic et al. 2004).This policy selects the most suitable outgoing link taking into account routing tables with alternative routes, calculated using link costs obtained during the previous routing update interval, and current local information on the link status.
In particular, for delay sensitive traffic local information can be based on the expected queuing delay as defined in Equation ( 7).The expected queuing delay for a particular link can be calculated locally and does not require any information distribution between neighbouring nodes, thus enabling a very fast response to congestion on the link.Depending on this local information, packets are forwarded on the shortest or on the alternative second shortest path.The alternative second shortest path is used only if it has the same or a smaller number of hops (h) to the destination and if the expected queuing delay in the outgoing queue on the shortest path (T exp1 ) is more than a given threshold Δ tr D (where D is denoting delay sensitive traffic) higher than the expected queuing delay in the outgoing queue on the second shortest path (T exp2 ).This condition for selecting the alternative second shortest path is given in Equation ( 16).Different threshold values can be used for different traffic types.For the throughput sensitive traffic we monitor the number of packets in outgoing queues (n).The alternative second shortest path is used only if it has the same or a smaller number of hops (h) to the destination and if the number of packets (n) in the outgoing queue on the shortest path (n 1 ) is more than a given threshold Δ tr T (where T is denoting throughput sensitive traffic) higher than the number of packets in the outgoing queue on the alternative path (n 2 ), as given in Equation ( 17).
The significance of the threshold is that it regulates distribution of traffic between alternative paths based on local information about the link status, and thus differentiates between lightly and heavily loaded nodes.The higher the threshold value the more congested the shortest path needs to be to allow forwarding along the alternative second shortest path.In the extreme, setting the threshold value to infinity prevents forwarding along the second shortest path (i.e.adaptive forwarding deteriorates to SPR), while no threshold (i.e.Δ tr T = 0) means that packets are forwarded along the second shortest path as soon as the expected queuing delay for the corresponding link is smaller than the one on the shortest path.
Routing with the proposed adaptive forwarding promises more uniform distribution of traffic load between links and the possibility to react quickly to link failure.However, packets belonging to the same session can be forwarded along different routes, even within the same routing update interval, so additional buffering is required in destination nodes to reorder terminated packets and obtain the correct sequence.

Traffic modelling for global networks
As we have shown in previous section, the general routing and traffic engineering functions consist of many different algorithms, methods and policies that need to be carefully selected and adapted to the particular network characteristics as well as types of traffic to be used in the network.Clearly, the more dynamic and non-regular the network and the more different types of traffic, the more demanding is the task of optimising network performance, requiring good understanding of the fundamental network operating conditions and the traffic characteristics.The later largely affect the performance of routing and traffic engineering, typically requiring appropriate traffic models to be used in simulating, testing and benchmarking different routing and traffic engineering solutions.In the following a methodology is described for developing a global traffic model suitable for supporting the dimensioning and computer simulations of various procedures in the global networks but focusing in particular on the non-geostationary ISL networks, which are well suited for supporting asymmetric applications such as data, audio and video streaming, bulk data transfer, and multimedia applications with limited interactivity, as well as the broadband access to Internet services beyond densely populated areas.Such traffic models are an important input to network dimensioning tasks (Werner et al., 2001) as well as to simulators devoted to the performance evaluation of particular network functions such as routing and traffic engineering (Mohorcic et al., 2001, 20021, Svigelj et al., 2004a).
A typical multimedia application contains a mix of packets from various sources.Purely mathematical traffic generators cannot capture the traffic characteristics of such applications in real networks to the extent that would allow detailed performance evaluation of the network.Hence, the applicability of traffic analysis based on mathematical tractability is diminishing, while the importance of computer simulation has grown considerably, but poses different requirements for traffic source models (Ryu, 1999).A suitable traffic source model should represent real traffic, while the possibility of mathematical description is less important.In global non-geostationary satellite network traffic source model needs to be complemented by a suitable model of other elementary phenomena causing traffic dynamics, i.e. geographical distribution of traffic sources and destinations, temporal variation of traffic load and traffic flow patterns between different geographical regions.
In the following the approach to modelling global aggregate traffic intensity is described, in particular useful for the dimensioning of satellite networks and computer simulations of various procedures in the ISL network segment, including routing and traffic engineering.
The model is highly parameterized and consists of four main modules: • module for global distribution of traffic sources and destinations; • module for temporal variations of traffic sources' intensity; • module describing the traffic flow patterns between regions; and • module describing statistical behaviour of aggregated traffic sources.

Module for global distribution of traffic sources and destinations
The module for global distribution of traffic sources and destinations should support the representation of an arbitrary distribution.
A simple representative of a geographically dependent source/ destination distribution assumes homogeneous distribution over the landmasses, considering continents and major islands (called landmass distribution), while traffic intensity above the oceans equals 0 (Mohorcic et al., 2002b).More realistic source/destination distributions should reflect the geographic distribution of traffic intensity, which is related to several techno-economic factors including the population density and distribution, the existing telecommunication infrastructure, industrial development, service penetration and acceptance level, gross domestic product (GDP) in a given region, and pricing of services and terminals (Werner & Maral, 1997, Hu & Sheriff, 1997, Werner & Lutz 1998).Thus, the estimation of traffic distribution in the yet non-existing system demands a good understanding of the types of services and applications that will be supported by the network.Furthermore, it should also consider attractiveness of particular services for potential users, which in turn depends also on different socio-economic factors.
The methodology for estimating the market distribution for different terminal classes, i.e. lap-top, briefcase and hand-held, is reported in (Hu & Sheriff, 1998) Essentially, countries over the globe are categorized into three different bands according to their annual GDP per capita: low (less than 6 kEuro), medium (between 6 kEuro and 22 kEuro) and high (greater than 22 kEuro).A yearly growth for GDP per capita for each country is then predicted by linearly extrapolating historical data.This, together with the tariff of a particular service and a predicted market saturation value, is used to determine the yearly service take-up for each country via the logistic model.The yearly service penetration for each country is estimated by multiplying the predicted yearly gross potential market with the yearly take-up (Mohorcic et al., 2003).
Taking into account techno-economic and socio-economic factors and the above methodology, we can define different non-homogeneous geographic-dependent distributions taking into account a more realistic distribution of sources and destinations for provisioning of the particular types of service.Such geographic-dependent distributions are typically based on statistical data provided on the level of countries, and only for some larger countries also on the level of states and territories.In addition to limitations of data availability, we also face the problem of the accuracy of its representation, which depends on the granularity of the model and on the assumption regarding the source/destination distribution within the smallest geographical unit (i.e.country).The simplest approach in country-based non-homogeneous geographic-dependent distributions assumes that a nation's subscribers are evenly distributed over the country.The weakness of this approach is representation of traffic demand in large countries spanning several units of geographical granularity.In determining the distribution, different levels of geographical granularity may be adopted; however, in order to be able to individually represent also small countries, the geographical granularity should be in the range of those small countries.In (Mohorcic et al., 2003), a traffic grid of dimension 180° × 360° has been generated in steps of 1° in both latitude and longitude directions.

Module for temporal variations of traffic sources' intensity
Temporal variation of traffic load in a non-geostationary satellite system is caused by daily variation of traffic load due to the local time of day and geographical variation of this daily load behaviour according to geographical time zones.Both are considered in the module for temporal variation of traffic load, which actually mimics the geographically dependent daily behaviour of users.Daily variation can be taken into account with an appropriate daily user profile curve (for average or for local users).An example of such a daily user profile curve is shown in Fig. 2. For geographical time zones a simplified model can be considered, which increments the local hour every 15 degrees longitude eastward from the GMT.An alternative approach defines temporal variation of traffic load in conjunction with the global distribution of traffic sources and destinations, which inherently takes into account geographical time zones.An example of relative traffic intensity considering distribution of traffic sources and destinations combined with temporal variation of traffic load is depicted in Fig. 3, where traffic intensity is normalised to the highest value (i.e. the maximum value of normalized traffic load equals 1, but for better visualization we bounded the z-axis in Fig. 3 to 0.3).The traffic intensity is generated by assuming that a single session is established per day per user and that each session on average lasts for about 2 minutes.Another contribution to temporal variation of traffic load in non-geostationary ISL networks in addition to user activity dynamics is the rapidly changing satellite visibility, and consequently active users' coverage, on the ground.To a certain extent this temporal variation as well as multiple visibility of satellites can be captured with a serving satellite selection scheme.Implementing a satellite selection scheme in case of multiple visibility has two aspects.For fixed earth stations line-of-sight conditions are assumed, so that the serving satellite can be determined according to a simple deterministic rule, e.g., maximum elevation satellite.For mobile earth stations, the stochastic feature of unexpected handover situations due to propagation impairments can be considered through the shares of traffic on alternative satellites also estimated according to a simple rule (e.g., equal sharing between all satellites above the minimum elevation) or using a simple formula (e.g., shares are a function of the elevation angle of each alternative satellite as one main indicator for channel availability).

Module describing the traffic flow patterns between regions
This module assigns traffic flow destinations using a traffic flow pattern resembling the flow characteristic between different regions.Interregional patterns should be defined at least on the level of the Earth's six continental regions shown in Fig. 4, similarly as in (Werner & Maral, 1997), but preferably on a smaller scale between countries/territories.In a destination region, the traffic can be divided among the satellites proportionally to their coverage of that region.
Customized traffic flow patterns should be based on the density distribution of sources and/or destinations for the selected type of service.
North America South America Europe Africa Asia Oceania Fig. 4. Geographical division of six source/destination regions.

Module describing statistical behaviour of aggregated traffic sources
The fourth module concerns modelling of the aggregated traffic sources.In particular, the module comprises of suitable aggregate traffic source generator, which is modulated by the normalized cumulative traffic on each satellite obtained from distribution of traffic sources and destinations and temporal variation of traffic sources' intensity.Thus data packets are actually generated considering the relative traffic intensity experienced by a particular satellite in its coverage area, while taking into account the statistics of the selected aggregate traffic source model.
Ideally, the traffic source model should capture the essential characteristics of traffic that have significant impact on network performance with only a small number of parameters, and should allow fast generation of packets.Among the most important traffic characteristics for circuit switched networks are the connection duration distribution and the average number of connection requests per time unit.By contrast, in the case of packet switched networks, traffic characteristics are given typically by packet lengths and packet inter-arrival times (in the form of distributions or histograms), burstiness, moments, autocorrelations, and scaling (including long-range dependence, self-similarity, and multifractals).For generating cumulative traffic load on a particular satellite, the traffic source generator should model an aggregate traffic of many sources overlaid with the effect of a multiple access scheme, which is expected to significantly shape source traffic originating from single or multiplexed ground terminal applications due to the uplink resource management and traffic scheduling.
One approach for modelling aggregate traffic sources is by using traces of real traffic.Tracedriven traffic generators are recommended for model validation, but suffer from two drawbacks: firstly, the traffic generator can only reproduce something that has happened in the past, and secondly, there is seldom enough data to generate all possible scenarios, since the extreme situations are particularly hard to capture.In the case of satellite networks with no appropriate system to obtain the traffic traces, the use of traces is even more inconvenient.
An alternative approach, increasingly popular in the field of research, is to base the modelling of traffic sources on empirical distributions obtained by measurement from real traffic traces.The measurements can be performed on different segments of real networks, i.e. in the backbone network or in the access segment.In order to generate cumulative traffic load representing an aggregate of many individual traffic sources in the coverage area of the satellite, the traffic properties have to be extracted from a representative aggregate traffic trace (Svigelj at al., 2004a), such as a real traffic trace captured on the 622 Mbit/s backbone Internet link carrying 80 Mbit/s traffic (Micheel, 2002).The selected traffic trace comprises aggregate traffic from a large number of individual sources.Such traffic trace resembles the traffic load experienced by a satellite, both from numerous traffic sources within its coverage area, and from aggregate flows transferred over broadband intersatellite links.A suitable traffic source model, which resembles IP traffic in the backbone network, can already be built by reproducing some of the first order statistical properties of the real traffic trace that have major impact on network performance, e.g.inter-arrival time and packet length distribution.A simple traffic generator can be developed using a look-up table with normalized values, which allows packet inter-arrival time and packet length values to be scaled, so as to achieve the desired total traffic load.Distributions of packet inter-arrival time and packet length obtained with such a traffic generator are depicted in Fig. 5 and Fig. 6 respectively.The main advantage of traffic sources, whose distributions conform to those obtained by measurements of real traffic, is that they are relatively simple to implement and allow high flexibility.

www.intechopen.com
For the more accurate prediction of the behaviour of the traffic source exhibiting long-range dependence, the traffic model requires detailed modelling of also the second order statistics of the packet arrival process.The accurate fitting of modelled traffic to the traffic trace can be achieved using modelling process with a discrete-time batch Markovian arrival process that jointly characterizes the packet arrival process and the packet length distribution (Salvador et al., 2004).Such modelling allows very close fitting of the auto-covariance, the marginal distribution and the queuing behaviour of measured  The potential drawback of traffic sources based on real traffic traces is that the empirically obtained traffic properties (i.e.obtained from the aggregated traffic on the backbone Internet link in this particular example) may not be suitably representative for the system under consideration, so it can sometimes deviate considerably from real situations and lead to incorrect conclusions.
In addition to traffic sources based on traffic traces (directly or via statistical distributions) traffic sources can also be implemented in classical way with pure mathematical distributions such as Poisson, Uniform, Self-Similar, etc.Although such mathematically tractable traffic sources never fully resemble the characteristics of real traffic, they can serve as a reference point to compare simulation results obtained with different scenarios, however they should exhibit the same values of first order statistic (i.e.mean inter-arrival time and average packet length) as obtained from traces.
In the case of supporting different levels of services, packets belonging to different types of traffic (e.g.real time, high throughput, best effort) should be generated using different traffic source models, which should reproduce statistical properties of that particular traffic.However, as different services and applications will generate different traffic intensity depending on regions and users' habits, also separate traffic flow patterns will have to be developed for different types of traffic, to be used in conjunction with different traffic source generators.

Global aggregate traffic intensity model
Integration of individual modules in the global aggregate traffic intensity model is schematically illustrated in Fig. 7. Instead of simulating individual sources and destinations, a geographic distribution of relative traffic source intensity is calculated for any location on the surface of the Earth.The cumulative traffic intensity of sources within its coverage area are mapped to the currently serving satellite.Satellite footprint coverage areas on the Earth, overlaid over geographic distribution of traffic sources and destinations, are identified from the satellite positions in a given moment.With the normalized cumulative traffic on each satellite, which is proportional to the intensity of traffic sources in the satellite's coverage area, it is possible to modulate the selected traffic source generator (not shown in Fig. 7).Thus data packets are actually generated considering the relative traffic intensity experienced by a particular satellite.
The destination satellite is selected for each packet in accordance with the traffic flow pattern.The probability of selecting a given satellite as a destination node is proportional to its coverage share in the destination region divided by the sum of all coverage shares in that region.Thus, although in a simplified manner, the model is taking into consideration also multiple coverage.In the case of using different traffic source models to generate distinct types of traffic by global aggregate traffic intensity model, one should also consider different, service specific traffic flow patterns.

Summary
Traffic engineering involves adapting the routing of traffic to the network conditions with two main goals: (i) providing sufficient quality of service, which is important from user's point of view, and (ii) efficient use of network resources, which is important for operators of telecommunication's network.The presented routing and traffic engineering issues addressed both goals that are explained using the ISL network as a concrete example of highly dynamic telecommunication network with several useful properties, which can be exploited by developing of routing procedures.However, the presented work is not limited to ISL networks, but can be used also in other networks as described in (Liu et al., 2011;Long et al., 2010;Rao & Wang, 2010, 2011).Routing and traffic engineering functions are presented in modular manner for easier reuse of particular procedures.
Adaptation of routing requires, in addition to good understanding of the fundamental network operating conditions, also good knowledge of the characteristics of different types of traffic in the network.In order to support better modelling of traffic characteristics a modular methodology is described for developing a global aggregate traffic intensity model suitable for supporting the dimensioning and computer simulations of various procedures in the global networks.It is based on the integration of modules describing traffic characteristics on four different levels of modelling, i.e. geographical distribution of traffic sources and destinations, temporal variations of traffic sources' intensity, traffic flows patterns and statistical behaviour of aggregated traffic sources.

Fig. 3 .
Fig. 3. Global distribution and activity of traffic sources and destinations at midnight GMT.

.1.1 Link cost based on the queuing delay enhanced with Exponential forgetting function EFF
To estimate the traffic load on particular link we can use two parameters.It can be estimated through the queuing delay, which reflects the past values of traffic load, or expected queuing delay, which estimates the future value of queuing delay in a given outgoing queue.In addition, both parameters can be improved with additional functions (i.e.exponential forgetting function, exponential smoothing function), which are described in the following subsections.Thus, in general the link costs (LC l ) for delay sensitive traffic on the link l at time t i are calculated using Equation (1) at the end of each routing table update interval.It includes the propagation delay (T Pl ) and traffic load represented by (T Ql ).

Table 1 .
Alternative paths to Satellite F with the same minimum number of hops.