PCEP Protocol code restructured to move under PCEP Server code for more readability. Later Client code can be added under client folder.

Change-Id: Ie79599a170d94d8e0a00e0d034b083b3894199ee
diff --git a/modules.defs b/modules.defs
index 87018d8..5b42feb 100644
--- a/modules.defs
+++ b/modules.defs
@@ -42,8 +42,8 @@
     '//protocols/ovsdb/api:onos-protocols-ovsdb-api',
     '//protocols/ovsdb/ctl:onos-protocols-ovsdb-ctl',
     '//protocols/pcep/pcepio:onos-protocols-pcep-pcepio',
-    '//protocols/pcep/api:onos-protocols-pcep-api',
-    '//protocols/pcep/ctl:onos-protocols-pcep-ctl',
+    '//protocols/pcep/server/api:onos-protocols-pcep-server-api',
+    '//protocols/pcep/server/ctl:onos-protocols-pcep-server-ctl',
     '//protocols/snmp/api:onos-protocols-snmp-api',
     '//protocols/snmp/ctl:onos-protocols-snmp-ctl',
     '//protocols/isis/api:onos-protocols-isis-api',
diff --git a/pom.xml b/pom.xml
index 0a6d983..10e3215 100644
--- a/pom.xml
+++ b/pom.xml
@@ -195,7 +195,7 @@
 
             <dependency>
                 <groupId>org.onosproject</groupId>
-                <artifactId>onos-pcep-controller-api</artifactId>
+                <artifactId>onos-pcep-server-api</artifactId>
                 <version>${project.version}</version>
             </dependency>
             <dependency>
@@ -213,7 +213,7 @@
             </dependency>
             <dependency>
                 <groupId>org.onosproject</groupId>
-                <artifactId>onos-pcep-controller-api</artifactId>
+                <artifactId>onos-pcep-server-api</artifactId>
                 <version>${project.version}</version>
                 <classifier>tests</classifier>
                 <scope>test</scope>
diff --git a/protocols/pcep/pcepio/pom.xml b/protocols/pcep/pcepio/pom.xml
index bce857f..7b06b79 100644
--- a/protocols/pcep/pcepio/pom.xml
+++ b/protocols/pcep/pcepio/pom.xml
@@ -21,7 +21,7 @@
 
     <parent>
         <groupId>org.onosproject</groupId>
-        <artifactId>onos-pcep-controller</artifactId>
+        <artifactId>onos-pcep-protocol</artifactId>
         <version>1.12.0-SNAPSHOT</version>
     </parent>
 
@@ -29,7 +29,6 @@
     <packaging>bundle</packaging>
 
     <description>ONOS Pcepio Protocol subsystem</description>
-   
 
     <dependencies>
         <dependency>
diff --git a/protocols/pcep/pom.xml b/protocols/pcep/pom.xml
index 99c0482..07b39e5 100644
--- a/protocols/pcep/pom.xml
+++ b/protocols/pcep/pom.xml
@@ -25,14 +25,13 @@
         <version>1.12.0-SNAPSHOT</version>
     </parent>
 
-    <artifactId>onos-pcep-controller</artifactId>
+    <artifactId>onos-pcep-protocol</artifactId>
     <packaging>pom</packaging>
 
     <description>ONOS Pcep Protocol subsystem</description>
 
     <modules>
-        <module>api</module>
-        <module>ctl</module>
+        <module>server</module>
         <module>pcepio</module>
     </modules>
 
diff --git a/protocols/pcep/server/BUCK b/protocols/pcep/server/BUCK
new file mode 100644
index 0000000..1835e30
--- /dev/null
+++ b/protocols/pcep/server/BUCK
@@ -0,0 +1,11 @@
+BUNDLES = [
+    '//protocols/pcep/server/api:onos-protocols-pcep-server-api',
+    '//protocols/pcep/server/ctl:onos-protocols-pcep-server-ctl',
+]
+
+onos_app (
+  title = 'PCEP Server Module',
+  category = 'Utility',
+  url = 'http://onosproject.org',
+  included_bundles = BUNDLES,
+)
diff --git a/protocols/pcep/api/BUCK b/protocols/pcep/server/api/BUCK
similarity index 100%
rename from protocols/pcep/api/BUCK
rename to protocols/pcep/server/api/BUCK
diff --git a/protocols/pcep/api/pom.xml b/protocols/pcep/server/api/pom.xml
similarity index 94%
rename from protocols/pcep/api/pom.xml
rename to protocols/pcep/server/api/pom.xml
index 8932451..0861ad3 100644
--- a/protocols/pcep/api/pom.xml
+++ b/protocols/pcep/server/api/pom.xml
@@ -21,11 +21,11 @@
 
     <parent>
         <groupId>org.onosproject</groupId>
-        <artifactId>onos-pcep-controller</artifactId>
+        <artifactId>onos-pcep-server</artifactId>
         <version>1.12.0-SNAPSHOT</version>
     </parent>
 
-    <artifactId>onos-pcep-controller-api</artifactId>
+    <artifactId>onos-pcep-server-api</artifactId>
     <packaging>bundle</packaging>
 
     <description>ONOS Pcep client controller subsystem API</description>
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/ClientCapability.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/ClientCapability.java
similarity index 98%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/ClientCapability.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/ClientCapability.java
index 9356747..2a6c71a 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/ClientCapability.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/ClientCapability.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 import java.util.Objects;
 
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/LspKey.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/LspKey.java
similarity index 97%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/LspKey.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/LspKey.java
index ed63ee7..2cba240 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/LspKey.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/LspKey.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 import java.util.Objects;
 
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/LspType.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/LspType.java
similarity index 96%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/LspType.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/LspType.java
index fae4956..6cfcd37 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/LspType.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/LspType.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 /**
  * Representation of LSP type.
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PccId.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PccId.java
similarity index 97%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PccId.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PccId.java
index aaa682c..9fdd605 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PccId.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PccId.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 import org.onlab.packet.IpAddress;
 import org.onlab.util.Identifier;
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepAnnotationKeys.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepAnnotationKeys.java
similarity index 97%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepAnnotationKeys.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepAnnotationKeys.java
index c984d2b..bdcd35a 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepAnnotationKeys.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepAnnotationKeys.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 /**
  * Collection of keys for annotation for PCEP tunnels.
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepCfg.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepCfg.java
similarity index 96%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepCfg.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepCfg.java
index d61d1cb..af5debf 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepCfg.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepCfg.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 /**
  * PCEP peer state information.
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepClient.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepClient.java
similarity index 98%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepClient.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepClient.java
index af7ffb8..cace76a 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepClient.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepClient.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 import java.util.List;
 
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepClientController.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepClientController.java
similarity index 98%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepClientController.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepClientController.java
index 2eebe60..226944e 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepClientController.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepClientController.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 import org.onosproject.incubator.net.tunnel.DefaultLabelStack;
 import org.onosproject.incubator.net.tunnel.LabelStack;
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepClientListener.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepClientListener.java
similarity index 95%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepClientListener.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepClientListener.java
index 93a4e03..5a0d5bc 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepClientListener.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepClientListener.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 /**
  * Allows for providers interested in PCC client events to be notified.
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepErrorDetail.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepErrorDetail.java
similarity index 98%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepErrorDetail.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepErrorDetail.java
index 144434d..37ea6d0 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepErrorDetail.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepErrorDetail.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 import java.util.Map;
 import java.util.TreeMap;
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepErrorType.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepErrorType.java
similarity index 96%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepErrorType.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepErrorType.java
index 8186bb6..8d51999 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepErrorType.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepErrorType.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 /**
  * PCEP error message type information.
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepEventListener.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepEventListener.java
similarity index 96%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepEventListener.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepEventListener.java
index 491de69..06d49ed 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepEventListener.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepEventListener.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 import org.onosproject.incubator.net.tunnel.Tunnel;
 import org.onosproject.pcepio.protocol.PcepMessage;
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepLspStatus.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepLspStatus.java
similarity index 97%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepLspStatus.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepLspStatus.java
index b237e84..9ced00a 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepLspStatus.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepLspStatus.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 import org.onosproject.incubator.net.tunnel.Tunnel.State;
 
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepLspSyncAction.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepLspSyncAction.java
similarity index 96%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepLspSyncAction.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepLspSyncAction.java
index cdbe539..c120df3 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepLspSyncAction.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepLspSyncAction.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 /**
  * Representation of actions to be taken for LSPs on end of LSP-DB sync.
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepNodeListener.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepNodeListener.java
similarity index 95%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepNodeListener.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepNodeListener.java
index 4b423ff..1bb0b95 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepNodeListener.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepNodeListener.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 /**
  * Notifies providers about PCEP node events.
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepPacketStats.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepPacketStats.java
similarity index 96%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepPacketStats.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepPacketStats.java
index 5d714c3..5802cc5 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepPacketStats.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepPacketStats.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 /**
  * The representation for PCEP packet statistics.
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepSyncStatus.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepSyncStatus.java
similarity index 96%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepSyncStatus.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepSyncStatus.java
index 51b2c32..e487b95 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/PcepSyncStatus.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/PcepSyncStatus.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 /**
  * Representation of PCEP database sync status on session establishment.
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/SrpIdGenerators.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/SrpIdGenerators.java
similarity index 97%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/SrpIdGenerators.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/SrpIdGenerators.java
index 4a85ff2..8d73287 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/SrpIdGenerators.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/SrpIdGenerators.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
 
 import static org.slf4j.LoggerFactory.getLogger;
 
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/driver/PcepAgent.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/driver/PcepAgent.java
similarity index 94%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/driver/PcepAgent.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/driver/PcepAgent.java
index b9b0ff8..42f25cc 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/driver/PcepAgent.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/driver/PcepAgent.java
@@ -13,10 +13,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller.driver;
+package org.onosproject.pcep.server.driver;
 
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepClient;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClient;
 import org.onosproject.pcepio.protocol.PcepMessage;
 
 /**
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/driver/PcepClientDriver.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/driver/PcepClientDriver.java
similarity index 92%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/driver/PcepClientDriver.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/driver/PcepClientDriver.java
index 4ac9d4a..58fc33f 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/driver/PcepClientDriver.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/driver/PcepClientDriver.java
@@ -13,12 +13,12 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller.driver;
+package org.onosproject.pcep.server.driver;
 
 import org.jboss.netty.channel.Channel;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepClient;
-import org.onosproject.pcep.controller.PcepPacketStats;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClient;
+import org.onosproject.pcep.server.PcepPacketStats;
 import org.onosproject.pcepio.protocol.PcepVersion;
 
 
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/driver/PcepClientDriverFactory.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/driver/PcepClientDriverFactory.java
similarity index 95%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/driver/PcepClientDriverFactory.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/driver/PcepClientDriverFactory.java
index 734f508..46e04ff 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/driver/PcepClientDriverFactory.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/driver/PcepClientDriverFactory.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller.driver;
+package org.onosproject.pcep.server.driver;
 
 import org.onlab.packet.IpAddress;
 import org.onosproject.pcepio.protocol.PcepVersion;
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/driver/package-info.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/driver/package-info.java
similarity index 92%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/driver/package-info.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/driver/package-info.java
index c6bee47..6e542e7 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/driver/package-info.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/driver/package-info.java
@@ -17,4 +17,4 @@
 /**
  * PCEP client controller driver API.
  */
