95 Commits

Author SHA1 Message Date
Brian O'Connor
880dc20ddb Starting snapshot 1.5.0-SNAPSHOT
Change-Id: If9ce4ca5f5f6d089e9f088e710367f4e2ca1c9b6
2015-12-16 22:53:14 -08:00
Brian O'Connor
5a2856fd01 Tagging 1.4.0 (Emu release)
Change-Id: I55e4dbcecbfac86cccae27aa99a813910bd5557a
2015-12-16 22:47:51 -08:00
Brian O'Connor
6b7707101b Switching back to snapshot 1.4.0-SNAPSHOT
Change-Id: Ie726afc2df730a1009db421328267f2dcfedfd66
2015-12-15 15:48:42 -08:00
Brian O'Connor
d1cdd19530 Tagging 1.4.0-rc3
Change-Id: Iddb1e8adff820e81794bf83f5861519e9a787880
2015-12-15 15:36:45 -08:00
Brian O'Connor
b22ba656bb Switching back to snapshot 1.4.0-SNAPSHOT
Change-Id: Ic0ff8fe27d46b0662f596db9185591736efa6cf9
2015-12-11 17:02:48 -08:00
Brian O'Connor
4aded4c8b7 Tagging 1.4.0-rc2
Change-Id: I7e2916f7b02d297818ad65153aee5e5946f882ac
2015-12-11 16:55:13 -08:00
Saurav Das
423fe2b487 CORD-354 OF-DPA support for link-failures.
Bug fix in flowObjectives store. Adding a removeNextGroup API to the store.

Change-Id: I5890411e5b4eabdc057402687ada26e539500f8f
2015-12-11 17:00:52 +00:00
Shashikanth VH
013a7bc06c Naming convention
Change-Id: I2e2bbce6397dd95e841bcdc67ee125c1626671b3
2015-12-10 20:43:14 +00:00
Brian O'Connor
905ea22db6 Starting snapshot 1.4.0-SNAPSHOT
Change-Id: I0398bb2093e70d39788888038abb9df6193ccb42
2015-12-05 00:57:06 -08:00
Brian O'Connor
b209dc68e2 Tagging 1.4.0-rc1
Change-Id: Idec5c65021283fa03a8f2530aebba968a5451d8b
2015-12-05 00:56:21 -08:00
Saurav Das
4ce4596d62 CORD-367 L2 bridging and L3 routing support with internal VLANs in OF-DPA.
Also includes:
     All forwarding in app is now via nextObjectives (not treatments) - Spring Open driver converts
     non-ECMP forwarding to flow-actions, while OF-DPA driver continues to use groups.
     Convert 'setMeta' methods to 'withMeta' in Flow Objectives API.
     Bug fix in Flow Objective Manager - set of PendingNext is now threadsafe.
     Bug fix in ArpHandler - now recognizes routerIp in addition to gatewayIps
     Removed a bunch of testcode
     Added group count in CLI

Change-Id: Id3b879c5dda78151ca0ec359179f1604066d39fc
2015-12-04 19:49:00 +00:00
Charles Chan
531a78b802 CORD-352 Refactoring SegmentRoutingConfig
- Add Javadoc and fix function name convention
- Add setAdjancencySids method
- Change return value of getAdjacencySids from List to ImmutableSet
- Validate config value
- Add unit test for SegmentRoutingConfig

Change-Id: Ic43ac31a49da8a9d62131d7803930280cf9994d2
2015-12-02 22:41:44 +00:00
Charles Chan
d6d581a469 CORD-339 Network config host provider
* Implement new application org.onosproject.netcfghost
* Implement BasicHostConfig to include IP and location information
    - Update network-cfg.json to add host config example
    - Add network-cfg-2x2-leaf-spine.json for 2x2 leaf-spine network in SegmentRouting
* Update Segment Rounting
    - Punt ARP packets
      (which is done by HostLocationProvider previously)
    - Check existing hosts when device connected or configured

Change-Id: I03986ddc8203d740b5bf26903e3dbf866d4d4600
2015-12-02 20:27:46 +00:00
Saurav Das
8a0732e8ae CORD-48 Implementation of hashing Next Objective in OF-DPA driver. Major changes to ensure multi-ONOS-instance group-chain installation.
Also includes:
     Changes to Next Objective that adds metadata field for applications to optionally send auxillary info to drivers
     Changes to Next Objective that allows more explicit modification of the next objective
     Changes to Forwarding Objective and PendingNext to include hashCode() and equals() method
     MplsBosInstruction included in kryo serializer
     GroupKey's byte[] represented as a hex string
     Bug fix in mpls flow installation to report failure in install
     Bug fix in linkUp in SR app to disallow non-masters to modify groups
     Bug fix in ordering of actions in group

Change-Id: I3e7003f55724c2de79589e43e11d05ff4815a81d
2015-11-30 19:00:42 +00:00
Charles Chan
68aa62d743 [CORD-46] Implement L2 switching in Segment Routing
DONE
- Update SpringOpenTTP to support bridging table emulation
- Populate low priority subnet broadcast entry for bridging table
- Move IP entry population to host event handler as well
- Update ArpHandler to handle intra-rack ARP forwarding/flooding
- Move TTL_OUT action from IP table to corresponding group
    Since hardware does not support TTL_OUT in the IP table
