一种解决IPTV机顶盒PPPOE拨号失败的方法技术

技术编号:20925943 阅读:312 留言:0更新日期:2019-04-20 11:46
本发明专利技术涉及IPTV机顶盒领域,特别是涉及一种解决IPTV机顶盒PPPOE拨号失败的方法,光猫分别与局端设备、IPTV机顶盒相连,光猫上设有会话嗅探模块、会话记录模块、链路状态感知模块和会话清理模块,用于完成信息处理程序和故障排除程序;信息处理程序和故障排除程序同时进行,会话嗅探模块随时监控光猫收发的报文,同时链路状态感知模块监控光猫LAN口,判断是否出现拨号失败的问题;会话记录模块创建会话记录文件,会话清理模块,读取会话记录模块已经创建完成的会话记录文件,用其填充PADT报文,并发送PADT报文,终止IPTV机顶盒和局端设备之间的PPPOE会话,各模块之间合理分工、同步运转,用最快的速度发现并解决拨号失败的问题,可以提高效率,提升用户好感度。

A Solution to IPTV Set Top Box PPPOE Dialing Failure

The invention relates to the field of IPTV set-top box, in particular to a method for resolving the failure of PPPOE dialing in IPTV set-top box. The light cat is connected with local equipment and IPTV set-top box respectively. The light cat is equipped with session sniffing module, session recording module, link state sensing module and session cleaning module, which are used for completing information processing program and troubleshooting program. Apart from the simultaneous execution of the program, the session sniffing module monitors the messages sent and received by the light cat at any time, and the link state sensing module monitors the light cat LAN port to determine whether there is a dialing failure. The session recording module creates the session record file, the session cleaning module reads the completed session record file created by the session recording module, fills the PADT message with it, and sends the PADT message. To terminate PPPOE session between IPTV set-top box and local equipment, to divide work reasonably and run synchronously among modules, to find and solve the problem of dialing failure with the fastest speed, can improve efficiency and enhance user's good feeling.

