701 Commits

Author SHA1 Message Date
alshabib
a28f69af70 FlowObjectiveManager not activated by default.
Caused the Corsa Driver to be triggered and provision
incorrect set of rules.

Change-Id: I96eadeb0eeac9ef94e6187be08faf68b0aa8caaf
2015-04-14 05:12:14 +00:00
Sho SHIMIZU
fcf861a06a Refactor: Flip condition to reduce the depth of indentation
Change-Id: I572a989730a8dd93b5ab7ee63b37bc9d728c17e7
2015-04-11 00:39:18 +00:00
Sho SHIMIZU
94b03b11cd Sweep deprecated todo comment
Change-Id: I6140aa38aff475424e44c6597599703776530f4d
2015-04-11 00:38:41 +00:00
alshabib
1097c978fb Only process pending objectives if there are any.
Change-Id: Ibb34dce32e0bfc55b317036130ead2c1babbaeac
2015-04-11 00:37:06 +00:00
Sho SHIMIZU
d493625192 Fix typo
Change-Id: I4ad0311a9d54f4bf7bb8b58e0e57a8f51839f091
2015-04-10 15:03:57 -07:00
Jon Hall
e3f0fcf112 Avoid NPE in cfg command
- Avoid NPE when a component has no configurable property or doesn't exist
    - Specificly use a numeric value for SharedExecutors.DEFAULT_POOL_SIZE so
      the value appears in cfg command
    - Also use print instead of system.err since it is being redirected
      away from the console

Change-Id: Ib73016b1a9282493f0c5c8c217dd33292eac4ba4
2015-04-10 09:40:36 -07:00
alshabib
910aff10a7 WIP: Initial implementation of filterObjectives using driver subsystem.
Incomplete implementation

Change-Id: I3745d481027659d4ca44b72139e5461c02e8c3ef
2015-04-09 16:57:18 -07:00
sangho
538108bae8 ONOS-1440: Implements port statistics feature, which polls port statistics of all devices every 10 seconds. Also, implemented a simple portstats ONOS CLI command to show the statistics.
Change-Id: I57e046ae2c2463a58b478d3a5b523422cde71ba2
2015-04-09 22:43:41 +00:00
Thomas Vachuska
5c2f813575 Device driver framework enhancements and CLI.
Change-Id: I5dea67620259797eff89a985718934034a86d63e
2015-04-09 18:17:09 +00:00
Thomas Vachuska
b0317c6a3f Fixed javadoc warning; added shared executor/timer wrappers to prevent inadvertent shutdown; added shutdown to CoreManager.deactivate.
Change-Id: I27f31b5d41050d6d87cd6419ab863201c4585843
2015-04-09 18:11:17 +00:00
alshabib
429477825c implemented a distributed default flow registration mechanism to avoid duplicate requests from other onos instances
Change-Id: Ib2abb483456538e3e08e9790c4b4b0d50db8b384

implemented a distributed default flow registration mechanism to avoid
duplicate requests from other onos instances

Change-Id: I620cc51ac29cddaffa73cdbb20e9a9acbdd9ea69
2015-04-09 18:01:02 +00:00
alshabib
4313d10f47 fix bug when a device disconnects. Issue was due to null roleinfo in event
Change-Id: I12d371382931ef4ab93f25f32ed6e4786735f55a
2015-04-08 21:54:07 -07:00
Thomas Vachuska
ca88bb7440 Cleaning up and enhancing driver subsystem and the flow objective subsystem.
Change-Id: Ica600ef1aaa46d19e764cd7a197454a4e0f85a08
2015-04-08 19:38:02 -07:00
Murat Parlakisik
553db17965 Shared system services configurability (ONOS-1304)
Change-Id: I42210128fd973f16bb07955175d8e361858a9034
2015-04-09 01:23:48 +00:00
alshabib
aebe775c12 WIP: default driver ignition
Change-Id: Ia37de8dcaee2ff2be0908fa12c567acf99ef3a13
2015-04-08 16:34:28 +00:00
alshabib
77b8848f51 added FlowObjectiveService to act as an objective manager between applications and drivers
Change-Id: I4dc44db8bafae8a55b7663895c87b1b08645637f
2015-04-07 15:48:36 -07:00
Ray Milkey
77a455f4c5 Intent manager unit test enhancements
- add test to be sure that all flows are removed when intents
  are withdrawn
- add test to be sure that all flows are removed when an intent
  installation fails. Currently disabled, intent cleanup is
  not implemented
- enable installation time out test