-package org.onosproject.pcep.controller.driver;
+package org.onosproject.pcep.server.driver;
diff --git a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/package-info.java b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/package-info.java
similarity index 93%
rename from protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/package-info.java
rename to protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/package-info.java
index 753952b..8ed1233 100644
--- a/protocols/pcep/api/src/main/java/org/onosproject/pcep/controller/package-info.java
+++ b/protocols/pcep/server/api/src/main/java/org/onosproject/pcep/server/package-info.java
@@ -17,4 +17,4 @@
 /**
  * PCEP client controller API.
  */
-package org.onosproject.pcep.controller;
+package org.onosproject.pcep.server;
diff --git a/protocols/pcep/ctl/BUCK b/protocols/pcep/server/ctl/BUCK
similarity index 84%
rename from protocols/pcep/ctl/BUCK
rename to protocols/pcep/server/ctl/BUCK
index 9eb1a8c..e247e20 100644
--- a/protocols/pcep/ctl/BUCK
+++ b/protocols/pcep/server/ctl/BUCK
@@ -5,7 +5,7 @@
     '//lib:KRYO',
     '//incubator/api:onos-incubator-api',
     '//protocols/pcep/pcepio:onos-protocols-pcep-pcepio',
-    '//protocols/pcep/api:onos-protocols-pcep-api',
+    '//protocols/pcep/server/api:onos-protocols-pcep-server-api',
     '//core/store/serializers:onos-core-serializers',
     '//apps/pcep-api:onos-apps-pcep-api',
     '//lib:netty',
diff --git a/protocols/pcep/ctl/pom.xml b/protocols/pcep/server/ctl/pom.xml
similarity index 92%
rename from protocols/pcep/ctl/pom.xml
rename to protocols/pcep/server/ctl/pom.xml
index 269117a..69b62fd 100644
--- a/protocols/pcep/ctl/pom.xml
+++ b/protocols/pcep/server/ctl/pom.xml
@@ -20,11 +20,11 @@
 
     <parent>
         <groupId>org.onosproject</groupId>
-        <artifactId>onos-pcep-controller</artifactId>
+        <artifactId>onos-pcep-server</artifactId>
         <version>1.12.0-SNAPSHOT</version>
     </parent>
 
-    <artifactId>onos-pcep-controller-impl</artifactId>
+    <artifactId>onos-pcep-server-impl</artifactId>
     <packaging>bundle</packaging>
 
     <description>ONOS PCEP client controller subsystem API implementation</description>
@@ -32,7 +32,7 @@
     <dependencies>
         <dependency>
             <groupId>org.onosproject</groupId>
-            <artifactId>onos-pcep-controller-api</artifactId>
+            <artifactId>onos-pcep-server-api</artifactId>
         </dependency>
         <dependency>
             <groupId>io.netty</groupId>
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcelabelstore/DefaultLspLocalLabelInfo.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcelabelstore/DefaultLspLocalLabelInfo.java
similarity index 100%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcelabelstore/DefaultLspLocalLabelInfo.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcelabelstore/DefaultLspLocalLabelInfo.java
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcelabelstore/DistributedPceLabelStore.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcelabelstore/DistributedPceLabelStore.java
similarity index 100%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcelabelstore/DistributedPceLabelStore.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcelabelstore/DistributedPceLabelStore.java
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcelabelstore/PcepLabelOp.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcelabelstore/PcepLabelOp.java
similarity index 100%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcelabelstore/PcepLabelOp.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcelabelstore/PcepLabelOp.java
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcelabelstore/api/LspLocalLabelInfo.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcelabelstore/api/LspLocalLabelInfo.java
similarity index 100%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcelabelstore/api/LspLocalLabelInfo.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcelabelstore/api/LspLocalLabelInfo.java
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcelabelstore/api/PceLabelStore.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcelabelstore/api/PceLabelStore.java
similarity index 100%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcelabelstore/api/PceLabelStore.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcelabelstore/api/PceLabelStore.java
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcelabelstore/api/package-info.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcelabelstore/api/package-info.java
similarity index 100%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcelabelstore/api/package-info.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcelabelstore/api/package-info.java
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcelabelstore/package-info.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcelabelstore/package-info.java
similarity index 100%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcelabelstore/package-info.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcelabelstore/package-info.java
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/BasicPceccHandler.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/BasicPceccHandler.java
similarity index 97%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/BasicPceccHandler.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/BasicPceccHandler.java
index dae8a1c..c547b35 100644
--- a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/BasicPceccHandler.java
+++ b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/BasicPceccHandler.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller.impl;
+package org.onosproject.pcep.server.impl;
 
 import static com.google.common.base.Preconditions.checkNotNull;
 
@@ -40,12 +40,12 @@
 import org.onosproject.pcelabelstore.PcepLabelOp;
 import org.onosproject.pcelabelstore.api.LspLocalLabelInfo;
 import org.onosproject.pcelabelstore.api.PceLabelStore;
-import org.onosproject.pcep.controller.LspType;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepAnnotationKeys;
-import org.onosproject.pcep.controller.PcepClient;
-import org.onosproject.pcep.controller.PcepClientController;
-import org.onosproject.pcep.controller.SrpIdGenerators;
+import org.onosproject.pcep.server.LspType;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepAnnotationKeys;
+import org.onosproject.pcep.server.PcepClient;
+import org.onosproject.pcep.server.PcepClientController;
+import org.onosproject.pcep.server.SrpIdGenerators;
 import org.onosproject.pcepio.exceptions.PcepParseException;
 import org.onosproject.pcepio.protocol.PcepAttribute;
 import org.onosproject.pcepio.protocol.PcepBandwidthObject;
