Content uploaded by Barun Saha

Author content

All content in this area was uploaded by Barun Saha on Jun 21, 2020

Content may be subject to copyright.

Accepted Version (For Personal Use Only)

© 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for

more information.

Flow Allocation in Industrial Intent-based Networks

Barun Kumar Saha

Corporate Research Center

ABB Global Industries and Services Pvt. Ltd.

Bangalore, India

barun.kumarsaha@in.abb.com

Luca Haab

Power Grids, PGGA-P

ABB Schweiz AG

Bern, Switzerland

luca.haab@ch.abb.com

Łukasz Podleski

Power Grids, PGGA-P

ABB Schweiz AG

Bern, Switzerland

lukasz.podleski@ch.abb.com

Abstract—Intent-based Networks (IBNs) are expected to add

various degrees of autonomy and intelligence at different stages

of a network, such as planning and operating. A particular use

case of IBNs relevant to industry is that of end-to-end ﬂow

(service) allocation prior to commissioning such networks, for

example, in power grids. In this context, we investigate the

ﬂow allocation problem for large networks by considering four

schemes. In Shortest Path-based Allocation (SPA), all-pair shortest

paths in a network are computed, which are then used to allocate

the feasible ﬂows. To prevent near-maximal link utilization,

we consider a variation of SPA with usage threshold (SPA-T).

The two other schemes, SPA with probabilistic Hill Climbing

(SPA-HC) and SPA with Simulated Annealing (SPA-SA), also

impose a similar utilization limit on each link. Moreover, SPA-

HC and SPA-SA allocate the ﬂows in a way to improve the

relative fairness. Results of performance evaluation using data

from real-life and synthetically generated networks show that

the proposed schemes can allocate 86%–99% ﬂows when link

utilization threshold is varied from 0.75 to 0.95.

Index Terms—Intent-based Networks, ﬂow allocation, meta-

heuristics, hill climbing, simulated annealing, shortest path

I. INTRODUCTION

IBNs [1]–[4] present the next wave in the evolution of

communication networks. IBNs promise many interesting fea-

tures, such as speciﬁcation of network operations in high-

level languages [1] and continuous veriﬁcation of a network’s

operating state. In other words, with IBNs, future networks

will have various degrees of autonomy and intelligence inbuilt

within them.

IBNs offer several industrial use cases [2] targeting different

stages of a network’s lifetime, for example, planning, commis-

sioning, and maintaining operations. A particularly interesting

one is that of planning and commissioning a new industrial

network, for example, in oil and gas ﬁelds and power grids.

Before deploying at a customer’s site, extensive planning

is done taking into account the overall network utilization.

Moreover, mission-critical networks typically have networking

devices, such as switches and routers, pre-conﬁgured and ﬂows

allocated. In particular, given a set of required network ﬂows

(or services), each (feasible) ﬂow is mapped to an end-to-end

path in the network. Accordingly, relevant rules are installed

in the concerned devices. Moreover, Industry 4.0 is moving

toward Time Sensitive Networks (TSNs) [5]. TSNs need to

schedule ﬂows based on input from ﬁeld device controllers.

The ﬂow allocation service of IBNs can help TSNs in this

regard. Moreover, operational IBNs can also use this solution

to plan future allocation of additional network ﬂows.

Integral ﬂow allocation (i.e., when no ﬂow is split across

multiple paths) is a combinatorial optimization problem, which

becomes difﬁcult—and costly, in terms of time and skill

needed by network engineers—to solve for large networks.

This is especially true for power grid networks, which often

contain a few hundred densely connected nodes. Motivated by

these challenges, in this paper, we investigate the problem of

ﬂow allocation in large networks with ﬁnite link capacities.

We begin by considering a generic scheme, SPA, where

all-pair shortest paths in the network are computed. Subse-

quently, feasible ﬂows, which do not cause violation of link

capacity, are allocated along those shortest paths. However,

such a greedy strategy, can make certain links operate at their

near maximum capacity. As a consequence, any increase in

instantaneous bit rates of one or more ﬂows will potentially

lead to packet loss and delay. To mitigate these issues, we

