-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathindex.html
More file actions
157 lines (127 loc) · 6.66 KB
/
index.html
File metadata and controls
157 lines (127 loc) · 6.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<title>OpenState SDN Project</title>
<link rel="stylesheet" href="stylesheets/styles.css">
<link rel="stylesheet" href="stylesheets/pygment_trac.css">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
</head>
<body>
<div class="wrapper">
<header>
<h1>OpenState SDN</h1>
<p></p>
<p class="view"><a href="https://github.com/OpenState-SDN">View My GitHub Profile</a></p>
</header>
<section>
<h2>
<a name="welcome-to-openstate-sdn-project" class="anchor" href="#welcome-to-openstate-sdn-project"><span class="octicon octicon-link"></span></a>Welcome to OpenState SDN project.</h2>
<p>OpenState is a research effort focused in the development of a stateful data plane API for Software-Defined Networking. We propose an extension to current OpenFlow abstraction that use state machines implemented inside switches to reduce the need to rely on remote controllers. To know more about our project you can read our first paper:</p>
<blockquote>
<p>G. Bianchi, M. Bonola, A. Capone, and C. Cascone, “OpenState: Programming Platform-independent Stateful OpenFlow Applications Inside the Switch” ACM SIGCOMM Computer Communication Review, vol. 44, no. 2, pp. 44–51, 2014. <a href="pub/openstate-ccr.pdf">[PDF]</a> <a href="pub/openstate-ccr.bib">[BibTex]</a>.</p>
</blockquote>
<h4>Presentations:</h4>
<ul>
<li>July 6, 2015 - <a href="pub/ECOOP2015-OpenState-short-tutorial.pdf">Short tutorial @ ECOOP 2015 (NetPL)</a></li>
<li>June 17, 2015 - <a href="pub/openstate-sosr2015.pdf" target="_blank">OpenState demo @ ONS/SOSR 2015</a> (<a href="pub/openstate-sosr2015-abstract.pdf" target="_blank">abstract</a>)</li>
<li>April 13, 2015 - <a href="http://www.beba-project.eu/presentations/SDN-tutorial-NETSOFT-v4.pdf" target="_blank">Tutorial on SDN data plane evolution @ NetSoft 2015</a></li>
<li>April 13, 2015 - <a href="http://www.beba-project.eu/presentations/2015-openstate-live-demo.pdf" target="_blank">OpenState demo @ NetSoft 2015</a></li>
</ul>
<h4>Protocol specification (beta)</h4>
<p><a href="https://github.com/OpenState-SDN/openstate-spec/releases">Click here</a> to download the OpenState specification (OpenFlow 1.3 Experimenter extension) in PDF format.</p>
<h2>
<a name="try-openstate" class="anchor" href="#try-openstate"><span class="octicon octicon-link"></span></a>Try OpenState</h2>
<p>The following commands have been tested in a clean <strong>Mininet 2.2.1 VM on Ubuntu 14.04 (64 bit)</strong>. You can download a Mininet VM at <a href="https://github.com/mininet/mininet/wiki/Mininet-VM-Images">this link</a>. For help running Mininet please refer to <a href="http://mininet.org/">http://mininet.org/</a></p>
<p>1) Inside a Mininet VM shell type the following command:</p>
<pre><code>$ bash -c "$(wget -O - http://openstate-sdn.org/install.sh)"
</code></pre>
<p>The command above will install OpenState-enabled softswitch and controller in only one shot!</p>
<p>2) Check out some <a href="https://github.com/OpenState-SDN/ryu/wiki">OpenState sample applications</a></p>
<h3>
<a name="repositories" class="anchor" href="#repositories"><span class="octicon octicon-link"></span></a>Repositories</h3>
<p><em>OpenState softswitch</em>
<a href="https://github.com/OpenState-SDN/ofsoftswitch13">https://github.com/OpenState-SDN/ofsoftswitch13</a></p>
<p><em>OpenState controller</em>
<a href="https://github.com/OpenState-SDN/ryu">https://github.com/OpenState-SDN/ryu</a></p>
<h3>
<a name="contributors" class="anchor" href="#contributors"><span class="octicon octicon-link"></span></a>Contributors</h3>
(in alphabetical order)
<p>
<a href="https://github.com/ccascone">Carmelo Cascone</a>,
<a href="https://github.com/DavideSanvito">Davide Sanvito</a>,
<a href="https://github.com/haniehrajabi">Hanieh Rajabi</a>,
<a href="https://github.com/lupo89">Luca Pollini</a>,
<a href="https://github.com/marcobonola">Marco Bonola</a>
</p>
</section>
<footer>
<div><img src="pub/beba_logo.png" height="30px"></div>
<p><small>This work has been partly funded by the EU in the context of the <a href="http://www.beba-project.eu" target="_blank">BEBA project</a> (Grant Agreement: 644122).</small></p>
</footer>
</div>
<script src="javascripts/scale.fix.js"></script>
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
try {
var pageTracker = _gat._getTracker("UA-51960380-1");
pageTracker._trackPageview();
} catch (err) {}
if (typeof jQuery != 'undefined') {
jQuery(document).ready(function($) {
var filetypes = /\.(zip|exe|dmg|pdf|doc.*|xls.*|ppt.*|mp3|txt|rar|wma|mov|avi|wmv|flv|wav)$/i;
var baseHref = '';
if (jQuery('base').attr('href') != undefined) baseHref = jQuery('base').attr('href');
jQuery('a').on('click', function(event) {
var el = jQuery(this);
var track = true;
var href = (typeof(el.attr('href')) != 'undefined') ? el.attr('href') : "";
var isThisDomain = href.match(document.domain.split('.').reverse()[1] + '.' + document.domain.split('.').reverse()[0]);
if (!href.match(/^javascript:/i)) {
var elEv = [];
elEv.value = 0, elEv.non_i = false;
if (href.match(/^mailto\:/i)) {
elEv.category = "email";
elEv.action = "click";
elEv.label = href.replace(/^mailto\:/i, '');
elEv.loc = href;
} else if (href.match(filetypes)) {
var extension = (/[.]/.exec(href)) ? /[^.]+$/.exec(href) : undefined;
elEv.category = "download";
elEv.action = "click-" + extension[0];
elEv.label = href.replace(/ /g, "-");
elEv.loc = baseHref + href;
} else if (href.match(/^https?\:/i) && !isThisDomain) {
elEv.category = "external";
elEv.action = "click";
elEv.label = href.replace(/^https?\:\/\//i, '');
elEv.non_i = true;
elEv.loc = href;
} else if (href.match(/^tel\:/i)) {
elEv.category = "telephone";
elEv.action = "click";
elEv.label = href.replace(/^tel\:/i, '');
elEv.loc = href;
} else track = false;
if (track) {
_gaq.push(['_trackEvent', elEv.category.toLowerCase(), elEv.action.toLowerCase(), elEv.label.toLowerCase(), elEv.value, elEv.non_i]);
if (el.attr('target') == undefined || el.attr('target').toLowerCase() != '_blank') {
setTimeout(function() {
location.href = elEv.loc;
}, 400);
return false;
}
}
}
});
});
}
</script>
</body>
</html>