WO2009015570A1 - Dispositif et procédé de traitement de message - Google Patents
Dispositif et procédé de traitement de message Download PDFInfo
- Publication number
- WO2009015570A1 WO2009015570A1 PCT/CN2008/071452 CN2008071452W WO2009015570A1 WO 2009015570 A1 WO2009015570 A1 WO 2009015570A1 CN 2008071452 W CN2008071452 W CN 2008071452W WO 2009015570 A1 WO2009015570 A1 WO 2009015570A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- service
- processing unit
- processing
- unit
- packet
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
Definitions
- Figure 8 is a block diagram showing the structure of an application processing unit added to the structure of the message processing apparatus shown in Figure 3 in an embodiment of the present invention.
- Figure 16 is a flow diagram of a message distribution process using a primary pre-processing module and a secondary pre-processing module in one embodiment of the present invention. Mode for carrying out the invention
- the application processing unit After receiving the packet, the application processing unit performs application layer processing on the packet, selects a service control unit, and sends the processed packet to the selected service control unit, thereby triggering the selected service control.
- the unit performs the new processing of the session to which the message belongs.
- all the functional units in the message processing apparatus shown in any one of FIG. 8 to FIG. 12 may be set in one L4 ⁇ L7 network device or arbitrarily set in different L4 ⁇ L7.
- the network device that is, all application processing units, all service control units, all service processing units, and all interface processing units are located in the same L4 ⁇ L7 network device, or may be located in different L4 ⁇ L7 network devices.
- the message processing devices each include a plurality of service control units.
- all functional units of the message processing device are located in different L4 ⁇ L7 network devices, for example, Some of the interface processing units are located in the L4 ⁇ L7 network device 1, and the other part is located in the L4 ⁇ L7 network device 2, and some of the service processing units are located in the L4 ⁇ L7 network device 1, and the other part is located in the L4 ⁇ In the L7 network device 2, some of the service control units are located in the L4 ⁇ L7 network device 1, and the other part is located in the L4 ⁇ L7 network device 2, and some of the application processing units are located in the L4 ⁇ L7 network device 1.
- the connection unit between the functional units of the interaction actually includes different connection unit portions located in the different network devices, and
- the connection of the different connection unit parts located in different network devices enables this interaction.
- the interface processing unit 1 in the L4 ⁇ L7 network device 1 selects to send the packet to the service processing unit 1 in the L4 ⁇ L7 network device 2.
- the interface processing unit 1 passes the L4 ⁇ L7 network.
- the connection unit in the device 1 sends the message to the connection unit in the L4 ⁇ L7 network device 2, and the connection unit in the L4 ⁇ L7 network device 2 sends the message to the service processing unit 1.
- the selection may be performed according to a preset policy.
- the service processing unit selects the service control unit or the service control unit to select the application processing unit
- the service control unit or the application processing unit may be sequentially selected according to a preset polling policy, or may be based on a preset load balancing policy. Select the service control unit or application processing unit with the lowest current traffic load.
- any one of the interface processing units may select the service processing unit according to the pre-acquired message distribution policy indication.
- the core idea of the packet processing method proposed by the present invention is: setting a connection unit between each interface processing unit of the L4 ⁇ L7 network device and each service processing unit; any one of the interface processing units receiving the externally sent message And selecting a service processing unit, and sending the message to the selected service processing unit by using the connection unit; the selected service processing unit performs service processing on the message after receiving the message.
- Step 1301 The service control unit in the packet processing apparatus of the L4-L7 network device acquires each packet processing device. Processing capability information of the business processing unit.
- the processing capability information of the service processing unit includes: various types of information such as a service type that the service processing unit can process and a service capacity of the service processing unit.
- Step 1302 The service control unit determines whether a processing mode configuration command of the external input is received, and if yes, step 1303 is performed; otherwise, step 1306 is performed.
- the processing mode configuration command may be input to the service control unit, and the service control unit is triggered to perform subsequent control packets according to the requirements of the management personnel.
- Flow direction processing If the manager does not need to participate in the process of controlling each service processing unit, it is not necessary to input a processing mode configuration command to the service control unit, thereby triggering the service control unit to perform subsequent automatic control packet flow processing.
- the service control unit may input the processing requirement for the video session to be greater than one session bandwidth. Set the value, in this way, in step 1304, the service control unit searches for all services capable of providing a bandwidth not less than the set value bandwidth from all the service processing units capable of processing the video session according to the acquired processing capability information of each service processing unit. Processing unit.
- Step 1305 The service control unit generates a message distribution policy indication, where the message distribution policy indication includes a policy for selecting according to the correspondence between the specified service and the found service processing unit, and step 1307 is performed.
- Step 1306 The service control unit directly according to the processing capability information of each service processing unit The generated message distribution policy indication is generated.
- the packet distribution policy indication generated by the service control unit includes: service type information corresponding to each service processing unit, and a polling policy, a random allocation policy, a load sharing policy, and a processing capability policy according to the service processing unit. one of.
- Step 1307 The service control unit sends the generated message distribution policy indication to all interface processing units, and all interface processing units save the received message distribution policy indication.
- the service control unit sends the message distribution policy indication to all the interface processing units, so that all the interface processing units obtain the message distribution policy according to the packet forwarding message. Instructions.
- the message distribution policy indication may be separately configured on all the interface processing units, so that all interface processing units can obtain the message distribution policy indication by themselves.
- Step 1308 The service control unit acquires service load information of each service processing unit.
- Step 1309 Each service processing unit separately monitors its own service load, and determines whether its own service load is greater than a maximum load threshold set in advance in itself or less than a minimum load threshold set in advance, if its own traffic load If the value is greater than the maximum load threshold, step 1310 is performed. If the traffic load of the user is less than the minimum load threshold, step 1312 is performed.
- Step 1310 The overloaded alarm notification is reported to the service control unit, and the service control unit determines the substitute service processing unit according to the obtained service load information of each service processing unit.
- the process of the service control unit determining the substitute service processing unit may include: the service control unit searches for a service processing unit of the same service type as the service processing unit that reports the overload warning notification, and searches for the service in the service processing unit that is found.
- the one with the least load is determined as an alternative business processing unit.
- Step 1311 The service control unit reports the service processing unit that reports the overload warning.
- the feature information of the part or all of the session and the replacement service processing unit identifier are carried in the generated switching indication, and sent to all interface processing units, and step 1314 is performed.
- Step 1312 Reporting the under-loading notification to the service control unit, and the service control unit determines the alternative service processing unit according to the obtained service load information of each service processing unit.
- Step 1313 The service control unit carries the feature information of the session of the service processing unit reporting the under-loading notification and the substitute service processing unit identifier in the generated merge indication to all interface processing units.
- Step 1314 When any of the interface processing units, such as the interface processing unit 1, receives the externally sent message, it determines whether the received message is a message of the established session. If yes, step 1322 is performed, if no, Then step 1315 is performed.
- the interface processing unit 1 determines whether the received message is a message of the established session, and can be described as follows: The interface processing unit 1 extracts the packet header of the packet, such as the five-element of the packet. Whether the group header information of the group information or the packet is used to determine whether the extracted packet header can be found in the session forwarding information saved by itself, and if yes, the received packet is determined to be a session of the established session; otherwise, Determine that the received packet is a packet with no session established.
- Step 1315 The interface processing unit 1 determines whether the received packet is a tunnel packet, such as If yes, go to step 1316, otherwise, go to step 1317.
- Step 1316 The interface processing unit 1 determines whether the tunnel corresponding to the received tunnel packet is being established. If yes, the tunnel packet is directly discarded. Otherwise, step 1317 is performed.
- the interface processing unit is indicated. If the tunnel is being established and is not configured, the tunnel packet is received. If the packet is not processed, the packet is discarded. If the packet is not a tunnel packet, such as UDP, TCP, or ICMP, Or, if the tunnel packet is not established, the tunnel packet is used to trigger the establishment of the tunnel. Therefore, subsequent processing of the new session can be performed.
- Step 1317 The interface processing unit 1 determines whether the feature information of the session to which the received message belongs is the same as the feature information of the session carried in the switching instruction. If yes, step 1318 is performed; otherwise, step 1319 is performed.
- Step 1318 The interface processing unit 1 selects the substitute service processing unit according to the identifier of the substitute service processing unit carried in the switching instruction, and sends the message to the selected service processing unit, where the selected service processing unit corresponds to the >3 ⁇ 4 text. Business processing, ending the current process.
- Step 1319 The interface processing unit 1 determines whether the feature information of the session to which the received message belongs is the same as the feature information of the session carried in the merge instruction. If yes, step 1320 is performed; otherwise, step 1321 is performed.
- Step 1320 The interface processing unit 1 selects the substitute service processing unit according to the identifier of the substitute service processing unit carried in the merge indication, and sends the message to the selected service processing unit, where the selected service processing unit corresponds to the >3 ⁇ 4 text. Business processing, ending the current process.
- Step 1321 The interface processing unit 1 selects a service processing unit according to the saved message distribution policy indication, and sends the message to the selected service processing unit, where the selected service processing unit performs corresponding service processing on the packet, and ends the current Process.
- the message distribution policy indication saved by the interface processing unit 1 is a message distribution policy indication sent by the service control unit, which is selected according to the correspondence between the specified service and the found service processing unit, then, in this step, The interface processing unit 1 directly selects a service processing unit according to the correspondence. For example, all the packets that need to be processed in a centralized manner (such as IPSec) are collected into a service processing unit.
- the corresponding relationship between the specified service and the service processing unit is the tunnel packet.
- the corresponding relationship between the service and a specific service processing unit 1 is such that, in this step, if the received message is a tunnel message, the interface processing unit 1 sends the tunnel message to the dedicated one according to the corresponding relationship.
- Service processing unit 1 for processing tunnel packets.
- the interface processing unit 1 If the message distribution policy indication stored in the interface processing unit 1 is the service type information corresponding to each service processing unit sent by the service control unit, and the polling policy, the random allocation policy, the load sharing policy, and the processing capability according to the service processing unit. One of the policies, then, in this step, the interface processing unit 1 is in accordance with a polling policy, a random allocation policy, a load sharing policy, and a service processing unit according to all service processing units capable of processing the service type corresponding to the message. One of the processing power policies to select a business processing unit.
- Step 1322 The interface processing unit 1 selects a corresponding service processing unit according to the session forwarding information sent in advance by the service control unit, and sends the packet to the selected service processing unit.
- the process of the service control unit sending the session forwarding information to the interface processing unit 1 in advance may be: after a service processing unit determines that the received message is an unestablished session message, the message is sent to the service control unit.
- the service control unit performs a new process of the session to which the message belongs, sends the session information and the session processing action to the selected service processing unit, and sends the session forwarding information to all interface processing units.
- Step 1323 The selected service processing unit performs corresponding service processing on the received packet according to the saved session information and the session processing action.
- the selected service office The process of the corresponding service processing performed by the processing unit on the received packet is a prior art, and may be, for example, performing encryption and decryption processing on the packet, or responding to the data content requested by the packet, or performing service conversion.
- each service processing unit can be located in the same L4 ⁇ L7 network device
- the present invention can perform the foregoing FIG. 13 in an L4 ⁇ L7 network device.
- the packet processing process is implemented, thereby implementing flexible selection of the service processing unit within the network device, and improving the packet processing capability of the network device.
- the present invention since the service control unit, each service processing unit, and any two functional units of each interface processing unit may be located in different L4-L7 network devices, the present invention may be different.
- the L4 ⁇ L7 network device performs the packet processing process shown in Figure 13 above.
- the service control unit and each service processing unit in the process shown in Figure 13 are located in the L4 ⁇ L7 network device 1, and each interface processing unit is located.
- the service processing unit can be flexibly selected in different L4 ⁇ L7 network devices by the cooperation of different L4 ⁇ L7 network devices, thereby improving the packet processing capability of the network device.
- the message processing apparatus includes only one service control unit. Therefore, the specific process of the message processing shown in FIG. 13 is as follows. It can be directly applied to the message processing device.
- the message processing apparatus includes a plurality of service control units. Therefore, when the specific process of the message processing shown in FIG. 13 is applied to the message processing apparatus.
- Each of the service control units is required to perform the step of acquiring the service load information of each service processing unit in FIG. 13, and is executed by the service control unit that receives the notification sent by the service processing unit or the command sent by the external management personnel.
- the step of generating a message distribution policy as indicated in Figure 13 is directed to and sent to all interface processing units.
- the interface processing unit in the present invention has the function of interacting with the external message and the function of sending the message to the service processing unit according to the predetermined policy.
- the interface processing unit The function may be divided into an interface module and a first-level pre-processing module, where the interface module is configured to perform the function of sending and receiving a message selection service processing unit in the embodiment of the present invention and sending a message to the service processing unit.
- the primary pre-processing module in the interface processing unit is a very critical functional module, and the external traffic received from the interface is first directly processed by the primary processing module.
- the current interface module speed has been increasing and has been developed to 40G. Therefore, if the processing speed of the primary pre-processing module does not match the traffic transmitted by the interface module, it will become the bottleneck of the line rate processing of the entire device.
- the packet forwarding policy indication may be sent to the first-level pre-processing module to enable the first-level pre-processing module to forward the packet to meet the following conditions:
- the load balancing mode is offloaded according to the load of the service processing unit to ensure that the processing load of each service processing unit is relatively balanced.
- the traffic is distributed and aggregated at the primary pre-processing module.
- the preprocessing module of the work is general processing for most streams.
- the preprocessing module of the work is the preprocessing module that performs special processing on certain feature streams (such as tunnel messages).
- the classification can be implemented at least by:
- a secondary pre-processing module is added between the connection unit 1 and each service processing unit.
- a specific implementation is to further add a secondary pre-processing module on the service board where each service processing unit is located.
- the first-level pre-processing module in each interface processing unit only performs the general processing work of the first type on most of the streams, and the newly added second-level pre-processing module is used to complete the second type of work, that is, specific to The feature stream is specially processed, that is, the second feature is distributed to a specific feature stream.
- a secondary preprocessing module is added between the primary preprocessing module and the connection unit 1.
- the primary preprocessing module in each interface processing unit only completes the generalization of the first type to most of the flows. Processing work, the newly added secondary preprocessing module is used to complete the second type of work described above, that is, special processing is performed on certain specific feature streams, that is, secondary distribution of specific feature streams.
- the pre-processing module when the manner of adding the two preprocessing modules in the message processing apparatus is as shown in FIG. 14, in the above step 1603, the information and the text of the service processing unit output by the primary preprocessing module are transmitted to the specific two through the connecting unit 1.
- the pre-processing module when the method of adding the two pre-processing modules in the message processing device is as shown in FIG. 15, in the above step 1604, the message directly sent by the second-level pre-processing module is sent to the first-level unit through the connection unit 1.
- the business processing unit selected by the preprocessing module is as shown in FIG. 14, in the above step 1603, the information and the text of the service processing unit output by the primary preprocessing module are transmitted to the specific two through the connecting unit 1.
- the pre-processing module when the method of adding the two pre-processing modules in the message processing device is as shown in FIG. 15, in the above step 1604, the message directly sent by the second-level pre-processing module is sent to the first-level unit through the connection unit 1.
- Step 1606 After receiving the packet, the secondary pre-processing module determines whether the packet meets the characteristics of the pre-saved specific feature stream. If yes, step 1607 is performed. Otherwise, step 1604 is performed.
- Step 1607 The secondary pre-processing module selects a service processing unit according to the saved message distribution policy indication of the specific feature flow, and sends the message to the selected service processing unit.
- step 1606 to step 1607 includes the following steps:
- Step s401 The secondary pre-processing module determines whether the encapsulation format of the packet is a tunneling packet, and if yes, proceeds to step s402, otherwise proceeds to step s403.
- determining whether the encapsulation format of the packet is a tunneling packet is a feature of determining whether the packet conforms to a specific feature stream.
- Step s402 The secondary pre-processing module queries the outbound direction redirection table, distributes the packet to the corresponding service processing unit, and the service processing unit processes the corresponding service, and then ends the current process.
- the process in which the secondary pre-processing module queries the outbound direction redirection table to distribute the message to the corresponding service processing unit is to select the service processing unit according to the message distribution policy indication of the specific feature stream saved in advance and send the message to the >3 ⁇ 4 text. the process of.
- Step s403 The secondary pre-processing module obtains the outgoing interface according to the destination address of the packet, and obtains the outgoing interface according to the information of the outgoing interface, and confirms whether the packet is a packet entering the tunnel. If yes, step s404 is performed; otherwise, step s405 is performed.
- the packet is a packet entering the tunnel, that is, whether the packet conforms to the characteristics of the specific feature stream.
- Step S 404 Query the inbound direction redirection table. If the corresponding entry is found, the file is distributed to the corresponding service processing unit according to the information in the table. If not found, the file is discarded, the service control unit is notified to initiate the negotiation, and the current process is terminated. .
- the process that the secondary preprocessing module queries the inbound direction redirection table to distribute the message to the corresponding service processing unit is to select the service processing unit according to the message distribution policy indication of the specific feature stream saved in advance and send the message to the >3 ⁇ 4 text. process.
- Step s405 Send to the first-level pre-processing module, and the first-level pre-processing module performs normal stream distribution processing on the packet.
- the primary pre-processing module only needs to complete most of the The general processing of the shunt can be done.
- the first-level pre-processing module does not perform any special processing on special flows such as related flows carried by the tunnel, and still processes according to the existing general process.
- After the packet reaches the secondary pre-processing module it is identified and re-distributed.
- the inbound/outbound direction redirection table originally stored in the primary preprocessing module for processing special packets needs to be deleted from the primary preprocessing module, but saved to all secondary preprocessing modules.
- the secondary pre-processing module can not only share the work of the primary pre-processing module, but also undertake new work according to the situation. For example, if the service processing unit is located on the service board where the service processing unit is located, in addition to the service processing unit, a processing unit that performs deep processing on the message stream, such as content search, is provided, and if there are multiple processing units, the secondary processing may be performed.
- the module distributes the stream processed by the normal processing of the first-level pre-processing module, and distributes to different processing units that perform deep processing on the packet stream according to a preset policy.
- connection units mentioned in all embodiments of the present invention may be implemented by using one of a switching network, a switch chip, a bus connection unit, and a Full Match connection unit.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
一种报文处理装置和方法
技术领域
本发明涉及网络通信技术, 特别是涉及一种报文处理装置和方法。 发明背景
在网络中, 为了使四层至七层网络设备(为便于描述, 以下统称为
L4~L7网络设备)能够对一个业务流即一个会话的报文, 进行各种业务 处理, L4~L7网络设备内部典型的交换架构主要由业务控制单元、 业务 处理单元和接口组成。
图 1是在现有技术中 L4~L7网络设备内部的结构示意图。参见图 1 , 在目前, L4~L7网络设备内部典型的交换架构为: L4~L7网络设备中, 各个接口与各个业务处理单元固定连接在一起, 所有业务处理单元通过 连接单元与业务控制单元连接在一起。当 L4~L7网络设备的一个接口如 接口 1接收到一个报文后, 接口 1将该报文发送至与其固定连接的业务 处理单元 1; 业务处理单元 1接收到接口 1发来的报文后, 如果判断出 报文是未建会话的报文, 即会话首包, 则通过连接单元将该报文发送至 业务控制单元,由业务控制单元完成会话的新建和 TCP半连接等各种会 话控制处理, 业务控制单元将会话信息和会话处理动作通过连接单元发 送至业务处理单元 1 , 由业务处理单元 1根据接收到的会话信息和会话 处理动作对报文进行对应的业务处理; 业务处理单元 1接收到接口 1发 来的报文后, 如果判断出报文是已建会话的报文, 则直接根据保存的会 话信息和会话处理动作对报文进行对应的业务处理。
由以上描述及图 1可以看出, 在现有技术中, L4~L7网络设备的接 口与业务处理单元是捆绑在一起的, 即一个业务处理单元只能固定地与
一个接口连接, 这样, 每一个业务处理单元则只能处理与其捆绑的接口 的报文, 如果 L4~L7网络设备中一些接口的流量过大, 而另一些接口的 流量过小, 则会导致一些业务处理单元业务负荷过重, 报文处理速度降 低, 成为网络设备报文处理的瓶颈, 而另一些业务处理单元则处于空闲 状态, 从而大大降低了 L4~L7网络设备的报文处理能力。
在现有技术中,如果 L4~L7网络设备的一个业务处理单元发生故障, 那么, 该业务处理单元所处理的所有业务都会中断, 从而大大降低了 L4-L7网络设备的业务服务质量。
进一步地, 现有技术中, 由于接口和业务处理单元绑定, 业务处理 能力受单个业务处理单元的性能限制, 无法提供高速的限速业务处理端 口 (如 10GE端口)。 并且, 在现有技术中, 业务控制单元为对业务进行 集中处理的单元, 容易出现处理能力的瓶颈, 且无法进行扩展。 发明内容
本发明的一个目的在于提出一种报文处理装置, 本发明的另一个目 的在于提出一种报文处理方法,以便于增加 L4~L7网络设备的报文处理 能力。
为达到上述目的, 本发明的技术方案是这样实现的:
一种报文处理装置, 应用于 L4~L7网络设备中, 包括: 多个接口处 理单元和多个业务处理单元, 任意一个接口处理单元通过第一连接单元 与任意一个业务处理单元相连, 且,
接口处理单元, 用于在接收到外部发来的报文后, 从所有业务处理 单元中选择一个业务处理单元, 通过第一连接单元将报文发送至所选的 业务处理单元;
业务处理单元, 用于在接收到报文后, 对报文进行业务处理。
一种报文处理方法, 包括: 在 L4~L7网络设备的各个接口处理单元 与各个业务处理单元之间设置连接单元; 任意一个接口处理单元接收到 外部发来的报文后选择业务处理单元, 通过连接单元将报文发送至所选 的业务处理单元; 该所选的业务处理单元在接收到报文后, 对报文进行 业务处理。
由此可见, 在本发明中, 由于 L4~L7网络设备中的接口与业务处理 单元不再具有绑定关系, 从任意一个接口处理单元进入的报文可以分配 到任意一个报文处理单元,从而使得该 L4~L7网络设备能够灵活利用各 个报文处理单元, 提高了 L4~L7网络设备的报文处理能力, 并且提升了 设备的可靠性。
进一步地, 在本发明中, 由于接口处理单元能够任意选择业务处理 单元, 因此,如果 L4~L7网络设备的一个业务处理单元发生故障,那么, 该业务处理单元所处理的所有业务都可以转移到其他正常的业务处理 单元, 从而大大提高了 L4~L7网络设备的业务服务质量。
进一步地, 在本发明中, L4~L7网络设备中的业务处理单元还具有 主动上报业务负荷情况的功能, 从而实现了在一个业务处理单元业务负 荷量过重的情况下, 动态地将该业务处理单元处理的会话转移到一个替 代的业务处理单元上, 并且, 在一个业务处理单元业务负荷量过低的情 况下, 动态地将该业务处理单元处理的会话合并到一个替代的业务处理 单元上, 使得业务控制单元能够实时地整体调控所有业务处理单元处理 的业务, 大大提高了业务实现的灵活性和可控性。
进一步地, 在本发明中, 通过在 L4~L7网络设备中原有一级预处理 模块的基础上增加二级预处理模块, 由该二级预处理模块来分担第一级 预处理模块对特殊流的复杂处理工作, 使得第一级预处理模块仅仅执行 对普通流的通用处理工作, 从而保证了一级预处理模块始终保持筒洁快
速的处理, 大大提高了 L4~L7网络设备的处理性能。 附图简要说明
图 1是在现有技术中 L4~L7网络设备内部的结构示意图。
图 2是在本发明一个实施例中报文处理装置内部的基本结构示意 图。
图 3是在本发明一个实施例中报文处理装置内部的第一种优化结构 示意图。
图 4是在本发明一个实施例中报文处理装置内部的第二种优化结构 示意图。
图 5是在本发明一个实施例中报文处理装置内部的第三种优化结构 示意图。
图 6是在本发明一个实施例中报文处理装置内部的第四种优化结构 示意图。
图 7是在本发明一个实施例中报文处理装置内部的第五种优化结构 示意图。
图 8是在本发明一个实施例中在图 3所示报文处理装置结构基础上 增加应用处理单元的结构示意图。
图 9是在本发明一个实施例中在图 4所示报文处理装置结构基础上 增加应用处理单元的结构示意图。
图 10是在本发明一个实施例中在图 5所示报文处理装置结构基石出上 增加应用处理单元的结构示意图。
图 11是在本发明一个实施例中在图 6所示报文处理装置结构基础上 增加应用处理单元的结构示意图。
图 12是在本发明一个实施例中在图 7所示报文处理装置结构基石出上
增加应用处理单元的结构示意图。
图 13是在本发明一个实施例中的报文处理过程流程图。
图 14是在本发明一个实施例中在连接单元 1与各个业务处理单元之 间增加二级预处理模块的一种结构示意图。
图 15 是在本发明一个实施例中在接口处理单元中的一级预处理模 块与连接单元 1之间增加二级预处理模块的一种结构示意图。
图 16是在本发明一个实施例中利用一级预处理模块和二级预处理 模块来进行报文分发处理的流程图。 实施本发明的方式
为使本发明的目的、 技术方案和优点更加清楚, 下面结合附图及具 体实施例对本发明作进一步地详细描述。
在实际的业务实现中,对于任意一种业务类型,如视频会话, L4-L7 网络设备中通常绝大部分甚至是全部的业务处理单元能够处理该业务 类型, 因此, 在一个接口接收到一种业务类型的报文后, 完全可以不必 局限于现有技术中使用一个固定的业务处理单元来处理该报文的做法, 完全可以灵活地选择一个业务处理单元来处理该报文, 从而大大提高 L4-L7网络设备的报文处理能力。
因此, 本发明实施例提出了一种应用于 L4~L7网络设备中的报文处 理装置。 图 2是在本发明一个实施例中报文处理装置内部的基本结构示 意图。 参见图 2, 该报文处理装置主要包括: 多个接口处理单元和多个 业务处理单元, 任意一个接口处理单元通过连接单元 1与任意一个业务 处理单元相连, 且,
接口处理单元, 用于在接收到外部发来的报文后, 从所有业务处理 单元中选择一个业务处理单元, 通过连接单元 1将报文发送至所选的业
务处理单元;
业务处理单元, 用于在接收到报文后, 对报文进行业务处理。
图 2所示的报文处理装置中的所有功能单元可以设置在一个 L4~L7 网络设备中, 也就是说, 所有接口处理单元和所有业务处理单元位于同 一个 L4~L7网络设备中。 这样, 在该 L4~L7 网络设备中, 接口处理单 元与业务处理单元不再具有绑定关系, 从任意一个接口处理单元进入的 报文可以分配到任意一个报文处理单元,从而使得该 L4~L7网络设备能 够灵活利用内部各个报文处理单元,提高了 L4~L7网络设备的报文处理 能力。
图 2所示的报文处理装置中的所有功能单元也可以任意设置在不同 的 L4~L7网络设备中, 比如, 所有接口处理单元中的一部分位于 L4~L7 网络设备 1中, 另一部分位于 L4~L7网络设备 2中, 且所有业务处理单 元中的一部分位于 L4~L7网络设备 1中, 另一部分位于 L4~L7网络设 备 2中。 这样, 从一个 L4~L7网络设备中一个接口处理单元进入的报文 不仅可以在本 L4~L7网络设备内部分配到任意一个业务处理单元,而且 还可以分配到其他 L4~L7网络设备中的任意一个业务处理单元,从而使 得 L4~L7网络设备不仅能够灵活利用自身的各个报文处理单元,而且还 可以灵活利用其他 L4~L7 网络设备的报文处理单元, 从而大大提高了 L4-L7网络设备的报文处理能力。
在图 2所示报文处理装置的基本结构基石出上, 该报文处理装置内部 还可以进一步包括业务控制单元,用于完成会话的新建和 TCP半连接等 各种会话控制处理。
图 3是在本发明一个实施例中报文处理装置内部的第一种优化结构 示意图。 参见图 3, 在报文处理装置中增加上述业务控制单元的第一种 可行的实现方案为, 业务处理单元与业务控制单元之间的连接方式采用
现有技术中的连接方式, 即所有业务处理单元通过一个连接单元记为连 接单元 2, 与一个业务控制单元相连; 这样,
所述业务处理单元, 用于在接收到接口处理单元发来的报文后, 进 一步判断接收到的报文是否为已建会话的报文, 如果不是, 则通过连接 单元 2将报文发送至业务控制单元, 如果是, 则根据保存的会话信息和 会话处理动作对报文进行业务处理;
所述业务控制单元, 用于在接收到报文后, 进行该报文所属会话的 新建处理, 选择一个业务处理单元, 这里, 业务控制单元在选择业务处 理单元时可以直接选择发来报文的业务处理单元, 也可以根据预先设置 的重定向策略重新选择处理该报文的业务处理单元, 然后, 通过连接单 元 2将会话信息和会话处理动作发送至所选业务处理单元, 从而使得业 务控制单元所选的业务处理单元能够根据接收到的会话信息和会话处 理动作对会话的首个报文进行对应的业务处理。
图 4是在本发明一个实施例中报文处理装置内部的第二种优化结构 示意图。 参见图 4, 在报文处理装置中增加业务控制单元的第二种可行 的实现方案为, 将所有业务处理单元通过一个连接单元记为连接单元 2 与一个业务控制单元相连, 并且, 连接单元 1与连接单元 2相连, 由于 连接单元 1和连接单元 2相连, 因此, 对于一个会话的首个报文, 接口 处理单元则可以直接送往业务控制单元, 而无需再采用图 3所示装置中 通过业务处理单元将首个报文转发给业务控制单元的做法, 从而提高报 文处理效率。 其中, 接口处理单元将一个会话的首个报文直接送往业务 控制单元的具体实现为:
所述接口处理单元, 用于在接收到报文时, 进一步判断接收到的报 文是否为已建会话的报文, 如果不是, 则通过连接单元 1和连接单元 直接将报文发送至业务控制单元, 如果是, 再执行所述的选择一个业务
处理单元的处理, 从而触发该所选业务处理单元对报文进行对应的业务 处理;
所述业务控制单元, 用于在接收到报文后, 进行该报文所属会话的 新建处理, 选择一个业务处理单元, 通过连接单元 2将会话信息和会话 处理动作发送至所选业务处理单元, 从而触发该所选业务处理单元对报 文进行对应的业务处理。
图 5是在本发明一个实施例中报文处理装置内部的第三种优化结构 示意图。 参见图 5 , 在报文处理装置中增加业务控制单元的第三种可行 的实现方案为, 为每一个业务处理单元固定连接一个业务控制单元, 也 就是说, 每一个业务处理单元均有一个专用的业务控制单元为其提供服 务, 具体的实现包括:
所述业务处理单元, 用于在接收到接口处理单元发来的报文后, 进 一步判断接收到的报文是否为已建会话的报文, 如果不是, 则将报文发 送至与其固定连接的业务控制单元, 如果是, 则根据保存的会话信息和 会话处理动作对报文进行业务处理;
所述业务控制单元, 用于在接收到报文后, 进行该报文所属会话的 新建处理, 将会话信息和会话处理动作发送至与其固定连接的业务处理 单元, 从而触发该业务处理单元对报文进行对应的业务处理。
图 6是在本发明一个实施例中报文处理装置内部的第四种优化结构 示意图。 参见图 6, 在报文处理装置中增加业务控制单元的第四种可行 的实现方案为, 将所有业务处理单元通过连接单元 2与多个业务控制单 元相连, 也就是说, 由多个业务控制单元为所有的业务处理单元提供服 务, 具体的实现包括:
所述业务处理单元, 用于在接收到报文后, 进一步判断接收到的报 文是否为已建会话的报文, 如果不是, 则选择一个业务控制单元, 并通
过连接单元 2将报文发送至所选的业务控制单元, 如果是, 则根据保存 的会话信息和会话处理动作对报文进行业务处理;
所述业务控制单元, 用于在接收到报文后, 进行该报文所属会话的 新建处理, 通过第二连接单元将会话信息和会话处理动作发送至发来报 文的业务处理单元, 或者, 选择一个业务处理单元, 并通过第二连接单 元将会话信息、 会话处理动作和报文发送至业务控制单元选择的业务处 理单元。
图 7是在本发明一个实施例中报文处理装置内部的第五种优化结构 示意图。 参见图 7, 在报文处理装置中增加业务控制单元的第五种可行 的实现方案为, 将所有业务处理单元通过连接单元 2与多个业务控制单 元相连, 且连接单元 1与连接单元 2相连, 由于连接单元 1和连接单元 2相连, 因此, 对于一个会话的首个报文, 接口处理单元则可以直接送 往业务控制单元, 而无需再采用图 6所示装置中通过业务处理单元将首 个报文转发给业务控制单元的做法, 从而提高报文处理效率, 具体实现 为:
所述接口处理单元, 用于在接收到报文时, 进一步判断接收到的报 文是否为已建会话的报文, 如果不是, 则选择一个业务控制单元, 通过 连接单元 1和连接单元 2直接将报文发送至所选业务控制单元,如果是, 则选择一个业务处理单元, 从而触发该所选业务处理单元对报文进行对 应的业务处理;
所述业务控制单元, 用于在接收到报文后, 进行该报文所属会话的 新建处理, 选择一个业务处理单元, 通过连接单元 2将会话信息和会话 处理动作发送至所选业务处理单元, 从而触发该所选业务处理单元对报 文进行对应的业务处理。
可见, 相对于图 3和图 4所示的报文处理装置, 图 5所示的方式是
由每一个专用的业务控制单元来负责其对应的每一个业务处理单元的 控制操作, 图 6和图 7所示的方式是由多个业务控制单元来负责所有业 务处理单元的控制操作, 因此, 图 5、 图 6和图 7所示的报文处理装置 可以进一步增加会话的新建速度,进一步提高 L4~L7网络设备的报文处 理能力, 并且, 也避免了图 3和图 4所示报文处理装置中一个业务控制 单元故障导致所有业务中断的缺点。
需要说明的是, 图 3至图 7中任意一个所示的报文处理装置中的所 有功能单元可以设置在一个 L4~L7网络设备中或任意设置在不同 L4~L7 网络设备中, 也就是说, 所有业务控制单元、 所有业务处理单元和所有 接口处理单元位于同一个 L4~L7 网络设备中, 也可以位于任意不同的 L4-L7网络设备中。
在图 5至图 7中, 报文处理装置均包括多个业务控制单元, 在本发 明一个较佳实施例中, 该报文处理装置中的各个功能单元位于不同 L4-L7网络设备中, 比如, 所有接口处理单元中的一部分位于 L4~L7网 络设备 1中, 另一部分位于 L4~L7网络设备 2中, 且, 所有业务处理单 元中的一部分位于 L4~L7网络设备 1中, 另一部分位于 L4~L7网络设 备 2中, 且所有业务控制单元中的一部分位于 L4~L7网络设备 1中, 另 一部分位于 L4~L7网络设备 2中。 这样, 不同 L4~L7网络设备之间则 可实现相互配合协调工作。 也就是说, L4~L7网络设备 1中的接口处理 单元可以任意选择本 L4~L7网络设备或 L4~L7网络设备 2中的业务处 理单元或业务控制单元来处理会话的报文, 并且, L4~L7网络设备 1中 的业务处理单元可以任意选择本 L4~L7 网络设备或 L4~L7 网络设备 2 中的业务控制单元来处理会话的报文, 并且, L4~L7网络设备 1中的业 务控制单元可以任意选择本 L4~L7网络设备或 L4~L7网络设备 2中的 业务处理单元来处理会话的报文。 从而极大地增加了本发明实现的灵活
性, 进一步增加了 L4~L7网络设备的报文处理能力。
与现有技术的相关处理相同, 在本发明实施例中业务控制单元也需 要将新建会话时得到的会话转发信息发送至接口处理单元。
参见图 3、 图 5和图 6所示的报文处理装置, 在其内部业务控制单 元与接口处理单元之间没有直接相连, 因此, 业务控制单元必须通过业 务处理单元将新建会话时得到的会话转发信息发送至接口处理单元, 其 实现包括:
业务控制单元进一步将会话转发信息发送至所选的业务处理单元; 业务处理单元, 进一步将接收到的会话转发信息发送至所有的接口 处理单元;
接口处理单元, 用于保存接收到的会话转发信息, 在接收到外部发 来的报文且判断出该报文是已建会话的报文后, 根据保存的会话转发信 息选择一个业务处理单元。
参见图 4和图 7所示的报文处理装置, 在其内部业务控制单元与接 口处理单元之间可以通过连接单元 1和连接单元 2直接相连, 因此, 业 务控制单元可以直接将新建会话时得到的会话转发信息发送至接口处 理单元, 其实现包括:
所述业务控制单元进一步通过连接单元 2和连接单元 1将会话转发 信息发送至所有的接口处理单元;
所述接口处理单元, 用于保存接收到的会话转发信息, 在接收到外 部发来的报文且判断出该报文是已建会话的报文后, 根据保存的会话转 发信息选择一个业务处理单元。
由于会话转发信息中携带有处理会话首个报文的业务处理单元的信 息, 因此, 在本发明实施例中, 接口处理单元根据会话转发信息选择业 务处理单元则可以保证同一个会话的所有报文能够发送到同一业务处
理单元进行处理。
在上述图 3至图 7所示的报文处理装置中, 任意一个接口处理单元 在判断出接收到的报文不是已建会话的报文之后, 还可以进一步判断该 报文是否为隧道报文且对应的隧道是否正在建立, 如果是隧道报文且对 应的隧道正在建立, 则表示该接口处理单元是在隧道正在建立且未建好 的情况下接收到了隧道报文, 因此, 无法进行处理, 则直接丢弃该报文, 如果不是隧道报文, 比如是 UDP、 TCP或 ICMP等报文, 或者, 是隧道 报文但隧道没有开始建立, 则可以执行后续的新建会话的处理, 因此, 该接口处理单元则可以继续执行选择一个业务控制单元的过程。
需要说明的是, 利用上述图 3至图 7所示的报文处理装置, 可以实 现 L4层 L4~L7网络设备。 为了实现更高层的 L4~L7网络设备如 L5~L7 层 L4~L7网络设备,在上述图 3至图 7所示的报文处理装置的结构基石出 上, 还可以进一步包括应用处理单元。
针对图 3、 图 4、 图 5、 图 6和图 7所示的报文处理装置, 在其结构 基础上分别增加应用处理单元后的报文处理装置的一种较佳实现可分 别参见图 8、 图 9、 图 10、 图 11和图 12所示, 所有业务控制单元通过 连接单元 3与多个应用处理单元相连; 其中,
所述业务控制单元, 进一步用于在接收到报文时, 判断报文是否需 要进行应用层处理, 如果是, 则选择一个应用处理单元, 将报文发送至 所选的应用处理单元, 否则, 执行 文所属会话的新建处理;
所述应用处理单元, 在接收到报文后, 对报文进行应用层处理, 选 择一个业务控制单元, 将处理完的报文发送至所选的业务控制单元, 从 而触发该所选的业务控制单元执行报文所属会话的新建处理。
需要说明的是,图 8至图 12中任意一个所示的报文处理装置中的所 有功能单元可以设置在一个 L4~L7网络设备中或任意设置在不同 L4~L7
网络设备中, 也就是说, 所有应用处理单元、 所有业务控制单元、 所有 业务处理单元和所有接口处理单元位于同一个 L4~L7网络设备中,也可 以位于不同的 L4~L7网络设备中。
在图 5至图 7中, 报文处理装置均包括多个业务控制单元, 在本发 明一个较佳实施例中, 该报文处理装置的所有功能单元位于不同 L4~L7 网络设备中, 比如, 所有接口处理单元中的一部分位于 L4~L7网络设备 1中, 另一部分位于 L4~L7网络设备 2中, 且, 所有业务处理单元中的 一部分位于 L4~L7网络设备 1中, 另一部分位于 L4~L7网络设备 2中, 且所有业务控制单元中的一部分位于 L4~L7网络设备 1中,另一部分位 于 L4~L7 网络设备 2中, 且所有应用处理单元中的一部分位于 L4~L7 网络设备 1中, 另一部分位于 L4~L7网络设备 2中。 这样, 不同 L4~L7 网络设备之间则可实现相互配合协调工作。 也就是说, L4~L7网络设备 1中的接口处理单元可以任意选择本 L4~L7网络设备或 L4~L7网络设备 2 中的业务处理单元或业务控制单元来处理会话的报文, 并且, L4~L7 网络设备 1中的业务处理单元可以任意选择本 L4~L7网络设备或 L4~L7 网络设备 2中的业务控制单元来处理会话的报文, 并且, L4~L7网络设 备 1 中的业务控制单元可以任意选择本 L4~L7网络设备或 L4~L7网络 设备 2 中的业务处理单元和应用处理单元来处理会话的报文, 并且, L4-L7网络设备 1中的应用处理单元可以任意选择本 L4~L7网络设备或 L4-L7网络设备 2中的业务控制单元。 从而极大地增加了本发明实现的 灵活性, 增加了 L4~L7网络设备的报文处理能力。
图 5至图 7所示的报文处理装置中均包括多个业务控制单元, 较佳 地, 为了进一步增加报文处理装置的安全性和可靠性, 报文处理装置内 部任意两个业务控制单元之间均能够进行相互备份, 即任意一个业务控 制单元可以将会话控制信息备份至其他业务控制单元, 在该任意一个业
务控制单元故障后, 由该其他业务控制单元接替该任意一个业务控制单 元进行会话控制处理。 这样, 当报文处理装置中该多个业务控制单元位 于同一 L4~L7网络设备中时, 则可实现 L4~L7网络设备内部的业务控 制单元之间的相互备份, 当报文处理装置中该多个业务控制单元位于不 同 L4~L7网络设备中时, 则可实现不同 L4~L7网络设备中业务控制单 元之间的相互备份。
在本发明上述的实施例中, 当直接进行交互的功能单元位于不同网 络设备中时, 该交互的功能单元之间的连接单元实际上包括位于该不同 网络设备中的不同连接单元部分, 并通过该位于不同网络设备中的不同 连接单元部分的连接实现该交互。 比如, L4~L7网络设备 1中的接口处 理单元 1接收到报文后,选择将报文发送至 L4~L7网络设备 2中的业务 处理单元 1 , 那么, 接口处理单元 1通过 L4~L7网络设备 1中的连接单 元将报文发送至 L4~L7网络设备 2中的连接单元,该 L4~L7网络设备 2 中的连接单元再将报文发送至业务处理单元 1。
需要说明的是, 在本发明实施例中, 报文处理装置中的任意一个功 能单元选择另一个功能单元时, 均可以根据预先设置的策略来进行选 择。 比如, 业务处理单元选择业务控制单元或业务控制单元选择应用处 理单元时, 可以根据预先设置的轮询策略, 依次选择各个业务控制单元 或应用处理单元, 或者, 可以依据预先设置的负载均衡策略, 选择当前 业务负荷量最低的业务控制单元或应用处理单元等。 再如, 任意一个接 口处理单元可以根据预先获取的报文分发策略指示来选择业务处理单 元。 接口处理单元所获取的报文分发策略指示可以是由业务控制单元发 来的包括根据指定业务与所查找到业务处理单元的对应关系进行选择 的报文分发策略指示, 那么, 该接口处理单元则可以直接根据该对应关 系, 选择业务处理单元。 接口处理单元所获取的报文分发策略指示也可
以是由业务控制单元发来的各个业务处理单元对应的业务类型信息, 以 及轮询策略、 随机分配策略、 负载分担策略和根据业务处理单元的处理 能力策略中的一个, 那么, 该接口处理单元则可以从能够处理报文对应 的业务类型的所有业务处理单元中按照轮询策略、 随机分配策略、 负载 分担策略和根据业务处理单元的处理能力策略中的一个来选择业务处 理单元。
以上详细描述了本发明实施例提出的报文处理装置的各种实现方 案。 下面详细描述在本发明实施例中提出的报文处理方法的具体实体过 程。
本发明所提出的报文处理方法的核心思想是: 在 L4~L7网络设备的 各个接口处理单元与各个业务处理单元之间设置连接单元; 任意一个接 口处理单元接收到外部发来的报文后, 选择业务处理单元, 通过连接单 元将报文发送至所选的业务处理单元; 该所选的业务处理单元在接收到 报文后, 对报文进行业务处理。
具体地, 在本发明方法中, 接口处理单元可以依据 L4~L7网络设备 中业务控制单元发来的报文分发策略指示来选择业务处理单元。 该报文 分发策略指示可以由业务控制单元根据获取的各个业务处理单元的业 务负荷信息生成。 比如, 较佳地, 可以由业务控制单元根据各个业务处 理单元实时上报的负荷过重告警通知或负荷过低通知来生成报文分发 策略, 并且, 业务控制单元还可以进一步根据各个业务处理单元的处理 能力信息来生成报文分发策略。
图 13是在本发明一个实施例中的报文处理流程图。 参见图 13, 在 本发明一个实施例中, 对^艮文进行处理的过程具体包括以下步骤: 步骤 1301: L4-L7网络设备的报文处理装置中的业务控制单元获取 报文处理装置中各个业务处理单元的处理能力信息。
这里, 业务处理单元的处理能力信息包括: 业务处理单元可处理的 业务类型以及业务处理单元的业务容量等各种信息。
本步骤的过程可以是在 L4~L7网络设备启动后,进行初始化时执行。 步骤 1302: 业务控制单元判断是否接收到外部输入的处理模式配置 命令, 如果是, 则执行步骤 1303 , 否则, 执行步骤 1306。
这里, 如果管理人员需要根据实际业务要求来控制或调整各个业务 处理单元所处理的业务, 则可以向业务控制单元输入处理模式配置命 令, 触发业务控制单元执行后续的根据管理人员的要求控制报文流向的 处理。 如果管理人员不需要参与控制各个业务处理单元的过程, 则无需 向业务控制单元输入处理模式配置命令, 从而触发业务控制单元执行后 续的自动控制报文流向的处理。
步骤 1303: —个业务控制单元接收到外部输入的对指定业务的处理 要求。
步骤 1304: 该业务控制单元根据各个业务处理单元的处理能力信 息, 查找满足该指定业务处理要求的业务处理单元。
在上述步骤 1303中,对于一种指定业务比如视频会话, 管理人员如 果需要设定该视频会话所需的最小带宽, 则可以向业务控制单元输入对 该视频会话的处理要求为会话占用带宽大于一个设定值, 这样, 在步骤 1304中, 业务控制单元根据获取的各个业务处理单元的处理能力信息, 从能够处理视频会话的所有业务处理单元中查找能够提供不小于所述 设定值带宽的业务处理单元。
步骤 1305: 业务控制单元生成报文分发策略指示, 该报文分发策略 指示中包括根据指定业务与所查找到业务处理单元的对应关系进行选 择的策略, 执行步骤 1307。
步骤 1306: 业务控制单元根据各个业务处理单元的处理能力信息直
接生成报文分发策略指示。
本步骤中, 业务控制单元所生成的报文分发策略指示中包括: 各个 业务处理单元对应的业务类型信息, 以及轮询策略、 随机分配策略、 负 载分担策略和根据业务处理单元的处理能力策略中的一个。
步骤 1307: 业务控制单元将生成的报文分发策略指示发送至所有接 口处理单元, 所有接口处理单元保存所接收到的报文分发策略指示。
需要说明的是, 利用上述步骤 1302至步骤 1307的过程, 实现了由 业务控制单元将报文分发策略指示发送至所有接口处理单元, 使得所有 接口处理单元获取转发报文所依据的报文分发策略指示。 在本发明的其 他实施例中, 也可以直接在所有接口处理单元上分别配置^艮文分发策略 指示, 这样, 所有接口处理单元可以通过自身配置获取报文分发策略指 示。
步骤 1308: 业务控制单元获取各个业务处理单元的业务负荷信息。 步骤 1309: 各个业务处理单元分别监测自身的业务负荷量, 判断自 身的业务负荷量是否大于预先在自身中设置的最高负荷阈值或小于预 先在自身中设置的最低负荷阈值, 如果自身的业务负荷量大于最高负荷 阈值, 则执行步骤 1310, 如果自身的业务负荷量小于最低负荷阈值, 否 则, 执行步骤 1312。
步骤 1310: 上报负荷过重告警通知给业务控制单元, 业务控制单元 根据获取的各个业务处理单元的业务负荷信息确定替代业务处理单元。
这里, 业务控制单元确定替代业务处理单元的过程可以包括: 所述 业务控制单元查找与上报负荷过重告警通知的业务处理单元的业务类 型相同的业务处理单元, 将查找到的业务处理单元中业务负荷最小的一 个确定为替代业务处理单元。
步骤 1311: 业务控制单元将上报负荷过重告警通知的业务处理单元
的部分或全部会话的特征信息以及替代业务处理单元标识携带在生成 的倒换指示中, 发送至所有接口处理单元, 执行步骤 1314。
步骤 1312: 上报负荷过低通知给业务控制单元, 业务控制单元根据 获取的各个业务处理单元的业务负荷信息确定替代业务处理单元。
这里, 业务控制单元确定替代业务处理单元的过程可以包括: 所述 业务控制单元查找与上报负荷过低通知的业务处理单元的业务类型相 同的业务处理单元, 将查找到的业务处理单元中业务负荷最小的一个确 定为替代业务处理单元。
步骤 1313: 业务控制单元将上报负荷过低通知的业务处理单元的会 话的特征信息以及替代业务处理单元标识携带在生成的合并指示中发 送至所有接口处理单元。
步骤 1314: 当任意一个接口处理单元如接口处理单元 1接收到外部 发来的报文时, 判断接收到的报文是否为已建会话的报文, 如果是, 则 执行步骤 1322, 如果否, 则执行步骤 1315。
这里, 接口处理单元 1判断接收到的报文是否为已建会话的报文过 程为现有技术, 可以筒单描述为: 接口处理单元 1提取报文的报文头, 如报文的五元组信息或报文的隧道头信息, 判断在自身保存的会话转发 信息中是否可查找到所提取的报文头, 如果是, 则确定接收到的报文为 已建会话的报文, 否则, 确定接收到的报文为未建会话的报文。
另外, 在本实施例中, 报文分发策略指示中还可以包括根据实际业 务需要设置的其他处理指示, 比如进行合法性检查和分析的指示等, 此 时, 在本步骤中, 接口处理单元 1接收到外部发来的报文后, 首先由该 接口处理单元 1对报文进行合法性检查和分析, 检查通过后, 再执行所 述的判断接收到的报文是否为已建会话的报文的处理。
步骤 1315: 接口处理单元 1判断接收到的报文是否为隧道报文, 如
果是, 则执行步骤 1316, 否则, 执行步骤 1317。
步骤 1316: 接口处理单元 1判断接收到的隧道报文对应的隧道是否 正在建立, 如果是, 则直接丢弃该隧道报文, 否则, 执行步骤 1317。
在上述步骤 1315和步骤 1316的处理中, 由于已经确定接收到的报 文是未建会话的报文, 这样, 如果进一步确定报文是隧道报文且隧道正 在建立, 那么, 则表示接口处理单元 1是在该隧道正在建立且未建好的 情况下接收到了隧道报文, 因此, 无法进行处理, 则直接丢弃该报文, 如果不是隧道报文, 比如是 UDP、 TCP或 ICMP等报文, 或者, 是隧道 报文但隧道没有开始建立, 则表示该隧道报文是用来触发建立该隧道 的, 因此, 可以执行后续的新建会话的处理。
步骤 1317: 接口处理单元 1判断接收到的报文所属会话的特征信息 与倒换指示中携带的会话的特征信息是否相同, 如果是, 则执行步骤 1318, 否则, 执行步骤 1319。
步骤 1318: 接口处理单元 1根据倒换指示中携带的替代业务处理单 元的标识,选择该替代业务处理单元,将报文发送至所选业务处理单元, 该所选业务处理单元对>¾文进行对应的业务处理, 结束当前流程。
步骤 1319: 接口处理单元 1判断接收到的报文所属会话的特征信息 与合并指示中携带的会话的特征信息是否相同, 如果是, 则执行步骤 1320, 否则, 执行步骤 1321。
步骤 1320: 接口处理单元 1根据合并指示中携带的替代业务处理单 元的标识,选择该替代业务处理单元,将报文发送至所选业务处理单元, 该所选业务处理单元对>¾文进行对应的业务处理, 结束当前流程。
步骤 1321: 接口处理单元 1根据保存的报文分发策略指示, 选择业 务处理单元, 将报文发送至所选的业务处理单元, 该所选业务处理单元 对报文进行对应的业务处理, 结束当前流程。
这里, 如果接口处理单元 1保存的报文分发策略指示是业务控制单 元发来的包括根据指定业务与所查找到业务处理单元的对应关系进行 选择的报文分发策略指示, 那么, 在本步骤中, 接口处理单元 1直接根 据该对应关系,选择业务处理单元。比如,需要集中处理的隧道(如 IPSec ) 的所有报文集中到一个业务处理单元处理, 那么, 报文分发策略指示中 的指定业务与所查找到业务处理单元的对应关系就可以是隧道报文业 务与一个特定如业务处理单元 1的对应关系, 这样, 在本步骤中, 如果 接收到的报文为隧道报文, 那么, 接口处理单元 1根据该对应关系, 将 隧道报文发送至专用于处理隧道报文的业务处理单元 1。
如果接口处理单元 1中保存的报文分发策略指示是业务控制单元发 来的各个业务处理单元对应的业务类型信息, 以及轮询策略、 随机分配 策略、 负载分担策略和根据业务处理单元的处理能力策略中的一个, 那 么, 在本步骤中, 接口处理单元 1是从能够处理报文对应的业务类型的 所有业务处理单元中按照轮询策略、 随机分配策略、 负载分担策略和根 据业务处理单元的处理能力策略中的一个来选择业务处理单元。
步骤 1322: 接口处理单元 1根据业务控制单元预先发来的会话转发 信息选择对应的业务处理单元, 将报文发送至所选的业务处理单元。
这里, 业务控制单元预先将会话转发信息发送至接口处理单元 1的 过程可以为: 在一个业务处理单元判断出接收到的报文为未建会话的报 文后, 将报文发送至业务控制单元; 业务控制单元进行报文所属会话的 新建处理, 将会话信息和会话处理动作发送至所选业务处理单元, 并将 会话转发信息发送至所有的接口处理单元。
步骤 1323: 所选业务处理单元根据保存的会话信息和会话处理动 作, 对接收到的报文进行对应的业务处理。
上述步骤 1318、 步骤 1320、 步骤 1321和步骤 1323中, 所选业务处
理单元对接收到的报文进行对应的业务处理的过程为现有技术, 可以举 例为: 对报文进行加解密处理, 或响应该报文请求的数据内容, 或进行 业务转换等。
需要说明的是, 由于业务控制单元、 各个业务处理单元以及各个接 口处理单元三者可以位于同一个 L4~L7网络设备中, 因此, 本发明可以 在一个 L4~L7网络设备中进行上述图 13所示的报文处理过程, 从而在 该网络设备内部就实现灵活选择业务处理单元, 提高该网络设备的报文 处理能力。
另外, 在上述本发明实施例中, 由于业务控制单元、 各个业务处理 单元以及各个接口处理单元中的任意两个功能单元可以位于不同的 L4-L7网络设备中, 因此, 本发明可以在不同的 L4~L7网络设备中进行 上述图 13所示的报文处理过程, 比如, 上述图 13所示流程中的业务控 制单元和各个业务处理单元位于 L4~L7网络设备 1中,各个接口处理单 元位于 L4~L7网络设备 2中, 从而通过不同 L4~L7网络设备的配合, 实现在不同 L4~L7网络设备中灵活选择业务处理单元,从而提高网络设 备的报文处理能力。
结合本发明提出的报文处理装置, 参见图 3、 图 4、 图 8和图 9, 该 报文处理装置中仅包括一个业务控制单元, 因此, 上述图 13 所示的报 文处理的具体过程可以直接应用于该报文处理装置。
参见图 6、 图 7、 图 11和图 12, 该报文处理装置中包括多个业务控 制单元, 因此, 在将上述图 13 所示的报文处理的具体过程应用于该报 文处理装置时, 需要每一个业务控制单元均执行图 13 中获取各个业务 处理单元的业务负荷信息的步骤, 且, 由接收到业务处理单元发来的通 知或外部管理人员发来的命令的业务控制单元具体执行图 13 中所述的 生成报文分发策略指示并发送至所有接口处理单元的步骤。
根据上述本发明的各个实施例, 可以看出, 本发明中的接口处理单 元具有与外部交互报文的功能以及根据预定策略向业务处理单元发送 报文的功能, 因此, 实际上, 接口处理单元可以划分为接口模块和一级 预处理模块, 其中, 接口模块用于完成上述本发明实施例中的收发报文 选择业务处理单元并向业务处理单元发送报文的功能。
根据上述本发明的各个实施例可以看出, 接口处理单元中的一级预 处理模块是一个非常关键的功能模块, 从接口接收到的外部流量首先由 该一级预处理模块直接处理。 尤其目前的接口模块速率不断提高, 已经 发展到 40G。 因此, 如果一级预处理模块的处理速度与接口模块传输的 流量不匹配, 将成为整个设备线速处理的瓶颈。
因此, 在本发明提出的报文处理装置中, 对一级预处理模块的基本 要求是筒洁快速, 通过上述本发明实施例中对报文处理装置和报文处理 方法的描述可知, 本发明可以通过向该一级预处理模块下发报文分发策 略指示, 来使得一级预处理模块对报文的转发可以满足以下条件:
( 1 )同一条流的正反向报文以及此流的相关流都到同一个业务处理 单元处理。
( 2 )需要集中处理的隧道如 IPSec等的所有数据集中到一个业务处 理单元处理。
( 3 )根据业务处理单元的负荷来进行负载均衡方式的分流,保证各 个业务处理单元的处理负荷相对均衡。
( 4 ) 流量在该一级预处理模块完成一次分发和汇聚。
目前, 随着业务处理单元与业务控制单元特性的不断丰富, 对预处 理模块的要求将会逐步增加 , 将使得预处理模块的特殊处理分支越来越 多, 最终有可能会失去动作筒洁快速的优势, 成为支持高速端口线速的
瓶颈。 为了避免此种情况发生, 保证在接口模块接收到报文到该报文传 输到业务处理单元的筒洁快速, 可以考虑采用两类预处理模块: 第一类 是适用于大部分流的通用处理工作的预处理模块; 第二类是对某些特定 特征流(如隧道报文)进行特殊处理工作的预处理模块。
基于上述采用两类预处理模块的思想, 较佳地, 在本发明的报文处 理装置中, 该分类可以至少通过以下方式实现:
( 1 )参见图 14, 在连接单元 1与各个业务处理单元之间增加二级 预处理模块, 比如, 一种具体实现为, 在各个业务处理单元所在的业务 板上进一步增加二级预处理模块, 每一个接口处理单元中的一级预处理 模块只完成上述第一类对大部分流的通用处理工作, 新增加的二级预处 理模块用于完成上述第二类工作, 即对某些特定特征流进行特殊处理, 即对特定特征流进行二次分发。
( 2 )参见图 15 , 在一级预处理模块与连接单元 1之间增加二级预 处理模块, 每一个接口处理单元中的一级预处理模块只完成上述第一类 对大部分流的通用处理工作, 新增加的二级预处理模块用于完成上述第 二类工作, 即对某些特定特征流进行特殊处理, 即对特定特征流进行二 次分发。
其中, 一级预处理模块与二级预处理模块的数目可以相同或不同。 对于上述方法, 通过增加二级预处理模块, 将接口模块接收到的报 文流进行进一步的细化。 对于一级预处理模块, 只需保证使用通用处理 流程对大部分的普通流(如 UDP/TCP/ICMP等报文流 )一次分发正确。 至于对某些特殊报文流可以不进行特殊识别与处理, 直接发送到某个二 级预处理模块即可。 报文流达到二级预处理模块后, 在二级预处理模块 中进行二级预处理, 二级预处理模块判断该报文流是否为特定特殊流, 如果是,则查询本地的流表,将该报文流重定向到正确的业务处理板上。
使用上述分级预处理结构后, 原本由一级预处理模块进行的对特定 特征流的处理工作转交给二级预处理模块完成, 因此一级预处理模块中 原本为此工作保存的相关表项也不再需要, 与特定特征流相关的报文分 发策略不需要下发到一级预处理模块, 而改为下发到所有二级预处理模 块。
以下通过一个具体实现流程来说明本发明实施例利用一级预处理模 块和二级预处理模块来进行报文分发处理的过程, 参见图 16, 该过程具 体包括以下步骤:
步骤 1601: 当任意一个接口处理单元如接口处理单元 1中的接口模 块接收到外部发来的报文时, 该接口模块将该报文直接输出至接口处理 单元 1中的一级预处理模块。
步骤 1602: 接口处理单元 1中的一级预处理模块根据预先保存的普 通流的特征信息, 判断接收到的报文是否符合普通流的特征, 如果是, 则执行步骤 1603 , 否则, 执行步骤 1605。
步骤 1603: 接口处理单元 1中的一级预处理模块从所有业务处理单 元中选择一个业务处理单元, 将所选择的业务处理单元的信息以及接收 到的报文发送给一个二级预处理模块。
这里, 一级预处理模块可以根据预先保存的普通流的报文分发策略 指示从所有业务处理单元中选择一个业务处理单元, 具体的选择过程比 如可以看见上述图 13 所示过程描述中的接口处理单元选择业务处理单 元的过程。
并且, 在本步骤中, 一级预处理模块可以根据哈希 HASH算法或其 他调度策略选择一个特定的二级预处理模块, 并将所选择的业务处理单 元的信息以及接收到的报文发送给该选择出的二级预处理模块。
步骤 1604: 该二级预处理模块对报文不做任何处理, 根据接收到的
业务处理单元的信息, 直接将报文发送至一级预处理模块所选的业务处 理单元, 结束当前流程。
当在报文处理装置中增加二预处理模块的方式如图 14所示时,在上 述步骤 1603 中, 一级预处理模块输出的业务处理单元的信息及 文经 过连接单元 1传输给特定的二级预处理模块; 当在报文处理装置中增加 二预处理模块的方式如图 15所示时, 在上述步骤 1604中, 二级预处理 模块直接发出的报文经过连接单元 1发送至一级预处理模块所选的业务 处理单元。
步骤 1605: 该一级预处理模块直接将报文发送给一个二级预处理模 块。
在本步骤中, 一级预处理模块可以根据哈希 HASH算法或其他调度 策略选择一个特定的二级预处理模块, 并将接收到的报文发送给该选择 出的二级预处理模块。
步骤 1606: 二级预处理模块接收到报文后, 判断该报文是否符合其 预先保存的特定特征流的特征, 如果是, 则执行步骤 1607, 否则, 执行 步骤 1604。
步骤 1607: 该二级预处理模块根据保存的特定特征流的报文分发策 略指示选择一个业务处理单元, 将该报文发送至该所选的业务处理单 元。
上述过程中, 一级预处理模块预先保存的普通流的特征信息和普通 流报文分发策略指示, 以及预处理模块预先保存的普通流的特征信息和 特定特征流报文分发策略指示, 都可以是由业务控制单元下发的, 也可 以是由管理人员静态配置的。 其中, 普通流可以举例为 UDP/TCP/ICMP 等报文流。
下面以报文属于特定特征流如为隧道报文流为例, 来详细描述本步
骤 1606至步骤 1607的具体实现过程, 包括如下步骤:
步骤 s401、二级预处理模块判断报文的封装格式是否为出隧道报文, 如果是则进行步骤 s402, 否则进行步骤 s403。
这里, 判断报文的封装格式是否为出隧道报文就是判断该报文是否 符合特定特征流的特征。
步骤 s402、 二级预处理模块查询出方向重定向表, 将报文分发到对 应的业务处理单元, 由该业务处理单元对本进行对应的业务处理, 然后 结束当前流程。
这里, 二级预处理模块查询出方向重定向表将报文分发到对应的业 务处理单元的过程, 就是根据预先保存的特定特征流的报文分发策略指 示来选择业务处理单元并发送>¾文的过程。
步骤 s403、 二级预处理模块根据报文的目的地址查找转发表获得出 接口, 根据出接口的信息, 确认报文是否为入隧道的报文, 是则进行步 骤 s404 , 否则进行步骤 s405。
这里, 确认报文是否为入隧道的报文也就是判断该报文是否符合特 定特征流的特征。
步骤 S404、 查询入方向重定向表, 如果找到对应表项则根据表中的 信息将 文分发到对应的业务处理单元, 如果没有找到, 则丢弃 文, 通知业务控制单元发起协商并结束当前流程。
这里, 二级预处理模块查询入方向重定向表将报文分发到对应的业 务处理单元的过程就是根据预先保存的特定特征流的报文分发策略指 示来选择业务处理单元并发送>¾文的过程。
步骤 s405、 发送到一级预处理模块, 由一级预处理模块对报文进行 普通流的分发处理。
通过使用本发明提供的上述方法, 一级预处理模块只需要完成大部
分流的通用处理即可。 一级预处理模块对隧道所承载的相关流等特殊流 不做任何特殊处理, 仍然按照现有的通用流程进行处理, 报文到达二级 预处理模块后, 再进行识别和二次分发。 原保存在一级预处理模块中单 独为处理特殊报文所需要的出 /入方向重定向表需要从一级预处理模块 删除, 而是要保存到所有二级预处理模块中。
另外, 二级预处理模块除了可以分担一级预处理模块的工作外, 还 可以根据情况承担新的工作。 比如, 如果在业务处理单元所在的业务板 上, 除了业务处理单元外进一步提供了内容搜索等对报文流进行深度处 理的处理单元, 如果这些处理单元是多个的话, 可以通过二级预处理模 块将经过一级预处理模块普通业务处理的流, 根据预先设定的策略分发 到不同的对报文流进行深度处理的处理单元。
需要说明的是, 本发明所有实施例提及的连接单元均可以采用交换 网、 交换芯片 (Switch ), 总线连接单元和全匹配(Full Match )连接单 元中的一个来实现。
以上所述仅为本发明的过程及方法实施例, 并不用以限制本发明, 凡在本发明的精神和原则之内所做的任何修改、 等同替换、 改进等, 均 应包含在本发明的保护范围之内。
Claims
1、 一种报文处理装置, 应用于 L4~L7 网络设备中, 其特征在于, 包括: 多个接口处理单元和多个业务处理单元, 任意一个接口处理单元 通过第一连接单元与任意一个业务处理单元相连, 且,
接口处理单元, 用于在接收到外部发来的报文后, 从所有业务处理 单元中选择一个业务处理单元, 通过第一连接单元将报文发送至所选的 业务处理单元;
业务处理单元, 用于在接收到报文后, 对报文进行业务处理。
2、 根据权利要求 1所述的装置, 其特征在于, 进一步包括: 所有业 务处理单元通过第二连接单元与一个业务控制单元相连;
所述业务处理单元, 用于在接收到报文后, 进一步判断接收到的报 文是否为已建会话的报文, 如果不是, 则通过第二连接单元将报文发送 至业务控制单元, 如果是, 则根据保存的会话信息和会话处理动作执行 所述对报文进行业务处理的过程;
所述业务控制单元, 用于在接收到报文后, 进行该报文所属会话的 新建处理, 选择一个业务处理单元, 通过第二连接单元将会话信息和会 话处理动作发送至所选业务处理单元。
3、 根据权利要求 1所述的装置, 其特征在于, 进一步包括: 所有业 务处理单元通过第二连接单元与一个业务控制单元相连, 并且, 第一连 接单元与第二连接单元相连; 其中,
所述接口处理单元, 用于在接收到报文时, 进一步判断接收到的报 文是否为已建会话的报文, 如果不是, 则通过第一连接单元和第二连接 单元直接将报文发送至业务控制单元, 如果是, 则执行所述选择一个业 务处理单元的过程;
所述业务控制单元, 用于在接收到报文后, 进行该报文所属会话的 新建处理, 选择一个业务处理单元, 通过第二连接单元将会话信息和会 话处理动作发送至所选业务处理单元。
4、 根据权利要求 1所述的装置, 其特征在于, 进一步包括: 每一个 业务处理单元固定连接一个业务控制单元; 其中,
所述业务处理单元, 用于在接收到报文后, 进一步判断接收到的报 文是否为已建会话的报文, 如果不是, 则将报文发送至与其固定连接的 业务控制单元, 如果是, 则根据保存的会话信息和会话处理动作执行所 述对报文进行业务处理的过程;
所述业务控制单元, 用于在接收到报文后, 进行该报文所属会话的 新建处理, 将会话信息和会话处理动作发送至与其固定连接的业务处理 单元。
5、 根据权利要求 1所述的装置, 其特征在于, 进一步包括: 所有业 务处理单元通过第二连接单元与多个业务控制单元相连; 其中,
所述业务处理单元, 用于在接收到报文后, 进一步判断接收到的报 文是否为已建会话的报文, 如果不是, 则选择一个业务控制单元, 并通 过第二连接单元将报文发送至所选的业务控制单元, 如果是, 则根据保 存的会话信息和会话处理动作执行所述对报文进行业务处理的过程; 所述业务控制单元, 用于在接收到报文后, 进行该报文所属会话的 新建处理, 通过第二连接单元将会话信息和会话处理动作发送至发来报 文的业务处理单元, 或者, 选择一个业务处理单元, 并通过第二连接单 元将会话信息、 会话处理动作和报文发送至业务控制单元选择的业务处 理单元。
6、 根据权利要求 1所述的装置, 其特征在于, 进一步包括: 所有业 务处理单元通过第二连接单元与多个业务控制单元相连, 且第一连接单
元与第二连接单元相连; 其中,
所述接口处理单元, 用于在接收到报文时, 进一步判断接收到的报 文是否为已建会话的报文, 如果不是, 则选择一个业务控制单元, 通过 第一连接单元和第二连接单元直接将报文发送至所选业务控制单元, 如 果是, 则执行所述选择一个业务处理单元的过程;
所述业务控制单元, 用于在接收到报文后, 进行该报文所属会话的 新建处理, 选择一个业务处理单元, 通过第二连接单元将会话信息和会 话处理动作发送至所选业务处理单元。
7、根据权利要求 2至 6中任意一项所述的装置, 其特征在于, 所述 接口处理单元在判断出接收到的报文不是已建会话的报文之后, 进一步 判断该报文是否为隧道报文且对应的隧道是否正在建立, 如果均是, 则 直接丢弃该隧道报文, 否则, 继续执行所述的选择一个业务控制单元的 过程。
8、根据权利要求 2至 6中任意一项所述的装置, 其特征在于, 所有 业务控制单元、 所有业务处理单元和所有接口处理单元位于同一个
L4-L7网络设备中。
9、根据权利要求 4至 6中任意一项所述的装置, 其特征在于, 所有 接口处理单元中的一部分位于第一 L4~L7网络设备中,另一部分位于第 二 L4~L7网络设备中,且,所有业务处理单元中的一部分位于第一 L4~L7 网络设备中, 另一部分位于第二 L4~L7网络设备中, 且所有业务控制单 元中的一部分位于第一 L4~L7 网络设备中, 另一部分位于第二 L4~L7 网络设备中。
10、 根据权利要求 2、 4或 5所述的装置, 其特征在于, 所述业务控 制单元进一步将会话转发信息发送至所选的业务处理单元;
所述业务处理单元, 进一步将接收到的会话转发信息发送至所有的
接口处理单元;
所述接口处理单元, 用于保存接收到的会话转发信息, 在接收到外 部发来的报文且判断出该报文是已建会话的报文后, 根据保存的会话转 发信息执行所述选择一个业务处理单元的过程。
11、 根据权利要求 3或 6所述的装置, 其特征在于, 所述业务控制 单元进一步通过第二连接单元和第一连接单元将会话转发信息发送至 所有的接口处理单元;
所述接口处理单元, 用于保存接收到的会话转发信息, 在接收到外 部发来的报文且判断出该报文是已建会话的报文后, 根据保存的会话转 发信息执行所述选择一个业务处理单元的过程。
12、 根据权利要求 2至 6中任意一项所述的装置, 其特征在于, 进 一步包括: 所有业务控制单元通过第三连接单元与多个应用处理单元相 连; 其中,
所述业务控制单元, 进一步用于在接收到报文时, 判断报文是否需 要进行应用层处理, 如果是, 则选择一个应用处理单元, 将报文发送至 所选的应用处理单元, 否则, 执行所述^艮文所属会话的新建处理;
所述应用处理单元, 在接收到报文后, 对报文进行应用层处理, 选 择一个业务控制单元, 将处理完的报文发送至所选的业务控制单元。
13、根据权利要求 12所述的装置,其特征在于,所有应用处理单元、 所有业务控制单元、 所有业务处理单元和所有接口处理单元位于同一个 L4-L7网络设备中;
或者,
当存在多个业务控制单元时, 所有接口处理单元中的一部分位于第 一 L4~L7网络设备中, 另一部分位于第二 L4~L7网络设备中, 且, 所 有业务处理单元中的一部分位于第一 L4~L7网络设备中,另一部分位于
第二 L4~L7 网络设备中, 且所有业务控制单元中的一部分位于第一 L4~L7网络设备中, 另一部分位于第二 L4~L7网络设备中, 且所有应用 处理单元中的一部分位于第一 L4~L7 网络设备中, 另一部分位于第二 L4-L7网络设备中。
14、 根据权利要求 4至 6中任意一项所述的装置, 其特征在于, 任 意一个业务控制单元进一步将会话控制信息备份至其他业务控制单元, 在该任意一个业务控制单元故障后, 由该其他业务控制单元接替该任意 一个业务控制单元进行会话控制处理。
15、 根据权利要求 1至 6中任意一项所述的装置, 其特征在于, 所 述连接单元为交换网、 交换芯片 Switch, 总线连接单元或全匹配 Full Match连接单元中的一个。
16、 根据权利要求 1至 6中任意一项所述的装置, 其特征在于, 所 述接口处理单元包括: 接口模块和一级预处理模块, 其中,
接口模块, 用于接收外部发来的报文, 并将该报文直接输出至一级 预处理模块;
一级预处理模块, 用于对接收到的报文进行包括从所有业务处理单 元中选择一个业务处理单元以及通过第一连接单元将报文发送给所选 的业务处理单元在内的各种报文预处理。
17、根据权利要求 16所述的装置, 其特征在于, 该装置进一步包括 二级预处理模块, 其中,
所述一级预处理模块, 用于保存普通流的特征信息, 在接收到接口 模块输出的报文后,首先判断该报文是否符合普通流的特征,如果符合, 则继续执行所述的对接收到的报文进行包括从所有业务处理单元中选 择一个业务处理单元的处理, 触发所述二级预处理模块以及第一连接单 元根据所述一级预处理模块选择的业务处理单元的信息, 将报文发送至
一级预处理模块所选的业务处理单元; 如果不符合, 则所述一级预处理 模块直接将该报文输出至所述二级预处理模块;
所述二级预处理模块, 接收到报文后, 如果该报文符合其保存的特 定特征流的特征信息, 则根据保存的特定特征流报文分发策略指示选择 一个业务处理单元, 将该报文发送至该所选的业务处理单元。
18、根据权利要求 17所述的装置, 其特征在于, 所述二级预处理模 块位于所述一级预处理模块与所述第一连接单元之间;
或者,
所述二级预处理模块位于所述第一连接单元与各个业务处理单元之 间。
19、 根据权利要求 17或 18所述的装置, 其特征在于, 所述二级预 处理模块的数量为一个;
或者,
所述二级预处理模块的数量大于一个, 且所述一级预处理模块在将 报文发送给二级预处理模块时,根据哈希 HASH算法或预先保存的其他 调度策略将报文发送给一个二级预处理模块。
20、 一种报文处理方法, 其特征在于, 包括: 在 L4~L7网络设备的 各个接口处理单元与各个业务处理单元之间设置连接单元; 任意一个接 口处理单元接收到外部发来的报文后选择业务处理单元, 通过连接单元 将报文发送至所选的业务处理单元; 该所选的业务处理单元在接收到报 文后, 对报文进行业务处理。
21、根据权利要求 20所述的方法,其特征在于,该方法进一步包括: 所述 L4~L7 网络设备中的业务控制单元获取各个业务处理单元的业务 负荷信息, 根据获取的各个业务处理单元的业务负荷信息生成报文分发 策略指示并发送至所有接口处理单元;
所述选择业务处理单元的步骤包括: 根据接收到的报文分发策略指 示, 选择业务处理单元。
22、根据权利要求 21所述的方法,其特征在于,该方法进一步包括: 所述各个业务处理单元分别监测自身的业务负荷量, 当监测到自身的业 务负荷量大于预先在自身中设置的最高负荷阈值时, 上报负荷过重告警 通知给业务控制单元;
所述生成报文分发策略指示并发送至所有接口处理单元的步骤包 括: 所述业务控制单元根据获取的各个业务处理单元的业务负荷信息确 定替代业务处理单元, 将上报负荷过重告警通知的业务处理单元的部分 或全部会话的特征信息以及替代业务处理单元标识携带在生成的倒换 指示中, 将该倒换指示作为所述的报文分发策略指示发送至所有接口处 理单元;
所述根据接收到的报文分发策略指示选择业务处理单元的步骤包 括: 判断接收到的报文所属会话的特征信息与倒换指示中携带的会话的 特征信息是否相同, 如果是, 则选择所述替代业务处理单元。
23、根据权利要求 21所述的方法,其特征在于,该方法进一步包括: 所述各个业务处理单元分别监测自身的业务负荷量, 当监测到自身的业 务负荷量小于预先在自身中设置的最低负荷阈值时, 上报负荷过低通知 给业务控制单元;
所述生成报文分发策略指示并发送至所有接口处理单元的步骤包 括: 所述业务控制单元根据获取的各个业务处理单元的业务负荷信息确 定替代业务处理单元, 将上报负荷过低通知的业务处理单元的会话的特 征信息以及替代业务处理单元标识携带在生成的合并指示中, 将该合并 指示作为所述的报文分发策略指示发送至所有接口处理单元;
所述选择业务处理单元的步骤包括: 判断接收到的报文所属会话的
特征信息与合并指示中携带的会话的特征信息是否相同, 如果是, 则选 择所述替代业务处理单元。
24、 根据权利要求 22或 23所述的方法, 其特征在于, 所述业务控 制单元根据获取的各个业务处理单元的业务负荷信息确定替代业务处 理单元的步骤包括:
所述业务控制单元查找与上报所述通知的业务处理单元的业务类型 相同的业务处理单元, 将查找到的业务处理单元中业务负荷最小的一个 确定为所述替代业务处理单元。
25、 根据权利要求 20至 23中任意一项所述的方法, 其特征在于, 在选择业务处理单元之前, 进一步包括: 所述任意一个接口处理单元判 断接收到的报文是否为已建会话的报文, 如果是, 则根据业务控制单元 预先发来的会话转发信息将报文发送至对应的业务处理单元, 否则, 继 续执行所述的选择业务处理单元的步骤。
26、根据权利要求 25所述的方法, 其特征在于, 所述报文为隧道报 文;
在判断出接收到的报文不是已建会话的报文之后, 并在选择业务处 理单元之前, 进一步包括: 所述任意一个接口处理单元判断接收到的隧 道报文对应的隧道是否正在建立, 如果是, 则直接丢弃该隧道报文, 否 则, 继续执行所述的选择业务处理单元的步骤。
27、 根据权利要求 22或 23所述的方法, 其特征在于, 所述生成报 文分发策略指示并发送至所有接口处理单元的步骤进一步包括: 业务控 制单元获取各个业务处理单元的处理能力信息; 业务控制单元判断是否 接收到外部输入的处理模式配置命令, 如果是, 则根据外部输入的对指 定业务的处理要求和各个业务处理单元的处理能力信息, 查找满足该指 定业务处理要求的业务处理单元, 生成包括根据指定业务与所查找到业
务处理单元的对应关系进行选择的报文分发策略指示, 并发送至所有接 口处理单元, 如果否, 则根据各个业务处理单元的处理能力信息直接生 成报文分发策略指示并发送至所有接口处理单元;
在判断出不相同之后, 进一步包括: 所述任意一个接口处理单元根 据接收到的报文分发策略指示选择业务处理单元。
28、根据权利要求 27所述的方法, 其特征在于, 所述业务控制单元 根据各个业务处理单元的处理能力信息直接生成的报文分发策略指示 中包括: 各个业务处理单元对应的业务类型信息, 以及轮询策略、 随机 分配策略、 负载分担策略和根据业务处理单元的处理能力策略中的一 个。
29、 根据权利要求 21、 22或 23所述的方法, 其特征在于, 所述业 务控制单元、 所述各个业务处理单元以及所述各个接口处理单元三者位 于同一个 L4~L7网络设备中, 或者, 任意两者位于不同 L4~L7网络设 备中。
30、 根据权利要求 21、 22或 23所述的方法, 其特征在于, 所述业 务控制单元的数量为一个;
或者,
所述业务控制单元的数量大于一个, 且, 每一个业务控制单元均执 行所述的获取各个业务处理单元的业务负荷信息的步骤, 且, 由接收到 业务处理单元发来的通知或外部管理人员发来的命令的业务控制单元 执行所述的生成报文分发策略指示并发送至所有接口处理单元的步骤。
31、 根据权利要求 20至 23中任意一项所述的方法, 其特征在于, 所述接口处理单元包括接口模块和一级预处理模块;
所述任意一个接口处理单元接收到外部发来的报文后选择业务处理 单元通过连接单元将报文发送至所选的业务处理单元的步骤包括:
A、 所述任意一个接口单元中的接口模块接收到外部发来的报文, 将该报文直接输出至一级预处理模块;
B、 该一级预处理模块接收到报文后, 从所有业务处理单元中选择 一个业务处理单元, 通过第一连接单元将报文发送给所选的业务处理单 元。
32、根据权利要求 31所述的方法,其特征在于,该方法进一步包括: 每一个接口单元中的一级预处理模块都与二级预处理模块相连;
在步骤 B中, 在一级预处理模块接收到报文之后, 并在选择一个业 务处理单元之前, 进一步包括: 该一级预处理模块根据预先保存的普通 流的特征信息, 判断接收到的报文是否符合普通流的特征,
如果符合, 则继续执行所述的从所有业务处理单元中选择一个业务 处理单元的步骤,且步骤 B中所述通过第一连接单元将报文发送给所选 的业务处理单元的步骤包括: 一级预处理模块输出所选择的业务处理单 元的信息以及所述报文, 二级预处理模块根据该一级预处理模块输出的 业务处理单元的信息, 直接将报文发送至一级预处理模块所选的业务处 理单元;
如果不符合,该一级预处理模块直接将报文输出至二级预处理模块, 该二级预处理模块收到报文后, 如果该报文符合其保存的特定特征流的 特征信息, 则根据保存的特定特征流报文分发策略指示选择一个业务处 理单元, 将该报文发送至该所选的业务处理单元。
33、根据权利要求 32所述的方法, 其特征在于, 所述二级预处理模 块位于所述一级预处理模块与所述第一连接单元之间;
或者,
所述二级预处理模块位于所述第一连接单元与各个业务处理单元之 间。
34、 根据权利要求 32或 33所述的装置, 其特征在于, 所述二级预 处理模块的数量为一个;
或者,
所述二级预处理模块的数量大于一个, 所述一级预处理模块直接将 报文输出至二级预处理模块的步骤包括: 所述一级预处理模块根据哈希
HASH算法或预先保存的其他调度策略将报文直接发送给一个二级预处 理模块。
35、 根据权利要求 32或 33所述的装置, 其特征在于, 所述特定特 征流为隧道 4艮文。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/670,766 US8559423B2 (en) | 2007-07-27 | 2008-06-26 | Method and apparatus for packet processing |
JP2010517257A JP5048835B2 (ja) | 2007-07-27 | 2008-06-26 | パケット処理装置およびその方法 |
EP08773060.2A EP2173067A4 (en) | 2007-07-27 | 2008-06-26 | A message processing apparatus and the method thereof |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101196599A CN101106526B (zh) | 2007-07-27 | 2007-07-27 | 一种报文处理方法 |
CN200710119660.1 | 2007-07-27 | ||
CN200710119659.9 | 2007-07-27 | ||
CN2007101196601A CN101094184B (zh) | 2007-07-27 | 2007-07-27 | 一种报文处理装置 |
CN2008100041260A CN101217481B (zh) | 2008-01-18 | 2008-01-18 | 一种流处理方法和设备 |
CN200810004126.0 | 2008-01-18 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2009015570A1 true WO2009015570A1 (fr) | 2009-02-05 |
Family
ID=40303887
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2008/071452 WO2009015570A1 (fr) | 2007-07-27 | 2008-06-26 | Dispositif et procédé de traitement de message |
Country Status (4)
Country | Link |
---|---|
US (1) | US8559423B2 (zh) |
EP (1) | EP2173067A4 (zh) |
JP (1) | JP5048835B2 (zh) |
WO (1) | WO2009015570A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9480858B2 (en) | 2010-02-12 | 2016-11-01 | Elekta Ab (Publ) | Radiotherapy and imaging apparatus |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2730067B1 (en) * | 2011-07-08 | 2015-06-10 | Telefonaktiebolaget L M Ericsson (publ) | Method and apparatus for load balancing |
CN105490829B (zh) | 2014-10-13 | 2020-04-21 | 华为技术有限公司 | 控制报文传输的方法、装置和网络功能虚拟化系统 |
US12003586B2 (en) * | 2020-12-22 | 2024-06-04 | Texas Instruments Incorporated | Distributed session owner across multiple entities |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030200315A1 (en) * | 2002-04-23 | 2003-10-23 | Mellanox Technologies Ltd. | Sharing a network interface card among multiple hosts |
CN1783796A (zh) * | 2004-11-29 | 2006-06-07 | 中兴通讯股份有限公司 | 一种基于分离式路由交换设备的QoS实现的方法 |
CN1838609A (zh) * | 2005-03-22 | 2006-09-27 | 杭州华为三康技术有限公司 | 一种集中式业务处理方法及路由设备 |
CN101094184A (zh) * | 2007-07-27 | 2007-12-26 | 杭州华三通信技术有限公司 | 一种报文处理装置 |
CN101106526A (zh) * | 2007-07-27 | 2008-01-16 | 杭州华三通信技术有限公司 | 一种报文处理方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6567377B1 (en) * | 1999-03-18 | 2003-05-20 | 3Com Corporation | High performance load balancing of outbound internet protocol traffic over multiple network interface cards |
JP3963690B2 (ja) * | 2001-03-27 | 2007-08-22 | 富士通株式会社 | パケット中継処理装置 |
US7254639B1 (en) * | 2002-05-20 | 2007-08-07 | Cisco Technology, Inc. | Methods and apparatus for directing packets among a group of processors |
CN1567841A (zh) | 2003-07-04 | 2005-01-19 | 华为技术有限公司 | 一种实现信息转发的设备及方法 |
US7424025B2 (en) * | 2003-10-01 | 2008-09-09 | Santera Systems, Inc. | Methods and systems for per-session dynamic management of media gateway resources |
KR20050064103A (ko) * | 2003-12-23 | 2005-06-29 | 한국전자통신연구원 | 미디어게이트웨이 및 미디어게이트웨이의 내부 채널 관리방법 |
US8392590B2 (en) * | 2004-09-10 | 2013-03-05 | Cavium, Inc. | Deterministic finite automata (DFA) processing |
CN1321516C (zh) | 2004-11-25 | 2007-06-13 | 上海复旦光华信息科技股份有限公司 | 基于网络处理器和cpu阵列的交换架构的安全过滤分流器 |
CN1812398B (zh) | 2005-01-26 | 2010-08-18 | 华为技术有限公司 | 一种基于dhcp中继实现dhcp服务器负载分担的方法 |
CN1852456A (zh) * | 2005-11-30 | 2006-10-25 | 华为技术有限公司 | 一种可实现业务切换的系统及其实现的业务切换方法 |
US7672236B1 (en) * | 2005-12-16 | 2010-03-02 | Nortel Networks Limited | Method and architecture for a scalable application and security switch using multi-level load balancing |
CN100596351C (zh) | 2006-04-26 | 2010-03-31 | 南京大学 | 一种基于高速网络数据处理平台的防火墙方法和系统 |
CN1909507B (zh) | 2006-07-04 | 2012-03-21 | 华为技术有限公司 | 一种报文转发方法和系统 |
CN100466629C (zh) | 2006-09-18 | 2009-03-04 | 杭州华三通信技术有限公司 | 一种网络设备和基于多核处理器的报文转发方法 |
CN100512318C (zh) | 2006-09-22 | 2009-07-08 | 杭州华三通信技术有限公司 | 一种实现负载均衡的方法和系统及负载均衡设备 |
US8681776B2 (en) * | 2006-10-12 | 2014-03-25 | Genband Us Llc | Methods, systems and computer program products for storing communication session information at a network interface module |
-
2008
- 2008-06-26 JP JP2010517257A patent/JP5048835B2/ja not_active Expired - Fee Related
- 2008-06-26 US US12/670,766 patent/US8559423B2/en not_active Expired - Fee Related
- 2008-06-26 WO PCT/CN2008/071452 patent/WO2009015570A1/zh active Application Filing
- 2008-06-26 EP EP08773060.2A patent/EP2173067A4/en not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030200315A1 (en) * | 2002-04-23 | 2003-10-23 | Mellanox Technologies Ltd. | Sharing a network interface card among multiple hosts |
CN1783796A (zh) * | 2004-11-29 | 2006-06-07 | 中兴通讯股份有限公司 | 一种基于分离式路由交换设备的QoS实现的方法 |
CN1838609A (zh) * | 2005-03-22 | 2006-09-27 | 杭州华为三康技术有限公司 | 一种集中式业务处理方法及路由设备 |
CN101094184A (zh) * | 2007-07-27 | 2007-12-26 | 杭州华三通信技术有限公司 | 一种报文处理装置 |
CN101106526A (zh) * | 2007-07-27 | 2008-01-16 | 杭州华三通信技术有限公司 | 一种报文处理方法 |
Non-Patent Citations (1)
Title |
---|
See also references of EP2173067A4 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9480858B2 (en) | 2010-02-12 | 2016-11-01 | Elekta Ab (Publ) | Radiotherapy and imaging apparatus |
Also Published As
Publication number | Publication date |
---|---|
JP5048835B2 (ja) | 2012-10-17 |
JP2010534960A (ja) | 2010-11-11 |
US8559423B2 (en) | 2013-10-15 |
US20100195647A1 (en) | 2010-08-05 |
EP2173067A4 (en) | 2017-06-21 |
EP2173067A1 (en) | 2010-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9369335B2 (en) | mRSVP-TE based fast reroute in detour (1:1) protection mode | |
US10181977B2 (en) | Cross-stratum optimization protocol | |
US7180866B1 (en) | Rerouting in connection-oriented communication networks and communication systems | |
CN102624584B (zh) | 链路检测方法及装置 | |
CN102132525B (zh) | 用于建立业务连接及相关监控连接的方法 | |
US9246696B2 (en) | mRSVP-TE based fast reroute in facility (1:N) protection mode | |
US20090296572A1 (en) | Tunnel establishing method, network node device and network system | |
US20140029413A1 (en) | System and method using rsvp hello suppression for graceful restart capable neighbors | |
CN103067291B (zh) | 一种上下行链路关联的方法和装置 | |
CN1812363A (zh) | 提供基于mpls的虚拟专用网的设备和方法 | |
WO2014012207A1 (zh) | 标记交换路径建立方法、数据转发方法及设备 | |
WO2009152734A1 (zh) | 一种绑定/解绑定的处理方法、系统和装置 | |
EP4184937A1 (en) | Method, apparatus, and system for communication in data centre | |
CN102132524B (zh) | 用于建立业务连接及相关监控连接的方法 | |
WO2009033388A1 (fr) | Procédé d'utilisation d'un système de sécurité étendue, système et appareil de sécurité étendue | |
CN111083061B (zh) | 一种确定组播流的df的方法、设备及系统 | |
WO2015113291A1 (zh) | 无线网络数据处理装置和无线网络系统 | |
CN101094184B (zh) | 一种报文处理装置 | |
JP6070700B2 (ja) | パケット転送システム、制御装置、パケット転送方法及びプログラム | |
WO2009015570A1 (fr) | Dispositif et procédé de traitement de message | |
WO2014146541A1 (zh) | Cdn与网络融合系统、调度模块选定方法及计算机存储介质 | |
KR101517380B1 (ko) | 멀티캐스팅을 요청하고, 멀티캐스팅 요청들을 처리하고 이러한 처리를 보조하기 위한 방법 및 디바이스 | |
WO2014008651A1 (zh) | Bfd会话建立的方法及路由设备 | |
WO2011140873A1 (zh) | 光传输层的数据传输方法及装置 | |
CN116547956A (zh) | 用于负载均衡的设备和方法 |
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: 08773060 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 12670766 Country of ref document: US Ref document number: 2010517257 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2008773060 Country of ref document: EP |