200 Commits

Author SHA1 Message Date
Pier Luigi Ventre
d8a923c512 Avoids delete of dataplane state during mastership change
Leftover in the flow stats creates duplicate flow stats entry.
These entries were considered as flows not in the store and thus removed

Additionally adds further guards during the processing of the stats and
updates unit tests

Change-Id: I242009f560660fb572a633f153edf9798256bfd0
2020-02-24 09:48:19 +00:00
Pier Luigi Ventre
3491e761c0 Revert "Avoids delete of dataplane state during mastership change"
This reverts commit 0a4ead65f47bdf8576bb6d4f1605858f2e8f9df4.

Change-Id: I595ac6181cc0b4494a0e2198629d38522f74d86b
2020-02-20 08:05:43 +00:00
pier
0a4ead65f4 Avoids delete of dataplane state during mastership change
Leftover in the flow stats creates duplicate flow stats entry.
These entries were considered as flows not in the store and thus removed

Additionally adds further guards during the processing of the stats and
updates unit tests

Change-Id: Iba07996e1413c54374b7a4ce7efd21109b429eeb
2020-02-20 08:00:21 +00:00
pier
f528effedd Avoids disconnection from the switches
- Restarting the dispatcher during idle events
- Checking, during idle events, if the backlog can be drained
- Reducing the interval of idle events

Does not change the behavior of the state machine

Change-Id: I1721d8fad37e4e833d0fdfd12d51dc51a06559d0
2020-02-04 08:40:23 +00:00
pier
aeb7dbcf45 Fixes openflow echo req adding flush after write
This fix will avoid the disconnection of the backup instance

Change-Id: I6e4251c0207cdf8a044d2f0f6b033385823b0c51
2019-11-28 15:47:13 +01:00
Thomas Vachuska
e38afb3754 Demoting log regarding interrupt exception to warning.
Change-Id: Iae06ae0f2d5e8a807dc564ee8c64e2982fe9726f
2019-10-14 15:33:40 -07:00
pier
c684ee1939 Fix duplicate dpid scenario
Change-Id: I408d849b385a54963ed86d2f9c0558cdac4efefe
2019-09-23 12:48:07 +02:00
Anton Chigrin
bf14b37efe Use typed queues for OF message processing
Process OF messages through 8 queues. Output queue for messages
controlled per OF Agent with help of message classifiers.

Queues can be configured through component configuration mechanism
for "org.onosproject.openflow.controller.impl.OpenFlowControllerImpl"
component.

Classifiers can be configured through NetworkConfig API in the following
form:

      {
        "devices": {
           "of:0000000000000001": {
               "classifiers": [{
                   "ethernet-type":"LLDP",
                   "target-queue":0
               },{
                   "ethernet-type":"BDDP",
                   "target-queue":0
               },{
                   "ethernet-type":"0x1234",
                   "target-queue":1
               }]
           }
        }
      }

Where "target_queue" is queue number from 0 to 7 (7 is default queue),
"ethernet_type" is a type of a packet either in "0xFFFF" from or enum
name as defined in the "org.onlab.packet.EthType.EtherType" enum.

Change-Id: I0512ef653d90c36f00289014872170c1a8aa5204
2019-08-29 17:27:49 +00:00
Ray Milkey
bd508ede5c cfgdef tool modifications to catch variable names that don't match properties
- catch errors in the cfgdef tool and abort compilation if a mismatch
  is seen
- Fix mismatches in the code discovered by the tool

Change-Id: Icd9a15eb9312bba6c2208b0b2a684062fcdc19c3
2019-03-21 19:07:31 +00:00
Carmelo Cascone
7efca518f3 ONOS-7924 Fix unable to set role for OpenFlow switch
Change-Id: I612450b8f649c055b04a68afaad93ec645984bdc
2019-02-08 17:02:25 -08:00
Carmelo Cascone
ef478a6089 Bump grpc-java to 1.18.0
Requires bumping other dependencies in deps.json such as Netty (4.1.32)
and error_prone_annotations. Includes also fixes detected by updated
errorprone.

