Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Defined Networking and Dijkstra’s Algorithm

Similar presentations


Presentation on theme: "Software Defined Networking and Dijkstra’s Algorithm"— Presentation transcript:

1 Software Defined Networking and Dijkstra’s Algorithm
Presented by Prof. Jehn-Ruey Jiang Department of Computer Science & Information Engineering National Central University October 24, 2014

2 Outline Software-Defined Networking (SDN) Overview History OpenFlow
Google’s WAN B4 Languages Simulators and Emulators Extended Dijkstra’s Algorithm Dijkstra’s Algorithm Applications Simulations Summary

3 Outline Software-Defined Networking (SDN) Overview History OpenFlow
Google’s WAN B4 Languages Simulators and Emulators Extended Dijkstra’s Algorithm Dijkstra’s Algorithm Applications Simulations Summary

4 The Megatrend in the Computer Industry
App Specialized Applications Linux Mac OS Windows (OS) or Open Interface Specialized Operating System Microprocessor Open Interface Specialized Hardware Some slides are adapted from those of Dr. Jennifer Rexford and Dr. Shie-Yuan Wang Vertically integrated Closed, proprietary Slow innovation Small industry Horizontal Open interfaces Rapid innovation Huge industry Source: Dr. Jennifer Rexford’s presentation

5 The Same Trend in the Network Industry?
App Specialized Features Control Plane or Open Interface Specialized Control Plane Merchant Switching Chips Open Interface Specialized Hardware Horizontal Open interfaces Rapid innovation Vertically integrated Closed, proprietary Slow innovation Source: Dr. Jennifer Rexford’s presentation

6 Software-Defined Networking (SDN)
App (e.g., network virtualization) App (e.g., network management) Northbound API Controller (e.g., NOX/POX, Floodlight, etc.) Southbound API (OpenFlow) Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Source: Dr. Shie-Yuan Wang’s Presentation

7 Outline Software-Defined Networking (SDN) Overview History OpenFlow
Google’s WAN B4 Languages Simulators and Emulators Extended Dijkstra’s Algorithm Dijkstra’s Algorithm Applications Simulations Summary

8 Software Defined Networking History
~2004: Research on new management paradigms RCP, 4D [Princeton, CMU,….] SANE, Ethane [Stanford/Berkeley] 2008: Software-Defined Networking (SDN) NOX Network Operating System [Nicira] Open Flow switch interface [Stanford/ Nicira] 2011: Open Networking Foundation Board: Google, Yahoo, Verizon, DT, Microsoft, Facebook, NTT Members: Cisco, Juniper, HP, Dell, Broadcom, IBM,….. Current Google is using SDN in its private WAN B4 Many commercialized SDN products RCP: routing control platform 4D: 4 planes  decision, dissemination, discovery, data SANE: 理智的、健全的Secured Architecture for the Networked Enterprise Ethane: ethane 美[‘ɛθen]n. [有化] 乙烷 A clean-slate approach to managing and securing enterprise networks slate 美[slet]n. 板岩;石板;蓝色;石片Clean Slate Design for the Internet (重新發明Internet) Nicira was a company focused on software-defined networking (SDN) and network virtualization. It was founded in 2007 by Martin Casado,Nick McKeown and Scott Shenker. Nicira created their own proprietary versions of the OpenFlow, Open vSwitch, and OpenStack networking projects.[1] On July 23, 2012, VMware announced they intended to acquire Nicira for $1.26 billion,[2] a deal which closed the following month. (Verizon Communications,NYSE:VZ),是美國一家主要電信公司,全球領先的寬頻和電信服務提供商,道瓊斯30種工業平均指數組成之一。 威訊通訊的前身是「大西洋貝爾」,1983年AT&T分拆的七個小貝爾"Baby Bells"之一。 並改名為現在的「威訊」(Verizon)。「Verizon」是由兩個詞合成:前半部分來自「veritas」(真確),後半部分來自「horizon」(地平線)。 開放網路基金會(英語:Open Networking Foundation,縮寫為 ONF),一個非盈利性的產業聯盟,成員包括德國電信、Facebook、Google、微軟、威訊通信與Yahoo!。其宗旨在於推動軟體定義網路,以促進網際網路的進步。 DT:德國電信 Deutsche Telekom AG,FWB:DTE),是一家由國有德國聯邦郵政私有化後的電信部門分離出來的股份公司(AG)。德意志聯邦共和國直接持有31%的股份,另外通過德國重建信貸銀行(Kreditanstalt für Wiederaufbau,KfW)間接持有12%的股份。剩餘的57%的股份(至2003年6月)為公開發行股票。 NTT: Nippon Telegraph and Telephone Corporation日本電信電話株式会社 Source: Dr. Marco Cello’s presentation

