WO2013166696A1 - 数据传输方法、系统及装置 - Google Patents

数据传输方法、系统及装置 Download PDF

Info

Publication number
WO2013166696A1
WO2013166696A1 PCT/CN2012/075329 CN2012075329W WO2013166696A1 WO 2013166696 A1 WO2013166696 A1 WO 2013166696A1 CN 2012075329 W CN2012075329 W CN 2012075329W WO 2013166696 A1 WO2013166696 A1 WO 2013166696A1
Authority
WO
WIPO (PCT)
Prior art keywords
client
initiator
responder
message
address
Prior art date
Application number
PCT/CN2012/075329
Other languages
English (en)
French (fr)
Inventor
翟现旗
华国尧
陈爱平
桂耀
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Priority to CN201280000585.6A priority Critical patent/CN103608787B/zh
Priority to PCT/CN2012/075329 priority patent/WO2013166696A1/zh
Publication of WO2013166696A1 publication Critical patent/WO2013166696A1/zh
Priority to US14/336,146 priority patent/US9350711B2/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks

Definitions

  • the present invention relates to the field of computer and communication technologies, and in particular, to a data transmission method, an initiator client device, a virtual private network (VPN) server, a responder client device, and a data. Transmission system. Background technique
  • VPN virtual private network
  • UDP User Datagram Protocol
  • End-to-end UDP communication is usually implemented by server forwarding.
  • the VPN client (hereinafter referred to as the client) does not know the external network IP address of the peer client, and the destination address field of the UDP packet to be sent. Fill in the intranet IP address of the peer client.
  • the UDP packet sent by the initiator client to the responder client is first sent to the VPN server, and the VPN server sends the UDP packet to the responder client.
  • the UDP message returned by the responder client also performs similar forwarding processing.
  • the embodiment of the invention provides a data transmission method for solving the problem that the processing load on the VPN server is large in the end-to-end communication process between the clients in the existing VPN scenario.
  • the embodiment of the present invention further provides an initiator client device, a responder client device, a VPN server, and a data transmission system.
  • the technical solution provided by the embodiment of the present invention is as follows:
  • a data transmission method is applied to a virtual private network VPN, including:
  • the initiator client queries the VPN server for the external network IP address of the initiator client and the responder client;
  • the initiator client performs key negotiation with the responder client through the VPN server. After the key negotiation is completed, the initiator client writes the external network IP address of the initiator client to the user datagram protocol UDP packet to be sent. In the source address field, the external network IP address of the responding client is written in the destination address field of the UDP packet to be sent, and the UDP file to be sent is encrypted according to the negotiated key;
  • the initiator client sends the encrypted UDP packet to the responder client, and directly exchanges the packet with the responder client.
  • a data transmission method, applied to a VPN includes:
  • the VPN server provides the originating client with the external network IP address of the initiating client client and the responder client according to the pre-stored external network IP address of each client;
  • a data transmission method, applied to a VPN includes:
  • the responder client performs key agreement with the initiator client through the VPN server. After the key negotiation is completed, the responder client extracts the initiator client from the received UDP packet sent by the initiator client. And the external network IP address of the responder client;
  • the responder client writes the external network IP address of the responder client to the source address field of the UDP packet to be sent, and writes the external network IP address of the initiator client to the destination address field of the UDP packet to be sent. And encrypting the UDP packet to be sent according to the negotiated key;
  • the responder client sends the encrypted UDP packet to the initiator client, and directly exchanges the packet with the initiator client.
  • An initiator client device including: a querying unit, configured to query a VPN server for an IP address of the initiator client and the responder client;
  • the first key negotiation unit is configured to perform key negotiation with the responder client through the VPN server.
  • the first message interaction unit is configured to write the external network IP address of the initiator client after the key negotiation is completed.
  • the external network IP address of the responding client is written in the destination address field of the UDP packet to be sent, and the confidentiality is obtained according to the negotiation.
  • the key is to encrypt the UDP packet to be sent; the encrypted UDP packet is sent to the responder client, and the packet client directly interacts with the packet.
  • a VPN server including:
  • the address query unit is configured to provide the originating client with the external network IP address of the initiator client and the responder client that are queried according to the pre-stored external network IP address of each client;
  • a forwarding unit configured to forward, by the initiator client and the responder client, a message sent by the initiator client to the responder client, and the responder client The message returned by the terminal is forwarded to the originating client.
  • a responder client device including:
  • a second key negotiation unit configured to perform key negotiation with the initiator client through the VPN server; and a second packet interaction unit, configured to send the UDP sent by the initiator client after the key negotiation is completed. Extracting the external network IP address of the initiator client and the responder client in the message; writing the external network IP address of the responder client into the source address field of the UDP packet to be sent, and the initiator client The IP address of the external network is written in the destination address field of the UDP packet to be sent, and the UDP packet to be sent is encrypted according to the negotiated key. The encrypted UDP packet is sent to the initiator client. The initiator client directly performs message interaction.
  • a data transmission system is applied to a VPN, including the initiator client device, the VPN server, and the responder client device.
  • the initiator client first obtains the external network IP address of the initiator client and the responder client by querying from the VPN server, and then performs key negotiation with the responder client through the VPN server.
  • the initiator client constructs UDP according to the obtained external network IP address of both communicating parties.
  • the packet is encrypted by using the negotiated key to encrypt the UDP packet, and the encrypted UDP packet is sent to the responder client to directly communicate with the responder client.
  • the key negotiation is completed, the message between the initiator client and the responder client does not need to be forwarded by the VPN server, thus reducing the processing load of the VPN server.
  • FIG. 1 is a schematic diagram of an application scenario and a message interaction process according to an embodiment of the present invention
  • FIG. 2 is a flowchart of a data transmission method according to Embodiment 1 of the present invention.
  • FIG. 3 is a schematic diagram of an external network IP address query process in a data transmission method according to Embodiment 1 of the present invention.
  • FIG. 5 is a schematic diagram of an external network IP address query process in a data transmission method according to Embodiment 2 of the present invention.
  • FIG. 6 is a flowchart of a data transmission method according to Embodiment 3 of the present invention.
  • FIG. 7a is a flowchart of a data transmission method according to Embodiment 4 of the present invention.
  • FIG. 7b is a schematic diagram of an application scenario of a data transmission process according to Embodiment 5 of the present invention
  • FIG. 7c is a sequence diagram of a data transmission process according to Embodiment 5 of the present invention.
  • FIG. 8 is a schematic structural diagram of an initiator client device according to Embodiment 6 of the present invention
  • FIG. 9 is a schematic structural diagram of a VPN server according to Embodiment 6 of the present invention.
  • FIG. 10 is a schematic structural diagram of a responder client device according to Embodiment 6 of the present invention. detailed description
  • the embodiment of the invention provides a data transmission method, which provides a feasible solution for reducing the processing load of the VPN server in the process of end-to-end communication between clients in a VPN scenario.
  • FIG. 1 is a schematic diagram of a VPN scenario applied by an embodiment of the present invention, including a client 1, a VPN server, and a client 2. It should be noted that the same client may act as an initiator in one communication process and another communication. As a responder in the process. In this embodiment, the client 1 is the originating client, and the client 2 is the responder client as an example to describe the data transmission scheme.
  • the flow of the data transmission method provided by the embodiment of the present invention is as follows:
  • Step 210 The initiator client queries the VPN server for the external network IP address of the initiator client and the responder client, and the external network IP address is unique in the Internet.
  • the initiator client may query the corresponding external network IP address from the VPN server according to the identifier of the initiator client and the identifier of the responder client, where the identifier of the initiator client is the initiator client login to the VPN server.
  • the identity of the responder client is assigned by the responder client when logging in to the VPN server.
  • the client either the initiator client or the responder client
  • the VPN server is the client that is logged in
  • the initiator can assign an identity and notify the client of the assigned identity through the login response message.
  • the client can be established and stored (either the initiator client or the responder).
  • the correspondence between the external network IP address of the client and the client identifier is used for subsequent queries.
  • Step 310 The initiator client sends a query request message to the VPN server, where the query request message carries the identifier of the initiator client and the identifier of the responder client.
  • the identifier of the initiator client may be obtained by the initiator client from the login response message returned by the VPN server when logging in, and the identifier of the responder client may be obtained by the initiator client in advance according to the service requirement. of.
  • Step 320 The initiator client receives the query response message returned by the VPN server, and extracts the external network IP address of the initiator client and the external network IP address of the responder client from the query response message.
  • the initiator client can also obtain the intranet IP address of the initiator client and the intranet IP address of the responder client.
  • the specific acquisition method is similar to the acquisition method of the initiator client and the client client identifier.
  • the IP address of the intranet that is, the virtual IP address, refers to the IP address assigned by the client when logging in to the VPN server.
  • the IP address of the client's intranet is unique in the VPN, but the virtual IP address in different VPNs can be repeated. .
  • the VPN server allocates an intranet IP address to the user when the client logs in to the VPN server for the purpose of message forwarding, and notifies the client of the assigned identity through the login response message.
  • the VPN server extracts the IP address of the external network carried from the login request message of the client, and performs subsequent queries.
  • Step 220 The initiator client performs key negotiation with the responder client through the VPN server.
  • the negotiated key may be a symmetric key, such as a key generated by a symmetric key encryption (DES) algorithm, or an asymmetric key, which is not performed here. limited.
  • DES symmetric key encryption
  • the security of the message can be ensured, so that the subsequent initiator client and the receiver client are The security of direct communication between the keys obtained based on the key agreement process can also be guaranteed.
  • Step 230 After the key negotiation is completed, the initiator client writes the external network IP address of the initiator client to the source address field of the UDP packet to be sent, and the external network IP of the responder client. The address is written in the destination address field of the UDP packet to be sent, and the UDP packet to be sent is encrypted according to the negotiated key.
  • the key obtained by the initiator client and the responder client key negotiation is a symmetric key
  • the key used by the initiator client to encrypt the UDP packet to be sent and the subsequent reception are performed in step 230.
  • the key used to decrypt the UDP packet is the same.
  • step 230 the initiator client encrypts the UDP packet to be sent by using the public key of the responding client obtained by the negotiation, and subsequently uses the private key of the client to receive the UDP packet.
  • the UDP packet returned by the responding client is decrypted.
  • Step 240 The initiator client sends the encrypted UDP packet to the responder client, and directly performs packet interaction with the responder client.
  • step 230 and step 240 may also be regarded as an external network IP address of the initiator client and the responder client obtained by the initiator client according to the query, and a negotiated key, and the responder client.
  • Establishing an encrypted tunnel layer SSL, Secure Sockets Layer
  • sending the UDP packet to the responding client through the SSL encrypted tunnel and receiving the UDP packet returned by the responding client, thereby implementing the initiator client.
  • Direct message interaction with the responder client may also be regarded as an external network IP address of the initiator client and the responder client obtained by the initiator client according to the query, and a negotiated key, and the responder client.
  • SSL Secure Sockets Layer
  • the key negotiation of the step 220 and the external network address query of the step 210 are not performed, and the sequence of the two steps is limited, and the key negotiation shown in step 220 may be performed first, and then executed.
  • the external network address query shown in step 210, or the initiator client may also perform the two steps of key negotiation and external network address query in parallel.
  • the UDP packet can be sent directly to the responder client without forwarding through the VPN server. , reducing the processing load of the VPN server.
  • the embodiment of the present invention provides a data transmission method.
  • the initiator client first queries the VPN server to obtain the external network IP address of the initiator client and the responder client, and then performs confidentiality with the responder client through the VPN server.
  • Key negotiation The initiator client constructs a UDP packet according to the obtained external IP address of the communicating party, and encrypts the UDP packet by using the negotiated key, and sends the encrypted UDP packet to the responding client.
  • Subsequent responder clients can root According to the key obtained during the key negotiation, and the external network IP address of the communication parties extracted from the UDP packet sent by the initiator client, the UDP packet is sent to the initiator client, thereby ensuring the security of the communication packet.
  • direct communication between the initiator client and the receiver client is implemented.
  • the embodiment of the present invention describes a data transmission scheme provided by an embodiment of the present invention from the perspective of a VPN server.
  • the application scenario diagram is shown in Figure 1.
  • FIG. 4 is a flowchart of a data transmission method according to an embodiment of the present invention.
  • Step 410 The VPN server provides the originating client with the external network IP address of the initiating client client and the responder client according to the pre-stored external network IP address of each client.
  • the specific process for the VPN server to provide the originating client with the external network IP address of the initiator client and the responder client is:
  • Step 510 The VPN server receives the query request message sent by the initiator client, and extracts the identifier of the initiator client and the identifier of the responder client from the query request message.
  • Step 520 The VPN server queries the external network IP address corresponding to the identifier of the initiator client and the external network IP corresponding to the identifier of the responder client from the correspondence between the identifier of the client and the external network IP address. address.
  • the VPN server queries the external network IP address corresponding to the identifier of the initiator client and the external network IP corresponding to the identifier of the responder client from the correspondence between the identifier of the client and the external network IP address. address.
  • the first embodiment which is not repeated here.
  • Step 530 The VPN server carries the queried external network IP address corresponding to the identifier of the initiator client and the external network IP address corresponding to the identifier of the responder client, and sends the query to the initiator client in the query response message. end.
  • the VPN server can also provide the sender to the initiator client in other ways.
  • the external network IP address of the originating client and the responder client for example, based on the intranet IP address of the initiator client carried in the query request and the intranet IP of the responder client, from the stored intranet IP address of each client and outside
  • the external network IP addresses of the initiator client and the responder client are queried and returned to the initiator client. The other way is no longer here - enumeration.
  • Step 420 The VPN server forwards the message of the negotiation party in the process of the key negotiation between the initiator client and the responder client, and specifically forwards the message sent by the initiator client to the responder. The client, and forwarding the message returned by the responder client to the originating client.
  • the client is not allowed to receive packets sent by other network nodes that are not trusted by the VPN server, so as to facilitate the initiation.
  • the client client and the responder client can successfully perform direct message interaction.
  • Step 415 The VPN server sends the transmission information of the initiator client to the responder client, where the transmission information includes an external network IP address of the initiator client, and the transmission information is used by the responder client to configure the network.
  • a security policy that allows receiving and processing text from the originating client.
  • the transmission information further includes a protocol identifier used by the initiator client to send the packet, and the like.
  • the responder client After receiving the transmission information notified by the VPN server, the responder client configures a network security policy in the firewall or other security device according to the external network IP of the initiator client carried therein, so that receiving and processing from the initiator is allowed. Client's message.
  • the VPN server forwards the message sent by the initiator client and the responder client to each other during the key negotiation process between the initiator client and the responder client. After the negotiation is completed, the VPN server does not need to forward the UDP packets sent by the initiator client and the responder client, thereby reducing the processing load.
  • Embodiment 3
  • the data transmission provided by the embodiment of the present invention is provided by the embodiment of the present invention from the perspective of the responder client.
  • the scenario is described. Its application scenario diagram is shown in Figure 1.
  • FIG. 6 is a flowchart of a data transmission method according to an embodiment of the present invention.
  • Step 610 The responder client performs key negotiation with the initiator client through the VPN server.
  • the key that is negotiated may be a symmetric key, such as a key generated based on the DES algorithm, or an asymmetric key, which is not limited herein.
  • Step 620 After the key negotiation is completed, the responding client extracts the external network IP address of the initiator client and the responder client from the received UDP packet sent by the initiator client.
  • the responder client After receiving the UDP packet sent by the initiator client, the responder client decrypts the UDP packet according to the key obtained by the key negotiation, and then the source address in the header of the decrypted UDP packet.
  • the external network IP address of the initiator client is extracted from the field, and the external network IP address of the responder client is extracted from the destination address field in the packet header.
  • Step 630 the responder client writes the external network IP address of the responder client to be sent
  • the UDP packet to be sent is encrypted according to the negotiated key.
  • the key obtained by the initiator client and the responder client key negotiation is a symmetric key
  • the key used in the decryption of the received UDP packet in step 620 and the UDP packet to be sent are sent.
  • the keys used to encrypt are the same.
  • step 620 the responding client decrypts the received UDP packet with its own private key, and uses the public key of the initiator client obtained by negotiation to send the UDP.
  • the text is encrypted.
  • Step 640 The responder client sends the encrypted UDP packet to the initiator client, and directly exchanges the packet with the initiator client.
  • the client further includes: Step 615: The responder client receives the transmission information of the initiator client sent by the VPN server, where the transmission information includes an external network IP address of the initiator client.
  • the responder client configures a network security policy according to the transmission information, and allows receiving and processing a message from the initiator client.
  • the present invention describes a data transmission method provided by an embodiment of the present invention from the perspective of interaction between devices such as an initiator client, a responder client, and a VPN server.
  • the schematic is still as shown in Figure 1.
  • FIG. 7a is a flowchart of a data transmission method according to an embodiment of the present invention, including the following steps: Step 71: An initiator client queries an FTP server for an external network IP address of the initiator client and the responder client, where the external client IP address is The network IP address is the only one in the Internet.
  • Step 72 The VPN server forwards the message of the negotiation parties during the key negotiation process between the initiator client and the responder client.
  • the destination address of the initiator client in the message for negotiating the key is the intranet IP address of the responder client
  • the source address is the intranet IP address of the initiator client
  • the network IP address is assigned when the initiator client logs in to the VPN server.
  • the intranet IP address of the responder client is assigned when the responder client logs in to the VPN server.
  • the initiator client can obtain the intranet IP address of the initiator client from the login response message returned by the VPN server at login, and obtain the intranet IP address of the responder client from the VPN server in advance.
  • the VPN server forwards the received packet sent by the initiator client to the responding client to forward the packet to the responding client.
  • the responding client obtains the intranet IP address of the initiating client from the packet sent by the VPN server, and constructs a packet that is returned to the initiating device.
  • the destination address is the originating client.
  • the internal network IP address, the source address is the internal network IP address of the responding client.
  • the VPN server will return the received respondent client for negotiation with the responder client.
  • the key message is forwarded to the originating client.
  • Step 73 After the key negotiation is completed, the initiator client establishes an SSL encrypted tunnel with the responder client according to the external network IP address of the initiator client and the responder client obtained by the query, and the negotiated key.
  • Step 74 The initiator client and the responder client directly exchange packets through the established SSL encryption tunnel.
  • step 71 and step 72 is not limited in this embodiment, and the order may be reversed or executed in parallel.
  • the initiator client queries the VPN server for the external network IP address of the initiator client and the responder client, and the VPN server and the responder client.
  • Key negotiation Since the messages exchanged between the initiator client and the responder client are forwarded through the VPN server during the key negotiation process, the security of the message can be guaranteed, so that the key obtained by the subsequent key negotiation process is obtained. The security of direct communication carried out can also be guaranteed.
  • the initiator client and the responder client can directly communicate based on the external network IP address and the negotiated key. At this time, the message between the initiator client and the responder client does not need the VPN server.
  • Embodiment 5 The forwarding is performed, thereby reducing the processing load of the VPN server, thereby preventing the VPN server from becoming a message transmission bottleneck, reducing the risk of packet loss caused by the exhaustion of the VPN server processing resources, and shortening the packet transmission delay.
  • the embodiment of the present invention provides a specific example of a data transmission process, and describes a data transmission method provided by an embodiment of the present invention in a timing diagram manner.
  • FIG. 7b is a schematic diagram of an application scenario of the embodiment of the present invention.
  • the client 1 is the initiator client, and the client 2 is the responder client.
  • the client 1 is connected to an application server, and the client 2 is connected to an application proxy.
  • the specific application may be an application such as an IP phone or an instant communication that does not require real-time performance.
  • Figure 7c is a timing diagram of an embodiment of the present invention, including the following steps: Step 701: The client 1 sends a query request message to the VPN server, where the query request message carries the ID of the client 1 and the ID of the client 2.
  • the ID of the client 1 and the ID of the client 2 are respectively the ID of the client 1 and the client 2 are assigned by the VPN server when logging in to the VPN server.
  • the client 1 obtains the ID assigned by the VPN server for itself from the login response of the VPN server, and obtains the ID of the client 2 from the VPN server in advance.
  • Step 702 The VPN server queries the external network IP address corresponding to the ID of the client 1 and the external network IP address corresponding to the ID of the client 2 from the pre-stored correspondence between the client ID and the external network IP address.
  • the VPN server further stores a correspondence between each client ID and an intranet IP address, and the VPN server may also query the correspondence between the client ID and the intranet IP address, and the intranet of the client 1
  • the IP address and the internal network IP address of the client 2 are carried along the external network IP address and the external network IP address corresponding to the ID of the client 1, and are carried in the query response message and sent to the client 1.
  • Step 703 The VPN server returns a query response message to the client 1, where the query response message carries the external network IP address of the client 1 and the external network IP address of the client 2.
  • the query response message further includes an intranet IP address of the client 1 and an intranet IP address of the client 2.
  • Step 704 the client 1 sends a probe message clienthello() to the client 2 through the VPN server.
  • the probe message carries the intranet IP address of the client 1 and the client 2, and after receiving the probe message, the VPN server sends the probe message to the client 2.
  • Client 1 and Client 2 exchange messages based on the intranet IP address.
  • Step 705 optionally, after receiving the probe message clienthelloO, the client 2 returns a probe confirmation message serverhello() to the client 1 through the VPN server.
  • step 706 the client 2 carries its own public key in the authentication request message Certificate Request, and sends the verification request message Certificate Request to the client 2 through the VPN server.
  • step 707 The client 1 extracts the public key of the client 2 from the authentication request message Certificate Request as a key obtained by negotiation, and authenticates the public key of the client 2 through a third-party verification server. After the verification is successful, the process proceeds to step 708.
  • Step 708 the client 1 sends a verification pass message to the client 2 through the VPN server.
  • This verification carries the public key of client 1 through the message Certificate Verify.
  • the client 2 After receiving the verification certificate, the client 2 can extract the public key of the client 1 from the message, and then encrypt the packet when sending the UDP packet to the client 1 .
  • Step 709 the client 1 sends a negotiation end message to the client 2 through the VPN server. Finish()o
  • Step 710 After receiving the commerce end message fmishedO, the client 2 returns a negotiation end confirmation message fmished() to the client 1 through the VPN server.
  • Step 711 After receiving the negotiation end confirmation message fmishedO, the client 1 confirms that the key negotiation is completed. If the client 1 does not receive the probe confirmation message serverhello(), the authentication request message Certificate Request, or the negotiation end confirmation message fmished() during the key negotiation process, it determines that the key negotiation fails.
  • step 712 the client 1 writes the IP address of the external network of the client 1 into the source address field of the packet UDP packet to be sent, and writes the IP address of the external network of the client 2 into the destination address field of the packet1, and according to the client.
  • End 2's public key encrypts packetl.
  • Client 1 sends the encrypted packetl to client 2.
  • the payload portion of the packet 1 carries application data that the client 1 wants to send to the client 2.
  • Step 713 The client 2 receives the packet1 sent by the client 1, decrypts it with its own private key, and obtains application data carried in the payload portion thereof. If the client 2 needs to return the application data to the client 1, the client 2 extracts the external network IP addresses of the client 1 and the client 2 from the received packet1, and writes the external network IP address of the client 2 In the source address field of the packet to be sent UDP packet, the external network IP address of the client 1 is written in the destination address field of the packet 2, and the packet 2 is encrypted according to the public key of the client 1, and the payload part of the packet 2 is carried. Have customers The end 2 sends the application data to the client 1; the client 2 sends the encrypted packet2 to the client 1.
  • steps 701 to 703 complete the external network IP address query process
  • steps 704 to 711 complete the key negotiation process.
  • This embodiment is described by taking the asymmetric key negotiation as an example.
  • the symmetric key negotiation is relatively simple, and only needs to be performed.
  • a client will notify the peer of the key generated by itself and receive a confirmation message from the peer.
  • steps 704 to 711 only provide a message interaction process for key negotiation, and those skilled in the art can adjust the message interaction sequence according to actual needs, delete some optional messages, or add other
  • the client 1 may first carry its own public key in the authentication request message, and send it to the client 2 through the VPN server, and the client 2 is in the third-party verification server.
  • the responder client does not need to reply to the probe confirmation message, but sends the verification request message directly, that is, step 705 is omitted.
  • the packet interaction process of step 712 to step 713 may include the interaction of two or more messages.
  • the embodiment of the present invention further provides an initiator client device.
  • the device includes a query unit 801, a first key agreement unit 802, and a first message interaction unit 803, where:
  • the query unit 801 is configured to query the VPN server for an external network IP address of the initiator client and the responder client.
  • a first key agreement unit 802 configured to perform key negotiation with the responder client through the VPN server;
  • the first packet interaction unit 803 is configured to: after the key negotiation is completed, write the external network IP address of the initiator client into a source address field of the UDP packet to be sent, and send the responder
  • the external IP address of the client is written in the destination address field of the UDP packet to be sent, and the UDP packet is encrypted according to the negotiated key.
  • the encrypted UDP is sent to the responder client.
  • the packet exchanges with the responding client directly.
  • the specific query mode of the query unit 801 and the first key negotiation unit 802 are For details on how to work in the specific key negotiation process, refer to the description in the previous method embodiment, and details are not described here.
  • the embodiment of the present invention further provides a VPN server.
  • the VPN server includes an address query unit 901 and a forwarding unit 902, where:
  • the address querying unit 901 is configured to provide the initiating client with the external network IP address of the initiating client client and the responder client according to the pre-stored external network IP address of each client, and the forwarding unit 902 is configured to: Transmitting, by the initiator client and the responder client, a message sent by the initiator client to the responder client, and forwarding the message returned by the responder client Give the originator client.
  • the VPN server further includes:
  • the notification unit 903 is configured to: after the address query unit 901 provides the external network IP address to the initiator client, send the transmission information of the initiator client to the responder client, where the transmission information includes the external network of the initiator client.
  • the IP address the transmission information is used by the responder client to configure a network security policy, allowing the receiving and processing of messages from the originating client.
  • the embodiment of the present invention further provides a responder client device.
  • the responder client device includes a second key agreement unit 110 and a second message interaction unit 120, where:
  • the key negotiation unit 110 is configured to perform key negotiation with the initiator client through the VPN server.
  • the second packet interaction unit 120 extracts the external network IP address of the initiator client and the responder client from the received UDP packet sent by the initiator client.
  • the responder client device further includes:
  • the configuration unit 130 is configured to receive the transmission information of the initiator client sent by the VPN server before the second message interaction unit 120 directly performs packet interaction with the initiator client.
  • the transmission information includes an external network IP address of the initiator client; and configuring a network security policy according to the transmission information, allowing the receiving and processing of the packet from the initiator client.
  • the embodiment of the present invention further provides a data transmission system, including the initiator client device shown in FIG. 8, the VPN server shown in FIG. 9, and the responder client device shown in FIG.
  • a data transmission system including the initiator client device shown in FIG. 8, the VPN server shown in FIG. 9, and the responder client device shown in FIG.
  • the working principles of the initiator client device, the VPN server, and the responder client device, and the interaction process between them are referred to the foregoing method embodiment and the description of FIG. 9 and FIG. , will not repeat them here.