consider SPA-T, where utilization of each link is limited up

to a threshold θ∈[0,1].

The SPA-HC and SPA-SA schemes are based on metha-

heuristics. In HC, one iteratively keeps choosing a relatively

better solution. However, in probabilistic HC, one also chooses

a worse solution with a small probability. SA [6], [7], on the

other hand, is modeled after the physical process of heating

a metal to a high temperature and then cooling it down very

slowly. Such a process helps in eliminating or reducing defects.

Since HC and SA both are well studied and characterized, we

ﬁnd them suitable for industrial usage.

Each step of SPA-HC and SPA-SA compares two or more

solutions and selects a relatively better one. The (small) prob-

ability of selecting a bad solution is ﬁxed in SPA-HC, whereas

it varies with iterations in SPA-SA. A “solution” is constructed

by considering the potential allocation of a very few candidate

ﬂows. The value of a solution is a quantitative measure of

fairness in overall ﬂow allocation. When a solution is selected

at the end of an iteration, the corresponding candidate ﬂows

get allocated to the concerned shortest paths.

The scope of this work is limited to wireline networks.

Moreover, the proposed ﬂow allocation strategies are executed

at a logical level; we do not discuss how the routing rules are

actually installed in physical devices.

Accepted Version (For Personal Use Only)

© 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for

more information.

A. Contributions

The speciﬁc contributions of this work are as follows.

•Proposing greedy and metaheuristics-based algorithms

for efﬁcient ﬂow allocation in large networks.

•Using a threshold, θ, to limit the maximum utilization of

any link and thereby, help them decongest.

•Evaluating the efﬁciency of the proposed schemes via

simulations using data from real-life and synthetically

generated networks.

B. Organization

The remainder of this paper is organized as follows. Section

II presents a summary of the related works. Section III

presents the system model and discusses the ﬂow allocation

problem. The greedy algorithms SPA and SPA-T are discussed

here. In Section IV, we discuss the proposed metaheuristics-

based algorithms for ﬂow allocation. Experimental set-up

and performance metrics are discussed in Section V. The

corresponding results are presented in Section VI. Finally,

Section VII concludes this paper.

II. RE LATE D WOR K

Optimal ﬂow allocation is a key requirement not only

for communication networks [8]–[11], but also transportation

networks [12]. The large volume of works on ﬂow allocation

and scheduling only underscore how fundamentally important

it is for communication networks.

Hartert et al. [13] developed Declarative and Expressive

Forwarding Optimizer (DEFO) to achieve fast and scalable

routing with low congestion. DEFO partitions the network

graph into smaller “partial graphs,” and labels nodes shared

by any two such graphs as middlepoints. Subsequently, trafﬁc

for a ﬂow is forwarded from one middlepoint to another

until it reaches the concerned partial graph. DEFO, therefore,

reduces the scale of ﬂow allocation problem to selection of

a few middlepoints and routing among them. This, however,

introduces a dependency in the network in order to achieve

inter-middlepoint routing.

Layeghy et al. [14] developed Software-deﬁned Constrained

Optimal Routing (SCOR), a constraint programming (CP)-

based framework for optimal routing in SDNs. CP allows

to specify the desired objective function as well as different

networking constraints in a high-level language. Moreover,

multiple constraints can be combined together as required.

This can potentially simplify operations of a network manager.

In particular, SCOR constructs a binary matrix of links and

ﬂows, and determines which ﬂow should be assigned to which

link based on the given objective function. However, CP, in

general, lacks scalability. Obtaining an optimal solution—or

even a feasible sub-optimal solution—for a large network may

not be practically feasible.

Consideration of fairness is a common aspect in most ﬂow

allocation works. Allybokus et al. [15], for example, used α-

fairness for multi-path ﬂow scheduling, i.e., where ﬂows can

be split across multiple paths. On the other hand, Ito et al.

[10] observed that bandwidth requirements in a network can

change dynamically and lead to bottleneck links and unfair

load distribution. To alleviate this, the authors proposed to

reallocate unused capacity of the links to high-demand trafﬁc

