4746 Commits

Author SHA1 Message Date
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
FrankWang
2674e45220 Introduce Pi Register model to PI Framework
Change-Id: I7fae87d5b5ed5fff34b3addfc148cee6fc98137c
2018-06-13 13:00:50 +00:00
Jordan Halterman
3b1373715b Change DefaultRouteTable primitive to cached multimap.
Change-Id: I4b29f95894a5f761a59bebbd9aa6ea778a128f22
2018-06-11 17:01:57 -07:00
Jordan Halterman
5e884353e2 Implement event-based streaming iterator for ConsistentMultimap primitive
Change-Id: I4f41876f91ec752cb3d6ac0fd352ff6e8798dfd6
2018-06-11 17:01:57 -07:00
Jordan Halterman
471be0c36b Implement partitioned multimap
Change-Id: Ia1823a9aa263ec0e4b0171b139df300e6757d5d4
2018-06-11 17:01:57 -07:00
Jordan Halterman
156ee8a995 Upgrade to Atomix 2.0.22
Change-Id: Ie7bf8146e7fab99fd052daf91676069b9ba80808
2018-06-11 16:59:10 -07:00
FrankWang
ea70de3094 [ONOS-7602]Implement support for P4Data in PI framework and P4Runtime southbound
Change-Id: I9c0c76fb29b8c3aa36f39bde62e825f0f0094253
2018-06-08 09:04:50 +00:00
Andrea Campanella
1e5734480f [ONOS-7584] Adding Capability of re-connecting to a P4Runtime Device.
Also addresses ONOS-7359

Change-Id: I47ec4ed429af82feb225ab5ac180b94c91366a53
2018-06-08 02:14:33 +00:00
Charles Chan
ff79dd9169 Implement host probing retry with major refactoring
- Implement probe retry
- Switch to typical core/provider design pattern for HostProbingService
  and as a result decoupling the dependency between SR and HostLocationProvider

Change-Id: I33a15af580677ea376b421ac3e26f9821dcca844
2018-06-06 16:57:33 -07: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
95c9e0fdea Upgrage EasyMock to version 3.6
Change-Id: Ib87cf414ca849cb19dc68a416de1e236d917aa8c
2018-05-30 15:37:37 -07:00
Keesjan Karsten
2336889e82 Make the Basic pipeline more portable
This change makes the Basic pipeline compile better with different
compilers. One change is this: the type parameter for a v1model meter
instance cannot be a programmer-defined enum. This is because in P4_16,
enums don't necessarily have underlying bitstring types and the
language doesn't specify that enum members should be assigned a
numerical value in any given way.

Change-Id: Id2b758eb2b6e76aa708c2e03e7a001667efddb3d
2018-05-25 17:19:21 +00:00
Frank Wang
74ce2c1009 [ONOS-7583]Adding PI flow rules via REST API and unit tests
Change-Id: I15537097e7b6f8138f8ae43676d5dd22d8b9093a
2018-05-24 01:57:58 +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
Yi Tseng
8d355132da [ONOS-7605] Unable to modify groups on BMV2
Change-Id: I797366ac152dccac75f8ed82b62abe6e5da6dd3e
2018-05-22 18:57:19 +00:00
Ray Milkey
fb1c762c71 Fix concurrent modification exception due to unlocked access to collection
Change-Id: I8af0759c37f87e958984afe5879747ee7aa385eb
2018-05-22 01:26:04 +00:00
hiroki
b0bc9da0b5 Add fromString method to connect point
Change-Id: If90b7582b554896250571b9290fd639dfb7057d5
2018-05-21 17:27:32 +00:00
Yuta HIGUCHI
e7e71a8f9f Update checkstyle to 8.10
- fix issues detected
  - YANG custom registrator should be subject to checkstyle
  - fix Java 8 syntax related violations

