Cisco Service Layer API Documentation

SLBfdIPv6Oper

Service Description

Defines the RPC for adding, deleting, updating, and retrieving BFD sessions.

RPC Calls

rpc SLBfdv6Oper::SLBfdv6RegOp (SLBfdRegMsg) returns(SLBfdRegMsgRsp)
 BFD Registration Operations. More...
 
rpc SLBfdv6Oper::SLBfdv6Get (SLBfdGetMsg) returns(SLBfdGetMsgRsp)
 Used to retrieve global BFD info from the server.
 
rpc SLBfdv6Oper::SLBfdv6GetStats (SLBfdGetMsg) returns(SLBfdGetStatsMsgRsp)
 Used to retrieve global BFD stats from the server.
 
rpc SLBfdv6Oper::SLBfdv6GetNotifStream (SLBfdGetNotifMsg) returns(stream SLBfdv6Notif)
 BFD notifications. More...
 
rpc SLBfdv6Oper::SLBfdv6SessionOp (SLBfdv6Msg) returns(SLBfdv6MsgRsp)
 BFD session operations. More...
 
rpc SLBfdv6Oper::SLBfdv6SessionGet (SLBfdv6GetMsg) returns(SLBfdv6GetMsgRsp)
 Retrieve BFD session attributes and state. More...
 

Messages

message  SLBfdv6Key
 BFD unique key identifier. More...
 
message  SLBfdv6SessionCfg
 BFD session information. More...
 
message  SLBfdv6Msg
 Contains a List of BFD session objects. More...
 
message  SLBfdv6Res
 BFD result. More...
 
message  SLBfdv6MsgRsp
 BFD bulk result. More...
 
message  SLBfdv6GetMsg
 BFD Get Message. More...
 
message  SLBfdv6SessionCfgState
 BFD Session Config and State info. More...
 
message  SLBfdv6GetMsgRsp
 BFD Get Message Response. More...
 
message  SLBfdv6SessionState
 BFD Session and State info. More...
 
message  SLBfdv6Notif
 BFD Session and State info Message. More...
 

Variables

SLBfdType SLBfdv6Key::Type = 1
 BFD Session Type.
 
string SLBfdv6Key::VrfName = 2
 VRF name.
 
bytes SLBfdv6Key::NbrAddr = 3
 Neighbor Ipv6 address.
 
SLInterface SLBfdv6Key::Interface = 4
 Interface name and handle, needed for single-hop BFD.
 
bytes SLBfdv6Key::SourceAddr = 5
 Source Ipv6 address, needed for multi-hop BFD.
 
SLBfdv6Key SLBfdv6SessionCfg::Key = 1
 BFD unique key identifier.
 
SLBfdConfigCommon SLBfdv6SessionCfg::Config = 2
 BFD common features.
 
SLObjectOp SLBfdv6Msg::Oper = 1
 BFD Object Operations.
 
repeated SLBfdv6SessionCfg SLBfdv6Msg::Sessions = 2
 List of BFD session objects.
 
SLErrorStatus SLBfdv6Res::ErrStatus = 1
 Corresponding error code.
 
SLBfdv6Key SLBfdv6Res::Key = 2
 BFD unique key.
 
SLErrorStatus SLBfdv6MsgRsp::StatusSummary = 1
 Summary result of the bulk operation (refer to enum SLErrorStatus) In general, the StatusSummary implies one of 3 things: More...
 
repeated SLBfdv6Res SLBfdv6MsgRsp::Results = 2
 In case of errors, this field indicates which entry in the bulk was erroneous. More...
 
SLBfdv6Key SLBfdv6GetMsg::Key = 1
 BFD key. More...
 
uint64 SLBfdv6GetMsg::SeqNum = 2
 Global BFD event sequence number. More...
 
uint32 SLBfdv6GetMsg::EntriesCount = 3
 Number of entries requested.
 
bool SLBfdv6GetMsg::GetNext = 4
 if GetNext is FALSE: request up to 'EntriesCount' entries starting from the key If GetNext is TRUE, or if the key exact match is not found: request up to 'EntriesCount' entries starting from the key's next
 
SLBfdv6Key SLBfdv6SessionCfgState::Key = 1
 BFD unique key identifier.
 
SLBfdConfigCommon SLBfdv6SessionCfgState::Config = 2
 BFD common features.
 
SLBfdCommonState SLBfdv6SessionCfgState::State = 3
 BFD session State.
 
bool SLBfdv6GetMsgRsp::Eof = 1
 End Of File. More...
 
SLErrorStatus SLBfdv6GetMsgRsp::ErrStatus = 2
 Status of the Get operation.
 
repeated SLBfdv6SessionCfgState SLBfdv6GetMsgRsp::Entries = 3
 Returned entries as requested in the Get operation. More...
 
SLBfdv6Key SLBfdv6SessionState::Key = 1
 BFD unique key identifier.
 
SLBfdCommonState SLBfdv6SessionState::State = 2
 BFD session State.
 
SLBfdNotifType SLBfdv6Notif::EventType = 1
 Event Type.
 
oneof SLBfdv6Notif::Event
 Further info based on EventType. More...
 
SLBfdv6SessionState SLBfdv6Notif::Session = 3
 case EventType == SL_BFD_EVENT_TYPE_SESSION_STATE: => this field carries the session state info
 

RPC Documentation

rpc SLBfdv6Oper::SLBfdv6GetNotifStream ( SLBfdGetNotifMsg  )

