用缓慢离开机制处理用户离开、切换组播业务频道请求的方法和装置的制作方法

文档序号:7593978阅读:174来源:国知局
专利名称:用缓慢离开机制处理用户离开、切换组播业务频道请求的方法和装置的制作方法
技术领域
本发明涉及组播业务,尤其涉及组播业务中接入设备对用户离开、切换组播业务频道请求的处理方法和装置。
背景技术
随着网络的发展,人们在网络平台上开发了各种业务,如E-mail、TELNET、FTP、WWW等业务,这些都是点到点的数据传输;而人们更希望在Internet上开视频会议、听现场音乐会、看实况转播等,这些都是大数据量业务,目前大多采用点到多点或多点到多点的数据传输以节省带宽,因此需要采用IP组播(IP multicast)通信技术。在使用以太网技术的接入网中,组播及视频业务越来越成为一种普遍的服务。这种业务往往对响应速度要求比较高。当用户频繁切换频道时,要求设备能尽快响应,迅速提供用户需要的视频数据。对于大型接入设备来说,用户数目巨大,处理用户频繁的频道切换信号会给设备及网络带来较大负荷。控制用户接入组播组的协议(IGMP)本身并没有对此给出解决方案,这就对设备及网络的处理能力有相当的要求,如果处理能力不够,在峰值时,用户的响应速度可能得不到保证。
图1是组播业务中接入设备的结构示意图。从图中可以看出,,接入设备对用户充当路由器的角色,而对网络充当用户角色。接入设备代表所连接的用户向网络申请组播视频服务。网络下行发送的组播数据流通过接入设备复制拷贝给多个用户。当用户请求某个组播业务M1时,就会发送IGMP加入消息给接入设备,请求加入组播业务频道M1。接入设备解析用户的IGMP请求,同时查找用户及所请求组播组的相关信息,确认该用户是否有权限获得该组播服务。接入设备判断用户可以获得该组播服务后,将用户所在端口加入M1的组播组的用户列表中。这样,从网络中发来的M1的组播业务数据流到达接入设备时,就可以根据接入设备的用户列表进行复制,将组播流发送给相应的用户。同时,由于接入设备实现的是IGMP代理功能,对于网络侧来说,接入设备具有用户属性。也就是说,当连接在接入设备上的用户请求某一组播业务,而当前该组播数据流没有发送给该接入设备时,接入设备就会向网络发送一个IGMP加入消息,请求获得该组播服务。
当用户要进行组播业务频道切换,如从组播业务频道M1切换到组播业务频道M2时,通常的流程是1)用户发送IGMP离开消息给接入设备,该消息表明用户请求从组播业务频道M1中离开。
2)用户发送IGMP加入消息给接入设备,请求获得组播服务M2,该IGMP加入消息与用户发送的IGMP离开消息的间隔时间通常非常短,如0.02秒。
3)当接入设备收到用户要求离开M1的请求,会以一定时间间隔发送两个特定组查询消息,如果在此期间内,用户没有回应,则将用户从M1的组播组的用户列表中删除。
4)如果接入设备发现用户是接入设备中组播业务M1的组播组的最后一个用户,则接入设备向网络侧发送IGMP离开信息,请求网络不再向接入设备发送M1的组播数据流,同时在硬件中删除组播转发表。
5)当接入设备收到用户要求加入组播业务频道M2的请求,将用户加入M2的组播组的用户列表中。
6)如果接入设备发现该用户为接入设备中组播业务M2的组播组的第一个用户,则接入设备向网络侧发送IGMP加入信息,请求组播业务M2,同时在硬件中写入组播转发表。
从上述流程可以看出,当用户数目众多,组播业务切换频繁的情况下,会有以下几个问题1)接入设备将会根据用户的要求频繁向网络发送IGMP加入请求或离开消息,加大了网络流量,并且增加了网络侧路由器或组播服务器的负担;2)接入设备会频繁向硬件中创建或删除组播转发表,这样的操作通常来说是非常耗时和影响设备性能的,有时甚至会导致系统反映迟缓甚至崩溃。
3)当又有用户申请组播业务频道M1的业务时,由于M1已经不存在于接入设备中,那么接入设备又要向网络发送IGMP加入消息请求该组播业务,用户需要经过一段网络响应时间才能接收到该组播业务。那么此时接入设备表现出对用户切换频道请求的响应速度缓慢。
现有的解决由于用户频繁进行频道切换带来的问题的方法是,通过修改设备的组播协议状态机的参数,如增加设备收到IGMP离开消息后发送特定组查询消息的间隔时间,从而达到较少网络负荷的方法来解决。但是组播协议状态机的参数一般来说在局域网中推荐统一设置以保证和其它网络设备的兼容性和协作性,因此通常不建议设备单独修改状态参数。而整个网络设备的参数的统一修改会影响到整个网络系统的响应速度。

