14270 Commits

Author SHA1 Message Date
Carmelo Cascone
c0b23a459f Allow building third-party apps based on gRPC
By publishing the repackaged grpc and protobuf artifacts

Change-Id: Ib3af7dba4f64948132aa70be31922de61d6f6ab2
2019-04-25 15:38:00 -07:00
Jian Li
1b5c5fadfe Fix: specify the source MAC as fake GW MAC for self ARP reply case
Change-Id: Ie59ca9143267da6737a3b18fdcfa53c54caea1f9
2019-04-25 17:49:58 +09:00
Ray Milkey
efb6cc53df Fix build behind web proxy - provide all jars needed by grpc java
Change-Id: Ibb925f6d261917c42a6f9a3e3aac27533083d8e9
2019-04-24 22:11:05 +00:00
Boyuan Yan
c684db3c2a fix bug caused by Shell command in OSX system.
Change-Id: Ifb2fadbac38ba0c28a3d4c61a703ed217c32beb2
2019-04-23 22:42:58 +00:00
Jordan Halterman
d884d8acf9 Pre-allocate sliding window counter slots to avoid thread safety issues.
Change-Id: I331457ee36416d11e52a2e8092662ade3f2e8575
2019-04-23 22:42:28 +00:00
Ray Milkey
91af10a555 Prevent unhandled exception if the executor is already shut down.
Change-Id: I63b2f093fea90d99c85cfe8ffa2a264eee56d981
(cherry picked from commit 5666f1d63253093c5761e8edf94fcd8e218c7b1f)
2019-04-23 20:38:30 +00:00
Carmelo Cascone
75a9a8958e Trigger pipeconf deploy right after registration
Without waiting for the next pipeconf watchdog periodic probe.
To support this, this patch extends the PiPipeconfService to advertise
pipeconf registration events.

Change-Id: Ib44f1813bd37083c666a5e7980de320ce469c2d2
2019-04-23 19:39:56 +00:00
Carmelo Cascone
dc971924d1 Show class name instead of thread when logging to console or CLI
Applies to log shown when running `onos-service` or `log:tail` in the
ONOS CLI.

Change-Id: I8ba36308246c5e9d09c7691d929fcca8a699817b
(cherry picked from commit 4f6fff7843a0c402113be079befc63b0296d182a)
2019-04-23 18:27:58 +00:00
Ray Milkey
deeb726083 Use a copy on write array list for sliding window counter
Change-Id: I80f957c55e49b94e6904630ece031c1dbc8ad356
2019-04-23 16:05:27 +00:00
Boyuan Yan
a00e3d0748 [ONOS-7850] powerconfig for Cassini equipment.
Change-Id: If8a03ca4f2fa29536a56a0ff55d77600baa11d1b
2019-04-23 08:39:32 +00:00
Matteo Scandolo
9f4f0072c4 Adding DHCP IpV6 support in VOLTHA Driver
Change-Id: I587bcb6c549a0596f9a64784e5b5e102333675a1
2019-04-22 17:36:32 -07:00
Gamze Abaka
7e65ac7e41 This patch solves the following problem:
- The callback mechanism of the MeterContext is not working properly.

Please note that

When a meter is added successfully (it means we get the first meter-stats reply), DistributedMeterStore must complete the related future.
When the related future is completed, MeterManager calls the MeterContexts' onSuccess() method.
onSuccess() method can be used to solve ordering problems between meter-mods and flow-mods.

Change-Id: Ifed8b317331c05089b90041eaf2d4693c938e117
2019-04-22 17:35:51 -07:00
Gamze Abaka
2bc10aed5b This patch solves the following issue:
* When flow stats reply is received, a new FlowEntry object is created. However, although flow stats entry includes meter instruction, ONOS does not assign this value (meterId) to the FlowEntry object.

Change-Id: I73ad5dd75b3b77117360844fea66adb3b132cc87
2019-04-22 17:35:29 -07:00
Gamze Abaka
7c070c8fda DHCP and IGMP trap flows must include write metadata (tech profile id) and meter instructions
Change-Id: Idfd3d28730be6cab414ab5eb099e9ec9f5555d86
2019-04-22 17:34:58 -07:00
Gamze Abaka
6c8a71b086 In order to complete https://jira.opencord.org/browse/VOL-1093 and https://jira.opencord.org/browse/VOL-1401, OltPipeline must support meter and write metadata instructions for authentication trap flows. Additionally, all flows must include write metadata instruction instead of transition. This change will be done for 1.13 branch.
Change-Id: I98d0bde9dc854bd3bf55a9df3b1dea9442bcfa19
2019-04-22 17:33:51 -07:00
Gamze Abaka
dadae72079 In order to implement VOLTHA VOL-949 task (https://jira.opencord.org/browse/VOL-949) , OltPipeline (pmc-olt driver) must support meter, transition and also QinQ vlan push instructions.
Change-Id: Ie027469fa190a78b0c8366da55431ebc62e699ef
2019-04-22 17:11:38 -07:00
Gamze Abaka
65f27f1aae ONOS-7733 Meter Creation Fails :
When we want to create a meter, MeterManager & DefaultMeter.Builder gives the following error:
java.lang.IllegalArgumentException: Must specify a cell id.
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:134)
at org.onosproject.net.meter.DefaultMeter$Builder.build(DefaultMeter.java:241)
at org.onosproject.net.meter.DefaultMeter$Builder.build(DefaultMeter.java:184)
at org.onosproject.net.meter.impl.MeterManager.submit(MeterManager.java:204)