9 Software Defined Networking History
Nick McKeown Biography Born in Bedford, England on April 7, 1963 Obtained bachelor's degree from the University of Leeds in 1986 Obtained master's degree in 1992 and PhD in 1995 from the University of California at Berkeley Became faculty director of the Clean Slate Program at Stanford University in 2006 Casado, McKeown and Shenker co-founded Nicira Networks in 2007 McKeown and Shenker co-founded the Open Networking Foundation (ONF) in 2011 Nicira was acquired by VMWare for $1.26 billion in July 2012 Source:

10 Open Networking Foundation
The Open Networking Foundation (ONF) is a nonprofit organization, founded by Deutsche Telekom, Facebook, Google, Microsoft, Verizon, and Yahoo! on March 21, 2011. Its purpose is to improve networking through software-defined networking (SDN) and standardizing the OpenFlow protocol and related technologies. 成立於2011年,ONF是一個以用戶為發展導向的非營利組織,發起成員企業包括了德意志電信、Google、微軟(Microsoft)、Facebook、Verizon、雅虎(Yahoo),主要在於針對下一代網路架構進行研究、發展、拓展,以SDN為主軸 OpenFlow ONF 所推展,並主導以使用OpenFlow為controller的架構標準。ONF有100多個會員以上,成員包括服務提供者、大型網路設備商和初創企業。採用ONF的 SDN架構最主要優點,在於它有行業標準之通信協定OpenFlow,以及眾多的供應商支援SDN方法的核心技術是OpenFlow 以規範網路交換器和控制器之間的溝通協議。 在ONF裡所謂的「用戶」,廣義來講當然是所有的網路使用者;但由於SDN目前仍在推廣階段,影響層面還不廣泛。為了釐清其影響層面,需狹義解釋何謂「SDN用戶」,包括:網路設備、內容、軟硬體及服務供應商等網路生態系統成員。對於一般消費者而言,目前還難以感受到SDN的影響及與現有網路運作方式的差別;而真正能感受到影響的,則是日常業務需要管理網路、相關設備,及在網路提供各式應用、內容及服務的業者。 https://www.opennetworking.org/

11 Open Networking Foundation Member Listing
https://www.opennetworking.org/membership/member-listing

12 Outline Software-Defined Networking (SDN) Overview History OpenFlow
Google’s WAN B4 Languages Simulators and Emulators Extended Dijkstra’s Algorithm Dijkstra’s Algorithm Applications Simulations Summary

13 Source: Open Networking Foundation What paper, 2012
SDN Architecture Source: Open Networking Foundation What paper, 2012

14 OpenFlow Controller & Switch
Source: Open Networking Foundation What paper, 2012

15 Source: Dr. McKeown’s presentation
Flow Table Entry Rule Action Statistics Packet + byte counters Forward packet to port(s) Encapsulate and forward to controller Drop packet Send to normal processing pipeline Switch In Port MAC src MAC dst Eth type VLAN ID IP Src IP Dst IP Prot TCP sport TCP dport Source: Dr. McKeown’s presentation

16 Flow Table Process Example
A Mei e-Gate 已機場為Flow Table Process的例子 機場(SDN網路)有自動通關系統(Switch),Jessica(Packet)第一次出國通關系統不認識她因此請她去找服務人員(Controller)申請,申請後在系統中有她的資料(Flow Table),因此她在通過時Match到其中一個entry因此放她通行

17 Flow Table Process Example (cont.)
A Mei Name Attribute ……. A Mei Interorbital Width Mouth size Jessica Iris ... XXX·XXX XXX·XX 已機場為Flow Table Process的例子 機場(SDN網路)有自動通關系統(Switch),Jessica(Packet)第一次出國通關系統不認識她因此請她去找服務人員(Controller)申請,申請後在系統中有她的資料(Flow Table),因此她在通過時Match到其中一個entry因此放她通行

