Hardware at the network edge provides an intermediate location for processing to occur between the servers in the cloud and the end device, be it sensor or actuator. Software for edge systems can be deployed using network-based approaches such as Software-Defined Networking (DN), Network Function Virtualisation (NFV) and Cloud-native Network Functions (CNF). Alternatively DevOps approaches such as Kubernetes can be used. The hardware at the edge must be designed to support the edge processing requirements, and may include hardware accelerators such as FPGAs to deliver the maximun performance at minimum economic and energy cost
Edge processing can reduce load on central servers and improve response times. The optimal means of decomposing the global task of an IoT application across cloud resources, edge nodes and the limited processing capabilities of end devices is one of the most challenging in distributed systems today.