1436 Commits

Author SHA1 Message Date
Yuta HIGUCHI
780b138a52 minor bug fix
Change-Id: Icfe2f2b5cfefa6fc8a7e55ceb86a6785e57f04b3
2014-11-03 14:49:27 -08:00
Yuta HIGUCHI
d4ab8085df relay BACKUPS_CHANGED as ReplicaInfo
Change-Id: I72abd05e7d2d4a2c448323ad304c8f21b1d6a90b
2014-11-03 11:09:38 -08:00
Yuta HIGUCHI
3e848a8eb8 add methods to directly set MacAddress
Change-Id: Idab9dce493927d8943789177830df630f3b1326a
2014-11-03 09:29:59 -08:00
Ayaka Koshibe
98bd12f69c modificiations to emit BACKUP_CHANGED Mastership events
Change-Id: Id61dcc9dc42c8c246313afbec8d19142e6c855a5

Conflicts:
	core/net/src/main/java/org/onlab/onos/net/device/impl/DeviceManager.java
2014-11-01 20:13:37 -07:00
Yuta HIGUCHI
6c6fb9c65d deactivate NettyMessagingService
Change-Id: I59a437908570c9acc2776c2b0deedb869cf953e2
2014-10-31 23:21:39 -07:00
Yuta HIGUCHI
cc8e96ebc6 DeviceStore: lower log level
Change-Id: Ie606adee293d42775d8051ea7b4d064ed3ba7943
2014-10-31 23:21:39 -07:00
Yuta HIGUCHI
20c0e97b83 check applicability before accepting remote port update
Change-Id: I047881fcc412819558f8d32c30476512e47ae902
2014-10-31 23:21:39 -07:00
Yuta HIGUCHI
2c1d847ec4 Dist.FlowRuleStore: return empty when no master
Change-Id: I377003b5e1631ead05ab3d32bf670f52372de55d
2014-10-31 23:21:39 -07:00
Yuta HIGUCHI
13c0b87df5 Add API in DeviceClock*Service to check if Timestamp can be issued.
- check local DeviceClockProviderService before trying to
  store Port update information.

Change-Id: I22c94cb712d7001a227497b723780b6db3fbdf04
2014-10-31 23:21:38 -07:00
Pavlin Radoslavov
b139f4d947 Added support for IPv6 to IpAddressSerializer and IpPrefixSerializer. 2014-10-31 21:14:14 -07:00
Pavlin Radoslavov
af5ff79583 Added new method IpAddress.valueOf(InetAddress inetAddress)
and use it as appropriate inside DistributedClusterStore.memberAddress()
2014-10-31 20:51:47 -07:00
Pavlin Radoslavov
d0e32d7486 Added support for IPv6 addresses to class IpAddress:
- For some of the methods, the IP Version needs to be specified by the
   caller. This applies to the IpPrefix API as well.
 - For now, everywhere IpAddress is used and the IP version has to be
   explicitly specified by the caller, we assume/specify IPv4.
 - Added unit test for class IpAddress: for both IPv4 and IPv6 addresses.
2014-10-31 18:11:43 -07:00
Brian O'Connor
41718fced1 Applied some fixes to Intents
- Use classname instead of class in IntentId
- Added hashcode and equals to LambdaResourceAllocation
- Untrack resources in IntentManger during uninstall
- Refactored common code in OpticalPathIntentInstaller
- Copied SimpleLinkResourceStore to DistributedLinkResourceStore
- Added a few unserializable files to KryoNamespaces

Change-Id: Ic35d102244972d5cf0c64482fd99e8c9bb1293a6
2014-10-30 16:59:19 -07:00
Thomas Vachuska
4b42077418 Cleaned up a slew of Javadoc errors in preparation for switch over to Java 8. 2014-10-30 16:46:17 -07:00
Yuta HIGUCHI
2befc661d9 Loosen Kryo config only for DistributedIntentStore
Change-Id: Ie3f05e2d894b0d44f7c0ad645b77c65d1f2ce02b
2014-10-30 15:57:49 -07:00
Pavlin Radoslavov
855ea2d5b9 Refactor the IpPrefix API and implementation:
* Now IpPrefix uses IpAddress to represent the subnet address
 * The IpPrefix subnet address is masked-out by the prefix length.
   E.g., IpPrefix("1.2.3.4/24") is now stored as IpPrefix("1.2.3.0/24")
 * Removed IpPrefix methods that are not used or don't apply anymore
 * Replaced usage of IpPrefix with IpAddress where appropriate
