Have questions? Stuck? Please check our FAQ for some common questions and answers.

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

Team

NameOrganizationEmail
Patrick LiuHuawei TechonologiesPartick.Liu@huawei.com
Suresh B RHuawei TechonologiesSuresh.B.R@huawei.com
Mahesh PoojaryHuawei Techonologiesmahesh.poojary@huawei.com
Phaneendra MandaHuawei Techonologiesphaneendra.manda@huawei.com
Bharat SaraswalHuawei Techonologiesbharat.saraswal@huawei.com
Priyanka BHuawei Techonologiespriyanka.b@huawei.com
Rajakumar GootlaHuawei Techonologiesrajakumarg@huawei.com

Overview

This project adds Path Computation Element Protocol (PCEP) as a southbound plugin in ONOS.

Proposed work

Add PCEP South Bound Interface (SBI) for MPLS TE tunnel management which will implement TunnelProvider API to support initiating, updating and releasing of PCE initiated tunnels using PCE communication protocol. The implementation will also support learning of existing active tunnels which are on the network.

Implement PCEP protocol handler, which acts as a server to listen on PCEP port 4189 to establish and manage session with PCCs. A channel handler will be created for each PCEP session to maintain the state machine and state of each PCC.

Implement PCEP message handler, which will encode and decode PCEP messages between ONOS PCEP SBI and PCC. Currently the messages supported are Open, KeepAlive, PCInitiate, PCUpd, PCRpt, PCErr and Close.

Implementation supports state synchronization with PCC reporting reporting LSPs’ state to PCEP protocol handler running on ONOS immediately after session established. These report messages are notified to PCEP Tunnel Provider via message listener which in turn will inform the ONOS Core about the existing tunnels in the network. The Report message can also be the result of PCE initiated messages for creating, updating or releasing tunnels. In this case PCEP Tunnel Provider will invoke the respective API to notify ONOS Core about the result of create or update or release tunnels. All communication between PCEP provider and ONOS Core uses Provider Service interface.

SetupTunnel  API

Arguments: Tunnel, Path

Return Value: None

Details: This API is responsible for setting up a tunnel on the device. It gets the tunnel parameters from input parameter Tunnel and Path. The API implementation builds the PCInitiate protocol message from the input parameters. The ingress and egress are taken from src and dst members of Tunnel class. The ingress is considered as source for the tunnel and PCInitiate message is sent to ingress device for which a session is already established with the PCEP protocol handler. The explicit route object is built from the link parameter in the input Path class. The API implementation will take care of generating unique ID for sending the message to PCC and mapping the response from PCC. Finally the response is given to ONOS core using PCEP tunnel provider service.

UpdateTunnel API

Arguments: Tunnel, Path

Return Value: None

Details: This API is responsible for modifying an existing tunnel on the device. It gets the tunnel parameters from input parameter Tunnel and Path. The API implementation builds the PCUpd protocol message from the input parameters. To send a PCUpd message the ingress device should have a tunnel which is already created and the PCE must be the owner of this tunnel. The ingress and egress for the tunnel are taken from src and dst of Tunnel class. The ingress is considered as source for the tunnel and PCUpd message is sent to ingress device for which a session is already established with the PCEP protocol handler. The explicit route object is built from link parameter in the Path class. The API implementation will take care of generating unique ID for sending the message to PCC and mapping the response from PCC. Finally the response is given to ONOS core using PCEP tunnel provider service.

ReleaseTunnel API

Arguments: Tunnel

Return Value: None

Details: This API is responsible for deleting an existing tunnel on the device. It gets the tunnel parameters from input parameter Tunnel. The API implementation builds the PCInitiate protocol message from the input parameters. To send a PCInitiate message with delete flag set, the ingress device should have a tunnel which is already created and the PCE must be the owner of this tunnel. The tunnel id, ingress and egress for the tunnel are taken from tunnel id, src and dst of Tunnel class. The ingress is considered as source for the tunnel and PCInitiate message is sent to ingress device for which a session is already established with the PCEP protocol handler. The API implementation will take care of generating unique ID for sending the message to PCC and mapping the response from PCC. Finally the response is given to ONOS core using PCEP tunnel provider service.


  • No labels