WO2013091180A1 - 文件初始传输速率的确定方法、装置和系统 - Google Patents

文件初始传输速率的确定方法、装置和系统 Download PDF

Info

Publication number
WO2013091180A1
WO2013091180A1 PCT/CN2011/084309 CN2011084309W WO2013091180A1 WO 2013091180 A1 WO2013091180 A1 WO 2013091180A1 CN 2011084309 W CN2011084309 W CN 2011084309W WO 2013091180 A1 WO2013091180 A1 WO 2013091180A1
Authority
WO
WIPO (PCT)
Prior art keywords
terminal device
available bandwidth
probe
size
packet
Prior art date
Application number
PCT/CN2011/084309
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 CN2011800030158A priority Critical patent/CN103339909A/zh
Priority to PCT/CN2011/084309 priority patent/WO2013091180A1/zh
Publication of WO2013091180A1 publication Critical patent/WO2013091180A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control

Definitions

  • the embodiments of the present invention relate to the field of communications technologies, and in particular, to a method, an apparatus, and a system for determining an initial transmission rate of a file. Background technique
  • the network protocol of the transport layer mainly uses TCP (Transmission Control Protocol) and UDP (User Datagram Protocol).
  • TCP has become a dominant end-to-end transmission protocol in the Internet.
  • TCP uses congestion control and flow control mechanisms.
  • TCP uses Slow Start to detect the available bandwidth of the network, and creates a new TCP connection.
  • the congestion window (CWND) is initialized to a data packet size, and the sender sends data according to the initialization value of the CWND, that is, the initial transmission rate of the file to be sent depends on the initialization value of the CWND.
  • SCTP Stream Control Transmission Protocol
  • SCTP Stream Control Transmission Protocol
  • the initial transmission rate of the file also depends on the initialization value of the CWND.
  • UDP is an unreliable connectionless transport protocol
  • UDP-based Data Transfer Protocol also uses a TCP-like startup mechanism.
  • the embodiment of the invention provides a method, a device and a system for determining an initial transmission rate of a file, which are used to solve the problem that the determination process of the initial transmission rate of the file is inefficient in the prior art.
  • An embodiment of the present invention provides a method for determining an initial transmission rate of a file, including: receiving, by a first terminal device, a detection packet sent by a second terminal device, where the detection packet is used to determine a detection report in a round of detection packets. a serial number of the sequence in which the first terminal device determines, according to the sequence number, a continuous probe packet received in a round of detection packets; the first terminal device determines, according to the continuous probe packet An available bandwidth with the second terminal device; the first terminal device to the second terminal device Returning the available bandwidth such that the second terminal device determines a file initial transmission rate based on the available bandwidth.
  • the embodiment of the present invention further provides a method for determining an initial transmission rate of a file, including: the second terminal device sends a probe packet to the first terminal device, where the probe packet is used to determine the probe packet in a round of detection packets. Sending a sequence number of the sequence, so that the first terminal device determines an available bandwidth with the second terminal device according to the continuous probe message; and the second terminal device receives the return from the first terminal device The available bandwidth determines an initial transmission rate of the file based on the available bandwidth.
  • the embodiment of the present invention further provides a receiving apparatus, including: a packet receiving module, configured to receive a probe packet sent by a second terminal device, where the probe packet is used to determine a probe packet in a round of detection packets. And a packet selection module, configured to determine, according to the sequence number, a continuous detection packet that is received in a round of detection packets, and a bandwidth determining module, configured to determine, according to the continuous detection packet, a bandwidth detection module An available bandwidth between the second terminal device and a bandwidth notification module, configured to return the available bandwidth to the second terminal device, so that the second terminal device determines an initial transmission rate of the file according to the available bandwidth.
  • a packet receiving module configured to receive a probe packet sent by a second terminal device, where the probe packet is used to determine a probe packet in a round of detection packets.
  • a packet selection module configured to determine, according to the sequence number, a continuous detection packet that is received in a round of detection packets
  • a bandwidth determining module configured to determine, according to the
  • the embodiment of the present invention further provides a sending apparatus, including: a packet sending module, configured to send a probe packet to the first terminal device, where the probe packet is used to determine the sending of the probe packet in a round of the probe packet.
  • the sequence number of the sequence is such that the first terminal device determines the available bandwidth with the second terminal device according to the continuous probe message; the bandwidth receiving module is configured to receive the returned by the first terminal device
  • the available bandwidth determines the initial transmission rate of the file based on the available bandwidth.
  • the embodiment of the present invention further provides a system for determining an initial transmission rate of a file, including: a sending device and a receiving device, where the sending device is configured to send a probe packet to the receiving device, where the probe packet is carried in a Determining, in the round detection message, a sequence number of the sequence of sending the probe message, and determining an initial transmission rate of the file according to the available bandwidth returned by the receiving device; the receiving device, configured to determine, according to the serial number, a received round Detecting consecutive probe messages in the message, determining the available bandwidth with the transmitting device according to the consecutive probe messages, and returning the available bandwidth to the sending device.
  • the continuous detection packet is determined in a round of detection packets, the available bandwidth between the transmission channels is determined through continuous detection packets, and the initial transmission rate of the file is determined according to the available bandwidth, thereby solving the prior art.
  • the problem that the initial transmission rate of the file is inefficient is improved, and the file transmission efficiency is improved.
  • FIG. 1 is a schematic flow chart of an embodiment of a method for determining an initial transmission rate of a file according to an embodiment of the present invention
  • Figure 1 is a schematic flow chart for determining available bandwidth
  • FIG. 3 is a schematic flow chart of another embodiment of a method for determining an initial transmission rate of a file according to an embodiment of the present invention
  • FIG. 4 is a schematic structural diagram of an embodiment of a receiving apparatus according to an embodiment of the present invention.
  • FIG. 5 is a schematic structural diagram of an embodiment of a sending apparatus according to an embodiment of the present invention.
  • FIG. 6 is a schematic structural diagram of another embodiment of a transmitting apparatus according to an embodiment of the present invention.
  • FIG. 7 is a schematic structural diagram of an embodiment of a system for determining an initial transmission rate of a file according to an embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of another embodiment of a system for determining an initial transmission rate of a file according to an embodiment of the present invention.
  • FIG. 9 is a schematic structural diagram of another embodiment of a system for determining an initial transmission rate of a file according to an embodiment of the present invention. detailed description
  • the technical solution of the present invention can be applied to a file transmission between any terminal devices.
  • the files transmitted between the terminal devices may be video files, audio files, text files, and other data.
  • FIG. 1 is a schematic flowchart of an embodiment of a method for determining an initial transmission rate of a file according to an embodiment of the present invention. As shown in FIG. 1, the method of the embodiment of the present invention includes:
  • Step 100 The first terminal device receives the probe packet sent by the second terminal device, where the probe packet is sent. – the text carries a sequence number for determining the order in which the probe message is sent in a round of detection messages;
  • the first terminal device and the second terminal device may be terminal devices supporting File Transfer Protocol (FTP), for example, a mobile phone or a personal computer supporting FTP.
  • FTP File Transfer Protocol
  • the second terminal device needs to construct a probe packet, and the probe packet may include a segment carrying a sequence number, and the sequence number is used to determine a continuous probe in a round of detection packets. Message.
  • the probe packet may also include a segment carrying a session identifier (Session ID), and the session identifier is used to mark the probe packet as belonging to the same probe packet.
  • Session ID a session identifier
  • the size of the probe message can be arbitrarily set.
  • the use of a larger detection packet is advantageous for improving the accuracy of the bandwidth measurement result, but the maximum detection packet cannot exceed the Maximum Transmission Unit (MTU) of the transmission network.
  • MTU Maximum Transmission Unit
  • the value of the MTU set by the physical network protocol is different, for example: The value of the MTU of the Hyperchannel is 65535 bytes;
  • the value of the MTU of the Token Ring (16 Mbps) is 17914 bytes
  • the value of the MTU of the Token Ring (4 Mbps) is 4464 bytes
  • the MTU value of FDDI (Fiber Distributed-Data Interface) is 4352 bytes.
  • the value of the MTU of the Ethernet is 1500 bytes
  • the size of the probe packet in the probe packet queue needs to be consistent, for example, all the probes in the probe packet.
  • the size of the text can be set to 1024byte.
  • Step 102 The first terminal device determines, according to the sequence number, consecutive detection packets that are received in a round of detection packets.
  • Step 104 The first terminal device determines, according to the continuous detection packet, an available bandwidth between the second terminal device and the second terminal device.
  • the first terminal device receives the probe packet sent by the second terminal device, and the first terminal device determines a continuous probe packet in the round of the probe packet according to the sequence number, where the first terminal The device determines, according to the continuous detection packet, the available bandwidth between the second terminal device and the specific
  • the embodiment may include the following steps.
  • FIG. 1 is a schematic flowchart of determining available bandwidth, as shown in FIG. 1: Step 2000: The first terminal device receives the probe packet.
  • Step 2001 The first terminal device determines whether the probe packet is a round of detection packet, and if yes, receives the probe packet; if not, discards the probe packet and continues to receive the next probe packet;
  • the second terminal device sends a probe packet to the first terminal device.
  • the probe packet carries a round of detection packet identifier in the session identifier.
  • the first terminal device identifies the received probe packet by using a round of detection packet identifier. For a round of probing messages.
  • the session identifier of each probe packet carries the same round of the probe packet identifier "A".
  • the first terminal device extracts the session identifier packet segment in the probe packet. If the session identifier carries "A”, if the session identifier carries "A”, the probe packet is received. If the session identifier does not carry "A”, the probe packet is discarded, and the next probe packet is continuously received.
  • Step 2002 The first terminal device records an arrival time of a round of detection packets.
  • Step 2003 The first terminal device determines whether the received probe packet is the last probe packet in the round of the probe packet, and if yes, performs step 2004 and step 2005; if not, returns to step 2000; the probe packet may
  • the sequence number segment carries the sequence number of the probe packet.
  • the last probe packet can represent the round of the probe packet by carrying the probe packet end identifier in the sequence number packet segment.
  • a round of probe packets carries five probe packets: Al, A2, A3, A4, A5.
  • five probe packets carry sequence numbers SN [1], SN [2], respectively.
  • the first terminal device after receiving the probe message, extracts the sequence number segment in the probe message, and determines whether the sequence number is SN[5, and ends. ], if the sequence number is SN[5, end], the first terminal device stops receiving the next probe message.
  • the first terminal device determines a continuous probe packet in the received probe packet. If the network bandwidth is good, the first terminal device may completely receive the probe packet sent by the second terminal device. For example, the second terminal device sends a same round of detection packets including 5 probe packets, and the probe packets are Al, A2, A3, A4, A5, respectively, and 5 probe packets respectively carry sequences. No. SN [1], SN [2], SN [3], SN [4], SN [5, end],
  • the first terminal device can determine that the consecutive probe packets are Al, A2, A3, A4, and A5 according to the sequence number.
  • the first terminal device may not receive the probe packet queue sent by the second terminal device completely. If the network bandwidth is poor, packet loss occurs. For example, the probe packet. _ _ text A4 is discarded during transmission, and the first terminal device can only obtain the sequence numbers SN[1], SN[2], SN[3], SN[5, end], SN [1], SN [ 2], SN [3] is a continuous sequence number, then the first terminal device determines that the consecutive probe messages are detection messages corresponding to the sequence number are Al, A2, A3.
  • the first terminal device can only receive the probe packets A1, A2, A4, and A5, and the continuous probe packet queue can be Al, A2 or A4, A5;
  • the probe packet A2 has a delay in the network transmission process, and the timing at which the probe packet arrives at the first terminal device is A1, A3, A2, A4, A5, then the continuous probe packet queue For A4, A5.
  • Step 2005 The first terminal device calculates an available bandwidth according to consecutive detection packets.
  • the first terminal device calculates the available bandwidth according to the continuous detection packet, and obtains the available bandwidth by using the quotient of the first value and the second value, where the first value is the continuous detection packet, and the detection is performed.
  • the product of the number of packets and the size of the probe packet; the second value is the duration of transmission of the consecutive probe packets. For example, you can calculate the available bandwidth using the following formula:
  • the second terminal device sends a round of detection packets, where the first detection packet has Al, A2, A3, A4, and A5, and a total of five detection packets, wherein the size L of each detection packet is 1024 bytes, if the network bandwidth is good, there is no packet loss, and the first terminal device receives all the probe packets, then the consecutive probe message queues are Al, A2, A3, A4, A5, wherein the continuous probes
  • the time at which the text arrives at the first terminal device is t [l], t [2] , t [3] , t [4] , t [5] , then, the available bandwidth
  • the first terminal device searches for a continuous probe packet in the received one-shot probe packet, and calculates the available bandwidth according to the continuous probe packet.
  • the transmission bandwidth can be calculated by transmitting a round of detection packets, and the measurement time is short compared with the measurement bandwidth by slow start of TCP, and the available bandwidth between the first terminal device and the second terminal device can be quickly determined.
  • Step 105 The first terminal device returns the available bandwidth to the second terminal device, so that the second terminal device determines an initial transmission rate of the file according to the available bandwidth.
  • the first terminal device returns the available bandwidth to the second terminal device, and the second terminal device determines an initial transmission rate of the file according to the available bandwidth, for example, if the available bandwidth is measured as
  • the initial transmission rate of the file may be determined according to the available bandwidth.
  • the size of the send window is determined based on the available bandwidth, and then the file is transferred directly according to the size of the send window, without the TCP slow start process.
  • the B is the available bandwidth returned by the first terminal device
  • the RTT Red-Tr ip Time
  • the second terminal device receives the information from the first terminal device. Confirm, the total delay experienced.
  • the continuous detection packet is determined in a round of detection packets, the available bandwidth between the transmission channels is determined through continuous detection packets, and the initial transmission rate of the file is determined according to the available bandwidth, thereby solving the prior art. Among them, the problem that the initial transmission rate of the file is inefficient is improved, and the file transmission efficiency is improved.
  • the embodiment of the present invention may further include: the second terminal device transmits the file to the first terminal device according to the initial transmission rate of the file, and the first terminal device monitors the available bandwidth according to the data packet arrival time interval, and feeds back to the second terminal device, The second terminal device adjusts the transmission rate of the file according to the feedback information to avoid congestion.
  • FIG. 3 is a flowchart of another embodiment of a method for determining an initial transmission rate of a file according to an embodiment of the present invention
  • _ _ Schematic as shown in FIG. 3, the method of the embodiment of the present invention includes:
  • Step 300 The second terminal device sends a probe packet to the first terminal device, where the probe packet carries a sequence number for determining a sequence of sending the probe packet in a round of the probe packet, so that the first terminal device is configured according to the first terminal device.
  • the consecutive probe packets determine an available bandwidth with the second terminal device;
  • the technical solution of the present invention can be applied to a file transmission between any terminal devices.
  • the files transmitted between the terminal devices may be video files, audio files, text files, and other data.
  • the first terminal device and the second terminal device may be a terminal device supporting a file transfer protocol (File Transfer Protocol), for example, a mobile phone or a personal computer supporting FTP.
  • a file transfer protocol File Transfer Protocol
  • the second terminal device needs to construct a probe packet, and the probe packet may include a segment carrying a sequence number, and the sequence number is used to determine a continuous probe in a round of detection packets. Message.
  • the probe packet may also include a segment carrying a session identifier (Ses s ion ID), and the session identifier is used to mark that the probe packet belongs to a round of probe packets.
  • Ses s ion ID a session identifier
  • the size of the probe message can be arbitrarily set.
  • the use of a larger probe packet is advantageous for improving the accuracy of the bandwidth measurement result, but the maximum detection packet cannot exceed the maximum transmission unit of the transmission network (Maximum Transmi ss Uni tun, MTU). ).
  • the size of the probe packet in the probe packet queue must be the same.
  • the size of all the probe packets in the probe packet can be set to 1024byte o
  • the manner in which the first terminal device determines the available bandwidth with the second terminal device according to the continuous detection packet is described in the first embodiment of the method, and is not repeatedly described in this embodiment.
  • Step 302 The second terminal device receives the available bandwidth returned by the first terminal device, and determines an initial transmission rate of the file according to the available bandwidth.
  • the first terminal device returns the available bandwidth to the second terminal device, and the second terminal device determines the initial transmission rate of the file according to the available bandwidth. For example, if the available bandwidth is 1M, the file may be set. The initial transmission rate is 1024Kps.
  • the initial transmission rate of the file may be determined according to the available bandwidth.
  • _ _ For example, the size of the send window is determined according to the available bandwidth, and then the file is transferred directly according to the size of the send window. The slow start process is not performed by TCP.
  • the B is the available bandwidth returned by the first terminal device
  • the RTT Red-Tr ip Time
  • the second terminal device receives the information from the first terminal device. Confirm, the total delay experienced.
  • the continuous detection packet is determined in a round of detection packets, the available bandwidth between the transmission channels is determined through continuous detection packets, and the initial transmission rate of the file is determined according to the available bandwidth, thereby solving the prior art. Among them, the problem that the initial transmission rate of the file is inefficient is improved, and the file transmission efficiency is improved.
  • the embodiment of the present invention may further include: the second terminal device transmits the file to the first terminal device according to the initial transmission rate of the file, and the first terminal device monitors the available bandwidth according to the data packet arrival time interval, and feeds back to the second terminal device, The second terminal device adjusts the transmission rate of the file according to the feedback information to avoid congestion.
  • the receiving apparatus 40 includes a message receiving module 400, a message selecting module 401, a bandwidth determining module 402, and a bandwidth notifying module 403.
  • the message receiving module 400 is configured to receive a probe packet sent by the second terminal device, where the probe packet carries a sequence number used to determine a sequence of sending the probe packet in a round of detection packets;
  • the module 401 is configured to determine, according to the serial number, consecutive detection packets that are received in a round of detection packets, and the bandwidth determining module 402 is configured to determine, according to the consecutive detection packets, the second terminal device.
  • the available bandwidth is used by the bandwidth notification module 403 to return the available bandwidth to the second terminal device, so that the second terminal device determines the initial transmission rate of the file according to the available bandwidth.
  • the bandwidth determining module 402 is specifically configured to obtain an available bandwidth according to a quotient of the first value and the second value, where the first value is the number of the detected packets in the consecutive detection packets. a product of the size of the probe message; the second value is a duration of transmission of the consecutive probe packets.
  • the second terminal device determines, according to the available bandwidth, a file initial transmission rate, and determines a size of the sending window according to the available bandwidth, and uses the size of the sending window as a file initial transmission.
  • Rate slow start without TCP, which makes the initial transfer rate of the file match the available bandwidth, improving file transfer efficiency.
  • the second terminal device determines the size of the sending window according to the available bandwidth, and may be that the second terminal device acquires a round-trip delay between the second terminal device and the first terminal device; The available bandwidth is multiplied by the round trip delay to obtain the size of the transmission window.
  • the size of the probe report may be the same.
  • FIG. 5 is a schematic structural diagram of an embodiment of a sending apparatus according to an embodiment of the present invention. As shown in FIG. 5, the sending apparatus 50 includes a packet sending module 500 and a bandwidth receiving module 501.
  • the packet sending module 500 is configured to send a probe packet to the first terminal device, where the probe packet carries a sequence number for determining a sending sequence of the probe packet in a round of the probe packet, so that the first terminal The device determines, according to the continuous detection packet, an available bandwidth between the second terminal device and the second terminal device;
  • the bandwidth receiving module 501 receives the available bandwidth returned by the first terminal device, and determines an initial file transmission rate according to the available bandwidth.
  • the first terminal device determines the available bandwidth between the second terminal device and the second terminal device according to the continuous detection packet, and obtains the available bandwidth according to the first value and the second value, the first value.
  • the product of the number of the probe packets and the size of the probe packet in the continuous probe packet; the second value is the duration of the transmission of the consecutive probe packets.
  • the size of the probe message may be the same.
  • the sending device sends the probe packet carrying the sequence number of the probe packet to the first terminal device, and the first terminal device determines the sending device and the device. Determining the available bandwidth between the first terminal devices, and returning the available bandwidth to the sending device, and the sending device determines the initial transmission rate of the file according to the available bandwidth,
  • FIG. 6 is a schematic structural diagram of another embodiment of a sending apparatus according to an embodiment of the present invention.
  • the bandwidth receiving module 501 may include: a first receiving unit 5011 or a second receiving unit 5012, and a first receiving unit 5011. Receiving the available bandwidth returned by the first terminal device, according to the – use the bandwidth to determine the size of the send window;
  • the second receiving unit 5012 is configured to use the size of the transmission window as the initial transmission rate of the file.
  • the size of the send window can be calculated as follows:
  • the B is the available bandwidth returned by the first terminal device
  • the RTT Red-Tr ip Time
  • the second terminal device receives the information from the first terminal device. Confirm, the total delay experienced.
  • the size of the probe report is the same.
  • the bandwidth receiving module determines the size of the sending window according to the available bandwidth, and transfers the file according to the size of the sending window, and does not transmit the file according to the size of the congestion window, so that the initial transmission rate of the file is available.
  • the bandwidth is matched to improve the initial transmission efficiency of the file.
  • FIG. 7 is a schematic structural diagram of an embodiment of a system for determining an initial transmission rate of a file according to an embodiment of the present invention. As shown in FIG. 7, the system includes a transmitting device 601 and a receiving device 602.
  • the sending device 601 is configured to send a probe packet to the receiving device 602, where the probe packet carries a sequence number for determining a sending sequence of the probe packet in a round of detecting packets, and returns according to the receiving device 602.
  • the available bandwidth determines the initial transfer rate of the file
  • the receiving device 602 is configured to determine, according to the sequence number, a continuous detection message that is received in a round of detection packets, and determine an available bandwidth with the sending device 601 according to the continuous detection message. And returning the available bandwidth to the transmitting device 601.
  • the detection packet sent by the sending device to the receiving device determines, by the receiving device, a continuous detection message in a round of detection message, and determines the available bandwidth between the transmission channels by using the continuous detection message. And returning the available bandwidth to the sending device, so that the sending device determines the initial transmission rate of the file according to the available bandwidth, which solves the problem that the determining process of the initial transmission rate of the file is inefficient in the prior art, and improves the file transmission efficiency.
  • FIG. 8 is a schematic structural diagram of another embodiment of a system for determining an initial transmission rate of a file according to an embodiment of the present invention.
  • the receiving apparatus 602 includes a first receiving unit 6021, a second receiving unit 6022, and a sending unit 6023.
  • the first receiving unit 6021 is configured to determine, according to the sequence number, consecutive detection packets that are received in a round of detection packets;
  • the second receiving unit 6022 is configured to obtain the available bandwidth according to the quotient of the first value and the second value, where the first value is the number of the detected packets and the size of the probe packet in the consecutive probe packets.
  • the second value is the transmission duration of the consecutive probe packets;
  • the transmitting unit 6023 is configured to return the available bandwidth to the transmitting device 601.
  • the receiving device determines a continuous detection packet in a round of detection packets, and obtains available bandwidth according to the number and size of consecutive detection packets and the transmission duration of consecutive detection packets, which can be quickly determined. Available bandwidth.
  • FIG. 9 is a schematic structural diagram of another embodiment of a system for determining an initial transmission rate of a file according to an embodiment of the present invention.
  • the transmitting apparatus 601 includes a first transmitting unit 6011 and a rate determining unit 6012.
  • the first sending unit 6011 is configured to send a probe packet to the receiving device 602, where the probe packet carries a sequence number for determining a sending sequence of the probe packet in a round of detecting packets.
  • the rate determining unit 6012 is configured to determine a size of the sending window according to the available bandwidth returned by the receiving device 602, and use the size of the sending window as the initial file transmission rate.
  • the rate determining unit 6012 determines the size of the sending window according to the available bandwidth, wherein the size of the sending window can be calculated according to the following manner:
  • the B is the available bandwidth returned by the first terminal device
  • the RTT Red-Tr ip Time
  • the second terminal device receives the information from the first terminal device. Confirm, the total delay experienced.
  • the size of the probe message may be the same.
  • the sending device determines the size of the sending window according to the available bandwidth returned by the receiving device, and then directly transfers the file according to the size of the sending window, without the slow start process of the TCP, avoiding the initial file initiated by the TCP slow start process.
  • the problem of low efficiency of the determination process of the transmission rate improves the file transmission efficiency.
  • modules, units and steps of the various examples described in connection with the embodiments disclosed herein can be implemented in electronic hardware, computer software or a combination of both, in order to clearly illustrate hardware and software. Interchangeability, which has been described generally in terms of functionality in the above description -- The composition and steps of each example. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the solution. A person skilled in the art can use different methods to implement the described functions for each particular application, but such implementation should not be considered to be beyond the scope of the present invention.
  • the disclosed systems, devices, and methods may be implemented in other ways.
  • the device embodiments described above are merely illustrative.
  • the division of the modules or units is only a logical function division.
  • there may be another division manner for example, multiple units or modules may be used. Combined or can be integrated into another system, or some features can be ignored, or not executed.
  • the mutual engagement or direct connection or communication connection shown or discussed may be through a connection or communication connection of some interfaces, devices, modules or units, or may be electrical, mechanical or otherwise The form of the connection.
  • modules or units described as separate components may or may not be physically separated, and the components displayed as modules or units may or may not be physical modules or units, that is, may be located in one place, or may be distributed to On multiple network modules or units. Some or all of the modules or units may be selected according to actual needs to achieve the objectives of the embodiments of the present invention.
  • each functional module or unit in each embodiment of the present invention may be integrated into one processing module or unit, or each module or unit may exist physically separately, or may be two or more modules or units. Integrated in one module or unit.
  • the above integrated modules or units can be implemented either in the form of hardware or in the form of software functional units.
  • the integrated modules or units if implemented in the form of software functional modules or units and sold or used as separate products, may be stored in a computer readable storage medium.
  • the technical solution of the present invention contributes in essence or to the prior art, or all or part of the technical solution may be embodied in the form of a software product stored in a storage medium.
  • a number of instructions are included to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a USB flash drive, a removable hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and the like, which can store program codes. medium.

