TR 069是DSL Fourm提出来的一种协议,即CWMP协议,主要是对 用户终端设备的管理。
其功能主要有两块组成ACS(Auto Config Server)和CPE(Customer Pression Equalment)。其具体功能请参考TR-069协议,网络上也有介绍,在此不再多说了。
最近公司接到了一个项目,主要是对电信的AP(Access Point)设备进行性能监控和管理。我也是项目组的开发人员,主要是负责ACS的搭建。
根据协议的描述 CPE会定时呼叫ACS,ACS也可以呼叫CPE。ACS呼叫CPE的时候,其实是
向CPE发送一个ConnectionRequest,经过授权认证等过程后,CPE会发个Inform给ACS,
其中包含了EventCode,根据EnventCode我们就可已知道是CPE主动呼叫的,还是ACS呼叫后,CPE才建立的连接。TR-069规定响应ACS的呼叫后的Inform Event Code是6 Connection Request。
我也是第一次进行通信方面的开发,以前没有接触过的东西。首先得要下个协议,在这里我有个感受,就是要下个原版的TR-069协议,自己去慢慢的理解,不懂单词要查,虽然是全英文的,但是也是最权威的,也是原滋原味的。
可能看了协议后会觉得很蒙,很多代名词都不懂。SOAP,RPC。SOAP和PRC感觉有点像WebService,其实我也没有webservice的开发经验,但是我觉得在TR-069协议中,ACS 通过SOAP协议指定要调用CPE的哪些方法,以及需要的参数。然后通过RPC在CPE端执行指定的方法,返回方法执行后的结果。然后在通过SOAP协议返回执行后的结果给CPE。
假如A系统有个查询手机号码的归属地的功能,那么B系统中也要实现这个功能,那么两个系统可以通过通信的方式进行数据交互。B系统通过SOAP协议指定需要执行的功能(方法)和参数(手机号码),然后发送给A系统。A系统接受了SOAP协议包含的XML,开始解析,然后调用自身的method,然后将执行后的结果封装成XML 格式的数据后发给B系统,B系统解析后获取执行的结果。总之,最重要的是通信。
ACS和CPE都是支持HTTP协议,所有ACS只需要有HTTP容器就可以了。所以很自然的,我们就想到了Servlet来实现。我也不知道是啥格式的XML,但是公司催的紧,所有赶紧开工了。既然不知道怎么实现,但是CPE会定时呼叫的,所有先把它呼叫后的东西接收过来看看,到底是什么。
目前测试的CPE是H3C的AP。
第一,创建ACSServlet,准备接收消息。
代码如下:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.util.HashMap;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import com.seahigh.tyt.acs.util.AcsUtil;
/**
* ACS serverImp
*
* @author 汪心利
* @Create Time 2009-1-4下午04:34:42 (c)copy right seahigh 2009
*/
public class ACSServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException {
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// session 记住已执行的method
InputStream in = request.getInputStream();
String ip = request.getRemoteAddr();
InputStreamReader ir = new InputStreamReader(request.getInputStream());
BufferedReader input = new BufferedReader(ir);
String line;
String xml = "";
while ((line = input.readLine()) != null) {
if (line.trim().length() <= 0)
continue;
xml += line;
}
in.close();
input.close();
System.out.println(ip+"Post:"+xml);
}
}
然后在web.xml中配置Servlet了
<?xml version="1.0" encoding="UTF-8"?>
This is the description of my J2EE component
This is the display name of my J2EE component
ACS
com.seahigh.ACS
ACS
/acs/*
index.jsp
分享到:
相关推荐
TR069测试、cpe与ACS交互、openacs服务器搭建; 包含了jdk、jboss、mysql、openacs等搭建openacs所需的所有依赖包。
包含TR-069相关的全套协议规范,TR-069,TR-098,TR-111,TR-143,TR-106,TR-181 包含中国电信 规范需求,以及很具有参考价值的博客 包含ACS测试服务器
TR069 Openacs服务器搭建 目录 一、安装JDK 3 二、安装MySQL数据库及驱动 5 三、JBOSS服务器 13 四、在ANT下编译ACS源码 16 五、在JBOSS中部署编译后的openacs项目 19 六、OPENACS操作简要手册 22 1 、CPE的设置 22 ...
该压缩包中包含文件 1。TR-069中文版.rar 2。TR-069英文版.rar ...TR-069之SOAP协议规范.rar 6。TR-069之Web Services Description Language (WSDL) Version 2.0 Part 0Primer.rar 7。openacs-bin-0.3.zip
适用于CPE与自动配置服务器(ACS: Auto-Configuration Server)之间的通信协议,包括安全地自动配置及其它在公用框架下的CPE管理功能
tr069 协议 java 开发 包括acs与ape的基础知识的研究 1.基于TR069协议的运营商终端管理.pdf 2.TR069协议实现研究.pdf 3.TR-069Amendment2.pdf 4.ACSDemo+for+TR069.rar
tr-069介绍资料 来自h3c CWMP (TR-069)技术介绍 本期话题:技术点详解---新型网管理念TR-069
TR069协议详解 TR069, 全称“Technical Report 069”是由DSL Forum(一个非盈利性的全球行业联盟, 致力于发展宽带网络范, 本文档为英文版本,CWMP Version: 1.4。
TR069协议编程基础知识-RPC详细解析.pdf,TR069 协议包数据,为了能够正确的处理设备的请求响应,就必须对 TR069 协议包数据内容有所了解。我们所关心的层主要是 RPC Methods 层、 SOAP层以及 HTTP层。下面具体介绍 ...
最新的TR069 This document describes the CPE WAN ...which can be applied to any TR-069 CPE. Other documents specify the managed objects, or data models, for specific types of devices or services.
GenieACS是用于对启用TR-069的设备进行远程管理的高性能自动配置服务器(ACS)。 它利用声明性和容错配置引擎来大规模自动化复杂的配置方案。 经过实践检验,它可以处理数十万甚至数十万个并发设备。 快速开始 安装...
acs模拟器软件 用于测试tr069协议,基本对这个协议的远程调用方法有个遍历。
用户使用Acs客户端连接Acs服务器通过Http、Tr069协议对Cpe进行操作。对于整新、检测Cpe的用户可以方便、快捷的提高工作效率。用户使用Acs客户端连接Acs服务器可以对Cpe进行:恢复超密、清除Loid、语音配置、一键多...
一、TR069简介 5 二、测试实例演示 7 1.建立TR069与CPE之间的连接 7 2.通过TR069新建一条DHCP的WAN连接 15 3.查询设备信息 21 三、各个测试功能点详细操作图示 23 1.监控信息上报测试 23 2.PING诊断测试...
TR-069 适用于CPE与自动配置服务器(ACS)之间的通信协议,包括安全地自动配置及其它在公用框架下的CPE管理功能。
general device model for TR-069 ACS
Openacs:自动配置服务器--Automatic configuration server (ACS) --实现了一个CPE(客户端边缘网络提供设备,亦即普通的ADSL modern,router,wireless router等)的CWMP配置协议 CWMP在TR-069规范中有详细定义,...
Openacs是一个用Java编写的开源的ACS服务器,已经拥有了非常完善的功能,不仅仅可以作为CPE开发的辅助测试工具,而且完全可以胜任对一定数量的CPE进行远程管理
用户使用Acs客户端连接Acs服务器通过Http、Tr069协议对Cpe进行操作。对于整新、检测Cpe的用户可以方便、快捷的提高工作效率。用户使用Acs客户端连接Acs服务器可以对Cpe进行:恢复超密、清除Loid、语音配置、一键多...
TR-069所定义的框架中,主要包括两类逻辑设备:受管理的用户设备和管理服务器(ACS)。在家庭网络环境下,需要从网络侧进行配置和管理的设备,一般都是与运营商业务直接相关的设备,比如家庭网关、机顶盒、IP电话...