P4Neighbor: Efficient Link Failure Recovery With Programmable Switches

Programmable data plane hardware creates a possibility to solve network-related problems. Ensuring fault tolerance of link failures is a fundamental network issue. Link failure recovery mechanisms are widely used in traditional and software-defined networks. The proactive failure recovery mechanism usually requires a backup path to be installed in the switch in advance. When the link fails, the switch can quickly switch to the backup path to continue sending packets. However, storing a large number of backup paths consumes a lot of switch storage. In this article, we analyze why implementing traditional proactive failure recovery mechanism introduces huge switch storage overhead, and discuss the flexibility and limitations of the programmable data plane. Then, we present P4Neighbor, a proactive link failure recovery framework based on the programmable data plane. P4Neighbor encapsulates backup paths into the header of a packet when a link failed and leverages this information to achieve link failure recovery. By storing only the backup paths of the neighbor switches, P4Neighbor requires little switch storage to store backup paths. Besides, P4Neighbor also takes complex link failure situations into consideration, which makes the network's fault tolerance slightly increase. Experimental results show that compared with the traditional failure recovery mechanism, P4Neighbor achieves a reduction rate of 57.9%-84.5% in terms of stored switch entries. Meanwhile, P4Neighbor also has a higher failure recovery ratio than traditional proactive link failure recovery mechanisms.

PDF Abstract
No code implementations yet. Submit your code now

Tasks


Datasets


  Add Datasets introduced or used in this paper

Results from the Paper


  Submit results from this paper to get state-of-the-art GitHub badges and help the community compare results to other papers.

Methods


No methods listed for this paper. Add relevant methods here