CN107070958A - A kind of mass data high-efficiency transmission method - Google Patents

A kind of mass data high-efficiency transmission method Download PDF

Info

Publication number
CN107070958A
CN107070958A CN201710467056.1A CN201710467056A CN107070958A CN 107070958 A CN107070958 A CN 107070958A CN 201710467056 A CN201710467056 A CN 201710467056A CN 107070958 A CN107070958 A CN 107070958A
Authority
CN
China
Prior art keywords
message
packet receiving
packet
estype
microcode
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.)
Granted
Application number
CN201710467056.1A
Other languages
Chinese (zh)
Other versions
CN107070958B (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.)
Hohai University HHU
Nanjing Water Conservancy and Hydrology Automatization Institute Ministry of Water Resources
Original Assignee
Hohai University HHU
Nanjing Water Conservancy and Hydrology Automatization Institute Ministry of Water Resources
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 Hohai University HHU, Nanjing Water Conservancy and Hydrology Automatization Institute Ministry of Water Resources filed Critical Hohai University HHU
Priority to CN201710467056.1A priority Critical patent/CN107070958B/en
Publication of CN107070958A publication Critical patent/CN107070958A/en
Application granted granted Critical
Publication of CN107070958B publication Critical patent/CN107070958B/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
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms

Landscapes

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

Abstract

The invention discloses a kind of mass data high-efficiency transmission method, kernel network interface card packet receiving circle queue is mapped to User space, User space directly operates circle queue packet receiving, User space reduces scheduling overhead to the switching of kernel state when evading packet receiving;Kernel supports many running-on packet receivings based on network interface card, and LPP is resident packet receiving thread, and LPP packet receiving threads are resident in APP, message is directly received, it is to avoid message is transmitted by LPP, Socket, reduces message transmissions link and message copying;Message is directly delivered to APP, reduces LPP links, saves more LPP redundancies table inquiry.This method significantly improves router platform protocol stack packet sending and receiving ability, improves the mass data transfers ability and performance of router platform.

Description