ﬂows. On a similar note, Boley et al. [8] proposed trafﬁc

ﬂow bandwidth reassignment to improve quality of service

of Software-deﬁned Networks (SDNs).

Huang et al. [16] noted that, in practice, a legacy network

may upgrade into an SDN only in steps. Consequently, such

hybrid SDNs would require multi-path trafﬁc to support both

legacy and SDN-enabled devices. The authors, therefore, pro-

pose a utility maximization scheme for bandwidth allocation

in hybrid SDNs.

To synthesize, we see that different methodologies have

been used to allocate network ﬂows, be it during planning or

online operating states. Many of the allocation schemes, for

example SCOR, take an optimization approach. However, such

an approach may lack scalability with the growing size of net-

works. On the other hand, many schemes improve allocation

efﬁciency by splitting ﬂows. This may not be applicable for all

industrial scenarios, for example, power grid networks, where

communication path symmetry is required. Therefore, in this

paper, we investigate the integral ﬂow allocation problem for

large networks using metaheuristics and greedy strategies.

III. THE FL OW ALL OC ATION PRO BL EM

We represent a wireline network as graph G= (V, E ),

where Vis the set of vertices (or nodes) and Eis the set of

(directed) edges (or links). Let Fbe the set of ﬂows that needs

to be allocated in the network G. Moreover, let FA⊆Fbe

the set of allocated ﬂows in the network at any instant. F−FA

denotes the set of elements present in F, but not in FA, i.e.,

the set of unallocated ﬂows. For any edge e∈E, let ceand

re, respectively, be the capacity and residual bandwidth of e;

then xe=ce−redenotes the bandwidth already used by the

edge. Moreover, for any ﬂow f∈F, let dfbe the bandwidth

demand of the ﬂow. We assume that ce>0and df>0for

each e∈Eand f∈F, respectively.

The objective of optimal ﬂow allocation problem is to ﬁnd a

set of paths (sets of subsets of E) so that trafﬁc corresponding

to the ﬂows in FAcan pass from their respective source

devices to target devices. The deﬁnition of “optimal” is highly

contextual. For example, some may want to maximize the

size of FA, whereas others may attempt to improve allocation

fairness. In the following, we discuss SPA and SPA-T, which

attempt to maximize the number of ﬂows allocated.

SPA adopts a greedy strategy to allocate all ﬂows that it

possibly can. In particular, SPA begins with computing all-

pair shortest paths (i.e., from any node to any other node)

for the given network. Subsequently, SPA iterates over all

the ﬂows (F) that need to be installed. At each iteration,

based on the source and target of the concerned ﬂow, SPA

evaluates whether or not the corresponding shortest path has

the minimum capacity to carry the ﬂow. Let PEbe the set

of edges used by any path. Then, the minimum available

capacity of the path is min

e∈PE

re, i.e., the minimum residual

link bandwidth among all edges in PE. If a path is found to

Accepted Version (For Personal Use Only)

© 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for

more information.

have minimum capacity available to carry a ﬂow, then SPA

allocates the ﬂow to the links of the concerned path. This

ensures that no link carries trafﬁc more than its designated

capacity. The concerned ﬂow is moved from set Fto FA.

Moreover, residual bandwidths of the links along the path are

reduced by an amount equal to the ﬂow’s bandwidth demand.

Relevant data structures are updated to keep track of which

link carries what ﬂows. When SPA terminates, the set FA

contains all the ﬂows that are allocated for a given network.

SPA-T is exactly similar to SPA, except that maximum

utilization of any link (considering all ﬂows passing through it)

is kept below θ. In other words, the above mentioned minimum

available capacity of the path is evaluated as min{min

e∈PE

re, θ}.

IV. METAHEURISTICS-BASE D FLOW ALLOCATION

The metaheuristics-based SPA-HC and SPA-SA schemes

also rely on pre-computed all-pair shortest paths and restrict

the utilization of each link up to θ. At each step, SPA-HC and

SPA-SA try to improve the overall fairness in link utilization.

We use Jain’s fairness index [17] for this purpose. In particular,

the fairness in bandwidth utilization of links arising out of a

