1734 Commits

Author SHA1 Message Date
Ray Milkey
123f0e08ad Merge branch 'master' into dev-karaf-4.2.1
Change-Id: If6c7d5f1dc6434ac8ea2fd9716b8ebeee38daa50
2018-11-08 14:18:52 -08:00
Daniele Moro
3a6e1517e1 Added suggest path to PointToPointIntent
Change-Id: Ie8ae3af6bd97af3628334d37482e63196d15b094
2018-11-08 11:12:50 -08:00
DongRyeol Cha
ce65cc0055 Make a link depends on packet-in LLDP packet.
The ONOS does not process the incoming LLDP packet from switches.
The ONOS only process LLDP packets if LLDP packet has "ONOS Discovery" optional TLV.

So, this changes process incoming LLDP packet from switch and make a link information and onos can utilize it.

Also, this patch changes the requested appId of DefaultForwardingObjective generated by PacketManager.
So, AppId in result of flows cli will be printed to actual requested appId.

ONOS-7748

Change-Id: I2611b34655bec2369b8817ce0cd29fb2edbed845
2018-11-08 18:36:54 +00:00
Charles Chan
5cf77f54e3 Do not invalidate the cache again if the dequeue is triggered by the cache timeout
Change-Id: Ie5a043f39a673004d5b29021a854fb4eeef0075a
2018-11-08 17:10:24 +00:00
Jordan Halterman
dfc4855437 Update components monitor to check enabled component states
Change-Id: I1485df83fa793fcfc48adc3b8fe4c51b5dacb64c
2018-11-02 11:08:30 -07:00
Thomas Vachuska
e17756d128 Changing version from 1.15.0-SNAPSHOT to 2.0.0-SNAPSHOT.
Change-Id: I61a586cfc769275db78f4059a630ab0e0f87c6e7
2018-11-01 00:04:30 +00:00
Thomas Vachuska
f566fa2503 Removing commented out @Property annotations from the core.
Change-Id: I336f6a21db531187b8e2fcfb51e7da315c615771
2018-10-30 23:43:48 +00:00
Ray Milkey
a218d43062 Merge branch 'master' into merge
Change-Id: Id77bb2de77dd288404c83e331b076aaf9aafacc5
2018-10-30 12:44:55 -07:00
wu
66460c9cb6 The tableAction should be checked if it is null.
Change-Id: Id88a40f21754362dd28529264a0fdf3671c364d4
2018-10-30 02:22:03 +00:00
hjtsao
1e8a1bd5ce [ONOS-7818] Implement a device behaviour to get table statistics. Make FlowRuleDriverProvider periodically call FlowRuleProviderService.pushTableStatistics().
Change-Id: Ife2b67b8c6c3582281704afe6f9a90538afbc798
2018-10-26 22:47:29 +00:00
Tian Jian
b7a595855c Make the code more explicit.
Change-Id: I2933d437f974e3329fb9484035c8a1753063c1a2
2018-10-26 18:45:14 +00:00
Ray Milkey
956bb1691a Merge remote-tracking branch 'origin/master' into dev-karaf-4.2.1
Change-Id: If611105632e508cb17352c6f5b1cbcfd85f716d1
2018-10-26 10:53:44 -07:00
Thomas Vachuska
22ea6126e4 Removing BUCK files and other Buck-related auxiliaries.
Change-Id: I23691380efcd9bce4906695605214ed59ada0e87
2018-10-24 20:02:31 +00:00
Ray Milkey
d542568b21 Merge branch 'master' into dev-karaf-4.2.1
Change-Id: Iec1b8947c898b0bf10db8caece0c3a064d1c63ae
2018-10-23 10:50:43 -07:00
Tian Jian
855b108bcc [tiny-fix] Missing deviceId for log.
Change-Id: I1855510df180b098023ef9d073c5baab7d2464a7
2018-10-23 17:20:06 +00:00
Tian Jian
9cb2e9e93d [tiny-fix] Wrong location of deviceId in the log.
Change-Id: Ib74ba2f152cc7554f930b49289e3697ac1d3f23f
2018-10-23 13:45:10 +00:00
柯志勇10068695
d709dba068 Request may be null, if not checked, it may be error.
Change-Id: I78408b894815461403e757f1042d08361216cff2
2018-10-23 13:02:05 +00:00
Thomas Vachuska
bef430b5f8 Integrated new style of cfgdef generation into the Bazel build.
Change-Id: Ic7b030504285a59f715790396bc04335df8fbd15
2018-10-22 10:55:47 -07:00
Ray Milkey
d17309c2f5 Merge branch 'master' into merge
Change-Id: I35af23202e94a114f129f2f000ab237165b26737
2018-10-18 10:12:54 -07:00
Ray Milkey
2d7bca1540 Move type specifiers from property name constants to the corresponding component annotations
Change-Id: Id5e3b669721ecf076a010cc4783b9e6b33e6fca0
2018-10-17 22:41:15 +00:00
Ray Milkey
d04e227b68 Constants for core/net OSGI properties
Change-Id: I43c27f7d513167da29eaf8a851989263e5d4db66
2018-10-17 13:19:13 -07:00
Samuel Jero
31e16f57b1 Secure LLDP-based Topology Detection
Current LLDP/BDDP-based Topology Detection is vulnerable to the
creation of fake links via forged, modified, or replayed LLDP packets.
This patch fixes this vulnerability by authenticating LLDP/BDDP packets
using a Message Authentication Code and adding a timestamp to prevent
replay. We use HMAC with SHA-256 has our Messge Authentication Code and
derive the key from the config/cluster.json file via the
ClusterMetadata class.

