Programmable Data Plane(PDP)technology allows users to freely define and use network device resources,giving rise to In-Network Computing(INC).INC offloads computation tasks through high-speed network devices,effectively improving the throughput and latency performance of host-side applications.As a typical representative,the new approximate cache technology preserves and reuses computation results,accelerating application through cache lookup while the software-based design limits the cache performance.Inspired by INC,the in-network approximate caching has great potential for improving cache performance.However,due to the limitations of network device capabilities and inherent flaws of current INC in data center,the challenges are as follows:(1)due to the complex design and algorithm,approximate cache cannot be easily implemented in hardware with limited resources and capabilities?(2)to deploy INC on network devices with different capabilities and resource,carefully selection of suitable devices and hardware adaptation are required but knotty?(3)INC development is tightly coupled with network operations on the network device,users require full access to programmable network devices as well as knowledge of device,topology,and network,with INC programs unisolated for different users,which impedes the INC development.To address these issues,this dissertation proposes the following content and contributions:1.Efficient edge-side approximate cache unit.To address the low performance of host-side software-based approximate cache,this dissertation proposes an efficient hardware fuzzy caching unit at the edge of the network.This cache adopts a hardware architecture based on Ternary Addressable Content Memory(TCAM)and Near-Memory Computing(NMC),where TCAM is used for approximate matching and NMC is used for result reusable verification.An efficient feature approximate matching scheme is constructed through core algorithms such as code aggregation,and a prototype system is built using an FPGA card.Experimental results show that the fuzzy cache unit can achieve over90% hit rate and accuracy rate with an acceleration ratio of over 1000 compared to the inference computation on servers.2.Runtime in-network approximate cache system.To satisfy the dynamic needs of in-network approximate cache from multiple users,this dissertation proposes an immediately in-network approximate cache system based on programmable switches.To overcome the limitation that existing programmable switches do not support runtime programming,this dissertation proposes a unified fuzzy cache abstraction and unitized matching table structure.Through a series of adaptive designs,this cache overcomes switch resource limitations.Experimental results show that it can support cache requests from millions of terminals simultaneously.3.INC as a Service framework.To address the inefficiency of INC development and deployment,this dissertation proposes Click INC,the INC as a Service framework,which decouples INC development from network operation.This dissertation constructs a unified INC abstraction and convenient programming language interface,which shields users from network devices,topology,and network operations,making users only focus on INC design.This dissertation designs automated orchestration tools and compilers to automatically and efficiently deploy INC programs in the network.Experimental results show that Click INC can improve programming efficiency by over 10 times,and orchestration efficiency by over 1000 times than the state-of-the-art works. |