A kind of mass data high-efficiency transmission method
Technical field
The present invention relates to a kind of mass data high-efficiency transmission method of router platform, belong to Computers and Communication technology neck Domain.
Background technology
In router platform, the standard socket send and receive packets ability of general protocol stack is in 7000pps or so, and in magnanimity , it is necessary to which protocol stack send and receive packets ability is far longer than 7000pps in data transmission procedure.
The standard socket send and receive packets framework of protocol stack is as shown in figure 1, send and receive packets path is the void in Fig. 1 in the prior art Line, send and receive packets performance consumption is in LPP, Socket and in message procedure transmission.Pass through analysis, the standard of Current protocol stack Each stage performance loss of socket send and receive packets framework such as table one.
The performance loss of table one
The content of the invention
Goal of the invention:For problems of the prior art, the present invention provides a kind of mass data high-efficiency transmission method, Improve to improve message transmissions ability in terms of following 3:
1) scheduling overhead is reduced.User space is mapped to using by kernel network interface card packet receiving circle queue, User space is directly operated Circle queue packet receiving, User space reduces scheduling overhead to the switching of kernel state when evading packet receiving.
2) message is reduced to copy in the transmission of more cross-thread and message.Kernel supports many running-on packet receivings based on network interface card, LPP Resident packet receiving thread, LPP packet receiving threads are resident in APP, message is directly received, it is to avoid message is transmitted by LPP, Socket, Reduce message transmissions link and message copying.
3) LPP redundancies are reduced to table look-up.Message is directly delivered to APP, reduces LPP links, saves more LPP redundancy tables and look into Ask.
Technical scheme:A kind of mass data high-efficiency transmission method, sets up high-speed message transmission channel, and data are direct by NP APP PM send and receive packets threads are shipped to by internal Ethernet exchange channels.
1) high-speed message passage set up mode be data by NP after, using ICP/IP protocol, by socket passages, Into internal Ethernet exchange channels, then immediately proceed to APP PM send and receive packets threads, such data by shortest path straight It is connected to up to application layer, is used for application layer software.
2) in message repeating process, microcode determines protocol massages paths according to message distributing list, that is, microcode according to Message distributing list selection message walks Socket passages or high-speed message passage, realizes that message distribution is compatible in this way Former message distribution logic.
3) microcode reports message to network interface, application process (APP) use running-on packet receiving on network interface.To different processes or not Same agreement, microcode is created not to the different estype types of text encapsulation of above delivering newspaper, different processes according to different estype types Same running-on realizes distributed packet receiving;Also realized simultaneously using the message of different estype types is mutually isolated between different processes Distributed network interface packet receiving.
4) modification kernel network interface packet receiving driving, User space is mapped to by the annular buffer of packet receiving, is started in User space and is received Envelope curve journey directly reads packet receiving caching and carries out packet receiving.
Microcode selects message to walk Socket passages or high-speed message passage according to message distributing list, and it selects path side Formula is:Message before transmission, packet route flag byte is added in microcode, corresponding message road is added in message distributing list The corresponding packet route of footpath flag byte, microcode uses this flag byte, with reference to message distributing list, determines message data road Footpath, realizes the compatible former message distribution logic of message distribution in this way.
Microcode reports message to network interface, application process (APP) use running-on packet receiving on network interface.To different processes or difference Agreement, microcode creates different to the different estype types of text encapsulation of above delivering newspaper, different processes according to different estype types Running-on realize distributed packet receiving.Also realized simultaneously using the message of different estype types is mutually isolated between different processes Distributed network interface packet receiving, specific implementation is:Microcode adds a byte in heading in upper send, and the value of this byte is represented Different estype types, APP receives parsing after message by running-on and obtains this estype, is then created according to estype values Receiving thread, is sent in same packet receiving thread the message data bag comprising identical estype values for the thread process to realize The mutually isolated processing of message.
Kernel network interface packet receiving driving is changed, the annular buffer of packet receiving is mapped to User space, packet receiving is started in User space Thread directly reads packet receiving caching and carries out packet receiving, and specific implementation is:A packet receiving annular is created in Installed System Memory The mapping table of buffer addresses (pointer) and User space mark, when User space starts packet receiving thread, according to User space mark from this Annular buffer address is read in mapping table, then directly the reading of packet is realized from the address acquisition data.
Brief description of the drawings
Fig. 1 is standard socket send and receive packets framework;
Fig. 2 is high-speed message passage send and receive packets framework.
Embodiment
With reference to specific embodiment, the present invention is furture elucidated, it should be understood that these embodiments are merely to illustrate the present invention Rather than limitation the scope of the present invention, after the present invention has been read, various equivalences of the those skilled in the art to the present invention The modification of form falls within the application appended claims limited range.
A kind of mass data high-efficiency transmission method, sets up the high-speed message transmission channel marked such as Fig. 2 dotted lines, data warp Cross the PM send and receive packets threads that NP is directly shipped to APP by internal Ethernet exchange channels.
1) high-speed message passage set up mode be data by NP after, using ICP/IP protocol, by socket passages, Into internal Ethernet exchange channels, then immediately proceed to APP PM send and receive packets threads, such data by shortest path straight It is connected to up to application layer, is used for application layer software.
2) in message repeating process, microcode determines protocol massages paths according to message distributing list, that is, microcode according to Message distributing list selection message walks Socket passages or high-speed message passage, and its selection path fashion is:Message is in transmission Before, packet route flag byte is added in microcode, corresponding packet route flag byte correspondence is added in message distributing list Packet route, microcode uses this flag byte, with reference to message distributing list, determines message data path, in this way Realize the compatible former message distribution logic of message distribution.
3) microcode reports message to network interface, application process (APP) use running-on packet receiving on network interface.To different processes or not Same agreement, microcode is created not to the different estype types of text encapsulation of above delivering newspaper, different processes according to different estype types Same running-on realizes distributed packet receiving.Also realized simultaneously using the message of different estype types is mutually isolated between different processes Distributed network interface packet receiving, specific implementation is:Microcode adds a byte, the value generation of this byte in heading in upper send The different estype types of table, APP receives parsing after message by running-on and obtains this estype, is then created according to estype values Receiving thread is built, the message data bag comprising identical estype values is sent in same packet receiving thread and comes real for the thread process The mutually isolated processing of existing message.
4) modification kernel network interface packet receiving driving, User space is mapped to by the annular buffer of packet receiving, is started in User space and is received Envelope curve journey directly reads packet receiving caching and carries out packet receiving, and specific implementation is:A packet receiving annular is created in Installed System Memory The mapping table of buffer addresses (pointer) and User space mark, when User space starts packet receiving thread, according to User space mark from this Annular buffer address is read in mapping table, then directly the reading of packet is realized from the address acquisition data.
Using above-mentioned technical proposal, after the method implemented in step using the present invention, by actual test with testing Card result shows that the present invention can make the protocol stack transmitting-receiving ability of router platform reach 100000pps, be far longer than current association The 7000pps of the standard Socket send and receive packets abilities of stack is discussed, therefore invention significantly improves router platform protocol stack message Transmitting-receiving ability, improves the mass data transfers ability and transmission performance of router platform.

