12769 Commits

Author SHA1 Message Date
Charles Chan
c7b3c451c7 Implement CLI and REST API for Xconnect
Deprecate the old way of configuring Xconnect via network config

Change-Id: I5b9ac7852517c25805bcbfc0e7b3bec3a52eed9f
2018-06-21 00:20:25 +00:00
Charles Chan
f76de30781 Improve Xconnect to support BSOD use case
- Push ACL flow to ignore xconnect VLAN
- Add pair port to the L2FG internally
- Remove the ETH_TYPE restriction in OFDPA processVersatile
- Remove the NOACTION warning in OFDPA processVersatile
- Do not push bridging flow for hosts that have wrong VLAN tag

Known issue:
- flooding issue on the pair port
- tagged host will be learnt before xconnect config is pushed (will be ignored by SR)

Change-Id: I30e4f46e54daa0f7bd349419df100523dceb2c4c
2018-06-21 00:20:25 +00:00
Charles Chan
f2f8ef043b Fix ConcurrentModificationException
Change-Id: Ie4c3a56312156ded1cbc2fd8a0e4da822ff57205
2018-06-21 00:20:25 +00:00
Charles Chan
6a7d3677f2 Improve KryoNamespaces to better support Objectives and lambda functions
Change-Id: Iaeb10d8e237e4c2bca972e97f65bb0fc1cf338f9
2018-06-21 00:20:25 +00:00
Jian Li
0b56428c20 Add REST interface for synchronizing openstack states and rules
Change-Id: I42cd8c73130348b204ea7c98c98d5b16cca6c4e8
2018-06-20 23:43:47 +00:00
Carmelo Cascone
5bdb651370 Disabling P4Runtime meters until ONOS-7720 is fixed
Change-Id: Ia0f9878e5a61252016f6b6d88f634f91993f37d2
2018-06-20 20:44:56 +00:00
Carmelo Cascone
e6a9754787 Better logging when configuring the FlowRuleManager
Change-Id: I7da22b1bf796a7199acc5a55c21f6a5334f312d4
2018-06-20 20:44:46 +00:00
Saurav Das
137f27f0e7 Bugfix in routing logic to avoid null groups; Improvement in group handling.
Two main changes for the bug-fix:
    - avoid doing a full-reroute in the event of link failure as this will leave behind stale state in stores
      if event has been preceded by mastership change leading to the nuking of the ecmpSpg for one of the
      link's devices; instead do a rehash
    - when full-reroute is attempted, do it only once, with a complete nuke of the next-obj store

Improvement in group handling allows for a max number of retries for a group that failed to be added.
Earlier behavior was to try only once, and if it fails, it gets removed from the group-store. Now it
is removed after a couple of retries - so total 3 attempts to program the group.

Change-Id: I54ca8203cef779463522b01353540d12f8be3c91
2018-06-20 17:48:32 +00:00
Charles Chan
5adc628bd3 Refactor DefaultRoutingHandler to avoid hitting 2000 lines limit
Change-Id: I426e7fc70dcc063bd5742f86ba1141adf6d1d94e
2018-06-20 17:48:03 +00:00
Ray Milkey
275af2c8ff Implement bazel rules for generation of swagger files
Change-Id: I0e5d33174898cc6a1bbca475f2e1696c4fdda1ca
2018-06-20 09:41:24 -07:00
Laszlo Papp
18efc97613 Add flow support to the Polatis SNMP driver
Change-Id: I150e174acd54c945c95ca9a1885f1f6313d44ce9
2018-06-20 14:49:40 +00:00
Carmelo Cascone
4bf427f58a Recompiled P4 tutorial pipeconf to work with new P4 tools revisions
Change-Id: I2f1e5f49233f095148990eddee098bfd406a5cf6
2018-06-19 21:47:16 +00:00
Carmelo Cascone
8a51743927 Removed fabric.p4 data plane test files
Now living in separate fabric-p4testrepo:
https://github.com/opennetworkinglab/fabric-p4test

Change-Id: I333906fe36b02a6ea5efed86b6dcd59405bffb17
2018-06-19 21:47:02 +00:00
Carmelo Cascone
df32beae1e Fixed AttributeError when logging bmv2 crash in bmv2.py
Change-Id: Ia899a0e5090d3f27694b65f2a75f06500a0b6fec
2018-06-19 21:03:34 +00:00
Jordan Halterman
e76f0c8559 Fix NPE in ClusterCommunicationManager exception handling
Change-Id: I4dd3c6aeb3150e117e2ba414c8d2a58adef79170
(cherry picked from commit 7b3830bef35b703ba411684f1f10c291d5a22f61)
2018-06-19 18:58:30 +00:00
Yuta HIGUCHI
4f55c67c98 NetconfSession refactoring
- Move netconf rpc envelope processing common across secure transport implementation
  to AbstractNetconfSession
  work by: Palash Kala <palash.kala@samsung.com>

