[go: up one dir, main page]

CN104994032B - A kind of method and apparatus of information processing - Google Patents

A kind of method and apparatus of information processing Download PDF

Info

Publication number
CN104994032B
CN104994032B CN201510251265.3A CN201510251265A CN104994032B CN 104994032 B CN104994032 B CN 104994032B CN 201510251265 A CN201510251265 A CN 201510251265A CN 104994032 B CN104994032 B CN 104994032B
Authority
CN
China
Prior art keywords
message
nucleoid
sent
memory space
core
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510251265.3A
Other languages
Chinese (zh)
Other versions
CN104994032A (en
Inventor
赵剑川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Comba Network Systems Co Ltd
Original Assignee
Comba Telecom Technology Guangzhou Ltd
Comba Telecom Systems China Ltd
Comba Telecom Systems Guangzhou Co Ltd
Tianjin Comba Telecom Systems Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Comba Telecom Technology Guangzhou Ltd, Comba Telecom Systems China Ltd, Comba Telecom Systems Guangzhou Co Ltd, Tianjin Comba Telecom Systems Co Ltd filed Critical Comba Telecom Technology Guangzhou Ltd
Priority to CN201510251265.3A priority Critical patent/CN104994032B/en
Publication of CN104994032A publication Critical patent/CN104994032A/en
Application granted granted Critical
Publication of CN104994032B publication Critical patent/CN104994032B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The present invention relates to the communications fields, disclose a kind of method and apparatus of information processing, and the program is:After multi-core processor startup, when receiving message, the first nucleoid is called to judge the type of message, and the type based on message, by the first nucleoid by message be sent to in the memory space corresponding to the core of the type matching of message;When monitored by the second nucleoid and/or third nucleoid have the message of storage in its corresponding memory space when, call the second nucleoid and/or third class verification message handled;When determining need through the second nucleoid and/or third nucleoid transmission message, the message in the second nucleoid and/or the corresponding memory space of third nucleoid is sent in specified memory space to be sent;The message that the first kind is checked in memory space to be sent is called to be sent.In this way, not only increasing the efficiency of processing and the forwarding of data, while the redundancy overhead problem of operating system is avoided, and then improves the entire throughput of network system.

Description

A kind of method and apparatus of information processing
Technical field
The present invention relates to the communications field, more particularly to a kind of method and apparatus of information processing.
Background technology
The processing capacity of the network equipment is required with the arrival in big data epoch, in communication system higher and higher.
From hardware, relies solely on and improve the speed of monokaryon chip to improve central processing unit (Central Processing Unit, CPU) processing capacity will produce excessive heat and corresponding performance improvement, cost performance can not be brought Also make us being difficult to receive.On the other hand, present system requires multi-job operation to be carried out.In this case, multi-core CPU A undoubtedly selection well, advantage is mainly at two aspects:More powerful calculated performance is brought for user;It is prior It is the requirement that can meet user and be carried out at the same time multitasking and multitask computing environment.
From software architecture, in order to improve message transfer capability, the side that generally use control plane is handled respectively with service surface Method allows service message to obtain fast-forwarding.
Currently, generally there are two types of methods for multi-core CPU processing data.First method:In symmetric multiprocessor In (Symmetrical Multi-Processing, SMP) operating system nucleus, a kernel thread, thread binding are run Onto specific CPU core, the forwarding of special disposal service message.
However, this method business surface treatment when the error occurs, the stability of operating system can be influenced.
Second method:Two operating systems are run in multiple nucleus system, one is done control plane Message processing, and one is done industry Business face Message processing.
However, this method can cause the redundancy overhead of operating system.
Invention content
The embodiment of the present invention provides a kind of method and apparatus of information processing, to solve in the prior art, different business The core of processing shares under the scene of an operating system, due to the problem of leading to system stability when certain business processing mistakes. And be respectively controlled under the situation scape of face message and data surface message using two operating systems, there are operating system redundancies The problem of expense.
Specific technical solution provided in an embodiment of the present invention is as follows:
A kind of method of information processing, including:
After multi-core processor startup, when receiving message, the first nucleoid is called to judge the type of the message, and Based on the type of the message, the message is sent to and the core of the type matching of message institute by first nucleoid In corresponding memory space;Wherein, first nucleoid is for executing scheduling operation;
The message that second nucleoid and/or third class are checked in corresponding memory space is called to be handled;Wherein, Second nucleoid is used to execute the processing of control plane message, and the third nucleoid is used to execute the processing of data surface message;
When determining need through the second nucleoid and/or third nucleoid transmission message, by second nucleoid and/or third Message in the corresponding memory space of nucleoid is sent in specified memory space to be sent;
The message that the first kind is checked in the memory space to be sent is called to be sent.
In this way, improving the efficiency of processing and the forwarding of data, while the redundancy overhead problem of operating system is avoided, into And improve the entire throughput of network system.
Preferably, before multi-core processor startup, further comprise:
According to different business processing contents, be divided into multi-core processor at least two first nucleoids, one second Nucleoid and at least one third nucleoid;
In the storage region of itself, corresponding memory space, corresponding institute are marked off corresponding to one second nucleoid It states at least one third nucleoid and marks off corresponding memory space, and mark off a memory space to be sent.
Preferably, after multi-core processor startup, before receiving message, further comprise:
It calls the second class verification physical network card to carry out initialization operation, and is registered at interruption in second nucleoid Manage function;Wherein, the interrupt processing function is the function received for message in Microsoft Loopback Adapter driving.
Preferably, when receiving message, the first nucleoid is called to judge the type of the message, and the class based on message The message is sent to and the storage sky corresponding to the processor of the type matching of the message by type by first nucleoid Between in, including:
When receiving message, the first nucleoid is called to judge the type of the message, if the type of the message is in order to control The message is then sent in the memory space corresponding to second nucleoid by first nucleoid, if institute by face message The type for stating message is data surface message, then the message is sent to corresponding to the third nucleoid by first nucleoid Memory space in.
If preferably, the type of message face message in order to control, is sent the message by first nucleoid Into the memory space corresponding to second nucleoid, including:
If the type of message face message in order to control, institute is sent directly to by first nucleoid by the message It states in the memory space corresponding to the second nucleoid;
If the type of the message is data surface message, the message is sent to described the by first nucleoid In memory space corresponding to three nucleoids, including:
If the type of the message is data surface message, Hash is calculated according to five-tuple information by first nucleoid HASH values, and the message is sent in the third nucleoid in corresponding memory space based on the HASH values.
Preferably, the message in the second nucleoid and/or the corresponding memory space of third class verification is called to be handled, including:
Trigger internuclear the second nucleoid of interrupt notification by first nucleoid, and by second nucleoid call it is described in Disconnected processing function indicates that the Microsoft Loopback Adapter driving handles the message;And/or
The message in corresponding memory space is checked by third class directly to be handled.
Preferably, when determining need through the second nucleoid and/or third nucleoid transmission message, by second nucleoid And/or the message in the corresponding memory space of third nucleoid is sent in specified memory space to be sent, including:
When determine need to send message by the second nucleoid and/or third nucleoid when, call second nucleoid and/or the Three nucleoids are by the packet buffer in corresponding memory space;
When determining that any core gets spin lock in second nucleoid and/or third nucleoid, by second nucleoid and/ Or the message in the memory space in third nucleoid corresponding to any core is sent in specified memory space to be sent;Wherein, Nuclear energy is no to be sent to message in the memory space to be sent to the spin lock for characterizing, and the memory space to be sent is used In the message that caching is to be sent.
Preferably, further comprising:
If second nucleoid and/or third nucleoid do not get spin lock, pass through second nucleoid and/or Three nucleoids carry out etc. to be operated.
Preferably, the message that the first kind is checked in the memory space to be sent is called to be sent, including:
Call first nucleoid that the message in the memory space to be sent is first sent to the physical network card, then by The physical network card carries out subsequent transmission operation.
A kind of device of information processing is applied on multi-core processor, including:
Receiving unit, for after multi-core processor startup, when receiving message, calling described in the judgement of the first nucleoid The message is sent to the type with the message by first nucleoid by the type of message, and the type based on message In memory space corresponding to matched core;Wherein, first nucleoid is for executing scheduling operation;
First processing units are carried out for calling the second nucleoid and/or third class to check the message in corresponding memory space Processing;Wherein, second nucleoid is used to execute the processing of control plane message, and the third nucleoid is for executing data surface message Processing;
Transmission unit, for when determine need to send message by second nucleoid and/or third nucleoid when, will be described Message in second nucleoid and/or the corresponding memory space of third nucleoid is sent in specified memory space to be sent;
Second processing unit is sent out for calling the first kind to check the message in the memory space to be sent It send.
In this way, improving the efficiency of processing and the forwarding of data, while the redundancy overhead problem of operating system is avoided, into And improve the entire throughput of network system.
Preferably, further comprising division unit, the division unit is used for:
Before multi-core processor startup, according to different business processing contents, it is divided at least in multi-core processor Two the first nucleoids, second nucleoid and at least one third nucleoid;
In the storage region of itself, corresponding memory space, corresponding institute are marked off corresponding to one second nucleoid It states at least one third nucleoid and marks off corresponding memory space, and mark off a memory space to be sent.
Preferably, after multi-core processor startup, before receiving message, the receiving unit is further used for:
It calls the second class verification physical network card to carry out initialization operation, and is registered at interruption in second nucleoid Manage function;Wherein, the interrupt processing function is the function received for message in Microsoft Loopback Adapter driving.
Preferably, when receiving message, the first nucleoid is called to judge the type of the message, and the class based on message Type, by first nucleoid by the message be sent to in the memory space corresponding to the core of the type matching of the message When, the receiving unit is used for:
When receiving message, the first nucleoid is called to judge the type of the message, if the type of the message is in order to control The message is then sent in the memory space corresponding to second nucleoid by first nucleoid, if institute by face message The type for stating message is data surface message, then the message is sent to corresponding to the third nucleoid by first nucleoid Memory space in.
If preferably, the type of message face message in order to control, is sent the message by first nucleoid When in the memory space corresponding to second nucleoid, the receiving unit is used for:
If the type of message face message in order to control, institute is sent directly to by first nucleoid by the message It states in the memory space corresponding to the second nucleoid;
If the type of the message is data surface message, the message is sent to described the by first nucleoid When in the memory space corresponding to three nucleoids, the receiving unit is used for:
If the type of the message is data surface message, Hash is calculated according to five-tuple information by first nucleoid HASH values, and the message is sent in the third nucleoid in corresponding memory space based on the HASH values.
Preferably, when the message in the second nucleoid and/or the corresponding memory space of third class verification being called to be handled, it is described First processing units are used for:
Trigger internuclear the second nucleoid of interrupt notification by first nucleoid, and by second nucleoid call it is described in Disconnected processing function indicates that the Microsoft Loopback Adapter driving handles the message;And/or
The message in corresponding memory space is checked by third class directly to be handled.
Preferably, when determining need through the second nucleoid and/or third nucleoid transmission message, by second nucleoid And/or the message in the corresponding memory space of third nucleoid, when being sent in specified memory space to be sent, the transmission is single Member is used for:
When determine need to send message by the second nucleoid and/or third nucleoid when, call second nucleoid and/or the Three nucleoids are by the packet buffer in corresponding memory space;
When determining that any core gets spin lock in second nucleoid and/or third nucleoid, by second nucleoid and/ Or the message in the memory space in third nucleoid corresponding to any core is sent in specified memory space to be sent;Wherein, Nuclear energy is no to be sent to message in the memory space to be sent to the spin lock for characterizing, and the memory space to be sent is used In the message that caching is to be sent.
Preferably, the transmission unit is further used for:
If second nucleoid and/or third nucleoid do not get spin lock, pass through second nucleoid and/or Three nucleoids carry out etc. to be operated.
Preferably, when calling the first kind to check the message in the memory space to be sent to be sent, described Two processing units are used for:
Call first nucleoid that the message in the memory space to be sent is first sent to the physical network card, then by The physical network card carries out subsequent transmission operation.
Description of the drawings
Fig. 1 is the idiographic flow schematic diagram of information processing in the embodiment of the present invention;
Fig. 2 is multi-core processor structural schematic diagram in the embodiment of the present invention;
Fig. 3 is queue structure's schematic diagram of multi-core processor in the embodiment of the present invention;
Fig. 4 is the structural schematic diagram of the device of information processing in the embodiment of the present invention.
Specific implementation mode
In order to improve processing and the forward efficiency of message, and avoid the problem that operating system redundancy overhead, the present invention are real It applies in example, after multi-core processor startup, when receiving message, calls the first nucleoid to judge the type of message, and be based on The type of message, by the first nucleoid by message be sent to in the memory space corresponding to the core of the type matching of message;When It is monitored by the second nucleoid and/or third nucleoid when having the message of storage in its corresponding memory space, calls the second nucleoid And/or third class verification message is handled;It, will when determining need through the second nucleoid and/or third nucleoid transmission message Message in second nucleoid and/or the corresponding memory space of third nucleoid is sent in specified memory space to be sent;It calls Message in first kind verification designated memory space is sent.
The preferred embodiment of the present invention is described in detail below in conjunction with the accompanying drawings, in the embodiment of the present invention, only one A operating system, and run on the second nucleoid.
As shown in fig.1, in the embodiment of the present invention, the detailed process of information processing is as follows:
Step 100:After multi-core processor startup, when receiving message, the first nucleoid is called to judge the class of message Message is sent to and the storage corresponding to the core of the type matching of message by type, and the type based on message by the first nucleoid In space;Wherein, the first nucleoid is for executing scheduling operation.
In the embodiment of the present invention, before multi-core processor startup, according to different business processing contents, in multinuclear processing At least two first nucleoids, second nucleoid and at least one third nucleoid are divided into device;And in the memory block of itself In domain, corresponding memory space is marked off corresponding to second nucleoid, corresponding at least one third nucleoid marks off corresponding Memory space, and mark off a memory space to be sent.
In general, the first nucleoid is two, one of core is for sending message, another core is for receiving message.
After multi-core processor startup, before receiving message, the second class verification physical network card is called to carry out initial Change operation, and registers interrupt processing function in the second nucleoid;Wherein, interrupt processing function is in Microsoft Loopback Adapter driving for reporting The function that text receives.
Specifically, when receiving message, the first nucleoid is called to judge the type of message, when the type face in order to control of message Message is sent in the memory space corresponding to the second nucleoid by message by the first nucleoid, when the type of message is data surface Message is sent in the memory space corresponding to third nucleoid by message by the first nucleoid.
For example, the first nucleoid is core 1 and core 2, which is core 0, and third nucleoid is core 3, core 4 ... core 15, core 1 When receiving message with core 2, if judging the type of message face message in order to control, which is sent to corresponding to core 0 Memory space in, if judge the message type be data surface message, which is sent to core 3, core 4 ... core 15 In corresponding memory space.
Further, if the type of message face message in order to control, second is sent directly to by the first nucleoid by message In memory space corresponding to nucleoid;
If the type of message is data surface message, Hash (HASH) is calculated according to five-tuple information by the first nucleoid Value, and message is sent in third nucleoid in corresponding memory space based on HASH values.
Specifically, the memory space corresponding to regulation core 3, core 4 ... core 15 is respectively memory space 1, memory space 2 ... memory spaces 13, five-tuple information include:Source IP address, purpose IP address, source MAC, target MAC (Media Access Control) address, agreement Number.A value is obtained by this five value additions, then mould 13 can be obtained by one between 0 to 12 value, 0 value corresponding data face report The memory space 1 of text, the memory space 2 of 1 value corresponding data face message, in this way and so on, it may be determined that third nucleoid institute is right The memory space answered.
Step 110:The message that the second nucleoid and/or third class are checked in corresponding memory space is called to be handled;Wherein, Second nucleoid is used to execute the processing of control plane message, and third nucleoid is used to execute the processing of data surface message.
In the embodiment of the present invention, when executing step 110, when control plane message is sent to the second class by the first nucleoid After the corresponding memory space of core, then internuclear the second nucleoid of interrupt notification is triggered by the first nucleoid again, and pass through the second nucleoid The instruction Microsoft Loopback Adapter driving of interrupt processing function is called to handle control plane message;And/or it is checked and is corresponded to by third class Message in memory space is directly handled.
For example, the first nucleoid is core 1 and core 2, which is core 0, when core 1 and core 2 send the message received To after core 0, core 1 and core 2 trigger internuclear interrupt operation, at this point, core 0 starts that interrupt function instruction Microsoft Loopback Adapter is called to drive At the processing for interrupting receiver function.
In another example the first nucleoid is core 1 and core 2, which is core 0, and third nucleoid is respectively:Core 3, core 4 ... Core 15, then, one or more of core 3, core 4 ... core 15 core monitor the message for having storage in the memory space of itself When, it is directly handled by corresponding one or more core in core 3, core 4 ... core 15.
Step 120:When determine need to send message by the second nucleoid and/or third nucleoid when, by the second nucleoid and/or Message in the corresponding memory space of third nucleoid is sent in specified memory space to be sent.
Specifically, when determine need to send message by the second nucleoid and/or third nucleoid when, call the second nucleoid and/ Or third nucleoid by packet buffer in corresponding memory space;Determine any core in the second nucleoid and/or third nucleoid When getting spin lock, the message in the memory space corresponding to any core in second nucleoid and/or third nucleoid is sent out It is sent in specified memory space to be sent;Wherein, for characterizing, nuclear energy is no to be sent to storage sky to be sent to spin lock by message Between in, memory space to be sent is for caching message to be sent.
For example, the first nucleoid is core 1 and core 2, the second nucleoid is core 0, and third nucleoid is core 3, core 4 ... core 15, when core 0 And/or core 3, core 4 ... core 15 need send message when, first by packet buffer in itself corresponding memory space, if at this point, Core 3 obtains spin lock, then the message in 3 memory space of core is sent in memory space to be sent.
If the second nucleoid and/or third nucleoid do not get spin lock, by the second nucleoid and/or third nucleoid into Row etc. is to be operated.
For example, core 4, core 5 ... core 10 do not get spin lock, then core 4, core 5 ... core 10 carry out etc. to be operated.
Step 130:The message that the first kind is checked in memory space to be sent is called to be sent.
It calls in the first nucleoid and the message in memory space to be sent is first sent to Physical Network for sending the core of message Card, then subsequent transmission is carried out by physical network card and is operated.
Explanation in detail is done further to the embodiment of the present invention with reference to specific application scenarios.
By taking protocol safety (Internet, ipsec) processor as an example, but the present invention is not limited only to ipsec processors.
As shown in fig.2, the CPU includes 16 cores (core), respectively core0, core1 ... core15.Wherein, Core0 is responsible for executing the processing (processing for executing non-ipsec messages) of control plane message, and core1 and core2 are for executing scheduling Operation (encryption and decryption and forwarding capability that execute message), core3, core4 ... core15 are used to execute the place of data surface message Reason (processing for executing ipsec messages).
Wherein, operating system is only run on core0.
As shown in fig.3, the multi-core processor includes 16 cores, in the storage region of the processor, respectively Core0 and core3, core4 ... core15 mark off corresponding memory space, and mark off depositing for message to be sent Memory space in order to more intuitively express, is known as queue by storage space here.Will the storage region of the processor be divided into One control plane message receiving queue, 13 data surface message receiving queues, there are one message transmit queues.
After multi-core processor startup, core0 carries out initialization operation to physical network card, and registers and interrupt in core0 Handle function, wherein interrupt processing function is the function received for message in Microsoft Loopback Adapter driving.
When core1 and core2 receive message, then core1 and core2 according to message whether ipsec protocol massages come Judge that type of message is to belong to control plane message to still fall within data surface message.
If it is control plane message, then the message is discharged into control plane receiving queue end by core1 and core2, is then touched It sends out interruption internuclear, calls interrupt processing function to indicate that Microsoft Loopback Adapter driving handles control plane message by core0;It is i.e. logical The kernel protocol stack interface in core0 is crossed, kernel protocol stack processing is given message, completes the processing of terminal receiver function.
If it is data surface message, then core1 and core2 calculates HASH values according to five-tuple, and message is determined by HASH values Affiliated queue then drains into corresponding data surface receiving queue tail portion.
Wherein, since data surface message is handled by multiple cores, in order to ensure the message transmission sequence of same Business Stream with Sequence consensus is received, while realizing that Business Stream determines this in multiple inter-core loads equilibrium, this example using five-tuple HASH values Data surface message is handled by which core.
When core0 and/or core3, core4 ... core15 monitor the message for having storage in the queue of itself, then Start to handle message.
Here, the decryption and forwarding of message are referred to the processing of message.
When core0 and/or core3, core4 ... core15 determinations need to send message, core0 and/or core3, Core4 ... core15 will need the message sent to be first buffered in queue corresponding with itself, further determine whether to obtain To spin lock.If any of core0 and core3, core4 ... core15 get spin lock, it will get certainly The message revolved in the queue corresponding to the core of lock is sent in message transmit queue, if core0 and/or core3, core4 ... Core15 does not get spin lock, then carries out etc. to be operated.
For example, if core0 obtains spin lock, the message in control plane message queue is sent to message by core0 Transmit queue.
The core15 for core6, core7 ... does not get spin lock, then for core6, core7 ... Core15, then execution etc. is to be operated.
Based on above-described embodiment, as shown in fig.4, in the embodiment of the present invention, the device of information processing includes:Receiving unit 41, first processing units 42, transmission unit 43 and second processing unit 44.
Receiving unit 41, for after multi-core processor startup, when receiving message, the first nucleoid being called to judge report The type of text, and the type based on message, by the first nucleoid by message be sent to corresponding to the core of the type matching of message Memory space in;Wherein, the first nucleoid is for executing scheduling operation;
First processing units 42, for calls the second nucleoid and/or third class check the message in correspondence memory space into Row processing;Wherein, the second nucleoid is used to execute the processing of control plane message, and third nucleoid is used to execute the place of data surface message Reason;
Transmission unit 43, for when determine need to send message by the second nucleoid and/or third nucleoid when, by the second class Message in core and/or the corresponding memory space of third nucleoid is sent in specified memory space to be sent;
Second processing unit 44 is sent for calling the first kind to check the message in memory space to be sent.
Preferably, further comprising division unit 40, division unit 40 is used for:
Before multi-core processor startup, according to different business processing contents, it is divided at least in multi-core processor Two the first nucleoids, second nucleoid and at least one third nucleoid;
In the storage region of itself, corresponding memory space is marked off corresponding to second nucleoid, corresponds at least one A third nucleoid marks off corresponding memory space, and marks off a memory space to be sent.
Preferably, after multi-core processor startup, before receiving message, receiving unit 41 is further used for:
It calls the second class verification physical network card to carry out initialization operation, and registers interrupt processing function in the second nucleoid; Wherein, interrupt processing function is the function received for message in Microsoft Loopback Adapter driving.
Preferably, when receiving message, calls the first nucleoid to judge the type of message, and the type based on message, lead to When crossing the first nucleoid and being sent to message with the memory space corresponding to the core of the type matching of message, receiving unit 41 is used In:
When receiving message, the first nucleoid is called to judge the type of message, if the type of message face message in order to control, Message is sent in the memory space corresponding to the second nucleoid by the first nucleoid, if the type of message is data surface message, Then message is sent in the memory space corresponding to third nucleoid by the first nucleoid.
Preferably, if the type of message face message in order to control, the second nucleoid institute is sent to by the first nucleoid by message When in corresponding memory space, receiving unit 41 is used for:
If message, is sent directly to corresponding to the second nucleoid by the type of message face message in order to control by the first nucleoid Memory space in;
If the type of message is data surface message, message is sent to by depositing corresponding to third nucleoid by the first nucleoid When storing up in space, receiving unit 41 is used for:
If the type of message is data surface message, Hash HASH values are calculated according to five-tuple information by the first nucleoid, And message is sent in third nucleoid in corresponding memory space based on HASH values.
Preferably, when the message in the second nucleoid and/or the corresponding memory space of third class verification being called to be handled, first Processing unit 42 is used for:
Internuclear the second nucleoid of interrupt notification is triggered by the first nucleoid, and calls interrupt processing function to refer to by the second nucleoid Show that Microsoft Loopback Adapter driving handles message;And/or
The message in corresponding memory space is checked by third class directly to be handled.
Preferably, when determine need to send message by the second nucleoid and/or third nucleoid when, by the second nucleoid and/or When message in the corresponding memory space of third nucleoid is sent in specified memory space to be sent, transmission unit 43 is used for:
When determining need through the second nucleoid and/or third nucleoid transmission message, the second nucleoid and/or third class are called Core is by packet buffer in corresponding memory space;
When determining that any core gets spin lock in the second nucleoid and/or third nucleoid, by second nucleoid and/or The message in memory space in three nucleoids corresponding to any core is sent in specified memory space to be sent;Wherein, it spins Nuclear energy is no to be sent to message in memory space to be sent to lock for characterizing, and memory space to be sent is for caching report to be sent Text.
Preferably, transmission unit 43 is further used for:
If the second nucleoid and/or third nucleoid do not get spin lock, by the second nucleoid and/or third nucleoid into Row etc. is to be operated.
Preferably, when the first kind being called to check the message in memory space to be sent and sent, second processing unit 44 For:
It calls the first nucleoid that the message in memory space to be sent is first sent to physical network card, then is carried out by physical network card Subsequent transmission operation.
In conclusion in the embodiment of the present invention, after multi-core processor startup, when receiving message, first is called Nucleoid judges the type of message, and the type based on message, and message is sent to the type matching with message by the first nucleoid Core corresponding to memory space in;Wherein, the first nucleoid is for executing scheduling operation;When passing through the second nucleoid and/or third Nucleoid monitors when having the message of storage in its corresponding memory space, call the second nucleoid and/or third class check message into Row processing;Wherein, the second nucleoid is used to execute the processing of control plane message, and third nucleoid is used to execute the place of data surface message Reason;When determining need through the second nucleoid and/or third nucleoid transmission message, the second nucleoid and/or third nucleoid are corresponded to Memory space in message be sent in specified memory space to be sent;It calls in first kind verification designated memory space Message is sent.In this way, executing the processing of control plane message data by the second nucleoid, data surface is executed by third nucleoid The processing of message, and operating system only operates on the second nucleoid, not only increases the efficiency of processing and the forwarding of data, together When avoid the redundancy overhead problem of operating system, and then improve the entire throughput of network system.
It should be understood by those skilled in the art that, the embodiment of the present invention can be provided as method, system or computer program Product.Therefore, complete hardware embodiment, complete software embodiment or reality combining software and hardware aspects can be used in the present invention Apply the form of example.Moreover, the present invention can be used in one or more wherein include computer usable program code computer The computer program production implemented in usable storage medium (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.) The form of product.
The present invention be with reference to according to the method for the embodiment of the present invention, the flow of equipment (system) and computer program product Figure and/or block diagram describe.It should be understood that can be realized by computer program instructions every first-class in flowchart and/or the block diagram The combination of flow and/or box in journey and/or box and flowchart and/or the block diagram.These computer programs can be provided Instruct the processor of all-purpose computer, special purpose computer, Embedded Processor or other programmable data processing devices to produce A raw machine so that the instruction executed by computer or the processor of other programmable data processing devices is generated for real The device for the function of being specified in present one flow of flow chart or one box of multiple flows and/or block diagram or multiple boxes.
These computer program instructions, which may also be stored in, can guide computer or other programmable data processing devices with spy Determine in the computer-readable memory that mode works so that instruction generation stored in the computer readable memory includes referring to Enable the manufacture of device, the command device realize in one flow of flow chart or multiple flows and/or one box of block diagram or The function of being specified in multiple boxes.
These computer program instructions also can be loaded onto a computer or other programmable data processing device so that count Series of operation steps are executed on calculation machine or other programmable devices to generate computer implemented processing, in computer or The instruction executed on other programmable devices is provided for realizing in one flow of flow chart or multiple flows and/or block diagram one The step of function of being specified in a box or multiple boxes.
Although preferred embodiments of the present invention have been described, it is created once a person skilled in the art knows basic Property concept, then additional changes and modifications may be made to these embodiments.So it includes excellent that the following claims are intended to be interpreted as It selects embodiment and falls into all change and modification of the scope of the invention.
Obviously, those skilled in the art can carry out the embodiment of the present invention various modification and variations without departing from this hair The spirit and scope of bright embodiment.In this way, if these modifications and variations of the embodiment of the present invention belong to the claims in the present invention And its within the scope of equivalent technologies, then the present invention is also intended to include these modifications and variations.

Claims (18)

1. a kind of method of information processing, be applied on multi-core processor, which is characterized in that the multi-core processor only there are one Operating system, and the operating system is on the second nucleoid, the method includes:
After multi-core processor startup, when receiving message, the first nucleoid is called to judge the type of the message, and be based on The type of the message, by first nucleoid by the message be sent to corresponding to the core of the type matching of the message Memory space in;Wherein, first nucleoid is for executing scheduling operation;
The message that the second nucleoid and/or third class are checked in corresponding memory space is called to be handled;Wherein, second nucleoid Processing for executing control plane message, the third nucleoid are used to execute the processing of data surface message;
When determining need through the second nucleoid and/or third nucleoid transmission message, by second nucleoid and/or third nucleoid Message in corresponding memory space is sent in specified memory space to be sent;
The message that the first kind is checked in the memory space to be sent is called to be sent.
2. the method as described in claim 1, which is characterized in that before multi-core processor startup, further comprise:
According to different business processing contents, at least two first nucleoids, second nucleoid are divided into multi-core processor With at least one third nucleoid;
In storage region corresponding to the multi-core processor, corresponding storage is marked off corresponding to one second nucleoid Space, corresponding at least one third nucleoid mark off corresponding memory space, and mark off a storage sky to be sent Between.
3. the method as described in claim 1, which is characterized in that after multi-core processor startup, before receiving message, Further comprise:
It calls the second class verification physical network card to carry out initialization operation, and registers interrupt processing letter in second nucleoid Number;Wherein, the interrupt processing function is the function received for message in Microsoft Loopback Adapter driving.
4. the method as described in claim 1, which is characterized in that when receiving message, the first nucleoid is called to judge the report The message is sent to the type with the message by first nucleoid by the type of text, and the type based on message In the memory space corresponding to core matched, including:
When receiving message, the first nucleoid is called to judge the type of the message, if the type of the message in order to control report by face The message is then sent in the memory space corresponding to second nucleoid by first nucleoid, if the report by text The type of text is data surface message, then the message is sent to depositing corresponding to the third nucleoid by first nucleoid It stores up in space.
5. method as claimed in claim 4, which is characterized in that if the type of message face message in order to control, passes through institute It states the first nucleoid the message is sent in the memory space corresponding to second nucleoid, including:
If the type of message face message in order to control, described is sent directly to by first nucleoid by the message In memory space corresponding to two nucleoids;
If the type of the message is data surface message, the message is sent to by the third class by first nucleoid In memory space corresponding to core, including:
If the type of the message is data surface message, Hash HASH is calculated according to five-tuple information by first nucleoid Value, and the message is sent in the memory space corresponding to the third nucleoid based on the HASH values.
6. method as claimed in claim 3, which is characterized in that call the second nucleoid and/or the corresponding storage of third class verification empty Between in message handled, including:
Internuclear the second nucleoid of interrupt notification is triggered by first nucleoid, and is called at the interruption by second nucleoid Reason function indicates that the Microsoft Loopback Adapter driving handles the message;And/or
The message in corresponding memory space is checked by third class directly to be handled.
7. method as claimed in any one of claims 1 to 6, which is characterized in that needed through the second nucleoid and/or the when determining When three nucleoids send message, the message in second nucleoid and/or the corresponding memory space of third nucleoid is sent to specified Memory space to be sent in, including:
When determining need through the second nucleoid and/or third nucleoid transmission message, second nucleoid and/or third class are called Core is by the packet buffer in corresponding memory space;
When determining that any core gets spin lock in second nucleoid and/or third nucleoid, by second nucleoid and/or The message in memory space in three nucleoids corresponding to any core is sent in specified memory space to be sent;Wherein, described Nuclear energy is no to be sent to message in the memory space to be sent to spin lock for characterizing, and the memory space to be sent is for delaying Deposit message to be sent.
8. the method for claim 7, which is characterized in that further comprise:
If second nucleoid and/or third nucleoid do not get spin lock, pass through second nucleoid and/or third class Core carries out etc. to be operated.
9. method as claimed in claim 3, which is characterized in that the first kind is called to check in the memory space to be sent Message sent, including:
Call first nucleoid that the message in the memory space to be sent is first sent to the physical network card, then by described Physical network card carries out subsequent transmission operation.
10. a kind of device of information processing is applied on multi-core processor, which is characterized in that the multi-core processor only has one A operating system, and the operating system, on the second nucleoid, described device includes:
Receiving unit, for after multi-core processor startup, when receiving message, the first nucleoid being called to judge the message Type, the message is sent to the type matching with the message by first nucleoid by and the type based on message Core corresponding to memory space in;Wherein, first nucleoid is for executing scheduling operation;
First processing units are handled for calling the second nucleoid and/or third class to check the message in corresponding memory space; Wherein, second nucleoid is used to execute the processing of control plane message, and the third nucleoid is used to execute the place of data surface message Reason;
Transmission unit, for when determine need to send message by second nucleoid and/or third nucleoid when, by described second Message in nucleoid and/or the corresponding memory space of third nucleoid is sent in specified memory space to be sent;
Second processing unit is sent for calling the first kind to check the message in the memory space to be sent.
11. device as claimed in claim 10, which is characterized in that further comprise that division unit, the division unit are used for:
Before multi-core processor startup, according to different business processing contents, at least two are divided into multi-core processor First nucleoid, second nucleoid and at least one third nucleoid;
In storage region corresponding to the multi-core processor, corresponding storage is marked off corresponding to one second nucleoid Space, corresponding at least one third nucleoid mark off corresponding memory space, and mark off a storage sky to be sent Between.
12. device as claimed in claim 10, which is characterized in that multi-core processor startup after, receive message it Before, the receiving unit is further used for:
It calls the second class verification physical network card to carry out initialization operation, and registers interrupt processing letter in second nucleoid Number;Wherein, the interrupt processing function is the function received for message in Microsoft Loopback Adapter driving.
13. device as claimed in claim 10, which is characterized in that when receiving message, call described in the judgement of the first nucleoid The message is sent to the type with the message by first nucleoid by the type of message, and the type based on message When in the memory space corresponding to matched core, the receiving unit is used for:
When receiving message, the first nucleoid is called to judge the type of the message, if the type of the message in order to control report by face The message is then sent in the memory space corresponding to second nucleoid by first nucleoid, if the report by text The type of text is data surface message, then the message is sent to depositing corresponding to the third nucleoid by first nucleoid It stores up in space.
14. device as claimed in claim 13, which is characterized in that if the type of message face message in order to control, passes through When the message is sent in the memory space corresponding to second nucleoid by first nucleoid, the receiving unit is used In:
If the type of message face message in order to control, described is sent directly to by first nucleoid by the message In memory space corresponding to two nucleoids;
If the type of the message is data surface message, the message is sent to by the third class by first nucleoid When in the memory space corresponding to core, the receiving unit is used for:
If the type of the message is data surface message, Hash HASH is calculated according to five-tuple information by first nucleoid Value, and the message is sent in the memory space corresponding to the third nucleoid based on the HASH values.
15. device as claimed in claim 12, which is characterized in that call the second nucleoid and/or the corresponding storage of third class verification When message in space is handled, the first processing units are used for:
Internuclear the second nucleoid of interrupt notification is triggered by first nucleoid, and is called at the interruption by second nucleoid Reason function indicates that the Microsoft Loopback Adapter driving handles the message;And/or
The message in corresponding memory space is checked by third class directly to be handled.
16. such as claim 10-15 any one of them devices, which is characterized in that need through the second nucleoid when determining and/or When third nucleoid sends message, the message in second nucleoid and/or the corresponding memory space of third nucleoid is sent to finger When in fixed memory space to be sent, the transmission unit is used for:
When determining need through the second nucleoid and/or third nucleoid transmission message, second nucleoid and/or third class are called Core is by the packet buffer in corresponding memory space;
When determining that any core gets spin lock in second nucleoid and/or third nucleoid, by second nucleoid and/or The message in memory space in three nucleoids corresponding to any core is sent in specified memory space to be sent;Wherein, described Nuclear energy is no to be sent to message in the memory space to be sent to spin lock for characterizing, and the memory space to be sent is for delaying Deposit message to be sent.
17. device as claimed in claim 16, which is characterized in that the transmission unit is further used for:
If second nucleoid and/or third nucleoid do not get spin lock, pass through second nucleoid and/or third class Core carries out etc. to be operated.
18. device as claimed in claim 12, which is characterized in that the first kind is called to check the memory space to be sent In message when being sent, the second processing unit is used for:
Call first nucleoid that the message in the memory space to be sent is first sent to the physical network card, then by described Physical network card carries out subsequent transmission operation.
CN201510251265.3A 2015-05-15 2015-05-15 A kind of method and apparatus of information processing Active CN104994032B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510251265.3A CN104994032B (en) 2015-05-15 2015-05-15 A kind of method and apparatus of information processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510251265.3A CN104994032B (en) 2015-05-15 2015-05-15 A kind of method and apparatus of information processing

Publications (2)

Publication Number Publication Date
CN104994032A CN104994032A (en) 2015-10-21
CN104994032B true CN104994032B (en) 2018-09-25

Family

ID=54305787

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510251265.3A Active CN104994032B (en) 2015-05-15 2015-05-15 A kind of method and apparatus of information processing

Country Status (1)

Country Link
CN (1) CN104994032B (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105337976A (en) * 2015-11-06 2016-02-17 西安交大捷普网络科技有限公司 Real-time high-efficiency database audit realization method
CN105471770B (en) * 2015-11-20 2019-03-01 福建星网锐捷网络有限公司 A kind of message processing method and device based on multi-core processor
CN105656808B (en) * 2015-12-29 2019-02-12 京信通信系统(中国)有限公司 Message processing method and its system
CN107547426A (en) * 2016-06-27 2018-01-05 中兴通讯股份有限公司 Distributed approach, device and the base station of GTPU messages
CN106254578B (en) * 2016-09-28 2019-07-12 深圳震有科技股份有限公司 Ethernet message transmission method and system under double-core AMP system framework
CN108965148B (en) * 2018-06-27 2022-04-22 新华三信息安全技术有限公司 Processor and message processing method
CN108881060A (en) * 2018-06-29 2018-11-23 新华三信息安全技术有限公司 A kind of method and device handling communication message
CN108984327B (en) * 2018-07-27 2020-12-01 新华三技术有限公司 Message forwarding method, multi-core CPU and network equipment
CN112152940B (en) * 2019-06-28 2022-08-09 华为云计算技术有限公司 Message processing method, device and system
CN113991839B (en) * 2021-10-15 2023-11-14 许继集团有限公司 Device and method for improving remote control opening reliability

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102480430A (en) * 2010-11-24 2012-05-30 迈普通信技术股份有限公司 Method and device for realizing message order preservation
CN103207808A (en) * 2012-01-13 2013-07-17 百度在线网络技术(北京)有限公司 Processing method and device in multi-core system
CN104050036A (en) * 2014-05-29 2014-09-17 汉柏科技有限公司 Control system and method of multi-core processor network equipment
CN104506452A (en) * 2014-12-16 2015-04-08 福建星网锐捷网络有限公司 Message processing method and message processing device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101653204B1 (en) * 2010-03-16 2016-09-01 삼성전자주식회사 System and method of dynamically task managing for data parallel processing on multi-core system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102480430A (en) * 2010-11-24 2012-05-30 迈普通信技术股份有限公司 Method and device for realizing message order preservation
CN103207808A (en) * 2012-01-13 2013-07-17 百度在线网络技术(北京)有限公司 Processing method and device in multi-core system
CN104050036A (en) * 2014-05-29 2014-09-17 汉柏科技有限公司 Control system and method of multi-core processor network equipment
CN104506452A (en) * 2014-12-16 2015-04-08 福建星网锐捷网络有限公司 Message processing method and message processing device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于多核的IPSec并行处理技术研究与实现_;刘磊等;《计算机工程》;20090205;第35卷(第3期);正文第139-141页 *

Also Published As

Publication number Publication date
CN104994032A (en) 2015-10-21

Similar Documents

Publication Publication Date Title
CN104994032B (en) A kind of method and apparatus of information processing
CN107515775B (en) Data transmission method and device
US9354952B2 (en) Application-driven shared device queue polling
KR101072078B1 (en) System and method for multicore communication processing
CN101553792B (en) Optimized interrupt delivery in virtualized environment
US9009702B2 (en) Application-driven shared device queue polling in a virtualized computing environment
CN108647104B (en) Request processing method, server and computer readable storage medium
US20090248934A1 (en) Interrupt dispatching method in multi-core environment and multi-core processor
CN108063813B (en) Method and system for parallelizing password service network in cluster environment
US10387211B2 (en) Managing a virtual computer resource
US9621633B2 (en) Flow director-based low latency networking
CN105630731A (en) Network card data processing method and device in multi-CPU (Central Processing Unit) environment
CN105335211B (en) A kind of FPGA accelerators scheduling system and method based on Xen virtual clusters
US11201836B2 (en) Method and device for managing stateful application on server
CN108984327B (en) Message forwarding method, multi-core CPU and network equipment
CN106571978B (en) Data packet capturing method and device
US6012121A (en) Apparatus for flexible control of interrupts in multiprocessor systems
WO2022271223A1 (en) Dynamic microservices allocation mechanism
CN107846367A (en) A kind of data transmission method and device
Cerrato et al. An efficient data exchange algorithm for chained network functions
CN104572315B (en) Realize method, communication entity and the distributed communication system of intersubsystem communication
Suo et al. Characterizing networking performance and interrupt overhead of container overlay networks
CN115379028B (en) DPDK-based high-performance password service method, device, equipment and medium
WO2024040846A1 (en) Data processing method and apparatus, electronic device, and storage medium
US20180167340A1 (en) Technologies for multi-core wireless network data transmission

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20180222

Address after: 510663 Shenzhou Road, Guangzhou Science City, Guangzhou, Guangzhou economic and Technological Development Zone, Guangdong Province, No. 10

Applicant after: Comba Telecom System (China) Co., Ltd.

Applicant after: Comba Telecom Systems (Guangzhou) Co., Ltd.

Applicant after: Jingxin Communication Technology (Guangzhou) Co., Ltd.

Applicant after: TIANJIN COMBA TELECOM SYSTEMS CO., LTD.

Address before: 510663 Guangdong city of Guangzhou Province Economic and Technological Development Zone Jinbi Road No. 6

Applicant before: Jingxin Communication Technology (Guangzhou) Co., Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200107

Address after: 510663 No. 10, Shenzhou Road, Science City, Guangzhou, economic and Technological Development Zone, Huangpu District, Guangzhou, Guangdong Province

Patentee after: Jingxin Communication System (China) Co., Ltd.

Address before: 510663 Shenzhou Road, Guangzhou Science City, Guangzhou, Guangzhou economic and Technological Development Zone, Guangdong Province, No. 10

Co-patentee before: Jingxin Communication System (Guangzhou) Co., Ltd.

Patentee before: Jingxin Communication System (China) Co., Ltd.

Co-patentee before: Jingxin Communication Technology (Guangzhou) Co., Ltd.

Co-patentee before: TIANJIN COMBA TELECOM SYSTEMS CO., LTD.

TR01 Transfer of patent right
CP01 Change in the name or title of a patent holder

Address after: 510663 No.10, Shenzhou Road, Guangzhou Science City, economic and Technological Development Zone, Huangpu District, Guangzhou City, Guangdong Province

Patentee after: Jingxin Network System Co.,Ltd.

Address before: 510663 No.10, Shenzhou Road, Guangzhou Science City, economic and Technological Development Zone, Huangpu District, Guangzhou City, Guangdong Province

Patentee before: Comba Telecom System (China) Ltd.

CP01 Change in the name or title of a patent holder