18 Flow Table Process Example (cont.)
Name Attribute ……. A Mei Interorbital Width Mouth size Jessica Iris ... XXX·XXX XXX·XX A Mei e-Gate 已機場為Flow Table Process的例子 機場(SDN網路)有自動通關系統(Switch),Jessica(Packet)第一次出國通關系統不認識她因此請她去找服務人員(Controller)申請,申請後在系統中有她的資料(Flow Table),因此她在通過時Match到其中一個entry因此放她通行

19 Flow Table Process

20 OpenFlow Versions 2009 Published OpenFlow Switch Specification 1.0 – Dec. 31 2011 Published OpenFlow Switch Specification 1.1 – Feb. 28 Published OpenFlow Switch Specification 1.2 – Dec. 5 2012 Published OpenFlow Switch Specification – Jun. 25 The OpenFlow 1.3.X is Long Term Support Vision (LTS Vision) Published OpenFlow Switch Specification – Sep. 6 2013 Published OpenFlow Switch Specification – Apr. 25 Published OpenFlow Switch Specification – Sep. 27 Published OpenFlow Switch Specification 1.4 – Oct. 14 2014 Published OpenFlow Switch Specification – Mar. 27 OpenFlow Switch Specification 1.5 to be published at the end of 2014

21 SDN Controllers

22 Comparison Among The Controllers
R. Khondoker, A. Zaalouk, R. Marx, K. Bayarou, “Feature-based Comparison and Selection of Software Defined Networking (SDN) Controllers,” In Computer Applications and Information Systems (WCCAIS), IEEE, 2014

23 Outline Software-Defined Networking (SDN) Overview History OpenFlow
Google’s WAN B4 Languages Simulators and Emulators Extended Dijkstra’s Algorithm Dijkstra’s Algorithm Applications Simulations Summary

24 Google Search Gmail Google Plus Chrome Google Drive Google map

25 Google Networks Scales
User base World population: billion people (June’08, US Census est.) Internet Users: billion (>20%) (June’08 Nielsen/ITU) Google Search: More than Billion Searches Every Day Geographical Distribution Google services are worldwide: over 55 countries and 112 languages Data Growth Web expands/changes: billions of new/modified pages every month Every few hours Google craw/refresh more than entire Library of Congress YouTube gains over 131,518,242,460 hours of video every minute, 4+ billion views every day Latency Challenge Speed of Light in glass: 2 x 10^8 m/s = 2,000 km/10ms “Blink of an eye response” = 100 ms The statistics are from Google company

26 ATLAS 2010 Traffic Report A tier 1 network is an Internet Protocol (IP) network that participates in the Internet solely via settlement-free interconnection, also known as settlement-free peering. The original Internet backbone was the ARPANET when it provided the routing between most participating networks. It was replaced in 1989 with the NSFNet backbone. The Internet could be defined as the collection of all networks connected and able to interchange Internet Protocol datagrams with this backbone Posted on Monday, October 25th, 2010| Bookmark on del.icio.us “Google Sets New Internet Traffic Record,”by Craig Labovitz

27 Google’s WAN B4 Using Software Defined Networking (SDN) principles
Using OpenFlow Supporting standard routing protocols Centralized Traffic Engineering (TE) S. Jain, et. al., “B4, Experience with a Globally-Deployed Software Defined WAN,” ACM SIGCOMM conference, 2013

28 Google’s WAN B4 (cont.) Traditional WAN Routing
Treat all bits the same 30% ~ 40% average utilization Centralized Traffic Engineering (TE) Drive links to near 100% utilization Fast, global convergence for failures

29 B4 Sample Utilization The statistics are from Google company

30 Google’s WAN B4 History The statistics are from Google company

31 Outline Software-Defined Networking (SDN) Overview History OpenFlow
Google’s WAN B4 Languages Simulators and Emulators Extended Dijkstra’s Algorithm Dijkstra’s Algorithm Applications Simulations Summary

32 Frenetic Frenetic is introduced as a high-level language to program the controller to manage switches in the SDN network .

33 Pyretic Based on Frenetic and Python, Pyretic is introduced as an SDN programming language or platform that raises the level of abstraction . Python + Frenetic = Pyretic Pyretic

