The goal of this project is to develop a prototype to support SRv6 with compressed SID based on the ONOS, Stratum and P4 Programmable Switch. The compressed SID is specifically the G-SRv6 (Generalized Segment Routing over IPv6). G-SRv6 is an import part of the next-generation IPv6. It provides a new type of segments or sub-paths in SRv6 network programming. The following figure shows the application of G-SRv6 in DCI (Data Center Interconnection). G-SRv6 can integrate the TE policy across different domains and means/protocols.
The document of G-SRv6 can be found in https://tools.ietf.org/html/draft-cl-spring-generalized-srv6-np-00. This project can provide the complete support of the G-SRv6 in both data-plane and control-plane. In data-plane, we will develop a P4 program to support the essential functions of G-SRv6, and will subsequently deploy this program on Stratum. In control-plane, we will extend ONOS to support the control and configuration of the mentioned P4 program based on the P4-runtime.