Change-Id: I01dd6edc5cffd6dfe274bcdb97189f2661a6c4f1
2018-10-17 15:59:31 +00:00
Ray Milkey
db57f1c326 Merge branch 'master' into dev-karaf-4.2.1
Change-Id: I86b9d80581cd76a7c20e05201023090f9692d1ab
2018-10-09 11:26:45 -07:00
Ray Milkey
584f54bddb Fix race condition between AtomixManager and metadata providers startup
Change-Id: I4799c079455e0e5c79a800ba3108b4c9eedbe1b2
2018-10-09 16:45:16 +00:00
Carmelo Cascone
e44592f246 More robust P4Runtime group handling
This patch solves the PENDING_UPDATE and PENDING_ADD_RETRY issue
observed on the ONS EU topology.

The P4Runtime action profile group handling has been re-implemented to
be robust against inconsistencies of the device mirror, which is now
periodically synchronized with the device state. Similarly, we implement
a routine in the P4RuntimeClient to cleanup unused action profile
members.

This patch includes also:
-  Refactor PI handle classes to allow creating handles without the
entity instance
- Use list instead of collections in P4RuntimeClient methods, as order
of updates sent and/or entities received from the device is important

Change-Id: I2e7964ce90f43d66680131b47ab52aca32ab55d2
2018-10-05 23:45:29 +00:00
Carmelo Cascone
da0b559e91 Recover missing pipeconf-merged driver at component activation
needed to support rebooting ONOS nodes

Change-Id: I44d34c649750ffc3d6b0205ee02c8c88391f1f8a
(cherry picked from commit ccee77a024c14c3cef68457028ea71edc0555f54)
2018-10-05 20:55:58 +00:00
Thomas Vachuska
2fd325f73a Minor clean-up of the 4.2.1 migration.
- eliminated annotations in a few remaining abstract component classes
- cleaned up gui/gui2 feature bundle lists
- added version to the karaf features patch
- loading onos-rest by default in karaf features patch
- onos-gui loading still WIP

Change-Id: Ie5a74c0daee939a9d2de30e1737e4f88dd2ae478
2018-10-01 13:21:23 -07:00
Ray Milkey
86ad7bb5e7 [WIP] apps CLI changes for karaf upgrade
Change-Id: I283efc39c7d4f4b31344f1d2d0cdd2b98a60932d
2018-09-28 11:21:43 -07:00
Ray Milkey
d84f89ba3d [WIP] Upgrade ONOS to karaf version 4.2.1
Change-Id: I7cd40c995bdf1c80f94b1895fb3344e32404c7fa
2018-09-28 11:20:57 -07:00
Jordan Halterman
e458f00453 Support hostname resolution for cluster configuration
Change-Id: I9afb97bfba05366fa63dc7b9022b914bd2d1cce0
(cherry picked from commit 97cd95d5a2a7a1bf1f3bfd3091f2d66f747eee33)
2018-09-25 16:04:28 +00:00
Ray Milkey
cc0012423b Remove some calls to the deprecated Path.cost() API
Change-Id: I71d01fdf35d8a06639e6422b4c8d5998b14e319d
2018-09-24 17:28:38 +00:00
Ray Milkey
6e7843d5a3 Remove deprecated non-filtered ingress and egress connect point APIs
Change-Id: Ie360dfc2288b27587ffcdb23bc29f266df1a8d73
2018-09-24 17:28:05 +00:00
Ray Milkey
33306ba609 Revert "Removing applyRole to avoid double mastership requests to the provider."
This reverts commit 82e21897f3e735594510709fc9f0bc85f37d8f4c.

Change-Id: Id0a76f915fadcc0f83b588159eef537a5d695c62
2018-09-20 13:42:22 -07:00
Ray Milkey
66bf3824ea Remove deprecated Host Provider APIs
Change-Id: Ie6b2d2e38160a015df97337c06101e9156c8ab83
2018-09-18 16:55:56 -07:00
Andrea Campanella
82e21897f3 Removing applyRole to avoid double mastership requests to the provider.
The request roleforSync call handles the request.
The store selects a role and this in turn issues a
handleMastershipEvent call that deals with applying the request

Adapting NETCONF device provider to mark online only after session establishment.

Change-Id: Id16937ced3af31b5b65bc6e5b0794557cf900a57
2018-09-18 07:35:41 +00:00
Carmelo Cascone
de3b6843ca Relinquish mastership when device reports "permission" denied event
Also reduces default pipeconf watchdog probe interval
Also fixes NPE on GDP when device is unreachable

