CN107294863B - 网络数据流转发方法、装置、系统及可读存储介质 - Google Patents

网络数据流转发方法、装置、系统及可读存储介质 Download PDF

Info

Publication number
CN107294863B
CN107294863B CN201710483563.4A CN201710483563A CN107294863B CN 107294863 B CN107294863 B CN 107294863B CN 201710483563 A CN201710483563 A CN 201710483563A CN 107294863 B CN107294863 B CN 107294863B
Authority
CN
China
Prior art keywords
packet
information
forwarding
information packet
controller
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
Application number
CN201710483563.4A
Other languages
English (en)
Other versions
CN107294863A (zh
Inventor
谭培龙
刘昱
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Ticomm Information Technology Co ltd
Original Assignee
Shenzhen Ticomm Information Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Ticomm Information Technology Co ltd filed Critical Shenzhen Ticomm Information Technology Co ltd
Priority to CN201710483563.4A priority Critical patent/CN107294863B/zh
Publication of CN107294863A publication Critical patent/CN107294863A/zh
Application granted granted Critical
Publication of CN107294863B publication Critical patent/CN107294863B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/33Flow control; Congestion control using forward notification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/806Broadcast or multicast traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

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

本发明公开了一种网络数据流转发方法,包括以下步骤:接收网络数据流信息包,并对所述信息包进行解析,得到解析结果;对所述解析结果进行识别,确认所述信息包对应的包类别,其中,所述包类别至少包括信令包、单播数据包、广播数据包、组播数据包;根据所述信息包的包类别,对所述信息包进行相应处理,其中,所述处理至少包括:直接转发所述信息包或与控制器进行交互并根据交互结果转发所述信息包。本发明还公开了一种网络数据流转发装置、系统以及可读存储介质。本发明实现了在转发器上对信息包进行解析识别并进行相应处理,降低了控制器的处理负载,加快了数据流的处理速度。

Description

网络数据流转发方法、装置、系统及可读存储介质
技术领域
本发明涉及网络通信技术领域,尤其涉及网络数据流转发方法、装置、系统及计算机可读存储介质。
背景技术
现有的网络中数据传输的方式,转发器主要用于解析信息包的相关匹配域,并以此匹配域查找本地转发流表进行信息包的转发,若本地转发流表中无匹配项,则需要整包传送给控制器,由控制器重新解析信息包并提取决定转发路径所需信息,根据配置的策略、意图,以合适的算法计算路径,并把得到的转发路径下发到转发器以供转发器根据该新路径进行信息包的转发。
现有的技术中,由于转发器仅存在一种转发流表,进而转发器仅能对少数特定类型的信息包进行转发处理,对于其他类型的信息包的转发则需要获取控制器通过解析计算得到的转发流表后再进行转发,因而这种处理方式加重了控制器的处理负载,降低了处理流的管道速度。
发明内容
本发明的主要目的在于提供一种网络数据流转发方法、装置、系统及计算机可读存储介质,旨在解决如何降低控制器处理负载的技术问题。
为实现上述目的,本发明提供一种网络数据流转发方法,所述网络数据流转发方法包括以下步骤:
接收网络数据流信息包,并对所述信息包进行解析,得到解析结果;
对所述解析结果进行识别,确认所述信息包对应的包类别,其中,所述包类别至少包括信令包、单播数据包、广播数据包、组播数据包;
根据所述信息包的包类别,对所述信息包进行相应处理,其中,所述处理至少包括:直接转发所述信息包或与控制器进行交互并根据交互结果转发所述信息包。
优选地,所述解析结果至少包括:
标识ID、源转发器编号及其端口号、数据类型、标签、源地址、目的地址;
其中,所述标识ID用于区分不同的信息包;所述源转发器编号及其端口号用于确认所述信息包的来源;所述数据类型用于识别信息包类别;所述标签至少包括VLAN、QinQ、PBB、MPLS中的任一种;所述源地址和目的地址至少包括MAC、IP、传输层类型、传输层端口号。
优选地,所述根据所述信息包的包类别,所述转发器对所述信息包进行相应处理的步骤包括:
当所述信息包为信令包时,将所述信息包整包转发至控制器,以供控制器对所述信令包进行解析和计算,并接收控制器根据所述解析和计算结果下发的单播转发流表或组播转发流表。
优选地,所述根据所述信息包的包类别,所述转发器对所述信息包进行相应处理的步骤还包括:
当所述信息包为单播数据包时,查找本地单播转发流表并将所述信息包与所述单播转发流表进行匹配,若有匹配项,则按该匹配项对所述信息包进行动作和转发,若无匹配项,则将所述信息包缓存至本地,同时将所述解析结果发送至控制器,以供控制器对所述解析结果进行计算,并接收控制器根据所述计算结果下发的单播转发流表。
优选地,所述根据所述信息包的包类别,所述转发器对所述信息包进行相应处理的步骤还包括:
当所述信息包为广播数据包时,根据隔离域信息在除入口外的区域内进行广播,其中,所述隔离域是基于VLAN或网络分片信息所形成的,并对不同用户或用户群的数据进行隔离。
优选地,所述根据所述信息包的包类别,所述转发器对所述信息包进行相应处理的步骤还包括:
当所述信息包为组播数据包时,查找本地组播转发流表中是否存在与所述信息包匹配的表项;
若存在匹配的表项,则按该匹配项对所述信息包进行转发,若不存在匹配的表项,则根据隔离域信息在除入口外的区域内广播所述信息包,或者丢弃所述信息包。其中,所述隔离域是基于VLAN或网络分片信息所形成的,并对不同用户或用户群的数据进行隔离。
进一步地,为实现上述目的,本发明还提供一种网络数据流转发装置,所述网络数据流转发装置包括:
存储有网络数据流转发程序的存储器;
处理器,配置为执行所述网络数据流转发程序以执行下述操作:
接收网络数据流信息包,并对所述信息包进行解析,得到解析结果;
对所述解析结果进行识别,确认所述信息包对应的包类别,其中,所述包类别至少包括信令包、单播数据包、广播数据包、组播数据包;
根据所述信息包的包类别,对所述信息包进行相应处理,其中,所述相应处理至少包括:直接转发所述信息包或与控制器进行交互并根据交互结果转发所述信息包。
优选地,所述解析结果至少包括:包标识ID、源转发器编号及其端口号、数据类型、标签、源地址、目的地址;
其中,所述包标识ID用于区分不同的信息包,所述源转发器编号及其端口号用于确认所述信息包的来源,所述数据类型用于标识信息包的包类别,所述标签至少包括VLAN、QinQ、PBB、MPLS中的任一种,所述源地址和目的地址至少包括MAC地址、IP地址、传输层类型、传输层端口号。
优选地,执行所述根据所述信息包的包类别,对所述信息包进行相应处理的操作包括:
当所述信息包为信令包时,将所述信息包整包转发至控制器,以供控制器对所述信令包进行解析和计算,并接收控制器根据所述解析和计算结果下发的单播转发流表或组播转发流表。
优选地,执行所述根据所述信息包的包类别,对所述信息包进行相应处理的操作还包括:
当所述信息包为单播数据包时,查找本地单播转发流表并将所述信息包与所述单播转发流表进行匹配,若有匹配项,则按该匹配项对所述信息包进行动作和转发,若无匹配项,则将所述信息包缓存至本地,同时将所述解析结果发送至控制器,以供控制器对所述解析结果进行计算,并接收控制器根据所述计算结果下发的单播转发流表。
优选地,执行所述根据所述信息包的包类别,对所述信息包进行相应处理的操作还包括:
当所述信息包为广播数据包时,根据隔离域信息在除入口外的区域内进行广播,其中,所述隔离域是基于VLAN或网络分片信息所形成的,并对不同用户或用户群的数据进行隔离。
优选地,执行所述根据所述信息包的包类别,对所述信息包进行相应处理的操作还包括:
当所述信息包为组播数据包时,查找本地组播转发流表中是否存在与所述信息包匹配的表项;
若存在匹配的表项,则按该匹配项对所述信息包进行转发,若不存在匹配的表项,则根据隔离域信息在除入口外的区域内广播所述信息包,或者丢弃所述信息包,其中,所述隔离域是基于VLAN或网络分片信息所形成的,并对不同用户或用户群的数据进行隔离。
本发明实施例提出的一种网络数据流转发方法,在接收到网络数据流信息包时,对信息包进行解析并识别信息包类别,然后根据信息包的类别确定是直接转发信息包还是与控制器进行交互后根据交互结果对信息包进行转发,通过在转发器上对信息包进行解析识别,并根据信息包的类别对信息包进行相应的处理,降低了控制器的处理负载,从而加快了数据流的处理速度。
附图说明
图1为本发明网络数据流转发系统一实施例的框架结构示意图;
图2为本发明网络数据流转发方法一实施例的流程示意图;
图3为网络数据流转发装置进行网络数据流转发一较佳实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例一:
参照图1,图1为本发明网络数据流转发方法一实施例的流程示意图。
步骤S10,接收网络数据流信息包,并对信息包进行解析,得到解析结果;
本实施例中,转发器接收到网络数据信息报后,存储接收到的信息包,对此信息包进行解析,得到相应的解析结果,其中,该解析结果包括:标识ID、源转发器编号及其端口号、数据类型、标签、源地址、目的地址以及其他需要的信息。此外,本实施例中对于对信息包进行解析的方式不限,具体根据实际情况而定。
步骤S20,对解析结果进行识别,确认信息包对应的包类别;
本实施例中,当转发器通过解析获得接收到的信息包的解析结果时,识别并确认信息包的类别,其中,信息包的类别包括:信令包、单播数据包、广播数据包以及组播数据包。
步骤S30,根据信息包的包类别,对信息包进行相应处理。
本实施例中,当识别并确认接收到的信息包的类别时,对信息包进行相应处理,其中,相应处理包括直接转发信息包或与控制器进行交互并根据交互结果转发信息包。
具体地,通过在转发器上识别信息包的类别,同时对于可在转发器上进行转发处理的信息包,则直接在转发器上对其进行转发处理,而对于不能在转发器上进行转发处理的信息包,则将信息包整包或者解析得到的结果信息发送至控制器。
例如,对于一个陌生信息包,转发面上的某一个转发器对接收到的信息包首包进行解析,进而确认信息包的相关信息,假如识别此信息包首包为单播数据包,此时转发器查询本地的单播转发流表,根据解析出来相关信息中的相关匹配域与本地转发流表进行匹配,当匹配到相应的转发路径时,直接由转发器将信息包按照表项中匹配的路径进行转发,当没有匹配到相应的转发路径,则转发器将信息包解析出来的相关信息发送至控制面上相应的控制器,同时将单播数据包信息缓存至本地存储器,此时,控制器利用通过对解析出来的相关信息进行相应计算得到计算结果采取一定措施,决定是本地响应还是下发单播转发流表至转发器,其中,本地响应是对于可以直接由控制器进行处理的数据信息而言,从而转发器根据接收到的单薄转发流表确认信息包转发路径。
再例如,当控制器接收到的信息包类别为信令包时,直接将信息包整包发送至控制面上相应的控制器,而不是在转发器上对信令包进行解析。由于很多信令包相关信息在载荷中,单独截取包头则会丢掉关键信息。如果由转发器进行解析,则随着信令的增加、更改,硬件转发器无法跟上更新的步伐。
本实施例中,在接收到网络数据流信息包时,通过在转发器上对信息包进行解析,识别并确认信息包类别,然后根据信息包的类别对信息包进行相应处理,不同的信息包的处理方式不一样。通过在转发器上对信息包进行解析识别,并在转发器上对信息包进行相应处理,降低了控制器的处理负载,从而加快了数据流的处理速度。
实施例二:
基于实施例一,实施例一中的步骤S30详细包括:
(1)识别信息包的类型为信令包
具体地,当识别确认信息包类别为信令包时,直接将信息包整包发送至控制器,然后根据控制器自身对信息包的解析和计算结果采取相应措施,其中,相应措施包括有本地响应以及下发单播或组播表至转发器。本实施例中,信令包包括ARP/RARP、ICMP、路由信息、IGMP组播信令等。
例如,当接收到的信令包为地址解析包时,转发器直接将信息包发送至控制器,此时控制器通过对信息包的解析,确认此信息包是地址解析包,则控制器通过查询获取IP地址直接对信息包中的地址进行匹配。当接收到的信息包为包含某些协议的信令包时,并且通过控制器的解析计算获取了此信息包的相关协议,此时则将获取的转发流表发送至转发器。
(2)识别信息包的类型为单播数据包
具体地,当识别确认信息包类别为单播数据包时,查找本地单播转发表,并将解析信息包得到的信息包的匹配域与本地单播转发流表进行匹配,若有相应的匹配路径,则按照表项中匹配的路径进行转发,若无相应的匹配路径,转发器将信息包缓存至本地,同时将解析信息包而得到的解析结果发送至控制器,控制器通过对解析结果进行计算从而确认是本地响应还是下发单播转发流表至转发器,并通过单播转发流表确定信息包的转发路径。
(3)识别信息包的类型为广播数据包
具体地,当识别确认信息包类别为广播数据包时,根据隔离域信息在除入口以外的区域内对信息包进行广播,其中,隔离域是由VLAN或网络分片等信息而确定的,用于对不同用户或者用于群的数据进行隔离,抑制广播风暴的产生。
(4)识别信息包的类型为组播数据包
具体地,当信息包为组播数据包时,查找本地组播转发流表中是否存在与信息包匹配的表项;
若存在相应的匹配路径,则按表项中相应的转发路径对信息包进行转发,若不存在相应的匹配路径,则根据隔离域信息在除入口外的区域内对信息包进行广播,或者丢弃信息包,其中,隔离域是由VLAN或网络分片等信息确定的,用于对不同用户或用户群的数据进行隔离,抑制广播风暴的产生。
需要指出的是,在本实施例中,每个步骤是在接收到信息包根据信息包类别而确定的,步骤分开描述只是用于区分,没有任何实质意义,
参照图2,图2为网络数据流转发装置进行网络数据流转发一较佳实施例的流程示意图。
进一步地,为了辅助理解本发明网络数据转发方法,在此提供对网络数据流进行转发一较佳实施例,网络数据流转发方法包括:
1、转发器接收到网络数据流信息包,存储接收到的信息包,并对此信息包进行解析;
2、识别并确认信息包类别;
3、当识别信息包类别为信令包时,将信息包整包发送至控制器;
4、控制器对信令包进行解析计算,并根据解析计算结果确认是本地响应还是下发单播转发流表或组播转发流表给转发器;
5、当识别信息包类别为单播数据包时,查找本地单播转发流表,若有匹配路径,则按表项中匹配的路径进行转发,若没有匹配路径,则将解析出的相关信息发送至控制器;
6、控制器对接收到的解析出的相关信息进行计算,并根据解析计算结果确认是本地响应还是下发单播转发流表给转发器;
7、当转发器接收到控制器下发的单播转发流表时,将解析信息包获得的相关匹配域与此单播转发流表进行匹配,获取相应的转发路径并对信息包进行转发;
8、当识别信息包类别为广播数据包时,根据隔离域信息进行在除入口外的去域内进行广播;
9、当识别信息包类别为组播数据包时,查找本地组播转发流表,若有匹配路径,则按表项进行转发,若没有匹配路径,则根据隔离域信息进行在除入口外的区域内进行广播或者丢弃。
本发明还保护一种网络数据流转发装置。
本发明中,在本发明装置一实施例中,网络数据流转发装置包括:
存储有网络数据流转发程序的存储器;
处理器,配置为执行网络数据流转发程序以执行下述操作:
接收网络数据流信息包,并对信息包进行解析,得到解析结果;
对解析结果进行识别,确认信息包对应的包类别,其中,包类别至少包括信令包、单播数据包、广播数据包、组播数据包;
根据信息包的包类别,对信息包进行相应处理,其中,转发相应处理至少包括:直接转发信息包或与控制器进行交互并根据交互结果转发信息包。
本实施例中,转发器接收到网络数据信息报后,存储接收到的信息包,对此信息包进行解析,得到相应的解析结果,其中,该解析结果包括:标识ID、源转发器编号及其端口号、数据类型、标签、源地址、目的地址以及其他需要的信息。此外,本实施例中对于对信息包进行解析的方式不限,具体根据实际情况而定。
本实施例中,当转发器通过解析获得接收到的信息包的解析结果时,识别并确认信息包的类别,其中,信息包的类别包括:信令包、单播数据包、广播数据包以及组播数据包。
本实施例中,当识别并确认接收到的信息包的类别时,对信息包进行相应处理,其中,相应处理包括直接转发信息包或与控制器进行交互并根据交互结果转发信息包。
具体地,通过在转发器上识别信息包的类别,同时对于可在转发器上进行转发处理的信息包,则直接在转发器上对其进行转发处理,而对于不能在转发器上进行转发处理的信息包,则将信息包整包或者解析得到的结果信息发送至控制器。
例如,对于一个陌生信息包,转发面上的某一个转发器对接收到的信息包首包进行解析,进而确认信息包的相关信息,假如识别此信息包首包为单播数据包,此时转发器查询本地的单播转发流表,根据解析出来相关信息中的相关匹配域与本地转发流表进行匹配,当匹配到相应的转发路径时,直接由转发器将信息包按照表项中匹配的路径进行转发,当没有匹配到相应的转发路径,则转发器将信息包解析出来的相关信息发送至控制面上相应的控制器,同时将单播数据包信息缓存至本地存储器,此时,控制器利用通过对解析出来的相关信息进行相应计算得到计算结果采取一定措施,决定是本地响应还是下发单播转发流表至转发器,其中,本地响应是对于可以直接由控制器进行处理的数据信息而言,从而转发器根据接收到的单薄转发流表确认信息包转发路径。
再例如,当控制器接收到的信息包类别为信令包时,直接将信息包整包发送至控制面上相应的控制器,而不是在转发器上对信令包进行解析。由于很多信令包相关信息在载荷中,单独截取包头则会丢掉关键信息。如果由转发器进行解析,则随着信令的增加、更改,硬件转发器无法跟上更新的步伐。
本实施例中,执行根据信息包的包类别,对信息包进行相应处理的操作包括:
具体地,当识别确认信息包类别为信令包时,直接将信息包整包发送至控制器,然后根据控制器自身对信息包的解析和计算结果采取相应措施,其中,相应措施包括有本地响应以及下发单播或组播表至转发器。本实施例中,信令包包括ARP/RARP、ICMP、路由信息、IGMP组播信令等。
例如,当接收到的信令包为地址解析包时,转发器直接将信息包发送至控制器,此时控制器通过对信息包的解析,确认此信息包是地址解析包,则控制器通过查询获取IP地址直接对信息包中的地址进行匹配。当接收到的信息包为包含某些协议的信令包时,并且通过控制器的解析计算获取了此信息包的相关协议,此时则将获取的转发流表发送至转发器。
具体地,当识别确认信息包类别为单播数据包时,查找本地单播转发表,并将解析信息包得到的信息包的匹配域与本地单播转发流表进行匹配,若有相应的匹配路径,则按照表项中匹配的路径进行转发,若无相应的匹配路径,转发器将信息包缓存至本地,同时将解析信息包而得到的解析结果发送至控制器,控制器通过对解析结果进行计算从而确认是本地响应还是下发单播转发流表至转发器,并通过单播转发流表确定信息包的转发路径。
具体地,当识别确认信息包类别为广播数据包时,根据隔离域信息在除入口以外的区域内对信息包进行广播,其中,隔离域是由VLAN或网络分片等信息而确定的,用于对不同用户或者用于群的数据进行隔离,抑制广播风暴的产生。
具体地,当信息包为组播数据包时,查找本地组播转发流表中是否存在与信息包匹配的表项;
若存在相应的匹配路径,则按表项中相应的转发路径对信息包进行转发,若不存在相应的匹配路径,则根据隔离域信息在除入口外的区域内对信息包进行广播,或者丢弃信息包,其中,隔离域是由VLAN或网络分片等信息确定的,用于对不同用户或用户群的数据进行隔离,抑制广播风暴的产生。
本实施例中,在接收到网络数据流信息包时,通过在转发器上对信息包进行解析,并识别确认信息包类别,然后根据信息包的类别对信息包进行相应处理。通过将解析过程放置在转发器上,并在转发器上对信息包进行相应处理,降低了控制器的处理负载,从而加快了数据流的处理速度。
参照图3,图3为本发明网络数据流转发系统一实施例的框架结构示意图。
本发明的网络数据转发系统包括:
(1)若干转发器,用于对接收到的信息包进行解析识别处理,并根据解析识别结果对信息包进行相应处理,其中,相应处理包括直接按照路径进行转发或与控制器进行交互并根据交互结果对信息包进行转发。本实施例中,对于转发器的个数设置不限,实际个数视实际情况而定。并且,为了使转发器能实现上述对信息包转的各项发功能,转发器还包括转发装置。
基于转发装置所实现的功能,转发装置可包括如下功能模块:
包解析模块,用于解析信息包,识别信息包类别,并将解析结果存储到包解析结果存储模块中以及将接收到的信息包存储到包存储器中;
包解析结果存储模块,用于包存储模块解析出来的结果;
包存储模块,用于存储接收到的信息包;
控制面请求信息生成模块,用于根据包解析结果,对需要上报到控制器的信息按照控制器与转发器间信道数据格式生成请求信息;
包处理引擎模块,用于根据包解析结果处理可在转发器上进行处理的信息包。
(2)网络控制器,用于对在转发器不能进行处理的信息包进行解析计算,并根据解析计算的相关信息进行相应操作,同时,对于可直接在控制器上进行处理的信息包,控制器直接执行相应操作。在本实施例中,对于控制器的个数设置不限,可以是一个网络控制器,也可以是控制器集群,实际个数视实际情况而定。
本实施例中,在转发解析识别了信息包的列别,并根据相应的转发流表与信息包进行匹配后,当匹配到了合适的转发路径时,则通过包引擎处理模块对信息包进行直接的转发,当没有发现合适的匹配路径至,则会通过控制面请求信息生成模块生成请求信息,并将相关信息发送至控制器,然后控制器通过对信息包的解析和计算确定是本地响应还是将解析计算得到的转发流表发送至转发器,通过转发器对信息包进行转发处理。
本发明实施例还提出一种计算机可读存储介质。
本发明实施例还提出一种计算机可读存储介质,计算机可读存储介质上存储有网络数据流转程序,网络数据流转程序被处理器执行时实现上述的网络数据流转发方法的步骤。
本实施例提出的网络数据流转发方法,基于网络控制器与转发器的协同工作,在转发器上对接收到的信息包进行解析,并对解析出的数据流进行识别,同时,在转发器上对信息包进行路径的匹配和转发,而对于未能在转发器上进行转发的信息包,则将信息包的解析结果或整个信息包上报给控制器,同时在控制器上采取相应的措施,避免控制器再次对信息包进行解析,从而大幅降低控制器的处理负载,提升了信息流的整体管道处理速度。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (6)

1.一种网络数据流转发方法,其特征在于,所述网络数据流转发方法包括以下步骤:
接收网络数据流信息包,并对所述信息包进行解析,得到解析结果;
对所述解析结果进行识别,确认所述信息包对应的包类别,其中,所述包类别至少包括信令包、单播数据包、广播数据包、组播数据包;
根据所述信息包的包类别,对所述信息包进行相应处理,其中,所述处理至少包括:直接转发所述信息包或与控制器进行交互并根据交互结果转发所述信息包;
所述根据所述信息包的包类别,对所述信息包进行相应处理包括:
当所述信息包为信令包时,将所述信息包整包转发至控制器,以供控制器对所述信令包进行解析和计算,并接收控制器根据所述解析和计算结果下发的单播转发流表或组播转发流表;
当所述信息包为单播数据包时,查找本地单播转发流表并将所述信息包与所述单播转发流表进行匹配,若有匹配项,则按该匹配项对所述信息包进行动作和转发,若无匹配项,则将所述信息包缓存至本地,同时将所述解析结果发送至控制器,以供控制器对所述解析结果进行计算,并接收控制器根据所述计算结果下发的单播转发流表;
当所述信息包为广播数据包时,根据隔离域信息在除入口外的区域内进行广播;
当所述信息包为组播数据包时,查找本地组播转发流表中是否存在与所述信息包匹配的表项;若存在匹配的表项,则按该匹配项对所述信息包进行转发,若不存在匹配的表项,则根据隔离域信息在除入口外的区域内广播所述信息包,或者丢弃所述信息包,其中,所述隔离域是基于VLAN或网络分片信息所形成的,并对不同用户或用户群的数据进行隔离。
2.如权利要求1所述的网络数据流转发方法,其特征在于,所述解析结果至少包括:包标识ID、源转发器编号及其端口号、数据类型、标签、源地址、目的地址;
其中,所述包标识ID用于区分不同的信息包,所述源转发器编号及其端口号用于确认所述信息包的来源,所述数据类型用于标识信息包的包类别,所述标签至少包括VLAN、QinQ、PBB、MPLS中的任一种,所述源地址和目的地址至少包括MAC地址、IP地址、传输层类型、传输层端口号。
3.一种网络数据流转发装置,其特征在于,所述网络数据流转发装置包括:
存储有网络数据流转发程序的存储器;
处理器,配置为执行所述网络数据流转发程序以执行下述操作:
接收网络数据流信息包,并对所述信息包进行解析,得到解析结果;
对所述解析结果进行识别,确认所述信息包对应的包类别,其中,所述包类别至少包括信令包、单播数据包、广播数据包、组播数据包;
根据所述信息包的包类别,对所述信息包进行相应处理,其中,所述相应处理至少包括:直接转发所述信息包或与控制器进行交互并根据交互结果转发所述信息包;
执行所述根据所述信息包的包类别,对所述信息包进行相应处理的操作包括:
当所述信息包为信令包时,将所述信息包整包转发至控制器,以供控制器对所述信令包进行解析和计算,并接收控制器根据所述解析和计算结果下发的单播转发流表或组播转发流表;
当所述信息包为单播数据包时,查找本地单播转发流表并将所述信息包与所述单播转发流表进行匹配,若有匹配项,则按该匹配项对所述信息包进行动作和转发,若无匹配项,则将所述信息包缓存至本地,同时将所述解析结果发送至控制器,以供控制器对所述解析结果进行计算,并接收控制器根据所述计算结果下发的单播转发流表;
当所述信息包为广播数据包时,根据隔离域信息在除入口外的区域内进行广播;
当所述信息包为组播数据包时,查找本地组播转发流表中是否存在与所述信息包匹配的表项;若存在匹配的表项,则按该匹配项对所述信息包进行转发,若不存在匹配的表项,则根据隔离域信息在除入口外的区域内广播所述信息包,或者丢弃所述信息包,其中,所述隔离域是基于VLAN或网络分片信息所形成的,并对不同用户或用户群的数据进行隔离。
4.如权利要求3所述的网络数据流转发装置,其特征在于,所述解析结果至少包括:包标识ID、源转发器编号及其端口号、数据类型、标签、源地址、目的地址;
其中,所述包标识ID用于区分不同的信息包,所述源转发器编号及其端口号用于确认所述信息包的来源,所述数据类型用于标识信息包的包类别,所述标签至少包括VLAN、QinQ、PBB、MPLS中的任一种,所述源地址和目的地址至少包括MAC地址、IP地址、传输层类型、传输层端口号。
5.一种网络数据流转发系统,其特征在于,所述网络数据流转发系统包括:若干转发器与若干控制器,所述转发器包括权利要求3-4中任一项所述的网络数据流转发装置。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有网络数据流转发程序,所述网络数据流转发程序被处理器执行时实现如权利要求1至2中任一项所述的网络数据流转发方法的步骤。
CN201710483563.4A 2017-06-22 2017-06-22 网络数据流转发方法、装置、系统及可读存储介质 Active CN107294863B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710483563.4A CN107294863B (zh) 2017-06-22 2017-06-22 网络数据流转发方法、装置、系统及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710483563.4A CN107294863B (zh) 2017-06-22 2017-06-22 网络数据流转发方法、装置、系统及可读存储介质

Publications (2)

Publication Number Publication Date
CN107294863A CN107294863A (zh) 2017-10-24
CN107294863B true CN107294863B (zh) 2021-04-16

Family

ID=60097562

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710483563.4A Active CN107294863B (zh) 2017-06-22 2017-06-22 网络数据流转发方法、装置、系统及可读存储介质

Country Status (1)

Country Link
CN (1) CN107294863B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107708194A (zh) * 2017-11-10 2018-02-16 珠海市魅族科技有限公司 一种报文过滤方法及装置、终端和可读存储介质
CN107948087A (zh) * 2017-12-07 2018-04-20 锐捷网络股份有限公司 一种负载均衡的方法及设备
CN111343056B (zh) * 2018-12-19 2021-08-31 美的集团股份有限公司 一种通讯方法、存储介质、设备、接收终端及发送终端
CN110798409A (zh) * 2019-10-31 2020-02-14 深信服科技股份有限公司 流量处理方法、装置和存储介质
CN114785746B (zh) * 2022-04-19 2023-06-16 厦门大学 一种用于单组播混传的banyan网络

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102868614A (zh) * 2012-09-13 2013-01-09 杭州华三通信技术有限公司 Trill网络中的报文转发方法和路由网桥
CN104079492A (zh) * 2013-03-28 2014-10-01 华为技术有限公司 一种OpenFlow网络中流表配置的方法、装置和系统
CN104506461A (zh) * 2014-12-24 2015-04-08 重庆大学 一种工业通信网络关口设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3073698A4 (en) * 2013-12-13 2016-11-23 Huawei Tech Co Ltd METHOD FOR PROCESSING ADDRESS RESOLUTION PROTOCOL MESSAGE, RE-ROUTING UNIT AND CONTROLLER

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102868614A (zh) * 2012-09-13 2013-01-09 杭州华三通信技术有限公司 Trill网络中的报文转发方法和路由网桥
CN104079492A (zh) * 2013-03-28 2014-10-01 华为技术有限公司 一种OpenFlow网络中流表配置的方法、装置和系统
CN104506461A (zh) * 2014-12-24 2015-04-08 重庆大学 一种工业通信网络关口设备

Also Published As

Publication number Publication date
CN107294863A (zh) 2017-10-24

Similar Documents

Publication Publication Date Title
CN107294863B (zh) 网络数据流转发方法、装置、系统及可读存储介质
US11637774B2 (en) Service routing packet processing method and apparatus, and network system
US10033648B2 (en) Multicast message forwarding method and device
CN104022953B (zh) 基于开放流Openflow的报文转发方法和装置
US9319317B1 (en) Systems and methods for disseminating addresses in distributed switching environments
US10148562B2 (en) Packet sending method, router, and service switching entity
CN104283785B (zh) 一种快速处理流表的方法和装置
CN103905317B (zh) 一种软件定义网络的报文处理方法和系统
CN103841023B (zh) 数据转发的方法和设备
US10742777B2 (en) UDP protocol acceleration method and system
US9900238B2 (en) Overlay network-based original packet flow mapping apparatus and method therefor
CN101433029A (zh) 用于使用第二层源地址的选择性的第二层端口阻塞的方法、系统和计算机程序产品
US10027496B2 (en) Method for distributing identifiers of multicast sources
CN103532672A (zh) 一种sdn网络中分片报文乱序的处理方法及应用
CN101534248B (zh) 深度报文识别方法和系统及业务板
CN108600109A (zh) 一种报文转发方法和装置
CN107623757A (zh) 表项更新方法和装置
KR100890608B1 (ko) 방송 시스템을 위해 멀티캐스트 주소를 패킷 식별자로매핑하는 방법 및 장치
WO2017024818A1 (zh) 一种处理数据报文的方法及装置
JP4025593B2 (ja) 放送型通信データ配送装置および放送型通信システム
CN102932229A (zh) 一种对数据包进行加解密处理的方法
US20160330166A1 (en) Address Acquiring Method and Network Virtualization Edge Device
CN103200084A (zh) 基于网络处理器的报文预处理方法、装置及网络处理器
CN110798409A (zh) 流量处理方法、装置和存储介质
KR102024545B1 (ko) 오버레이 네트워크 기반에서의 오리지널 패킷 플로우 매핑 장치 및 그 방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant