In order to support communication and computation cooperation, we propose ME-RAN architecture, which consists of mobile edge cloud (ME) as the computation provision platform and radio access network (RAN) as the communication interface. Cooperative offloading framework is proposed to achieve the following tasks: (1) to increase user equipment' (UE') computing capacity by triggering offloading action, especially for the UE which cannot complete the computation locally; (2) to reduce the energy consumption for all the UEs by considering limited computing and communication resources. Based on above objectives, we formulate the energy consumption minimization problem, which is shown to be a non-convex mix-integer programming. Firstly, Decentralized Local Decision Algorithm (DLDA) is proposed for each UE to estimate the possible local resource consumption and decide if offloading is in its interest. This operation will reduce the overhead and signalling in the later stage. Then, Centralized decision and resource Allocation algoRithm (CAR) is proposed to conduct the decision making and resource allocation in ME-RAN. Moreover, two low complexity algorithms, i.e., UE with largest saved energy consumption accepted first (CAR-E) and UE with smallest required data rate accepted first (CAR-D) are proposed. Simulations show that the performance of the proposed algorithms is very close to the exhaustive search but with much less complexity.