Change-Id: I0fc52c6612a40d851fd9bc3bf019621776b1f92a
2018-05-21 16:00:21 +00:00
Pier
68c025bda8 Fix testUninstallAndInstallNonDisruptive test
Change-Id: Id5f8cd5a3b270231ccadfcde5ad4934c5ee407e0
(cherry picked from commit 9f832343ebd760246928e54c86080227a1ebfdf4)
2018-05-16 06:02:15 +00:00
Andrea Campanella
bba1e887a7 Notifying the delegate of the DeviceStore with device removed/added events. Aslo properly marking device offline.
Change-Id: Idf2ccb01f704fd31370451400878b047e26c567b
2018-05-15 16:03:25 +00:00
Thomas Vachuska
5b38dc079c Extending DeviceProvider interface to include triggerDisconnect method.
- extended interface with default method implementation
- modified DeviceManager to exploit the new provider feature
- refactored a number of device providers to use the new method
    instead of relying on indirect DEVICE_REMOVED events

Change-Id: Ib315357ef06463012fcf26bbe937c8cdccbf3a94
2018-05-15 16:03:05 +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
Ray Milkey
4ef245e8ea Fix NPE in DeviceManager for an offline device
Change-Id: Ib105b029efd0519c6ed54abf8e89c7be6c905987
2018-05-10 16:30:16 -07:00
jaegonkim
ab7e59f3e8 [ONOS-7646] IntentCleanup.cleanup() overwrites intent operation of pending map with the intent opeation of current map
Change-Id: I98825dc790bee845c4afcf795af13e81d685da1a
2018-05-10 16:53:22 +00:00
Charles Chan
07f15f2cad Fix ConsistentMapException.Interrupted and NullPointerException
- Moving time-consuming packet processing to a separate thread
- Re-use the group information when dealing groupMissing instead of query again

Change-Id: I01f1b43260f22dcb969a105f16d04d79c722146e
2018-05-09 13:28:13 -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
Yuta HIGUCHI
aaab65e709 Add error-prone suppression annotation
Change-Id: I92b393a12b3cf5cd3367a5d4e8bd28f8446da463
2018-05-08 11:23:54 -07:00
Sacheth Hegde
5a91f39cec Add retry for ResourceSubStores
Change-Id: Ie7f05f4d34813618ee785697d34a0903183f3036
2018-05-08 16:50:24 +00:00
Yuta HIGUCHI
1d6fef3e98 Add log entry about the reason app loading failed.
Change-Id: I7ae37029a2f0c5bb550e7ffd557df5e129fd333c
2018-05-07 18:24:20 -07:00
Thomas Vachuska
f131e590f0 Partial fix for ONOS-6767.
- pruning removed annotation tombstones
- processing netcfg only on master node
- swapping priority of processing of geo/grid coordinates

Change-Id: Icade1032f94ea774136d863d388402c79094c5a7
2018-05-07 22:01:58 +00:00
Ray Milkey
2eb9167f47 Improve coverage for primitives
DefaultAtomicCounterMap
DefaultAtomicCounter
DefaultConsistentTreeMap

Change-Id: I15ec01290377aa15ab5351065c33bf50e124b8a6
2018-05-07 20:13:13 +00:00
Yuta HIGUCHI
10b5357dc9 Fix minor comment fixes
Change-Id: I23c880a5b42fba5f319cca17d59fc2f601befef9
2018-05-04 22:00:06 +00:00
Thomas Vachuska
e36a282851 Fixed not to print misleading "device does not exist" warning to the log.
Change-Id: I4006c865d7388c6537f6068128bf895a5d3d55e8
2018-05-04 15:55:33 +00:00
Charles Chan
9bd0e5a1e2 Send probes when host moves
Majorly for the 2nd step of [1A/x, 1B/x] -> [1A/x, 1B/y] -> [1A/y, 1B/y]
But will also cover [1A/x] -> [1A/y] -> [1A/y, 1B/y]

When receiving probe for 1A/y in [1A/x, 1B/y] state, simply replace 1A/x with 1A/y instead of creating a transient 3rd locaiton