ﬂow allocation scheme is deﬁned as:

J(FA, E) =

(P

e∈E

xe)2

|E|P

e∈E

x2

e

,(1)

where xeis the bandwidth usage of any edge e∈E. Equation

(1) requires that FA6=∅, i.e., at least one ﬂow must be

allocated to compute J(FA, E). In our implementation, SPA-

HC and SPA-SA do an initial allocation of 10 randomly

selected ﬂows using SPA. In both the schemes, the value of a

solution is given by (1), which ranges between 1

|E|and 1.

A. SPA-HC: SPA with Probabilistic Hill Climbing

Algorithm 1 presents the detailed steps of SPA-HC. The

Algorithm runs for a ﬁnite number of steps. In each iteration,

SPA-HC creates ηfeasible solutions.1The detailed steps for

creating a solution are depicted in Algorithm 2. The Algo-

rithm essentially selects up to φﬂows so that the cumulative

bandwidth usage (line number 10)2of the individual links do

not exceed the given threshold θ(line number 12). Note that κ

and φensure that Algorithm 2 terminates after a ﬁnite number

of steps.

Once a feasible solution is available, Algorithm 1 com-

putes the updated fairness index value (line number 8)3by

considering link usages based on FAas well as the potential

ﬂows returned by the solution. If the projected fairness value

is better than the previous one, the solution is accepted (line

number 10). Moreover, the consideration of the probability

pbad potentially helps to avoid getting stuck in local optima.

1In classical hill climbing, ηis set to 1.

2To keep the presentation of this Algorithm simple, we skip listing the steps

where link usage from the other ﬂows in the flow s list are also considered.

3In our implementation, we maintain a running sum of xeand x2

eso that

we do not have to repeatedly iterate over Eto compute J.

When a feasible solution is accepted, the sets Fand FA

are updated accordingly; link bandwidth measures are also

updated appropriately.

Algorithm 1: Flow allocation using SPA-HC

Input:

•F: Set of ﬂows to allocate

•FA: (Very small) set of already allocated ﬂows

•P: Set of all-pair shortest paths

•θ: Link utilization threshold

•η: Number of solutions to consider in an iteration

•φ: Maximum number of ﬂows in a solution

•pbad: Probability of selecting a bad solution

Output: FA: Set of allocated ﬂows

1max steps =|F−FA|

2istep = 0

3best value =Compute J(FA, E )using (1)

4while istep < max steps and |F−FA|> η do

// Solutions generated in this iteration

5S= [ ]

6for j∈1. . . η do

7s=create solution(F−FA, P, θ , φ, S)

// s.flows indicate the flows selected by

solution s

8v=Compute J(FA∪ {s.flows}, E )using (1)

9r=Uniform random number between 0and 1

10 if v > best value or r < pbad then

11 best value =v

12 best solution =s

13 end

14 end

15 flows =best solution.f lows

16 paths =best solution.paths

17 foreach (f, p)∈(f lows, paths)do

18 F=F− {f}

19 FA=FA∪ {f}

20 foreach e∈pdo

// Initially, re=xe,∀e∈E

21 re=re−df

22 xe=xe+df

23 end

24 end

25 istep =istep + 1

26 end

B. SPA-SA: SPA with Simulated Annealing

The SPA-SA scheme bears close resemblance to SPA-HC,

except the fact that, in each iteration, only one feasible solution

is evaluated. Algorithm 3 presents the detailed steps of SPA-

SA. The initial temperature Tis set to a high value, which

is scaled down by a factor 0< γ < 1(usually close to

0.99) in each iteration until Tgoes below ε(a very small

positive fraction) or the upper limit on number of iterations is

exceeded, whichever is earlier. Line numbers 8–10 represent

the heart of SA. Given a solution, we deﬁne cost as the

Accepted Version (For Personal Use Only)

more information.

Algorithm 2: Feasible solution creation

Input:

•FU: Set of unallocated ﬂows

•P: Set of all-pair shortest paths

•θ: Link utilization threshold

•φ: Maximum number of ﬂows in a solution

•κ: Maximum number of attempts