34 Pyretic (cont.) It allows programmers to focus on how to specify a network policy at high-level abstraction. Pyretic hides low-level details by allowing programmers to express policies as compact, abstract functions that take a packet as input, and return a set of new packets.

35 Outline Software-Defined Networking (SDN) Overview History OpenFlow
Google’s WAN B4 Languages Simulators and Emulators Extended Dijkstra’s Algorithm Dijkstra’s Algorithm Applications Simulations Summary

36 Mininet Mininet is an open source network emulator that supports the OpenFlow protocol for the SDN architecture. It is one of the most popular tools used by the SDN research community.

37 Mininet Features It's fast - starting up a simple network takes just a few seconds. This means that your run-edit-debug loop can be very quick. You can create custom topologies: a single switch, larger Internet-like topologies, the Stanford backbone, a data center, or anything else. You can run real programs: anything that runs on Linux is available for you to run, from web servers to TCP window monitoring tools to Wireshark.

38 Mininet Features (cont.)
You can run Mininet on your laptop, on a server, in a VM, on a native Linux box (Mininet is included with Ubuntu !), or in the cloud (e.g. Amazon EC2.) You can share and replicate results: anyone with a computer can run your code once you've packaged it up. Mininet is an open source project, so you are encouraged to examine its source code on https://github.com/mininet, modify it, fix bugs, file issues/feature requests, and submit patches/pull requests. GitHub -https://github.com/mininet/mininet/wiki/Introduction-to-Mininet

39 EstiNet Simulator/Emulator
EstiNet combines the advantages of both the simulation and emulation approaches without their respective shortcomings. EstiNet uses tunnel network interfaces to automatically intercept the packets exchanged by two real applications and redirect them into the EstiNet simulation engine.

40 EstiNet Simulator/Emulator (cont.)
EstiNet’s GUI can be used to easily set up and configure a simulation case and be used to observe the packet playback of a simulation run.

41 A Comparison of Network Simulators
Shie-Yuan Wang, Chih-Liang Chou, Chun-Ming Yang,” EstiNet OpenFlow Network Simulator and Emulator,”  IEEE Communications Magazine, 2013

42 Outline Software-Defined Networking (SDN) Overview History OpenFlow
Google’s WAN B4 Languages Simulators and Emulators Extended Dijkstra’s Algorithm Dijkstra’s Algorithm Applications Simulations Summary

43 Edsger Wybe Dijkstra Dijkstra was born in Rotterdam, Netherlands.
He received the 1972 Turing Award for fundamental contributions to developing programming languages. In 2002, he received the ACM PODC Influential Paper Award in distributed computing for his work on self-stabilization of program computation. This annual award was renamed the Dijkstra Prize the following year, in his honor. Dijkstra 1930出生,他的父親是一位化學家,母親是一位數學家,這個家庭充滿者科學家的氣息,這對他的整個人生影響非常大,而他獲得了很多獎項而且在計算機科學界有很大的貢獻。 圖:http://en.wikipedia.org/wiki/Edsger_W._Dijkstra (1930~2002)

44 Dijkstra’s shortest path algorithm
is a 20-mimute invention while drinking coffee “One morning I was shopping in Amsterdam with my young fiancée, and tired, we sat down on the café terrace to drink a cup of coffee and I was just thinking about whether I could do this, and I then designed the algorithm for the shortest path. As I said, it was a 20-minute invention. In fact, it was published in 1959, three years later.” Thomas J. Misa (Editor), "An Interview with Edsger W. Dijkstra," Communications of the ACM 53 (8): 41–47, 2010.

45 Dijkstra's Algorithm Conceived by computer scientist Edsger Dijkstra in 1956, published in 1959, is a graph search algorithm. Solves the single-source all-destination shortest path problem for a graph with non-negative edge path costs, producing a shortest path tree. This algorithm is often used in routing and as a subroutine in other graph algorithms.

46 Outline Software-Defined Networking (SDN) Overview History OpenFlow
Google’s WAN B4 Languages Simulators and Emulators Extended Dijkstra’s Algorithm Dijkstra’s Algorithm Applications Simulations Summary

47 Extending Dijkstra’s Algorithm

48 Node Weight & Edge Weight
The node weight nw[v] of v is defined according to Eq. (1) The edge weight ew[e] of e is defined according to Eq. (2).

