13802 Commits

Author SHA1 Message Date
Thomas Vachuska
b74fef2841 Making stc-set-openjdk11 non-destructive.
Change-Id: Icee7d34d3e00989e00a5b68a9d82dff7da1f6d96
2018-12-17 09:09:18 -08:00
Jian Li
654204c089 Support GENEVE tunnel type in OVSDB southbound
Change-Id: I9b93c14d93645ac40525c23bff368e0f81a8189d
2018-12-17 08:27:36 +00:00
Ai Hamano
f59360fdca [ODTN]Add UnitTest for OPENCONFIG Handler
Change-Id: Ifc07c45abbc2d8d81f7d50f8ba2c8a3188ae377a
2018-12-17 08:27:14 +00:00
Thomas Vachuska
1e39bd2f44 Allowing cell-stc to inherit stcOpenJDK env. variable.
Change-Id: Iff82642eee04654487245926ba4f3329ed3498cb
2018-12-14 14:47:53 -08:00
Thomas Vachuska
bd8ddfe228 Refactoring audit subsystem to clean-up and eliminate back-dependency from core to CLI; still needs additional work.
Change-Id: I93c04c94f27b7b89c582b359eebe125458a573a7
2018-12-14 14:47:17 -08:00
Ray Milkey
fa066ed2b0 Revert "Adding support for TLS connections for gRPC clients"
This reverts commit 47a3aa697049bf53e8dd4cb76cf9ca262762a175.

Change-Id: I457594c3f423f276b9c49dbbaf068284a36ba9f1
2018-12-14 22:39:18 +00:00
Jordan Halterman
fdd04b879a Update onos-uninstall script to ensure we wait for the correct process to be killed
Change-Id: If46ad4ec3b9b9b1956add85710227bd904236e71
2018-12-14 12:47:31 -08:00
Jordan Halterman
47df7d4c94 Use memory mapped file storage for Raft partitions in tests
Change-Id: I68c3e4befcde059711c6df1b094b578200c00c62
2018-12-14 19:55:43 +00:00
pier
c9539e66d8 Fixes javadoc
Change-Id: I6231432b1be61b4004cef139529d9ab6c8b8574b
2018-12-14 08:04:27 +00:00
Carmelo Cascone
0c6f0a5474 Working STC trellis-p4 scenario with connectivity test
Change-Id: I3ec166856a6a8a3ee705d392ace74b0677aa7ad5
2018-12-13 23:20:49 -08:00
Carmelo Cascone
6d57f32873 Fixed gRPC exception because of channel not terminated
Change-Id: I7a138938a1daa50ab65b6622a372c0275a351535
2018-12-13 23:20:35 -08:00
Jian Li
900b723740 Fix: resolve the component cfg related exceptions
Change-Id: Ibaf2725934cf22971b6323866dc1ca9952de9f22
2018-12-14 14:04:51 +09:00
Jian Li
5ecfd1a59c Refactor: reduce to number of column for better readability at SONA
Change-Id: Ic8dd78cfc219272f98f37651f244c3564755960c
2018-12-14 03:55:31 +00:00
Ray Milkey
6f5b646aa7 Use Open JDK 11 for docker image
Change-Id: I5ef9a4fd3777c9aeb285a9e4dd985232de5175e6
2018-12-14 03:41:21 +00:00
Brian O'Connor
47a3aa6970 Adding support for TLS connections for gRPC clients
This patch uses BoringSSL to negotiate TLS sessions under the hood.

Change-Id: I45b6871eb341bd67a230035a930f6a016d105e97
2018-12-14 03:41:04 +00:00
Ray Milkey
973d11e81c remove hack to suppress warnings about the git_repository() rule
Change-Id: Icb5fd8f9e785280d9d57e9ebf523db4efe31fef0
2018-12-14 03:40:54 +00:00
Carmelo Cascone
4c3364b22e Fix dependencies in Trellis P4 STC scenario
Add steps to verify driver and pipeconf apps, as well as registered
pipeconfs. Also, start Mininet first, then push Trellis netcfg.

