WO2023045403A1 - Gateway-based multi-channel route fast forwarding and intelligent routing method - Google Patents

Gateway-based multi-channel route fast forwarding and intelligent routing method Download PDF

Info

Publication number
WO2023045403A1
WO2023045403A1 PCT/CN2022/097529 CN2022097529W WO2023045403A1 WO 2023045403 A1 WO2023045403 A1 WO 2023045403A1 CN 2022097529 W CN2022097529 W CN 2022097529W WO 2023045403 A1 WO2023045403 A1 WO 2023045403A1
Authority
WO
WIPO (PCT)
Prior art keywords
channel
message
matching
library
routing
Prior art date
Application number
PCT/CN2022/097529
Other languages
French (fr)
Chinese (zh)
Inventor
陈金龙
刘文超
谢斐
江俊晔
倪友田
Original Assignee
天翼数字生活科技有限公司
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 天翼数字生活科技有限公司 filed Critical 天翼数字生活科技有限公司
Publication of WO2023045403A1 publication Critical patent/WO2023045403A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9014Indexing; Data structures therefor; Storage structures hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways

Definitions

  • the invention relates to network technology, in particular to gateway-based multi-channel route fast forwarding and intelligent route selection.
  • the gateway When receiving a message, the gateway needs to complete the routing of the message according to attributes such as destination IP, domain name, and source MAC. When there are multiple channels in the gateway, some channels may be underused, wasting channel resources; some channels are overloaded, causing network congestion.
  • Policy routing is a more flexible packet routing and forwarding mechanism than routing based on the target network.
  • the router will determine how to process the data packets that need to be routed through the routing graph, and the routing graph determines the next hop forwarding router of a data packet.
  • the present invention models channel resources for multi-channel scenarios, uses an intelligent route selection scheduling module to complete multi-channel selection, and uses weighting factors to complete fast forwarding of channel messages.
  • a method for multi-channel routing including: based on feature matching conditions and channels, a full amount of HASH matching library is generated by performing HASH calculation on the feature matching conditions, and the feature matching Conditions include destination IP/domain name and source MAC, and the full amount of HASH matching library includes a plurality of routing information entries, each routing information entry indicates destination IP/domain name and source MAC and the channel corresponding to it; for the report received from the application Analyze the text to extract the feature matching conditions of the message; based on the extracted feature matching conditions, match in the routing validation library to find the channel corresponding to the message, wherein the routing validation library includes the previous The routing information entries that are successfully matched in the full HASH matching library; if the matching is successful in the routing effective library, the message is sent to the channel corresponding to the message; if the matching is successful in the routing effective library Unsuccessful, then based on the extracted feature matching conditions, match in the full amount of HASH matching library to find the channel corresponding to the
  • a system for multi-channel routing including: a configuration module configured to perform HASH calculation on the feature matching condition based on the feature matching condition and the channel
  • the feature matching conditions include destination IP/domain name and source MAC
  • the full amount of HASH matching library includes a plurality of routing information entries, each routing information entry indicates destination IP/domain name and source MAC and its corresponding Corresponding channels
  • message parsing module the message parsing module is configured to analyze the message received from the application, to extract the feature matching condition of the message
  • single channel fast routing module the single channel fast
  • the route selection module is configured to: based on the extracted feature matching conditions, perform matching in the routing effective library to find the channel corresponding to the message, wherein the routing effective library includes the previous matching in the full amount of HASH matching library A successful routing information entry; if the matching is successful in the routing validation library, the message is sent to the channel corresponding to the message; if the matching is unsuccessful in the routing validation library,
  • a computing device for multi-channel routing including: a processor; a memory, the memory stores instructions, and the instructions can perform the above when executed by the processor the method described.
  • FIG. 1 shows a schematic diagram 100 of multi-channel routing for messages from applications in the prior art
  • FIG. 2 shows a block diagram of a multi-channel routing system 200 according to an embodiment of the present invention
  • FIG. 3 shows a flowchart of a method 300 for multi-channel routing according to an embodiment of the present invention.
  • FIG. 4 shows a block diagram 400 of an exemplary computing device according to one embodiment of the invention.
  • references in this specification to "one embodiment,” “an embodiment,” “example embodiment,” etc. mean that the embodiment may include a particular feature, structure, or characteristic, but that each embodiment does not necessarily include the particular feature, structure, or characteristic. Characteristic, structure or characteristic. Moreover, these phrases are not necessarily referring to the same embodiment. Furthermore, when a specific feature, structure or characteristic is described in conjunction with an embodiment, it should be understood that within the knowledge of those skilled in the relevant art, the specific feature, structure or characteristic can be implemented in combination with other embodiments whether explicitly described or not.
  • Feature matching conditions such as destination IP, domain name, source MAC, configured by users or administrators;
  • Full HASH matching library a full matching library generated after HASH calculation of feature matching conditions; characteristics: the number of feature matching conditions is large, and matching is time-consuming, for example: 400,000 IPs and 50,000 domain names.
  • Routing effective library For the application from which the message comes, after matching in the full HASH matching library, put the specific route into this library; features: the number is small, and the matching time is negligible.
  • FIG. 1 shows a schematic diagram 100 of multi-channel routing for packets from applications in the prior art.
  • Gateway device 102 may receive packets from different applications (such as applications 101-A through 101-N), and gateway device 102 may route the packets, for example based on stored routing table 103, to multiple channels (such as, One of the channels 104-A to 104-N) to forward the message to the Internet 105 through the appropriate channel.
  • the gateway device 102 can be connected with one or more connected devices (for example, PC, mobile phone, tablet, notebook computer, etc.), and the applications 101-A to 101-N can be implemented on these connected devices.
  • the routing table 103 stores paths pointing to specific network addresses (such as destination IP, domain name, etc.), which include packet transmission priority paths selected by routing algorithms. For example, after receiving a message from the application 101A, the gateway device 102 can compare the destination address of the message with corresponding information in the routing table 103, thereby obtaining an appropriate channel for the message.
  • the gateway device 102 can compare the destination address of the message with corresponding information in the routing table 103, thereby obtaining an appropriate channel for the message.
  • the amount of data in the routing table is extremely large, it is inefficient to select a channel for the message based only on the routing table.
  • FIG. 2 shows a block diagram of a multi-channel routing system 200 according to an embodiment of the present invention, and the system 200 can be implemented in a gateway device or other devices for routing.
  • the gateway device may be connected with one or more connected devices, and the system 200 can efficiently select routes for messages received from applications on the one or more connected devices.
  • the system 200 may include a configuration module 201 , a packet parsing module 202 , a single-channel fast routing module 203 , a forwarding performance evaluation module 204 , a multi-channel routing module 205 and a resource scheduling module 206 .
  • a configuration module 201 the configuration module 201
  • a packet parsing module 202 the packet parsing module 202
  • a single-channel fast routing module 203 the forwarding performance evaluation module 204
  • a multi-channel routing module 205 may be a resource scheduling module 206 .
  • the configuration module 201 is configured to perform HASH calculation on channel resources according to feature matching conditions, so as to generate a full amount of HASH matching library 207 .
  • the user or administrator can issue the "feature matching condition" and "channel”, and the configuration module 201 performs HASH calculation on the received "feature matching condition".
  • the feature matching condition may include destination IP/domain name, source MAC (that is, the MAC of the downlink device in which the application sending the message is implemented).
  • the maximum number of entries used to generate the feature matching conditions of the full HASH matching library 207 can be determined according to the memory and FLASH capacity of the gateway device in which the system 200 is implemented or other devices used for routing,
  • the value range of each condition is determined according to the number of bytes.
  • the maximum number of entries and the range are as follows:
  • IPv4 maximum support 400,000 IPv4 or IPv6, IPv4 is 4 bytes, IPv6 is 16 bytes.
  • IPv6 is 16 bytes.
  • Domain name a maximum of 50,000 domain names are supported, and each domain name has a maximum length of 255 bytes. For example: baidu.com, xxx.xx.x.news.baidu.com;
  • Source MAC It supports a maximum of 32 source MACs (source MACs of devices connected to the gateway, such as PCs, mobile phones, etc.), and each source MAC is fixed at 12 bytes. For example: 00ED12345678;
  • Network channel also called message egress
  • cloud network ultra-wide channel can be determined according to the number of channels.
  • each routing information entry may exist in the following form, for example: ⁇ destination IP, source MAC, channel ⁇ or ⁇ domain name, source MAC, channel ⁇ . That is, each entry may indicate its corresponding channel for a specific destination IP/specific domain name and source MAC.
  • the channel may include a WAN channel, a cloud network ultra-wide channel, and the like.
  • the configuration module 201 can be configured to update the full HASH matching library 207 according to a preset cycle to ensure full HASH matching
  • the accuracy and timeliness of routing information entries in repository 207 can be configured as required, for example, according to the number of entries, the ratio of changed channels to all channels, and the like.
  • the message parsing module 202 is configured to extract feature matching conditions from the message.
  • the message interest calculation module 202 parses the message from the application to extract the destination IP/domain name, source MAC and other information therein.
  • the message parsing module 202 may also be configured to assign a weighting factor to the message according to the message type. When a message is sent into a channel, multiple messages in the channel can be sorted according to the weighting factor assigned to each message.
  • the user and/or the administrator can assign a weighting factor to the messages from the application or the type of application for each application or type of application.
  • the weighting factor of packets from user-specified high-value applications can be 10 to 8 points
  • the weighting factor of packets from video applications can be 7 points
  • the weighting factor of packets from voice applications It can be 6 points
  • the weighting factor of messages from live broadcast applications can be 5 points
  • the weighting factor of messages from image applications can be 4 points
  • the weighting factor of messages from other types of applications can be 3 points ⁇ 1 point.
  • the message parsing module 202 may also be configured to assign a weighting factor to the message according to the usage frequency of the application from which the message comes. For example, if the message comes from an application that the user uses frequently (eg, a browser, etc.), the message can be given the highest weighting factor, and if the message comes from an application that the user uses less frequently, the message can be given the highest weighting factor. Lower weighting factor.
  • the single-channel fast route selection module 203 is configured to match the feature matching conditions extracted from the message in the routing validation library 208 to find the corresponding channel.
  • the feature matching conditions extracted in the article are fully matched in the full HASH matching library 207, and the corresponding routing information is put into the routing validation library 208 after the matching is successful, so as to update the routing validation library 208. If there is still no successful match in the full HASH matching library 207, the forwarding performance evaluation module 204 is notified to perform real-time evaluation on each channel.
  • the single-channel fast route selection module 203 fails to select routes in the routing effective library 208 and the full amount of HASH matching library 207, it means that no specific channel is specified for this message, and all channels need to be evaluated in real time to select a suitable channel. channel forwarding.
  • the routing validating library 208 includes the routing information entries previously successfully matched by the single-channel fast routing module 203 .
  • the route validating library 208 may be a subset of the full HASH matching library.
  • the route validation library 208 can set a validation time for each included routing information entry, so as to ensure the accuracy and timeliness of the routing information.
  • the effective time may correspond to a preset period when the full HASH matching database is updated. Since the number of routing information entries included in the route validating library 208 is much smaller than that in the full HASH matching library 207, the matching time is so small that it can be ignored.
  • the forwarding performance evaluation module 204 is configured to evaluate the congestion situation of each channel.
  • the forwarding performance evaluation module 204 is configured to evaluate the status parameter of each channel in real time, and feed back the evaluation result of each channel to the multi-channel routing module 205 in real time.
  • the status parameters of the channel may include, for example, forwarding efficiency (such as the upper limit of the rate of each channel, signal quality, delay and packet loss rate of heartbeat packets) and/or currently queued packets in the channel Quantity etc.
  • the evaluation information for each channel may have the following form ⁇ channel, parameter 1 result, parameter 2 result...parameter N result ⁇ .
  • the multi-path routing module 205 is configured to select a path based on the evaluation result of each path received from the forwarding performance evaluation module 204, and send the message to the path.
  • the multi-channel routing module 205 may select the channel with the highest total evaluation score for forwarding.
  • the resource scheduling module 206 is configured to queue the messages in the channel according to the weighting factors of the messages to form a priority queue, and forward the messages in the priority queue upstream sequentially .
  • the resource scheduling module 206 is configured to sequentially send packets to an OLT (Optical Line Terminal, Optical Line Terminal).
  • the flow direction of the message is transmission medium (PC, mobile phone, etc.)->ONU (optical network unit, commonly known as: gateway, optical modem))->OLT (which is a gateway (ONU) ), there are multiple gateways attached to the OLT)->upper network equipment. Therefore, the resource scheduling module 206 in the present invention is configured to send the message to the upper-level device of the gateway, namely the OLT, sequentially through the corresponding channel or the selected channel according to the priority queue.
  • the upper-level device of the gateway namely the OLT
  • the present invention models the channel resources according to the effective library and the full library, and uses the HASH matching algorithm to perform efficient matching.
  • real-time feedback and channel resource evaluation are used to intelligently select multiple channels, and fast forwarding of channel messages is completed according to the weighting factor.
  • a small routing validation library is first used to implement a single-channel route selection scheme. Combined with HASH calculation, the route selection efficiency can be greatly improved.
  • real-time evaluation of each channel is used to realize intelligent selection of efficient channels. By assigning a weighting factor to each message through resource scheduling, the message with higher priority can be forwarded preferentially on the channel, and the forwarding speed of the message is accelerated.
  • FIG. 3 shows a flowchart of a method 300 for multi-channel routing according to an embodiment of the present invention.
  • a full HASH matching library is generated based on feature matching conditions and channels.
  • the feature matching condition includes destination IP, domain name, and source MAC configured by a user or an administrator.
  • the HASH calculation is performed on the feature matching conditions to generate a full amount of HASH matching library, which includes a plurality of routing information entries, and each routing information entry indicates the destination IP/domain name and source MAC and the corresponding channel.
  • the routing information entry may have the following form: ⁇ destination IP, source MAC, channel ⁇ or ⁇ domain name, domain name, channel ⁇ .
  • the packet received from the application is parsed to extract feature matching conditions of the packet.
  • the characteristic matching conditions of the extracted message include destination IP/domain name and source MAC.
  • parsing the message received from the application further includes assigning a weighting factor to the message.
  • assigning a weighting factor to a message may further include assigning a weighting factor to a message from the application or a type of application for each application or type of application, or, according to the application from which the message comes The frequency of use of the packet is assigned a weighting factor to the packet.
  • the routing effective library includes previously successfully matched routing information entries in the full HASH matching library, and the routing information entries can have the following forms: ⁇ destination IP, source MAC, channel ⁇ or ⁇ domain name, domain name, channel ⁇ . Since the routing validation library is much smaller than the full HASH matching library, using the routing validation library first for matching can greatly speed up the matching efficiency.
  • performing the matching in the routing validation database further includes matching the destination IP/domain name+source MAC extracted from the message with the destination IP/domain name+source MAC stored in the routing validation database, to find the corresponding channel. If the matching in step 303 is successful, send the message into the channel corresponding to the message, and enter step 308; if the matching is unsuccessful, enter step 304.
  • each routing information entry in the routing validation library may have an effective time, if the valid time of the matching routing information entry has passed, it indicates that the routing information entry has been invalid, and it is necessary to enter step 304 for further processing. Full match.
  • matching is performed in the full HASH matching library to find a channel corresponding to the message.
  • matching in the full HASH matching library further includes, comparing the destination IP/domain name+source MAC extracted from the message with the destination IP/domain name+source MAC stored in the full HASH matching library Match to find the corresponding channel. If the matching in step 304 is successful, then enter step 305, if the matching is unsuccessful, then enter step 306.
  • step 305 update the routing information entries matched in the full HASH matching library to the routing validation library, send the message into the channel corresponding to the message, and enter step 309 .
  • the congestion situation of each channel is evaluated in real time to obtain an evaluation result of each channel.
  • channel congestion can be evaluated based on channel state parameters.
  • the status parameter may include, for example, forwarding efficiency (such as the upper limit of the rate of each channel, signal quality, delay and packet loss rate of heartbeat packets) and/or the number of packets currently queued in the channel.
  • the evaluation information for each channel may have the following form ⁇ channel, parameter 1 result, parameter 2 result...parameter N result ⁇ .
  • a channel for forwarding the message is selected based on the evaluation result of each channel, and the message is sent to the selected channel.
  • each message is sorted according to the weighting factor of each message in the channel used to forward the message, so as to form a priority queue of the channel.
  • each packet in the priority queue is sequentially forwarded upstream.
  • FIG. 4 shows a block diagram 400 of an exemplary computing device, which is a hardware device (e.g., gateway device 102, device for routing, user An example of a device on which the application 101 operates, etc.).
  • a hardware device e.g., gateway device 102, device for routing, user An example of a device on which the application 101 operates, etc.
  • Computing device 400 can be any machine that can be configured to perform processing and/or computing, and can be, but is not limited to, a workstation, server, desktop, laptop, tablet, personal digital processing, smartphone , on-board computer, or any combination thereof.
  • the aforementioned various methods/apparatus/server/client devices may be fully or at least partially implemented by the computing device 400 or similar devices or systems.
  • Computing device 400 may include components that may be connected or communicate via one or more interfaces and bus 402 .
  • computing device 400 may include a bus 402 , one or more processors 404 , one or more input devices 406 , and one or more output devices 408 .
  • the one or more processors 404 may be any type of processor and may include, but is not limited to, one or more general-purpose processors and/or one or more special-purpose processors (eg, specialized processing chips).
  • Input device 406 may be any type of device capable of entering information into a computing device and may include, but is not limited to, a mouse, keyboard, touch screen, microphone, and/or remote control.
  • Output devices 408 may be any type of device capable of presenting information and may include, but are not limited to, displays, speakers, video/audio output terminals, vibrators, and/or printers.
  • the computing device 400 may also include a non-transitory storage device 410 or be connected to the non-transitory storage device.
  • the non-transitory storage device may be any storage device that is non-transitory and capable of storing data
  • the non-transitory storage device Transient storage devices may include, but are not limited to, magnetic disk drives, optical storage devices, solid state memory, floppy disks, floppy disks, hard disks, magnetic tape or any other magnetic media, optical disks or any other optical media, ROM (read only memory), RAM (random memory access memory), cache memory and/or any memory chip or cartridge, and/or any other medium from which a computer can read data, instructions and/or code.
  • the non-transitory storage device 410 is detachable from the interface.
  • the non-transitory storage device 410 may have data/instructions/codes for implementing the above methods and steps.
  • Computing device 400 may also include a communication device 412 .
  • Communication device 412 may be any type of device or system capable of communicating with internal devices and/or with a network and may include, but is not limited to, a modem, network card, infrared communication device, wireless communication device, and/or chipset, such as a Bluetooth device , IEEE 1302.11 devices, WiFi devices, WiMax devices, cellular communications devices, and/or similar devices.
  • Bus 402 may include, but is not limited to, an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MCA) bus, an Enhanced ISA (EISA) bus, a Video Electronics Standards Association (VESA) local bus, and a Peripheral Component Interconnect (PCI) bus.
  • ISA Industry Standard Architecture
  • MCA Micro Channel Architecture
  • EISA Enhanced ISA
  • VESA Video Electronics Standards Association
  • PCI Peripheral Component Interconnect
  • Computing device 400 may also include working memory 414, which may be any type of working memory capable of storing instructions and/or data that facilitate the operation of processor 404 and may include, but is not limited to, random access memory and/or Read-only storage device.
  • working memory 414 may be any type of working memory capable of storing instructions and/or data that facilitate the operation of processor 404 and may include, but is not limited to, random access memory and/or Read-only storage device.
  • Software components may be located in working memory 414 including, but not limited to, an operating system 416, one or more application programs 418, drivers, and/or other data and code.
  • the instructions for realizing the above-mentioned methods and steps of the present invention may be included in the one or more application programs 418, and the instructions of the one or more application programs 418 may be read and executed by the processor 404 to realize the present invention The method 300 described above.
  • custom hardware could also be used, and/or particular components could be implemented in hardware, software, firmware, middleware, microcode, hardware description voice, or any combination thereof.
  • connections to other computing devices such as network input/output devices and the like, may be employed.
  • programming hardware eg, programmable logic circuits including field programmable gate arrays (FPGAs) and/or programmable logic arrays (PLAs)
  • assembly language or hardware programming languages eg, VERILOG, VHDL, C++

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The present invention relates to a gateway-based multi-channel route fast forwarding and intelligent routing method. In the present invention, channel resources are modeled according to an effective library and a full library, and a hash matching algorithm is used for efficient matching. In addition, intelligent routing is performed on multiple channels by means of real-time feedback and channel resource evaluation, and fast forwarding of a channel message is completed according to a weighting factor.