Change-Id: I8c7a75292a97404ef89856647c67ef2f70ffcf6f
2015-04-03 19:39:56 +00:00
Thomas Vachuska
00121ed30a Javadocs cleanup.
Change-Id: Ia731178e76b29a2f00045efad759b9c0559645d7
2015-04-03 00:23:18 +00:00
Thomas Vachuska
de563cf235 Added ability to form a cluster via REST API.
Change-Id: Ib71f6b4caed1b1c4b9db78596ee35bf5cab05184
2015-04-01 20:39:37 +00:00
Thomas Vachuska
8dc1a69a95 Added bootstrap code to auto-generate cluster.json, tablets.json and hazelcast.xml using local site address.
Change-Id: I3210aadc63403022b4aac3bc3591736801240b50
2015-04-01 19:13:51 +00:00
Ray Milkey
fd7931d385 ONOS-1404 - Rerouting delayed due to flows being removed out of order
ONOS-1409 - handle all links to a switch going away and coming back

Change-Id: Ib7216530fa8eef41b1088c5122a40bf9265481ca
2015-03-31 19:46:22 +00:00
Brian O'Connor
9ac147662f Fixing intent reroute (ONOS-1403)
However, there is a race that can temporarily break data plane connectivity.
The problem is described in ONOS-1404

Change-Id: I3df1948180b42fc7f4c2d072bd8c2b452dd07e61
2015-03-27 01:33:33 +00:00
Brian O'Connor
b5dcc51d10 Adding device and host tracking for intents (ONOS-1356)
Also, this should fix ONOS-1184 (intents submitted before hosts detected).

Change-Id: I47a503c18dc728912132eb2e2fcc160d47e518eb
2015-03-26 00:40:34 +00:00
Jonathan Hart
4a0ba56a4d DefaultTrafficTreatment: Build all-instructions list at creation time
so that we don't have to join the two lists each time we want to see all instructions

Change-Id: I7f1ad252776abcb6768372eeaabfa661bdded36c
2015-03-25 23:02:53 +00:00
Simon Hunt
9fec43fb7d Updated CoreManager version string to be 1.2.0-SNAPSHOT.
Change-Id: I3de77314b84d3bd51ca709c36e29f2c33fce816c
2015-03-25 18:48:36 +00:00
Thomas Vachuska
5630c61407 ONOS-1323 Upgrading environment to use Apache Karaf 3.0.3
Requires restart of any dev shell sessions that may have KARAF_VERSION=3.0.2 already set.

Developers that have their own local Karaf will have to run 'onos-setup-karaf <ip-address>' command

Change-Id: Iba234b3cd5af89de6dd249c97cac97525364cc34
2015-03-25 00:56:59 +00:00
Srikanth Vavilapalli
717361f32f Distributed group store using eventual consistent map abstraction
Change-Id: I618a0f6fa80e0e25285d7a2026032f09ba90aa70
2015-03-25 00:27:54 +00:00
Sho SHIMIZU
ee2aa65a3d Merge IntentInstaller's role into IntentCompiler
It resolves naming mismatch in naming of IntentProcessPhases and states
handled in the phases. It is described in ONOS-1064.

- Define FlowRuleIntent that enables flow rule level operation
  as an intent.
- Remove IntentInstaller interface
- Existing installable intents such as PathIntent, LinkCollectionIntent,
  OpticalPathIntent and MplsPathIntent now become non installable intents.
  Only FlowRuleIntent is categorized as installable intent now.
- Implement intent compilers for PathIntent, LinkCollectionIntent,
  OpticalPathIntent and MplsPathIntent. They generates FlowRuleIntents.
- Write unit tests for the newly created intent compilers according to
  the intent installers' unit tests
- Remove all intent installers and their unit tests

Change-Id: I22d6c7acb65a4c066145de0018bd0727f44bd54a
2015-03-24 14:09:04 -07:00
Ray Milkey
e076c791a5 Implement builders for optical intents
Change-Id: Ide728a943eb0ec3d3ba995f63c016e7d52bff65c
2015-03-24 20:08:31 +00:00
Ray Milkey
4250735018 Remove deprecated instructions() method in the traffic treatment class
Change-Id: I739b35bdcbf9867c639c7b6ca4006f3eeafbb055
2015-03-24 18:18:28 +00:00
Thomas Vachuska
0d6af8d983 Fixed a defect where remotely-induced feature install was trying to stomp over locally -induced feature install.
Change-Id: I1cb2c2dd3da03a34b80b1db312056b44cc9c1f9f
2015-03-23 15:54:47 -07:00
Madan Jampani
7d2fab296a ONOS-1326: Added support for observing when node liveness status was last updated. Useful for detecting/debugging stability issues.
Change-Id: I8ffebcf3a09a51c6e3e7526986a0f05530ed757f
2015-03-23 21:45:52 +00:00
Ray Milkey
ebc5d22159 Refactor connectivity intent creation to use builders
- Each connectivity intent now has only one constructor
- Intent constructors are now private for leaf classes and
  protected for classes that can be derived from
- Each intent class has a Builder class that accumulates
  parameters for intent creation
- Each intent class has a public static builder() method
  to create a builder