It seems that MeterManager still uses meter id instead of meter cell id. It must be changed with the proper value.

Change-Id: I623746b38af1148ca7f33efe5e48d6590a11051a
Note: Cord OLT application must create meters for the technology profile implementation and it uses 1.13.1 version.
2019-04-22 16:45:40 -07:00
Ray Milkey
722f74c3fd Starting snapshot 2.2.0-SNAPSHOT
Change-Id: Ib48a5308969c82999396bab1941e6e44c8f54b1a
2019-04-22 10:48:14 -07:00
jaegonkim
f85ee3c201 [ONOS-7732] Automating switch workflow - program counter refactoring
Change-Id: Ic5271121dad45222ded24ea41dbb2f5efba1ff2e
2019-04-21 11:10:25 +09:00
ONOS Jenkins User
2d77c1a049 Starting snapshot 2.1.0-SNAPSHOT 2019-04-19 17:24:24 +00:00
ONOS Jenkins User
0dd5085e8f Tagging 2.1.0-rc2 2.1.0-rc2 2019-04-19 17:24:15 +00:00
Sean Condon
b0a196aa54 GUI2 bug fix for Hosts hidden command
Change-Id: Ia1aedb4ab0f9c04bed0bfc324e08815fd8f0a6d1
2019-04-19 15:32:05 +01:00
DongRyeol Cha
07f0d37c87 Change sequential stream to parallel stream
If some devices are late to response result, remained switches's information will be pended to update.
So, to reduce the execution time and to prevent delay of update information, change sequential stream to parallel stream.

Change-Id: Id0fe2307c2c5705e781dc61d07faecb2a1e55d65
2019-04-18 23:03:46 +00:00
Ray Milkey
549b154ae2 put back filtering of build/conf artifacts
Change-Id: I6cb2d308e0cacc102e02c56e77f4a3603e8d0e65
2019-04-18 19:08:45 +00:00
Thomas Vachuska
d4780eba39 Adding GUI 2 as a default to be activated if ONOS_APPS is unspecified.
Change-Id: I386b54bfb732e8b176129e72caa4093ed51866b7
2019-04-18 19:07:47 +00:00
Carmelo Cascone
bc7eb85a88 Filter groups by application ID, for real
Change-Id: Ia5fb6b2a2dc0e41b9de83066aeb61f7da20d87cd
2019-04-18 16:05:46 +00:00
Sean Condon
c13d956cc2 GUI2 bug fix for Force graph
Change-Id: I6f47f22327ec115a7a59dd8a6d685f74fccfbe5f
2019-04-18 13:35:16 +01:00
Carmelo Cascone
3b4baa07e4 Improve fingerprint computation for pipeconf
Do not read extensions in memory and consider pipeline model.

Change-Id: I3e077fbcd9ed0a2dba78b4e1c87e95ecb7287be6
2019-04-18 05:57:49 +00:00
Carmelo Cascone
33f36a0ec7 Clean up PipelineInterpreter API by removing ambiguous methods
Such as mapping from PiMatchFieldId to Criterion.Type. This should not
be required since the only translation happening is from north
(Criterion.Type) to south (PiMatchFieldId).

Change-Id: I204e0bd66b3996fd60bc11d4241e8a0408e11582
2019-04-18 05:55:06 +00:00
Carmelo Cascone
adb89058b4 Do not require device data blob when checking pipeconf on device
This prevents loading potentially large amount of data in memory when
doing pipeconf reconciliation, as well as unregistering a pipeconf while
devices are using it (since we no longer need to access the
target-specific extensions to generate the device data blob)

Change-Id: Ib54123ce49a931ff88d93c991244d4086e5d7de0
2019-04-18 05:52:26 +00:00
Carmelo Cascone
5505a6d925 Fix P4Runtime driver ignoring CLONE groups
Change-Id: I24d9b52bc5ea89320d9ef6afa5f82c4778edfc21
2019-04-18 05:52:19 +00:00
Carmelo Cascone
1dfc7868cd Do GDP checkup for all devices in config and core
Tearing down connections for those devices removed from the config

