WO2020042884A1 - 用于物联网设备间的数据传输方法、系统和电子设备 - Google Patents

用于物联网设备间的数据传输方法、系统和电子设备 Download PDF

Info

Publication number
WO2020042884A1
WO2020042884A1 PCT/CN2019/099614 CN2019099614W WO2020042884A1 WO 2020042884 A1 WO2020042884 A1 WO 2020042884A1 CN 2019099614 W CN2019099614 W CN 2019099614W WO 2020042884 A1 WO2020042884 A1 WO 2020042884A1
Authority
WO
WIPO (PCT)
Prior art keywords
transmitted
data
byte
verification
operation result
Prior art date
Application number
PCT/CN2019/099614
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 WO2020042884A1 publication Critical patent/WO2020042884A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1806Go-back-N protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/26Special purpose or proprietary protocols or architectures

Definitions

  • the present disclosure relates to the field of Internet technology, and more particularly, to a method, system, and electronic device for data transmission between IoT devices.
  • the Internet of Things is an important part of the new generation of information technology. It is widely used in the convergence of networks through communication perception technologies such as intelligent perception, identification technology and pervasive computing. However, in the process of implementing the present invention, the inventor found that there is a problem of limited device resources in the existing Internet of Things technology, that is, the device has only a small amount of memory and limited computing power. Cause a great burden.
  • the present disclosure provides a method, system, and electronic device for data transmission between IoT devices.
  • An aspect of the present disclosure provides a method for data transmission between IoT devices, including processing data to be transmitted, generating a verification identifier, and sending the data to be transmitted and the verification identifier using an unreliable transmission protocol, so that a receiving end Based on the verification identifier, whether the data to be transmitted is successfully transmitted, and if feedback information that the data to be transmitted is successfully transmitted is not received within a predetermined time, the data to be transmitted is retransmitted.
  • the unreliable transmission protocol includes a user datagram protocol.
  • the data to be transmitted includes N bytes
  • the verification identifier includes a seed byte and a verification byte
  • processing the data to be transmitted to generate a verification identifier includes determining a seed byte and a The operation result of the first byte in the data to be transmitted.
  • the predetermined operation result and the current operation result of the current byte are determined by the predetermined algorithm, and the last operation result is obtained.
  • the method further includes identifying a non-transmittable portion of the data, and replacing the non-transmittable portion of the data with specific data based on a predetermined rule.
  • Another aspect of the present disclosure provides a method for data transmission between IoT devices, including receiving the data to be transmitted and the verification identifier through an unreliable transmission protocol, and verifying the data to be transmitted based on the verification identifier. Whether the transmission is successful, and if the data to be transmitted is successfully transmitted, sending feedback information to the sending end.
  • the unreliable transmission protocol includes a user datagram protocol.
  • the data to be transmitted includes N bytes
  • the verification identifier includes a seed byte and a verification byte
  • the verification of whether the data to be transmitted is successfully transmitted based on the verification identifier includes, by a predetermined
  • the algorithm determines the operation result of the seed byte and the first byte in the data to be transmitted.
  • the predetermined operation determines the current operation result and the current operation of the current byte As a result, and by verifying whether the last operation result is the same as the verification byte, it is determined whether the data to be transmitted is successfully transmitted.
  • the method further includes restoring specific data to a portion that cannot be transmitted based on a predetermined rule.
  • a data transmission system for an IoT device including a processing module, a sending module, and a retransmission module.
  • the processing module is configured to process the data to be transmitted and generate a verification identifier.
  • the sending module is configured to send the data to be transmitted and the verification identifier by using an unreliable transmission protocol, so that the receiving end can verify whether the data to be transmitted is successfully transmitted based on the verification identifier.
  • a retransmission module is configured to resend the data to be transmitted if feedback information that the data to be transmitted is successfully transmitted is not received within a predetermined time.
  • the unreliable transmission protocol includes a user datagram protocol.
  • the data to be transmitted includes N bytes
  • the verification identifier includes a seed byte and a verification byte
  • the processing module includes a first determination sub-module and a second determination sub-module.
  • the first determining submodule is configured to determine an operation result of the seed byte and the first byte in the data to be transmitted through a predetermined algorithm.
  • the second determining submodule is configured to determine, for the second to Nth bytes, the previous operation result and the current operation result of the current byte through the predetermined algorithm, and use the last operation result as the verification byte.
  • the system further includes a recognition module and a reverse sense module.
  • An identification module configured to identify a portion of the data that cannot be transmitted.
  • An inversion module is used to replace a part of the data that cannot be transmitted based on a predetermined rule.
  • a data transmission system for an IoT device including a receiving module, a verification module, and a notification module.
  • the receiving module is configured to receive the data to be transmitted and the verification identifier through an unreliable transmission protocol.
  • a verification module is configured to verify whether the data to be transmitted is successfully transmitted based on the verification identifier.
  • the notification module is configured to send feedback information to the sending end if the data to be transmitted is successfully transmitted.
  • the unreliable transmission protocol includes a user datagram protocol.
  • the data to be transmitted includes N bytes
  • the verification identifier includes a seed byte and a verification byte
  • the verification module includes a third determination submodule, a fourth determination submodule, and a verification submodule.
  • the third determining submodule is configured to determine an operation result of the seed byte and the first byte in the data to be transmitted through a predetermined algorithm.
  • a fourth determination submodule is configured to determine, for the second to Nth bytes, the previous operation result and the current operation result of the current byte through the predetermined algorithm.
  • the verification submodule is configured to determine whether the data to be transmitted is successfully transmitted by verifying whether the last operation result is the same as the verification byte.
  • the system further includes an escape module for restoring the specific data to the non-transmittable portion based on a predetermined rule.
  • Another aspect of the present disclosure provides an electronic device including at least one processor and at least one memory for storing one or more computer-readable instructions, wherein when the one or more computer-readable instructions are When the at least one processor executes, the processor is caused to execute the method as described above.
  • Another aspect of the present disclosure provides a computer-readable medium having computer-readable instructions stored thereon that, when executed, cause a processor to perform a method as described above.
  • Another aspect of the present disclosure provides a computer program including computer-executable instructions that, when executed, implement the method as described above.
  • the method reduces the data transmission burden of the IoT device through a lightweight and unreliable transmission protocol and a mechanism for verifying retransmission, while ensuring the security of data transmission.
  • FIG. 1 schematically illustrates an application scenario of a data transmission method between IoT devices according to an embodiment of the present disclosure
  • FIG. 2 schematically illustrates a flowchart of a method for data transmission between IoT devices according to an embodiment of the present disclosure
  • 3A schematically illustrates a flowchart of processing a data to be transmitted and generating a verification identifier according to an embodiment of the present disclosure
  • 3B schematically illustrates a flowchart of processing a data to be transmitted and generating a verification identifier according to an embodiment of the present disclosure
  • 3C schematically illustrates a schematic diagram of processing a data to be transmitted and generating a verification identifier according to an embodiment of the present disclosure
  • FIG. 3D schematically illustrates a flowchart of verifying whether the data to be transmitted is successfully transmitted based on the verification identifier according to an embodiment of the present disclosure
  • FIG. 5 schematically illustrates a flowchart for verifying whether the data to be transmitted is successfully transmitted based on the verification identifier according to an embodiment of the present disclosure
  • FIG. 6 schematically illustrates a block diagram of a data transmission system for IoT devices according to an embodiment of the present disclosure
  • FIG. 7 schematically illustrates a block diagram of a processing module according to an embodiment of the present disclosure
  • FIG. 8 schematically illustrates a block diagram of a data transmission system for IoT devices according to another embodiment of the present disclosure
  • FIG. 9 schematically illustrates a block diagram of a verification module according to an embodiment of the present disclosure.
  • FIG. 10 schematically illustrates a block diagram of a computer system suitable for implementing a method and system for data transmission between IoT devices according to an embodiment of the present disclosure.
  • the TCP-based HTTP protocol or an IoT communication device that relies on a third-party framework for transmission.
  • the data packet is relatively large, and it appears to consume a lot of resources in the Internet. Therefore, the corresponding equipment cost is also increased. Some equipment resources are limited. Unsupported, resulting in limitations of device use.
  • An embodiment of the present disclosure provides a method for data transmission between IoT devices, including processing data to be transmitted, generating a verification identifier, and sending the data to be transmitted and the verification identifier using an unreliable transmission protocol, so that a receiving end Based on the verification identifier, whether the data to be transmitted is successfully transmitted, and if feedback information that the data to be transmitted is successfully transmitted is not received within a predetermined time, the data to be transmitted is retransmitted.
  • Adopting this method not only retains the advantages of fast transmission speed of unreliable transmission protocols, but also does not need to maintain long connections, and also realizes the advantages of transmission security. At the same time, this method can be used uniformly when different IoT devices transmit data Transfer data and meet the requirements of various devices.
  • FIG. 1 schematically illustrates an application scenario of a method for data transmission between IoT devices according to an embodiment of the present disclosure. It should be noted that FIG. 1 is only an example in which the embodiments of the present disclosure can be applied to help those skilled in the art to understand the technical content of the present disclosure, but it does not mean that the embodiments of the present disclosure cannot be applied to other devices and systems. , Environment or scene.
  • the Internet of Things system includes, for example, a plurality of acquisition devices 111 and 112, a main communication device 120, an agent service system 130, a business system 140, and the like.
  • the acquisition devices 111 and 112 may be, for example, acquisition devices having an infrared sensor or a WIFI probe.
  • the main communication device 120 may be, for example, a dedicated device in a certain working place, which is used to interact with a service system, and is responsible for data encoding and transmission and receiving a feedback message from a server.
  • the proxy service system 130 may include multiple proxy servers, for example, it may provide a load balancing service, and some offloading logic may be set in front of the business system.
  • the business system 140 may include, for example, an application server 141, a database server 142, a management server 143, and the like, for providing various business services.
  • the method for data transmission between IoT devices provided by the embodiments of the present disclosure may generally be executed by at least one of the main communication device 120, the proxy service system 130, or the business system 140, so that the main communication device and the Data transmission is implemented between the proxy service systems, between the proxy service system and the business system, or between various servers within the business system.
  • the data transmission system for IoT devices provided by the embodiments of the present disclosure may generally be set in at least one of the main communication device 120, the proxy service system 130, or the business system 140.
  • the method for data transmission between IoT devices provided by the embodiments of the present disclosure may also be different from the main communication device 120, the proxy service system 130, or the business system 140, and can communicate with the main communication device 120, the proxy service system 130, or the business system. 140 communication server or server cluster is executed.
  • the data transmission system provided between the IoT devices provided in the embodiments of the present disclosure may also be set to be different from the main communication device 120, the proxy service system 130, or the business system 140, and capable of communicating with the main communication device 120, the proxy service system. 130 or the business system 140 communicates with a server or server cluster.
  • FIG. 1 It should be understood that the number of various devices in FIG. 1 is merely exemplary. There can be any number of devices depending on implementation needs.
  • FIG. 2 schematically illustrates a flowchart of a method for data transmission between IoT devices according to an embodiment of the present disclosure.
  • the method includes operations S210 to S230.
  • the data to be transmitted is processed to generate a verification identifier.
  • the unreliable transmission protocol is used to send the data to be transmitted and the verification identifier, so that the receiving end can verify whether the data to be transmitted is successfully transmitted based on the verification identifier.
  • the unreliable transmission protocol may include, for example, a User Datagram Protocol (UDP).
  • UDP User Datagram Protocol
  • the method reduces the data transmission burden of the IoT device through a lightweight and unreliable transmission protocol and a mechanism for verifying retransmission, while ensuring the security of data transmission.
  • the receiving end verifies whether the data to be transmitted is successfully transmitted based on the verification identifier, for example, verification may be performed by means of a cyclic redundancy check.
  • the embodiments of the present disclosure also provide a convenient verification method.
  • the verification identifier in a case where the data to be transmitted includes N bytes, the verification identifier includes a seed byte and a verification byte. The method of the embodiment of the present disclosure is described below with reference to FIG. 3A.
  • FIG. 3A schematically illustrates a flowchart of processing a data to be transmitted and generating a verification identifier according to an embodiment of the present disclosure.
  • the method includes operations S310 and S320.
  • an operation result of the seed byte and the first byte in the data to be transmitted is determined through a predetermined algorithm.
  • FIG. 3B schematically illustrates a flowchart of processing data to be transmitted and generating a verification identifier according to an embodiment of the present disclosure.
  • FIG. 3C illustrates processing of data to be transmitted and generating Schematic diagram of verification identification.
  • the method includes operations S311, S312, S321, S322, and S323.
  • a seed byte is obtained.
  • the seed byte may be, for example, a predetermined value or randomly generated.
  • a predetermined operation is performed on the seed byte and the first byte in the data to be transmitted to obtain an operation result.
  • the predetermined operation may be, for example, an exclusive-OR operation. For example, if the seed byte is 01100111 and the first byte is 11101101, the operation result is 10001010.
  • the predetermined operation may, for example, add another operation on the basis of a simple operation such as an exclusive OR operation.
  • a check table may be introduced. At the end of each XOR operation, the operation result is used as the index value, and the corresponding value in the check table is used as the operation result of the current operation.
  • operation S321 it is determined whether there is a next byte, and if it exists, operation S322 is continued, otherwise, the operation jumps to operation S323.
  • operation S322 the next byte is read and a predetermined budget is obtained with the previous operation result to obtain the current operation result, and then the operation proceeds to operation S321.
  • the current operation result is used as the verification byte.
  • an operation result is obtained as a check byte.
  • the receiving end that sends the seed byte and the check byte together with the data to be transmitted enables the receiving end to verify the integrity of the data based on the same algorithm.
  • FIG. 3D schematically illustrates a flowchart of verifying whether the data to be transmitted is successfully transmitted based on the verification identifier according to an embodiment of the present disclosure.
  • the method includes operations S511, S512, S521, S522, S531, and S532.
  • the operations S511, S512, S521, and S522 are similar to the operations S311, S312, S321, and S322, respectively, and are not described herein again.
  • the method further includes identifying a non-transmittable portion of the data, and replacing the non-transmittable portion of the data with specific data based on a predetermined rule.
  • the unreliable transmission protocol does not support the transmission of certain characters.
  • the method of the embodiment of the present disclosure can convert these unsupported characters into characters that can be transmitted according to a predetermined rule. After transmission, the characters are restored through the same rules. .
  • FIG. 4 schematically illustrates a flowchart of a method for data transmission between IoT devices according to another embodiment of the present disclosure.
  • the method includes operations S410-S430.
  • the data to be transmitted and the verification identifier are received through an unreliable transmission protocol.
  • the unreliable transmission protocol may include, for example, a User Datagram Protocol (UDP).
  • UDP User Datagram Protocol
  • the verification identifier in a case where the data to be transmitted includes N bytes, includes a seed byte and a verification byte. The method of the embodiment of the present disclosure is described below with reference to FIG. 5.
  • FIG. 5 schematically illustrates a flowchart of verifying whether the data to be transmitted is successfully transmitted based on the verification identifier according to an embodiment of the present disclosure.
  • the method includes operations S510 to S530.
  • an operation result of the seed byte and the first byte in the data to be transmitted is determined through a predetermined algorithm.
  • operation S530 it is determined whether the data to be transmitted is successfully transmitted by verifying whether the last operation result is the same as the verification byte.
  • the method further includes restoring specific data to a portion that cannot be transmitted based on a predetermined rule.
  • FIG. 6 schematically illustrates a block diagram of a data transmission system 600 for inter-IoT devices according to an embodiment of the present disclosure.
  • the data transmission system 600 for inter-IoT devices includes a processing module 610, a sending module 620, and a retransmission module 630.
  • the processing module 610 for example, performs the operation S210 described above with reference to FIG. 2 for processing the data to be transmitted and generating a verification identifier.
  • the sending module 620 performs the operation S220 described above with reference to FIG. 2 for sending the data to be transmitted and the verification identifier using an unreliable transmission protocol, so that the receiving end can verify the data to be transmitted based on the verification identifier. Whether the transmission was successful.
  • the retransmission module 630 for example, performs operation S230 described above with reference to FIG. 2, and is configured to resend the data to be transmitted in a case where feedback information that the data to be transmitted is successfully transmitted is not received within a predetermined time.
  • the unreliable transmission protocol includes a user datagram protocol.
  • the data to be transmitted includes N bytes
  • the verification identifier includes a seed byte and a verification byte
  • the processing module includes a first determination sub-module and a second determination sub-module.
  • FIG. 7 schematically illustrates a block diagram of a processing module 610 according to an embodiment of the present disclosure.
  • the processing module 610 includes a first determination sub-module 710 and a second determination sub-module 720.
  • the first determining sub-module 710 performs the operation S310 described above with reference to FIG. 3A, and is configured to determine an operation result of the seed byte and the first byte in the data to be transmitted by using a predetermined algorithm.
  • the second determining sub-module 720 performs the operation S320 described above with reference to FIG. 3A, and is configured to determine, for the second to Nth bytes, the previous operation result and the current operation result of the current byte through the predetermined algorithm And use the last operation result as the verification byte.
  • the system further includes a recognition module and a reverse sense module.
  • An identification module configured to identify a portion of the data that cannot be transmitted.
  • An inversion module is used to replace a part of the data that cannot be transmitted based on a predetermined rule.
  • FIG. 8 schematically illustrates a block diagram of a data transmission system 800 for IoT devices according to another embodiment of the present disclosure.
  • the data transmission system 800 for inter-IoT devices includes a receiving module 810, a verification module 820, and a notification module 830.
  • the receiving module 810 for example, performs the operation S410 described above with reference to FIG. 4, and is configured to receive the data to be transmitted and the verification identifier through an unreliable transmission protocol.
  • the verification module 820 for example, performs operation S420 described above with reference to FIG. 4, and is configured to verify whether the data to be transmitted is successfully transmitted based on the verification identifier.
  • the notification module 830 for example, performs the operation S430 described above with reference to FIG. 4, and is configured to send feedback information to the sending end if the data to be transmitted is successfully transmitted.
  • the unreliable transmission protocol includes a user datagram protocol.
  • the data to be transmitted includes N bytes
  • the verification identifier includes a seed byte and a verification byte
  • the verification module includes a third determination submodule, a fourth determination submodule, and a verification submodule.
  • FIG. 9 schematically illustrates a block diagram of a verification module 820 according to an embodiment of the present disclosure.
  • the verification module 820 includes a third determination sub-module 910, a fourth determination sub-module 920, and a verification sub-module 930.
  • the third determining submodule for example, performs operation S510 described above with reference to FIG. 5, and is configured to determine an operation result of the seed byte and the first byte in the data to be transmitted by using a predetermined algorithm.
  • the fourth determining submodule performs the operation S520 described above with reference to FIG. 5, and is configured to determine, for the second to Nth bytes, the previous operation result and the current operation result of the current byte through the predetermined algorithm.
  • the verification submodule for example, performs operation S530 described above with reference to FIG. 5, and is used to determine whether the data to be transmitted is successfully transmitted by verifying whether the last operation result is the same as the verification byte.
  • the system further includes an escape module for restoring the specific data to the non-transmittable portion based on a predetermined rule.
  • At least some of the modules, sub-modules, units, sub-units, or at least a part of any of the functions according to the embodiments of the present disclosure may be implemented in one module. Any one or more of the modules, sub-modules, units, and sub-units according to the embodiments of the present disclosure may be implemented by being split into multiple modules.
  • any one or more of the modules, sub-modules, units, and sub-units according to the embodiments of the present disclosure may be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), System-on-chip, system-on-substrate, system-on-package, application-specific integrated circuit (ASIC), or any other reasonable means of hardware or firmware that can integrate or package the circuit, or software, hardware, and firmware Any one of the implementation manners or an appropriate combination of any of them may be implemented.
  • FPGA field programmable gate array
  • PLA programmable logic array
  • ASIC application-specific integrated circuit
  • any one of the implementation manners or an appropriate combination of any of them may be implemented.
  • one or more of the modules, sub-modules, units, and sub-units according to the embodiments of the present disclosure may be at least partially implemented as computer program modules, and when the computer program modules are executed, corresponding functions may be performed.
  • the processing module 610, the sending module 620, the retransmission module 630, the first determination submodule 710, the second determination submodule 720, the identification module, the reverse module, the receiving module 810, the verification module 820, the notification module 830, the first Any number of the three determination sub-modules, the fourth determination sub-module, the verification sub-module, and the escape module can be combined into one module, or any one of them can be split into multiple modules.
  • at least part of the functions of one or more of these modules may be combined with at least part of the functions of other modules and implemented in one module.
  • the processing module 610, the sending module 620, the retransmission module 630, the first determination submodule 710, the second determination submodule 720, the identification module, the reverse module, the receiving module 810, the verification module 820, At least one of the notification module 830, the third determination submodule, the fourth determination submodule, the verification submodule, and the escape module may be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), programmable logic Array (PLA), system-on-chip, system-on-substrate, system-on-package, application-specific integrated circuit (ASIC), or any other reasonable means of integrating or packaging the circuit, such as hardware or firmware, or software , Hardware, and firmware in any one of the three implementations or any appropriate combination of them.
  • FPGA field programmable gate array
  • PLA programmable logic Array
  • ASIC application-specific integrated circuit
  • the processing module 610, the sending module 620, the retransmission module 630, the first determination submodule 710, the second determination submodule 720, the identification module, the reverse module, the receiving module 810, the verification module 820, the notification module 830, the first At least one of the three determination submodules, the fourth determination submodule, the verification submodule, and the escape module may be at least partially implemented as a computer program module, and when the computer program module is executed, a corresponding function may be performed.
  • FIG. 10 schematically illustrates a block diagram of a computer system 1000 suitable for implementing a method and system for data transmission between IoT devices according to an embodiment of the present disclosure.
  • the computer system shown in FIG. 10 is only an example, and should not impose any limitation on the functions and scope of use of the embodiments of the present disclosure.
  • the computer system shown in FIG. 10 may be implemented as an electronic device including at least one processor (for example, the processor 1001) and at least one memory (for example, the storage section 1008).
  • a computer system 1000 includes a processor 1001 that can be loaded into a random access memory (RAM) 1003 according to a program stored in a read-only memory (ROM) 1002 or from a storage portion 1008.
  • the program performs various appropriate actions and processes.
  • the processor 1001 may include, for example, a general-purpose microprocessor (such as a CPU), an instruction set processor and / or an associated chipset and / or a special-purpose microprocessor (such as an application-specific integrated circuit (ASIC)), and so on.
  • the processor 1001 may further include on-board memory for cache use.
  • the processor 1001 may include a single processing unit or multiple processing units for performing different actions of the method flow according to the embodiment of the present disclosure.
  • the processors 1001, ROM 1002, and RAM 1003 are connected to each other through a bus 1004.
  • the processor 1001 executes various operations of the method flow according to the embodiment of the present disclosure by executing programs in the ROM 1002 and / or the RAM 1003. It should be noted that the program may also be stored in one or more memories other than the ROM 1002 and the RAM 1003.
  • the processor 1001 may also execute various operations of the method flow according to the embodiment of the present disclosure by executing a program stored in the one or more memories.
  • the system 1000 may further include an input / output (I / O) interface 1005, and the input / output (I / O) interface 1005 is also connected to the bus 1004.
  • the system 1000 may also include one or more of the following components connected to the I / O interface 1005: an input portion 1006 including a keyboard, a mouse, and the like; including, such as a cathode ray tube (CRT), a liquid crystal display (LCD), and the like, and a speaker
  • the output section 1007 includes a storage section 1008 including a hard disk and the like; and a communication section 1009 including a network interface card such as a LAN card, a modem, and the like.
  • the communication section 1009 performs communication processing via a network such as the Internet.
  • the driver 1010 is also connected to the I / O interface 1005 as needed.
  • a removable medium 1011 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1010 as needed, so that a computer program read therefrom is installed into the storage section 1008 as needed.
  • the method flow according to the embodiment of the present disclosure may be implemented as a computer software program.
  • embodiments of the present disclosure include a computer program product including a computer program carried on a computer-readable medium, the computer program containing program code for performing a method shown in a flowchart.
  • the computer program may be downloaded and installed from a network through the communication section 1009, and / or installed from a removable medium 1011.
  • the processor 1001 When the computer program is executed by the processor 1001, the above functions defined in the system of the embodiment of the present disclosure are executed.
  • the systems, devices, devices, modules, units, and the like described above may be implemented by computer program modules.
  • the present disclosure also provides a computer-readable medium, which may be included in the device / apparatus / system described in the above embodiments; or it may exist alone without being assembled into the device / apparatus / System.
  • the computer-readable medium described above carries one or more programs, and when the one or more programs are executed, the method according to the embodiment of the present disclosure is implemented.
  • the computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium or any combination of the foregoing.
  • the computer-readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections with one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable Programming read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the foregoing.
  • a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in combination with an instruction execution system, apparatus, or device.
  • a computer-readable signal medium may include a data signal that is included in baseband or propagated as part of a carrier wave, and which carries computer-readable program code. Such a propagated data signal may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing.
  • the computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium, and the computer-readable medium may send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device .
  • the program code contained on the computer-readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wired, optical fiber cable, radio frequency signals, etc., or any suitable combination of the foregoing.
  • the computer-readable medium may include one or more memories other than the ROM 1002 and / or the RAM 1003 and / or the ROM 1002 and the RAM 1003 described above.
  • each block in the flowchart or block diagram may represent a module, a program segment, or a part of code, which contains one or more of the logic functions used to implement the specified logic.
  • Executable instructions may occur in a different order than those marked in the drawings. For example, two successively represented boxes may actually be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending on the functions involved.
  • each block in the block diagram or flowchart, and combinations of blocks in the block diagram or flowchart can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with A combination of dedicated hardware and computer instructions.

