394 Commits

Author SHA1 Message Date
Pavlin Radoslavov
d36a74b11d Add explicit flow rules to receive control packets: ARP, LLDP, BDDP
This fixes ONOS-540

NOTES:
 * Currently, the flow rules are pushed by each module that needs to receive
   the corresponding control packets:
   - ARP: ProxyArpManager, HostLocationProvider
   - LLDP and BDDP: LLDPLinkProvider
 * Pushing the corresponding IPv6 rules for Neighbor Discovery is not done yet
 * In the future, we might want to consider an explicit service to
   subscribe for receiving particular control packets

Change-Id: I292ad11a2e48390624f381c278e55e5d0af93c6d
2015-01-09 22:03:35 +00:00
Sho SHIMIZU
8cd9fb8ad5 Make timeout and max attempts configurable
- Resolve ONOS-472
- Define instance variables for timeout and max attemps
- Add a constructor that initializes the added instance variables

Change-Id: Ia70421122cd6042b01850eabec9f249e7cea5e88
2015-01-06 22:30:42 +00:00
Jonathan Hart
ab17b27828 LinkCollectionIntentInstaller - reuse same code for install and uninstall
+ cosmetic changes

Change-Id: Ie8dbeab8b3b3fafcebc6e48306660533dd0af4e3
2014-12-19 23:54:05 +00:00
Yuta HIGUCHI
467ccf7f9e DefaultFlowRule: remove deprecated constructor
Change-Id: Iac8dbc0f8fc2386f3f3b6435965503a2050e4b38
2014-12-17 18:03:53 -08:00
Yuta HIGUCHI
ddb7772971 LinkManager: log only if link actually disappeared
resolves ONOS-474

Change-Id: I61ec56795eca18b11c61b8fe5722729928bb370c
2014-12-15 18:13:01 +00:00
Ray Milkey
7bbeb3fe15 ONOS-393 - In a multi ONOS system, a ink may not yet be known about.
Change-Id: Ife53b41ec9ff577e7e5c80bbd8a25f89e08942cf
2014-12-12 17:08:40 +00:00
Sho SHIMIZU
fcf9162409 Check if not null in the constructor
Change-Id: I5e73660004e5bb8e9e3c5ba6b02d1070ee977c22
2014-12-11 12:53:04 -08:00
Ray Milkey
f2695400a5 Fix for ONOS-393 - NPE when one of the devices can no longer be found
Change-Id: I5c907d8124585f9af5b3f6e7315c41cbcdd03fb9
2014-12-10 17:29:07 +00:00
Ray Milkey
7c44c0528c Unit tests for Objective Tracker
- Fixed a bug in ObjectiveTracker turned up by tests, it
  could not handle an emptry list (it was checking for null only)
- Implemented tests for topology, resource and leadership
  events

Change-Id: I1318a0e8655f5b44b30d2ecb527f665f13d54243
2014-12-05 20:35:22 +00:00
Brian O'Connor
7f2e9bf19a bumping version to 1.1.0-SNAPSHOT
Change-Id: I35f10fa7ffab12365ad852f5253bc1f395282f9b
2014-12-04 23:45:40 -08:00
Brian O'Connor
5b29ebd309 Bumping version to 1.0.0
Change-Id: I0cdd1f64a9292c91af27b86e89bd8251b2c298f3
2014-12-04 21:54:26 -08:00
alshabib
ab98466b10 adding license to ALL files
Change-Id: I9df3277760d79732317816fe5b2f1f482e9f5375
2014-12-05 05:05:32 +00:00
Brian O'Connor
4400853c6e cleaning up some TODOs
Change-Id: Ib2380e9533ba30c6f9fdf79aed1879dbbe3589a7
2014-12-05 00:59:46 +00:00
alshabib
4785eec529 removing some TODOs
Change-Id: Ic98c811573a1b37813993eedddec512ec85729f3
2014-12-05 00:59:35 +00:00
Sho SHIMIZU
30f45fbb0d Refactor: add static factory method in BatchWrite, instead of in IntentStore
Change-Id: Ic0cecc4b3cc4facbc469d2eb87a36c4d5166a6f2
2014-12-04 02:53:26 +00:00
Ray Milkey
e9a3e22234 Add some test cases to Intent Manager tests
- test that getIntents() returns the proper items
- test that subclass compilers work
- test the behavior of intents with no compiler
- test the behavior of intents with no installer
- test the behavior of installs that never finish