Change-Id: Ie2fe1874b0883a037596d9a555a2f8cc030a55a6
(cherry picked from commit d797e2c28505fbdbb8597038ebcf977a053bae72)
2018-09-10 08:33:22 +00:00
Ray Milkey
3bceb01c23 Remove deprecated getLeaderBoard() API from LeadershipService
Change-Id: I009e1ae26faef3950a7a5e997376783895f575f2
2018-09-07 13:42:46 -07:00
Carmelo Cascone
9e4972c5d8 Refactor P4Runtime subsystem to implement async connection procedure
This patch is an attempt to solve issues observed when restarting both
switches and ONOS nodes. Most of the issues seemed to depend on a
brittle mastership handling when deploying the pipeline.

With this patch, GDP registers devices to the core with available=false
(i.e. offline) and marks them online only when the P4 pipeline has been
deployed to the device. A new PiPipeconfWatchdogService takes care of
deploying pipelines and producing event when devices are ready.

Moreover, we fix a race condition where pipeconf-related behaviors
were not found. This was caused by GDP enforcing the merged
driver name in the network config, while external entities (e.g.
Mininet) were pushing a JSON blob with the base driver name. This patch
removes the need to rely on such a trick and instead uses
pipeconf-aware logic directly in the driver manager (change #19622).

Finally, we fix issues in P4RuntimeClientImpl that were causing the
stream channel not detecting unreachable devices. The solution is to
follow gRPC APIs and re-instantiate a new channel once the first fails.

Change-Id: I6fbc91859c0fb58a6db3bc197b7081a8fe9f97f7
2018-09-06 03:08:09 +00:00
Carmelo Cascone
0761cd3cc0 Few core changes in preparation of P4Runtime subsystem refactoring
Refactoring aims at providing a more robust connection procedure of
P4Runtime-based devices.

Refactoring requires devices to be registered to the core with
available=false (i.e. offline), and marked online only when the P4
pipeline has been deployed to the device. Also, it leaves the duty of
handling pipeconf-specific drivers to the driver subsystem, instead of
having the GeneralDeviceProvider take care of it, which resulted to be
brittle.

Changes include:
- Choose not to mark device online when re-asserting mastership role by
declaring special device annotation.
- Lookup drivers in device projectable model unsing driver service
device-based method, which is consistent with the way other subsystems
look for device drivers.
- In DriverManager, when looking for device drivers, consider the case
of pipeconf-programmable devices, in which case a special "merged"
driver needs to instantiated at runtime.
- In PacketManager, push flow objectives only if device is available
(i.e. after pipeline has been deployed).

Change-Id: I80f78a4f40730a06cb82fa55fefab08a91a89268
2018-09-06 03:07:44 +00:00
Carmelo Cascone
da60a61435 Build missing pipeconf-merged driver at startup
Change-Id: Ia5600de362978be1f551c7581d138e35b9736108
(cherry picked from commit 11296f34f16041f3ae32c735b7218cb4ca98637a)
2018-08-28 04:51:16 +00:00
jaegonkim
8eabcecfe6 [ONOS-7751] Sometimes device availability is not changed to available after creation of OF device
Change-Id: I5fd62c598e865e149755b9d09594c985846a572b
2018-08-21 22:14:09 +00:00
Ray Milkey
761e80a427 Remove pom files from ONOS
Change-Id: I53e2395466cba10222d638736635b11380421d98
2018-08-21 18:11:58 +00:00
psneha
f31ac6ff9f Added one more Component Config REST API; for specified component and variable.
Change-Id: I810aa90636c55c8b05c146780ad28c307cefff33
2018-08-21 12:17:32 +00:00
Ray Milkey
312d987732 Starting snapshot 1.15.0-SNAPSHOT
Change-Id: I9239c7695f7faf6dc184a0ff54a34dedf4761b2d
2018-08-20 16:09:54 -07:00
Charles Chan
b71e1ba963 Do not queue VERIFY objectives
Change-Id: If53738aa3fbe89396bffcc95543a07e9f879c6cb
2018-08-17 17:45:03 +00:00
Ray Milkey
7981a32f37 Fix NPE when component can't be found
Change-Id: I803240cde2d2b2c5efeee03617d0e3a275a2f570
2018-08-16 23:52:44 +00:00
Saurav Das
09c2c4d19b Changing the default pw transport vlan to 4090 instead of 4093.
Also adding component config options for pw transport vlan and default internal vlan.

Change-Id: I8bb48530e46db8534b825eecd9aea781fe3f0de1
2018-08-16 05:00:04 +00:00
Ray Milkey
05d609aa02 buildifier reformatting of bazel files
Change-Id: I1645613ec9dc57e659e7036634fcf3f3992b05a7
2018-08-15 17:55:00 +00:00
ONOS Jenkins User
03e5521fba Starting snapshot 1.14.0-SNAPSHOT 2018-08-14 22:13:58 +00:00
ONOS Jenkins User
3594c24cb2 Tagging 1.14.0-rc2 2018-08-14 22:13:02 +00:00