【技术实现步骤摘要】
一种解决IPTV机顶盒PPPOE拨号失败的方法
本专利技术涉及IPTV机顶盒领域,特别是涉及一种解决IPTV机顶盒PPPOE拨号失败的方法。
技术介绍
宽带运营商现网中,IPTV机顶盒接入光猫LAN口,通过光猫与运营商局端设备通信。在IPTV机顶盒上电的时候,概率性出现PPPOE拨号失败的问题,导致IPTV机顶盒无法获取IP,不能进行网络通信,用户无法通过IPTV机顶盒收看IPTV节目。现有技术中,提出了授权公告为CN100358336C,授权公开日为2007年12月26日的中国专利技术专利文件,来解决上述存在的技术问题,该专利文献所公开的技术方案如下:一种IP机顶盒重新拨号的方法,通过保存PPPoE接入方式中的宽带接入服务器的MAC地址和PPPoE发现阶段IP机顶盒与宽带服务器确定的会话ID号以及校验信息,当IP机顶盒在异常情况下重新拨号时,把保存的相关信息读出并组拼成报文,在发送PADI报文之前先发送报文,以便终止异常情况后仍存在的链路/会话,使得PPPoE的发现阶段顺利进行,从而使IP机顶盒快速接入网络,提高了网络利用率和用户享受,并且具有很高的稳定性和有效性。上述技术方案在实际使用过程中,会出现以下问题:(1)该技术方案实在机顶盒上电或者机顶盒连接异常的时候,发送PADT报文,来通知PPPOE服务器结束会话,技术方案部署在该运营商的机顶盒上面,只能是该运营商的机顶盒或者该运营商授权的机顶盒,与光猫配合使用才能解决拨号失败的问题,不能适配所有的运营商的机顶盒,使用范围太窄。(2)该技术方案只是针对单个机顶盒,不能同时支持多个机顶盒,适用范围窄。(3)发生了异常情况后才重新拨号,检测文件SaveInfo.txt,最后才进入重新拨号的发生阶段,不能提前判断是否有异常情况,然后处理异常情况,该方法效率不高,不能提升用户的好感度。
技术实现思路
为解决上述技术问题,本专利技术提出了一种解决IPTV机顶盒PPPOE拨号失败的方法,信息处理程序和故障排除程序同时进行,实现随时且同时监控收发报文、监控LAN口连接状况,对机顶盒拨号失败的问题及时处理,合理分工,效率更高,便于提升用户体验感。本专利技术是通过采用下述技术方案实现的:一种解决IPTV机顶盒PPPOE拨号失败的方法,其特征在于:将光猫通过LAN口与IPTV机顶盒通信连接,通过WAN口与局端设备通信连接,使光猫收发PPPOE报文,并完成信息处理程序和故障排除程序;所述信息处理程序具体包括以下步骤:ⅰ.光猫上的会话嗅探模块监控光猫收发的报文,若发现特定报文,调用光猫上的会话记录模块,进入步骤ⅱ;若没有发现特定报文,则继续监控;所述特定报文是指目的地是LAN口的PADS报文;ⅱ.光猫上的会话记录模块解析PADS报文,提取有用的信息,包括源MAC地址,目的MAC地址,PPPOE会话ID和报文接收接口名称;ⅲ.光猫上的会话记录模块使用PADS报文中的目的MAC和目的接口名称,检索PPPOE会话全局链表,查看是否找到匹配的会话记录,若是,更新匹配的PPPOE会话全局链表节点中的会话信息,进入步骤ⅳ;若否,根据会话信息,新建一条PPPOE会话记录,插入PPPOE会话全局链表,进入步骤ⅳ;ⅳ.会话记录模块遍历PPPOE会话全局链表,链表的每个节点保存了一条PPPOE会话记录,将会话记录输出为一行PPPOE会话字符串,将字符串追加到全局的字符串buffer中;ⅴ.会话记录模块将全局的字符串buffer写入光猫FLASH上的PPPOE会话记录文件中;所述故障排除程序具体包括以下步骤:a.光猫上的链路状态感知模块监控光猫LAN口连接状态,若判断接口状态从已经连接状态转变为断开连接状态,调用光猫上的会话清理模块,进入步骤b;若判断接口状态没有改变,不作处理;b.光猫上的会话清理模块创建线程,清理已经断开连接的LAN口上的PPPOE会话,读取信息处理程序步骤ⅴ中会话记录模块创建的会话记录文件,填充PADT报文并发送PADT报文,终止IPTV机顶盒和局端设备之间的PPPOE会话。所述信息处理程序中步骤ⅴ中PPPOE会话记录文件是以光猫LAN口名称命名的。所述故障排除程序中步骤a具体包括以下步骤:a1.链路状态感知模块创建AF_NETLINK类型的SOCKET;将SOCKET绑定到RTMGRP_LINK组,监听SOCKET;a2.链路状态感知模块判断SOCKET是否有RTM_NEWLINK和RTM_DELLINK类型的消息到来,若否,继续监听SOCKET,若是,进入步骤a3;a3.链路状态感知模块解析接收到的消息中ifinfomsg结构体的ifi_flags成员是否被设置了IFF_RUNNING,若是,表示接口已经连接,若否,表示接口已经断开连接;a4.链路状态感知模块接收到上述消息后,遍历光猫的接口连接状态链表,通过上述消息中的接口名称字段进行匹配,并对比该接口上一次的状态,若接口状态改变,从连接状态转变为断开连接状态,更新匹配的光猫接口连接状态链表节点中对应记录,调用会话清理模块,若接口状态没有改变,不做处理。所述故障排除程序中步骤b具体包括以下步骤:b1.会话清理模块创建线程,传入已经断开连接的LAN口的名称;b2.在被创建的线程中,会话清理模块根据接收到的LAN口名称,打开对应的光猫FLASH上的PPPOE会话记录文件;b3.逐条读入PPPOE会话记录,提取有效信息,包括PPPOE报文的源MAC地址,目的MAC地址,PPPOE会话ID和报文接收接口名称;b4.创建RAWSOCKET,组建PADT包,使用步骤b3中的信息进行填充,将组建好的PADT包通过RAWSOCKET发送给局端设备,并判断会话记录是否读取完毕,若是,进入步骤b5;若否,进入步骤b3;b5.关闭会话记录文件,关闭SOCKET;退出线程。所述光猫LAN口与交换机相连,交换机与多个IPTV机顶盒相连。与现有技术相比,本专利技术的有益效果表现在:1、光猫上设有会话嗅探模块、会话记录模块、链路状态感知模块和会话清理模块,完成信息处理程序和故障排除程序,信息处理程序和故障排除程序同时进行,其中信息处理程序中包括会话嗅探模块和会话记录模块,会话嗅探模块一直监控光猫收发的报文中是否出现特定报文,便于一旦出现特定报文,能直接调用会话记录模块对其进行解析、会话信息提取并创建会话记录;故障排除程序包括链路状态感知模块和会话清理模块,链路状态感知模块一直感知模块监控光猫LAN口连接状态,一旦判断接口状态从已经连接状态转变为断开连接状态,立即快速调取会话清理模块,清理已经断开连接的LAN口上的PPPOE会话,读取会话记录模块已经创建完成的会话记录文件,用其填充PADT报文,并发送PADT报文,终止IPTV机顶盒和局端设备之间的PPPOE会话。该过程中,各模块之间合理分工且相互合作,同步运转,用最快的速度发现拨号失败的问题,且能立即处理,可以提高效率,提升用户好感度。2、链路状态感知模块一直运行,通过感知LAN口的连接状态,将其与上一次的状态进行对比,便于第一时间发现拨号失败的问题,便于后期节约前期发现问题的时间,使减少整个处理问题的时间,提高效率,且该判断方法准确。3、光猫上设有会话嗅探模块、会话记录模块、链路状态感知模块和会话清理模块,本文档来自技高网
...

