Introduction
Nowadays, mobile devices are considered as terminals with immense amounts of capabilities provided to end users, as well as to the ambient environment. The opportunistically formed mobile cluster is a part of a wider mobile network, hosting many edge devices (e.g., smart watches, smart shoes, smart belts, smart glasses, and other wearables). This cluster aims to serve the users' requirements based on their data rates and their quality of service (QoS) requests [1]. As the QoS demands for each user are exponentially increasing, the central processing units (CPUs) in many cases [2] cannot handle the hosted applications. Such applications require interactive content provision for, say, real-time interactive gaming, demanding huge processing in a pre-determined amount of time. Moreover, high battery consumption poses a barrier for the end users and their high resource demands over time. In addition, as the number of Internet of Things (IoT)-enabled devices is growing, the processing and energy power that are needed by mobile terminals will require complete remote manipulation of resources. Toward providing reliability to end users, the IoT/Internet of Everything (IoE) poses an effective solution when devices with redundant resources can “host-run-execute” processes. Such processes belong to other devices, aiming to provide availability of resources for “resource-starved” mobile users. The latter substantiates several advantages [3], as it can efficiently extend the battery lifetime. This is achieved by offloading energy-consuming computations of the applications to the mobile opportunistic cloud. This approach is based on the mobile cloud computing paradigm, using the ambient environment/IoT/IoE and providing higher processing resource capabilities to the end users. The mobile opportunistic cloud imposes additional load on both radio and backhaul of mobile systems, while it introduces high latency, since data is sent to farm servers that are remotely hosted. This indicates a significant delay, making the offload processing infeasible for delay-sensitive and/or interactive “live” content. Toward facing these limitations, mobile edge computing creates a convergent paradigm, where the computation and storage resource worlds can meet. The edge of a mobile network can host energy-hungry applications and can run the highly demanding processes, satisfying strict delay requirements of end users. This work presents the socially oriented edge computing (SoEC) concept for delay-sensitive applications, toward alleviating the problem of lack of resources on mobile devices. A novel architecture is presented in order to demonstrate the operations and major modules of the edge devices, using specific use cases and reference scenarios. The SoEC functionalities are also presented along with a discussion of current advancements in standardization in the field. More specifically, by leveraging the social tie structure among mobile users in order to mutually achieve the computation benefit during offloading decision making, the overall performance of the system is improved, and hence the system-wide overall efficiency is enhanced. In addition, this work demonstrates the edge-based socially oriented paradigm for storage and offload processing, which can significantly minimize the energy consumption on each wireless device that demands resources. This approach also allows critical processes to be remotely executed, in an opportunistic manner The proposed architecture aims at saving resources on the user's device, thus minimizing energy consumption in time and prolonging the device's lifetime during critical and/or delay-sensitive processes. The following sections present the related work and existing architectures, and the newly built modules on top of the novel architectures. Finally, the overall design principles of the proposed framework and the respective performance evaluation are presented.