- Populate entries to bridging table (MAC learning)
- Emulate src mac table

Not in this submission
- Emulate src-mac table behavior
- Pop vlan in the group instead of the flow

Change-Id: Ib69357c1889ccddaa4daa272d9f5843790ee1a3c
2015-11-19 22:42:01 +00:00
Saurav Das
4f98008c10 CORD-48 Added support for broadcast next objective in OFDPA driver.
Changed groupid to show in hex for cli command 'groups'

Change-Id: I86474912a9fd775c36d5bc49545eaa58ecc46b47
2015-11-06 23:41:10 +00:00
Charles Chan
0b4e61837d [CORD-313] Handles uncaught exceptions when device is not configured
Includes following minor changes
    - Move DeviceConfiguration and DeviceProperties to config package
    - Create DeviceConfigNotFoundException

Change-Id: I32455d88c712bb65cd7f71dab9472ae003303de2
2015-11-06 16:57:01 +00:00
HIGUCHI Yuta
ca9cc8e28e Avoid use of Objects.hash when there's only 1 params
- directly call #hashCode() when hashed Object seems non-null
- replace with Objects.hashCode(Object) when Nullable
- replace with Long.hashCode(long), etc. when primitive

Change-Id: I08c24ebbe94cf4162d1491209a14baf953163e41
2015-11-05 21:47:59 +00:00
Saurav Das
2857f38fb9 CORD-48 Added to support for OFDPA emulation with CPQD switch, via more table-miss-entries.
Fixed a race condition where device processing starts before config has fully loaded.
GroupHandler in SR app is now created only once, not every time a Device update happens.

Change-Id: I945c47ee9caa2f5740296f49d5d223783271bba4
2015-11-04 15:51:25 +00:00
Saurav Das
837e0bb9b0 CORD-48 Fixing filtering rule bug in multi-instance operation.
Change-Id: Ie91b2efcebff1bdb14357b6720ff8214a712cdc2
2015-11-03 01:39:33 +00:00
Charles Chan
9f676b64af Several fixes for Segment Routing
1. In getSubnetNextObjectiveId, do not create a broadcast group if it does not exist
       The creation is done when device is up and when config is added
2. Check if broadcast group exists before creating one
3. Put subnet in a Set instead of a List to avoid duplicated elements

Change-Id: Ifafd8e783a9d98aa62b5e299f560897458b90bb0
2015-10-30 15:47:08 +00:00
Charles Chan
c42e84e5b2 [CORD-46] Create a broadcast group for each subnet
DONE
- Expose subnet-to-ports information from DeviceProperties and DeviceConfiguration
- Create subnetNextObjectiveStore to store <DeviceId, IpPrefix> to nextId mapping
- Implement broadcast NextObjective in SpringOpenTTP
      Use ALL group type to achieve broadcast

TODO (not in this submission)
- Push ARP table for a host when its location is learned
- Push default ARP table miss rule. Action = to the broadcast group

Change-Id: I2de28095e85289e75af3fc7a02c811b270b342ad
2015-10-29 21:16:45 +00:00
Saurav Das
0e99e2ba40 SR app now assigns internal vlans per subnet and passes this
information in a filtering objective to drivers. OF-DPA driver
uses this information to assign vlans to untagged packets.

Change-Id: Ibf33bdcedf5f83992f362dfb91c12575c65da3b4
2015-10-29 14:21:23 +00:00
Saurav Das
822c4e21ba CORD-48 First checkin for enabling OF-DPA driver to support the SR app.
Filtering Objective support added. Driver renamed from OFDPA1 to OFDPA2.
Code refactored within driver to reflect test-code which will be used by
static flow-pusher app in the future.

Change-Id: I7132d8b8eaf28df7c11646c5a35035f258c65af4
2015-10-27 17:01:41 +00:00
Saurav Das
a07f203fbe Mostly just fixing typos
Change-Id: If543e9190035016161dfedd51136d66b799b8e26
2015-10-19 22:42:13 +00:00
Charles Chan
eb088e6fcd Fix possible concurrency flaws in ArpHandler
Change-Id: I7e869453aefa580246af593c211aa98fb417f5cc
2015-10-15 19:14:36 +00:00
Charles Chan
b8e10c86b6 [CORD-209] Improve config loading of SegmentRouting
Change-Id: I8707a26a9c25d35467e58556f9d3167c91f46e08
2015-10-15 17:42:06 +00:00
Charles Chan
48922639f4 Remove original network config handler
No longer need this since we start using Network Config Subsystem

Change-Id: Ib038963e8d677f3533ba1a815af9c5d870a1d158
2015-10-12 21:43:21 +00:00
Brian O'Connor
5251562d15 Fixing Javadoc errors
Change-Id: I72b9d49e052316cbbbef343d367ffffe13cd4e56
2015-10-09 17:08:17 -07:00
Charles Chan
4636be0a07 [CORD-200] Improves Segment Routing using Network Configuration Subsystem
The missing part of gerrit #5533

