[go: up one dir, main page]

WO2014131335A1 - 一种数据传输方法及数据转发装置 - Google Patents

一种数据传输方法及数据转发装置 Download PDF

Info

Publication number
WO2014131335A1
WO2014131335A1 PCT/CN2014/072193 CN2014072193W WO2014131335A1 WO 2014131335 A1 WO2014131335 A1 WO 2014131335A1 CN 2014072193 W CN2014072193 W CN 2014072193W WO 2014131335 A1 WO2014131335 A1 WO 2014131335A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
module
cache module
storage area
client
Prior art date
Application number
PCT/CN2014/072193
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 华为终端有限公司
Publication of WO2014131335A1 publication Critical patent/WO2014131335A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. Transmission Power Control [TPC] or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0203Power saving arrangements in the radio access network or backbone network of wireless communication networks
    • H04W52/0206Power saving arrangements in the radio access network or backbone network of wireless communication networks in access points, e.g. base stations
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Definitions

  • the present invention relates to the field of communications, and in particular, to a data transmission method and a data forwarding device.
  • the wireless routing data terminal includes a wireless wide area network (WWAN) access module and a wireless local area network (WLAN) access module, so that multiple clients can simultaneously pass data through the wireless local area network.
  • the wireless WAN input and output completes data communication with the remote client on the network side, and the data transmission between the client and the remote client on the network side is bidirectional. And in order to improve the mobility of the wireless routing data terminal, the wireless routing data terminal is usually powered by a battery.
  • Embodiments of the present invention provide a data transmission method and a data forwarding device capable of reducing power consumption of a data forwarding device.
  • a data transmission method including:
  • the data forwarding device receives the data sent by the at least one client through the data access module, and sends the data received by the data access module to the data cache module for storage;
  • the data forwarding device receives data sent by at least one client through a data access module, and sends the data received by the data access module to Before the data cache module is stored, it includes:
  • the data cache module when the data storage state meets the data sending condition, the data sending instruction is sent to the data sending module by using the data cache module, including:
  • the method further includes: Calculating an average value of a maximum data fill rate of the data cache module in all the timeout periods after the timer of the data cache module is started; when the timer of the data cache module does not reach the timeout period, And the average value of the maximum data filling rate is greater than a preset upper threshold, and the data sending instruction is sent to the data sending module by using the data cache module.
  • the method further includes:
  • the data transmission instruction is sent to the data transmission module by the data buffer module.
  • the data forwarding device receives data sent by at least one client through a data access module, and sends the data to the data cache by using the data access module.
  • Module storage including:
  • the method further includes:
  • Determining whether the data cache module has a free storage area if the free storage area exists in the data cache module, applying a storage area with the new number identifier as the identifier in the free storage area, and The data sent by the client corresponding to the new number identifier is stored in the storage area.
  • the method further includes:
  • sending, by using the data cache module, a data sending instruction includes: if the storage area where the data is not stored exists, sending the data sending instruction to the data sending module by using the data cache module.
  • a data forwarding device including a data access module and a data sending module, wherein the data forwarding device further includes: a data cache module and a data processing module connected to the data cache module, The data cache module is connected to the data access module and the data sending module; wherein the data access module is configured to receive data sent by at least one client; and the data cache module is configured to store the data connection Data sent by at least one client received by the module;
  • the data processing module is configured to: when determining that the data storage state in the data cache module meets the data sending condition, send the data sending instruction to the data sending module by using the data cache module;
  • the data sending module is configured to send the data stored by the data cache module according to the data sending instruction.
  • the data forwarding device further includes: a timing module, configured to determine whether the at least one client is accessed by the data in the data cache module The data sent by the module; and if the result of the determination is no, the timer set in the data cache module is started.
  • the timing module is further configured to stop the data cache module when it is determined that data is not stored in a preset timeout period.
  • the timer set in .
  • the data processing module is specifically configured to be used when the second aspect or the first possible implementation manner or the second possible implementation manner is used.
  • the data transmission instruction is sent to the data transmission module when the timing time set in the device exceeds a preset timeout period.
  • the data processing module includes:
  • the data determining unit is configured to determine whether a storage area of each client of the at least one client is full of data in one of the timeout periods; the command sending unit is configured to: if the data determining unit is The result of the determination is that any one of the storage areas of the client is full of data, and the data transmission instruction is sent to the data transmission module.
  • a fifth possible implementation manner if the storage area of all the clients is not full of data according to the fourth possible implementation manner, if the judgment result of the data determining unit is the storage of all the clients The area is not full of data.
  • the instruction sending unit further includes:
  • the data fill rate calculation subunit is configured to calculate an average value of a maximum data fill rate of the data cache module in all the timeout periods after the timer of the data cache module is started;
  • the instruction sending subunit is configured to: when the timer in the data cache module does not reach the timeout period, and the average value of the maximum data filling rate is greater than a preset upper threshold, send the data sending instruction to The data sending module.
  • the instruction sending subunit is further configured to send the data sending instruction to the data sending module.
  • the data filling rate calculation subunit is specifically configured to be recorded in combination with any one of the fifth possible implementation manner or the sixth possible implementation manner.
  • the maximum of the data fill rates of the storage areas of each of the at least one client during each of the timeout periods after the timer is started is the data cache module of each of the timeout periods
  • the maximum data fill rate is also used to calculate an average of the maximum data fill rate of each of the timeout periods after the data cache module is started by the timer of the data cache module.
  • the data cache module further includes: a first data storage unit, configured to send, by the at least one client, received by the data access module Data is stored in a pre-stored area in the data cache module;
  • the identifier determining unit is configured to sequentially determine, according to the sequence of the data storage, whether each client of the at least one client has a corresponding number identifier in the data cache module;
  • the second data storage unit is further configured to: if the identifier determining unit determines that the number identifier exists in the data cache module, store the data sent by the client that has the number identifier in the data cache module Corresponding to the number identifier in the data cache module The storage area of the client.
  • the identifier determining unit determines that the number identifier does not exist in the data cache module
  • the second data storage unit further includes: the identifier generating subunit, configured to generate a new number identifier for the client without the number identifier; the storage area determining subunit, configured to determine the data cache Whether the module has a free storage area, and the storage area requesting unit is configured to: if the storage area determining unit determines that the free storage area exists in the data cache module, apply for a piece in the free storage area The new number is identified as the storage area of the identifier, and the data sent by the client corresponding to the new number identifier is stored in the storage area.
  • the storage area application subunit is further configured to determine the data if the free storage area does not exist in the data cache module, according to the ninth possible implementation manner. Whether there is a storage area in which the data is not stored in the cache module; and if the storage area of the unstored data exists, the storage area in which the longest idle time is selected in the storage area in which the unstored data is selected is preferentially released, and The storage area with the longest idle time is allocated to the client corresponding to the new number identifier, so as to store the data sent by the client corresponding to the new number identifier.
  • the data processing module is further configured to: if the storage area determining subunit determines that the data cache module does not exist, the unstored a storage area of data, the data transmission instruction being sent to the data transmission module.
  • the data transmission method and the data forwarding device provided by the embodiment of the present invention can cache the data according to the data transmission instruction sent by the data cache module when the data storage state of the data stored in the data cache module satisfies the data transmission condition.
  • the data stored by the module is sent, so that the number of times the data sending module is awakened is reduced, and the idle sleep time is increased, thereby reducing the power consumption of the data forwarding device.
  • FIG. 1 is a schematic flowchart of a data transmission method according to an embodiment of the present invention
  • FIG. 2 is a schematic flowchart of another data transmission method according to an embodiment of the present invention
  • FIG. 4 is a schematic flowchart of a data transmission method according to an embodiment of the present invention
  • FIG. 5 is a schematic flowchart of a data forwarding device according to an embodiment of the present invention
  • FIG. 6 is a schematic structural diagram of another data forwarding apparatus according to an embodiment of the present invention.
  • FIG. 7 is a schematic structural diagram of still another data forwarding apparatus according to an embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of still another data forwarding apparatus according to an embodiment of the present invention.
  • FIG. 9 is a schematic structural diagram of another data forwarding apparatus according to an embodiment of the present invention.
  • FIG. 10 is a schematic structural diagram of a data forwarding apparatus according to another embodiment of the present invention.
  • Embodiments of the present invention are applied to a mode in which two modules are connected for data transmission Data forwarding device, and the data forwarding device may be a wireless routing data terminal, the wireless routing data terminal has mobility, is usually powered by a battery, and will wake up the wireless routing data at any time when each data packet passes Two access modules, therefore, the two access modules are often in a working state, and the data forwarding device provided by the present invention further expands the application of the data cache module, and reduces the number of wake-up times of the data access module to the data sending module.
  • the power transmission method of the data forwarding device is further reduced as follows. As shown in FIG. 1 , the data transmission method provided by the present invention includes the following steps:
  • the data forwarding device receives data sent by at least one client through the data access module, and sends the data received by the data access module to the data cache module for storage.
  • the data forwarding device sends the data transmission instruction to the data transmission module through the data cache module.
  • the data forwarding device sends the data stored by the data cache module through the data sending module according to the data sending instruction.
  • the data access module sends and stores the received data in the data cache module, or the data cache module sends the data to the data sending module, where the data is transmitted according to the first in first out (F irst Input F irst Out put , F IFO ) The principle is transmitted.
  • the data transmission method provided by the embodiment of the present invention can store the data cache module according to the data transmission instruction sent by the data cache module when the data storage state of the data stored in the data cache module satisfies the data transmission condition.
  • the data is transmitted, so that the number of times the data transmitting module is awakened is reduced, and the idle sleep time is increased, thereby reducing the power consumption of the data forwarding device.
  • the present invention discloses a data transmission method. As shown in FIG. 2, the data transmission method mentioned in this embodiment determines whether to send a data transmission instruction according to the amount of data stored in the entire data cache module and the timing time.
  • the data transmission method includes the following steps:
  • the data forwarding device receives data sent by at least one client through the data access module, and sends the data received by the data access module to the data cache module for storage.
  • the data forwarding device stores the data sent by the at least one client received by the data access module into a pre-stored area in the data cache module.
  • the pre-stored area in the data cache module is a reserved part of the data cache module, and is not included in the calculation of the storage space in the data cache module.
  • the data forwarding device sequentially determines, according to a sequence of data storage, whether each client of the at least one client has a corresponding number identifier in the data cache module. If there is a number identifier in the data cache module, go to step 2 01 c l . If there is no number identifier in the data cache module, go to step 201 c 2 .
  • the data forwarding device stores the data sent by the client with the number identifier in the data cache module into the storage area of the client corresponding to the number identifier in the data cache module.
  • Step 201 c 2 includes the following steps:
  • the data forwarding device generates a new number identifier for the client without the number identification.
  • the data forwarding device determines whether the data cache module has a free storage area. If the result of the determination is that there is a free storage area, then go to step a3. If the result of the determination is that the free storage area does not exist, go to step 201c3.
  • the data forwarding device applies for a storage area marked with a new number in the free storage area, and stores the data sent by the client corresponding to the new number identifier into the storage area.
  • Step 201 c 3 includes the following steps:
  • the data forwarding device determines whether there is a storage area in the data cache module where no data is stored.
  • the data forwarding device selects the storage area with the longest idle time in the storage area where no data is stored, and releases the storage area with the longest idle time to the new storage area.
  • the number identifies the corresponding client in order to store the data sent by the client corresponding to the new number identifier.
  • the data forwarding device sends the data sending instruction to the data sending module through the data cache module.
  • the data forwarding device sends the data stored by the data cache module through the data sending module according to the data sending instruction. Further, whether the data access module transmits and stores the received data in the data exchange module, or the data cache module sends the data to the data transmission module, the data transmission is performed according to the first-in first-out F IFO principle. .
  • the data cache module between the data access module and the data sending module in the data forwarding device may be divided into an uplink data cache module and/or Or the downstream data cache module.
  • the data access module receives the uplink data sent by at least one client, and stores the received uplink data in the uplink data cache module.
  • the uplink data cache module is full of uplink data and there is no storage area where the data is not stored, the uplink data buffer module sends a data transmission instruction to the data sending module, and finally the data sending module sends the uplink data in the data buffer module to the data sending instruction according to the data sending instruction.
  • Remote client When the uplink data is initiated, the data access module receives the uplink data sent by at least one client, and stores the received uplink data in the uplink data cache module.
  • the uplink data buffer module sends a data transmission instruction to the data sending module, and finally the data sending module sends the uplink data in the data buffer module to the data sending instruction according to the data sending instruction.
  • the data sending module receives the downlink data sent by the at least one remote client, and stores the received downlink data in the downlink data cache module.
  • the downlink data cache module is full of downlink data and there is no storage area where the data is not stored, the downlink data buffer module sends a data transmission instruction to the data sending module, and finally the data sending module sends the downlink data in the data storage module to the data sending instruction according to the data sending instruction.
  • Client computer When the downlink data is initiated, the data sending module receives the downlink data sent by the at least one remote client, and stores the received downlink data in the downlink data cache module.
  • the size of the storage space of the uplink data cache module and the downlink data cache module can be allocated according to the actual service demand, and generally does not have symmetry, since the uplink data is generally The request information of the actual service, and the downlink data is generally the corresponding download information of the request information of the actual service in the uplink data. Therefore, the space of the downlink data cache module is larger than the space of the uplink data cache module to satisfy the actual asymmetry. Data throughput requirements.
  • the data transmission method provided by the embodiment of the present invention can store the data cache module according to the data transmission instruction sent by the data cache module when the data storage state of the data stored in the data cache module satisfies the data transmission condition. The data is transmitted, so that the number of times the data transmitting module is awakened is reduced, and the idle sleep time is increased, thereby reducing the power consumption of the data forwarding device.
  • the present invention discloses a data transmission method.
  • the amount of data proposed in this embodiment determines how to send a data transmission instruction, as shown in FIG. Degree (that is, the amount of data stored in each client in the data cache module) to illustrate the data storage method, the method includes the following steps:
  • the data forwarding device determines whether data sent by at least one client through the data access module exists in the data cache module.
  • the data forwarding device starts a timer set in the data cache module.
  • the data forwarding device receives data sent by at least one client through the data access module, and sends the data to the data cache module for storage by using the data access module.
  • the data forwarding device determines whether the storage area corresponding to each client of the at least one client is full of data within a timeout period.
  • Step 305a can have the following situations:
  • the data forwarding device sends a data sending instruction to the data sending module through the data buffering module.
  • the data forwarding device calculates an average value of the maximum data filling rate of the data cache module in all timeout periods after the timer of the data cache module is started.
  • step 305 a2 The specific calculation process of step 305 a2 is as follows:
  • the data forwarding device records the data filling rate of the storage area of each of the at least one client in each timeout period after the timer of the data cache module is started.
  • the data forwarding device selects, in each timeout period after the timer of the data cache module is started, the maximum value of the data filling rate of the storage area of each client in at least one client is the data buffer of each timeout period.
  • the maximum data fill rate of the module is the maximum data fill rate of the module.
  • the data forwarding device calculates an average value of the maximum data filling rate of each timeout period after the data buffer module starts the timer of the data buffering module.
  • the data forwarding device sends the data sending instruction to the data sending module by using the data cache module.
  • the data forwarding device sends the data sending instruction to the data sending module by using the data cache module.
  • the data forwarding device records the data filling rate of the storage area of each client in the at least one client in the timeout period in each timeout period after the timer of the data cache module is started, and then selects the largest one.
  • the value is used as the maximum data fill rate of the data cache module in each timeout period, and the maximum data fill rate is stored in a virtual loop container with a storage function, and the maximum data fill rate is stored once every time the cycle period expires. And calculate the average of all the maximum data fill rates stored in the virtual loop container described above.
  • the average value of the maximum data filling rate is greater than the preset upper threshold, and the timer of the data cache module does not reach the timeout period, or the average value of the maximum data filling rate is less than the preset lower threshold, and the timer of the data cache module When the timeout period is reached, the calculation process of the average value of the maximum data fill rate is stopped.
  • the average value at this time is an average threshold preset by the loop container. .
  • the average value of the maximum data filling rate is greater than the preset upper threshold, it indicates that the data transmitted during the data transmission is continuous, and all data is directly transmitted; when the maximum data filling rate is average If the threshold is lower than the preset lower limit, it means that the data transmitted during the data transmission is intermittent. Only when the timer of the data cache module reaches the timeout period, all data can be transmitted.
  • the data forwarding device sends the data stored by the data cache module to the data sending module according to the data sending instruction.
  • the data storage method is illustrated, and the method includes the following steps:
  • the data forwarding device determines whether data sent by at least one client through the data access module exists in the data cache module.
  • the data forwarding device starts a timer set in the data cache module.
  • 303b When the timer set by the timer in the data cache module exceeds a preset timeout period, the data forwarding device sends the data sending instruction to the data sending module through the data cache module.
  • the data forwarding device sends the data stored by the data cache module through the data sending module according to the data sending instruction.
  • the timer set in the data cache module is stopped.
  • the data transmission is performed according to the first-in first-out FI FO principle.
  • the space size of the data cache module should be selected according to actual needs.
  • the data buffer module between the data access module and the data sending module in the data forwarding device may be divided into an uplink data buffer module and/or a downlink.
  • Data cache module When the data transmitted by the data transmission method includes uplink data and/or downlink data, the data buffer module between the data access module and the data sending module in the data forwarding device may be divided into an uplink data buffer module and/or a downlink. Data cache module.
  • the data access module receives the uplink data sent by the at least one client, and stores the received uplink data in the uplink data cache module, the uplink data cache module first starts the timer, and then Perform uplink data storage.
  • the uplink data buffer module buffers the uplink data reaches a preset timeout period
  • the data stored in the storage area of the client reaches a predetermined amount or when the time when the uplink data cache module buffers the uplink data reaches a preset timeout period
  • the uplink data sends a data transmission instruction to the data sending module, and finally the data sending module sends the uplink data in the data buffer module to the remote client according to the data sending instruction.
  • the data sending module receives the downlink data sent by the at least one remote client, and before the received downlink data is stored in the downlink data cache module, the downlink data cache module first starts the timer. Then, the downlink data is stored. When the time when the downlink data buffer module buffers the downlink data reaches a preset timeout period, the data stored in the storage area of the client reaches a predetermined amount or the time when the uplink data cache module buffers the uplink data reaches a preset timeout period, the downlink data The cache module sends a data transmission instruction to the data sending module, and finally the data sending module sends the data according to the data sending instruction. The downlink data in the cache module is sent to the remote client.
  • the size of the storage space of the uplink data cache module and the downlink data cache module can be allocated according to the actual service demand, and generally does not have symmetry, since the uplink data is generally The request information of the actual service, and the downlink data is generally the corresponding download information of the request information of the actual service in the uplink data. Therefore, the space of the downlink data cache module is larger than the space of the uplink data cache module to satisfy the actual asymmetry. Data throughput requirements.
  • the data transmission method provided by the embodiment of the present invention can store the data cache module according to the data transmission instruction sent by the data cache module when the data storage state of the data stored in the data cache module satisfies the data transmission condition.
  • the data is transmitted, so that the number of times the data transmitting module is awakened is reduced, and the idle sleep time is increased, thereby reducing the power consumption of the data forwarding device.
  • the embodiment of the present invention provides a data forwarding device, which may be a wireless routing data terminal, and the data access module in the data forwarding device may be a wireless local area network (WLAN) access.
  • WLAN wireless local area network
  • the data transmission module in the data forwarding device may be a wireless wide area network (WWAN) access module, wherein the wireless wide area network access module can be used but is not limited to the existing global mobile communication system (Global System for Mobile Communications, GSM), Wideband Code Division Multiple Access (WCDMA), Long Term Evolution (LTE), etc., wireless LAN access module can be used but not limited to existing wireless Internet access Technology (Wireless Fidelity, Wi-Fi), Bluetooth (Bluetooth).
  • the client for sending data can be a personal digital assistant (PDA), a wireless modem, a wireless communication device, a handheld device, a smart phone, a laptop electric moon bird. (Laptop Computer) or Wireless Local Loop (WLL) station.
  • PDA personal digital assistant
  • WLL Wireless Local Loop
  • the data forwarding device is configured to implement the foregoing data transmission method.
  • the data forwarding device 5 includes: a data access module 41, a data sending module 42, a data cache module 43, and a data processing module 44, wherein the data is
  • the cache module 43 is connected to the data access module 41 and the data sending module 42.
  • the data processing module 44 is connected to the data buffer module 43.
  • the actual data processing module 44 may be in the actual wireless routing terminal.
  • the CPU Central Processing Unit
  • the data buffering module 42 may be a memory in the wireless routing terminal, such as a read-only memory (ROM), and the above data access module. 41 and data transmitting module 42 can be in any of the wireless routing terminals. Specifically, the specific functions of the above modules are implemented as follows:
  • the data access module 41 is configured to receive data sent by at least one client.
  • the data cache module 43 is configured to store data sent by at least one client received by the data access module 41.
  • the data processing module 44 is configured to send the data sending instruction to the data sending module 42 through the data buffering module 43 when it is determined that the data storage state in the data buffering module 43 satisfies the data sending condition.
  • the data sending module 42 is configured to send the data stored by the data caching module 43 according to the data sending instruction.
  • the data forwarding device further includes: a timing module 45, configured to determine whether the data buffer module 43 stores at least one data sent by the client through the data access module; If the result of the determination is no, the timer set in the data cache module is started.
  • timing module 45 is further configured to stop the timer set in the data cache module when it is determined that the data is not stored in the preset timeout period.
  • the data processing module 44 is specifically configured to send a data sending instruction to the data sending module 42 when the timing time set in the timer exceeds a preset timeout period.
  • the data processing module 44 includes: a data judging subunit 441 and an instruction sending subunit 442, wherein: the data judging unit 441 is configured to determine the storage of each client of the at least one client. Whether the area is full of data during a timeout period.
  • the command transmitting unit 442 is configured to transmit a data transmission command to the data transmitting module 42 if the result of the determination by the data determining unit 441 is that the storage area of any one of the clients is full.
  • the instruction transmitting unit 442 includes: a data filling rate calculation subunit 442a, an instruction transmitting subunit. 442b, wherein: a data fill rate calculation sub-unit 442a is configured to calculate an average value of a maximum data fill rate of the data cache module in all timeout periods after the timer of the data cache module 43 is started;
  • the instruction sending sub-unit 442b is configured to send the data sending instruction to the data sending module 42 when the timer in the data buffering module 43 does not reach the timeout period and the average value of the maximum data filling rate is greater than the preset upper threshold.
  • the instruction transmission subunit 442b is further configured to send a data transmission instruction to the data transmission module 42.
  • the data filling rate calculation sub-unit 442a is specifically configured to record each client in at least one client in each timeout period after the timer of the data cache module 43 is started.
  • the data fill rate of the storage area also used to select the maximum value of the data fill rate of the storage area of each of the at least one client in each timeout period after the timer of the data cache module 43 is started is The maximum data fill rate of the data cache module 43 of the timeout period; also used to calculate the average value of the maximum data fill rate of each timeout period after the data cache module 43 starts the timer of the data cache module 43.
  • the data cache module 43 includes: a data storage unit 431 and an identifier determining unit 432, wherein: the first data storage unit 431 is configured to receive at least one client that is received by the data access module 41. The data sent by the machine is stored in the pre-stored area in the data buffer module 43.
  • the identifier determining unit 432 is configured to sequentially determine, according to the order of data storage, whether each client of the at least one client has a corresponding number identifier in the data cache module 43.
  • the second data storage unit 433 is further configured to: if the identifier determining unit 432 determines the data cache If the number identifier is present in the module 43, the data sent by the client having the number identifier in the data cache module 43 is stored in the storage area of the client corresponding to the number identifier in the data cache module 43.
  • the second data storage unit 433 includes:
  • the identifier generation subunit 433a is configured to generate a new number identifier for the client without the number identifier.
  • the storage area determining sub-unit 433b is configured to determine whether the data caching module 43 has an empty storage area.
  • the storage area application sub-unit 433c is configured to, if the storage area determining unit 433b determines that there is a free storage area in the data cache module 43, apply for a storage area marked with a new number in the free storage area, and add a new number.
  • the data sent by the corresponding client is stored in the storage area.
  • the storage area application sub-unit 433c is further configured to: if there is no free storage area in the data cache module 43, determine whether there is a storage area in the data cache module 43 that does not store data; and if there is no storage The storage area of the data is selected, and the storage area with the longest idle time in all the storage areas where the data is not stored is preferentially released, and the storage area with the longest idle time is allocated to the client corresponding to the new number identifier, so as to store the new number. Identifies the data sent by the corresponding client.
  • the data processing module 44 is further configured to: if the storage area determining sub-unit 433b determines that there is no storage area in the data buffering module 43 where no data is stored, send the data sending instruction to the data sending module 41.
  • the data forwarding device provided by the embodiment of the present invention can store the data cache module according to the data transmission instruction sent by the data cache module when the data storage state of the data stored in the data cache module satisfies the data transmission condition. The data is transmitted, so that the number of times the data transmitting module is awakened is reduced, and the idle sleep time is increased, thereby reducing the power consumption of the data forwarding device.
  • FIG. 10 is a schematic structural diagram of a data forwarding apparatus according to another embodiment of the present invention.
  • the data forwarding apparatus is configured to implement the foregoing data sending method, and the data forwarding apparatus may be a router or a wireless routing data terminal, where the data is Forwarding device 5 includes a processor 51, a memory 52, a communication interface 53, and a bus 54.
  • the processor 51 may include a data processing module 511, and the memory 52 may include a data cache module 521.
  • the communication interface 53 may include: a data access module 531 and a data sending module 532.
  • the data access module 531 is configured to receive data sent by at least one client.
  • the data cache module 521 is configured to store data sent by at least one client received by the data access module 531.
  • the data processing module 511 is configured to send the data sending instruction to the data sending module 532 through the data buffering module 521 when it is determined that the data storage state in the data buffering module 521 satisfies the data sending condition.
  • the data sending module 532 is configured to send the data stored by the data caching module 521 according to the data sending instruction.
  • the memory further includes: a timing module 522, configured to determine, in the data cache module 521, whether at least one client sends data sent by the data access module, and if the result of the determination is no, start the data cache.
  • the timer set in module 521 configured to determine, in the data cache module 521, whether at least one client sends data sent by the data access module, and if the result of the determination is no, start the data cache. The timer set in module 521.
  • timing module 522 is further configured to stop the timer set in the data caching module 521 when it is determined that no data is stored in the preset timeout period.
  • the data processing module 511 is specifically configured to send a data sending instruction to the data sending module 532 when a timing time set in the timer exceeds a preset timeout period. Further optionally, the data processing module 511 includes: a data judging subunit and an instruction sending subunit, wherein:
  • the data judging unit is configured to judge whether the storage area of each client of the at least one client is full of data in a timeout period.
  • the command transmitting unit is configured to send the data transmission command to the data transmitting module 532 if the result of the determination by the data determining unit is that the storage area of any one of the clients is full of data. Further, if the judgment result of the data judging unit is that all the storage areas of the client are not full of data, the instruction sending unit includes: a data filling rate calculation subunit, and an instruction sending subunit, wherein:
  • the data fill rate calculation sub-unit is configured to calculate an average value of the maximum data fill rate of the data cache module in all timeout periods after the timer of the data cache module is started.
  • the instruction sending subunit is configured to send the data sending instruction to the data sending module 532 when the timer in the data buffering module 521 does not reach the timeout period and the average value of the maximum data filling rate is greater than a preset upper threshold.
  • the instruction transmitting subunit is further configured to send a data sending instruction to the data sending module
  • the data filling rate calculation sub-unit is specifically configured to record a data filling rate of a storage area of each client in at least one client in each timeout period after the timer of the data caching module 521 is started;
  • the data cache module 521 for each timeout period is also selected for selecting the maximum value of the data fill rate of the storage area of each of the at least one client in each timeout period after the timer of the data cache module is started.
  • the maximum data fill rate is also used to calculate an average of the maximum data fill rate of each timeout period after the data cache module 521 starts the timer of the data cache module 521.
  • the data cache module 521 includes: a data storage unit and an identifier determining unit, where:
  • the first data storage unit is configured to store data sent by at least one client received by the data access module 531 into a pre-stored area in the data cache module 521.
  • the identifier determining unit is configured to sequentially determine, according to a sequence of data storage, whether each client of the at least one client has a corresponding number identifier in the data cache module 521.
  • the second data storage unit is further configured to: if the identifier determining unit determines that the number identifier exists in the data cache module 521, store the data sent by the client with the number identifier in the data cache module 521 in the data cache module 521 corresponding to the number identifier. The storage area of the client. Further, if the identifier determining unit determines that the number identifier does not exist in the data cache module 5 2 1 , the second data storage unit includes:
  • the identifier generation subunit is used to generate a new number identifier for the client without the number identifier.
  • the storage area determining subunit is configured to determine whether the data caching module 5 2 1 has a free storage area.
  • a storage area requesting sub-unit configured to: if the storage area determining unit determines that there is a free storage area in the data cache module 43, apply for a storage area marked with a new number in the free storage area, and identify the new number The data sent by the corresponding client is stored in the storage area.
  • the storage area application sub-unit is further configured to: if there is no free storage area in the data cache module 52, determine whether there is a storage area in the data cache module 52 that does not store data; If there is a storage area where data is not stored, the storage area with the longest idle time in all the storage areas where the data is not stored is preferentially released, and the storage area with the longest idle time is allocated to the client corresponding to the new number identifier for storage. The new number identifies the data sent by the corresponding client.
  • the data processing module 5 1 1 is further configured to: if the storage area determining subunit determines that there is no storage area in the data buffering module 52 that does not store data, send a data sending instruction to the data sending module.
  • the data forwarding device provided by the embodiment of the present invention can store the data cache module according to the data transmission instruction sent by the data cache module when the data storage state of the data stored in the data cache module satisfies the data transmission condition. The data is transmitted, so that the number of times the data transmitting module is awakened is reduced, and the idle sleep time is increased, thereby reducing the power consumption of the data forwarding device.
  • the foregoing program may be stored in a computer readable storage medium, and the program is executed when executed.
  • the foregoing method includes the steps of the foregoing method embodiments; and the foregoing storage medium includes: a medium that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种数据传输方法及数据转发装置,涉及通信领域,能够降低该数据转发装置的功耗。该方法包括:数据转发装置通过数据接入模块接收至少一个客户机发送的数据,并将通过数据接入模块接收的数据发送至数据缓存模块存储;当判断数据缓存模块中的数据存储状态满足数据发送条件时,通过数据缓存模块将数据发送指令发送至数据发送模块;根据数据发送指令将数据缓存模块存储的数据通过数据发送模块发送。本发明应用于传输数据。