Claims (4)

1. a kind of mass data high-efficiency transmission method, it is characterised in that set up high-speed message transmission channel, data are direct by NP APP PM send and receive packets threads are shipped to by internal Ethernet exchange channels;
1)High-speed message passage set up mode be data by NP after, using ICP/IP protocol, pass through socket passages, enter Internal Ethernet exchange channels, then immediately proceed to APP PM send and receive packets threads, and such data are directly arrived by shortest path Up to application layer, used for application layer software;
2)In message repeating process, microcode determines protocol massages path according to message distributing list, that is, microcode is according to message Distributing list selection message walks Socket passages or high-speed message passage, and the compatible former report of message distribution is realized in this way Literary distribution logic;
3)Microcode reports message to network interface, application process (APP) use running-on packet receiving on network interface;
To different processes or different agreement, microcode is to the different estype types of text encapsulation of above delivering newspaper, and different processes are according to difference Estype types create different running-ons and realize distributed packet receivings;Simultaneously also using different estype types message mutually every From realizing the distributed network interface packet receiving between different processes;
4)Kernel network interface packet receiving driving is changed, the annular buffer of packet receiving is mapped to User space, packet receiving line is started in User space Journey directly reads packet receiving caching and carries out packet receiving.
2. mass data high-efficiency transmission method as claimed in claim 1, it is characterised in that microcode is selected according to message distributing list Message walks Socket passages or high-speed message passage, and its selection path fashion is:Message before transmission, is added in microcode Packet route flag byte, adds the corresponding packet route of corresponding packet route flag byte, microcode in message distributing list Using this flag byte, with reference to message distributing list, message data path is determined, realizes that message distribution is compatible in this way Former message distribution logic.
3. mass data high-efficiency transmission method as claimed in claim 1, it is characterised in that microcode reports message to network interface, should Running-on packet receiving on network interface is used with process (APP);
To different processes or different agreement, microcode is to the different estype types of text encapsulation of above delivering newspaper, and different processes are according to difference Estype types create different running-ons and realize distributed packet receivings;Simultaneously also using different estype types message mutually every From realizing the distributed network interface packet receiving between different processes, specific implementation is:Microcode adds one in heading in upper send Byte, the value of this byte represents different estype types, and APP receives parsing after message by running-on and obtains this Estype, then creates receiving thread according to estype values, the message data bag comprising identical estype values is sent to same The processing that message is mutually isolated is realized in packet receiving thread for the thread process.
4. mass data high-efficiency transmission method as claimed in claim 1, it is characterised in that modification kernel network interface packet receiving driving, The annular buffer of packet receiving is mapped to User space, starting packet receiving thread in User space directly reads packet receiving caching progress packet receiving, Specific implementation is:A packet receiving annular buffer address (pointer) and the mapping of User space mark are created in Installed System Memory Table, when User space starts packet receiving thread, annular buffer address, Ran Houzhi are read according to User space mark from the mapping table Connect from the address acquisition data to realize the reading of packet.
CN201710467056.1A 2017-06-19 2017-06-19 High-efficiency transmission method for mass data Active CN107070958B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710467056.1A CN107070958B (en) 2017-06-19 2017-06-19 High-efficiency transmission method for mass data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710467056.1A CN107070958B (en) 2017-06-19 2017-06-19 High-efficiency transmission method for mass data

Publications (2)

Publication Number Publication Date
CN107070958A true CN107070958A (en) 2017-08-18
CN107070958B CN107070958B (en) 2020-02-21

Family

ID=59594295

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710467056.1A Active CN107070958B (en) 2017-06-19 2017-06-19 High-efficiency transmission method for mass data

Country Status (1)