Change-Id: Ic2bd86931cc89bfb2cf1a4cb11a4586bc8cac608
2019-02-07 18:49:22 +00:00
Ray Milkey
31b0048a78 Suppress exception stack traces on warning conditions to prevent STC faiures for non-fatal situations
Change-Id: I10d4945e92b3674f00725597d00fc13cc140c943
2019-02-07 18:15:23 +00:00
Thomas Vachuska
52f2cd1520 Detangling incubator: virtual nets, tunnels, resource labels, oh my
- virtual networking moved to /apps/virtual; with CLI & REST API
- tunnels and labels moved to /apps/tunnel; with CLI & REST API; UI disabled for now
- protobuf/models moved to /core/protobuf/models
- defunct grpc/rpc registry stuff left under /graveyard
- compile dependencies on /incubator moved to respective modules for compilation
- run-time dependencies will need to be re-tested for dependent apps

- /graveyard will be removed in not-too-distant future

Change-Id: I0a0b995c635487edcf95a352f50dd162186b0b39
2018-11-13 22:14:50 +00:00
Thomas Vachuska
00b5d4fee0 Removing commented out @Property annotations from the drivers, protocols, pipelines and providers.
Change-Id: I4cabc5a53c93b778824c72cebbce0ec49700eade
2018-10-30 23:43:55 +00: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
柯志勇10068695
55f80b6a23 The result of dis.getMessageDigest().digest() must be returned here. Otherwise, this method will lose its meaning.
Change-Id: I356a47386bde4c39eb5e1e95a3f7036a38137acd
2018-10-19 05:54:58 +00: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
b5646e6f7a Use property constants for OSGi components for stores
Change-Id: I5d21075abb453d5bc54e02653d5a96746e6a074e
2018-10-16 18:52:22 +00:00
Ray Milkey
309f9a0944 Implement OSGi properties for openflow protocol
Change-Id: I1abee2716909c8d102fcfd53f10515d7e0439a9f
2018-10-16 17:24:58 +00:00
Ray Milkey
d84f89ba3d [WIP] Upgrade ONOS to karaf version 4.2.1
Change-Id: I7cd40c995bdf1c80f94b1895fb3344e32404c7fa
2018-09-28 11:20:57 -07:00
Ray Milkey
5274150fa5 remove deprecated start() method
Change-Id: I91de662a165b943f46cff8b023e637633f9133c0
2018-09-11 16:43:26 +00:00
Ray Milkey
7f98ba611d Deprecated protected data is now private
Change-Id: I520222a069a74f389b271734741807db80ec716e
2018-09-07 16:34:31 +00:00
Ray Milkey
761e80a427 Remove pom files from ONOS
Change-Id: I53e2395466cba10222d638736635b11380421d98
2018-08-21 18:11:58 +00:00
Ray Milkey
312d987732 Starting snapshot 1.15.0-SNAPSHOT
Change-Id: I9239c7695f7faf6dc184a0ff54a34dedf4761b2d
2018-08-20 16:09:54 -07: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
ONOS Jenkins User
4e5f2d67ac Starting snapshot 1.14.0-SNAPSHOT 2018-08-13 23:16:37 +00:00
ONOS Jenkins User
cff0bd8922 Tagging 1.14.0-rc1 2018-08-13 23:15:43 +00:00
Ray Milkey
4867af2f9c Revert "Tagging 1.14.0-b1"
This reverts commit 78ce40093ac008fd6d169ab83d2d5961f91f6e31.

Change-Id: I8482f550c30f75d65333f6be9c9115a930abc56f
2018-08-10 16:53:10 -07:00
Ray Milkey
78ce40093a Tagging 1.14.0-b1 2018-08-10 11:16:44 -07:00
Carmelo Cascone
72893b7755 [WIP] Attempt at building grpc and p4runtime protocols with Bazel
STILL NOT WORKING AT RUNTIME

Change-Id: I1f9e60b12a12e09edad2a714ec2921a4f71c6d35
2018-08-09 20:33:39 +00:00
Ray Milkey
816db1086a Add modules to Bazel build
cli
core
incubator/rpc
pipelines/basic
protocols/netconf
protocols/openflow
protocols/rest