@@ -73,10 +73,10 @@
 import com.google.common.collect.ArrayListMultimap;
 import com.google.common.collect.Multimap;
 
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.BANDWIDTH;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.LSP_SIG_TYPE;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.PCE_INIT;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.DELEGATE;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.BANDWIDTH;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.PCE_INIT;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.DELEGATE;
 
 /**
  * Basic PCECC handler.
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/Controller.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/Controller.java
similarity index 96%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/Controller.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/Controller.java
index efe4175..c85e22a 100644
--- a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/Controller.java
+++ b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/Controller.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller.impl;
+package org.onosproject.pcep.server.impl;
 
 import static org.onlab.util.Tools.groupedThreads;
 
@@ -32,11 +32,11 @@
 import org.jboss.netty.channel.group.ChannelGroup;
 import org.jboss.netty.channel.group.DefaultChannelGroup;
 import org.jboss.netty.channel.socket.nio.NioServerSocketChannelFactory;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepCfg;
-import org.onosproject.pcep.controller.PcepPacketStats;
-import org.onosproject.pcep.controller.driver.PcepAgent;
-import org.onosproject.pcep.controller.driver.PcepClientDriver;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepCfg;
+import org.onosproject.pcep.server.PcepPacketStats;
+import org.onosproject.pcep.server.driver.PcepAgent;
+import org.onosproject.pcep.server.driver.PcepClientDriver;
 import org.onosproject.pcepio.protocol.PcepFactories;
 import org.onosproject.pcepio.protocol.PcepFactory;
 import org.onosproject.pcepio.protocol.PcepVersion;
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/LabelType.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/LabelType.java
similarity index 95%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/LabelType.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/LabelType.java
index 6bfd4c7..ca7cc7c 100644
--- a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/LabelType.java
+++ b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/LabelType.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.onosproject.pcep.controller.impl;
+package org.onosproject.pcep.server.impl;
 
 /**
  * Describes about Label type.
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PceccSrTeBeHandler.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PceccSrTeBeHandler.java
similarity index 97%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PceccSrTeBeHandler.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PceccSrTeBeHandler.java
index 851b0fb..8d50149 100644
--- a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PceccSrTeBeHandler.java
+++ b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PceccSrTeBeHandler.java
@@ -13,11 +13,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller.impl;
+package org.onosproject.pcep.server.impl;
 
 import static com.google.common.base.Preconditions.checkNotNull;
-import static org.onosproject.pcep.controller.PcepSyncStatus.IN_SYNC;
-import static org.onosproject.pcep.controller.PcepSyncStatus.SYNCED;
+import static org.onosproject.pcep.server.PcepSyncStatus.IN_SYNC;
+import static org.onosproject.pcep.server.PcepSyncStatus.SYNCED;
 
 import java.util.Collection;
 import java.util.Iterator;
@@ -42,10 +42,10 @@
 import org.onosproject.net.DeviceId;
 import org.onosproject.net.Link;
 import org.onosproject.net.Path;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepClient;
-import org.onosproject.pcep.controller.PcepClientController;
-import org.onosproject.pcep.controller.SrpIdGenerators;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClient;
+import org.onosproject.pcep.server.PcepClientController;
+import org.onosproject.pcep.server.SrpIdGenerators;
 import org.onosproject.pcepio.exceptions.PcepParseException;
 import org.onosproject.pcepio.protocol.PcepFecObjectIPv4;
 import org.onosproject.pcepio.protocol.PcepFecObjectIPv4Adjacency;
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepChannelHandler.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepChannelHandler.java
similarity index 98%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepChannelHandler.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepChannelHandler.java
index dce864b..dce5fa0 100644
--- a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepChannelHandler.java
+++ b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepChannelHandler.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.onosproject.pcep.controller.impl;
+package org.onosproject.pcep.server.impl;
 
 import java.io.IOException;
 import java.net.InetSocketAddress;
@@ -38,10 +38,10 @@
 import org.jboss.netty.handler.timeout.IdleStateHandler;
 import org.jboss.netty.handler.timeout.ReadTimeoutException;
 import org.onlab.packet.IpAddress;
-import org.onosproject.pcep.controller.ClientCapability;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepCfg;
-import org.onosproject.pcep.controller.driver.PcepClientDriver;
+import org.onosproject.pcep.server.ClientCapability;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepCfg;
+import org.onosproject.pcep.server.driver.PcepClientDriver;
 import org.onosproject.pcepio.exceptions.PcepParseException;
 import org.onosproject.pcepio.protocol.PcepError;
 import org.onosproject.pcepio.protocol.PcepErrorInfo;
@@ -63,7 +63,7 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import static org.onosproject.pcep.controller.PcepSyncStatus.NOT_SYNCED;
+import static org.onosproject.pcep.server.PcepSyncStatus.NOT_SYNCED;
 
 /**
  * Channel handler deals with the pcc client connection and dispatches
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepClientControllerImpl.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepClientControllerImpl.java
similarity index 96%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepClientControllerImpl.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepClientControllerImpl.java
index 27c211d..2ddc819 100644
--- a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepClientControllerImpl.java
+++ b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepClientControllerImpl.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller.impl;
+package org.onosproject.pcep.server.impl;
 
 import java.util.Map;
 import java.util.TreeMap;
@@ -68,17 +68,17 @@
 import org.onosproject.pcelabelstore.PcepLabelOp;
 import org.onosproject.pcelabelstore.api.PceLabelStore;
 import org.onosproject.pcep.api.DeviceCapability;
-import org.onosproject.pcep.controller.LspKey;
-import org.onosproject.pcep.controller.LspType;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepClient;
-import org.onosproject.pcep.controller.PcepClientController;
-import org.onosproject.pcep.controller.PcepClientListener;
-import org.onosproject.pcep.controller.PcepEventListener;
-import org.onosproject.pcep.controller.PcepLspStatus;
-import org.onosproject.pcep.controller.PcepNodeListener;
-import org.onosproject.pcep.controller.SrpIdGenerators;
-import org.onosproject.pcep.controller.driver.PcepAgent;
+import org.onosproject.pcep.server.LspKey;
+import org.onosproject.pcep.server.LspType;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClient;
+import org.onosproject.pcep.server.PcepClientController;
+import org.onosproject.pcep.server.PcepClientListener;
+import org.onosproject.pcep.server.PcepEventListener;
+import org.onosproject.pcep.server.PcepLspStatus;
+import org.onosproject.pcep.server.PcepNodeListener;
+import org.onosproject.pcep.server.SrpIdGenerators;
+import org.onosproject.pcep.server.driver.PcepAgent;
 import org.onosproject.pcepio.exceptions.PcepParseException;
 import org.onosproject.pcepio.protocol.PcInitiatedLspRequest;
 import org.onosproject.pcepio.protocol.PcepError;
@@ -106,24 +106,24 @@
 import com.google.common.collect.Sets;
 import static com.google.common.base.Preconditions.checkNotNull;
 
-import static org.onosproject.pcep.controller.PcepSyncStatus.IN_SYNC;
-import static org.onosproject.pcep.controller.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
-import static org.onosproject.pcep.controller.LspType.WITH_SIGNALLING;
-import static org.onosproject.pcep.controller.PcepLspSyncAction.REMOVE;
-import static org.onosproject.pcep.controller.PcepLspSyncAction.SEND_UPDATE;
-import static org.onosproject.pcep.controller.PcepLspSyncAction.UNSTABLE;
+import static org.onosproject.pcep.server.PcepSyncStatus.IN_SYNC;
+import static org.onosproject.pcep.server.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
+import static org.onosproject.pcep.server.LspType.WITH_SIGNALLING;
+import static org.onosproject.pcep.server.PcepLspSyncAction.REMOVE;
+import static org.onosproject.pcep.server.PcepLspSyncAction.SEND_UPDATE;
+import static org.onosproject.pcep.server.PcepLspSyncAction.UNSTABLE;
 import static org.onosproject.pcepio.types.PcepErrorDetailInfo.ERROR_TYPE_19;
 import static org.onosproject.pcepio.types.PcepErrorDetailInfo.ERROR_VALUE_5;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.BANDWIDTH;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.LOCAL_LSP_ID;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.LSP_SIG_TYPE;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.PCC_TUNNEL_ID;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.PCE_INIT;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.PLSP_ID;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.DELEGATE;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.COST_TYPE;
-import static org.onosproject.pcep.controller.PcepSyncStatus.SYNCED;
-import static org.onosproject.pcep.controller.PcepSyncStatus.NOT_SYNCED;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.BANDWIDTH;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LOCAL_LSP_ID;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.PCC_TUNNEL_ID;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.PCE_INIT;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.PLSP_ID;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.DELEGATE;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.COST_TYPE;
+import static org.onosproject.pcep.server.PcepSyncStatus.SYNCED;
+import static org.onosproject.pcep.server.PcepSyncStatus.NOT_SYNCED;
 
 /**
  * Implementation of PCEP client controller.
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepClientImpl.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepClientImpl.java
similarity index 94%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepClientImpl.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepClientImpl.java
index 49ea507..7e52c19 100644
--- a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepClientImpl.java
+++ b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepClientImpl.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.onosproject.pcep.controller.impl;
+package org.onosproject.pcep.server.impl;
 
 import java.net.InetSocketAddress;
 import java.net.SocketAddress;
@@ -27,14 +27,14 @@
 
 import org.jboss.netty.channel.Channel;
 import org.onlab.packet.IpAddress;
-import org.onosproject.pcep.controller.ClientCapability;
-import org.onosproject.pcep.controller.LspKey;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepClient;
-import org.onosproject.pcep.controller.PcepPacketStats;
-import org.onosproject.pcep.controller.PcepSyncStatus;
-import org.onosproject.pcep.controller.driver.PcepAgent;
-import org.onosproject.pcep.controller.driver.PcepClientDriver;
+import org.onosproject.pcep.server.ClientCapability;
+import org.onosproject.pcep.server.LspKey;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClient;
+import org.onosproject.pcep.server.PcepPacketStats;
+import org.onosproject.pcep.server.PcepSyncStatus;
+import org.onosproject.pcep.server.driver.PcepAgent;
+import org.onosproject.pcep.server.driver.PcepClientDriver;
 import org.onosproject.pcepio.protocol.PcepFactories;
 import org.onosproject.pcepio.protocol.PcepFactory;
 import org.onosproject.pcepio.protocol.PcepMessage;
@@ -132,7 +132,7 @@
     @Override
     public final void setConnected(boolean connected) {
         this.connected = connected;
-    }
+    };
 
     @Override
     public final void setChannel(Channel channel) {
@@ -147,7 +147,7 @@
                 channelId = '[' + ipAddress.toString() + "]:" + inetAddress.getPort();
             }
         }
-    }
+    };
 
     @Override
     public String channelId() {
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepConfig.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepConfig.java
similarity index 88%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepConfig.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepConfig.java
index 5a7dda9..e6b5fe1 100644
--- a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepConfig.java
+++ b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepConfig.java
@@ -13,10 +13,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller.impl;
+package org.onosproject.pcep.server.impl;
 
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepCfg;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepCfg;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepControllerImpl.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepControllerImpl.java
similarity index 98%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepControllerImpl.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepControllerImpl.java
index ebc7f2f..8d9bc23 100644
--- a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepControllerImpl.java
+++ b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepControllerImpl.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller.impl;
+package org.onosproject.pcep.server.impl;
 
 import com.google.common.collect.Sets;
 
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepMessageDecoder.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepMessageDecoder.java
similarity index 98%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepMessageDecoder.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepMessageDecoder.java
index 660f2d8..2c21b73 100644
--- a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepMessageDecoder.java
+++ b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepMessageDecoder.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller.impl;
+package org.onosproject.pcep.server.impl;
 
 import java.util.LinkedList;
 import java.util.List;
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepMessageEncoder.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepMessageEncoder.java
similarity index 97%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepMessageEncoder.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepMessageEncoder.java
index 7fd9c99..4c26f88 100644
--- a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepMessageEncoder.java
+++ b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepMessageEncoder.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller.impl;
+package org.onosproject.pcep.server.impl;
 
 import java.util.List;
 
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepPacketStatsImpl.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepPacketStatsImpl.java
similarity index 95%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepPacketStatsImpl.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepPacketStatsImpl.java
index e53d97c..1659247 100644
--- a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepPacketStatsImpl.java
+++ b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepPacketStatsImpl.java
@@ -13,9 +13,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.pcep.controller.impl;
+package org.onosproject.pcep.server.impl;
 
-import org.onosproject.pcep.controller.PcepPacketStats;
+import org.onosproject.pcep.server.PcepPacketStats;
 
 /**
  * The implementation for PCEP packet statistics.
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepPipelineFactory.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepPipelineFactory.java
similarity index 97%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepPipelineFactory.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepPipelineFactory.java
index 12603f5..f1932e9 100644
--- a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/PcepPipelineFactory.java
+++ b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/PcepPipelineFactory.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.onosproject.pcep.controller.impl;
+package org.onosproject.pcep.server.impl;
 
 import org.jboss.netty.channel.ChannelPipeline;
 import org.jboss.netty.channel.ChannelPipelineFactory;
diff --git a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/package-info.java b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/package-info.java
similarity index 93%
rename from protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/package-info.java
rename to protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/package-info.java
index 6f45c16..4fd2660 100644
--- a/protocols/pcep/ctl/src/main/java/org/onosproject/pcep/controller/impl/package-info.java
+++ b/protocols/pcep/server/ctl/src/main/java/org/onosproject/pcep/server/impl/package-info.java
@@ -17,4 +17,4 @@
 /**
  * Implementation of the PCEP client controller subsystem.
  */