Output: A set of up to φfeasible ﬂows and their

corresponding paths

1istep = 0

2flows = [ ]

3paths = [ ]

4while istep < κ do

5for j∈1. . . κ do

6f= Randomly selected ﬂow from F−FA

7p= Shortest path from Pindexed by f’s

source and target

8flag =True

9foreach e∈pdo

// Potential new usage of edge e

along the path p

10 x0

e=xe+df

11 θe=x0

e/ce

12 if θe> θ then

13 flag =False

14 break

15 end

16 end

17 if flag is True then

18 Append fto flows and pto paths

19 foreach e∈pdo

20 re=re−df

21 xe=xe+df

22 end

23 end

24 if |flows|=φthen

25 break

26 istep =κ// Exit the outer loop

27 end

28 end

29 istep =istep + 1

30 end

31 return (f lows, paths)

reciprocal of its value. The difference in cost between the

current solution and a previous one is stored in ∆. Based on

this, the acceptance probability Ais deﬁned, which depends

both on the contemporary temperature and the cost difference.

New solution that provides a lower cost is deﬁnitely accepted;

otherwise it is chosen with probability A.

V. PERFORMANCE EVAL UATIO N

In this Section, we discuss the experimental setup and the

metrics used to evaluate the proposed ﬂow allocation schemes.

Algorithm 3: Flow allocation using SPA-SA

Input:

•F: Set of ﬂows to allocate

•FA: (Very small) set of already allocated ﬂows

•P: Set of all-pair shortest paths

•T: Initial temperature

•γ: Cooling coefﬁcient

•ε: Zero temperature

•θ: Link utilization threshold

•φ: Maximum number of ﬂows in a solution

Output: FA: Set of allocated ﬂows

1max steps =|F−FA|

2istep = 0

3best value =Jain’s index based on FAand E

4while T > ε and istep < max steps do

5s=create solution(F−FA, P, θ , φ)

6v=Compute J(FA∪ {s.flows}, E )using (1)

7∆ = 1

v−1

best value

8A= exp(−∆

T)

9r=Uniform random number between 0and 1

10 if ∆≤0or r < A then

11 best value =v

12 best solution =s

13 flows =best solution.f lows

14 paths =best solution.paths

15 foreach (f, p)∈(f lows, paths)do

16 F=F− {f}

17 FA=FA∪ {f}

18 foreach e∈pdo

19 re=re−df

20 xe=xe+df

21 end

22 end

23 end

24 T=γT

25 istep =istep + 1

26 end

A. Experimental Setup

We implemented the proposed algorithms using Python 2.7

in a Linux system with Intel(R) Core(TM) i5-4570S 2.90 GHz

CPU and 8 GB RAM. The “networkx” library of Python was

used to compute the all-pair shortest paths.

We used two real-life network topologies (labeled as “NR1”

and “NR2,” respectively) and a synthetic topology (labeled as

“NS1”) from the data set made available by Hartert et al. [13].

These network topologies and the corresponding ﬂow demands

are summarized in Table I.

We conducted several experiments to investigate the ﬂow

allocation schemes. First, we executed SPA, SPA-T, SPA-HC,

and SPA-SA with the aforementioned three networks of differ-

ent sizes as input. This helped us to collect various data, such

as the number of ﬂows allocated, average path length, number

of hot links, and execution time. Next, keeping all other

Accepted Version (For Personal Use Only)

more information.

TABLE I: Network topologies and ﬂow demands

NR1 [13] NR2 [13] NS1 [13]

Nodes 79 87 199

Links 294 322 522

Flows 6162 7527 37881

Min. link bandwidth (bps) 2400000

Max. link bandwidth (bps) 10000000

Min. ﬂow demand (bps) 1 11 11

Max. ﬂow demand (bps) 499374 396931 118476

parameters constant, we varied the value of θto investigate

how utilization threshold affected the ﬂow allocation. We also

performed sensitivity analysis of the algorithms’ parameters.

We varied the value of pbad from 0.002 to 0.012 to understand

how selecting a bad solutions affected SPA-HC.

At the beginning of each experiment, the network and