Change-Id: Idf52e268e6f50c7f6b8f17a5ea0390f01a607fea
2018-12-14 03:36:52 +00:00
Jian Li
411bf2e9bb Refactor: resolve code smells of openstacknetworking impl pkgs #3
Change-Id: I825e23cd16917abd4512d35222d695b268064ff7
2018-12-14 02:42:25 +00:00
Ray Milkey
51cf307e6c Fixes to allow running p4 trellis scenario
Change-Id: I4882668168521b9119692ecd696189b2b8d5f9de
(cherry picked from commit a61ba5792d9e7a25d3446f37179fbf13ac152098)
2018-12-13 22:20:02 +00:00
Thomas Vachuska
b73ca6d3c8 Fixing a potential start-up issue in PacketManager if device driver cannot be found.
Change-Id: Id76ed27b00c59d4d1d4afc13b999ec306c7056ce
2018-12-13 10:08:00 -08:00
Thomas Vachuska
a1d20e2f26 Adding utility to set cell machines to OpenJDK 11.
Change-Id: Ie6addd459bf68f1158199a8682acc4d620d2b4c1
2018-12-13 09:48:06 -08:00
Carmelo Cascone
a46f554fb1 Fix runtime of P4-related stuff with new karaf
Change-Id: I139575d5b038224ca8ccce4ec71ec8a84b35dfeb
2018-12-12 23:41:01 -08:00
Carmelo Cascone
15693a23e8 Alias to quickly start Mininet with BMv2 in cell network machines
Also do not generate bmv-thrift netcfg in bmv2.py

Change-Id: Iebb84ab1b6f007ad42366ec676cce6b08e5fc27c
2018-12-12 22:19:38 -08:00
Carmelo Cascone
4277d4f553 Silently ignore devices without gNMI client
It is an indication that the device is not gNMI-enabled

Change-Id: Iede116cb839cb58c533dc709a50cc0f469f0997a
2018-12-12 22:19:38 -08:00
Carmelo Cascone
776be389d1 Rejuvenate (to some extent) the basic pipeconf
- Use auto-generated BasicConstants
- Implement own pipeliner that maps to table0 (will remove soon
interpreter mapping for index table IDs)

Change-Id: I19fd2091605edc0efbe62134e1ad8e3336089cde
2018-12-12 22:19:38 -08:00
Carmelo Cascone
3dfb4313c8 Removed old PI demo apps
Same functionality can be achieved with fabric.p4. For demo/learning
purposes apps/p4-tutorial is a better place.

Change-Id: I06aa5ac58648eefded381d6b5a7829276ede8b67
2018-12-12 22:19:31 -08:00
Yi Tseng
59d5f3efdf Add OpenConfig based port statistics discovery
Change-Id: I3e7d5683f8a51d06db18b644963044d204911346
2018-12-13 01:05:05 +00:00
Yi Tseng
e616d7553e Add gNMI device state subscriber
Change-Id: I20cb5e130f4e416bf8678aab2e5268faf24ad06b
2018-12-13 01:05:05 +00:00
Yi Tseng
d771648025 Cherry pick gNMI and Stratum related changes to this branch
Cherry picked commits:
20211 Update gNMI version and build script
20247 [ONOS-7829] Implement AbstractGrpcClient and AbstractGrpcClientControl
20233 [ONOS-7141][ONOS-7142] Add GnmiClient and GnmiController
20234 Refactor OpenConfig gNMI device description descovery
20260 [ONOS-7831] Implement GnmiHandshaker
20270 Add Stratum driver