Change-Id: I9a138054bfc61d55d470e7d89b50b42c07c4490b
2019-04-18 05:28:59 +00:00
Sean Condon
bed2e0328b GUI2 fixed Quickhelp to use LionService
Change-Id: Id0799dd63de186ada17ec03380576d166947af19
2019-04-18 00:59:44 +00:00
Ray Milkey
8d0c9e46a3 Repair sonar scanner that was broken by the change version script
Change-Id: I15dcd88587012def0db018c5aa7ebcc4427596d9
2019-04-17 23:17:23 +00:00
Carmelo Cascone
9db4d5c644 Add support for P4Runtime clone sessions via Group API
Clone sessions can now be created by defining groups with new type CLONE

The PI framework has been refactored to abstract commonality between
multicast groups and clone sessions as both are managed as part of the
P4Runtime packet replication engine (PRE).

Change-Id: I2f23c629b7de1931d5cab96ec76aef26130ce418
2019-04-17 21:55:13 +00:00
Carmelo Cascone
5079a7f4ac Define new type of group CLONE
Used to distinguish between multicast groups and clone sessions in
P4Runtime.

Change-Id: I21a2411c759a1d9524b4a69354c8b343100f8f05
2019-04-17 21:55:02 +00:00
Carmelo Cascone
4b616316d9 Further improvements to connection handling for gRPC-based devices
Force reset of gRPC connection backoff when probing for reachability.
This allows provider to attempt reconnection when needed, instead of
depending on the channel backoff timer.

Improved checkup task in GDP to better handle mastership
flapping observed when reconnecting devices.

Change-Id: I473fb14160b2eb744a483de431b91f9f6bcdab95
2019-04-17 21:54:42 +00:00
pier
ed2a0a49c6 Move modified after registerProperties in FlowRuleManager
Change-Id: Ic5826cb55df384eec4d710e8a2b826387ac5f3ab
2019-04-17 22:24:46 +02:00
pier
8b3aef446d Implements accumulation of the fwdobjectives in ofdpa pipelines
Change-Id: I95cbdd9b3fb8d439003a103111a01dc3aee2072b
2019-04-17 15:26:58 +00:00
Sean Condon
6eb2cb8712 GUI2 update Angular component versions to 2.1.0
Change-Id: I47d5ede8c5cfdf77e309b1883984a1220d8d9723
2019-04-17 14:18:28 +01:00
Sean Condon
d131d1f800 GUI2 ModelCache bug fix for NPE
Change-Id: Ib5bf3c879c7c980a7fb8e3c11af68867be3431c0
2019-04-17 09:28:08 +01:00
Yi Tseng
556c8d4b40 Fix NPE of P4Runtime device when deleting a group
Change-Id: I98b87beddc6b1b7afec537d4d618185006c31aeb
2019-04-17 02:20:54 +00:00
Carmelo Cascone
4b2ff04ad8 Fix clone session not working for BMv2 built in p4vm
Change-Id: I9e1e2516aa886303b406a9d5ab286c5f22e733d3
2019-04-16 21:19:34 +00:00
Carmelo Cascone
bcd47b9452 Do not exclude targets in publish-target-list
The egrep filter was probably added during the transition from Buck to
Bazel, to skip targets such as onos-protocols-grpc-api which build with
Bazel was still broken.

Change-Id: I0951ae9c0654715bdf1e3899e7df178b26a4f2ad
2019-04-16 18:12:56 +00:00
Sean Condon
058804c2e7 GUI2 Display of mastership for devices
Change-Id: I13ed95d1a58d055aa913c69402541b87855c28c8
2019-04-16 12:22:10 +01:00
Thomas Vachuska
3d592c6851 Replaced test mock with existing adapter in archetypes.
Change-Id: I85ae00a5d30ccd0ca49b38e627ca73497a4bf6b7
2019-04-15 22:06:46 +00:00
Carmelo Cascone
3032b87e07 Fix missing IPv6 table size in fabric.p4
Change-Id: Ic5af848958e9692087b873f9248eac093b2b463a
2019-04-15 20:34:20 +00:00
Carmelo Cascone
d51a555886 Minor fixes for P4Runtime devices
- Push ports before device is marked online
- Do not notify role NONE on device disconnection (otherwise the
DeviceManager won't mark the device as offline if there's not a master)
- Detect changes in the pipeconf extensions when reloading a pipeconf

Change-Id: I1779987da1269ec98c71b2ccda7bb579be5bf3f0
2019-04-15 20:34:12 +00:00
Sean Condon
5f7d3bc950 GUI2 Fixed bug of edge link not being added dynamically
Change-Id: If5a2b546f23274bbdac09a55bdd18357c72414fe
2019-04-15 12:17:24 +01:00
Sean Condon
adeb716721 GUI2 Topo Added base common base for Topo2ViewMessageHandler and TopologyViewMessageHandlerBase
Change-Id: I6818b764a3dbafb134786c4f6cdddd051b0c88ba
2019-04-13 20:56:14 +01:00