corresponding ﬂow details were read from an external ﬁle.

Based on these, a networkx directed graph data structure

was created, which was then used to compute the all-pair

shortest paths. Each experiment was repeated for ﬁve times,

based on which the mean and 95% conﬁdence interval were

computed. Unless otherwise speciﬁed, we assumed θ= 0.85,

T= 100000.0,γ= 0.999,ε= 10−5,pbad = 0.01,η= 10,

and φ= 5.

We considered the following metrics to measure the perfor-

mance of SPA, SPA-HC, and SPA-SA.

•Percentage of ﬂows allocated (|FA|

|F|) by each scheme

•Fairness of ﬂow allocation across the network measured

by Jin (1)

•Utilizations of the links breaching threshold θ(only in

case of SPA)

•Processing time of the proposed schemes

The ﬁnal metric, processing time of a scheme, indicates

the time spent in reading the network data ﬁle, constructing a

graph data structure from it, computing the all-pairs shortest

path, performing algorithm-speciﬁc operations, and ﬁnally,

verifying the allocations.

VI. RE SU LTS

Figure 1a shows the percentage of ﬂows allocated by SPA,

SPA-T, SPA-HC, and SPA-SA in the three networks. Note

that as we move from NR1 to NR2 and NS3, both the size

of the network and number of ﬂows to allocate increase. In

general, SPA allocated more than 90% ﬂows in all the three

networks. SPA-HC, on the other hand, was found to allocate

more ﬂows than SPA in the networks NR1 and NR2. This

can be accounted to the comparison of multiple solutions

at each step of SPA-HC. However, for larger networks, the

maximum limit on the number of steps executed by SPA-HC

potentially disallowed consideration of enough candidate solu-

tions. This largely explains why SPA-HC allocated marginally

less number of ﬂows than SPA in case of NS1. On the other

hand, since SPA-SA evaluates only one potential solution in

each iteration, enough alternative ﬂow allocations may not

have been considered by SPA-SA. This possibly resulted in

relatively less number of ﬂow allocations by SPA-SA in the

three networks. Finally, SPA-T allocated fewer ﬂows than SPA

because of the additional link utilization threshold constraint.

Figure 1b plots the Jain’s fairness index obtained with

respect to ﬂow allocation. In general, SPA-HC resulted in

a relatively more fair ﬂow allocation than its peers. This is

because SPA-HC, by considering ηsolutions, had a better view

of the global solution space. On the other hand, even SPA-T

was found to be fair than SPA, because the former did not

indiscriminately allocate ﬂows to links.

Figure 1c shows the total time taken by the algorithms to

complete their execution. SPA and SPA-T were found to be the

fastest schemes, which took less than or up to a second. SPA-

HC and SPA-SA, in contrast, took several minutes to complete

execution. In particular, SPA-HC takes about 40 minutes, on

average, to allocate the ﬂows in NS1. This is largely due to the

several solutions (combinations of multiple ﬂows) that SPA-

HC generate and evaluate in each iteration. SPA only evaluates

whether or not a given path can meet requirements of a ﬂow.

Consequently, SPA takes much lower execution time compared

to its counterparts.

We also look at the links whose utilization crossed θunder

SPA. In particular, SPA created six, ten, and seven such links

in NR1, NR2, and NS1, respectively. Figure 2 shows that most

of those links were very close to 100% utilization. As noted

earlier, this can lead to potential network disruptions in the

near future.

Figure 3 shows how pbad, the relative frequency of choosing

a bad solution, affected the performance of SPA-HC. The plots

with solid lines show that, as pbad increased, more ﬂows were

allocated in the networks NR1 and NR2. However, at the

same time, the overall fairness of ﬂow allocation measured

by (1) consistently decreased (dotted lines, y-axis on the right

side). In particular, beyond pbad = 0.01, the increase in ﬂow

allocation was almost negligible. The plots indicate that the

value of pbad should typically range between 0.005 and 0.01.

Figure 4 shows how the performance of SPA-HC, SPA-

SA, and SPA-T varied with the link utilization threshold. As

expected, when θincreased, all the schemes allocated more

