Toggle navigation
Toggle navigation
This project
Loading...
Sign in
홍길동
/
onos
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
tom
2014-10-07 09:12:29 -0700
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
6db1f0a83c6a6942e5a194ffcbb91d27804e5c31
6db1f0a8
1 parent
22288039
Added javadocs.
Renamed intent remove command.
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
55 additions
and
7 deletions
cli/src/main/java/org/onlab/onos/cli/net/RemoveHostToHostIntentCommand.java → cli/src/main/java/org/onlab/onos/cli/net/IntentRemoveCommand.java
cli/src/main/javadoc/doc-files/intent-states.png
cli/src/main/resources/OSGI-INF/blueprint/shell-config.xml
core/api/src/main/java/org/onlab/onos/net/intent/package-info.java
core/api/src/main/javadoc/org/onlab/onos/net/intent/doc-files/intent-states.png
cli/src/main/java/org/onlab/onos/cli/net/
RemoveHostToHostIntent
Command.java
→
cli/src/main/java/org/onlab/onos/cli/net/
IntentRemove
Command.java
View file @
6db1f0a
...
...
@@ -10,9 +10,9 @@ import org.onlab.onos.net.intent.IntentService;
/**
* Removes host-to-host connectivity intent.
*/
@Command
(
scope
=
"onos"
,
name
=
"remove-
host-
intent"
,
description
=
"Removes
host-to-host connectivity
intent"
)
public
class
RemoveHostToHostIntent
Command
extends
AbstractShellCommand
{
@Command
(
scope
=
"onos"
,
name
=
"remove-intent"
,
description
=
"Removes
the specified
intent"
)
public
class
IntentRemove
Command
extends
AbstractShellCommand
{
@Argument
(
index
=
0
,
name
=
"id"
,
description
=
"Intent ID"
,
required
=
true
,
multiValued
=
false
)
...
...
cli/src/main/javadoc/doc-files/intent-states.png
0 → 100644
View file @
6db1f0a
158 KB
cli/src/main/resources/OSGI-INF/blueprint/shell-config.xml
View file @
6db1f0a
...
...
@@ -64,15 +64,15 @@
<action
class=
"org.onlab.onos.cli.net.IntentsListCommand"
/>
</command>
<command>
<action
class=
"org.onlab.onos.cli.net.
AddHostToHostIntent
Command"
/>
<action
class=
"org.onlab.onos.cli.net.
IntentRemove
Command"
/>
<completers>
<ref
component-id=
"
hos
tIdCompleter"
/>
<ref
component-id=
"
inten
tIdCompleter"
/>
</completers>
</command>
<command>
<action
class=
"org.onlab.onos.cli.net.
Remove
HostToHostIntentCommand"
/>
<action
class=
"org.onlab.onos.cli.net.
Add
HostToHostIntentCommand"
/>
<completers>
<ref
component-id=
"
inten
tIdCompleter"
/>
<ref
component-id=
"
hos
tIdCompleter"
/>
</completers>
</command>
...
...
core/api/src/main/java/org/onlab/onos/net/intent/package-info.java
View file @
6db1f0a
...
...
@@ -4,5 +4,53 @@
* <em>what</em> rather than the <em>how</em>. This makes such instructions
* largely independent of topology and device specifics, thus allowing them to
* survive topology mutations.
* <p/>
* The controller core provides a suite of built-in intents and their compilers
* and installers. However, the intent framework is extensible in that it allows
* additional intents and their compilers or installers to be added
* dynamically at run-time. This allows others to enhance the initial arsenal of
* connectivity and policy-based intents available in base controller software.
* <p/>
* The following diagram depicts the state transition diagram for each top-level intent:<br>
* <img src="doc-files/intent-states.png" alt="ONOS intent states">
* <p/>
* The controller core accepts the intent specifications and translates them, via a
* process referred to as intent compilation, to installable intents, which are
* essentially actionable operations on the network environment.
* These actions are carried out by intent installation process, which results
* in some changes to the environment, e.g. tunnel links being provisioned,
* flow rules being installed on the data-plane, optical lambdas being reserved.
* <p/>
* After an intent is submitted by an application, it will be sent immediately
* (but asynchronously) into a compiling phase, then to installing phase and if
* all goes according to plan into installed state. Once an application decides
* it no longer wishes the intent to hold, it can withdraw it. This describes
* the nominal flow. However, it may happen that some issue is encountered.
* For example, an application may ask for an objective that is not currently
* achievable, e.g. connectivity across to unconnected network segments.
* If this is the case, the compiling phase may fail to produce a set of
* installable intents and instead result in a failed compile. If this occurs,
* only a change in the environment can trigger a transition back to the
* compiling state.
* <p/>
* Similarly, an issue may be encountered during the installation phase in
* which case the framework will attempt to recompile the intent to see if an
* alternate approach is available. If so, the intent will be sent back to
* installing phase. Otherwise, it will be parked in the failed state. Another
* scenario that’s very likely to be encountered is where the intent is
* successfully compiled and installed, but due to some topology event, such
* as a downed or downgraded link, loss of throughput may occur or connectivity
* may be lost altogether, thus impacting the viability of a previously
* satisfied intent. If this occurs, the framework will attempt to recompile
* the intent, and if an alternate approach is available, its installation
* will be attempted. Otherwise, the original top-level intent will be parked
* in the failed state.
* <p/>
* Please note that all *ing states, depicted in orange, are transitional and
* are expected to last only a brief amount of time. The rest of the states
* are parking states where the intent may spent some time; except for the
* submitted state of course. There, the intent may pause, but only briefly,
* while the system determines where to perform the compilation or while it
* performs global recomputation/optimization across all prior intents.
*/
package
org
.
onlab
.
onos
.
net
.
intent
;
\ No newline at end of file
...
...
core/api/src/main/javadoc/org/onlab/onos/net/intent/doc-files/intent-states.png
0 → 100644
View file @
6db1f0a
111 KB
Please
register
or
login
to post a comment