211 Commits

Author SHA1 Message Date
Charles Chan
e7926850ae Component config changes after vRouter becomes separate apps
- SR no longer needs to turn SSFI off using component config since SSFI is now an ONOS app.
- Distributed Route Store is now enabled by FpmManager instead of vRouter

Change-Id: Ia5665ffc9bdb4cd126868b3c829aedda713b53f4
2017-02-06 16:33:55 +00:00
Charles Chan
0b77bdda01 Fix Segment Routing dependency
Change-Id: Ifa74558d39944d6e20e6f8b34558ffc793c42784
2017-02-03 22:26:06 +00:00
Pier Luigi
7dad71ce54 Adding small handler to ICMPHandler
Change-Id: I8401c1564cc8aa89f8e3767ae83ec56c0dfe6fd0
2017-02-03 01:14:20 +00:00
Pier Luigi
0e35863305 Various fixes:
- Adds the support for the filter obj of AppConfigHandler;
- Fixes NPE on ICMP handler when rcving a packet from not configured ntw;

Change-Id: I44b90420429ca05927426bdf9a9ce4b78846b566
2017-02-03 00:59:51 +00:00
Pier Luigi
a905c0c7ba Fix npe when one of the address is not configured
Change-Id: If42b4d35bc20060db0bc0fe2699e3b375c2cf9f8
2017-02-03 00:54:56 +00:00
Pier Ventre
09f88b856d Removes leftovers of the previous patches.
Change-Id: Id1131762e94141eab472ff4a31035acc28979d43
2017-01-21 00:17:18 +00:00
Pier Ventre
968da12380 [CORD-520] IPv6 routing
Changes:
- Adds support for IPv6 host routing in the fabric;

Change-Id: I07369500de48f0945f09a5a1e8ab4c98be37978e
2017-01-21 00:07:23 +00:00
Pier Ventre
735b8c8ab2 [CORD-631] ICMPv6 Echo support
Changes:
- ICMPv6 Echo support;
- Introduces SegmentRoutingNeighbourHandler;
- Simplifies ArpHandler;
- Simplifies IcmpHandler;

Change-Id: I93f04d94ff15f43ca83f96cbab3da5064c215f9c
2017-01-21 00:01:55 +00:00
Pier Ventre
f4b5fceb0d [CORD-638] ICMPv6 NDP support
Changes:
- Adds the support for the ND protocol;
- Changes in several places Ip4Address and Ip4Prefix for general objects;

Change-Id: I7429b8f4acc9ffe432b49b66e66da50045996f7c
2017-01-21 00:01:18 +00:00
Pier Ventre
10bd8d11fa [CORD-458] Updates ARP handler
Changes:
- SR application uses NRM;
- Adds hooks for ND protocol;
- Updates ARP handler to better leverage on NRM;
- Reworks to take into account IPv4/IPv6 together;

Change-Id: Iab55b8c5ef7d973928d8ad47e2c2a482fb9c5c8a
2017-01-20 16:58:24 +00:00
Pier Ventre
e0ae7a3179 [CORD-630] IPv6 filtering rules
Changes:
- Udpates TMAC table in order to handle IPv6 protocol;
- Updates ACL table in order to handle ICMPv6 traffic and traffic for the router;
- Udpates UNICAST table in order to handle the traffic towards the other routers;
- Updates the router ip in the netcfg in order to handle IPv6 address;
- Substitutes IpAddress and IpPrefix in many parts;
- Updates cpqd and ofdpa drivers to handle the above cases;
- Fixes the interaction with NRM when neighbordiscovery is activated;
- Introduces the IPv6 loopback and IPv6 node sid;

Change-Id: I0a3003be6f2f4b581cabe224c47a0cfbf51e8f9c
2017-01-20 16:55:54 +00:00
Ray Milkey
287b4ae810 Starting snapshot 1.9.0-SNAPSHOT 2017-01-19 15:21:17 -08:00
Ray Milkey
2557ba3375 Tagging 1.9.0-b1b 2017-01-19 15:20:17 -08: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
Patryk Konopka
1a3c0655ec [ONOS-5838] Missing null reference check bugfix
Change-Id: I843ad3a8777a80d9e86a4c1fe227c002a6772e1b
2017-01-19 18:08:28 +00:00
Charles Chan
77899538d0 Fix typo in SingleSwitchFibInstaller property
According to https://gerrit.onosproject.org/#/c/12436