Description

一种基于网关的多通道路由快速转发和智能选路方法A Gateway-Based Multi-Channel Routing Fast Forwarding and Intelligent Routing Method 技术领域technical field
本发明涉及网络技术,尤其涉及基于网关的多通道路由快速转发和智能选路。The invention relates to network technology, in particular to gateway-based multi-channel route fast forwarding and intelligent route selection.
背景技术Background technique
当接收到报文时,网关需要根据目的IP、域名和源MAC等属性完成报文的选路。当网关存在多通道时,有些通道可能存在未充分使用的情况,浪费通道资源;有些通道的负载过重,造成网络拥堵。When receiving a message, the gateway needs to complete the routing of the message according to attributes such as destination IP, domain name, and source MAC. When there are multiple channels in the gateway, some channels may be underused, wasting channel resources; some channels are overloaded, causing network congestion.
策略路由,是一种比基于目标网络进行路由更加灵活的数据包路由转发机制。路由器将通过路由图决定如何对需要路由的数据包进行处理,路由图决定了一个数据包的下一跳转发路由器。Policy routing is a more flexible packet routing and forwarding mechanism than routing based on the target network. The router will determine how to process the data packets that need to be routed through the routing graph, and the routing graph determines the next hop forwarding router of a data packet.
但是,由于IP和域名数量较多,利用包括大量数据的路由图方案无法完成指定通道的快速选路,从而影响转发性能。However, due to the large number of IPs and domain names, it is impossible to complete the fast route selection of the specified channel by using the routing map scheme including a large amount of data, thereby affecting the forwarding performance.
因此,希望提供一种能够加快对报文的选路的解决方案。Therefore, it is desirable to provide a solution that can speed up the routing of packets.
发明内容Contents of the invention
提供本发明内容以便以简化形式介绍将在以下具体实施方式中进一步的描述一些概念。本发明内容并非旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
本发明针对多通道场景,对通道资源进行建模,使用智能选路调度模块完成多通道的选择,使用加权因子完成通道报文的快速转发。The present invention models channel resources for multi-channel scenarios, uses an intelligent route selection scheduling module to complete multi-channel selection, and uses weighting factors to complete fast forwarding of channel messages.
根据本发明的一个实施例,提供了一种用于多通道路由的方法,包括:基于特征匹配条件以及通道,通过对所述特征匹配条件进行HASH计算来生成全量HASH匹配库,所述特征匹配条件包括目的IP/域名和源MAC,所述全量HASH匹配库包括多个路由信息条目,每个路由信息条目指示目的IP/域名和源 MAC以及与其相对应的通道;对从应用接收到的报文进行解析,以提取报文的特征匹配条件;基于提取到的特征匹配条件,在路由生效库中进行匹配,以寻找与所述报文相对应的通道,其中所述路由生效库包括先前在全量HASH匹配库中匹配成功的路由信息条目;如果在所述路由生效库中匹配成功,则将所述报文送入与所述报文相对应的通道;如果在所述路由生效库中匹配不成功,则基于提取到的特征匹配条件,在所述全量HASH匹配库中进行匹配,以寻找与所述报文相对应的通道;如果在所述全量HASH匹配库中匹配成功,则将匹配成功的路由信息条目更新到所述路由生效库中,并将所述报文送入与所述报文相对应的通道。According to an embodiment of the present invention, a method for multi-channel routing is provided, including: based on feature matching conditions and channels, a full amount of HASH matching library is generated by performing HASH calculation on the feature matching conditions, and the feature matching Conditions include destination IP/domain name and source MAC, and the full amount of HASH matching library includes a plurality of routing information entries, each routing information entry indicates destination IP/domain name and source MAC and the channel corresponding to it; for the report received from the application Analyze the text to extract the feature matching conditions of the message; based on the extracted feature matching conditions, match in the routing validation library to find the channel corresponding to the message, wherein the routing validation library includes the previous The routing information entries that are successfully matched in the full HASH matching library; if the matching is successful in the routing effective library, the message is sent to the channel corresponding to the message; if the matching is successful in the routing effective library Unsuccessful, then based on the extracted feature matching conditions, match in the full amount of HASH matching library to find the channel corresponding to the message; if the matching is successful in the full amount of HASH matching library, then match Successful routing information entries are updated into the routing validation library, and the message is sent to the channel corresponding to the message.
根据本发明的另一个实施例,提供了一种用于多通道路由的系统,包括:配置模块,所述配置模块被配置为基于特征匹配条件以及通道,通过对所述特征匹配条件进行HASH计算来生成全量HASH匹配库,所述特征匹配条件包括目的IP/域名和源MAC,所述全量HASH匹配库包括多个路由信息条目,每个路由信息条目指示目的IP/域名和源MAC以及与其相对应的通道;报文解析模块,所述报文解析模块被配置为对从应用接收到的报文进行解析,以提取报文的特征匹配条件;单通道快速选路模块,所述单通道快速选路模块被配置为:基于提取到的特征匹配条件,在路由生效库中进行匹配,以寻找与所述报文相对应的通道,其中所述路由生效库包括先前在全量HASH匹配库中匹配成功的路由信息条目;如果在所述路由生效库中匹配成功,则将所述报文送入与所述报文相对应的通道;如果在所述路由生效库中匹配不成功,则基于提取到的特征匹配条件,在所述全量HASH匹配库中进行匹配,以寻找与所述报文相对应的通道;如果在所述全量HASH匹配库中匹配成功,则将匹配成功的路由信息条目更新到所述路由生效库中,并将所述报文送入与所述报文相对应的通道。According to another embodiment of the present invention, a system for multi-channel routing is provided, including: a configuration module configured to perform HASH calculation on the feature matching condition based on the feature matching condition and the channel To generate a full amount of HASH matching library, the feature matching conditions include destination IP/domain name and source MAC, and the full amount of HASH matching library includes a plurality of routing information entries, each routing information entry indicates destination IP/domain name and source MAC and its corresponding Corresponding channels; message parsing module, the message parsing module is configured to analyze the message received from the application, to extract the feature matching condition of the message; single channel fast routing module, the single channel fast The route selection module is configured to: based on the extracted feature matching conditions, perform matching in the routing effective library to find the channel corresponding to the message, wherein the routing effective library includes the previous matching in the full amount of HASH matching library A successful routing information entry; if the matching is successful in the routing validation library, the message is sent to the channel corresponding to the message; if the matching is unsuccessful in the routing validation library, based on the extraction The feature matching condition obtained is matched in the full amount of HASH matching library to find the channel corresponding to the message; if the matching is successful in the full amount of HASH matching library, the successfully matched routing information entry is updated to the route validation library, and send the message into the channel corresponding to the message.
根据本发明的还一个实施例,提供了一种用于多通道路由的计算设备,包括:处理器;存储器,所述存储器存储有指令,所述指令在被所述处理器执行时能执行如上所述的方法。According to yet another embodiment of the present invention, a computing device for multi-channel routing is provided, including: a processor; a memory, the memory stores instructions, and the instructions can perform the above when executed by the processor the method described.
通过阅读下面的详细描述并参考相关联的附图,这些及其他特点和优点将变得显而易见。应该理解,前面的概括说明和下面的详细描述只是说明性的,不会对所要求保护的各方面形成限制。These and other features and advantages will become apparent by reading the following detailed description and by reference to the associated drawings. It is to be understood that both the foregoing general description and the following detailed description are illustrative only and are not restrictive in all respects as claimed.
附图说明Description of drawings
为了能详细地理解本发明的上述特征所用的方式,可以参照各实施例来对以上简要概述的内容进行更具体的描述,其中一些方面在附图中示出。然而应该注意,附图仅示出了本发明的某些典型方面,故不应被认为限定其范围,因为该描述可以允许有其它等同有效的方面。So that the manner in which the above recited features of the invention can be understood in detail, a more particular description of what has been briefly summarized above may be had by reference to various embodiments, some aspects of which are illustrated in the accompanying drawings. It is to be noted, however, that the drawings illustrate only certain typical aspects of the invention and are therefore not to be considered limiting of its scope, for the description may admit to other equally effective aspects.
图1示出了现有技术中对来自应用的报文进行多通道选路的示意图100;FIG. 1 shows a schematic diagram 100 of multi-channel routing for messages from applications in the prior art;
图2示出了根据本发明的一个实施例的多通道路由系统200的框图;FIG. 2 shows a block diagram of a multi-channel routing system 200 according to an embodiment of the present invention;
图3示出了根据本发明的一个实施例的用于多通道路由的方法300的流程图;以及FIG. 3 shows a flowchart of a method 300 for multi-channel routing according to an embodiment of the present invention; and
图4示出了根据本发明的一个实施例的示例性计算设备的框图400。FIG. 4 shows a block diagram 400 of an exemplary computing device according to one embodiment of the invention.
具体实施方式Detailed ways
下面结合附图详细描述本发明,本发明的特点将在以下的具体描述中得到进一步的显现。The present invention will be described in detail below in conjunction with the accompanying drawings, and the features of the present invention will be further revealed in the following detailed description.
以下具体描述参考示出本发明的示例性实施例的附图。但是,本发明的范围不限于这些实施例,而是由所附权利要求书定义。因此,诸如所示实施例的修改版本之类的在附图所示之外的实施例仍然由本发明所包含。The following detailed description refers to the accompanying drawings that illustrate exemplary embodiments of the invention. However, the scope of the present invention is not limited to these embodiments but is defined by the appended claims. Accordingly, embodiments other than those shown in the figures, such as modified versions of the illustrated embodiments, are still encompassed by the invention.
本说明书中对“一个实施例”、“实施例”、“示例实施例”等的引用指的是该实施例可包括特定的特征、结构或特点,但是每一实施例不一定包括该特定的特征、结构或特点。此外,这些短语不一定指相同的实施例。此外,当结合实施例描述具体特征、结构或特性时,应当理解在相关领域的技术人员的知识范围内能够结合其他实施例来实现具体特征、结构或特性,无论是否被显式地描述。References in this specification to "one embodiment," "an embodiment," "example embodiment," etc. mean that the embodiment may include a particular feature, structure, or characteristic, but that each embodiment does not necessarily include the particular feature, structure, or characteristic. Characteristic, structure or characteristic. Moreover, these phrases are not necessarily referring to the same embodiment. Furthermore, when a specific feature, structure or characteristic is described in conjunction with an embodiment, it should be understood that within the knowledge of those skilled in the relevant art, the specific feature, structure or characteristic can be implemented in combination with other embodiments whether explicitly described or not.
首先对本文中的一些术语进行简要定义,具体实现方式将在以下实施方式中描述:First, some terms in this article are briefly defined, and the specific implementation will be described in the following implementation manner:
1.特征匹配条件:例如目的IP、域名、源MAC,由用户或者管理员配置;1. Feature matching conditions: such as destination IP, domain name, source MAC, configured by users or administrators;
2.全量HASH匹配库:对特征匹配条件进行HASH计算后生成的全量匹配库;特点:特征匹配条件数量较大,匹配耗时,例如:40万IP和5万个域名。2. Full HASH matching library: a full matching library generated after HASH calculation of feature matching conditions; characteristics: the number of feature matching conditions is large, and matching is time-consuming, for example: 400,000 IPs and 50,000 domain names.
3.路由生效库:针对报文所来自的应用,在全量HASH匹配库中已匹配到后将特定路由放入此库;特点:数量较小,匹配耗时忽略不计。3. Routing effective library: For the application from which the message comes, after matching in the full HASH matching library, put the specific route into this library; features: the number is small, and the matching time is negligible.
图1示出了现有技术中对来自应用的报文进行多通道选路的示意图100。网关设备102可接收来自不同应用(诸如,应用101-A到101-N)的报文,并且,网关设备102例如可基于存储的路由表103来将该报文路由到多个通道(诸如,通道104-A到104-N)中的一者,以通过合适的通道将报文转发到因特网105。一般而言,网关设备102可下挂有一个或多个下挂设备(例如,PC,手机,平板,笔记本电脑等),应用101-A到101-N可被实现在这些下挂设备上。此外,路由表103存储着指向特定网络地址(诸如,目的IP、域名等)的路径,其包含由路由算法选择的报文传输优先路径。例如,在接收到来自应用101A的报文后,网关设备102可将该报文的目的地址与路由表103中的相应信息进行比对,由此得到针对该报文的合适的通道。但是,由于路由表中的数据量是及其庞大的,因此,仅基于路由表来为报文选择通道是低效的。FIG. 1 shows a schematic diagram 100 of multi-channel routing for packets from applications in the prior art. Gateway device 102 may receive packets from different applications (such as applications 101-A through 101-N), and gateway device 102 may route the packets, for example based on stored routing table 103, to multiple channels (such as, One of the channels 104-A to 104-N) to forward the message to the Internet 105 through the appropriate channel. Generally speaking, the gateway device 102 can be connected with one or more connected devices (for example, PC, mobile phone, tablet, notebook computer, etc.), and the applications 101-A to 101-N can be implemented on these connected devices. In addition, the routing table 103 stores paths pointing to specific network addresses (such as destination IP, domain name, etc.), which include packet transmission priority paths selected by routing algorithms. For example, after receiving a message from the application 101A, the gateway device 102 can compare the destination address of the message with corresponding information in the routing table 103, thereby obtaining an appropriate channel for the message. However, since the amount of data in the routing table is extremely large, it is inefficient to select a channel for the message based only on the routing table.
图2示出了根据本发明的一个实施例的多通道路由系统200的框图,该系统200可被实现在网关设备或用于路由的其他设备中。该网关设备可下挂有一个或多个下挂设备,本系统200能针对接收自该一个或多个下挂设备上的应用的报文进行高效地选路。FIG. 2 shows a block diagram of a multi-channel routing system 200 according to an embodiment of the present invention, and the system 200 can be implemented in a gateway device or other devices for routing. The gateway device may be connected with one or more connected devices, and the system 200 can efficiently select routes for messages received from applications on the one or more connected devices.
如图2中所示出的,该系统200可包括配置模块201、报文解析模块202、单通道快速选路模块203、转发性能评估模块204、多通道选路模块205以及资源调度模块206。本领域的技术人员完全可以理解,本文仅仅是出于解说的目的来解说上述模块,上述模块中的一者或多者的功能可被合并到单个模块或拆分到多个模块中。并且,上述模块中的一者或多者可用软件、硬件或其组合的方式来实现。As shown in FIG. 2 , the system 200 may include a configuration module 201 , a packet parsing module 202 , a single-channel fast routing module 203 , a forwarding performance evaluation module 204 , a multi-channel routing module 205 and a resource scheduling module 206 . Those skilled in the art can fully understand that the above-mentioned modules are illustrated herein only for the purpose of illustration, and the functions of one or more of the above-mentioned modules can be combined into a single module or divided into multiple modules. Moreover, one or more of the above-mentioned modules may be realized by software, hardware or a combination thereof.
根据本发明的一个实施例,配置模块201被配置为对通道资源按特征匹配条件进行HASH计算,以生成全量HASH匹配库207。其中,用户或管理员可下发“特征匹配条件”和“通道”,配置模块201基于接收到的“特征匹配条件”,对其进行HASH计算。特征匹配条件可包括目的IP/域名、源MAC(即发出报文的应用所被实现在其中的下挂设备的MAC)。According to an embodiment of the present invention, the configuration module 201 is configured to perform HASH calculation on channel resources according to feature matching conditions, so as to generate a full amount of HASH matching library 207 . Among them, the user or administrator can issue the "feature matching condition" and "channel", and the configuration module 201 performs HASH calculation on the received "feature matching condition". The feature matching condition may include destination IP/domain name, source MAC (that is, the MAC of the downlink device in which the application sending the message is implemented).
根据本发明的一个实施例,可根据该系统200被实现在其中的网关设备或 用于路由的其他设备的内存和FLASH容量确定用于生成全量HASH匹配库207的特征匹配条件的最大条目数,每个条件的取值范围根据字节数确定,最大条目数和范围如下:According to an embodiment of the present invention, the maximum number of entries used to generate the feature matching conditions of the full HASH matching library 207 can be determined according to the memory and FLASH capacity of the gateway device in which the system 200 is implemented or other devices used for routing, The value range of each condition is determined according to the number of bytes. The maximum number of entries and the range are as follows:
目的IP:最大支持40万条IPv4或IPv6,IPv4为4字节,IPv6为16字节。例如:8.8.8.8,2400:3200::1,只要是外网IP即可,本地IP除外(如:127.0.0.1);Destination IP: maximum support 400,000 IPv4 or IPv6, IPv4 is 4 bytes, IPv6 is 16 bytes. For example: 8.8.8.8, 2400:3200::1, as long as it is an external network IP, except the local IP (such as: 127.0.0.1);
域名:最大支持5万条域名,每个域名最大255个字节。例如:baidu.com,xxx.xx.x.news.baidu.com;Domain name: a maximum of 50,000 domain names are supported, and each domain name has a maximum length of 255 bytes. For example: baidu.com, xxx.xx.x.news.baidu.com;
源MAC:最大支持32个源MAC(连接到网关上的下挂设备源MAC,如PC,手机等),每个源MAC固定为12字节。例如:00ED12345678;Source MAC: It supports a maximum of 32 source MACs (source MACs of devices connected to the gateway, such as PCs, mobile phones, etc.), and each source MAC is fixed at 12 bytes. For example: 00ED12345678;
通道:即网络通道(也可称为报文出口),例如云网超宽通道,可根据通道数量确定。Channel: Network channel (also called message egress), such as cloud network ultra-wide channel, can be determined according to the number of channels.
因为特征匹配条件的数量较大(例如,40万目的IP和5万个域名),为了降低匹配的耗时,配置模块201对这些特征匹配条件进行HASH计算,以提升匹配的速度。在生成的全量HASH匹配库中,可包括多个路由信息条目,每个路由信息条目可例如按以下形式存在:{目的IP,源MAC,通道}或{域名,源MAC,通道}。即,每个条目可指示对于特定的目的IP/特定的域名和源MAC,与其相对应的通道。根据本发明的一个实施例,通道可包括WAN通道、云网超宽通道等。Because the number of feature matching conditions is large (for example, 400,000 destination IPs and 50,000 domain names), in order to reduce the time-consuming matching, the configuration module 201 performs HASH calculation on these feature matching conditions to increase the matching speed. In the generated full HASH matching library, multiple routing information entries may be included, and each routing information entry may exist in the following form, for example: {destination IP, source MAC, channel} or {domain name, source MAC, channel}. That is, each entry may indicate its corresponding channel for a specific destination IP/specific domain name and source MAC. According to an embodiment of the present invention, the channel may include a WAN channel, a cloud network ultra-wide channel, and the like.
根据本发明的一个实施例,取决于域名的生效时间、通道的删除、新通道的建立等,配置模块201可被配置为按预设周期对全量HASH匹配库207进行更新,以确保全量HASH匹配库207中路由信息条目的准确性和时效性。本领域的技术人员可理解,该预设周期可按需配置,例如根据条目的数量、被变更的通道相较于所有通道的比例等。According to an embodiment of the present invention, depending on the effective time of the domain name, channel deletion, new channel establishment, etc., the configuration module 201 can be configured to update the full HASH matching library 207 according to a preset cycle to ensure full HASH matching The accuracy and timeliness of routing information entries in repository 207. Those skilled in the art can understand that the preset period can be configured as required, for example, according to the number of entries, the ratio of changed channels to all channels, and the like.
根据本发明的一个实施例,报文解析模块202被配置为从报文中提取特征匹配条件。例如,报文计息模块202对来自应用的报文进行解析,以提取其中的目的IP/域名、源MAC等信息。According to an embodiment of the present invention, the message parsing module 202 is configured to extract feature matching conditions from the message. For example, the message interest calculation module 202 parses the message from the application to extract the destination IP/domain name, source MAC and other information therein.
根据本发明的另一个实施例,报文解析模块202还可被配置为根据报文类型来对报文赋予加权因子。当报文被送入通道内,该通道内的多个报文可根据每个报文所赋予的加权因子来排序。According to another embodiment of the present invention, the message parsing module 202 may also be configured to assign a weighting factor to the message according to the message type. When a message is sent into a channel, multiple messages in the channel can be sorted according to the weighting factor assigned to each message.
根据本发明的又一个实施例,用户和/或管理员可针对每个应用或每类应用来对来自该应用或该类应用的报文赋予加权因子。举例而言,来自用户指定的高价值应用的报文的加权因子可为10分~8分,来自视频类应用的报文的加权因子可为7分,来自语音类应用的报文的加权因子可为6分、来自直播类应用的报文的加权因子可为5分,来自图片类应用的报文的加权因子可为4分、来自其他类应用的报文的加权因子可为3分~1分。According to yet another embodiment of the present invention, the user and/or the administrator can assign a weighting factor to the messages from the application or the type of application for each application or type of application. For example, the weighting factor of packets from user-specified high-value applications can be 10 to 8 points, the weighting factor of packets from video applications can be 7 points, and the weighting factor of packets from voice applications It can be 6 points, the weighting factor of messages from live broadcast applications can be 5 points, the weighting factor of messages from image applications can be 4 points, and the weighting factor of messages from other types of applications can be 3 points~ 1 point.
根据本发明的另一个实施例,报文解析模块202还可被配置为根据报文所来自的应用的使用频率来对该报文赋予加权因子。举例而言,如果报文来自用户常用的应用(例如,浏览器等),则该报文可被赋予最高的加权因子,如果报文来自用户较不常用的应用,则该报文可被赋予较低的加权因子。According to another embodiment of the present invention, the message parsing module 202 may also be configured to assign a weighting factor to the message according to the usage frequency of the application from which the message comes. For example, if the message comes from an application that the user uses frequently (eg, a browser, etc.), the message can be given the highest weighting factor, and if the message comes from an application that the user uses less frequently, the message can be given the highest weighting factor. Lower weighting factor.
根据本发明的一个实施例,单通道快速选路模块203被配置为将从报文中提取的特征匹配条件在路由生效库208中进行匹配以寻找对应的通道,如果匹配失败,则将从报文中提取的特征匹配条件在全量HASH匹配库207中进行全量匹配,并在匹配成功后将相应的路由信息放入路由生效库208,以更新路由生效库208。如果在全量HASH匹配库207依然未匹配成功,则通知转发性能评估模块204对每个通道进行实时评估。即,如果单通道快速选路模块203在路由生效库208以及全量HASH匹配库207中均选路失败,说明针对此报文未指定特定的通道,需要对所有通道进行实时评估,以选取合适的通道进行转发。According to an embodiment of the present invention, the single-channel fast route selection module 203 is configured to match the feature matching conditions extracted from the message in the routing validation library 208 to find the corresponding channel. The feature matching conditions extracted in the article are fully matched in the full HASH matching library 207, and the corresponding routing information is put into the routing validation library 208 after the matching is successful, so as to update the routing validation library 208. If there is still no successful match in the full HASH matching library 207, the forwarding performance evaluation module 204 is notified to perform real-time evaluation on each channel. That is, if the single-channel fast route selection module 203 fails to select routes in the routing effective library 208 and the full amount of HASH matching library 207, it means that no specific channel is specified for this message, and all channels need to be evaluated in real time to select a suitable channel. channel forwarding.
根据本发明的一个实施例,路由生效库208包括由该单通道快速选路模块203先前匹配成功的路由信息条目。换言之,路由生效库208可以是全量HASH匹配库的子集。根据本发明的另一个实施例,路由生效库208可对所包括的每条路由信息条目设置生效时间,以确保路由信息的准确性和时效性。例如,该生效时间可与全量HASH匹配库被更新的预设周期相对应。由于路由生效库208所包括的路由信息条目的数量相较于全量HASH匹配库207而言小了很多,因此匹配耗时及其微小,可以忽略不计。According to an embodiment of the present invention, the routing validating library 208 includes the routing information entries previously successfully matched by the single-channel fast routing module 203 . In other words, the route validating library 208 may be a subset of the full HASH matching library. According to another embodiment of the present invention, the route validation library 208 can set a validation time for each included routing information entry, so as to ensure the accuracy and timeliness of the routing information. For example, the effective time may correspond to a preset period when the full HASH matching database is updated. Since the number of routing information entries included in the route validating library 208 is much smaller than that in the full HASH matching library 207, the matching time is so small that it can be ignored.
根据本发明的一个实施例,转发性能评估模块204被配置为对每个通道的拥塞情况进行评估。例如,转发性能评估模块204被配置为实时地评估每个通道的状态参数,并将每个通道的评估结果实时反馈给多通道选路模块205。根据本发明的一个实施例,通道的状态参数可包括例如转发效率(诸如,每个通 道的速率上限、信号质量、心跳包的时延和丢包率)和/或通道中当前排队的报文数量等。针对每个通道的评估信息可具有以下形式{通道,参数1结果,参数2结果...参数N结果}。According to an embodiment of the present invention, the forwarding performance evaluation module 204 is configured to evaluate the congestion situation of each channel. For example, the forwarding performance evaluation module 204 is configured to evaluate the status parameter of each channel in real time, and feed back the evaluation result of each channel to the multi-channel routing module 205 in real time. According to an embodiment of the present invention, the status parameters of the channel may include, for example, forwarding efficiency (such as the upper limit of the rate of each channel, signal quality, delay and packet loss rate of heartbeat packets) and/or currently queued packets in the channel Quantity etc. The evaluation information for each channel may have the following form {channel, parameter 1 result, parameter 2 result...parameter N result}.
根据本发明的一个实施例,多通道选路模块205被配置为基于从转发性能评估模块204接收到的每个通道的评估结果,选择一通道,并将报文送入该通道。根据本发明的一个实施例,多通道选路模块205可对通道的每个状态参数的评估结果赋予评分,并对每个状态参数赋予不同的权重,以选择高效的转发通道。例如,针对每个通道,可计算出总评估分数,该总评估分数=权重1X参数1评分+权重2X参数2评分......权重NX参数N评分。多通道选路模块205可选择总评估分数最高的通道进行转发。According to an embodiment of the present invention, the multi-path routing module 205 is configured to select a path based on the evaluation result of each path received from the forwarding performance evaluation module 204, and send the message to the path. According to an embodiment of the present invention, the multi-path routing module 205 can assign a score to the evaluation result of each state parameter of the path, and assign different weights to each state parameter, so as to select an efficient forwarding path. For example, for each channel, a total evaluation score can be calculated, the total evaluation score=weight 1×parameter 1 score+weight 2×parameter 2 score...weight NX parameter N score. The multi-channel routing module 205 may select the channel with the highest total evaluation score for forwarding.
根据本发明的一个实施例,资源调度模块206被配置为根据报文的加权因子,对通道内的报文进行排队,以形成优先级队列,并将优先级队列中的报文依次进行上行转发。根据本发明的一个实施例,资源调度模块206被配置为将报文依次送入OLT(Optical Line Terminal,光线路终端)。According to an embodiment of the present invention, the resource scheduling module 206 is configured to queue the messages in the channel according to the weighting factors of the messages to form a priority queue, and forward the messages in the priority queue upstream sequentially . According to an embodiment of the present invention, the resource scheduling module 206 is configured to sequentially send packets to an OLT (Optical Line Terminal, Optical Line Terminal).
本领域的技术人员可以理解,一般而言,报文的流向为传输媒介(PC、手机等)->ONU(光网络单元,俗称:网关,光猫))->OLT(其为网关(ONU)的上一级设备,OLT下挂有多台网关)->上层网络设备。由此,本发明中的资源调度模块206被配置为将报文通过所对应的通道或所选择的通道按照优先级队列依次送入网关的上一级设备,即OLT。Those skilled in the art can understand that, generally speaking, the flow direction of the message is transmission medium (PC, mobile phone, etc.)->ONU (optical network unit, commonly known as: gateway, optical modem))->OLT (which is a gateway (ONU) ), there are multiple gateways attached to the OLT)->upper network equipment. Therefore, the resource scheduling module 206 in the present invention is configured to send the message to the upper-level device of the gateway, namely the OLT, sequentially through the corresponding channel or the selected channel according to the priority queue.
由此,本发明对通道资源按生效库和全量库建模,并使用HASH匹配算法进行高效匹配。同时,利用实时反馈和通道资源评估对多通道进行智能选路,并根据加权因子完成通道报文的快速转发。具体而言,在接收到报文时,首先利用体量较小的路由生效库来进行单通道选路方案,结合HASH计算,可以大大提升选路效率。在多通道选路方案中,利用对各个通道的实时评估,实现对高效通道的智能选择。通过资源调度,对各个报文赋予加权因子,能够使得优先级更高的报文能够在通道上被优先转发,加速了报文的转发速度。Therefore, the present invention models the channel resources according to the effective library and the full library, and uses the HASH matching algorithm to perform efficient matching. At the same time, real-time feedback and channel resource evaluation are used to intelligently select multiple channels, and fast forwarding of channel messages is completed according to the weighting factor. Specifically, when a message is received, a small routing validation library is first used to implement a single-channel route selection scheme. Combined with HASH calculation, the route selection efficiency can be greatly improved. In the multi-channel routing scheme, real-time evaluation of each channel is used to realize intelligent selection of efficient channels. By assigning a weighting factor to each message through resource scheduling, the message with higher priority can be forwarded preferentially on the channel, and the forwarding speed of the message is accelerated.
图3示出了根据本发明的一个实施例的用于多通道路由的方法300的流程图。FIG. 3 shows a flowchart of a method 300 for multi-channel routing according to an embodiment of the present invention.
在301,基于特征匹配条件以及通道,生成全量HASH匹配库。根据本发 明的一个实施例,特征匹配条件包括由用户或管理员配置的目的IP、域名、源MAC。根据本发明的另一个实施例,对特征匹配条件进行HASH计算来生成全量HASH匹配库,该全量HASH匹配库中包括多个路由信息条目,每个路由信息条目指示目的IP/域名和源MAC以及与其相对应的通道。例如,路由信息条目可具有以下形式:{目的IP,源MAC,通道}或{域名,域名,通道}。At 301, a full HASH matching library is generated based on feature matching conditions and channels. According to an embodiment of the present invention, the feature matching condition includes destination IP, domain name, and source MAC configured by a user or an administrator. According to another embodiment of the present invention, the HASH calculation is performed on the feature matching conditions to generate a full amount of HASH matching library, which includes a plurality of routing information entries, and each routing information entry indicates the destination IP/domain name and source MAC and the corresponding channel. For example, the routing information entry may have the following form: {destination IP, source MAC, channel} or {domain name, domain name, channel}.
本领域的技术人员可以理解,本文中的特征匹配条件仅仅是示例性的,用户或管理员可以采用其他条件来生成全量HASH匹配库。Those skilled in the art can understand that the feature matching conditions herein are only exemplary, and users or administrators can use other conditions to generate a full HASH matching library.
在302,对从应用接收到的报文进行解析,以提取报文的特征匹配条件。根据本发明的一个实施例,提取报文的特征匹配条件包括目的IP/域名和源MAC。根据本发明的另一个实施例,对从应用接收到的报文进行解析进一步包括对报文赋予加权因子。根据本发明的一个实施例,对报文赋予加权因子可进一步包括针对每个应用或每类应用来对来自该应用或该类应用的报文赋予加权因子,或,根据报文所来自的应用的使用频率来对该报文赋予加权因子。At 302, the packet received from the application is parsed to extract feature matching conditions of the packet. According to an embodiment of the present invention, the characteristic matching conditions of the extracted message include destination IP/domain name and source MAC. According to another embodiment of the present invention, parsing the message received from the application further includes assigning a weighting factor to the message. According to an embodiment of the present invention, assigning a weighting factor to a message may further include assigning a weighting factor to a message from the application or a type of application for each application or type of application, or, according to the application from which the message comes The frequency of use of the packet is assigned a weighting factor to the packet.
在303,基于提取到的特征匹配条件,在路由生效库中进行匹配,以寻找与该报文相对应的通道。其中,路由生效库包括先前在全量HASH匹配库中匹配成功的路由信息条目,该路由信息条目可具有以下形式:{目的IP,源MAC,通道}或{域名,域名,通道}。由于路由生效库相较于全量HASH匹配库而言小了很多,因此优先利用路由生效库进行匹配可以大大加速匹配效率。At 303, based on the extracted feature matching conditions, matching is performed in the routing validation library to find the channel corresponding to the packet. Wherein, the routing effective library includes previously successfully matched routing information entries in the full HASH matching library, and the routing information entries can have the following forms: {destination IP, source MAC, channel} or {domain name, domain name, channel}. Since the routing validation library is much smaller than the full HASH matching library, using the routing validation library first for matching can greatly speed up the matching efficiency.
根据本发明的一个实施例,在路由生效库中进行匹配进一步包括,将从报文中提取到的目的IP/域名+源MAC与路由生效库中存储的目的IP/域名+源MAC相匹配,以寻找对应的通道。如果步骤303的匹配成功,则将报文送入与该报文相对应的通道,并进入步骤308,如果匹配不成功,则进入步骤304。According to an embodiment of the present invention, performing the matching in the routing validation database further includes matching the destination IP/domain name+source MAC extracted from the message with the destination IP/domain name+source MAC stored in the routing validation database, to find the corresponding channel. If the matching in step 303 is successful, send the message into the channel corresponding to the message, and enter step 308; if the matching is unsuccessful, enter step 304.
根据本发明的一个实施例,路由生效库中的每个路由信息条目可具有生效时间,如果匹配到的路由信息条目的生效时间已过,则表明该路由信息条目已经无效,需要进入步骤304进行全量匹配。According to an embodiment of the present invention, each routing information entry in the routing validation library may have an effective time, if the valid time of the matching routing information entry has passed, it indicates that the routing information entry has been invalid, and it is necessary to enter step 304 for further processing. Full match.
在304,基于提取到的特征匹配条件,在全量HASH匹配库中进行匹配,以寻找与该报文相对应的通道。根据本发明的一个实施例,在全量HASH匹配库中进行匹配进一步包括,将从报文中提取到的目的IP/域名+源MAC与全量HASH匹配库中存储的目的IP/域名+源MAC相匹配,以寻找对应的通道。如 果步骤304的匹配成功,则进入步骤305,如果匹配不成功,则进入步骤306。At 304, based on the extracted feature matching conditions, matching is performed in the full HASH matching library to find a channel corresponding to the message. According to an embodiment of the present invention, matching in the full HASH matching library further includes, comparing the destination IP/domain name+source MAC extracted from the message with the destination IP/domain name+source MAC stored in the full HASH matching library Match to find the corresponding channel. If the matching in step 304 is successful, then enter step 305, if the matching is unsuccessful, then enter step 306.
在305,将在全量HASH匹配库中匹配到的路由信息条目更新到路由生效库中,并将报文送入与该报文相对应的通道,并进入步骤309。At 305 , update the routing information entries matched in the full HASH matching library to the routing validation library, send the message into the channel corresponding to the message, and enter step 309 .
在306,实时地评估每个通道的拥塞情况,以得到每个通道的评估结果。根据本发明的一个实施例,可基于通道的状态参数来评估通道的拥塞情况。例如,状态参数可包括例如转发效率(诸如,每个通道的速率上限、信号质量、心跳包的时延和丢包率)和/或通道中当前排队的报文数量等。针对每个通道的评估信息可具有以下形式{通道,参数1结果,参数2结果...参数N结果}。At 306, the congestion situation of each channel is evaluated in real time to obtain an evaluation result of each channel. According to an embodiment of the present invention, channel congestion can be evaluated based on channel state parameters. For example, the status parameter may include, for example, forwarding efficiency (such as the upper limit of the rate of each channel, signal quality, delay and packet loss rate of heartbeat packets) and/or the number of packets currently queued in the channel. The evaluation information for each channel may have the following form {channel, parameter 1 result, parameter 2 result...parameter N result}.
在307,基于每个通道的评估结果来选择用于转发报文的通道,并将报文送入所选择的通道。At 307, a channel for forwarding the message is selected based on the evaluation result of each channel, and the message is sent to the selected channel.
在308,根据被用于转发报文的通道中每个报文的加权因子,来对每个报文进行排序,以形成该通道的优先级队列。At 308, each message is sorted according to the weighting factor of each message in the channel used to forward the message, so as to form a priority queue of the channel.
在309,将该优先级队列中的各个报文依次进行上行转发。At 309, each packet in the priority queue is sequentially forwarded upstream.
本发明的主要优点在于:The main advantages of the present invention are:
1.利用生效库和全量库,快速完成路由选路;1. Use the effective library and the full library to quickly complete the route selection;
2.根据通信资源使用情况智能地选择通道。2. Intelligently select channels according to the usage of communication resources.
3.根据加权因子加快通道报文转发。3. Speed up channel message forwarding according to the weighting factor.
图4示出了根据本发明的一个实施例的示例性计算设备的框图400,该计算设备是可应用于本发明的各方面的硬件设备(例如,网关设备102、用于路由的设备、用户应用101在其上操作的设备等)的一个示例。FIG. 4 shows a block diagram 400 of an exemplary computing device, which is a hardware device (e.g., gateway device 102, device for routing, user An example of a device on which the application 101 operates, etc.).
参考图4,现在将描述一种计算设备400,该计算设备是可应用于本发明的各方面的硬件设备的一个示例。计算设备400可以是可被配置成用于实现处理和/或计算的任何机器,可以是但并不局限于工作站、服务器、桌面型计算机、膝上型计算机、平板计算机、个人数字处理、智能手机、车载计算机或者它们的任何组合。前述的各种方法/装置/服务器/客户端设备可全部或者至少部分地由计算设备400或者类似设备或系统来实现。Referring to FIG. 4 , a computing device 400 will now be described, which is one example of a hardware device applicable to aspects of the present invention. Computing device 400 can be any machine that can be configured to perform processing and/or computing, and can be, but is not limited to, a workstation, server, desktop, laptop, tablet, personal digital processing, smartphone , on-board computer, or any combination thereof. The aforementioned various methods/apparatus/server/client devices may be fully or at least partially implemented by the computing device 400 or similar devices or systems.
计算设备400可包括可经由一个或多个接口和总线402连接或通信的组件。例如,计算设备400可包括总线402、一个或多个处理器404、一个或多个输入设备406以及一个或多个输出设备408。该一个或多个处理器404可以是 任何类型的处理器并且可包括但不限于一个或多个通用处理器和/或一个或多个专用处理器(例如,专门的处理芯片)。输入设备406可以是任何类型的能够向计算设备输入信息的设备并且可以包括但不限于鼠标、键盘、触摸屏、麦克风和/或远程控制器。输出设备408可以是任何类型的能够呈现信息的设备并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。计算设备400也可以包括非瞬态存储设备410或者与所述非瞬态存储设备相连接,所述非瞬态存储设备可以是非瞬态的并且能够实现数据存储的任何存储设备,并且所述非瞬态存储设备可以包括但不限于磁盘驱动器、光存储设备、固态存储器、软盘、软磁盘、硬盘、磁带或任何其它磁介质、光盘或任何其它光介质、ROM(只读存储器)、RAM(随机存取存储器)、高速缓冲存储器和/或任何存储芯片或盒式磁带、和/或计算机可从其读取数据、指令和/或代码的任何其它介质。非瞬态存储设备410可从接口分离。非瞬态存储设备410可具有用于实施上述方法和步骤的数据/指令/代码。计算设备400也可包括通信设备412。通信设备412可以是任何类型的能够实现与内部装置通信和/或与网络通信的设备或系统并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信设备和/或芯片组,例如蓝牙设备、IEEE 1302.11设备、WiFi设备、WiMax设备、蜂窝通信设备和/或类似设备。 Computing device 400 may include components that may be connected or communicate via one or more interfaces and bus 402 . For example, computing device 400 may include a bus 402 , one or more processors 404 , one or more input devices 406 , and one or more output devices 408 . The one or more processors 404 may be any type of processor and may include, but is not limited to, one or more general-purpose processors and/or one or more special-purpose processors (eg, specialized processing chips). Input device 406 may be any type of device capable of entering information into a computing device and may include, but is not limited to, a mouse, keyboard, touch screen, microphone, and/or remote control. Output devices 408 may be any type of device capable of presenting information and may include, but are not limited to, displays, speakers, video/audio output terminals, vibrators, and/or printers. The computing device 400 may also include a non-transitory storage device 410 or be connected to the non-transitory storage device. The non-transitory storage device may be any storage device that is non-transitory and capable of storing data, and the non-transitory storage device Transient storage devices may include, but are not limited to, magnetic disk drives, optical storage devices, solid state memory, floppy disks, floppy disks, hard disks, magnetic tape or any other magnetic media, optical disks or any other optical media, ROM (read only memory), RAM (random memory access memory), cache memory and/or any memory chip or cartridge, and/or any other medium from which a computer can read data, instructions and/or code. The non-transitory storage device 410 is detachable from the interface. The non-transitory storage device 410 may have data/instructions/codes for implementing the above methods and steps. Computing device 400 may also include a communication device 412 . Communication device 412 may be any type of device or system capable of communicating with internal devices and/or with a network and may include, but is not limited to, a modem, network card, infrared communication device, wireless communication device, and/or chipset, such as a Bluetooth device , IEEE 1302.11 devices, WiFi devices, WiMax devices, cellular communications devices, and/or similar devices.
总线402可以包括但不限于工业标准结构(ISA)总线、微通道结构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)局部总线和外部设备互连(PCI)总线。 Bus 402 may include, but is not limited to, an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MCA) bus, an Enhanced ISA (EISA) bus, a Video Electronics Standards Association (VESA) local bus, and a Peripheral Component Interconnect (PCI) bus.
计算设备400还可包括工作存储器414,该工作存储器414可以是任何类型的能够存储有利于处理器404的工作的指令和/或数据的工作存储器并且可以包括但不限于随机存取存储器和/或只读存储设备。 Computing device 400 may also include working memory 414, which may be any type of working memory capable of storing instructions and/or data that facilitate the operation of processor 404 and may include, but is not limited to, random access memory and/or Read-only storage device.
软件组件可位于工作存储器414中,这些软件组件包括但不限于操作系统416、一个或多个应用程序418、驱动程序和/或其它数据和代码。用于实现本发明上述方法和步骤的指令可包含在所述一个或多个应用程序418中,并且可通过处理器404读取和执行所述一个或多个应用程序418的指令来实现本发明的上述方法300。Software components may be located in working memory 414 including, but not limited to, an operating system 416, one or more application programs 418, drivers, and/or other data and code. The instructions for realizing the above-mentioned methods and steps of the present invention may be included in the one or more application programs 418, and the instructions of the one or more application programs 418 may be read and executed by the processor 404 to realize the present invention The method 300 described above.
也应该认识到可根据具体需求而做出变化。例如,也可使用定制硬件、和 /或特定组件可在硬件、软件、固件、中间件、微代码、硬件描述语音或其任何组合中实现。此外,可采用与其它计算设备、例如网络输入/输出设备等的连接。例如,可通过具有汇编语言或硬件编程语言(例如,VERILOG、VHDL、C++)的编程硬件(例如,包括现场可编程门阵列(FPGA)和/或可编程逻辑阵列(PLA)的可编程逻辑电路)利用根据本发明的逻辑和算法来实现所公开的方法和设备的部分或全部。It should also be recognized that variations can be made according to specific needs. For example, custom hardware could also be used, and/or particular components could be implemented in hardware, software, firmware, middleware, microcode, hardware description voice, or any combination thereof. Additionally, connections to other computing devices, such as network input/output devices and the like, may be employed. For example, programming hardware (eg, programmable logic circuits including field programmable gate arrays (FPGAs) and/or programmable logic arrays (PLAs)) with assembly language or hardware programming languages (eg, VERILOG, VHDL, C++) ) utilize logic and algorithms in accordance with the present invention to implement some or all of the disclosed methods and apparatus.
尽管目前为止已经参考附图描述了本发明的各方面,但是上述方法、系统和设备仅是示例,并且本发明的范围不限于这些方面,而是仅由所附权利要求及其等同物来限定。各种组件可被省略或者也可被等同组件替代。另外,也可以在与本发明中描述的顺序不同的顺序实现所述步骤。此外,可以按各种方式组合各种组件。也重要的是,随着技术的发展,所描述的组件中的许多组件可被之后出现的等同组件所替代。Although aspects of the present invention have been described thus far with reference to the accompanying drawings, the above-described methods, systems and apparatus are examples only, and the scope of the present invention is not limited to these aspects, but only by the appended claims and their equivalents . Various components may be omitted or may also be substituted for equivalent components. In addition, the steps may also be implemented in an order different from that described in the present invention. Also, various components may be combined in various ways. It is also important to note that, as technology advances, many of the components described may be replaced by equivalent components presented hereafter.
以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围,其均应涵盖在本申请的权利要求和说明书的范围当中。The above embodiments are only used to illustrate the technical solutions of the present application, and are not intended to limit them; although the application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that: it can still be applied to the foregoing embodiments Modifications to the technical solutions recorded in the examples, or equivalent replacement of some or all of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions depart from the scope of the technical solutions of the various embodiments of the application, and all of them shall cover Within the scope of the claims and description of this application.