2014-10-30 15:32:39 -07:00
Toshio Koide
32336182cc Initial implementation of unit tests for SimpleLinkResourceStore. 2014-10-30 13:02:47 -07:00
Yuta HIGUCHI
dfe6e3bd05 allow null Master in MastershipTerm
Change-Id: I840354eb6d0b5a1bac91887a41626c33c49d592c
2014-10-30 12:10:24 -07:00
Toshio Koide
69e5257d32 Fix bugs on SimpleLinkResourceStore. 2014-10-30 11:14:56 -07:00
Jonathan Hart
4f60f98bd8 Implemented multi-instance packet out.
We've defined a PacketStore abstraction through which outbound packets are
sent. The packet store has a simple implementation (basically a no-op) and a
distributed implementation on top of the cluster messaging service.

Change-Id: Ib32753314fe518ef1fd67c858db744b004539938
2014-10-30 11:02:52 -07:00
Yuta HIGUCHI
b5b71b3ce1 DistributedMastershipStore
- try to avoid unnecessary remote writes
- avoid reads from blocking if possible
- atomically read term info

Change-Id: I50badc718726261ccb14a6feefc578b420d28923
2014-10-30 08:21:27 -07:00
Yuta HIGUCHI
f1d159a6b5 remove term lock
Change-Id: Ia19323d2bb1e30f2c62ddda7c6269928c4d73fb3
2014-10-30 08:21:27 -07:00
Toshio Koide
106d4495d3 Initial implementation of LinkResourceStore for single instance env. 2014-10-30 04:23:23 -07:00
Jonathan Hart
68fef9d95e Added modification instructions to Kryo
Change-Id: I4c571240560442aa6ac105c0ec6b3488641f0530
2014-10-29 17:30:03 -07:00
Thomas Vachuska
d16ce18d0c Added Port.Type and plumbed it throughout. 2014-10-29 17:25:29 -07:00
Yuta HIGUCHI
eb5a0b9d7d minor Device - Mastership fixes
Change-Id: Id6d46e22fb67f01cd5c0802cf4fad135a043ec77
2014-10-29 15:59:40 -07:00
Jonathan Hart
29858af463 Add an empty topology at initialization so we can never have a null topology
Change-Id: I07921583e107895aeeb627f7d61920fed800e77c
2014-10-29 15:33:18 -07:00
Ayaka Koshibe
e60d452eda avoid transient changes to MastershipStore from being posted as events
Change-Id: Id033cf50f865e44439138f5b3814ebaedb832b73
2014-10-29 11:15:59 -07:00
Yuta HIGUCHI
ea15015f7c convert anonymous class to nested class
Change-Id: I2d0770b80ca4806fabf31fd358ecb165d3e9f778
2014-10-28 22:55:14 -07:00
Yuta HIGUCHI
72569d6571 remove synchronized
Change-Id: I1a11e48d042797744a4ac834fd65f6417c700f57
2014-10-28 22:40:01 -07:00
Yuta HIGUCHI
71fa493b96 Add TODO memo
Change-Id: I2ae516383b02516b8d36e1f23331f81b57569ac5
2014-10-28 22:27:49 -07:00
Yuta HIGUCHI
4b52444082 DistributedFlowRuleStore related fixes
- handle no master for Device case
- Changed failed item type to FlowRule

Change-Id: If6c85751759cf6ba9ab0ed0384cbe1bf08a5d572
2014-10-28 22:23:57 -07:00
Yuta HIGUCHI
087019ba56 register some Intent related classes
Change-Id: I71ec0c7db930ffb9a1f2bc3da7c3de2f598ee5ee
2014-10-28 21:08:33 -07:00
Thomas Vachuska
bd8c988f24 Merge remote-tracking branch 'origin/master' 2014-10-28 15:53:35 -07:00
Thomas Vachuska
c0bbbd4f89 Allowing link stores to create links injected by ancillary providers.
Fixed oe-linc config
2014-10-28 15:53:30 -07:00
Yuta HIGUCHI
10a31c3b85 initial Distributed IntentStore using Hz
Change-Id: Iffb3f5fdfe8ba080fd039e67f8473ea18348f20d
2014-10-28 14:42:06 -07:00
Thomas Vachuska
4f1a60c9fd Revised copyright message. 2014-10-28 13:39:11 -07:00
Thomas Vachuska
444eda6066 Added JSON for role command. 2014-10-28 13:09:42 -07:00
Pavlin Radoslavov
444b519327 Replaced the usage of IpPrefix with IpAddress in the context of
Controller Nodes.