Description

一种数据传输方法及数据转发装置 技术领域
本发明涉及通信领域, 尤其涉及一种数据传输方法及数据转发装 置。
背景技术
无线路由数据终端内含一个无线广域网 ( Wireless Wide Area Network, WWAN ) 接入模块和一个无线局域网 ( Wireless Local Area Networks, WLAN)接入模块,使得多台客户机可以同时通过无线局域网, 将数据经由无线广域网输入输出,完成与网络侧的远端客户机的数据通 信, 且客户机与网络侧的远端客户机之间的数据传输是双向的。并且为 了提高无线路由数据终端的可移动性,该无线路由数据终端通常采用电 池供电。
但是, 在实现上述的数据传输的过程中, 发明人发现客户机与网 络侧的远端客户机的数据传输是随机的, 因此当有数据需要传输时, WLAN接入模块与 WWAN接入模块总是出于工作状态, 尤其在多客户机接 入的情况下, WLAN接入模块会经常性唤醒 WWAN接入模块来进行数据的 传输, 使 WWAN接入模块的空闲休眠时间减少, 进而减少了无线路由数 据终端在有限电池供电情况下的继续工作的时间。
发明内容
本发明的实施例提供一种数据传输方法及数据转发装置, 能够降 低数据转发装置的功耗。
为达到上述目的, 本发明的实施例采用如下技术方案: 第一方面, 提供一种数据传输方法, 包括:
数据转发装置通过数据接入模块接收至少一个客户机发送的数 据,并将通过所述数据接入模块接收的所述数据发送至数据緩存模块存 储;
当判断所述数据緩存模块中的数据存储状态满足数据发送条件 时, 通过所述数据緩存模块将数据发送指令发送至数据发送模块; 根据所述数据发送指令将所述数据緩存模块存储的所述数据通过 所述数据发送模块发送。
在第一种可能的实现方式中, 根据第一方面, 所述数据转发装置 通过数据接入模块接收至少一个客户机发送的数据,并将通过所述数据 接入模块接收的所述数据发送至数据緩存模块存储之前, 包括:
判断所述数据緩存模块中是否存有所述至少一个客户机通过所述 数据接入模块发送的数据; 若所述数据緩存模块未存储所述数据, 则启动所述数据緩存模块 中设置的定时器。
在第二种可能的实现方式中, 根据第一种可能的实现方式, 当所 述数据緩存模块在预设个数个所述超时周期内都未存储数据,则停止所 述数据緩存模块中设置的定时器。
在第三种可能的实现方式中, 结合第一方面或第一种可能的实现 方式或第二种可能的实现方式中的任一种可能的实现方式,所述当判断 所述数据緩存模块中的数据存储状态满足数据发送条件时,通过所述数 据緩存模块将数据发送指令发送至数据发送模块, 包括:
当所述数据緩存模块中的定时器设置的定时时间超过预设的超时 周期时,则通过所述数据緩存模块将所述数据发送指令发送至所述数据 发送模块。
在第四种可能的实现方式中, 结合第一方面或第一种可能的实现 方式或第二种可能的实现方式中的任一种可能的实现方式,所述当判断 所述数据緩存模块中的数据存储状态满足数据发送条件时,通过所述数 据緩存模块将数据发送指令发送至数据发送模块, 包括:
判断所述至少一个客户机中的每个客户机对应的存储区域在一个 所述超时周期内是否存满数据; 若任意一个所述客户机的存储区域存满数据, 则通过所述数据緩 存模块将所述数据发送指令发送至所述数据发送模块。
在第五种可能的实现方式中, 根据第四种可能的实现方式, 若所 有所述客户机的存储区域都未存满数据, 所述方法还包括: 计算在所述数据緩存模块的定时器启动之后的所有所述超时周期 内的所述数据緩存模块的最大数据填充率的平均值; 当所述数据緩存模块的定时器未达到所述超时周期, 且所述最大 数据填充率的平均值大于预设上限阈值,则通过所述数据緩存模块将所 述数据发送指令发送至所述数据发送模块。
在第六种可能的实现方式中, 根据第五种可能的实现方式, 当所 述数据緩存模块的定时器达到所述超时周期,且所述最大数据填充率的 平均值小于预设下限阈值, 所述方法还包括:
通过所述数据緩存模块将所述数据发送指令发送至所述数据发送 模块。
在第七种可能的实现方式中, 结合第五种可能的实现方式或第六 种可能的实现方式中的任一种可能的实现方式,所述计算在所述数据緩 存模块的定时器启动之后的所有所述超时周期内的所述数据緩存模块 的最大数据填充率的平均值, 包括:
记录在所述数据緩存模块的定时器启动之后的每个所述超时周期 内所述至少一个客户机中的每个客户机的存储区域的数据填充率; 选取所述在所述数据緩存模块的定时器启动之后的每个所述超时 周期内所述至少一个客户机中的每个客户机的存储区域的数据填充率 中的最大值为每个所述超时周期的所述数据緩存模块的最大数据填充
计算所述数据緩存模块在所述数据緩存模块的定时器启动之后的 每个所述超时周期的最大数据填充率的平均值。 在第八种可能的实现方式中, 根据第一方面, 所述数据转发装置 通过数据接入模块接收至少一个客户机发送的数据,并通过所述数据接 入模块将所述数据发送至数据緩存模块存储, 包括:
将通过所述数据接入模块接收到的所述至少一个客户机发送的数 据存入所述数据緩存模块中的预存区域;
按照所述数据存储的先后顺序依次判断所述至少一个客户机的每 个客户机在所述数据緩存模块中是否存在对应编号标识; 若在所述数据緩存模块中存在所述编号标识, 则将在所述数据緩 存模块中存在所述编号标识的客户机发送的数据存入所述数据緩存模 块中所述编号标识对应的客户机的存储区域。
在第九种可能的实现方式中, 根据第八种可能的实现方式, 若在 所述数据緩存模块中不存在所述编号标识, 所述方法还包括:
则对没有所述编号标识的客户机生成新的编号标识;
判断所述数据緩存模块是否存在空闲存储区域; 若所述数据緩存模块中存在所述空闲存储区域, 则在所述空闲存 储区域中申请一块以所述新的编号标识为标识的存储区域,并将所述新 的编号标识对应的客户机发送的数据存入所述存储区域。
在第十种可能的实现方式中, 根据第九种可能的实现方式, 若所 述数据緩存模块中不存在所述空闲存储区域, 所述方法还包括:
判断所述数据緩存模块中是否存在未存储数据的存储区域; 若存在所述未存储数据的存储区域, 则选择所有所述未存储数据 的存储区域中空闲时间最长的存储区域优先释放,并将所述空闲时间最 长的存储区域配置给所述新的编号标识对应的客户机,以便存储所述新 的编号标识对应的客户机发送的数据。
在第十一种可能的实现方式中, 根据第十种可能的实现方式, 所 述当判断所述数据緩存模块中的数据存储状态满足数据发送条件时,通 过所述数据緩存模块将数据发送指令发送至数据发送模块, 包括: 若不存在所述未存储数据的存储区域, 则通过所述数据緩存模块 将所述数据发送指令发送至所述数据发送模块。
第二方面, 提供一种数据转发装置, 包括数据接入模块和数据发 送模块, 其特征在于, 所述数据转发装置还包括: 数据緩存模块及与所 述数据緩存模块连接的数据处理模块,所述数据緩存模块与所述数据接 入模块和数据发送模块连接; 其中, 所述数据接入模块, 用于接收至少一个客户机发送的数据; 所述数据緩存模块, 用于存储所述数据接入模块接收的至少一个 客户机发送的数据; 所述数据处理模块, 用于当判断所述数据緩存模块中的数据存储 状态满足数据发送条件时,通过所述数据緩存模块将数据发送指令发送 至数据发送模块;
所述数据发送模块, 用于根据所述数据发送指令将所述数据緩存 模块存储的所述数据进行发送。
在第一种可能的实现方式中, 根据第二方面, 所述数据转发装置 还包括: 定时模块, 用于判断所述数据緩存模块中是否存有所述至少一个 客户机通过所述数据接入模块发送的数据; 及用于若判断结果为否, 则 启动所述数据緩存模块中设置的定时器。
在第二种可能的实现方式中, 根据第一种可能的实现方式, 所述 定时模块,还用于当判断出在预设个所述超时周期内都未存储数据,停 止所述数据緩存模块中设置的定时器。
在第三种可能的实现方式中, 结合第二方面或第一种可能的实现 方式或第二种可能的实现方式中的任一种可能的实现方式,所述数据处 理模块具体用于当定时器中设置的定时时间超过预设的超时周期时,将 所述数据发送指令发送至所述数据发送模块。
在第四种可能的实现方式中, 结合第二方面或第一种可能的实现 方式或第二种可能的实现方式中的任一种可能的实现方式,所述数据处 理模块包括:
所述数据判断单元, 用于判断所述至少一个客户机的每个客户机 的存储区域在一个所述超时周期内是否存满数据; 所述指令发送单元, 用于若所述数据判断单元的判断结果为任意 一个所述客户机的存储区域存满数据,将所述数据发送指令发送至所述 数据发送模块。
在第五种可能的实现方式中, 根据第四种可能的实现方式若所有 所述客户机的存储区域都未存满数据,若所述数据判断单元的判断结果 为所有所述客户机的存储区域都未存满数据,
所述指令发送单元还包括: 所述数据填充率计算子单元, 用于计算在所述数据緩存模块的定 时器启动之后的所有所述超时周期内的所述数据緩存模块的最大数据 填充率的平均值;
所述指令发送子单元, 用于当所述数据緩存模块中的定时器未达 到所述超时周期, 且所述最大数据填充率的平均值大于预设上限阈值, 将所述数据发送指令发送至所述数据发送模块。
在第六种可能的实现方式中, 根据第五种可能的实现方式, 当所 述数据緩存模块中的定时器达到所述超时周期,且所述最大数据填充率 的平均值小于预设下限阈值,
所述指令发送子单元, 还用于将所述数据发送指令发送至所述数 据发送模块。
在第七种可能的实现方式中, 结合第五种可能的实现方式或第六 种可能的实现方式中的任一种可能的实现方式,所述数据填充率计算子 单元,具体用于记录在所述数据緩存模块的定时器启动之后的每个所述 超时周期内所述至少一个客户机中的每个客户机的存储区域的数据填 充率;还用于选取所述在所述数据緩存模块的定时器启动之后的每个所 述超时周期内所述至少一个客户机中的每个客户机的存储区域的数据 填充率中的最大值为每个所述超时周期的所述数据緩存模块的最大数 据填充率;还用于计算所述数据緩存模块在所述数据緩存模块的定时器 启动之后的每个所述超时周期的最大数据填充率的平均值。
在第八种可能的实现方式中, 根据第二方面, 所述数据緩存模块 还包括: 第一数据存储单元, 用于将通过所述数据接入模块接收到的所述 至少一个客户机发送的数据存入所述数据緩存模块中的预存区域;
标识判断单元, 用于按照所述数据存储的先后顺序依次判断所述 至少一个客户机的每个客户机在所述数据緩存模块中是否存在对应编 号标识;
第二数据存储单元, 还用于若所述标识判断单元判断所述数据緩 存模块中存在所述编号标识,则将所述数据緩存模块中存在所述编号标 识的客户机发送的数据存入所述数据緩存模块中所述编号标识对应的 客户机的存储区域。
在第九种可能的实现方式中, 根据第八种可能的实现方式, 若所 述标识判断单元判断所述数据緩存模块中不存在所述编号标识,
所述第二数据存储单元还包括: 所述标识生成子单元, 用于则对没有所述编号标识的客户机生成 新的编号标识; 所述存储区域判断子单元, 用于判断所述数据緩存模块是否存在 空闲存储区域; 所述存储区域申请子单元, 用于若所述存储区域判断单元判断所 述数据緩存模块中存在所述空闲存储区域,则在所述空闲存储区域中申 请一块以所述新的编号标识为标识的存储区域,并将所述新的编号标识 对应的客户机发送的数据存入所述存储区域。
在第十种可能的实现方式中, 根据第九种可能的实现方式, 所述 存储区域申请子单元,还用于若所述数据緩存模块中不存在所述空闲存 储区域, 则判断所述数据緩存模块中是否存在未存储数据的存储区域; 及用于若存在所述未存储数据的存储区域,则选择所有所述未存储数据 的存储区域中空闲时间最长的存储区域优先释放,并将所述空闲时间最 长的存储区域配置给所述新的编号标识对应的客户机,以便存储所述新 的编号标识对应的客户机发送的数据。
在第十一种可能的实现方式中, 根据第十种可能的实现方式, 所 述数据处理模块,还用于若所述存储区域判断子单元判断所述数据緩存 模块中不存在所述未存储数据的存储区域,将所述数据发送指令发送至 所述数据发送模块。 本发明的实施例提供的数据传输方法及数据转发装置, 能够在数 据緩存模块中存储的数据的数据存储状态满足数据发送条件时,数据发 送模块才根据数据緩存模块发送的数据发送指令将数据緩存模块存储 的数据进行发送,使得数据发送模块被唤醒次数减少, 增加了空闲休眠 时间, 进而降低数据转发装置的功耗。
附图说明 为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面 将对实施例或现有技术描述中所需要使用的附图作筒单地介绍,显而易 见地, 下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通 技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获 得其他的附图。 图 1为本发明的实施例提供的一种数据传输方法的流程示意图; 图 2为本发明的实施例提供的另一种数据传输方法的流程示意图; 图 3为本发明的实施例提供的再一种数据传输方法的流程示意图; 图 4为本发明的实施例提供的又一种数据传输方法的流程示意图; 图 5 为本发明的实施例提供的一种数据转发装置的结构流程示意 图;
图 6 为本发明的实施例提供的另一种数据转发装置的结构流程示 意图;
图 7 为本发明的实施例提供的再一种数据转发装置的结构流程示 意图;
图 8 为本发明的实施例提供的又一种数据转发装置的结构流程示 意图;
图 9 为本发明的实施例提供的另一种数据转发装置的结构流程示 意图;
图 10为本发明的另一实施例提供的一种数据转发装置的结构流程 示意图。
具体实施方式
下面将结合本发明实施例中的附图, 对本发明实施例中的技术方 案进行清楚、 完整地描述, 显然, 所描述的实施例仅仅是本发明一部分 实施例, 而不是全部的实施例。 基于本发明中的实施例, 本领域普通技 术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于 本发明保护的范围。
本发明的实施例应用于采用两个模块相连的模式来实现数据传输 的数据转发装置, 且该数据转发装置可以为无线路由数据终端,无线路 由数据终端具有可移动性,通常采用电池供电,且在每个数据包通过时, 都将随时唤醒该无线路由数据中的两个接入模块, 因此, 这两个接入模 块经常处于工作状态, 而本发明提供的数据转发装置, 进一步扩展了数 据緩存模块的应用, 减少了数据接入模块对数据发送模块的唤醒次数, 进而降低了数据转发装置的功耗, 具体的实现方式如下, 如图 1所示, 本发明提供的一种数据传输方法包括如下步骤:
101、 数据转发装置通过数据接入模块接收至少一个客户机发送的 数据, 并将通过数据接入模块接收的数据发送至数据緩存模块存储。
102、 当判断数据緩存模块中的数据存储状态满足数据发送条件 时,数据转发装置通过数据緩存模块将数据发送指令发送至数据发送模 块。
103、 数据转发装置根据数据发送指令将数据緩存模块存储的数据 通过数据发送模块发送。
进一步来说, 不管是数据接入模块将接收到的数据发送并存储在 数据緩存模块,还是数据緩存模块将数据发送至数据发送模块, 这里的 数据的传输都是按照先入先出 (F i r s t Input F i r s t Out put , F IFO ) 原 则进行传输的。
本发明的实施例提供的数据传输方法, 能够在数据緩存模块中存 储的数据的数据存储状态满足数据发送条件时,数据发送模块才根据数 据緩存模块发送的数据发送指令将将数据緩存模块存储的数据进行发 送, 使得数据发送模块被唤醒次数减少, 增加了空闲休眠时间, 进而降 低数据转发装置的功耗。
本发明公开一种数据传输方法, 如图 2 所示, 本实施例中所提到 的数据传输方法是根据整个数据緩存模块中存储的数据量的多少与定 时时间来确定是否发送数据发送指令, 该数据传输方法包括如下步骤:
201、 数据转发装置通过数据接入模块接收至少一个客户机发送的 数据, 并将通过数据接入模块接收的数据发送至数据緩存模块存储。
201 a , 数据转发装置将通过数据接入模块接收到的至少一个客户 机发送的数据存入数据緩存模块中的预存区域。 其中, 上述的数据緩存模块中的预存区域为数据緩存模块的保留 部分, 不纳入数据緩存模块中的存储空间的计算。
201 b、 数据转发装置按照数据存储的先后顺序依次判断至少一个 客户机的每个客户机在数据緩存模块中是否存在对应编号标识。 若在数据緩存模块中存在编号标识, 则转到步骤 2 01 c l , 若在数据 緩存模块中不存在编号标识, 则转到步骤 201 c 2。
201 c 1 , 数据转发装置将在数据緩存模块中存在编号标识的客户机 发送的数据存入数据緩存模块中编号标识对应的客户机的存储区域。
或者,
步骤 201 c 2包括如下步骤:
a 1、 数据转发装置对没有编号标识的客户机生成新的编号标识。 a 2、 数据转发装置判断数据緩存模块是否存在空闲存储区域。 若判断结果为存在空闲存储区域, 则转到步骤 a 3 , 若判断结果为 不存在所述空闲存储区域, 则转到步骤 201 c 3。
a 3、 数据转发装置则在空闲存储区域中申请一块以新的编号标识 为标识的存储区域,并将新的编号标识对应的客户机发送的数据存入存 储区域。
步骤 201 c 3包括如下步骤:
b 1、 数据转发装置判断数据緩存模块中是否存在未存储数据的存 储区域。
b2、 若数据緩存模块中存在未存储数据的存储区域, 则数据转发 装置选择所有未存储数据的存储区域中空闲时间最长的存储区域优先 释放, 并将空闲时间最长的存储区域配置给新的编号标识对应的客户 机, 以便存储新的编号标识对应的客户机发送的数据。
202、 若数据緩存模块中不存在未存储数据的存储区域, 则数据转 发装置通过数据緩存模块将数据发送指令发送至数据发送模块。
203、 数据转发装置根据数据发送指令将数据緩存模块存储的数据 通过数据发送模块发送。 进一步来说, 不管是数据接入模块将接收到的数据发送并存储在 数据换模块,还是数据緩存模块将数据发送至数据发送模块,数据的传 输都是按照先入先出 F IFO原则进行传输的。
此外, 当上述的数据传输方法所传输的数据包括上行数据和 /或下 行数据时,数据转发装置中的数据接入模块和数据发送模块之间的数据 緩存模块可以分为上行数据緩存模块和 /或下行数据緩存模块。
当上行数据发起时, 数据接入模块接收到至少一个客户机发送的 上行数据, 并将接收到的上行数据在上行数据緩存模块中进行存储。 当 上行数据緩存模块存满上行数据且没有未存储数据的存储区域时,上行 数据緩存模块向数据发送模块发送数据发送指令,最后数据发送模块根 据数据发送指令将数据緩存模块中的上行数据发送至远端客户机。
当下行数据发起时, 数据发送模块接收到的至少一个远端客户机 发送的下行数据,并将接收到的下行数据在下行数据緩存模块中进行存 储。 当下行数据緩存模块存满下行数据且没有未存储数据的存储区域 时, 下行数据緩存模块向数据发送模块发送数据发送指令, 最后数据发 送模块根据数据发送指令将数据存储模块中的下行数据发送至客户机。
进一步的, 当同时存在上行数据和下行数据时, 上行数据緩存模 块和下行数据緩存模块的存储空间的大小是可以根据实际业务需求量 来进行分配的, 一般不具备对称性, 由于上行数据一般为对实际业务的 请求信息,而下行数据一般为上行数据中对实际业务的请求信息的对应 下载信息, 因此, 下行数据緩存模块的空间会比上行数据緩存模块的空 间大, 来满足实际的不对称数据吞吐量要求。 本发明的实施例提供的数据传输方法, 能够在数据緩存模块中存 储的数据的数据存储状态满足数据发送条件时,数据发送模块才根据数 据緩存模块发送的数据发送指令将将数据緩存模块存储的数据进行发 送, 使得数据发送模块被唤醒次数减少, 增加了空闲休眠时间, 进而降 低数据转发装置的功耗。
本发明公开一种数据传输方法, 如图 3、 4所示, 本实施例中所提 的数据量多少来确定是否发送数据发送指令, 如图 3所示, 当从微观角 度(即数据緩存模块中每个客户机中存储的数据量的多少)来说明该数 据存储方法, 该方法包括如下步骤:
301 a、 数据转发装置判断数据緩存模块中是否存有至少一个客户 机通过数据接入模块发送的数据。
302a、 若数据緩存模块未存储数据, 则数据转发装置启动数据緩 存模块中设置的定时器。
303a , 数据转发装置通过数据接入模块接收至少一个客户机发送 的数据, 并通过数据接入模块将数据发送至数据緩存模块存储。
304a、 数据转发装置判断至少一个客户机的每个客户机对应的存 储区域在一个超时周期内是否存满数据。
步骤 305a可以有如下几种情况:
305a l、 若任意一个客户机的存储区域存满数据, 则数据转发装置 通过数据緩存模块将数据发送指令发送至数据发送模块。 或者,
305a2、 若所有客户机的存储区域都未存满数据, 则数据转发装置 计算在数据緩存模块的定时器启动之后的所有超时周期内的数据緩存 模块的最大数据填充率的平均值。
步骤 305 a2的具体计算过程如下:
a l、 数据转发装置记录在数据緩存模块的定时器启动之后的每个 超时周期内至少一个客户机中的每个客户机的存储区域的数据填充率。
a2、 数据转发装置选取在数据緩存模块的定时器启动之后的每个 超时周期内至少一个客户机中的每个客户机的存储区域的数据填充率 中的最大值为每个超时周期的数据緩存模块的最大数据填充率。
a 3、 数据转发装置计算数据緩存模块在数据緩存模块的定时器启 动之后的每个超时周期的最大数据填充率的平均值。
305a 3、 当数据緩存模块的定时器未达到超时周期, 且最大数据填 充率的平均值大于预设上限阈值,则数据转发装置通过数据緩存模块将 数据发送指令发送至数据发送模块。 或者,
305a4、 当数据緩存模块的定时器达到超时周期, 且最大数据填充 率的平均值小于预设下限阈值,则数据转发装置通过数据緩存模块将数 据发送指令发送至数据发送模块。
具体的, 数据转发装置在数据緩存模块的定时器启动之后的每个 超时周期都记录至少一个客户机中的每个客户机的存储区域在超时周 期内的数据填充率,然后挑选出其中的最大值作为每个超时周期内数据 緩存模块的最大数据填充率,并将该最大数据填充率存储在一个具有存 储功能的虚拟循环容器内,且每经过一次超时周期循环容器就存储一次 最大数据填充率,并计算一次在上述虚拟循环容器内所存储的所有最大 数据填充率的平均值。直到该最大数据填充率的平均值大于预设上限阈 值, 且数据緩存模块的定时器未达到超时周期时, 或者, 最大数据填充 率的平均值小于预设下限阈值,且数据緩存模块的定时器达到超时周期 时, 则停止最大数据填充率的平均值的计算过程。 此外, 在数据緩存模 块的定时器启动之后的第一个超时周期内,由于上述的循环容器内只存 储有一个最大数据填充率, 因此, 此时的平均值为循环容器预设的一个 平均阈值。
具体的, 当最大数据填充率的平均值大于预设上限阈值, 则说明 该数据传输的过程中传输的数据是具有连续性的,则直接将所有数据进 行传输; 当最大数据填充率的平均值小于预设下限阈值, 则说明该数据 传输的过程中传输的数据时存在间歇性的,则只有当数据緩存模块的定 时器达到超时周期时, 才能将所有数据进行传输。
306a、 数据转发装置根据数据发送指令将数据緩存模块存储的数 据通过数据发送模块发送。
如图 4 所示, 当宏观角度 (即判断数据緩存模块存储数据的时间 达到预设的超时周期) 来说明该数据存储方法, 该方法包括如下步骤:
301 b , 数据转发装置判断数据緩存模块中是否存有至少一个客户 机通过数据接入模块发送的数据。
302b , 若数据緩存模块未存储数据, 则数据转发装置启动数据緩 存模块中设置的定时器。 303b , 当数据緩存模块中的定时器设置的定时时间超过预设的超 时周期时,则数据转发装置通过数据緩存模块将数据发送指令发送至数 据发送模块。
304a、 数据转发装置根据数据发送指令将数据緩存模块存储的数 据通过数据发送模块发送。
可选的, 当数据緩存模块在预设个超时周期内都未存储数据, 则 停止数据緩存模块中设置的定时器。
进一步来说, 不管是数据接入模块将接收到的数据发送并存储在 数据换模块,还是数据緩存模块将数据发送至数据发送模块, 数据的传 输都是按照先入先出 F I FO原则进行传输的。 并且为了避免客户机申请 数据緩存模块的空间失败的可能性,对于数据緩存模块的空间大小要按 照实际需求进行选择。
当上述的数据传输方法所传输的数据包括上行数据和 /或下行数 据时,数据转发装置中的数据接入模块和数据发送模块之间的数据緩存 模块可以分为上行数据緩存模块和 /或下行数据緩存模块。
当上行数据发起时, 数据接入模块接收到至少一个客户机发送的 上行数据, 并将接收到的上行数据在上行数据緩存模块中进行存储之 前,上行数据緩存模块首先将定时器启动,然后再进行上行数据的存储。 当上行数据緩存模块緩存上行数据的时间达到预设的超时周期时客户 机的存储区域存储的数据达到预定量值或当上行数据緩存模块緩存上 行数据的时间达到预设的超时周期时,上行数据緩存模块向数据发送模 块发送数据发送指令,最后数据发送模块根据数据发送指令将数据緩存 模块中的上行数据发送至远端客户机。 当下行数据发起时, 数据发送模块接收到的至少一个远端客户机 发送的下行数据,并将接收到的下行数据在下行数据緩存模块中进行存 储之前, 下行数据緩存模块首先将定时器启动, 然后再进行下行数据的 存储。当下行数据緩存模块緩存下行数据的时间达到预设的超时周期时 客户机的存储区域存储的数据达到预定量值或当上行数据緩存模块緩 存上行数据的时间达到预设的超时周期时,下行数据緩存模块向数据发 送模块发送数据发送指令,最后数据发送模块根据数据发送指令将数据 緩存模块中的下行数据发送至远端客户机。
进一步的, 当同时存在上行数据和下行数据时, 上行数据緩存模 块和下行数据緩存模块的存储空间的大小是可以根据实际业务需求量 来进行分配的, 一般不具备对称性, 由于上行数据一般为对实际业务的 请求信息,而下行数据一般为上行数据中对实际业务的请求信息的对应 下载信息, 因此, 下行数据緩存模块的空间会比上行数据緩存模块的空 间大, 来满足实际的不对称数据吞吐量要求。 本发明的实施例提供的数据传输方法, 能够在数据緩存模块中存 储的数据的数据存储状态满足数据发送条件时,数据发送模块才根据数 据緩存模块发送的数据发送指令将将数据緩存模块存储的数据进行发 送, 使得数据发送模块被唤醒次数减少, 增加了空闲休眠时间, 进而降 低数据转发装置的功耗。 本发明的实施例提供了一种数据转发装置, 该数据转发装置可以 为一个无线路由数据终端,并且该数据转发装置中的数据接入模块可以 为无线局域网 ( Wireless Local Area Networks , WLAN ) 接入模块, 数 据转发装置中的数据发送模块可以为无线广域网 (Wireless Wide Area Network, WWAN)接入模块, 其中, 无线广域网接入模块可以使用但并 不限于现有的全球移动通信系统 ( Global System for Mobile Communications, GSM ) 、 宽带码分多址 ( Wideband Code Division Multiple Access, WCDMA ) 、 长期演进项目 (Long Term Evolution, , LTE) 等技术, 无线局域网接入模块可使用但不限于现有的无线上网技 术 (Wireless Fidelity, Wi-Fi ) 、 蓝牙 (Bluetooth) 等技术。 且用 于发送数据的客户机可以为个人数字助理 ( Personal Digital Assistant, PDA) 、 无线调制解调器 (modem) , 无线通信设备、 手持 设备 ( handheld ) 、 智能手机 ( Smart phone ) 、 膝上型电月禽 ( Laptop Computer ) 或无线本地环路 ( Wireless Local Loop, WLL ) 台等。 参照图 5 所示, 该数据转发装置用于实现上述的数据发送方法, 该数据转发装置 5包括: 数据接入模块 41、 数据发送模块 42、 数据緩 存模块 43和数据处理模块 44, 其中该数据緩存模块 43与数据接入模 块 41和数据发送模块 42连接, 该数据处理模块 44与数据緩存模块 43 相连, 其中, 在实际的无线路由终端中上述的数据处理模块 44可以为 无线路由终端中的 CPU ( Central Processing Unit , 中央处理器) , 上述的数据緩存模块 42可以为无线路由终端中的存储器, 例如只读存 储器 ( Read-Only Memory, ROM) , 上述的数据接入模块 41和数据发送 模块 42可以处于无线路由终端中的任意通信接口。 具体的, 上述的模块的具体功能实现如下所示:
数据接入模块 41, 用于接收至少一个客户机发送的数据。
数据緩存模块 43,用于存储数据接入模块 41接收的至少一个客户 机发送的数据。
数据处理模块 44,用于当判断数据緩存模块 43中的数据存储状态 满足数据发送条件时, 通过数据緩存模块 43将数据发送指令发送至数 据发送模块 42。
数据发送模块 42,用于根据数据发送指令将数据緩存模块 43存储 的数据进行发送。
进一步可选的, 参照图 6、 7、 8 所示, 数据转发装置还包括: 定 时模块 45, 用于判断数据緩存模块 43中是否存有至少一个客户机通过 数据接入模块发送的数据; 及用于若判断结果为否, 则启动数据緩存模 块中设置的定时器。
进一步可选的, 该定时模块 45, 还用于当判断出在预设个超时周 期内都未存储数据, 停止数据緩存模块中设置的定时器。
进一步可选的, 参照图 6所示, 该数据处理模块 44具体用于当定 时器中设置的定时时间超过预设的超时周期时,将数据发送指令发送至 数据发送模块 42。
进一步可选的, 如图 7所示, 数据处理模块 44包括: 数据判断子 单元 441和指令发送子单元 442, 其中: 数据判断单元 441,用于判断至少一个客户机的每个客户机的存储 区域在一个超时周期内是否存满数据。 指令发送单元 442,用于若数据判断单元 441的判断结果为任意一 个客户机的存储区域存满数据, 将数据发送指令发送至数据发送模块 42。 进一步可选的, 如图 8 所示, 若数据判断单元 441 的判断结果为 所有客户机的存储区域都未存满数据, 指令发送单元 442 包括: 数据填充率计算子单元 442a、 指令发送 子单元 442b, 其中: 数据填充率计算子单元 442a,用于计算在数据緩存模块 43的定时 器启动之后的所有超时周期内的数据緩存模块的最大数据填充率的平 均值;
指令发送子单元 442b,用于当数据緩存模块 43中的定时器未达到 超时周期,且最大数据填充率的平均值大于预设上限阈值,将数据发送 指令发送至数据发送模块 42。
进一步可选的, 当数据緩存模块 43中的定时器达到超时周期, 且 最大数据填充率的平均值小于预设下限阈值,
指令发送子单元 442b, 还用于将数据发送指令发送至数据发送模 块 42。
进一步可选的, 如图 8所示, 数据填充率计算子单元 442a, 具体 用于记录在数据緩存模块 43的定时器启动之后的每个超时周期内至少 一个客户机中的每个客户机的存储区域的数据填充率;还用于选取在数 据緩存模块 43的定时器启动之后的每个超时周期内至少一个客户机中 的每个客户机的存储区域的数据填充率中的最大值为每个超时周期的 数据緩存模块 43的最大数据填充率;还用于计算数据緩存模块 43在数 据緩存模块 43的定时器启动之后的每个超时周期的最大数据填充率的 平均值。
可选的, 如图 9所示, 数据緩存模块 43 包括: 数据存储单元 431 和标识判断单元 432, 其中: 第一数据存储单元 431, 用于将通过数据接入模块 41接收到的至 少一个客户机发送的数据存入数据緩存模块 43中的预存区域。 标识判断单元 432,用于按照数据存储的先后顺序依次判断至少一 个客户机的每个客户机在数据緩存模块 43中是否存在对应编号标识。
第二数据存储单元 433,还用于若标识判断单元 432判断数据緩存 模块 43中存在编号标识,则将数据緩存模块 43中存在编号标识的客户 机发送的数据存入数据緩存模块 43中编号标识对应的客户机的存储区 域。
进一步可选的, 若标识判断单元 432判断数据緩存模块 43中不存 在编号标识, 第二数据存储单元 433包括:
标识生成子单元 433a , 用于则对没有编号标识的客户机生成新的 编号标识。
存储区域判断子单元 433b ,用于判断数据緩存模块 43是否存在空 闲存储区域。
存储区域申请子单元 433c ,用于若存储区域判断单元 433b判断数 据緩存模块 43中存在空闲存储区域, 则在空闲存储区域中申请一块以 新的编号标识为标识的存储区域,并将新的编号标识对应的客户机发送 的数据存入存储区域。
进一步可选的, 存储区域申请子单元 433c , 还用于若数据緩存模 块 43中不存在空闲存储区域,则判断数据緩存模块 43中是否存在未存 储数据的存储区域; 及用于若存在未存储数据的存储区域, 则选择所有 未存储数据的存储区域中空闲时间最长的存储区域优先释放,并将空闲 时间最长的存储区域配置给新的编号标识对应的客户机,以便存储新的 编号标识对应的客户机发送的数据。
进一步可选的, 数据处理模块 44 , 还用于若存储区域判断子单元 433b判断数据緩存模块 43中不存在未存储数据的存储区域, 将数据发 送指令发送至数据发送模块 41。 本发明的实施例提供的数据转发装置, 能够在数据緩存模块中存 储的数据的数据存储状态满足数据发送条件时,数据发送模块才根据数 据緩存模块发送的数据发送指令将将数据緩存模块存储的数据进行发 送, 使得数据发送模块被唤醒次数减少, 增加了空闲休眠时间, 进而降 低数据转发装置的功耗。
图 10为本发明的又一实施例提供的数据转发装置的结构示意图, 该数据转发装置用于实现上述的数据发送方法,且该数据转发装置可以 为路由器或无线路由数据终端, 其中, 该数据转发装置 5 包括处理器 51, 存储器 52、 通信接口 53和总线 54。
其中, 处理器 51可以包括数据处理模块 511, 存储器 52可以包括 数据緩存模块 521, 通信接口 53可以包括: 数据接入模块 531和数据 发送模块 532。
其中, 上述的处理器 51、 存储器 52和通信接口 53 中的模块具体 的实现功能如下。
数据接入模块 531, 用于接收至少一个客户机发送的数据。
数据緩存模块 521,用于存储数据接入模块 531接收的至少一个客 户机发送的数据。
数据处理模块 511,用于当判断数据緩存模块 521中的数据存储状 态满足数据发送条件时,通过数据緩存模块 521将数据发送指令发送至 数据发送模块 532。
数据发送模块 532,用于根据数据发送指令将数据緩存模块 521存 储的数据进行发送。
进一步可选的, 存储器还包括: 定时模块 522, 用于判断数据緩存 模块 521中是否存有至少一个客户机通过数据接入模块发送的数据;及 用于若判断结果为否, 则启动数据緩存模块 521 中设置的定时器。
进一步可选的, 该定时模块 522, 还用于当判断出在预设个超时周 期内都未存储数据, 停止数据緩存模块 521中设置的定时器。
进一步可选的, 该数据处理模块 511 具体用于当定时器中设置的 定时时间超过预设的超时周期时,将数据发送指令发送至数据发送模块 532。 进一步可选的, 数据处理模块 511 包括: 数据判断子单元和指令 发送子单元, 其中:
数据判断单元, 用于判断至少一个客户机的每个客户机的存储区 域在一个超时周期内是否存满数据。 指令发送单元, 用于若数据判断单元的判断结果为任意一个客户 机的存储区域存满数据, 将数据发送指令发送至数据发送模块 532。 进一步可选的, 若数据判断单元的判断结果为所有客户机的存储 区域都未存满数据, 指令发送单元包括: 数据填充率计算子单元、 指令发送子单元, 其中:
数据填充率计算子单元, 用于计算在数据緩存模块的定时器启动 之后的所有超时周期内的数据緩存模块的最大数据填充率的平均值。
指令发送子单元, 用于当数据緩存模块 521 中的定时器未达到超 时周期, 且最大数据填充率的平均值大于预设上限阈值,将数据发送指 令发送至数据发送模块 532。
进一步可选的, 当数据緩存模块 521 中的定时器达到超时周期, 且最大数据填充率的平均值小于预设下限阈值,
指令发送子单元, 还用于将数据发送指令发送至数据发送模块
532。 进一步可选的, 数据填充率计算子单元, 具体用于记录在数据緩 存模块 521 的定时器启动之后的每个超时周期内至少一个客户机中的 每个客户机的存储区域的数据填充率;还用于选取在数据緩存模块的定 时器启动之后的每个超时周期内至少一个客户机中的每个客户机的存 储区域的数据填充率中的最大值为每个超时周期的数据緩存模块 521 的最大数据填充率; 还用于计算数据緩存模块 521在数据緩存模块 521 的定时器启动之后的每个超时周期的最大数据填充率的平均值。
可选的, 数据緩存模块 521 包括: 数据存储单元和标识判断单元, 其中:
第一数据存储单元, 用于将通过数据接入模块 531 接收到的至少 一个客户机发送的数据存入数据緩存模块 521中的预存区域。 标识判断单元, 用于按照数据存储的先后顺序依次判断至少一个 客户机的每个客户机在数据緩存模块 521中是否存在对应编号标识。
第二数据存储单元,还用于若标识判断单元判断数据緩存模块 521 中存在编号标识,则将数据緩存模块 521 中存在编号标识的客户机发送 的数据存入数据緩存模块 521 中编号标识对应的客户机的存储区域。 进一步可选的, 若标识判断单元判断数据緩存模块 5 2 1 中不存在 编号标识, 第二数据存储单元包括:
标识生成子单元, 用于则对没有编号标识的客户机生成新的编号 标识。
存储区域判断子单元, 用于判断数据緩存模块 5 2 1 是否存在空闲 存储区域。
存储区域申请子单元, 用于若存储区域判断单元判断数据緩存模 块 4 3中存在空闲存储区域, 则在空闲存储区域中申请一块以新的编号 标识为标识的存储区域,并将新的编号标识对应的客户机发送的数据存 入存储区域。
进一步可选的, 存储区域申请子单元, 还用于若数据緩存模块 5 2 1 中不存在空闲存储区域,则判断数据緩存模块 5 2 1中是否存在未存储数 据的存储区域; 及用于若存在未存储数据的存储区域, 则选择所有未存 储数据的存储区域中空闲时间最长的存储区域优先释放,并将空闲时间 最长的存储区域配置给新的编号标识对应的客户机,以便存储新的编号 标识对应的客户机发送的数据。
进一步可选的, 数据处理模块 5 1 1 , 还用于若存储区域判断子单元 判断数据緩存模块 5 2 1中不存在未存储数据的存储区域,将数据发送指 令发送至所述数据发送模块。 本发明的实施例提供的数据转发装置, 能够在数据緩存模块中存 储的数据的数据存储状态满足数据发送条件时,数据发送模块才根据数 据緩存模块发送的数据发送指令将将数据緩存模块存储的数据进行发 送, 使得数据发送模块被唤醒次数减少, 增加了空闲休眠时间, 进而降 低数据转发装置的功耗。
本领域普通技术人员可以理解: 实现上述方法实施例的全部或部 分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一 计算机可读取存储介质中, 该程序在执行时,执行包括上述方法实施例 的步骤; 而前述的存储介质包括: R0M、 RAM , 磁碟或者光盘等各种可以 存储程序代码的介质。
以上所述, 仅为本发明的具体实施方式, 但本发明的保护范围并不 局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围 可轻易想到变化或替换, 都应涵盖在本发明的保护范围之内。 因此, 发明的保护范围应以所述权利要求的保护范围为准。