Claims (10)

  1. 一种用于多通道路由的方法,包括:A method for multi-channel routing comprising:
    基于特征匹配条件以及通道,通过对所述特征匹配条件进行HASH计算来生成全量HASH匹配库,所述特征匹配条件包括目的IP/域名和源MAC,所述全量HASH匹配库包括多个路由信息条目,每个路由信息条目指示目的IP/域名和源MAC以及与其相对应的通道;Based on feature matching conditions and channels, a full HASH matching library is generated by performing HASH calculation on the feature matching conditions, the feature matching conditions include destination IP/domain name and source MAC, and the full HASH matching library includes multiple routing information entries , each routing information entry indicates the destination IP/domain name and source MAC and the corresponding channel;
    对从应用接收到的报文进行解析,以提取报文的特征匹配条件;Parse the message received from the application to extract the feature matching condition of the message;
    基于提取到的特征匹配条件,在路由生效库中进行匹配,以寻找与所述报文相对应的通道,其中所述路由生效库包括先前在全量HASH匹配库中匹配成功的路由信息条目;Based on the extracted feature matching conditions, matching is performed in the routing validation library to find the channel corresponding to the message, wherein the routing validation library includes previously successfully matched routing information entries in the full HASH matching library;
    如果在所述路由生效库中匹配成功,则将所述报文送入与所述报文相对应的通道;If the matching is successful in the routing validation library, sending the message into the channel corresponding to the message;
    如果在所述路由生效库中匹配不成功,则基于提取到的特征匹配条件,If the matching in the routing validation library is unsuccessful, then based on the extracted feature matching conditions,
    在所述全量HASH匹配库中进行匹配,以寻找与所述报文相对应的通道;Perform matching in the full HASH matching library to find a channel corresponding to the message;
    如果在所述全量HASH匹配库中匹配成功,则将匹配成功的路由信息条目更新到所述路由生效库中,并将所述报文送入与所述报文相对应的通道。If the matching is successful in the full HASH matching library, update the successfully matched routing information entry into the routing validation library, and send the message into the channel corresponding to the message.
  2. 如权利要求1所述的方法,进一步包括:The method of claim 1, further comprising:
    如果在所述全量HASH匹配库中匹配不成功,则实时地评估每个通道的拥塞情况,以得到每个通道的评估结果;If the matching in the full HASH matching library is unsuccessful, evaluate the congestion situation of each channel in real time to obtain the evaluation result of each channel;
    基于每个通道的评估结果来选择用于转发所述报文的通道。A channel for forwarding the message is selected based on the evaluation result of each channel.
  3. 如权利要求1所述的方法,其特征在于,对从应用接收到的报文进行解析进一步包括:对所述报文赋予加权因子。The method according to claim 1, wherein parsing the message received from the application further comprises: assigning a weighting factor to the message.
  4. 如权利要求3所述的方法,其特征在于,对所述报文赋予加权因子进一步包括:根据所述应用的类型和/或使用频率来对所述报文赋予加权因子。The method according to claim 3, wherein assigning a weighting factor to the message further comprises: assigning a weighting factor to the message according to the type and/or frequency of use of the application.
  5. 如权利要求3所述的方法,进一步包括:根据被用于转发报文的通道中 每个报文的加权因子,来对每个报文进行排序,以形成该通道的优先级队列。The method according to claim 3, further comprising: sorting each message according to the weighting factor of each message in the channel used to forward the message, so as to form the priority queue of the channel.
  6. 如权利要求1所述的方法,其特征在于,基于提取到的特征匹配条件,在路由生效库中进行匹配进一步包括:如果匹配到的所述路由生效库中的路由信息条目的生效时间已过,则基于提取到的特征匹配条件,在所述全量HASH匹配库中进行匹配。The method according to claim 1, wherein, based on the extracted feature matching conditions, performing the matching in the routing validation library further comprises: if the matching routing information entry in the routing validation library has expired , then based on the extracted feature matching conditions, matching is performed in the full HASH matching library.
  7. 一种用于多通道路由的系统,包括:A system for multi-channel routing comprising:
    配置模块,所述配置模块被配置为基于特征匹配条件以及通道,通过对所述特征匹配条件进行HASH计算来生成全量HASH匹配库,所述特征匹配条件包括目的IP/域名和源MAC,所述全量HASH匹配库包括多个路由信息条目,每个路由信息条目指示目的IP/域名和源MAC以及与其相对应的通道;Configuration module, the configuration module is configured to generate a full amount of HASH matching library by performing HASH calculation on the feature matching condition based on the feature matching condition and the channel, the feature matching condition includes destination IP/domain name and source MAC, the The full HASH matching library includes multiple routing information entries, each routing information entry indicates the destination IP/domain name and source MAC and the corresponding channel;
    报文解析模块,所述报文解析模块被配置为对从应用接收到的报文进行解析,以提取报文的特征匹配条件;A message parsing module, the message parsing module is configured to parse the message received from the application to extract the feature matching condition of the message;
    单通道快速选路模块,所述单通道快速选路模块被配置为:A single-channel fast routing module, the single-channel fast routing module is configured as:
    基于提取到的特征匹配条件,在路由生效库中进行匹配,以寻找与所述报文相对应的通道,其中所述路由生效库包括先前在全量HASH匹配库中匹配成功的路由信息条目;Based on the extracted feature matching conditions, matching is performed in the routing validation library to find the channel corresponding to the message, wherein the routing validation library includes previously successfully matched routing information entries in the full HASH matching library;
    如果在所述路由生效库中匹配成功,则将所述报文送入与所述报文相对应的通道;If the matching is successful in the routing validation library, sending the message into the channel corresponding to the message;
    如果在所述路由生效库中匹配不成功,则基于提取到的特征匹配条件,在所述全量HASH匹配库中进行匹配,以寻找与所述报文相对应的通道;If the matching in the routing validation library is unsuccessful, then based on the extracted feature matching conditions, matching is performed in the full HASH matching library to find a channel corresponding to the message;
    如果在所述全量HASH匹配库中匹配成功,则将匹配成功的路由信息条目更新到所述路由生效库中,并将所述报文送入与所述报文相对应的通道。If the matching is successful in the full HASH matching library, update the successfully matched routing information entry into the routing validation library, and send the message into the channel corresponding to the message.
  8. 如权利要求7所述的系统,其特征在于,所述单通道快速选路模块被进一步配置为:如果在所述全量HASH匹配库中匹配不成功,则通知转发性能评估模块;The system according to claim 7, wherein the single channel fast routing module is further configured to: if the matching in the full amount of HASH matching library is unsuccessful, then notify the forwarding performance evaluation module;
    所述系统进一步包括:The system further includes:
    所述转发性能评估模块,所述转发性能评估模块被配置为实时地评估每个通道的拥塞情况,以得到每个通道的评估结果;以及The forwarding performance evaluation module, the forwarding performance evaluation module is configured to evaluate the congestion situation of each channel in real time, so as to obtain the evaluation result of each channel; and
    多通道选路模块,所述多通道选路模块被配置为基于每个通道的评估结果来选择用于转发所述报文的通道。A multi-channel routing module configured to select a channel for forwarding the message based on the evaluation result of each channel.
  9. 如权利要求7所述的系统,其特征在于,所述报文解析模块被进一步配置为对所述报文赋予加权因子;The system according to claim 7, wherein the message parsing module is further configured to assign a weighting factor to the message;
    所述系统进一步包括资源调度模块,所述资源调度模块被配置为根据被用于转发报文的通道中每个报文的加权因子,来对每个报文进行排序,以形成该通道的优先级队列。The system further includes a resource scheduling module, the resource scheduling module is configured to sort each message according to the weighting factor of each message in the channel used to forward the message, so as to form the priority of the channel level queue.
  10. 一种用于多通道路由的计算设备,包括:A computing device for multi-channel routing, comprising:
    处理器;processor;
    存储器,所述存储器存储有指令,所述指令在被所述处理器执行时能执行如权利要求1-6所述的方法。A memory storing instructions which, when executed by the processor, perform the method of claims 1-6.