-package org.onosproject.pcep.controller.impl;
+package org.onosproject.pcep.server.impl;
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/DefaultLspLocalLabelInfoTest.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/DefaultLspLocalLabelInfoTest.java
similarity index 100%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/DefaultLspLocalLabelInfoTest.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/DefaultLspLocalLabelInfoTest.java
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/DistributedPceLabelStoreTest.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/DistributedPceLabelStoreTest.java
similarity index 100%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/DistributedPceLabelStoreTest.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/DistributedPceLabelStoreTest.java
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/label/BasicPceccHandlerTest.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/label/BasicPceccHandlerTest.java
similarity index 98%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/label/BasicPceccHandlerTest.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/label/BasicPceccHandlerTest.java
index f918b1c..201b701 100644
--- a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/label/BasicPceccHandlerTest.java
+++ b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/label/BasicPceccHandlerTest.java
@@ -53,8 +53,8 @@
 import org.onosproject.pcelabelstore.util.LabelResourceAdapter;
 import org.onosproject.pcelabelstore.util.MockDeviceService;
 import org.onosproject.pcelabelstore.util.PceLabelStoreAdapter;
-import org.onosproject.pcep.controller.impl.BasicPceccHandler;
-import org.onosproject.pcep.controller.impl.PcepClientControllerImpl;
+import org.onosproject.pcep.server.impl.BasicPceccHandler;
+import org.onosproject.pcep.server.impl.PcepClientControllerImpl;
 import org.onosproject.net.DefaultLink;
 import org.onosproject.net.Link;
 
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/label/PceccSrTeBeHandlerTest.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/label/PceccSrTeBeHandlerTest.java
similarity index 99%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/label/PceccSrTeBeHandlerTest.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/label/PceccSrTeBeHandlerTest.java
index 20bd5a4..38ea63a 100644
--- a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/label/PceccSrTeBeHandlerTest.java
+++ b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/label/PceccSrTeBeHandlerTest.java
@@ -51,8 +51,8 @@
 import org.onosproject.pcelabelstore.util.PceLabelStoreAdapter;
 import org.onosproject.pcelabelstore.util.PcepClientAdapter;
 import org.onosproject.pcep.api.DeviceCapability;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.impl.PceccSrTeBeHandler;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.impl.PceccSrTeBeHandler;
 import org.onosproject.pcepio.protocol.PcepVersion;
 import org.onosproject.net.DefaultLink;
 import org.onosproject.net.Link;
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/ConsistentMapAdapter.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/ConsistentMapAdapter.java
similarity index 100%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/ConsistentMapAdapter.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/ConsistentMapAdapter.java
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/DistributedSetAdapter.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/DistributedSetAdapter.java
similarity index 100%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/DistributedSetAdapter.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/DistributedSetAdapter.java
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/EventuallyConsistentMapAdapter.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/EventuallyConsistentMapAdapter.java
similarity index 100%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/EventuallyConsistentMapAdapter.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/EventuallyConsistentMapAdapter.java
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/LabelResourceAdapter.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/LabelResourceAdapter.java
similarity index 100%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/LabelResourceAdapter.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/LabelResourceAdapter.java
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/MockDeviceService.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/MockDeviceService.java
similarity index 100%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/MockDeviceService.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/MockDeviceService.java
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/MockNetConfigRegistryAdapter.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/MockNetConfigRegistryAdapter.java
similarity index 100%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/MockNetConfigRegistryAdapter.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/MockNetConfigRegistryAdapter.java
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/MockPcepClientController.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/MockPcepClientController.java
similarity index 91%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/MockPcepClientController.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/MockPcepClientController.java
index 08a314e..07bf81c 100644
--- a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/MockPcepClientController.java
+++ b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/MockPcepClientController.java
@@ -21,12 +21,12 @@
 import org.onosproject.incubator.net.tunnel.LabelStack;
 import org.onosproject.incubator.net.tunnel.Tunnel;
 import org.onosproject.net.Path;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepClient;
-import org.onosproject.pcep.controller.PcepClientController;
-import org.onosproject.pcep.controller.PcepClientListener;
-import org.onosproject.pcep.controller.PcepEventListener;
-import org.onosproject.pcep.controller.PcepNodeListener;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClient;
+import org.onosproject.pcep.server.PcepClientController;
+import org.onosproject.pcep.server.PcepClientListener;
+import org.onosproject.pcep.server.PcepEventListener;
+import org.onosproject.pcep.server.PcepNodeListener;
 import org.onosproject.pcepio.protocol.PcepMessage;
 import org.onosproject.pcepio.types.PcepValueType;
 
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/PceLabelStoreAdapter.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/PceLabelStoreAdapter.java
similarity index 100%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/PceLabelStoreAdapter.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/PceLabelStoreAdapter.java
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/PcepClientAdapter.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/PcepClientAdapter.java
similarity index 94%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/PcepClientAdapter.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/PcepClientAdapter.java
index 91e58ec..7ab16ef 100644
--- a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/PcepClientAdapter.java
+++ b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/PcepClientAdapter.java
@@ -23,11 +23,11 @@
 import java.util.concurrent.RejectedExecutionException;
 
 import org.jboss.netty.channel.Channel;
-import org.onosproject.pcep.controller.ClientCapability;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.LspKey;
-import org.onosproject.pcep.controller.PcepClient;
-import org.onosproject.pcep.controller.PcepSyncStatus;
+import org.onosproject.pcep.server.ClientCapability;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.LspKey;
+import org.onosproject.pcep.server.PcepClient;
+import org.onosproject.pcep.server.PcepSyncStatus;
 import org.onosproject.pcepio.protocol.PcepFactories;
 import org.onosproject.pcepio.protocol.PcepFactory;
 import org.onosproject.pcepio.protocol.PcepMessage;
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/StorageServiceAdapter.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/StorageServiceAdapter.java
similarity index 100%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/StorageServiceAdapter.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/StorageServiceAdapter.java
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestAtomicCounter.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestAtomicCounter.java
similarity index 100%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestAtomicCounter.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestAtomicCounter.java
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestConsistentMap.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestConsistentMap.java
similarity index 100%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestConsistentMap.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestConsistentMap.java
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestDistributedSet.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestDistributedSet.java
similarity index 100%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestDistributedSet.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestDistributedSet.java
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestEventuallyConsistentMap.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestEventuallyConsistentMap.java
similarity index 100%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestEventuallyConsistentMap.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestEventuallyConsistentMap.java
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestStorageService.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestStorageService.java
similarity index 100%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestStorageService.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcelabelstore/util/TestStorageService.java
diff --git a/protocols/pcep/ctl/src/test/java/org/onosproject/pcep/controller/impl/PcepClientControllerImplTest.java b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcep/controller/impl/PcepClientControllerImplTest.java
similarity index 92%
rename from protocols/pcep/ctl/src/test/java/org/onosproject/pcep/controller/impl/PcepClientControllerImplTest.java
rename to protocols/pcep/server/ctl/src/test/java/org/onosproject/pcep/controller/impl/PcepClientControllerImplTest.java
index a4ba2bb..73ff8d6 100644
--- a/protocols/pcep/ctl/src/test/java/org/onosproject/pcep/controller/impl/PcepClientControllerImplTest.java
+++ b/protocols/pcep/server/ctl/src/test/java/org/onosproject/pcep/controller/impl/PcepClientControllerImplTest.java
@@ -16,8 +16,8 @@
 
 package org.onosproject.pcep.controller.impl;
 
-import static org.onosproject.pcep.controller.PcepLspSyncAction.SEND_UPDATE;
-import static org.onosproject.pcep.controller.PcepLspSyncAction.UNSTABLE;
+import static org.onosproject.pcep.server.PcepLspSyncAction.SEND_UPDATE;
+import static org.onosproject.pcep.server.PcepLspSyncAction.UNSTABLE;
 
 import java.net.SocketAddress;
 import java.util.ArrayList;
@@ -52,12 +52,16 @@
 import org.onosproject.net.DeviceId;
 import org.onosproject.net.ElementId;
 import org.onosproject.net.Path;