ﬂows (plotted with solid lines), because capacity of links to

accommodate new ﬂows increased. At the same time, fairness

in link utilization (plotted with dotted lines) decreased with

increase in θ. Interestingly, the percentage of ﬂows allocated

did not seem to have a steep increase with θ. In other words,

setting link utilization threshold to say, more than 90%, may

not be of much practical use.

VII. CONCLUSION

The rise of industrial IBNs would witness various forms

of automation both in-network and to other/external networks.

One such service is the ﬂow allocation for large networks.

In this paper, we investigated four schemes in this regard.

All these algorithms rely upon pre-computed all-pair shortest

paths for a network. SPA-T, SPA-HC, and SPA-SA tend to

maximize the number of ﬂows allocated while also limiting

per-link bandwidth usage and thereby, improving the alloca-

tion fairness. SPA-HC fares better than the others because it

Accepted Version (For Personal Use Only)

more information.

80

85

90

95

100

NR1 NR2 NS1

Flows allocated [%]

Network

SPA

SPA-HC

SPA-SA

SPA-T

(a) Total ﬂows allocated.

0

0.1

0.2

0.3

0.4

0.5

NR1 NR2 NS1

Jain’s fairness index

Network

SPA

SPA-HC SPA-SA

SPA-T

(b) Flow allocation fairness.

10-1

100

101

102

103

104

NR1 NR2 NS1

Processing time [s]

Network

SPA

SPA-HC SPA-SA

SPA-T

(c) Processing times (y-axis in

log-scale).

Fig. 1: Comparative performance of the SPA, SPA-T, SPA-HC, and SPA-SA.

86

88

90

92

94

96

98

100

Link utilization [%]

NS1NR2NR1

Fig. 2: Highly utilized links

under SPA (θ= 85%).

60

65

70

75

80

85

90

95

100

0.002 0.004 0.006 0.008 0.01 0.012 0.3

0.4

0.5

0.6

0.7

Flows allocated [%]

Jain’s fairness index

Probability

NR1

NR1

NR2

NR2

Fig. 3: Effects of pbad on

SPA-HC.

93

94

95

96

97

98

99

100

0.75 0.8 0.85 0.9 0.95 0.35

0.36

0.37

0.38

0.39

0.4

0.41

Flows allocated [%]

Jain’s fairness index

Link utilization threshold

NR1

NR1 NR2

NR2

(a) SPA-HC.

88

90

92

94

96

98

100

0.75 0.8 0.85 0.9 0.95 0.35

0.36

0.37

0.38

0.39

0.4

0.41

Flows allocated [%]

Jain’s fairness index

Link utilization threshold

NR1

NR1

NR2

NR2

(b) SPA-SA.

86

88

90

92

94

96

98

0.75 0.8 0.85 0.9 0.95 0.34

0.35

0.36

0.37

0.38

Flows allocated [%]

Jain’s fairness index

Link utilization threshold

NR1

NR1 NR2

NR2

(c) SPA-T.

Fig. 4: Effects of utilization threshold θon the different schemes.

takes a more detailed look at the feasible solutions space. On

the downside, it takes a longer time to run.

The results presented here offer various insights and di-

rections that can be investigated in the future. In particular,

speeding up SPA-HC while retaining its performance would

be a very interesting task. Moreover, other local and global

search techniques can be explored in quest of better solutions.

Additional constraints for ﬂow allocation, for example, latency

and jitter, can also be considered, which, in turn, would make

the problem still more difﬁcult.

REFERENCES

[1] M. Kiran, E. Pouyoul, A. Mercian, B. Tierney, C. Guok, and I. Monga,

“Enabling intent to conﬁgure scientiﬁc networks for high performance

demands,” Future Generation Computer Systems, vol. 79, pp. 205 – 214,

2018.

[2] B. K. Saha, D. Tandur, L. Haab, and L. Podleski, “Intent-based Net-

works: An Industrial Perspective,” in Proceedings of the 1st International

Workshop on Future Industrial Communication Networks (FICN ’18).

New York, NY, USA: ACM, 2018, pp. 35–40.