Landscapes

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

Abstract

一种数据传输方法,应用于虚拟专用网VPN中,包括:发起方客户端向VPN服务器查询所述发起方客户端和应答方客户端的外网IP地址;发起方客户端通过VPN服务器与应答方客户端进行密钥协商;密钥协商完成后,发起方客户端将发起方客户端的外网IP地址写入待发送UDP报文的源地址字段中、将所述应答方客户端的外网IP地址写入待发送UDP报文的目的地址字段中,并中据协商得到的密钥对待发送UDP报文进行加密;发起方客户端向所述应答方客户端发送加密后的UDP报文,与所述应答方客户端直接进行报文交互。本发明在密钥协商完成后发起方客户端和应答方客户端之间的消息无需VPN服务器进行转发,因此减轻了VPN服务器的处理负荷。

Description

数据传输方法、 系统及装置 技术领域
本发明涉及计算机及通信技术领域, 尤其涉及一种数据传输方法、 一种 发起方客户端设备、一种虚拟专用网(VPN, Virtual Private Network )服务器、 一种应答方客户端设备和一种数据传输系统。 背景技术
用户数据艮协议 ( UDP, User Datagram Protocol )是一种无连接的传输层 协议, 提供面向事务的简单不可靠信息传送服务, 适用于单次只传输少量数 据, 对可靠性要求不高的应用环境。
端对端 UDP通信通常通过服务器转发来实现, 在 VPN场景下, VPN客 户端 (后面将简称为客户端) 不知晓对端客户端的外网 IP地址, 在待发送的 UDP报文的目的地址字段中填写对端客户端的内网 IP地址。发起方客户端发 送给应答方客户端的 UDP报文首先被发送到 VPN服务器, VPN服务器再将 该 UDP 文发送至应答方客户端, 应答方客户端返回的 UDP 文也执行类 似的转发处理。
发明人在实现本发明的过程中发现, 现有技术至少存在如下问题: 由于 两个 VPN客户端之间的所有报文都需要通过 VPN服务器进行转发, 在同一 时间段客户端数目较多、 或者客户端之间传送的报文数量较多时, VPN服务 器的处理负荷将会加重, 这将进一步导致丟包率增加、 报文的传送延时增长。 发明内容
本发明实施例提供一种数据传输方法, 用以解决现有 VPN场景下, 在客 户端之间端到端通信过程中, 对 VPN服务器造成的处理负荷较大的问题。
对应地,本发明实施例还提供了一种发起方客户端设备、应答方客户端设 备、 一种 VPN服务器和一种数据传输系统。 本发明实施例提供的技术方案如下:
一种数据传输方法, 应用于虚拟专用网 VPN中, 包括:
发起方客户端向 VPN服务器查询所述发起方客户端和应答方客户端的外 网 IP地址;
发起方客户端通过 VPN服务器与应答方客户端进行密钥协商; 密钥协商完成后, 发起方客户端将所述发起方客户端的外网 IP地址写入 待发送用户数据报协议 UDP报文的源地址字段中、 将所述应答方客户端的外 网 IP地址写入待发送 UDP报文的目的地址字段中,并根据协商得到的密钥对 待发送 UDP 文进行加密;
发起方客户端向所述应答方客户端发送加密后的 UDP报文, 与所述应答 方客户端直接进行报文交互。
一种数据传输方法, 应用于 VPN中, 包括:
VPN服务器根据预先存储的各客户端的外网 IP地址, 向发起方客户端提 供所查询的所述发起方客户端和应答方客户端的外网 IP地址;
在所述发起方客户端和应答方客户端进行密钥协商过程中, 将所述发起 方客户端发送的消息转发给所述应答方客户端, 以及将所述应答方客户端返 回的消息转发给所述发起方客户端。
一种数据传输方法, 应用于 VPN中, 包括:
应答方客户端通过 VPN服务器与发起方客户端进行密钥协商; 密钥协商完成后, 应答方客户端从接收到的所述发起方客户端发送的 UDP报文中提取所述发起方客户端和应答方客户端的外网 IP地址;
应答方客户端将所述应答方客户端的外网 IP地址写入待发送 UDP报文的 源地址字段中,将所述发起方客户端的外网 IP地址写入待发送 UDP报文的目 的地址字段中, 并根据协商得到的密钥对待发送 UDP报文进行加密;
应答方客户端向所述发起方客户端发送加密后的 UDP报文, 与所述发起 方客户端直接进行报文交互。
一种发起方客户端设备, 包括: 查询单元, 用于向 VPN服务器查询所述发起方客户端和应答方客户端的 夕卜网 IP地址;
第一密钥协商单元,用于通过 VPN服务器与应答方客户端进行密钥协商; 第一报文交互单元, 用于在密钥协商完成后, 将所述发起方客户端的外 网 IP地址写入待发送用户数据报协议 UDP报文的源地址字段中、 将所述应 答方客户端的外网 IP地址写入待发送用户数据报协议 UDP报文的目的地址字 段中, 并根据协商得到的密钥对待发送 UDP报文进行加密; 向所述应答方客 户端发送加密后的 UDP报文, 与所述应答方客户端直接进行报文交互。
一种 VPN服务器, 包括:
地址查询单元, 用于根据预先存储的各客户端的外网 IP地址, 向发起方 客户端提供所查询的所述发起方客户端和应答方客户端的外网 IP地址;
转发单元, 用于在所述发起方客户端和应答方客户端进行密钥协商过程 中, 将所述发起方客户端发送的消息转发给所述应答方客户端, 以及将所述 应答方客户端返回的消息转发给所述发起方客户端。
一种应答方客户端设备, 包括:
第二密钥协商单元,用于通过 VPN服务器与发起方客户端进行密钥协商; 第二报文交互单元, 用于密钥协商完成后, 从接收到的所述发起方客户 端发送的 UDP报文中提取所述发起方客户端和应答方客户端的外网 IP地址; 将所述应答方客户端的外网 IP地址写入待发送 UDP报文的源地址字段中,将 所述发起方客户端的外网 IP地址写入待发送 UDP报文的目的地址字段中,并 根据协商得到的密钥对待发送 UDP报文进行加密; 向所述发起方客户端发送 加密后的 UDP报文, 与所述发起方客户端直接进行报文交互。
一种数据传输系统,应用于 VPN中, 包括前面所述的发起方客户端设备、 的 VPN服务器和应答方客户端设备。
本发明实施例通过发起方客户端首先从 VPN服务器中查询获得所述发起 方客户端和应答方客户端的外网 IP地址,然后通过 VPN服务器与应答方客户 端进行密钥协商。发起方客户端根据得到的通信双方的外网 IP地址,构建 UDP 报文, 并利用协商得到的密钥对 UDP报文进行加密, 将加密后的 UDP报文 发送至应答方客户端, 从而实现与应答方客户端直接通信。 在密钥协商完成 后发起方客户端和应答方客户端之间的消息无需 VPN服务器进行转发, 因此 减轻了 VPN服务器的处理负荷。 附图说明 施例或现有技术描述中所需要使用的附图作一简单地介绍, 显而易见地, 下 面描述中的附图是本发明的一些实施例, 对于本领域普通技术人员来讲, 在 不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。
图 1为本发明实施例应用场景以及消息交互过程的示意图;
图 2为本发明实施例一提供的数据传输方法的流程图;
图 3为本发明实施例一提供的数据传输方法中, 外网 IP地址查询过程的 示意图;
图 4为本发明实施例二提供的数据传输方法的流程图;
图 5为本发明实施例二提供的数据传输方法中, 外网 IP地址查询过程的 示意图;
图 6为本发明实施例三提供的数据传输方法的流程图;
图 7a为本发明实施例四提供的数据传输方法的流程图;
图 7b为本发明实施例五提供的数据传输过程应用场景的示意图; 图 7c为本发明实施例五提供的数据传输过程的时序图;
图 8为本发明实施例六提供的发起方客户端设备的结构示意图; 图 9为本发明实施例六提供的 VPN服务器的结构示意图;
图 10为本发明实施例六提供的应答方客户端设备的结构示意图。 具体实施方式
由于现有 VPN场景下, 客户端之间的端对端 UDP通信都要通过服务器 转发来实现, VPN服务器的处理负荷较大。 本发明实施例提出了一种数据传 输方法, 为减轻 VPN场景下客户端之间的端对端通信过程中, VPN服务器的 处理负荷提出了可行的解决方案。
下面结合各个附图对本发明实施例技术方案的主要实现原理、 具体实施 方式及其对应能够达到的有益效果进行详细的阐述。
实施例一
在本实施例中, 将从发起方客户端的角度对本发明实施例提供的数据传 输方法进行描述。
附图 1为本发明实施例应用的 VPN场景的示意图, 包括客户端 1、 VPN 服务器和客户端 2, 需要说明的是, 同一个客户端可以在一次通信过程中作为 发起方, 在另一次通信过程中作为应答方。 在本实施例中, 以客户端 1 为发 起方客户端, 客户端 2为应答方客户端为例对数据传输方案进行描述。
如图 2所示, 本发明实施例提供的数据传输方法的流程如下:
步骤 210, 发起方客户端向 VPN服务器查询所述发起方客户端和应答方 客户端的外网 IP地址, 所述外网 IP地址是互联网中唯一的。
可选地, 发起方客户端可以根据所述发起方客户端的标识、 应答方客户 端的标识从 VPN服务器查询对应的外网 IP地址,所述发起方客户端的标识是 发起方客户端在登录 VPN服务器时被分配的, 所述应答方客户端的标识是应 答方客户端在登录 VPN服务器时被分配的。 在 VPN场景下客户端 (既可以 是发起方客户端也可以是应答方客户端)在登录 VPN服务器时, 在登录请求 消息中携带自身的外网 IP地址, VPN服务器在为登录的客户端(既可以是发 起方客户端也可以是应答方客户端)分配标识、 并将分配的标识通过登录响 应消息通知客户端之后, 建立并存储客户端 (既可以是发起方客户端也可以 是应答方客户端)的外网 IP地址与客户端标识之间的对应关系以备后续查询。 釆用这种查询方式时, 具体查询流程如附图 3所示:
步骤 310, 发起方客户端向 VPN服务器发送查询请求消息, 所述查询请 求消息中携带发起方客户端的标识和应答方客户端的标识; 所述发起方客户端的标识可以是发起方客户端从登录时, VPN服务器返 回的登录响应消息中提取的, 而应答方客户端的标识可以是发起方客户端根 据业务需要预先从 VPN服务器中查询获得的。
步骤 320, 发起方客户端接收 VPN服务器返回的查询响应消息, 并从所 述查询响应消息中提取发起方客户端的外网 IP地址和应答方客户端的外网 IP 地址。
除此之外, 发起方客户端也可以先获取发起方客户端的内网 IP地址、 应 答方客户端的内网 IP地址(具体获取方式前面与发起方客户端和应答方客户 端标识的获取方式类似),然后根据所述发起方客户端的内网 IP地址、应答方 客户端的内网 IP地址从 VPN月良务器查询对应的外网 IP地址。所述内网 IP地 址, 即虚拟 IP地址, 是指客户端在登录 VPN服务器时被分配的 IP地址, 客 户端的内网 IP地址在所属 VPN中是唯一的 ,但不同 VPN中虚拟 IP地址可以 重复。 在 VPN场景下, VPN服务器为了进行消息转发, 在客户端登录 VPN 服务器时, 会为用户分配内网 IP地址、 并将分配的标识通过登录响应消息通 知客户端。 VPN服务器从客户端的登录请求消息中提取携带的外网 IP地址, 后续查询。
步骤 220,发起方客户端通过 VPN服务器与应答方客户端进行密钥协商。 可选地, 在进行密钥协商时, 所协商的可以是对称密钥, 例如基于对称 密钥加密 (DES, Data Encryption Standard )算法生成的密钥, 也可以是非对 称密钥, 在这里不进行限定。
由于在密钥协商过程中, 发起方客户端和应答方客户端所交互的消息都 是通过 VPN服务器转发的, 因此消息的安全性可以得到保证, 从而使后续发 起方客户端和接收方客户端之间, 基于密钥协商过程获得的密钥进行的直接 通信的安全性也可以得到保证。
步骤 230, 密钥协商完成后,发起方客户端将所述发起方客户端的外网 IP 地址写入待发送 UDP报文的源地址字段中、 将所述应答方客户端的外网 IP 地址写入待发送 UDP报文的目的地址字段中, 并根据协商得到的密钥对待发 送 UDP报文进行加密。
可选地, 若发起方客户端和应答方客户端密钥协商得到的密钥是对称密 钥, 则步骤 230中发起方客户端对待发送 UDP报文进行加密时所用的密钥与 后续对接收到的 UDP报文进行解密时所用的密钥与是相同的。
若密钥协商得到的密钥是非对称密钥, 则步骤 230 中发起方客户端釆用 协商得到的应答方客户端的公钥对待发送 UDP报文进行加密, 后续釆用自身 的私钥, 对接收到的应答方客户端返回的 UDP报文进行解密。
步骤 240, 发起方客户端向所述应答方客户端发送加密后的 UDP报文, 与所述应答方客户端直接进行报文交互。
可选地, 步骤 230和步骤 240也可以被看作发起方客户端根据查询得到 的所述发起方客户端和应答方客户端的外网 IP地址、 以及协商得到的密钥, 与应答方客户端建立安全套接层( SSL, Secure Sockets Layer )加密隧道; 通 过所述 SSL加密隧道将 UDP报文发送给所述应答方客户端,接收应答方客户 端返回的 UDP报文,从而实现发起方客户端和应答方客户端的直接报文交互。
需要说明的是, 本发明实施例并未对步骤 220密钥协商与步骤 210外网 地址查询, 这两个步骤执行的顺序进行限定, 也可以先执行步骤 220所示的 密钥协商, 再执行步骤 210所示的外网地址查询, 或者发起方客户端也可以 并行执行密钥协商和外网地址查询两个步骤。
由于发起方客户端向应答方客户端发送的 UDP报文中, 目的地址为应答 方客户端的外网 IP地址, 因此该 UDP报文可以直接发送至应答方客户端, 而 无需通过 VPN服务器进行转发, 减轻了 VPN服务器的处理负荷。
本发明实施例提供了一种数据传输方法, 发起方客户端首先从 VPN服务 器中查询获得所述发起方客户端和应答方客户端的外网 IP 地址, 然后通过 VPN服务器与应答方客户端进行密钥协商。 发起方客户端根据得到的通信双 方的外网 IP地址, 构建 UDP报文, 并利用协商得到的密钥对 UDP报文进行 加密, 将加密后的 UDP报文发送至应答方客户端。 后续应答方客户端可以根 据密钥协商时得到的密钥, 以及从发起方客户端发送的 UDP报文中提取的通 信双方的外网 IP地址, 向发起方客户端发送 UDP报文,从而在保证通信报文 安全性的前提下, 实现了发起方客户端和接收方客户端的直接通信。
由于在数据传输过程中, 只有发起方客户端和应答方客户端之间密钥协 商过程中的消息是通过 VPN服务器进行转发的, 在密钥协商完成后, 发起方 客户端和应答方客户端之间的消息无需 VPN服务器进行转发, 因此减轻了 VPN服务器的处理负荷,从而避免 VPN服务器成为消息传输瓶颈, 降低了因 VPN服务器处理资源耗尽而造成丟包的风险, 缩短了报文的传送延时。 实施例二
本发明实施例从 VPN服务器的角度, 对本发明实施例提供的数据传输方 案进行描述。 其应用场景图如附图 1所示。
附图 4为本发明实施例提供的数据传输方法的流程图。
步骤 410, VPN服务器根据预先存储的各客户端的外网 IP地址, 向发起 方客户端提供所查询的所述发起方客户端和应答方客户端的外网 IP地址。
可选地, 如附图 5所示, VPN服务器向发起方客户端提供所查询的所述 发起方客户端和应答方客户端的外网 IP地址的具体流程包括:
步骤 510, VPN服务器接收发起方客户端发送的查询请求消息, 从所述 查询请求消息中提取携带的发起方客户端的标识和应答方客户端的标识。
步骤 520, VPN服务器从预先存储的客户端的标识与外网 IP地址的对应 关系中, 查询到所述发起方客户端的标识对应的外网 IP地址、 所述应答方客 户端的标识对应的外网 IP地址。 其中, 所述客户端的标识与外网 IP地址的对 应关系的建立方式请参照实施例一, 在这里不再重复。
步骤 530, VPN服务器将查询到的所述发起方客户端的标识对应的外网 IP地址和所述应答方客户端的标识对应的外网 IP地址, 携带在查询响应消息 中发送给所述发起方客户端。
除此之外, VPN服务器还可以釆用其他方式向发起方客户端提供所述发 起方客户端和应答方客户端的外网 IP地址, 例如根据查询请求中携带的发起 方客户端的内网 IP地址和应答方客户端的内网 IP,从存储的各客户端内网 IP 地址和外网 IP地址的对应关系中, 查询到所述发起方客户端和应答方客户端 的外网 IP地址, 并返回给发起方客户端。 其他的方式在这里不再——列举。
步骤 420, VPN服务器在所述发起方客户端和应答方客户端进行密钥协 商过程中, 对协商双方的消息进行转发, 具体地将所述发起方客户端发送的 消息转发给所述应答方客户端, 以及将所述应答方客户端返回的消息转发给 所述发起方客户端。
可选地, 对于一些配置有防火墙等安全设备、 对安全性要求较高的应答 方客户端, 其不允许接收除 VPN服务器之外的、 不信任的其他网络节点发送 的报文, 为了便于发起方客户端和应答方客户端可以成功进行直接报文交互, 在上述步骤 410之后, 还包括:
步骤 415, 所述 VPN服务器将所述发起方客户端的传输信息发送给应答 方客户端, 所述传输信息包括发起方客户端的外网 IP地址, 所述传输信息被 应答方客户端用以配置网络安全策略, 允许接收并处理来自于所述发起方客 户端的 文。
可选地, 所述传输信息还包括发起方客户端发送报文使用的协议标识等 等。 应答方客户端接收到所述 VPN服务器通知的传输信息后, 根据其中携带 的发起方客户端的外网 IP配置防火墙或其他安全设备中的网络安全策略, 使 得允许接收并处理来自于所述发起方客户端的报文。
本发明实施例提供的数据传输方法, VPN服务器在发起方客户端和应答 方客户端进行密钥协商过程中, 对发起方客户端和应答方客户端相互发送的 消息进行转发。 在协商完成后, VPN服务器无需转发所述发起方客户端和应 答方客户端相互发送的 UDP报文, 从而减轻了处理负荷。 实施例三
本发明实施例从应答方客户端的角度, 对本发明实施例提供的数据传输 方案进行描述。 其应用场景图如附图 1所示。
附图 6为本发明实施例提供的数据传输方法的流程图。
步骤 610,应答方客户端通过 VPN服务器与发起方客户端进行密钥协商。 可选地, 在进行密钥协商时, 所协商的可以是对称密钥, 例如基于 DES 算法生成的密钥, 也可以是非对称密钥, 在这里不进行限定。
步骤 620, 密钥协商完成后,应答方客户端从接收到的所述发起方客户端 发送的 UDP报文中提取所述发起方客户端和应答方客户端的外网 IP地址。
应答方客户端接收到发起方客户端发送的 UDP报文后, 根据密钥协商得 到的密钥, 对该 UDP报文进行解密, 然后从解密后的 UDP报文的报文头中 的源地址字段中提取所述发起方客户端的外网 IP地址, 从报文头中的目的地 址字段中提取所述应答方客户端的外网 IP地址。
步骤 630, 应答方客户端将所述应答方客户端的外网 IP地址写入待发送
UDP报文的源地址字段中, 将所述发起方客户端的外网 IP 地址写入待发送
UDP报文的目的地址字段中,并根据协商得到的密钥对待发送 UDP报文进行 加密。
可选地, 若发起方客户端和应答方客户端密钥协商得到的密钥是对称密 钥, 则步骤 620 中对接收到的 UDP报文进行解密时所用的密钥与对待发送 UDP报文进行加密时所用的密钥是相同的。
若密钥协商得到的密钥是非对称密钥, 则步骤 620 中应答方客户端用自 身的私钥对接收到的 UDP报文进行解密, 釆用协商得到的发起方客户端的公 钥对待发送 UDP 文进行加密。
步骤 640, 应答方客户端向所述发起方客户端发送加密后的 UDP报文, 与所述发起方客户端直接进行报文交互。
可选地, 若所述应答方客户端对安全性要求较高, 所配置的防火墙等安 全设备中的策略不允许该应答方客户端接收不被信任的网络节点发来的报 文, 为了使该客户端能够接收发起方客户端发送的报文, 从而成功进行报文 交互, 在步骤 620之前, 还包括: 步骤 615 , 所述应答方客户端接收所述 VPN服务器发送的所述发起方客 户端的传输信息, 所述传输信息包括发起方客户端的外网 IP地址;
所述应答方客户端根据所述传输信息配置网络安全策略, 允许接收并处 理来自于所述发起方客户端的报文。 实施例四
为了便于理解, 本发明从发起方客户端、 应答方客户端和 VPN服务器等 设备相互交互的角度, 对本发明实施例提供的数据传输方法进行描述。 其示 意图仍如附图 1所示。
图 7a为本发明实施例提供的数据传输方法的流程图, 包括以下步骤: 步骤 71 ,发起方客户端向 VPN服务器查询所述发起方客户端和应答方客 户端的外网 IP地址, 所述外网 IP地址是互联网中唯一的。
具体查询方式请参照附图 3和附图 5的描述, 在这里不再重复。
步骤 72, VPN服务器在所述发起方客户端和应答方客户端进行密钥协商 过程中, 对协商双方的消息进行转发。
具体地, 发起方客户端在用于协商密钥的报文中, 填写的目的地址为应 答方客户端的内网 IP地址, 源地址为发起方客户端的内网 IP地址, 其中发起 方客户端的内网 IP地址是发起方客户端登录 VPN服务器时被分配的,应答方 客户端的内网 IP地址是应答方客户端登录 VPN服务器时被分配的。发起方客 户端可以从登录时 VPN服务器返回的登录响应消息中获得发起方客户端的内 网 IP地址, 从 VPN服务器中预先查询获得应答方客户端的内网 IP地址。
VPN服务器将接收到的发起方客户端发送的用于与应答方客户端协商密 钥的报文, 转发给应答方客户端。
应答方客户端从 VPN服务器发送的报文中获得起始方客户端的内网 IP 地址, 对应构建返回给起始端设备的报文, 在该报文中, 填写的目的地址为 起始方客户端的内网 IP地址, 源地址为应答方客户端的内网 IP地址。
VPN服务器将接收到的应答方客户端返回的用于与应答方客户端协商密 钥的报文, 转发给起始方客户端。
步骤 73 , 密钥协商完成后, 发起方客户端根据查询得到的所述发起方客 户端和应答方客户端的外网 IP地址、 以及协商得到的密钥, 与应答方客户端 建立 SSL加密隧道。
步骤 74, 发起方客户端和应答方客户端通过建立的 SSL加密隧道, 直接 进行报文交互。
需要说明的是, 本实施例中未对步骤 71和步骤 72的执行顺序进行限定, 可以调换顺序或者并行执行。
本发明实施例提供的数据传输方法, 发起方客户端一方面从 VPN服务器 中查询获得所述发起方客户端和应答方客户端的外网 IP地址; 另一方面通过 VPN服务器与应答方客户端进行密钥协商。 由于在密钥协商过程中, 发起方 客户端和应答方客户端所交互的消息都是通过 VPN服务器转发的, 因此消息 的安全性可以得到保证, 从而使后续基于密钥协商过程获得的密钥进行的直 接通信的安全性也可以得到保证。 在密钥协商完成后, 发起方客户端和应答 方客户端可以基于外网 IP地址和协商得到的密钥进行直接通信, 此时发起方 客户端和应答方客户端之间的消息无需 VPN服务器进行转发, 因此减轻了 VPN服务器的处理负荷,从而避免 VPN服务器成为消息传输瓶颈, 降低了因 VPN服务器处理资源耗尽而造成丟包的风险, 缩短了报文的传送延时。 实施例五
本发明实施例给出了一个数据传输过程的具体实例, 以时序图的方式对 本发明实施例提供的数据传输方法进行描述。
图 7b为本发明实施例应用场景的示意图,仍以客户端 1为发起方客户端, 客户端 2为应答方客户端为例。 其中客户端 1连接有一个应用服务器, 客户 端 2连接有一个应用代理, 具体的应用可以是 IP电话、 即时通讯等对实时性 要求不高的应用。
附图 7c为本发明实施例的时序图, 包括以下步骤: 步骤 701 , 客户端 1向 VPN服务器发送查询请求消息, 所述查询请求消 息中携带客户端 1的 ID和客户端 2的 ID。
客户端 1的 ID和客户端 2的 ID分别是客户端 1的 ID和客户端 2登录 VPN服务器时, VPN服务器分配的。 客户端 1预先从 VPN服务器的登录响 应中获得 VPN服务器为自身分配的 ID, 预先从 VPN服务器中查询获得客户 端 2的 ID。
步骤 702, VPN服务器从预先存储的各客户端 ID与外网 IP地址的对应 关系中, 查询到客户端 1的 ID对应的外网 IP地址、 客户端 2的 ID对应的外 网 IP地址。
可选地, VPN服务器中还存储有各客户端 ID与内网 IP地址的对应关系, VPN服务器还可以从各客户端 ID与内网 IP地址的对应关系中查询到, 客户 端 1的内网 IP地址和客户端 2的内网 IP地址, 并与外网 IP地址、 客户端 1 的 ID对应的外网 IP地址一起, 携带在查询响应消息中发送给客户端 1。
步骤 703 , VPN服务器向客户端 1返回查询响应消息, 该查询响应消息 中携带客户端 1的外网 IP地址、 客户端 2的外网 IP地址。
可选地, 查询响应消息中还包括客户端 1的内网 IP地址和客户端 2的内 网 IP地址。
步骤 704,客户端 1通过 VPN服务器向客户端 2发送探测消息 clienthello()。 该探测消息中携带客户端 1和客户端 2的内网 IP地址, VPN服务器接收 到探测消息后, 将该探测消息发送给客户端 2。
在整个密钥协商过程中, 客户端 1和客户端 2基于内网 IP地址来交互消 息。
步骤 705, 可选地, 客户端 2接收到探测消息 clienthelloO后, 通过 VPN 服务器向客户端 1返回探测确认消息 serverhello()。
步骤 706,客户端 2将自身的公钥携带在验证请求消息 Certificate Request 中,通过所述 VPN服务器将所述验证请求消息 Certificate Request发送给客户 端 2。 步骤 707, 客户端 1从所述验证请求消息 Certificate Request中提取客户 端 2的公钥, 作为协商获得的密钥, 并通过第三方验证服务器对所述客户端 2 的公钥进行身份验证, 在验证成功后, 进入步骤 708。
步骤 708, 客户端 1通过所述 VPN服务器向客户端 2发送验证通过消息 Certificate Verify。 该验证通过消息 Certificate Verify中携带客户端 1的公钥。
客户端 2接收到所述验证通过消息 Certificate Verify后, 可以从该消息中 提取客户端 1的公钥, 用于后续向客户端 1发送 UDP报文时, 对报文进行加 密处理。
步骤 709, 客户端 1通过所述 VPN服务器向客户端 2发送协商结束消息 finished()o
步骤 710, 客户端 2接收到商结束消息 fmishedO后, 通过所述 VPN服务 器向客户端 1返回协商结束确认消息 fmished()。
步骤 711 ,客户端 1接收到协商结束确认消息 fmishedO后,确认密钥协商 完成。 若在密钥协商过程中, 客户端 1未收到探测确认消息 serverhello()、 验 证请求消息 Certificate Request, 或者协商结束确认消息 fmished(), 则确定密 钥协商失败。
步骤 712,客户端 1将客户端 1的外网 IP地址写入待发送 UDP报文 packetl 的源地址字段中、 将客户端 2的外网 IP地址写入 packetl的目的地址字段中, 并根据客户端 2的公钥对 packetl进行加密。客户端 1向客户端 2发送加密后 的 packetl。 所述 packetl的载荷部分承载有客户端 1想要发送给客户端 2的 应用数据。
步骤 713 , 客户端 2接收客户端 1发送的 packetl, 用自身的私钥对其进 行解密, 获取其载荷部分中承载的应用数据。 若客户端 2需要向客户端 1返 回应用数据, 则客户端 2从接收到的 packetl中提取所述客户端 1和客户端 2 的外网 IP地址,将客户端 2的外网 IP地址写入待发送 UDP报文 packet2的源 地址字段中, 将所述客户端 1的外网 IP地址写入 packet2的目的地址字段中, 并根据客户端 1的公钥对 packet2进行加密, packet2的载荷部分承载有客户 端 2发送给客户端 1的应用数据;客户端 2向客户端 1发送加密后的 packet2。 上述步骤 701〜步骤 703完成外网 IP地址查询过程, 步骤 704〜步骤 711 完成密钥协商过程, 本实施例是以非对称密钥协商为例进行说明的, 对称密 钥协商较为简单, 只需要一方客户端将自身生成的密钥通知对端, 并收到对 端的确认消息即可。 需要说明的是, 步骤 704〜步骤 711只是给出了一种密钥 协商的消息交互流程, 本领域技术人员可以根据实际需要对其中的消息交互 顺序进行调整, 删除可选的一些消息或者增加其他的消息, 例如客户端 1接 收到探测确认消息后, 可以先将自身公钥携带在验证请求消息 Certificate Request中, 通过所述 VPN服务器发送给客户端 2, 由客户端 2在第三方验证 服务器中进行身份验证; 或者应答方客户端在接收到探测消息后, 无需回复 探测确认消息, 而是直接发送验证请求消息, 即省略步骤 705。
步骤 712〜步骤 713的报文交互过程可以包含两条以上消息的交互。 实施例六
相应地, 本发明实施例还提供了一种发起方客户端设备, 如图 8所示, 该装置包括查询单元 801、 第一密钥协商单元 802和第一报文交互单元 803 , 其中:
查询单元 801 , 用于向 VPN服务器查询所述发起方客户端和应答方客户 端的外网 IP地址;
第一密钥协商单元 802, 用于通过 VPN服务器与应答方客户端进行密钥 协商;
第一报文交互单元 803 , 用于在密钥协商完成后, 将所述发起方客户端的 外网 IP地址写入待发送用户数据报协议 UDP报文的源地址字段中、将所述应 答方客户端的外网 IP地址写入待发送用户数据报协议 UDP报文的目的地址字 段中, 并根据协商得到的密钥对待发送 UDP报文进行加密; 向所述应答方客 户端发送加密后的 UDP报文, 与所述应答方客户端直接进行报文交互。
其中, 查询单元 801的具体查询方式、 以及第一密钥协商单元 802的在 具体密钥协商流程中的工作方式请参照前面方法实施例中的描述, 在这里不 再赘述。
本发明实施例还提供了一种 VPN服务器, 如附图 9所示, 该 VPN服务 器包括地址查询单元 901和转发单元 902, 其中:
地址查询单元 901 , 用于根据预先存储的各客户端的外网 IP地址, 向发 起方客户端提供所查询的所述发起方客户端和应答方客户端的外网 IP地址; 转发单元 902,用于在所述发起方客户端和应答方客户端进行密钥协商过 程中, 将所述发起方客户端发送的消息转发给所述应答方客户端, 以及将所 述应答方客户端返回的消息转发给所述发起方客户端。
可选地, 该 VPN服务器还包括:
通知单元 903 , 用于在地址查询单元 901向发起方客户端提供外网 IP地 址之后, 将所述发起方客户端的传输信息发送给应答方客户端, 所述传输信 息包括发起方客户端的外网 IP地址, 所述传输信息被应答方客户端用以配置 网络安全策略, 允许接收并处理来自于所述发起方客户端的报文。
本发明实施例还提供了一种应答方客户端设备, 如附图 10所示, 该应答 方客户端设备包括第二密钥协商单元 110和第二报文交互单元 120, 其中: 第二密钥协商单元 110, 用于通过 VPN服务器与发起方客户端进行密钥 协商;
第二报文交互单元 120, 用于密钥协商完成后,从接收到的所述发起方客 户端发送的 UDP报文中提取所述发起方客户端和应答方客户端的外网 IP地
并根据协商得到的密钥对待发送 UDP报文进行加密; 向所述发起方客户端发 送加密后的 UDP报文, 与所述发起方客户端直接进行报文交互。
可选地, 所述应答方客户端设备还包括:
配置单元 130,用于在第二报文交互单元 120与所述发起方客户端直接进 行报文交互之前 ,接收所述 VPN服务器发送的所述发起方客户端的传输信息, 所述传输信息包括发起方客户端的外网 IP地址; 以及根据所述传输信息配置 网络安全策略, 允许接收并处理来自于所述发起方客户端的报文。
本发明实施例还提供了一种数据传输系统, 包括附图 8所示的发起方客 户端设备, 附图 9所示的 VPN服务器和附图 10所示的应答方客户端设备。 其中, 发起方客户端设备、 VPN服务器和应答方客户端设备各自的工作原理, 以及相互之间的交互流程请参照前面方法实施例和附图 8所示、 附图 9和附 图 10的描述, 在这里不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤 是可以通过程序来指令相关的硬件来完成, 该程序可以存储于一计算机可读 取存储介质中, 如: ROM/RAM、 磁碟、 光盘等。 发明的精神和范围。 这样, 倘若本发明的这些修改和变型属于本发明权利要 求及其等同技术的范围之内, 则本发明也意图包含这些改动和变型在内。