Change-Id: I81ad8bce45251af5909cfcac0edbcfd11c8ebf1d
2018-12-13 01:05:05 +00:00
DongRyeol Cha
597315d1b6 Fixed that invalid links are created if lldp packets are received and there are no matched ports in onos.
Invalid links are created even if there are no matched ports in onos.
The root cause is that if lldp packets are received before ports are discovered, LinkDiscovery make a links using lldp packets's port name or port description.
In this case, a port number is generated using port name or port description. But this number is  not matched by the switch's port discovery driver.

So, this changes fix that do not create links if there are no ports in onos at LinkDiscovery.

ONOS-7852

Change-Id: Ib8477006d31fe39a770f2585475a9fedb759da76
2018-12-13 01:02:45 +00:00
Andrea Campanella
d8bc03d90f Updating search for last commitId
Change-Id: Ia6380b718827c340e976ea51e9d985a297a83622
2018-12-12 17:37:41 +00:00
hiroki
96ab3c2c95 Update TAPI YANG model version to v2.1.1
Change-Id: Ie4d6a10800c34cc63c797f6649ba52da81902fd7
2018-12-12 09:02:42 +00:00
Jordan Halterman
86741ece04 Ensure master is excluded from backups list when reading role info from mastership service
Change-Id: Iaa100b8b40614f2f83a05ea32a43f0efde6aad4a
2018-12-12 00:16:07 +00:00
Carmelo Cascone
d06a8511cd Fix fabric.p4 pipeliner not generating next_vlan rule for routing to a tagged host
Change-Id: If3cba5509545bb1de5d8f35796ba2bfee3020ef4
2018-12-11 14:48:06 -08:00
Carmelo Cascone
af3a098b0c Sometimes we need to create multicast groups without replicas
Change-Id: I29dd07115efece0cc2d7d998317cfc3bfd7a1569
(cherry picked from commit 00552ba153a61e2d904e6fcf36d25330630bb8e1)
2018-12-11 14:48:06 -08:00
Carmelo Cascone
630966f841 Fixed new NextTreatment classes not registered in Kryo
Change-Id: I8f3e791fa2317e0ad849aecea5cee1b75d9a16f5
(cherry picked from commit 83df00211edb9cc573f5b126a72023d542956e1a)
2018-12-11 14:48:06 -08:00
Carmelo Cascone
cb83181281 Reconcile the pipeline the old way if cookie is not available
Change-Id: If39490874cfb1738358ddf4fbbbee1a89010579e
2018-12-11 14:48:06 -08:00
Carmelo Cascone
45cc08627f Xconnect support for fabric.p4 pipeliner
Change-Id: I3bd802ccbc34561b71862a160bab67adeccc2891
2018-12-11 14:48:06 -08:00
Carmelo Cascone
b5324e7168 Improve fabric.p4 to reduce pipeline resources and refactor pipeconf impl
This patch affects both the P4 pipeline implementation and the
Java pipeconf.

P4 PIPELINE
- Less tables and smarter use of metadata to reduce inter-tables
dependencies and favor parallel execution of tables.
- Removed unused actions / renamed existing ones to make forwarding
behavior clearer (e.g. ingress_port_vlan table)
- Remove co-existence of simple and hansed table. Hashed should be the
default one, but implementations that do not support action profiles
might compile fabric.p4 to use the simple one.
- Use @name annotations for match fields to make control plane
independent of table implementation.
- Use @hidden to avoid showing actions and table on the p4info that
cannot be controlled at runtime.
- First attempt to support double VLAN cross-connect (xconnect table).
- New design has been tested with "fabric-refactoring" branch of
fabric-p4test:
github.com/opennetworkinglab/fabric-p4test/tree/fabric-refactoring

JAVA PIPECONF
This patch brings a major refactoring that reflects the experience
gathered in the past months of working on fabric.p4 and reasoning on its
pipeconf implementation. Indeed, the FlowObjective API is
under-specified and sometimes ambiguous which makes the process of
creating and maintaining a pipeliner implementation tedious. This
refactoring brings a simplified implementation by removing unused/
unnecessary functionalities and by recognizing commonality when possible
(e.g. by means of abstract and utility classes). It also makes design
patterns more explicit and consistent. Overall, the goal is to reduce
technical debt and to make it easier to support new features as we
evolve fabric.p4