【技术保护点】
1.一种解决IPTV机顶盒PPPOE拨号失败的方法,其特征在于:将光猫通过LAN口与IPTV机顶盒通信连接,通过WAN口与局端设备通信连接,使光猫收发PPPOE报文,并完成信息处理程序和故障排除程序;所述信息处理程序具体包括以下步骤:ⅰ. 光猫上的会话嗅探模块监控光猫收发的报文,若发现特定报文,调用光猫上的会话记录模块,进入步骤ⅱ;若没有发现特定报文,则继续监控;所述特定报文是指目的地是LAN口的PADS报文;ⅱ. 光猫上的会话记录模块解析PADS报文,提取有用的信息,包括源MAC地址,目的MAC地址,PPPOE会话ID和报文接收接口名称;ⅲ. 光猫上的会话记录模块使用PADS报文中的目的MAC和目的接口名称,检索PPPOE会话全局链表,查看是否找到匹配的会话记录,若是,更新匹配的PPPOE会话全局链表节点中的会话信息,进入步骤ⅳ;若否,根据会话信息,新建一条PPPOE会话记录,插入PPPOE会话全局链表,进入步骤ⅳ;ⅳ. 会话记录模块遍历PPPOE会话全局链表,链表的每个节点保存了一条PPPOE会话记录,将会话记录输出为一行PPPOE会话字符串,将字符串追加到全局的字符串buffer中;ⅴ. 会话记录模块将全局的字符串buffer写入光猫FLASH上的PPPOE会话记录文件中;所述故障排除程序具体包括以下步骤:a. 光猫上的链路状态感知模块监控光猫LAN口连接状态,若判断接口状态从已经连接状态转变为断开连接状态,调用光猫上的会话清理模块,进入步骤b;若判断接口状态没有改变,不作处理;b. 光猫上的会话清理模块创建线程,清理已经断开连接的LAN口上的PPPOE会话,读取信息处理程序步骤ⅴ中会话记录模块创建的会话记录文件,填充PADT报文并发送PADT报文,终止IPTV机顶盒和局端设备之间的PPPOE会话。...

【技术特征摘要】
1.一种解决IPTV机顶盒PPPOE拨号失败的方法,其特征在于:将光猫通过LAN口与IPTV机顶盒通信连接,通过WAN口与局端设备通信连接,使光猫收发PPPOE报文,并完成信息处理程序和故障排除程序;所述信息处理程序具体包括以下步骤:ⅰ.光猫上的会话嗅探模块监控光猫收发的报文,若发现特定报文,调用光猫上的会话记录模块,进入步骤ⅱ;若没有发现特定报文,则继续监控;所述特定报文是指目的地是LAN口的PADS报文;ⅱ.光猫上的会话记录模块解析PADS报文,提取有用的信息,包括源MAC地址,目的MAC地址,PPPOE会话ID和报文接收接口名称;ⅲ.光猫上的会话记录模块使用PADS报文中的目的MAC和目的接口名称,检索PPPOE会话全局链表,查看是否找到匹配的会话记录,若是,更新匹配的PPPOE会话全局链表节点中的会话信息,进入步骤ⅳ;若否,根据会话信息,新建一条PPPOE会话记录,插入PPPOE会话全局链表,进入步骤ⅳ;ⅳ.会话记录模块遍历PPPOE会话全局链表,链表的每个节点保存了一条PPPOE会话记录,将会话记录输出为一行PPPOE会话字符串,将字符串追加到全局的字符串buffer中;ⅴ.会话记录模块将全局的字符串buffer写入光猫FLASH上的PPPOE会话记录文件中;所述故障排除程序具体包括以下步骤:a.光猫上的链路状态感知模块监控光猫LAN口连接状态,若判断接口状态从已经连接状态转变为断开连接状态,调用光猫上的会话清理模块,进入步骤b;若判断接口状态没有改变,不作处理;b.光猫上的会话清理模块创建线程,清理已经断开连接的LAN口上的PPPOE会话,读取信息处理程序步骤ⅴ中会话记录模块创建的会话记录文件,填充PADT报文并发送PADT报文,终止IPTV机顶盒和局端设备之间的PPPOE会话。2.根据权利要求1所述的一种解决IPTV机顶盒PPPOE拨号失败的方法,其特征在于:所述信息处理程序中步骤ⅴ中PPPOE会话记录文件是以光猫LAN口名称命名的。3.根据权利...

【专利技术属性】
技术研发人员:夏波许勇黄林波
申请(专利权)人:四川天邑康和通信股份有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1