<?xml-model href='http://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_all.rng' schematypens='http://relaxng.org/ns/structure/1.0'?><TEI xmlns="http://www.tei-c.org/ns/1.0">
	<teiHeader>
		<fileDesc>
			<titleStmt><title level='a'>An SVM Based DDoS Attack Detection Method for Ryu SDN Controller</title></titleStmt>
			<publicationStmt>
				<publisher></publisher>
				<date>12/09/2019</date>
			</publicationStmt>
			<sourceDesc>
				<bibl> 
					<idno type="par_id">10195841</idno>
					<idno type="doi">10.1145/3360468.3368183</idno>
					<title level='j'>CoNEXT ’19 Companion</title>
<idno></idno>
<biblScope unit="volume"></biblScope>
<biblScope unit="issue"></biblScope>					

					<author>Shideh Yavary Mehr</author><author>Byrav Ramamurthy</author>
				</bibl>
			</sourceDesc>
		</fileDesc>
		<profileDesc>
			<abstract><ab><![CDATA[Software-Defined Networking (SDN) is a dynamic, and manageablenetwork architecture which is more cost-effective than existingnetwork architectures. The idea behind this architecture is to centralize intelligence from the network hardware and funnel thisintelligence to the management system (controller) [2]-[4]. Sincethe centralized SDN controller controls the entire network and manages policies and the flow of the traffic throughout the network, itcan be considered as the single point of failure [1]. It is importantto find some ways to identify different types of attacks on the SDNcontroller [8]. Distributed Denial of Service (DDoS) attack is oneof the most dangerous attacks on SDN controller. In this work, weimplement DDoS attack on the Ryu controller in a tree networktopology using Mininet emulator. Also, we use a machine learningmethod, Vector Machines (SVM) to detect DDoS attack. We proposeto install flows in switches, and we consider time attack pattern ofthe DDoS attack for detection. Simulation results show the effectsof DDoS attacks on the Ryu controller is reduced by 36% using ourdetection method.]]></ab></abstract>
		</profileDesc>
	</teiHeader>
	<text><body xmlns="http://www.tei-c.org/ns/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink">
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">INTRODUCTION</head><p>Software defined networking (SDN) has become widespread in the network research community and industry due to its characteristics such as scalability and flexibility. SDN creates a centralized control system to manage the overall network resources. In SDN, security has been the source of some concern <ref type="bibr">[1]</ref> - <ref type="bibr">[3]</ref>. Recent SDN-based security solutions are implemented at centralized controllers and their focus mostly are on increasing the control flexibility of SDN Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from permissions@acm.org. instead of strengthening the controller <ref type="bibr">[1]</ref> , <ref type="bibr">[4]</ref>. Existing SDN solutions are mainly based on specific aspects of network security. Most of them do not satisfy the general network security requirements <ref type="bibr">[12]</ref>. SDN is vulnerable to different types of attacks, such as spoofing, tampering, information disclosure, and distributed denial of service (DDoS) <ref type="bibr">[6]</ref>. Among these attacks, DDoS has the most devastating effect as it can cause service degradation of the SDN performance and further a lunching a DDoS attack is extremely simple. Increasing latency and dropping legitimate packets and, very big losses can caused degradation of the SDN performance <ref type="bibr">[7]</ref>, <ref type="bibr">[8]</ref>. Since in SDN, the switches have less intelligence they cannot detect the malicious flows. Therefore, it is more difficult to mitigate DDoS attack. In this case the controller cannot realize if the incoming packets are from attacker or from burst flows <ref type="bibr">[3]</ref> - <ref type="bibr">[8]</ref>. Many earlier solutions are based on defining rules for dropping malicious packets, blocking suspicious traffic, prioritizing scheduling and so on <ref type="bibr">[12]</ref>. These solutions may require some additional hardware or extra control packet, etc. Also, they are not cost effective <ref type="bibr">[3] [6]</ref>. In this work, first we implement a successful DDoS attack using Mininet emulator. Then, we show how adding some flows in the switches, reduce DDoS attack by 36%.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">METHODOLOGY</head><p>We use Python-based open source controller Ryu. Ryu supports various protocols. We simulate DDoS attack on SDN using Mininet emulator. Our topology consists four hosts, three switches and one controller (see Fig. <ref type="figure">1</ref>). Mininet creates SDN elements such as controller, switches, and hosts and can share them with the other networks. Ryu provides software components with well defined API. It is easy for developers to create new network management and control applications. In this work, we use a machine learning method (SVM) to detect the DDoS attack. First, we collect traffic data from the packet-in messages and extract some values, such as source IP address, source port, and destination IP address, destination port. We use entropy to measure the distribution of these values and train the model by normal and abnormal traffic data. By comparing with some other machine learning algorithms <ref type="bibr">[5]</ref>. We found that SVM is a better framework in terms of detecting the DDoS attack on Ryu SDN controller <ref type="bibr">[5]</ref>, <ref type="bibr">[7]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">IMPLEMENTATION</head><p>In order to simulate the DDoS attack in realistic traffic we use two different hosts and simulate the attacks from them. We used Mininet emulated virtual network which is installed on a virtual machine and it is connected with remote RYU controller running on another virtual machine. We wrote a script to generate normal traffic from 2 different hosts at random durations. To simulate malicious traffic, we use another script with randomly spoofed IPs with a high packet rate of 25 packets per second. Then, we use a machine learning technique to identify normal traffic and malicious traffic <ref type="bibr">[9]</ref>, <ref type="bibr">[10]</ref>. SVM is a learning algorithm that classifies incoming traffic patterns as normal or malicious. SVM supports multi-class classification. The idea is a multi-class problem is broken-down into binary problems. Then these classifiers are trained <ref type="bibr">[9]</ref>, <ref type="bibr">[11]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">DETECTION</head><p>We used SVM as a classifier to detect DDoS attacks. SVM has low false positive rates and it tries to maximize the margins by discovering a suitable hyperplane. It generates a precise classification and has a good accuracy <ref type="bibr">[3]</ref> - <ref type="bibr">[5]</ref>. Some existing research on DDoS attacks has been analyzed by extracting the flow status information <ref type="bibr">[10]</ref>, <ref type="bibr">[11]</ref>. In order to classify two different types of data (normal and malicious) some parameters such as "Speed of source IP", "Standard deviation of flow packets", "Standard deviation of flow bytes", "Speed of flow entries", "Ratio of pair flow entries" are used <ref type="bibr">[11]</ref>, <ref type="bibr">[10]</ref>. Figure <ref type="figure">2</ref> shows the throughput comparison for the cases with DDoS attack detection and without DDoS attack detection.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">MITIGATION</head><p>When the number of malicious packets start to increase exponentially in a certain time, then flow collector will notify the Ryu controller. In this case, the Ryu controller adds new rules to all forwarding devices. Based on these rules, all the forwarding devices send back all the malicious packets to the flow collector. Also we use time pattern of DDoS attack to prevent the DDoS attack.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="6">CONCLUSIONS</head><p>In this work, we implemented a SVM based solution for attack detection. We highlighted the important attributes that can be used in effectively detecting the DDoS attack in its early stages like the number of packets and time in seconds. Experiments with our prototype implementation showed the effect of attack detection. In the future, we plan to extend our work in improving feature correlation, traffic generation, and real-time performance.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="7">ACKNOWLEDGEMENT</head><p>This material is based upon work supported by the National Science Foundation under Grant No. CNS-1817105. </p></div></body>
		</text>
</TEI>