49 Outline Software-Defined Networking (SDN) Overview History OpenFlow
Google’s WAN B4 Languages Simulators and Emulators Extended Dijkstra’s Algorithm Dijkstra’s Algorithm Applications Simulations Summary

50 End-to-End Routing

51 Multicast

52 Load Balancing Load Balancer
OpenFlow Controller Openvswitch Server Hosts Load Balancer 1.0)_--_Configuring_Server_Load_Balancing

53 Outline Software-Defined Networking (SDN) Overview History OpenFlow
Google’s WAN B4 Languages Simulators and Emulators Extended Dijkstra’s Algorithm Dijkstra’s Algorithm Applications Simulations Summary

54 The Abilene Network Core Topology
The Abilene network is a high-performance backbone network suggested by the Internet2 project in the late 1990s. It connects 11 regional sites or nodes across the United States. It has 10 Gbps connectivity between neighboring nodes and 100 Mbps connectivity between a host and a node. Abilene Network was a high-performance backbone network created by the Internet2 community in the late 1990s. In 2007 the Abilene Network was retired and the upgraded network became known as the "Internet2 Network“ Historical Abilene Connection Traffic Statistics, last accessed in March 2014.

55 Simulation Settings for Routing
Setting up the Abilene topology in Mininet for routing from the green client to the red client

56 Simulation Settings for Routing (cont.)
We use Iperf as a testing tool to generate TCP data streams in our simulation. The testing time for every testing case is 1000 seconds. The Iperf tool reports the average TCP bandwidth between a client and the server, and we use the packet size of 53 bytes to derive the average end-to-end latency.

57 Simulation Results for Routing

58 Simulation Setting for Multicasting
Topology Setting

59 Simulation Settings for Multicasting (cont.)
Parameter Setting Number of controller 1   Number of switches 11 Number of publisher 1 Number of subscribers 12 Number of edges 25 Controller POX 2.0 supporting Pyretic OpenFlow switch Open vSwitch 1.0 Testing tool Iperf Testing time per case 30 sec

60 Simulation Results for Multicasting
The BFST

61 Simulation Results for Multicasting (cont.)
The DSPT

62 Simulation Results for Multicasting (cont.)
The EDSPT parent 4 6 5 2 11 10 child 1 3 7 8 9

63 Simulation Results for Multicasting (cont.)
Throughput

64 Simulation Results for Multicasting (cont.)
Average Throughput

65 Simulation Settings for Load-Balancing
OpenFlow Controller Openvswitch Server Hosts

66 Simulation Settings for Load-Balancing (cont.)
Parameter Setting Bandwidth on edges 1 Gbps Number of server 2 Number of switches 11 Number of edges 25 Controller POX 2.0 supporting Pyretic Openflow Switch Open vSwitch 1.0 Testing tool Iperf, Netperf Testing time 30 sec

67 Simulation Results for Load-Balancing
End-to-End Latency

68 Simulation Results for Load-Balancing (cont.)
Response Time

69 Simulation Results for Load-Balancing (cont.)
Total Transactions to Servers

70 Simulation Results for Load-Balancing (cont.)
Variation Loads on Server

71 Outline Software-Defined Networking (SDN) Overview History OpenFlow
Google’s WAN B4 Languages Simulators and Emulators Extended Dijkstra’s Algorithm Dijkstra’s Algorithm Applications Simulations Summary

72 Summary We have introduced the SDN concept and its related technologies. We have shown how to apply the extended Dijkstra’s algorithm to SDN-based end-to-end routing, multicasting and load-balancing.

73 Related Publication Jehn-Ruey Jiang, Hsin-Wen Huang, Ji-Hau Liao, and Szu-Yuan Chen, “Extending Dijkstra’s Shortest Path Algorithm for Software Defined Networking,” in Proc. of the 16th Asia-Pacific Network Operations and Management Symposium (APNOMS 2014), 2014. Jehn-Ruey Jiang, Widhi Yahya, and Mahardeka Tri Ananta, “Load Balancing and Multicasting Using the Extended Dijkstra’s Algorithm in Software Defined Networking,” in Proc. of the International Computer Symposium 2014 (ICS 2014), 2014.

74 Thank You!


Download ppt "Software Defined Networking and Dijkstra’s Algorithm"

Similar presentations


Ads by Google