-import org.onosproject.pcep.controller.ClientCapability;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepEventListener;
-import org.onosproject.pcep.controller.PcepLspSyncAction;
-import org.onosproject.pcep.controller.PcepPacketStats;
-import org.onosproject.pcep.controller.PcepSyncStatus;
+import org.onosproject.pcep.server.ClientCapability;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepEventListener;
+import org.onosproject.pcep.server.PcepLspSyncAction;
+import org.onosproject.pcep.server.PcepPacketStats;
+import org.onosproject.pcep.server.PcepSyncStatus;
+import org.onosproject.pcep.server.driver.PcepAgent;
+import org.onosproject.pcep.server.impl.PcepClientControllerImpl;
+import org.onosproject.pcep.server.impl.PcepClientImpl;
+import org.onosproject.pcep.server.impl.PcepPacketStatsImpl;
 import org.onosproject.pcepio.exceptions.PcepOutOfBoundMessageException;
 import org.onosproject.pcepio.exceptions.PcepParseException;
 import org.onosproject.pcepio.protocol.PcepFactories;
@@ -71,14 +75,14 @@
 import static org.hamcrest.core.Is.is;
 
 public class PcepClientControllerImplTest {
-    PcepClientControllerImpl controllerImpl = new PcepClientControllerImpl();
+    TestPcepClientControllerImpl controllerImpl = new TestPcepClientControllerImpl();
     TunnelService tunnelService = new MockTunnelService();
     private PcepEventListener listener;
     private Channel channel;
 
     @Before
     public void startUp() {
-        controllerImpl.tunnelService = tunnelService;
+        controllerImpl.setTunnelService(tunnelService);
         listener = new PcepEventListenerAdapter();
         controllerImpl.addEventListener(listener);
         channel = new MockChannel();
@@ -88,7 +92,7 @@
     public void tearDown() {
         controllerImpl.removeEventListener(listener);
         listener = null;
-        controllerImpl.tunnelService = null;
+        controllerImpl.setTunnelService(null);
     }
 
     @Test
@@ -121,11 +125,11 @@
 
         pc.init(pccId, PcepVersion.PCEP_1, pktStats);
         pc.setChannel(channel);
-        pc.setAgent(controllerImpl.agent);
+        pc.setAgent(controllerImpl.agent());
         pc.setConnected(true);
         pc.setCapability(new ClientCapability(true, true, true, true, true));
 
-        controllerImpl.agent.addConnectedClient(pccId, pc);
+        controllerImpl.agent().addConnectedClient(pccId, pc);
         controllerImpl.processClientMessage(pccId, message);
 
         pc.setLspDbSyncStatus(PcepSyncStatus.SYNCED);
@@ -170,11 +174,11 @@
 
         pc.init(pccId, PcepVersion.PCEP_1, pktStats);
         pc.setChannel(channel);
-        pc.setAgent(controllerImpl.agent);
+        pc.setAgent(controllerImpl.agent());
         pc.setConnected(true);
         pc.setCapability(new ClientCapability(true, true, true, true, true));
 
-        controllerImpl.agent.addConnectedClient(pccId, pc);
+        controllerImpl.agent().addConnectedClient(pccId, pc);
         controllerImpl.processClientMessage(pccId, message);
 
         pc.setLspDbSyncStatus(PcepSyncStatus.SYNCED);
@@ -538,4 +542,14 @@
             return null;
         }
     }
+
+    private class TestPcepClientControllerImpl extends PcepClientControllerImpl {
+        public void setTunnelService(TunnelService tunnelService) {
+            this.tunnelService = tunnelService;
+        }
+
+        public PcepAgent agent() {
+            return this.agent;
+        }
+    }
 }
diff --git a/protocols/pcep/server/pom.xml b/protocols/pcep/server/pom.xml
new file mode 100755
index 0000000..4ee228c
--- /dev/null
+++ b/protocols/pcep/server/pom.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright 2015-present Open Networking Laboratory
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~     http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License.
+  -->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.onosproject</groupId>
+        <artifactId>onos-pcep-protocol</artifactId>
+        <version>1.12.0-SNAPSHOT</version>
+    </parent>
+
+    <artifactId>onos-pcep-server</artifactId>
+    <packaging>pom</packaging>
+
+    <description>ONOS Pcep Server Protocol subsystem</description>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-api</artifactId>
+        </dependency>
+    </dependencies>
+
+    <modules>
+        <module>api</module>
+        <module>ctl</module>
+    </modules>
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>maven-bundle-plugin</artifactId>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>
diff --git a/providers/bgp/app/app.xml b/providers/bgp/app/app.xml
index 8a5f00d..ae8e931 100644
--- a/providers/bgp/app/app.xml
+++ b/providers/bgp/app/app.xml
@@ -22,13 +22,13 @@
     <artifact>mvn:${project.groupId}/onos-bgpio/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-bgp-api/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-bgp-ctl/${project.version}</artifact>
-    <artifact>mvn:${project.groupId}/onos-pcep-controller-api/${project.version}</artifact>
+    <artifact>mvn:${project.groupId}/onos-pcep-server-api/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-bgp-provider-topology/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-bgp-provider-cfg/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-bgp-provider-cli/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-pcepio/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-app-pcep-api/${project.version}</artifact>
-    <artifact>mvn:${project.groupId}/onos-pcep-controller-impl/${project.version}</artifact>
+    <artifact>mvn:${project.groupId}/onos-pcep-server-impl/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-pcep-provider-topology/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-pcep-provider-tunnel/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-app-pce/${project.version}</artifact>
diff --git a/providers/bgp/app/features.xml b/providers/bgp/app/features.xml
index deabf92..bf1e82c 100644
--- a/providers/bgp/app/features.xml
+++ b/providers/bgp/app/features.xml
@@ -21,13 +21,13 @@
         <bundle>mvn:${project.groupId}/onos-bgpio/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-bgp-api/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-bgp-ctl/${project.version}</bundle>
-        <bundle>mvn:${project.groupId}/onos-pcep-controller-api/${project.version}</bundle>
+        <bundle>mvn:${project.groupId}/onos-pcep-server-api/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-bgp-provider-topology/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-bgp-provider-cli/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-bgp-provider-cfg/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-pcepio/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-app-pcep-api/${project.version}</bundle>
-        <bundle>mvn:${project.groupId}/onos-pcep-controller-impl/${project.version}</bundle>
+        <bundle>mvn:${project.groupId}/onos-pcep-server-impl/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-pcep-provider-topology/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-pcep-provider-tunnel/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-app-pce/${project.version}</bundle>
diff --git a/providers/bgpcep/BUCK b/providers/bgpcep/BUCK
index e11fda8..1f0b14d 100644
--- a/providers/bgpcep/BUCK
+++ b/providers/bgpcep/BUCK
@@ -4,10 +4,10 @@
   '//protocols/bgp/ctl:onos-protocols-bgp-ctl',
   '//protocols/pcep/pcepio:onos-protocols-pcep-pcepio',
   '//apps/pcep-api:onos-apps-pcep-api',
-  '//protocols/pcep/api:onos-protocols-pcep-api',
+  '//protocols/pcep/server/api:onos-protocols-pcep-server-api',
   '//providers/bgp/topology:onos-providers-bgp-topology',
   '//providers/bgp/cfg:onos-providers-bgp-cfg',
-  '//protocols/pcep/ctl:onos-protocols-pcep-ctl',
+  '//protocols/pcep/server/ctl:onos-protocols-pcep-server-ctl',
   '//providers/pcep/topology:onos-providers-pcep-topology',
   '//providers/pcep/tunnel:onos-providers-pcep-tunnel',
   '//providers/bgpcep/flow:onos-providers-bgpcep-flow',
diff --git a/providers/bgpcep/app/app.xml b/providers/bgpcep/app/app.xml
index 77d3c05..4051c53 100644
--- a/providers/bgpcep/app/app.xml
+++ b/providers/bgpcep/app/app.xml
@@ -24,10 +24,10 @@
     <artifact>mvn:${project.groupId}/onos-bgp-ctl/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-pcepio/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-app-pcep-api/${project.version}</artifact>
-    <artifact>mvn:${project.groupId}/onos-pcep-controller-api/${project.version}</artifact>
+    <artifact>mvn:${project.groupId}/onos-pcep-server-api/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-bgp-provider-topology/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-bgp-provider-cfg/${project.version}</artifact>
-    <artifact>mvn:${project.groupId}/onos-pcep-controller-impl/${project.version}</artifact>
+    <artifact>mvn:${project.groupId}/onos-pcep-server-impl/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-pcep-provider-topology/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-pcep-provider-tunnel/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-bgpcep-provider-flow/${project.version}</artifact>
diff --git a/providers/bgpcep/app/features.xml b/providers/bgpcep/app/features.xml
index 2ee1665..bad2534 100644
--- a/providers/bgpcep/app/features.xml
+++ b/providers/bgpcep/app/features.xml
@@ -21,12 +21,12 @@
         <bundle>mvn:${project.groupId}/onos-bgpio/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-bgp-api/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-bgp-ctl/${project.version}</bundle>
-        <bundle>mvn:${project.groupId}/onos-pcep-controller-api/${project.version}</bundle>
+        <bundle>mvn:${project.groupId}/onos-pcep-server-api/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-bgp-provider-topology/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-bgp-provider-cfg/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-pcepio/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-app-pcep-api/${project.version}</bundle>
-        <bundle>mvn:${project.groupId}/onos-pcep-controller-impl/${project.version}</bundle>
+        <bundle>mvn:${project.groupId}/onos-pcep-server-impl/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-pcep-provider-topology/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-pcep-provider-tunnel/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-app-pce/${project.version}</bundle>
diff --git a/providers/bgpcep/app/pom.xml b/providers/bgpcep/app/pom.xml
index d69e6f8..3aa3931 100644
--- a/providers/bgpcep/app/pom.xml
+++ b/providers/bgpcep/app/pom.xml
@@ -43,7 +43,7 @@
         </dependency>
         <dependency>
             <groupId>org.onosproject</groupId>
