P4 is a high-level language for programming the data plane of a network switch. These P4-programmable switches come with no pre-defined behavior or protocols, so it is entirely up to the loaded P4 program to define these. This allows the user to exclude any unwanted functionality and to create custom protocols. It also removes the dependence on the switch vendor in terms of both trust and addition of new features. This thesis looks at migration from traditional switches to P4-programmable ones. Since no behavior is included out-of-the-box in the P4 switches, a search is made for open-source P4 projects and the functionality they provide is evaluated. It is found that most link layer functionality can be achieved with them, with the exception being loop prevention by spanning tree protocols. Therefore, one of the projects is extended with an implementation of the Rapid Spanning Tree Protocol based on the IEEE 802.1D-2004 standard. Finally, partial migration of networks to P4 switches and to the Software Defined Networking (SDN) paradigm is studied based on a literature review. Four general approaches and specific architectures for these are found, and it is concluded that such a hybrid network can still benefit from P4 and having a centralized SDN controller.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:liu-167509 |
Date | January 2020 |
Creators | Lindström, Henrik |
Publisher | Linköpings universitet, Programvara och system |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | English |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0029 seconds