Change-Id: Id2b25fb071bb20541db3f77b7afefe886520538e
2014-10-28 10:45:19 -07:00
Thomas Vachuska
e0f804aa3f Added application ID store; both trivial and distributed variants. 2014-10-27 23:40:48 -07:00
Yuta HIGUCHI
92891d1c20 add basic backup to DistributedFlowRuleStore
Change-Id: I8eedf0cf30a2555d45145889b5ef210e826b0ac0
2014-10-27 22:52:29 -07:00
Pavlin Radoslavov
3f4ccb286d Updated the IpAddress serialization/deserialization
inside class IpAddressSerializer to exclude reading/writing
the prefix length for IpAddress, because it is not applicable.
2014-10-27 20:15:10 -07:00
Pavlin Radoslavov
33f228af5a Replaced IpPrefix and IpAddress in the following methods
and cleanup related code:

 - Host.ipAddresses()
 - DefaultHost.ipAddresses()
 - HostDescription.ipAddress()
 - DefaultHostDescription.ipAddress()
 - HostService.getHostsByIp()
 - HostManager.getHostsByIp()
 - HostStore.getHosts()
 - GossipHostStore.getHosts()
 - SimpleHostStore.getHosts()
 - ProxyArpService.known()
 - ProxyArpManager.known()

As a result of the above cleanup, the "hosts" CLI command outputs
the IP addresses as "1.2.3.4" instead of "1.2.3.4/32".

Also, the following REST calls might be affected as well with
the above format replacement:
  - REST POST: config/topology
  - REST GET: topology/graph
2014-10-27 19:33:16 -07:00
Pavlin Radoslavov
76b0ae2789 Work toward common IP address classes.
* Updated classes PortAddresses (in core/api) and Interface (in sdnip)
   to use class InterfaceIpAddress instead of IpPrefix
 * Updated corresponding unit tests and relevant code
 * Minor refactoring inside ProxyArpManager to simplify some of the
   logic and usage related to PortAddresses. Also, renamed
   method findOutsidePortInSubnet() to findPortInSubnet() and updated
   its implementation to reflect better its usage.
2014-10-27 15:33:19 -07:00
Yuta HIGUCHI
bf89c74cf8 DistributedFlowRuleStore
- replace pendingFuture Map with Cache
- remove the future after setting the Future value

Change-Id: I152dfd586350c472dde74a28579536b44761680a
2014-10-27 15:21:14 -07:00
Yuta HIGUCHI
41f2ec0ccc moved Hazelcast based Mastership+Cluster store to onos-code-dist bundle
Change-Id: I304f916f3a400eaf050a5351825634349790e1bf
2014-10-27 10:40:49 -07:00
Yuta HIGUCHI
eb24e9d0ac Attempt to fix Link vanishing after mastership change
- LLDPLinkProvider: handle DeviceUpdate event
- DeviceManager: publish Device events caused by Mastership change
- DeviceManager: Always try to markOffLine on deviceDisconnected
- GossipDeviceStore: Silently ignore failure to get Timestamp on port events

Change-Id: I51fbb3f1924007867512f20e62d6d53090c63640
2014-10-26 19:58:10 -07:00
Yuta HIGUCHI
3195f55ef4 Fix Hazelcast event suppression.
- ignore event triggered by local node,
  not if the subject is about local node.

Change-Id: I50858a8b9272966f597f5172a0227f14afbc72c4
2014-10-26 19:44:55 -07:00
Madan Jampani
24f9efb49e sendAndReceive now returns a Future instead of Reponse 2014-10-24 18:56:23 -07:00
Ayaka Koshibe
b62aab5c29 fix relinquishment behavior in SimpleMastershipStore
Change-Id: Ibc9eeae397b7acc9e08cc569f9c8a642557bf4f9
2014-10-24 13:15:25 -07:00