Change-Id: I0830aa80f9be0e9933a99e0c12518aef67008a53
2015-10-09 02:04:46 +00:00
Charles Chan
d683288781 [WIP][CORD-200] Improves Segment Routing using Network Configuration Subsystem
DONE
- Remove original configuration subsystem
- Implement new SegmentRoutingConfig
- Update SegmentRoutingManager and DeviceConfiguration

TODO
- Extract adjacencySid array from JsonNode
- Extract subnets and prefixes from port subject

Change-Id: Ic7fec102f4427a30eec99ebf6c7c5584652a6280
2015-10-07 20:57:23 +00:00
Saurav Das
428ebc9c89 Removing some old dependencies in bgprouter.
Fixing the ICMP handlers in a couple of apps.
Adding some sample configs.

Change-Id: Id33e0effd9452558fc4d07d78b093f0818e96d23
2015-09-30 10:04:25 -07:00
Sho SHIMIZU
5eb79c5f69 Remove unnecessary cast
Change-Id: I66acf110940f8562234461b88d7c97070e0568e4
2015-09-30 00:12:21 +00:00
Brian O'Connor
f967ad61dc Starting snapshot 1.4.0-SNAPSHOT
Change-Id: I6b64a70eb8c416b58689afd2af7d726153176f6b
2015-09-18 15:19:54 -07:00
Sho SHIMIZU
af973436fc Use auto-unboxing instead of manual unboxing
Change-Id: I50c66b1b63729bff2c4b3416664f391f2e900bd3
2015-09-14 16:13:33 +00:00
Sho SHIMIZU
a8dbad418d Use diamond operator
Change-Id: Ief0dabe762acb740476eba5eb033dcfce76426b2
2015-09-11 23:48:21 +00:00
Sho SHIMIZU
6cfc02d953 Use dianmond operator
Change-Id: I551dd9443b10ef17832f74a554486b7605e9866a
2015-09-11 18:53:17 +00:00
Brian O'Connor
b3a3b52f46 Rolling back to snapshot 1.3.0-SNAPSHOT
Change-Id: I5394f02bc4cc4614427e5e535889e883944734fd
2015-09-10 17:26:49 -07:00
Brian O'Connor
cbc5878c31 Tagging 1.3.0-rc2
Change-Id: Id062ea54a0f03c26eb763e03cc347dbfe63cd03f
2015-09-10 17:08:00 -07:00
Thomas Vachuska
58de416ef1 Fixing copyrights.
Change-Id: Iacdddaf1b83fa24998730c3f714fcaf35351ae9e
2015-09-10 16:18:10 -07:00
Ray Milkey
9b36d81ce3 Javadoc fixes
Change-Id: Id23ed2d576b2222194153be9d043ca5acafe67ae
2015-09-09 23:54:01 +00:00
HIGUCHI Yuta
84a25fc158 Fix ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD issue
Change-Id: I367514c698e825ccf6fda63104e2a51f51c190c4
2015-09-08 17:33:53 +00:00
Brian O'Connor
e8bcb70258 Changing version to back to snapshot 1.3.0-SNAPSHOT
Change-Id: I05bc4669bf3ad2a149cee5d303da42bf8ffd14e8
2015-09-04 23:57:08 -07:00
Brian O'Connor
004345f6c8 Tagging 1.3.0-rc1
Change-Id: I640fc75397b90532e8a71f9413b6822f80b3e775
2015-09-04 23:47:08 -07:00
Sho SHIMIZU
b017141ab5 Use auto-boxing
Change-Id: Ic905b504b585599da3329baf7bd0f138b1be35a5
2015-09-02 20:37:26 -07:00
Sho SHIMIZU
aab784e46c Use filter() to skip undesired instances
Change-Id: Ifc7cc5affe494c8573065cdcf7a018584e553a01
2015-09-02 20:28:39 -07:00
Sho SHIMIZU
47eedecb8a Apply more functional style
This commit keeps the original behavior, but it may cause a cast error.
It is better to use filter() to avoid the cast error.

Change-Id: Ieb3150e9775ed0689b3861de5179ff1346d2a3e6
2015-09-02 20:28:38 -07:00
Hyunsun Moon
cf732fb688 ONOS-2711 Replaced short to TpPort for tcp/udp ports
Change-Id: Ibf0474b5369d11d377fd33cf5ab48083cbca3308
2015-08-25 16:10:35 +00:00
Ray Milkey
f2ab6f3ac8 Add Swagger comments and dependencies to appsm with REST APIs
ONOS-2704 and ONOS-2705

Change-Id: I77655af94f8b5aba647a94b3b786a6de8a285d7c
2015-08-20 21:49:15 +00:00
Thomas Vachuska
87ae1d9a30 Fixed javadoc warnings & added a few deprecations.
Change-Id: I89205b08bc5fcbfed769c489609a46d420ee227e
2015-08-20 00:46:33 +00:00