Change-Id: I5f0d6adecf6224ae44f224291f645725b3c87739
2018-06-19 17:42:09 +00:00
Eder Ollora
319b9bfe3e Fixed URL for p4.vim in tutorial script
Change-Id: Ia7a174edfd63ba677fce81fc91b4463cfc62d813
2018-06-19 15:06:39 +00:00
Carmelo Cascone
228092b190 Refactored fabric PipeconfLoader to automatically build pipeconfs
Fabric.p4 is evolving in a way that will allow multiple profiles (e.g.
fabric, fabric-spgw, fabric-int, etc). Moreover, we need to support
multiple targets (e.g. BMv2, Tofino, etc.) as well as platforms
(variant of a target). Maintaining a pipeconf for each
profile/target/platform is time-consuming.

The new PipeconfLoader automatically builds pipeconfs based on the
available p4c compiler outputs available in the 'resources' directory.
This approach removes the need to maintain separate pipeconfs like
fabric-pro. Those interested in using fabric.p4 with targets other than
BMv2, will simply need to place the appropriate target/platform-specific
P4 compiler outputs in the resource directory.

Change-Id: I58d208a1837e747357373b2296cb950f13799ed6
2018-06-19 15:05:43 +00:00
Andreas Pantelopoulos
b251801737 Configuration option respondToUnknownHosts.
Set this option to true to respond to arp requests
for unknown hosts [Default Value = True].

Change-Id: Ia2f10b2fae22b65cd2ec12a04accd9ad0ec15109
(cherry picked from commit 7bf9e441bdc4c7ac420f2a59e4d176005a40d020)
2018-06-18 20:48:05 +00:00
Ray Milkey
7ced85e10a Add new dependencies to the maven build
Change-Id: Iceb0adcabd8f17b5bd326b1899379d8e88142ed7
2018-06-18 17:06:28 +00:00
Ray Milkey
cc7a176d85 Fix some sonar suggestions
- use long arithmetic for long expressions
- exit routine after determining that a pointer is null

Change-Id: I755b1533773f6838e88ba94ced376f30576c275b
2018-06-18 08:54:51 -07:00
Laszlo Papp
10f0d51401 Fix the snmp alarms on device configuration
Change-Id: Ia15df8cf2c112e00f7d6930272a97cb447e98fe8
2018-06-18 15:39:46 +01:00
donghyeok.ho
a73e5c31de Src/dst port range of fiveTuple in SfcManager was not validated correctly.
ONOS-7716

Change-Id: I02a69231eda3cb7fe28721604dfe6251731bf374
2018-06-18 09:05:25 +00:00
Yi Tseng
34af3168f4
Fix incorrect defined boolean value for fabric.p4
Change-Id: I59cfbd81c1818f489d1fcded187d0ca034d418f8
2018-06-17 18:02:21 +08:00
Alessio Giorgetti
648b538ed8 Lumentum ROADM-20 Whitebox, NETCONF driver supporting ROADM app main functionalities
Change-Id: Iee24a3db7ebd948a251f74c91e4b5de57b8f1b19
2018-06-15 22:15:50 +00:00
Andreas Pantelopoulos
194164153f Disable host learning feature.
This patch gives us the ability to disable
host learning in certain ports via the ports
configuration.

We have the following cases :
        - Discover a host with no learning configuration, this
          results to learned host (missing config assumes learning is on)
        - Discover a host with learning configuration set to false,
          do not learn that host.
        - Update the learning configuration of a CP to false. Then,
          fetch all host at that location, if these hosts are not
          configured statically at this location, remove them

Change-Id: I2a05ce5f9a890bb4049fd7856f95d78f467e3330
2018-06-15 21:43:39 +00:00
Ray Milkey
1bbe4615a6 Fix bazel build of p4 runtime protos
Change-Id: I72f8dc332fe1cfff879a7378d0953cd872ee37ac
2018-06-15 14:14:39 -07:00
Ray Milkey
1f9e7dc1fe Fix maven build of P4 models
Change-Id: If7ed98261a1f3a18ea752e7ce401d155085650f3
2018-06-15 13:37:33 -07:00
Carmelo Cascone
35d9b333f8 Support compiling fabric.p4 with non-standard bool declarations
Change-Id: I5e579f58f274996fdff55d8e35d1dd96a7013941
2018-06-15 19:05:11 +00:00
Carmelo Cascone
6af4e17c53 Bumped supported revisions of P4 tools
Includes:
- Use new P4Runtime "v1" package names
- Removed VALID match
- New table entry priority spec (1 is min priority, not 0)
- Fixed p4c-bm2-ss to include arch flag
- Re-compiled P4 programs with more recent p4c (with updated p4info)

Change-Id: I05908f40eda0f0c755009268fd261fb8bcc9be35
2018-06-15 19:04:30 +00:00
Ray Milkey
25747d88f7 Implement bazel support for web context
- add web context to OSGI rules
- build ACL app
- build DHCP app

Change-Id: I03687d109eb44621458ad7269a435e03eec47495
2018-06-15 09:01:35 -07:00
sdn
9952dab238 Arista Rest Driver Controller Config impl
Change-Id: Id0460a790248bba28f8ca3a1e181e2c295f2dea9
2018-06-15 07:47:22 +00:00
Yuta HIGUCHI
59cf0c877c Update dependencies
- commons-lang3 3.7
  https://commons.apache.org/proper/commons-lang/release-notes/RELEASE-NOTES-3.7.txt
