716 Commits

Author SHA1 Message Date
sangho
c0b3c342ad BgpRouter app supports both OVSSwitch and Corsa HW switch.
Change-Id: Ic0174338af3dbb76e1195b0f94d53a13a60cc0e7
2015-03-16 11:27:17 -07:00
alshabib
da1644e2ae Added delete all flow rules during Corsa switch handshake
Change-Id: I885dad9453754bf86f12d4a86541fe7bfe7efd72

added delete all rules in corsa switch handshake

Change-Id: I7905a754653f6fc7eb8643023372e6dfa779cf26
2015-03-16 11:08:01 -07:00
Brian O'Connor
b34ae2619d Adding linkVanished to NullLinkProvider when topology changes
ONOS-1287

Change-Id: Iffd19723be4c5b88dd0e3025d729ba2cc3f3faa8
2015-03-13 19:03:14 -07:00
Thomas Vachuska
8c8b0372e5 Adding OnosCfgMojo to the onos maven plugin.
Removing previously manuall generated files since they are now auto-generated.

Change-Id: I1f8361f97db74c9e2f077b3d5e7a6e65876561ef
2015-03-13 03:42:02 +00:00
Ayaka Koshibe
97940565b5 Prevent link event type aliasing and proper switching between flicker = on/off.
Also scale number of threads with number of available cores.

Change-Id: I438d92ab9c3df5c478f451c353135a9a64f5183e
2015-03-12 21:04:36 +00:00
Brian O'Connor
1545b1ef08 Starting snapshot 1.1.0-SNAPSHOT
Change-Id: I8caca4df60027426c18b51c1b35c313fe9ac1c10
2015-03-11 16:38:23 -07:00
Brian O'Connor
20fa3a45f9 Tagging 1.1.0-rc2
Change-Id: I1fa0feb1b790f79baa465fd82965433e109b34b2
2015-03-11 16:23:07 -07:00
Thomas Vachuska
20084b77df Testing & fixing GUI fail-over code.
Change-Id: I64843186bf05020ce77a1508a300391e0db6bf48
2015-03-11 20:49:13 +00:00
Jonathan Hart
8ef6d3b9a0 Minor tweaks to the flow layer.
Prevent DistributedStatistics store from logging "rule has no output" for
rules that transition to other tables.

Change-Id: I85e86965f5609df608cbc19551632153960a5c5b
2015-03-11 20:08:45 +00:00
Thomas Vachuska
3181de3b02 Addressing some review comments regarding component configuration. Fixed 'resource' to 'resources'. Doh!
Change-Id: I69b32948aa5caf12a357f877efa8dcbf87c7a9e6
2015-03-11 10:23:52 -07:00
Thomas Vachuska
6519e6f1de Making number of components configurable using the central component configuration subsystem.
Change-Id: Ia32c51480913689339a766d9849e792d62f7d133
2015-03-11 09:12:41 -07:00
Ayaka Koshibe
13f896f1cf File read properly updates topology information
Change-Id: I1e78e06e701cef45e5454d6e928967187174f8e5
2015-03-11 01:11:14 +00:00
Marc De Leenheer
8b3e80b14e Remove default flow rules for ROADMs. Fix LinkResource NPE. Single instance provisions optical path.
Change-Id: Iacbd41403ecd0c0df240d09026253c4b761a1d6a
2015-03-10 05:14:50 +00:00
Jonathan Hart
e106e4b7c7 Add support for building group bucket entries with push and pop vlans
Change-Id: I96932509ffda6167bfea74bda1de78ffaab29963
2015-03-10 05:05:25 +00:00
Ayaka Koshibe
9209ea24dd rehash with ScheduledExecutors
Change-Id: I37c377781a4478250ce5805fd22eb5c589af6bae
2015-03-09 19:16:02 +00:00
Jonathan Hart
37d659ca4a BgpRouter: Added treatment to delete flows
Deleting routes now works.

