437 Commits

Author SHA1 Message Date
Yuta HIGUCHI
498fa1d321 Bump Guava to 21.0
Change-Id: Id81705773d191db6a18153d8b2dd4abd2bfd0e60
2017-05-19 15:40:12 +00:00
Yuta HIGUCHI
4f8a377740 ONOS-6468 Fix for race condition between compilation and installation complete state.
- Fix for a bug where intent compilation complete state,
  can overwrites intent installation complete state,
  if intent installation completes before compilation complete state is written to the store.
  - Introduced internalState version on IntentData,
    which is effectively mutation count, in order to avoid
    batch write of compilation result overwriting installation result

Change-Id: I5d77dfbe496e690ebdf2b4f9643d2b64c4233182
2017-05-18 21:26:07 +00:00
Jordan Halterman
e265d370fb [ONOS-6380] Intent performance regression fix
- Do not wrap completed futures

Change-Id: I94729b6ba0fa22bf14d1910ff05d88395b61c82c
2017-05-18 20:09:24 +00:00
Yuta HIGUCHI
ed1ef3a3bd Minor improvement to MacAddress#toString
Change-Id: I10bca0e939bebc833cc67dc8b923ecb67e6ae8ff
2017-05-17 20:32:49 +00:00
Charles Chan
79cddb1a03 Fix invalid static variable assignment
Change-Id: I3e93efe1975070218d70e878e78ec197af1d121d
2017-05-13 08:18:07 +00:00
Charles Chan
928ff8b44f Refactor MacAddress and ONOSLLDP class
- Implement unit tests for MacAddress
- Implement new method to get OUI
- Rename isLinkLocal to isLldp to describe this method more precisely
- Remove ON.Lab specific names in the code

Change-Id: I01ef9ed94f7bd7e3930a4746627257ef9667c7a3
2017-05-11 00:25:35 +00:00
Charles Chan
1cf4ca32b6 Add static all-zero IP address
Change-Id: I235e88b710ca2867bc381a04f579aa9da0199227
2017-05-10 21:46:15 +00:00
Yuta HIGUCHI
e3ebe69018 Lazy k-Shortest paths search
Change-Id: Ibebbe904c31c8c73e097035ae4486333b38ce2a8
2017-05-03 16:29:06 +00:00
Jordan Halterman
046faeb68e [ONOS-6267] Detect and complete blocked futures on I/O threads.
Change-Id: I0488dc5096f9e610b97405ad05c02d0ff3854b5f
2017-05-02 22:37:47 +00:00
Marc De Leenheer
40a544ba3e Refactored cross connect helpers to optical drivers package.
Change-Id: Iae23025cf0b33c51123911f3ff1249cabc812be2
2017-04-27 21:41:51 +00:00
Jordan Halterman
9bdc24f542 [ONOS-6267] Support configurable Executors for primitives
- Support user-provided Executors in primitive builders
- Implement default per-partition per-primitive serial executor using a shared thread pool
- Implement Executor wrappers for all primitive types

Change-Id: I53acfb173a9b49a992a9a388983791d9735ed54a
2017-04-27 09:07:50 +00:00
kdarapu
229bc452e6 invalid use of bytearray toString
Change-Id: I1f24aafbf83daf4396f368add24d3fcb85a14173
2017-04-27 04:44:12 +00:00
Yuta HIGUCHI
2dce08a7eb StringBuffer -> StringBuilder
Change-Id: Ibacf9357619712909544ddeb901bbef04c822bfe
2017-04-21 19:18:05 +00:00
Yuta HIGUCHI
c5a088cc27 ONOS-6229 KShortestPathsSearch bug fix
- KShortestPathsSearch cannot find other k-paths when the shortest path is 1 hop

Change-Id: I42d9952cc0fbc3e2fb2e3db44821a13fa0132137
2017-04-17 18:52:36 +00:00
Yuta HIGUCHI
945bed276e Remove unnecessary wrapping.
- edges is an ImmutableList instance

Change-Id: I5cbb75612ae8522ff7f112c8e8259e417d81fd64
2017-04-15 10:57:18 -07:00
Charles Chan
89c4a64d58 Support IP deserialization when PACKET_IN carries Ethernet FCS
Some switches carry Ethernet FCS in the PACKET_IN.
In that case, Ethernet FCS should not be treated as IP payload.

payload length: the length specified in IP header
remaining length: the actual remaining bytes
    payload < remaining: padding or Ethernet FCS exists, use payload length
    payload = remaining: usual case, use either one
    payload > remaining: fragmented packets, use remaining length

In addition,
    - Fix unit test. TotalLen should never be smaller than headerLen * 4
    - Refactoring unit tests

Change-Id: I5d4736ad89ea2ab4ac3bd0cfaeb91da5d974db64
2017-04-14 22:52:59 +00:00
Yi Tseng
603d0550b9 Fix typo
Change-Id: I8ab89378a0fc495de890fa054c9ed773cb381fe0
2017-04-14 14:16:15 -07:00
Jon Hall
a3fcf6754a Fix Sonar issue:
Strings literals should be placed on the left side when checking for
equality

