当前位置:网站首页 > 技术博客 > 正文

前端调试工具有哪些




本章介绍easycwmp的开发和使用方法;

CWMP 是由数字用户线路 DSL——Digital Subscriber’s Line 论坛(之后更名为 broadband-forum)发起开发的技术规范之一,编号为 TR-069,所以又被称为 TR-069 协议。

CWMP 的全称为: CPE 广域网管理协议( CPE WAN Management Protocol),这个协议主要用于网管中心远程管理配置数量较大的网络设备。目前主要应用在企业级路由器、一体化皮基站等网络设备的管理,所以 CWMP 是一个功能强大的用于数据中心、网管中心管理它所属的所有网络设备的网管协议。
1. 主要功能包括:

  • 1.1 提供数据参数配置
  • 1.2 文件管理
  • 1.3 状态和性能监控
  • 1.4 告警上报

被管理设备( CPE)可以主动向 ACS 服务器上传设备中的告警信息;

1.源码架构
下面是easycwmp的代码架构,详细内容可以参考官网,easycwmp有两个版本–全开源版本/高级解决方案版本,我使用的是开源版本;
在这里插入图片描述
EasyCwmp 设计包括 2 个部分:

  • EasyCwmp Core:它包括 TR069 CWMP 引擎,并负责与 ACS 服务器的通信。使用 C 语言开发。
  • EasyCwmp DataModel:它包含 TR-06 的 DATAModel,并且符合某些 DataModel 标准,例如TR-098, TR-181, TR-104 等。使用shell 脚本开发。

2.文件结构
在这里插入图片描述

可以参考官网教程

EasyCwmp 主要在 OpenWRT 上测试开发,同时也支持其他 linux 平台开发;

下载 easycwmp-openwrt- {x}.{y}.{z}.tar.gz,然后将其复制到您的/path/to/openwrt/package/
在这里插入图片描述
编译
在这里插入图片描述
编译打包
在这里插入图片描述

详细代码参考 easycwmp.c 中 main 函数

  • 获取输入参数。
  • 建立互斥文件锁,设置互斥文件属性,确认为root登录。
  • 内存分配,链表初始化, uloop_init, xml备份初始化。
  • 创建子进程、两个pipe管道负责父子进程进行通信,子进程交给/usr/sbin/easycwmp
    脚本程序接管,准备处理JSON格式参数。
  • 加载easycwpm配置文件,通过配置文件初始化设备信息(设备类型、设备厂商、设备编号、厂商唯一编号),初始化心跳timer。
  • 测试通过管道发送命令/usr/sbin/easycwmp 脚本程序并使其退出。
  • 根据输入参数添加EVENT_BOOT或EVENT_PERIODIC事件到evens列表,设定timer回调处理事件(启动连接 事件)。
    1.List item netlink_init, http_server_init 本地服务初始化
    2.进入uloop_run主循环,处理事件消息。
 

进入参数进入命令行模式,源码中可以看到主程序和shell交互,数据模型部分都是在shell部分完成的,通讯核心组件使用C完成的,进入命令行模式后

 

通过上面的设置后,我们可以使用

 

查看设置后的结果

 

easycwmp主要是理解shell交互流程,在原有基础之上对业务逻辑进行修改使用;

  • 上一篇: 基于udp的socket编程
  • 下一篇: css各种字体
  • 版权声明


    相关文章:

  • 基于udp的socket编程2025-04-15 19:29:59
  • was配置文件2025-04-15 19:29:59
  • fc函数计算2025-04-15 19:29:59
  • 电容作用有哪些2025-04-15 19:29:59
  • oracle的exp和imp命令2025-04-15 19:29:59
  • css各种字体2025-04-15 19:29:59
  • linux系统中fork函数的作用2025-04-15 19:29:59
  • 网络攻防步骤2025-04-15 19:29:59
  • 开窗函数oracle2025-04-15 19:29:59
  • 窄带物联网中窄带是什么意思2025-04-15 19:29:59