Change-Id: I7ed682474e571aa2f402a1762a2037190c2d9284
2015-03-09 18:41:34 +00:00
Jonathan Hart
54b406b1e4 Add push VLAN treatment and use it in BgpRouter groups
Change-Id: I8c241fd776cdddd77969413736bd786c0d5a4828
2015-03-09 18:33:29 +00:00
alshabib
346b5b362d Traffic Treatements now support deferred, immediate, table, and clear instructions.
By default, treatments are all immediate. Treatments will be deferred if the builder
predicated by deferred(). Subsequent treatments will be deferred until immediate is called
on the builder again. Multiple calls to deferred and immediate are permitted.

Change-Id: I76b3a44f2219fc1e72a7fb41b72d7bd602be85b7
2015-03-09 18:28:58 +00:00
alshabib
ab21b2d05a fix corsa pipeline divergence : need to differentiate between write and apply instructions.
Change-Id: I477d27d6e52a8e09744614e5f5aa843dd26331e0
2015-03-05 21:03:43 +00:00
Ayaka Koshibe
839a8a90b7 NullLinkProvider has been rewritten to take a topology file.
Reference: ONOS-1214, ONOS-1033

Change-Id: Ia945e4c8555afd2d74f174e51e22e2fdf3dcb356
2015-03-05 19:04:22 +00:00
Saurav Das
fbe25c5f72 Getting router interface config into the corsa dataplane pipeline
Change-Id: I67d5bf7a20190b07a7bf55c7b60f771877ca8dbb
2015-03-04 11:12:00 -08:00
Saurav Das
fa2fa93ff8 A set of fixes to ensure that the FlowRuleManager can correctly account for flows
from the dataplane in a multi-table pipeline scenario

Change-Id: I9ca3ef9a77781f126a13538647c824b27f77101c
2015-03-04 02:25:39 +00:00
Saurav Das
cbe6de3bb9 Fixing a couple of bugs in default entries for corsa pipeline.
Also fixing flowRule table-awareness with changes reflected in flow identification (hashing)
and the karaf CLI.

Change-Id: I2fac83db8e0b54b802fb765ef9d82033f7478b99
2015-03-03 17:03:25 +00:00
Brian O'Connor
266ac66643 Starting snapshot 1.1.0-SNAPSHOT
Change-Id: I2abf73c248c04f0559f97b313be034b48761695a
2015-03-01 07:36:09 +00:00
Brian O'Connor
352236e289 Tagging 1.1.0-rc1
Change-Id: I9c95f8309e1c98bc1a25eeaad1962b4d28257261
2015-03-01 07:36:08 +00:00
Saurav Das
c313c405b2 Couple of changes for the BGP Router project:
1. Link Discovery can be turned off completely via configuration
2. PacketService allows applications to hint at table_type when registering for packets

Change-Id: I89f0bbf84dce1b449db5af19868f83503c44f750
2015-02-27 13:38:43 -08:00
Jonathan Hart
7baba07872 BGP router now handles the case where groups don't exists right away.
Also reworked some logic to make delete routes work.

Change-Id: I1f65279284b85144a847f1295fcbd7695cb59167
2015-02-26 09:51:58 -08:00
Pavlin Radoslavov
93b606be85 Add explicit configuration for enabling IPv6-related flow installation
(IPv6 Neighbor Discovery related flow mods).
The default configuration is false (disabled).

This fixes ONOS-1146

The configurable parameters are:

 tools/package/etc/org.onosproject.provider.host.impl.HostLocationProvider.cfg
  - Enable host removal on port/device down events.
    (NOTE: not IPv6 related, added for completeness)
    hostRemovalEnabled = true
  - Enable using IPv6 Neighbor Discovery by the Host Location Provider.
    ipv6NeighborDiscovery = false

 tools/package/etc/org.onosproject.proxyarp.ProxyArp.cfg
  - Enable IPv6 Neighbor Discovery.
    ipv6NeighborDiscovery = false

NOTE: The above IPv6-related configuration has drawbacks,
partially because of some PacketService-related side effects.
Currently, we don't support enabling ipv6NeighborDiscovery
in one of the configuration files, and disabling it in another.
Enabling ipv6NeighborDiscovery in one configuration file is
practically equivalent to enabling it in both places.

Change-Id: Ief558697d85c8dcffc8941c575d0bf7d1397d90d
2015-02-26 04:22:42 +00:00
alshabib
1058080de1 WIP: Started implementing static flows for corsa vanderweken pipeline.
Modified to not use Corsa driver by default.