Change-Id: I4537e08936731ace55aeecb3ad941269ec1eb191
2017-04-05 22:54:30 +00:00
Amit Ghosh
764a1b4bc0 ONOS-3830: Adding support for serialization/de-serialization of QinQ packets, support for TPID other than 0x88A8
Change-Id: I6f56c5afe0fcd439ca2be848e7da8a68b577cc16
2017-04-05 21:55:01 +00:00
Ray Milkey
88cc3432cf Update checkstyle to version 6.19
Change-Id: I32787f2a5f4f4b17fd4cdcf9bd2eb3903dcecfff
2017-03-31 00:59:32 +00:00
Alan Deikman
54cf95717c Fixed ChassisId constrcutor to allow 64-bit hex strings as a parameter.
Change-Id: Ief27b2c30fc3569f5907b7d23040bf483c89f04d
2017-03-12 00:03:21 +00:00
Jon Hall
8c7b06ad07 Remove unnessasry semicolons
Change-Id: I8363e54ecaf80ad0a755d997ca1b9bbae2f1fa6e
2017-02-22 23:05:51 +00:00
Yuta HIGUCHI
fa9ee8c13f Minor improvements around Scalar weight.
- ScalarWeight should be immutable
- Added constant for default weights
- Added factory method

Change-Id: I700e89abe968838a5049a441c37a92ffdb63f1bc
2017-02-15 23:14:57 +00:00
Jian Li
0a439d2a1d Bugfix: simplify the logic of extracting bit from a given byte
Change-Id: I0fbb9dae16f41deab2a302025eb0ba26afe2c6cf
2017-02-08 01:48:59 +00:00
Yuta HIGUCHI
6c28aa4711 Fix isViable test
Change-Id: Iba04aa1ae84ea737ff64a9f62edd60158df51b59
2017-01-25 20:54:09 -08:00
Yuta HIGUCHI
2ca1539769 Disable test failing under high-load
- ONOS-5900

Change-Id: I95d2b1073b321f623e18875d3482192fde5ccecf
2017-01-25 16:24:22 -08:00
rpatodiya
45fa9ab5da Incorrect array handling
Change-Id: I084cbaeeec0992bb371470c6c201a3ac6fb219a9
2017-01-25 17:19:22 +00:00
Andrey Komarov
2398d960b9 Vector cost proposed to TST on 2016-07-13
First part implemented: weight interface introduced and integrated, default weight implementation added.

Change-Id: Ia46f1b44139069aa171a3c13faf168351bd7cc56
2017-01-23 17:27:20 +00:00
Pier Luigi
37b687bdf5 Adds utility functions related to the link local addresses
Change-Id: I26045542d4f9d60a0d7d0905087136b995f8c03e
2017-01-20 16:19:02 +00:00
Jon Hall
cbd1b39f58 Sonar fixes
Rule: Use isEmpty() to check whether the collection is empty or not.

Change-Id: Ib5ab56b2263623b297db56c5cac2c2ee80e12725
2017-01-19 20:24:18 +00:00
Saurav Das
d5ec9e992f Adding to the 'devices' cli command an output that displays the local connectivity of a device.
For example, "id=of:0000000000000203, available=true, local-status=connected 18m7s ago, role=STANDBY, ..."
Also increasing the resolution of the TimeAgo utility.

Change-Id: Ie1b89bd193552e0edd38a9ca28c5ce99b1d27c19
2017-01-17 22:41:43 +00:00
Yuta HIGUCHI
c2093cbb33 Increase test failure timer.
- Was failing under heavy laod.

Change-Id: I30bd6e8c00d42fe585420583186a98fbf1f7ff5d
2017-01-12 19:43:46 +00:00
Brian O'Connor
c590ebbc12 ONOS-5691 ONOS-5742 Fixing intent framework difficulties
- Refactoring AbstractAccumulator to use less blocking synchronization
- Fixing bug in AbstractAccumulator that could leave some items
  without firing
- Updated IntentStore for resubmitting pending operations

Change-Id: Iaf240da65e11ceb7d7d745cf4e25bfb8c26ed1eb
2017-01-10 17:42:08 -08:00
Ching-Ting Sun
8388aae69f Issue #398: Removed unnecessary this.serialize() in BasePacket.clone().
Change-Id: I4ebbd98fc17e0b9ad0ffa221918a8e2634660810
2017-01-03 23:28:08 +00:00
Yuta HIGUCHI
a2a11cd9b5 ThreadFactory with max priority
Change-Id: I0f220276734e845b282e6ed88975cb85563853e9
2016-12-22 19:43:41 +00:00
Pier Ventre
78e73f6d29 [CORD-653] Fix host monitor and provide utility functions
Changes:
- fixes host monitor generating correct probe;
- provides and tests utility functions to calculate well known address;
- provides utility functions to craft ndp solicit and ndp adv;
- provides utility functions to craft arp request;
- provides utility functions to craft icmp and icmpv6 response;