Claims

权 利 要 求
1、 一种数据传输方法, 应用于虚拟专用网 VPN中, 其特征在于, 包括: 发起方客户端向 VPN服务器查询所述发起方客户端和应答方客户端的外 网 IP地址;
发起方客户端通过 VPN服务器与应答方客户端进行密钥协商;
密钥协商完成后, 发起方客户端将所述发起方客户端的外网 IP地址写入 待发送用户数据报协议 UDP报文的源地址字段中、 将所述应答方客户端的外 网 IP地址写入待发送 UDP报文的目的地址字段中,并根据协商得到的密钥对 待发送 UDP 文进行加密;
发起方客户端向所述应答方客户端发送加密后的 UDP报文, 与所述应答 方客户端直接进行报文交互。
2、 如权利要求 1 所述的方法, 其特征在于, 所述发起方客户端向 VPN 服务器查询应答方客户端的外网 IP地址, 包括:
所述发起方客户端向 VPN服务器发送查询请求消息, 所述查询请求消息 中携带发起方客户端的标识和应答方客户端的标识, 所述发起方客户端的标 识是发起方客户端在登录 VPN服务器时被分配的, 所述应答方客户端的标识 是应答方客户端在登录 VPN服务器时被分配的;
所述发起方客户端接收 VPN服务器返回的查询响应消息, 并从所述查询 响应消息中提取发起方客户端的外网 IP地址和应答方客户端的外网 IP地址。
3、 如权利要求 1或 2所述的方法, 其特征在于, 所述发起方客户端通过 VPN服务器与应答方客户端进行密钥协商, 包括:
所述发起方客户端通过 VPN服务器向所述应答方客户端发送探测消息; 所述发起方客户端接收所述 VPN服务器转发的来自于所述应答方客户端 的验证请求消息, 所述验证请求消息是所述应答方客户端接收到所述探测消 息后发送的, 所述验证请求消息中携带应答方客户端的公钥;
所述发起方客户端从所述验证通过消息中提取所述应答方客户端的公钥 作为协商得到的密钥, 并通过第三方验证服务器对所述应答方客户端的公钥 进行身份验证, 并在验证通过后通过所述 VPN服务器向所述应答方客户端发 送验证通过消息, 所述验证通过消息中携带发起方客户端的公钥;
所述发起方客户端通过所述 VPN服务器向所述应答方客户端发送协商结 束消息, 并接收到所述 VPN服务器转发的来自于所述应答方客户端的协商结 束确认消息后, 确定完成密钥协商;
若所述发起方客户端未接收到验证通过消息、 或协商结束确认消息, 则 确定密钥协商失败。
4、 如权利要求 3所述的方法, 其特征在于, 所述发起方客户端向所述应 答方客户端发送加密后的 UDP报文之后, 还包括:
所述发起方客户端接收所述应答方客户端发送的根据所述发起方客户端 的公钥加密后的 UDP报文;
所述发起方客户端根据所述所述发起方客户端的私钥对接收到的 UDP报 文进行解密。
5、 一种数据传输方法, 应用于 VPN中, 其特征在于, 包括:
VPN服务器根据预先存储的各客户端的外网 IP地址, 向发起方客户端提 供所查询的所述发起方客户端和应答方客户端的外网 IP地址;
在所述发起方客户端和应答方客户端进行密钥协商过程中, 将所述发起 方客户端发送的消息转发给所述应答方客户端, 以及将所述应答方客户端返 回的消息转发给所述发起方客户端。
6、 如权利要求 5所述的方法, 其特征在于, 所述 VPN服务器根据预先 存储的各客户端的外网 IP地址, 向发起方客户端提供所查询的所述发起方客 户端和应答方客户端的外网 IP地址, 包括:
所述 VPN服务器接收发起方客户端发送的查询请求消息, 从所述查询请 求消息中提取携带的发起方客户端的标识和应答方客户端的标识;
从预先存储的客户端的标识与外网 IP地址的对应关系中, 查询到所述发 起方客户端的标识对应的外网 IP地址、 所述应答方客户端的标识对应的外网 IP地址;
将所述发起方客户端的标识对应的外网 IP地址和所述应答方客户端的标 识对应的外网 IP地址携带在查询响应消息中发送给所述发起方客户端。
7、 如权利要求 5或 6所述的方法, 其特征在于, 所述向发起方客户端提 供所查询的所述发起方客户端和应答方客户端的外网 IP地址之后, 还包括: 所述 VPN服务器将所述发起方客户端的传输信息发送给应答方客户端, 所述传输信息包括发起方客户端的外网 IP地址, 所述传输信息被应答方客户 端用以配置网络安全策略, 允许接收并处理来自于所述发起方客户端的报文。
8、 如权利要求 5所述的方法, 其特征在于, 所述发起方客户端发送的消 息包括探测消息、 验证请求消息、 或协商结束消息;
所述应答方客户端返回的消息包括探测确认消息、 验证通过消息或协商 结束确认消息。
9、 一种数据传输方法, 应用于 VPN中, 其特征在于, 包括:
应答方客户端通过 VPN服务器与发起方客户端进行密钥协商;
密钥协商完成后, 应答方客户端从接收到的所述发起方客户端发送的 UDP报文中提取所述发起方客户端和应答方客户端的外网 IP地址;
应答方客户端将所述应答方客户端的外网 IP地址写入待发送 UDP报文的 源地址字段中,将所述发起方客户端的外网 IP地址写入待发送 UDP报文的目 的地址字段中, 并根据协商得到的密钥对待发送 UDP报文进行加密;
应答方客户端向所述发起方客户端发送加密后的 UDP报文, 与所述发起 方客户端直接进行报文交互。
10、如权利要求 9所述的方法,其特征在于,所述应答方客户端通过 VPN 服务器与发起方客户端进行密钥协商包括:
所述应答方客户端接收 VPN服务器转发的来自于所述发起方客户端的探 测消息;
所述应答方客户端将应答方客户端的公钥携带在验证请求消息中, 通过 VPN服务器转发给所述发起方客户端; 所述应答方客户端接收所述 VPN服务器转发的来自于所述发起方客户端 的验证确认消息, 从所述验证确认消息中提取携带的所述发起方客户端的公 钥, 作为后续对待发送给所述发起方客户端的 UDP报文进行加密时所用的密 钥;
所述应答方客户端接收 VPN服务器转发的来自于所述发起方客户端的协 商结束消息, 并通过所述 VPN服务器向所述发起方客户端发送协商结束确认 消息。
11、 如权利要求 9所述的方法, 其特征在于, 所述应答方客户端从接收 到的所述发起方客户端发送的 UDP报文中提取所述发起方客户端和应答方客 户端的外网 IP地址之前 , 还包括:
所述应答方客户端接收所述 VPN服务器发送的所述发起方客户端的传输 信息, 所述传输信息包括发起方客户端的外网 IP地址;
所述应答方客户端根据所述传输信息配置网络安全策略, 允许接收并处 理来自于所述发起方客户端的报文。
12、 一种发起方客户端设备, 其特征在于, 包括:
查询单元, 用于向 VPN服务器查询所述发起方客户端和应答方客户端的 夕卜网 IP地址;
第一密钥协商单元,用于通过 VPN服务器与应答方客户端进行密钥协商; 第一报文交互单元, 用于在密钥协商完成后, 将所述发起方客户端的外 网 IP地址写入待发送用户数据报协议 UDP报文的源地址字段中、将所述应答 方客户端的外网 IP地址写入待发送用户数据报协议 UDP报文的目的地址字段 中, 并根据协商得到的密钥对待发送 UDP报文进行加密; 向所述应答方客户 端发送加密后的 UDP报文, 与所述应答方客户端直接进行报文交互。
13、 一种 VPN服务器, 其特征在于, 包括:
地址查询单元, 用于根据预先存储的各客户端的外网 IP地址, 向发起方 客户端提供所查询的所述发起方客户端和应答方客户端的外网 IP地址;
转发单元, 用于在所述发起方客户端和应答方客户端进行密钥协商过程 中, 将所述发起方客户端发送的消息转发给所述应答方客户端, 以及将所述 应答方客户端返回的消息转发给所述发起方客户端。
14、 如权利要求 13所示的 VPN服务器, 其特征在于, 还包括: 通知单元, 用于在地址查询单元向发起方客户端提供外网 IP地址之后, 将所述发起方客户端的传输信息发送给应答方客户端, 所述传输信息包括发 起方客户端的外网 IP地址, 所述传输信息被应答方客户端用以配置网络安全 策略, 允许接收并处理来自于所述发起方客户端的报文。
15、 一种应答方客户端设备, 其特征在于, 包括:
第二密钥协商单元,用于通过 VPN服务器与发起方客户端进行密钥协商; 第二报文交互单元, 用于密钥协商完成后, 从接收到的所述发起方客户 端发送的 UDP报文中提取所述发起方客户端和应答方客户端的外网 IP地址; 将所述应答方客户端的外网 IP地址写入待发送 UDP报文的源地址字段中,将 所述发起方客户端的外网 IP地址写入待发送 UDP报文的目的地址字段中,并 根据协商得到的密钥对待发送 UDP报文进行加密; 向所述发起方客户端发送 加密后的 UDP报文, 与所述发起方客户端直接进行报文交互。
16、 如权利要求 15所述的应答方客户端设备, 其特征在于, 还包括: 配置单元, 用于在第二报文交互单元与所述发起方客户端直接进行报文 交互之前, 接收所述 VPN服务器发送的所述发起方客户端的传输信息, 所述 传输信息包括发起方客户端的外网 IP地址; 以及根据所述传输信息配置网络 安全策略, 允许接收并处理来自于所述发起方客户端的报文。
17、 一种数据传输系统, 应用于 VPN中, 其特征在于, 包括如权利要求 12所述的发起方客户端设备、如权利要求 13或 14所述的 VPN服务器和如权 利要求 15或 16所述的应答方客户端设备。
PCT/CN2012/075329 2012-05-11 2012-05-11 数据传输方法、系统及装置 WO2013166696A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201280000585.6A CN103608787B (zh) 2012-05-11 2012-05-11 数据传输方法、系统及装置
PCT/CN2012/075329 WO2013166696A1 (zh) 2012-05-11 2012-05-11 数据传输方法、系统及装置
US14/336,146 US9350711B2 (en) 2012-05-11 2014-07-21 Data transmission method, system, and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2012/075329 WO2013166696A1 (zh) 2012-05-11 2012-05-11 数据传输方法、系统及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/336,146 Continuation US9350711B2 (en) 2012-05-11 2014-07-21 Data transmission method, system, and apparatus