发明内容
有鉴于此,本发明的目的在于提供一种能够有效减小组播业务中频道切换负荷的解决方案。该方案采用了一种缓慢离开的机制减小频道切换的负荷,无需修改统一设置的状态机参数,不影响整个网络的响应速度,同时也不增加设备成本。
本发明提供了一种用缓慢处理机制处理用户离开组播业务频道的请求的方法,该方法包括步骤1)将发送请求的用户从被请求的组播业务频道的组播组的用户列表中删除;2)判断该用户是否为该组播业务频道的组播组的最后一个用户,若不是,结束;若是,将该组播组在一段保留时间内设置成闲置状态,并进入步骤3);3)判断在保留时间内是否收到任何用户要求加入该组播业务频道的请求,若是,将该组播组设置成激活状态,将该用户加入到该组播组的用户列表,结束,若不是,进入步骤4);4)删除该组播组,向网络发送离开该组播业务频道的请求,结束。
其中,在步骤3)中,还可能在保留时间内收到其他用户要求加入该组播业务频道的请求时,立刻把该组播组设置成激活状态,同时将保留时间归零。
其中,所述保留时间根据该组播组的优先级来设定,优先级高的组播组设置较长的保留时间,优先级低的组播组设置较短的保留时间。
其中,该方法还包括步骤5)当网络接口的带宽不够或者设备的组播组资源不够时,删除一些处在闲置状态的组播组,释放系统资源。在删除这些闲置的组播组时,根据组播组的优先级来确定删除所述这些处在闲置状态的组播组的顺序。最先删除优先级最低的组播组,以此类推。
本发明还提供了一种用缓慢处理机制处理用户切换组播业务频道请求的方法,该方法包括步骤判断用户请求为离开组播业务频道的请求还是加入组播业务频道的请求;当收到用户离开组播业务频道的请求时,执行以下步骤
a)将发送请求的用户从被请求的组播业务频道的组播组的用户列表中删除;b)判断该用户是否为该组播业务频道的组播组的最后一个用户,若不是,结束;若是,将该组播组在一段保留时间内设置成闲置状态,并进入步骤c);c)判断在保留时间内是否收到任何用户要求加入该组播业务频道的请求,若是,将该组播组设置成激活状态,结束,若是,进入步骤d);d)删除该组播组,向网络发送离开该组播业务频道的请求,结束;当收到用户加入组播业务频道的请求时,执行以下步骤e)判断该组播业务频道的组播组是否存在,若是,进入步骤f),若不是,进入步骤g);f)将该用户加入到该组播组的用户列表;g)创建该组播组,并将其设置成激活状态,将该用户加入到该组播组的用户列表,向网络发送加入该组播业务频道的请求,结束。
本发明还提供了一种具有组播业务的网络接入设备,包含网络接口模块、用户接口模块,其中该网络接入设备还包含处理用户离开组播业务频道请求的单元,该单元当通过用户接口模块发送请求离开的用户为该组播业务频道的组播组的最后一个用户时,将该组播组设置为一段时间内的闲置状态,在保留时间内若有用户通过用户接口模块请求加入该组播业务频道,激活该组播组;否则,删除该组播组,并通过网络接口模块向网络发送离开组播业务频道的请求。
其中,该单元包括第一判别装置,判别通过用户接口模块发送请求的用户是否为被请求的组播业务频道的组播组的最后一个用户;第二判别装置,判别在保留时间内是否有任何用户通过用户接口模块请求加入该组播业务频道;第一状态设置装置,在第一判别装置的判别结果为“是”的情况下把组播组设置成一段保留时间内的闲置状态,在第二判别装置判别结果为“是”的情况下把组播组的闲置状态变为激活状态,如在保留时间内没有收到第二判别装置结果为“是”的判别结果,在保留时间结束时把该组播组的闲置状态变为被删除状态;第一网络接口装置,根据第一状态设置装置把组播组的闲置状态变为被删除状态的变化结果,通过网络接口模块向网络发送离开组播业务频道的请求。
本发明还提供了一种具有组播业务的网络接入设备,包含网络接口模块、用户接口模块,该接入设备还包含处理用户切换组播业务频道请求的单元,该单元判断通过用户接口模块接收到的用产请求为离开组播业务频道的请求还是加入组播业务频道的请求,在用户请求为离开组播业务频道的请求的情况下,当请求离开的用户为该组播业务频道的组播组的最后一个用户时,将该组播组设置为一段时间内的闲置状态,一段在保留时间内,若有用户通过用户接口模块请求加入该组播业务频道,激活该组播组;否则,删除该组播组,并通过网络接口模块向网络发送离开组播业务频道的请求;在用户请求为加入组播业务频道的请求的情况下,当被请求的组播组不存在时,创建该组播组,同时通过网络接口模块向网络发送加入该组播业务频道的请求。
其中,该单元包括用户请求判别装置,用于判别通过用户接口模块接收到的用户的请求为离开组播业务频道的请求还是加入离开组播业务频道的请求,并确定由处理用户离开组播业务频道请求的单元和处理用户加入组播业务频道请求的单元中的哪一个来处理该请求;处理用户离开组播业务频道请求的单元,用于处理用户离开组播业务频道请求,包括第一判别装置,判别发送请求的用户是否为被请求的组播业务频道的组播组的最后一个用户;第二判别装置,判别在保留时间内是否有任何用户通过用户接口模块请求加入该组播业务频道;第一状态设置装置,在第一判别装置的判别结果为“是”的情况下把组播组设置成一段保留时间内的闲置状态,在第二判别装置判别结果为“是”的情况下把组播组的闲置状态变为激活状态,如在保留时间内没有收到第二判别装置结果为“是”的判别结果,在保留时间结束时把该组播组的闲置状态变为被删除状态;第一网络接口装置,根据第一状态设置装置把组播组的闲置状态变为被删除状态的变化结果,通过网络接口模块向网络发送离开组播业务频道的请求;处理用户加入组播业务频道请求的单元,用于对用户加入组播业务频道请求进行处理,包括第三判别装置,判别被请求的组播业务频道的组播组是否存在;
第二状态设置装置,在第三判别装置的判别结果为“不是”的情况下创建该组播组,并将其设置成激活状态;第二网络接口装置,在第三判别装置的判别结果为“不是”的情况下通过网络接口模块向网络发送加入该组播业务频道的请求。
现将本发明的优点总结如下1)采用该方法后,较大地减小了网络侧处理IGMP协议消息的负荷。
2)不需要对网络其它设备参数作任何修改,仅接入局端设备上的软件作了一些改动。
3)在现有的网络构架下,没有硬件改动,与目前的对应的接入网设备来说成本几乎没有增加。


