{"id":9675,"date":"2016-01-29T16:01:44","date_gmt":"2016-01-29T14:01:44","guid":{"rendered":"http:\/\/blog.zhaw.ch\/icclab\/?p=9675"},"modified":"2016-12-12T11:24:27","modified_gmt":"2016-12-12T09:24:27","slug":"gui-for-netfloc","status":"publish","type":"post","link":"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/","title":{"rendered":"GUI for Netfloc &#8211; An OpenSource SDK for SDN"},"content":{"rendered":"<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">Inside the Software Defined Networking initiative we are developing a Software Development Kit for SDN, called Netfloc.<\/span><\/span><\/span><\/span><\/p>\n<p><strong><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">NET<\/span><\/span><\/span><\/span><\/strong><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">work\u00a0<\/span><\/span><\/span><\/span><strong><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">FLO<\/span><\/span><\/span><\/span><\/strong><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">ws for\u00a0<\/span><\/span><\/span><\/span><strong><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">C<\/span><\/span><\/span><\/span><\/strong><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">louds (Netfloc) is a programmable framework solution for software defined datacenter networks. It leverages network management by offering to the network developers a set of libraries packed as Java bundles for the OpenDaylight controller. Netfloc also exposes REST API abstractions and Java interfaces to enable optimal integration in cloud datacenters and customized end-to-end management of OpenFlow equipment. For references and current status, please feel free to visit the\u00a0<\/span><\/span><\/span><\/span><a href=\"http:\/\/icclab.github.io\/netfloc\/\"><span style=\"color: #1b8be0\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\"><u>Github repository.<\/u><\/span><\/span><\/span><\/span><\/a><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">\u00a0We will come back with a detailed post on the SDK very soon, so stay tuned.<\/span><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">And yes being the networking guys, we are mainly dealing with command line management in the whole process of development and testing. But only until to date, when we realized that\u00a0it is time to\u00a0think as well of\u00a0the UX side and start a design process for a graphical user interface (GUI) for Netfloc.<\/span><\/span><\/span><\/span><\/p>\n<p><!--more--><\/p>\n<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">The aim of the GUI is to not only make the SDK itself easy to use (display all relevant network data and topology), but also to expose the entire\u00a0set of APIs and functional features and make them accessible to the network application developers and datacenter service providers. The GUI will provide a visual representation of the complete networking topology: networking nodes, switches, links, respective OpenFlow identifiers etc., as well as the available libraries for developing a complete end-to-end solution. It will guide the user towards performing operations within the network in an easy and intuitive manner.\u00a0Since the GUI will be a modular component, adding new features will be done in an easy plug-n-play fashion.<\/span><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">To be aligned with the existing solutions on the market and with the open source community, we have observed the current GUIs for SDN SDKs to figure out the gaps and the requirements from a user perspective and potentially address them within the Netfloc GUI. Just to mention few, HP and Cisco have GUIs for their\u00a0<\/span><\/span><\/span><\/span><a href=\"http:\/\/www8.hp.com\/us\/en\/products\/oas\/product-detail.html?oid=5443917\"><span style=\"color: #1b8be0\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\"><u>HP VAN SDN<\/u><\/span><\/span><\/span><\/span><\/a><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">\u00a0and\u00a0<\/span><\/span><\/span><\/span><a href=\"http:\/\/www.cisco.com\/c\/en\/us\/products\/ios-nx-os-software\/onepk.html\"><span style=\"color: #1b8be0\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\"><u>onePK<\/u><\/span><\/span><\/span><\/span><span style=\"color: #1b8be0\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">\u00a0<\/span><\/span><\/span><\/span><\/a><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">SDN solutions respectively, while the EU project\u00a0<\/span><\/span><\/span><\/span><a href=\"http:\/\/www.netide.eu\/\"><span style=\"color: #1b8be0\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\"><u>netIDE<\/u><\/span><\/span><\/span><\/span><\/a><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">\u00a0has delivered an open source,\u00a0<\/span><\/span><\/span><\/span><a href=\"https:\/\/marketplace.eclipse.org\/content\/netide\"><span style=\"color: #1b8be0\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\"><u>Eclipse-integrated IDE<\/u><\/span><\/span><\/span><\/span><\/a><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">\u00a0for the development of SDN applications.<\/span><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">Figure 1 shows how the HP developed SDK\u2019s interface looks like. It helps to simply set up a developer environment and to create applications on the top of their own SDN controller (HP VAN SDN Controller). The design reminds a bit of the Openstack Dashboard in terms of simplistic tabular organization of the applications in the left menu, and a content representation of the currently selected application\/feature on the right.<\/span><\/span><\/span><\/span><\/p>\n<p align=\"center\"><a href=\"http:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/hp_sdk_gui.png\" rel=\"attachment wp-att-9667\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-9667 aligncenter\" src=\"http:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/hp_sdk_gui-300x239.png\" alt=\"hp_sdk_gui\" width=\"445\" height=\"358\" \/><\/a><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">[Fig 1 \u2013 HP VAN SDN Controller GUI]<\/span><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">The OpenDaylight GUI, Figure 2, looks quite similar to the one from HP and it is also a very good example on how our GUI could look like at the end, exposing the underlying network topology, the connections between the nodes and their assigned Open Flow identifiers.<\/span><\/span><\/span><\/span><\/p>\n<p align=\"center\"><a href=\"http:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/odl_gui.jpg\" rel=\"attachment wp-att-9668\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-9668 aligncenter\" src=\"http:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/odl_gui-300x225.jpg\" alt=\"odl_gui\" width=\"366\" height=\"278\" \/><\/a><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">[Fig 2 \u2013 OpenDaylight Dlux]<\/span><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">Although the final representation is very similar across solutions, the idea under the hood is different. The GUI we are working on is based on the Netfloc\u2019s native libraries and applications that are tightly coupled to the networking model and concepts offered in the SDK. We want to develop a dedicated GUI for Netfloc, but also to enable the addition of new extensions in a uniform manner.<\/span><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">From toolset for this development we use: HTML, CSS, JavaScript and\u00a0<\/span><\/span><\/span><\/span><a href=\"https:\/\/angularjs.org\/\"><span style=\"color: #1b8be0\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\"><u>Angularjs<\/u><\/span><\/span><\/span><\/span><\/a><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\"><strong>. <\/strong>AngularJS is a structural framework used for the development of dynamic Web applications. It is browser-based and works with any server technology. AngularJS can be used with HTML as a template language and its syntax can be extended to express the components of an application in a clear way. Due to\u00a0dependency injection and data binding, AngularJS is able to reduce a lot of the code you would otherwise have to write.<\/span><\/span><\/span><\/span><\/p>\n<p align=\"center\"><a href=\"http:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/netfloc_gui_diagram.png\" rel=\"attachment wp-att-9669\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-9669\" src=\"http:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/netfloc_gui_diagram-300x224.png\" alt=\"netfloc_gui_diagram\" width=\"452\" height=\"341\" \/><\/a><\/p>\n<p align=\"center\"><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">[Fig 3 \u2013 High level diagram of Netfloc SDK &amp; GUI ]<\/span><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">Figure 3 shows a diagram of the Netfloc components and their relations to the GUI. The top level navigation from the GUI will include a list of services offered as a final product solutions (ex. Service Function Chaining). Other view will be dedicated to the features such as: topology (including API specification and possibility to edit), connections, bridges etc. Log and monitoring status will be included in the management view. Bellow are listed some of the features currently offered by the SDK.<\/span><\/span><\/span><\/span><\/p>\n<p><strong><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">Services:\u00a0\u00a0<\/span><\/span><\/span><\/span><\/strong><\/p>\n<ul>\n<li><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">Service Function Chaining:<\/span><\/span><\/span><\/span><\/li>\n<\/ul>\n<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">The Service Function Chaining section will enable visual representation of the chain. In the same time it will offer to the end user a construction of a new chain by performing drag and drop of the virtual network function (NAT, firewall, traffic classifier, etc.) from the dedicated functions&#8217; toolbox.<\/span><\/span><\/span><\/span><\/p>\n<ul>\n<li><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">Chain Patterns:<\/span><\/span><\/span><\/span><\/li>\n<\/ul>\n<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">In the Chain Patterns section of the SFC service, the user will be offered the possibility to\u00a0<\/span><\/span><\/span><\/span><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\"><i>Create \/ Enable \/ Disable<\/i><\/span><\/span><\/span><\/span><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">\u00a0different chain patterns. Patterns are automatically applied to new service chains and generate the Open Flow messages for each of the bridges in the chain.<\/span><\/span><\/span><\/span><\/p>\n<p><strong><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">Connection:<\/span><\/span><\/span><\/span><\/strong><\/p>\n<ul>\n<li><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">Flow Path, Flow Patterns, Chain Patterns:<\/span><\/span><\/span><\/span><\/li>\n<\/ul>\n<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">For the connection based Flow paths, the GUI will offer sections to\u00a0<\/span><\/span><\/span><\/span><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\"><i>Enable \/ Disable<\/i><\/span><\/span><\/span><\/span><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">\u00a0Flow Paths and to\u00a0<\/span><\/span><\/span><\/span><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\"><i>Enable \/ Disable \/ Create<\/i><\/span><\/span><\/span><\/span><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">\u00a0Flow Patterns, and Chain Patterns.<\/span><\/span><\/span><\/span><\/p>\n<p><strong><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">Bridges:<\/span><\/span><\/span><\/span><\/strong><\/p>\n<ul>\n<li><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">Bridges, Bridge Patterns:<\/span><\/span><\/span><\/span><\/li>\n<\/ul>\n<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">The same as for the connections applies to the Bridge specific flows.<\/span><\/span><\/span><\/span><\/p>\n<p><strong><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">Topology:<\/span><\/span><\/span><\/span><\/strong><\/p>\n<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">The Topology section will show the current network topology of the selected service\u00a0with a detailed info of the network nodes,\u00a0links and ports.<\/span><\/span><\/span><\/span><\/p>\n<p><strong><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">Logs:<\/span><\/span><\/span><\/span><\/strong><\/p>\n<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">The Logs section will show specific log messages for the current status of the network components.<\/span><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #333333\"><span style=\"font-family: Helvetica Neue,serif\"><span style=\"font-size: medium\"><span lang=\"de-CH\">Follow us to know about the release of the GUI alpha version.<\/span><\/span><\/span><\/span><\/p>\n<div class=\"pt-sm\">Schlagw\u00f6rter: <a href=\"https:\/\/blog.zhaw.ch\/icclab\/tag\/data-center\/\">data center<\/a>, <a href=\"https:\/\/blog.zhaw.ch\/icclab\/tag\/gui\/\">GUI<\/a>, <a href=\"https:\/\/blog.zhaw.ch\/icclab\/tag\/netfloc\/\">netfloc<\/a>, <a href=\"https:\/\/blog.zhaw.ch\/icclab\/tag\/sdk\/\">sdk<\/a>, <a href=\"https:\/\/blog.zhaw.ch\/icclab\/tag\/sdk4sdn\/\">SDK4SDN<\/a>, <a href=\"https:\/\/blog.zhaw.ch\/icclab\/tag\/software-defined-networking\/\">software-defined networking<\/a><br><\/div>","protected":false},"excerpt":{"rendered":"<p>Inside the Software Defined Networking initiative we are developing a Software Development Kit for SDN, called Netfloc. NETwork\u00a0FLOws for\u00a0Clouds (Netfloc) is a programmable framework solution for software defined datacenter networks. It leverages network management by offering to the network developers a set of libraries packed as Java bundles for the OpenDaylight controller. Netfloc also exposes [&hellip;]<\/p>\n","protected":false},"author":232,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[1],"tags":[751,750,784,436,463,437],"features":[],"class_list":["post-9675","post","type-post","status-publish","format-standard","hentry","category-allgemein","tag-data-center","tag-gui","tag-netfloc","tag-sdk","tag-sdk4sdn","tag-software-defined-networking"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>GUI for Netfloc - An OpenSource SDK for SDN - Service Engineering (ICCLab &amp; SPLab)<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"GUI for Netfloc - An OpenSource SDK for SDN\" \/>\n<meta property=\"og:description\" content=\"Inside the Software Defined Networking initiative we are developing a Software Development Kit for SDN, called Netfloc. NETwork\u00a0FLOws for\u00a0Clouds (Netfloc) is a programmable framework solution for software defined datacenter networks. It leverages network management by offering to the network developers a set of libraries packed as Java bundles for the OpenDaylight controller. Netfloc also exposes [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/\" \/>\n<meta property=\"og:site_name\" content=\"Service Engineering (ICCLab &amp; SPLab)\" \/>\n<meta property=\"article:published_time\" content=\"2016-01-29T14:01:44+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2016-12-12T09:24:27+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/hp_sdk_gui-300x239.png\" \/>\n<meta name=\"author\" content=\"delv\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"delv\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/\"},\"author\":{\"name\":\"delv\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/0c2544d7c31f44ae2a35d698e49fa577\"},\"headline\":\"GUI for Netfloc &#8211; An OpenSource SDK for SDN\",\"datePublished\":\"2016-01-29T14:01:44+00:00\",\"dateModified\":\"2016-12-12T09:24:27+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/\"},\"wordCount\":942,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/hp_sdk_gui-300x239.png\",\"keywords\":[\"data center\",\"GUI\",\"netfloc\",\"sdk\",\"SDK4SDN\",\"software-defined networking\"],\"articleSection\":[\"*.*\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/\",\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/\",\"name\":\"GUI for Netfloc - An OpenSource SDK for SDN - Service Engineering (ICCLab &amp; SPLab)\",\"isPartOf\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/hp_sdk_gui-300x239.png\",\"datePublished\":\"2016-01-29T14:01:44+00:00\",\"dateModified\":\"2016-12-12T09:24:27+00:00\",\"author\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/0c2544d7c31f44ae2a35d698e49fa577\"},\"breadcrumb\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#primaryimage\",\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/hp_sdk_gui.png\",\"contentUrl\":\"https:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/hp_sdk_gui.png\",\"width\":619,\"height\":493},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Startseite\",\"item\":\"https:\/\/blog.zhaw.ch\/icclab\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"GUI for Netfloc &#8211; An OpenSource SDK for SDN\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#website\",\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/\",\"name\":\"Service Engineering (ICCLab &amp; SPLab)\",\"description\":\"A Blog of the ZHAW Zurich University of Applied Sciences\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.zhaw.ch\/icclab\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/0c2544d7c31f44ae2a35d698e49fa577\",\"name\":\"delv\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/a3e8b5fdf1eb00d722e4fc9baba2b3f493244010927a89700f51e7bcf1eaae59?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/a3e8b5fdf1eb00d722e4fc9baba2b3f493244010927a89700f51e7bcf1eaae59?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/a3e8b5fdf1eb00d722e4fc9baba2b3f493244010927a89700f51e7bcf1eaae59?s=96&d=mm&r=g\",\"caption\":\"delv\"},\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/author\/delv\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"GUI for Netfloc - An OpenSource SDK for SDN - Service Engineering (ICCLab &amp; SPLab)","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/","og_locale":"en_US","og_type":"article","og_title":"GUI for Netfloc - An OpenSource SDK for SDN","og_description":"Inside the Software Defined Networking initiative we are developing a Software Development Kit for SDN, called Netfloc. NETwork\u00a0FLOws for\u00a0Clouds (Netfloc) is a programmable framework solution for software defined datacenter networks. It leverages network management by offering to the network developers a set of libraries packed as Java bundles for the OpenDaylight controller. Netfloc also exposes [&hellip;]","og_url":"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/","og_site_name":"Service Engineering (ICCLab &amp; SPLab)","article_published_time":"2016-01-29T14:01:44+00:00","article_modified_time":"2016-12-12T09:24:27+00:00","og_image":[{"url":"http:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/hp_sdk_gui-300x239.png","type":"","width":"","height":""}],"author":"delv","twitter_card":"summary_large_image","twitter_misc":{"Written by":"delv","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#article","isPartOf":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/"},"author":{"name":"delv","@id":"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/0c2544d7c31f44ae2a35d698e49fa577"},"headline":"GUI for Netfloc &#8211; An OpenSource SDK for SDN","datePublished":"2016-01-29T14:01:44+00:00","dateModified":"2016-12-12T09:24:27+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/"},"wordCount":942,"commentCount":0,"image":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#primaryimage"},"thumbnailUrl":"http:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/hp_sdk_gui-300x239.png","keywords":["data center","GUI","netfloc","sdk","SDK4SDN","software-defined networking"],"articleSection":["*.*"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/","url":"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/","name":"GUI for Netfloc - An OpenSource SDK for SDN - Service Engineering (ICCLab &amp; SPLab)","isPartOf":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#primaryimage"},"image":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#primaryimage"},"thumbnailUrl":"http:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/hp_sdk_gui-300x239.png","datePublished":"2016-01-29T14:01:44+00:00","dateModified":"2016-12-12T09:24:27+00:00","author":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/0c2544d7c31f44ae2a35d698e49fa577"},"breadcrumb":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#primaryimage","url":"https:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/hp_sdk_gui.png","contentUrl":"https:\/\/blog.zhaw.ch\/icclab\/files\/2016\/01\/hp_sdk_gui.png","width":619,"height":493},{"@type":"BreadcrumbList","@id":"https:\/\/blog.zhaw.ch\/icclab\/gui-for-netfloc\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Startseite","item":"https:\/\/blog.zhaw.ch\/icclab\/"},{"@type":"ListItem","position":2,"name":"GUI for Netfloc &#8211; An OpenSource SDK for SDN"}]},{"@type":"WebSite","@id":"https:\/\/blog.zhaw.ch\/icclab\/#website","url":"https:\/\/blog.zhaw.ch\/icclab\/","name":"Service Engineering (ICCLab &amp; SPLab)","description":"A Blog of the ZHAW Zurich University of Applied Sciences","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.zhaw.ch\/icclab\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/0c2544d7c31f44ae2a35d698e49fa577","name":"delv","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/a3e8b5fdf1eb00d722e4fc9baba2b3f493244010927a89700f51e7bcf1eaae59?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/a3e8b5fdf1eb00d722e4fc9baba2b3f493244010927a89700f51e7bcf1eaae59?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a3e8b5fdf1eb00d722e4fc9baba2b3f493244010927a89700f51e7bcf1eaae59?s=96&d=mm&r=g","caption":"delv"},"url":"https:\/\/blog.zhaw.ch\/icclab\/author\/delv\/"}]}},"_links":{"self":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts\/9675","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/users\/232"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/comments?post=9675"}],"version-history":[{"count":7,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts\/9675\/revisions"}],"predecessor-version":[{"id":9683,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts\/9675\/revisions\/9683"}],"wp:attachment":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/media?parent=9675"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/categories?post=9675"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/tags?post=9675"},{"taxonomy":"features","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/features?post=9675"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}