Change-Id: If8df5769cf084346121d34bf4490f578e6b6f2d0
2015-02-26 03:31:44 +00:00
sangho
22a805de6a - Supports multi-table feature in the improved batch process in the flow rule subsystem.
- Fix a bug of unsafe type conversion in OpenFlowGroupProvider.

Change-Id: I9a62f81b66d350b84296192f770dc8987aa0967b
2015-02-25 00:28:54 +00:00
Pavlin Radoslavov
d6612f95c5 Added IPv6 support to HostLocationProvider
This fixes ONOS-637

Change-Id: Ic3a411b7e1a1fcf18e7bc7a1b70d1e57c23a52ce
2015-02-24 08:46:39 +00:00
sangho
01a883cbd9 ONOS-1160: Bug fix for sending groups stats also for non OF1.3 switches.
Change-Id: I5dd75d23aaf2a22f084a8ad7d91b402a869da038
2015-02-23 23:15:10 +00:00
Thomas Vachuska
6f94deddef Converted all executors that previously used namedThreads to use groupedThreads instead.
Change-Id: I048709308270de5b7552bc4e8395b0f7201d5949
2015-02-21 14:02:38 -08:00
Pavlin Radoslavov
b9e50dff43 Fixed a bug when parsing configuration properties for ReactiveForwarding
by catching the appropriate exception.

Apparently, if a property is configured/enabled in file Foo.cfg, e.g.:
  flowTimeout = 10
then the corresponding object/value in the Dictionary returned by
ComponentContext.getProperties()
has class type String.

However, if the property is commented-out, e.g.:

then the Dictionary still contains an entry for "flowTimeout", but
its class type is Integer.

Also, updated similar code elsewhere that was catching the generic
Exception with catching more specific exception(s).

Change-Id: I33ec348eb9efe3188e22cfc8cee2bb704948726d
2015-02-21 15:57:17 +00:00
Ayaka Koshibe
d2c7ad2068 NullLinkProvider restructured with a CachedThreadPool. This should in theory
allow more LinkDescriptions to be generated.

  - patch 3/4: Some cleanup/sanity checks added.

Reference: ONOS-1033

Change-Id: I0b35585d5fdec3f7e6c921172f39f67dd6723dec
2015-02-20 19:01:56 +00:00
suibin
1a7b7bd956 fix calculation on event rate
Conflicts:
	providers/null/link/src/main/java/org/onosproject/provider/nil/link/impl/NullLinkProvider.java
	tools/package/etc/org.onosproject.provider.nil.link.impl.NullLinkProvider.cfg
Change-Id: I955abaec4c3906441ada91d97ed30854a8ce44f8
2015-02-20 18:55:40 +00:00
Jonathan Hart
8546348bba Change in-port to CONTROLLER for packet-outs.
Change-Id: I964da6baaee1e9ca2e7b9b724266793077036bd8
2015-02-19 18:20:54 +00:00
Jonathan Hart
eda3387e4a Use setInstructions to add apply-actions.
We can't use both setInstructions and setActions, because the actions get
overwritten by the call to setInstructions.

Fixes ONOS-1113.

Change-Id: Id8bb1afd3da91966ce1345c6a1927f8fde5de3f4
2015-02-18 18:45:54 +00:00
alshabib
9af70070c8 support for corsa pipeline. EXPERIMENTAL.
Change-Id: Ic3db0a7a18f11c41c8a84f25a249dfb63109da97
2015-02-17 18:48:00 +00:00
Michele Santuari
4b6019e449 ONOS-631 #Initial MPLS intent implementation
Change-Id: I6f906b953f06f395cc67e612648802e333c0e581
2015-02-14 10:00:48 +00:00
sangho
20f91163c9 Fix a bug of wrong flow stats type checking
Change-Id: I5279aa3f620a5914d6d0f986b623137b926724bd
2015-02-12 11:25:43 -08:00
Pavlin Radoslavov
febe82cc82 Implement some of the missing IPv6 flowmod treatments
Work toward ONOS-509

The following treatments are added/implemented:
  - IPV6_SRC
  - IPV6_DST
  - IPV6_FLABEL