PCT/CN2022/097529 2021-09-26 2022-06-08 Gateway-based multi-channel route fast forwarding and intelligent routing method WO2023045403A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202111128446.9A CN113852555B (en) 2021-09-26 2021-09-26 Gateway-based multi-channel route fast forwarding and intelligent routing method
CN202111128446.9 2021-09-26

Publications (1)

Publication Number Publication Date
WO2023045403A1 true WO2023045403A1 (en) 2023-03-30

Family

ID=78979499

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/097529 WO2023045403A1 (en) 2021-09-26 2022-06-08 Gateway-based multi-channel route fast forwarding and intelligent routing method

Country Status (2)

Country Link
CN (1) CN113852555B (en)
WO (1) WO2023045403A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113852555B (en) * 2021-09-26 2022-12-16 天翼数字生活科技有限公司 Gateway-based multi-channel route fast forwarding and intelligent routing method

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101257432A (en) * 2008-03-31 2008-09-03 华为技术有限公司 Method and apparatus for realizing congestion control
CN102469006A (en) * 2010-11-01 2012-05-23 杭州华三通信技术有限公司 Method and device for quickly forwarding data report
CN102843257A (en) * 2012-08-15 2012-12-26 无锡北邮感知技术产业研究院有限公司 Path estimating method and device
CN102957626A (en) * 2012-11-14 2013-03-06 中兴通讯股份有限公司 Message forwarding method and device
CN104092612A (en) * 2014-06-05 2014-10-08 汉柏科技有限公司 Method and device for updating matching order of fast forwarding table
US20150117459A1 (en) * 2013-10-25 2015-04-30 Yaoqing Liu Efficient forwarding information base caching system and method
CN104639443A (en) * 2015-02-16 2015-05-20 杭州华三通信技术有限公司 Method and device for rapidly forwarding message
CN113852555A (en) * 2021-09-26 2021-12-28 天翼数字生活科技有限公司 Gateway-based multi-channel route fast forwarding and intelligent routing method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9215171B2 (en) * 2012-08-29 2015-12-15 International Business Machines Corporation Hashing-based routing table management
CN104168199B (en) * 2013-05-15 2019-07-16 中兴通讯股份有限公司 Packet processing method and device
US9806994B2 (en) * 2014-06-24 2017-10-31 Mellanox Technologies, Ltd. Routing via multiple paths with efficient traffic distribution
CN111147292B (en) * 2019-12-18 2022-12-02 深圳市任子行科技开发有限公司 Policy cluster distribution matching method, system and computer readable storage medium
CN112104761A (en) * 2020-08-20 2020-12-18 广东网堤信息安全技术有限公司 NAT address translation method

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101257432A (en) * 2008-03-31 2008-09-03 华为技术有限公司 Method and apparatus for realizing congestion control
CN102469006A (en) * 2010-11-01 2012-05-23 杭州华三通信技术有限公司 Method and device for quickly forwarding data report
CN102843257A (en) * 2012-08-15 2012-12-26 无锡北邮感知技术产业研究院有限公司 Path estimating method and device
CN102957626A (en) * 2012-11-14 2013-03-06 中兴通讯股份有限公司 Message forwarding method and device
US20150117459A1 (en) * 2013-10-25 2015-04-30 Yaoqing Liu Efficient forwarding information base caching system and method
CN104092612A (en) * 2014-06-05 2014-10-08 汉柏科技有限公司 Method and device for updating matching order of fast forwarding table
CN104639443A (en) * 2015-02-16 2015-05-20 杭州华三通信技术有限公司 Method and device for rapidly forwarding message
CN113852555A (en) * 2021-09-26 2021-12-28 天翼数字生活科技有限公司 Gateway-based multi-channel route fast forwarding and intelligent routing method