- commons-text 1.3
  https://commons.apache.org/proper/commons-text/release-notes/RELEASE-NOTES-1.3.txt
- commons-io 2.6
  http://commons.apache.org/proper/commons-io/upgradeto2_6.html
  http://commons.apache.org/proper/commons-io/upgradeto2_5.html
- error_prone_annotations 2.0.18

Change-Id: I119306662ab945f876ff3832f550a5e84e40fa76
2018-06-14 16:04:29 +00:00
Yuta HIGUCHI
99a2eab49d Workaround for rsync v6 literal handling issue
Change-Id: Iee6bac555e27e6350a2e378099e4e18c9c442627
2018-06-13 18:27:55 -07:00
Jordan Halterman
8c57a09e4d Refactor DistributedPacketStore to store packet requests in a ConsistentMultimap
Change-Id: Ia4a93c47fee726009673e99609b2f8800807e675
2018-06-13 22:18:00 +00:00
Jordan Halterman
b2f5795c68 Clean up implementation of buckets for flow rule replication
Change-Id: Ifc6aaed08c3a74e8b8f8fd9d69d5802351e5f47c
(cherry picked from commit 3664e8e8c7e5fcdcb04e3e6b879871e51af0e59b)
2018-06-13 21:59:50 +00:00
Jordan Halterman
05299088a2 Reduce false positives in Netty messaging timeouts
* Compute the max response time for each minute in the last 10 minutes
* Use standard deviation to account for pauses
* Enforce a minimum standard deviation

Change-Id: Id13c3510cd59892e58c3847a96850946d0f36b5e
(cherry picked from commit c1b41d4e280ad141261114155d5b87af1b547f39)
2018-06-13 21:59:40 +00:00
Jordan Halterman
e74e629406 Ensure mastership elections are cached in flow rule store
Change-Id: Iff1b1d743a38310e76a5c87605480e9faa5eab2b
(cherry picked from commit d334841f7067def3bad1c618a27a75d28d6df004)
2018-06-13 21:59:31 +00:00
Jordan Halterman
a49c60ace7 Use count methods when printing simple flow rule counts via CLI
Change-Id: I2444b0ad913b0bab82b6fe642c89114322d5194b
(cherry picked from commit ca12103eed8b7407a849f7ac09b735bb4ee250bf)
2018-06-13 21:59:22 +00:00
Jordan Halterman
4a082ec0de Use standard deviation in Phi calculation to account for GC pauses and network delays
Change-Id: I17cd255ad8d661b531500e50743778a16eeb5fd2
(cherry picked from commit b75aa082b520663c7f2b7e551e2565402e9d1600)
2018-06-13 21:59:05 +00:00
Jordan Halterman
8f0021b0d9 Fix incorrect path after version change in onos-fetch-db
Change-Id: Ibbd1b79664c042ad5b16a831718012b932f0ffbc
2018-06-13 14:21:22 -07:00
Ray Milkey
47b9b450c3 Remove debug output
Change-Id: I57211fb1920a484b5c3d67c4e8e83c3e71e136f8
2018-06-13 13:40:16 -07:00
Ray Milkey
3ca46e9f19 Add segment routing, route service, rest provider, and drivers utilities to base bazel modules
Change-Id: Id52679b768a6d5cd814463e5de407b9f0c267031
2018-06-13 17:57:45 +00:00
Ray Milkey
68bc3b0200 Bazel build of route-service tests
Change-Id: I453d5d9943dd616e300001887e27d6fa6474c814
2018-06-13 17:57:24 +00:00
Ray Milkey
15053f0fca buildifier formatting of bazel files
Change-Id: I8196aa52ee640d1c500307a50a0ab4921138b69b
2018-06-13 17:57:14 +00:00
Sangyeok Sim
61ac5703fa Correcting typo
Change-Id: I989d11a1f1d4bf006f52b99d218a245249244d1c
2018-06-13 17:52:07 +00:00
Yuta HIGUCHI
2ee4fba094 Mark netconf related factory as functional interface
- deprecate/remove redundant factory implementations

Change-Id: I29ba9f3397c37c02b37d07dff16a4203186c5fcd
2018-06-13 17:31:46 +00:00
Ray Milkey
b6d64d55bf Arista driver bazel build
Change-Id: If9399a91e020fa8671d95c378159df050b46de7f
2018-06-13 17:11:28 +00:00
Sean Condon
fd6d11bc8d Implemented WebSockets for GUI2
Change-Id: I4776ce392b1e8e94ebee938cf7df22791a1e0b8f
2018-06-13 17:00:58 +00:00
Ray Milkey
02a658bb4a Build segment routing app with bazel
- add support for apps depending on other apps
- build files for route-service and segment routing

Change-Id: I4850aacfe050f802072e2d59a6a21bcefd784e67
2018-06-13 16:23:14 +00:00