WO2017008385A1 - 一种协议帧传输方法、装置、节点设备以及系统 - Google Patents
一种协议帧传输方法、装置、节点设备以及系统 Download PDFInfo
- Publication number
- WO2017008385A1 WO2017008385A1 PCT/CN2015/089260 CN2015089260W WO2017008385A1 WO 2017008385 A1 WO2017008385 A1 WO 2017008385A1 CN 2015089260 W CN2015089260 W CN 2015089260W WO 2017008385 A1 WO2017008385 A1 WO 2017008385A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- tcp
- data
- packet
- last
- frame
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0083—Formatting with frames or packets; Protocol or part of protocol for error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1642—Formats specially adapted for sequence numbers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/14—Charging, metering or billing arrangements for data wireline or wireless communications
- H04L12/1403—Architecture for metering, charging or billing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/14—Charging, metering or billing arrangements for data wireline or wireless communications
- H04L12/1403—Architecture for metering, charging or billing
- H04L12/1407—Policy-and-charging control [PCC] architecture
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/166—IP fragmentation; TCP segmentation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M15/00—Arrangements for metering, time-control or time indication ; Metering, charging or billing arrangements for voice wireline or wireless communications, e.g. VoIP
- H04M15/66—Policy and charging system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/19—Flow control; Congestion control at layers above the network layer
- H04L47/193—Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/34—Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/36—Flow control; Congestion control by determining packet size, e.g. maximum transfer unit [MTU]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/16—Implementing security features at a particular protocol layer
- H04L63/166—Implementing security features at a particular protocol layer at the transport layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Definitions
- the present invention relates to the field of computer application technologies, and in particular, to a protocol frame transmission method, apparatus, node device, and system.
- HTTP Hyper Text Transfer Protocol
- the first node device initiates a request to establish a TCP (Transmission Control Protocol) connection to the designated port of the second node device, and the second node device listens to the request sent by the first node device on the designated port, when the second node device Upon receiving the request, the second node device sends a response message to the first node device.
- HTTP 2.0 refers to HTTP with version 2.0.
- the basic protocol unit of HTTP2.0 is HTTP2.0 frame.
- the HTTP2.0 frame refers to the high-level data sent by the application layer to the transport layer. It consists of a 9-byte frame header and a payload (payload).
- the frame header can include length. Field.
- HTTP 2.0 can improve resource utilization and reduce protocol frame transmission delay by header field compression and multiplexing. Multiplexing is achieved by subdividing a TCP connection into multiple HTTP 2.0 streams and allocating multiple HTTP 2.0 frames on an HTTP 2.0 stream.
- An HTTP 2.0 frame is encapsulated into at least one TCP packet according to the MSS (Management Support System).
- the MSS is used to negotiate the maximum data length that each TCP packet can carry during the communication process when the TCP connection is established.
- the application layer sends the HTTP2.0 frame to the transport layer, and the transport layer encapsulates the HTTP2.0 frame into a TCP packet according to the MSS, and the length of the data portion of each TCP packet is the MSS.
- the HTTP2.0 frame may include the first frame, the second frame, and the third frame.
- the data amount of the first frame and the second frame are both 3000 bytes, and the length of the MSS is 1460 bytes, and then the transmission is performed.
- the layer may encapsulate the above HTTP2.0 frame into five TCP data packets according to the MSS, wherein the data part of the first TCP data packet only includes the data of the first frame, and the data part of the second TCP data packet only includes the data of the first frame.
- the data portion of the third TCP packet includes data of the first frame and data of the second frame, and the data portion of the fourth TCP packet is only included The data of the second frame is included.
- the data portion of the third TCP packet includes data of the first frame and data of the second frame.
- the embodiment of the invention provides a protocol frame transmission method, device, node device and system, which can ensure that the data part of a TCP data packet only includes data of one protocol frame.
- a first aspect of the present invention provides a method for transmitting a protocol frame, including:
- the data part of the last TCP data packet has a length of 0, thereby indicating that the last TCP data packet is the last TCP data packet corresponding to the protocol frame.
- the header of the last TCP data packet includes a sending sequence number and a confirmation sequence number
- the sending sequence number is the same as the sending sequence number of the initial TCP data packet corresponding to the next protocol frame, and the acknowledgement sequence number is confirmed according to the received data sent by the node device.
- the header of the last TCP data packet includes a sending sequence number and a confirmation sequence number
- the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the next protocol frame, and the acknowledgement sequence number is the same as the acknowledgement sequence number of the previous data packet of the last TCP packet.
- the method before the encapsulating a protocol frame into the at least one TCP packet, the method further includes:
- the protocol frame includes terminal identification information
- the terminal identification information is used to send the at least one TCP data packet corresponding to the protocol frame to the node device corresponding to the terminal identification information.
- the encapsulating a protocol frame into the at least one TCP data packet includes:
- the data portion of the added TCP packet has a length of zero.
- the encapsulating a protocol frame into the at least one TCP data packet includes:
- the last TCP packet containing the data includes only the data of the protocol frame, and the indication information is The amount of data for the last TCP packet containing data.
- the indication information is identifier information included in a header of the last TCP packet.
- the data part of the at least one TCP data packet only includes the protocol Frame data.
- the encapsulating a protocol frame into at least one TCP data packet includes:
- the acknowledgment sequence number of the TCP data packet sent by the node device is carried in the TCP data packet to be sent in the at least one TCP data packet, where the acknowledgment sequence number is used to indicate that the TCP data packet sent by the node device is correctly received.
- the tenth possible implementation before the one protocol frame is encapsulated into the at least one TCP data packet, also includes:
- the notification message is used for the last TCP data packet in the at least one TCP data packet, and the indication information is used to indicate that the last TCP data packet is the The last TCP packet corresponding to the protocol frame.
- the notification information is carried in an HTTP 2.0 header field or an HTTP 2.0 setting frame of the protocol frame.
- the header of the at least one TCP data packet includes data type information
- the data type information is used to indicate a data type of a data portion of the TCP packet.
- the protocol frame is a TLS frame or an HTTP frame.
- the protocol frame is an HTTP frame
- the encapsulating a protocol frame into at least one TCP data packet includes:
- the data packet is the last TCP packet corresponding to the HTTP frame.
- the protocol frame is an HTTP frame
- the encapsulating a protocol frame into at least one TCP data packet includes:
- each of the TLS frames Separating each of the TLS frames into at least one TCP data packet, and the last one of the at least one TCP data packet includes indication information, where the indication information is used to indicate that the last TCP data packet is the The last TCP packet corresponding to the TLS frame.
- the protocol frame is a TLS frame
- the TLS frame includes Data type information, the data type information being used to indicate a data type of the TLS frame.
- the protocol frame is encapsulated into at least one TCP data. Before the package, it also includes:
- a second aspect of the present invention provides a protocol frame parsing method, including:
- the last TCP packet in the at least one TCP packet includes indication information, where the indication information is used to indicate the last TCP packet The last TCP packet corresponding to the protocol frame;
- Data parsing is performed on the next protocol frame from the start TCP packet.
- the determining, according to the indication information, the start TCP data packet corresponding to the next protocol frame includes:
- the determining, according to the indication information, the starting TCP data packet corresponding to the next protocol frame includes:
- the next TCP packet is the starting TCP packet corresponding to the next protocol frame.
- the determining, according to the indication information, the starting TCP data packet corresponding to the next protocol frame includes:
- the next TCP packet is the starting TCP packet corresponding to the next protocol frame.
- the at least one TCP data corresponding to the protocol frame sent by the receiving node device Before the package also includes:
- the method further includes:
- the received TCP packet carries the TCP packet sent to the node device
- the serial number is recognized, it is determined that the node device correctly receives the TCP data packet sent to the node device according to the confirmation sequence number.
- the determining, according to the indication information, determining a next protocol frame Before starting the TCP packet it also includes:
- the header of the at least one TCP data packet includes data type information
- the data parsing of the next protocol frame from the starting TCP data packet includes:
- the starting the TCP packet to the next one Before the protocol frame is parsed it also includes:
- each TCP data packet corresponding to the next protocol frame belongs to the same HTPP2 .0 stream;
- the method further includes:
- a third aspect of the present invention provides a data transmission method, including:
- the data portion of the last TCP packet has a length of 0, thereby indicating that the last TCP packet is the last TCP packet corresponding to the object data.
- the header of the last TCP data packet includes a sending sequence number and a confirmation sequence number
- the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the object data of the next URI, and the confirmation sequence number is confirmed according to the received data sent by the node device.
- the header of the last TCP data packet includes a sending sequence number and a confirmation sequence number
- the transmission sequence number is the same as the transmission sequence number of the initial TCP packet corresponding to the object data of the next URI, and the confirmation sequence number is the same as the confirmation sequence number of the previous data packet of the last TCP packet.
- the method before the object data of the URI is encapsulated into the at least one TCP data packet, the method further includes:
- the object data includes terminal identification information
- the terminal identification information is used to send at least one TCP data packet corresponding to the object data to a node device corresponding to the terminal identification information.
- the encapsulating the object data of one URI into the at least one TCP data packet includes:
- the data portion of the added TCP packet has a length of zero.
- the encapsulating the object data of one URI into the at least one TCP data packet includes:
- the last TCP packet containing the data includes only the object data, and the indication information is the last one.
- the amount of data for the TCP packet that contains the data is less than the preset MSS
- the indication information is identifier information included in a header of the last TCP packet.
- the data part of the at least one TCP data packet only includes the object data.
- the encapsulating the object data of one URI into at least one TCP data packet includes:
- the acknowledgment sequence number of the TCP data packet sent by the node device is carried in the TCP data packet to be sent in the at least one TCP data packet, where the acknowledgment sequence number is used to indicate that the TCP data packet sent by the node device is correctly received.
- the object data of one URI is encapsulated into at least one TCP data packet Previously, it also included:
- the notification message is used for the last TCP data packet in the at least one TCP data packet, and the indication information is used to indicate that the last TCP data packet is the The last TCP packet corresponding to the object data.
- the header of the at least one TCP data packet includes data type information
- the data type information is used to indicate a data type of a data portion of the TCP packet.
- the object data is HTTP 1.1 data or HTTP 1.0 data.
- the object data of a URI is encapsulated into at least one TCP Packets, including:
- One TLS frame is the last TLS frame corresponding to the object data
- the data packet is the last TCP data packet corresponding to the object data.
- the object data of one URI is encapsulated into at least one TCP Packets, including:
- each of the TLS frames Separating each of the TLS frames into at least one TCP data packet, and the last one of the at least one TCP data packet includes indication information, where the indication information is used to indicate that the last TCP data packet is the The last TCP packet corresponding to the TLS frame.
- each of the TLS frames includes data type information, where the data type information is used to indicate the The data type of the TLS frame.
- the object data of a URI is encapsulated into at least one TCP Before the packet, it also includes:
- the object data is compressed into at least one compressed package, and the at least one compressed package includes only the object data.
- a fourth aspect of the present invention provides a data parsing method, including:
- At least one TCP data packet that encapsulates object data of one URI receives at least one TCP data packet that encapsulates object data of one URI, and the last one of the at least one TCP data packet includes indication information, where the indication information is used to indicate the last TCP
- the data packet is the last TCP data packet corresponding to the object data, and the object data is used to indicate the resource identified by the URI;
- Data analysis is performed on the object data of the next URI from the start TCP packet.
- the determining, according to the indication information, the initial TCP data packet corresponding to the object data of the next URI includes:
- the next TCP packet is the starting TCP packet corresponding to the object data of the next URI.
- the determining, according to the indication information, the initial TCP data packet corresponding to the object data of the next URI includes:
- the next TCP packet is the starting TCP packet corresponding to the object data of the next URI.
- the determining, according to the indication information, the initial TCP data packet corresponding to the object data of the next URI includes:
- the next TCP packet is the starting TCP packet corresponding to the object data of the next URI.
- the object data of the URI sent by the receiving node device is encapsulated into Before at least one TCP packet, it also includes:
- the method further includes:
- the received TCP packet carries the acknowledgement sequence number of the TCP packet sent to the node device, determining, according to the acknowledgement sequence number, that the node device correctly receives the TCP packet sent to the node device.
- the determining, according to the indication information, determining object data of a next URI Before the corresponding starting TCP packet it also includes:
- the header of the at least one TCP data packet includes a data type information
- the data parsing of the object data of the next URI starting from the starting TCP data packet includes:
- a fifth aspect of the present invention provides a protocol frame transmission apparatus, including:
- An encapsulating unit configured to encapsulate a protocol frame into at least one TCP data packet, where a last one of the at least one TCP data packet includes indication information, where the indication information is used to indicate that the last TCP data packet is The last TCP packet corresponding to the protocol frame;
- a sending unit configured to send the at least one TCP data packet to the node device.
- the data part of the last TCP data packet has a length of 0, thereby indicating that the last TCP data packet is the last TCP data packet corresponding to the protocol frame.
- the header of the last TCP data packet includes a sending sequence number and a confirmation sequence number
- the sending sequence number is the same as the sending sequence number of the initial TCP data packet corresponding to the next protocol frame, and the acknowledgement sequence number is confirmed according to the received data sent by the node device.
- the header of the last TCP data packet includes a sending sequence number and a confirmation sequence number
- the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the next protocol frame, and the acknowledgement sequence number is the same as the acknowledgement sequence number of the previous data packet of the last TCP packet.
- the acquiring unit is configured to obtain the management before the encapsulating unit encapsulates the protocol frame into the at least one TCP data packet.
- the protocol frame sent by the terminal, the protocol frame includes terminal identification information, and the terminal identification information is used to send the at least one TCP data packet corresponding to the protocol frame to the node device corresponding to the terminal identification information.
- the encapsulating unit is configured to include data in a last one corresponding to the protocol frame Add a TCP packet after the TCP packet, the length of the data portion of the added TCP packet Degree is 0.
- the encapsulating unit is configured to: when a data volume of a last TCP packet including data corresponding to the protocol frame is smaller than a preset MSS, The last TCP packet containing data includes only data of the protocol frame, and the indication information is the amount of data of the last TCP packet containing data.
- the indication information is identifier information included in a header of the last TCP packet.
- the data part of the at least one TCP data packet only includes the protocol Frame data.
- the method further includes:
- a receiving unit configured to receive a TCP data packet sent by the node device
- the encapsulating unit is configured to carry, in the TCP data packet to be sent in the at least one TCP data packet, an acknowledgement sequence number of the TCP data packet sent by the node device, where the acknowledgement sequence number is used to indicate that the node is correctly received.
- the TCP packet sent by the device is configured to carry, in the TCP data packet to be sent in the at least one TCP data packet, an acknowledgement sequence number of the TCP data packet sent by the node device, where the acknowledgement sequence number is used to indicate that the node is correctly received.
- the sending unit is further used by the encapsulating unit Before the protocol frame is encapsulated into the at least one TCP data packet, sending a notification message to the node device, where the notification message is used for the last TCP data packet in the at least one TCP data packet, including indication information, the indication information And indicating that the last TCP data packet is the last TCP data packet corresponding to the protocol frame.
- the method further includes: the notification information is carried in an HTTP 2.0 header field or an HTTP 2.0 setting frame of the protocol frame. .
- the method further includes: the header of the at least one TCP packet includes Data type information, the data type information being used to indicate a data type of a data portion of the TCP packet.
- the protocol frame is a TLS frame or an HTTP frame.
- the protocol frame is an HTTP frame
- the encapsulating unit is configured to encapsulate the HTTP frame into at least one TLS frame, and a last TLS frame in the at least one TLS frame is a last TLS frame corresponding to the HTTP frame; and the at least one TLS frame is to be used. All the TLS frames in the package are encapsulated into at least one TCP data packet, and the last one of the at least one TCP data packet includes indication information, the indication information is used to indicate that the last TCP data packet is the HTTP frame Corresponding to the last TCP packet.
- the protocol frame is an HTTP frame
- the encapsulating unit is configured to encapsulate the HTTP frame into at least one TLS frame, and a last TLS frame in the at least one TLS frame is a last TLS frame corresponding to the HTTP frame; respectively, each of the TLS frames Encapsulating into at least one TCP data packet, the last one of the at least one TCP data packet includes indication information, the indication information is used to indicate that the last TCP data packet is the last TCP corresponding to the TLS frame data pack.
- the protocol frame is a TLS frame
- the TLS frame includes Data type information, the data type information being used to indicate a data type of the TLS frame.
- the method further includes:
- a compression unit configured to compress the protocol frame into at least one compressed packet before the encapsulating unit encapsulates the protocol frame into at least one TCP packet, where the at least one compressed packet includes only the protocol frame.
- a sixth aspect of the present invention provides a node device, including a processor, a memory, and a network interface, wherein the memory stores a set of program codes, and the processor is configured to call program code stored in the memory, Used to do the following:
- the last TCP data packet includes indication information, where the indication information is used to indicate that the last TCP data packet is the last TCP data packet corresponding to the protocol frame;
- a seventh aspect of the present invention provides a protocol frame parsing apparatus, including:
- a receiving unit configured to receive, by the node device, at least one TCP packet that encapsulates a protocol frame, where a last TCP packet in the at least one TCP packet includes indication information, where the indication information is used to indicate the The last TCP packet is the last TCP packet corresponding to the protocol frame;
- a determining unit configured to determine, according to the indication information, a starting TCP data packet corresponding to a next protocol frame
- a parsing unit configured to perform data parsing on the next protocol frame from the start TCP packet.
- the determining unit is configured to determine, when the length of the data part of the last TCP data packet is 0, that the next TCP data packet is corresponding to the next protocol frame. Start TCP packets.
- the determining unit is configured to determine, when the data volume of the last TCP packet is less than a preset MSS, determine that the next TCP packet is The starting TCP packet corresponding to the next protocol frame.
- the determining unit is configured to determine, when the header of the last TCP packet includes the identifier information, that the next TCP packet is the The starting TCP packet corresponding to the next protocol frame.
- the fourth possible implementation manner further includes:
- a sending unit configured to send, by the receiving unit, a TCP data packet to the node device before receiving the at least one TCP data packet corresponding to the protocol frame sent by the node device;
- the determining unit is further configured to: when the received TCP packet carries the acknowledgement sequence number of the TCP packet sent to the node device, determine, according to the acknowledgement sequence number, that the node device correctly receives the TCP packets sent by the node device.
- the receiving unit is further used by the determining unit according to the Instructing information, before determining a starting TCP data packet corresponding to the next protocol frame, receiving a notification message sent by the node device;
- the device also includes:
- an obtaining unit configured to acquire, according to the notification information, indication information in the last TCP data packet corresponding to the protocol frame.
- the header of the at least one TCP data packet includes data type information
- the parsing unit is configured to acquire, according to the data type information, a data type of a data part of the TCP data packet.
- the determining unit is further configured to: Before the initial TCP packet performs data parsing on the next protocol frame, it is determined that the next protocol frame is compressed by the static table to implement the header field.
- each TCP data packet corresponding to the next protocol frame belongs to the same HTTP2 .0 stream;
- the protocol frame transmission device further includes:
- control unit configured to: after the parsing unit performs data parsing on the next protocol frame from the start TCP packet, when the parsing of the next protocol frame data fails, suspending the HTTP2.0
- the protocol frame included in the stream performs data parsing.
- An eighth aspect of the present invention provides a node device, including a processor, a memory, and a network interface, wherein the memory stores a set of program codes, and the processor is configured to call program code stored in the memory, Used to do the following:
- At least one TCP data packet that encapsulates one protocol frame receives, by the node device, at least one TCP data packet that encapsulates one protocol frame, and the last one of the at least one TCP data packet includes indication information, the indication information And configured to indicate that the last TCP data packet is the last TCP data packet corresponding to the protocol frame;
- Data parsing is performed on the next protocol frame from the start TCP packet.
- a ninth aspect of the present invention provides a data transmission apparatus, including:
- An encapsulating unit configured to encapsulate object data of one URI into at least one TCP data packet, and a last one of the at least one TCP data packet includes indication information, where the indication information is used to indicate the last TCP data
- the packet is the last TCP data packet corresponding to the object data, and the object data is used to indicate a resource identified by the URI;
- a sending unit configured to send the at least one TCP data packet to the node device.
- the data portion of the last TCP packet has a length of 0, thereby indicating that the last TCP packet is the last TCP packet corresponding to the object data.
- the header of the last TCP data packet includes a sending sequence number and a confirmation sequence number
- the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the object data of the next URI, and the confirmation sequence number is confirmed according to the received data sent by the node device.
- the header of the last TCP data packet includes a sending sequence number and an acknowledgement sequence number
- the transmission sequence number is the same as the transmission sequence number of the initial TCP packet corresponding to the object data of the next URI, and the confirmation sequence number is the same as the confirmation sequence number of the previous data packet of the last TCP packet.
- the method further includes:
- An acquiring unit configured to acquire the object data sent by the management terminal, where the encapsulating unit encapsulates the object data into the at least one TCP data packet, where the object data includes terminal identification information, and the terminal identification information is used by And indicating to send the at least one TCP data packet corresponding to the object data to the node device corresponding to the terminal identifier information.
- the encapsulating unit is configured to include data in a last one corresponding to the object data A TCP packet is added after the TCP packet, and the length of the data portion of the added TCP packet is zero.
- the encapsulating unit is configured to: when a data quantity of a last TCP packet including data corresponding to the object data is smaller than a preset MSS, The last TCP packet containing data includes only the object data, and the indication information is the data amount of the last TCP packet containing the data.
- the indication information is identifier information included in a header of the last TCP data packet.
- the data part of the at least one TCP data packet only includes the object data.
- the ninth possible implementation manner further includes:
- a receiving unit configured to receive a TCP data packet sent by the node device
- the encapsulating unit is configured to carry, in the TCP data packet to be sent in the at least one TCP data packet, an acknowledgement sequence number of the TCP data packet sent by the node device, where the acknowledgement sequence number is used to indicate that the node is correctly received.
- the TCP packet sent by the device is configured to carry, in the TCP data packet to be sent in the at least one TCP data packet, an acknowledgement sequence number of the TCP data packet sent by the node device, where the acknowledgement sequence number is used to indicate that the node is correctly received.
- the sending unit is further used by the encapsulating unit Before the object data is encapsulated into the at least one TCP data packet, sending a notification message to the node device, where the notification message is used for the last TCP data packet in the at least one TCP data packet, including indication information, the indication information And is used to indicate that the last TCP data packet is the last TCP data packet corresponding to the object data.
- the header of the at least one TCP data packet includes data type information
- the data type information is used to indicate a data type of a data portion of the TCP packet.
- the object data is HTTP 1.1 data or HTTP 1.0 data.
- the encapsulating unit is configured to encapsulate the object data Forming at least one TLS frame, the last TLS frame in the at least one TLS frame being the last TLS frame corresponding to the object data; and encapsulating all TLS frames in the at least one TLS frame into at least one TCP data packet,
- the last TCP packet in the at least one TCP packet includes indication information, and the indication information is used to indicate that the last TCP packet is the last TCP packet corresponding to the object data.
- the encapsulating unit is configured to encapsulate the object data Forming at least one TLS frame, the last TLS frame in the at least one TLS frame being the last TLS frame corresponding to the object data; respectively encapsulating each of the TLS frames into at least one TCP data packet, the at least one TCP
- the last TCP packet in the data packet includes indication information for indicating that the last TCP data packet is the last TCP data packet corresponding to the TLS frame.
- each of the TLS frames includes data type information, where the data type information is used to indicate the The data type of the TLS frame.
- the method further includes:
- a compression unit configured to compress the object data into at least one compressed package before the encapsulating unit encapsulates the object data into at least one TCP data packet, where the at least one compressed package includes only the object data.
- a tenth aspect of the present invention provides a node device, including a processor, a memory, and a network interface, wherein the memory stores a set of program codes, and the processor is configured to call program code stored in the memory, Used to do the following:
- the last TCP packet in the data packet includes indication information, the indication information is used to indicate that the last TCP data packet is the last TCP data packet corresponding to the object data, and the object data is used to indicate the URI. Identifyed resources;
- An eleventh aspect of the present invention provides a data analysis apparatus, including:
- a receiving unit configured to receive, by the node device, at least one TCP data packet that encapsulates object data of one URI, where a last one of the at least one TCP data packet includes indication information, where the indication information is used to indicate The last TCP data packet is the last TCP data packet corresponding to the object data, and the object data is used to indicate a resource identified by the URI;
- a determining unit configured to determine, according to the indication information, a starting TCP data packet corresponding to object data of a next URI;
- a parsing unit configured to perform data parsing on the object data of the next URI starting from the starting TCP packet.
- the determining unit is configured to: when the length of the data part of the last TCP packet is 0, determine that the next TCP data packet corresponds to the object data of the next URI The starting TCP packet.
- the determining unit is configured to determine a next TCP packet when the data volume of the last TCP packet is less than a preset MSS.
- the starting TCP packet corresponding to the object data of the next URI.
- the determining unit is configured to determine, when the header of the last TCP packet includes the identifier information, that the next TCP packet is The starting TCP packet corresponding to the object data of the next URI is described.
- the fourth possible implementation manner further includes:
- a sending unit configured to send, by the receiving unit, a TCP data packet to the node device before receiving the at least one TCP data packet sent by the node device;
- the determining unit is further configured to: when the received TCP data packet carries an acknowledgement sequence number of the TCP data packet sent to the node device, determine, according to the acknowledgement sequence number, that the node device is positive It does receive TCP packets sent to the node device.
- the receiving unit is further configured to use the determining unit according to Receiving, by the indication information, a notification message sent by the node device, before determining a start TCP data packet corresponding to the object data of the next URI;
- the device also includes:
- an obtaining unit configured to acquire, according to the notification message, indication information in the last TCP data packet corresponding to the object data.
- the header of the at least one TCP packet includes data type information ;
- the parsing unit is configured to acquire, according to the data type information, a data type of a data part of the TCP data packet.
- a twelfth aspect of the present invention provides a node device, including a processor, a memory, and a network interface, wherein the memory stores a set of program codes, and the processor is configured to call program code stored in the memory. Used to do the following:
- At least one TCP data packet that encapsulates object data of one URI receives at least one TCP data packet that encapsulates object data of one URI, and the last one of the at least one TCP data packet includes indication information, where the indication information is used to indicate the last TCP
- the data packet is the last TCP data packet corresponding to the object data, and the object data is used to indicate the resource identified by the URI;
- Data analysis is performed on the object data of the next URI from the start TCP packet.
- a thirteenth aspect of the present invention provides a protocol frame transmission system, comprising the protocol frame encapsulation apparatus of the fifth aspect, and the protocol frame parsing apparatus of the seventh aspect.
- a fourteenth aspect of the present invention provides a protocol frame transmission system, comprising the data transmission device according to the ninth aspect, and the data analysis device according to the eleventh aspect.
- the last TCP data packet in the at least one TCP data packet includes indication information, where the indication information is used to indicate that the last TCP data packet is corresponding to the protocol frame.
- the last TCP packet which sends at least one TCP packet to the node device, ensures that the data portion of a TCP packet includes only data for one protocol frame.
- FIG. 1 is a schematic flowchart of a protocol frame transmission method according to a first embodiment of the present invention
- FIG. 2 is a schematic flowchart of a protocol frame parsing method according to an embodiment of the present invention
- FIG. 3 is a schematic flowchart of a method for transmitting a protocol frame according to a second embodiment of the present invention
- FIG. 4 is a schematic flowchart of a method for transmitting a protocol frame according to a third embodiment of the present invention.
- FIG. 5 is a schematic flowchart diagram of a protocol frame transmission method according to a fourth embodiment of the present invention.
- FIG. 6 is a schematic flowchart of a protocol frame transmission method according to a fifth embodiment of the present invention.
- 7A is a schematic diagram of an interface of a conventional protocol frame encapsulated into a TCP data packet
- FIG. 7B is a schematic diagram of an interface of a protocol frame encapsulated into a TCP data packet according to an embodiment of the present disclosure
- FIG. 7C is a schematic structural diagram of a TCP data packet according to an embodiment of the present invention.
- FIG. 7D is a schematic diagram of an interface for setting a frame according to an embodiment of the present invention.
- FIG. 7E is a schematic structural diagram of an HTTP frame according to an embodiment of the present disclosure.
- FIG. 7F is a schematic structural diagram of a TLS frame according to an embodiment of the present invention.
- 7G is a schematic diagram of an interface of another protocol frame encapsulated into a TCP data packet according to an embodiment of the present disclosure
- FIG. 7H is a schematic diagram of another interface frame encapsulated into a TCP data packet according to an embodiment of the present disclosure.
- 7I is a schematic diagram of an interface for packaging object data into a TCP data packet according to an embodiment of the present invention.
- 7J is a schematic diagram of another interface for packaging object data into a TCP data packet according to an embodiment of the present invention.
- FIG. 8 is a schematic structural diagram of a protocol frame transmission apparatus according to an embodiment of the present disclosure.
- FIG. 9 is a schematic structural diagram of a node device according to a first embodiment of the present invention.
- FIG. 10 is a schematic structural diagram of a protocol frame parsing apparatus according to an embodiment of the present disclosure.
- FIG. 11 is a schematic structural diagram of a node device according to a second embodiment of the present invention.
- FIG. 12 is a schematic structural diagram of a protocol frame transmission system according to an embodiment of the present disclosure.
- FIG. 13 is a schematic flowchart diagram of a data transmission method according to an embodiment of the present disclosure.
- FIG. 14 is a schematic flowchart diagram of a data parsing method according to an embodiment of the present disclosure.
- FIG. 15 is a schematic structural diagram of a data transmission apparatus according to an embodiment of the present disclosure.
- FIG. 16 is a schematic structural diagram of a node device according to a third embodiment of the present invention.
- FIG. 17 is a schematic structural diagram of a data analysis apparatus according to an embodiment of the present disclosure.
- FIG. 18 is a schematic structural diagram of a node device according to a fourth embodiment of the present invention.
- FIG. 19 is a schematic structural diagram of a data transmission system according to an embodiment of the present invention.
- the protocol frame is encapsulated into at least one TCP data packet according to the MSS, and the data portion of the same TCP data packet includes data of different protocol frames. Further, after the at least one TCP packet is sent to the node device, the node device cannot identify the boundary of each protocol frame, and thus cannot implement data parsing for each protocol frame.
- An embodiment of the present invention provides a protocol frame transmission method, which encapsulates a protocol frame into at least one TCP data packet, and the last TCP data packet in at least one TCP data packet includes indication information.
- the indication information is used to indicate that the last TCP data packet is the last TCP data packet corresponding to the protocol frame, and at least one TCP data packet is sent to the node device to ensure that the data portion of one TCP data packet includes only data of one protocol frame.
- the protocol frame mentioned in the embodiment of the present invention may include an HTTP frame or a TLS (Transport Layer Security) frame.
- the HTTP frame may be an HTTP 2.0 frame, the HTTP 2.0 is located at the application layer, and the HTTP 2.0 frame is data in the application layer.
- the HTTP frame may be encapsulated into at least one TCP packet, and the last of the at least one TCP packet.
- a TCP packet includes indication information indicating that the last TCP packet is the last TCP packet corresponding to the HTTP frame.
- TLS is located above the transport layer below the application layer, and refers to a security protocol that provides encryption, identity authentication, and data integrity guarantee for network communication, and can encapsulate an HTTP frame into at least one TLS frame, at least one.
- the last TLS frame in the TLS frame includes indication information indicating that the last TLS frame is the last TLS frame corresponding to the HTTP frame.
- a TLS frame may be encapsulated into at least one TCP data packet, and the last TCP data packet in the at least one TCP data packet includes indication information, where the indication information is used to indicate that the last TCP data packet is the last TCP corresponding to the protocol frame. data pack.
- the protocol frame before a protocol frame is encapsulated into at least one TCP data packet, the protocol frame may be compressed into at least one compressed packet, and at least one compressed packet includes only the protocol frame.
- the node device mentioned in the embodiment of the present invention may include a client or a server or the like, such as a web browser, an email client, or an email server.
- the protocol frame transmission method mentioned in the embodiment of the present invention may be implemented in a terminal such as a server, a client, a proxy client, or a proxy server, and is not limited by the embodiment of the present invention.
- FIG. 1 is a schematic flowchart of a method for transmitting a protocol frame according to a first embodiment of the present invention.
- the method for encapsulating a protocol frame in the embodiment of the present invention may include:
- S101 Encapsulate a protocol frame into at least one TCP data packet, and the last TCP data packet in the at least one TCP data packet includes indication information.
- the terminal may encapsulate a protocol frame into at least one TCP data packet, and the last TCP data packet in the at least one TCP data packet includes indication information, where the indication information is used to indicate that the last TCP data packet is the last TCP data packet corresponding to the protocol frame. .
- the terminal can encapsulate the first frame (frame1) into three TCPs.
- the data packet encapsulates the second frame (frame2) into three TCP data packets, wherein the starting point of the first frame is the starting point of the TCP1 data packet, the starting point of the second frame is the starting point of the TCP4 data packet, and the TCP1 data packet and the TCP2 data packet.
- the data part of the TCP3 data packet only includes the data of the first frame
- the data part of the TCP4 data packet, the TCP5 data packet, and the TCP6 data packet only includes the data of the second frame.
- the data volume of the first protocol frame and the second protocol frame are both 3000 bytes, and the preset MSS negotiated between the terminal and the node device is 1460 bytes, and the terminal can encapsulate the first protocol frame into three TCP data.
- the length of the data portion of the first TCP packet is 1460 bytes
- the length of the data portion of the second TCP packet is 1460 bytes
- the length of the data portion of the third TCP packet is 80 bytes, of which the second
- the TCP packet includes indication information indicating that the second TCP packet is the last TCP packet corresponding to the first protocol frame.
- the terminal can encapsulate the second protocol frame into three TCP data packets, the data portion of the fourth TCP data packet has a length of 1460 bytes, and the data portion of the fifth TCP data packet has a length of 1460 bytes, and a sixth.
- the data portion of the TCP packet has a length of 80 bytes, wherein the sixth TCP packet includes indication information, and the indication information is used to indicate that the fourth TCP packet is the last TCP packet corresponding to the second protocol frame.
- the protocol frame may be a TLS frame or an HTTP frame.
- the TLS frame is the basic protocol unit of TLS, and the TLS runs on the transport layer below the application layer.
- the HTTP frame is the basic protocol unit of HTTP, and HTTP runs on the application layer.
- the HTTP frame can be an HTTP 2.0 frame.
- the data portion of at least one TCP packet includes only data for the protocol frame.
- the terminal encapsulates the first protocol frame into a first TCP data packet and a second TCP data packet, wherein the data portion of the first TCP data packet includes only data of the first protocol frame, and the data portion of the second TCP data packet includes only The data of the first protocol frame.
- the terminal encapsulates the second protocol frame into a third TCP data packet and a fourth TCP data packet, where the data portion of the third TCP data packet includes only the data of the second protocol frame, and the data portion of the fourth TCP data packet only Includes data for the second protocol frame.
- the data portion of the last TCP packet may be 0 in length, thereby indicating that the last TCP packet is the last TCP packet corresponding to the protocol frame.
- the data volume of the first protocol frame is 2000 bytes
- the preset MSS negotiated between the terminal and the node device is 1460 bytes
- the terminal may encapsulate the first protocol frame into the first TCP data packet and the second TCP data packet.
- a third TCP packet wherein the data portion of the first TCP packet has a length of 1460 bytes, and a second The data portion of the TCP packet has a length of 540 bytes, and the data portion of the third TCP packet has a length of 0, thereby indicating that the third TCP packet is the last TCP packet corresponding to the first protocol frame.
- the header of the last TCP packet may include a sending sequence number and an acknowledgment sequence number, wherein the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the next protocol frame, and the acknowledgment sequence number is sent according to the received node device. Data confirmed.
- the header of the last TCP packet may include a sending sequence number and an acknowledgment sequence number, wherein the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the next protocol frame, and the acknowledgment sequence number is before the last TCP packet.
- the confirmation number of a packet is the same.
- the terminal may obtain a protocol frame sent by the management terminal before the terminal encapsulates a protocol frame into the at least one TCP packet, where the protocol frame may include terminal identification information, where the terminal identifier information is used to indicate at least one TCP corresponding to the protocol frame.
- the data packet is sent to the node device corresponding to the terminal identification information.
- the terminal may add a TCP packet after the last TCP packet containing the data, wherein the length of the data portion of the added TCP packet is 0.
- the terminal may add a TCP packet after the last TCP packet containing the data, where the data of the added TCP packet is added.
- the length of the part is 0.
- the terminal may add a TCP packet after the last TCP packet containing the data, where the added TCP packet is The length of the data portion is 0.
- the last TCP packet containing the data when the data volume of the last TCP packet containing the data corresponding to the protocol frame is smaller than the preset MSS, the last TCP packet containing the data includes only the data of the protocol frame, where the indication information is the last one.
- the amount of data for the TCP packet that contains the data For example, the data volume of the first protocol frame is 2000 bytes, and the preset MSS negotiated between the terminal and the node device is 1460 bytes, and the terminal may encapsulate the first protocol frame into the first TCP data packet and the second TCP data packet.
- the length of the data portion of the first TCP packet is 1460 bytes
- the length of the data portion of the second TCP packet is 540 bytes
- the second TCP packet includes only data of the first protocol frame
- the indication information is The data volume of the two TCP data packets
- the terminal may determine, according to the indication information, that the data volume of the second TCP data packet is less than the preset MSS, and the second TCP data packet is the last TCP data packet of the first protocol frame.
- the indication information may be identification information contained in a header of the last TCP packet.
- the terminal may add the identifier information in the header of the last TCP packet containing the data.
- the terminal may add the identifier information to the header of the last TCP packet containing the data.
- the data volume of the first protocol frame is 2000 bytes
- the preset MSS negotiated between the terminal and the node device is 1460 bytes
- the terminal may encapsulate the first protocol frame into the first TCP data packet and the second TCP data packet.
- the length of the data portion of the first TCP packet is 1460 bytes
- the length of the data portion of the second TCP packet is 540 bytes.
- the header of the second TCP packet includes identification information, and the terminal may determine the identifier according to the identifier information.
- the second TCP packet is the last TCP packet of the first protocol frame.
- the terminal may further send a notification message to the node device, where the notification message may be used for the last TCP data packet in the at least one TCP data packet, including the indication information.
- the indication information is used to indicate that the last TCP packet is the last TCP packet corresponding to the protocol frame.
- the notification message may be carried in an HTTP 2.0 header field or an HTTP 2.0 setting frame of the protocol frame.
- the header of at least one TCP packet may include data type information, the data type information being used to indicate the data type of the data portion of the TCP packet.
- the existing protocol frame parsing method blindly parses the protocol frame through the frame header of the protocol frame, and cannot accurately obtain the data type of the protocol frame.
- the header of at least one TCP packet includes data type information, and the node device can obtain the data type of the data part of the TCP packet according to the data type information, thereby obtaining the data type of the protocol frame, and improving the accuracy of data parsing. .
- the protocol frame before the terminal encapsulates a protocol frame into at least one TCP data packet, the protocol frame may be compressed into at least one compressed packet, and at least one compressed packet includes only the protocol frame.
- the terminal usually compresses the protocol frame by using a preset compression algorithm, and then transmits the compressed protocol frame to the node device to improve the transmission rate.
- the respective protocol frames cannot be identified, and the respective protocol frames cannot be encapsulated into at least one TCP data packet respectively.
- the embodiment of the present invention compresses one protocol frame into at least one compressed packet.
- the data in the compressed package is encapsulated into at least one TCP data packet to implement respectively packaging each protocol frame into at least one TCP data packet.
- the HTTP frame when the protocol frame is an HTTP frame, the HTTP frame may be encapsulated into at least one TLS frame, and the last TLS frame in the at least one TLS frame is the last TLS frame corresponding to the HTTP frame, and respectively
- the TLS frame is encapsulated into at least one TCP packet, and the last TCP packet in the at least one TCP packet includes indication information indicating that the last TCP packet is the last TCP packet corresponding to the TLS frame.
- the terminal encapsulates the HTTP frame into two TLS frames, where TLS frame2 is the last TLS frame corresponding to the HTTP frame, and TLS frame1 and TLS frame2 are only Contains the data for this HTTP frame. Further, the terminal may encapsulate the TLS frame1 into three TCP data packets, where the TCP3 data packet includes indication information, and the indication information is used to indicate that the TCP3 data packet is the last TCP data packet corresponding to the TLS frame1, specifically, the TCP3 data packet.
- the length of the data part may be 0, thereby indicating that the TCP3 data packet is the last TCP data packet corresponding to the TLS frame1; or when the data volume of the TCP3 data packet is less than the preset MSS, the indication information may be the data amount of the TCP3 data packet, thereby The TCP3 data packet is indicated as the last TCP data packet corresponding to the TLS frame1; or the indication information may be the identification information contained in the header of the TCP3 data packet, thereby indicating that the TCP3 data packet is the last TCP data packet corresponding to the TLS frame1.
- the terminal can encapsulate the TLS frame 2 into five TCP data packets, wherein the TCP8 data packet includes indication information, and the indication information is used to indicate that the TCP8 data packet is the last TCP data packet corresponding to the TLS frame2, specifically, the TCP8 data packet.
- the length of the data part may be 0, thereby indicating that the TCP8 data packet is the last TCP data packet corresponding to the TLS frame 2; or when the data volume of the TCP 8 data packet is less than the preset MSS, the indication information may be the data amount of the TCP 8 data packet, thereby The TCP8 data packet is indicated as the last TCP data packet corresponding to the TLS frame2; or the indication information may be the identification information contained in the header of the TCP8 data packet, thereby indicating that the TCP8 data packet is the last TCP data packet corresponding to the TLS frame2.
- the embodiment of the present invention can ensure that the data part of the TCP1 ⁇ TCP3 data packet only includes the data of the TLS frame1, the data part of the TCP4 ⁇ TCP8 data packet only includes the data of the TLS frame2, and the TLS frame1 and the TLS frame2 only include the data of the HTTP frame.
- the HTTP frame when the protocol frame is an HTTP frame, the HTTP frame may be encapsulated into at least one TLS frames, the last TLS frame in at least one TLS frame is the last TLS frame corresponding to the HTTP frame, and all TLS frames in the at least one TLS frame are encapsulated into at least one TCP packet, at least one TCP packet
- the last TCP packet includes indication information indicating that the last TCP packet is the last TCP packet corresponding to the HTTP frame.
- the terminal encapsulates the HTTP frame into two TLS frames, where TLS frame2 is the last TLS frame corresponding to the HTTP frame, and TLS frame1 and TLS frame2 are only Contains the data for this HTTP frame.
- the terminal may encapsulate the TLS frame1 and the TL S frame2 into eight TCP data packets, where the TCP8 data packet includes indication information, where the indication information is used to indicate that the TCP8 data packet is the last TCP data packet corresponding to the HTTP frame, and the specific The length of the data part of the TCP8 data packet may be 0, thereby indicating that the TCP8 data packet is the last TCP data packet corresponding to the HTTP frame; or when the data volume of the TCP8 data packet is less than the preset MSS, the indication information may be TCP8 data.
- the amount of data of the packet thereby indicating that the TCP3 data packet is the last TCP data packet corresponding to the HTTP frame; or the indication information may be identification information included in the header of the TCP8 data packet, thereby indicating that the TCP8 data packet corresponds to the HTTP frame.
- the data portion of the TCP3 packet may include data of TLS frame1 and data of TLS frame2.
- the data amount of the TCP1 ⁇ TCP7 data packet can be equal to the preset MSS.
- the data portion of the TCP packet includes only the data of the HTTP frame, and the data portion of the TCP packet may include data of a plurality of TLS frames.
- the TCP packet corresponding to an HTTP frame includes only one indication information. Compared with the foregoing encapsulation method, the embodiment of the present invention can improve resource utilization and save packaging overhead.
- the TLS frame when the protocol frame is a TLS frame, the TLS frame may include data type information, and the data type information is used to indicate a data type of the TLS frame.
- the TLS frame format may be as shown in FIG. 7F.
- the terminal may add data type information in the ContentType field of the TLS frame, where the data type information is used to indicate the data type of the TLS frame.
- the embodiment of the present invention may add data type information to the ContentType field of the TLS frame.
- Text/CSS (25) is data type information indicating that the data type of the TLS frame is CSS text.
- Text/JS (26) is data type information indicating that the data type of the TLS frame is javascript text.
- Image/JPEG (27) is data type information indicating that the data type of the TLS frame is a JPEG picture.
- Application/Video (28) is data type information indicating that the data type of the TLS frame is video.
- Application/Audio (29) is data type information indicating that the data type of the TLS frame is audio.
- the data type information may be added in the header of the at least one TCP data packet, where the data type information is used to indicate the data type of the data portion of the TCP data packet.
- At least one TCP data packet may be sent to the node device.
- the terminal may receive the TCP data packet sent by the node device, and send the TCP data packet to be sent in the at least one TCP data packet to the node device to send the The acknowledgment sequence number of the TCP packet, and the acknowledgment sequence number is used to indicate that the TCP packet sent by the node device is correctly received.
- the terminal may send an ACK data packet to the node device, where the data portion of the ACK data packet has a length of 0, and is used to indicate that the terminal correctly receives the node device and sends the data packet. TCP packets, low resource utilization.
- the TCP data packet to be sent in the at least one TCP data packet may carry the acknowledgement sequence number of the TCP data packet sent by the node device, and the confirmation sequence number is used to indicate that the sequence number is correct.
- the TCP packet sent by the node device is received.
- the ACK packet is not sent separately, the TCP packet sent by the node device is correctly received, which improves resource utilization.
- a protocol frame is encapsulated into at least one TCP data packet, and a last one of the at least one TCP data packet includes indication information indicating the last TCP data packet.
- the last TCP packet corresponding to the protocol frame will be One less TCP packet is sent to the node device to ensure that the data portion of a TCP packet contains only data for one protocol frame.
- FIG. 2 is a schematic flowchart of a protocol frame parsing method according to an embodiment of the present invention.
- the protocol frame parsing method in the embodiment of the present invention may include:
- the terminal may receive at least one TCP packet that is encapsulated by the node device and encapsulates a protocol frame, and the last TCP packet in the at least one TCP packet includes indication information, where the indication information is used to indicate that the last TCP packet is a protocol frame.
- the last TCP packet For example, the node device may encapsulate a protocol frame into at least one TCP data packet, and the last TCP data packet in the at least one TCP data packet includes indication information, and the node device sends the at least one TCP data packet to the terminal, and the terminal receives the foregoing. At least one TCP packet.
- the terminal may send a TCP data packet to the node device before receiving the at least one TCP data packet encapsulated by the node device by the node device. Further, after the terminal receives the at least one TCP packet that is encapsulated into a protocol frame sent by the node device, when the received TCP packet carries the acknowledgement sequence number of the TCP packet sent to the node device, the terminal may use the confirmation sequence number. It is determined that the node device correctly receives the TCP packet sent to the node device.
- the terminal may send a TCP data packet to the node device, where the node device receives the TCP data packet sent by the terminal, and carries the TCP data packet to be sent in the at least one TCP data packet.
- the terminal may determine, according to the acknowledgement sequence number, that the node device correctly receives the TCP packet sent by the terminal.
- the terminal may determine, according to the indication information, a starting TCP packet corresponding to the next protocol frame, where the starting TCP packet corresponding to the next protocol frame is the next TCP packet of the last TCP packet corresponding to the protocol frame.
- the terminal may determine that the next TCP packet is the starting TCP packet corresponding to the next protocol frame.
- the node device adds a TCP packet after the last TCP packet containing the data corresponding to the protocol frame, wherein the length of the data portion of the added TCP packet is 0, the terminal can determine the next TCP data of the added TCP packet.
- the packet is the starting TCP packet corresponding to the next protocol frame.
- the terminal may determine that the next TCP packet is the starting TCP packet corresponding to the next protocol frame. For example, the terminal may determine whether the data volume of each TCP data packet is smaller than a preset MSS. When the data volume of the TCP data packet is less than the preset MSS, the terminal may determine that the next TCP data packet of the TCP data packet corresponds to the next protocol frame. The starting TCP packet.
- the terminal may determine whether the length of the data portion of the next TCP packet is 0, and when the length of the data portion of the next TCP packet is 0, the terminal It can be determined that the next TCP packet of the TCP packet whose length of the data portion is 0 is the starting TCP packet corresponding to the next protocol frame. Further, when the data volume of the TCP data packet is equal to the preset MSS, the terminal may determine whether the header of each TCP data packet includes the identifier information. When the header of the TCP data packet includes the identifier information, the terminal may determine the TCP data packet. The next TCP packet is the starting TCP packet corresponding to the next protocol frame.
- the terminal may determine that the next TCP packet is the starting TCP packet corresponding to the next protocol frame. For example, the terminal may determine whether the header of each TCP packet includes the identifier information. When the header of the TCP packet includes the identifier information, the terminal may determine that the next TCP packet of the TCP packet is the starting TCP corresponding to the next protocol frame. data pack.
- the terminal may receive the notification message sent by the node device according to the indication information, before determining the initial TCP data packet corresponding to the next protocol frame, and obtain the last TCP data packet corresponding to the protocol frame according to the notification message.
- the terminal receives the notification message sent by the node device, and the notification message is used to indicate that the terminal identifies the boundary of the next protocol frame, and then performs data parsing on the next protocol frame, and the terminal may obtain the last TCP corresponding to the protocol frame according to the notification message.
- the indication information in the data packet determines the initial TCP data packet corresponding to the next protocol frame according to the indication information, and performs data analysis on the next protocol frame from the start TCP data packet.
- the terminal After the terminal determines the starting TCP packet corresponding to the next protocol frame, the number of starting TCPs can be According to the package, data analysis is performed on the next protocol frame. For example, if the terminal determines that the initial TCP packet corresponding to the next protocol frame is the third TCP packet, the terminal may parse the frame header and the payload of the next protocol frame from the third TCP packet, and identify according to the data in the payload.
- the data type of the next protocol frame may include text, picture, video or audio.
- the header of the at least one TCP packet may include data type information
- the terminal may acquire the data type of the data portion of the TCP packet according to the data type information, and thereby obtain the data type of the protocol frame.
- the protocol frame is blindly parsed through the frame header of the protocol frame, and the data type of the protocol frame cannot be accurately obtained.
- the data type of the data part of the TCP data packet is obtained according to the data type information, and the data type of the protocol frame is obtained, thereby improving the accuracy of data analysis.
- the terminal may determine that the next protocol frame is compressed by the static table to implement the header field.
- the protocol frame can implement header field compression through a static table or a dynamic table.
- the static table is a commonly used high-frequency header field, which is defined by the protocol and remains unchanged during the transmission of the protocol frame, while the dynamic table is dynamically changed during the transmission process. If the protocol frame is compressed by the dynamic table, and the terminal is the source eNB (evolved base station), the source eNB maintains the dynamic table. When the terminal is switched from the source eNB to the target eNB, the target eNB cannot obtain the dynamic information. The table, in turn, cannot parse the protocol frame. After the embodiment of the present invention determines that the next protocol frame is compressed by the static table, the data is parsed from the initial TCP packet to the next protocol frame, which can improve the data parsing efficiency.
- each TCP packet corresponding to the next protocol frame belongs to the same HTPP2.0 stream, and the terminal performs data parsing on the next protocol frame from the initial TCP packet, and then performs data processing on the next protocol frame.
- the data parsing of the protocol frame included in the HTTP2.0 stream is suspended.
- a picture of a node device is divided into multiple protocol frames, and multiple protocol frames belong to the same HTPP2.0 stream, and the data type of each protocol frame is a picture, and the node device encapsulates each protocol frame into at least one TCP data packet, and After the at least one TCP packet is sent to the terminal, when the terminal parses the data type of one of the protocol frames into a video, the data type of the other protocol frames in the HTPP 2.0 stream is also parsed into a video.
- the parsing of the protocol frame data fails, the data parsing of other protocol frames included in the HTTP2.0 stream is suspended, which improves the data parsing efficiency.
- a protocol frame is sent by a receiving node device.
- Forming at least one TCP packet, the last TCP packet in the at least one TCP packet includes indication information, and determining, according to the indication information, a starting TCP packet corresponding to the next protocol frame, starting from the initial TCP packet
- a protocol frame performs data parsing, which can effectively identify the boundary of the next protocol frame to implement data parsing for the next protocol frame.
- FIG. 3 is a schematic flowchart diagram of a protocol frame transmission method according to a second embodiment of the present invention.
- the first node device performs the base station handover in the process of transmitting the TCP data packet corresponding to the protocol frame to the second node device by using the base station, that is, the first node device sends the TCP data packet to the first base station.
- the first node device switches to send the TCP data packet to the second node device through the second base station.
- the second node device When the first node device is a server, the second node device may be a client; when the first node device is a client, the second node device may be a server, which is not limited by the embodiment of the present invention.
- the protocol frame transmission method in the embodiment of the present invention may include:
- the first node device encapsulates a protocol frame into at least one TCP data packet, and the data portion of the last TCP data packet in the at least one TCP data packet has a length of zero.
- the first node device may encapsulate one protocol frame into at least one TCP data packet, and the data portion of the last TCP data packet in the at least one TCP data packet has a length of 0, thereby indicating that the last TCP data packet is the last corresponding to the protocol frame.
- the protocol frame may be an HTTP frame or a TLS frame, and the data portion of at least one TCP packet includes only data of the protocol frame.
- the data volume of the protocol frame is 4000 bytes
- the preset MSS negotiated between the first node device and the third node device is 1460 bytes, and the first node device can encapsulate the protocol frame into three TCP data packets.
- the length of the data part of the TCP1 data packet is 1460 bytes
- the length of the data part of the TCP2 data packet is 1460 bytes
- the length of the data part of the TCP3 data packet is 1080 bytes
- the length of the data part of the TCP4 data packet is 0. .
- the first node device may add a TCP packet after the last TCP packet containing the data corresponding to the protocol frame, where the data portion of the added TCP packet has a length of zero.
- the first node device may receive the TCP data packet sent by the first base station, and then carry the first base station to send the TCP data packet to be sent in the at least one TCP data packet.
- the acknowledgment sequence number of the TCP packet, the acknowledgment sequence number is used to indicate that the TCP packet sent by the first base station is correctly received.
- the first node device After the first node device receives the TCP data packet sent by the first base station, it needs to send an ACK data packet to the first base station, where the ACK data packet is used to indicate that the first node device correctly receives the TCP data sent by the first base station, and the ACK data packet
- the length of the data part is 0, and after receiving the ACK data packet, the first base station will mistake the ACK data packet as the last TCP data packet corresponding to the protocol frame.
- the embodiment of the present invention may be at least one TCP.
- the TCP packet to be sent in the data packet carries the acknowledgement sequence number of the TCP packet sent by the first base station, and the acknowledge sequence number is used to indicate that the TCP packet sent by the first base station is correctly received.
- the first node device may add the acknowledgement sequence number of the TCP data packet sent by the first base station to the 32-bit acknowledgement sequence number of the TCP1 data packet, and the first base station After receiving the TCP1 data packet, the first node device can correctly receive the TCP data packet sent by the first base station according to the added acknowledgement sequence number.
- the second node device may send a notification message for the last TCP packet in the at least one TCP data packet.
- the indication information is used to indicate that the last TCP data packet is the last TCP data packet corresponding to the protocol frame.
- the first node device may expand the set frame, and add a field “ENABLE_FRAME_TCP_ENCAP 0x71” in the set frame.
- the second node device may The field determines the encapsulation mode of the first node device, and further encapsulates the protocol frame to be sent to the first node device into at least one TCP data packet by using the foregoing encapsulation manner, and the last TCP data packet in the at least one TCP data packet includes indication information.
- the indication information is used to indicate that the last TCP packet is the last TCP packet corresponding to the protocol frame.
- the HTTP2.0 frame may include a HEADERS (header field) and a DATA (data field), and the header information of the HTTP 1.1 frame is encapsulated in a header field, and the first node device may be in the The HTTP2.0 header field (that is, the header field) adds the field "TCP-Encapsulation: frame", and sends the HTTP frame of the added field to the second node device. After the second node device receives the HTTP frame of the added field, it is to be sent.
- HTTP frame HTTP2.0 Adding the foregoing field to the header field, and sending the HTTP frame to be sent of the added field to the first node device, the first node device and the second node device negotiate to encapsulate the protocol frame by using the foregoing encapsulation manner, and then encapsulate the protocol frame into At least one TCP packet, the last TCP packet in the at least one TCP packet includes indication information indicating that the last TCP packet is the last TCP packet corresponding to the protocol frame.
- the header of at least one TCP packet may include data type information, the data type information being used to indicate the data type of the data portion of the TCP packet.
- the first node device may add data type information to the option field of the TCP packet containing the data, and the data type information is used to indicate the data type of the data portion of the TCP packet.
- the data type of the data part of the TCP packet may be represented by a multi-bit byte set by negotiation.
- the data type information may be 0001, which is used to indicate that the data type of the data part of the TCP packet is text or html.
- the text type information may be 0010, which is used to indicate that the data type of the data part of the TCP data packet is image or jpeg, that is, a picture; the data type information may be 0011, and is used to indicate that the data type of the data part of the TCP data packet is Video or mp4, which is audio.
- the TLS frame format may be as shown in FIG. 7F, and the first node device may add data type information in the ContentType field of the TLS frame, where the data type information is used to indicate the TLS frame. type of data. Further, when the first node device encapsulates the TLS frame into at least one TCP data packet, the data type information may be added in the header of the at least one TCP data packet, where the data type information is used to indicate the data type of the data portion of the TCP data packet.
- the first node device sends at least one TCP data packet to the first base station.
- the first node device may transmit at least one TCP data packet to the first base station.
- the first node device can transmit the TCP1 data packet to the first base station.
- the first base station sends the at least one TCP data packet to the second node device.
- the first base station may send the at least one TCP data packet sent by the first node device to the second node device.
- the first base station can transmit the TCP1 data packet to the second node device.
- the first base station After the first base station sends the TCP1 data packet to the second node device, it performs handover with the second base station.
- the second node device moves from one cell to another, the transmission signal of the first base station covers the first cell, and the transmission signal of the second base station covers the second cell, in order to ensure continuity of communication,
- the link between the second node device and the first base station is switched to a link between the second node device and the second base station.
- the second node device switches from one radio channel to another in the same cell to avoid co-channel interference, that is, the link between the second node device and the first base station is switched to the second node device and the second device.
- the link between base stations For example, the second node device moves from one cell to another, the transmission signal of the first base station covers the first cell, and the transmission signal of the second base station covers the second cell, in order to ensure continuity of communication,
- the link between the second node device and the first base station is switched to a link between the second node
- the first node device sends at least one TCP data packet to the second base station.
- the first node device may send the at least one TCP data packet to the second base station. For example, after the first node device sends the TCP1 data packet to the first base station, the TCP2 data packet, the TCP3 data packet, and the TCP4 data packet may be sent to the second base station.
- the header of the last TCP packet corresponding to the protocol frame may include a sending sequence number and an acknowledgement sequence number, where the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the next protocol frame, and the confirming sequence number is based on The received data sent by the second base station is confirmed.
- the sending sequence number of the TCP packet is the sum of the sending sequence number of the previous TCP packet and the length of the data portion of the previous TCP packet.
- the transmission sequence number of the TCP4 data packet is the sum of the transmission sequence number of the TCP3 data packet and the data portion of the TCP3 data packet.
- the length of the data portion of the TCP4 data packet is 0, and the transmission sequence number of the TCP5 data packet is the transmission of the TCP4 data packet.
- Serial number That is, a TCP packet is added after the last TCP packet containing the data corresponding to the first protocol frame, and the transmission sequence number of the added TCP packet is the same as the transmission sequence number of the initial TCP packet corresponding to the next protocol frame.
- the second base station after the first node device sends the TCP2 data packet to the second base station, the second base station returns an acknowledgement sequence number of the TCP2 data packet to the first node device, to indicate that the second base station correctly receives the TCP2 data packet, and the first node device
- the acknowledgment sequence number of the TCP3 data packet is generated, wherein the acknowledgment sequence number of the TCP3 data packet is obtained by adding the acknowledgment sequence number of the TCP2 data packet. That is, a TCP packet is added after the last TCP packet containing the data corresponding to the first protocol frame, and the acknowledged sequence number of the added TCP packet is confirmed according to the data sent by the received second base station.
- the notification message may be sent to the second base station, where the notification message is used for the last TCP data packet in the at least one TCP data packet.
- the indication information is used to indicate that the last TCP data packet is the last TCP data packet corresponding to the protocol frame, so that the second base station obtains according to the notification message.
- the second base station determines that the next TCP packet of the TCP packet whose length is 0 in the data part is the starting TCP packet corresponding to the next protocol frame.
- the second base station may determine whether there is a TCP packet with a length of 0 in the data portion. When there is a TCP packet with a length of 0 in the data portion, the next packet will be next.
- the TCP packet is determined as the starting TCP packet corresponding to the next protocol frame. For example, if the second base station determines that the length of the data portion of the TCP4 data packet is 0, the second base station may determine that the TCP5 data packet is the initial TCP data packet corresponding to the second protocol frame.
- the first node device may send a notification message to the second base station, where the notification message is used for the last TCP data packet in the at least one TCP data packet, and the indication information is used to indicate the last TCP data packet.
- the last TCP packet corresponding to the protocol frame.
- the second base station may learn the protocol frame encapsulation mode of the first node device, and then obtain the indication information in the last TCP data packet corresponding to the protocol frame according to the notification message, and determine according to the indication information.
- the next TCP packet of the TCP packet whose length is 0 in the data portion is the starting TCP packet corresponding to the next protocol frame.
- the second base station performs data parsing on the next protocol frame from the start of the TCP packet.
- the second base station After the second base station determines the initial TCP data packet corresponding to the next protocol frame, data analysis can be performed on the next protocol frame from the start TCP data packet. For example, the second base station may parse the frame header and the payload of the second protocol frame from the TCP5 data packet, and identify the data type of the second protocol frame according to the data in the payload.
- the header of the at least one TCP packet may include data type information
- the second base station may acquire the data type of the data part of the TCP packet according to the data type information, and obtain the data type of the next protocol frame.
- the second base station before the second base station performs data parsing on the next protocol frame from the initial TCP packet, it may be determined that the next protocol frame is compressed by the static table to implement the header field.
- the first base station if the protocol frame is compressed by the dynamic table, the first base station maintains the dynamic table. When the first base station switches to the second base station, the second base station cannot obtain the dynamic table, and thus cannot The next protocol frame is used for data parsing.
- performing data parsing on the next protocol frame may improve data parsing. effectiveness.
- each TCP packet corresponding to the next protocol frame belongs to the same HTPP2.0 stream, and then the second base station performs data parsing on the next protocol frame from the start TCP packet, and then on the next protocol.
- the frame data parsing fails, the data parsing of the protocol frame included in the HTTP2.0 stream is suspended.
- the second node device divides a picture into multiple protocol frames, and multiple protocol frames belong to the same HTPP2.0 stream, and the data type of each protocol frame is a picture
- the first node device encapsulates each protocol frame into at least one
- the second base station parses the data type of one of the protocol frames into a video
- the data of the other protocol frames in the HTPP 2.0 stream is also The type is parsed into a video.
- the protocol frame data fails to be parsed, the data parsing of other protocol frames included in the HTTP2.0 stream is suspended, which can improve the data parsing efficiency.
- the second base station sends the data parsed TCP data packet to the second node device.
- the first node device encapsulates a protocol frame into at least one TCP data packet, and the data portion of the last TCP data packet in the at least one TCP data packet has a length of 0, first.
- the first node device sends at least one TCP data packet to the second base station, and the second base station determines that the next TCP data packet of the TCP data packet whose length is 0 is the next protocol.
- the initial TCP packet corresponding to the frame, and then the data analysis of the next protocol frame is started from the initial TCP packet, and the TCP packet parsed by the data is sent to the second node device to ensure the data of a TCP packet.
- the part only includes data of one protocol frame, so that the second base station can effectively identify the boundary of the next protocol frame to implement data parsing for the next protocol frame.
- FIG. 4 is a schematic flowchart diagram of a protocol frame transmission method according to a third embodiment of the present invention.
- the management terminal inserts the protocol frame into the third node device through the first node device, inserts the second node device in real time, and the second node device parses the TCP data packet sent by the first node device. And sending the parsed TCP packet to the third node device.
- the second node device may be a router, a packet gateway node, or a serving gateway node.
- the first node device When the management terminal is a server, the first node device may be a proxy server, and the third node device may be a client; when the management terminal is a client, the first node device may be a proxy client, and the second node
- the device may be a server, and is not specifically limited by the embodiments of the present invention.
- the protocol frame transmission method in the embodiment of the present invention may include:
- the management terminal sends a protocol frame to the first node device, where the protocol frame includes terminal identification information.
- the management terminal may send a protocol frame to the first node device, where the protocol frame includes terminal identification information, where the terminal identification information is used to send the at least one TCP data packet corresponding to the protocol frame to the node device corresponding to the terminal identification information, that is, the third node device. .
- the first node device encapsulates a protocol frame into at least one TCP data packet, and the data portion of the last TCP data packet in the at least one TCP data packet has a length of zero.
- the first node device sends at least one TCP data packet to the third node device.
- the first node device may send the at least one TCP data packet to the third node device.
- the first node device can send the TCP1 data packet to the third node device.
- the first node device sends the at least one TCP data packet to the second node device.
- the second node device having the data analysis requirement is inserted in real time, and the first node device sends the TCP2 data packet, the TCP3 data packet, and the TCP4 data packet to the first node device.
- Two-node device Two-node device.
- the header of the last TCP packet corresponding to the protocol frame may include a sending sequence number and an acknowledgment sequence number, where the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the next protocol frame, and the sequence number and the last are confirmed.
- the confirmation number of the previous packet of a TCP packet is the same.
- the sending sequence number of the TCP packet is the sum of the sending sequence number of the previous TCP packet and the length of the data portion of the previous TCP packet.
- the transmission sequence number of the TCP4 data packet is the sum of the transmission sequence number of the TCP3 data packet and the data portion of the TCP3 data packet.
- the length of the data portion of the TCP4 data packet is 0, and the transmission sequence number of the TCP5 data packet is the transmission of the TCP4 data packet.
- Serial number That is, a TCP packet is added after the last TCP packet containing the data corresponding to the first protocol frame, and the transmission sequence number of the added TCP packet is the same as the transmission sequence number of the initial TCP packet corresponding to the next protocol frame.
- the first node device is a proxy client or a proxy server, and the first node device sends a TCP data packet to the second node device, and after receiving the TCP data packet, the second node device sends the acknowledgement sequence number of the TCP data packet to Management terminal, the first node device cannot confirm the second node device Whether to receive TCP packets. Then, a TCP packet is added after the last TCP packet containing the data corresponding to the first protocol frame, and the confirmed sequence number of the added TCP packet is the same as the confirmation sequence number of the last TCP packet containing the data.
- the second node device determines that the next TCP packet of the TCP packet whose length is 0 in the data part is the starting TCP packet corresponding to the next protocol frame.
- the second node device performs data parsing on the next protocol frame from the start of the TCP packet.
- the second node device sends the data parsed TCP data packet to the third node device.
- the first node device encapsulates a protocol frame sent by the management terminal into at least one TCP data packet, and the data portion of the last TCP data packet in the at least one TCP data packet has a length of 0.
- the first node device sends at least one TCP data packet to the second node device, and the second node device determines that the next TCP data packet of the TCP data packet whose length is 0 is the initial TCP corresponding to the next protocol frame.
- the data packet, and then data parsing of the next protocol frame from the initial TCP packet, and transmitting the parsed TCP data packet to the third node device ensures that the data portion of one TCP packet includes only one protocol frame.
- the data is such that the second node device effectively identifies the boundary of the next protocol frame to implement data parsing for the next protocol frame.
- FIG. 5 is a schematic flowchart of a method for transmitting a protocol frame according to a fourth embodiment of the present invention.
- the method for transmitting a protocol frame in the embodiment of the present invention may include:
- the first node device encapsulates a protocol frame into at least one TCP data packet, and the data volume of the last TCP data packet in the at least one TCP data packet is smaller than a preset MSS.
- the first node device may encapsulate a protocol frame into at least one TCP data packet, and the data volume of the last TCP data packet in the at least one TCP data packet is smaller than the preset MSS, thereby indicating that the last TCP data packet is the last corresponding to the protocol frame.
- a TCP packet For example, the data volume of the protocol frame is 4000 bytes, and the preset MSS negotiated between the first node device and the third node device is 1460 bytes, and the first node device can encapsulate the protocol frame into three TCP data packets.
- the data portion of the TCP1 packet has a length of 1460 bytes
- the data portion of the TCP2 packet has a length of 1460 bytes
- the data portion of the TCP3 packet has a length of 1080 bytes.
- the first node device sends the at least one TCP data packet to the third node device.
- the first node device sends the at least one TCP data packet to the second node device.
- the second node device determines that the next TCP packet whose data volume is smaller than the TCP packet of the preset MSS is the starting TCP packet corresponding to the next protocol frame.
- the second node device performs data parsing on the next protocol frame from the start of the TCP packet.
- the second node device sends the data parsed TCP data packet to the third node device.
- the first node device encapsulates one protocol frame into at least one TCP data packet, and the data volume of the last TCP data packet in the at least one TCP data packet is smaller than the preset MSS, the first The node device sends the at least one TCP data packet to the second node device, where the second node device determines that the next TCP data packet whose data volume is smaller than the TCP data packet of the preset MSS is the initial TCP data packet corresponding to the next protocol frame, and further Data parsing of the next protocol frame from the start of the TCP packet, and sending the parsed TCP packet to the third node device ensures that the data portion of a TCP packet includes only one protocol frame data, so that The second node device effectively identifies the boundary of the next protocol frame to implement data parsing for the next protocol frame.
- FIG. 6 is a schematic flowchart of a method for transmitting a protocol frame according to a fifth embodiment of the present invention.
- the method for transmitting a protocol frame in the embodiment of the present invention may include:
- the first node device encapsulates a protocol frame into at least one TCP data packet, and the header of the last TCP data packet in the at least one TCP data packet includes the identifier information.
- the first node device may encapsulate a protocol frame into at least one TCP data packet, and the header of the last TCP data packet in the at least one TCP data packet includes identification information, thereby indicating that the last TCP data packet is the last TCP corresponding to the protocol frame. data pack.
- the data volume of the protocol frame is 4000 bytes
- the preset MSS negotiated between the first node device and the third node device is 1460 bytes, and the first node device can encapsulate the protocol frame into three TCP data packets.
- the length of the data part of the TCP1 data packet is 1460 bytes
- the length of the data part of the TCP2 data packet is 1460 bytes
- the length of the data part of the TCP3 data packet is 1080 bytes
- the header of the first node device in the TCP3 data packet Increase the identification information.
- the first node device may be in the last TCP packet corresponding to the protocol frame.
- the option field adds identification information to indicate that the TCP packet is the last TCP packet corresponding to the protocol frame.
- the first node device sends the at least one TCP data packet to the third node device.
- the first node device sends the at least one TCP data packet to the second node device.
- the second node device determines that the next TCP packet of the TCP packet including the identifier information is the starting TCP packet corresponding to the next protocol frame.
- the second node device performs data parsing on the next protocol frame from the start of the TCP packet.
- the second node device sends the data parsed TCP data packet to the third node device.
- the first node device encapsulates a protocol frame into at least one TCP data packet, and the header of the last TCP data packet in the at least one TCP data packet includes identification information, and the first node device Transmitting at least one TCP data packet to the second node device, where the second node device determines that the next TCP data packet of the TCP data packet including the identification information is the initial TCP data packet corresponding to the next protocol frame, and further starts from the TCP
- the data packet begins to parse the data of the next protocol frame, and sends the parsed TCP data packet to the third node device, which ensures that the data portion of one TCP data packet only includes data of one protocol frame, so that the second node device The boundary of the next protocol frame is effectively identified to implement data parsing for the next protocol frame.
- the embodiment of the present invention further provides a computer storage medium, wherein the computer storage medium may store a program, where the program is executed, including the method embodiment shown in FIG. 1, FIG. 3 to FIG. 6 or FIG. Some or all of the steps.
- the embodiment of the present invention further provides a computer storage medium, wherein the computer storage medium can store a program, and the program includes some or all of the method embodiments shown in FIG. 2 to FIG. 6 or FIG. 14 when executed. step.
- FIG. 8 is a schematic structural diagram of a protocol frame transmission apparatus according to an embodiment of the present invention.
- the protocol frame transmission apparatus may be used to implement the method embodiment shown in FIG. 1 or FIG. 3 to FIG.
- the protocol frame transmission device may at least include a packaging unit 801 And a sending unit 802, wherein:
- the encapsulating unit 801 is configured to encapsulate a protocol frame into at least one TCP data packet, where a last one of the at least one TCP data packet may include indication information, where the indication information may be used to indicate that the last TCP data packet is a protocol frame. Corresponding to the last TCP packet.
- the sending unit 802 is configured to send at least one TCP data packet to the node device.
- the data portion of the last TCP packet may be 0 in length, thereby indicating that the last TCP packet is the last TCP packet corresponding to the protocol frame.
- the header of the last TCP packet may include a sending sequence number and an acknowledgment sequence number, wherein the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the next protocol frame, and the acknowledgment sequence number is sent according to the received node device. The data is confirmed.
- the header of the last TCP packet may include a sending sequence number and an acknowledgment sequence number, wherein the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the next protocol frame, and the acknowledgment sequence number and the last TCP packet are The confirmation number of the previous packet is the same.
- protocol frame transmission apparatus in the embodiment of the present invention may further include:
- the obtaining unit 803 is configured to: before the encapsulating unit 801 encapsulates the protocol frame into the at least one TCP data packet, obtain the protocol frame sent by the management terminal, where the protocol frame may include the terminal identifier information, where the terminal identifier information may be used to indicate that the protocol frame is corresponding to the protocol frame. At least one TCP data packet is sent to the node device corresponding to the terminal identification information.
- the encapsulating unit 801 is configured to add a TCP packet after the last TCP packet containing the data, when the data volume of the last TCP packet containing the data corresponding to the protocol frame is equal to the preset MSS, where The length of the data portion of the added TCP packet may be zero.
- the encapsulating unit 801 is configured to: when the data volume of the last TCP packet containing the data corresponding to the protocol frame is smaller than the preset MSS, the last TCP packet containing the data includes only the data of the protocol frame.
- the indication information may be the amount of data of the last TCP packet containing the data.
- the indication information may be identification information contained in a header of the last TCP packet.
- the data portion of at least one TCP packet includes only data for the protocol frame.
- the protocol frame transmission apparatus in the embodiment of the present invention may further include:
- the receiving unit 804 is configured to receive a TCP packet sent by the node device.
- the encapsulating unit 801 is configured to carry, in the TCP packet to be sent in the at least one TCP packet, an acknowledgment sequence number of the TCP packet sent by the node device, where the acknowledgment sequence number may be used to indicate that the TCP packet sent by the node device is correctly received. .
- the sending unit 802 is further configured to: before the encapsulating unit 801 encapsulates the protocol frame into the at least one TCP data packet, send a notification message to the node device, where the notification message may be used in the at least one TCP data packet.
- the last TCP packet includes indication information that can be used to indicate that the last TCP packet is the last TCP packet corresponding to the protocol frame.
- the notification information may be carried in an HTTP 2.0 header field or an HTTP 2.0 setting frame of the protocol frame.
- the header of the at least one TCP packet may include data type information, wherein the data type information may be used to indicate the data type of the data portion of the TCP packet.
- the protocol frame may be a TLS frame or an HTTP frame.
- the encapsulating unit 801 is configured to encapsulate the HTTP frame into at least one TLS frame, and the last TLS frame in the at least one TLS frame is the last TLS frame corresponding to the HTTP frame. And encapsulating all TLS frames in the at least one TLS frame into at least one TCP data packet, and the last TCP data packet in the at least one TCP data packet includes indication information indicating that the last TCP data packet is an HTTP frame corresponding to the HTTP data packet The last TCP packet.
- the encapsulating unit 801 is configured to encapsulate the HTTP frame into at least one TLS frame, and the last TLS frame in the at least one TLS frame is the last TLS frame corresponding to the HTTP frame. And respectively, each TLS frame is encapsulated into at least one TCP data packet, and the last TCP data packet in the at least one TCP data packet includes indication information, and the indication information is used to indicate that the last TCP data packet is the last TCP data corresponding to the TLS frame. package.
- the TLS frame when the protocol frame is a TLS frame, the TLS frame includes data type information, and the data type information is used to indicate a data type of the TLS frame.
- the protocol frame transmission apparatus in the embodiment of the present invention may further include:
- the compressing unit 805 is configured to compress the protocol frame into at least one compressed packet before the encapsulating unit encapsulates the protocol frame into the at least one TCP packet, where the at least one compressed packet includes only the protocol frame.
- the encapsulating unit 801 encapsulates a protocol frame into at least one TCP packet, and the last TCP packet in the at least one TCP packet includes indication information indicating the last one.
- the TCP packet is the last TCP packet corresponding to the protocol frame, and the sending unit 802 transmits at least one TCP packet to the node device, which ensures that the data portion of one TCP packet includes only data of one protocol frame.
- FIG. 9 is a schematic structural diagram of a node device according to a first embodiment of the present invention.
- the node device provided in the embodiment of the present invention may be used to implement the foregoing invention shown in FIG. 1 or FIG. 3 to FIG.
- FIG. 1 or FIG. 3 to FIG. For the convenience of the description, only the parts related to the embodiments of the present invention are shown.
- FIG. 1 or FIG. 3 to FIG. please refer to the embodiments of the present invention shown in FIG. 1 or FIG. 3 to FIG.
- the node device includes at least one processor 901, such as a CPU, at least one network interface 903 memory 904, and at least one communication bus 902.
- the communication bus 902 is used to implement connection communication between these components.
- the network interface 903 can optionally include a standard wired interface and a wireless interface (such as a WI-FI interface) for communicating with an external network.
- the memory 904 may include a high speed RAM memory, and may also include a non-volatile memory such as at least one disk memory.
- the memory 904 can optionally include at least one storage device located remotely from the aforementioned processor 901.
- the processor 901 can be combined with the protocol frame transmission device shown in FIG. A set of program codes is stored in the memory 904, and the processor 901 calls the program code stored in the memory 904 for performing the following operations:
- TCP Transmission Control Protocol
- At least one TCP data packet is transmitted to the node device through the network interface 903.
- the data portion of the last TCP packet may be 0 in length, thereby indicating that the last TCP packet is the last TCP packet corresponding to the protocol frame.
- the header of the last TCP packet may include a sending sequence number and an acknowledgment sequence number, wherein the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the next protocol frame, and the acknowledgment sequence number is sent according to the received node device. The data is confirmed.
- the header of the last TCP packet may include a sending sequence number and an acknowledgment sequence number, wherein the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the next protocol frame, and the acknowledgment sequence number and the last TCP packet are The confirmation number of the previous packet is the same.
- processor 901 encapsulates a protocol frame into at least one TCP packet, the following operations may be performed:
- the protocol frame sent by the management terminal may include the terminal identification information, where the terminal identification information may be used to send the at least one TCP data packet corresponding to the protocol frame to the node device corresponding to the terminal identification information.
- the processor 901 encapsulates a protocol frame into at least one TCP packet, which may be:
- a TCP packet is added after the last TCP packet containing the data, wherein the added TCP packet
- the length of the data portion can be zero.
- the processor 901 encapsulates a protocol frame into at least one TCP packet, which may be:
- the last TCP packet containing the data includes only the data of the protocol frame, and the indication information is the data of the last TCP packet containing the data. the amount.
- the indication information may be identification information contained in a header of the last TCP packet.
- the data portion of at least one TCP packet includes only data for the protocol frame.
- the processor 901 sends the at least one TCP data packet to the node device through the network interface 903, the following operations may also be performed:
- the TCP packet sent by the node device is received through the network interface 903.
- the processor 901 encapsulates a protocol frame into at least one TCP packet, which may be:
- the acknowledgment sequence number of the TCP packet sent by the node device is carried in the TCP packet to be sent in the at least one TCP packet, where the acknowledgment sequence number can be used to indicate that the TCP packet sent by the node device is correctly received.
- the processor 901 encapsulates a protocol frame into at least one TCP packet. Previously, you could also do the following:
- the notification message can be used for the last TCP data packet in the at least one TCP data packet, including indication information, the indication information can be used to indicate that the last TCP data packet is corresponding to the protocol frame.
- the last TCP packet can be used for the last TCP data packet in the at least one TCP data packet, including indication information, the indication information can be used to indicate that the last TCP data packet is corresponding to the protocol frame.
- the notification message may be carried in an HTTP 2.0 header field or an HTTP 2.0 setting frame of the protocol frame.
- the header of at least one TCP packet may include data type information, and the data type information may be used to indicate the data type of the data portion of the TCP packet.
- the protocol frame may be a TLS frame or an HTTP frame.
- the processor 901 encapsulates the protocol frame into at least one TCP data packet, which may be:
- the processor 901 encapsulates the protocol frame into at least one TCP data packet, which may be:
- Each TLS frame is encapsulated into at least one TCP data packet, and the last TCP data packet in the at least one TCP data packet includes indication information indicating that the last TCP data packet is the last TCP data packet corresponding to the TLS frame.
- the TLS frame when the protocol frame is a TLS frame, the TLS frame includes data type information, and the data type information is used to indicate a data type of the TLS frame.
- the following operations may also be performed:
- the protocol frame is compressed into at least one compressed packet, and at least one compressed packet includes only protocol frames.
- the terminal introduced in the embodiment of the present invention may be used to implement the present invention in conjunction with FIG. 1 or 3 to some or all of the processes in the method embodiment described in FIG.
- FIG. 10 is a schematic structural diagram of a protocol frame parsing apparatus according to an embodiment of the present invention.
- the protocol frame parsing apparatus may be used to implement the part in the method embodiment shown in FIG. 2 to FIG. Or all the steps, the protocol frame parsing apparatus may at least include a receiving unit 1001, a determining unit 1002, and a parsing unit 1003, where:
- the receiving unit 1001 is configured to receive, by the node device, at least one TCP packet that encapsulates a protocol frame, where the last TCP packet in the at least one TCP packet may include indication information, where the indication information may be used to indicate the last A TCP packet is the last TCP packet corresponding to the protocol frame.
- the determining unit 1002 is configured to determine, according to the indication information, a starting TCP data packet corresponding to the next protocol frame.
- the parsing unit 1003 is configured to perform data parsing on the next protocol frame from the start of the TCP packet.
- the determining unit 1002 is configured to determine, when the length of the data portion of the last TCP packet is 0, that the next TCP packet is the starting TCP packet corresponding to the next protocol frame.
- the determining unit 1002 is configured to determine that the next TCP data packet is the starting TCP data packet corresponding to the next protocol frame when the data volume of the last TCP data packet is less than the preset MSS.
- the determining unit 1002 is configured to determine, when the header of the last TCP packet includes the identifier information, that the next TCP packet is the starting TCP packet corresponding to the next protocol frame.
- protocol frame parsing apparatus in the embodiment of the present invention may further include:
- the sending unit 1004 is configured to send the TCP data packet to the node device before the receiving unit 1001 receives the at least one TCP data packet sent by the node device.
- the determining unit 1002 is further configured to: when the received TCP data packet carries the acknowledgement sequence number of the TCP data packet sent to the node device, determine, according to the acknowledgement sequence number, that the node device correctly receives the TCP data packet sent to the node device.
- the receiving unit 1001 is further configured to determine, by the determining unit 1002, the notification message sent by the node device before determining the initial TCP data packet corresponding to the next protocol frame according to the indication information.
- protocol frame parsing apparatus in the embodiment of the present invention may further include:
- the obtaining unit 1005 is configured to obtain, according to the notification information, the indication information in the last TCP data packet corresponding to the protocol frame.
- the header of the at least one TCP packet may include data type information
- the parsing unit 1003 is configured to acquire, according to the data type information, a data type of the data portion of the TCP packet.
- the determining unit 1002 is further configured to: before the parsing unit 1003 performs data parsing on the next protocol frame from the initial TCP packet, determine that the next protocol frame is compressed by the static table to implement the header field.
- the respective protocol data transmission device in the embodiment of the present invention may further include:
- the control unit 1006 is configured to: after the parsing unit 1003 performs data parsing on the next protocol frame from the start of the TCP packet, when the parsing of the next protocol frame data fails, the data parsing of the protocol frame included in the HTTP2.0 stream is suspended. .
- the receiving unit 1001 receives at least one TCP packet that is encapsulated by a node device and encapsulates one protocol frame, and the last TCP packet in the at least one TCP packet includes indication information, indicating The information is used to indicate that the last TCP data packet is the last TCP data packet corresponding to the protocol frame, and the determining unit 1002 determines the initial TCP data packet corresponding to the next protocol frame according to the indication information, and the parsing unit 1003 starts from the initial TCP data packet.
- the next protocol frame performs data parsing, which can effectively identify the boundary of the next protocol frame to implement data parsing for the next protocol frame.
- FIG. 11 is a schematic structural diagram of a node device according to a second embodiment of the present invention.
- the node device provided in the embodiment of the present invention may be used to implement the foregoing embodiments of the present invention shown in FIG. 2 to FIG.
- FIG. 2 to FIG. For the convenience of the description, only the parts related to the embodiments of the present invention are shown. The specific technical details are not disclosed. Please refer to the embodiments of the present invention shown in FIG. 2 to FIG.
- the terminal device includes at least one processor 1101, such as a CPU, at least one network interface 1103, a memory 1104, and at least one communication bus 1102.
- the communication bus 1102 is used to implement connection communication between these components.
- the network interface 1103 can optionally include a standard wired interface and a wireless interface (such as a WI-FI interface) for communicating with an external network.
- the memory 1104 may include a high speed RAM memory, and may also include a non-unstable memory such as at least one disk memory.
- the memory 1104 can optionally include at least one storage device located remotely from the aforementioned processor 1101.
- the processor 1101 can be combined with the protocol frame parsing apparatus shown in FIG. A set of program codes is stored in the memory 1104, and the processor 1101 calls the program code stored in the memory 1104 for performing the following operations:
- At least one TCP packet that is encapsulated into a protocol frame and sent by the node device where the last TCP packet in the at least one TCP packet may include indication information, where the indication information may be used to indicate the last TCP
- the data packet is the last TCP packet corresponding to the protocol frame.
- the initial TCP packet corresponding to the next protocol frame is determined.
- Data analysis is performed on the next protocol frame from the start of the TCP packet.
- the processor 1101 determines, according to the indication information, a starting TCP packet corresponding to the next protocol frame, which may be specifically:
- the next TCP packet is the starting TCP packet corresponding to the next protocol frame.
- the processor 1101 determines, according to the indication information, a starting TCP packet corresponding to the next protocol frame, which may be specifically:
- the next TCP packet is the starting TCP packet corresponding to the next protocol frame.
- the processor 1101 determines, according to the indication information, a starting TCP packet corresponding to the next protocol frame, which may be specifically:
- the next TCP packet is the starting TCP packet corresponding to the next protocol frame.
- the processor 1101 may also perform the following operations:
- a TCP packet is sent to the node device through the network interface 1103.
- the processor 1101 may also perform the following operations:
- the node device When the received TCP packet carries the acknowledgment sequence number of the TCP packet sent to the node device, it is determined that the node device correctly receives the TCP packet sent to the node device according to the acknowledgment sequence number.
- the processor 1101 may perform the following operations before determining the start TCP packet corresponding to the next protocol frame according to the indication information:
- the notification message sent by the node device is received through the network interface 1103.
- the indication information in the last TCP packet corresponding to the protocol frame is obtained.
- the header of the at least one TCP packet may include data type information, and the processor 1101 performs data parsing on the next protocol frame from the start of the TCP packet, which may be:
- the data type of the data part of the TCP packet is obtained.
- the processor 1101 may perform the following operations before the data is parsed from the initial TCP packet to the next protocol frame:
- each TCP packet corresponding to the next protocol frame belongs to the same HTPP2.0 stream, and after the processor 1101 performs data parsing on the next protocol frame from the start TCP packet, the following operations may also be performed. :
- the terminal introduced in the embodiment of the present invention may be used to implement some or all of the processes in the method embodiments introduced in conjunction with FIG. 2 to FIG.
- FIG. 12 is a schematic structural diagram of a protocol frame transmission system according to an embodiment of the present invention.
- the communication system in the embodiment of the present invention may include at least a protocol frame transmission device 1201 and a protocol frame parsing device. 1202, where:
- the protocol frame transmission device 1201 is configured to encapsulate a protocol frame into at least one Transmission Control Protocol (TCP) data packet, wherein a last one of the at least one TCP data packet may include
- TCP Transmission Control Protocol
- the indication information may be used to indicate that the last TCP packet is the last TCP packet corresponding to the protocol frame.
- the protocol frame transmission device 1201 is further configured to send at least one TCP data packet to the protocol frame parsing device 1202.
- the protocol frame parsing device 1202 is configured to determine, according to the indication information, a starting TCP packet corresponding to the next protocol frame.
- the protocol frame parsing device 1202 is further configured to perform data parsing on the next protocol frame from the start of the TCP packet.
- the protocol frame parsing device 1202 is further configured to send the data parsed TCP packet to the node device 1204.
- the protocol frame parsing means 1202 determines that the next TCP packet is the starting TCP packet corresponding to the next protocol frame.
- the header of the last TCP packet may include a sending sequence number and an acknowledgment sequence number, wherein the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the next protocol frame, and the acknowledgment sequence number is sent according to the received node device. The data is confirmed.
- the header of the last TCP packet may include a sending sequence number and an acknowledgment sequence number, wherein the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the next protocol frame, and the acknowledgment sequence number is before the last TCP packet.
- the confirmation number of a packet is the same.
- protocol frame transmission device 1201 encapsulates a protocol frame into at least one TCP data packet, the following operations may also be performed:
- the protocol frame includes terminal identification information, where the terminal identification information is used to send the at least one TCP data packet corresponding to the protocol frame to the node device corresponding to the terminal identification information.
- the protocol frame transmission device 1201 encapsulates a protocol frame into at least one TCP data packet, which may be:
- the protocol frame parsing means 1202 can determine that the next TCP packet is the starting TCP packet corresponding to the next protocol frame.
- the indication information may be the identification information included in the header of the last TCP packet, and when the header of the last TCP packet includes the identification information, the protocol frame parsing device 1202 may determine the next TCP data.
- the packet is the starting TCP packet corresponding to the next protocol frame.
- the data portion of at least one TCP packet includes only data for the protocol frame.
- the following operations may also be performed:
- the protocol frame transmission device 1201 receives the TCP packet transmitted by the protocol frame parsing device 1202.
- protocol frame transmission device 1201 encapsulates a protocol frame into at least one TCP data packet, which may be:
- the TCP data packet to be sent in the at least one TCP data packet carries the acknowledgement sequence number of the TCP data packet sent by the node device, and the acknowledge sequence number is used to indicate that the TCP data packet sent by the node device is correctly received.
- protocol frame parsing device 1202 receives the at least one TCP packet sent by the protocol frame transmission device 1201, the following operations may also be performed:
- the protocol frame transmission device 1201 When the received TCP packet carries the acknowledgment sequence number of the TCP packet transmitted to the protocol frame transmission device 1201, it is determined that the protocol frame transmission device 1201 correctly receives the TCP packet transmitted by the protocol frame analysis device 1202 based on the acknowledgment number.
- the following operations may also be performed:
- the notification message is used for the last TCP packet in the at least one TCP packet, including indication information indicating that the last TCP packet is the last TCP packet corresponding to the protocol frame.
- the notification message is carried in an HTTP 2.0 header field of the protocol frame or an HTTP 2.0 setting. Set in the frame.
- the protocol frame parsing device 1202 may perform the following operations before determining the start TCP packet corresponding to the next protocol frame according to the indication information:
- the notification message transmitted by the protocol frame transmission device 1201 is received.
- the indication information in the last TCP packet corresponding to the protocol frame is obtained.
- the header of the at least one TCP packet includes data type information, and the data type information is used to indicate the data type of the data portion of the TCP packet, and the protocol frame parsing device 1202 starts from the initial TCP packet.
- a protocol frame performs data parsing, which can be:
- the data type of the data part of the TCP packet is obtained.
- the protocol frame is a TLS frame or an HTTP frame.
- the protocol frame parsing device 1202 may perform the following operations before the data is parsed from the initial TCP packet to the next protocol frame:
- each TCP packet corresponding to the next protocol frame belongs to the same HTPP2.0 stream, and the protocol frame parsing device 1202 may perform the data parsing of the next protocol frame after starting the TCP packet. The following operations:
- the following operations may also be performed:
- the protocol frame is compressed into at least one compressed packet, and at least one compressed packet includes only protocol frames.
- the protocol frame transmission device 1201 encapsulates a protocol frame into at least one transmission control protocol TCP packet, and the last TCP packet in the at least one TCP packet includes indication information indicating information. For indicating that the last TCP packet is the last TCP packet corresponding to the protocol frame, the protocol frame transmission device 1201 sends at least one TCP packet to the protocol frame parsing device 1202, and the protocol frame parsing device 1202 determines the next protocol according to the indication information.
- the initial TCP packet corresponding to the frame, and then data parsing of the next protocol frame from the initial TCP packet ensures that the data portion of one TCP packet includes only data of one protocol frame, so that the protocol frame parsing device 1202 is valid. Identify the boundaries of the next protocol frame to achieve the next association Data parsing of the frame.
- FIG. 13 is a schematic flowchart of a data transmission method according to a first embodiment of the present invention.
- the data transmission method in the embodiment of the present invention may include:
- S1301 Encapsulate object data of one URI into at least one TCP data packet, and the last TCP data packet in the at least one TCP data packet includes indication information, where the indication information is used to indicate that the last TCP data packet is the last TCP corresponding to the object data. data pack.
- the terminal may encapsulate the object data of a URI (Uniform Resource Identifier) into at least one TCP packet, and the last TCP packet in the at least one TCP packet includes indication information indicating the last TCP.
- the data packet is the last TCP packet corresponding to the object data.
- the data volume of the first object data and the second object data are both 3000 bytes, and the preset MSS negotiated between the terminal and the node device is 1460 bytes, and the terminal can encapsulate the first object data into three TCP data.
- the length of the data portion of the first TCP packet is 1460 bytes
- the length of the data portion of the second TCP packet is 1460 bytes
- the length of the data portion of the third TCP packet is 80 bytes, of which the third
- the TCP packet includes indication information for indicating that the third TCP packet is the last TCP packet corresponding to the first object data.
- the terminal can encapsulate the second object data into three TCP data packets, the data portion of the fourth TCP data packet has a length of 1460 bytes, and the data portion of the fifth TCP data packet has a length of 1460 bytes, and a sixth The data portion of the TCP packet has a length of 80 bytes, wherein the sixth TCP packet includes indication information indicating that the sixth TCP packet is the last TCP packet corresponding to the second object data.
- the object data may be HTTP 1.1 data or HTTP 1.0 data, and the object data is used to indicate a resource identified by the URI, and the resource may be text, image, video, or audio.
- the URI may be: www.ottserver.com/picture.JPG, and the resource identified by the URI is a picture, that is, the object data is a picture.
- the data portion of at least one TCP packet includes only object data.
- the terminal encapsulates the first object data into a first TCP data packet and a second TCP data packet, wherein the data portion of the first TCP data packet includes only the first object data, and the data portion of the second TCP data packet includes only the first data packet Object data.
- the terminal encapsulates the second object data into a third TCP packet and The fourth TCP packet, wherein the data portion of the third TCP packet includes only the second object data, and the data portion of the fourth TCP packet includes only the second object data.
- the length of the data portion of the last TCP packet may be zero, indicating that the last TCP packet is the last TCP packet corresponding to the object data.
- the data volume of the first object data is 2000 bytes
- the preset MSS negotiated between the terminal and the node device is 1460 bytes
- the terminal may encapsulate the first object data into the first TCP data packet and the second TCP data packet.
- a third TCP packet wherein the data portion of the first TCP packet has a length of 1460 bytes, the data portion of the second TCP packet has a length of 540 bytes, and the data portion of the third TCP packet has a length of 0. , thereby indicating that the third TCP packet is the last TCP packet corresponding to the first object data.
- the header of the last TCP packet may include a sending sequence number and an acknowledgement sequence number, wherein the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the object data of the next URI, and the confirming sequence number is based on the received node device. The data sent is confirmed.
- the header of the last TCP packet may include a sending sequence number and an acknowledgment sequence number, wherein the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the object data of the next URI, and the acknowledgment sequence number and the last TCP packet are confirmed.
- the confirmation number of the previous packet is the same.
- the terminal may obtain object data sent by the management terminal before the terminal encapsulates the object data of the URI into at least one TCP data packet, where the object data may include terminal identification information, where the terminal identifier information is used to indicate that the object data corresponds to at least A TCP packet is sent to the node device corresponding to the terminal identification information.
- the terminal may add a TCP packet after the last TCP packet containing the data, wherein the length of the data portion of the added TCP packet is 0.
- the terminal may add a TCP packet after the last TCP packet containing the data, where the data of the added TCP packet is added.
- the length of the part is 0.
- the terminal may add a TCP packet after the last TCP packet containing the data, where the added TCP packet is The length of the data portion is 0.
- the last TCP packet containing data includes only the object data, wherein the indication information is the amount of data of the last TCP packet containing the data.
- the data volume of the first object data is 2000 bytes
- the preset MSS negotiated between the terminal and the node device is 1460 bytes
- the terminal may encapsulate the first object data into the first TCP data packet and the second TCP data packet.
- the length of the data portion of the first TCP packet is 1460 bytes
- the length of the data portion of the second TCP packet is 540 bytes.
- the second TCP packet includes only the first object data, and the indication information is the second TCP.
- the data volume of the data packet the terminal may determine, according to the indication information, that the data volume of the second TCP data packet is less than the preset MSS, and the second TCP data packet is the last TCP data packet of the first object data.
- the indication information may be identification information contained in a header of the last TCP packet.
- the terminal may add the identifier information in the header of the last TCP packet containing the data. For another example, when the data volume of the last TCP packet containing the data corresponding to the object data is less than the preset MSS, the terminal may add the identifier information to the header of the last TCP packet containing the data.
- the data volume of the first object data is 2000 bytes
- the preset MSS negotiated between the terminal and the node device is 1460 bytes
- the terminal may encapsulate the first object data into the first TCP data packet and the second TCP data packet.
- the length of the data portion of the first TCP packet is 1460 bytes
- the length of the data portion of the second TCP packet is 540 bytes.
- the header of the second TCP packet includes identification information, and the terminal may determine the identifier according to the identifier information.
- the second TCP packet is the last TCP packet of the first object data.
- the terminal may further send a notification message to the node device, where the notification message may be used for the last TCP data packet in the at least one TCP data packet.
- the indication information is used to indicate that the last TCP packet is the last TCP packet corresponding to the object data.
- the header of at least one TCP packet may include data type information, the data type information being used to indicate the data type of the data portion of the TCP packet.
- the existing data parsing method is to blindly parse the object data through the frame header of the object data, and the data type of the object data cannot be accurately obtained.
- the header of the at least one TCP packet includes data type information, and the node device can obtain the data type of the data part of the TCP packet according to the data type information. The data type of the object data is obtained, and the accuracy of data analysis is improved.
- the object data before the terminal encapsulates the object data of one URI into at least one TCP data packet, the object data may be compressed into at least one compressed packet, and at least one compressed packet includes only the object data.
- the terminal generally compresses the object data by using a preset compression algorithm, and then transmits the compressed object data to the node device to improve the transmission rate.
- the individual object data cannot be identified, and the individual object data cannot be separately encapsulated into at least one TCP data packet.
- the embodiment of the present invention compresses the object data of one URI into at least one object.
- the data in the compressed package is encapsulated into at least one TCP data packet, so as to respectively encapsulate each object data into at least one TCP data packet.
- the terminal may encapsulate the object data into at least one TLS frame, and the last TLS frame in the at least one TLS frame is the last TLS frame corresponding to the object data, and respectively encapsulate each TLS frame into at least one TCP.
- the data packet, the last TCP packet in the at least one TCP packet includes indication information indicating that the last TCP packet is the last TCP packet corresponding to the TLS frame.
- the terminal encapsulates the object data into two TLS frames, where TLS frame2 is the last TLS frame corresponding to the object data, and TLS frame1 and TLS frame2 are only Contains the object data. Further, the terminal may encapsulate the TLS frame1 into three TCP data packets, where the TCP3 data packet includes indication information, and the indication information is used to indicate that the TCP3 data packet is the last TCP data packet corresponding to the TLS frame1, specifically, the TCP3 data packet.
- the length of the data part may be 0, thereby indicating that the TCP3 data packet is the last TCP data packet corresponding to the TLS frame1; or when the data volume of the TCP3 data packet is less than the preset MSS, the indication information may be the data amount of the TCP3 data packet, thereby The TCP3 data packet is indicated as the last TCP data packet corresponding to the TLS frame1; or the indication information may be the identification information contained in the header of the TCP3 data packet, thereby indicating that the TCP3 data packet is the last TCP data packet corresponding to the TLS frame1.
- the terminal can encapsulate the TLS frame 2 into five TCP data packets, wherein the TCP8 data packet includes indication information, and the indication information is used to indicate that the TCP8 data packet is the last TCP data packet corresponding to the TLS frame2, specifically, the TCP8 data packet.
- the length of the data part may be 0, thereby indicating that the TCP8 data packet is the last TCP data packet corresponding to the TLS frame2; or when the data volume of the TCP8 data packet is less than the preset MSS, the indication information may be the data volume of the TCP8 data packet.
- the TCP8 data packet is indicated as the last TCP data packet corresponding to the TLS frame2; or the indication information may be the identification information contained in the header of the TCP8 data packet, thereby indicating that the TCP8 data packet is the last TCP data packet corresponding to the TLS frame2.
- the embodiment of the present invention can ensure that the data part of the TCP1 ⁇ TCP3 data packet only includes the data of the TLS frame1, the data part of the TCP4 ⁇ TCP8 data packet only includes the data of the TLS frame2, and the TLS frame1 and the TLS frame2 only include the object data.
- the terminal may encapsulate the object data into at least one TLS frame, and the last TLS frame in the at least one TLS frame is the last TLS frame corresponding to the object data, and all the TLS frames in the at least one TLS frame
- the packet is encapsulated into at least one TCP packet, and the last TCP packet in the at least one TCP packet includes indication information indicating that the last TCP packet is the last TCP packet corresponding to the object data.
- the terminal encapsulates the object data into two TLS frames, where TLS frame2 is the last TLS frame corresponding to the object data, and TLS frame1 and TLS frame2 are only Contains the object data.
- the terminal may encapsulate the TLS frame1 and the TL S frame2 into eight TCP data packets, where the TCP8 data packet includes indication information, where the indication information is used to indicate that the TCP8 data packet is the last TCP data packet corresponding to the object data, and the specific The length of the data part of the TCP8 data packet may be 0, thereby indicating that the TCP8 data packet is the last TCP data packet corresponding to the object data; or when the data volume of the TCP8 data packet is less than the preset MSS, the indication information may be TCP8 data.
- the amount of data of the packet thereby indicating that the TCP3 data packet is the last TCP data packet corresponding to the object data; or the indication information may be identification information included in the header of the TCP8 data packet, thereby indicating that the TCP8 data packet corresponds to the object data.
- the data portion of the TCP3 packet may include data of TLS frame1 and data of TLS frame2.
- the data amount of the TCP1 ⁇ TCP7 data packet can be equal to the preset MSS.
- the data portion of the TCP packet includes only the object data, and the data portion of the TCP packet may include data of a plurality of TLS frames.
- the TCP data packet corresponding to the object data of one URI includes only one indication information.
- the object data is encapsulated as a TLS frame
- the TLS frame may include data type information
- the data type information is used to indicate the data type of the TLS frame.
- the TLS frame format can be As shown in FIG. 7F, the terminal may add data type information in the ContentType field of the TLS frame, and the data type information is used to indicate the data type of the TLS frame.
- the terminal when the terminal encapsulates the TLS frame into at least one TCP data packet, the data type information may be added in the header of the at least one TCP data packet, where the data type information is used to indicate the data type of the data portion of the TCP data packet.
- S1302 Send at least one TCP data packet to the node device.
- At least one TCP data packet may be sent to the node device.
- the terminal may receive the TCP data packet sent by the node device, and send the TCP data packet to be sent in the at least one TCP data packet to the node device to send the The acknowledgment sequence number of the TCP packet, and the acknowledgment sequence number is used to indicate that the TCP packet sent by the node device is correctly received.
- the terminal may send an ACK data packet to the node device, where the data portion of the ACK data packet has a length of 0, and is used to indicate that the terminal correctly receives the TCP sent by the node device. Packets, resource utilization is low.
- the TCP data packet to be sent in the at least one TCP data packet may carry the acknowledgement sequence number of the TCP data packet sent by the node device, and the confirmation sequence number is used to indicate that the sequence number is correct.
- the TCP packet sent by the node device is received.
- the ACK packet is not sent separately, the TCP packet sent by the node device is correctly received, which improves resource utilization.
- the object data of one URI is encapsulated into at least one TCP data packet, and the last TCP data packet in the at least one TCP data packet includes indication information indicating the last TCP data.
- the packet is the last TCP packet corresponding to the object data, and at least one TCP packet is sent to the node device to ensure that the data portion of a TCP packet includes only object data of one URI.
- FIG. 14 is a schematic flowchart of a data parsing method according to an embodiment of the present invention. As shown in the figure, the data parsing method in the embodiment of the present invention may include:
- S1401 Receive, by the node device, at least one TCP packet that encapsulates object data of one URI, and the last TCP packet in the at least one TCP packet includes indication information.
- the terminal may receive at least one of the object data encapsulated by the node device and sent by the node device.
- the TCP packet, the last TCP packet in the at least one TCP packet includes indication information indicating that the last TCP packet is the last TCP packet corresponding to the object data.
- the node device may encapsulate the object data of one URI into at least one TCP data packet, and the last TCP data packet in the at least one TCP data packet includes indication information, and the node device sends the at least one TCP data packet to the terminal, and the terminal Receiving at least one of the above TCP packets.
- the terminal may send the TCP data packet to the node device before receiving the at least one TCP data packet that the object data of the URI is encapsulated by the node device. Further, after the terminal receives the at least one TCP data packet that is encapsulated into the object data of the URI by the node device, when the received TCP data packet carries the acknowledgement sequence number of the TCP data packet sent to the node device, the terminal may confirm the The sequence number determines that the node device correctly receives the TCP packet sent to the node device.
- the terminal may send a TCP data packet to the node device, where the node device receives the TCP data packet sent by the terminal, and carries the TCP data packet to be sent in the at least one TCP data packet.
- the terminal may determine, according to the acknowledgement sequence number, that the node device correctly receives the TCP packet sent by the terminal.
- S1402. Determine, according to the indication information, a starting TCP packet corresponding to the object data of the next URI.
- the terminal may determine, according to the indication information, a starting TCP data packet corresponding to the object data of the next URI, where the initial TCP data packet corresponding to the object data of the next URI is the next TCP data of the last TCP data packet corresponding to the object data. package.
- the terminal may determine that the next TCP packet is the starting TCP packet corresponding to the object data of the next URI. For example, the node device adds a TCP packet after the last TCP packet containing the data corresponding to the object data, wherein the length of the data portion of the added TCP packet is 0, the terminal can determine the next one of the added TCP packet.
- the TCP packet is the starting TCP packet corresponding to the object data of the next URI.
- the terminal may determine that the next TCP packet is the initial TCP data corresponding to the object data of the next URI. package. For example, the terminal may determine whether the data volume of each TCP packet is less than a preset MSS. When the data volume of the TCP packet is less than the preset MSS, the terminal may determine that the next TCP packet of the TCP packet is the object of the next URI. The starting TCP packet corresponding to the data.
- the terminal may determine whether the length of the data portion of the next TCP packet is 0, and when the length of the data portion of the next TCP packet is 0, the terminal It can be determined that the next TCP packet of the TCP packet whose length of the data portion is 0 is the starting TCP packet corresponding to the object data of the next URI. Further, when the data volume of the TCP data packet is equal to the preset MSS, the terminal may determine whether the header of each TCP data packet includes the identifier information. When the header of the TCP data packet includes the identifier information, the terminal may determine the TCP data packet. The next TCP packet is the starting TCP packet corresponding to the object data of the next URI.
- the terminal may determine that the next TCP packet is the starting TCP packet corresponding to the object data of the next URI. For example, the terminal may determine whether the header of each TCP packet includes the identifier information. When the header of the TCP packet includes the identifier information, the terminal may determine that the next TCP packet of the TCP packet corresponds to the object data of the next URI. Start TCP packets.
- the terminal may receive the notification message sent by the node device according to the indication information, before determining the initial TCP data packet corresponding to the object data of the next URI, and obtain the last TCP data corresponding to the object data according to the notification message.
- the instructions in the package For example, the terminal receives the notification message sent by the node device, and the notification message is used to indicate that the terminal identifies the boundary of the object data of the next URI, and then performs data parsing on the object data of the next URI, and the terminal may acquire the object data according to the notification message.
- the indication information in the last TCP packet determines the starting TCP packet corresponding to the object data of the next URI according to the indication information, and performs data parsing on the object data of the next URI from the start TCP packet.
- the object data of the next URI may be parsed from the starting TCP packet. For example, if the terminal determines that the initial TCP packet corresponding to the object data of the next URI is the third TCP packet, the terminal may parse the frame header and the payload of the object data of the next URI from the third TCP packet, and according to the payload.
- the data in the data identifies the data type of the object data of the next URI.
- Object data Types can include text, images, video or audio.
- the header of the at least one TCP packet may include data type information
- the terminal may acquire the data type of the data portion of the TCP packet according to the data type information, and thereby obtain the data type of the object data.
- the object data is blindly parsed through the frame header of the object data, and the data type of the object data cannot be accurately obtained.
- the embodiment of the present invention obtains the data type of the data part of the TCP data packet according to the data type information, and further acquires the data type of the object data, thereby improving the accuracy of data analysis.
- the receiving node device encapsulates at least one TCP packet of the object data of one URI, and the last TCP packet of the at least one TCP packet includes indication information, according to the indication information. Determining the starting TCP packet corresponding to the object data of the next URI, and performing data parsing on the object data of the next URI from the initial TCP packet, which can effectively identify the boundary of the object data of the next URI, so as to implement the next Data parsing of object data of a URI.
- FIG. 15 is a schematic structural diagram of a data transmission apparatus according to an embodiment of the present invention.
- the data transmission apparatus may be used to implement some or all of the steps in the method embodiment shown in FIG.
- the data transmission device may at least include a packaging unit 1501 and a transmitting unit 1502, where:
- the encapsulating unit 1501 is configured to encapsulate the object data of one URI into at least one TCP data packet, and the last TCP data packet in the at least one TCP data packet includes indication information, where the indication information is used to indicate that the last TCP data packet is corresponding to the object data.
- the last TCP packet, the object data is used to indicate the resource identified by the URI.
- the sending unit 1502 is configured to send at least one TCP data packet to the node device.
- the data portion of the last TCP packet has a length of zero, indicating that the last TCP packet is the last TCP packet corresponding to the object data.
- the header of the last TCP packet includes a sending sequence number and an acknowledgment sequence number
- the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the object data of the next URI, and the acknowledgment sequence number is based on the received node. The data sent by the device is confirmed.
- the header of the last TCP packet includes a sequence number and a confirmation sequence number.
- the sending sequence number is the same as the sending number of the starting TCP packet corresponding to the object data of the next URI
- the confirmation sequence number is the same as the confirmation number of the previous packet of the last TCP packet.
- the method further includes:
- the obtaining unit 1503 is configured to: before the encapsulating unit 1501 encapsulates the object data into the at least one TCP data packet, acquiring object data sent by the management terminal, where the object data includes terminal identification information, where the terminal identifier information is used to indicate at least one TCP corresponding to the object data.
- the data packet is sent to the node device corresponding to the terminal identification information.
- the encapsulating unit 1501 is configured to add a TCP packet after the last TCP packet containing the data corresponding to the object data, and the length of the data portion of the added TCP packet is 0.
- the encapsulating unit 1501 is configured to: when the data volume of the last TCP packet containing the data corresponding to the object data is less than the preset MSS, the last TCP packet containing the data includes only the object data, the indication information. The amount of data for the last TCP packet containing data.
- the indication information is identification information contained in a header of the last TCP packet.
- the data portion of at least one TCP packet includes only object data.
- the method further includes:
- the receiving unit 1504 is configured to receive a TCP data packet sent by the node device.
- the encapsulating unit 1501 is configured to carry, in the TCP data packet to be sent in the at least one TCP data packet, an acknowledgement sequence number of the TCP data packet sent by the node device, where the acknowledge sequence number is used to indicate that the TCP data packet sent by the node device is correctly received.
- the sending unit 1502 is further configured to: before the encapsulating unit 1501 encapsulates the object data into the at least one TCP data packet, send a notification message to the node device, where the notification message is used for the last TCP in the at least one TCP data packet.
- the data packet includes indication information indicating that the last TCP data packet is the last TCP data packet corresponding to the object data.
- the header of the at least one TCP packet includes data type information, the data type information being used to indicate the data type of the data portion of the TCP packet.
- the object data is HTTP 1.1 data or HTTP 1.0 data.
- the encapsulating unit 1501 is configured to encapsulate the object data into at least one TLS. a frame, the last TLS frame in the at least one TLS frame is the last TLS frame corresponding to the object data; all the TLS frames in the at least one TLS frame are encapsulated into at least one TCP packet, and the last TCP in the at least one TCP packet
- the data packet includes indication information indicating that the last TCP data packet is the last TCP data packet corresponding to the object data.
- the encapsulating unit 1501 is configured to encapsulate the object data into at least one TLS frame, and the last TLS frame in the at least one TLS frame is the last TLS frame corresponding to the object data; respectively, encapsulating each TLS frame into At least one TCP packet, the last TCP packet in the at least one TCP packet includes indication information indicating that the last TCP packet is the last TCP packet corresponding to the TLS frame.
- each TLS frame includes data type information, and the data type information is used to indicate a data type of the TLS frame.
- the method further includes:
- the compressing unit 1505 is configured to compress the object data into at least one compressed packet before the encapsulating unit 1501 encapsulates the object data into the at least one TCP packet, and the at least one compressed packet includes only the object data.
- the encapsulating unit 1501 encapsulates the object data of one URI into at least one TCP packet, and the last TCP packet in the at least one TCP packet includes indication information indicating the last information.
- a TCP packet is the last TCP packet corresponding to the object data, and the transmitting unit 1502 transmits at least one TCP packet to the node device, which ensures that the data portion of one TCP packet includes only object data of one URI.
- FIG. 16 is a schematic structural diagram of a node device according to a third embodiment of the present invention.
- the node device provided by the embodiment of the present invention may be used to implement the method implemented by the foregoing embodiments of the present invention shown in FIG.
- FIG. 16 For the convenience of description, only the parts related to the embodiments of the present invention are shown.
- FIG. 16 For the specific technical details not disclosed, please refer to the embodiments of the present invention shown in FIG.
- the node device includes at least one processor 1601, such as a CPU, at least one network interface 1603, a memory 1604, and at least one communication bus 1602.
- the communication bus 1602 is used to implement connection communication between these components.
- the network interface 1603 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface) for communicating with an external network.
- the memory 1604 may include a high speed RAM memory, and may also include a non-unstable memory. (non-volatile memory), such as at least one disk storage.
- the memory 1604 can optionally include at least one storage device located remotely from the processor 1601.
- the processor 1601 can be combined with the data transmission device shown in FIG. A set of program codes is stored in the memory 1604, and the processor 1601 calls the program code stored in the memory 1604 for performing the following operations:
- the object data is used to indicate the resource identified by the URI.
- At least one TCP data packet is transmitted to the node device through the network interface 1603.
- the data portion of the last TCP packet has a length of zero, indicating that the last TCP packet is the last TCP packet corresponding to the object data.
- the header of the last TCP packet includes a sending sequence number and an acknowledgment sequence number
- the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the object data of the next URI, and the acknowledgment sequence number is based on the received node. The data sent by the device is confirmed.
- the header of the last TCP packet includes a sending sequence number and an acknowledgment sequence number
- the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the object data of the next URI, and the acknowledgment sequence number and the last TCP data are confirmed.
- the confirmation number of the previous packet of the packet is the same.
- the processor 1601 may further perform the following operations:
- the object data sent by the management terminal is obtained through the network interface 1603.
- the object data includes terminal identification information, and the terminal identification information is used to send the at least one TCP data packet corresponding to the object data to the node device corresponding to the terminal identification information.
- the processor 1601 encapsulates object data of a URI into at least one TCP packet, which may be:
- a TCP packet is added after the last TCP packet containing the data corresponding to the object data, and the length of the data portion of the added TCP packet is 0.
- the processor 1601 encapsulates object data of a URI into at least one TCP packet, which may be:
- the amount of data of the last TCP packet containing data corresponding to the object data is less than the preset.
- the last TCP packet containing data includes only object data, and the indication information is the amount of data of the last TCP packet containing the data.
- the indication information is identification information contained in a header of the last TCP packet.
- the data portion of at least one TCP packet includes only object data.
- the processor 1601 sends the at least one TCP data packet to the node device through the network interface 1603, the following operations may also be performed:
- the TCP packet sent by the node device is received through the network interface 1603.
- the processor 1601 encapsulates the object data of one URI into at least one TCP data packet, which may be:
- the TCP data packet to be sent in the at least one TCP data packet carries the acknowledgement sequence number of the TCP data packet sent by the node device, and the acknowledge sequence number is used to indicate that the TCP data packet sent by the node device is correctly received.
- the processor 1601 may also perform the following operations:
- the network interface 1603 Sending, by the network interface 1603, a notification message to the node device, where the notification message is used for the last TCP data packet in the at least one TCP data packet, and the indication information is used to indicate that the last TCP data packet is the last TCP data corresponding to the object data. package.
- the header of the at least one TCP packet includes data type information, the data type information being used to indicate the data type of the data portion of the TCP packet.
- the object data is HTTP 1.1 data or HTTP 1.0 data.
- the processor 1601 encapsulates object data of a URI into at least one TCP packet, which may be:
- the object data is encapsulated into at least one TLS frame, and the last TLS frame in the at least one TLS frame is the last TLS frame corresponding to the object data.
- the processor 1601 encapsulates object data of one URI into at least one TCP packets, which can be:
- the object data is encapsulated into at least one TLS frame, and the last TLS frame in the at least one TLS frame is the last TLS frame corresponding to the object data.
- Each TLS frame is encapsulated into at least one TCP data packet, and the last TCP data packet in the at least one TCP data packet includes indication information indicating that the last TCP data packet is the last TCP data packet corresponding to the TLS frame.
- each TLS frame includes data type information, the data type information being used to indicate the data type of the TLS frame.
- the processor 1601 may also perform the following operations:
- the object data is compressed into at least one compressed package, and at least one compressed package includes only object data.
- terminal introduced in the embodiment of the present invention may be used to implement some or all of the processes in the method embodiment introduced by the present invention in conjunction with FIG.
- FIG. 17 is a schematic structural diagram of a data parsing apparatus according to an embodiment of the present invention.
- the data parsing apparatus may be used to implement some or all of the steps in the method embodiment shown in FIG.
- the data parsing apparatus may include at least a receiving unit 1701, a determining unit 1702, and a parsing unit 1703, where:
- the receiving unit 1701 is configured to receive, by the node device, at least one TCP data packet that encapsulates object data of one URI, and the last TCP data packet in the at least one TCP data packet includes indication information, where the indication information is used to indicate the last TCP
- the data packet is the last TCP data packet corresponding to the object data, and the object data is used to indicate the resource identified by the URI.
- the determining unit 1702 is configured to determine, according to the indication information, a starting TCP data packet corresponding to the object data of the next URI.
- the parsing unit 1703 is configured to perform data parsing on the object data of the next URI from the start of the TCP packet.
- the determining unit 1702 is configured to determine, when the length of the data portion of the last TCP packet is 0, the next TCP packet as the starting TCP packet corresponding to the object data of the next URI.
- the determining unit 1702 is configured to determine, when the data volume of the last TCP packet is less than the preset MSS, the next TCP packet as the initial TCP packet corresponding to the object data of the next URI.
- the determining unit 1702 is configured to: when the header of the last TCP packet includes the identifier information, determine that the next TCP packet is the starting TCP packet corresponding to the object data of the next URI.
- the method further includes:
- the sending unit 1704 is configured to send, by the receiving unit 1701, a TCP data packet to the node device before receiving the at least one TCP data packet sent by the node device.
- the determining unit 1702 is further configured to: when the received TCP data packet carries the acknowledgement sequence number of the TCP data packet sent to the node device, determine, according to the acknowledgement sequence number, that the node device correctly receives the TCP data packet sent to the node device.
- the receiving unit 1701 is further configured to: after the determining unit 1702 determines, according to the indication information, the notification message sent by the node device before determining the initial TCP data packet corresponding to the object data of the next URI.
- the data analysis apparatus in the embodiment of the present invention may further include:
- the obtaining unit 1705 is configured to obtain, according to the notification message, the indication information in the last TCP data packet corresponding to the object data.
- the header of the at least one TCP packet includes data type information
- the parsing unit 1703 is configured to obtain, according to the data type information, a data type of the data portion of the TCP packet.
- the receiving unit 1701 receives at least one TCP packet that is encapsulated by the node device and encapsulates object data of one URI, and the last TCP packet in the at least one TCP packet includes indication information.
- the indication information is used to indicate that the last TCP data packet is the last TCP data packet corresponding to the object data
- the determining unit 1702 determines the initial TCP data packet corresponding to the object data of the next URI according to the indication information
- the parsing unit 1703 starts from the initial TCP data.
- the packet begins to parse the object data of the next URI, which can effectively identify the boundary of the object data of the next URI, so as to implement data parsing of the object data of the next URI.
- FIG. 18 is a schematic structural diagram of a node device according to a fourth embodiment of the present invention.
- the node device provided by the embodiment of the present invention may be used to implement the method implemented by the foregoing embodiments of the present invention shown in FIG.
- FIG. 18 For the convenience of description, only parts related to the embodiment of the present invention are shown. Without specific details, please refer to the embodiments of the present invention shown in FIG.
- the terminal device includes: at least one processor 1801, such as a CPU, at least one network interface 1803, a memory 1804, and at least one communication bus 1802.
- the communication bus 1802 is used to implement connection communication between these components.
- the network interface 1803 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface) for communicating with an external network.
- the memory 1804 may include a high speed RAM memory and may also include a non-stable memory such as at least one disk memory.
- the memory 1804 can optionally include at least one storage device located remotely from the aforementioned processor 1801.
- the processor 1801 can be combined with the data analysis device shown in FIG. A set of program codes is stored in the memory 1804, and the processor 1801 calls the program code stored in the memory 1804 for performing the following operations:
- the initial TCP packet corresponding to the object data of the next URI is determined.
- Data analysis is performed on the object data of the next URI from the start of the TCP packet.
- the processor 1801 determines, according to the indication information, a starting TCP packet corresponding to the object data of the next URI, which may be specifically:
- the next TCP packet is the starting TCP packet corresponding to the object data of the next URI.
- the processor 1801 determines, according to the indication information, a starting TCP packet corresponding to the object data of the next URI, which may be specifically:
- the next TCP packet is the starting TCP packet corresponding to the object data of the next URI.
- the processor 1801 determines, according to the indication information, a starting TCP packet corresponding to the object data of the next URI, which may be specifically:
- the next TCP packet is the starting TCP packet corresponding to the object data of the next URI.
- the processor 1801 may also perform the following operations:
- a TCP packet is sent to the node device through the network interface 1803.
- the processor 1801 may also perform the following operations:
- the node device When the received TCP packet carries the acknowledgement sequence number of the TCP packet sent to the node device, it is determined that the node device correctly receives the TCP packet sent to the node device according to the acknowledgement sequence number.
- the processor 1801 determines the start TCP packet corresponding to the object data of the next URI according to the indication information, the following operations may also be performed:
- the notification message sent by the node device is received through the network interface 1803.
- the indication information in the last TCP packet corresponding to the object data is obtained.
- the header of the at least one TCP packet includes data type information, and the processor 1801 performs data parsing on the object data of the next URI from the start of the TCP packet, which may be:
- the data type of the data part of the TCP packet is obtained.
- terminal introduced in the embodiment of the present invention may be used to implement some or all of the processes in the method embodiment introduced by the present invention in conjunction with FIG.
- FIG. 19 is a schematic structural diagram of a data transmission system according to an embodiment of the present invention.
- the data transmission system in the embodiment of the present invention may include at least a data transmission device 1901 and a data analysis device 1902. among them:
- the data transmission device 1901 is configured to encapsulate the object data of one URI into at least one TCP data packet, wherein the last TCP data packet in the at least one TCP data packet may include indication information, where the indication information may be used to indicate the last TCP data.
- the package is the last TCP packet corresponding to the object data.
- the data transmission device 1901 is further configured to send at least one TCP data packet to the data analysis device. 1902.
- the data parsing device 1902 is configured to determine, according to the indication information, a starting TCP packet corresponding to the object data of the next URI.
- the data analysis device 1902 is further configured to perform data analysis on the object data of the next URI from the start of the TCP packet.
- the data analysis device 1202 is further configured to transmit the TCP packet after the data analysis to the node device 1904.
- the data parsing device 1902 determines that the next TCP packet is the starting TCP packet corresponding to the object data of the next URI.
- the header of the last TCP packet may include a sending sequence number and an acknowledgement sequence number, wherein the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the object data of the next URI, and the confirming sequence number is based on the received node. The data sent by the device is confirmed.
- the header of the last TCP packet may include a sending sequence number and an acknowledgment sequence number, wherein the sending sequence number is the same as the sending sequence number of the starting TCP packet corresponding to the object data of the next URI, and the acknowledgment sequence number and the last TCP packet are confirmed.
- the confirmation number of the previous packet is the same.
- the following operations may also be performed:
- the object data includes terminal identification information, and the terminal identification information is used to send the at least one TCP data packet corresponding to the object data to the node device corresponding to the terminal identification information.
- the data transmission device 1901 encapsulates the object data of one URI into at least one TCP data packet, which may be:
- the data parsing device 1902 may determine that the next TCP packet is the starting TCP packet corresponding to the object data of the next URI.
- the indication information may be identification information included in a header of the last TCP packet, and when the header of the last TCP packet includes the identification information, the data parsing device 1902 may determine the next TCP packet.
- the data portion of at least one TCP packet includes only data for URI object data.
- the following operations may also be performed:
- the data transmission device 1901 receives the TCP packet transmitted by the data analysis device 1902.
- the data transmission device 1901 encapsulates the object data of one URI into at least one TCP data packet, which may specifically be:
- the TCP data packet to be sent in the at least one TCP data packet carries the acknowledgement sequence number of the TCP data packet sent by the node device, and the acknowledge sequence number is used to indicate that the TCP data packet sent by the node device is correctly received.
- the data parsing device 1902 receives the at least one TCP data packet sent by the data transmission device 1901, the following operations may also be performed:
- the received TCP packet carries the acknowledgment number of the TCP packet transmitted to the data transmission device 1901, it is determined that the data transmission device 1901 correctly receives the TCP packet transmitted by the data analysis device 1902 based on the acknowledgment number.
- the following operations may also be performed:
- a notification message is sent to the node device 1904.
- the notification message is used for the last TCP packet in the at least one TCP packet to include indication information indicating that the last TCP packet is the last TCP packet corresponding to the object data.
- the following operations may also be performed:
- a notification message transmitted by the data transmission device 1901 is received.
- the indication information in the last TCP packet corresponding to the object data is obtained.
- the header of the at least one TCP packet includes data type information, and the data type information is used to indicate the data type of the data portion of the TCP packet, and the data parsing device 1902 starts from the initial TCP packet to the next
- the object data of the URI is used for data analysis, and specifically:
- the data type of the data part of the TCP packet is obtained.
- the following operations may also be performed:
- the object data is compressed into at least one compressed package, and at least one compressed package includes only object data.
- the data transmission device 1901 encapsulates object data of one URI into at least one TCP packet, and the last TCP packet in the at least one TCP packet includes indication information indicating indication information for indicating The last TCP packet is the last TCP packet corresponding to the object data, and the data transmission device 1901 transmits at least one TCP packet to the data parsing device 1902, and the data parsing device 1902 determines the object data of the next URI according to the indication information.
- Starting the TCP packet, and then performing data parsing on the object data of the next URI from the start of the TCP packet, can ensure that the data portion of a TCP packet includes only object data of one URI, so that the data parsing device 1902 can effectively identify the next one.
- first and second are used for descriptive purposes only and are not to be construed as indicating or implying a relative importance or implicitly indicating the number of technical features indicated.
- features defining “first” or “second” may include at least one of the features, either explicitly or implicitly.
- the meaning of "a plurality” is at least two, such as two, three, etc., unless specifically defined otherwise.
- a "computer-readable medium” can be any apparatus that can contain, store, communicate, propagate, or transport a program for use in an instruction execution system, apparatus, or device, or in conjunction with the instruction execution system, apparatus, or device.
- computer readable media include the following: electrical connections (electronic devices) having one or more wires, portable computer disk cartridges (magnetic devices), random access memory (RAM), Read only memory (ROM), erasable editable read only memory (EPROM or flash memory), fiber optic devices, and portable compact disk read only memory (CDROM).
- the computer readable medium may even be a paper or other suitable medium on which the program can be printed, as it may be optically scanned, for example by paper or other medium, followed by editing, interpretation or, if appropriate, other suitable The method is processed to obtain the program electronically and then stored in computer memory.
- portions of the invention may be implemented in hardware, software, firmware or a combination thereof.
- multiple steps or methods may be implemented in software or firmware stored in a memory and executed by a suitable instruction execution system.
- a suitable instruction execution system For example, if implemented in hardware, as in another embodiment, it can be implemented by any one or combination of the following techniques well known in the art: having logic gates for implementing logic functions on data signals. Discrete logic circuits, application specific integrated circuits with suitable combinational logic gates, programmable gate arrays (PGAs), field programmable gate arrays (FPGAs), etc.
- each functional unit in each embodiment of the present invention may be integrated into one processing module, or each unit may exist physically separately, or two or more units may be integrated into one module.
- the above integrated modules can be implemented in the form of hardware or in the form of software functional modules.
- the integrated modules, if implemented in the form of software functional modules and sold or used as stand-alone products, may also be stored in a computer readable storage medium.
- the above mentioned storage medium may be a read only memory, a magnetic disk or an optical disk or the like.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Communication Control (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
Claims (108)
- 一种协议帧传输方法,其特征在于,包括:将一个协议帧封装成至少一个传输控制协议TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述协议帧对应的最后一个TCP数据包;将所述至少一个TCP数据包发送给节点设备。
- 根据权利要求1所述方法,其特征在于,所述最后一个TCP数据包的数据部分的长度为0,从而指示所述最后一个TCP数据包为所述协议帧对应的最后一个TCP数据包。
- 根据权利要求2所述方法,其特征在于,所述最后一个TCP数据包的报头包括发送序号和确认序号;所述发送序号与下一个协议帧对应的起始TCP数据包的发送序号相同,所述确认序号是根据接收的所述节点设备发送的数据确认的。
- 根据权利要求2所述方法,其特征在于,所述最后一个TCP数据包的报头包括发送序号和确认序号;所述发送序号与下一个协议帧对应的起始TCP数据包的发送序号相同,所述确认序号与所述最后一个TCP数据包的前一个数据包的确认序号相同。
- 根据权利要求4所述方法,其特征在于,所述将一个协议帧封装成至少一个TCP数据包之前,还包括:获取管理终端发送的所述协议帧,所述协议帧包括终端标识信息,所述终端标识信息用于指示将所述协议帧对应的至少一个TCP数据包发送给所述终端标识信息对应的节点设备。
- 根据权利要求2~5任一项所述方法,其特征在于,所述将一个协议帧封装成至少一个TCP数据包,包括:在所述协议帧对应的最后一个包含数据的TCP数据包后增加一个TCP数据包,所述增加的TCP数据包的数据部分的长度为0。
- 根据权利要求1所述方法,其特征在于,所述将一个协议帧封装成至少一个TCP数据包,包括:当所述协议帧对应的最后一个包含数据的TCP数据包的数据量小于预设 MSS时,所述最后一个包含数据的TCP数据包仅包括所述协议帧的数据,所述指示信息为所述最后一个包含数据的TCP数据包的数据量。
- 根据权利要求1所述方法,其特征在于,所述指示信息为包含在所述最后一个TCP数据包的报头中的标识信息。
- 根据权利要求1~8任一项所述方法,其特征在于,所述至少一个TCP数据包的数据部分仅包括所述协议帧的数据。
- 根据权利要求1~9任一项所述方法,其特征在于,所述将所述至少一个TCP数据包发送给节点设备之前,还包括:接收所述节点设备发送的TCP数据包;所述将一个协议帧封装成至少一个TCP数据包,包括:在所述至少一个TCP数据包中的待发送的TCP数据包中携带所述节点设备发送的TCP数据包的确认序号,所述确认序号用于指示正确接收所述节点设备发送的TCP数据包。
- 根据权利要求1~10任一项所述方法,其特征在于,所述将一个协议帧封装成至少一个TCP数据包之前,还包括:向所述节点设备发送通知消息,所述通知消息用于所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述协议帧对应的最后一个TCP数据包。
- 根据权利要求11所述方法,其特征在于,所述通知消息携带在所述协议帧的HTTP2.0头域或者HTTP2.0设置帧中。
- 根据权利要求1~12任一项所述方法,其特征在于,所述至少一个TCP数据包的报头包括数据类型信息,所述数据类型信息用于指示所述TCP数据包的数据部分的数据类型。
- 根据权利要求1~13任一项所述方法,其特征在于,所述协议帧为传输层安全TLS帧或者超文本传输协议HTTP帧。
- 根据权利要求1~14任一项所述方法,其特征在于,所述协议帧为HTTP帧;所述将一个协议帧封装成至少一个TCP数据包,包括:将所述HTTP帧封装成至少一个TLS帧,所述至少一个TLS帧中的最后 一个TLS帧为所述HTTP帧对应的最后一个TLS帧;将所述至少一个TLS帧中的所有TLS帧封装成至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述HTTP帧对应的最后一个TCP数据包。
- 根据权利要求1~14任一项所述方法,其特征在于,所述协议帧为HTTP帧;所述将一个协议帧封装成至少一个TCP数据包,包括:将所述HTTP帧封装成至少一个TLS帧,所述至少一个TLS帧中的最后一个TLS帧为所述HTTP帧对应的最后一个TLS帧;分别将各个所述TLS帧封装成至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述TLS帧对应的最后一个TCP数据包。
- 根据权利要求1~14任一项所述方法,其特征在于,所述协议帧为TLS帧,所述TLS帧包括数据类型信息,所述数据类型信息用于指示所述TLS帧的数据类型。
- 根据权利要求1~17任一项所述方法,其特征在于,所述将一个协议帧封装成至少一个TCP数据包之前,还包括:将所述协议帧压缩成至少一个压缩包,所述至少一个压缩包仅包括所述协议帧。
- 一种协议帧解析方法,其特征在于,包括:接收节点设备发送的将一个协议帧封装成的至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述协议帧对应的最后一个TCP数据包;根据所述指示信息,确定下一个协议帧对应的起始TCP数据包;从所述起始TCP数据包开始对所述下一个协议帧进行数据解析。
- 根据权利要求19所述方法,其特征在于,所述根据所述指示信息,确定下一个协议帧对应的起始TCP数据包包括:当所述最后一个TCP数据包的数据部分的长度为0时,确定下一个TCP数据包为所述下一个协议帧对应的起始TCP数据包。
- 根据权利要求19所述方法,其特征在于,所述根据所述指示信息,确定下一个协议帧对应的起始TCP数据包包括:当所述最后一个TCP数据包的数据量小于预设MSS时,确定下一个TCP数据包为所述下一个协议帧对应的起始TCP数据包。
- 根据权利要求19所述方法,其特征在于,所述根据所述指示信息,确定下一个协议帧对应的起始TCP数据包包括:当所述最后一个TCP数据包的报头包括标识信息时,确定下一个TCP数据包为所述下一个协议帧对应的起始TCP数据包。
- 根据权利要求19~22任一项所述方法,其特征在于,所述接收节点设备发送的将一个协议帧封装成的至少一个TCP数据包之前,还包括:向所述节点设备发送TCP数据包;所述接收节点设备发送的将一个协议帧封装成的至少一个TCP数据包之后,还包括:当所述接收的TCP数据包中携带向所述节点设备发送的TCP数据包的确认序号时,根据所述确认序号,确定所述节点设备正确接收向所述节点设备发送的TCP数据包。
- 根据权利要求19~23任一项所述方法,其特征在于,所述根据所述指示信息,确定下一个协议帧对应的起始TCP数据包之前,还包括:接收所述节点设备发送的通知消息;根据所述通知消息,获取所述协议帧对应的所述最后一个TCP数据包中的指示信息。
- 根据权利要求19~24任一项所述方法,其特征在于,所述至少一个TCP数据包的报头包括数据类型信息;所述从所述起始TCP数据包开始对所述下一个协议帧进行数据解析包括:根据所述数据类型信息,获取所述TCP数据包的数据部分的数据类型。
- 根据权利要求19~25任一项所述方法,其特征在于,所述从所述起始TCP数据包对所述下一个协议帧进行数据解析之前,还包括:确定所述下一个协议帧是通过静态表实现报头字段压缩的。
- 根据权利要求19~26任一项所述方法,其特征在于,所述下一个协议帧对应的各个TCP数据包属于同一HTPP2.0流;所述从所述起始TCP数据包开始对所述下一个协议帧进行数据解析之后,还包括:当对所述下一个协议帧数据解析失败时,暂停对所述HTTP2.0流包括的协议帧进行数据解析。
- 一种数据传输方法,其特征在于,包括:将一个统一资源标识符URI的对象数据封装成至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述对象数据对应的最后一个TCP数据包,所述对象数据用于指示所述URI标识的资源;将所述至少一个TCP数据包发送给节点设备。
- 根据权利要求28所述方法,其特征在于,所述最后一个TCP数据包的数据部分的长度为0,从而指示所述最后一个TCP数据包为所述对象数据对应的最后一个TCP数据包。
- 根据权利要求29所述方法,其特征在于,所述最后一个TCP数据包的报头包括发送序号和确认序号;所述发送序号与下一个URI的对象数据对应的起始TCP数据包的发送序号相同,所述确认序号是根据接收的所述节点设备发送的数据确认的。
- 根据权利要求29所述方法,其特征在于,所述最后一个TCP数据包的报头包括发送序号和确认序号;所述发送序号与下一个URI的对象数据对应的起始TCP数据包的发送序号相同,所述确认序号与所述最后一个TCP数据包的前一个数据包的确认序号相同。
- 根据权利要求31所述方法,其特征在于,所述将一个URI的对象数据封装成至少一个TCP数据包之前,还包括:获取管理终端发送的所述对象数据,所述对象数据包括终端标识信息,所述终端标识信息用于指示将所述对象数据对应的至少一个TCP数据包发送给 所述终端标识信息对应的节点设备。
- 根据权利要求29~32任一项所述方法,其特征在于,所述将一个URI的对象数据封装成至少一个TCP数据包,包括:在所述对象数据对应的最后一个包含数据的TCP数据包后增加一个TCP数据包,所述增加的TCP数据包的数据部分的长度为0。
- 根据权利要求28所述方法,其特征在于,所述将一个URI的对象数据封装成至少一个TCP数据包,包括:当所述对象数据对应的最后一个包含数据的TCP数据包的数据量小于预设MSS时,所述最后一个包含数据的TCP数据包仅包括所述对象数据,所述指示信息为所述最后一个包含数据的TCP数据包的数据量。
- 根据权利要求28所述方法,其特征在于,所述指示信息为包含在所述最后一个TCP数据包的报头中的标识信息。
- 根据权利要求28~35任一项所述方法,其特征在于,所述至少一个TCP数据包的数据部分仅包括所述对象数据。
- 根据权利要求28~36任一项所述方法,其特征在于,所述将所述至少一个TCP数据包发送给节点设备之前,还包括:接收所述节点设备发送的TCP数据包;所述将一个URI的对象数据封装成至少一个TCP数据包,包括:在所述至少一个TCP数据包中的待发送的TCP数据包中携带所述节点设备发送的TCP数据包的确认序号,所述确认序号用于指示正确接收所述节点设备发送的TCP数据包。
- 根据权利要求28~37任一项所述方法,其特征在于,所述将一个URI的对象数据封装成至少一个TCP数据包之前,还包括:向所述节点设备发送通知消息,所述通知消息用于所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述对象数据对应的最后一个TCP数据包。
- 根据权利要求28~38任一项所述方法,其特征在于,所述至少一个TCP数据包的报头包括数据类型信息,所述数据类型信息用于指示所述TCP数据包的数据部分的数据类型。
- 根据权利要求28~39任一项所述方法,其特征在于,所述对象数据为HTTP1.1数据或者HTTP1.0数据。
- 根据权利要求28~40任一项所述方法,其特征在于,所述将一个URI的对象数据封装成至少一个TCP数据包,包括:将所述对象数据封装成至少一个TLS帧,所述至少一个TLS帧中的最后一个TLS帧为所述对象数据对应的最后一个TLS帧;将所述至少一个TLS帧中的所有TLS帧封装成至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述对象数据对应的最后一个TCP数据包。
- 根据权利要求28~40任一项所述方法,其特征在于,所述将一个URI的对象数据封装成至少一个TCP数据包,包括:将所述对象数据封装成至少一个TLS帧,所述至少一个TLS帧中的最后一个TLS帧为所述对象数据对应的最后一个TLS帧;分别将各个所述TLS帧封装成至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述TLS帧对应的最后一个TCP数据包。
- 根据权利要求41或者42所述方法,其特征在于,各个所述TLS帧包括数据类型信息,所述数据类型信息用于指示所述TLS帧的数据类型。
- 根据权利要求28~43任一项所述方法,其特征在于,所述将一个URI的对象数据封装成至少一个TCP数据包之前,还包括:将所述对象数据压缩成至少一个压缩包,所述至少一个压缩包仅包括所述对象数据。
- 一种数据解析方法,其特征在于,包括:接收节点设备发送的将一个URI的对象数据封装成的至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述对象数据对应的最后一个TCP数据包,所述对象数据用于指示所述URI标识的资源;根据所述指示信息,确定下一个URI的对象数据对应的起始TCP数据包;从所述起始TCP数据包开始对所述下一个URI的对象数据进行数据解析。
- 根据权利要求45所述方法,其特征在于,所述根据所述指示信息,确定下一个URI的对象数据对应的起始TCP数据包包括:当所述最后一个TCP数据包的数据部分的长度为0时,确定下一个TCP数据包为所述下一个URI的对象数据对应的起始TCP数据包。
- 根据权利要求45所述方法,其特征在于,所述根据所述指示信息,确定下一个URI的对象数据对应的起始TCP数据包包括:当所述最后一个TCP数据包的数据量小于预设MSS时,确定下一个TCP数据包为所述下一个URI的对象数据对应的起始TCP数据包。
- 根据权利要求45所述方法,其特征在于,所述根据所述指示信息,确定下一个URI的对象数据对应的起始TCP数据包包括:当所述最后一个TCP数据包的报头包括标识信息时,确定下一个TCP数据包为所述下一个URI的对象数据对应的起始TCP数据包。
- 根据权利要求45~48任一项所述方法,其特征在于,所述接收节点设备发送的将一个URI的对象数据封装成的至少一个TCP数据包之前,还包括:向所述节点设备发送TCP数据包;所述接收节点设备发送的将一个URI的对象数据封装成的至少一个TCP数据包之后,还包括:当所述接收的TCP数据包中携带向所述节点设备发送的TCP数据包的确认序号时,根据所述确认序号,确定所述节点设备正确接收向所述节点设备发送的TCP数据包。
- 根据权利要求45~49任一项所述方法,其特征在于,所述根据所述指示信息,确定下一个URI的对象数据对应的起始TCP数据包之前,还包括:接收所述节点设备发送的通知消息;根据所述通知消息,获取所述对象数据对应的所述最后一个TCP数据包中的指示信息。
- 根据权利要求45~50任一项所述方法,其特征在于,所述至少一个TCP数据包的报头包括数据类型信息;所述从所述起始TCP数据包开始对所述下一个URI的对象数据进行数据 解析包括:根据所述数据类型信息,获取所述TCP数据包的数据部分的数据类型。
- 一种协议帧传输装置,其特征在于,包括:封装单元,用于将一个协议帧封装成至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述协议帧对应的最后一个TCP数据包;发送单元,用于将所述至少一个TCP数据包发送给节点设备。
- 根据权利要求52所述装置,其特征在于,所述最后一个TCP数据包的数据部分的长度为0,从而指示所述最后一个TCP数据包为所述协议帧对应的最后一个TCP数据包。
- 根据权利要求53所述装置,其特征在于,所述最后一个TCP数据包的报头包括发送序号和确认序号;所述发送序号与下一个协议帧对应的起始TCP数据包的发送序号相同,所述确认序号是根据接收的所述节点设备发送的数据确认的。
- 根据权利要求53所述装置,其特征在于,所述最后一个TCP数据包的报头包括发送序号和确认序号;所述发送序号与下一个协议帧对应的起始TCP数据包的发送序号相同,所述确认序号与所述最后一个TCP数据包的前一个数据包的确认序号相同。
- 根据权利要求55所述装置,其特征在于,还包括:获取单元,用于所述封装单元将所述协议帧封装成所述至少一个TCP数据包之前,获取管理终端发送的所述协议帧,所述协议帧包括终端标识信息,所述终端标识信息用于指示将所述协议帧对应的至少一个TCP数据包发送给所述终端标识信息对应的节点设备。
- 根据权利要求53~56任一项所述装置,其特征在于,所述封装单元,用于在所述协议帧对应的最后一个包含数据的TCP数据包后增加一个TCP数据包,所述增加的TCP数据包的数据部分的长度为0。
- 根据权利要求52所述装置,其特征在于,所述封装单元,用于当所述协议帧对应的最后一个包含数据的TCP数据包的数据量小于预设MSS时,所述最后一个包含数据的TCP数据包仅包括所 述协议帧的数据,所述指示信息为所述最后一个包含数据的TCP数据包的数据量。
- 根据权利要求52所述装置,其特征在于,所述指示信息为包含在所述最后一个TCP数据包的报头中的标识信息。
- 根据权利要求52~59任一项所述装置,其特征在于,所述至少一个TCP数据包的数据部分仅包括所述协议帧的数据。
- 根据权利要求52~60任一项所述装置,其特征在于,还包括:接收单元,用于接收所述节点设备发送的TCP数据包;所述封装单元,用于在所述至少一个TCP数据包中的待发送的TCP数据包中携带所述节点设备发送的TCP数据包的确认序号,所述确认序号用于指示正确接收所述节点设备发送的TCP数据包。
- 根据权利要求52~61任一项所述装置,其特征在于,所述发送单元,还用于所述封装单元将所述协议帧封装成所述至少一个TCP数据包之前,向所述节点设备发送通知消息,所述通知消息用于所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述协议帧对应的最后一个TCP数据包。
- 根据权利要求62所述装置,其特征在于,所述通知信息携带在所述协议帧的HTTP2.0头域或者HTTP2.0设置帧中。
- 根据权利要求52~63任一项所述装置,其特征在于,所述至少一个TCP数据包的报头包括数据类型信息,所述数据类型信息用于指示所述TCP数据包的数据部分的数据类型。
- 根据权利要求52~64任一项所述装置,其特征在于,所述协议帧为TLS帧或者HTTP帧。
- 根据权利要求52~65任一项所述装置,其特征在于,所述协议帧为HTTP帧;所述封装单元,用于将所述HTTP帧封装成至少一个TLS帧,所述至少一个TLS帧中的最后一个TLS帧为所述HTTP帧对应的最后一个TLS帧;将所述至少一个TLS帧中的所有TLS帧封装成至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于 指示所述最后一个TCP数据包为所述HTTP帧对应的最后一个TCP数据包。
- 根据权利要求52~65任一项所述装置,其特征在于,所述协议帧为HTTP帧;所述封装单元,用于将所述HTTP帧封装成至少一个TLS帧,所述至少一个TLS帧中的最后一个TLS帧为所述HTTP帧对应的最后一个TLS帧;分别将各个所述TLS帧封装成至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述TLS帧对应的最后一个TCP数据包。
- 根据权利要求52~65任一项所述装置,其特征在于,所述协议帧为TLS帧,所述TLS帧包括数据类型信息,所述数据类型信息用于指示所述TLS帧的数据类型。
- 根据权利要求52~68任一项所述装置,其特征在于,还包括:压缩单元,用于所述封装单元将所述协议帧封装成至少一个TCP数据包之前,将所述协议帧压缩成至少一个压缩包,所述至少一个压缩包仅包括所述协议帧。
- 一种节点设备,其特征在于,包括处理器、存储器以及网络接口,其中,所述存储器中存储一组程序代码,且所述处理器用于调用存储器中存储的程序代码,用于执行以下操作:将一个协议帧封装成至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述协议帧对应的最后一个TCP数据包;将所述至少一个TCP数据包发送给节点设备。
- 一种协议帧解析装置,其特征在于,包括:接收单元,用于接收节点设备发送的将一个协议帧封装成的至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述协议帧对应的最后一个TCP数据包;确定单元,用于根据所述指示信息,确定下一个协议帧对应的起始TCP数据包;解析单元,用于从所述起始TCP数据包开始对所述下一个协议帧进行数据解析。
- 根据权利要求71所述装置,其特征在于,所述确定单元,用于当所述最后一个TCP数据包的数据部分的长度为0时,确定下一个TCP数据包为所述下一个协议帧对应的起始TCP数据包。
- 根据权利要求71所述装置,其特征在于,所述确定单元,用于当所述最后一个TCP数据包的数据量小于预设MSS时,确定下一个TCP数据包为所述下一个协议帧对应的起始TCP数据包。
- 根据权利要求71述装置,其特征在于,所述确定单元,用于当所述最后一个TCP数据包的报头包括标识信息时,确定下一个TCP数据包为所述下一个协议帧对应的起始TCP数据包。
- 根据权利要求71~74任一项所述装置,其特征在于,还包括:发送单元,用于所述接收单元接收所述节点设备发送的所述至少一个TCP数据包之前,向所述节点设备发送TCP数据包;所述确定单元,还用于当所述接收到的TCP数据包中携带向所述节点设备发送的TCP数据包的确认序号时,根据所述确认序号,确定所述节点设备正确接收向所述节点设备发送的TCP数据包。
- 根据权利要求71~75任一项所述装置,其特征在于,所述接收单元,还用于所述确定单元根据所述指示信息,确定下一个协议帧对应的起始TCP数据包之前,接收所述节点设备发送的通知消息;所述装置还包括:获取单元,用于根据所述通知信息,获取所述协议帧对应的所述最后一个TCP数据包中的指示信息。
- 根据权利要求71~76任一项所述装置,其特征在于,所述至少一个TCP数据包的报头包括数据类型信息;所述解析单元,用于根据所述起数据类型信息,获取所述TCP数据包的数据部分的数据类型。
- 根据权利要求71~77任一项所述装置,其特征在于,所述确定单元,还用于所述解析单元从所述起始TCP数据包对所述下一 个协议帧进行数据解析之前,确定所述下一个协议帧是通过静态表实现报头字段压缩的。
- 根据权利要求71~78任一项所述装置,其特征在于,所述下一个协议帧对应的各个TCP数据包属于同一HTTP2.0流;所述协议帧传输装置还包括:控制单元,用于所述解析单元从所述起始TCP数据包开始对所述下一个协议帧进行数据解析之后,当对所述下一个协议帧数据解析失败时,暂停对所述HTTP2.0流包括的协议帧进行数据解析。
- 一种节点设备,其特征在于,包括处理器、存储器以及网络接口,其中,所述存储器中存储一组程序代码,且所述处理器用于调用存储器中存储的程序代码,用于执行以下操作:接收节点设备发送的将一个协议帧封装成的至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述协议帧对应的最后一个TCP数据包;根据所述指示信息,确定下一个协议帧对应的起始TCP数据包;从所述起始TCP数据包开始对所述下一个协议帧进行数据解析。
- 一种数据传输装置,其特征在于,包括:封装单元,用于将一个URI的对象数据封装成至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述对象数据对应的最后一个TCP数据包,所述对象数据用于指示所述URI标识的资源;发送单元,用于将所述至少一个TCP数据包发送给节点设备。
- 根据权利要求81所述装置,其特征在于,所述最后一个TCP数据包的数据部分的长度为0,从而指示所述最后一个TCP数据包为所述对象数据对应的最后一个TCP数据包。
- 根据权利要求82所述装置,其特征在于,所述最后一个TCP数据包的报头包括发送序号和确认序号;所述发送序号与下一个URI的对象数据对应的起始TCP数据包的发送序 号相同,所述确认序号是根据接收的所述节点设备发送的数据确认的。
- 根据权利要求82所述装置,其特征在于,所述最后一个TCP数据包的报头包括发送序号和确认序号;所述发送序号与下一个URI的对象数据对应的起始TCP数据包的发送序号相同,所述确认序号与所述最后一个TCP数据包的前一个数据包的确认序号相同。
- 根据权利要求84所述装置,其特征在于,还包括:获取单元,用于所述封装单元将所述对象数据封装成所述至少一个TCP数据包之前,获取管理终端发送的所述对象数据,所述对象数据包括终端标识信息,所述终端标识信息用于指示将所述对象数据对应的至少一个TCP数据包发送给所述终端标识信息对应的节点设备。
- 根据权利要求82~85任一项所述装置,其特征在于,所述封装单元,用于在所述对象数据对应的最后一个包含数据的TCP数据包后增加一个TCP数据包,所述增加的TCP数据包的数据部分的长度为0。
- 根据权利要求81所述装置,其特征在于,所述封装单元,用于当所述对象数据对应的最后一个包含数据的TCP数据包的数据量小于预设MSS时,所述最后一个包含数据的TCP数据包仅包括所述对象数据,所述指示信息为所述最后一个包含数据的TCP数据包的数据量。
- 根据权利要求81所述装置,其特征在于,所述指示信息为包含在所述最后一个TCP数据包的报头中的标识信息。
- 根据权利要求81~88任一项所述装置,其特征在于,所述至少一个TCP数据包的数据部分仅包括所述对象数据。
- 根据权利要求81~89任一项所述装置,其特征在于,还包括:接收单元,用于接收所述节点设备发送的TCP数据包;所述封装单元,用于在所述至少一个TCP数据包中的待发送的TCP数据包中携带所述节点设备发送的TCP数据包的确认序号,所述确认序号用于指示正确接收所述节点设备发送的TCP数据包。
- 根据权利要求81~90任一项所述装置,其特征在于,所述发送单元,还用于所述封装单元将所述对象数据封装成所述至少一个TCP数据包之前,向所述节点设备发送通知消息,所述通知消息用于所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述对象数据对应的最后一个TCP数据包。
- 根据权利要求81~91任一项所述装置,其特征在于,所述至少一个TCP数据包的报头包括数据类型信息,所述数据类型信息用于指示所述TCP数据包的数据部分的数据类型。
- 根据权利要求81~92任一项所述装置,其特征在于,所述对象数据为HTTP1.1数据或者HTTP1.0数据。
- 根据权利要求81~93任一项所述装置,其特征在于,所述封装单元,用于将所述对象数据封装成至少一个TLS帧,所述至少一个TLS帧中的最后一个TLS帧为所述对象数据对应的最后一个TLS帧;将所述至少一个TLS帧中的所有TLS帧封装成至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述对象数据对应的最后一个TCP数据包。
- 根据权利要求81~93任一项所述装置,其特征在于,所述封装单元,用于将所述对象数据封装成至少一个TLS帧,所述至少一个TLS帧中的最后一个TLS帧为所述对象数据对应的最后一个TLS帧;分别将各个所述TLS帧封装成至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述TLS帧对应的最后一个TCP数据包。
- 根据权利要求94或者95所述装置,其特征在于,各个所述TLS帧包括数据类型信息,所述数据类型信息用于指示所述TLS帧的数据类型。
- 根据权利要求81~96任一项所述装置,其特征在于,还包括:压缩单元,用于所述封装单元将所述对象数据封装成至少一个TCP数据包之前,将所述对象数据压缩成至少一个压缩包,所述至少一个压缩包仅包括所述对象数据。
- 一种节点设备,其特征在于,包括处理器、存储器以及网络接口,其中,所述存储器中存储一组程序代码,且所述处理器用于调用存储器中存储的 程序代码,用于执行以下操作:将一个URI的对象数据封装成至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述对象数据对应的最后一个TCP数据包,所述对象数据用于指示所述URI标识的资源;将所述至少一个TCP数据包发送给节点设备。
- 一种数据解析装置,其特征在于,包括:接收单元,用于接收节点设备发送的将一个URI的对象数据封装成的至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述对象数据对应的最后一个TCP数据包,所述对象数据用于指示所述URI标识的资源;确定单元,用于根据所述指示信息,确定下一个URI的对象数据对应的起始TCP数据包;解析单元,用于从所述起始TCP数据包开始对所述下一个URI的对象数据进行数据解析。
- 根据权利要求99所述装置,其特征在于,所述确定单元,用于当所述最后一个TCP数据包的数据部分的长度为0时,确定下一个TCP数据包为所述下一个URI的对象数据对应的起始TCP数据包。
- 根据权利要求99所述装置,其特征在于,所述确定单元,用于当所述最后一个TCP数据包的数据量小于预设MSS时,确定下一个TCP数据包为所述下一个URI的对象数据对应的起始TCP数据包。
- 根据权利要求99所述装置,其特征在于,所述确定单元,用于当所述最后一个TCP数据包的报头包括标识信息时,确定下一个TCP数据包为所述下一个URI的对象数据对应的起始TCP数据包。
- 根据权利要求99~102任一项所述装置,其特征在于,还包括:发送单元,用于所述接收单元接收所述节点设备发送的所述至少一个TCP 数据包之前,向所述节点设备发送TCP数据包;所述确定单元,还用于当所述接收的TCP数据包中携带向所述节点设备发送的TCP数据包的确认序号时,根据所述确认序号,确定所述节点设备正确接收向所述节点设备发送的TCP数据包。
- 根据权利要求99~103任一项所述装置,其特征在于,所述接收单元,还用于所述确定单元根据所述指示信息,确定下一个URI的对象数据对应的起始TCP数据包之前,接收所述节点设备发送的通知消息;所述装置还包括:获取单元,用于根据所述通知消息,获取所述对象数据对应的所述最后一个TCP数据包中的指示信息。
- 根据权利要求99~104任一项所述装置,其特征在于,所述至少一个TCP数据包的报头包括数据类型信息;所述解析单元,用于根据所述数据类型信息,获取所述TCP数据包的数据部分的数据类型。
- 一种节点设备,其特征在于,包括处理器、存储器以及网络接口,其中,所述存储器中存储一组程序代码,且所述处理器用于调用存储器中存储的程序代码,用于执行以下操作:接收节点设备发送的将一个URI的对象数据封装成的至少一个TCP数据包,所述至少一个TCP数据包中的最后一个TCP数据包包括指示信息,所述指示信息用于指示所述最后一个TCP数据包为所述对象数据对应的最后一个TCP数据包,所述对象数据用于指示所述URI标识的资源;根据所述指示信息,确定下一个URI的对象数据对应的起始TCP数据包;从所述起始TCP数据包开始对所述下一个URI的对象数据进行数据解析。
- 一种协议帧传输系统,其特征在于,包括如权利要求52~69任一项所述的协议帧传输装置和如权利要求71~79任一项所述的协议帧解析装置。
- 一种数据传输系统,其特征在于,包括如权利要求81~97任一项所述的数据传输装置和如权利要求99~105任一项所述的数据解析装置。
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP15898112.6A EP3300275A4 (en) | 2015-07-10 | 2015-09-09 | Protocol frame transmission method, device, node equipment and system |
CN201580001010.XA CN106537830A (zh) | 2015-07-10 | 2015-09-09 | 一种协议帧传输方法、装置、节点设备以及系统 |
BR112018000371A BR112018000371A2 (pt) | 2015-07-10 | 2015-09-09 | método, aparelho e sistema de transmissão de quadro de protocolo, e dispositivo de nó |
KR1020187000483A KR20180015745A (ko) | 2015-07-10 | 2015-09-25 | 프로토콜 프레임 전송 방법, 장치, 시스템 및 노드 장치 |
PCT/CN2015/090826 WO2017008401A1 (zh) | 2015-07-10 | 2015-09-25 | 一种协议帧传输方法、装置、节点设备以及系统 |
EP15898128.2A EP3297235A4 (en) | 2015-07-10 | 2015-09-25 | Protocol frame transmission method and device, node equipment and system |
US15/851,055 US20180115634A1 (en) | 2015-07-10 | 2017-12-21 | Protocol frame transmission method, apparatus, and system, and node device |
US15/866,085 US20180131609A1 (en) | 2015-07-10 | 2018-01-09 | Protocol frame transmission method, apparatus, and system, and node device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2015/083772 WO2017008203A1 (zh) | 2015-07-10 | 2015-07-10 | 一种协议帧传输方法、装置、节点设备以及系统 |
CNPCT/CN2015/083772 | 2015-07-10 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/866,085 Continuation US20180131609A1 (en) | 2015-07-10 | 2018-01-09 | Protocol frame transmission method, apparatus, and system, and node device |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2017008385A1 true WO2017008385A1 (zh) | 2017-01-19 |
Family
ID=57756634
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2015/083772 WO2017008203A1 (zh) | 2015-07-10 | 2015-07-10 | 一种协议帧传输方法、装置、节点设备以及系统 |
PCT/CN2015/089260 WO2017008385A1 (zh) | 2015-07-10 | 2015-09-09 | 一种协议帧传输方法、装置、节点设备以及系统 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2015/083772 WO2017008203A1 (zh) | 2015-07-10 | 2015-07-10 | 一种协议帧传输方法、装置、节点设备以及系统 |
Country Status (6)
Country | Link |
---|---|
US (3) | US20180109451A1 (zh) |
EP (3) | EP3297191A4 (zh) |
KR (1) | KR20180015745A (zh) |
CN (3) | CN107078837A (zh) |
BR (1) | BR112018000371A2 (zh) |
WO (2) | WO2017008203A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3092461A1 (fr) * | 2019-02-05 | 2020-08-07 | Orange | Procédé d’émission à deux protocoles, procédé de réception et dispositifs et signal correspondants. |
CN109729556B (zh) * | 2019-02-12 | 2020-10-20 | Oppo广东移动通信有限公司 | 链路连接方法及相关装置 |
US10817460B2 (en) * | 2019-08-28 | 2020-10-27 | Advanced New Technologies Co., Ltd. | RDMA data sending and receiving methods, electronic device, and readable storage medium |
CN112913170B (zh) * | 2019-10-01 | 2024-07-05 | 柏思科技有限公司 | 发送和接收互联网协议分组上的传输控制协议段的改进方法和系统 |
CN118540392A (zh) * | 2023-02-22 | 2024-08-23 | 华为技术有限公司 | 一种数据传输方法及相关装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101009696A (zh) * | 2006-01-26 | 2007-08-01 | 华为技术有限公司 | 一种会话发起协议消息的发送和接收方法 |
CN101110961A (zh) * | 2007-08-03 | 2008-01-23 | 北京创毅视讯科技有限公司 | 一种多媒体广播数据传输方法、装置及系统 |
US20090304016A1 (en) * | 2004-09-01 | 2009-12-10 | Qlogic Corporation | Method and system for efficiently using buffer space |
CN102790659A (zh) * | 2012-07-18 | 2012-11-21 | 福建先创通信有限公司 | 一种移动通信系统中数据包的传输方法 |
CN103916447A (zh) * | 2013-01-08 | 2014-07-09 | 无锡南理工科技发展有限公司 | 基于单片机的嵌入式web服务器 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6798777B1 (en) * | 2000-04-17 | 2004-09-28 | Juniper Networks, Inc. | Filtering and route lookup in a switching device |
US7543051B2 (en) * | 2003-05-30 | 2009-06-02 | Borland Software Corporation | Method of non-intrusive analysis of secure and non-secure web application traffic in real-time |
CN1299479C (zh) * | 2004-03-10 | 2007-02-07 | 中兴通讯股份有限公司 | 一种隧道包的分片发送方法 |
US7787481B1 (en) * | 2004-07-19 | 2010-08-31 | Advanced Micro Devices, Inc. | Prefetch scheme to minimize interpacket gap |
JP2006109016A (ja) * | 2004-10-04 | 2006-04-20 | Matsushita Electric Ind Co Ltd | 送受信装置、送受信制御方法、プログラム、およびメモリ |
US7787372B2 (en) * | 2005-12-12 | 2010-08-31 | Viasat, Inc. | Transmission control protocol with performance enhancing proxy for degraded communication channels |
US20090064291A1 (en) * | 2007-08-28 | 2009-03-05 | Mark Frederick Wahl | System and method for relaying authentication at network attachment |
JP4513036B2 (ja) * | 2008-04-04 | 2010-07-28 | ソニー株式会社 | 送信装置および方法、並びにプログラム |
CN101436922B (zh) * | 2008-12-17 | 2011-05-04 | 烽火通信科技股份有限公司 | 一种基于udp协议传输大量数据的方法 |
CN102130910B (zh) * | 2011-02-28 | 2015-04-29 | 华为技术有限公司 | Tcp代理插入和卸载方法及业务网关设备 |
CN102340390B (zh) * | 2011-10-26 | 2015-01-07 | 华为终端有限公司 | 数据包的传输方法及系统、源节点设备与中继节点设备 |
JP5768683B2 (ja) * | 2011-11-28 | 2015-08-26 | 富士通株式会社 | 受信データ処理方法、通信装置、及びプログラム |
WO2014100973A1 (zh) * | 2012-12-25 | 2014-07-03 | 华为技术有限公司 | 视频处理方法、设备及系统 |
US10432529B2 (en) * | 2013-09-19 | 2019-10-01 | Connectivity Systems Incorporated | Enhanced large data transmissions and catastrophic congestion avoidance over IPv6 TCP/IP networks |
US9410712B2 (en) * | 2014-10-08 | 2016-08-09 | Google Inc. | Data management profile for a fabric network |
CN104378315B (zh) * | 2014-11-17 | 2018-02-27 | 京信通信系统(中国)有限公司 | 一种capwap隧道数据包传输的方法及装置 |
US10205804B2 (en) * | 2017-02-01 | 2019-02-12 | Hughes Network Systems, Llc | Methods and systems for enhanced support of TCP options in a TCP spoofed system |
-
2015
- 2015-07-10 WO PCT/CN2015/083772 patent/WO2017008203A1/zh active Application Filing
- 2015-07-10 CN CN201580001016.7A patent/CN107078837A/zh active Pending
- 2015-07-10 EP EP15897933.6A patent/EP3297191A4/en not_active Withdrawn
- 2015-09-09 BR BR112018000371A patent/BR112018000371A2/pt not_active Application Discontinuation
- 2015-09-09 WO PCT/CN2015/089260 patent/WO2017008385A1/zh active Application Filing
- 2015-09-09 CN CN201580001010.XA patent/CN106537830A/zh active Pending
- 2015-09-09 EP EP15898112.6A patent/EP3300275A4/en not_active Withdrawn
- 2015-09-25 KR KR1020187000483A patent/KR20180015745A/ko not_active Application Discontinuation
- 2015-09-25 EP EP15898128.2A patent/EP3297235A4/en not_active Withdrawn
- 2015-09-25 CN CN201580001012.9A patent/CN106664262A/zh active Pending
-
2017
- 2017-12-19 US US15/846,945 patent/US20180109451A1/en not_active Abandoned
- 2017-12-21 US US15/851,055 patent/US20180115634A1/en not_active Abandoned
-
2018
- 2018-01-09 US US15/866,085 patent/US20180131609A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090304016A1 (en) * | 2004-09-01 | 2009-12-10 | Qlogic Corporation | Method and system for efficiently using buffer space |
CN101009696A (zh) * | 2006-01-26 | 2007-08-01 | 华为技术有限公司 | 一种会话发起协议消息的发送和接收方法 |
CN101110961A (zh) * | 2007-08-03 | 2008-01-23 | 北京创毅视讯科技有限公司 | 一种多媒体广播数据传输方法、装置及系统 |
CN102790659A (zh) * | 2012-07-18 | 2012-11-21 | 福建先创通信有限公司 | 一种移动通信系统中数据包的传输方法 |
CN103916447A (zh) * | 2013-01-08 | 2014-07-09 | 无锡南理工科技发展有限公司 | 基于单片机的嵌入式web服务器 |
Non-Patent Citations (1)
Title |
---|
See also references of EP3300275A4 * |
Also Published As
Publication number | Publication date |
---|---|
EP3297235A4 (en) | 2018-06-20 |
US20180131609A1 (en) | 2018-05-10 |
CN106537830A (zh) | 2017-03-22 |
CN107078837A (zh) | 2017-08-18 |
CN106664262A (zh) | 2017-05-10 |
US20180109451A1 (en) | 2018-04-19 |
EP3300275A4 (en) | 2018-05-30 |
US20180115634A1 (en) | 2018-04-26 |
EP3300275A1 (en) | 2018-03-28 |
WO2017008203A1 (zh) | 2017-01-19 |
EP3297191A1 (en) | 2018-03-21 |
EP3297235A1 (en) | 2018-03-21 |
EP3297191A4 (en) | 2018-06-13 |
KR20180015745A (ko) | 2018-02-13 |
BR112018000371A2 (pt) | 2018-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180131609A1 (en) | Protocol frame transmission method, apparatus, and system, and node device | |
US11212334B2 (en) | Mechanisms to support adaptive constrained application protocol (CoAP) streaming for Internet of Things (IoT) systems | |
US20180262950A1 (en) | Enhancement of pdcp status report | |
CN103782569B (zh) | 数据处理装置和方法 | |
WO2022088833A1 (zh) | 用于传输媒体流的数据包的方法和通信装置 | |
CN113411313A (zh) | 数据传输方法、装置和系统 | |
JP6562913B2 (ja) | Mpegメディアトランスポートのためのコンテンツ表現 | |
WO2011150767A1 (zh) | 数据发送处理方法、装置和系统 | |
CN114363667B (zh) | 客户端、服务器、接收方法及发送方法 | |
WO2015010512A1 (zh) | Gre报文的封装方法、解封装方法及对应的装置 | |
US20180146077A1 (en) | Method and apparatus for determining processing mode for data packet | |
CN105635802A (zh) | 一种数字媒体数据的传输方法及装置 | |
WO2017008401A1 (zh) | 一种协议帧传输方法、装置、节点设备以及系统 | |
CN109067922A (zh) | 一种数据传输方法及装置 | |
CN104284383B (zh) | 一种保持业务连续性的方法和装置 | |
WO2017067224A1 (zh) | 一种报文处理方法及装置 | |
CN113630466A (zh) | 数据传输方法、系统、电子设备及存储介质 | |
CN112583685A (zh) | 一种Ipsec VPN的数据传输方法及装置 | |
WO2021062690A1 (zh) | 以太帧包头压缩处理方法、装置、用户终端、基站和介质 | |
WO2023095438A1 (ja) | 端末装置、無線通信システム、および、端末装置の処理方法 | |
KR102421791B1 (ko) | Mmt 네트워크 시스템에서 미디어 시간 정보를 전송 하는 방법 및 장치 | |
CN118540392A (zh) | 一种数据传输方法及相关装置 | |
WO2018188510A1 (zh) | 一种数据链路层中封装、解析数据包的方法、装置及设备 | |
CN116260996A (zh) | 数据传输方法、装置及系统 | |
CN116981113A (zh) | 数据确定性传输方法、装置和相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 15898112 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2015898112 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
REG | Reference to national code |
Ref country code: BR Ref legal event code: B01A Ref document number: 112018000371 Country of ref document: BR |
|
ENP | Entry into the national phase |
Ref document number: 112018000371 Country of ref document: BR Kind code of ref document: A2 Effective date: 20180108 |