CN100373374C - Virtual network card system based on multiple processors and communication method thereof - Google Patents
Virtual network card system based on multiple processors and communication method thereof Download PDFInfo
- Publication number
- CN100373374C CN100373374C CNB021107637A CN02110763A CN100373374C CN 100373374 C CN100373374 C CN 100373374C CN B021107637 A CNB021107637 A CN B021107637A CN 02110763 A CN02110763 A CN 02110763A CN 100373374 C CN100373374 C CN 100373374C
- Authority
- CN
- China
- Prior art keywords
- processor
- packet
- master processor
- communication drivers
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
Abstract
The present invention discloses a virtual network card system based on a multiprocessor and a communication method thereof. The whole virtual network card system is formed from a network card, a main processor, a communication device among processors and a plurality of other processors. External data packets are distributed to destination processors according to the destination address of the data packet through the network card, a network card drive module and a communication drive module of the main processor. Network protocol stacks of the processors convert data in an upper layer application part into data packets which are transmitted outwards through the communication drive module, the communication device among the processors, the communication drive module of the main processor, the network card drive module and the network card. The present invention is widely applicable to the design of a multiprocessor system in embedded communication equipment; the present invention has the advantages of reduced system hardware cost and system space saving; system debugging can be conveniently finished through the network card so as to increase the speed of system development.
Description
Affiliated field
The present invention relates to the embedded system field, particularly relate to the design of multiple processor system in the large-scale embedded device.
Background technology
In order to satisfy the requirement of the very big and real-time of large-scale embedded system calculated amount, make full use of the characteristics of the Distributed Calculation of system, the distributed multiprocessor system is frequent selecteed scheme.In this multiple processor system, the interprocessor communication method generally has ethernet communication and bus communication.
With reference to Ethernet communication mode synoptic diagram shown in Figure 1, though have easy extendibility, reliability height, easy implementation, wider bandwidth, and embedded system development platform is generally supported by advantages such as network debug object programs, but realize that network service must be to network interface card of each processor configuration, increase hardware volume, System on Chip/SoC quantity, and then increased the hardware cost of system.Particularly for embedded system, because the restriction on the system space requires to reduce the volume of embedded system as much as possible, so be not suitable for adopting the ethernet communication mode.
Adopt the bus communication mode to realize, as adopt PCI, VME bus communication mode, synoptic diagram with reference to employing pci bus communication mode shown in Figure 2, a network interface card and all processors all directly are connected on the pci bus, by the communication (communication bandwidth reaches 132MB/s) between the multiprocessor in the network interface card realization system.This mode can be saved number of chips and hardware volume, reduces hardware cost.But existing embedded software developing platform owing to the embedded system development platform of not supporting by the bus communication debug object program, has increased the difficulty of debugging and misarrangement by network or AccessPort target program, influences the software development progress.And present method is to increase the means of a serial ports as debugging for each processor.But these serial ports are idle when normally moving in system, cause resource waste, and the bandwidth of serial communication has also limited the software debugging progress.
Summary of the invention
The present invention has overcome the above-mentioned deficiency of prior art, provides a kind of based on polyprocessor virtual network card system, realizes only simulating respectively with a network interface card being used by nonidentical processor, has saved the design space and the cost of system hardware.
A kind of communication means based on polyprocessor virtual network card system also is provided, has increased the convenience of software development and debugging, accelerated the progress of software development.
Provided by the invention a kind of based on polyprocessor virtual network card system, comprising:
A master processor comprises: network protocol stack (321), be used to realize procotol, and the data that upper layer application is partly received convert packet to according to procotol, convert the packet that receives to data and send the upper layer application part to; Communication drivers module (322), be used to safeguard the network configuration information of other processor (33), the packet that network protocol stack (32 1) and other processor (33) are sent here is forwarded to network interface card driver module (323), and the packet that network interface card driver module (323) is received is forwarded to network protocol stack (321) or other processor (33) according to the destination address of packet; Network interface card driver module (323) is used for network interface card (31) is carried out initialization, receives network interface card (31) packet of sending and the packet of transmitting communication drivers module (322) transmission to network interface card (31);
A plurality of other processors comprise: network protocol stack (331), be used to realize procotol, and the data that upper layer application is partly received convert packet to according to procotol, convert the packet that receives to data and send the upper layer application part to;
Communication drivers module (332) is used for the packet that network protocol stack (331) is sent here is forwarded to master processor (32), and the packet that master processor (32) is sent is forwarded to network protocol stack (331);
Network interface card is used for the packet that master processor sends is forwarded to the outside, and the packet that receives is forwarded to master processor;
Communicator between the processor is used for communicating by letter between master processor and other processor.
Communicator between the described processor is a pci bus.
Communicator between the described processor can also be the VME bus.
It is a kind of based on polyprocessor Microsoft Loopback Adapter communication means that the present invention proposes, and may further comprise the steps:
One, system's setting:
1) master processor starts and the initialization network interface card, notifies the communication drivers module of master processor with network configuration information, and network interface card is arranged to accept any mode data packet;
2) other processor starts, the communication drivers module that communication drivers module and communicator processor between of network configuration information by this processor sent to master processor;
3) the communication drivers module of master processor is safeguarded the network configuration information of all processors;
Two, accept to receive the external data bag:
1) network interface card is forwarded to the external data bag that receives the communication drivers module of master processor;
2) the communication drivers module of master processor is transmitted packet according to the destination address of packet;
Three, send packet to the outside:
1) network protocol stack of master processor converts the upper layer application partial data to communication drivers module that packet is forwarded to master processor;
2) network protocol stack of other processor converts the upper layer application partial data to communication drivers module that communication drivers module and communicator processor between of packet by this processor sends to master processor;
3) the communication drivers module of master processor is transmitted packet by network interface card driver module and network interface card to the outside with the packet that receives.
The communication drivers module forwards packet of master processor in the described step 2:
If the destination address of packet is a broadcast address, then packet is forwarded in the communication drivers module of other processor by the communicator between the processor, and via the communication drivers module of all processors packet is forwarded in the network protocol stack of all processors and handles;
If the destination address of packet is not a broadcast address, then the MAC Address according to packet is forwarded to the purpose processor with packet.
Because the present invention adopts a network interface card to finish the virtual work of polylith network interface card, the system that makes does not need to have reduced the quantity of hardware chip in the system for each processor all disposes an independent network interface card, saves cost.
Because virtual system of the present invention, can think that each processor at network interface card of independent use, has increased the convenience of software debugging for external debug, accelerates development progress.
Description of drawings
Fig. 1 is the network interface card system schematic that prior art adopts the ethernet communication mode to realize.
Fig. 2 is the network interface card system schematic that prior art adopts the pci bus communication mode to realize.
Fig. 3 is of the present invention based on polyprocessor virtual network card system synoptic diagram.
Fig. 4 is the processor structure synoptic diagram in the virtual network card system of the present invention.
Embodiment
The multiple processor system of ethernet communication mode as shown in Figure 1, each processor all connect a network interface card, and the volume ratio that causes system and problem such as hardware cost height is not suitable for embedded multiple processor system.
The multiple processor system of pci bus communication mode as shown in Figure 2, though only use a network interface card, but this function of network card just is used for the communication between a plurality of processors, also needs to debug to extra serial ports of each processor configuration when system debug.These serial ports only use in debugging, so remain worthless.
And the multiple processor system of a kind of Microsoft Loopback Adapter that the present invention proposes, as shown in Figure 3, network interface card 31 directly links to each other with master processor 32, carries out the mutual of packet by the communicator between the processor 34 between master processor 32 and other processor 33.
Following mask body is introduced the structure of each processor inside, as shown in Figure 4, comprises in the master processor: network protocol stack 321, communication drivers module 322, network interface card driver module 323 each one; Comprise in other processor: network protocol stack 331 and communication drivers module 332 each one.The network protocol stack 321 of master processor and the network protocol stack 331 of other processor upwards are connected to the upper layer application part that links to each other with each processor, link to each other with the communication drivers module (communication drivers module 322 hop communication driver modules 332) of each processor downwards.The communication drivers module 322 of master processor and the communication drivers module 332 of other processor all are connected on the communicator 34 between the processor.The communication drivers module 322 of master processor also is connected on the network interface card 31 by network interface card driver module 323.
Below introduce a kind of specific implementation process that the present invention proposes again based on polyprocessor Microsoft Loopback Adapter communication means.
Network interface card driver module 323 mainly is the initialization of finishing network interface card 31, the transceive data bag.The communication drivers module of each processor (communication drivers module 322 and communication drivers module 332) is by hardware communications device 34 transceive data bag and configuration informations between the processor, and each processor has the mac address of oneself.
Realize that concrete steps of the present invention are as follows:
Manage the following communication drivers module (communication drivers module 322 and communication drivers module 332) that realizes processor of network protocol stack (network protocol stack 321 and network protocol stack 331) of machine throughout, network protocol stack is by the driver module transceive data bag of processor;
During master processor 32 initialization network interface card driver modules 323, give communication drivers module 322, network interface card 31 is arranged to accept the pattern (promiscous) of any packet master processor configuration (comprising mac) announcement;
Give communication drivers module 332 with this processor configuration (comprising mac) announcement during other processor 33 initialization, communication drivers module 332 is by the communication drivers module 322 of interprocessor communication device 34 announcements to master processor then;
Master processor communication drivers module 322 is safeguarded the network configuration information of all processors;
Network interface card 31 receives the mac packet, gives communication drivers module 322 distributions of master processor;
The communication drivers module 322 of master processor determines according to the purpose mac address of packet:
(1) broadcast address is distributed to all processor communication drivers modules (communication drivers module 322 and communication drivers module 332), gives network protocol stack (network protocol stack 321 and network protocol stack 331) by it and handles;
(2) main broadcaster address, inquiry mac table is distributed to corresponding processor;
(3) other address, inquiry mac table is distributed to corresponding processor;
The packet that network protocol stack (network protocol stack 321 and network protocol stack 331) sends all sends the communication drivers module 322 of master processor to;
Claims (5)
1. one kind based on polyprocessor virtual network card system, it is characterized in that, comprising:
A master processor (32) comprising:
The network protocol stack of master processor (321) is used to realize procotol, and the data that upper layer application is partly received convert packet to according to procotol, converts the packet that receives to data and sends the upper layer application part to;
The communication drivers module (322) of master processor, be used to safeguard the network configuration information of other processor (33), the packet that network protocol stack (321) and other processor (33) of master processor are sent here is forwarded to network interface card driver module (323), and the packet that network interface card driver module (323) is received is forwarded to network protocol stack (321) or other processor (33) of master processor according to the destination address of packet;
Network interface card driver module (323) is used for network interface card (31) is carried out initialization, and the packet that receives network interface card (31) packet of sending and communication drivers module (322) transmission of transmitting master processor is to network interface card (31);
A plurality of other processors (33) comprising:
The network protocol stack of other processor (331) is used to realize procotol, and the data that upper layer application is partly received convert packet to according to procotol, converts the packet that receives to data and sends the upper layer application part to;
The communication drivers module (332) of other processor, be used for the packet that the network protocol stack (331) of other processor is sent here is forwarded to master processor (32), the packet that master processor (32) is sent is forwarded to the network protocol stack (331) of other processor;
Network interface card (31) is used for the packet that master processor (32) sends is forwarded to the outside, and the packet that receives is forwarded to master processor (32);
Communicator between the processor (34) is used for communicating by letter between master processor (32) and other processor (33).
2. as claimed in claim 1ly a kind ofly it is characterized in that based on polyprocessor virtual network card system the communicator between the described processor (34) is a pci bus.
3. as claimed in claim 1ly a kind ofly it is characterized in that based on polyprocessor virtual network card system the communicator between the described processor (34) is the VME bus.
4. one kind based on polyprocessor Microsoft Loopback Adapter communication means, it is characterized in that, comprises the following steps:
One, system's setting:
1) master processor (32) starts and initialization network interface card (31), notifies the communication drivers module (322) of master processor with network configuration information, and network interface card (31) is arranged to accept any mode data packet;
2) other processor (33) starts, the communication drivers module (322) that communication drivers module (332) and the communicator (34) processor between of network configuration information by this processor sent to master processor;
3) the communication drivers module (322) of master processor is safeguarded the network configuration information of all processors;
Two, receive the external data bag:
1) network interface card (31) is forwarded to the external data bag that receives the communication drivers module (322) of master processor;
2) the communication drivers module (322) of master processor is transmitted packet according to the destination address of packet;
Three, send packet to the outside:
1) network protocol stack of master processor (321) converts the upper layer application partial data to communication drivers module (322) that packet is forwarded to master processor;
2) network protocol stack of other processor (331) converts the upper layer application partial data to communication drivers module (322) that communication drivers module (332) and the communicator (34) processor between of packet by this processor sends to master processor;
3) the communication drivers module (322) of master processor is transmitted packet by network interface card driver module (323) and network interface card (31) to the outside with the packet that receives.
5. as claimed in claim 4 a kind ofly it is characterized in that based on polyprocessor Microsoft Loopback Adapter communication means, the communication drivers module (322) of master processor is transmitted packet in the described step 2:
If the destination address of packet is a broadcast address, then packet is forwarded in the communication drivers module (332) of other processor by the communicator between the processor (34), and via the communication drivers module (322 and 332) of all processors packet is forwarded in the network protocol stack (321 and 331) of all processors and handles;
If the destination address of packet is not a broadcast address, then the MAC Address according to packet is forwarded to the purpose processor with packet.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB021107637A CN100373374C (en) | 2002-01-29 | 2002-01-29 | Virtual network card system based on multiple processors and communication method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB021107637A CN100373374C (en) | 2002-01-29 | 2002-01-29 | Virtual network card system based on multiple processors and communication method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1435773A CN1435773A (en) | 2003-08-13 |
CN100373374C true CN100373374C (en) | 2008-03-05 |
Family
ID=27628277
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB021107637A Expired - Fee Related CN100373374C (en) | 2002-01-29 | 2002-01-29 | Virtual network card system based on multiple processors and communication method thereof |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100373374C (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101533360B (en) * | 2009-04-13 | 2012-01-25 | 华为技术有限公司 | A data processing method in multi-core environment and a veneer |
CN102055774B (en) * | 2009-11-10 | 2015-09-16 | 腾讯科技(深圳)有限公司 | Based on http server and the data processing method thereof of bag process |
CN102708091B (en) * | 2012-05-15 | 2015-05-13 | 江苏中科梦兰电子科技有限公司 | Double-CPU (central processing unit) system communication method based on virtual network card |
CN107770078A (en) * | 2017-10-13 | 2018-03-06 | 广州视源电子科技股份有限公司 | Interactive intelligent tablet computer, the transmission method of data, device and storage medium |
CN109194747A (en) * | 2018-09-10 | 2019-01-11 | 四川长虹电器股份有限公司 | Traffic mirroring method and system under cloud environment |
CN111045974A (en) * | 2019-11-19 | 2020-04-21 | 中国航空工业集团公司西安航空计算技术研究所 | Multiprocessor data interaction method based on exchange structure |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1303054A (en) * | 1999-10-28 | 2001-07-11 | 英业达集团(上海)电子技术有限公司 | Virtual network device and its communication method |
KR20010090037A (en) * | 2001-08-21 | 2001-10-18 | (주) 대성디지탈테크 | Wireless local area network connecting device |
-
2002
- 2002-01-29 CN CNB021107637A patent/CN100373374C/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1303054A (en) * | 1999-10-28 | 2001-07-11 | 英业达集团(上海)电子技术有限公司 | Virtual network device and its communication method |
KR20010090037A (en) * | 2001-08-21 | 2001-10-18 | (주) 대성디지탈테크 | Wireless local area network connecting device |
Also Published As
Publication number | Publication date |
---|---|
CN1435773A (en) | 2003-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101102305B (en) | Method and system for managing network information processing | |
US4082922A (en) | Statistical multiplexing system for computer communications | |
US7769031B2 (en) | Virtual machine system and method of network communication between virtual machines | |
US6697379B1 (en) | System for transmitting messages to improved stations, and corresponding processing | |
US8347008B2 (en) | Method and system for hardware based implementation of USB 1.1 over a high speed link | |
CN1934831A (en) | Integrated circuit and method of communication service mapping | |
CN101222430B (en) | High-speed multi-protocol data transmission system and method | |
US7263701B2 (en) | Interprocess communication method and apparatus | |
CN108768667B (en) | Method for inter-chip network communication of multi-core processor | |
WO2001061935A1 (en) | Cable modem having a programmable media access controller | |
CN100373374C (en) | Virtual network card system based on multiple processors and communication method thereof | |
CN110618956B (en) | BMC cloud platform resource pooling method and system | |
CN1276635C (en) | Priority enhanced information transfer device and its method | |
JP2004104789A (en) | Apparatus for providing inter-processor communication using tcp/ip in communication system | |
CN1773963A (en) | Technique for broadcasting messages on a point-to-point interconnect | |
CN102004716A (en) | System and method for realizing device sharing | |
CN111193650B (en) | Node receiving and dispatching control device based on SAE AS5643 standard | |
CN111290793B (en) | Method for initializing MOST network | |
CN1347062A (en) | Gigabit IP network card | |
CN1326066C (en) | Communication method and its device during process | |
US6912210B1 (en) | Data communication system and communication device used | |
KR100412237B1 (en) | A user-level sockets layer and method for interfacing communication using the sockets layer | |
CN115037795B (en) | Multi-machine communication method for embedded equipment | |
CN110875823B (en) | Data processing system and method for service plane | |
US8078784B2 (en) | Method and apparatus for data movement in a system on a chip |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080305 Termination date: 20140129 |