Abstract

本发明提供一种文件初始传输速率的确定方法、装置和系统,通过在一轮探测报文中确定连续的探测报文,通过连续的探测报文确定传输通道间的可用带宽,根据可用带宽确定文件初始传输速率,解决了现有技术中,文件初始传输速率的确定过程效率低的问题,提高了文件传输效率。

Description

说 明 书
文件初始传输速率的确定方法、 装置和系统
技术领域
本发明实施例涉及通信技术领域,尤其涉及一种文件初始传输速率的确定方 法、 装置和系统。 背景技术
传输层的网络协议主要使用 TCP (Transmission Control Protocol,传输控 制协议)和 UDP (User Datagram Protocol, 用户数据包协议)。 目前, TCP已经成 为互联网中一种占主导地位的端到端传输协议, TCP釆用了拥塞控制和流量控制 机制, TCP通过慢启动(Slow Start)来探测网络的可用带宽, 在新建一个 TCP连 接时,拥塞窗口(Congestion Window, CWND)初始化为一个数据报文大小, 发送端 按照 CWND的初始化值发送数据,即待发文件的初始传输速率取决于 CWND的初始 化值。 此外, SCTP(Stream Control Transmission Protocol, 流媒体控制传输 协议)在数据传输过程中也釆用了 TCP慢启动机制, 文件的初始传输速率也取决 于 CWND的初始化值。
此外, UDP是不可靠的无连接传输协议,基于 UDP的数据传输协议( UDP-based Data Transfer Protocol, UDT )也釆用了类似 TCP†曼启动机制。
目前, 在 TCP慢启动机制下, 文件初始传输速率的确定过程效率低, 进而导 致文件传输效率低。 发明内容
本发明实施例提供一种文件初始传输速率的确定方法、装置和系统, 用于解 决现有技术中, 文件初始传输速率的确定过程效率低的问题。
本发明实施例提供一种文件初始传输速率的确定方法, 包括: 第一终端设备 接收第二终端设备发送的探测报文,所述探测报文携带用于在一轮探测报文中确 定探测报文发送顺序的序列号;所述第一终端设备根据所述序列号确定接收到的 在一轮探测报文中连续的探测报文;所述第一终端设备根据所述连续的探测报文 确定与所述第二终端设备间的可用带宽;所述第一终端设备向所述第二终端设备 返回所述可用带宽,使得所述第二终端设备根据所述可用带宽确定文件初始传输 速率。
本发明实施例还提供一种文件初始传输速率的确定方法, 包括: 第二终端 设备向第一终端设备发送探测报文, 所述探测报文携带用于在一轮探测报文中 确定探测报文发送顺序的序列号,使得所述第一终端设备根据所述连续的探测 报文确定与所述第二终端设备间的可用带宽; 所述第二终端设备接收所述第一 终端设备返回的所述可用带宽, 根据所述可用带宽确定文件初始传输速率。
本发明实施例还提供一种接收装置, 包括: 报文接收模块, 用于接收第二终 端设备发送的探测报文,所述探测报文携带用于在一轮探测报文中确定探测报文 发送顺序的序列号;报文选择模块, 用于根据所述序列号确定接收到的在一轮探 测报文中连续的探测报文; 带宽确定模块, 用于根据所述连续的探测报文确定与 所述第二终端设备间的可用带宽; 带宽通知模块, 用于向所述第二终端设备返回 所述可用带宽, 使得所述第二终端设备根据所述可用带宽确定文件初始传输速 率。
本发明实施例还提供一种发送装置, 包括: 报文发送模块, 用于向第一终 端设备发送探测报文, 所述探测报文携带用于在一轮探测报文中确定探测报文 发送顺序的序列号,使得所述第一终端设备根据所述连续的探测报文确定与所 述第二终端设备间的可用带宽; 带宽接收模块, 用于接收所述第一终端设备返 回的所述可用带宽, 才艮据所述可用带宽确定文件初始传输速率。
本发明实施例还提供一种文件初始传输速率的确定系统, 包括: 发送装置 和接收装置, 所述发送装置, 用于向接收装置发送的探测报文, 所述探测报文 携带用于在一轮探测报文中确定探测报文发送顺序的序列号,以及根据所述接 收装置返回的可用带宽确定文件初始传输速率; 所述接收装置, 用于根据所述 序列号确定接收到的在一轮探测报文中连续的探测报文, 以及根据所述连续的 探测报文确定与所述发送装置间的可用带宽, 并向所述发送装置返回所述可用 带宽。
在本发明实施例中, 通过在一轮探测报文中确定连续的探测报文, 通过连续 的探测报文确定传输通道间的可用带宽, 根据可用带宽确定文件初始传输速率, 解决了现有技术中, 文件初始传输速率的确定过程效率低的问题,提高了文件传 输效率。 附图说明
图 1 为本发明实施例文件初始传输速率的确定方法的一个实施例的流程示 意图;
图 1为确定可用带宽的流程示意图;
图 3 为本发明实施例文件初始传输速率的确定方法的另一个实施例的流程 示意图;
图 4为本发明实施例接收装置的一个实施例的结构示意图;
图 5为本发明实施例发送装置的一个实施例的结构示意图;
图 6为本发明实施例发送装置的另一个实施例的结构示意图;
图 7 为本发明实施例文件初始传输速率的确定系统的一个实施例的结构示 意图;
图 8 为本发明实施例文件初始传输速率的确定系统的另一个实施例的结构 示意图;
图 9 为本发明实施例文件初始传输速率的确定系统的另一个实施例的结构 示意图。 具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚, 下面将结合本发明实 施例中的附图, 对本发明实施例中的技术方案进行清楚、 完整地描述, 显然, 所 描述的实施例是本发明一部分实施例, 而不是全部的实施例。基于本发明中的实 施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施 例, 都属于本发明保护的范围。
下面对本发明方法实施例的整体技术方案进行说明。
方法实施例一
本发明的技术方案可以适用于任何终端设备间进行文件传输的场合, 例如, 终端设备间传输的文件可以是视频文件, 音频文件, 文本文件以及其它数据等。
图 1 为本发明实施例文件初始传输速率的确定方法的一个实施例的流程示 意图, 如图 1所示, 本发明实施例的方法包括:
步骤 100、 第一终端设备接收第二终端设备发送的探测报文, 所述探测报 — — 文携带用于在一轮探测报文中确定探测报文发送顺序的序列号;
在本发明实施例中,所述第一终端设备和所述第二终端设备可以为支持文件 传输协议(File Transfer Protocol, FTP) 的终端设备, 例如, 支持 FTP的手机 或个人电脑等。
在本发明实施例中, 第二终端设备首先需要构造探测报文,探测报文可以包 括携带序列号(Sequence Number)的报文段, 序列号用于在一轮探测报文中确定 连续的探测报文。
探测报文也可以包括携带会话标识(Session ID)的报文段, 会话标识用于 标记探测报文同属于同一探测报文。
在本发明实施例中, 探测报文的大小可以任意设定。
需要说明的是,在本发明实施例中, 使用较大的探测报文有利提高带宽测量 结果的精度, 但探测报文最大不能超过传输网络的最大传输单元(Maximum Transmission Unit, MTU), 不同的物理网络协议设定的 MTU的值是不同的, 例如: 超级通道( Hyperchannel ) 的 MTU的值是 65535字节;
令牌网 (16Mbps) 的 MTU的值是 17914字节;
令牌网 (4Mbps) 的 MTU的值是 4464字节;
FDDI (Fiber Distributed-Data Interface,光纤分布式数据接口)的 MTU的值 是 4352字节;
以太网的 MTU的值是 1500字节;
PPPoE (点到点连接协议)的 MTU的值是 1492字节;
此外, 还需要说明的是, 在本发明实施例中, 为了保证带宽测试的准确度, 所述探测报文队列中的探测报文的大小需要保持一致, 例如,探测报文中所有的 探测报文的大小都可以设置为 1024byte。
步骤 102、 所述第一终端设备根据所述序列号确定接收到的在一轮探测报文 中连续的探测报文;
步骤 104、 所述第一终端设备根据所述连续的探测报文确定与所述第二终端 设备间的可用带宽;
在上述步骤 100、 步骤 102和步骤 104中, 第一终端设备接收第二终端设备 发送的探测报文, 第一终端设备根据序列号确定一轮探测报文中连续的探测报 文, 第一终端设备根据连续的探测报文确定与第二终端设备间的可用带宽, 具体 的实施方式可以包括以下步骤,图 1为确定可用带宽的流程示意图,如图 1所示: 步骤 2000、 第一终端设备接收探测报文;
步骤 2001、 第一终端设备判断探测报文是否是一轮探测报文, 如果是, 则 接收该探测报文;如果不是,则将该探测报文丢弃,并继续接收下一个探测报文; 第二终端设备向第一终端设备发送探测报文,探测报文可以通过在会话标识 中携带一轮探测报文标识, 第一终端设备通过一轮探测报文标识, 识别接收到的 探测报文是否为一轮探测报文。
例如,在一轮探测报文中,每个探测报文的会话标识携带同一轮探测报文标 识 "A" ,第一终端设备接收到探测报文后, 提取探测报文中会话标识报文段, 判 断会话标识是否携带 "A", 若会话标识携带 "A", 则接收该探测报文, 若会话标 识不携带 "A", 则将该探测报文丢弃, 继续接收下一个探测报文。
步骤 2002、 第一终端设备记录一轮探测报文的到达时间;
步骤 2003、第一终端设备判断接收到的探测报文是否为一轮探测报文中最后 一个探测报文,若是, 则执行步骤 2004和步骤 2005; 若不是, 则返回步骤 2000; 探测报文可以在序列号报文段中携带探测报文的序列号, 一轮探测报文中, 最后一个探测报文可以通过在序列号报文段中携带探测报文结束标识,来表示一 轮探测报文发送完毕, 例如, 一轮探测报文携带 5个探测报文: Al, A2, A3, A4, A5 , 相对应的, 5个探测报文分别携带序列号 SN [1],SN[2],SN[3],SN[4],SN[5, 结束],第一终端设备接收到探测报文后,提取探测报文中的序列号报文段, 判断 序列号是否为 SN[5, 结束], 若序列号为 SN[5, 结束], 则第一终端设备停止接收 下一个探测报文。
步骤 2004、 第一终端设备在接收到的探测报文中, 确定连续的探测报文; 在网络带宽情况较好的情况下,第一终端设备可能完整的接收到第二终端设 备发送的探测报文, 例如, 第二终端设备发送一个包含 5个探测报文的同一轮探 测报文, 该探测报文分别为 Al, A2, A3, A4, A5, 相应的, 5个探测报文分别携 带序列号 SN [1] , SN [2] , SN [3] , SN [4] , SN [5 , 结束] ,
若没有发生丢包现象, 则该 5个探测报文会被全部接收到, 那么, 第一终端 设备根据序列号能判断出连续的探测报文为 Al、 A2、 A3、 A4、 A5。
由于网络带宽情况千差万别,第一终端设备有可能不能完整的接收第二终端 设备发送的探测报文队列, 若网络带宽情况较差, 发生丢包现象, 例如, 探测报 _ _ 文 A4 在传输过程中被丢弃, 第一终端设备就只能获得序列号 SN[1], SN[2], SN[3], SN[5, 结束], SN [1] , SN [2] , SN [3]为连续的序列号, 那么, 第一终端设备就判断连续的探测报文为与序列号相应的探测报文为 Al, A2, A3。
需要说明的是, 若探测报文 A3在传输过程中被丢弃, 则第一终端设备只能 接收到探测报文 Al, A2, A4, A5, 那么连续的探测报文队列可以为 Al , A2或 A4, A5;
此外, 还需要说明的是, 若探测报文 A2在网络传输过程中发生时延, 探测 报文到达第一终端设备的时序为 A1, A3, A2, A4, A5, 那么连续的探测报文队 列为 A4, A5。
需要说明的是, 上述举例只做说明, 不做限定。
步骤 2005、 第一终端设备根据连续的探测报文计算可用带宽。
需要说明的是, 第一终端设备根据连续的探测报文计算可用带宽, 可以通过 第一数值与第二数值的商获取可用带宽, 所述第一数值为所述连续的探测报文 中,探测报文的个数与所述探测报文的大小的乘积; 所述第二数值为所述连续的 探测报文的发送时长。 例如, 可以釆用下列公式计算可用带宽:
Δ. t
所述 B为可用带宽; 所述 N为所述连续的探测报文中, 探测报文的个数; 所 述 L为探测报文的长度; 所述 Δ t为所述连续的探测报文的发送时长。
具体的, 第二终端设备发送一轮探测报文, 该一轮探测报文中有 Al, A2, A3, A4, A5, 共 5个探测报文, 其中, 每个探测报文的大小 L为 1024byte, 若 网络带宽情况较好, 没有丢包, 第一终端设备接收到了全部的探测报文, 那么连 续的探测艮文队列为 Al, A2, A3, A4, A5, 其中, 该连续的探测艮文到达第一 终端设备的时间分别为 t [l] , t [2] , t [3] , t [4] , t [5] , 那么, 可用带宽
5 X 1024
Β =―
tiS]— t(l]
若网络带宽情况较差, 导致 A2丢包, 那么连续的探测报文为 A3、 A4、 A5, 则可用带宽 ― 3 X 1024
t[5]_ t[3:】 在本发明实施例中,第一终端设备通过在接收到的一轮探测报文中寻找连续 的探测报文, 根据连续的探测报文计算可用带宽, 因此, 发送一轮探测报文就能 计算出可用带宽, 与通过 TCP慢启动测量带宽相比, 测量时间短, 能快速的确定 第一终端设备与第二终端设备之间的可用带宽。
步骤 105、 所述第一终端设备向所述第二终端设备返回所述可用带宽, 使得 所述第二终端设备根据所述可用带宽确定文件初始传输速率。
在本发明实施例中, 第一终端设备向第二终端设备返回所述可用带宽, 第二 终端设备根据所述可用带宽确定文件初始传输速率, 例如, 若测到可用带宽为
1M, 可以设置文件初始发送速率为 1024Kps。
若第二终端设备和第一终端设备釆用 TCP传输文件,第二终端设备接收到第 一终端设备返回的可用带宽, 可以根据该可用带宽确定文件初始传输速率。
例如,才艮据可用带宽确定发送窗口的大小,然后直接按照发送窗口的大小传 输文件, 不经 TCP慢启动过程。 其中, 发送窗口的大小可以根据下列方式计算: 发送窗口的大小= B RTT
所述 B为第一终端设备返回的可用带宽, 所述 RTT (Round-Tr ip Time , 往返时 延)表示从第二终端设备发送数据开始, 到第二终端设备收到来自第一终端设备 的确认, 总共经历的时延。
在本发明实施例中, 通过在一轮探测报文中确定连续的探测报文, 通过连续 的探测报文确定传输通道间的可用带宽, 根据可用带宽确定文件初始传输速率, 解决了现有技术中, 文件初始传输速率的确定过程效率低的问题,提高了文件传 输效率。
本发明实施例还可以进一步包括:第二终端设备根据文件的初始传输速率向 第一终端设备传输文件,第一终端设备根据数据包到达时间间隔,监控可用带宽, 并反馈到第二终端设备, 第二终端设备根据反馈的信息, 调整文件的传输速率, 避免拥塞发生。
方法实施例二
图 3 为本发明实施例文件初始传输速率的确定方法的另一个实施例的流程 _ _ 示意图, 如图 3所示, 本发明实施例的方法包括:
步骤 300、 第二终端设备向第一终端设备发送探测报文, 所述探测报文携 带用于在一轮探测报文中确定探测报文发送顺序的序列号,使得所述第一终端 设备根据所述连续的探测报文确定与所述第二终端设备间的可用带宽;
本发明的技术方案可以适用于任何终端设备间进行文件传输的场合, 例如, 终端设备间传输的文件可以是视频文件, 音频文件, 文本文件以及其它数据等。
在本发明实施例中,所述第一终端设备和所述第二终端设备可以为支持文件 传输协议(Fi le Transfer Protoco l , FTP ) 的终端设备, 例如, 支持 FTP的手机 或个人电脑等。
在本发明实施例中, 第二终端设备首先需要构造探测报文,探测报文可以包 括携带序列号(Sequence Number)的报文段, 序列号用于在一轮探测报文中确定 连续的探测报文。
探测报文也可以包括携带会话标识(Ses s ion ID )的报文段, 会话标识用于 标记探测报文属于一轮探测报文。
在本发明实施例中, 探测报文的大小可以任意设定。
需要说明的是,在本发明实施例中, 使用较大的探测报文有利提高带宽测量 结果的精度, 但探测报文最大不能超过传输网络的最大传输单元(Max imum Transmi s s ion Uni t , MTU)。
此外, 还需要说明的是, 为了保证带宽测试的准确度, 所述探测报文队列中 的探测报文的大小需要保持一致, 例如,探测报文中所有的探测报文的大小都可 以设置为 1024byteo
在本发明实施例中,第一终端设备根据连续的探测报文确定与第二终端设备 间的可用带宽的方式, 在方法实施例一中已经说明, 本实施例不再复述。
步骤 302、 所述第二终端设备接收所述第一终端设备返回的所述可用带宽, 根据所述可用带宽确定文件初始传输速率。
在本发明实施例中, 第一终端设备向第二终端设备返回所述可用带宽, 第二 终端设备根据所述可用带宽确定文件初始传输速率, 例如, 若测到可用带宽为 1M, 可以设置文件初始发送速率为 1024Kps。
若第二终端设备和第一终端设备釆用 TCP协议传输文件,第二终端设备接收 到第一终端设备返回的可用带宽, 可以根据该可用带宽确定文件初始传输速率。 _ _ 例如,才艮据可用带宽确定发送窗口的大小,然后直接按照发送窗口的大小传 输文件, 不经 TCP慢启动过程其中, 发送窗口的大小可以根据下列方式计算: 发送窗口的大小= B RTT
所述 B为第一终端设备返回的可用带宽, 所述 RTT (Round-Tr ip Time, 往返时 延)表示从第二终端设备发送数据开始, 到第二终端设备收到来自第一终端设备 的确认, 总共经历的时延。
在本发明实施例中, 通过在一轮探测报文中确定连续的探测报文, 通过连续 的探测报文确定传输通道间的可用带宽, 根据可用带宽确定文件初始传输速率, 解决了现有技术中, 文件初始传输速率的确定过程效率低的问题,提高了文件传 输效率。
本发明实施例还可以进一步包括:第二终端设备根据文件的初始传输速率向 第一终端设备传输文件,第一终端设备根据数据包到达时间间隔,监控可用带宽, 并反馈到第二终端设备, 第二终端设备根据反馈的信息, 调整文件的传输速率, 避免拥塞发生。
下面对本发明装置实施例的整体技术方案进行说明。
装置实施例一
图 4为本发明实施例接收装置的一个实施例的结构示意图, 如图 4所示, 该 接收装置 40包括报文接收模块 400、报文选择模块 401、 带宽确定模块 402和带 宽通知模块 403;
所述报文接收模块 400用于接收第二终端设备发送的探测报文,所述探测报 文携带用于在一轮探测报文中确定探测报文发送顺序的序列号;所述报文选择模 块 401用于根据所述序列号确定接收到的在一轮探测报文中连续的探测报文;所 述带宽确定模块 402 用于根据所述连续的探测报文确定与所述第二终端设备间 的可用带宽; 所述带宽通知模块 403 用于向所述第二终端设备返回所述可用带 宽, 使得所述第二终端设备根据所述可用带宽确定文件初始传输速率。
需要说明的是,所述带宽确定模块 402具体用于根据第一数值与第二数值的 商获取可用带宽, 所述第一数值为所述连续的探测报文中,探测报文的个数与所 述探测报文的大小的乘积; 所述第二数值为所述连续的探测报文的发送时长。
此外, 所述第二终端设备根据所述可用带宽确定文件初始传输速率可以根 据所述可用带宽确定发送窗口的大小,将所述发送窗口的大小作为文件初始传输 — — 速率,不经过 TCP慢启动, 使得文件的初始传输速率与可用带宽相匹配, 提高了 文件传输效率。
还需要说明的是, 所述第二终端设备根据所述可用带宽确定发送窗口的大 小,可以是第二终端设备获取所述第二终端设备至所述第一终端设备间的往返时 延; 将所述可用带宽与所述往返时延相乘得到发送窗口的大小。
此外, 在本发明实施例中, 所述探测报的大小可以相同。
通过在一轮探测报文中确定连续的探测报文,通过连续的探测报文确定传输 通道间的可用带宽,根据可用带宽确定文件初始传输速率, 解决了现有技术中文 件初始传输速率的确定过程效率低的问题,提高了文件传输效率。 装置实施例二 图 5为本发明实施例发送装置的一个实施例的结构示意图, 如图 5所示, 该 发送装置 50包括报文发送模块 500和带宽接收模块 501 ;
所述报文发送模块 500用于向第一终端设备发送探测报文, 所述探测报文 携带用于在一轮探测报文中确定探测报文发送顺序的序列号,使得所述第一终 端设备根据所述连续的探测报文确定与所述第二终端设备间的可用带宽;
所述带宽接收模块 501接收所述第一终端设备返回的所述可用带宽,根据所 述可用带宽确定文件初始传输速率。
需要说明的是,第一终端设备根据所述连续的探测报文确定与所述第二终端 设备间的可用带宽,可以根据第一数值与第二数值的商获取可用带宽, 所述第一 数值为所述连续的探测报文中, 探测报文的个数与所述探测报文的大小的乘积; 所述第二数值为所述连续的探测报文的发送时长。
此外, 所述探测报文的大小可以相同。
在本发明实施例中,发送装置通过向第一终端设备发送携带用于在一轮探测 报文中,确定探测报文发送顺序序列号的探测报文,使得第一终端设备确定发送 装置与所述第一终端设备间的可用带宽, 并向发送装置返回所述可用带宽,发送 装置根据所述可用带宽确定文件初始传输速率,
解决了现有技术中, 文件初始传输速率的确定过程效率低的问题,提高了文 件传输效率。
图 6为本发明实施例发送装置的另一个实施例的结构示意图, 如图 6所示, 所述带宽接收模块 501可以包括: 第一接收单元 5011或第二接收单元 5012 , 第 一接收单元 5011用于接收所述第一终端设备返回的所述可用带宽, 根据所述可 — — 用带宽确定发送窗口的大小;
第二接收单元 5012用于将所述发送窗口的大小作为文件初始传输速率。 其 中, 发送窗口的大小可以根据下列方式计算:
发送窗口的大小= B RTT
所述 B为第一终端设备返回的可用带宽, 所述 RTT (Round-Tr ip Time , 往返时 延)表示从第二终端设备发送数据开始, 到第二终端设备收到来自第一终端设备 的确认, 总共经历的时延。
此外, 在本发明实施例中, 所述探测报的大小相同。
在本发明实施例中, 带宽接收模块接收到可用带宽后,根据可用带宽确定发 送窗口的大小,根据发送窗口的大小传输文件,不按照拥塞窗口的大小传输文件, 使得文件的初始传输速率与可用带宽相匹配, 提高了文件初始传输效率。
下面对本发明系统实施例的整体技术方案进行说明。
系统实施例一
图 7 为本发明实施例文件初始传输速率的确定系统的一个实施例的结构示 意图, 如图 7所示, 该系统包括发送装置 601和接收装置 602。
所述发送装置 601用于向接收装置 602发送的探测报文, 所述探测报文携 带用于在一轮探测报文中确定探测报文发送顺序的序列号,以及根据所述接收 装置 602返回的可用带宽确定文件初始传输速率;
所述接收装置 602 用于根据所述序列号确定接收到的在一轮探测报文中连 续的探测报文,以及根据所述连续的探测报文确定与所述发送装置 601间的可用 带宽, 并向所述发送装置 601返回所述可用带宽。
在本发明实施例中, 通过发送装置向接收装置发送的探测报文, 通过接收装 置在一轮探测报文中确定连续的探测报文,通过连续的探测报文确定传输通道间 的可用带宽, 并向发送装置返回可用带宽,使得发送装置根据可用带宽确定文件 初始传输速率,解决了现有技术中,文件初始传输速率的确定过程效率低的问题, 提高了文件传输效率。
系统实施例二
图 8 为本发明实施例文件初始传输速率的确定系统的另一个实施例的结构 示意图,如图 8所示,接收装置 602包括第一接收单元 6021、第二接收单元 6022 和发送单元 6023。 — — 第一接收单元 6021用于根据所述序列号确定接收到的在一轮探测报文中连 续的探测报文;
第二接收单元 6022用于根据第一数值与第二数值的商获取可用带宽, 所述 第一数值为所述连续的探测报文中,探测报文的个数与所述探测报文的大小的乘 积; 所述第二数值为所述连续的探测报文的发送时长;
发送单元 6023用于向所述发送装置 601返回所述可用带宽。
在本发明实施例中,接收装置在一轮探测报文中确定连续的探测报文,根据 连续的探测报文的个数和大小以及连续探测报文的发送时长得到可用带宽,能快 速的确定可用带宽。
系统实施例三
图 9 为本发明实施例文件初始传输速率的确定系统的另一个实施例的结构 示意图,如图 9所示,发送装置 601包括第一发送单元 6011和速率确定单元 6012。
所述第一发送单元 6011用于向接收装置 602发送的探测报文, 所述探测报 文携带用于在一轮探测报文中确定探测报文发送顺序的序列号;
所述速率确定单元 6012用于根据所述接收装置 602返回的可用带宽确定发 送窗口的大小, 将所述发送窗口的大小作为文件初始传输速率。
需要说明的是, 速率确定单元 6012根据可用带宽确定发送窗口的大小, 其 中, 发送窗口的大小可以根据下列方式计算:
发送窗口的大小= B RTT
所述 B为第一终端设备返回的可用带宽, 所述 RTT (Round-Tr ip Time, 往返时 延)表示从第二终端设备发送数据开始, 到第二终端设备收到来自第一终端设备 的确认, 总共经历的时延。
此外, 所述探测报文的大小可以相同。
在本发明实施例中,发送装置根据接收装置返回的可用带宽确定发送窗口的 大小, 然后直接按照发送窗口的大小传输文件, 不经 TCP慢启动过程, 避免了 TCP慢启动过程带来的文件初始传输速率的确定过程效率低的问题, 提高了文件 传输效率低。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例 的模块、 单元及步骤, 能够以电子硬件、 计算机软件或者二者的结合来实现, 为 了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述 — — 了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术 方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不 同方法来实现所描述的功能, 但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到, 为了描述的方便和简洁, 上述描述 的系统、 装置、模块和单元的具体工作过程, 可以参考前述方法实施例中的对应 过程, 在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法, 可以通过其它的方式实现。 例如, 以上所描述的装置实施例仅仅是示意性的, 例 如, 所述模块或单元的划分, 仅仅为一种逻辑功能划分, 实际实现时可以有另外 的划分方式, 例如多个单元或模块可以结合或者可以集成到另一个系统, 或一些 特征可以忽略, 或不执行。 另外, 所显示或讨论的相互之心的輛合或直接輛合或 通信连接可以是通过一些接口、 装置、模块或单元的心接輛合或通信连接, 也可 以是电的, 机械的或其它的形式连接。
所述作为分离部件说明的模块或单元可以是或者也可以不是物理上分开的, 作为模块或单元显示的部件可以是或者也可以不是物理模块或单元,即可以位于 一个地方, 或者也可以分布到多个网络模块或单元上。 可以根据实际的需要选择 其中的部分或者全部模块或单元来实现本发明实施例方案的目的。
另夕卜,在本发明各个实施例中的各功能模块或单元可以集成在一个处理模块 或单元中, 也可以是各个模块或单元单独物理存在, 也可以是两个或两个以上模 块或单元集成在一个模块或单元中。上述集成的模块或单元既可以釆用硬件的形 式实现, 也可以釆用软件功能单元的形式实现。
所述集成的模块或单元如果以软件功能模块或单元的形式实现并作为独立 的产品销售或使用时, 可以存储在一个计算机可读取存储介质中。基于这样的理 解, 本发明的技术方案本质上或者说对现有技术做出贡献的部分, 或者该技术方 案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个 存储介质中, 包括若干指令用以使得一台计算机设备(可以是个人计算机, 服务 器, 或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。 而前 述的存储介质包括: U盘、 移动硬盘、 只读存储器(ROM, Read-Only Memory ), 随机存取存储器(RAM, Random Acces s Memory )、 磁碟或者光盘等各种可以存储 程序代码的介质。 — — 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等 效的修改或替换, 这些修改或替换都应涵盖在本发明的保护范围之内。 因此, 本 发明的保护范围应以权利要求的保护范围为准。

Claims

权 利 要 求 书
1、 一种文件初始传输速率的确定确定方法, 其特征在于, 包括: 第一终端设备接收第二终端设备发送的探测报文, 所述探测报文携带用于 在一轮探测报文中确定探测报文发送顺序的序列号;
所述第一终端设备根据所述序列号确定接收到的在一轮探测报文中连续的 探测报文;
所述第一终端设备根据所述连续的探测报文确定与所述第二终端设备间的 可用带宽;
所述第一终端设备向所述第二终端设备返回所述可用带宽,使得所述第二终 端设备根据所述可用带宽确定文件初始传输速率。
1、 根据权利要求 1所述的方法, 其特征在于, 所述第一终端设备根据所述 连续的探测报文确定与所述第二终端设备间的可用带宽包括:
第一终端设备根据第一数值与第二数值的商获取可用带宽,所述第一数值为 所述连续的探测报文中,探测报文的个数与所述探测报文的大小的乘积; 所述第 二数值为所述连续的探测报文的发送时长。
3、 根据权利要求 1或 1所述的方法, 其特征在于, 所述第一终端设备和所 述第二终端设备为支持文件传输协议的终端设备。
4、 根据权利要求 1至 3任一所述的方法, 其特征在于, 所述探测报文的大 小相同。
5、 根据权利要求 1至 4任一所述的方法, 其特征在于, 所述第二终端设备 根据所述可用带宽确定文件初始传输速率包括:
第二终端设备才艮据所述可用带宽确定发送窗口的大小;
所述第二终端将所述发送窗口的大小作为文件初始传输速率。
6、 根据权利要求 5所述的方法, 其特征在于, 所述第二终端设备根据所述 可用带宽确定发送窗口的大小包括:
第二终端设备获取所述第二终端设备至所述第一终端设备间的往返时延; 将所述可用带宽与所述往返时延相乘得到发送窗口的大小。
7、 一种文件初始传输速率的确定方法, 其特征在于, 包括:
第二终端设备向第一终端设备发送探测报文, 所述探测报文携带用于在一 轮探测报文中确定探测报文发送顺序的序列号,使得所述第一终端设备根据所 述连续的探测报文确定与所述第二终端设备间的可用带宽;
所述第二终端设备接收所述第一终端设备返回的所述可用带宽,根据所述可 用带宽确定文件初始传输速率。
8、 根据权利要求 7所述的方法, 其特征在于, 所述第一终端设备根据所述 连续的探测报文确定与所述第二终端设备间的可用带宽包括:
第一终端设备根据第一数值与第二数值的商获取可用带宽,所述第一数值为 所述连续的探测报文中,探测报文的个数与所述探测报文的大小的乘积; 所述第 二数值为所述连续的探测报文的发送时长。
9、 根据权利要求 7或 8所述的方法, 其特征在于, 所述第一终端设备和所 述第二终端设备为支持文件传输协议的终端设备。
10、根据权利要求 7至 9任一所述的方法, 其特征在于, 所述探测报文的大 小相同。
11、 根据权利要求 7至 10任一所述的方法, 其特征在于, 所述可用带宽确 定文件初始传输速率包括:
才艮据所述可用带宽确定发送窗口的大小;
将所述发送窗口的大小作为文件初始传输速率。
12、 根据权利要求 11所述的方法, 其特征在于, 所述根据所述可用带宽确 定发送窗口的大小包括:
获取所述第二终端设备至所述第一终端设备间的往返时延;
将所述可用带宽与所述往返时延相乘得到发送窗口的大小。
13、 一种接收装置, 其特征在于, 包括:
报文接收模块, 用于接收第二终端设备发送的探测报文, 所述探测报文携 带用于在一轮探测报文中确定探测报文发送顺序的序列号;
报文选择模块,用于根据所述序列号确定接收到的在一轮探测报文中连续的 探测报文;
带宽确定模块,用于根据所述连续的探测报文确定与所述第二终端设备间的 可用带宽;
带宽通知模块, 用于向所述第二终端设备返回所述可用带宽,使得所述第二 终端设备根据所述可用带宽确定文件初始传输速率。 14、 根据权利要求 13所述的装置, 其特征在于, 所述带宽确定模块具体用 于根据第一数值与第二数值的商获取可用带宽,所述第一数值为所述连续的探测 报文中,探测报文的个数与所述探测报文的大小的乘积; 所述第二数值为所述连 续的探测报文的发送时长。
15、根据权利要求 13或 14所述的装置, 其特征在于, 所述探测报文的大小 相同。
16、根据权利要求 13至 15任一所述的装置, 其特征在于, 所述第二终端设 备根据所述可用带宽确定文件初始传输速率包括:
第二终端设备才艮据所述可用带宽确定发送窗口的大小;
所述第二终端将所述发送窗口的大小作为文件初始传输速率。。
17、 根据权利要求 16所述的装置, 其特征在于, 所述第二终端设备根据所 述可用带宽确定发送窗口的大小包括:
第二终端设备获取所述第二终端设备至所述第一终端设备间的往返时延; 将所述可用带宽与所述往返时延相乘得到发送窗口的大小。
18、 一种发送装置, 其特征在于, 包括:
报文发送模块, 用于向第一终端设备发送探测报文, 所述探测报文携带用 于在一轮探测报文中确定探测报文发送顺序的序列号,使得所述第一终端设备 根据所述连续的探测报文确定与所述第二终端设备间的可用带宽;
带宽接收模块, 用于接收所述第一终端设备返回的所述可用带宽,根据所述 可用带宽确定文件初始传输速率。
19、 根据权利要求 18所述的装置, 其特征在于, 所述第一终端设备根据所 述连续的探测报文确定与所述第二终端设备间的可用带宽包括:
第一终端设备根据第一数值与第二数值的商获取可用带宽,所述第一数值为 所述连续的探测报文中,探测报文的个数与所述探测报文的大小的乘积; 所述第 二数值为所述连续的探测报文的发送时长。
20、根据权利要求 18或 19所述的装置, 其特征在于, 所述探测报文的大小 相同。
21、根据权利要求 18至 20任一所述的装置, 其特征在于, 所述带宽接收模 块包括:
第一接收单元, 用于接收所述第一终端设备返回的所述可用带宽,根据所述 可用带宽确定发送窗口的大小;
第二接收单元, 用于将所述发送窗口的大小作为文件初始传输速率。
11、一种文件初始传输速率的确定系统, 其特征在于, 包括发送装置和接收 装置;
所述发送装置, 用于向接收装置发送的探测报文, 所述探测报文携带用于 在一轮探测报文中确定探测报文发送顺序的序列号,以及根据所述接收装置返 回的可用带宽确定文件初始传输速率;
所述接收装置,用于根据所述序列号确定接收到的在一轮探测报文中连续的 探测报文, 以及根据所述连续的探测报文确定与所述发送装置间的可用带宽, 并 向所述发送装置返回所述可用带宽。
23、 根据权利要求 22所述的系统, 其特征在于, 所述接收装置包括: 第一接收单元,用于根据所述序列号确定接收到的在一轮探测报文中连续的 探测报文;
第二接收单元, 用于根据第一数值与第二数值的商获取可用带宽, 所述第一 数值为所述连续的探测报文中, 探测报文的个数与所述探测报文的大小的乘积; 所述第二数值为所述连续的探测报文的发送时长;
发送单元, 用于向所述发送装置返回所述可用带宽。
24、 根据权利要求 22或 23所述的系统, 其特征在于, 所述发送装置包括: 第一发送单元, 用于向接收装置发送的探测报文, 所述探测报文携带用于在 一轮探测报文中确定探测报文发送顺序的序列号;
速率确定单元, 用于根据所述接收装置返回的可用带宽确定发送窗口的大 小, 将所述发送窗口的大小作为文件初始传输速率。
25、根据权利要求 11至 24任一所述的系统, 其特征在于, 所述探测报文的 大小相同。
PCT/CN2011/084309 2011-12-21 2011-12-21 文件初始传输速率的确定方法、装置和系统 WO2013091180A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2011800030158A CN103339909A (zh) 2011-12-21 2011-12-21 文件初始传输速率的确定方法、装置和系统
PCT/CN2011/084309 WO2013091180A1 (zh) 2011-12-21 2011-12-21 文件初始传输速率的确定方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2011/084309 WO2013091180A1 (zh) 2011-12-21 2011-12-21 文件初始传输速率的确定方法、装置和系统

Publications (1)

Publication Number Publication Date
WO2013091180A1 true WO2013091180A1 (zh) 2013-06-27

Family

ID=48667640

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2011/084309 WO2013091180A1 (zh) 2011-12-21 2011-12-21 文件初始传输速率的确定方法、装置和系统

Country Status (2)

Country Link
CN (1) CN103339909A (zh)
WO (1) WO2013091180A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105591983A (zh) * 2015-10-30 2016-05-18 杭州华三通信技术有限公司 一种QoS的出口带宽的调整方法和装置
CN105786640A (zh) * 2014-12-15 2016-07-20 华为技术有限公司 一种拷贝速率的调节方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030103452A1 (en) * 2001-11-30 2003-06-05 Nokia Corporation Throughput enhancement after interruption
CN1929442A (zh) * 2006-08-11 2007-03-14 杭州华为三康技术有限公司 网络节点及其估算接收报文间隔时间、探测路径带宽的方法
CN101051959A (zh) * 2007-05-11 2007-10-10 北京邮电大学 基于逐跳时间戳标签的网络链路带宽的测量方法
CN101369877A (zh) * 2007-12-27 2009-02-18 华为技术有限公司 无线传输控制协议处理方法和设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7266613B1 (en) * 2000-08-09 2007-09-04 Microsoft Corporation Fast dynamic measurement of bandwidth in a TCP network environment
US8908540B2 (en) * 2009-02-13 2014-12-09 Toshiba America Research, Inc. Efficient and loss tolerant method and mechanism for measuring available bandwidth

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030103452A1 (en) * 2001-11-30 2003-06-05 Nokia Corporation Throughput enhancement after interruption
CN1929442A (zh) * 2006-08-11 2007-03-14 杭州华为三康技术有限公司 网络节点及其估算接收报文间隔时间、探测路径带宽的方法
CN101051959A (zh) * 2007-05-11 2007-10-10 北京邮电大学 基于逐跳时间戳标签的网络链路带宽的测量方法
CN101369877A (zh) * 2007-12-27 2009-02-18 华为技术有限公司 无线传输控制协议处理方法和设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105786640A (zh) * 2014-12-15 2016-07-20 华为技术有限公司 一种拷贝速率的调节方法及装置
CN105591983A (zh) * 2015-10-30 2016-05-18 杭州华三通信技术有限公司 一种QoS的出口带宽的调整方法和装置

Also Published As

Publication number Publication date
CN103339909A (zh) 2013-10-02

Similar Documents

Publication Publication Date Title
JP5574988B2 (ja) デジタル・サウンド再生システム内のラウドスピーカのためのデータ転送方法およびシステム
EP2953296B1 (en) Systems and methods for measuring available capacity and tight link capacity of ip paths from a single endpoint
US7908393B2 (en) Network bandwidth detection, distribution and traffic prioritization
WO2011144141A1 (zh) 拥塞控制方法和系统以及网络设备
WO2014048137A1 (zh) 网络丢包测量方法、装置和系统
WO2010003365A1 (zh) 一种测量互联网协议传输网服务质量的方法和装置
CN108881031B (zh) 一种基于sdn网络的自适应可靠数据传输方法
WO2020135457A1 (zh) 连接建立方法及相关设备
WO2017114231A1 (zh) 一种报文发送方法、tcp代理以及tcp客户端
WO2013044827A1 (zh) 一种跟踪路由测试方法、系统、装置及设备
Anderson et al. PCP: Efficient Endpoint Congestion Control.
Havey et al. Receiver driven rate adaptation for wireless multimedia applications
WO2019144802A1 (zh) 一种数据的传输方法及其相关设备
KR20150093219A (ko) 네트워크 프로빙
WO2013091180A1 (zh) 文件初始传输速率的确定方法、装置和系统
JP5063293B2 (ja) 通信量制御システム、通信量制御システム用サーバ、および通信量制御システム用クライアント
WO2013029424A1 (zh) 网络检测方法、装置及系统
Piecuch et al. Selective retransmission protocol for multimedia on the Internet
WO2012071851A1 (zh) 根据网络抖动调整bfd发送间隔的方法及装置
WO2009026824A1 (fr) Procédé, dispositif et système pour transférer des messages multiplex
JP4798495B2 (ja) 映像配信品質測定システム、装置および方法
JP2008278494A5 (zh)
US11018969B2 (en) UDPING-continuous one-way monitoring of multiple network links
McCreary et al. TCP-RC: a receiver-centered TCP protocol for delay-sensitive applications
WO2012103722A1 (zh) Rtp媒体数据的接收、发送方法及装置、处理系统

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

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

Country of ref document: EP

Kind code of ref document: A1