- Each Builder class has a build() method to create the
  intent from the accumulated parameters
- Added keys to a few intent types that were missing them
- Tightened up usage of checkNotNull(), taking advantage of
  the return value to save some lines of code
- Modified callers to use the builders instead of directly
  calling the constructors

Change-Id: I713185d5ecbadbf51f87ef7f68fec41102106c78
2015-03-23 21:12:14 +00:00
Brian O'Connor
023a1c72d6 Revert "Abstract ConnectivityIntentCompiler is not a @Component"
This problem needs to be fixed in a better way.

This reverts commit 8317ad56e8c5dc6b8c5fadf3d87a51f885c8dfa2.

Change-Id: Icbc4492016a0858221a3e79121db36cbb87b3b2b
2015-03-20 01:11:29 +00:00
Brian O'Connor
8317ad56e8 Abstract ConnectivityIntentCompiler is not a @Component
Change-Id: I62844f2dbc459f2b7053fbc0eb12e32f1e1293ac
2015-03-20 01:08:06 +00:00
Ray Milkey
3e3ec5f786 [Cardinal] Add builders for Intents and remove extra constructors.
Starting with PointToPoint intent to see how it looks

Change-Id: I5366a05d657ceaad18c03b95cd71f5d1107200e2
2015-03-18 22:17:54 +00:00
Ray Milkey
50a9b72f2d Add priority to remaining intent types
Change-Id: I77a7c2fbdb0f6b6a9d3c08cf190ab8cf4968668d
2015-03-18 16:25:57 +00:00
Marc De Leenheer
ad48f88b74 Set output as last action
Change-Id: I8c004ff14090ce9e9864d110e4d3ac164cfc4680
2015-03-17 17:45:11 -07:00
Ray Milkey
8c6d00ef5f [Blackbird] Fixing Intent purge case (ONOS-1207)
Master needs to remove from the current map.

Change-Id: I30eccbe188997949ef2d63d6dbd37b0d8d4b3f5e
2015-03-15 14:36:41 -07:00
Jonathan Hart
7d1496b1dc ProxyArp: Reply directly when we know an external target host
Change-Id: I38773dcdcae05506c678c2006d1f63306af6b383
2015-03-13 17:40:32 +00:00
Thomas Vachuska
8c8b0372e5 Adding OnosCfgMojo to the onos maven plugin.
Removing previously manuall generated files since they are now auto-generated.

Change-Id: I1f8361f97db74c9e2f077b3d5e7a6e65876561ef
2015-03-13 03:42:02 +00:00
Jonathan Hart
8ef6d3b9a0 Minor tweaks to the flow layer.
Prevent DistributedStatistics store from logging "rule has no output" for
rules that transition to other tables.

Change-Id: I85e86965f5609df608cbc19551632153960a5c5b
2015-03-11 20:08:45 +00:00
Ray Milkey
0811bdd703 Disable some brittle tests that are causing problems with Jenkins
Change-Id: I2f79a728545d50f9458048a5980261e84e112f2f
2015-03-11 17:31:13 +00:00
Thomas Vachuska
6519e6f1de Making number of components configurable using the central component configuration subsystem.
Change-Id: Ia32c51480913689339a766d9849e792d62f7d133
2015-03-11 09:12:41 -07:00
Brian O'Connor
85c2926df2 Protecting against NPE in ComponentConfigManager
Change-Id: Ia0ffe918dad12fef0823fd09e566f0d706a7da8c
2015-03-10 20:59:52 -07:00
Ray Milkey
c24cde3305 Add priority to Intents
Change-Id: Ibe63356f5b15a6aa6ca7731dba3382c3317a95ec
2015-03-11 02:14:30 +00:00
Brian O'Connor
6b5281356b Adding emptyTreatment() and emptySelector()
Note: There was a change that adds a DROP action to
a traffic treatment if there are no other actions present.
To get a traffic treatment without the drop rule, use
emptyTreatment()

Change-Id: I1f23ed5e1fa7519eb94fcafa85facbad815d5e9c
2015-03-10 16:48:45 -07:00
Pavlin Radoslavov
87dd930f2e Use a cleaner mechanism to test whether an IP address or prefix
is IPv4 or IPv6.

Change-Id: Ia88f76be87a30573a50eeeedb78d98713ac1ae27
2015-03-10 13:53:24 -07:00
Thomas Vachuska
6d697f185a Sketching out component configuration model & API.
Added initial cut of implementation.
Finished implementation; ready for merge.

Change-Id: I385181c0591604a5c44986b97fb881eba7e0528e
2015-03-10 17:28:14 +00:00
Marc De Leenheer
8b3e80b14e Remove default flow rules for ROADMs. Fix LinkResource NPE. Single instance provisions optical path.
Change-Id: Iacbd41403ecd0c0df240d09026253c4b761a1d6a
2015-03-10 05:14:50 +00:00