数据采集方法及装置的制造方法_3

文档序号:8322829阅读:来源:国知局
usOpcode:表示RPC操作码,本实施例中,发送采集到的HTTP信息时,操作码为3。
[0090]usResult:表示RPC返回码,RPC请求方填O ;RPC应答方填写对该请求的处理结果所对应的返回码。
[0091]ulSerialNo:表示RPC消息的唯一标识号(l_0x7FFFFFFF),由RPC请求的发送者生成(不能生成0)。
[0092]WiFi模块接收到EPON模块发送的RPC报文后,判断该RPC报文是否有效,具体的,判断RPC报文中的bHeadVers1n是否正确,或者,判断bHeadLen是否有效,如果其中任一项异常,则认为RPC报文无效,丢弃该RPC报文。
[0093]报文的消息头是为了规范报文的发送方和接收方,便于处理异常报文,以及分类处理不同类型的RPC报文。RPC报文中的有效负载部分才是HTTP数据,因此,当判断出接收到的RPC报文有效时,去除RPC报文的消息头获得RPC报文携带的HTTP数据,然后对获得的HTTP数据进行处理。
[0094]如图4所示,在图1所示实施例中的步骤SllO可以包括以下步骤:
[0095]Sill, EPON模块获取用户上网过程产生的报文。
[0096]用户上网过程中产生的所有报文通过WiFi模块发送给EPON模块。
[0097]SI 12,EPON模块从所述报文中识别出HTTP报文。
[0098]EPON模块接收到用户上网过程所产生的报文后,通过ACL(Access Control List,访问控制列表)过滤规则从所接收的报文中识别出HTTP报文。其中,ACL过滤规则是基于硬件的过滤方式。
[0099]S113,EPON模块从所述HTTP报文中提取有效信息,得到所述HTTP数据。
[0100]提取出HTTP报文后,从HTTP报文中提取有效信息,本实施例中,所述有效信息可以包括:用户的IP地址、物理端口、用户访问的网站等信息。
[0101]EPON模块从所接收的HTTP报文中提取有效信息后,再将HTTP报文中的有效信息发送给WiFi模块,无需发送除有效信息之外的其它信息,节省了发送HTTP数据占用的系统资源。
[0102]请参见图5,示出了本申请实施例一种过滤HTTP数据的方法流程示意图,该方法应用于WiFi模块中,用于过滤掉属于同一个用户的重复的HTTP数据,此过滤方法是软件过滤方式。
[0103]如图5所示,所述方法可以包括以下步骤:
[0104]S121,获取所接收的HTTP数据对应的用户信息,所述用户信息包括用户的MAC (Media Access Control,介质访问控制)地址。
[0105]HTTP数据中的有效信息包括用户的MAC地址、用户的IP地址、目的IP地址、目的端口、URL (Uniform Resource Locator,统一资源定位器)长度、URL的具体内容。
[0106]上述的有效信息中,只有用户的MAC是唯一不变的,而且每一个用户的MAC均不相同,所以根据用户的MAC来确定接收到的HTTP数据属于哪个用户。WiFi模块接收到EPON模块发送的HTTP数据后,获取该HTTP数据所属用户的MAC地址等用户信息。
[0107]S122,根据所接收的HTTP数据对应的用户信息,以及已存储的所接收的HTTP数据所属用户的HTTP数据,判断所接收的HTTP数据是否是重复数据。如果否,则执行步骤S123 ;如果是,执行步骤S124。
[0108]用户的每一条上网记录都是HTTP数据,如果用户两次访问的网站相同,相应的产生的HTTP数据也相同,如果用户的每一条上网记录都上报,将会占用过多的系统资源,因此,为了节省系统资源,只向大数据服务器上报不重复的HTTP数据。
[0109]如图6所示,步骤S122可以包括以下步骤:
[0110]S1221,判断已存储的HTTP数据对应的用户信息中是否包含所接收的HTTP数据对应的用户信息;如果否,则执行步骤S1222 ;如果是,则执行步骤S1223。
[0111]在本申请的一个实施例中,WiFi模块接收到HTTP数据后,先从HTTP数据中提取用户的MAC地址,从保存有用户的MAC地址的用户列表中查询是否包含该MAC地址。具体的,在存储HTTP数据时,可以为每个MAC地址对应一个索引号,判断是否有与所述MAC地址相匹配的索引号,如果没有匹配的索引号,则表明所述用户列表中不包含该MAC地址,即该MAC地址对应的用户是新用户,并将当前的最大索引号加I作为该MAC地址对应的索引号,将该MAC地址及对应的。如果有匹配的索引号,表明监控信息链表中已经存储有该MAC地址对应的用户的HTTP数据,继续执行步骤S1223。
[0112]S1222,确定所接收的HTTP数据不是重复数据。
[0113]如果用户列表中不包含所接收的HTTP数据对应的MAC地址,则表明该MAC地址对应的用户是新用户,则确定该HTTP数据不是重复数据。
[0114]S1223,判断所接收的HTTP数据对应用户的已存储的HTTP数据中是否包含所接收的HTTP数据;如果是,则执行步骤S1224 ;如果否,则执行步骤S1222,确定所接收的HTTP数据不是重复数据。
[0115]根据与所述MAC地址相匹配的索引号判断该用户保存在监控信息链表中的所有HTTP数据是否与刚收到的HTTP数据重复,具体的,判断HTTP数据所包含的目的IP、目的端口、URL长度、URL这几项是否相同。
[0116]S1224,确定所接收的HTTP数据是重复数据。
[0117]如果监控信息链表中保存的该用户的HTTP数据与接收到的HTTP数据所包含的上述项都相同,则确定接收到的HTTP数据是重复数据;如果存在至少一项不相同,则确定所接收的HTTP数据不是重复数据。
[0118]S123,将所接收的HTTP数据作为过滤后的HTTP数据进行存储。
[0119]将所接收的HTTP数据打包成节点数据,添加到所属用户的监控信息链表中。用户的一条HTTP数据(即,一条上网记录)打包成一个节点数据,每个用户可能对应多个节点数据。
[0120]S124,丢弃所接收的HTTP数据。
[0121]本实施例提供的数据过滤方式,首先判断已存储的HTTP数据中是否存在与所接收的HTTP数据属于同一用户的HTTP数据,如果不存在,则所接收的HTTP数据不是重复数据;如果存在,则继续判断已存储的该用户的HTTP数据中是否包含与所接收的HTTP数据完全相同的数据,如果不存在,则所接收的HTTP数据不是重复数据。
[0122]WiFi模块以UDP (User Datagram Protocol,用户数据报协议)报文向大数据服务器发送HTTP数据,其中,UDP报文的数据部分封装有大数据报文,如图7所示,所述大数据报文包括消息头(head)和消息体(body);
[0123]所述消息头包括:协议版本号(vers1n)、消息头长度(head_len)、预留位(reserved)、消息数(msg_num)、响应结果(result)、消息体长度(body_len)、序列号(serialNo)和校验码(fcs);
[0124]vers1n:表示协议的版本,各处理模块必须校验该版本号,针对不同的版本号进行不同的处理,目前暂定为I。
[0125]head_len:表示消息头的长度,长度为14个字节。
[0126]reserved:留待后续扩展使用,目前暂定为O。
[0127]mSg_num:消息数,用于表征一个报文中包含的不同类型的数据的数量,大数据报文中的数据类型只有一种。
[0128]result:表示响应结果。
[0129]body_len:表示消息体的长度。
[0130]serialNo:表示序列号,主要用于检测报文是否发送成功。
[0131]fcs:表示校验码,暂定为O。
[0132]所述消息体(body)包括消息类型(type)、报文内容(value)、消息长度(Ien);
[0133]消息长度(Ien):表示value的长度;
[0134]报文内容(value):表示具体的报文内容;
[0135]消息类型(type)包含消息类型(msg_type)、源系统(src_sys_id)、目的系统(dst_sys_id)、模块标识(module_id)和命令字(co_and);
[0136]msg_type:表示消息类型,具体的,I一配置,2—命令,3—响应,4一查询,5—通知,6—增加,7—删除,8—修改;大数据报文的msg_type为5 ;
[0137]src_sys_id:消息发送的源系统:1一AP系统,2一support系
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1