Claims

权利要求 书
1、 一种数据传输方法, 其特征在于, 包括: 数据转发装置通过数据接入模块接收至少一个客户机发送的数据, 并将通过所述数据接入模块接收的所述数据发送至数据緩存模块存储; 当判断所述数据緩存模块中的数据存储状态满足数据发送条件时, 通过所述数据緩存模块将数据发送指令发送至数据发送模块;
根据所述数据发送指令将所述数据緩存模块存储的所述数据通过所 述数据发送模块发送。
2、 根据权利要求 1所述的方法, 其特征在于, 所述数据转发装置通 过数据接入模块接收至少一个客户机发送的数据, 并将通过所述数据接 入模块接收的所述数据发送至数据緩存模块存储之前, 包括:
判断所述数据緩存模块中是否存有所述至少一个客户机通过所述数 据接入模块发送的数据;
若所述数据緩存模块未存储所述数据, 则启动所述数据緩存模块中 设置的定时器。
3、 根据权利要求 2所述的方法, 其特征在于, 所述方法还包括: 当所述数据緩存模块在预设个数个所述超时周期内都未存储数据, 则停止所述数据緩存模块中设置的定时器。
4、 根据权利要求 1 ~3任一项所述的方法, 其特征在于, 所述当判断 所述数据緩存模块中的数据存储状态满足数据发送条件时, 通过所述数 据緩存模块将数据发送指令发送至数据发送模块, 包括:
当所述数据緩存模块中的定时器设置的定时时间超过预设的超时周 期时, 则通过所述数据緩存模块将所述数据发送指令发送至所述数据发 送模块。
5、 根据权利要求 1 ~3任一项所述的方法, 其特征在于, 所述当判断 所述数据緩存模块中的数据存储状态满足数据发送条件时, 通过所述数 据緩存模块将数据发送指令发送至数据发送模块, 包括:
判断所述至少一个客户机中的每个客户机对应的存储区域在一个所 述超时周期内是否存满数据;
若任意一个所述客户机的存储区域存满数据, 则通过所述数据緩存 模块将所述数据发送指令发送至所述数据发送模块。
6、 根据权利要求 5所述的方法, 其特征在于, 若所有所述客户机的 存储区域都未存满数据, 所述方法还包括:
计算在所述数据緩存模块的定时器启动之后的所有所述超时周期内 的所述数据緩存模块的最大数据填充率的平均值;
当所述数据緩存模块的定时器未达到所述超时周期, 且所述最大数 据填充率的平均值大于预设上限阈值, 则通过所述数据緩存模块将所述 数据发送指令发送至所述数据发送模块。
7、 根据权利要求 6所述的方法, 其特征在于, 当所述数据緩存模块 的定时器达到所述超时周期, 且所述最大数据填充率的平均值小于预设 下限阈值, 所述方法还包括: 通过所述数据緩存模块将所述数据发送指令发送至所述数据发送模 块。
8、 根据权利要求 6或 7所述方法, 其特征在于, 所述计算在所述数 据緩存模块的定时器启动之后的所有所述超时周期内的所述数据緩存模 块的最大数据填充率的平均值, 包括:
记录在所述数据緩存模块的定时器启动之后的每个所述超时周期内 所述至少一个客户机中的每个客户机的存储区域的数据填充率;
选取所述在所述数据緩存模块的定时器启动之后的每个所述超时周 期内所述至少一个客户机中的每个客户机的存储区域的数据填充率中的 最大值为每个所述超时周期的所述数据緩存模块的最大数据填充率; 计算所述数据緩存模块在所述数据緩存模块的定时器启动之后的每 个所述超时周期的最大数据填充率的平均值。
9、 根据权利要求 1所述的方法, 其特征在于, 所述数据转发装置通 过数据接入模块接收至少一个客户机发送的数据, 并通过所述数据接入 模块将所述数据发送至数据緩存模块存储, 包括:
将通过所述数据接入模块接收到的所述至少一个客户机发送的数据 存入所述数据緩存模块中的预存区域; 按照所述数据存储的先后顺序依次判断所述至少一个客户机的每个 客户机在所述数据緩存模块中是否存在对应编号标识; 若在所述数据緩存模块中存在所述编号标识, 则将在所述数据緩存 模块中存在所述编号标识的客户机发送的数据存入所述数据緩存模块中 所述编号标识对应的客户机的存储区域。
10、 根据权利要求 9 所述的方法, 其特征在于, 若在所述数据緩存 模块中不存在所述编号标识, 所述方法还包括:
则对没有所述编号标识的客户机生成新的编号标识;
判断所述数据緩存模块是否存在空闲存储区域; 若所述数据緩存模块中存在所述空闲存储区域, 则在所述空闲存储 区域中申请一块以所述新的编号标识为标识的存储区域, 并将所述新的 编号标识对应的客户机发送的数据存入所述存储区域。
11、 根据权利要求 10所述的方法, 其特征在于, 若所述数据緩存模 块中不存在所述空闲存储区域, 所述方法还包括:
判断所述数据緩存模块中是否存在未存储数据的存储区域; 若存在所述未存储数据的存储区域, 则选择所有所述未存储数据的 存储区域中空闲时间最长的存储区域优先释放, 并将所述空闲时间最长 的存储区域配置给所述新的编号标识对应的客户机, 以便存储所述新的 编号标识对应的客户机发送的数据。
12、 根据权利要求 11所述的方法, 其特征在于, 所述当判断所述数 据緩存模块中的数据存储状态满足数据发送条件时, 通过所述数据緩存 模块将数据发送指令发送至数据发送模块, 包括:
若不存在所述未存储数据的存储区域, 则通过所述数据緩存模块将 所述数据发送指令发送至所述数据发送模块。
1 3、 一种数据转发装置, 包括数据接入模块和数据发送模块, 其特 征在于, 所述数据转发装置还包括: 数据緩存模块及与所述数据緩存模 块连接的数据处理模块, 所述数据緩存模块与所述数据接入模块和数据 发送模块连接; 其中, 所述数据接入模块, 用于接收至少一个客户机发送的数据;
所述数据緩存模块, 用于存储所述数据接入模块接收的至少一个客 户机发送的数据; 所述数据处理模块, 用于当判断所述数据緩存模块中的数据存储状 态满足数据发送条件时, 通过所述数据緩存模块将数据发送指令发送至 数据发送模块;
所述数据发送模块, 用于根据所述数据发送指令将所述数据緩存模 块存储的所述数据进行发送。
14、 根据权利要求 1 3所述的数据转发装置, 其特征在于, 所述数据 转发装置还包括:
定时模块, 用于判断所述数据緩存模块中是否存有所述至少一个客 户机通过所述数据接入模块发送的数据; 及用于若判断结果为否, 则启 动所述数据緩存模块中设置的定时器。
1 5、 根据权利要求 14所述的数据转发装置, 其特征在于, 所述定时模块, 还用于当判断出在预设个所述超时周期内都未存储 数据, 停止所述数据緩存模块中设置的定时器。
1 6、 根据权利要求 1 3~1 5任一项所述的数据转发装置, 其特征在于, 所述数据处理模块具体用于当定时器中设置的定时时间超过预设的超时 周期时, 将所述数据发送指令发送至所述数据发送模块。
1 7、 根据权利要求 1 3~1 5任一项所述的数据转发装置, 其特征在于, 所述数据处理模块包括:
所述数据判断单元, 用于判断所述至少一个客户机的每个客户机的 存储区域在一个所述超时周期内是否存满数据; 所述指令发送单元, 用于若所述数据判断单元的判断结果为任意一 个所述客户机的存储区域存满数据, 将所述数据发送指令发送至所述数 据发送模块。
1 8、 根据权利要求 1 7所述的数据转发装置, 其特征在于, 若所述数 据判断单元的判断结果为所有所述客户机的存储区域都未存满数据, 所述指令发送单元还包括: 所述数据填充率计算子单元, 用于计算在所述数据緩存模块的定时 器启动之后的所有所述超时周期内的所述数据緩存模块的最大数据填充 率的平均值;
所述指令发送子单元, 用于当所述数据緩存模块中的定时器未达到 所述超时周期, 且所述最大数据填充率的平均值大于预设上限阈值, 将 所述数据发送指令发送至所述数据发送模块。
1 9、 根据权利要求 1 8所述的数据转发装置, 其特征在于, 当所述数 据緩存模块中的定时器达到所述超时周期, 且所述最大数据填充率的平 均值小于预设下限阈值,
所述指令发送子单元, 还用于将所述数据发送指令发送至所述数据 发送模块。
20、 根据权利要求 1 8或 1 9所述的数据转发装置, 其特征在于, 所 述数据填充率计算子单元, 具体用于记录在所述数据緩存模块的定时器 启动之后的每个所述超时周期内所述至少一个客户机中的每个客户机的 存储区域的数据填充率; 还用于选取所述在所述数据緩存模块的定时器 启动之后的每个所述超时周期内所述至少一个客户机中的每个客户机的 存储区域的数据填充率中的最大值为每个所述超时周期的所述数据緩存 模块的最大数据填充率; 还用于计算所述数据緩存模块在所述数据緩存 模块的定时器启动之后的每个所述超时周期的最大数据填充率的平均 值。
21、 根据权利要求 1 3所述的数据转发装置, 其特征在于, 所述数据 緩存模块还包括:
第一数据存储单元, 用于将通过所述数据接入模块接收到的所述至 少一个客户机发送的数据存入所述数据緩存模块中的预存区域; 标识判断单元, 用于按照所述数据存储的先后顺序依次判断所述至 少一个客户机的每个客户机在所述数据緩存模块中是否存在对应编号标 识;
第二数据存储单元, 还用于若所述标识判断单元判断所述数据緩存 模块中存在所述编号标识, 则将所述数据緩存模块中存在所述编号标识 的客户机发送的数据存入所述数据緩存模块中所述编号标识对应的客户 机的存储区域。
22、 根据权利要求 21所述的数据转发装置, 其特征在于, 若所述标 识判断单元判断所述数据緩存模块中不存在所述编号标识,
所述第二数据存储单元还包括: 所述标识生成子单元, 用于则对没有所述编号标识的客户机生成新 的编号标识;
所述存储区域判断子单元, 用于判断所述数据緩存模块是否存在空 闲存储区域; 所述存储区域申请子单元, 用于若所述存储区域判断单元判断所述 数据緩存模块中存在所述空闲存储区域, 则在所述空闲存储区域中申请 一块以所述新的编号标识为标识的存储区域, 并将所述新的编号标识对 应的客户机发送的数据存入所述存储区域。
23、 根据权利要求 22所述的数据转发装置, 其特征在于, 所述存储 区域申请子单元, 还用于若所述数据緩存模块中不存在所述空闲存储区 域, 则判断所述数据緩存模块中是否存在未存储数据的存储区域; 及用 于若存在所述未存储数据的存储区域, 则选择所有所述未存储数据的存 储区域中空闲时间最长的存储区域优先释放, 并将所述空闲时间最长的 存储区域配置给所述新的编号标识对应的客户机, 以便存储所述新的编 号标识对应的客户机发送的数据。
24、 根据权利要求 23所述的数据转发装置, 其特征在于, 所述数据 处理模块, 还用于若所述存储区域判断子单元判断所述数据緩存模块中不 存在所述未存储数据的存储区域, 将所述数据发送指令发送至所述数据发 送模块。
PCT/CN2014/072193 2013-03-01 2014-02-18 一种数据传输方法及数据转发装置 WO2014131335A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310066554.7A CN104023379B (zh) 2013-03-01 2013-03-01 一种数据传输方法及数据转发装置
CN201310066554.7 2013-03-01