Publications (1)

Publication Number Publication Date
WO2013166696A1 true WO2013166696A1 (zh) 2013-11-14

Family

ID=49550101

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2012/075329 WO2013166696A1 (zh) 2012-05-11 2012-05-11 数据传输方法、系统及装置

Country Status (3)

Country Link
US (1) US9350711B2 (zh)
CN (1) CN103608787B (zh)
WO (1) WO2013166696A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103780479A (zh) * 2014-01-24 2014-05-07 重庆电子工程职业学院 一种网守系统设计方法
CN104579879A (zh) * 2014-12-05 2015-04-29 上海斐讯数据通信技术有限公司 一种虚拟专用网络通信系统、连接方法及数据包传输方法
CN107920349A (zh) * 2016-10-10 2018-04-17 中国移动通信有限公司研究院 一种应用于电路域的通话加密方法及装置
CN108259428A (zh) * 2016-12-29 2018-07-06 大唐半导体设计有限公司 一种实现数据传输的系统和方法
CN111343083A (zh) * 2020-05-22 2020-06-26 支付宝(杭州)信息技术有限公司 即时通信方法、装置、电子设备及可读存储介质

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103608787B (zh) * 2012-05-11 2016-06-15 华为技术有限公司 数据传输方法、系统及装置
CN104468605A (zh) * 2014-12-22 2015-03-25 北京极科极客科技有限公司 一种分布式安全认证方法
CN105162585B (zh) * 2015-08-25 2018-06-15 清华大学 一种隐私保护的会话密钥协商方法
AT520599A1 (zh) * 2017-10-18 2019-05-15
CN111818359B (zh) * 2020-09-14 2021-01-26 北京达佳互联信息技术有限公司 直播互动视频的处理方法、装置、电子设备及服务器
CN112114294A (zh) * 2020-09-24 2020-12-22 北京无线电测量研究所 一种雷达目标模拟器的控制方法及系统
US11652800B1 (en) 2022-10-03 2023-05-16 Uab 360 It Secure connections between servers in a virtual private network

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003203023A (ja) * 2002-01-09 2003-07-18 Sony Corp 情報処理システム、情報処理装置、情報処理方法、及び情報処理ネットワークプログラム
CN101002183A (zh) * 2004-06-07 2007-07-18 松下电器产业株式会社 通信系统

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7209479B2 (en) * 2001-01-18 2007-04-24 Science Application International Corp. Third party VPN certification
US7386000B2 (en) * 2001-04-17 2008-06-10 Nokia Corporation Packet mode speech communication
EP1413094B1 (en) * 2001-06-27 2007-08-15 Hyglo Systems AB Distributed server functionality for emulated lan
US7665132B2 (en) * 2003-07-04 2010-02-16 Nippon Telegraph And Telephone Corporation Remote access VPN mediation method and mediation device
TWI235572B (en) * 2003-12-19 2005-07-01 Inst Information Industry Method of IPsec packet routing, NAPT device and storage medium using the same
EP1575238A1 (en) * 2004-03-08 2005-09-14 Nokia Corporation IP mobility in mobile telecommunications system
US7509491B1 (en) * 2004-06-14 2009-03-24 Cisco Technology, Inc. System and method for dynamic secured group communication
US7903671B2 (en) * 2005-08-04 2011-03-08 Cisco Technology, Inc. Service for NAT traversal using IPSEC
US8613071B2 (en) * 2005-08-10 2013-12-17 Riverbed Technology, Inc. Split termination for secure communication protocols
US20070150946A1 (en) * 2005-12-23 2007-06-28 Nortel Networks Limited Method and apparatus for providing remote access to an enterprise network
US8296437B2 (en) * 2005-12-29 2012-10-23 Logmein, Inc. Server-mediated setup and maintenance of peer-to-peer client computer communications
US7706373B2 (en) * 2006-11-01 2010-04-27 Nuvoiz, Inc. Session initiation and maintenance while roaming
WO2008100832A1 (en) * 2007-02-16 2008-08-21 Envysion, Inc. System and method for video recording, management and access
CN101399665B (zh) * 2007-09-24 2011-07-13 上海贝尔阿尔卡特股份有限公司 以基于身份的密码体制为基础的业务认证方法和系统
KR100940525B1 (ko) * 2007-11-21 2010-02-10 한국전자통신연구원 소켓 레벨 가상 사설망 통신 장치 및 방법
US8726007B2 (en) * 2009-03-31 2014-05-13 Novell, Inc. Techniques for packet processing with removal of IP layer routing dependencies
US9350708B2 (en) * 2010-06-01 2016-05-24 Good Technology Corporation System and method for providing secured access to services
US8806609B2 (en) * 2011-03-08 2014-08-12 Cisco Technology, Inc. Security for remote access VPN
WO2013094263A1 (ja) * 2011-12-19 2013-06-27 コニカミノルタ株式会社 Ipsモード型液晶表示装置
US8908698B2 (en) * 2012-01-13 2014-12-09 Cisco Technology, Inc. System and method for managing site-to-site VPNs of a cloud managed network
US9065802B2 (en) * 2012-05-01 2015-06-23 Fortinet, Inc. Policy-based configuration of internet protocol security for a virtual private network
CN103608787B (zh) * 2012-05-11 2016-06-15 华为技术有限公司 数据传输方法、系统及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003203023A (ja) * 2002-01-09 2003-07-18 Sony Corp 情報処理システム、情報処理装置、情報処理方法、及び情報処理ネットワークプログラム
CN101002183A (zh) * 2004-06-07 2007-07-18 松下电器产业株式会社 通信系统

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103780479A (zh) * 2014-01-24 2014-05-07 重庆电子工程职业学院 一种网守系统设计方法
CN104579879A (zh) * 2014-12-05 2015-04-29 上海斐讯数据通信技术有限公司 一种虚拟专用网络通信系统、连接方法及数据包传输方法
CN107920349A (zh) * 2016-10-10 2018-04-17 中国移动通信有限公司研究院 一种应用于电路域的通话加密方法及装置
CN108259428A (zh) * 2016-12-29 2018-07-06 大唐半导体设计有限公司 一种实现数据传输的系统和方法
CN108259428B (zh) * 2016-12-29 2020-10-09 大唐半导体设计有限公司 一种实现数据传输的系统和方法
CN111343083A (zh) * 2020-05-22 2020-06-26 支付宝(杭州)信息技术有限公司 即时通信方法、装置、电子设备及可读存储介质

