407 Commits

Author SHA1 Message Date
HIGUCHI Yuta
dbb631fc88 Move Fujitsu device specific code out to Fujitsu driver bundle.
Change-Id: I5c2960378541e27ffb2087a05acbbf3a3f44bd1e
2016-05-16 16:18:10 -07:00
HIGUCHI Yuta
9605c788c3 Move Ciena Waveserver specific code out to Ciena driver bundle.
Change-Id: I96adc5e878a391dd608ad856354ac89638638554
2016-05-16 14:34:05 -07:00
Carmelo Cascone
f8cf288d75 Added ability to poll flow counters in BMv2
Also fixed few minor things here and there.

Change-Id: Ib5e6a92de46870f52510cd6fad0cef8da022bb62
2016-05-12 12:24:02 -07:00
HIGUCHI Yuta
deae31ec05 [ONOS-4513] Move DefaultOpticalDevice to reduce package exported.
Change-Id: I88db1508290e8d3722d46e85b947b4fdc9f4b66d
2016-05-11 17:56:03 +00:00
Carmelo Cascone
feb7edb2d5 Fixed bug due to wrong priority in BMv2.
In BMv2 0 is the highest priority, while it is the lowest for ONOS.

Change-Id: Iedb66598f293bf456cf4d206e19c0ff632edfd2c
2016-05-11 15:34:22 +00:00
Carmelo Cascone
a2f510ebba Improve flow rule polling consistency with bmv2
Change-Id: Iee5e7d7bee8f16505fe4d2acf48e65775bb2a524
2016-05-11 15:26:35 +00:00
Carmelo Cascone
d4e7a77b91 Removed hardcoded model from BMv2 driver
Now it uses the model stored in device annotations. Also refactored flow
rule translator classes to reflect this change.

Change-Id: I46541bcc2ab5a267eef4becb6250b9a99684056a
2016-05-10 16:57:36 +00:00
HIGUCHI Yuta
5be3e820cf ONOS-4417 Remove OtuPort out of core.
Change-Id: Ibc72ee617b238005585f0bcd873b9123e48ee7fc
2016-05-09 23:39:00 +00:00
HIGUCHI Yuta
4c0ef6b54a ONOS-4416 Remove OduCltPort out of core.
Change-Id: I04324a72e48af84afdbfa32b84c8e57f39411000
2016-05-09 23:38:47 +00:00
HIGUCHI Yuta
95d83e8067 ONOS-4415 Remove OmsPort out of core.
Change-Id: Ic796c4e715789ba18f350f28e29db04dd537822f
2016-05-09 23:38:16 +00:00
HIGUCHI Yuta
34a3f69be1 ONOS-3503 Remove OchPort out of core.
- Implementation of a Behavior OpticalDevice has the knowledge of
  translating annotations into optical specific port.
- OpticalDeviceServiceView checks if the Device is a OpticalDevice
  and translate all the Ports to optical specific port before returning.

- This commit contains feedbacks, issues, and fixes by Michele Santuari.

- Note: 3 more Port types to go (OduClt, Oms, Otu)

Change-Id: I4cbda8bc1922fbdd4dac8de8d02294bad74b8058
2016-05-09 22:24:41 +00:00
Carmelo Cascone
e9121640ff ONOS-4410 Implemented PacketProgrammable and Pipeliner behaviors in the
BMv2 driver

Also other minor fixes / refactorings

Change-Id: I2205890b76471e8e8490beccd6b36e5358f8d407
2016-05-09 21:13:24 +00:00
Andreas Papazois
1ed54cf0fa [GEANT] Command device-interfaces added.
Change-Id: If70eedc5e8e0d83bc4d31c556fbf8382cbe97cec
2016-05-09 15:56:26 +00:00
Ray Milkey
4abe844367 STC drivers test now uses a driver that is always present; added buck build for corsa driver
Change-Id: I5310c54bb295f86a6f384a0f4bf18ed75cda1ef5
2016-05-05 19:10:19 +00:00
Michele Santuari
9a8d16dbb8 initial flows for corsa pipeline v39
- initial flows configuration
- moved to a dedicated folder
- refactoring super classes

Change-Id: Ie7452aed35d7947ca5f7246dd06fcbb87b2971b5
2016-05-04 17:40:47 +00:00
Carmelo Cascone
37d5dbf8b6 ONOS-4118 Added synchronization and resiliency to Bmv2ThriftClient
Due to the multi-threaded nature of drivers, calls to a Bmv2ThriftClient
could result in a race condition if not properly synchronized. Also,
once open, transport session might close due to several reasons. Now the
client calls are synchronized and automatically wrapped in a try/catch
that tries to re-open the session for fixed number of times before
giving up.

Change-Id: I5dcdd5a6304406dc6d9d3a0ccf7f16cdbf3b9573
2016-05-04 17:21:32 +00:00
lishuai
90b3b6cdbf [ONOS-4427] TunnelIn flowrule can not be applied to devices in ONOS 1.5
and 1.6 . In ONOS Version 1.5 and 1.6, Instructions.CreateDrop interface
is missed, which cased the pipiline judging condition can not be
matched, and the flowrule of tunnel in can not be applied to device.

