CN104170349B - 在分组网关上的策略控制实施 - Google Patents
在分组网关上的策略控制实施 Download PDFInfo
- Publication number
- CN104170349B CN104170349B CN201380014260.8A CN201380014260A CN104170349B CN 104170349 B CN104170349 B CN 104170349B CN 201380014260 A CN201380014260 A CN 201380014260A CN 104170349 B CN104170349 B CN 104170349B
- Authority
- CN
- China
- Prior art keywords
- segment
- entry
- pgw
- supplement
- received
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/166—IP fragmentation; TCP segmentation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
分组网关(PGW)从网络接收多个IP包片段。IP包片段包括头片段以及一个或多个尾片段,并且与第一IP包相关联。当接收片段时,在PGW上的控制器将片段分类。控制器基于头片段的分类将相同的所选的服务处理应用到头片段以及每个尾片段。PGW随后发送每个所处理的包片段到终端用户设备。
Description
技术领域
本发明一般涉及在通信网络中数据包的处理,并且更具体地涉及在网络中通过在分组网关(PGW)上执行的策略控制实施功能(PCEF)对分段的数据包的处理。
背景技术
分组网关(PGW)是将订户设备锚定到无线通信网络的网络实体。一般地,PGW从核心网接收IP包,然后经由接入网(AN)将那些包发送到订户设备。但是,在将IP包传递到订户设备之前,PGW首先按照公知的标准集(即,3GPP TS 23.203 V11.4.0 (2011-12),名为“第三代合作伙伴项目,技术规范组服务和系统方面,策略和收费控制架构”)处理所接收的IP包。
如TS23.203所定义,PGW具有策略和收费控制(PCC)规则集。这些规则定义在PGW所执行的策略控制和实施功能(PCEF)。具体来说,PCC规则包含将IP包分类为服务数据流(SDF)的包过滤器以及将应用于包的每个SDF的服务集。包过滤器基于包的L3报头所携带的信息(例如,IP源地址、目的地地址和协议类型)以及包的L4报头内所包含的信息(例如,取决于协议类型的源和目的地端口)将进入的IP包分类。因此,对于要递送到订户设备的给定的IP包,PGW首先应用包过滤器来识别IP包的适当的SDF,然后将SDF服务应用到IP包。可应用到SDF的一些服务包括但不限于收费、承载绑定以及管辖。
在一些情况下,IP包很大(例如,视频包)。因此,核心网可以将大IP包以多个片段发送到订户。就是说,可将单个大IP包划分为多个称作“片段”的较小的组分IP包。第一片段通常称作“头”片段,而其余片段通常称作“尾”片段。分段的处理促进网络上大IP包的通信;但是,这也意味着订户设备在它能够用掉IP包(例如,将原始IP包呈现或输出给用户)之前,必须首先从它们的组分片段重组大IP包。
通常,头片段包含包的L3和L4报头,而尾片段只包含L3报头。因此,在到达PGW时,PCC规则能够基于L3和L4信息将头片段分类并且应用适当的服务;但是,由于尾片段缺失L4报头,所以基于L4信息将片段分类的PCC规则不能够将尾片段分类。尾片段因此不同于IP包的头片段被分类,并且因此,应用到头片段的服务集不同于应用到尾片段的服务。实际上,这意味着,应用到完整的原始IP包的服务由于它们是从应用到各个组分片段的服务导出的,因此是不对的。
例如,设想应该基于用户数据报协议(UDP)端口号被标记为低等待时间的大的分段的视频包。常规的PGW基于头片段的报头所携带的L3/L4信息将大包的头片段处理为低等待时间。但是,因为分类这些包所需的信息缺失,所以PGW将随后的尾片段处理为尽力而为包而非低等待时间包。因此,尾片段将与任何PCC过滤器不匹配。由于订户设备在其能够重组并且呈现完整的原始IP包之前必须等待所有的尾片段到达,因此实际上原始IP包将不会被处理为低等待时间包。
常规配置的PGW一般通过两种方式之一处理这种情形。具体来说,在分类之前,PGW能够或者完全重组原始IP包并应用服务,或者它能够虚拟地重组片段并应用服务。采用完全重组,PGW在接收片段时将每个所接收的片段排队。在收到了完整IP包的所有组分片段之后,PGW重组这些片段,将包分类,然后将适当的服务应用到所重组的包。一旦应用了服务,PGW先将IP包重新分段,然后向订户设备发送这些片段。采用虚拟重组,PGW也在接收片段后将每个组分片段排队,但是不重组这些片段。而是,在接收到所有片段之后,PGW将头片段分类,然后使每个已排队的片段受到与头片段中包含的信息相匹配的PCC规则所定义的服务。PGW随后转发已处理的片段到订户设备。
这两种常规方式(即,在PGW上完全重组和虚拟重组)都允许PGW将相同的服务应用到IP包的所有组分片段。但是,这些方式也有问题。特别是,由于两种常规方法在PGW上消耗大量的资源,因此它们都增加了网络等待时间。另外,相对于正发送到订户设备的其它未分段的IP包,已排队的片段并非顺序地由PGW发送。更希望的行为是PGW在将正确的服务应用到所有片段之后发送片段到订户设备而不必首先将这些包排队。
发明内容
本发明配置分组网关(PGW),用于处理分段的IP包的片段,而不要求PGW首先接收所有的片段。在一个实施例中,在通信网络中处理IP包的多个片段的方法包括将在PGW上所接收的包片段分类。所接收的包片段包括头片段以及一个或多个尾片段,并且与第一IP包相关联。PGW基于头片段的分类将相同的所选的服务处理应用到头片段以及每个尾片段,然后,在应用服务处理之后发送每个包片段到终端用户设备。
在一个实施例中,方法还包括确定所接收的片段是否是头片段或尾片段。如果所接收的片段是头片段,则方法要求在PGW上通过主要过滤表过滤头包来确定所选的服务处理以应用到头片段。然后,方法在PGW上更新补充过滤表以将所选的服务处理与每个尾片段相关联。
在一个实施例中,确定所接收的片段是否是头片段包括确定所接收的片段是否包括层4协议信息。
在一个实施例中,主要过滤表包括一个或多个条目,每个条目与对应的预定服务处理相关联。在这类实施例中,通过主要过滤表过滤头包包括将来自头片段的数据与主要过滤表中的一个或多个条目比较。如果来自头片段的数据与条目匹配,则该方法选择与条目相对应的服务处理以应用到头片段。
在一个实施例中,更新补充过滤表包括生成补充条目以包括基于头片段的分类的信息,将补充条目与应用到头片段的所选的服务处理相关联,以及更新补充过滤表以包括补充条目。而且,生成补充条目包括生成补充条目以包括补充条目的创建时间。一旦补充条目的时限超过预定的时限阈值,删除补充条目。
在一个实施例中,如果所接收的片段是尾片段,则该方法将来自所接收的片段的数据与补充过滤表中的补充条目比较,并且选择与补充条目相关联的服务处理以应用到所接收的片段。另外,如果尾片段是第一IP包的最后的片段,则从补充过滤表中删除补充条目以及关联的所选的服务处理。
在一个实施例中,如果在头包之前接收到尾包,则该方法还包括将尾片段存储在缓冲器中,直到接收到头片段。然后,一旦接收到头片段,该方法将头片段分类并且将适当的服务处理应用到头片段以及在缓冲器中的所有尾片段。
除了所述方法,本发明还提供配置成处理IP包的多个片段的分组网关(PGW)。在一个实施例中,PGW包括配置成从网络接收多个IP包片段的第一通信接口。所接收的包片段包括头片段以及一个或多个尾片段,并且与第一IP包相关联。PGW还包括配置成经由接入网将多个IP包片段发送到用户设备的第二通信接口,以及控制器。在本发明的一个或多个实施例中,控制器配置成将经由第一通信接口接收的包片段分类,基于头片段的分类将相同的所选的服务处理应用到头片段以及每个尾片段,并且在应用服务处理之后经由第二通信接口发送每个包片段到终端用户设备。
在一个实施例中,PGW还包括存储器,该存储器配置成存储将头片段与对应的预定服务处理相关联的主要过滤表,以及将尾包片段与预定服务处理相关联的补充过滤表。
另外,控制器还可配置成确定所接收的片段是否是头片段或尾片段。如果所接收的片段是头片段,则通过主要过滤表过滤头片段来选择服务处理以应用到头片段,并且更新补充过滤表以将所选的服务处理与每个尾片段相关联。
在一个实施例中,控制器被配置成:如果所接收的片段包括层4协议信息,则确定所接收的片段是头片段。
在一个或多个实施例中,主要过滤表包括一个或多个条目,每个条目与对应的预定服务处理相关联。在这些实施例中,通过主要过滤表过滤头包包括将来自头片段的数据与主要过滤表中的一个或多个条目比较。如果来自头片段的数据与条目匹配,则控制器选择与条目对应的服务处理以应用到头片段。
在一个实施例中,控制器还配置成生成补充条目以包括基于头片段的分类的信息,将补充条目与应用到头片段的所选的服务处理相关联,并且更新补充过滤表以包括补充条目。
在一个实施例中,控制器还配置成生成补充条目以包括补充条目的创建时间。在补充条目的时限超过预定的时限阈值之后,控制器从补充过滤表中删除补充条目。
在一个实施例中,如果所接收的片段是尾片段,则控制器配置成将来自所接收的片段的数据与补充过滤表中的补充条目比较,并且选择与补充条目相关联的服务处理以应用到所接收的片段。控制器还配置成:如果尾片段是第一IP包的最后的片段,则从补充过滤表中删除补充条目以及关联的所选的服务处理。
在一个实施例中,控制器还配置成确定是否在头片段之前在PGW上接收到尾片段。如果在头片段之前接收到尾片段,则控制器配置成将所接收的尾片段存储在缓冲器中,并且一旦接收和分类完头片段,就将服务处理应用到头片段以及在缓冲器中的所有尾片段。
当然,本领域的技术人员将领会本发明不限于上面的上下文或者例子,并且在阅读以下详细描述和参看附图后将认识到附加的特征和优点。
附图说明
图1是示出配置成递送多个包片段到终端用户设备的通信系统的功能框图。
图2是示出常规处理用于递送到终端用户设备的多个包片段的分组网关(PGW)的功能框图。
图3是示出根据本发明的一个实施例配置的、处理用于递送到终端用户设备的多个包片段的示例性PGW的功能框图。
图4A-4C是示出根据本发明的一个实施例用于在PGW上处理多个包片段的示例性方法的流程图。
图5是示出根据本发明的一个实施例配置成处理用于递送到终端用户设备的包片段的示例性PGW的一些组件的功能框图。
具体实施方式
一般地,分段的IP包的头和尾片段将依次到达PGW。就是说,头片段将通常在尾片段之前到达PGW。因此,使用本发明的系统和方法,有可能在分组网关(PGW)上将分段的IP包分类,将适当的服务数据流(SDF)应用到每个包,并且转发片段到目的地订户设备,而不必在PGW上完全重组或者虚拟重组所述片段。
更具体来说,当PGW接收给定IP包的组分片段时,在PGW上执行的策略控制实施功能(PCEF)将头片段分类以确定适当的服务数据流(SDF),并且将与所确定的SDF和头片段相关联的信息存储在存储器中。随后转发头片段到目的地订户设备而无须在PGW等待组分尾片段。其后,当PGW接收每个组分尾片段时,在发送片段到订户设备之前PCEF使用所存储的信息来确定相同的SDF并且将相同的SDF应用到尾片段。与头片段一样,每个尾片段被适当地处理并且被发送到订户设备而无须等待其余的尾片段。
本发明提供分类和处理分段的IP包的常规方法所不能够提供的好处。具体来说,本发明易于在现有的PGW上实现和维护。而且,它确保将正确的策略实施应用于分段的IP包的所有组分片段。因而,例如标记为低等待时间的IP包的所有片段将被有效地处理为低等待时间片段。另外,本发明有助于提高PGW外部的处理实体的性能。具体来说,在这些外部实体上执行的TCP/IP应用当它们按其顺序次序处理完整的IP包时,一般会更有效率地完成。由于本发明保持了对应IP包片段的顺序,因此接收来自PGW的已处理的片段的外部网络实体能够更有效率地处理片段并且因此处理它们对应的IP包。此外,保持片段顺序使在PGW上的线卡(或者处理片段的其它组件)与根据常规的完全或虚拟重组方法来处理分段IP包的组件相比,使用更少的资源(例如,CPU和/或分组缓冲存储器)。另外,按照本发明所配置的PGW能够将正确的服务应用到所有片段而不改变包间抖动。这使根据本发明所配置的PGW区别于实现包的虚拟重组或者完全重组的常规配置的PGW。
现在转向附图,图1示出根据常规认知处理IP包的片段的通信系统10。具体来说,系统10包括核心网12,接入网14,订户设备16,网络服务器18和PGW 20。核心网和接入网12、14的操作和功能是本领域中公知的,并且因此,本文不作详细描述。但是,理解核心网12将网络服务器18和PGW 20可通信地连接并且接入网14将订户设备16锚定到PGW 20和网络服务器18就足够了。
尽管订户设备16在图1中示为移动通信设备,但是订户设备16可以是能够与网络服务器18通信以发送和接收IP包的任何终端设备。通常,订户设备16将从网络服务器18(例如,可以是应用服务器)请求数据,并且经由PGW 20和网络12、14以IP包的形式接收该信息。一旦接收到,订户设备16将向用户输出或呈现数据。如前所述,诸如那些携带视频的包之类的非常大的IP包首先被分段为多个组分片段F1,F2,F3,…Fn。将这类大的IP包分段的方法是公知的,并且可由网络服务器16或者由核心网12的领域内的处理实体执行。但是,不管分段在哪里发生,经由核心网12依次发送IP包的片段F1,…Fn到PGW 20以用于处理以及通过网络12、14传送到订户设备16。如图1所示,正在以不同的流将片段F1,…Fn递送到订户设备;但是,用于每个流的物理链路可以相同。
在图1中,IP包被指示为低等待时间的包,因此它应该作为高优先级的包被处理和发送到订户设备18。但是,实际上,处理片段的常规方法可能使接收片段的订户设备18以普通包来处理该IP包。
具体来说,图2是示出常规配置的PGW如何处理用于递送到订户设备16的多个包片段F1,…Fn的功能框图。如图2所示,PGW包括将不同规则24映射到关联的服务处理26的过滤表22。PGW也包括缺省表28。在依次接收到组成原始IP包P的片段F1,…Fn(统称F)时,在PGW上的PCEF基于该片段的报头所携带的L3/L4信息使用过滤表22来分类和处理头片段F1。特别是,PCEF确定用于头片段F1的适当的规则,然后将对应的服务处理应用到该片段。
如上所述,头片段中的L3/L4报头信息指示片段F1是高优先级IP包的一部分。因此,常规的PGW作为高优先级片段分类并处理该片段,并且经由接入网14发送该片段到订户设备16。但是,因为尾片段F2…Fn不携带L4报头信息,所以PCEF不能够使用过滤表22以它分类并且处理头片段F1的相同的方式来分类并且处理尾片段F2…Fn。在这些情况下,PCEF将犹如每个尾片段F2…Fn是普通包的一部分那样来处理它们并且使用缺省表28来确定服务处理。作为结果,尾片段F2…Fn没有犹如它们是高优先级包的一部分那样被处理。而是,它们犹如它们是低优先级包的一部分那样被处理,并且在通信链路上作为低优先级包经由接入网14被转发到订户设备16。
如前所述,在订户设备16呈现完整的IP包P之前,它必须等待接收所有的组分片段F。但是,如果一些尾片段F2…Fn没有以与对应头片段F1相同的高优先级被发送到订户设备18,则在呈现IP包P时会有延迟,由此使订户设备16实际上作为低优先级包来处理IP包P。另外,作为低优先级发送的片段具有由于拥塞而被丢掉的较大风险。在PGW上执行的常规方法(例如,完全和虚拟重组)能够有助于在订户设备16上减轻这种延迟,但是在PGW上不希望地增加了资源使用并且还会增加网络等待时间。
但是,本发明配置PGW来处理IP包P的组分片段F,使得在订户设备16上的延迟被消除而不会对资源强加显著增加的需求,并且不会增加网络等待时间。具体来说,图3是示出根据本发明的一个实施例配置的PGW 20如何处理用于递送到终端用户设备的多个包片段的功能框图。如图3所示,PGW 20配置成包括过滤表22。如前所述,PGW 20使用过滤表22基于该片段中的L3/L4报头信息将头片段F1分类并且识别将应用到头片段F1的对应服务处理。但是,除了过滤表22,PGW 20还配置成包括补充数据结构,补充数据结构在图3中标记为重组高速缓存(RC)30。RC 30起将片段标识值32映射到对应服务处理34的作用。RC 30还包括“丢掉”/“通过”指示符36以指示是否丢掉IP包P的任何片段F。
根据本发明的一个实施例,PGW添加条目到RC 30以用于每个所接收的头片段F1。RC 30中的条目可以通过例如源和目的地IP地址以及由头片段F1所携带的IP标识符来设关键字。条目还包括头片段F1的分类结果,以及创建条目的日期和/或时间。创建的时间戳可用在一些实施例中以淘汰旧的条目。因此,为任何给定头片段所添加的条目可在RC 30中仅仅保留预定的时间段。在该时间段届满后,从RC 30中移除或删除条目。由于实时动态地创建和保持条目,所以这有助于使RC 30的大小保持在最佳的大小。
在操作中,在依次接收到每个随后的尾包F2…Fn时,PGW 20在RC 30中查找用于对应头片段F1的适当的条目。例如,PGW 20可将每个尾包F2…Fn的L3报头所携带的IP标识符以及源和目的地IP地址与RC 30中的ID值32进行比较。如果找到匹配,则在发送尾片段到订户设备18之前PGW 20确定对应的服务处理34并将其应用到该尾片段。当接收和处理构成IP包P的最后的尾片段Fn之后,PGW 20只是从RC 30中删除对应条目。
图4A-4C是示出根据本发明的一个实施例在PGW上处理多个包片段的示例性方法的流程图。具体来说,如这些图所示,配置有RC 30的PGW 20可以确定相同的服务处理并且将相同的服务处理应用到头片段和每个尾片段,而无须在PGW 20上临时将所有片段F排队。
如图4A的方法40所示,在PGW 20上的PCEF首先接收来自路由器或者连接到核心网12或与其相关联的其它网络实体的数据包(框42)。在一个实施例中,PCEF分析所接收的数据包中的L3/L4报头以确定所接收的数据包是否是较大IP包(例如,视频包)的头片段,或者是否是单个未分段的IP包(框44)。如果所接收的数据包既不是头片段也不是单个未分段的IP包,则所接收的数据包必定是尾包。在这些情况下,PCEF将作为原始IP包中的中间或最后片段来处理该尾包(框46),将在下文更详细地解释。
但是,如果所接收的数据包是头片段或者单个未分段的IP包,则PCEF将该数据包分类并在过滤表22中执行查找(框48)。可用任何所需要或所希望的关键字来索引过滤表22;但是,在本实施例中,过滤表22以源和目的地IP地址以及IP标识符来设关键字。如前所述,如果包是头片段或者单个未分段的包,则该信息还由进入的数据包的L3/L4报头所携带。因此,PCEF能够从进入的数据包提取这个数据并且使用所提取的数据作为过滤表22中的索引来分类数据包并且来确定用于该数据包的服务处理。
只有当进入的数据包是头片段时,一旦分类了数据包并且确定了服务处理,则PCEF更新RC 30(框50)。具体来说,PCEF在RC 30中创建条目以用于随后所接收的对应尾片段的处理(框52)。可以生成条目以包括作为关键字的由头片段的报头所携带的IP标识符以及源和目的地IP地址、以及用于头片段的分类结果。还为新创建的条目提供条目的创建时间。创建时间是指示条目何时被创建的时间戳(即,头片段何时在PGW上被分类和处理),并且允许本发明优化RC 30的大小。特别是,PCEF定期地检查RC 30。在预定的时间段后保留在RC 30中的条目被视为“过时”并且可被移除。
一旦更新了RC 30,PCEF按照所识别的服务处理来处理头片段(框54),并且转发该片段到预期目的地(例如,经由接入网14到订户设备16)(框56)。
图4B示出方法60,其中,在PGW 20上的PCEF根据本发明的一个实施例处理与IP包相关联的尾片段。在接收到尾片段时,PCEF首先在RC 30中查找以确定用于与尾片段对应的头片段的过滤结果(框62)。如果找到RC 30中的条目,PCEF将确定尾片段是否是中间片段(即,F2…Fn-1),或者尾片段是否是IP包中的最后片段(即,Fn)(框64)。例如,在一些实施例中,PCEF可访问标识原始IP包的大小的信息,并且因此,使用该信息来计算与IP包相关联的组分片段的数量。在其它的实施例中,仅将该信息提供给PCEF。不管PCEF如何确定组成该IP包的片段的数量,但是,PCEF区分中间片段和最后片段,并且相应地处理该片段。
更具体地说,如果尾片段不是IP包的最后片段,PCEF根据RC 30中的所识别的服务处理来处理尾片段(框74),并且转发尾片段到预期目的地订户设备(框76)。但是,如果尾片段是IP包的最后片段(框64),则PCEF从RC 30中删除对应条目(框66),按照所确定的服务处理处理该最后片段(框74),并且如前所述,向预期目的地转发最后片段(框76)。
对于所接收的片段,如果RC 30中没有对应的条目(框62),则PGW2 20将对片段分类并且基于该分类在过滤表 22中执行查找以确定用于该片段的服务处理(框68)。如果所接收的片段是头片段(框70),则如前所述,PGW 20通过将片段ID和所确定的服务处理添加到RC 30来在RC 30中创建对应条目(框72),并且随后处理(框74)并且转发(框76)该片段。
如前所述,本发明在PGW 20中配置PCEF以处理IP包的片段,而无须在PGW 20中的存储器中首先将那些片段排队。但是,存在PGW 20可能不得不在缓冲器中临时存储一个或多个片段的情形。例如,在一些情形中,与核心网12相关联的路由器可以发送“失序”片段到PGW。因此,有可能的是,头片段F1可能不是将由PGW处理的第一个片段。在这种情境下,常规配置的PGW会仅退到虚拟重组过程100。但是,在至少一个实施例中,本发明配置PGW 20来处理失序的片段,而无需凭借虚拟组装过程。
图4C示出一种这样的方法80,其中,在接收到确定为失序的片段时,PCEF首先确定所接收的片段是否是头片段或尾片段(框82)。如果片段是尾片段,则PCEF仅将该片段放在队列中(框84)。但是,如果该片段是头片段,则PCEF将该片段分类并且执行过滤表查找以确定适当的服务处理(框86)。一旦已确定,PCEF创建用于处理尾片段的RC 30表条目(框88),并且处理队列中的尾片段(框90)。然后,PCEF处理随后接收的尾片段,并且如前所述,在接收到最后片段(即,Fn)时从RC 30中删除对应条目(框92)。
图5是示出根据本发明的一个实施例配置成处理用于递送到订户设备18的包片段的示例性PGW的一些组件的功能框图。如图5所示,PGW 20包括可编程控制器100,一个或多个通信接口102、104,用户输入/输出接口106以及存储器108。存储器108可以包括固态存储器(例如,ROM、DRAM、闪存或者能够读取诸如光的或磁的介质之类的计算机可读介质的设备)。
可编程控制器100还可以包括各种的一个或多个可编程微处理器中的任一个,所述微处理器配置成根据存储在存储器108中的指令和数据控制PGW 20的操作。这些指令包括但不限于用于执行通信功能(诸如分别经由通信接口104和102发送/接收数据包和/或片段至/自核心网12和接入网14)所需的代码。代码和指令也包括PCEF功能110、过滤表22以及如前所述由PCEF动态更新的RC 30。
当然,本发明可以用本文具体陈述的方式以外的其它方式来实现而不偏离本发明的基本特征。例如,前面的实施例将头片段的报头中的L3/L4信息识别为是PCEF插入到RC30中的信息。但是,本领域的技术人员将领会到本发明不限于此。例如,在传输机制使用IPV6的情形中,头片段还可以包含标识原始IP包的总长度的值。因此,当在头片段上应用诸如速度限制、收费和容量限制之类的服务时,PGW能够解释原始IP包并且在RC 30中存储结果。因此,如果由于速度限制或容量限制丢掉了重组的包,原始IP包的所有组分片段将接收类似处理。因此,将认为现有的实施例在所有方面是说明性的而非限制性的,并且落入所附权利要求的含意和等价范围之内的所有变化将被认为包含在本文中。
Claims (19)
1.一种在通信网络中处理IP包的多个片段的方法,所述方法包括:
将在分组网关PGW所接收的包片段分类,其中,所述所接收的包片段包括头片段以及一个或多个尾片段,并且与第一IP包相关联;
将在所述头片段之前在所述PGW处接收到的尾片段存储在缓冲器中;
响应于将包片段分类为头片段:
基于所述头片段的分类将相同的所选的服务处理应用到所述头片段以及应用到存储在所述缓冲器中的每个所述尾片段以及随后接收到的尾片段,而不将所述随后接收到的尾片段存储在所述缓冲器中;以及
在应用所述服务处理之后发送每个包片段到终端用户设备。
2.如权利要求1所述的方法,还包括:
确定所接收的片段是否是所述头片段或尾片段;
如果所述所接收的片段是头片段,则在所述PGW上通过主要过滤表过滤头片段来确定所述所选的服务处理以应用到所述头片段;以及
在所述PGW上更新补充过滤表来将所述所选的服务处理与每个所述尾片段相关联。
3.如权利要求2所述的方法,其中,确定所接收的片段是否是所述头片段包括确定所述所接收的片段是否包括层4协议信息。
4.如权利要求2所述的方法,其中,所述主要过滤表包括一个或多个条目,每个条目与对应的预定服务处理相关联,并且其中,通过主要过滤表过滤所述头片段包括:
将来自所述头片段的数据与所述主要过滤表中的一个或多个条目比较;
如果来自所述头片段的数据与条目匹配,则选择与所述条目对应的所述服务处理以应用到所述头片段。
5.如权利要求2所述的方法,其中,更新补充过滤表包括:
生成补充条目以包括基于所述头片段的分类的信息;
将所述补充条目与应用到所述头片段的所述所选的服务处理相关联;以及
更新所述补充过滤表以包括所述补充条目。
6.如权利要求5所述的方法,其中,生成补充条目还包括生成所述补充条目以包括所述补充条目的创建时间。
7.如权利要求6所述的方法,还包括:在所述补充条目的时限超过预定的时限阈值之后,从所述补充过滤表中删除所述补充条目。
8.如权利要求5所述的方法,其中,如果所述所接收的片段是尾片段,则所述方法还包括:
将来自所述所接收的片段的数据与所述补充过滤表中的所述补充条目比较;
选择与所述补充条目相关联的所述服务处理以应用到所述所接收的片段。
9.如权利要求8所述的方法,其中,如果所述尾片段是所述第一IP包的最后的片段,则从所述补充过滤表中删除所述补充条目以及关联的所选的所述服务处理。
10.一种分组网关PGW,配置成处理IP包的多个片段,所述PGW包括:
第一通信接口,配置成从网络接收多个IP包片段,其中,所接收的包片段包括头片段以及一个或多个尾片段,并且与第一IP包相关联;
第二通信接口,配置成经由接入网发送所述多个IP包片段到用户设备;以及
控制器,配置成:
将经由所述第一通信接口所接收的包片段分类;
将在所述头片段之前在所述PGW处接收到的尾片段存储在缓冲器中;
响应于将包片段分类为头片段:
基于所述头片段的分类将相同的所选的服务处理应用到所述头片段以及应用到存储在所述缓冲器中的每个所述尾片段以及随后接收到的尾片段,而不将所述随后接收到的尾片段存储在所述缓冲器中;并且
在应用所述服务处理之后经由所述第二通信接口发送每个包片段到终端用户设备。
11.如权利要求10所述的PGW,还包括存储器,所述存储器配置成存储将头片段与对应的预定服务处理相关联的主要过滤表以及将尾包片段与所述预定服务处理相关联的补充过滤表。
12.如权利要求11所述的PGW,其中,所述控制器还配置成:
确定所接收的片段是否是头片段或尾片段;
如果所述所接收的片段是头片段,则通过所述主要过滤表过滤所述头片段来选择所述服务处理以应用到所述头片段;并且
更新所述补充过滤表以将所述所选的服务处理与每个所述尾片段相关联。
13.如权利要求12所述的PGW,其中,所述控制器还配置成:如果所接收的片段包括层4协议信息,则确定所接收的片段是头片段。
14.如权利要求12所述的PGW,其中,所述主要过滤表包括一个或多个条目,每个条目与对应的预定服务处理相关联,并且其中,通过所述主要过滤表过滤所述头片段包括:
将来自所述头片段的数据与所述主要过滤表中的一个或多个条目比较;
如果来自所述头片段的数据与条目匹配,则选择与所述条目对应的所述服务处理以应用到所述头片段。
15.如权利要求12所述的PGW,其中,所述控制器还配置成:
生成补充条目以包括基于所述头片段的分类的信息;
将所述补充条目与应用到所述头片段的所述所选的服务处理相关联;以及
更新所述补充过滤表以包括所述补充条目。
16.如权利要求15所述的PGW,其中,所述控制器还配置成生成补充条目以包括所述补充条目的创建时间。
17.如权利要求16所述的PGW,其中,所述控制器还配置成:在所述补充条目的时限超过预定的时限阈值之后,从所述补充过滤表中删除所述补充条目。
18.如权利要求15所述的PGW,其中,如果所述所接收的片段是尾片段,则所述控制器还配置成:
将来自所述所接收的片段的数据与所述补充过滤表中的所述补充条目比较;
选择与所述补充条目相关联的所述服务处理以应用到所述所接收的片段。
19.如权利要求18所述的PGW,其中,所述控制器还配置成:如果所述尾片段是所述第一IP包的最后的片段,则从所述补充过滤表中删除所述补充条目以及关联的所选的所述服务处理。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/421,436 US9282038B2 (en) | 2012-03-15 | 2012-03-15 | Policy control enforcement at a packet gateway |
US13/421436 | 2012-03-15 | ||
US13/421,436 | 2012-03-15 | ||
PCT/IB2013/051757 WO2013136227A1 (en) | 2012-03-15 | 2013-03-05 | Policy control enforcement at a packet gateway |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104170349A CN104170349A (zh) | 2014-11-26 |
CN104170349B true CN104170349B (zh) | 2018-06-26 |
Family
ID=48184260
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380014260.8A Active CN104170349B (zh) | 2012-03-15 | 2013-03-05 | 在分组网关上的策略控制实施 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9282038B2 (zh) |
EP (1) | EP2826221A1 (zh) |
CN (1) | CN104170349B (zh) |
WO (1) | WO2013136227A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016098342A1 (ja) * | 2014-12-19 | 2016-06-23 | 日本電気株式会社 | フィルタリング装置、方法、および、記録媒体 |
US9712649B2 (en) * | 2014-12-29 | 2017-07-18 | Telefonaktiebolaget Lm Ericsson (Publ) | CCN fragmentation gateway |
US10187473B2 (en) | 2016-04-29 | 2019-01-22 | Intuit Inc. | Gateway policy enforcement and service metadata binding |
US10361958B2 (en) * | 2016-09-02 | 2019-07-23 | Openet Telecom Ltd. | System and method for managing and distributing packet flow descriptions in a telecommunications network |
CN109286584B (zh) * | 2017-07-21 | 2021-07-13 | 东软集团股份有限公司 | 一种多核系统中的分片重组方法、装置及设备 |
CN109286577A (zh) * | 2017-07-21 | 2019-01-29 | 东软集团股份有限公司 | 一种多核系统中的分片重组方法、装置及设备 |
US10624148B1 (en) * | 2018-11-05 | 2020-04-14 | Microsoft Tehnology Licensing, LLC | Implementation of core cellular networking stack on cloud infrastructure |
US11575642B2 (en) * | 2020-10-12 | 2023-02-07 | Vmware, Inc. | Multi-path traffic selection for ports in overlay networks |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1411218A (zh) * | 2002-04-23 | 2003-04-16 | 华为技术有限公司 | 分片报文的网络访问控制方法 |
CN1758625A (zh) * | 2004-10-09 | 2006-04-12 | 华为技术有限公司 | 一种对报文进行分类处理的方法 |
CN1921477A (zh) * | 2006-09-01 | 2007-02-28 | 华为数字技术有限公司 | 一种对分片报文进行复杂流分类的方法及系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040184455A1 (en) * | 2003-03-19 | 2004-09-23 | Institute For Information Industry | System and method used by a gateway for processing fragmented IP packets from a private network |
US8325717B2 (en) * | 2003-07-30 | 2012-12-04 | Foundry Networks, Llc | Method and system for IP fragmentation handling |
US8155117B2 (en) | 2004-06-29 | 2012-04-10 | Qualcomm Incorporated | Filtering and routing of fragmented datagrams in a data network |
US8270305B2 (en) * | 2007-03-06 | 2012-09-18 | Nec Corporation | Node device, node system, and method and program for changing statistic information management table used for the node device |
US7826458B2 (en) | 2009-03-05 | 2010-11-02 | Juniper Networks, Inc. | Tracking fragmented data flows |
US8243618B2 (en) | 2010-04-26 | 2012-08-14 | International Business Machines Corporation | Steering fragmented IP packets using 5-tuple based rules |
US8843153B2 (en) * | 2010-11-01 | 2014-09-23 | Seven Networks, Inc. | Mobile traffic categorization and policy for network use optimization while preserving user experience |
US8576841B2 (en) * | 2011-06-30 | 2013-11-05 | Juniper Networks, Inc. | Hybrid port range encoding |
US8644339B1 (en) * | 2011-12-01 | 2014-02-04 | Juniper Networks, Inc. | In-line packet reassembly within a mobile gateway |
-
2012
- 2012-03-15 US US13/421,436 patent/US9282038B2/en active Active
-
2013
- 2013-03-05 CN CN201380014260.8A patent/CN104170349B/zh active Active
- 2013-03-05 WO PCT/IB2013/051757 patent/WO2013136227A1/en active Application Filing
- 2013-03-05 EP EP13718642.5A patent/EP2826221A1/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1411218A (zh) * | 2002-04-23 | 2003-04-16 | 华为技术有限公司 | 分片报文的网络访问控制方法 |
CN1758625A (zh) * | 2004-10-09 | 2006-04-12 | 华为技术有限公司 | 一种对报文进行分类处理的方法 |
CN1921477A (zh) * | 2006-09-01 | 2007-02-28 | 华为数字技术有限公司 | 一种对分片报文进行复杂流分类的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2013136227A1 (en) | 2013-09-19 |
EP2826221A1 (en) | 2015-01-21 |
US9282038B2 (en) | 2016-03-08 |
US20130242997A1 (en) | 2013-09-19 |
CN104170349A (zh) | 2014-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104170349B (zh) | 在分组网关上的策略控制实施 | |
TWI354473B (en) | Packet coalescing | |
US7620870B2 (en) | Data compression method and system | |
EP1158728A2 (en) | Packet processor with multi-level policing logic | |
US20020089929A1 (en) | Packet processor with multi-level policing logic | |
EP2061190A1 (en) | Method, apparatus and system for complex flow classification of fragmented datagrams | |
US20150195098A1 (en) | Hardware-accelerated packet multicasting | |
EP1924028A1 (en) | Method and system for providing qos service | |
CN113055127B (zh) | 数据报文去重与传输方法、电子设备及存储介质 | |
US20150071283A1 (en) | Hardware implemented ethernet multiple tuple filter system and method | |
JPWO2004112326A1 (ja) | パケット転送方法及び装置 | |
US12113715B2 (en) | Quality of service management system for a communication network | |
CN105099938B (zh) | 网络中拥塞窗口的确定方法和装置 | |
CN100593928C (zh) | 一种基于数据特征的流媒体内容下载方法 | |
CN107342906A (zh) | 一种大象流的检测方法、设备及系统 | |
EP4425881A1 (en) | Fragmented packet traffic rate limiting method, and dpu fragmented packet forwarding method and apparatus | |
EP3179687A1 (en) | Network flow information statistics method and apparatus | |
US20210029049A1 (en) | Low Latency DOCSIS Experience Via Multiple Queues | |
WO2021168145A1 (en) | Methods and systems for processing data in a programmable data processing pipeline that includes out-of-pipeline processing | |
US9225654B2 (en) | Method and apparatus for sending packet | |
US20230006937A1 (en) | Packet flow identification with reduced decode operations | |
EP3122012A1 (en) | Data processing method and apparatus for openflow network | |
CN109391550A (zh) | 具有拥塞感知匹配表的网元 | |
JP2016197836A (ja) | パケット伝送装置 | |
CN101803303A (zh) | 用于管理分段数据分组传输的方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |