Add TLS support in the Opendaylight Controller: 19/119/1
authorJason Ye <yisye@cisco.com>
Fri, 5 Apr 2013 23:58:47 +0000 (16:58 -0700)
committerJason Ye <yisye@cisco.com>
Fri, 5 Apr 2013 23:58:47 +0000 (16:58 -0700)
commitf2344025e13ee3e51561bb171800d240f9f91e9a
tree031d2eb2c5f971f1c6301864e9324f9241fc15a5
parent48c79f7c49ed86f40970a30f85ccb096370d636e
Add TLS support in the Opendaylight Controller:
- TLS configuration is specified in file ./configuration/config.ini. To enable the TLS feature, set secureChannelEnabled=true and specify the location of controller Java KeyStore and TrustStore files. The Java KeyStore contains controller's private key and certificate. The Java TrustStore contains the trusted certificate entries, including switches' Certification Authority (CA) certificates. Here is the sample configuration,

secureChannelEnabled=true
controllerKeyStore=./configuration/ctlKeyStore
controllerKeyStorePassword=xxxxx (this password should match the password used for KeyStore generation)
controllerTrustStore=./configuration/ctlTrustStore
controllerTrustStorePassword=xxxxx (this password should match the password used for TrustStore generation)

- Added two message read/write services, one for clear text, one for secure communication.

- Added priority queue for message transmission. The system critical messages, such as Hello, Echo Reply etc will be treated as high priority and will be served ahead of other messages, like statistics request, discovery packets etc.

Signed-off-by: Jason Ye <yisye@cisco.com>
opendaylight/distribution/opendaylight/src/main/resources/configuration/config.ini
opendaylight/distribution/opendaylight/src/main/resources/configuration/logback.xml
opendaylight/protocol_plugins/openflow/pom.xml
opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/IMessageReadWrite.java [new file with mode: 0644]
opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/ISwitch.java
opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/MessageReadWriteService.java [new file with mode: 0644]
opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/PriorityMessage.java [new file with mode: 0644]
opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/SecureMessageReadWriteService.java [new file with mode: 0644]
opendaylight/protocol_plugins/openflow/src/main/java/org/opendaylight/controller/protocol_plugin/openflow/core/internal/SwitchHandler.java