《基于LINUX软件实现上行QOS调度的方法及装置.pdf》由会员分享,可在线阅读,更多相关《基于LINUX软件实现上行QOS调度的方法及装置.pdf(14页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 102916901 A (43)申请公布日 2013.02.06 C N 1 0 2 9 1 6 9 0 1 A *CN102916901A* (21)申请号 201210388838.3 (22)申请日 2012.10.12 H04L 12/851(2013.01) H04L 29/06(2006.01) (71)申请人烽火通信科技股份有限公司 地址 430074 湖北省武汉市东湖开发区关东 科技园东信路5号 (72)发明人李华敏 田智炜 颜靓 屈兰 (74)专利代理机构北京捷诚信通专利事务所 (普通合伙) 11221 代理人魏殿绅 庞炳良 (54) 发明名称 基于。
2、Linux软件实现上行QoS调度的方法及 装置 (57) 摘要 本发明公开了一种基于Linux软件实现上 行QoS调度的方法及装置,涉及IP网络数据传 输领域,该方法为:将家庭网关设备的上行数据 汇聚到一个IMQ虚拟接口设备上进行限速,实现 了数据包的流量控制和调度,同时没改变家庭网 关内部数据的流向;在家庭网关设备上行数据出 口IMQ虚拟接口设备处,识别数据包的特征,通过 数据包特征和优先级队列之间的对应关系,将数 据包放到不同的优先级队列中,优先级队列按照 绝对优先级策略来处理各自队列中的数据包,实 现了对数据包转发的优先级保证。本发明基于 Linux软件方式,实现对数据包的分类、调度、标。
3、 记功能,在基于Linux内核的家庭网关设备中实 现上行Qos调度,能降低硬件成本,提高市场竞争 力。 (51)Int.Cl. 权利要求书3页 说明书8页 附图2页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 3 页 说明书 8 页 附图 2 页 1/3页 2 1.一种基于Linux软件实现上行QoS调度的方法,其特征在于,包括以下步骤: A、在家庭网关设备中采用IMQ虚拟接口设备,若判定已经开启QoS,则采用软件方式将 所有的Linux网络接口WAN侧流出的上行数据流量统一汇聚到IMQ虚拟接口设备,并在IMQ 虚拟接口设备中对数据流量进行限速、调度,且数据流量保持。
4、原先的转发关系; B、检查数据包中源应用的标识,识别该数据包由哪种类型的应用产生,根据业务种类 对数据包进行分类;若判定QoS保障规则中包括VoIP业务,同时在家庭网关的上行数据流 量中也存在符合VoIP业务特征的数据包,则在IMQ虚拟接口设备中对符合VoIP业务特征 的数据包进行调度、标记,再转到步骤C;否则直接转到步骤C; C、若判定QoS保障规则中包括TR069业务,同时在家庭网关的上行数据流量中也存在 符合TR069业务特征的数据包,则在IMQ虚拟接口设备中对符合TR069业务特征的数据包 进行调度、标记,再转到步骤D;否则直接转到步骤D; D、若判定QoS保障规则中包括IPTV业务,。
5、同时在家庭网关的上行数据流量中也存在 符合IPTV业务特征的数据包,则根据IPTV数据从其他桥WAN连接网络接口流出的特征,在 IMQ虚拟接口设备中对符合IPTV业务特征的数据包进行调度、标记,再转到步骤E;否则直 接转到步骤E; E、若判定QoS保障规则中包括DSCP、802.1p标签、源IP、目的IP、源端口、目的端口这 些特征,同时在家庭网关的上行数据流量中也存在符合这些特征的数据包,则在IMQ虚拟 接口设备中对符合这些特征的数据包进行调度、标记,至此结束;否则直接结束。 2.如权利要求1所述的基于Linux软件实现上行QoS调度的方法,其特征在于:步骤A 中所述IMQ虚拟接口设备采用L。
6、inux工具TC对数据流量进行限速、调度。 3.如权利要求1所述的基于Linux软件实现上行QoS调度的方法,其特征在于:步骤B 中所述在IMQ虚拟接口设备中对符合VoIP业务特征的数据包进行调度的过程为:IMQ虚拟 接口设备将符合VoIP业务特征的数据包匹配特定数值,完成数据包的识别,并放置到优先 级队列中,进行优先级保障。 4.如权利要求3所述的基于Linux软件实现上行QoS调度的方法,其特征在于:所述 VoIP业务特征分为协议信令部分和语音媒体流部分,对于SIP协议信令流量,特征为发出 的数据包目的端口号为确定数值;对于H.248协议信令流量,特征为上行数据包目的端口 号为确定数值;对。
7、于语音的RTP报文,设备的交换芯片设置的DSCP值作为特征,发出的数据 包中的DSCP值为确定数值。 5.如权利要求1所述的基于Linux软件实现上行QoS调度的方法,其特征在于:步骤 C中所述在IMQ虚拟接口设备中设备对符合TR069业务特征的数据包进行调度的过程为: IMQ虚拟接口设备将符合TR069业务特征的数据包匹配特定数值,完成数据包的识别,并放 置到优先级队列中,进行优先级保障。 6.如权利要求5所述的基于Linux软件实现上行QoS调度的方法,其特征在于:所述 TR069业务特征是上行数据包目的端口为确定数值。 7.如权利要求1所述的基于Linux软件实现上行QoS调度的方法,其。
8、特征在于:步骤D 中所述在IMQ虚拟接口设备中对符合IPTV业务特征的数据包进行调度的过程为:IMQ虚拟 接口设备将符合IPTV业务特征的数据包匹配特定的数值,完成数据包的识别,并放置到优 先级队列中,进行优先级保障。 权 利 要 求 书CN 102916901 A 2/3页 3 8.如权利要求7所述的基于Linux软件实现上行QoS调度的方法,其特征在于:所述 IPTV业务特征是:上行数据均在其他桥WAN连接中,从此WAN连接中所对应的网络接口发 出的数据包就是符合IPTV业务特征的数据包。 9.如权利要求1所述的基于Linux软件实现上行QoS调度的方法,其特征在于:步骤 E中所述在IMQ。
9、虚拟接口设备中对符合这些特征的数据包进行调度的过程为:IMQ虚拟接口 设备将符合DSCP、802.1p标签、源IP、目的IP、源端口、目的端口这些特征的数据包匹配特 定的条件数值,完成数据包的识别,并放置到优先级队列中,进行优先级保障。 10.如权利要求1至9中任一项所述的基于Linux软件实现上行QoS调度的方法,其特 征在于:所述IMQ虚拟接口设备采用Linux 内核集成的 IP 信息包过滤系统iptables工 具,对实现调度的各种业务数据流量进行标记。 11.一种基于Linux软件实现上行QoS调度的装置,其特征在于,包括QoS开启触发模 块、汇聚模块和IMQ虚拟接口设备,其中: 所述。
10、QoS开启触发模块,用于:若判定已经开启QoS,则产生汇聚触发信号,并发送到汇 聚模块; 所述汇聚模块,用于:收到汇聚触发信号后,针对家庭网关设备数据流向,采用软件方 式将所有的Linux网络接口WAN侧流出的上行数据流量统一汇聚到IMQ虚拟接口设备; 所述IMQ虚拟接口设备,用于:根据业务种类对数据包进行分类;采用Linux工具TC, 实现数据包的流量控制和调度,且数据流量仍然保持原先的转发关系;采用Linux内核集 成的IP信息包过滤系统iptables工具,对实现调度的各种业务数据流量进行标记。 12.如权利要求11所述的基于Linux软件实现上行QoS调度的装置,其特征在于:所 述IM。
11、Q虚拟接口设备包括分类模块、VoIP业务判断模块、VoIP业务调度模块、TR069业务判 断模块、TR069业务调度模块、IPTV业务判断模块、IPTV业务调度模块、其它业务判断模块、 其它业务调度模块和业务设置模块,其中: 所述分类模块,用于:检查数据包中源应用的标识,识别该数据包由哪种类型的应用产 生,根据业务种类对数据包进行分类; 所述VoIP业务判断模块,用于:判断QoS保障目标中是否存在VoIP业务,如果QoS保 障规则中包括VoIP业务,同时在家庭网关的上行数据流量中也存在符合VoIP业务特征的 数据包,则产生VoIP业务调度触发信号,发送到VoIP业务调度模块;否则产生TR069。
12、业务 判断触发信号,发送到TR069业务判断模块; 所述VoIP业务调度模块,用于:收到VoIP业务调度触发信号后,将符合VoIP业务特征 的数据包匹配特定数值,完成数据包的识别,并放置到优先级队列中,进行优先级保障;然 后产生VoIP业务设置触发信号,发送到业务设置模块;并产生TR069业务判断触发信号,发 送到TR069业务判断模块; 所述TR069业务判断模块,用于:收到TR069业务判断触发信号后,判断QoS保障目标 中是否存在TR069业务,如果QoS保障规则中包括TR069业务,同时在家庭网关的上行数 据流量中也存在符合TR069业务特征的数据包,则产生TR069业务调度触发信号,。
13、发送到 TR069业务调度模块;否则,产生IPTV业务判断触发信号,发送到IPTV业务判断模块; 所述TR069业务调度模块,用于:收到TR069业务调度触发信号后,将符合TR069业 务特征的数据包匹配特定数值,完成数据包的识别,并放置到优先级队列中,进行优先级保 权 利 要 求 书CN 102916901 A 3/3页 4 障;然后产生TR069业务设置触发信号,发送到业务设置模块;并产生IPTV业务判断触发 信号,发送到IPTV业务判断模块; 所述IPTV业务判断模块,用于:收到IPTV业务判断触发信号后,判断QoS保障目标中 是否存在IPTV业务,如果QoS保障规则中包括IPTV业务,。
14、同时在家庭网关的上行数据流量 中也存在符合IPTV业务特征的数据包,则产生IPTV业务调度触发信号,发送到IPTV业务 调度模块;否则,产生其它业务判断触发信号,发送到其它业务判断模块; 所述IPTV业务调度模块,用于:收到IPTV业务调度触发信号后,根据IPTV数据从 Other Bridge WAN连接网络接口流出的特征,将符合IPTV业务特征的数据包匹配特定的 数值,完成数据包的识别,并放置到优先级队列中,进行优先级保障;然后产生IPTV业务设 置触发信号,发送到业务设置模块;并产生其它业务判断触发信号,发送到其它业务判断模 块; 所述其它业务判断模块,用于:收到TR069业务判断触发信。
15、号后,判断QoS保障目标中 是否存在其它特征,如果QoS保障规则中包括DSCP、802.1p标签、源IP、目的IP、源端口、目 的端口等其它特征,同时在家庭网关的上行数据流量中也存在符合上述特征的数据包,则 产生其它业务调度触发信号,发送到其它业务调度模块;否则不做处理,结束; 所述其它业务调度模块,用于:收到其它业务调度触发信号后,对符合DSCP、802.1p标 签、源IP、目的IP、源端口、目的端口这些特征的数据包,匹配特定的条件数值,完成数据包 的识别,并放置到优先级队列中,进行优先级保障;然后产生其它业务设置触发信号,发送 到业务设置模块; 所述业务设置模块,用于:采用Linux ip。
16、tables工具,根据收到的各种业务设置触发 信号,对实现优先级保障后的各种业务数据流量进行设置:将符合设定特征的IP数据包报 文中的特定字段修改为设定值,以便家庭网关对数据包特征进行判断,然后将判断后的符 合设定特征的数据包进行标记:将符合设定条件的数据包的DSCP值或者802.1p值标记为 设定值,以便组网中家庭网关设备上的其他设备按照此值进行数据包特征识别和使用它, 而不用再做额外的业务判断。 13.如权利要求12所述的基于Linux软件实现上行QoS调度的装置,其特征在于:所 述VoIP业务特征分为协议信令部分和语音媒体流部分,对于SIP协议信令流量,特征为发 出的数据包目的端口号为确。
17、定数值;对于H.248协议信令流量,特征为上行数据包目的端 口号为确定数值;对于语音的RTP报文,设备的交换芯片设置的DSCP值作为特征,发出的数 据包中的DSCP值为确定数值。 14.如权利要求12所述的基于Linux软件实现上行QoS调度的装置,其特征在于:所 述TR069业务特征是:上行数据包目的端口为确定数值。 15.如权利要求12所述的基于Linux软件实现上行QoS调度的装置,其特征在于:所 述IPTV业务特征是:上行数据均在其它桥这条WAN连接中,从此WAN连接中所对应的网络 接口发出的数据包就是符合IPTV业务特征的数据包。 权 利 要 求 书CN 102916901 A 1/。
18、8页 5 基于 Linux 软件实现上行 QoS 调度的方法及装置 技术领域 0001 本发明涉及IP(Internet Protocol,网际协议)网络数据传输领域,特别是涉及 一种基于Linux(一种嵌入式操作系统)软件实现上行QoS(Quality of Service,服务质 量)调度的方法及装置。 背景技术 0002 QoS是网络设备所实现的一种保障数据流量的安全机制,通常情况下用来改善网 络数据包延迟和阻塞问题。 0003 目前网络中诸如VoIP(Voice over Internet Protocol,基于IP协议的语音电 话)、IPTV(Internet Protocol Te。
19、levision,交互式网络电视)等实时性业务应用越来越广 泛,这些实时性的业务对数据包的收发时延要求高,在正常情况下,如果网络只用于特定的 无时间限制的应用系统,并不特别需要QoS,例如Web(网页)应用或者E-mail(电子邮件) 设置等。但是,对于关键应用或多媒体应用,QoS就显得十分重要,当网络过载或拥塞时,QoS 能确保重要业务的数据流量不受延迟或丢弃,同时保证网络的高效运行。 0004 家庭网关设备要实现上行QoS调度,必须实现分类、调度、标记这3个功能,其中, 分类是指具有QoS的网络设备能够识别哪种类型的应用、产生哪种类型的数据包。如果没 有实现分类功能,网络就不能确定对特殊数。
20、据包要进行哪种类型的的处理。所有应用都会 在数据包上留下可以用来识别源应用的标识,实现分类功能就是检查这些标识,识别数据 包是由哪种类型的应用产生的。 0005 目前有6种方式实现分类功能: 0006 (1)根据数据包协议类型进行分类:可以通过数据包的EtherType(以太网数据包 的一个字段)进行识别,例如,AppleTalk协议(苹果公司制定的一种通信协议)采用0x809B (字段数值),IPX(Internetwork Packet Exchange protocol,互联网分组协议)使用0x8137 (字段数值),网络设备通过检查数据包的网络类型,对数据包进行QoS分类。 0007 。
21、(2)根据数据包TCP(Transmission Control Protocol,传输控制协议)端口和 UDP(User Datagram Protocol,用户数据报协议)端口进行分类,例如,HTTP(HyperText Transfer Protocol,超文本传送协议)采用TCP协议80端口,网络设备通过检查数据包的 端口号,对数据包进行QoS分类。 0008 (3)根据数据包源IP地址进行分类,例如,有的服务器是专门针对单一应用而配 置的,这种情况下可以针对数据包的源IP地址对数据包进行QoS分类。 0009 (4)根据数据包流入网络设备的物理端口进行分类,例如,服务器直连在网络设备。
22、 的某个物理端口上时,可以通过这个物理端口号对数据包进行分类。 0010 (5)根据DSCP(Differentiated Services Code Point,差分服务代码点)标签 进行分类,例如,对于某些VoIP应用,数据流会有特定的DSCP值,可以根据收到的数据包的 DSCP值对数据包进行QoS分类。 0011 (6)根据IEEE(Institute of Electrical and Electronics Engineers, 说 明 书CN 102916901 A 2/8页 6 美国电气和电子工程师协会) 802.1P(LAN Layer 2 QoS/CoS Protocol f。
23、or Traffic Prioritization,有关流量优先级的LAN第二层QoS/CoS协议)标签进行分类,例如,对于某 些应用,数据流会有特定的802.1P值,可以根据收到的数据包中的802.1P值对数据包进行 QoS分类。 0012 调度的作用是:在设备带宽有限的情况下,通过调度让需要更高服务质量的数据 包优先通过。调度需要优先级队列作为保证,所有数据包依据分类,可以划分进不同的优先 级队列中,由优先级队列实现调度的效果,优先级队列一般有2种排队方式: 0013 (1)严格优先,是一种最简单的排队方式,首先为最高优先级的队列进行服务,直 到该队列为空,然后为下一个次高优先级队列服务。。
24、这种方法的优势是高优先级业务总是 在低优先级业务之前处理,但是,低优先级业务有可能被高优先级业务完全阻塞。 0014 (2)加权循环,这种方法为所有业务队列服务,并且将优先权分配给较高优先级队 列。在大多数情况下,相对低优先级,加权循环将首先处理高优先级,加权循环优先级调度 是加权平均,不会出现低优先级永远无法调度的情况,当高优先级业务很多时,较低优先级 的业务并没有被完全阻塞。 0015 在识别数据包之后,可以对需要标记的数据包进行标记,这样其他网络设备才能 方便地识别这种类型的数据包,确保网络上的交换机或路由器可以对该应用进行优先级处 理,可以通过标记802.1p值或DSCP值来达到标记数。
25、据包的目的。 0016 由于家庭网关设备的数据流量比其他网关设备的数据流量小,且家庭网关设备的 生命周期较短,因此运营商要求尽可能提高家庭网关设备内功能模块的通用性,降低硬件 成本,以提高市场竞争力。但是,目前网关设备一般通过额外增加交换芯片,采用硬件方式, 实现对上行业务流量QoS保障的功能,对硬件要求较高,导致成本较高。 发明内容 0017 本发明的目的是为了克服上述背景技术的不足,提供一种基于Linux软件实现上 行QoS调度的方法及装置,基于Linux软件方式,实现对数据包的分类、调度、标记功能,在 含有Linux内核的家庭网关设备中实现上行Qos调度功能,能够降低硬件成本,提高市场竞。
26、 争力。 0018 本发明提供的基于Linux软件实现上行QoS调度的方法,包括以下步骤: 0019 A、在家庭网关设备中采用IMQ虚拟接口设备,若判定已经开启QoS,则采用软件方 式将所有的Linux网络接口WAN侧流出的上行数据流量统一汇聚到IMQ虚拟接口设备,并 在IMQ虚拟接口设备中对数据流量进行限速、调度,且数据流量保持原先的转发关系; 0020 B、检查数据包中源应用的标识,识别该数据包由哪种类型的应用产生,根据业务 种类对数据包进行分类;若判定QoS保障规则中包括VoIP业务,同时在家庭网关的上行数 据流量中也存在符合VoIP业务特征的数据包,则在IMQ虚拟接口设备中对符合VoI。
27、P业务 特征的数据包进行调度、标记,再转到步骤C;否则直接转到步骤C; 0021 C、若判定QoS保障规则中包括TR069业务,同时在家庭网关的上行数据流量中也 存在符合TR069业务特征的数据包,则在IMQ虚拟接口设备中对符合TR069业务特征的数 据包进行调度、标记,再转到步骤D;否则直接转到步骤D; 0022 D、若判定QoS保障规则中包括IPTV业务,同时在家庭网关的上行数据流量中也存 说 明 书CN 102916901 A 3/8页 7 在符合IPTV业务特征的数据包,则根据IPTV数据从其他桥WAN连接网络接口流出的特征, 在IMQ虚拟接口设备中对符合IPTV业务特征的数据包进行调。
28、度、标记,再转到步骤E;否则 直接转到步骤E; 0023 E、若判定QoS保障规则中包括DSCP、802.1p标签、源IP、目的IP、源端口、目的端 口这些特征,同时在家庭网关的上行数据流量中也存在符合这些特征的数据包,则在IMQ 虚拟接口设备中对符合这些特征的数据包进行调度、标记,至此结束;否则直接结束。 0024 在上述技术方案中,步骤A中所述IMQ虚拟接口设备采用Linux工具TC对数据流 量进行限速、调度。 0025 在上述技术方案中,步骤B中所述在IMQ虚拟接口设备中对符合VoIP业务特征 的数据包进行调度的过程为:IMQ虚拟接口设备将符合VoIP业务特征的数据包匹配特定数 值,完成。
29、数据包的识别,并放置到优先级队列中,进行优先级保障。 0026 在上述技术方案中,所述VoIP业务特征分为协议信令部分和语音媒体流部分,对 于SIP协议信令流量,特征为发出的数据包目的端口号为确定数值;对于H.248协议信令流 量,特征为上行数据包目的端口号为确定数值;对于语音的RTP报文,设备的交换芯片设置 的DSCP值作为特征,发出的数据包中的DSCP值为确定数值。 0027 在上述技术方案中,步骤C中所述在IMQ虚拟接口设备中设备对符合TR069业务 特征的数据包进行调度的过程为:IMQ虚拟接口设备将符合TR069业务特征的数据包匹配 特定数值,完成数据包的识别,并放置到优先级队列中,进。
30、行优先级保障。 0028 在上述技术方案中,所述TR069业务特征是上行数据包目的端口为确定数值。 0029 在上述技术方案中,步骤D中所述在IMQ虚拟接口设备中对符合IPTV业务特征的 数据包进行调度的过程为:IMQ虚拟接口设备将符合IPTV业务特征的数据包匹配特定的数 值,完成数据包的识别,并放置到优先级队列中,进行优先级保障。 0030 在上述技术方案中,所述IPTV业务特征是:上行数据均在其他桥WAN连接中,从此 WAN连接中所对应的网络接口发出的数据包就是符合IPTV业务特征的数据包。 0031 在上述技术方案中,步骤E中所述在IMQ虚拟接口设备中对符合这些特征的数据 包进行调度的过。
31、程为:IMQ虚拟接口设备将符合DSCP、802.1p标签、源IP、目的IP、源端口、 目的端口这些特征的数据包匹配特定的条件数值,完成数据包的识别,并放置到优先级队 列中,进行优先级保障。 0032 在上述技术方案中,所述IMQ虚拟接口设备采用Linux 内核集成的 IP 信息包过 滤系统iptables工具,对实现调度的各种业务数据流量进行标记。 0033 本发明还提供一种基于Linux软件实现上行QoS调度的装置,包括QoS开启触发 模块、汇聚模块和IMQ虚拟接口设备,其中: 0034 所述QoS开启触发模块,用于:若判定已经开启QoS,则产生汇聚触发信号,并发送 到汇聚模块; 0035 。
32、所述汇聚模块,用于:收到汇聚触发信号后,针对家庭网关设备数据流向,采用软 件方式将所有的Linux网络接口WAN侧流出的上行数据流量统一汇聚到IMQ虚拟接口设 备; 0036 所述IMQ虚拟接口设备,用于:根据业务种类对数据包进行分类;采用Linux工具 TC,实现数据包的流量控制和调度,且数据流量仍然保持原先的转发关系;采用Linux内核 说 明 书CN 102916901 A 4/8页 8 集成的IP信息包过滤系统iptables工具,对实现调度的各种业务数据流量进行标记。 0037 在上述技术方案中,所述IMQ虚拟接口设备包括分类模块、VoIP业务判断模块、 VoIP业务调度模块、TR0。
33、69业务判断模块、TR069业务调度模块、IPTV业务判断模块、IPTV 业务调度模块、其它业务判断模块、其它业务调度模块和业务设置模块,其中: 0038 所述分类模块,用于:检查数据包中源应用的标识,识别该数据包由哪种类型的应 用产生,根据业务种类对数据包进行分类; 0039 所述VoIP业务判断模块,用于:判断QoS保障目标中是否存在VoIP业务,如果QoS 保障规则中包括VoIP业务,同时在家庭网关的上行数据流量中也存在符合VoIP业务特征 的数据包,则产生VoIP业务调度触发信号,发送到VoIP业务调度模块;否则产生TR069业 务判断触发信号,发送到TR069业务判断模块; 0040。
34、 所述VoIP业务调度模块,用于:收到VoIP业务调度触发信号后,将符合VoIP业 务特征的数据包匹配特定数值,完成数据包的识别,并放置到优先级队列中,进行优先级保 障;然后产生VoIP业务设置触发信号,发送到业务设置模块;并产生TR069业务判断触发 信号,发送到TR069业务判断模块; 0041 所述TR069业务判断模块,用于:收到TR069业务判断触发信号后,判断QoS保障 目标中是否存在TR069业务,如果QoS保障规则中包括TR069业务,同时在家庭网关的上行 数据流量中也存在符合TR069业务特征的数据包,则产生TR069业务调度触发信号,发送到 TR069业务调度模块;否则,产。
35、生IPTV业务判断触发信号,发送到IPTV业务判断模块; 0042 所述TR069业务调度模块,用于:收到TR069业务调度触发信号后,将符合TR069 业务特征的数据包匹配特定数值,完成数据包的识别,并放置到优先级队列中,进行优先级 保障;然后产生TR069业务设置触发信号,发送到业务设置模块;并产生IPTV业务判断触 发信号,发送到IPTV业务判断模块; 0043 所述IPTV业务判断模块,用于:收到IPTV业务判断触发信号后,判断QoS保障目 标中是否存在IPTV业务,如果QoS保障规则中包括IPTV业务,同时在家庭网关的上行数据 流量中也存在符合IPTV业务特征的数据包,则产生IPTV。
36、业务调度触发信号,发送到IPTV 业务调度模块;否则,产生其它业务判断触发信号,发送到其它业务判断模块; 0044 所述IPTV业务调度模块,用于:收到IPTV业务调度触发信号后,根据IPTV数据从 Other Bridge WAN连接网络接口流出的特征,将符合IPTV业务特征的数据包匹配特定的 数值,完成数据包的识别,并放置到优先级队列中,进行优先级保障;然后产生IPTV业务设 置触发信号,发送到业务设置模块;并产生其它业务判断触发信号,发送到其它业务判断模 块; 0045 所述其它业务判断模块,用于:收到TR069业务判断触发信号后,判断QoS保障目 标中是否存在其它特征,如果QoS保障规。
37、则中包括DSCP、802.1p标签、源IP、目的IP、源端 口、目的端口等其它特征,同时在家庭网关的上行数据流量中也存在符合上述特征的数据 包,则产生其它业务调度触发信号,发送到其它业务调度模块;否则不做处理,结束; 0046 所述其它业务调度模块,用于:收到其它业务调度触发信号后,对符合DSCP、 802.1p标签、源IP、目的IP、源端口、目的端口这些特征的数据包,匹配特定的条件数值,完 成数据包的识别,并放置到优先级队列中,进行优先级保障;然后产生其它业务设置触发信 号,发送到业务设置模块; 说 明 书CN 102916901 A 5/8页 9 0047 所述业务设置模块,用于:采用Li。
38、nux iptables工具,根据收到的各种业务设置 触发信号,对实现优先级保障后的各种业务数据流量进行设置:将符合设定特征的IP数据 包报文中的特定字段修改为设定值,以便家庭网关对数据包特征进行判断,然后将判断后 的符合设定特征的数据包进行标记:将符合设定条件的数据包的DSCP值或者802.1p值标 记为设定值,以便组网中家庭网关设备上的其他设备按照此值进行数据包特征识别和使用 它,而不用再做额外的业务判断。 0048 在上述技术方案中,所述VoIP业务特征分为协议信令部分和语音媒体流部分,对 于SIP协议信令流量,特征为发出的数据包目的端口号为确定数值;对于H.248协议信令流 量,特征为。
39、上行数据包目的端口号为确定数值;对于语音的RTP报文,设备的交换芯片设置 的DSCP值作为特征,发出的数据包中的DSCP值为确定数值。 0049 在上述技术方案中,所述TR069业务特征是:上行数据包目的端口为确定数值。 0050 在上述技术方案中,所述IPTV业务特征是:上行数据均在其它桥这条WAN连接中, 从此WAN连接中所对应的网络接口发出的数据包就是符合IPTV业务特征的数据包。 0051 与现有技术相比,本发明的优点如下: 0052 本发明将家庭网关设备的上行数据汇聚到一个IMQ虚拟接口设备上进行限速,实 现了数据包的流量控制和调度,同时没改变家庭网关内部数据的流向;在家庭网关设备上。
40、 行数据出口IMQ虚拟接口设备处,识别出数据包的特征,通过数据包特征和优先级队列之 间的对应关系,将数据包放置到不同的优先级队列中,优先级队列按照绝对优先级策略来 处理各自队列中的数据包,实现了对数据包转发的优先级保证。 0053 本发明基于Linux软件方式,实现对数据包的分类、调度、标记功能,在含有Linux 内核的家庭网关设备中实现上行Qos调度功能,避免了通过硬件方式实现分类、调度、标记 功能,降低对硬件功能性的要求,能够降低硬件成本,提高市场竞争力。 附图说明 0054 图1是本发明实施例中家庭网关设备内部流量的转向示意图。 0055 图2是本发明实施例中基于Linux软件实现上行Q。
41、oS调度的方法的流程图。 具体实施方式 0056 下面结合附图及具体实施例对本发明作进一步的详细描述。 0057 本发明实施例中的数据流向参见图1所示,其中Internet数据流量和IPTV 数据流量由家庭网关下挂设备产生和使用,家庭网关下挂设备包括但不限于机顶盒、 PC(Personal Computer,个人计算机)、智能终端等。先由家庭网关从LAN(Local Area Network,局域网)侧将Internet数据和IPTV数据转发到WAN(Wide Area Network,广域 网)侧,再由家庭网关设备从家庭网关WAN侧发出Internet数据和IPTV数据;TR069(由 数字。
42、用户线路论坛开发的技术规范之一,用于实现平台对终端设备的业务下发)数据流量 和VoIP数据流量由家庭网关设备内部产生和使用,不需要家庭网关进行转发,家庭网关设 备直接从家庭网关WAN侧发出TR069数据和VoIP数据。 0058 参见图2所示,本发明实施例提供一种基于Linux软件实现上行QoS调度的方法, 包括以下步骤: 说 明 书CN 102916901 A 6/8页 10 0059 S1、判断是否已经开启QoS,如果已经开启QoS,则转到步骤S2;否则结束; 0060 S2、家庭网关设备由于同时可以提供多种服务,例如VoIP、TR069、IPTV、Internet, 所以在家庭网关设备中。
43、,通常存在多条WAN(Wide Area Network,广域网)链接,各条WAN 链接使用各自的网络接口在网络中进行双向通信,但是对于家庭网关设备实现上行QoS调 度,就需要设备在上行的一个统一接口中实现限速。 0061 在家庭网关设备中采用IMQ(Intermediate Queueing device,中介队列设备)虚 拟接口设备,针对家庭网关设备数据流向,采用软件方式将所有的Linux网络接口WAN侧流 出的上行数据流量统一汇聚到IMQ虚拟接口设备,并在IMQ虚拟接口设备中,采用Linux工 具TC(基于Linux内核的流量控制、流量整形工具软件)对数据流量进行限速、调度,经过 IMQ。
44、虚拟接口设备后,实现了数据包的流量控制和调度,同时没改变家庭网关内部数据的流 向,即数据流量仍然保持原先的转发关系,转到步骤S3; 0062 S3、检查数据包中源应用的标识,识别该数据包由哪种类型的应用产生,根据业务 种类对数据包进行分类;判断QoS保障目标中是否存在VoIP业务,如果QoS保障规则中包 括VoIP业务,则转到步骤S4;否则转到步骤S5; 0063 S4、如果QoS保障规则中包括VoIP业务,同时在家庭网关的上行数据流量中也存 在符合VoIP业务特征的数据包,则在IMQ虚拟接口设备中对符合VoIP业务特征的数据包 进行调度、标记:VoIP业务特征分为协议信令部分和语音媒体流部分。
45、,对于SIP(Session Initiation Protocol,会话初始化协议)协议信令流量,特征为发出的数据包目的端口号 为确定数值;对于H.248协议信令流量,特征为上行数据包目的端口号为确定数值;对于语 音的RTP(Real-time Transport Protocol,实时传送协议)报文,设备的交换芯片设置的 DSCP值作为特征,发出的数据包中的DSCP值为确定数值;IMQ虚拟接口设备将符合VoIP业 务特征的数据包匹配特定数值,完成数据包的识别,并放置到优先级队列中,进行优先级保 障;IMQ虚拟接口设备采用Linux iptables(Linux 内核集成的 IP 信息包过滤。
46、系统)工 具,对实现调度的VoIP业务数据流量进行标记,转到步骤S5; 0064 S5、判断QoS保障目标中是否存在TR069业务,如果QoS保障规则中包括TR069业 务,则转到步骤S6;否则转到步骤S7; 0065 S6、如果QoS保障规则中包括TR069业务,同时在家庭网关的上行数据流量中也存 在符合TR069业务特征的数据包,则在IMQ虚拟接口设备中对符合TR069业务特征的数据 包进行调度、标记:TR069业务特征是上行数据包目的端口为确定数值,IMQ虚拟接口设备 将符合TR069业务特征的数据包匹配特定数值,完成数据包的识别,并放置到优先级队列 中,进行优先级保障;IMQ虚拟接口设。
47、备采用Linux iptables工具,对实现调度的TR069业 务数据流量进行标记,转到步骤S7; 0066 S7、判断QoS保障目标中是否存在IPTV业务,如果QoS保障规则中包括IPTV业务, 则转到步骤S8;否则转到步骤S9; 0067 S8、如果QoS保障规则中包括IPTV业务,同时在家庭网关的上行数据流量中也存 在符合IPTV业务特征的数据包,则根据IPTV数据从Other Bridge(其他桥,用于家庭网 关中IPTV数据流量的WAN链接通道)WAN连接网络接口流出的特征,在IMQ虚拟接口设备 中对符合IPTV业务特征的数据包进行调度、标记:IPTV业务特征是:上行数据均在Oth。
48、er Bridge WAN连接中,从此WAN连接中所对应的网络接口发出的数据包就是符合IPTV业 说 明 书CN 102916901 A 10 7/8页 11 务特征的数据包;IMQ虚拟接口设备将符合IPTV业务特征的数据包匹配特定的数值,完 成数据包的识别,并放置到优先级队列中,进行优先级保障;IMQ虚拟接口设备采用Linux iptables工具,对实现调度的IPTV业务数据流量进行标记,转到步骤S9; 0068 S9、判断QoS保障目标中是否存在其它特征,如果QoS保障规则中包括其它特征, 则转到步骤S10;否则结束; 0069 S10、如果QoS保障规则中包括DSCP、802.1p标签。
49、、源IP、目的IP、源端口、目的端 口等其它特征,同时在家庭网关的上行数据流量中也存在符合这些特征的数据包,则在IMQ 虚拟接口设备中对符合这些特征的数据包进行调度、标记:IMQ虚拟接口设备将符合DSCP、 802.1p标签、源IP、目的IP、源端口、目的端口这些特征的数据包,匹配特定的条件数值,完 成数据包的识别,并放置到优先级队列中,进行优先级保障;IMQ虚拟接口设备采用Linux iptables工具,对实现调度的其它业务数据流量进行标记,至此全部结束。 0070 本发明实施例还提供一种基于Linux软件实现上行QoS调度的装置,包括QoS开 启触发模块、汇聚模块和IMQ虚拟接口设备,其中: 0071 QoS开启触发模块,用于:若判定已经开启QoS,则产生汇聚触发信号,并发送到汇 聚模块; 0072 汇聚模块,用于:收到汇聚触发信号后,针对家庭网关设备数据流向,采用软件方 式将所有的Linux网络接口WAN侧流出的上行数据流量统一汇聚到IMQ虚拟接口设备; 0073 IMQ虚拟接口设备,用。