-            <artifactId>onos-pcep-controller-api</artifactId>
+            <artifactId>onos-pcep-server-api</artifactId>
         </dependency>
         <dependency>
             <groupId>org.onosproject</groupId>
@@ -60,7 +60,7 @@
         </dependency>
         <dependency>
             <groupId>org.onosproject</groupId>
-            <artifactId>onos-pcep-controller-impl</artifactId>
+            <artifactId>onos-pcep-server-impl</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>
diff --git a/providers/bgpcep/flow/BUCK b/providers/bgpcep/flow/BUCK
index d7ee5a1..2115eb2 100644
--- a/providers/bgpcep/flow/BUCK
+++ b/providers/bgpcep/flow/BUCK
@@ -3,7 +3,7 @@
   '//lib:org.osgi.compendium',
   '//protocols/bgp/api:onos-protocols-bgp-api',
   '//incubator/api:onos-incubator-api',
-  '//protocols/pcep/api:onos-protocols-pcep-api',
+  '//protocols/pcep/server/api:onos-protocols-pcep-server-api',
   '//protocols/pcep/pcepio:onos-protocols-pcep-pcepio',
 ]
 
diff --git a/providers/bgpcep/pom.xml b/providers/bgpcep/pom.xml
index bd9c08a..933f559 100644
--- a/providers/bgpcep/pom.xml
+++ b/providers/bgpcep/pom.xml
@@ -13,7 +13,9 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License.
   -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
     <groupId>org.onosproject</groupId>
@@ -34,7 +36,7 @@
   <dependencies>
         <dependency>
             <groupId>org.onosproject</groupId>
-            <artifactId>onos-pcep-controller-api</artifactId>
+            <artifactId>onos-pcep-server-api</artifactId>
         </dependency>
         <dependency>
             <groupId>org.onosproject</groupId>
diff --git a/providers/pcep/BUCK b/providers/pcep/BUCK
index 08eeea4..3334057 100644
--- a/providers/pcep/BUCK
+++ b/providers/pcep/BUCK
@@ -2,9 +2,9 @@
     '//providers/pcep/topology:onos-providers-pcep-topology',
     '//providers/pcep/tunnel:onos-providers-pcep-tunnel',
     '//providers/pcep/cli:onos-providers-pcep-cli',
-    '//protocols/pcep/api:onos-protocols-pcep-api',
+    '//protocols/pcep/server/api:onos-protocols-pcep-server-api',
     '//protocols/pcep/pcepio:onos-protocols-pcep-pcepio',
-    '//protocols/pcep/ctl:onos-protocols-pcep-ctl',
+    '//protocols/pcep/server/ctl:onos-protocols-pcep-server-ctl',
     '//apps/pcep-api:onos-apps-pcep-api',
     '//lib:netty',
 ]
diff --git a/providers/pcep/app/app.xml b/providers/pcep/app/app.xml
index 012753f..00058f6 100644
--- a/providers/pcep/app/app.xml
+++ b/providers/pcep/app/app.xml
@@ -21,8 +21,8 @@
     <description>${project.description}</description>
     <artifact>mvn:${project.groupId}/onos-app-pcep-api/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-pcepio/${project.version}</artifact>
-    <artifact>mvn:${project.groupId}/onos-pcep-controller-api/${project.version}</artifact>
-    <artifact>mvn:${project.groupId}/onos-pcep-controller-impl/${project.version}</artifact>
+    <artifact>mvn:${project.groupId}/onos-pcep-server-api/${project.version}</artifact>
+    <artifact>mvn:${project.groupId}/onos-pcep-server-impl/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-pcep-provider-topology/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-pcep-provider-tunnel/${project.version}</artifact>
     <artifact>mvn:${project.groupId}/onos-pcep-provider-cli/${project.version}</artifact>
diff --git a/providers/pcep/app/features.xml b/providers/pcep/app/features.xml
index 1eb9026..77cbc77 100644
--- a/providers/pcep/app/features.xml
+++ b/providers/pcep/app/features.xml
@@ -20,8 +20,8 @@
         <feature>onos-api</feature>
         <bundle>mvn:${project.groupId}/onos-app-pcep-api/${project.version}</bundle>
     <bundle>mvn:${project.groupId}/onos-pcepio/${project.version}</bundle>
-        <bundle>mvn:${project.groupId}/onos-pcep-controller-api/${project.version}</bundle>
-        <bundle>mvn:${project.groupId}/onos-pcep-controller-impl/${project.version}</bundle>
+        <bundle>mvn:${project.groupId}/onos-pcep-server-api/${project.version}</bundle>
+        <bundle>mvn:${project.groupId}/onos-pcep-server-impl/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-pcep-provider-topology/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-pcep-provider-tunnel/${project.version}</bundle>
         <bundle>mvn:${project.groupId}/onos-pcep-provider-cli/${project.version}</bundle>
diff --git a/providers/pcep/app/pom.xml b/providers/pcep/app/pom.xml
index b841218..cb5989e 100644
--- a/providers/pcep/app/pom.xml
+++ b/providers/pcep/app/pom.xml
@@ -39,11 +39,11 @@
         </dependency>
         <dependency>
             <groupId>org.onosproject</groupId>
-            <artifactId>onos-pcep-controller-api</artifactId>
+            <artifactId>onos-pcep-server-api</artifactId>
         </dependency>
         <dependency>
             <groupId>org.onosproject</groupId>
-            <artifactId>onos-pcep-controller-impl</artifactId>
+            <artifactId>onos-pcep-server-impl</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>
diff --git a/providers/pcep/cli/BUCK b/providers/pcep/cli/BUCK
index 93199e4..ed68b8f 100644
--- a/providers/pcep/cli/BUCK
+++ b/providers/pcep/cli/BUCK
@@ -1,8 +1,8 @@
 COMPILE_DEPS = [
   '//lib:CORE_DEPS',
   '//incubator/api:onos-incubator-api',
-  '//protocols/pcep/ctl:onos-protocols-pcep-ctl',
-  '//protocols/pcep/api:onos-protocols-pcep-api',
+  '//protocols/pcep/server/ctl:onos-protocols-pcep-server-ctl',
+  '//protocols/pcep/server/api:onos-protocols-pcep-server-api',
   '//lib:org.apache.karaf.shell.console',
   '//cli:onos-cli',
 ]
diff --git a/providers/pcep/cli/pom.xml b/providers/pcep/cli/pom.xml
index 5b2ee36..78f8287 100644
--- a/providers/pcep/cli/pom.xml
+++ b/providers/pcep/cli/pom.xml
@@ -51,7 +51,7 @@
         </dependency>
         <dependency>
             <groupId>org.onosproject</groupId>
-            <artifactId>onos-pcep-controller-impl</artifactId>
+            <artifactId>onos-pcep-server-impl</artifactId>
             <version>${project.version}</version>
         </dependency>
     </dependencies>
diff --git a/providers/pcep/cli/src/main/java/org/onosproject/pcep/cli/PcepSessionCommand.java b/providers/pcep/cli/src/main/java/org/onosproject/pcep/cli/PcepSessionCommand.java
index e8e8f3e..086138e 100644
--- a/providers/pcep/cli/src/main/java/org/onosproject/pcep/cli/PcepSessionCommand.java
+++ b/providers/pcep/cli/src/main/java/org/onosproject/pcep/cli/PcepSessionCommand.java
@@ -19,9 +19,9 @@
 import org.apache.karaf.shell.commands.Argument;
 import org.apache.karaf.shell.commands.Command;
 import org.onosproject.cli.AbstractShellCommand;
-import org.onosproject.pcep.controller.PcepClientController;
-import org.onosproject.pcep.controller.PcepErrorDetail;
-import org.onosproject.pcep.controller.PcepErrorType;
+import org.onosproject.pcep.server.PcepClientController;
+import org.onosproject.pcep.server.PcepErrorDetail;
+import org.onosproject.pcep.server.PcepErrorType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/providers/pcep/topology/BUCK b/providers/pcep/topology/BUCK
index a4442c5..dbb033a 100644
--- a/providers/pcep/topology/BUCK
+++ b/providers/pcep/topology/BUCK
@@ -6,7 +6,7 @@
     '//protocols/ovsdb/api:onos-protocols-ovsdb-api',
     '//protocols/ovsdb/rfc:onos-protocols-ovsdb-rfc',
     '//apps/pcep-api:onos-apps-pcep-api',
-    '//protocols/pcep/api:onos-protocols-pcep-api',
+    '//protocols/pcep/server/api:onos-protocols-pcep-server-api',
     '//protocols/pcep/pcepio:onos-protocols-pcep-pcepio',
     '//core/api:onos-api-tests',
     '//apps/optical-model:onos-apps-optical-model',
diff --git a/providers/pcep/topology/pom.xml b/providers/pcep/topology/pom.xml
index bd666c3..8421bd7 100644
--- a/providers/pcep/topology/pom.xml
+++ b/providers/pcep/topology/pom.xml
@@ -30,7 +30,7 @@
         </dependency>
         <dependency>
         <groupId>org.onosproject</groupId>
-            <artifactId>onos-pcep-controller-api</artifactId>
+            <artifactId>onos-pcep-server-api</artifactId>
         </dependency>
         <dependency>
              <groupId>org.onosproject</groupId>
diff --git a/providers/pcep/topology/src/main/java/org/onosproject/provider/pcep/topology/impl/PcepTopologyProvider.java b/providers/pcep/topology/src/main/java/org/onosproject/provider/pcep/topology/impl/PcepTopologyProvider.java
index 2ed7545..02d5664 100644
--- a/providers/pcep/topology/src/main/java/org/onosproject/provider/pcep/topology/impl/PcepTopologyProvider.java
+++ b/providers/pcep/topology/src/main/java/org/onosproject/provider/pcep/topology/impl/PcepTopologyProvider.java
@@ -57,10 +57,10 @@
 import org.onosproject.pcep.api.PcepOperator.OperationType;
 import org.onosproject.pcep.api.PcepSwitch;
 import org.onosproject.pcep.api.PcepSwitchListener;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepClient;
