CN101325597B - 一种数据处理的方法、装置及系统 - Google Patents
一种数据处理的方法、装置及系统 Download PDFInfo
- Publication number
- CN101325597B CN101325597B CN2008101174414A CN200810117441A CN101325597B CN 101325597 B CN101325597 B CN 101325597B CN 2008101174414 A CN2008101174414 A CN 2008101174414A CN 200810117441 A CN200810117441 A CN 200810117441A CN 101325597 B CN101325597 B CN 101325597B
- Authority
- CN
- China
- Prior art keywords
- stream
- list item
- control
- version information
- control strategy
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种处理数据方法、装置和系统。当更新控制管理面的控制策略时,更新所述控制策略的版本信息;当数据面收到数据报文时,若数据面的流表中不存在包含当前数据流的流标识的流表项,则在数据面的流表中创建流表项,并根据创建的流表项或控制管理面的控制策略处理当前数据报文;若数据面的流表中存在包含当前数据流的流标识的流表项,则判断该流表项的版本信息是否与当前控制管理面的控制策略的版本信息匹配,若匹配,则根据该流表项处理当前数据报文,若不匹配,则根据控制管理面的控制策略处理当前数据报文。使用本发明实施例的技术方案,能够保证数据面的数据处理方式与控制管理面的控制策略相一致,从而避免数据处理出现错误。
Description
技术领域
本发明涉及计算机网络技术领域,特别地涉及一种数据处理的方法、装置及系统。
背景技术
现代高性能网络设备中的控制管理面与数据面分离的设计如图1所示。通用处理装置中运行控制管理面,网络处理装置中运行数据面。控制管理面主要负责构造并管理用于报文处理的控制策略,指导数据面的报文处理逻辑。而数据面则负责具体的报文处理操作,因此也通常也被称为处理面。
数据面的流表中存储有对应于各个数据流的数据报文处理方式。流表是指以数据流标识为关键字构建的一个查找表数据结构,在流表的每个流表项中都存储了本数据流的流标识以及针对本数据流的数据报文处理方式。所以流表项与各个数据流及其标识信息相对应,也与各个数据流中的报文相对应。系统可以直接根据流表项处理数据报文,即利用流表项中的数据报文处理方式对报文进行操作。以访问控制列表ACL(Access Control List)为例,基于流表的数据处理的流程如图2所示,主要包括以下步骤:
步骤21:接收数据报文,从该数据报文中抽取流标识。
步骤22:查找流表中是否存在包含该流标识的流表项,如果不存在,继续步骤23,如果存在,进入步骤26。
步骤23:根据路由表中记录的匹配规则,路由选路。
步骤24:根据ACL过滤表中记录的过滤策略,确定ACL的过滤结果。
步骤25:根据该数据报文的流标识、路由选路及ACL的过滤结果建立流表项。
步骤26:根据流表中包含该流标识的流表项中的数据报文处理方式执行报文处理。
从步骤25可以看出,流表中的数据报文处理方式来自于路由表和ACL过滤表,而路由表和ACL过滤表都位于控制管理面,它们提供了用于数据处理的控制策略。所以流表中的流表项以及流表项中的数据报文处理方式与控制管理面的控制策略相关联。
在上述方法中,若当前数据报文命中流表项,即该数据报文的流标识在流表中存在时,系统直接根据流表项执行报文处理。若当前数据报文没有命中流表项,则根据控制管理面的控制策略执行数据报文处理。
当控制管理面的控制策略变更时,比如ACL过滤策略由“允许通过”变更为“阻断”时,必须及时通知数据面,才能保证数据面总是按照与控制管理面的控制策略相一致的方式执行数据报文处理操作。
当控制管理面控制策略变更时,控制管理面主动遍历数据面的整个流表,找到与控制管理面控制策略相关联的流表项并将其删除,在数据面接收到这些数据流的首条报文时,重新建立流表项;或者在控制管理面找到与控制管理面控制策略相关联的流表项之后,将这些数据流表项的原有的数据处理方式根据变更后的控制管理面控制策略进行更新,得到新的数据处理方式。
由于现有技术中在控制管理面的控制策略变更时是通过遍历流表的方法更新流表项,若流表中的流表项非常大,比如达上百万条流表项,则遍历流表的进程可能导致控制管理面运行停滞以及控制管理面的其它部分不能正常工作,特别是控制管理面与数据面分别位于不同的处理器的情况下,这种做法更加影响系统的性能。并且,因为遍历流表需要一定的时间,从上述步骤21-26中可以看出如果当前报文命中的是未遍历到的流表项,则该未遍历到的流表项中的数据报文处理方式仍然会被应用于当前数据报文,也就是说命中的流表项没有进行更新,这样,若控制管理面中与当前数据报文命中的流表项相关联的控制策略发生变更,并且该流表项未被更新,则该流表项中的数据报文处理方 式不符合控制管理面中的数据控制策略,如果仍旧根据该流表项对当前数据报文进行处理,则会导致数据处理错误。
发明内容
有鉴于此,为了在收到数据报文之后应用于该数据报文的处理方式符合控制管理面中的控制策略,避免由于未及时更新数据面而导致的数据处理错误,本发明实施例提供如下的技术方案:
一种处理数据的方法,包括:
当更新控制管理面的控制策略时,更新所述控制策略的版本信息;
当数据面收到数据报文时,判断数据面的流表中是否存在包含当前数据报文所属的当前数据流的流标识的流表项;
若数据面的流表中不存在包含当前数据流的流标识的流表项,则在数据面的流表中创建流表项,创建的流表项包含当前数据流的流标识和根据控制管理面的控制策略得到的对当前数据报文的处理方式以及与所述控制策略的版本信息匹配的流表项的版本信息,并根据创建的流表项或根据控制管理面的控制策略处理当前数据报文;
若数据面的流表中存在包含当前数据流的流标识的流表项,则判断该流表项的版本信息是否与当前控制管理面的控制策略的版本信息匹配,若匹配,则根据该流表项处理当前数据报文,若不匹配,则
根据控制管理面的控制策略修改该流表项包含的对数据报文的处理方式,然后根据修改后的流表项处理当前数据报文,以及根据控制管理面的控制策略的版本信息修改包含当前数据流的流标识的流表项的版本信息,或者
根据控制管理面的控制策略修改该流表项包含的对数据报文的处理方式,并根据控制管理面的控制策略处理当前数据报文,以及根据控制管理面的控制策略的版本信息修改包含当前数据流的流标识的流表项的版本信息。
一种数据处理的系统,由网络处理装置和运行控制管理面的通用处理装置 组成,通用处理装置包括第一发送模块和第二发送模块,网络处理装置包括第一判断模块、第二判断模块、流表模块和操作模块,其中:
所述第一发送模块,用于向网络处理装置发送控制管理面的控制策略的版本信息;
所述第二发送模块,用于向网络处理装置发送控制管理面的控制策略;
所述第一判断模块,用于判断所述流表模块中是否存在包含当前数据报文所属的当前数据流的流标识的流表项单元;
所述第二判断模块,用于若存在包含当前数据流的流标识的流表项单元,则判断该流表项单元的版本信息是否与当前控制管理面的控制策略的版本信息匹配;
所述流表模块,用于:
若不存在包含当前数据流的流标识的流表项单元,则创建流表项单元,创建的流表项单元包含当前数据流的流标识和根据控制管理面的控制策略得到的对当前数据报文的处理方式以及与所述控制策略的版本信息匹配的流表项单元的版本信息,以及
若存在包含当前数据流的流标识的流表项单元并且该流表项单元的版本信息与当前控制管理面的控制策略的版本信息不匹配,则根据所述控制策略更新该流表项单元包含的对当前数据报文的处理方式,并根据当前控制策略的版本信息更新该流表项单元的版本信息;
所述操作模块,用于所述流表模块中不存在包含当前数据流的流标识的流表项单元,则根据流表模块创建的流表项单元处理当前数据报文,以及若数据面的流表模块中存在包含当前数据流的流标识的流表项单元,则如果该流表项单元的版本信息与当前控制管理面的控制策略的版本信息匹配则根据该流表项单元处理当前数据报文,否则根据控制管理面的控制策略修改该流表项单元包含的对数据报文的处理方式然后根据该流表项单元处理当前数据报文。
一种数据处理装置,包括第一判断模块、第二判断模块、流表模块和操作 模块,其中:
所述第一判断模块,用于判断所述流表模块中是否存在包含当前数据报文所属的当前数据流的流标识的流表项单元;
所述第二判断模块,用于若存在包含当前数据流的流标识的流表项单元,则判断该流表项单元的版本信息是否与当前控制管理面的控制策略的版本信息匹配;
所述流表模块,用于:
若不存在包含当前数据流的流标识的流表项单元,则创建流表项单元,创建的流表项单元包含当前数据流的流标识和根据控制管理面的控制策略得到的对当前数据报文的处理方式以及与所述控制策略的版本信息匹配的流表项单元的版本信息,以及
若存在包含当前数据流的流标识的流表项单元并且该流表项单元的版本信息与当前控制管理面的控制策略的版本信息不匹配,则根据所述控制策略更新该流表项单元包含的对当前数据报文的处理方式,并根据当前控制策略的版本信息更新该流表项单元的版本信息;
所述操作模块,用于若所述流表模块中不存在包含当前数据流的流标识的流表项单元,则根据流表模块创建的流表项单元或根据控制管理面的控制策略处理当前数据报文,以及若所述流表模块中存在包含当前数据流的流标识的流表项单元,则如果该流表项单元的版本信息与当前控制管理面的控制策略的版本信息匹配则根据该流表项单元处理当前数据报文,否则根据控制管理面的控制策略修改该流表项单元包含的对数据报文的处理方式然后根据该流表项单元或根据控制管理面的控制策略处理当前数据报文。
一种数据处理的系统,由网络处理装置和运行控制管理面的通用处理装置组成,通用处理装置包括第一发送模块和第二发送模块,网络处理装置包括第一判断模块、第二判断模块、流表模块和操作模块,其中:
所述第一发送模块,用于向网络处理装置发送控制管理面的控制策略的版 本信息;
所述第二发送模块,用于向网络处理装置发送控制管理面的控制策略;
所述第一判断模块,用于判断所述流表模块中是否存在包含当前数据报文所属的当前数据流的流标识的流表项单元;
所述第二判断模块,用于若存在包含当前数据流的流标识的流表项单元,则判断该流表项单元的版本信息是否与当前控制管理面的控制策略的版本信息匹配;
所述流表模块,用于:
若不存在包含当前数据流的流标识的流表项单元,则创建流表项单元,创建的流表项单元包含当前数据流的流标识和根据控制管理面的控制策略得到的对当前数据报文的处理方式以及与所述控制策略的版本信息匹配的流表项单元的版本信息,以及
若存在包含当前数据流的流标识的流表项单元并且该流表项单元的版本信息与当前控制管理面的控制策略的版本信息不匹配,则根据所述控制策略更新该流表项单元包含的对当前数据报文的处理方式,并根据当前控制策略的版本信息更新该流表项单元的版本信息;
所述操作模块,用于所述流表模块中不存在包含当前数据流的流标识的流表项单元,则根据流表模块创建的流表项单元或根据控制管理面的控制策略处理当前数据报文,以及若所述流表模块中存在包含当前数据流的流标识的流表项单元,则如果该流表项单元的版本信息与当前控制管理面的控制策略的版本信息匹配则根据该流表项单元处理当前数据报文,否则根据控制管理面的控制策略修改该流表项单元包含的对数据报文的处理方式然后根据该流表项单元或根据控制管理面的控制策略处理当前数据报文。
使用本发明实施例的技术方案,在收到数据报文之后,能够及时地修正不符合当前控制管理面的控制策略的流表项,并且使应用于当前数据报文的数据报文处理方式符合当前控制管理面的控制策略,从而避免数据处理出现错误。
附图说明
图1为控制管理面与数据面的示意图;
图2为现有技术中基于流表的数据处理流程图;
图3为本发明实施例的方法流程图;
图4为本发明实施例的系统示意图。
具体实施方式
当数据面收到数据报文时,为了使应用于当前数据报文的处理方式与控制管理面的控制策略相一致,并且及时更新流表项,在本发明实施例中,当更新控制管理面的控制策略时,更新所述控制策略的版本信息;当数据面收到数据报文时,判断数据面的流表中是否存在包含当前数据流的流标识的流表项;若数据面的流表中不存在包含当前数据流的流标识的流表项,则在数据面的流表中创建流表项,创建的流表项包含当前数据流的流标识和根据控制管理面的控制策略得到的对当前数据报文的处理方式以及与所述控制策略的版本信息匹配的流表项的版本信息,并根据创建的流表项或控制管理面的控制策略处理当前数据报文;若数据面的流表中存在包含当前数据流的流标识的流表项,则判断该流表项的版本信息是否与当前控制管理面的控制策略的版本信息匹配,若匹配,则根据该流表项处理当前数据报文,若不匹配,根据控制管理面的控制策略修改该流表项包含的对数据报文的处理方式,然后根据该流表项处理当前数据报文,以及根据控制管理面的控制策略的版本信息修改包含当前数据流的流标识的流表项的版本信息,或者根据控制管理面的控制策略修改该流表项包含的对数据报文的处理方式,然后根据控制管理面的控制策略处理当前数据报文以及根据控制管理面的控制策略的版本信息修改包含当前数据流的流标识的流表项的版本信息。下面对本发明实施例的技术方案进行详细说明。
本发明实施例中利用版本信息来标志控制管理面中的控制策略的更新状 态,当控制管理面修改控制策略之后,根据其版本信息能够得知控制策略已被更新。一般来说控制策略包含对于数据处理的多个步骤的控制策略,各个步骤可以分别更新,所以这里的版本信息应当能体现出其中各步骤的控制策略的更新状况。例如控制管理面的控制策略包括路由选路的策略和访问控制列表过滤的策略,分别包含于路由表和ACL过滤表中,路由表的版本信息为R1,ACL过滤表的版本信息为F1,这样,控制管理面控制策略的版本信息由路由表的版本信息和ACL过滤表的版本信息两部分组成,可以表示为R1F1的形式。当路由表和/或ACL过滤表更新,版本信息R1F1也应当部分或全部更新,例如当路由表更新,则控制管理面的版本信息变为R2F1;若此时又更新了路由表和ACL过滤表,则该版本信息由R2F1变为R3F2。当然,在版本信息中也可以不区分各个步骤,例如记控制管理面的版本信息为V1,当其中任一步骤有更新时,更新此版本信息,例如更新为V2。在有些应用场合,控制管理面只包含单个步骤的控制策略,例如在网络通信数据流信息统计中,根据不同流标识的数据流,将数据流全部丢弃或将数据流全部传给统计模块进行信息统计,或将数据流的一部分传给统计模块,即控制管理面包含的控制策略为:按设定的比例(取值范围0-100%)对当前数据流进行数据信息统计,在这种情况下版本信息也只由一部分组成。
在数据面,因为流表项包含的对数据报文的处理方式是根据控制管理面的控制策略而得出,所以流表项的版本信息与控制管理面的控制策略的版本信息具有匹配关系。例如,在控制管理面中,当前路由策略的版本信息为R1,ACL过滤策略的版本信息为F1,在数据面有一条流表项仅针对路由处理,则该流表项的版本信息应当为R1,该版本信息“R1”与控制管理面中的控制策略的版本信息“R1F1”匹配;又如,有一条流表项针对路由处理与ACL过滤处理,则该流表项的版本信息为R1F1,与控制管理面的控制策略的版本信息“R1F1”匹配。这里给出的是较为直观的方式,流表项的版本信息的形式不限于此,但不论是何种形式,版本信息应当能够反映出流表项包含的对数据报文的处理方 式与控制管理面中的控制策略之间的匹配关系。当流表项的版本信息与控制管理面中的控制策略的版本信息不匹配时,说明流表项包含的对数据报文的处理方式不符合控制管理面中的控制策略。例如,控制管理面中的控制策略版本信息为R1F1,数据面中存在一条版本信息为R1F1的流表项;当控制管理面中的路由表经过修正,版本信息相应修改为R2F1,而该条流表项的版本信息仍为R1F1,则“R1F1”与“R2F1”不相匹配,由此可以得知该流表项包含的对数据报文的处理方式不符合控制管理面中的控制策略。又如,若有流表项的版本信息为R1,而当前控制管理面中的控制策略版本信息为R2F1,则可以根据“R2F1”与“R1”不匹配而得知流表项包含的对数据报文的处理方式不符合控制管理面中的控制策略。此时应当根据当前控制管理面中的控制策略对该流表项中的数据报文处理方式作出修改,并且将R1修改为R2。另外,如果控制管理面的版本信息没有区别其中各步骤,即如上面所举例中的版本为V1,则流表中所有流表项中的版本信息应当与该版本匹配,例如M1;当控制管理面中的控制策略被更新,并且相应地V1更新为V2之后,在数据报文命中流表项时,根据该流表项中版本为M1,不与V2匹配,则根据控制管理面中的控制策略对该报文进行处理,并根据控制管理面中的控制策略修改该流表项包含的对数据报文的处理方式,以及将版本由M1修改为M2。可以看出若控制管理面中的控制策略更新时,若只更新了部分步骤的策略,而命中的流表项不涉及这些步骤,虽然流表项的版本与更新后的控制管理面中的控制策略版本不匹配,但该流表项无需更新。所以优选地应当使版本的形式能够区别控制管理面中的各步骤,即例如上文所述的R1F1的形式,在当前数据报文命中的流表项包含的对数据报文的处理方式不涉及控制管理面的控制策略中被修改的步骤的策略时,避免对该流表项的不必要修改。
在上面给出的方法中,将流表项的版本与控制管理面中的控制策略的版本信息进行了对比,所以可选地把控制管理面中的控制策略的版本信息保存在数据面中,并随着控制管理面中的控制策略的修改而更新。
在使用版本信息来标志控制管理面的控制策略的更新状态与流表项包含的对数据报文的处理方式的更新状态之后,如图3所示,本发明实施例给出的方法包括如下步骤:
步骤31:数据面接收当前数据报文。
步骤32:判断数据面的流表中是否存在包含当前数据流的流标识的流表项即当前数据报文是否命中流表项,若是,转入步骤33,若否,转入步骤321。
步骤33:判断命中的流表项的版本信息是否与控制管理面的控制策略的版本信息匹配,若是转入步骤34,若否转入步骤331。
步骤34:根据命中的流表项处理当前数据报文,即根据该流表项中的数据报文处理方式对当前数据报文进行操作;然后结束流程。
步骤321:创建与当前数据报文对应的流表项,该流表项中包含根据控制管理面的控制策略得到对当前数据报文的处理方式以及与控制策略的版本信息匹配的流表项版本信息。
步骤322:根据创建的流表项对当前数据报文进行处理;然后结束流程。
步骤331:根据控制管理面的控制策略修改步骤32中命中的流表项。
步骤332:根据步骤331中修改的流表项对当前数据报文进行处理;然后结束流程。
在有些应用场合,控制管理面的控制策略与流标识相对应,并且对于有的流标识,控制管理面中不存在对应该流标识的控制策略,此时若控制管理面中存在缺省控制策略(当控制管理面中不存在对应当前数据报文的流标识的控制策略时适用的控制策略),则采用缺省的控制策略对当前数据报文进行处理。所以上述步骤321和331中的控制策略也包括控制管理面中的缺省控制策略。
在上述步骤中,步骤322和步骤332也可以根据控制管理面的控制策略对当前数据报文进行处理。这样,步骤322和步骤321之间并无先后关系,步骤332和步骤331之间也无先后关系。
下面以ACL业务为例说明本发明实施例中的方法。在控制管理面中包含 路由策略(当前版本信息R1)和ACL过滤策略(当前版本信息F1),则控制管理面的控制策略版本信息为R1F1;此时数据面收到一条数据报文,假设其携带的流标识为X,没有命中数据面流表中的流表项,则在数据面的流表中创建流表项A,该流表项中保存了根据路由策略和ACL过滤策略而得出的对于携带流标识为X的数据报文的处理方式,以及根据当前控制管理面的控制策略版本信息R1F1得到的该流表项的版本信息。以后,当数据面又收到携带流标识为X的数据报文,则该报文命中了数据面的流表项A,流表项A中的数据报文处理方式包括路由选路的方式和ACL过滤的方式,版本信息为R1F1,与控制管理面的控制策略版本信息匹配,则按照流表项A对当前数据报文进行处理。当控制管理面中的路由策略被更新,版本信息也随之更新为R2,则控制管理面的控制策略版本信息为R2F1;此时若有数据报文命中流表项A,则因A的版本信息R1F1不与当前控制管理面的控制策略版本信息为R2F1匹配,不能根据流表项A对当前数据报文进行处理,只能根据控制管理面的控制策略来处理当前数据报文,以避免数据处理出现错误。具体来说,根据控制管理面的控制策略来处理当前数据报文时,可以根据控制管理面的控制策略得到对当前数据报文的处理方式并根据该处理方式处理当前数据报文,也可以先根据控制策略对流表项A进行修改,使其中的数据报文处理方式符合控制策略,再根据流表项A对当前数据报文进行处理。修改流表项A时,还应当将其版本信息由原来的R1F1修改为R2F1,使其版本信息与当前控制管理面的控制策略版本信息匹配,这样,在控制策略没有出现更改之前收到携带的流标识为X的数据报文时,根据其命中的流表项A的版本信息与控制策略版本信息匹配,可确定根据流表项A对当前数据报文进行处理而不会出现错误。
下面再以网络通信数据流信息统计为例说明本发明实施例的方法。在控制管理面的过滤规则表中包含了对于数据过滤的控制策略,数据面的流表中包含了对应于各种流标识的过滤处理方式。如果当前过滤规则表版本信息是V1,与该版本信息匹配的流表项版本信息是M1,该信息的具体形式也可以与过滤 规则表版本信息相同,即也为V1。当数据报文命中这些流表项中的一条流表时,可以按该流表进行数据过滤而不出现错误。若当前数据报文没有命中流表项,则建立流表项,该流表项中包含根据过滤规则表得出的过滤处理方式,并且包含了与当前过滤规则表匹配的流表项版本信息例如M1。在根据过滤规则表得出流表项中的过滤处理方式时,若过滤规则表中包含了对于当前数据报文的过滤规则,则根据该过滤规则得出对当前数据报文的过滤处理方式,否则根据过滤规则表中的缺省过滤规则得出过滤处理方式,此外如果过滤规则表中没有缺省策略,则创建的流表项中的过滤处理方式为“直接丢弃”。但不论创建的流表项中包含了何种过滤处理方式,该流表项中都应当保存与当前过滤规则表版本信息匹配的版本信息,当后继有数据报文命中该创建的流表项时,根据版本信息的匹配判断可以决定是否根据该流表项对数据报文进行过滤处理。当过滤规则表被更新,则应当更新其版本信息;在数据报文命中流表项时,易知版本信息已经不匹配,此时应当修改流表项,包括修改其中过滤处理方式和其版本信息。
基于本发明实施例的方法,本发明实施例给出一种数据处理系统。如图4所示,本发明实施例给出的系统由通用处理装置和网络处理装置组成。控制管理面运行于通用处理装置,数据面运行于网络处理装置,网络处理装置根据控制管理面的控制策略对收到的数据报文进行处理。
通用处理装置包括第一发送模块和第二发送模块。第一发送模块用于保存并向网络处理装置发送控制管理面的控制策略的版本信息。第二发送模块用于向网络处理装置发送控制管理面的控制策略。
网络处理装置包括第一判断模块、第二判断模块、流表模块和操作模块。
第一判断模块用于判断所述流表模块中是否存在包含当前数据流的流标识的流表项单元。第二判断模块用于若存在包含当前数据流的流标识的流表项单元,则判断该流表项单元的版本信息是否与当前控制管理面的控制策略的版本信息匹配。
流表模块,用于:
若不存在包含当前数据流的流标识的流表项单元,则创建流表项单元,创建的流表项单元包含当前数据流的流标识和根据控制管理面的控制策略得到的对当前数据报文的处理方式以及与所述控制策略的版本信息匹配的流表项单元的版本信息,以及若存在包含当前数据流的流标识的流表项单元并且该流表项单元的版本信息与当前控制管理面的控制策略的版本信息不匹配,则根据所述控制策略更新该流表项单元包含的对当前数据流的处理方式,并根据根据当前控制策略的版本信息更新该流表项单元的版本信息。
操作模块用于若流表模决中不存在包含当前数据流的流标识的流表项单元,则根据流表模块创建的流表项单元处理当前数据报文,以及若数据面的流表模块中存在包含当前数据流的流标识的流表项单元,则如果该流表项单元的版本信息与当前控制管理面的控制策略的版本信息匹配则根据该流表项单元处理当前数据流,否则根据控制管理面的控制策略修改该流表项单元包含的对数据报文的处理方式然后根据该流表项单元处理当前数据流。
网络处理装置还可以进一步包括存储模块,同示于图4中,用于保存所述控制策略的版本信息;当控制管理面的控制策略更新时,存储模块更新保存的所述控制策略的版本信息。
在创建或修改流表项单元之后,可以按照如上所述的根据创建或修改的流表项对当前数据报文的处理,也可以根据当前控制管理面的控制策略来进行。操作模块在工作时,可以从上述两种方式中择一进行操作。
应用本发明实施例给出的技术方案,根据数据报文命中的流表项版本信息与当前控制管理面的控制策略的版本信息不一致能够判断出流表项中的数据报文处理方式已不符合当前控制管理面的控制策略,并且相应地修改命中的流表项,使其与当前控制策略相一致,所以对于数据面在接收了数据报文之后,能够及时地修正流表项。并且,在本发明实施例的技术方案中,应用于当前数据报文的处理方式与当前控制管理面的控制策略相一致,所以能够避免数据处 理出现错误。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (8)
1.一种处理数据的方法,其特征在于,该方法包括:
当更新控制管理面的控制策略时,更新所述控制策略的版本信息;
当数据面收到数据报文时,判断数据面的流表中是否存在包含当前数据报文所属的当前数据流的流标识的流表项;
若数据面的流表中不存在包含当前数据流的流标识的流表项,则在数据面的流表中创建流表项,创建的流表项包含当前数据流的流标识和根据控制管理面的控制策略得到的对当前数据报文的处理方式以及与所述控制策略的版本信息匹配的流表项的版本信息,并根据创建的流表项或根据控制管理面的控制策略处理当前数据报文;
若数据面的流表中存在包含当前数据流的流标识的流表项,则判断该流表项的版本信息是否与当前控制管理面的控制策略的版本信息匹配,若匹配,则根据该流表项处理当前数据报文,若不匹配,则
根据控制管理面的控制策略修改该流表项包含的对数据报文的处理方式,然后根据修改后的流表项处理当前数据报文,以及根据控制管理面的控制策略的版本信息修改包含当前数据流的流标识的流表项的版本信息,或者
根据控制管理面的控制策略修改该流表项包含的对数据报文的处理方式,并根据控制管理面的控制策略处理当前数据报文以及根据控制管理面的控制策略的版本信息修改包含当前数据流的流标识的流表项的版本信息。
2.如权利要求1所述方法,其特征在于,所述控制管理面的控制策略包括一个以上控制步骤的策略;
所述控制管理面的控制策略的版本信息由所述控制步骤的策略的版本信息组成;
创建流表项时,流表项中的对数据报文的处理方式根据1个或多个所述控制步骤的策略而得到,创建的流表项的版本信息与创建该流表项时控制步骤策略的版本信息匹配;
所述判断包含当前数据流的流标识的流表项的版本信息是否与控制管理面的控制策略的版本信息匹配包括:判断包含当前数据流的流标识的流表项的版本信息是否与当前控制步骤策略的版本信息匹配。
3.如权利要求1或2所述方法,其特征在于,进一步包括:在数据面中保存所述控制策略的版本信息;
当控制管理面的控制策略更新时,更新数据面中保存所述控制策略的版本信息。
4.如权利要求2所述方法,其特征在于,所述控制策略包括按当前数据流中设定比例的数据进行数据信息统计的策略;
或者包括路由选路的策略和访问控制列表过滤的策略。
5.一种数据处理的系统,由网络处理装置和运行控制管理面的通用处理装置组成,其特征在于,通用处理装置包括第一发送模块和第二发送模块,网络处理装置包括存储模块、第一判断模块、第二判断模块、流表模块和操作模块,其中:
所述第一发送模块,用于保存并向网络处理装置发送控制管理面的控制策略的版本信息;
所述第二发送模块,用于向网络处理装置发送控制管理面的控制策略;
所述存储模块,用于保存所述控制策略的版本信息以及当控制管理面的控制策略更新时,更新保存的控制策略的版本信息;
所述第一判断模块,用于判断所述流表模块中是否存在包含当前数据报文所属的当前数据流的流标识的流表项单元;
所述第二判断模块,用于若所述流表模块中存在包含当前数据流的流标识的流表项单元,则判断该流表项单元的版本信息是否与当前控制管理面的控制策略的版本信息匹配;
所述流表模块,用于:
若不存在包含当前数据流的流标识的流表项单元,则创建流表项单元,创建的流表项单元包含当前数据流的流标识和根据控制管理面的控制策略得到的对当前数据报文的处理方式以及与所述控制策略的版本信息匹配的流表项单元的版本信息,以及
若存在包含当前数据流的流标识的流表项单元并且该流表项单元的版本信息与当前控制管理面的控制策略的版本信息不匹配,则根据所述控制策略更新该流表项单元包含的对当前数据报文的处理方式,并根据当前控制策略的版本信息更新该流表项单元的版本信息;
所述操作模块,用于若所述流表模块中不存在包含当前数据流的流标识的流表项单元,则根据流表模块创建的流表项单元处理当前数据报文,以及若所述流表模块中存在包含当前数据流的流标识的流表项单元,则如果该流表项单元的版本信息与当前控制管理面的控制策略的版本信息匹配则根据该流表项单元处理当前数据报文,否则根据控制管理面的控制策略修改该流表项单元包含的对数据报文的处理方式然后根据该流表项单元处理当前数据报文。
6.一种数据处理装置,其特征在于,包括第一判断模块、第二判断模块、流表模块和操作模块,其中:
所述第一判断模块,用于判断所述流表模块中是否存在包含当前数据报文所属的当前数据流的流标识的流表项单元;
所述第二判断模块,用于若存在包含当前数据流的流标识的流表项单元,则判断该流表项单元的版本信息是否与当前控制管理面的控制策略的版本信息匹配;
所述流表模块,用于:
若不存在包含当前数据流的流标识的流表项单元,则创建流表项单元,创建的流表项单元包含当前数据流的流标识和根据控制管理面的控制策略得到的对当前数据报文的处理方式以及与所述控制策略的版本信息匹配的流表项单元的版本信息,以及
若存在包含当前数据流的流标识的流表项单元并且该流表项单元的版本信息与当前控制管理面的控制策略的版本信息不匹配,则根据所述控制策略更新该流表项单元包含的对当前数据报文的处理方式,并根据当前控制策略的版本信息更新该流表项单元的版本信息;
所述操作模块,用于若所述流表模块中不存在包含当前数据流的流标识的流表项单元,则根据流表模块创建的流表项单元或根据控制管理面的控制策略处理当前数据报文,以及若所述流表模块中存在包含当前数据流的流标识的流表项单元,则如果该流表项单元的版本信息与当前控制管理面的控制策略的版本信息匹配则根据该流表项单元处理当前数据报文,否则根据控制管理面的控制策略修改该流表项单元包含的对数据报文的处理方式然后根据该流表项单元或根据控制管理面的控制策略处理当前数据报文。
7.如权利要求6所述装置,其特征在于,进一步包括存储模块,用于:
保存所述控制策略的版本信息;
当控制管理面的控制策略更新时,更新保存的所述控制策略的版本信息。
8.一种数据处理的系统,由网络处理装置和运行控制管理面的通用处理装置组成,其特征在于,通用处理装置包括第一发送模块和第二发送模块,网络处理装置包括存储模块、第一判断模块、第二判断模块、流表模块和操作模块,其中:
所述第一发送模块,用于向网络处理装置发送控制管理面的控制策略的版本信息;
所述第二发送模块,用于向网络处理装置发送控制管理面的控制策略;
所述存储模块,用于保存所述控制策略的版本信息以及当控制管理面的控制策略更新时,更新数据面中保存所述控制策略的版本信息;
所述第一判断模块,用于判断所述流表模块中是否存在包含当前数据报文所属的当前数据流的流标识的流表项单元;
所述第二判断模块,用于若存在包含当前数据流的流标识的流表项单元,则判断该流表项单元的版本信息是否与当前控制管理面的控制策略的版本信息匹配;
所述流表模块,用于:
若不存在包含当前数据流的流标识的流表项单元,则创建流表项单元,创建的流表项单元包含当前数据流的流标识和根据控制管理面的控制策略得到的对当前数据报文的处理方式以及与所述控制策略的版本信息匹配的流表项单元的版本信息,以及
若存在包含当前数据流的流标识的流表项单元并且该流表项单元的版本信息与当前控制管理面的控制策略的版本信息不匹配,则根据所述控制策略更新该流表项单元包含的对当前数据报文的处理方式,并根据当前控制策略的版本信息更新该流表项单元的版本信息;
所述操作模块,用于若所述流表模块中不存在包含当前数据流的流标识的流表项单元,则根据流表模块创建的流表项单元或根据控制管理面的控制策略处理当前数据报文,以及若所述流表模块中存在包含当前数据流的流标识的流表项单元,则如果该流表项单元的版本信息与当前控制管理面的控制策略的版本信息匹配则根据该流表项单元处理当前数据报文,否则根据控制管理面的控制策略修改该流表项单元包含的对数据报文的处理方式然后根据该流表项单元或根据控制管理面的控制策略处理当前数据报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101174414A CN101325597B (zh) | 2008-07-30 | 2008-07-30 | 一种数据处理的方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101174414A CN101325597B (zh) | 2008-07-30 | 2008-07-30 | 一种数据处理的方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101325597A CN101325597A (zh) | 2008-12-17 |
CN101325597B true CN101325597B (zh) | 2011-04-06 |
Family
ID=40188921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101174414A Expired - Fee Related CN101325597B (zh) | 2008-07-30 | 2008-07-30 | 一种数据处理的方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101325597B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103379039B (zh) | 2012-04-23 | 2016-12-14 | 华为技术有限公司 | 一种用于流统计的方法、装置及系统 |
CN102882790A (zh) * | 2012-10-12 | 2013-01-16 | 北京锐安科技有限公司 | 一种IPv6实时数据流处理方法 |
CN102946365B (zh) * | 2012-11-09 | 2015-06-17 | 清华大学 | 一种基于软件定义网络的保持流表更新一致性的方法 |
CN102970239B (zh) * | 2012-11-28 | 2015-07-22 | 福建星网锐捷网络有限公司 | 流处理方法、流处理装置、路由器及流处理系统 |
WO2015027374A1 (zh) * | 2013-08-26 | 2015-03-05 | 华为技术有限公司 | 数据面的特性配置方法和装置 |
CN103560951A (zh) * | 2013-11-13 | 2014-02-05 | 华为技术有限公司 | 报文处理方法及物理转发设备 |
WO2015109497A1 (zh) * | 2014-01-23 | 2015-07-30 | 华为技术有限公司 | 流表修改方法、流表修改装置和开放流网络系统 |
CN104113482B (zh) * | 2014-07-23 | 2017-11-24 | 华为技术有限公司 | 流表更新的方法、装置和系统 |
CN104601470B (zh) * | 2015-01-21 | 2018-09-04 | 新华三技术有限公司 | 一种流表处理方法及装置 |
CN106034046A (zh) * | 2015-03-20 | 2016-10-19 | 中兴通讯股份有限公司 | 访问控制列表acl的发送方法及装置 |
CN112468341A (zh) * | 2020-11-27 | 2021-03-09 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 一种网络节点同步的方法、及网络设备 |
CN115129685A (zh) * | 2021-03-24 | 2022-09-30 | 阿里巴巴新加坡控股有限公司 | 数据处理方法和装置、电子设备及计算机可读存储介质 |
CN116527568B (zh) * | 2023-07-03 | 2023-10-31 | 北京左江科技股份有限公司 | 一种网络报文处理实时更新流表关联的实现方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1612562A (zh) * | 2003-10-28 | 2005-05-04 | 武汉烽火网络有限责任公司 | 用策略流实现不同因特网协议数据包转发的方法和设备 |
CN1708029A (zh) * | 2004-06-08 | 2005-12-14 | 华为技术有限公司 | 建立转发流表的方法 |
EP1626526A1 (en) * | 2003-05-20 | 2006-02-15 | Huawei Technologies Co., Ltd. | Method and device for configuring data in communication device |
EP1715627A1 (en) * | 2004-02-12 | 2006-10-25 | Huawei Technologies Co., Ltd. | A method for implementing the real-time synchronization between the network management system and the network element device configuration data |
CN1905491A (zh) * | 2006-08-11 | 2007-01-31 | 杭州华为三康技术有限公司 | 一种流量统计方法及流量采集器 |
-
2008
- 2008-07-30 CN CN2008101174414A patent/CN101325597B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1626526A1 (en) * | 2003-05-20 | 2006-02-15 | Huawei Technologies Co., Ltd. | Method and device for configuring data in communication device |
CN1612562A (zh) * | 2003-10-28 | 2005-05-04 | 武汉烽火网络有限责任公司 | 用策略流实现不同因特网协议数据包转发的方法和设备 |
EP1715627A1 (en) * | 2004-02-12 | 2006-10-25 | Huawei Technologies Co., Ltd. | A method for implementing the real-time synchronization between the network management system and the network element device configuration data |
CN1708029A (zh) * | 2004-06-08 | 2005-12-14 | 华为技术有限公司 | 建立转发流表的方法 |
CN1905491A (zh) * | 2006-08-11 | 2007-01-31 | 杭州华为三康技术有限公司 | 一种流量统计方法及流量采集器 |
Also Published As
Publication number | Publication date |
---|---|
CN101325597A (zh) | 2008-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101325597B (zh) | 一种数据处理的方法、装置及系统 | |
CN102497280B (zh) | 一种分布式系统及其实现管理的方法 | |
EP1779239A1 (en) | Universal upgrade architecture | |
CN103152197B (zh) | 规则集编排处理方法、装置及集群数据系统 | |
CN104158749A (zh) | 软件定义网络中报文转发方法、网络设备及软件定义网络 | |
KR20130126730A (ko) | 네트워크 시스템, 스위치 및 접속 단말기 검지 방법 | |
EP2926512B1 (en) | Determining multicast root nodes in a telecommunications network | |
US10122654B2 (en) | Divided hierarchical network system based on software-defined networks | |
CN105049502A (zh) | 一种云端网络管理系统中设备软件更新的方法和装置 | |
CN104601470A (zh) | 一种流表处理方法及装置 | |
WO2014041813A1 (en) | Information processing apparatus, configuration method, communication system, and program | |
CN102368692B (zh) | 基于逻辑序列号的无源光网络的光网络单元替换方法 | |
CN106648801A (zh) | 一种Hadoop集群自动添加删除节点的方法 | |
CN102223299A (zh) | 隧道间带宽资源的管理方法和系统 | |
US9979594B2 (en) | Methods, apparatuses, and systems for controlling communication networks | |
WO2014041811A1 (en) | Control apparatus, control method, communication system, and program | |
EP2736201B1 (en) | Routing table management method and system | |
CN103986660A (zh) | 加载微码的装置以及加载微码的方法 | |
CN102769495B (zh) | 一种光纤接入网设备通信方法、装置及系统 | |
CN104980526A (zh) | Mac地址漂移的控制方法、装置及网络设备 | |
US11153214B2 (en) | In service flow capability update in guaranteed bandwidth multicast network | |
US20170070573A1 (en) | Communication device, communication system, and data processing device | |
CN104917623B (zh) | 一种实现sdn网络通信管理的方法及装置 | |
CN111698142B (zh) | 一种报文转发方法、装置、电子设备及存储介质 | |
CN106375132A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110406 Termination date: 20140730 |
|
EXPY | Termination of patent right or utility model |