软总线的相关知识整理 1、整理框架图: 2、结构图: /foundation/communication/dsoftbus ├── interfaces # 接口代码 ├── adapter # 适配层代码 ├── core # 核心代码 │ ├── common # 通用代码 │ ├── authentication # 认证代码 │ ├── bus_center # 组网代码 │ ├── connection # 连接代码 │ ├── discovery # 发现代码 │ ├── transmission # 传输代码 │ └── frame # 框架代码 │ ├── sdk # 运行业务进程代码 │ ├── bus_center # 组网代码 │ │ ├── ipc │ │ ├── service │ │ └── manager │ ├── discovery # 发现代码 │ │ ├── ipc │ │ ├── service │ │ └── manager │ ├── transmission # 传输代码 │ │ ├── ipc │ │ ├── session │ │ └── trans_channel │ └── frame # 框架代码 │ └── components # 依赖组件代码 ├── mbedtls # 传输加密算法 └── nstackx # ?? 3、软总线启动入口函数: void SoftBusServer::OnStart() //softbus_server.c 4、软总线主要相关组件初始化 void InitSoftBusServer(void) 5、其中相关流程初始化如下图 InitSoftBusServer ├── SoftbusConfigInit # 相关配置 如收发包长度等 │ ├── ServerStubInit # │ ├── SoftBusTimerInit # 定时器?,貌似没有调回调进入 │ ├── LooperInit # 处理消息 │ ├── ConnServerInit # 连接到管理服务的设备? │ ├── TransServerInit │ ├── TransPermissionInit │ │ └── LoadPermissionJson # 加载PERMISSION_JSON_FILE 配置文件 │ ├── TransSessionMgrInit # 创建一个g_sessionServerList │ └── TransChannelInit │ ├── TransLaneMgrInit # 创建一个g_sessionServerList │ ├── TransAuthInit # 创建一个g_authChannelList │ │ └── AuthTransDataRegCallback # g_authTransCb 认证 │ ├── TransProxyManagerInit # 创建一个g_proxyChannelList │ │ ├── TransProxySetCallBack │ │ ├── TransProxyTransInit │ │ ├── PendingInit │ │ └── RegisterTimeoutCallback │ ├── TransTcpDirectInit │ │ ├── TransSrvDataListInit │ │ ├── TransTdcSetCallBack │ │ ├── RegisterTimeoutCallback │ │ └── CreatSessionConnList │ └── TransUdpChannelInit │ ├── TransUdpChannelMgrInit │ └── AuthTransDataRegCallback │ ├── AuthInit # 认证相关代码 │ ├── AuthCallbackInit # 创建一个 g_verifyCallback │ ├── AuthGetAbility # 配置设备是否具有认证的能力? │ ├── AuthListInit # 初始 g_authClientHead/g_authServerHead/g_sessionKeyListHead │ ├── RegisterConnCallback # 注册 g_connCallback, g_connResult用于获取结果 │ ├── AuthLooperInit │ ├── UniqueIdInit │ └── HichainServiceInit # g_hichainGmInstance/g_hichainGaInstance/g_hichainCallback │ ├── DiscServerInit # │ └── DiscMgrInit │ ├── DiscOnDeviceFound │ ├── DiscCoapInit │ └── DiscBleInit │ └── BusCenterServerInit # 组网&网络拓扑 ├── LnnInitLocalLedger # 创建一个Ledger │ ├── LnnGetNetCapabilty # 设置支持类型 │ ├── InitLocalDeviceInfo # 获取设备信息 │ ├── InitLocalVersionType # 只支持lte? │ └── InitConnectInfo # 连接信息 ├── LnnInitDistributedLedger # 配置设备是否具有认证的能力? ├── LnnInitSyncLedgerItem # ├── LnnInitEventMonitor # 处理event事件 ├── LnnInitDiscoveryManager # 发现 ├── LnnInitNetworkManager ├── LnnInitNetBuilder ├── LnnLanesInit ├── LnnTimeSyncInit └── LnnInitNetBuilder # g_hichainGmInstance/g_hichainGaInstance/g_hichainCallback 1、LooperInit 创建并初始化消息处理 ConnServerInit 连接管理,包含tcp,蓝牙(高低功耗),(wifi 模块放到tcp???) 2、TransServerInit 传输 3、AuthInit 认证 4、DiscServerInit 发现,包含了Coap的初始化,具体怎么实现组网的还需要研究一下 5、BusCenterServerInit 软总线组网&网络拓扑结构。 |
只有小组成员才能发言,加入小组>>
18个成员聚集在这个小组
加入小组4412开发板移植openharmony3.0标准版-原来移植ohos可以这样简单!
5970 浏览 0 评论
11656 浏览 0 评论