Abstract

本公开提供了一种用于物联网设备间的数据传输方法,包括处理待传输数据,生成验证标识,采用不可靠传输协议发送所述待传输数据以及所述验证标识,使接收端能够基于所述验证标识验证所述待传输数据是否传输成功,以及在预定时间内未接收到所述待传输数据传输成功的反馈信息的情况下,重新发送所述待传输数据。本公开还提供了一种用于物联网设备间的数据传输系统、一种电子设备以及一种计算机可读介质。

Description

用于物联网设备间的数据传输方法、系统和电子设备 技术领域
本公开涉及互联网技术领域,更具体地,涉及一种用于物联网设备间的数据传输方法、系统和电子设备。
背景技术
物联网是新一代信息技术的重要组成部分,通过智能感知、识别技术与普适计算等通信感知技术,广泛应用于网络的融合中。然而,在实现本发明的过程中,发明人发现,现有物联网技术中存在设备资源受限的问题,即设备只有少量的内存和有限的计算能力,现有的数据传输方法对物联网设备造成很大负担。
发明内容
有鉴于此,本公开提供了一种用于物联网设备间的数据传输方法、系统和电子设备。
本公开的一个方面提供了一种用于物联网设备间的数据传输方法,包括处理待传输数据,生成验证标识,采用不可靠传输协议发送所述待传输数据以及所述验证标识,使接收端能够基于所述验证标识验证所述待传输数据是否传输成功,以及在预定时间内未接收到所述待传输数据传输成功的反馈信息的情况下,重新发送所述待传输数据。
根据本公开实施例,所述不可靠传输协议包括用户数据报协议。
根据本公开实施例,所述待传输数据包括N个字节,所述验证标识包括种子字节和验证字节,所述处理待传输数据,生成验证标识包括,通过预定算法确定种子字节与待传输数据中的第1个字节的运算结果,对于第2个到第N个字节,通过所述预定算法确定前次运算结果与当前字节的当前运算结果,并将最后一个运算结果作为验证字节。
根据本公开实施例,所述方法还包括识别所述数据中不能传输的部分,以及基于预定规则,使用特定数据替代所述数据中不能传输的部分。
本公开的另一个方面提供了一种用于物联网设备间的数据传输方法,包括通过不可靠传输协议接收所述待传输数据以及所述验证标识,基于所述验证标识验证所述待传输数据是否传输成功,以及在所述待传输数据传输成功的情况下,向发送端发送反馈信息。
根据本公开实施例,所述不可靠传输协议包括用户数据报协议。
根据本公开实施例,所述待传输数据包括N个字节,所述验证标识包括种子字节和验证字节,所述基于所述验证标识验证所述待传输数据是否传输成功包括,通过预定算法确定所 述种子字节与待传输数据中的第1个字节的运算结果,对于第2个到第N个字节,通过所述预定算法确定前次运算结果与当前字节的当前运算结果,以及通过验证最后一个运算结果是否与所述验证字节相同,确定所述待传输数据是否传输成功。
根据本公开实施例,所述方法还包括基于预定规则,将特定数据还原为不能传输的部分。
本公开的另一个方面提供了一种用于物联网设备间的数据传输系统,包括处理模块、发送模块以及重发模块。处理模块,用于处理待传输数据,生成验证标识。发送模块,用于采用不可靠传输协议发送所述待传输数据以及所述验证标识,使接收端能够基于所述验证标识验证所述待传输数据是否传输成功。重发模块,用于在预定时间内未接收到所述待传输数据传输成功的反馈信息的情况下,重新发送所述待传输数据。
根据本公开实施例,所述不可靠传输协议包括用户数据报协议。
根据本公开实施例,所述待传输数据包括N个字节,所述验证标识包括种子字节和验证字节,所述处理模块包括第一确定子模块以及第二确定子模块。第一确定子模块,用于通过预定算法确定种子字节与待传输数据中的第1个字节的运算结果。第二确定子模块,用于对于第2个到第N个字节,通过所述预定算法确定前次运算结果与当前字节的当前运算结果,并将最后一个运算结果作为验证字节。
根据本公开实施例,所述系统还包括识别模块以及反转义模块。识别模块,用于识别所述数据中不能传输的部分。反转义模块,用于基于预定规则,使用特定数据替代所述数据中不能传输的部分。
本公开的另一个方面提供了一种用于物联网设备间的数据传输系统,包括接收模块、验证模块以及通知模块。接收模块,用于通过不可靠传输协议接收所述待传输数据以及所述验证标识。验证模块,用于基于所述验证标识验证所述待传输数据是否传输成功。通知模块,用于在所述待传输数据传输成功的情况下,向发送端发送反馈信息。
根据本公开实施例,所述不可靠传输协议包括用户数据报协议。
根据本公开实施例,所述待传输数据包括N个字节,所述验证标识包括种子字节和验证字节,所述验证模块包括第三确定子模块、第四确定子模块以及验证子模块。第三确定子模块,用于通过预定算法确定所述种子字节与待传输数据中的第1个字节的运算结果。第四确定子模块,用于对于第2个到第N个字节,通过所述预定算法确定前次运算结果与当前字节的当前运算结果。验证子模块,用于通过验证最后一个运算结果是否与所述验证字节相同,确定所述待传输数据是否传输成功。
根据本公开实施例,所述系统还包括转义模块,用于基于预定规则,将所述特定数据还原为所述不能传输的部分。
本公开的另一个方面提供了一种电子设备,包括,至少一个处理器以及至少一个存储器,用于存储一个或多个计算机可读指令,其中,当所述一个或多个计算机可读指令被所述至少一个处理器执行时,使得所述处理器执行如上所述的方法。
本公开的另一个方面提供了一种计算机可读介质,其上存储有计算机可读指令,该指令被执行时使处理器执行如上所述的方法。
本公开的另一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
该方法通过轻量的不可靠传输协议以及验证重发的机制,降低了物联网设备的数据传输负担,同时保证的数据传输的安全性。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的用于物联网设备间的数据传输方法的应用场景;
图2示意性示出了根据本公开实施例的用于物联网设备间的数据传输方法的流程图;
图3A示意性示出了根据本公开实施例的处理待传输数据,生成验证标识的流程图;
图3B示意性示出了根据本公开实施例的处理待传输数据,生成验证标识的流程图;
图3C示意性示出了根据本公开实施例的处理待传输数据,生成验证标识的示意图;
图3D示意性示出了根据本公开实施例的接收端基于所述验证标识验证所述待传输数据是否传输成功的流程图;
图4示意性示出了根据本公开另一实施例的用于物联网设备间的数据传输方法的流程图;
图5示意性示出了根据本公开实施例的基于所述验证标识验证所述待传输数据是否传输成功的流程图;
图6示意性示出了根据本公开实施例的用于物联网设备间的数据传输系统的框图;
图7示意性示出了根据本公开实施例的处理模块的框图;
图8示意性示出了根据本公开另一实施例的用于物联网设备间的数据传输系统的框图;
图9示意性示出了根据本公开实施例的验证模块的框图;以及
图10示意性示出了根据本公开实施例的适于实现用于物联网设备间的数据传输方法和系统的计算机系统的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。本领域技术人员还应理解,实质上任意表示两个或更多可选项目的转折连词和/或短语,无论是在说明书、权利要求书还是附图中,都应被理解为给出了包括这些项目之一、这些项目任一方、或两个项目的可能性。例如,短语“A或B”应当被理解为包括“A”或“B”、或“A和B”的可能性。
基于TCP的HTTP协议或者是依赖第三方框架传输的物联网通信设备,数据包比较大,应用在互联网中就显得庞大耗费资源,因此也提高了相应的设备成本,有的设备资源所限,则不能支持,造成设备使用的局限性。
本公开的实施例提供了一种用于物联网设备间的数据传输方法,包括处理待传输数据,生成验证标识,采用不可靠传输协议发送所述待传输数据以及所述验证标识,使接收端能够基于所述验证标识验证所述待传输数据是否传输成功,以及在预定时间内未接收到所述待传输数据传输成功的反馈信息的情况下,重新发送所述待传输数据。
采用这种方法既保留了不可靠传输协议传输速度快,且不用维护长连接的优点,又实现了传输安全的优点,与此同时,在不同的物联网设备传输数据时,可以统一采用此方法传输 数据并能够满足各种设备的要求。
图1示意性示出了根据本公开实施例的用于物联网设备间的数据传输方法的应用场景。需要注意的是,图1所示仅为可以应用本公开实施例的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,物联网系统例如包括多个采集设备111、112,主通信设备120,代理服务系统130,业务系统140等。其中,采集设备111和112例如可以是具有红外感应或WIFI探针的采集设备。主通信设备120例如可以是一定工作场合的专用设备,用于和业务系统交互,负责数据编码传输以及接收服务器的反馈消息。代理服务系统130可以包括多个代理服务器,例如可以提供负载均衡的服务,也可以在业务系统前设置一些分流的逻辑等。业务系统140例如可以包括应用服务器141、数据库服务器142、管理服务器143等,用于提供各种业务服务。
需要说明的是,本公开实施例所提供的用于物联网设备间的数据传输方法一般可以由主通信设备120、代理服务系统130或业务系统140中的至少一个执行,以在主通信设备与代理服务系统之间、代理服务系统与业务系统之间或者业务系统内部的各个服务器之间实现数据传输。相应地,本公开实施例所提供的用于物联网设备间的数据传输系统一般可以设置于主通信设备120、代理服务系统130或业务系统140中的至少一个中。本公开实施例所提供的用于物联网设备间的数据传输方法也可以由不同于主通信设备120、代理服务系统130或业务系统140且能够与主通信设备120、代理服务系统130或业务系统140通信的服务器或服务器集群执行。相应地,本公开实施例所提供的用于物联网设备间的数据传输系统也可以设置于不同于主通信设备120、代理服务系统130或业务系统140且能够与主通信设备120、代理服务系统130或业务系统140通信的服务器或服务器集群中。
应该理解,图1中的各种设备的数目仅仅是示意性的。根据实现需要,可以具有任意数目的设备。
图2示意性示出了根据本公开实施例的用于物联网设备间的数据传输方法的流程图。
如图2所示,该方法包括操作S210~S230。
在操作S210,处理待传输数据,生成验证标识。
在操作S220,采用不可靠传输协议发送所述待传输数据以及所述验证标识,使接收端能够基于所述验证标识验证所述待传输数据是否传输成功。根据本公开实施例,所述不可靠传输协议例如可以包括用户数据报协议(UDP)。
在操作S230,在预定时间内未接收到所述待传输数据传输成功的反馈信息的情况下,重新发送所述待传输数据。
该方法通过轻量的不可靠传输协议以及验证重发的机制,降低了物联网设备的数据传输负担,同时保证的数据传输的安全性。
根据本公开实施例,所述接收端基于所述验证标识验证所述待传输数据是否传输成功,例如可以是通过循环冗余校验的方式进行验证。
本公开实施例还提供了一种方便的校验方式。根据本公开实施例,在所述待传输数据包括N个字节的情况下,所述验证标识包括种子字节和验证字节。下面结合图3A对本公开实施例的方法进行说明。
图3A示意性示出了根据本公开实施例的处理待传输数据,生成验证标识的流程图。
如图3A所示,该方法包括操作S310和S320。
在操作S310,通过预定算法确定种子字节与待传输数据中的第1个字节的运算结果。
在操作S320,对于第2个到第N个字节,通过所述预定算法确定前次运算结果与当前字节的当前运算结果,并将最后一个运算结果作为验证字节。
请参考图3B和图3C,图3B示意性示出了根据本公开实施例的处理待传输数据,生成验证标识的流程图,图3C示出了根据本公开实施例的处理待传输数据,生成验证标识的示意图。
如图3B所示,该方法包括操作S311、S312、S321、S322和S323。
在操作S311,获得种子字节。根据本公开实施例,种子字节例如可以是预定值或是随机生成的。
在操作S312,将种子字节与待传输数据中的第1个字节进行预定运算,获得运算结果。根据本公开实施例,该预定运算例如可以是异或运算。例如,种子字节为01100111,第1个字节为11101101,则运算结果为10001010。
根据本公开实施例,该预定运算例如可以在诸如异或运算等简单运算的基础上,增加另外的运算。例如,可以引入一个校验表,在每次异或运算结束时,将运算结果作为索引值,查找校验表中相应的值作为本次运算的运算结果。
在操作S321,判断是否存在下一字节,若存在,则继续执行操作S322,否则跳转到操作S323。
在操作S322,读取下一字节并与前次运算结果进行预定预算,获得当前运算结果,之后转入操作S321。
在操作S323,将当前运算结果作为验证字节。当最后一个字节即第N个字节运算完毕时,得到一个运算结果作为校验字节。根据本公开实施例,将种子字节以及校验字节连同待传输数据一起发送的接收端,使接收端能够基于同样的算法验证数据的完整性。
图3D示意性示出了根据本公开实施例的接收端基于所述验证标识验证所述待传输数据是否传输成功的流程图。
如图3D所示,该方法包括操作S511、S512、S521、S522、S531以及S532。其中,操作S511、S512、S521以及S522分别与操作S311、S312、S321、S322类似,此处不再赘述。
在操作S531,将当前运算结果与验证字节比较。
在操作S532,若最终的运算结果与验证字节一致,则表明数据传输成功,否则表示其中存在数据丢失,需要重发。
根据本公开实施例,所述方法还包括识别所述数据中不能传输的部分,以及基于预定规则,使用特定数据替代所述数据中不能传输的部分。例如,该不可靠传输协议不支持某些字符的传输,本公开实施例的方法可以将该些不支持的字符根据预定规则转换为可以传输的字符,在传输后,通过同样的规则将其还原。
图4示意性示出了根据本公开另一实施例的用于物联网设备间的数据传输方法的流程图。
如图4所示,该方法包括操作S410~S430。
在操作S410,通过不可靠传输协议接收所述待传输数据以及所述验证标识。根据本公开实施例,所述不可靠传输协议例如可以包括用户数据报协议(UDP)。
在操作S420,基于所述验证标识验证所述待传输数据是否传输成功。
在操作S430,在所述待传输数据传输成功的情况下,向发送端发送反馈信息。
根据本公开实施例,在所述待传输数据包括N个字节的情况下,所述验证标识包括种子字节和验证字节。下面结合图5对本公开实施例的方法进行说明。
图5示意性示出了根据本公开实施例的基于所述验证标识验证所述待传输数据是否传输成功的流程图。
如图5所示,该方法包括操作S510~S530。
在操作S510,通过预定算法确定所述种子字节与待传输数据中的第1个字节的运算结果。
在操作S520,对于第2个到第N个字节,通过所述预定算法确定前次运算结果与当前字节的当前运算结果。
在操作S530,通过验证最后一个运算结果是否与所述验证字节相同,确定所述待传输数据是否传输成功。
该方法请参考图3D的描述,此处不再赘述。
根据本公开实施例,所述方法还包括基于预定规则,将特定数据还原为不能传输的部分。
图6示意性示出了根据本公开实施例的用于物联网设备间的数据传输系统600的框图。
如图6所示,该用于物联网设备间的数据传输系统600包括处理模块610、发送模块620 以及重发模块630。
处理模块610,例如执行上文参考图2描述的操作S210,用于处理待传输数据,生成验证标识。
发送模块620,例如执行上文参考图2描述的操作S220,用于采用不可靠传输协议发送所述待传输数据以及所述验证标识,使接收端能够基于所述验证标识验证所述待传输数据是否传输成功。
重发模块630,例如执行上文参考图2描述的操作S230,用于在预定时间内未接收到所述待传输数据传输成功的反馈信息的情况下,重新发送所述待传输数据。
根据本公开实施例,所述不可靠传输协议包括用户数据报协议。
根据本公开实施例,所述待传输数据包括N个字节,所述验证标识包括种子字节和验证字节,所述处理模块包括第一确定子模块以及第二确定子模块。
图7示意性示出了根据本公开实施例的处理模块610的框图。
如图7所示,该处理模块610包括第一确定子模块710以及第二确定子模块720。
第一确定子模块710,例如执行上文参考图3A描述的操作S310,用于通过预定算法确定种子字节与待传输数据中的第1个字节的运算结果。
第二确定子模块720,例如执行上文参考图3A描述的操作S320,用于对于第2个到第N个字节,通过所述预定算法确定前次运算结果与当前字节的当前运算结果,并将最后一个运算结果作为验证字节。
根据本公开实施例,所述系统还包括识别模块以及反转义模块。识别模块,用于识别所述数据中不能传输的部分。反转义模块,用于基于预定规则,使用特定数据替代所述数据中不能传输的部分。
图8示意性示出了根据本公开另一实施例的用于物联网设备间的数据传输系统800的框图。
如图8所示,该用于物联网设备间的数据传输系统800包括接收模块810、验证模块820以及通知模块830。
接收模块810,例如执行上文参考图4描述的操作S410,用于通过不可靠传输协议接收所述待传输数据以及所述验证标识。
验证模块820,例如执行上文参考图4描述的操作S420,用于基于所述验证标识验证所述待传输数据是否传输成功。
通知模块830,例如执行上文参考图4描述的操作S430,用于在所述待传输数据传输成功的情况下,向发送端发送反馈信息。
根据本公开实施例,所述不可靠传输协议包括用户数据报协议。
根据本公开实施例,所述待传输数据包括N个字节,所述验证标识包括种子字节和验证字节,所述验证模块包括第三确定子模块、第四确定子模块以及验证子模块。
图9示意性示出了根据本公开实施例的验证模块820的框图。
如图9所示,该验证模块820包括第三确定子模块910、第四确定子模块920以及验证子模块930。
第三确定子模块,例如执行上文参考图5描述的操作S510,用于通过预定算法确定所述种子字节与待传输数据中的第1个字节的运算结果。
第四确定子模块,例如执行上文参考图5描述的操作S520,用于对于第2个到第N个字节,通过所述预定算法确定前次运算结果与当前字节的当前运算结果。
验证子模块,例如执行上文参考图5描述的操作S530,用于通过验证最后一个运算结果是否与所述验证字节相同,确定所述待传输数据是否传输成功。
根据本公开实施例,所述系统还包括转义模块,用于基于预定规则,将所述特定数据还原为所述不能传输的部分。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,处理模块610、发送模块620、重发模块630、第一确定子模块710、第二确定子模块720、识别模块、反转义模块、接收模块810、验证模块820、通知模块830、第三确定子模块、第四确定子模块、验证子模块以及转义模块中的任意多个可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,处理模块610、发送模块620、重发模块630、第一确定子模块710、第二确定子模块720、识别模块、反转义模块、接收模块810、验证模块820、通知模块830、第三确定子模块、第四确定子模块、验证子模块以及转义模块中的至少一个可以至少被部分地实现为 硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,处理模块610、发送模块620、重发模块630、第一确定子模块710、第二确定子模块720、识别模块、反转义模块、接收模块810、验证模块820、通知模块830、第三确定子模块、第四确定子模块、验证子模块以及转义模块中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图10示意性示出了根据本公开实施例的适于实现用于物联网设备间的数据传输方法和系统的计算机系统1000的方框图。图10示出的计算机系统仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。图10示出的计算机系统可以实现为电子设备,包括至少一个处理器(例如处理器1001)以及至少一个存储器(例如存储部分1008)。
如图10所示,根据本公开实施例的计算机系统1000包括处理器1001,其可以根据存储在只读存储器(ROM)1002中的程序或者从存储部分1008加载到随机访问存储器(RAM)1003中的程序而执行各种适当的动作和处理。处理器1001例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器1001还可以包括用于缓存用途的板载存储器。处理器1001可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 1003中,存储有系统1000操作所需的各种程序和数据。处理器1001、ROM 1002以及RAM 1003通过总线1004彼此相连。处理器1001通过执行ROM 1002和/或RAM 1003中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 1002和RAM 1003以外的一个或多个存储器中。处理器1001也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,系统1000还可以包括输入/输出(I/O)接口1005,输入/输出(I/O)接口1005也连接至总线1004。系统1000还可以包括连接至I/O接口1005的以下部件中的一项或多项:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至I/O接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被处理器1001执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
本公开还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线、光缆、射频信号等等,或者上述的任意合适的组合。
例如,根据本公开的实施例,计算机可读介质可以包括上文描述的ROM 1002和/或RAM1003和/或ROM 1002和RAM 1003以外的一个或多个存储器。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注 的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