Change-Id: I5a4fa89e549fd665a48e51ba3438932849f6627c
2016-12-14 17:54:11 +00:00
Konstantinos Kanonakis
0a9031d8ae Introducing BandwidthProfileConfigBehaviour to manage policers/markers
- Creating BandwidthProfile Class to represent generic policers/markers
- BandwidthProfile can be Single/Two Rate, Two/Three Color depending on parameters
- Including fromMeter() method to convert a Meter into a BandwidthProfile
- Adding unit tests for BandwidthProfile class
- Creating BandwidthProfileAction class to represent a color (green/yellow/red) action
- BandwidthProfileAction allows remarking one of: DSCP class, IP precedence, Drop precedence
- Adding unit tests for BandwidthProfileAction class
- Creating DscpClass and IPPrecedence Enums and unit tests in org.onlab.packet
- Adding kBps/MBps/GBps methods in org.onlab.util.Bandwidth class

Change-Id: I54156329a527ebd9165d8f55e03e0782925caa2b
2016-12-02 01:55:37 +00:00
Pier Ventre
48ca51945d Various fixes
Change-Id: I9f4ec7248e3449f9540fc70d60cbdbc3f8cadab0
2016-11-30 18:19:40 +00:00
Ray Milkey
85267006aa checkstyle rule to check copyrights
Change-Id: Ia9bab40b5fe64fca539058a4316371f7acc0f387
2016-11-18 18:40:44 +00:00
Carolina Fernandez
fa56d1429f Adds loose filtering capability (-f) to cli commands (intents, flows)
- Multi-valued filtering
- Two search strategies (and/or) [defaults to add]

Change-Id: Ia9ad9233b65209b20550ba699c238b88ffb43f8d
2016-11-16 17:00:44 +00:00
Ray Milkey
0bb1e10a3f Javadoc fixes
- fix missing Javadoc @param and @throw annotations
- enable checkstyle checks for method javadocs on non-private methods

Change-Id: I9a370419a699bab3225d85f2f641927600b9f11c
2016-11-11 01:09:15 +00:00
Aaron Kruglikov
f6aed99bae Adding an additional method for getting paths from default topology with a bound on how many paths will be returned. This should not effect any existing uses.
Change-Id: I3709f5c0b1fced74338ad03bc5b9b406a9dfd978
2016-11-10 23:39:07 +00:00
Koosha
1525c45938 ONOS-5574: KShortestPathSearch mistakenly assumes every path has k edges
Change-Id: I9e99e95ee35f5bc4d4bdd285bf18666b6e58db0f
2016-11-10 19:43:38 +00:00
Ray Milkey
ef79434ff7 Fix Javadoc warnings
Change-Id: Ia5fe7785f76da92abbf940599cbd3d7dc6ac2cc5
2016-11-10 18:42:48 +00:00
Pier Ventre
f8543d837e Fixes [ONOS-5412] and implements [ONOS-5300]
Changes:
- Adds a new Interface for the selection algorithms;
- Re-implements FirstFit and Random selection;
- Adds a new option to select the algorithm;
- LabelAllocator provides a single interface;
- Fix MPLS encapsulation;

Change-Id: Ib07942355c45b7b9e7093fa85964c2ac20800b60
2016-11-07 17:21:44 +00:00
Konstantinos Kanonakis
9215ff2260 Adding support for VLAN_PUSH with EtherType (incl. Q-in-Q)
- Allowing VLAN_PUSH Instruction to use ethernetType (incl. using REST API)
 - Adding QINQ (0x88a8) Ethernet type
 - Updating InstructionCodec decoders/encoders
 - Updating TrafficTreatment/FlowEntryBuilder

Change-Id: I723cc936a8a49c39da9abe65ba9e5b1bdc1392bf
2016-11-07 16:49:14 +00:00
Charles Chan
d2edd47030 CORD-378 Validate ARP SPA in segment routing ARP handler
Check if the source protocol address of an ARP packet belongs to the
same subnet configured on the port it is seen.

Additional changes:
- Improve human-readability of ARP.toString()

Change-Id: Ie21c1edb43aa0ec636e9a927ca164a46ab2256fc
2016-10-19 01:21:38 +00:00
ke han
e908271dc3 package igmp v3 report wrong, the group class should be IgmpMembership
Change-Id: Ibe321ec79e3058b3ab320601ea57bfeba5577c5d
2016-10-18 13:19:05 +08:00
Luca Prete
c8ec4b5f43 Adding support for IGMPv2
Change-Id: Iba3fbdfaed1b91cda8c6c0ef19fe69b5e5d7f900
2016-10-17 12:04:34 +00:00
Sho SHIMIZU
8ebb04aacd Replace Stream#forEach() with Collection#forEach()
Change-Id: I2b261c3d91d345907b165bd61eb7b6c45011c247
2016-10-11 16:39:39 +00:00