Publications (1)

Publication Number Publication Date
WO2014131335A1 true WO2014131335A1 (zh) 2014-09-04

Family

ID=51427521

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/072193 WO2014131335A1 (zh) 2013-03-01 2014-02-18 一种数据传输方法及数据转发装置

Country Status (2)

Country Link
CN (1) CN104023379B (zh)
WO (1) WO2014131335A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106445420A (zh) * 2016-10-12 2017-02-22 安徽徽云信息科技有限公司 一种计算机存储系统
CN106817305B (zh) * 2016-12-30 2020-03-10 Oppo广东移动通信有限公司 一种转发控制方法,及接入设备
CN106658686B (zh) * 2016-12-30 2020-01-14 Oppo广东移动通信有限公司 一种数据转发方法,及接入设备
CN106851737B (zh) * 2016-12-30 2020-01-14 Oppo广东移动通信有限公司 一种发送上行数据的方法,及终端设备
CN111049926B (zh) * 2019-12-24 2022-09-20 浙江中控技术股份有限公司 一种数据传输方法及相关设备
CN113609043B (zh) * 2021-06-20 2024-07-05 山东云海国创云计算装备产业创新中心有限公司 一种i2c主机的数据传输方法、装置、设备及可读介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1691590A (zh) * 2004-04-19 2005-11-02 华为技术有限公司 无线链路数据传输中接收端发送窗口大小调整信息的方法
CN101043446A (zh) * 2007-03-08 2007-09-26 华为技术有限公司 数据转发处理的方法和装置
CN101207570A (zh) * 2007-11-26 2008-06-25 上海华为技术有限公司 数据传输方法、数据发送速率控制方法及基站
CN102244856A (zh) * 2010-05-13 2011-11-16 电信科学技术研究院 一种mtc设备下行数据传输控制方法和设备
US20120009876A1 (en) * 2009-03-13 2012-01-12 St-Ericsson Sa Process of Audio Data Exchanges of Information Between a Central Unit and a Bluetooth Controller

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101588602B (zh) * 2009-05-22 2011-07-13 中兴通讯股份有限公司 降低wapi移动终端功耗的方法及wapi移动终端
CN101925160A (zh) * 2009-06-11 2010-12-22 上海易狄欧电子科技有限公司 无线数据收发方法及其系统
CN102893577A (zh) * 2010-06-17 2013-01-23 松下电器产业株式会社 数据发送装置及数据发送方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1691590A (zh) * 2004-04-19 2005-11-02 华为技术有限公司 无线链路数据传输中接收端发送窗口大小调整信息的方法
CN101043446A (zh) * 2007-03-08 2007-09-26 华为技术有限公司 数据转发处理的方法和装置
CN101207570A (zh) * 2007-11-26 2008-06-25 上海华为技术有限公司 数据传输方法、数据发送速率控制方法及基站
US20120009876A1 (en) * 2009-03-13 2012-01-12 St-Ericsson Sa Process of Audio Data Exchanges of Information Between a Central Unit and a Bluetooth Controller
CN102244856A (zh) * 2010-05-13 2011-11-16 电信科学技术研究院 一种mtc设备下行数据传输控制方法和设备