Claims (18)

  1. 一种用于物联网设备间的数据传输方法,包括:
    处理待传输数据,生成验证标识;
    采用不可靠传输协议发送所述待传输数据以及所述验证标识,使接收端能够基于所述验证标识验证所述待传输数据是否传输成功;以及
    在预定时间内未接收到所述待传输数据传输成功的反馈信息的情况下,重新发送所述待传输数据。
  2. 根据权利要求1所述的方法,其中,所述不可靠传输协议包括用户数据报协议。
  3. 根据权利要求1所述的方法,其中,所述待传输数据包括N个字节,所述验证标识包括种子字节和验证字节,所述处理待传输数据,生成验证标识包括:
    通过预定算法确定种子字节与待传输数据中的第1个字节的运算结果;
    对于第2个到第N个字节,通过所述预定算法确定前次运算结果与当前字节的当前运算结果,并将最后一个运算结果作为验证字节。
  4. 根据权利要求1所述的方法,还包括:
    识别所述数据中不能传输的部分;以及
    基于预定规则,使用特定数据替代所述数据中不能传输的部分。
  5. 一种用于物联网设备间的数据传输方法,包括:
    通过不可靠传输协议接收所述待传输数据以及所述验证标识;
    基于所述验证标识验证所述待传输数据是否传输成功;以及
    在所述待传输数据传输成功的情况下,向发送端发送反馈信息。
  6. 根据权利要求5所述的方法,其中,所述不可靠传输协议包括用户数据报协议。
  7. 根据权利要求5所述的方法,其中,所述待传输数据包括N个字节,所述验证标识包括种子字节和验证字节,所述基于所述验证标识验证所述待传输数据是否传输成功包括:
    通过预定算法确定所述种子字节与待传输数据中的第1个字节的运算结果;
    对于第2个到第N个字节,通过所述预定算法确定前次运算结果与当前字节的当前运算结果;以及
    通过验证最后一个运算结果是否与所述验证字节相同,确定所述待传输数据是否传输成功。
  8. 根据权利要求5所述的方法,还包括:
    基于预定规则,将特定数据还原为不能传输的部分。
  9. 一种用于物联网设备间的数据传输系统,包括:
    处理模块,用于处理待传输数据,生成验证标识;
    发送模块,用于采用不可靠传输协议发送所述待传输数据以及所述验证标识,使接收端能够基于所述验证标识验证所述待传输数据是否传输成功;以及
    重发模块,用于在预定时间内未接收到所述待传输数据传输成功的反馈信息的情况下,重新发送所述待传输数据。
  10. 根据权利要求9所述的系统,其中,所述不可靠传输协议包括用户数据报协议。
  11. 根据权利要求9所述的系统,其中,所述待传输数据包括N个字节,所述验证标识包括种子字节和验证字节,所述处理模块包括:
    第一确定子模块,用于通过预定算法确定种子字节与待传输数据中的第1个字节的运算结果;
    第二确定子模块,用于对于第2个到第N个字节,通过所述预定算法确定前次运算结果与当前字节的当前运算结果,并将最后一个运算结果作为验证字节。
  12. 根据权利要求9所述的系统,还包括:
    识别模块,用于识别所述数据中不能传输的部分;以及
    反转义模块,用于基于预定规则,使用特定数据替代所述数据中不能传输的部分。
  13. 一种用于物联网设备间的数据传输系统,包括:
    接收模块,用于通过不可靠传输协议接收所述待传输数据以及所述验证标识;
    验证模块,用于基于所述验证标识验证所述待传输数据是否传输成功;以及
    通知模块,用于在所述待传输数据传输成功的情况下,向发送端发送反馈信息。
  14. 根据权利要求13所述的系统,其中,所述不可靠传输协议包括用户数据报协议。
  15. 根据权利要求13所述的系统,其中,所述待传输数据包括N个字节,所述验证标识包括种子字节和验证字节,所述验证模块包括:
    第三确定子模块,用于通过预定算法确定所述种子字节与待传输数据中的第1个字节的运算结果;
    第四确定子模块,用于对于第2个到第N个字节,通过所述预定算法确定前次运算结果与当前字节的当前运算结果;以及
    验证子模块,用于通过验证最后一个运算结果是否与所述验证字节相同,确定所述待传输数据是否传输成功。
  16. 根据权利要求13所述的系统,还包括:
    转义模块,用于基于预定规则,将所述特定数据还原为所述不能传输的部分。
  17. 一种电子设备,包括:
    一个或多个处理器;
    存储器,用于存储一个或多个计算机程序,
    其中,当一个或多个计算机程序被一个或多个处理器执行时,使得一个或多个处理器实现权利要求1至8中任一项的方法。
  18. 一种计算机可读介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现权利要求1至8中任一项的方法。