-import org.onosproject.pcep.controller.PcepClientController;
-import org.onosproject.pcep.controller.PcepNodeListener;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClient;
+import org.onosproject.pcep.server.PcepClientController;
+import org.onosproject.pcep.server.PcepNodeListener;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepClientAdapter.java b/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepClientAdapter.java
index 20e015e..5174091 100644
--- a/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepClientAdapter.java
+++ b/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepClientAdapter.java
@@ -23,11 +23,11 @@
 import java.util.concurrent.RejectedExecutionException;
 
 import org.jboss.netty.channel.Channel;
-import org.onosproject.pcep.controller.ClientCapability;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.LspKey;
-import org.onosproject.pcep.controller.PcepClient;
-import org.onosproject.pcep.controller.PcepSyncStatus;
+import org.onosproject.pcep.server.ClientCapability;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.LspKey;
+import org.onosproject.pcep.server.PcepClient;
+import org.onosproject.pcep.server.PcepSyncStatus;
 import org.onosproject.pcepio.protocol.PcepFactories;
 import org.onosproject.pcepio.protocol.PcepFactory;
 import org.onosproject.pcepio.protocol.PcepMessage;
diff --git a/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepClientControllerAdapter.java b/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepClientControllerAdapter.java
index 27fcb5d..5e3a58e 100644
--- a/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepClientControllerAdapter.java
+++ b/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepClientControllerAdapter.java
@@ -24,14 +24,14 @@
 import org.onosproject.incubator.net.tunnel.LabelStack;
 import org.onosproject.incubator.net.tunnel.Tunnel;
 import org.onosproject.net.Path;
-import org.onosproject.pcep.controller.ClientCapability;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepClient;
-import org.onosproject.pcep.controller.PcepClientController;
-import org.onosproject.pcep.controller.PcepClientListener;
-import org.onosproject.pcep.controller.PcepEventListener;
-import org.onosproject.pcep.controller.PcepNodeListener;
-import org.onosproject.pcep.controller.driver.PcepAgent;
+import org.onosproject.pcep.server.ClientCapability;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClient;
+import org.onosproject.pcep.server.PcepClientController;
+import org.onosproject.pcep.server.PcepClientListener;
+import org.onosproject.pcep.server.PcepEventListener;
+import org.onosproject.pcep.server.PcepNodeListener;
+import org.onosproject.pcep.server.driver.PcepAgent;
 import org.onosproject.pcepio.protocol.PcepError;
 import org.onosproject.pcepio.protocol.PcepErrorInfo;
 import org.onosproject.pcepio.protocol.PcepErrorMsg;
diff --git a/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepTopologyProviderTest.java b/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepTopologyProviderTest.java
index 9792ac2..991122d 100644
--- a/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepTopologyProviderTest.java
+++ b/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepTopologyProviderTest.java
@@ -50,10 +50,10 @@
 import org.onosproject.net.link.LinkProviderService;
 import org.onosproject.net.provider.ProviderId;
 import org.onosproject.pcep.api.DeviceCapability;
-import org.onosproject.pcep.controller.ClientCapability;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepClient;
-import org.onosproject.pcep.controller.PcepNodeListener;
+import org.onosproject.pcep.server.ClientCapability;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClient;
+import org.onosproject.pcep.server.PcepNodeListener;
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.databind.node.JsonNodeFactory;
diff --git a/providers/pcep/tunnel/BUCK b/providers/pcep/tunnel/BUCK
index 8068326..c230490 100644
--- a/providers/pcep/tunnel/BUCK
+++ b/providers/pcep/tunnel/BUCK
@@ -6,13 +6,14 @@
     '//apps/pcep-api:onos-apps-pcep-api',
     '//incubator/api:onos-incubator-api',
     '//protocols/pcep/pcepio:onos-protocols-pcep-pcepio',