Also:
 - Renamed L3ModificationInstruction.L3SubType.IP_SRC and IP_DST
   to IPV4_SRC and IPV4_DST (for naming consistency).
 - Few minor fixes in related code: Javadocs, comments, log messages,
   and IP address usage.

Change-Id: I551056f767a37e7cb6ae7d79f4a3929183500b57
2015-02-12 18:24:54 +00:00
sangho
7ff01813fe ONOS-944: Implemented a Group operation failure handler in GroupManger and SimpleGroupStore.
Change-Id: Ib3be4d534ceff04af2dad0c062fd4cd63d49ee82
2015-02-11 23:56:53 +00:00
sangho
a09f274052 ONOS-973: Implemented a unit test for OpenFlowGroupProvider implmentation.
- Fixed a bug in OpenFlowGroupProvider of wrong handling of pending group operations.

Change-Id: I70b80629f4eed000110d242f3558abe49b6b13bc
2015-02-11 22:45:23 +00:00
Brian O'Connor
72cb19a90e Implementation of new Flow Subsystem:
The subsystem no longer returns futures for tracking completion of work.
Notifications are explicitely returned via a call back mechanism. Also, the
subsystem is now asynchronous.

Change-Id: I1a4cef931c24820f9ae9ed9a5398f163f05dfbc9

more flowservice improvements

Change-Id: I5c9c1b6be4b2ebfa523b64f6f52e7634b7d3e05f

more flowservice impl

Change-Id: I05f6774460effb53ced8c36844bcda2f8f6c096f

Manager to store functional (at least i believe it)

Change-Id: I09b04989bd1004c98fe0bafed4c76714b9155d53

flow subsystem functional: need to fix unit tests

Change-Id: I1667f25b91320f625a03e5e1d5e92823184d9de0

flow subsystem functional

Change-Id: I429b3335c16d4fc16f5d55f233dd37c4d1d6111d

finished refactor of flow subsystem

Change-Id: I1899abc6ff6a974a2018d936cc555049c70a6804

fix for null flow provider to use new api

Change-Id: If2fd9bd5baf74d9c61c5c8085cef8bc2d204cbdc
2015-02-11 21:28:01 +00:00
Yuta HIGUCHI
dd9228dedb Avoid unnecessary boxing.
Change-Id: I8fce87e3b1ba1f65f0e379c60e5d71d637228b61
2015-02-10 22:28:57 -08:00
sangho
89bf6fb1f3 ONOS-991: The event listener in OpenFlowRuleProvider needs to check the event type because GROUP_STATS are also published now.
Change-Id: I3b61fcc4b59f1b47b11debdb1863d87d36db7744
2015-02-11 03:47:32 +00:00
Pavlin Radoslavov
5e4f754f19 Implement some of the missing Selector and Match Conditions
Work toward ONOS-509

The following match conditions are added/implemented:
  - IPV6_EXTHDR

Also, fixed the match criteria for the optical signal type
to represent unsigned 8 bits integer (per spec).

Change-Id: I925db19cb43c5d9f589c1f090b6a75faabe0a19b
2015-02-09 01:20:09 +00:00
Pavlin Radoslavov
f3b693381d Fix toward ONOS-960 - Signed/unsigned value mismatch for OpenFlow-related
match/action conditions

Fixed the signed/unsigned issue for the match conditions

Also:
  * Reordered some of the code in CriterionCodec.java so the order
    of handling various Criterion types follows the order as defined in
    Criterion.java
    - In the process, removed a duplicated entry for Type.MPLS_LABE
    - Fixed an issue with TCP/UDP/SCTP ports being accessed as 8-bit integers
      instead of 16-bit integers

  * Updated some of the unit tests in CriterionCodecTest.java to use
    larger integer values that could expose better potential bugs in
    the tested code.

Change-Id: I531d13bd258ebc559ce6be716863c01613427a98
2015-02-09 01:16:31 +00:00
Yuta HIGUCHI
32a53c5a85 Instruction related fixes
- Fixed PushHeaderInstructions bug, where half-baked Ethernet instace was used
  only to hold ethernetType. (ONOS-987)

Change-Id: I330a862c8a18206250befbd4e22ee6d189beed83
2015-02-08 01:41:43 -08:00