[go: up one dir, main page]

CN110730237B - Data transmission method, device, system and equipment - Google Patents

Data transmission method, device, system and equipment Download PDF

Info

Publication number
CN110730237B
CN110730237B CN201911001128.9A CN201911001128A CN110730237B CN 110730237 B CN110730237 B CN 110730237B CN 201911001128 A CN201911001128 A CN 201911001128A CN 110730237 B CN110730237 B CN 110730237B
Authority
CN
China
Prior art keywords
data
network node
target network
node
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911001128.9A
Other languages
Chinese (zh)
Other versions
CN110730237A (en
Inventor
陈子华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Onething Technologies Co Ltd
Original Assignee
Shenzhen Onething Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Onething Technologies Co Ltd filed Critical Shenzhen Onething Technologies Co Ltd
Priority to CN201911001128.9A priority Critical patent/CN110730237B/en
Publication of CN110730237A publication Critical patent/CN110730237A/en
Application granted granted Critical
Publication of CN110730237B publication Critical patent/CN110730237B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/562Brokering proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms

Landscapes

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

Abstract

The application discloses a data transmission method. The application also discloses a data transmission device, a system and equipment. In the method disclosed by the application, the target network node is a data sending end, the target network node is a data receiving end, and the target agent node is an agent of the target network node. When the data sending end sends data to the data receiving end through the proxy node, the data receiving end needs to return corresponding data, the data receiving end can firstly return the data needing to be returned to the proxy node, and then the proxy node can correctly forward the data needing to be returned to the data sending end according to the public network IP address of the data sending end and a sending port used when the data sending end sends the data, so that data reply is completed based on the same communication link. According to the method and the device, the mutual communication between the data sending end and the data receiving end is completed without adding new communication, so that the communication cost is reduced, and the waste of communication resources is avoided.

Description

一种数据传输方法、装置、系统及设备A data transmission method, device, system and equipment

技术领域technical field

本申请涉及通信技术领域,特别涉及一种数据传输方法、装置、系统及设备。The present application relates to the technical field of communications, and in particular to a data transmission method, device, system and equipment.

背景技术Background technique

在现有技术中,当外网节点或未设有代理节点的内网节点1需要发送数据至内网节点2,可以先将数据发送至内网节点2的代理节点,由该代理节点转发数据至内网节点2。但由于外网节点或未设有代理节点的内网节点1只能传输数据至代理节点,代理节点无法返回数据,因此内网节点2在接收到数据后,无法返回相应数据。In the existing technology, when an external network node or an internal network node 1 without a proxy node needs to send data to the internal network node 2, the data can be sent to the proxy node of the internal network node 2 first, and the proxy node forwards the data to intranet node 2. However, since the external network node or the internal network node 1 without proxy node can only transmit data to the proxy node, the proxy node cannot return the data, so the internal network node 2 cannot return the corresponding data after receiving the data.

其中,当数据发送端为外网节点,若需要内网节点2返回相应数据,就需要重新建立一条通信链路,使内网节点2通信新建立的通信链路返回相应数据。当数据发送端为未设有代理节点的内网节点1,若需要内网节点2返回相应数据,就需要为内网节点1设置相应的代理节点。Wherein, when the data sending end is an external network node, if the internal network node 2 needs to return corresponding data, a communication link needs to be re-established so that the internal network node 2 communicates with the newly established communication link to return corresponding data. When the data sender is an intranet node 1 without a proxy node, if the intranet node 2 is required to return corresponding data, a corresponding proxy node needs to be set for the intranet node 1.

由此可见,在现有通信方案中,若数据接收端需要返回相应数据,就需要重新建立通信链路或为数据发送端设置代理节点,也就是需要新增通信设备。其中,由于通信设备的成本比较昂贵,所以新增通信设备会增加通信成本;同时,新增通信设备后,新增通信设备的作用仅是为了返回数据,其利用率较低,会造成通信资源的浪费。It can be seen that in the existing communication scheme, if the data receiving end needs to return the corresponding data, it is necessary to re-establish the communication link or set up a proxy node for the data sending end, that is, it is necessary to add new communication equipment. Among them, since the cost of communication equipment is relatively expensive, adding new communication equipment will increase the cost of communication; at the same time, after adding new communication equipment, the function of the new communication equipment is only to return data, and its utilization rate is low, which will cause communication resources waste.

发明内容Contents of the invention

本申请的主要目的在于提供一种数据传输方法、装置、系统及设备,旨在解决现有通信方案中通信成本高,浪费通信资源的技术问题。The main purpose of this application is to provide a data transmission method, device, system and equipment, aiming to solve the technical problems of high communication cost and waste of communication resources in existing communication solutions.

为实现上述目的,本申请提供了一种数据传输方法,应用于目标网络节点的目标代理节点,包括:In order to achieve the above purpose, this application provides a data transmission method, which is applied to the target proxy node of the target network node, including:

若接收到对象网络节点发送的第一数据,则转发第一数据至目标网络节点;If the first data sent by the target network node is received, forwarding the first data to the target network node;

接收目标网络节点返回的第二数据,并根据对象网络节点的公网IP地址和对象网络节点发送第一数据的发送端口,转发第二数据至对象网络节点;receiving the second data returned by the target network node, and forwarding the second data to the target network node according to the public network IP address of the target network node and the sending port of the target network node for sending the first data;

其中,对象网络节点为外网节点,或与目标网络节点处于同一网络、但未设有代理节点的节点。Wherein, the target network node is an external network node, or a node that is in the same network as the target network node but does not have an agent node.

优选地,转发第一数据至目标网络节点,包括:Preferably, forwarding the first data to the target network node includes:

从第一数据中获取目标网络节点的ID;Obtain the ID of the target network node from the first data;

在预设映射表中查询与目标网络节点的ID对应的套接字连接;Query the socket connection corresponding to the ID of the target network node in the preset mapping table;

利用套接字连接转发第一数据至目标网络节点。The first data is forwarded to the target network node using the socket connection.

优选地,转发第一数据至目标网络节点,包括:Preferably, forwarding the first data to the target network node includes:

确定公网IP地址和发送端口,并将公网IP地址、发送端口和第一数据发送至目标网络节点。Determine the public network IP address and sending port, and send the public network IP address, sending port and the first data to the target network node.

优选地,接收目标网络节点返回的第二数据,并根据对象网络节点的公网IP地址和对象网络节点发送第一数据的发送端口,转发第二数据至对象网络节点,包括:Preferably, receiving the second data returned by the target network node, and forwarding the second data to the target network node according to the public network IP address of the target network node and the sending port of the target network node for sending the first data, includes:

接收目标网络节点返回的第二数据、公网IP地址和发送端口;receiving the second data, public network IP address and sending port returned by the target network node;

根据目标网络节点返回的公网IP地址和发送端口,转发第二数据至对象网络节点。According to the public network IP address and sending port returned by the target network node, forward the second data to the target network node.

为实现上述目的,本申请进一步提供了一种数据传输装置,应用于目标网络节点的目标代理节点,包括:In order to achieve the above purpose, the present application further provides a data transmission device, which is applied to the target proxy node of the target network node, including:

第一转发模块,用于若接收到对象网络节点发送的第一数据,则转发第一数据至目标网络节点;The first forwarding module is configured to forward the first data to the target network node if the first data sent by the target network node is received;

第二转发模块,用于接收目标网络节点返回的第二数据,并根据对象网络节点的公网IP地址和对象网络节点发送第一数据的发送端口,转发第二数据至对象网络节点;The second forwarding module is configured to receive the second data returned by the target network node, and forward the second data to the target network node according to the public network IP address of the target network node and the sending port for sending the first data by the target network node;

其中,对象网络节点为外网节点,或与目标网络节点处于同一网络、但未设有代理节点的节点。Wherein, the target network node is an external network node, or a node that is in the same network as the target network node but does not have an agent node.

优选地,第一转发模块包括:Preferably, the first forwarding module includes:

获取单元,用于从第一数据中获取目标网络节点的ID;an obtaining unit, configured to obtain the ID of the target network node from the first data;

查询单元,用于在预设映射表中查询与目标网络节点的ID对应的套接字连接;a query unit, configured to query the socket connection corresponding to the ID of the target network node in a preset mapping table;

第一转发单元,用于利用套接字连接转发第一数据至目标网络节点。The first forwarding unit is configured to forward the first data to the target network node through the socket connection.

优选地,第一转发模块具体用于:Preferably, the first forwarding module is specifically used for:

确定公网IP地址和发送端口,并将公网IP地址、发送端口和第一数据发送至目标网络节点。Determine the public network IP address and sending port, and send the public network IP address, sending port and the first data to the target network node.

优选地,第二转发模块包括:Preferably, the second forwarding module includes:

接收单元,用于接收目标网络节点返回的第二数据、公网IP地址和发送端口;A receiving unit, configured to receive the second data, public network IP address and sending port returned by the target network node;

第二转发单元,用于根据目标网络节点返回的公网IP地址和发送端口,转发第二数据至对象网络节点。The second forwarding unit is configured to forward the second data to the target network node according to the public network IP address and the sending port returned by the target network node.

为实现上述目的,本申请进一步提供了一种数据传输系统,包括:对象网络节点,目标网络节点,以及目标网络节点的目标代理节点,其中:To achieve the above purpose, the present application further provides a data transmission system, including: a target network node, a target network node, and a target proxy node of the target network node, wherein:

对象网络节点为外网节点,或与目标网络节点处于同一网络、但未设有代理节点的节点;The target network node is an external network node, or a node that is in the same network as the target network node but does not have an agent node;

对象网络节点,用于发送第一数据至目标代理节点;The object network node is used to send the first data to the target proxy node;

目标网络节点,用于返回第二数据至目标代理节点;The target network node is used to return the second data to the target proxy node;

目标代理节点,用于转发第一数据至目标网络节点;若接收到目标网络节点返回的第二数据,则根据对象网络节点的公网IP地址和对象网络节点发送第一数据的发送端口,转发第二数据至对象网络节点。The target proxy node is used to forward the first data to the target network node; if the second data returned by the target network node is received, then forward the first data according to the public network IP address of the target network node and the sending port of the target network node to send the first data The second data is sent to the target network node.

优选地,对象网络节点和目标代理节点通过UDP协议进行通信。Preferably, the target network node and the target proxy node communicate through UDP protocol.

优选地,目标网络节点和目标代理节点通过TCP协议进行通信。Preferably, the target network node and the target proxy node communicate through TCP protocol.

为实现上述目的,本申请进一步提供了一种数据传输设备,包括:To achieve the above purpose, the present application further provides a data transmission device, including:

存储器,用于存储计算机程序;memory for storing computer programs;

处理器,用于执行计算机程序,以实现前述公开的数据传输方法。A processor, configured to execute a computer program to implement the data transmission method disclosed above.

优选地,数据传输设备为组成CDN网络或者区块链网络的节点。Preferably, the data transmission device is a node forming a CDN network or a blockchain network.

为实现上述目的,本申请进一步提供了一种可读存储介质,用于保存计算机程序,其中,计算机程序被处理器执行时实现前述公开的数据传输方法。To achieve the above object, the present application further provides a readable storage medium for storing a computer program, wherein, when the computer program is executed by a processor, the aforementioned disclosed data transmission method is realized.

通过以上方案可知,本申请提供了一种数据传输方法,应用于目标网络节点的目标代理节点,包括:若接收到对象网络节点发送的第一数据,则转发第一数据至目标网络节点;接收目标网络节点返回的第二数据,并根据对象网络节点的公网IP地址和对象网络节点发送第一数据的发送端口,转发第二数据至对象网络节点;其中,对象网络节点为外网节点,或与目标网络节点处于同一网络、但未设有代理节点的节点。It can be seen from the above scheme that the present application provides a data transmission method, which is applied to the target proxy node of the target network node, including: if the first data sent by the target network node is received, forwarding the first data to the target network node; receiving The second data returned by the target network node, and forwarding the second data to the target network node according to the public network IP address of the target network node and the sending port of the target network node for sending the first data; wherein, the target network node is an external network node, Or a node that is in the same network as the target network node but does not have an agent node.

在上述方法中,对象网络节点为数据发送端,目标网络节点为数据接收端,目标代理节点为目标网络节点的代理。当数据发送端通过代理节点发送数据至数据接收端,且数据接收端需要返回相应数据时,数据接收端可以先将需返回的数据返回至代理节点,而后代理节点能够根据当前返回数据对应的数据发送端的公网IP地址和数据发送端发送数据时使用的发送端口,确定将接收到的返回数据转发至哪个节点,因此代理节点可以将需返回的数据正确地转发至数据发送端,从而基于同一条通信链路完成了数据回复。也即,本申请在现有通信方案的基础上,未增加新的通信设备就完成了数据发送端和数据接收端的互相通信,从而降低了通信成本,也避免了通信资源的浪费。In the above method, the target network node is a data sending end, the target network node is a data receiving end, and the target proxy node is an agent of the target network node. When the data sender sends data to the data receiver through the proxy node, and the data receiver needs to return the corresponding data, the data receiver can first return the data to be returned to the proxy node, and then the proxy node can The public network IP address of the sender and the sending port used by the data sender to send data determine which node to forward the received return data to, so the proxy node can correctly forward the data to be returned to the data sender, thus based on the same A communication link completes the data reply. That is to say, on the basis of the existing communication scheme, the present application completes the mutual communication between the data sending end and the data receiving end without adding new communication equipment, thereby reducing the communication cost and avoiding the waste of communication resources.

相应地,本申请提供的一种数据传输装置、系统及设备,也同样具有上述技术效果。Correspondingly, a data transmission device, system, and equipment provided by the present application also have the above-mentioned technical effects.

附图说明Description of drawings

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the drawings that need to be used in the description of the embodiments or the prior art. Obviously, the accompanying drawings in the following description are only It is an embodiment of the present application, and those skilled in the art can also obtain other drawings according to the provided drawings without creative work.

图1为本申请公开的第一种数据传输方法流程图;FIG. 1 is a flow chart of the first data transmission method disclosed in the present application;

图2为本申请公开的第二种数据传输方法流程图;FIG. 2 is a flow chart of the second data transmission method disclosed in the present application;

图3为本申请公开的第三种数据传输方法流程图;FIG. 3 is a flowchart of a third data transmission method disclosed in the present application;

图4为本申请公开的一种数据传输装置示意图;FIG. 4 is a schematic diagram of a data transmission device disclosed in the present application;

图5为本申请公开的一种数据传输系统示意图;FIG. 5 is a schematic diagram of a data transmission system disclosed in the present application;

图6为本申请公开的一种数据传输设备示意图;FIG. 6 is a schematic diagram of a data transmission device disclosed in the present application;

图7为本申请公开的另一种数据传输设备示意图。FIG. 7 is a schematic diagram of another data transmission device disclosed in the present application.

本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。The realization, functional features and advantages of the present application will be further described in conjunction with the embodiments and with reference to the accompanying drawings.

具体实施方式Detailed ways

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。In order to make the purpose, technical solution and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described here are only used to explain the present application, not to limit the present application. Based on the embodiments in this application, all other embodiments obtained by persons of ordinary skill in the art without making creative efforts belong to the scope of protection of this application.

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。The terms "first", "second", "third", "fourth", etc. (if any) in the specification and claims of the present application and the above drawings are used to distinguish similar objects, and not necessarily Used to describe a specific sequence or sequence. It is to be understood that the terms so used are interchangeable under appropriate circumstances such that the embodiments described herein can be practiced in sequences other than those illustrated or described herein. Furthermore, the terms "comprising" and "having", as well as any variations thereof, are intended to cover a non-exclusive inclusion, for example, a process, method, system, product or device comprising a sequence of steps or elements is not necessarily limited to the expressly listed instead, may include other steps or elements not explicitly listed or inherent to the process, method, product or apparatus.

需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。It should be noted that the descriptions in this application involving "first", "second" and so on are for descriptive purposes only, and should not be understood as indicating or implying their relative importance or implicitly indicating the number of indicated technical features . Thus, the features defined as "first" and "second" may explicitly or implicitly include at least one of these features. In addition, the technical solutions of the various embodiments can be combined with each other, but it must be based on the realization of those skilled in the art. When the combination of technical solutions is contradictory or cannot be realized, it should be considered that the combination of technical solutions does not exist , nor within the scope of protection required by the present application.

参见图1,图1为本申请实施例公开的第一种数据传输方法流程图。在一实施例中,该方法应用于目标网络节点的目标代理节点,包括:Referring to FIG. 1 , FIG. 1 is a flowchart of a first data transmission method disclosed in an embodiment of the present application. In an embodiment, the method is applied to a target proxy node of a target network node, comprising:

S101、接收对象网络节点发送的第一数据;S101. Receive first data sent by an object network node;

S102、转发第一数据至目标网络节点;S102. Forward the first data to the target network node;

S103、接收目标网络节点返回的第二数据;S103. Receive the second data returned by the target network node;

S104、根据对象网络节点的公网IP地址和对象网络节点发送第一数据的发送端口,转发第二数据至对象网络节点。S104. Forward the second data to the target network node according to the public network IP address of the target network node and the sending port through which the target network node sends the first data.

在本实施例中,对象网络节点为外网节点,或与目标网络节点处于同一网络、但未设有代理节点的节点。In this embodiment, the target network node is an external network node, or a node that is in the same network as the target network node but does not have an agent node.

在本实施例中,当目标网络节点需要返回第二数据至对象网络节点,则目标网络节点首先将第二数据返回至自身的目标代理节点,以使目标代理节点根据对象网络节点的公网IP地址和对象网络节点发送第一数据的发送端口,转发第二数据至对象网络节点。其中,对象网络节点的公网IP地址为对象网络节点对外显示的IP地址。In this embodiment, when the target network node needs to return the second data to the target network node, the target network node first returns the second data to its own target proxy node, so that the target proxy node The address and the sending port of the target network node to send the first data, and forward the second data to the target network node. Wherein, the public network IP address of the target network node is an IP address displayed externally by the target network node.

具体的,当对象网络节点为与目标网络节点处于同一网络、但未设有代理节点的节点,那么当目标网络节点返回第二数据时,目标代理节点便可根据对象网络节点的公网IP地址和对象网络节点发送第一数据的发送端口确定第二数据的接收端,从而将第二数据传输至对象网络节点。Specifically, when the target network node is in the same network as the target network node but does not have a proxy node, then when the target network node returns the second data, the target proxy node can The sending port for sending the first data with the target network node determines the receiving end of the second data, so as to transmit the second data to the target network node.

具体的,当对象网络节点为外网节点,那么当目标网络节点返回第二数据时,目标代理节点便可根据对象网络节点的公网IP地址确定对象网络节点所处的网络,进而根据对象网络节点发送第一数据的发送端口确定第二数据的接收端,从而将第二数据传输至对象网络节点。Specifically, when the target network node is an external network node, when the target network node returns the second data, the target proxy node can determine the network where the target network node is located according to the public network IP address of the target network node, and then according to the target network node The sending port through which the node sends the first data determines the receiving end of the second data, so as to transmit the second data to the target network node.

由上可见,本实施例中的对象网络节点为数据发送端,目标网络节点为数据接收端,目标代理节点为目标网络节点的代理。当数据发送端通过代理节点发送数据至数据接收端,且数据接收端需要返回相应数据时,数据接收端可以先将需返回的数据返回至代理节点,而后代理节点能够根据当前返回数据对应的数据发送端的公网IP地址和数据发送端发送数据时使用的发送端口,确定将接收到的返回数据转发至哪个节点,因此代理节点可以将需返回的数据正确地转发至数据发送端,从而基于同一条通信链路完成了数据回复。也即,本申请在现有通信方案的基础上,未增加新的通信设备就完成了数据发送端和数据接收端的互相通信,从而降低了通信成本,也避免了通信资源的浪费。It can be seen from the above that in this embodiment, the target network node is the data sending end, the target network node is the data receiving end, and the target proxy node is the proxy of the target network node. When the data sender sends data to the data receiver through the proxy node, and the data receiver needs to return the corresponding data, the data receiver can first return the data to be returned to the proxy node, and then the proxy node can The public network IP address of the sender and the sending port used by the data sender to send data determine which node to forward the received return data to, so the proxy node can correctly forward the data to be returned to the data sender, thus based on the same A communication link completes the data reply. That is to say, on the basis of the existing communication scheme, the present application completes the mutual communication between the data sending end and the data receiving end without adding new communication equipment, thereby reducing the communication cost and avoiding the waste of communication resources.

参见图2,图2为本申请实施例公开的第二种数据传输方法流程图。在二实施例中,该方法应用于目标网络节点的目标代理节点,包括:Referring to FIG. 2 , FIG. 2 is a flowchart of a second data transmission method disclosed in an embodiment of the present application. In a second embodiment, the method is applied to a target proxy node of a target network node, including:

S201、接收对象网络节点发送的第一数据;S201. Receive the first data sent by the target network node;

S202、从第一数据中获取目标网络节点的ID;S202. Obtain the ID of the target network node from the first data;

S203、在预设映射表中查询与目标网络节点的ID对应的套接字连接;S203. Query the socket connection corresponding to the ID of the target network node in the preset mapping table;

S204、利用套接字连接转发第一数据至目标网络节点;S204. Using the socket connection to forward the first data to the target network node;

S205、接收目标网络节点返回的第二数据;S205. Receive the second data returned by the target network node;

S206、根据对象网络节点的公网IP地址和对象网络节点发送第一数据的发送端口,转发第二数据至对象网络节点。S206. Forward the second data to the target network node according to the public network IP address of the target network node and the sending port through which the target network node sends the first data.

在本实施例中,对象网络节点为外网节点,或与目标网络节点处于同一网络、但未设有代理节点的节点。In this embodiment, the target network node is an external network node, or a node that is in the same network as the target network node but does not have an agent node.

具体的,对象网络节点可以通过目标代理节点发送数据至目标网络节点的原因是:对象网络节点知悉目标网络节点的ID,故而对象网络节点可以将目标网络节点的ID和需发送的第一数据均发送至目标代理节点。Specifically, the reason why the target network node can send data to the target network node through the target proxy node is that the target network node knows the ID of the target network node, so the target network node can combine the ID of the target network node and the first data to be sent. sent to the target proxy node.

具体的,目标代理节点维护有映射表,该映射表中记录着节点ID和套接字连接的对应关系。因此当目标代理节点接收到目标网络节点的ID和第一数据,便可以从映射表中查询到目标网络节点的ID对应的套接字连接,然后利用该套接字连接转发第一数据至目标网络节点。Specifically, the target proxy node maintains a mapping table, and the mapping table records the corresponding relationship between node IDs and socket connections. Therefore, when the target proxy node receives the ID of the target network node and the first data, it can query the socket connection corresponding to the ID of the target network node from the mapping table, and then use the socket connection to forward the first data to the target network node.

需要说明的是,目标代理节点还可能是其他节点的代理,因此该映射表中还记录着其他节点ID和对应的套接字连接。节点ID是节点在网络中的唯一标识。It should be noted that the target agent node may also be an agent of other nodes, so the mapping table also records other node IDs and corresponding socket connections. The node ID is the unique identification of the node in the network.

需要说明的是,为了降低代理节点的负载,目标代理节点在接收到第一数据后,可以不维护发送第一数据的公网IP地址和发送端口,而是利用套接字连接转发公网IP地址、发送端口和第一数据至目标网络节点;当目标网络节点返回第二数据时,同时也会返回公网IP地址和发送端口,这样目标代理节点就可以根据公网IP地址和发送端口转发数据至对象网络节点。It should be noted that, in order to reduce the load on the proxy node, after receiving the first data, the target proxy node may not maintain the public network IP address and sending port for sending the first data, but use the socket connection to forward the public network IP address, sending port and the first data to the target network node; when the target network node returns the second data, it will also return the public network IP address and sending port, so that the target proxy node can forward according to the public network IP address and sending port data to object network nodes.

由于目标代理节点还可以代理其他节点,那么可以将对象网络节点挂载至目标代理节点,这样对象网络节点和目标网络节点就拥有了共同的代理节点,这样对象网络节点和目标网络节点便可通过目标代理节点进行数据交互。如此也实现了未增加新的通信设备就完成了数据发送端和数据接收端的互相通信。Since the target proxy node can also act as an agent for other nodes, the target network node can be mounted to the target proxy node, so that the target network node and the target network node have a common proxy node, so that the target network node and the target network node can pass The target proxy node performs data interaction. In this way, the mutual communication between the data sending end and the data receiving end can be completed without adding new communication equipment.

需要说明的是,本实施例中的其他实现步骤与上述实施例相同或类似,故本实施例在此不再赘述。It should be noted that other implementation steps in this embodiment are the same as or similar to those in the foregoing embodiment, so details will not be repeated here in this embodiment.

由上可见,本实施例中的对象网络节点为数据发送端,目标网络节点为数据接收端,目标代理节点为目标网络节点的代理。当数据发送端通过代理节点发送数据至数据接收端,且数据接收端需要返回相应数据时,数据接收端可以先将需返回的数据返回至代理节点,而后代理节点能够根据当前返回数据对应的数据发送端的公网IP地址和数据发送端发送数据时使用的发送端口,确定将接收到的返回数据转发至哪个节点,因此代理节点可以将需返回的数据正确地转发至数据发送端,从而基于同一条通信链路完成了数据回复。也即,本申请在现有通信方案的基础上,未增加新的通信设备就完成了数据发送端和数据接收端的互相通信,从而降低了通信成本,也避免了通信资源的浪费。It can be seen from the above that in this embodiment, the target network node is the data sending end, the target network node is the data receiving end, and the target proxy node is the proxy of the target network node. When the data sender sends data to the data receiver through the proxy node, and the data receiver needs to return the corresponding data, the data receiver can first return the data to be returned to the proxy node, and then the proxy node can The public network IP address of the sender and the sending port used by the data sender to send data determine which node to forward the received return data to, so the proxy node can correctly forward the data to be returned to the data sender, thus based on the same A communication link completes the data reply. That is to say, on the basis of the existing communication scheme, the present application completes the mutual communication between the data sending end and the data receiving end without adding new communication equipment, thereby reducing the communication cost and avoiding the waste of communication resources.

参见图3,图3为本申请实施例公开的第三种数据传输方法流程图。在三实施例中,该方法应用于目标网络节点的目标代理节点,包括:Referring to FIG. 3 , FIG. 3 is a flowchart of a third data transmission method disclosed in an embodiment of the present application. In three embodiments, the method is applied to a target proxy node of a target network node, including:

S301、接收对象网络节点发送的第一数据;S301. Receive first data sent by an object network node;

S302、确定对象网络节点的公网IP地址和对象网络节点发送第一数据的发送端口;S302. Determine the public network IP address of the target network node and the sending port through which the target network node sends the first data;

S303、将公网IP地址、发送端口和第一数据发送至目标网络节点;S303. Send the public network IP address, the sending port and the first data to the target network node;

S304、接收目标网络节点返回的第二数据、公网IP地址和发送端口;S304. Receive the second data, the public network IP address, and the sending port returned by the target network node;

S305、根据目标网络节点返回的公网IP地址和发送端口,转发第二数据至对象网络节点。S305. Forward the second data to the target network node according to the public network IP address and the sending port returned by the target network node.

在本实施例中,对象网络节点为外网节点,或与目标网络节点处于同一网络、但未设有代理节点的节点。In this embodiment, the target network node is an external network node, or a node that is in the same network as the target network node but does not have an agent node.

为了降低代理节点的负载,目标代理节点在接收到第一数据,并确定对象网络节点的公网IP地址和对象网络节点发送第一数据的发送端口后,可以不维护发送第一数据的公网IP地址和发送端口,而是将公网IP地址、发送端口和第一数据发送至目标网络节点;当目标网络节点返回第二数据时,同时也会返回公网IP地址和发送端口,这样目标代理节点就可以根据公网IP地址和发送端口转发数据至对象网络节点。In order to reduce the load on the proxy node, after the target proxy node receives the first data and determines the public network IP address of the target network node and the sending port of the target network node to send the first data, it may not maintain the public network for sending the first data IP address and sending port, but send the public network IP address, sending port and first data to the target network node; when the target network node returns the second data, it will also return the public network IP address and sending port, so that the target The proxy node can forward data to the target network node according to the public network IP address and sending port.

其中,若目标代理节点代理的节点较多,使其维护返回数据的路径的话,可能会增加目标代理节点的负载,影响其正常运行,因此可以利用本实施例提供的方法避免目标代理节点维护返回数据路径时导致的负载过高的情况。Among them, if the target proxy node has many nodes and makes it maintain the path of returning data, it may increase the load of the target proxy node and affect its normal operation. Therefore, the method provided by this embodiment can be used to prevent the target proxy node from maintaining and returning High load conditions caused by the data path.

需要说明的是,本实施例中的其他实现步骤与上述实施例相同或类似,故本实施例在此不再赘述。其中,目标网络节点在接收到对象网络节点发送的数据后回复数据,一般无法主动给对象网络节点发送数据。本说明书提交的公网IP地址和发送端口均为对象网络节点发送第一数据时所用的IP地址和端口。It should be noted that other implementation steps in this embodiment are the same as or similar to those in the foregoing embodiment, so details will not be repeated here in this embodiment. Wherein, the target network node replies with data after receiving the data sent by the target network node, and generally cannot actively send data to the target network node. The public network IP address and sending port submitted in this specification are the IP address and port used by the object network node when sending the first data.

由上可见,本实施例中的对象网络节点为数据发送端,目标网络节点为数据接收端,目标代理节点为目标网络节点的代理。当数据发送端发送数据至代理节点,代理节点在确定数据发送端的公网IP地址和发送端口后,将公网IP地址、发送端口和数据均发送至数据接收端;当数据接收端返回相应数据时,将公网IP地址、发送端口和返回数据均返回至代理节点,那么代理节点就可以根据接收到的公网IP地址和发送端口转发返回数据至数据发送端。从而基于同一条通信链路完成了数据回复,也避免了代理节点维护公网IP地址和发送端口,未增加代理节点的负载,不会影响代理节点的正常运行。也即,本申请在现有通信方案的基础上,未增加新的通信设备就完成了数据发送端和数据接收端的互相通信,从而降低了通信成本,也避免了通信资源的浪费。It can be seen from the above that in this embodiment, the target network node is the data sending end, the target network node is the data receiving end, and the target proxy node is the agent of the target network node. When the data sender sends data to the proxy node, the proxy node sends the public network IP address, send port and data to the data receiver after determining the public network IP address and sending port of the data sender; when the data receiver returns the corresponding data When the public network IP address, sending port and return data are all returned to the proxy node, then the proxy node can forward the returned data to the data sending end according to the received public network IP address and sending port. Therefore, the data reply is completed based on the same communication link, and the proxy node is prevented from maintaining the public network IP address and the sending port. The load on the proxy node is not increased, and the normal operation of the proxy node is not affected. That is to say, on the basis of the existing communication scheme, the present application completes the mutual communication between the data sending end and the data receiving end without adding new communication equipment, thereby reducing the communication cost and avoiding the waste of communication resources.

下面对本申请实施例提供的一种数据传输装置进行介绍,下文描述的一种数据传输装置与上文描述的一种数据传输方法可以相互参照。A data transmission device provided in an embodiment of the present application is introduced below, and a data transmission device described below and a data transmission method described above may refer to each other.

参见图4,图4为本申请实施例公开的一种数据传输装置示意图。在四实施例中,应用于目标网络节点的目标代理节点,包括:Referring to FIG. 4 , FIG. 4 is a schematic diagram of a data transmission device disclosed in an embodiment of the present application. In the fourth embodiment, the target proxy node applied to the target network node includes:

第一转发模块401,用于若接收到对象网络节点发送的第一数据,则转发第一数据至目标网络节点;The first forwarding module 401 is configured to forward the first data to the target network node if the first data sent by the target network node is received;

第二转发模块402,用于接收目标网络节点返回的第二数据,并根据对象网络节点的公网IP地址和对象网络节点发送第一数据的发送端口,转发第二数据至对象网络节点;The second forwarding module 402 is configured to receive the second data returned by the target network node, and forward the second data to the target network node according to the public network IP address of the target network node and the sending port for sending the first data by the target network node;

其中,对象网络节点为外网节点,或与目标网络节点处于同一网络、但未设有代理节点的节点。Wherein, the target network node is an external network node, or a node that is in the same network as the target network node but does not have an agent node.

在一种具体实施方式中,第一转发模块包括:In a specific implementation manner, the first forwarding module includes:

获取单元,用于从第一数据中获取目标网络节点的ID;an obtaining unit, configured to obtain the ID of the target network node from the first data;

查询单元,用于在预设映射表中查询与目标网络节点的ID对应的套接字连接;a query unit, configured to query the socket connection corresponding to the ID of the target network node in a preset mapping table;

第一转发单元,用于利用套接字连接转发第一数据至目标网络节点。The first forwarding unit is configured to forward the first data to the target network node through the socket connection.

在一种具体实施方式中,第一转发模块具体用于:In a specific implementation manner, the first forwarding module is specifically used for:

确定公网IP地址和发送端口,并将公网IP地址、发送端口和第一数据发送至目标网络节点。Determine the public network IP address and sending port, and send the public network IP address, sending port and the first data to the target network node.

在一种具体实施方式中,第二转发模块包括:In a specific implementation manner, the second forwarding module includes:

接收单元,用于接收目标网络节点返回的第二数据、公网IP地址和发送端口;A receiving unit, configured to receive the second data, public network IP address and sending port returned by the target network node;

第二转发单元,用于根据目标网络节点返回的公网IP地址和发送端口,转发第二数据至对象网络节点。The second forwarding unit is configured to forward the second data to the target network node according to the public network IP address and the sending port returned by the target network node.

其中,关于本实施例中各个模块、单元更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。For the more specific working process of each module and unit in this embodiment, reference may be made to the corresponding content disclosed in the foregoing embodiments, and details are not repeated here.

可见,本实施例提供了一种数据传输装置,包括:第一转发模块以及第二转发模块。若接收到对象网络节点发送的第一数据,首先由第一转发模块转发第一数据至目标网络节点;第二转发模块接收目标网络节点返回的第二数据,并根据对象网络节点的公网IP地址和对象网络节点发送第一数据的发送端口,转发第二数据至对象网络节点。如此各个模块之间分工合作,各司其职,从而基于同一条通信链路完成了数据回复,同时未增加新的通信设备就完成了数据发送端和数据接收端的互相通信,从而降低了通信成本,也避免了通信资源的浪费。It can be seen that this embodiment provides a data transmission device, including: a first forwarding module and a second forwarding module. If the first data sent by the target network node is received, the first forwarding module first forwards the first data to the target network node; the second forwarding module receives the second data returned by the target network node, and according to the public network IP of the target network node The address and the sending port of the target network node to send the first data, and forward the second data to the target network node. In this way, the various modules cooperate with each other and perform their own duties, thus completing the data reply based on the same communication link. At the same time, the mutual communication between the data sending end and the data receiving end is completed without adding new communication equipment, thereby reducing the communication cost. , also avoiding the waste of communication resources.

下面对本申请实施例提供的一种数据传输系统进行介绍,下文描述的一种数据传输系统与上文描述的一种数据传输方法及装置可以相互参照。A data transmission system provided by an embodiment of the present application is introduced below, and a data transmission system described below and a data transmission method and device described above may refer to each other.

参见图5,图5为本申请实施例公开的一种数据传输系统示意图。在五实施例中,该系统,包括:对象网络节点501,目标网络节点502,以及目标网络节点的目标代理节点503,其中:Referring to FIG. 5 , FIG. 5 is a schematic diagram of a data transmission system disclosed in an embodiment of the present application. In the fifth embodiment, the system includes: an object network node 501, a target network node 502, and a target proxy node 503 of the target network node, wherein:

对象网络节点为外网节点,或与目标网络节点处于同一网络、但未设有代理节点的节点;The target network node is an external network node, or a node that is in the same network as the target network node but does not have an agent node;

对象网络节点,用于发送第一数据至目标代理节点;The object network node is used to send the first data to the target proxy node;

目标网络节点,用于返回第二数据至目标代理节点;The target network node is used to return the second data to the target proxy node;

目标代理节点,用于转发第一数据至目标网络节点;若接收到目标网络节点返回的第二数据,则根据对象网络节点的公网IP地址和对象网络节点发送第一数据的发送端口,转发第二数据至对象网络节点。The target proxy node is used to forward the first data to the target network node; if the second data returned by the target network node is received, then forward the first data according to the public network IP address of the target network node and the sending port of the target network node to send the first data The second data is sent to the object network node.

在一种具体实施方式中,对象网络节点和目标代理节点通过UDP协议进行通信。目标网络节点和目标代理节点通过TCP协议进行通信。也就是说,目标代理节点面对对象网络节点的端口为UDP端口,面对目标网络节点的端口为TCP端口。对象网络节点发送第一数据的发送端口为UDP端口。In a specific implementation manner, the target network node and the target proxy node communicate through the UDP protocol. The target network node and the target proxy node communicate through the TCP protocol. That is to say, the port of the target proxy node facing the target network node is a UDP port, and the port facing the target network node is a TCP port. The sending port through which the target network node sends the first data is a UDP port.

当目标网络节点启动上线,目标网络节点便可与目标代理节点建立TCP长连接(通过心跳保持连接),而后目标网络节点将自身的ID发送至目标代理节点,目标代理节点便将该ID和TCP套接字连接建立映射关系,并存入映射表,以便在接收到第一数据后,根据映射表确定第一数据的接收端。When the target network node starts to go online, the target network node can establish a TCP long connection with the target proxy node (connection is maintained through heartbeat), and then the target network node sends its own ID to the target proxy node, and the target proxy node combines the ID with the TCP The socket connection establishes a mapping relationship and stores it in the mapping table, so that after receiving the first data, the receiving end of the first data is determined according to the mapping table.

下面对本申请实施例提供的一种数据传输设备进行介绍,下文描述的一种数据传输设备与上文描述的一种数据传输方法、装置及系统可以相互参照。A data transmission device provided by an embodiment of the present application is introduced below. The data transmission device described below and the data transmission method, device, and system described above may refer to each other.

参见图6,图6为本申请实施例公开的一种数据传输设备示意图。在六实施例中,该设备包括:Referring to FIG. 6, FIG. 6 is a schematic diagram of a data transmission device disclosed in an embodiment of the present application. In six embodiments, the device includes:

存储器601,用于保存计算机程序;Memory 601, used to store computer programs;

处理器602,用于执行所述计算机程序,以实现上述任意实施例公开的方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。The processor 602 is configured to execute the computer program, so as to implement the method disclosed in any of the foregoing embodiments. Regarding the specific steps of the method, reference may be made to the corresponding content disclosed in the foregoing embodiments, and details are not repeated here.

该数据传输设备可以是组成CDN(Content Delivery Network)网络或者区块链网络的节点。The data transmission device may be a node forming a CDN (Content Delivery Network) network or a blockchain network.

参见图7,图7为本申请实施例公开的另一种数据传输设备示意图。该数据传输设备可以包括存储器11、处理器12和总线13。Referring to FIG. 7 , FIG. 7 is a schematic diagram of another data transmission device disclosed in an embodiment of the present application. The data transmission device may include a memory 11 , a processor 12 and a bus 13 .

其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是数据传输设备的内部存储单元,例如该数据传输设备的硬盘。存储器11在另一些实施例中也可以是数据传输设备的外部存储设备,例如数据传输设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器11还可以既包括数据传输设备的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于数据传输设备的应用软件及各类数据,例如数据传输程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。Wherein, the memory 11 includes at least one type of readable storage medium, and the readable storage medium includes flash memory, hard disk, multimedia card, card-type memory (eg, SD or DX memory, etc.), magnetic memory, magnetic disk, optical disk, etc. The memory 11 may be an internal storage unit of the data transmission device in some embodiments, such as a hard disk of the data transmission device. Memory 11 may also be an external storage device of the data transmission device in other embodiments, such as a plug-in hard disk equipped on the data transmission device, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, flash memory card (Flash Card), etc. Further, the memory 11 may also include both an internal storage unit of the data transmission device and an external storage device. The memory 11 can not only be used to store application software and various data installed in the data transmission device, such as the code of the data transmission program, but also can be used to temporarily store the data that has been output or will be output.

处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行数据传输程序等。In some embodiments, the processor 12 may be a central processing unit (Central Processing Unit, CPU), a controller, a microcontroller, a microprocessor, or other data processing chips for running program codes or processing stored in the memory 11. data, such as executing data transfer programs, etc.

该总线13可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。The bus 13 may be a peripheral component interconnect standard (PCI for short) bus or an extended industry standard architecture (EISA for short) bus or the like. The bus can be divided into address bus, data bus, control bus and so on. For ease of representation, only one thick line is used in FIG. 7 , but it does not mean that there is only one bus or one type of bus.

进一步地,数据传输设备还可以包括网络接口,网络接口可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该设备与其他电子设备之间建立通信连接。Further, the data transmission device can also include a network interface, and the network interface can optionally include a wired interface and/or a wireless interface (such as a WI-FI interface, a Bluetooth interface, etc.), which are usually used for communication between the device and other electronic devices. Establish a communication connection.

可选地,该设备还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在该设备中处理的信息以及用于显示可视化的用户界面。Optionally, the device may further include a user interface. The user interface may include a display (Display) and an input unit such as a keyboard (Keyboard). Optional user interfaces may also include standard wired interfaces and wireless interfaces. Optionally, in some embodiments, the display may be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, an OLED (Organic Light-Emitting Diode, Organic Light-Emitting Diode) touch panel, and the like. Wherein, the display may also be properly referred to as a display screen or a display unit, and is used for displaying information processed in the device and for displaying a visualized user interface.

图7仅示出了具有组件11-13的数据传输设备,本领域技术人员可以理解的是,图7示出的结构并不构成对设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。Figure 7 only shows a data transmission device with components 11-13, and those skilled in the art can understand that the structure shown in Figure 7 does not constitute a limitation on the device, and may include fewer or more components, or combinations of certain components, or different arrangements of components.

下面对本申请实施例提供的一种可读存储介质进行介绍,下文描述的一种可读存储介质与上文描述的一种数据传输方法、装置、系统及设备可以相互参照。A readable storage medium provided by an embodiment of the present application is introduced below, and a readable storage medium described below and a data transmission method, device, system, and device described above may refer to each other.

一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的数据传输方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。A readable storage medium is used to store a computer program, wherein when the computer program is executed by a processor, the data transmission method disclosed in the foregoing embodiments is implemented. Regarding the specific steps of the method, reference may be made to the corresponding content disclosed in the foregoing embodiments, and details are not repeated here.

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可Each embodiment in this specification is described in a progressive manner, each embodiment focuses on the differences from other embodiments, and the same or similar parts of each embodiment can be referred to each other

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的可读存储介质中。The steps of the methods or algorithms described in connection with the embodiments disclosed herein may be directly implemented by hardware, software modules executed by a processor, or a combination of both. Software modules can be placed in random access memory (RAM), internal memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other Any other known readable storage medium.

本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。In this paper, specific examples are used to illustrate the principles and implementation methods of the application. The descriptions of the above embodiments are only used to help understand the method and core idea of the application; meanwhile, for those of ordinary skill in the art, according to the application There will be changes in the specific implementation and scope of application. In summary, the content of this specification should not be construed as limiting the application.

Claims (7)

1.一种数据传输方法,其特征在于,应用于目标网络节点的目标代理节点,包括:1. A data transmission method, characterized in that, being applied to a target proxy node of a target network node, comprising: 若接收到对象网络节点发送的第一数据,则转发所述第一数据至所述目标网络节点;If the first data sent by the target network node is received, forwarding the first data to the target network node; 接收所述目标网络节点返回的第二数据,并根据所述对象网络节点的公网IP地址和所述对象网络节点发送所述第一数据的发送端口,转发所述第二数据至所述对象网络节点;receiving the second data returned by the target network node, and forwarding the second data to the target according to the public network IP address of the target network node and the sending port for sending the first data by the target network node network node; 其中,所述对象网络节点为外网节点,或与所述目标网络节点处于同一网络、但未设有代理节点的节点;Wherein, the target network node is an external network node, or a node that is in the same network as the target network node but does not have an agent node; 其中,所述接收所述目标网络节点返回的第二数据,并根据所述对象网络节点的公网IP地址和所述对象网络节点发送所述第一数据的发送端口,转发所述第二数据至所述对象网络节点,包括:Wherein, receiving the second data returned by the target network node, and forwarding the second data according to the public network IP address of the target network node and the sending port for sending the first data by the target network node To the object network node, including: 接收所述目标网络节点返回的所述第二数据、所述公网IP地址和所述发送端口;其中,所述目标代理节点不维护发送所述第一数据的公网IP地址和发送端口;receiving the second data, the public network IP address and the sending port returned by the target network node; wherein the target proxy node does not maintain the public network IP address and sending port for sending the first data; 根据所述目标网络节点返回的所述公网IP地址和所述发送端口,转发所述第二数据至所述对象网络节点;forwarding the second data to the target network node according to the public network IP address and the sending port returned by the target network node; 其中,所述转发所述第一数据至所述目标网络节点,包括:Wherein, the forwarding the first data to the target network node includes: 确定所述公网IP地址和所述发送端口,并将所述公网IP地址、所述发送端口和所述第一数据发送至所述目标网络节点;determining the public network IP address and the sending port, and sending the public network IP address, the sending port and the first data to the target network node; 其中,将所述对象网络节点挂载至所述目标代理节点,以使所述对象网络节点和所述目标网络节点拥有共同的代理节点;Wherein, mounting the target network node to the target proxy node, so that the target network node and the target network node have a common proxy node; 其中,所述转发所述第一数据至所述目标网络节点,包括:Wherein, the forwarding the first data to the target network node includes: 从所述第一数据中获取所述目标网络节点的ID;obtaining the ID of the target network node from the first data; 在预设映射表中查询与所述目标网络节点的ID对应的套接字连接;Querying the socket connection corresponding to the ID of the target network node in a preset mapping table; 利用所述套接字连接转发所述第一数据至所述目标网络节点。Forwarding the first data to the target network node using the socket connection. 2.一种数据传输装置,其特征在于,应用于目标网络节点的目标代理节点,包括:2. A data transmission device, characterized in that it is applied to a target proxy node of a target network node, comprising: 第一转发模块,用于若接收到对象网络节点发送的第一数据,则转发所述第一数据至所述目标网络节点;A first forwarding module, configured to forward the first data to the target network node if the first data sent by the target network node is received; 第二转发模块,用于接收所述目标网络节点返回的第二数据,并根据所述对象网络节点的公网IP地址和所述对象网络节点发送所述第一数据的发送端口,转发所述第二数据至所述对象网络节点;The second forwarding module is configured to receive the second data returned by the target network node, and forward the second data according to the public network IP address of the target network node and the sending port through which the target network node sends the first data second data to the target network node; 其中,所述对象网络节点为外网节点,或与所述目标网络节点处于同一网络、但未设有代理节点的节点;Wherein, the target network node is an external network node, or a node that is in the same network as the target network node but does not have an agent node; 其中,所述第二转发模块具体用于:Wherein, the second forwarding module is specifically used for: 接收所述目标网络节点返回的所述第二数据、所述公网IP地址和所述发送端口;其中,所述目标代理节点不维护发送所述第一数据的公网IP地址和发送端口;receiving the second data, the public network IP address and the sending port returned by the target network node; wherein the target proxy node does not maintain the public network IP address and sending port for sending the first data; 根据所述目标网络节点返回的所述公网IP地址和所述发送端口,转发所述第二数据至所述对象网络节点;forwarding the second data to the target network node according to the public network IP address and the sending port returned by the target network node; 其中,所述第一转发模块具体用于:Wherein, the first forwarding module is specifically used for: 确定所述公网IP地址和所述发送端口,并将所述公网IP地址、所述发送端口和所述第一数据发送至所述目标网络节点;determining the public network IP address and the sending port, and sending the public network IP address, the sending port and the first data to the target network node; 其中,将所述对象网络节点挂载至所述目标代理节点,以使所述对象网络节点和所述目标网络节点拥有共同的代理节点;Wherein, mounting the target network node to the target proxy node, so that the target network node and the target network node have a common proxy node; 其中,所述第一转发模块具体用于:Wherein, the first forwarding module is specifically used for: 从所述第一数据中获取所述目标网络节点的ID;obtaining the ID of the target network node from the first data; 在预设映射表中查询与所述目标网络节点的ID对应的套接字连接;Querying the socket connection corresponding to the ID of the target network node in a preset mapping table; 利用所述套接字连接转发所述第一数据至所述目标网络节点。Forwarding the first data to the target network node using the socket connection. 3.一种数据传输系统,其特征在于,包括:对象网络节点,目标网络节点,以及所述目标网络节点的目标代理节点,其中:3. A data transmission system, comprising: an object network node, a target network node, and a target proxy node of the target network node, wherein: 所述对象网络节点为外网节点,或与所述目标网络节点处于同一网络、但未设有代理节点的节点;The target network node is an external network node, or a node that is in the same network as the target network node but does not have an agent node; 所述对象网络节点,用于发送第一数据至所述目标代理节点;The target network node is configured to send the first data to the target proxy node; 所述目标网络节点,用于返回第二数据至所述目标代理节点;The target network node is configured to return the second data to the target proxy node; 所述目标代理节点,用于转发所述第一数据至所述目标网络节点;若接收到所述目标网络节点返回的第二数据,则根据所述对象网络节点的公网IP地址和所述对象网络节点发送所述第一数据的发送端口,转发所述第二数据至所述对象网络节点;The target proxy node is configured to forward the first data to the target network node; if the second data returned by the target network node is received, according to the public network IP address of the target network node and the The target network node sends the sending port of the first data, and forwards the second data to the target network node; 所述目标代理节点具体用于:接收所述目标网络节点返回的所述第二数据、所述公网IP地址和所述发送端口;根据所述目标网络节点返回的所述公网IP地址和所述发送端口,转发所述第二数据至所述对象网络节点;其中,所述目标代理节点不维护发送所述第一数据的公网IP地址和发送端口;The target proxy node is specifically configured to: receive the second data returned by the target network node, the public network IP address and the sending port; according to the public network IP address returned by the target network node and the The sending port forwards the second data to the target network node; wherein, the target proxy node does not maintain the public network IP address and sending port for sending the first data; 其中,所述目标代理节点具体用于:确定所述公网IP地址和所述发送端口,并将所述公网IP地址、所述发送端口和所述第一数据发送至所述目标网络节点;Wherein, the target proxy node is specifically configured to: determine the public network IP address and the sending port, and send the public network IP address, the sending port and the first data to the target network node ; 其中,将所述对象网络节点挂载至所述目标代理节点,以使所述对象网络节点和所述目标网络节点拥有共同的代理节点;Wherein, mounting the target network node to the target proxy node, so that the target network node and the target network node have a common proxy node; 其中,所述目标代理节点具体用于:Wherein, the target proxy node is specifically used for: 从所述第一数据中获取所述目标网络节点的ID;obtaining the ID of the target network node from the first data; 在预设映射表中查询与所述目标网络节点的ID对应的套接字连接;Querying the socket connection corresponding to the ID of the target network node in a preset mapping table; 利用所述套接字连接转发所述第一数据至所述目标网络节点。Forwarding the first data to the target network node using the socket connection. 4.根据权利要求3所述的数据传输系统,其特征在于,所述对象网络节点和所述目标代理节点通过UDP协议进行通信。4. The data transmission system according to claim 3, wherein the target network node and the target proxy node communicate through the UDP protocol. 5.根据权利要求4所述的数据传输系统,其特征在于,所述目标网络节点和所述目标代理节点通过TCP协议进行通信。5. The data transmission system according to claim 4, wherein the target network node and the target proxy node communicate through TCP protocol. 6.一种数据传输设备,其特征在于,包括:6. A data transmission device, characterized in that, comprising: 存储器,用于存储计算机程序;memory for storing computer programs; 处理器,用于执行所述计算机程序,以实现如权利要求1所述的数据传输方法。A processor, configured to execute the computer program, so as to realize the data transmission method as claimed in claim 1. 7.根据权利要求6所述的数据传输设备,其特征在于,所述数据传输设备为组成CDN网络或者区块链网络的节点。7. The data transmission device according to claim 6, wherein the data transmission device is a node forming a CDN network or a block chain network.
CN201911001128.9A 2019-10-21 2019-10-21 Data transmission method, device, system and equipment Active CN110730237B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911001128.9A CN110730237B (en) 2019-10-21 2019-10-21 Data transmission method, device, system and equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911001128.9A CN110730237B (en) 2019-10-21 2019-10-21 Data transmission method, device, system and equipment

Publications (2)

Publication Number Publication Date
CN110730237A CN110730237A (en) 2020-01-24
CN110730237B true CN110730237B (en) 2023-03-31

Family

ID=69220455

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911001128.9A Active CN110730237B (en) 2019-10-21 2019-10-21 Data transmission method, device, system and equipment

Country Status (1)

Country Link
CN (1) CN110730237B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112153154A (en) * 2020-09-28 2020-12-29 腾讯科技(深圳)有限公司 A data transmission method and related device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101345741A (en) * 2007-07-13 2009-01-14 盛大计算机(上海)有限公司 Proxy system and proxy connecting method based on internet

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100583814C (en) * 2005-05-12 2010-01-20 中兴通讯股份有限公司 Method for implementing multimedia service NAT transition
CN101001365A (en) * 2007-01-19 2007-07-18 北京华纬讯电信技术有限公司 Method for implementing media flow balance dispatching in vedio service
CN101262478A (en) * 2008-04-10 2008-09-10 杭州华三通信技术有限公司 Method and device for penetrating NAT
CN101753634B (en) * 2008-12-19 2013-01-30 华为技术有限公司 Private network passing method, system and device
CN102932406B (en) * 2012-09-19 2018-07-27 邦讯技术股份有限公司 Realize the method, apparatus and system surfed the Internet by WAP modes when flow unloading
CN103167022B (en) * 2013-02-04 2017-04-05 北京蓝汛通信技术有限责任公司 A kind of data pack transmission method, relevant device and system
CN110191204A (en) * 2019-05-30 2019-08-30 深圳市网心科技有限公司 Communication method, system, device and computer storage medium between intranet devices
CN110266713A (en) * 2019-06-28 2019-09-20 深圳市网心科技有限公司 Intranet communication method, device, system, proxy server and storage medium

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101345741A (en) * 2007-07-13 2009-01-14 盛大计算机(上海)有限公司 Proxy system and proxy connecting method based on internet

Also Published As

Publication number Publication date
CN110730237A (en) 2020-01-24

Similar Documents

Publication Publication Date Title
CN109600449A (en) A kind of P2P penetrating method, device, system and storage medium
CN108924274B (en) Domain name system DNS processing method and device, storage medium and electronic equipment
CN109951562B (en) NAT traversal method and system, electronic device and storage medium
WO2021082073A1 (en) Method and system for dynamic selection of storage partitions, computer device, and storage medium
CN110049059A (en) A kind of outer net equipment and Intranet communication between devices method and relevant apparatus
CN110191204A (en) Communication method, system, device and computer storage medium between intranet devices
CN111277635B (en) Method, equipment, device and computer medium for accessing external node to block chain
CN110012118B (en) Method and controller for providing Network Address Translation (NAT) service
CN109922156A (en) A kind of data communications method and its relevant device
CN113259428A (en) Data access request processing method and device, computer equipment and medium
CN110278278A (en) A data transmission method, system, device and computer medium
CN111224829B (en) Method and device for accessing external node to block chain network, and block chain network
CN102984237A (en) System and method for data transmission and based on socket
CN103503421A (en) SCTP association endpoint relocation in a load balancing system
CN113890879A (en) Load balancing method and device for data access, computer equipment and medium
CN110730237B (en) Data transmission method, device, system and equipment
CN110012107B (en) A data communication method, device, device, system and storage medium
CN110809045B (en) A kind of data communication method and related equipment
CN113676409B (en) Message forwarding method and device, electronic equipment and storage medium
CN114095415B (en) Route determination method, device, gateway equipment and storage medium
CN110166575A (en) A kind of http Proxy Method, system, device and computer media
CN104615564A (en) Data transmission method based on QPI bus and computer system
KR102025375B1 (en) Apparatus and method for data distribution service, data distribution service system
CN105991372B (en) Link detection method and device
CN111970358B (en) Decentralized cloud computing platform and its service deployment, access method and components

Legal Events

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