[3] J. Aug´

e and M. Enguehard, “A network protocol for distributed orches-

tration using intent-based forwarding,” in 2019 IFIP/IEEE Symposium

on Integrated Network and Service Management (IM), April 2019, pp.

718–719.

[4] A. Abhashkumar, J.-M. Kang, S. Banerjee, A. Akella, Y. Zhang, and

W. Wu, “Supporting diverse dynamic intent-based policies using Janus,”

in Proceedings of the 13th International Conference on Emerging

Networking EXperiments and Technologies (CoNEXT). New York, NY,

USA: ACM, 2017, pp. 296–309.

[5] L. Lo Bello and W. Steiner, “A perspective on IEEE time-sensitive

networking for industrial communication and automation systems,”

Proceedings of the IEEE, vol. 107, no. 6, pp. 1094–1120, June 2019.

[6] F. Dababneh and L. Li, “Integrated electricity and natural gas demand

response for manufacturers in the smart grid,” IEEE Transactions on

Smart Grid, vol. 10, no. 4, pp. 4164–4174, July 2019.

[7] B. K. Saha, S. Misra, and S. Pal, “SeeR: Simulated annealing-based

routing in opportunistic mobile networks,” IEEE Transactions on Mobile

Computing, vol. 16, no. 10, pp. 2876–2888, Oct 2017.

[8] J. M. Boley, E. Jung, and R. Kettimuthu, “Adaptive QoS for data trans-

fers using software-deﬁned networking,” in 2016 IEEE International

Conference on Advanced Networks and Telecommunications Systems

(ANTS), Nov 2016, pp. 1–6.

[9] K. Sharma and V. Badarla, “FlowFurl: A ﬂow-level routing for faulty

data center networks,” in 2016 IEEE International Conference on Ad-

vanced Networks and Telecommunications Systems (ANTS), Nov 2016,

pp. 1–6.

[10] Y. Ito, H. Koga, and K. Iida, “A bandwidth reallocation scheme to im-

prove fairness and link utilization in data center networks,” in 2016 IEEE

International Conference on Pervasive Computing and Communication

Workshops (PerCom Workshops), March 2016, pp. 1–4.

[11] D. Nadig, B. Ramamurthy, B. Bockelman, and D. Swanson, “Large data

transfer predictability and forecasting using application-aware SDN,”

in 2018 IEEE International Conference on Advanced Networks and

Telecommunications Systems (ANTS), Dec 2018, pp. 1–6.

[12] A. Chopra, D. S. Kalhan, A. S. Bedi, A. K. Gupta, and K. Rajawat,

“On socially optimal trafﬁc ﬂow in the presence of random users,”

in 2018 IEEE International Conference on Advanced Networks and

Telecommunications Systems (ANTS), Dec 2018, pp. 1–6.

[13] R. Hartert, S. Vissicchio, P. Schaus, O. Bonaventure, C. Filsﬁls,

T. Telkamp, and P. Francois, “A declarative and expressive approach

to control forwarding paths in carrier-grade networks,” in Proceedings

of the 2015 ACM Conference on Special Interest Group on Data

Communication. New York, NY, USA: ACM, 2015, pp. 15–28.

[14] S. Layeghy, F. Pakzad, and M. Portmann, “SCOR: software-deﬁned con-

strained optimal routing platform for SDN,” CoRR, vol. abs/1607.03243,

2016.

[15] Z. Allybokus, K. Avrachenkov, J. Leguay, and L. Maggi, “Multi-path

alpha-fair resource allocation at scale in distributed software-deﬁned

networks,” IEEE Journal on Selected Areas in Communications, vol. 36,

no. 12, pp. 2655–2666, Dec 2018.

[16] X. Huang, T. Yuan, and M. Ma, “Utility-optimized ﬂow-level bandwidth

allocation in hybrid SDNs,” IEEE Access, vol. 6, pp. 20 279–20 290,

2018.

[17] D. C. R. Jain and W. Hawe, “A quantitative measure of fairness and

discrimination for resource allocation in shared computer system,” DEC

Technical Report 301, Sep. 1984.