PCT/CN2019/099614 2018-08-28 2019-08-07 用于物联网设备间的数据传输方法、系统和电子设备 WO2020042884A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810986447.9 2018-08-28
CN201810986447.9A CN110868276A (zh) 2018-08-28 2018-08-28 用于物联网设备间的数据传输方法、系统和电子设备

Publications (1)

Publication Number Publication Date
WO2020042884A1 true WO2020042884A1 (zh) 2020-03-05

Family

ID=69643140

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/099614 WO2020042884A1 (zh) 2018-08-28 2019-08-07 用于物联网设备间的数据传输方法、系统和电子设备

Country Status (2)

Country Link
CN (1) CN110868276A (zh)
WO (1) WO2020042884A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111683065A (zh) * 2020-05-23 2020-09-18 上海沪工焊接集团股份有限公司 焊机通讯协议的数据传输方法、系统、装置及存储介质
CN112804326A (zh) * 2021-01-12 2021-05-14 重庆贵飞科技有限公司 物联网数据传输方法及照明系统
CN113688094A (zh) * 2021-08-24 2021-11-23 中汽创智科技有限公司 一种车机系统的数据通信方法、装置、系统及存储介质
CN114006733A (zh) * 2021-10-08 2022-02-01 北卡科技有限公司 一种验证数据传输完整性的方法及系统
CN114338736A (zh) * 2021-12-07 2022-04-12 中国人民解放军总医院 物联网设备的数据传输管理系统、方法和计算机装置
CN114598651A (zh) * 2022-02-15 2022-06-07 阿里巴巴(中国)有限公司 数据传输方法以及装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115695509B (zh) * 2022-09-29 2023-04-18 北京宜通华瑞科技有限公司 一种基于物联网通信协议的智能缝制系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090001173A1 (en) * 2007-06-28 2009-01-01 Sevier Mitchel P Bar code reading terminal with video capturing mode
CN101409609A (zh) * 2007-10-09 2009-04-15 北京信威通信技术股份有限公司 一种无线系统中高效可靠传输语音的方法及装置
CN102571635A (zh) * 2012-01-18 2012-07-11 浪潮(北京)电子信息产业有限公司 一种消息传输方法及设备
US20140297791A1 (en) * 2013-03-28 2014-10-02 Canon Kabushiki Kaisha Communication apparatus, method of controlling the same, and storage medium
CN107483148A (zh) * 2017-07-28 2017-12-15 北京北信源软件股份有限公司 差错处理方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101001132A (zh) * 2006-01-10 2007-07-18 英业达股份有限公司 数据无线传输系统
CN105610783B (zh) * 2015-11-05 2018-11-30 珠海格力电器股份有限公司 一种数据传输方法及物联网系统
US20180145703A1 (en) * 2016-11-23 2018-05-24 Qualcomm Incorporated Techniques for using a cyclic redundancy check in conjunction with a low-density parity-check encoding scheme

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090001173A1 (en) * 2007-06-28 2009-01-01 Sevier Mitchel P Bar code reading terminal with video capturing mode
CN101409609A (zh) * 2007-10-09 2009-04-15 北京信威通信技术股份有限公司 一种无线系统中高效可靠传输语音的方法及装置
CN102571635A (zh) * 2012-01-18 2012-07-11 浪潮(北京)电子信息产业有限公司 一种消息传输方法及设备
US20140297791A1 (en) * 2013-03-28 2014-10-02 Canon Kabushiki Kaisha Communication apparatus, method of controlling the same, and storage medium
CN107483148A (zh) * 2017-07-28 2017-12-15 北京北信源软件股份有限公司 差错处理方法及装置

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111683065A (zh) * 2020-05-23 2020-09-18 上海沪工焊接集团股份有限公司 焊机通讯协议的数据传输方法、系统、装置及存储介质
CN112804326A (zh) * 2021-01-12 2021-05-14 重庆贵飞科技有限公司 物联网数据传输方法及照明系统
CN112804326B (zh) * 2021-01-12 2022-07-22 重庆贵飞科技有限公司 物联网数据传输方法及照明系统
CN113688094A (zh) * 2021-08-24 2021-11-23 中汽创智科技有限公司 一种车机系统的数据通信方法、装置、系统及存储介质
CN113688094B (zh) * 2021-08-24 2024-03-22 中汽创智科技有限公司 一种车机系统的数据通信方法、装置、系统及存储介质
CN114006733A (zh) * 2021-10-08 2022-02-01 北卡科技有限公司 一种验证数据传输完整性的方法及系统
CN114006733B (zh) * 2021-10-08 2023-10-20 北卡科技有限公司 一种验证数据传输完整性的方法及系统
CN114338736A (zh) * 2021-12-07 2022-04-12 中国人民解放军总医院 物联网设备的数据传输管理系统、方法和计算机装置
CN114598651A (zh) * 2022-02-15 2022-06-07 阿里巴巴(中国)有限公司 数据传输方法以及装置
CN114598651B (zh) * 2022-02-15 2024-04-09 阿里巴巴(中国)有限公司 数据传输方法以及装置