Change-Id: If0bff389e7fce2f71eb7a97051547dbd05ab588c
2014-12-04 02:52:57 +00:00
Pavlin Radoslavov
369c643802 Use two thread pools for handling the OpenFlow STATS and BARRIER messages.
This fixes a problem where a large number of incoming STATS messages
is practically using all available threds from the pool (16), and
there are no available threads to handle the BARRIER messages.

Change-Id: I1130eb8f3b5a17d5d3a7825f32da68eacb99569a

fixing other threadpool issues, ie. not using cachedThreadPool

Change-Id: I40ef10e1f704aef779b2a23c0497dfb7992520eb
2014-12-04 02:06:53 +00:00
Yuta HIGUCHI
7a9fdddb81 IntentManager: give each thread a uniq name in ThreadPool
Change-Id: I64c2e45aba3ae65a747271d02d1d9b83bcfc848c
2014-12-03 17:02:40 -08:00
Sho SHIMIZU
64ae11c73f Move nested class to top-level class
Because BatchWrite is public and no need to place it as an inner class in
IntentStore interface

Change-Id: I17e87e06baa4f0af55fa30b09a891bc23932a6fd
2014-12-04 00:57:01 +00:00
Yuta HIGUCHI
36dd7e4422 FlowRuleManager: properly name thread pool
Change-Id: I4a804c5b7eca9f746746773e36fba10e5d920811
2014-12-03 14:14:22 -08:00
alshabib
64def641af aggregate flow replies on io thread
Change-Id: I622290f213ee830cfab7e4bd4ad7a52f612b475e
2014-12-03 09:07:40 +00:00
Brian O'Connor
abafb50f58 Changing org.onlab.onos package to org.onosproject
Change-Id: Ic81421faa27acdcff045add47d9e0a715cd4f575
2014-12-02 22:26:20 -08:00
Brian O'Connor
03defe7939 Moving org/onlab/onos to org/onosproject
Change-Id: I742627fe0862cac78391cf70010f99dc26dce1e6
2014-12-02 22:22:39 -08:00
Thomas Vachuska
164fa5c9ad GUI fixes/breaks.
Change-Id: Ic5c8b087cc32506162153b2756a677c7d9e3bdd7
2014-12-03 06:07:33 +00:00
Ray Milkey
93508c2634 Unit tests and manager changes for failure cases
Add unit tests for intent intallation failures:
- compilation error
- installation exception
- installation returns error future

Change-Id: Idc5e19980032cc5c1b9804c7627833fb126b7a81
2014-12-03 00:19:50 +00:00
Brian O'Connor
7a71d5da7b Added WITHDRAW_REQ Intent State for ONOS-146
Fixed flow removed from other instance

Change-Id: I22c88a447e26770fea8b7e23f4a78b1389077ad1
2014-12-02 00:13:46 -08:00
Jonathan Hart
f5e3580f8d Modified the MultiPointToSinglePointIntentCompiler to prevent duplicate packets
Change-Id: Ifb7609be04ed8a0330b7a0b47420ca33af0656c6
2014-12-01 20:46:01 -08:00
Brian O'Connor
5d55ed4c16 Bug fixes for Intent Manager
ONOS-343

Change-Id: I164c52b41080392c4b27a3969f270171558599a6
2014-12-01 18:35:24 -08:00
Brian O'Connor
a44dda5333 Suppressing PathNotFound exception
Change-Id: If92b4de390917c56b637abb5bdd42c2f97be507b
2014-12-01 17:42:41 -08:00
Brian O'Connor
86f6f7f011 Adding Leadership Listener to IntentBatchService
ObjectiveTracker uses Leadership Listener to track intents that
it has become the leader of.

Change-Id: I039accb30d27ad718d79a9fec3f546dbdc78e62e
2014-12-01 17:16:55 -08:00
alshabib
a9819bfd1f fix intent issues yuta observed
Change-Id: I7dc4a19d49a1b3fc18ecce02a4018cbc9a3043fc
2014-12-02 01:16:09 +00:00
alshabib
afc514afde when a switch vapourizes so must its ports
Change-Id: Ibcbcc47f691c24897985978a39da9dba6411ba2a

disable a port which is deleted

