<?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'>Journal of The Colloquium for Information SystemsSecurity Educatio</title></titleStmt>
			<publicationStmt>
				<publisher></publisher>
				<date>09/01/2020</date>
			</publicationStmt>
			<sourceDesc>
				<bibl> 
					<idno type="par_id">10206543</idno>
					<idno type="doi"></idno>
					<title level='j'>Journal of the Colloquium for Information System Security Education</title>
<idno>2641-4546</idno>
<biblScope unit="volume">7</biblScope>
<biblScope unit="issue">1</biblScope>					

					<author>Xiaohong Yuan</author><author>Zhipeng Liu</author><author>Younghee Park</author><author>Hongxin Hu</author><author>Hongda Li</author>
				</bibl>
			</sourceDesc>
		</fileDesc>
		<profileDesc>
			<abstract><ab><![CDATA[Software-Defined Networking (SDN) represents a major transition from traditional hardware-based networks to programmable software-based networks. While SDN brings visibility, elasticity, flexibility, and scalability, it also presents security challenges. This paper describes some of the hands-on labs we developed for teaching SDN security using the CloudLab platform. The hands-on labs have been used in a graduate level course on SDN/NFV related technologies. Our teaching experience of the hands-on labs is discussed. The hands-on labs can be adopted by other instructors to teach SDN security.]]></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>I. INTRODUCTION</head><p>Software Defined Network (SDN) offers a centralized, programmable and visible network that can dynamically evolve to the needs of businesses <ref type="bibr">[1]</ref>. In comparison to a traditional network, the distinctive characteristics of SDN include the separation of control plane and data plane, a centralized view embodied in a simplified device acting as a controller, virtualization of all functions within the network, and the openness to change <ref type="bibr">[2]</ref>. According to Google's report, the company has fully utilized its wide-area networks with SDN-based network management <ref type="bibr">[3]</ref>. SDN shares close affiliations with Network Function Virtualization (NFV). NFV offers abstractions of hardware as key network functionalities, such as firewall, network connections, and load balancing <ref type="bibr">[4]</ref>. Overwhelming management complexity, high costs, lack of scalability and slow market deployment rate are just a few notable drawbacks hardware-based network functions present <ref type="bibr">[5]</ref>. The concept of server-less, built on the basics of NFV, is an emerging new paradigm in virtualization and has already significantly changed the economics of offloading computations to the cloud <ref type="bibr">[6]</ref>.</p><p>Significant granularity, visibility, flexibility, and elasticity are definite advantages that SDN and NFV bring to networking, but new security challenges are identified as well <ref type="bibr">[5]</ref>. Several key security challenges in SDN have been identified and addressed, such as scanning attack prevention ( <ref type="bibr">[7]</ref>  <ref type="bibr">[8]</ref>), distributed denial-of-service (DDoS) attack detection <ref type="bibr">[9]</ref>, saturation attack mitigation ( <ref type="bibr">[10] [11]</ref>), topology poisoning attack prevention ( <ref type="bibr">[12]</ref> [13]), and Manin-the-Middle (MITM) attacks ( <ref type="bibr">[14] [15]</ref>).</p><p>The cloud platform has been an effective delivery approach for cybersecurity education. However, commercial cloud platforms, such as Amazon Web Services (AWS), are expensive and restrictive to certain security labs. To meet the high demands of cybersecurity educators, an open laboratory platform named CloudLab has been proposed to create hands-on labs in.</p><p>CloudLab is sponsored by the NSF for academic researchers to develop and experiment on new cloud architectures and new cloud computing applications <ref type="bibr">[5]</ref>. CloudLab provides easy-to-setup experimental environments created on the cloud for scientific research purposes on cloud computing. CloudLab is built upon a distributed infrastructure with clusters at three sites: Clemson University, University of Utah, and University of Wisconsin-Madison. CloudLab combines an estimate of 5,000 cores and 500 Terabytes of storage in the latest virtualization technology. For every connected node, CloudLab supports SDN technology such as 2x10 Gbps network interfaces. A 100 Gbps full-mesh SDN interconnect lets researchers instantiate a wide range of in-cluster experimental topologies.</p><p>CloudLab supports OpenFlow standard, which is an open standard protocol that organizes and monitors flows. CloudLab can be easily used in a two-step process: step 1create a user profile to encapsulate every resource component needed for the experiment (hardware, storage, network resources and software artifacts); and step 2 -instantiate the created profile to setup a virtualized experiment environment within a few minutes, when contrasted with traditional methods, this reduces request and wait times, as well as 979-8-6425-4896-7/20/$26.00 &#169;2020 CISSE redeployment time. A profile can also be shared to make it accessible to a broader group of people.</p><p>A distinct gap exists between explanations of emerging SDN and NFV technologies and university course curricula across the nation <ref type="bibr">[5]</ref>. This course introduces SDN and NFV, the attacks to the three main layers of SDN, and defense techniques shown in the current research. Students will complete hands-on labs that demonstrate the security issues of SDN/NFV and defense techniques.</p><p>The rest of the paper is organized as follows. Section II describes the labs used for this course. Section III describes how the course was managed and introduces our teaching methods. Section IV describes the teaching experience of this course. Section V concludes the paper. Labs 1, 2, 3, 4, 5, 6 were introduced and explicitly described in previous paper <ref type="bibr">[5]</ref>. Lab manuals can be found online <ref type="bibr">[30]</ref>. Labs 7, 8, and 9 are described below:</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A. Lab 7 MITM Attack with Flow Rule Manipulation</head><p>&#8226; Lab Description: The controller is responsible for flow settings in switches so that all flow processing in the data-path is based on instructions from the controller. The controller then sets the flow rules in switch flow tables to either forward the flow packets to a particular port or drop packets coming from that particular source. The flow rules change depending on different network topologies, various user requests, and network protocols. This lab demonstrates how an user/attacker can modify flow rules using static flow pusher.  &#8226; Learning Objectives: The students will be able to conduct a MITM attack through simple flow rule manipulation through the Representational State Transfer (REST) API.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B. Lab 8 FlowVisor</head><p>Lab Description: FlowVisor is a special purpose OpenFlow controller that acts as a transparent proxy between OpenFlow switches and multiple OpenFlow controllers. FlowVisor creates rich slices of network resources and delegates control of each slice to a different controller. Slices can be defined by any combination of switch ports (layer 1), src/ dst ethernet address or type (layer 2), src/dst IP address or type (layer 3), and src/dst TCP/ UDP port or ICMP code/type (layer 4). FlowVisor enforces isolation between each slice, i.e., one slice cannot control another's traffic. A slice is also a flow rule.</p><p>&#8226; Learning Outcomes: Students will be able to write flow rules to slice an OpenFlow network and have each slice be controlled by a separate controller.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>C. Lab 9 Resolve Conflicting Flows</head><p>&#8226; Lab Description: The switch acts as the first line of filter for flows (a series of packets behaving the same way) in the data plane of SDN before the flows are allowed to be forwarded to the controller in the control plane. However, if conflicting flows occur frequently and switch is unable to respond, the flows are forwarded to controller and remain idle for the duration of the connection, this may lead to potential serious DoS attacks. This lab demonstrates how to resolve such conflicts with priority approach.  &#8226; Learning Outcomes: Students will be able to identify conflicting rules and segregate flows to ensure data packets are received by the intended users. Students will apply the rule priority approach to resolve flow conflicts and applying the common OpenFlow parameters.</p><p>III. COURSE ON SDN SECURITY This course was taught as a special topic graduate level course entitled "Advanced Security for Emerging Networks" at North Carolina A&amp;T State University in the Spring 2019 semester. This course held face-to-face meetings twice a week. Fifteen students enrolled in the class.</p><p>Upon completion of this course, we expect students to be able to:</p><p>&#8226; Explain the key components of SDN/NFV architecture and concepts</p><p>&#8226; Explain the major security issues in different layers of SDN/NFV</p><p>&#8226; Identify defense techniques for attacks to SDN/NFV</p><p>&#8226; Conduct research, and give presentations/tutorials on their research</p><p>&#8226; Conduct implementation-oriented hands-on labs related to SDN/NFV security Almost every week of the semester, the students were asked to complete one of the nine listed labs. The students were then graded on completion of the lab. Each student submitted their work in the form of either screenshots or video recordings. Each student selected a SDN/NFV-related topic and developed a lab exercise that pertains to the topic. Each student was to present their final project in an approximate 10-minute span. The final projects were assessed based on the students' presentation skills, knowledge base, critical thinking and overall impressions. Then students were given a lab survey and a course survey. The results of labs and surveys are discussed in the next section.</p><p>This course was designed in seminar style, executed through guided inquiry collaborative learning ( <ref type="bibr">[20] [21]</ref>). Each student was assigned to prepare materials to either teach one or several chapters of the selected textbook <ref type="bibr">[22]</ref> or teach and demonstrate a lab. This style requires students to study, prepare and have adequate knowledge of the subject, as a result the students enhance their teaching skills while stimulating their fellow students to actively participate in discussions ( <ref type="bibr">[16] [17]</ref>). The students demonstrated creativity and utilized many teaching methods and tools, including gamification tools such as Plickers, Kahoot, and multimedia tools such as YouTube videos and PowerPoint slides. Past research has indicated that the use of gamification tools significantly adds to project-based learning <ref type="bibr">[18]</ref>. One student taught the class using a method similar to POGIL teaching. The student created the teaching material as handouts. Students first had to read material to build up knowledge, then discussed in groups before finally answering the assessment questions from the handouts. The mixing of these teaching methods increased learner's motivation, enhanced understanding of technical content and brought an upbeat atmosphere. Previous research shows that the use of gamification tools allow faculty to clearly identify whether the students have successfully mastered the concepts and allow instructors to further structure peer-to-peer active learning more effectively in class <ref type="bibr">[19]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>IV. TEACHING EXPERIENCE</head><p>An anonymous student survey and a questionnaire on student reflection was conducted on the course module. This section presents some details from the results.</p><p>The survey results are shown in Table <ref type="table">I</ref>.</p><p>A total of twelve students participated in the survey. Students' self-ranking on knowledge attained in learning objectives for the labs showed that eighty-three-point four percent (83.4%) strongly agreed or agreed that the learning objectives of the labs are met. The majority of labs requires working in terminal on Linux, which 100% of students responded that they have strong familiarity.</p><p>Even though eighty-three percent (83%) of students believe labs are somewhat difficult, seventy-five percent (75%) of students believe that they are more interested in computer security after taking this course. Seventy-five percent (75%) students expressed having either high or very high interests in the labs. Almost 70% of class was very motivated to learn the labs. Almost 100% of the students 979-8-6425-4896-7/20/$26.00 &#169;2020 CISSE found that the hands-on learning aspect of the class was the most valuable to their learning. Majority of students also commented they wish to apply the knowledge learned in this course to their own research areas. One hundred percent (100%) of students recognized SDN and NFV as easy to deploy and advantageous to any other methods they've experienced using. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>66.67% 25%</head><p>The lab instructions were clear.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>41.67% 25%</head><p>The labs are somewhat difficult. 33.33 41.67%</p><p>I clearly understand the objectives of the labs.</p><p>33.3% 66.7%</p><p>The labs were a valuable part of this course.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>25% 75%</head><p>Approximately, I spent more than an average of 5 hours on each lab. 50% 16.66%</p><p>The most time-consuming part of the labs is instantiating and prerequisite installations.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>83.37%</head><p>A result of the labs, I am more interested in computer security</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>83.37%</head><p>When answering the question "What changes could be made to the labs to enhance your learning," some students said that they expected to learn more mitigation methods for the problems posed by the labs, while some wished to have more demo videos available when they attempted the labs. When answering to the question "The most important thing learned from the lab experience," the class reached a consensus by identifying "learning SDN, NFV and many methods and tools to simulate attack and explore" as the most important learning outcome.</p><p>The class created several interesting labs, the following is a listing of several topics.</p><p>&#8226; Project 1 SDN controller NOX/POX Lab -introduce the basic steps in developing net apps using OpenFlow framework on NOX controller.</p><p>&#8226; This is a lab exercise that is split into two parts.</p><p>&#8226; Part 1 Description: In first half of the lab, the student will explore Round Robin load balancer for a VNF Snort application. Snort will be running as IDS on VNF1 and VNF2 and student will try to balance the load across the two VNF instances by directing each new flow request to one of the two VNF instances in a round robin fashion. Student will use the Netcat application to generate traffic between a source and destination.</p><p>&#8226; Part 2 Description: In second part of the lab, student will use a Proportional Integral approach to do load balancing. An overview of the system is shown in Fig. <ref type="figure">3</ref>. In this approach, the load on VNF1 and VNF2 is monitored, and flow-forwarding decisions are made based on the load information retrieved from the hosting VMs. Student will run a RINA distributed application to get the state (load) of the VNFs to the controller VM. Once the Ryu controller has the IDS load information, it will use the Proportional Integral (PI) load balancer to balance the load across the VNF instances based on the load information. This load balancing information is then provided to the Ryu controller, which updates the OpenFlow rules on the OVS switch to balance the load.</p><p>979-8-6425-4896-7/20/$26.00 &#169;2020 CISSE &#8226; Learning Outcomes: Students will identify and learn two load-balancing approaches while utilizing NFV. Students will also be able to slice network using RYU controller and apply various API packages such as SNORT, LUAJIT, GHTTP2, DAQ and RINA.</p><p>When asked to "Describe how your experience with teaching a topic in this class helped you identify and develop professional qualities and skills" in the student reflection questionnaire, one student answered this way: V. CONCLUSION This paper describes a course designed to teach students about SDN security knowledge through hands-on labs in CloudLab, and how the SDN related security vulnerabilities can be exploited. The course consists of nine hands-on lab exercises simulating various attacks as well as delivering core foundation knowledge. Students learn and apply the concepts to NFV and the three main layers of SDN. Students were also asked to apply the acquired knowledge and create new labs. Student were required to present course topics under the supervision of the course instructor.</p><p>The course was taught in the Spring 2019 semester. Our teaching experience showed that students were highly interested in labs and ended the course with more interest in computer security. The hands-on labs on SDN security taught in this course may be adopted by instructors teaching network security, web security, and network functions.</p><p>Since students from the current course designed new labs for the subject, these labs may be included as part of the course in the future. More sophisticated labs can also be introduced for the course. Potential subjects that can be taught in the course are serverless <ref type="bibr">[6]</ref>, lightweight virtualization <ref type="bibr">[28]</ref>, and IoT management <ref type="bibr">[29]</ref>.</p></div></body>
		</text>
</TEI>