Also Published As

Publication number Publication date
CN104023379B (zh) 2017-11-17
CN104023379A (zh) 2014-09-03

Similar Documents

Publication Publication Date Title
WO2014131335A1 (zh) 一种数据传输方法及数据转发装置
JP4615615B2 (ja) 間欠受信のための明示的なレイヤ2シグナリング
WO2018170626A1 (zh) 一种连接恢复方法、接入和移动性管理功能实体及用户设备
CN104065464B (zh) 一种调整tcp连接的初始窗口大小的方法和装置
WO2013020379A1 (zh) 节电方法及装置
TW200931854A (en) Method of receiving signaling and related communication device
JP2009038803A5 (zh)
WO2009100668A1 (zh) 一种触发资源配置的方法、装置及系统
WO2013123902A1 (zh) 数据传输方法、接入点和站点
CN103037391B (zh) 基于数据流预测的低功耗rrc协议优化控制方法
CN101998448A (zh) 一种流量控制方法、装置及终端
CN102883420B (zh) 一种睡眠模式下的传输调度方法和装置
WO2015127599A1 (zh) 上行资源分配方法、接入终端及接入点
TWI330968B (en) Method and apparatus of communication in a wireless communications system
CN103974339B (zh) 一种数据缓存的方法和装置
WO2015113199A1 (zh) 一种非连续接收的控制方法及装置
CN114584707B (zh) 摄像机中无线通信组件功耗的控制方法
CN102595512B (zh) 一种报文缓存方法及接入点
WO2011020365A1 (zh) 一种睡眠模式下业务数据传输的方法及控制装置
CN102065483B (zh) 流量控制方法、装置
Kwon et al. An energy-efficient multimedia streaming transport protocol over heterogeneous wireless networks
TWI519180B (zh) A method of dynamically adjusting a radio resource control timer
CN104768229B (zh) 一种下行缓存数据上报方法及设备
WO2015061940A1 (zh) Rrc状态控制方法、装置及设备
JP2015505210A (ja) パケットを処理する方法、システム、およびコンピュータプログラム製品

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

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

Country of ref document: EP

Kind code of ref document: A1