This call is used to get a stream of session state notifications. The caller must maintain the GRPC channel as long as there is interest in BFD session notifications. Only sessions that were created through this API will be notified to caller. This call can be used to get "push" notifications for session states. It is advised that the caller register for notifications before any sessions are created to avoid any loss of notifications.

rpc SLBfdv6Oper::SLBfdv6RegOp ( SLBfdRegMsg  )

SLBfdRegMsg.Oper = SL_REGOP_REGISTER: Global BFD registration. A client Must Register BEFORE BFD sessions can be added/modified.

SLBfdRegMsg.Oper = SL_REGOP_UNREGISTER: Global BFD un-registration. This call is used to end all BFD notifications and unregister any interest in BFD session configuration. This call cleans up all BFD sessions previously requested.

SLBfdRegMsg.Oper = SL_REGOP_EOF: BFD End Of File. After Registration, the client is expected to send an EOF message to convey the end of replay of the client's known objects. This is especially useful under certain restart scenarios when the client and the server are trying to synchronize their BFD sessions.

rpc SLBfdv6Oper::SLBfdv6SessionGet ( SLBfdv6GetMsg  )

This call can be used to "poll" the current state of a session.

rpc SLBfdv6Oper::SLBfdv6SessionOp ( SLBfdv6Msg  )

SLBfdv6Msg.Oper = SL_OBJOP_ADD: Add one or multiple BFD sessions.

SLBfdv6Msg.Oper = SL_OBJOP_UPDATE: Update one or multiple BFD sessions.

SLBfdv6Msg.Oper = SL_OBJOP_DELETE: Delete one or multiple BFD sessions.


Message Documentation

message SLBfdv6Key

Attributes

SLBfdType Type = 1
 BFD Session Type.
 
string VrfName = 2
 VRF name.
 
bytes NbrAddr = 3
 Neighbor Ipv6 address.
 
SLInterface Interface = 4
 Interface name and handle, needed for single-hop BFD.
 
bytes SourceAddr = 5
 Source Ipv6 address, needed for multi-hop BFD.
 
message SLBfdv6SessionCfg

Attributes

SLBfdv6Key Key = 1
 BFD unique key identifier.
 
SLBfdConfigCommon Config = 2
 BFD common features.
 
message SLBfdv6Msg

Attributes

SLObjectOp Oper = 1
 BFD Object Operations.
 
repeated SLBfdv6SessionCfg Sessions = 2
 List of BFD session objects.
 
message SLBfdv6Res

Attributes

SLErrorStatus ErrStatus = 1
 Corresponding error code.
 
SLBfdv6Key Key = 2
 BFD unique key.
 
message SLBfdv6MsgRsp

Attributes

SLErrorStatus StatusSummary = 1
 Summary result of the bulk operation (refer to enum SLErrorStatus) In general, the StatusSummary implies one of 3 things: More...
 
repeated SLBfdv6Res Results = 2
 In case of errors, this field indicates which entry in the bulk was erroneous. More...
 
message SLBfdv6GetMsg

Attributes

SLBfdv6Key Key = 1
 BFD key. More...
 
uint64 SeqNum = 2
 Global BFD event sequence number. More...
 
uint32 EntriesCount = 3
 Number of entries requested.
 
bool GetNext = 4
 if GetNext is FALSE: request up to 'EntriesCount' entries starting from the key If GetNext is TRUE, or if the key exact match is not found: request up to 'EntriesCount' entries starting from the key's next
 
message SLBfdv6SessionCfgState

Attributes

SLBfdv6Key Key = 1
 BFD unique key identifier.
 
SLBfdConfigCommon Config = 2
 BFD common features.
 
SLBfdCommonState State = 3
 BFD session State.
 
message SLBfdv6GetMsgRsp

Attributes

bool Eof = 1
 End Of File. More...
 
SLErrorStatus ErrStatus = 2
 Status of the Get operation.
 
repeated SLBfdv6SessionCfgState Entries = 3
 Returned entries as requested in the Get operation. More...
 
message SLBfdv6SessionState

Attributes

SLBfdv6Key Key = 1
 BFD unique key identifier.
 
SLBfdCommonState State = 2
 BFD session State.
 
message SLBfdv6Notif

Attributes

SLBfdNotifType EventType = 1
 Event Type.
 
oneof Event
 Further info based on EventType. More...
 
SLBfdv6SessionState Session = 3
 case EventType == SL_BFD_EVENT_TYPE_SESSION_STATE: => this field carries the session state info
 

Variable Documentation

repeated SLBfdv6SessionCfgState SLBfdv6GetMsgRsp::Entries = 3

if Error is SL_SUCCESS, Entries contains the info requested

bool SLBfdv6GetMsgRsp::Eof = 1

When set to True, it indicates that the server has returned M, where M < N, of the original N requested Entries.

oneof SLBfdv6Notif::Event
Initial value:
{
SLErrorStatus ErrStatus = 2
SLBfdv6Key SLBfdv6GetMsg::Key = 1

If the Key is not specified, then request up to the first 'EntriesCount' entries.

repeated SLBfdv6Res SLBfdv6MsgRsp::Results = 2
uint64 SLBfdv6GetMsg::SeqNum = 2

Return all BFD sessions with sequence number >= SeqNum.

SLErrorStatus SLBfdv6MsgRsp::StatusSummary = 1
  1. SL_SUCCESS: signifies that the entire bulk operation was successful. In this case, the Results list is empty.
  2. SL_SOME_ERR: signifies that the operation failed for one or more entries. In this case, Results holds the result for each individual entry in the bulk.
  3. SL_RPC_XXX: signifies that the entire bulk operation failed. In this case, the Results list is empty.