Change-Id: I165b94a04ba893d97d944e5deb2746f54566503b
2018-05-31 15:44:36 +00:00
Ray Milkey
0bcdfd1e59 reformat bazel files to use Google coding standards
Change-Id: I320f0ca7ccb1b2247ccdd9fa58fefca7dad8a16f
2018-05-23 14:07:19 -07:00
Ray Milkey
7dac7dadf5 Initial builds using bazel
Change-Id: I38123b396a2ffda5f36cdca43f3ad1fa67a7ab52
2018-05-23 20:38:54 +00:00
Yuta HIGUCHI
cf03a0fafd Fix call passing arrays to hash
- http://errorprone.info/bugpattern/ArrayHashCode

Change-Id: Ic2ffb201de6ba2973f41868b4ed99c86ba78c359
2018-05-16 15:56:57 +00:00
Brian O'Connor
1bd4a9f12f Adding netcfg listener to disconnect switches when certificate is
updated or removed.

Change-Id: I04b170aec328b4c91a6d699ff128347d9a148736
2018-05-15 23:04:21 +00:00
Brian O'Connor
f7215b8ec7 Updating Openflow controller properties
- Moving TLS related config to separate config object
- Added support for adding/removing OF ports without restarting channel group

Change-Id: I79552334519434780d9174a1a9ff4eebc0d17194
2018-05-15 20:16:28 +00:00
Brian O'Connor
f69e3e3409 Fix for CVE-2018-1000155
Denial of Service, Improper Authentication and Authorization,
and Covert Channel in the OpenFlow 1.0+ handshake

Change-Id: Ifd285208266a1f331f3b802cb656349aad1782a9
2018-05-10 20:52:35 -07:00
Thomas Vachuska
164ecf6019 Adding mechanism for device subsystem & providers to trigger device
reconnect in support of ONOS-7645 (device driver change)

- added device listener to OpenFlowDeviceProvider to properly disconnect switch
- removed device listener from OpenFlowControllerImpl
- augmented DriverManager to consult NetworkConfigService as a primary source

Change-Id: I1aa8e9cc7e81ff3af7a72145f4e51f3e32022806
2018-05-09 17:51:20 +00:00
Ray Milkey
bca9049101 Starting snapshot 1.14.0-SNAPSHOT
Change-Id: I97bab4e31d2b701f015289eae29d0c58a4937685
2018-04-13 12:47:31 -07:00
Charles Chan
982d390e5a Protect channelIdle from NPE
Change-Id: I9a802f2686ee9ec70ddfd52d8df2a9a2293201b9
2018-03-22 14:42:15 -07:00
Ray Milkey
0e814b38f0 Remove deprecated static factories
Change-Id: I69a21b769ea6dc07597618330ba06ce7a11d392d
2018-02-15 13:53:20 -08:00
Ray Milkey
505d4e31a1 Remove deprecated static factories
Change-Id: If6490f504582c05a88b812547b7ede2b5d46b247
2018-02-15 13:34:13 -08:00
Ray Milkey
f3cbc80f16 SONAR suggestion - remove unneeded catch of Exception
Change-Id: Ic83dd4d6048a4fca3582d30a21a37595e1e8a3a8
2018-02-07 17:18:44 +00:00
Ray Milkey
986a47aa7c SONAR suggestion - generic exceptions
Replace uses of generic RuntimeException
with more appropriate unchecked exceptions

Change-Id: If283743c2cf7252b8d280bdb788708ebbe57da9d
2018-02-01 18:36:33 +00:00
Jonathan Hart
39e2023c6c Don't try and write an empty list of OF messages
Change-Id: Ic18971cd0b4b019906d2bdcbe9aef627f79065f7
2018-02-01 09:26:02 -08:00
Yuta HIGUCHI
fbd9ae9cdf Various small fixes
Change-Id: I83802169d0d968f7b88d4be2cedba74b15fdd7da
2018-01-25 22:17:25 +00:00
Jonathan Hart
34a14f71f0 Add more logs to help debug packet processing issues
Change-Id: Ia9e36bff44b6bad018305725ebb0fc2a47c86376
2018-01-25 22:13:44 +00:00
Saurav Das
45f4815be0 Take down edge ports on a leaf switch when all uplinks are gone
- Bug fix for case when all uplinks are gone, but dual-homed host continues to send packets to switch;
  We now administratively take down the host port to force the host to use the other leaf in the pair.
- Restructured SR manager by creating a LinkHandler
- fixed/added some log messages

Change-Id: I3722cd364dc8798b16891519bec165627e92bd87
2018-01-19 18:30:10 +00:00