OpenDaylight MD-SAL支持兩種RPC服務,即BI RPC服務和BA RPC服務,在AC中經常使用的經過Yang定義RPC生成Java接口的方式是BA服務。在MD-SAL中服務的發現、註冊都是基於BI服務來實現的,BA服務則統一轉換成BI服務來處理。api
RPC涉及如圖所示幾個MD-SAL工程:代理
圖1-1 RPC相關的MD-SAL組件blog
sal-core-api:定義了BI RPC服務的註冊、調用接口。接口
sal-broker-impl:實現了BI RPC服務的註冊、調用。進程
sal-binding-api:定義了BA RPC服務的註冊、調用接口。rem
sal-binding-broker-impl:實現了BA RPC服務的註冊、調用,實際的註冊、調用操做都經過adapter將BA服務封裝成BI服務代理到BI RPC服務中心。rpc
sal-remoterpc-connector:實現了多個ODL節點中BI RPC服務信息的同步,以及跨進程的服務調用。同步