图1是组播业务中接入设备的结构示意图;图2是本发明的对用户离开组播业务频道请求的处理方法的流程图;图3是本发明的对用户切换组播业务频道请求的处理方法的流程图;图4是本发明的对用户离开组播业务频道的请求的处理单元的结构框图;图5是本发明的对用户切换组播业务频道的请求的处理单元的结构框图。
具体实施例方式
下面结合附图和实施例对本发明进行详细描述。图2是本发明的对用户离开组播业务频道请求的处理方法的流程图。
下面结合图1和图2,以用IGMP协议来实现组播业务的接入设备为例,具体说明采用本发明方案的用缓慢离开机制处理用户请求离开组播业务频道的请求的方法。
当接入设备通过IGMP代理收到某用户,如用户1发出的IGMP离开消息时,这个消息表示用户1请求离开某组播业务频道,首先,通过给用户发送特定组查询消息确定用户1离开某组播业务频道后,接入设备将发送请求的用户即用户1从被请求的组播业务频道的组播组的用户列表中删除(步骤201),这样,用户1就不再接收到该组播组的组播数据流。然后,接入设备就判断用户1是否为该组播业务频道的组播组的最后一个用户(步骤202),若不是,不用再进行别的操作,结束;若是,就将该组播组设置成在一段保留时间内的闲置状态(步骤203),然后进入步骤204。在本实施例中,每个组播组都有一个IGMP协议状态机,这是一个软件模块,用来记录每个组播组的各种状态,并且根据一定的外部条件来实现组播组状态之间的跳变。在现有技术中,组播组的状态只有两种激活或被删除;而本发明中,引入了一个新的状态,闲置状态。例如,假设原来表示组播组状态的变量为1比特位,其取值为0或1,0表示被删除,1表示激活。现在,这个变量定义为2比特位,其取值范围进行了重新定义,增加了一个新的值,如2(二进制中的”10”),来表示闲置状态。在步骤202中,由该组播组的IGMP协议状态机通过判断用户1是否为该组播组的最后一个用户,来决定该组播组的状态是否发生跳变,如果是最后一个用户,就在IGMP协议状态机中将该组播组的状态从激活状态(”01”)改变成闲置状态(“10”)。即从激活状态转变成闲置状态的触发条件为请求离开的用户为该组播组中的最后一个用户。在闲置状态下,接入设备对于网络侧来说,状态没有变化,仍然从网络接受该组播业务频道的组播数据流,只是不发送给任何用户。闲置状态的保留时间,如可以用在将该组播组设置成闲置状态的同时启动一个定时器,由该定时器的定时来控制保留时间的长短,实现将组播组在保留时间内设置成闲置状态。
接下来,接入设备判断在保留时间内是否收到任何用户、如用户2的IGMP加入消息,表示用户2请求加入该组播业务频道(步骤204),若是,通过状态机将该组播组重新设置成激活状态(步骤205),然后结束;若不是,接入设备删除该组播组,向网络发送IGMP离开消息,请求离开该组播业务频道(步骤206),然后结束。也就是说,在设置的保留时间结束之前,如果有任何用户(也包括原先请求离开的那个用户1)、如用户2请求该组播业务,那么在该组播组的IGMP协议状态机中将该组播组的状态又从闲置状态重新设置成激活状态。即从闲置状态转变成激活状态的触发条件为在保留时间内有其他用户请求该组播业务频道。在这个过程中,接入设备对网络侧的状态没有改变。如果设置的保留时间直到结束,没有用户再请求该组播业务,那么接入设备就认为该组播业务不再被所有用户需要,就删除该组播组,即在IGMP协议状态机中,如可以利用定时器计时结束发出的复位信号,将该组播组的状态设置为被删除(”00”),即从闲置状态转变成被删除状态的触发条件为在保留时间内没有用户请求该组播业务频道。接入设备会以一定的时间间隔对系统进行刷新,对于状态为“被删除”的组播组,经过刷新后系统就把它删除,该组播组就不存在。在把该组播组的状态设置为被删除的同时,接入设备向网络发送IGMP离开消息,请求离开该组播业务频道,一段时间后网络就不再发送该组播业务数据流给接入设备。在本实施例中,列举了定时器对闲置状态保留时间进行控制,也可以利用“最后一个用户的离开请求信号”,通过一个延迟器实现保留时间的控制。
其中,在步骤204中,还可以在保留时间内,当收到用户2请求加入该组播业务频道的请求后,立刻将该组播组重新设置成激活状态,同时将保留时间归零,如可以通过将定时器提前复位来实现,这样可以提高接入设备对用户请求的响应速度。
其中,步骤203、204、205为本发明的主要发明点所在。本发明的核心思想就是采用一种缓慢离开的机制,通过给组播组引入一个新的状态闲置状态,并设置一定的保留时间,屏蔽一部分用户向网络要求切换业务频道的请求,缓解由于用户频繁切换而引起的网络负荷。
对于不同类型的组播组还可以定义不同的保留时间。优先级高的组播组设置较长的保留时间,优先级低的组播组设置较短的保留时间。运营商可以把一些经常使用的组播组预先配置在组播源表中,该类业务具有较高优先级;不经常使用的的组播组,就没有预先配置在组播源表中,该类业务具有较低优先级。因此,对于已配置在组播源表中的组播组,可以设置较长的保留时间,因为这些是用户最经常要求的业务,而对于不存在于组播源表中的组播组,可以设置较短的保留时间,避免由于引入缓慢离开机制后,驻留在设备中的闲置组占用较多资源。
当网络接口的带宽不够或者设备的组播组资源不够时,还可以删除一些处在闲置状态的组播组,以释放系统资源。也就是说,即使这些处于闲置状态的组播组所设置的保留时间还没有到,在资源不够的情况下,IGMP状态机可以将它们的状态从闲置状态提前设置为被删除状态,以释放系统资源。也就是说,从闲置状态转变成被删除状态的另一个触发条件为资源不够,需要释放资源。同时,可以根据各个组播组的优先级,在需要删除的时候,最先删除优先级最低的组播组,以此类推,以实现资源的最优配置。
同时,根据本发明的用缓慢离开的机制处理用户离开组播业务频道的请求的方法,我们还可以得到一种用缓慢离开机制处理用户切换组播业务频道请求的方法。图3是该方法的的流程图。下面结合图3,以用IGMP协议来实现组播业务的接入设备为例,具体说明对用户切换组播业务频道请求的处理方法。
假设用户1(M1的组播组的最后一个用户)请求从频道M1离开,然后用户2请求加入频道M1,用户2是用户1后最先请求加入M1的用户。首先用户1发送IGMP离开消息给接入设备,请求从组播业务频道M1中离开,然后用户2发送IGMP加入消息给接入设备,请求加入组播业务频道M1。
接入设备收到一个用户的请求,就判断该用户请求为加入组播业务频道的请求还是离开组播业务频道的请求(步骤301)。当接入设备收到用户1要求离开组播业务频道M1的请求时,启动离开请求处理流程即流程A,当接入设备收到用户2要求加入组播业务频道M1的请求时,启动加入请求处理流程即流程B,在这个实施例中,流程A和流程B先后启动,并行进行。
当接入设备收到用户1要求离开组播业务频道M1的请求时,启动离开请求处理流程即流程A接入设备将发送请求的用户即用户1从被请求的组播业务频道即M1的组播组的用户列表中删除(步骤302),这样,用户1就不再接收到M1的组播数据流。然后,接入设备判断用户1是否为组播业务频道M1的组播组的最后一个用户(步骤303),如是,将该组播组设置成在一段保留时间内的闲置状态(步骤304)。在这个实施例中,由于用户1是M1的最后一个用户,则M1在步骤304被设置成闲置状态。在步骤304后,接入设备仍然从网络接受M1的组播数据流,但并不发送给任何用户。步骤304中的闲置状态和保留时间的设置方法和步骤203相同。然后,判断接入设备在保留时间内是否收到其他用户要求加入M1的请求(步骤305),若是,将M1的组播组重新设置成激活状态(步骤306),然后结束;若不是,接入设备删除M1的组播组,向网络发送IGMP离开消息,请求离开M1(步骤307),然后结束。在这个实施例中,有用户2请求组播业务M1,如接入设备收到用户2请求加入M1的请求的时刻在保留时间以内,则步骤305的判断结果即为“是”,接入设备将M1的组播组从闲置状态重新设置成激活状态。如接入设备收到用户2请求加入M1的请求的时刻在保留时间以后,则接入设备删除M1的组播组,发送IGMP离开消息给网络,请求离开组播业务频道M1。其中,步骤306、307中的组播组状态的转换方法和步骤205、206相同。
当接入设备收到用户2要求加入组播业务频道M1的请求时,启动加入请求处理流程即流程B接入设备判断M1的组播组是否存在(步骤308),若“是”,将发送请求的用户加入到该组播组的用户列表中(步骤309),若“不是”,创建M1的组播组,并将M1的组播组设置成激活状态,把发送请求的用户加入到该组播组的用户列表中(步骤310),并向网络发送IGMP加入消息,请求加入组播业务频道M1(步骤311)。在该实施例中,如接入设备收到用户2请求加入M1的请求的时刻在保留时间以内,则M1的组播组处于闲置状态,但没被删除,步骤308的判断结果还是“是”,此时流程A执行到步骤305,步骤305的判别结果为“是”,然后,M1的组播组被重新设置成激活状态(步骤306)。如接入设备收到用户2请求加入M1的请求的时刻在保留时间以后,则此时流程A中步骤305的判别结果为“否”,接入设备删除M1的组播组,向网络发送离开M1的请求(步骤307),则M1的组播组已经被删除,步骤308的判别结果为“否”,说明网络已不发送M1的组播数据流给接入设备,接入设备就需要创建该组播组,把用户加入到该组播组的用户列表中(步骤310),并向网络发送加入M1的请求,重新向网络请求组播业务M1(步骤311)。
同时,我们还可以从实施例中得到实现用缓慢离开机制处理用户离开组播业务请求的网络接入设备。下面结合图1,以用IGMP协议来实现组播业务的接入设备为例,具体说明该接入设备的功能和结构。参见图1,在该接入设备中,包含网络接口模块、用户接口模块、IGMP模块。其中,网络接口模块用于向网络发送离开和加入组播业务频道的请求,用户接口模块用于和用户进行交互,接收用户的请求。IGMP模块中包含IGMP协议消息处理模块、组播源表和用户列表等。在该实施例中,IGMP协议消息处理模块还可以包括处理用户离开组播业务频道请求的单元,该单元当通过用户接口模块发送请求离开的用户为该组播业务频道的组播组的最后一个用户时,将该组播组设置为一段时间内的闲置状态,在保留时间内若有用户通过用户接口模块请求加入该组播业务频道,激活该组播组;否则,删除该组播组,并通过网络接口模块向网络发送离开组播业务频道的请求。当网络接口的带宽不够或者设备的组播组资源不够时,该处理用户离开组播业务频道的请求的单元还可以删除一些处在闲置状态的组播组,以释放系统资源。
图4是该单元的具体结构框图。如图4所示,该单元400包括第一判别装置401、第一状态设置装置402、第一网络接口装置403和第二判别装置404。第一判别装置401在收到用户通过用户接口模块发送的离开组播业务频道的请求时判别发送请求的用户是否为被请求的组播业务频道的组播组的最后一个用户。第一状态设置装置402,接收第一判别装置401的判别结果,在第一判别装置401的判别结果为“是”的情况下把组播组设置成在一段保留时间内的闲置状态。第二判别装置404,判别在保留时间内是否有任何用户通过用户接口模块请求加入该组播业务频道。第一状态设置装置402还接收第二判别装置404的判别结果,在第二判别装置404的判别结果为“是”的情况下,把组播组的闲置状态变为激活状态,第一状态设置装置402如在保留时间内没有收到第二判别装置404结果为“是”的判别结果,即保留时间内没有用户请求加入该组播业务频道,在保留时间结束时把该组播组闲置状态变为被删除状态。第一网络接口装置403,根据第一状态设置装置402把组播组的闲置状态变为删除状态的变化结果,通过网络接口模块向网络发送离开该组播组的请求。其中,在第一状态设置装置402中,闲置状态的保留时间,如可以用在该组播组被设置成闲置状态的同时启动一个定时器,由定时器的定时来控制保留时间的长短,实现将组播组在保留时间内设置成闲置状态,利用在定时器计时结束前的第二判别装置的判别信号将组播组的状态设置成激活状态,并将定时器提前复位,利用定时器计时结束发出的复位信号将组播组的状态设置为被删除状态。另外,保留时间的控制还可以用延迟器等其他方式实现。在该处理单元还可以包括第一用户列表处理单元405,用于将用户加入到被请求的组播业务频道的组播组的用户列表中,在该处理单元中还可以包括删除装置406,用于在网络接口的带宽不够或者设备的组播组资源不够时,查找一些处于闲置状态的组播组,通过第一状态设置装置402中把这些组播组的闲置状态提前变为被删除状态。然后第一网络接口装置403就根据第一状态设置装置402把这些组播组的闲置状态变为被删除状态的变化结果,通过网络接口模块向网络发送离开这些组播组的请求。删除单元可以根据组播组的优先级,先查找优先级最低的处于闲置状态的组播组,先删除这些组播组,依此类推,以实现资源的最优配置。
在该实施例中,处理用户离开组播业务频道的请求的单元是配置在IGMP协议消息处理模块中,该单元也可以作为一个独立的单元配置在IGMP协议消息处理模块外,只要能实现用缓慢离开机制处理用户离开组播业务的请求的功能即可。
我们还可以得到用缓慢离开机制处理用户切换组播业务频道请求的网络接入设备。同样结合图1,以用IGMP协议来实现组播业务的接入设备为例来具体说明该接入设备的功能和结构。同样,该设备包含网络接口模块、用户接口模块,IGMP模块。IGMP协议模块包含IGMP协议消息处理模块、组播源表和用户列表等。在该实施例中,IGMP协议消息处理模块还包括一个处理用户切换播业务频道请求的单元,该单元判断通过用户接口模块接收到的用户请求为离开组播业务频道的请求还是加入组播业务频道的请求,在用户户请求为离开组播业务频道的请求的情况下,当请求离开的用户为该组播业务频道的组播组的最后一个用户时,将该组播组设置为一段时间内的闲置状态,一段在保留时间内,若有用户通过用户接口模块请求加入该组播业务频道,激活该组播组;否则,删除该组播组,并通过网络接口模块向网络发送离开组播业务频道的请求;在用户请求为加入组播业务频道的请求的情况下,当被请求的组播组不存在时,创建该组播组,同时通过网络接口模块向网络发送加入该组播业务频道的请求。当网络接口的带宽不够或者设备的组播组资源不够时,该处理用户切换组播业务频道的请求的单元还可以删除一些处在闲置状态的组播组,以释放系统资源。
图5是该单元的具体结构框图。如图5所示,该单元包括用户请求判别装置505,处理用户离开组播业务频道请求的单元400和处理用户加入组播业务频道请求的单元500。其中,用户请求判别装置505,判别通过用户接口模块接收的用户的请求为离开组播业务频道的请求还是加入离开组播业务频道的请求,并确定由处理用户离开组播业务频道请求的单元和处理用户加入组播业务频道请求的单元中的哪一个来处理该请求,将用户离开组播业务频道的请求交给处理用户离开组播业务频道请求的单元400来处理,将用户加入组播业务频道的请求交给处理用户加入组播业务频道请求的单元500来处理。处理用户离开组播业务频道请求的单元400,用于处理用户离开组播业务频道请求,该单元400包括第一判别装置401、第一状态设置装置402、第一网络接口装置403和第二判别装置404,其中各个装置的功能已在前文详细介绍,该单元400还可以包括第一用户列表处理装置405,用于将用户加入到被请求的组播业务频道的组播组的用户列表中,以及删除装置406,用于在网络接口的带宽不够或者设备的组播组资源不够时,查找一些处于闲置状态的组播组,通过第一状态设置装置402中把这些组播组的闲置状态提前变为被删除状态。处理用户加入组播业务频道请求的单元500,用于处理用户加入组播业务频道请求,该处理单元包括第三判别装置501、第二状态设置装置502和第二网络接口装置503。其中,第三判别装置501,判别被请求的组播业务频道的组播组是否被删除。第二状态设置装置502,接收第三判别装置501的判别结果,在第三判别装置502的判别结果为“不是”的情况下创建将该组播组,并将其状态设置成激活状态。第二网络接口装置503,接收第三判别装置501的判别结果,在第三判别装置的判别结果为“不是”的情况下通过网络接口模块向网络发送加入该组播业务频道的请求。其中,处理用户加入组播业务频道请求的单元500还可以包括第二用户列表处理装置504,用于将用户加入到被请求的组播业务频道的组播组的用户列表中。在第三判别装置的判别结果为“是”的情况下,第二用户列表处理装置504直接把用户加入到被请求的组播业务频道的组播组的用户列表中,在第三判别装置的判别结果为“不是”的情况下,在第二状态设置装置502创建该组播组后,再将用户加入到该组播组的用户列表中。
在该实施例中,处理用户切换组播业务频道的请求的单元是配置在IGMP协议消息处理模块中,该单元也可以作为一个独立的单元配置在IGMP协议消息处理模块外,只要能实现用缓慢离开机制处理用户切换组播业务的请求的功能即可。
从上面的分析可以看出,采用本发明方案后,就可以解决现有的组播业务中的由于用户频繁切换频道而导致的网络负担加重、系统反映迟缓等问题,而且本发明方案只是在软件上作了改动,与硬件环境和平台无关,实施成本低,适应范围广。
上述仅为本发明的较佳实施例,并非用来限定本发明的保护范围,本技术领域的专业人员可以在不脱离本发明的范围和精神的前提下,对实施例进行各种修改,这种修改均属于本发明的范围内。
权利要求
1.一种用缓慢离开机制处理用户离开组播业务频道请求的方法,其特征在于,该方法包括步骤1)将发送请求的用户从被请求的组播业务频道的组播组的用户列表中删除;2)判断该用户是否为该组播业务频道的组播组的最后一个用户,若不是,结束;若是,将该组播组设置成在一段保留时间内的闲置状态,并进入步骤3);3)判断在保留时间内是否收到任何用户要求加入该组播业务频道的请求,若是,将该组播组设置成激活状态,结束,若不是,进入步骤4);4)删除该组播组,向网络发送离开该组播业务频道的请求,结束。
2.如权利要求1所述的方法,其特征在于,所述步骤3)中,当在保留时间内收到其他用户要求加入该组播业务频道的请求时,立刻把该组播组设置成激活状态,同时将保留时间归零。
3.如权利要求1所述的方法,其特征在于,所述保留时间根据该组播组的优先级来设定,对于高优先级的组播组设置较长的保留时间。
4.如权利要求1所述的方法,其特征在于,所述方法还包括步骤5)当网络接口的带宽不够或者设备的组播组资源不够时,删除一些处在闲置状态的组播组,释放系统资源。
5.如权利要求4所述的方法,其特征在于,所述步骤5)中,根据组播组的优先级来确定删除所述这些处在闲置状态的组播组的顺序,先删除低优先级的闲置状态组播组。
6.如权利要求1所述的方法,其特征在于,所述接入设备用IGMP协议来实现组播业务。
7.一种用缓慢离开机制处理用户切换组播业务频道请求的方法,其特征在于,该方法包括步骤判断用户请求为离开组播业务频道的请求还是加入组播业务频道的请求;当收到用户离开组播业务频道的请求时,执行以下步骤a)将发送请求的用户从被请求的组播业务频道的组播组的用户列表中删除;b)判断该用户是否为该组播业务频道的组播组的最后一个用户,若不是,结束;若是,将该组播组设置成在一段保留时间内的闲置状态,并进入步骤c);c)判断在保留时间内是否收到任何用户要求加入该组播业务频道的请求,若是,将该组播组设置成激活状态,结束,若不是,进入步骤d);d)删除该组播组,向网络发送离开该组播业务频道的请求,结束;当收到用户加入组播业务频道的请求时,执行以下步骤e)判断该组播业务频道的组播组是否存在,若是,进入步骤f),若不是,进入步骤g);f)将用户加入该组播组的用户列表,结束;g)创建该组播组,并将其设置成激活状态,将用户加入该组播组的用户列表,同时向网络发送加入该组播业务频道的请求,结束。
8.一种具有组播业务的网络接入设备,包括网络接口模块、用户接口模块,其特征在于,该网络接入设备还包含处理用户离开组播业务频道请求的单元,所述单元当通过用户接口模块发送请求离开的用户为该组播业务频道的组播组的最后一个用户时,将该组播组设置为一段时间内的闲置状态,在保留时间内若有用户通过用户接口模块请求加入该组播业务频道,激活该组播组;否则,删除该组播组,并通过网络接口模块向网络发送离开组播业务频道的请求。
9.如权利要求8所述的网络接入设备,其特征在于,所述处理用户离开组播业务频道请求的单元在网络接口的带宽不够或者设备的组播组资源不够时,删除一些处在闲置状态的组播组,释放系统资源。
10.如权利要求8所述的网络接入设备,其特征在于,所述处理用户离开组播业务频道请求的单元包括第一判别装置,判别通过用户接口模块发送离开请求的用户是否为被请求的组播业务频道的组播组的最后一个用户;第二判别装置,判别在保留时间内是否有任何用户通过用户接口模块请求加入该组播业务频道;第一状态设置装置,在第一判别装置的判别结果为“是”的情况下把组播组设置成一段保留时间内的闲置状态,在第二判别装置判别结果为“是”的情况下把组播组的闲置状态变为激活状态,如在保留时间内没有收到第二判别装置结果为“是”的判别结果,在保留时间结束时把该组播组的闲置状态变为被删除状态;第一网络接口装置,根据第一状态设置装置把组播组的闲置状态变为被删除状态的变化结果,通过网络接口模块向网络发送离开组播业务频道的请求。
11.一种具有组播业务的网络接入设备,包括网络接口模块、用户接口模块,其特征在于,该网络接入设备还包含处理用户切换组播业务频道请求的单元,所述单元判断通过用户接口模块接收到的用户请求为离开组播业务频道的请求还是加入组播业务频道的请求,在用户请求为离开组播业务频道的请求的情况下,当请求离开的用户为该组播业务频道的组播组的最后一个用户时,将该组播组设置为一段时间内的闲置状态,一段在保留时间内,若有用户通过用户接口模块请求加入该组播业务频道,激活该组播组;否则,删除该组播组,并通过网络接口模块向网络发送离开组播业务频道的请求;在用户请求为加入组播业务频道的请求的情况下,当被请求的组播组不存在时,创建该组播组,同时通过网络接口模块向网络发送加入该组播业务频道的请求。
12.如权利要求11所述的接入设备,其特征在于,所述处理用户切换组播业务频道请求的单元在网络接口的带宽不够或者设备的组播组资源不够时,删除一些处在闲置状态的组播组,释放系统资源。
13.如权利要求11所述的网络接入设备,其特征在于,所述处理用户切换组播业务频道请求的单元包括用户请求判别装置,用于判别通过用户接口模块接收到的用户的请求为离开组播业务频道的请求还是加入离开组播业务频道的请求,并确定由处理用户离开组播业务频道请求的单元和处理用户加入组播业务频道请求的单元中的哪一个来处理该请求;处理用户离开组播业务频道请求的单元,用于处理用户离开组播业务频道请求,包括第一判别装置,判别发送请求的用户是否为被请求的组播业务频道的组播组的最后一个用户;第二判别装置,判别在保留时间内是否有任何用户通过用户接口模块请求加入该组播业务频道;第一状态设置装置,在第一判别装置的判别结果为“是”的情况下把组播组设置成一段保留时间内的闲置状态,在第二判别装置判别结果为“是”的情况下把组播组的状态闲置变为激活状态,在保留时间内如没有收到结果为“是”的判别结果,在保留时间后把该组播组闲置状态变为被删除状态;第一网络接口装置,根据第一状态设置装置把组播组的闲置状态变为被删除状态的变化结果,通过网络接口模块向网络发送离开组播业务频道的请求;处理用户加入组播业务频道请求的单元,用于对用户加入组播业务频道请求进行处理,包括第三判别装置,判别被请求的组播业务频道的组播组是否存在;第二状态设置装置,在第三判别装置的判别结果为“不是”的情况下创建该组播组,并将其设置成激活状态;第二网络接口装置,在第三判别装置的判别结果为“不是”的情况下通过网络接口模块向网络发送加入该组播业务频道的请求。
全文摘要
本发明提供了一种组播业务中接入设备对用户离开、切换组播业务频道请求的处理方法和装置。采用一种缓慢离开的机制,通过给组播组引入一个新的状态闲置状态,并设置一定的保留时间,当组播组中最后一个用户离开该组后,先将该组播组设置成闲置状态,而不是立刻删除。在保留时间到达之前,如果有其他用户请求该组播业务,将该组播组重新设置成激活状态,如果没有,再删除该组播组。这样就屏蔽了一部分用户要求切换业务频道的请求,缓解由于用户频繁切换而引起的负荷,提高了网络性能。
文档编号H04L12/54GK1731756SQ20041005343
公开日2006年2月8日 申请日期2004年8月5日 优先权日2004年8月5日
发明者鲁林丽, 汪永明, 迮超, 陈晓 申请人:上海贝尔阿尔卡特股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1