A control plane device in a cloud computing system to execute a plurality of virtual machines for implementing network function virtualization, NFV, the control plane device operable to manage implementation of a general packet radio service, GPRS, tunnel protocol, GTP, in a packet core, PC, of a third generation, 3G, network having a control plane of the PC of the 3G network, where the control plane is in the cloud computing system, the control plane operable to communicate with a data plane of the PC through a control plane protocol, the data plane implemented in a plurality of network devices of the 3G network, the control plane device and the plurality of virtual machines operable to communicate with other control plane devices in the cloud computing system and with the plurality of network devices of the data plane, the control plane device comprising: a storage medium to store a centralized control plane, CCP, software including control plane modules for implementing the control plane of the PC, wherein the control plane modules are dynamically distributed over the plurality of virtual machines and over a plurality of the other control plane devices, and a processor communicatively coupled to the storage medium, the processor operable to execute the plurality of virtual machines, wherein at least one of the plurality of virtual machines is operable to execute the CCP software including at least one of the control plane modules, each control plane module to provide a set of control plane functions for managing the data plane, the CCP software operable to receive a request to create a GTP tunnel in the PC of the 3G network between a serving GPRS support node, SGSN, and a gateway GPRS support node, GGSN, for a subscriber session, the CCP software operable to configure a switch implementing a data plane of the SGSN, via the control plane protocol, to encapsulate and decapsulate packets of the subscriber session and to establish a first GTP tunnel endpoint, the CCP software operable to configure at least one switch in a route of the GTP tunnel, via the control plane protocol, to forward the packets of the subscriber session according to the GTP tunnel, and the CCP software operable to configure a switch implementing a data plane of the GGSN, via the control plane protocol, to encapsulate and decapsulate the packets of the subscriber session and to establish a second GTP tunnel endpoint. a storage medium to store a centralized control plane, CCP, software including control plane modules for implementing the control plane of the PC, wherein the control plane modules are dynamically distributed over the plurality of virtual machines and over a plurality of the other control plane devices, and a processor communicatively coupled to the storage medium, the processor operable to execute the plurality of virtual machines, wherein at least one of the plurality of virtual machines is operable to execute the CCP software including at least one of the control plane modules, each control plane module to provide a set of control plane functions for managing the data plane, the CCP software operable to receive a request to create a GTP tunnel in the PC of the 3G network between a serving GPRS support node, SGSN, and a gateway GPRS support node, GGSN, for a subscriber session, the CCP software operable to configure a switch implementing a data plane of the SGSN, via the control plane protocol, to encapsulate and decapsulate packets of the subscriber session and to establish a first GTP tunnel endpoint, the CCP software operable to configure at least one switch in a route of the GTP tunnel, via the control plane protocol, to forward the packets of the subscriber session according to the GTP tunnel, and the CCP software operable to configure a switch implementing a data plane of the GGSN, via the control plane protocol, to encapsulate and decapsulate the packets of the subscriber session and to establish a second GTP tunnel endpoint.