Country Link
CN (1) CN107070958B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109831394A (en) * 2017-11-23 2019-05-31 杭州华为数字技术有限公司 Data processing method, terminal and computer storage medium
CN110602154A (en) * 2018-06-13 2019-12-20 网宿科技股份有限公司 WEB server and method for processing data message thereof
CN111371723A (en) * 2018-12-07 2020-07-03 网宿科技股份有限公司 Method and device for realizing PPTP VPN network isolation under DPDK framework
CN114201317A (en) * 2021-12-16 2022-03-18 北京有竹居网络技术有限公司 Data transmission method, device, storage medium and electronic equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101178694A (en) * 2006-11-07 2008-05-14 莱克斯信息技术(北京)有限公司 Intel e1000 zero copy method
CN101494661A (en) * 2008-12-29 2009-07-29 深圳市同洲电子股份有限公司 Method and apparatus for reading data of protocol stack of transmission control protocol/internet protocol
CN101917350A (en) * 2010-09-13 2010-12-15 南京中兴特种软件有限责任公司 Network card drive-based zero copy Ethernet message capturing and transmitting implementation method under Linux
EP2887256A1 (en) * 2013-12-18 2015-06-24 ContinuumBridge Limited An apparatus for network bridging

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101178694A (en) * 2006-11-07 2008-05-14 莱克斯信息技术(北京)有限公司 Intel e1000 zero copy method
CN101494661A (en) * 2008-12-29 2009-07-29 深圳市同洲电子股份有限公司 Method and apparatus for reading data of protocol stack of transmission control protocol/internet protocol
CN101917350A (en) * 2010-09-13 2010-12-15 南京中兴特种软件有限责任公司 Network card drive-based zero copy Ethernet message capturing and transmitting implementation method under Linux
EP2887256A1 (en) * 2013-12-18 2015-06-24 ContinuumBridge Limited An apparatus for network bridging

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109831394A (en) * 2017-11-23 2019-05-31 杭州华为数字技术有限公司 Data processing method, terminal and computer storage medium
CN110602154A (en) * 2018-06-13 2019-12-20 网宿科技股份有限公司 WEB server and method for processing data message thereof
CN111371723A (en) * 2018-12-07 2020-07-03 网宿科技股份有限公司 Method and device for realizing PPTP VPN network isolation under DPDK framework
CN111371723B (en) * 2018-12-07 2022-06-17 网宿科技股份有限公司 Method and device for realizing PPTP VPN network isolation under DPDK framework
CN114201317A (en) * 2021-12-16 2022-03-18 北京有竹居网络技术有限公司 Data transmission method, device, storage medium and electronic equipment
CN114201317B (en) * 2021-12-16 2024-02-02 北京有竹居网络技术有限公司 Data transmission method and device, storage medium and electronic equipment

Also Published As

Publication number Publication date
CN107070958B (en) 2020-02-21

Similar Documents

Publication Publication Date Title
CN107070958A (en) A kind of mass data high-efficiency transmission method
CN102859973B (en) Method, apparatus and system for address resolution
CN107079017B (en) Message conversion method and device
CN100471162C (en) Method for releasing and processing virtual circuit information and supplier edge device
CN103391296B (en) A kind of controller, transponder and Path Setup method and system
JP7403635B2 (en) METHODS, APPARATUS AND SYSTEM FOR FORWARDING PACKETS IN SR NETWORK
CN105227466A (en) Communication processing method and device
CN104486244B (en) A kind of execution method and device of QoS policy
CN103685032B (en) Message forwarding method and network address translation services device
CN112491706B (en) Data message processing method and device, storage medium and electronic device
CN102065012B (en) Distributed system and method for processing IP message fragments
US20080037558A1 (en) Access Network System and Subscriber Data Route Control Method
WO2008089667A1 (en) Method and apparatus for reducing service loss in a link aggregation group
CN101534210A (en) A method and equipment for setting priority of multicast IP messages
CN1937568B (en) Method and device for realizing message priority-level mapping
CN101115001B (en) Host computer of ADSL router and PVC dynamic binding method
CN100539551C (en) The implementation method of static network address conversion-protocol conversion and gateway device
CN102868642A (en) Method and device for achieving NVGRE message transmission in application specific integrated circuit (ASIC)
CN108696430A (en) The route filtering method of LDP is realized in a kind of IPRAN systems
CN100463430C (en) Method for establishing a path, having a certain qos-class and a related access multiplexer
CN107231316A (en) The transmission method and device of message
CN102970218B (en) The method that MF-TDMA ICBM SHF satellite terminal carries out anonymous interconnection based on broadcast-type interface
CN104579959B (en) The method and apparatus for establishing the label switched path of SDN streams in an mpls network
CN107786444A (en) Method for message transmission and controller
CN106161269A (en) A kind of data pack transmission method, controller and switch

Legal Events

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