Content uploaded by Deepak Kumar
Author content
All content in this area was uploaded by Deepak Kumar on Sep 15, 2023
Content may be subject to copyright.
978-1-6654-7719-2/22/$31.00 ©2022 IEEE
Increase in TCP Throughput using Shortest Path
Routing Algorithm in Mininet
Deepak Kumar, and Jawahar Thakur
Department of Computer Science, Himachal Pradesh University
Email: deepak.cs339@gmail.com ORCID: 0000-0002- 1629-0132
Abstract—SDN is a novel networking paradigm that can
programmatically control, monitor, and modify the behavior of
routing devices. SDN supports NFV architecture and therefore
can build secure, scalable, and reliable networks. To emulate
this research mininet is required to create an SDN environment
with inbuilt hosts, switches, controllers, and links among them.
This paper aims to improve TCP throughput in an SDN
environment by implementing a short-path routing algorithm.
In this implementation, a comparison has been made between
two case studies: Case study 1 (Host h1 and h2 connected to a
single switch), and Case study 2 (Host h2 and h8 connected to
separate switches) to see their effect on TCP throughput. This
research work is novel because it uses the shortest path routing
script following the RYU controller and custom-built tree
topology. The two main tools used in this research are
openvswitch and iperf 3. This study examines how network
throughput can be improved. SDN has become imperative for
emerging technologies as its architecture support is suitable for
5G, IoT, VANETs, Blockchain, and networking industries.
Incorporating it with other technologies makes it even more
intriguing. In recent years, most work has been performed in the
areas of security, traffic classification, load balancing, routing
optimization, and scalability.
Keywords—Flow-Table, OpenFlow, Routing, RYU, Scalable,
TCP.
I. INTRODUCTION
A novel networking paradigm called SDN [1] allows for
the creation of more flexible, reliable, scalable, and robust
networks that are even more secure. SDN architecture is
comprised of three layers. The topmost layer is known as the
management plane, where applications execute and perform
actual management functions. The intermediate plane is
referred to as control plane. Here is where you install the
controller that configures, manages and monitors the entire
network. A variety of controllers are available, including POX
[2], Floodlight [3], ONOS [4], OpenDaylight [5], Onix [6] and
RYU [7]. The infrastructure layer is referred as the data plane.
The interaction between data plane and the control plane is
accomplished via OpenFlow [8] southbound interface.
In a network, whenever data passes from source to
destination, it follows a specific route. Due to inactive devices
along the long route, there is a possibility of data loss [9]. It is
not possible to centrally control data routing devices in
conventional cloud-based networks. It is therefore vital that
there is a free path available when routing through devices.
Throughput was one of the major drawbacks of traditional
networks. Since SDN architecture enables centralized control
and monitoring of the network, it is essential for the current
networks. It can also identify the shortest route across an entire
network without data loss and with high throughput. Due to its
ability to regulate the behavior of data routing devices, which
consist of multiple routing tables, SDN is a smart choice for
today's ever-changing networks, since it can modify packet
content, forward packets, and drop packets according to the
situation. A SDN-controlled environment's performance is
determined by factors such as bandwidth, security, throughput,
and flexibility.
Emulating SDN is important because it helps us to
understand how real networks behave and function. We have
used the mininet [10] emulator to understand the behavior of
SDN. In this paper, we demonstrate how the shortest path
routing algorithm affects TCP throughput by improving packet
routing. Additionally, SDN supports cloud-based services such
as IaaS (Infrastructure as a Service), mobile computing [12],
and PaaS (Platform as a Service). Routes are determined by the
routing algorithm, which identifies all possible paths in
networks and chooses the most optimal path. A routing
algorithm is typically dynamic in nature. In general, routing
algorithms are defined by their transmission time, distance, and
hop count. In [14], the author discusses how to optimize the
algorithm by reducing traffic flow by changing the route of
traffic through free links, to achieve better network
performance. In addition to facilitating scalability, SDN
reduces communication delays between devices in a network.
In [15] the author has outlined how Multi-Protocol Label
Switching (MPLS) can be used to minimize communication
delay. In [16], the shortest path between two nodes is discussed
as a way to minimize congestion in a network. Setting up the
topology is the first step. Step two involves identifying
potential paths and determining the optimal path. Additionally,
flow rules are installed across the selected optimal path,
ensuring packets are transmitted on the shortest path with the
least congestion. In [17], the author modified the existing
Dijkstra algorithm to find the shortest path in an SDN
environment. In this article, the author introduced the
supplementary parameter of node weight. The author in [18]
introduced a novel technique for path planning by using the
concept of heuristic search. With this, he integrates Dijkstra's
algorithm for weighted directed graphs. So, the shortest path
is an imperative parameter in Software-Defined Networks as
it helps to determine how efficient is the network topology. As
per the current shortest path algorithm, network size has an
inverse relationship with performance.
When the network is large, running queries for each flow
can take a long time. Performance is degraded as the shortest
path algorithm runs for each flow. Overuse of the shortest path
in the network affects overall bandwidth, while other links go
unused. Using graph compression [19], it is possible to scale
down a graph to improve path calculations. The graph can be
scaled down to reduce redundant nodes and edges, allowing
calculations to be done faster. [20] discusses how traffic
engineering can be applied effectively in an SDN
environment. The author in [21] describes how to maximize
flow in the network even if switches have limited flow-table
capacity. The new shortest path routing algorithm is proposed
by the author in [22]. It has been discussed in [23] that
multipath flow routing can be achieved using machine
learning. A modified Floyd-Warshall algorithm is
2022 IEEE Conference on Interdisciplinary Approaches in Technology and Management for Social Innovation (IATMSI) | 978-1-6654-7719-2/22/$31.00 ©2022 IEEE | DOI: 10.1109/IATMSI56455.2022.10119452
Authorized licensed use limited to: University of Delhi. Downloaded on September 15,2023 at 05:58:37 UTC from IEEE Xplore. Restrictions apply.
implemented in [24]. Based on segment routing, the authors
developed an efficient routing algorithm [25]. The method
presented in [26] eliminates duplicate paths and reduces
computation costs for rule generation. A heuristic approach is
presented in [27] for finding multiple routes to satisfy
bandwidth requirements for unsplittable flows. In this paper,
our objective is to find and follow the shortest route from the
source to the destination node, and to assess the performance
of the shortest path routing algorithm (SPRA) based on hop
count, which may result in higher TCP throughput.
Continuing with the paper, we organize it as follows. Our
discussion of the RYU controller functionalities can be found
in the second section. A description of our research
methodology is provided in section third. This research work
will be implemented based on the requirements discussed in
the fourth section. The fifth section discusses the results and
discussion. In section six, we concluded and defined the
further scope of this research study.
II. RYU CONTROLLER FUNCTIONALITIES
Southbound APIs are used by controllers to instruct
networking devices. Listed below are the functionalities of
SDN controllers.
A. Support Virtualization
SDN supports virtualization since it gives the impression
that each individual machine or host operates independently.
For the purpose of managing traffic flow, virtual links can also
be created whenever necessary. Each virtual link can also be
protected by a firewall [28]. A virtual link is an abstraction that
allows us to split traffic among multiple routes in contrast to a
physical link.
B. Global Control
Network management becomes easier with SDN because
it gives a global view of the entire network. Consequently,
monitoring traffic becomes convenient [29] across physical
and virtual links.
C. Scalable
Using SDN, devices can be scaled, and a single controller
handles all the devices. There is however a question of how
many devices each controller can handle. SDN also offers
multisite scalability.
D. Secure
Advanced filters can be used to separate virtual networks
from physical networks. It is possible to authenticate users
using these filters. Furthermore, the platform supports security
applications such as VARMAN[30], DDoS protection, etc.
E. Performance Metric
Flows per second and setup time are based on the following
performance metrics.
1) Reactive
In reactive flow setup, OpenFlow switches receive packets
[31] that don't match the flow table entries and have to send
them to the controller. As soon as the controller determines
how to process the flow, the information is cached on the
OpenFlow switch, and the controller determines how long the
cache should remain active.
2) Proactive
In proactive flow setup, the controller sets up the rules
across switches before the packet is received by the OpenFlow
switch [32]. In other words, the OpenFlow switch is already
aware of what to do with the packet when it arrives. In this
way, there is a minimal setup delay, and the controller can
support a large number of flows per second.
An ideal SDN controller pre-populates the flow tables as
much as possible. The main purpose of the controller is to
regulate ongoing processes and to make Openflow supportive
switches flow tables [33] resilient to DDoS attacks [34], which
have limited buffering capacity ( as it uses TCAM) [35].
In this research work, both qualitative and quantitative
approaches have been used. The aim is to increase the network
throughput by implementing the shortest path routing
algorithm. In this scenario, successful packet routing is
possible between the source & destination host without any
congestion. This research requires the use of a mininet
emulator, which is a relatively inexpensive way to study
realistic SDN behavior. The emulator automatically generates
hosts, switches, links between hosts & switches, and the
controller, based on the topology used. In this article, we will
see the effect of the shortest path algorithm on TCP
throughput.
III. REQUIREMENTS
In this implementation, we have used laptop with
configuration of 500 GB SSD, 12 GB RAM running the Linux
operating system Ubuntu 21.10 and an Intel® CoreTM i5-
1035G4 CPU @ 1.10GHz x 8 processor. In addition to Python3
language support, we used openvswitch, mininet and the iperf3
tool.
IV. RESULTS & DISCUSSIONS
To implement the shortest path routing algorithm in Mininet,
we created a script written in python (SPRA.py) and the
controller used is RYU. The first step is to use mininet tree
topology in 1st terminal- $ sudo mn --topo tree,3,2 --controller
remote, its output is shown in fig. 1. It creates a network of 8
hosts, 7 switches, and 14 links.
In 2nd terminal, we use the command - $ ryu-manager
SPRA.py –observe-link as shown in Figure 1. It loads & starts
the required applications and also shows the no. of switches. In
mininet to check the connectivity between two hosts h1 and h2
the ping command is used- $ mininet> h1 ping -c4 h2
Figure 1. Loading and Initialization of required applications
(The above command sends four ping packets from host h1
to h2. The host h1 requests ARP for the MAC address of the
host h2 which results in a Packet_In message to the RYU
controller. It sends a Packet_Out message to flood the packet
to all other ports on the switch. The h2 host receives the ARP
request and sends a reply, which first goes to the controller,
which forwards it to the first host and adds flow to the switch
Authorized licensed use limited to: University of Delhi. Downloaded on September 15,2023 at 05:58:37 UTC from IEEE Xplore. Restrictions apply.
s1 flow table). We can check the switch s1 flow table entries
using the command- $ mininet> sh ovs-ofctl dump-flows s1.
If we want to add a new entry in the switch s1 flow table
then we will use the command- $ mininet>sh ovs-ofctl add-
flow s1 action=normal. To check this newly added entry, we
will again use the command- $ mininet> sh ovs-ofctl dump-
flows s1.
Case 1- When both source and destination host are
connected to the same switch in tree topology (h1 ping -c5 h2)
as shown in Figure 2. The host h1 sends a message to host h2
via switch s3 and vice versa. It means both h1 and h2 are
connected to the same switch i.e., s3 and it is represented as
src=3 and dst=3. The host connected to s3 have mac addresses
as 8a:ed:0f:91:48:2e and da:ee:25:28:e7:2e respectively. There
are two options of path p from source to destination, where
p=[(3,2,1)] or [(3,1,2)].
Figure 2. Controller install rules for h1 ping -c5 h2
If we choose path p=[(3,1,2)], where 3 means switch s3 and
1 means the packet will first receive at input_port 1 connected
to source host having src_mac=8a:ed:0f:91:48:2e and it
forward to destination host having dst_mac=da:ee:25:28:e7:2e
connected to output_port=2. Also if we see the number of hop
counts is only one, as both source and destination hosts are
connected to the same switch (i.e. s3).
Case 2- When the source and destination host connected
two different switches in tree topology ( h2 ping -c h8) the path
to be followed can be seen in fig. 3.
PATH (P) = [(3, 2, 3), (2, 1, 3), (1, 1, 2), (5, 3, 2), (7, 3, 1)]
Table 1. Path description
Serial No.
Switches
Input Port
Output Port
1
3 (s3)
2
3
2
2(s2)
1
3
3
1(s1)
1
2
4
5(s5)
3
2
5
7(s7)
3
1
Figure 3. Controller install rules for h2 ping -c5 h8
In fig. 3 the source host having src_mac=da:ee:25:28:e7:2e
send first packet to in_port=2 of switch s3, then it forward the
packet to out_port =3, which is connected to input_port=1 of
switch s2, and further forward the packet to output_port=3,
which is connected to in_port=1 of switch s1 and forward the
packet to out_port=2, which is connected to in_port=3 of
switch s5, which forward the packet to out_port=2, connected
to in_port=3 of switch s7 which is connected destination host
having dst_mac=06:8f:63:2d:04:4c connected to out_port =1.
Here the number of hop counts is five i.e. s3-s2-s1-s5-s7. If we
want to add a new entry in the switch s1 flow table then we will
use the command- $ mininet>sh ovs-ofctl add-flow s1
action=normal. To check this newly added flow entry, we will
again use the command- $ mininet> sh ovs-ofctl dump-flows
s1.
A. ICMP Flow Comparison
When we start the controller the shortest path routing
algorithm automatically installs rules for Case1 and Case2 as
we have seen in the previous section. In this section, we are
comparing the min, avg, max, and mdev time for Case1 (i.e. h1
ping -C5 h2, as ping1 ) and Case2 (i.e. h2 ping -C5 h8 as ping2)
to see the ICMP Flow between time (y-axis) and packet
transmitted (x-axis).
Figure 4. ICMP Flow
When we start the controller the shortest path routing algorithm
automatically installs rules for Case1 and Case2 as we have
seen in the previous section. In this section, we are comparing
the min, avg, max, and mdev time for Case1 (i.e. h1 ping -C5
h2, as ping1 ) and Case2 (i.e. h2 ping -C5 h8 as ping2) to see
the ICMP Flow between time (y-axis) and packet transmitted
(x-axis). When we start the controller the shortest path routing
algorithm automatically installs rules for Case1 and Case2 as
we have seen in the previous section. In this section, we are
comparing the min, avg, max, and mdev time for Case1 (i.e. h1
ping -C5 h2, as ping1 ) and Case2 (i.e. h2 ping -C5 h8 as ping2)
to see the ICMP Flow between time (y-axis) and packet
transmitted (x-axis). As we can see the time taken for ping2 is
more compared to ping1 in avg, max, and mdev as shown in
fig. 4.
B. TCP Throughput
In the previous section, we have shown the ICMP Flow
comparison between ping1 (h1 ping -c5 h2) and ping2 (h2
ping -c5 h8). In this section we will see how the shortest
routing path algorithm affects throughput -when two hosts are
connected to the same switch (i.e. between h1-h2) and when
two hosts are connected to a different switch (i.e. between h2-
h8). The TCP bandwidth obtained between h1-h2 is 32.0
Gbits/sec and h2-h8 is 31.2 Gbits/sec.
1) Between h1-h2 (Case Study 1)
To find out the throughput for the TCP flow between h1-h2
connected to the same switch in tree topology, the first step is
to open two xterm for h1 and h2. We will make host h2 a server
by using the iperf3 command as- iperf -s -p 8001 -i 1 (where -
s means the server, -p means port, -i means iteration) and host
Authorized licensed use limited to: University of Delhi. Downloaded on September 15,2023 at 05:58:37 UTC from IEEE Xplore. Restrictions apply.
h1 as a client using command as- iperf -c 10.0.0.2 -p 8001 -t 15
(where -c means client, p means port number, and -t means
time interval). The next step is to use command as- iperf -s -p
8001 -i 1 > res in host h2 xterm terminal.
In host h2 xterm and the average bandwidth of 15 intervals
can get at xterm h1 using the command as- iperf -c 10.0.0.2 -p
8001 -t 15. We use command- iperf -s -p 7676 -i 1 > final , in
xterm h8 and the average bandwidth of 15 intervals can get at
xterm h2 using command- iperf -c 10.0.0.8 -p 7676 -t 15 as
shown in figure 8. If we need to see the details of bandwidth in
each interval then, we can see the detailed description of data
transfer and bandwidth in xterm h2 for each interval using the
command as - # more res, as shown in fig. 5.
Figure 5. Detail Description of bandwidth in each interval in xterm h2
In order to get the precise bandwidth information we can
use the command as shown in fig. 6 - # cat res | grep sec | head
-15 | tr - | “ ” | awk ‘{ print $4,$8 }’ > new_res.
The output we get in fig. 6 can be utilized to generate a
throughput graph for the TCP Flow between h1-h2 where h1
acts as the client and h2 serve as a server (see fig. 7).
Figure 6. Bandwidth information between h1 and h2
Figure 7. Throughput graph for TCP-Flow between h1-h2
2) Between h2-h8 (Case study 2)
To find out the throughput for the TCP Flow between hosts
h2 and h8 connected to different switches in a tree topology.
The first step is to open xterm for h2 and h8. We will make host
h8 a server and host h1 a client using the iperf3 tool. The next
step is to use the command in host h8 x-term - iperf -s -p 7676
-i 1 > final, as shown in fig. 8.
In figure 8 the client host h2 has received the average
bandwidth of 15 intervals, so if we need to see the details of
bandwidth in each interval then, we can see the detailed
description of data transfer and bandwidth in xterm h8 for each
interval using the command as shown in fig. 9.
Figure 8. Host h2 as client showing overall bandwidth after 15th interval
Figure 9. Detail Description of bandwidth in each interval in xterm h8
In order to get the precise bandwidth information we can
use the command as shown in fig. 10. The bandwidth
information we get in fig. 10 can be utilized to generate a
throughput graph for the TCP Flow between h2-h8 where h2
acts as client and h8 serve as a server (see fig. 11).
Figure 10. Bandwidth information for throughput between h2 and h8
Figure 11. Throughput graph for TCP-Flow between h2-h8
In this research article we have shown how to implement
the shortest path routing algorithm takes place in a Mininet
environment. Also, ICMP Flow comparison have been made,
and how TCP Flow throughput gets affected when source and
destination hosts are connected to single or different switches.
From fig. 12, it is now evident that throughput is much higher
Authorized licensed use limited to: University of Delhi. Downloaded on September 15,2023 at 05:58:37 UTC from IEEE Xplore. Restrictions apply.
when hosts i.e. h1 and h2 are connected to the same switch in
a tree topology compared to hosts h2 and h2 connected to
different switches.
Figure 12. Throughput Comparison
V. CONCLUSION & FUTURE SCOPE
SDN paradigm improves the network performance. But
when there is network traffic in the control plane, it may cause
congestion and affect the network throughput. Therefore, in
this article virtual SDN environment was created with the help
of mininet emulator. The shortest path routing algorithm
(SPRA) implemented for the tree topology leads to the
conclusion that the shortest path with the least hop count and
delay improves the overall network bandwidth (throughput).
In this paper, the work done can be further extended to
examine the effects of multipath or multicast on shortest path
routing, as well as to find the maximum or minimum path
capacity. The effect of shortest path routing algorithms on
switch flow-table and group table performance can also be
investigated. Also as this work is implemented in a local
mininet environment, so this work can be further extended to
Wide Area Networks (WAN). SDN network is reliable,
flexible, scalable, secure, and robust. This makes it a suitable
choice for other emerging network technologies as well, so
there is a wider scope for research and innovation.
REFERENCES
[1] M. Priyadarsini and P. Bera, "Software defined networking
architecture, traffic management, security, and placement: A survey",
Computer Networks, vol. 192, p. 108047, 2021. Available:
10.1016/j.comnet.2021.108047.
[2] A. Mishra, N. Gupta and B. Gupta, "Defense mechanisms against
DDoS attack based on entropy in SDN-cloud using POX controller",
Telecommunication Systems, vol. 77, no. 1, pp. 47-62, 2021. Available:
10.1007/s11235-020-00747-w.
[3] Y. Li, X. Guo, X. Pang, B. Peng, X. Li and P. Zhang, "Performance
Analysis of Floodlight and Ryu SDN Controllers under Mininet
Simulator," In IEEE/CIC International Conference on
Communications in China (ICCC Workshops), 2020, pp. 85-90, doi:
10.1109/ICCCWorkshops49972.2020.9209935.
[4] B. Almadani, A. Beg and A. Mahmoud, "DSF: A Distributed SDN
Control Plane Framework for the East/West Interface," in IEEE Access,
vol. 9, pp. 26735-26754, 2021, doi: 10.1109/ACCESS.2021.3057690.
[5] S. Badotra and S. Panda, "SNORT based early DDoS detection system
using Opendaylight and open networking operating system in software
defined networking", Cluster Computing, vol. 24, no. 1, pp. 501-513,
2020. Available: 10.1007/s10586-020-03133-y.
[6] R. Shubbar, M. Alhisnawi, A. Abdulhassan, and M. Ahamdi, “A
comprehensive survey on software-defined network controllers,”
Lecture Notes in Networks and Systems, pp. 199–231, 2021. Available:
10.1007/978-981-16-0666-3_18.
[7] A. A. Zopellaro Soares, J. Lucas Vieira, S. E. Quincozes, V. C. Ferreira,
L. M. Uchôa, Y. Lopes, D. Passos, N. C. Fernandes, I. Monteiro
Moraes, D. Muchaluat‐Saade, and C. Albuquerque, “SDN‐based
teleprotection and Control Power Systems: A study of available
controllers and their suitability,” International Journal of Network
Management, vol. 31, no. 3, 2020. Available:
https://doi.org/10.1002/nem.2112.
[8] R. Wazirali, R. Ahmad, and S. Alhiyari, “SDN-openflow topology
discovery: An overview of performance issues,” Applied Sciences, vol.
11, no. 15, p. 6999, 2021. Available:
https://doi.org/10.3390/app11156999.
[9] E. Akin and T. Korkmaz, “Comparison of routing algorithms with static
and dynamic link cost in software defined networking (SDN),” IEEE
Access, vol. 7, pp. 148629–148644, 2019. doi:
10.1109/ACCESS.2019.2946707.
[10] R. Ruslan, N. A. B. Othman, M. F. M. Fuzi, and N. Ghazali, “Scalability
analysis in mininet on software defined network using Onos,” 2020
Emerging Technology in Computing, Communication and Electronics
(ETCCE), 2020. doi: 10.1109/ETCCE51779.2020.9350892.
[11] A. Mohamed, M. Hamdan, S. Khan, A. Abdelaziz, S. F. Babiker, M.
Imran, and M. N. Marsono, “Software-defined networks for Resource
Allocation in Cloud Computing: A Survey,” Computer Networks, vol.
195, p. 108151, 2021. doi:10.1016/j.comnet.2021.108151.
[12] E. Ahvar, S. Ahvar, S. M. Raza, J. Manuel Sanchez Vilchez, and G. M.
Lee, “Next generation of SDN in cloud-fog for 5G and beyond-enabled
applications: Opportunities and challenges,” Network, vol. 1, no. 1, pp.
28–49, 2021. doi: 10.3390/network1010004.
[13] R. M. Sohaib, O. Onireti, Y. Sambo, and M. A. Imran, “Network slicing
for beyond 5G systems: An overview of the Smart Port Use Case,”
Electronics, vol. 10, no. 9, p. 1090, 2021. doi:
10.3390/electronics10091090.
[14] M.-C. Lee and J.-P. Sheu, “An efficient routing algorithm based on
segment routing in software-defined networking,” Computer Networks,
vol. 103, pp. 44–55, 2016. doi: 10.1016j.comnet.2016.03.017.
[15] R. Moreira, P. F. Rosa, R. L. Aguiar, and F. de Silva, “Nasor: A
network slicing approach for multiple autonomous systems,” Computer
Communications, vol. 179, pp. 131–144, 2021. doi:
10.1016/j.comcom.2021.07.028.
[16] K. Sayali, "Enhancement of Network Throughput in SDN Using
Shortest Path Routing Algorithms." PhD diss., Dublin, National
College of Ireland, 2020.
[17] J.-R. Jiang, H.-W. Huang, J.-H. Liao, and S.-Y. Chen, “Extending
dijkstra's shortest path algorithm for software defined networking,” The
16th Asia-Pacific Network Operations and Management Symposium,
2014. doi: 10.1109/APNOMS.2014.6996609.
[18] Q. Sun, W. Wan, G. Chen and X. Feng, "Path planning algorithm under
specific constraints in weighted directed graph," 2016 International
Conference on Audio, Language and Image Processing (ICALIP),
2016, pp. 635-640, doi: 10.1109/ICALIP.2016.7846631.
[19] X. Zhao, J. Liang, and J. Wang, “A community detection algorithm
based on graph compression for large-scale social networks,”
Information Sciences, vol. 551, pp. 358–372, 2021.
doi:10.1016/j.ins.2020.10.057.
[20] P. Sun, Z. Guo, J. Lan, J. Li, Y. Hu, and T. Baker, “SCALEDRL: A
scalable deep reinforcement learning approach for traffic engineering
in SDN with pinning control,” Computer Networks, vol. 190, p.
107891, 2021. doi:10.1016/j.comnet.2021.107891.
[21] R. Cohen, L. Lewin-Eytan, J. S. Naor and D. Raz, "On the effect of
forwarding table size on SDN network utilization," IEEE INFOCOM
2014 - IEEE Conference on Computer Communications, 2014, pp.
1734-1742, doi: 10.1109/INFOCOM.2014.6848111.
[22] J. -R. Jiang, H. -W. Huang, J. -H. Liao and S. -Y. Chen, "Extending
Dijkstra's shortest path algorithm for software defined networking,"
The 16th Asia-Pacific Network Operations and Management
Symposium, 2014, pp. 1-4, doi: 10.1109/APNOMS.2014.6996609.
[23] M. K. Awad, M. H. Ahmed, A. F. Almutairi, and I. Ahmad, “Machine
learning-based multipath routing for software defined networks,”
Journal of Network and Systems Management, vol. 29, no. 2, 2021. doi:
10.1007/s10922-020-09583-4.
[24] B. Kumar and E. Reddy, “Modified Floyd Warshall algorithm for
Cache Management in information centric network,” International
Journal of Intelligent Engineering and Systems, vol. 13, no. 1, pp. 146–
155, 2020. doi: 10.22266/ijies2020.0229.14.
[25] J. Zhou, Z. Zhang, and N. Zhou, “A segment list management algorithm
based on segment routing,” 2019 IEEE 11th International Conference
on Communication Software and Networks (ICCSN), 2019. doi:
10.1109/ICCSN.2019.8905397.
Authorized licensed use limited to: University of Delhi. Downloaded on September 15,2023 at 05:58:37 UTC from IEEE Xplore. Restrictions apply.
[26] W. Kong, M. Nabi and K. Goossens, "Run-Time Recovery and Failure
Analysis of Time-Triggered Traffic in Time Sensitive Networks," in
IEEE Access, vol. 9, pp. 91710-91722, 2021, doi:
10.1109/ACCESS.2021.3092572.
[27] E. Akin and T. Korkmaz, "Rate-Based Dynamic Shortest Path
Algorithm for Efficiently Routing Multiple Flows in SDN," ICC 2019
- 2019 IEEE International Conference on Communications (ICC),
2019, pp. 1-7, doi: 10.1109/ICC.2019.8761398.
[28] M. Caprolu, S. Raponi, and R. Di Pietro, “Fortress: An efficient and
distributed firewall for Stateful Data Plane sdn,” Security and
Communication Networks, vol. 2019, pp. 1–16, 2019. doi:
10.1016/j.comnet.2021.108151.
[29] M. M. Raikar, M. S M, M. M. Mulla, N. S. Shetti, and M. Karanandi,
“Data traffic classification in Software Defined Networks (SDN) using
supervised-learning,” Procedia Computer Science, vol. 171, pp. 2750–
2759, 2020. doi: 10.1016/j.procs.2020.04.299.
[30] P. Krishnan, S. Duttagupta, and K. Achuthan, “Varman: Multi-plane
Security Framework for Software Defined Networks,” Computer
Communications, vol. 148, pp. 215–239, 2019. doi:
10.1016/j.comcom.2019.09.014.
[31] M. F. Hyder and M. A. Ismail, "Securing Control and Data Planes From
Reconnaissance Attacks Using Distributed Shadow Controllers,
Reactive and Proactive Approaches," in IEEE Access, vol. 9, pp.
21881-21894, 2021, doi: 10.1109/ACCESS.2021.3055577.
[32] G. Huang and H. Y. Youn, “Proactive eviction of flow entry for SDN
based on Hidden Markov Model,” Frontiers of Computer Science, vol.
14, no. 4, 2020. doi:10.1007/s11704-018-8048-2.
[33] S. Asadollahi and B. Goswami, “Experimenting with scalability of
floodlight controller in software defined networks,” 2017 International
Conference on Electrical, Electronics, Communication, Computer, and
Optimization Techniques (ICEECCOT), 2017. doi:
10.1109/ICEECCOT.2017.8284684.
[34] R. Sanjeetha, S. Srivastava, A. Kanavalli, A. Pattanaik, and A. Gupta,
“Mitigation of combined ddos attack on SDN controller and primary
server in software defined networks using a priority on traffic
variation,” 2020 International Conference for Emerging Technology
(INCET), 2020. doi: 10.1109/INCET49848.2020.9153998.
[35] B. Isyaku, M. S. Mohd Zahid, M. Bte Kamat, K. Abu Bakar, and F. A.
Ghaleb, “Software defined networking flow table management of
OpenFlow switches performance and security challenges: A survey,”
Future Internet, vol. 12, no. 9, p. 147, 2020. Available:
https://doi.org/10.3390/fi12090147.
Authorized licensed use limited to: University of Delhi. Downloaded on September 15,2023 at 05:58:37 UTC from IEEE Xplore. Restrictions apply.