Changes include:
- Changes in pipeliner/interpreter to reflect new pipeline design.
- By default translate objective treatment to PiAction. This favors
debuggability of flow rules in ONOS.
- Support new NextObjective’s NextTreatment class.
- Remove lots of unused/unnecessary code (e.g. async callback handling
for pending objective install status in pipeliner as current
implementation was always returning success)
- Gather commonality in abstract classes and simplify implementation
for objective translator (filtering, forwarding, next)
- New implementation of ForwardingFunctionTypes (FFT) that looks at
criterion instance values along with their types (to avoid relying on
case-specific if-else conditions to recognize variants of an FFT)
- Adaptive translation of NextObjective based on presence of simple or
hashed table.
- Support DENY FilteringObjective

Also:
- Fix onos-p4-gen-constants to avoid generating conflicting
PiMatchFieldId variable names.
- Install Graphviz tools in p4vm to generate p4c graphs
- Generate p4c graphs by default when compiling fabric.p4
- Use more compact Hex string when printing PI values

Change-Id: Ife79e44054dc5bc48833f95d0551a7370150eac5
2018-12-11 14:48:06 -08:00
Charles Chan
b87d9f17b2 Allow NextObjective to refer to another NextObjective by NextId
Change-Id: I4bc5381be8241ddd765668275f02f795ba06a632
(cherry picked from commit 7fbd2b167ac2a8981255dc17aa53b2ba93073018)
(cherry picked from commit f261d5cbaf8e936b5e3b2f0c55d8e9e698922d2d)
2018-12-11 22:30:00 +00:00
Ray Milkey
e7b7c699d5 Fixes for bazel version 0.20
Change-Id: Id40ca9c5ee939d462953570d7e59311cbc678708
2018-12-11 10:41:25 -08:00
hiroki
9e1484d57b Added Cassini drivers used at ONF connect
Change-Id: I05219d11bd45d147ef2dfa750853c39a9f26d240
2018-12-11 08:52:37 +00:00
Sean Condon
021f0fa4b0 Update GUI2 topology host icons
Change-Id: I6d74de9df93b91eb9ca126ab54cbc2912c16caff
2018-12-11 03:48:02 +00:00
Ray Milkey
2cd3736f7b Add log message to display the JVM version
Change-Id: I94bde3d825df80761a250364b5c7fc2e565a142f
2018-12-10 17:23:40 +00:00
Ray Milkey
2921abc388 In Karaf 4.2, dynamic service injections must be declared as volatile
Change-Id: I4eb90b7364b7bc436280e4f0f2c71c3e83d86554
2018-12-10 17:23:28 +00:00
hiroki
096259bc70 Added OpenConfig models specified ODTN Reference Design
Change-Id: I61bd6bd1531e0811f3fca49bf33acfa5df07a7a4
2018-12-10 17:02:29 +00:00
Ray Milkey
f22adbf0a0 Remove ERROR log that happens during normal processing
Change-Id: I968868875fd903e328dc7dd15e537ff3d8295254
2018-12-10 16:58:53 +00:00
Ai Hamano
be23914f8a [ODTN]Add SIP validation check
Add check of SIP which is input of create-connectivity-service is used

Change-Id: I95f50fcc98d40f462cc3c50a7f461e3f7e6686e4
2018-12-10 10:43:07 +00:00
pier
46d557f868 Provides a separate executor to handle map events.
Includes also several code optimizations

Change-Id: I7c4916b0f746379213f239766e912ad696e2f56f
2018-12-07 21:20:07 +00:00
arjunek1992
f6353d4fc8 ONOS audit REST API support
Change-Id: Ic2910785f1f16fe5e36b33c1a73f44539cd8fbea
2018-12-07 21:13:07 +00:00