-    '//protocols/pcep/api:onos-protocols-pcep-api',
-    '//protocols/pcep/ctl:onos-protocols-pcep-ctl',
-    '//lib:netty',
+    '//protocols/pcep/server/api:onos-protocols-pcep-server-api',
+    '//protocols/pcep/server/ctl:onos-protocols-pcep-server-ctl',
 ]
 
 TEST_DEPS = [
     '//lib:TEST_ADAPTERS',
+    '//lib:netty',
+    '//lib:netty-transport',
 ]
 
 osgi_jar_with_tests (
diff --git a/providers/pcep/tunnel/pom.xml b/providers/pcep/tunnel/pom.xml
index dc40ebb..3cf600b 100644
--- a/providers/pcep/tunnel/pom.xml
+++ b/providers/pcep/tunnel/pom.xml
@@ -31,7 +31,7 @@
         </dependency>
         <dependency>
             <groupId>org.onosproject</groupId>
-            <artifactId>onos-pcep-controller-api</artifactId>
+            <artifactId>onos-pcep-server-api</artifactId>
         </dependency>
         <dependency>
             <groupId>org.osgi</groupId>
@@ -50,7 +50,7 @@
         </dependency>
         <dependency>
             <groupId>org.onosproject</groupId>
-            <artifactId>onos-pcep-controller-impl</artifactId>
+            <artifactId>onos-pcep-server-impl</artifactId>
             <version>${project.version} </version>
         </dependency>
     </dependencies>
diff --git a/providers/pcep/tunnel/src/main/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProvider.java b/providers/pcep/tunnel/src/main/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProvider.java
index 9896968..a2d21bc 100644
--- a/providers/pcep/tunnel/src/main/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProvider.java
+++ b/providers/pcep/tunnel/src/main/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProvider.java
@@ -78,17 +78,17 @@
 import org.onosproject.pcep.api.PcepTunnel.PathType;
 import org.onosproject.pcep.api.PcepTunnelListener;
 import org.onosproject.pcep.api.PcepTunnelStatistics;
-import org.onosproject.pcep.controller.LspKey;
-import org.onosproject.pcep.controller.LspType;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepClient;
-import org.onosproject.pcep.controller.PcepClientController;
-import org.onosproject.pcep.controller.PcepClientListener;
-import org.onosproject.pcep.controller.PcepEventListener;
-import org.onosproject.pcep.controller.PcepLspStatus;
-import org.onosproject.pcep.controller.PcepLspSyncAction;
-import org.onosproject.pcep.controller.SrpIdGenerators;
-import org.onosproject.pcep.controller.PcepSyncStatus;
+import org.onosproject.pcep.server.LspKey;
+import org.onosproject.pcep.server.LspType;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClient;
+import org.onosproject.pcep.server.PcepClientController;
+import org.onosproject.pcep.server.PcepClientListener;
+import org.onosproject.pcep.server.PcepEventListener;
+import org.onosproject.pcep.server.PcepLspStatus;
+import org.onosproject.pcep.server.PcepLspSyncAction;
+import org.onosproject.pcep.server.SrpIdGenerators;
+import org.onosproject.pcep.server.PcepSyncStatus;
 import org.onosproject.pcepio.exceptions.PcepParseException;
 import org.onosproject.pcepio.protocol.PcInitiatedLspRequest;
 import org.onosproject.pcepio.protocol.PcepAttribute;
@@ -140,24 +140,24 @@
 import static org.onosproject.net.DeviceId.deviceId;
 import static org.onosproject.net.PortNumber.portNumber;
 import static org.onosproject.pcep.api.PcepDpid.uri;
-import static org.onosproject.pcep.controller.LspType.WITH_SIGNALLING;
-import static org.onosproject.pcep.controller.LspType.SR_WITHOUT_SIGNALLING;
-import static org.onosproject.pcep.controller.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.BANDWIDTH;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.LOCAL_LSP_ID;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.LSP_SIG_TYPE;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.PCC_TUNNEL_ID;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.PCE_INIT;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.PLSP_ID;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.DELEGATE;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.COST_TYPE;
+import static org.onosproject.pcep.server.LspType.WITH_SIGNALLING;
+import static org.onosproject.pcep.server.LspType.SR_WITHOUT_SIGNALLING;
+import static org.onosproject.pcep.server.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.BANDWIDTH;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LOCAL_LSP_ID;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.PCC_TUNNEL_ID;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.PCE_INIT;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.PLSP_ID;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.DELEGATE;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.COST_TYPE;
 import static org.onosproject.provider.pcep.tunnel.impl.RequestType.CREATE;
 import static org.onosproject.provider.pcep.tunnel.impl.RequestType.DELETE;
 import static org.onosproject.provider.pcep.tunnel.impl.RequestType.LSP_STATE_RPT;
 import static org.onosproject.provider.pcep.tunnel.impl.RequestType.UPDATE;
 import static org.onosproject.incubator.net.tunnel.Tunnel.State.UNSTABLE;
-import static org.onosproject.pcep.controller.PcepLspSyncAction.REMOVE;
-import static org.onosproject.pcep.controller.PcepLspSyncAction.SEND_UPDATE;
+import static org.onosproject.pcep.server.PcepLspSyncAction.REMOVE;
+import static org.onosproject.pcep.server.PcepLspSyncAction.SEND_UPDATE;
 import static org.onosproject.pcepio.protocol.ver1.PcepMetricObjectVer1.IGP_METRIC;
 import static org.onosproject.pcepio.protocol.ver1.PcepMetricObjectVer1.TE_METRIC;
 import static org.slf4j.LoggerFactory.getLogger;
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepClientAdapter.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepClientAdapter.java
index e07c6e6..e96a2e2 100644
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepClientAdapter.java
+++ b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepClientAdapter.java
@@ -24,11 +24,11 @@
 import java.util.concurrent.RejectedExecutionException;
 
 import org.jboss.netty.channel.Channel;
-import org.onosproject.pcep.controller.ClientCapability;
-import org.onosproject.pcep.controller.LspKey;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepClient;
-import org.onosproject.pcep.controller.PcepSyncStatus;
+import org.onosproject.pcep.server.ClientCapability;
+import org.onosproject.pcep.server.LspKey;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClient;
+import org.onosproject.pcep.server.PcepSyncStatus;
 import org.onosproject.pcepio.protocol.PcepFactories;
 import org.onosproject.pcepio.protocol.PcepFactory;
 import org.onosproject.pcepio.protocol.PcepMessage;
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepClientControllerAdapter.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepClientControllerAdapter.java
index fe8f1f8..6d582a0 100644
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepClientControllerAdapter.java
+++ b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepClientControllerAdapter.java
@@ -30,13 +30,13 @@
 import org.onosproject.incubator.net.tunnel.LabelStack;
 import org.onosproject.incubator.net.tunnel.Tunnel;
 import org.onosproject.net.Path;
-import org.onosproject.pcep.controller.PccId;
-import org.onosproject.pcep.controller.PcepClient;
-import org.onosproject.pcep.controller.PcepClientController;
-import org.onosproject.pcep.controller.PcepClientListener;
-import org.onosproject.pcep.controller.PcepEventListener;
-import org.onosproject.pcep.controller.PcepNodeListener;
-import org.onosproject.pcep.controller.driver.PcepAgent;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClient;
+import org.onosproject.pcep.server.PcepClientController;
+import org.onosproject.pcep.server.PcepClientListener;
+import org.onosproject.pcep.server.PcepEventListener;
+import org.onosproject.pcep.server.PcepNodeListener;
+import org.onosproject.pcep.server.driver.PcepAgent;
 import org.onosproject.pcepio.protocol.PcepError;
 import org.onosproject.pcepio.protocol.PcepErrorInfo;
 import org.onosproject.pcepio.protocol.PcepErrorMsg;
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepReleaseTunnelProviderTest.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepReleaseTunnelProviderTest.java
index d2480c5..cfede30 100644
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepReleaseTunnelProviderTest.java
+++ b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepReleaseTunnelProviderTest.java
@@ -20,10 +20,10 @@
 import static org.hamcrest.core.Is.is;
 import static org.hamcrest.core.IsNot.not;
 import static org.onosproject.net.DefaultAnnotations.EMPTY;
-import static org.onosproject.pcep.controller.LspType.WITH_SIGNALLING;
-import static org.onosproject.pcep.controller.LspType.SR_WITHOUT_SIGNALLING;
-import static org.onosproject.pcep.controller.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.LSP_SIG_TYPE;
+import static org.onosproject.pcep.server.LspType.WITH_SIGNALLING;
+import static org.onosproject.pcep.server.LspType.SR_WITHOUT_SIGNALLING;
+import static org.onosproject.pcep.server.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -52,8 +52,8 @@
 import org.onosproject.net.PortNumber;
 import org.onosproject.net.device.DeviceServiceAdapter;
 import org.onosproject.net.provider.ProviderId;
-import org.onosproject.pcep.controller.ClientCapability;
-import org.onosproject.pcep.controller.PccId;
+import org.onosproject.pcep.server.ClientCapability;
+import org.onosproject.pcep.server.PccId;
 import org.onosproject.pcepio.types.StatefulIPv4LspIdentifiersTlv;
 
 /**
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepSetupTunnelProviderTest.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepSetupTunnelProviderTest.java
index 3e73277..375b08f8 100644
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepSetupTunnelProviderTest.java
+++ b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepSetupTunnelProviderTest.java
@@ -20,10 +20,10 @@
 import static org.hamcrest.core.Is.is;
 import static org.hamcrest.core.IsNot.not;
 import static org.hamcrest.Matchers.nullValue;
-import static org.onosproject.pcep.controller.LspType.WITH_SIGNALLING;
-import static org.onosproject.pcep.controller.LspType.SR_WITHOUT_SIGNALLING;
-import static org.onosproject.pcep.controller.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.LSP_SIG_TYPE;
+import static org.onosproject.pcep.server.LspType.WITH_SIGNALLING;
+import static org.onosproject.pcep.server.LspType.SR_WITHOUT_SIGNALLING;
+import static org.onosproject.pcep.server.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -52,8 +52,8 @@
 import org.onosproject.net.PortNumber;
 import org.onosproject.net.device.DeviceServiceAdapter;
 import org.onosproject.net.provider.ProviderId;
-import org.onosproject.pcep.controller.ClientCapability;
-import org.onosproject.pcep.controller.PccId;
+import org.onosproject.pcep.server.ClientCapability;
+import org.onosproject.pcep.server.PccId;
 
 /**
  * Test for PCEP setup tunnel.
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelAddedTest.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelAddedTest.java
index c64d475..c9c0537 100644
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelAddedTest.java
+++ b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelAddedTest.java
@@ -19,14 +19,14 @@
 import static org.hamcrest.core.Is.is;
 import static org.onosproject.incubator.net.tunnel.Tunnel.Type.MPLS;
 import static org.onosproject.incubator.net.tunnel.Tunnel.State.INIT;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.BANDWIDTH;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.LOCAL_LSP_ID;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.LSP_SIG_TYPE;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.PCC_TUNNEL_ID;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.PLSP_ID;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.DELEGATE;
-import static org.onosproject.pcep.controller.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
-import static org.onosproject.pcep.controller.PcepSyncStatus.SYNCED;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.BANDWIDTH;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LOCAL_LSP_ID;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.PCC_TUNNEL_ID;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.PLSP_ID;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.DELEGATE;
+import static org.onosproject.pcep.server.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
+import static org.onosproject.pcep.server.PcepSyncStatus.SYNCED;
 import static org.onosproject.net.Device.Type.ROUTER;
 import static org.onosproject.net.Link.State.ACTIVE;
 import static org.onosproject.net.MastershipRole.MASTER;
@@ -85,9 +85,9 @@
 import org.onosproject.pcepio.protocol.PcepMessage;
 import org.onosproject.pcepio.protocol.PcepMessageReader;
 import org.onosproject.pcepio.protocol.PcepVersion;
-import org.onosproject.pcep.controller.ClientCapability;
-import org.onosproject.pcep.controller.LspKey;
-import org.onosproject.pcep.controller.PccId;
+import org.onosproject.pcep.server.ClientCapability;
+import org.onosproject.pcep.server.LspKey;
+import org.onosproject.pcep.server.PccId;
 
 import com.google.common.collect.FluentIterable;
 import com.google.common.collect.ImmutableSet;
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProviderTest.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProviderTest.java
index 99cb7e7..15bb705 100644
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProviderTest.java
+++ b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProviderTest.java
@@ -19,8 +19,8 @@
 import static org.hamcrest.Matchers.nullValue;
 import static org.hamcrest.core.IsNot.not;
 import static org.onosproject.net.DefaultAnnotations.EMPTY;
-import static org.onosproject.pcep.controller.LspType.WITH_SIGNALLING;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.LSP_SIG_TYPE;
+import static org.onosproject.pcep.server.LspType.WITH_SIGNALLING;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -47,8 +47,8 @@
 import org.onosproject.net.PortNumber;
 import org.onosproject.net.device.DeviceServiceAdapter;
 import org.onosproject.net.provider.ProviderId;
-import org.onosproject.pcep.controller.ClientCapability;
-import org.onosproject.pcep.controller.PccId;
+import org.onosproject.pcep.server.ClientCapability;
+import org.onosproject.pcep.server.PccId;
 import org.onosproject.cfg.ComponentConfigAdapter;
 
 public class PcepTunnelProviderTest {
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepUpdateTunnelProviderTest.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepUpdateTunnelProviderTest.java
index 277a7be..abef403 100644
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepUpdateTunnelProviderTest.java
+++ b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepUpdateTunnelProviderTest.java
@@ -20,9 +20,9 @@
 import static org.hamcrest.core.Is.is;
 import static org.hamcrest.core.IsNot.not;
 import static org.onosproject.net.DefaultAnnotations.EMPTY;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.LSP_SIG_TYPE;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.LOCAL_LSP_ID;
-import static org.onosproject.pcep.controller.PcepAnnotationKeys.PLSP_ID;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LOCAL_LSP_ID;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.PLSP_ID;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -49,15 +49,15 @@
 import org.onosproject.net.Path;
 import org.onosproject.net.PortNumber;
 import org.onosproject.net.provider.ProviderId;
-import org.onosproject.pcep.controller.ClientCapability;
-import org.onosproject.pcep.controller.LspKey;
-import org.onosproject.pcep.controller.PccId;
+import org.onosproject.pcep.server.ClientCapability;
+import org.onosproject.pcep.server.LspKey;
+import org.onosproject.pcep.server.PccId;
 import org.onosproject.pcepio.protocol.PcepVersion;
 import org.onosproject.pcepio.types.StatefulIPv4LspIdentifiersTlv;
 
-import static org.onosproject.pcep.controller.LspType.WITH_SIGNALLING;
-import static org.onosproject.pcep.controller.LspType.SR_WITHOUT_SIGNALLING;
-import static org.onosproject.pcep.controller.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
+import static org.onosproject.pcep.server.LspType.WITH_SIGNALLING;
+import static org.onosproject.pcep.server.LspType.SR_WITHOUT_SIGNALLING;
+import static org.onosproject.pcep.server.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
 /**
  * Test for PCEP update tunnel.
  */