Publikation
Dynamic Service Programming with Path Preprocessing
Abstract
Network services are essential in modern networks. They are a crucial part of today's network operation and ensure customizable, reliable, and secure communication. This being said, they also have a noteworthy drawback: they are consumed in a static manner. As a consequence, the management of network services is too complex and thus expensive and error-prone. Furthermore, this static processing cannot react to network changes: a service outage, a link failure, or any other network events can result in connectivity loss for customers and has to be usually resolved manually. This paper proposes a practical solution for dynamic, event-triggered, and fast path calculations that program services and permit a so-called service chain. To allow programming services directly in the backbone of a service provider network is solving the static service consumption in service provider networks. The solution is based on the functionalities of Segment Routing over IPv6 (SRv6 in short), which implements the source-based routing paradigm with the native IPv6 encapsulation. Our focus was set on finding the best reliable and fast way to calculate the best path through the given service instances. Because service provider networks are constantly growing, an algorithm has to be found and implemented so that the growth of the network has no impact on the calculation performance. A complete cloud-native development approach has been taken to create the application as elastic and fault-tolerant as possible. Thanks to the cloud-native approach, the application can be portable in a different environment, in an on-premise datacenter, or directly in the public cloud.