Also Published As

Publication number Publication date
CN113852555A (en) 2021-12-28
CN113852555B (en) 2022-12-16

Similar Documents

Publication Publication Date Title
JP7026219B2 (en) Systems and methods for first packet application classification
EP3709573A1 (en) Satisfying service level agreement metrics for unknown applications
US20170048148A1 (en) Method, apparatus, and system for load balancing of service chain
US8626912B1 (en) Automated passive discovery of applications
US11483279B2 (en) Domain name system as an authoritative source for multipath mobility policy
US20090300066A1 (en) Universal device identifier for globally identifying and binding disparate device identifiers to the same mobile device
US20130091303A1 (en) Systems and methods for data packet processing
WO2020259688A1 (en) User plane re-routing method and device
EP3149894B1 (en) Assisting application classification using predicted subscriber behavior
US10666603B2 (en) Optimizing routing of access to network domains via a wireless communication network
WO2016070822A1 (en) Media resource feedback method and device
WO2023045403A1 (en) Gateway-based multi-channel route fast forwarding and intelligent routing method
CN114071544B (en) Network testing method and device and electronic equipment
US11570079B2 (en) Quality-of-service in cellular information centric network
US20070104200A1 (en) Network device with routing function and policy route setting method thereof
US11310669B2 (en) Systems and methods for intercepting network traffic
EP4404527A1 (en) Service scheduling method and apparatus, device and computer readable storage medium
KR20100123074A (en) Apparatus and method for determining masimum segment size in a mobile communication system
US9774515B2 (en) Router and resource assignment method thereof
CN113596194A (en) Method for DNS traffic classification calibration and DNS server
CN113169936B (en) Service chaining mechanism for data stream processing
CN108322390B (en) Router and traffic management method
WO2024067567A1 (en) Method for obtaining analysis result, and communication device
WO2023126004A1 (en) Data transmission method and apparatus, and terminal
WO2023185850A1 (en) Ursp rule optimization methods and apparatuses, terminal, network side device and medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22871464

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22871464

Country of ref document: EP

Kind code of ref document: A1