Change-Id: Ibe892098b37f7f9f4d3b542ee31b1b6039f8b471
2016-05-04 16:14:05 +00:00
Saurav Das
7762179a2c Bug fix for Dell driver to use dummy group as flow-actions
Change-Id: I2ca81217ad8a51fe0f8f907a1befaa0fd947e40f
2016-05-04 16:12:14 +00:00
Saurav Das
59232cf8f8 Changes include:
bug fix for host IP and MAC flows not being generated sometimes in multi-controller scenarios
      bug fix for filtering objectives not being sent sometimes when ports become available later
      npe fixes in ofdpa driver for cases where selectors or treatments may not be available
      new cli command to manually trigger routing and rule population
      portstats option on cli to display only those ports with non-zero stats
      group cli command tab completion displays choices in lower case (similar to flows)
      segment routing cli commands now start with sr-

Change-Id: Idcd641882d180acbd304e5560ed3483b5a943f96
2016-05-03 00:52:58 +00:00
Charles Chan
e3ba6956e0 Fix ClassCastException
Change-Id: I1c9e6a37c6871bd8186d5ab19a87268d9250aacd
2016-05-02 23:57:09 +00:00
Brian O'Connor
be27bb3da3 Updating BUCK files
Change-Id: I24f279b42a270e59cf4bf4564e2aa4d81459c8e2
2016-04-29 18:23:19 -07:00
Ray Milkey
8dac818d23 Refactor protocol BUCK files to use more modern rules and format
Change-Id: I9262fdeef12cfd098afefc711d995ffc76b9efb1
2016-04-29 17:33:12 -07:00
Ray Milkey
61403ed21d Appify BUCK builds for drivers
Change-Id: I94a44950ce793008ff2a3b2105207a9fff9a53ed
2016-04-28 21:56:55 +00:00
Jonathan Hart
855179c176 CpqdOfpda pipeline table miss entry for multicast IP table.
Change-Id: I4efb76819007cc757dce123f3fd1ba83e2bc2c74
2016-04-28 16:17:11 +00:00
Ray Milkey
12c1d51c93 Buckify remaining providers
Change-Id: Ide265b68d809ccea2ea8900993999bf8ae3184fc
2016-04-27 15:19:33 -07:00
Carmelo Cascone
2954f135bc Translator-based Bmv2 flow rule driver
Removed old parsing logic. Now it uses Bmv2FlowRuleTranslator to
translate ONOS flow rule into Bmv2 model-dependent table entries.

Change-Id: I1febc23b334acade027e806c8a8c266acc061277
2016-04-26 11:46:30 -07:00
Carmelo Cascone
b7388bd8a9 ONOS-4044 Implemented ONOS-to-Bmv2 flow rule translator
In Bmv2, tables, header fields and actions all depend on the packet
processing model configuration (Bmv2Model) currently deployed on the
device. For this reason, translation is needed from protocol-aware ONOS
FlowRule objects into properly formatted, protocol-independent
Bmv2TableEntry objects. Translation is based on a TranslatorConfig that
provides a mapping between ONOS types and Bmv2 model-dependent types.

Change-Id: I620802c2024b5250867dc6b1b988b739177f582a
2016-04-26 11:46:30 -07:00
Carmelo Cascone
aa8b6297a3 Various Bmv2 protocol refactorings in preparation of the flow rule
translator (ONOS-4044)

- Added new classes for different match parameters (exact, ternary, lpm,
  valid)
- Divided api package in two sub-packages, model (previously under
  drivers) and runtime (old api package)
- Improved Bmv2ThriftClient caching and table entry handling

Change-Id: I23c174cf3e8f9f6ecddb99c2d09dc531e8f1c73f
2016-04-26 11:46:30 -07:00
Carmelo Cascone
5899c13b9c ONOS-4175 Implemented BMv2 configuration model parser
Such a model is used to define the way BMv2 should process packets
(i.e. it defines the device ingress/egress pipelines, parser, tables,
actions, etc.) and can be generated (i.e. JSON) by compiling a P4
program using p4c-bm.

Change-Id: Ic08df68bed5a0261cb50b27dc7dbfe9d35e1fb71
2016-04-26 11:46:29 -07:00
Carmelo Cascone
2ea177bb70 ONOS-3961 ONOS-4285 Implemented BMv2 drivers and protocol
Provides Thrift-based implementation for FlowRuleProgrammable and
PortDiscovery behaviours.

Change-Id: Ibbf8720d92301bcd23c5c583d156f464015ff1ef
2016-04-26 18:43:51 +00:00
Charles Chan
216e3c856b Refactoring SegmentRouting, OFDPA driver and Group Store
- Replace SRNextObjectiveContext with DefaultObjectiveContext
- Move several log messages to lower log level

Change-Id: Ice2fb598b8e4502cb4acee1a95235551ec7c8db7
2016-04-26 16:57:23 +00:00
Ray Milkey
aeb0079719 Refactoring of provider buck builds.
Change-Id: I9b5e2566b83c13a8b7b086005a08a8182305ffdb
2016-04-25 17:03:49 +00:00
Madan Jampani
d5714e09fd New and direct StorageService method for creating an AtomicCounter
Change-Id: I8c189584dde590842075bea7e03c4c8ecf8d72c2
2016-04-19 21:37:35 +00:00
HIGUCHI Yuta
d9e0105d79 log uncaught Exception
- Use execute instead of submit so that uncaught Exception will
  be dealt and logged by ExecutorService's handler.
- Use component's own logger

Change-Id: I761264aea00748980929b5048e111756776dd2f6
2016-04-19 17:10:00 +00:00
Charles Chan
d55e84de33 CORD-348 multicast support in SegmentRouting and vRouter
In this submission:
* Setup/teardown multicast route according to SinkAdded/SinkRemoved event
    - ingressVlan and egressVlan is configurable through network config
* Change behavior of OFDPA VLAN assignment
    - Always use the VLAN in metadata if present
* Bugfix of writing immutable object

NOT in this submission (coming soon):
* Error handling (e.g. link/device failure recovery)

Change-Id: I9be11af04eb2d6456b865c7e59e96cc02370f846
2016-04-18 20:06:57 +00:00
alshabib
48dc2f19d4 adding drivers for the celestica
Change-Id: I404a4e5e5fd75bdeaff19fd68662164d884f6179
2016-04-18 17:45:45 +00:00
Jian Li
dab7256be5 [ONOS-4258] Initial implementation of supporting extension in REST
- Support Nicira extension

Change-Id: I62bf4417e43459727ce7d4b1ac929c6cf0b7826f
2016-04-18 17:24:04 +00:00
Andrea Campanella
bb8775b79f [ONOS-4294] AlarmConsumer for Lumentum e-cord device
Change-Id: I653c5136ae5d162e04d67d1a54ce0dd4b95b3866
2016-04-18 17:10:59 +00:00
Andreas Papazois
827d8d03c0 [GEANT] VLAN arg not needed when removing interface.
Change-Id: I9015f7df65b924901dab7c32a7dd757f7fa55234
2016-04-15 16:57:02 +00:00
Andreas Papazois
59e19bbc76 [GEANT] Multiple VLAN-IDs allowed for trunk mode of ports.
Change-Id: Ib6add6f4bcdcc9ed0fb0448fef91f9f0dbebb57d
2016-04-13 20:21:51 +00:00
Charles Chan
425854b7a7 Fix group handler in CpqD OFDPA driver
We should not use OFDPA extension VLAN ID in CpqD OFDPA driver (gerrit#8609)

Change-Id: Ife451c25c48a7aba2c4f7f8c66f71c9f362ab37c
2016-04-12 03:19:16 +00:00
alshabib
b05be2d9ed Adding support to remove a subscriber.
And fixing an issue where build on a flowrule could not be
called repeatedly.

Change-Id: I85773ac7a3fb4f2970b63599d1eafbfc8b3c5879
2016-04-11 20:52:49 +00:00
Andrea Campanella
e72ac5590d [ONOS-4260]Alarm and fault managment application refactoring according to ONOS architecture
Change-Id: I47e9db37eb5fc27ac19db2e4cb87774736b44685
2016-04-11 18:02:27 +00:00
Murat Parlakisik
4f50e3fe92 ONOS-4283 Adding hp driver
Change-Id: I2d31ea816550ca6d2097eee53650457ee778e9a8
2016-04-11 17:09:23 +00:00
Brian O'Connor
7cbbbb7009 Adding Copyright notice to files that are missing it
Change-Id: Ic08aad8906dbd4dd062e7adcec7465475cf2bdda
2016-04-09 09:51:27 +00:00
Brian O'Connor
5ab426f9ff Updating copyrights
New format: 'Copyright .year-present Open Networking Laboratory'

Change-Id: I1a9e58b355b775e75245ad875a2d7a4df3f03098
2016-04-09 01:20:21 -07:00
Andrea Campanella
7bf2b693a5 Fixing SNMP buck dependecies and build
Change-Id: I974fd09c39a2fecdddd1d9b3ed7a5b47951745d4
2016-04-08 17:15:34 +00:00
Charles Chan
3256252b26 Use OfdpaSetVlanVid extension instead of setVlanVid in group buckets
GroupBucketEntryBuilder now shares the same treatment builder as FlowEntryBuilder.
Therefore, we also need to use the extension when building group buckets.
https://gerrit.onosproject.org/#/c/8485/

Change-Id: Ic85dd10d1bfd8c0ca26f5811369f0587dc286761
2016-04-08 14:50:50 +00:00
Brian O'Connor
b86c920526 Updating Buck files to build OSGi jars
- Using osgi_jar for all modules except apps
- Adding target for installation of core modules to .m2 repo

Change-Id: I65d9e3a9567918e275191724842d7d9b1f485128
2016-04-06 18:17:37 +00:00
Jian Li
ffef500b4a Remove redundant extensionTreatmentInterpreter support check
Change-Id: I1bcaefcdf8f97a7bed4916734142cabc04f566e4
2016-04-06 17:38:49 +00:00