Also Published As

Publication number Publication date
US20140337967A1 (en) 2014-11-13
CN103608787B (zh) 2016-06-15
CN103608787A (zh) 2014-02-26
US9350711B2 (en) 2016-05-24

Similar Documents

Publication Publication Date Title
WO2013166696A1 (zh) 数据传输方法、系统及装置
US9705852B2 (en) Proxy SSL authentication in split SSL for client-side proxy agent resources with content insertion
US9350708B2 (en) System and method for providing secured access to services
US8549614B2 (en) Establishing internet protocol security sessions using the extensible messaging and presence protocol
US8788805B2 (en) Application-level service access to encrypted data streams
Dos Santos et al. A DTLS-based security architecture for the Internet of Things
JP5334104B2 (ja) 全交換セッションセキュリティ
US20170201382A1 (en) Secure Endpoint Devices
US7222234B2 (en) Method for key agreement for a cryptographic secure point—to—multipoint connection
WO2019178942A1 (zh) 一种进行ssl握手的方法和系统
WO2010003335A1 (zh) IPv6网络中协商SA的方法、系统和设备
WO2016070538A1 (zh) 安全外壳ssh2协议数据的采集方法和装置
WO2017031691A1 (zh) 业务处理方法及装置
KR20180130203A (ko) 사물인터넷 디바이스 인증 장치 및 방법
US20220263811A1 (en) Methods and Systems for Internet Key Exchange Re-Authentication Optimization
WO2009082950A1 (fr) Procédé, dispositif et système de distribution de clés
CN108900584B (zh) 内容分发网络的数据传输方法和系统
US20240022402A1 (en) A Method for Tunneling an Internet Protocol Connection Between Two Endpoints
WO2009149579A1 (zh) 存储转发方式下基于ibe算法的安全通信的方法和装置
Goodloe et al. L3A: A protocol for layer three accounting
JP2022500889A (ja) データ通信ネットワークのセキュリティ方法
Reiter Enabling Secure Communication over Existing Peer-to-Peer Frameworks
KR20110131434A (ko) SCTP 상에 유닉스 도메인 소켓을 이용한 OpenSSL 설정/전송방법

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: 12876515

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12876515

Country of ref document: EP

Kind code of ref document: A1