Also Published As

Publication number Publication date
CN110868276A (zh) 2020-03-06

Similar Documents

Publication Publication Date Title
WO2020042884A1 (zh) 用于物联网设备间的数据传输方法、系统和电子设备
CN110766408A (zh) 异构区块链的跨链交易验证方法、引擎、设备和存储介质
US20210304201A1 (en) Transaction verification method and apparatus, storage medium, and electronic device
US20220239496A1 (en) Blockchain consensus method, device and system
CN108696589B (zh) 区块链数据传输方法、装置、设备和存储介质
CN112243002B (zh) 数据转发方法、装置、电子设备以及计算机可读介质
CN110535661B (zh) 基于区块链的业务处理方法、装置、电子设备和存储介质
CN112434620B (zh) 场景文字识别方法、装置、设备和计算机可读介质
US11575469B2 (en) Multi-bit feedback protocol systems and methods
CN112311720B (zh) 数据的传输方法及装置
WO2021134418A1 (zh) 一种数据校验方法及装置
CN116070285A (zh) 基于拜占庭容错的异步共识方法、装置、服务器和介质
US20210117191A1 (en) Methods and apparatus to control execution of tasks in a computing system
US8412844B2 (en) Validating download success
CN114422156B (zh) 基于区块链的投标文件补偿认证方法和系统
CN113094002B (zh) 消息处理方法、装置、电子设备和计算机介质
CN115333851A (zh) 自动驾驶数据的传输方法、装置和电子设备
CN112434619B (zh) 病例信息提取方法、装置、设备和计算机可读介质
CN115374207A (zh) 业务处理方法及装置、电子设备和计算机可读存储介质
US20170169239A1 (en) Method for file synchronization, the receiver equipment and systems
CN111752625A (zh) 用于接口mock的方法和装置
CN112804351A (zh) 区块链系统的流量控制方法、装置、节点、介质及产品
CN117633848B (zh) 用户信息联合处理方法、装置、设备和计算机可读介质
CN113852484B (zh) 终端设备配网方法、装置、电子设备和计算机可读介质
CN113301058B (zh) 信息加密传输方法、装置、电子设备和计算机可读介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19855821

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

Country of ref document: EP

Kind code of ref document: A1