Change-Id: I19278e75444b16f0d651c4d367fcd3aad58d6ba8
2017-01-19 17:27:37 +00:00
Charles Chan
50035637c0 Disable IpHandler in Segment Routing
Change-Id: Ibe39e29e1d2989ef78ad7d2f16d312f70cd15db2
2017-01-16 19:24:02 +00:00
Charles Chan
da5dc8c3c4 Bugfix for DHCP Relay
Relayed offer/ack should use relay agent IP as source and offered IP as destination

In addition,
   - Typo in log message
   - Remove unnecessary log

Change-Id: Id6331cc895884cd6025de6040bcf8ea60334ca5c
2017-01-16 18:48:37 +00:00
Pier Luigi
7e41513371 SR disables arp/ndp processing in NRM and DHCP relay
Change-Id: If67cb6e2c81718afcda372cf247d281b7a077f7b
2017-01-16 18:36:43 +00:00
Pier Luigi
9e5c5ca225 Various fixes and addition to the Fabric
Changes:
- Punts ARP packets to the controller using fobj;
- Disables intercepts in HLP when SR app is activated;

Change-Id: Ife098994f6d3c79fd73847657df0c08d856e7246
2017-01-16 17:00:42 +00:00
Charles Chan
03a73e0e70 CORD-523 Introduce generic routing service in Segment Routing
Segment Routing now reacts to routes being added/removed through RouteService.

SR will disable SingleSwitchFibInstaller if vRouter is activated

SR will install a routing table entry on
    - The leaf where next hop attaches to
    - The other leaves that points packets to the leaf where next hop attaches to

Host handler no longer add any IP flow for hosts outside the configured subnet
    - We need to explicitly add a per host route via RouteService when needed (vSG)

Change suppressSubnet behavior
    - Before: do not push any flow
    - After: ignore subnet config but still push filtering obj with VLAN 4094
             ARP handler drops all packets from suppressed ports

Additional refactoring
    - Remove vRouterId. Gateway router now needs to be specify through route API
    - Limit the scope of some variables
    - Unify handler.init method name

Change-Id: Idd2fd19fa74e3fa6209eef5cf2ed79957715c5e9
2017-01-12 18:55:40 +00:00
Charles Chan
2df0e8af5a Use new PacketService to request ARP with duplication
Change-Id: Id005772b0a69629ad3fb532d16a398d170234d88
2017-01-11 22:23:19 +00:00
Yuta HIGUCHI
a26109f689 fix potential race condition
Change-Id: I0bf9df79691e9b08af981348a75886b053404add
2017-01-10 23:30:48 +00:00
Charles Chan
68aaad547e Determines route IP by checking the interface config directly
Previously, SR checked the subnet data structure which contains
multiple subnets now in order to support generic routing.

A missing part of gerrit #11842.

Change-Id: Ia778c8ba5a42927d259c70bbb7538869270a7a1f
2016-12-12 23:24:48 +00:00
Saurav Das
d2fded0301 CORD-637 Fixing intermittent filtering objective failures by repeatedly trying
till results are consistent. Also fixed some typos and made some logs clearer.

Change-Id: If829b02ac6dc2f8ada455b5290c718d29a6d7988
2016-12-06 17:20:18 +00:00
Ray Milkey
72bcefefce Starting snapshot 1.9.0-SNAPSHOT
Change-Id: Iae30168353c72c4e2d5e395298ceca5dd7554984
2016-12-02 16:22:53 -08:00
Ray Milkey
bc3c6ba539 Starting snapshot 1.8.0-SNAPSHOT 2016-12-02 15:59:38 -08:00
Ray Milkey
a222d05a18 Tagging 1.8.0-rc4 2016-12-02 15:49:32 -08:00
Ray Milkey
b547e06157 Starting snapshot 1.8.0-SNAPSHOT 2016-11-30 15:10:18 -08:00
Ray Milkey
4f6d428dc7 Tagging 1.8.0-rc3 2016-11-30 14:52:32 -08:00
Saurav Das
4e3224fb5a CORD-641 Bug fix for handling reconnected leaf switch
Also changed some ECMP graph node variables to consistenly use
'root' and 'target' instead of the generic 'dst' and 'src' terms.