Change-Id: I058a265bbe5019d4305aa09d70e095fec0d7e429
2018-05-02 20:00:44 +00:00
Charles Chan
35b589c104 Increase flow obj timeout and remove pendingForwards and pendingNexts when the next failed
Change-Id: I6a1fde50db9184d87af20e3c605ff5b697e082b6
2018-05-02 20:00:44 +00:00
Charles Chan
0d4b8b3ab5 Add missing @Override tag
Change-Id: Ieaed0e44370efaec995fc19e3b333b5aefe87749
2018-05-01 16:29:07 -07:00
Charles Chan
846459217f Implement default method for isConfigured
Change-Id: I30058a186d92b291f0334834fbe3679e30fd247c
2018-05-01 16:27:52 -07:00
Saurav Das
9a55429ae1 Adding a component config to take down single homed host ports when all uplinks are lost.
In addition:
   - handle port updates that may be lost if mastership changes at same time
   - fix javadoc in DeviceService

Change-Id: I032909e8ab9564cf9c978b1d66abd3ab32c814d7
2018-05-01 15:49:55 -07:00
Charles Chan
971d7ba29e Move some functions from segment routing manager to interface service/manager
Change-Id: I7185cf70f7e5d723a63ac35296b8916558560c35
2018-05-01 15:41:49 -07:00
Charles Chan
320c6a502e Print flow objective error message
Change-Id: Ic4959fc86714b7e6ee7419d05d51bf6ce90fd221
2018-04-26 20:56:18 +00:00
Jonghwan Hyun
800d9d0770 [ONOS-7624] Implement egress pipeline programming
- Implemented logic to handle double-tagged host in segmentrouting application.
- Added 'DummyVlanId' to segmentrouting application to keep track of dummy vlan for L3L2Unfiltered group chain and egress tables.
- Implemented L2Unfiltered group and Egress pipeline programming support in OFDPA pipeline.
- Added EGRESS flag to the forwardingObjective to program Egress tables.
- Fixed bugs when handling double-tagged ARP request, to get correct vlan id and reply with double-tagged packet.
- Fixed bugs in BasicHostConfig, to set the value of 'outerTpid' to 0x8100 if it is not specified.
- Fixed build(ARP/ICMP/ICMP6)reply to build double-tagged reply if corresponding request is double-tagged.

Change-Id: I1fdc30b55827c3f73fad9e854bcaa5fb23f7bcd0
2018-04-26 15:32:17 +00:00
Jon Hall
7d77fe1bb2 Fix typos
Change-Id: Ic20df648fbc3546da20122deaa95f018b9d29f47
2018-04-26 08:23:18 +00:00
Charles Chan
33f4a91efa Implement flow objective queue command
- View flow objecitve queus and caches
- Refactor flow objecitve service and remove deprecated method

Change-Id: I6bbd209a351e0d87c5ee518038b33f72dcb3058a
2018-04-23 14:29:13 -07:00
Charles Chan
45c19d734a Avoid head of queue blocking in InOrderFlowObjecitveManager
Change-Id: Ifec6f861634a0a7c335d0591861391b03c36f854
2018-04-23 14:29:13 -07:00
Charles Chan
35c06acaa7 Fix more thread leaks
Change-Id: I573c30cfb90de485b5ed0eecb9d79ac567e4acbd
2018-04-19 22:48:52 +00:00
Thomas Vachuska
a651de198c Experimental cheap fix for device events issue ONOS-7623
Change-Id: I7b9dce6a79b9725aba34ac44bb610a8adda8ffbb
2018-04-19 14:10:50 -07:00
Carmelo Cascone
4efa498fab Simplify creation of PiActionParam from primitive types
Change-Id: I52053cbe60c4cba3746de1cbf67b16a47ce053bc
2018-04-18 23:33:09 +00:00
Thomas Vachuska
c616e17aff Fixing GUI to respond to server-side layout changes.
Change-Id: Ida1052d6bec4a92d29774ede47942410db189732
2018-04-18 15:56:17 +00:00
Ray Milkey
1657032c03 Fix handling of several error cases in the application REST API
Change-Id: I5a18374834b01e7b79b8f874356bf5f76168b66e
2018-04-17 10:26:54 -07:00