Change-Id: Ic6e0cb0a9901a6589b587aeb89bfc1b302d17516
2014-12-02 01:06:00 +00:00
Yuta HIGUCHI
c2bf3d8fb9 IntentManager: use IntentStore batch APIs
Change-Id: Ie60f3e53f48fa6acbcaf5cf6837bdef12b36a98d
2014-12-01 00:26:30 +00:00
Thomas Vachuska
12dfdc34b6 Added web-socket fail-over and fixed a defect in mastership balancing.
Change-Id: I14eeb17fdc7970140287b51915c5accc24cf855b
2014-11-29 16:03:12 -08:00
Thomas Vachuska
1e68bdd9be Added ability to force mastership re-balancing between instances from the GUI.
Change-Id: I98e56deb3e2b00df630ed85b596c8e35b3d6efab
2014-11-29 13:53:10 -08:00
Thomas Vachuska
5dd52f7ac4 Enhancing the GUI traffic-related code.
Fixed a defect in reactive forwarding.

Change-Id: I1a91f6e5f57b39425ef06092c82b06d04c9b59a0
2014-11-29 10:43:30 -08:00
Yuta HIGUCHI
82e5326b23 For ONOS-356
- Add current InstallationFuture information on TimeoutException
- Set timeout values propotional to batch size
- Fix for ConcurrentModificationException
- Check if src/dst is part of the graph before path computation

Change-Id: Iabeac7939c52502b83bf9ebcbe2023539de3ae99
2014-11-28 19:00:56 -08:00
alshabib
507ac376cb getprevious should fetch the previous stats from the store
Change-Id: Ia954e128d2503e4e787d496385c456ff249fc139
2014-11-28 18:12:07 -05:00
Brian O'Connor
72a034c863 Initial implementation of distributed intent batch queue
Change-Id: I7ffed03651569ade1be1e8dca905bfaf369b7e03
2014-11-28 22:42:44 +00:00
Yuta HIGUCHI
f1f2ac051d Construct GraphDescription with online/active Device/Link only
Change-Id: I9312c0c8ae190bf0200bd040823b6f7a3e7a15e1
2014-11-27 04:08:49 +00:00
Thomas Vachuska
6b7920ddaf Measuring topology performance. Fixing a defect that caused us to run w/o accumulator when config file was not present.
Change-Id: I5ad538b8a441cd6ff2aefea49a0def10b8e0f4d5
2014-11-26 09:02:50 +00:00
Thomas Vachuska
e4b6bb2515 Intents are now removed after being withdrawn.
Change-Id: I7574fe94add00abf58c71c6122bb3dc5aafa0f79
2014-11-26 04:31:14 +00:00
Pavlin Radoslavov
119fd5c5a5 Javadoc fixes.
Change-Id: Ic2cef19a6f1af9916c8615c9319cc122d9da5383
2014-11-26 03:17:20 +00:00
Thomas Vachuska
5bde31ffec Fixing various issues and re-tuning.
Change-Id: I8822fcf77cfa507788241c5bda98ef4741b284b4
2014-11-26 00:25:14 +00:00
Ray Milkey
37f6a381e1 Unit test refactoring
- removed tests no longer useful now that all Intent objects are unique
- fixed intent object equality tests
- enabled several immutable base class tests
- renamed several Test....java classes to ...Test.Java to
  match project best practices

Change-Id: Ic829d6d39556d2f63323f5e82f3807dba86c62ec
2014-11-25 23:19:34 +00:00
Sho SHIMIZU
75a5bd9007 Change return type of groupId() in FlowRule not to misusing underlying type
Change-Id: Ide90973380f79046650bc372b9ecee00cb290f6a
2014-11-25 21:53:26 +00:00
Sho SHIMIZU
e3cc0b9f45 Enhance StatisticService to allow filtering by Application ID and Group ID
Resolve ONOS-205

Change-Id: Ie9318a5ade943bd8e47fb92ee856b7ebead5022e
2014-11-25 21:53:26 +00:00
Ray Milkey
e97ede9548 ONOS-239 Retrigger compilation when new resources are available
When an intent is withdrawn and frees up resources, trigger
recompilation of any failed intents to allow the ones waiting
for resources to be installed.

Change-Id: Ic15678378ce41516a7eab890b4b4898aeb901f78
2014-11-25 21:52:58 +00:00
Jonathan Hart
58682ddc5e Lower log level of frequently-executed flow stats code
Change-Id: I2901a8ede86531677d506c54f7ee2878ef62bb49
2014-11-25 18:01:21 +00:00
Yuta HIGUCHI
a22f69f28a Slice out MetricsHelper/Util
Change-Id: Ic6848f47d38550b78ebd6cdcf414305e54408882
2014-11-25 06:49:43 +00:00