Change-Id: I1965e6d4a13f3cd42ec5cce08b0b0c321625e554
2016-11-30 21:26:08 +00:00
Charles Chan
458b826288 Fix NPE when revoking routes
Change-Id: Ie086fb2ea947fd909c2c1416c3da9cac22014dd1
2016-11-30 20:12:28 +00:00
Saurav Das
1a129a029f CORD-81 Support for editing buckets of ALL groups, both L2Flood and
L3Multicast in the OF-DPA driver. Additionally changed SR app to
react to edge ports going up/down by sending flood group edit calls.

Change-Id: I6d7749f579d3d1d800e6ca8ce2316bd0e3f6136b
2016-11-30 19:43:49 +00:00
Pier Ventre
9816178949 [CORD-578] MPLS ECMP configurable
Changes:
- Adds MPLS-ECMP option to SR configuration;
- Updates the json examples;
- Implements unit tests to verify the expected behaviors;

Change-Id: I6a7f5d34161be7c85ecb76c9a09288d960aad3cb
2016-11-30 18:58:44 +00:00
Ray Milkey
58c6af2321 Starting snapshot 1.8.0-SNAPSHOT 2016-11-22 17:26:52 -08:00
Ray Milkey
8b8b30ce29 Tagging 1.8.0-rc1 2016-11-22 17:08:32 -08:00
Ray Milkey
85267006aa checkstyle rule to check copyrights
Change-Id: Ia9bab40b5fe64fca539058a4316371f7acc0f387
2016-11-18 18:40:44 +00:00
Charles Chan
2c15acae9f Determines the subnet of given port by checking the interface config
directly

Previously, SR checked the subnet data structure which contains
multiple subnets now in order to support generic routing

Change-Id: Ib6e4b107583d9fd1bca248b31a6c437236560199
2016-11-17 19:29:11 +00:00
Charles Chan
505dfd8e24 Fix NPE when a port is not configured
Change-Id: Id55cdbb7560bd11734c1923fdd6c9397aec0b071
2016-11-08 16:32:13 -08:00
Charles Chan
1cdecffa2b Improve populate/revoke IpRuleForHost to support generic route population
- Supports not only a single host but also entire prefix
- Also rename it to populateRoute/revokeRoute

Change-Id: Id8463c03dabb1e9f94da709685d8325c66a36a0e
2016-11-07 17:09:01 +00:00
Saurav Das
1ce0a7b8b5 CORD-414 Editing hash groups buckets in the OF-DPA driver instead of
creating new groups.
Also in this commit - fix for NPE in groups cli, and removal of unnecessary
cpqd-ofdpa3 driver.

Change-Id: I2a5dd183cb38ed901caa5a806791b77e9d92d93c
2016-10-25 12:47:23 +00:00
Charles Chan
c81c45bbde CLI command that shows all subnets configured in Segment Routing
Change-Id: Ib03ec2039b763f3796548923883fc89913a1ceac
2016-10-21 17:36:57 +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
Pier Ventre
2c51531ab7 [CORD-438] Fix Segment Routing application
Changes:
- Discards Link events if one of the switch is down;
- Triggers the paths optimization after device-down event;

Change-Id: I4114f2450401e0d1ff5658d592daf319d977f20e
2016-09-20 14:33:34 -07:00
Brian O'Connor
bfc02ecd22 Bumping snapshot version to 1.8.0-SNAPSHOT
Change-Id: I4ca57b277d8ac814b8a10b107d995cb1cc4d499d
2016-09-16 17:41:55 +00:00
Brian O'Connor
b19fc86f82 Bumping version back to 1.7.0-SNAPSHOT
Change-Id: I1df9d0f12cd7ec7597499d41cacebdbe75899556
2016-09-16 00:12:21 -07:00
Brian O'Connor
338bc0cf19 Bumping pom versions to 1.7.0-rc2 and fixing some maven issues
Change-Id: I6169420328333d0916452aa92efbfa961d72e9c4
2016-09-16 00:11:45 -07:00
Brian O'Connor
0a4e6742b8 Copyright update
Change-Id: I534d938da3820f6fb814aed3bb4a0855fa41ddd5
2016-09-16 06:48:34 +00:00
Yuta HIGUCHI
0de4ba9401 Remove duplicate version specifications
Change-Id: I0fe6027e66815ab2e7db5e090dd5aea39b3c36e1
2016-08-18 15:59:50 +00:00
Yuta HIGUCHI
1624df1f30 Assigning names to various threads
- specify nearby logger when possible

Change-Id: Ia8925ab1459c4d1da922becd0e201388d44d4294
2016-07-22 22:56:26 +00:00