写在前面
本文以SONiC202012
版本进行syncd
模块初始化分析。sycnd与orchagent强相关,主要有5个动作,分别是create
、remove
、set
、get
以及notify
。对于前三个动作,orchagent调用sairedis api写往ASIC_DB即返回成功,get
动作会阻塞等待syncd的答复,当syncd接收到notify
事件后会通过ASIC_DB通知到orchagent。本文暂分析syncd的初始化动作。
本文可以总结成一句话:SONiC上层根据objecttype获取对应的info结构,从而调用里面的具体方法,完成sai的调用。