WO2019026229A1 - クライアント装置、データ収集システム、データ送信方法、及びプログラム - Google Patents

クライアント装置、データ収集システム、データ送信方法、及びプログラム Download PDF

Info

Publication number
WO2019026229A1
WO2019026229A1 PCT/JP2017/028214 JP2017028214W WO2019026229A1 WO 2019026229 A1 WO2019026229 A1 WO 2019026229A1 JP 2017028214 W JP2017028214 W JP 2017028214W WO 2019026229 A1 WO2019026229 A1 WO 2019026229A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
unit
connection
request
server device
Prior art date
Application number
PCT/JP2017/028214
Other languages
English (en)
French (fr)
Inventor
輝 柏崎
裕高 梶田
Original Assignee
株式会社アプトポッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社アプトポッド filed Critical 株式会社アプトポッド
Priority to CN201780093422.XA priority Critical patent/CN110959155B/zh
Priority to US16/631,877 priority patent/US11483362B2/en
Priority to EP17919980.7A priority patent/EP3663929B1/en
Priority to PCT/JP2017/028214 priority patent/WO2019026229A1/ja
Priority to JP2019533816A priority patent/JP7004982B2/ja
Publication of WO2019026229A1 publication Critical patent/WO2019026229A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • 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/24Negotiation of communication capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • 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

Definitions

  • the present invention relates to techniques for collecting data.
  • Patent Document 1 describes that data transmission processing is performed after exchanging information such as the type of transmission data and the number of data in the pre-processing. Further, in the patent document 2, the transmitting side determines the CID of the header of the IP packet, and in correspondence with this, the table in which the IP (Internet Protocol address) header or the UDP (User Datagram Protocol) header is registered is compared with the receiving side. It is described that after being shared in memory, the IP header of the IP packet and / or the UDP header is removed and sent to the receiver.
  • IP Internet Protocol address
  • UDP User Datagram Protocol
  • An object of the present invention is to reduce the amount of data related to the attributes of data in data transmission.
  • the present invention acquires, when a connection is established with a server device, a request unit that transmits a request including attribute information indicating an attribute of a data group to the server device via the connection, and acquires data.
  • a request unit that transmits a request including attribute information indicating an attribute of a data group to the server device via the connection
  • acquires data Unit, an adding unit for identifying the data group to which the unit data belongs to the unit data including the acquired data, the unit data adding the identifier associated with the connection, and the unit data having the identifier added thereto
  • a transmission unit for transmitting the information to the server apparatus via the connection.
  • the unit data is a data block including the acquired data and a marker indicating a break between other data blocks, and the adding unit may add the identifier to each component of the data block. Good.
  • the unit data is a data block including the acquired data and a marker indicating a break from another data block, and the adding unit adds the identifier to at least a part of the data block. It is also good.
  • the request unit may determine the identifier, and the request may include the attribute information and the identifier.
  • the client device may further include a receiving unit that receives a response including the identifier from the server device via the connection in response to the request.
  • the data group may have a plurality of types of attributes, and the request may include attribute information indicating the plurality of types of attributes.
  • the request unit may transmit a single request including a plurality of attribute information indicating attributes of a plurality of data groups.
  • the request unit may transmit the request in response to the establishment of the connection.
  • the present invention also includes a client device and a server device, and when the connection is established with the server device, the client device requests the connection including the attribute information indicating the attribute of the data group.
  • a request unit to be transmitted to the server device via the server unit, an acquisition unit for acquiring data, and unit data including the acquired data are associated with the connection, which identifies the data group to which the unit data belongs.
  • An addition unit for adding an identifier and a transmission unit for transmitting the unit data to which the identifier is added to the server device via the connection, the server device including the unit data from the client device A receiving unit for receiving, and the identifier added to the received unit data to the received unit data Providing data collection system and a processing unit that performs processing corresponding to the attribute of the data group to be more identified.
  • the request unit transmits, to the server device via the connection, another request for releasing the association between the attribute information and the identifier, and the server device includes the attribute information included in the request;
  • a storage unit that stores the identifier in association with the identifier, and a release unit that releases the association between the attribute information and the identifier in response to the other request may be provided.
  • the process may include transferring the data, and the request may include a transfer destination identifier identifying a transfer destination of the data.
  • the present invention transmits the request including the attribute information indicating the attribute of the data group to the server device via the connection when the connection is established with the server device, and acquiring data.
  • a step of adding to the unit data including the acquired data the identifier associated with the connection, which identifies the data group to which the unit data belongs, and the unit data to which the identifier is added Transmitting data to the server apparatus via the connection.
  • the computer when a connection is established with a server apparatus, the computer transmits a request including attribute information indicating an attribute of a data group to the server apparatus via the connection; Obtaining an identifier, adding an identifier associated with the connection to the unit data including the acquired data, identifying the data group to which the unit data belongs, and adding the identifier And transmitting the unit data to the server apparatus via the connection.
  • FIG. 2 is a diagram illustrating an example of a hardware configuration of a client device 20.
  • FIG. 2 is a diagram illustrating an example of a hardware configuration of a server device 30.
  • FIG. 1 is a diagram showing an example of a functional configuration of a data acquisition system 1; 5 is a sequence chart showing an example of the operation of the data acquisition system 1; It is a figure which shows an example of the data format of a preparation request
  • FIG. 6 is a diagram showing an example of a stream table 121. It is a figure which shows an example of the data format of a response. It is a figure which shows an example of the data format of a section. It is a figure which shows an example of the transmission method of 2nd streaming data and 3rd streaming data.
  • FIG. 1 is a diagram showing an example of a data collection system 1 according to the present embodiment.
  • the data collection system 1 provides a mechanism for collecting various data and managing them collectively.
  • This data includes, for example, data output from the sensor 10.
  • the sensor 10 may be a tachometer for measuring the number of rotations of the engine, a speedometer for measuring the speed of the car, an angle meter for measuring the steering angle, a fuel injection quantity meter, a thermometer, and various measurement devices provided in vehicles, such as GPS (Global Positioning System) which measures a position of vehicles, may be used.
  • GPS Global Positioning System
  • the data collection system 1 includes a plurality of client devices 20, a server device 30, and a terminal device 40. These devices are connected via the communication line 2.
  • the communication line 2 includes a mobile communication network.
  • the respective client devices 20 and the server device 30 are connected via a mobile communication network.
  • communication is performed according to a wireless communication standard such as 3G, Long Term Evolution (LTE), Wi-Fi (registered trademark), WiMAX (registered trademark), Bluetooth (registered trademark) or the like.
  • a wireless communication standard such as 3G, Long Term Evolution (LTE), Wi-Fi (registered trademark), WiMAX (registered trademark), Bluetooth (registered trademark) or the like.
  • At least one of the plurality of client devices 20 is connected to the sensor 10 via the communication line 3.
  • the number of sensors 10, the number of client devices 20, the number of server devices 30, and the number of terminal devices 40 shown in FIG. 1 are merely illustrative, and the present invention is not limited thereto.
  • the number of sensors 10 may be more or less than the number illustrated in FIG.
  • the number of client devices 20 may be more or less than the number illustrated in FIG.
  • the number of terminal devices 40 may be more than the number illustrated in FIG.
  • the sensor 10 includes a sensor element and an AD (Analog-to-Digital) conversion circuit.
  • the sensor 10 detects a physical quantity at a predetermined sampling cycle, and generates and outputs data indicating the physical quantity.
  • the sensor 10 outputs, for example, several hundred to several thousand pieces of data per second in time series.
  • One piece of data includes one detection value detected by the sensor 10. That is, 100 pieces of data include a total of 100 detection values.
  • FIG. 2 is a diagram showing an example of the hardware configuration of the client device 20.
  • the client device 20 has a function of transmitting data output from the sensor 10 to the server device 30 in a streaming manner.
  • the streaming method is a method of sequentially transmitting data according to acquisition.
  • the client device 20 includes a processor 21, a memory 22, a communication interface 23, and a storage 24. These configurations are connected via a bus 25.
  • the processor 21 executes various processes by reading the program into the memory 22 and executing the program.
  • a CPU Central Processing Unit
  • the memory 22 stores a program to be executed by the processor 21.
  • ROM read only memory
  • RAM random access memory
  • a combination of these may be used as the memory 22.
  • the communication interface 23 performs data communication with the server device 30 connected via the communication line 2.
  • a connection-type communication protocol such as TCP / IP or WebSocket is used.
  • the communication interface 23 performs data communication with the sensor 10 connected via the communication line 3.
  • a CAN (Controller Area Network) protocol is used for communication between the client device 20 and the sensor 10.
  • the storage 24 stores various data and programs. As the storage 24, for example, a hard disk or flash memory may be used. The storage 24 also stores a client program for causing the client device 20 to execute client-side processing.
  • FIG. 3 is a diagram showing an example of the hardware configuration of the server device 30.
  • the server device 30 has a function of performing processing according to the attribute on data received from the client device 20.
  • the processing includes real time processing and non real time processing.
  • the real time process is, for example, a process of transmitting data received from the client device 20 to another client device 20 or the terminal device 40 in real time. Note that real time does not have to be completely simultaneous but may have some time delay. Data transmitted in real time processing is used, for example, for the user to grasp the current status of the sensing target. Therefore, in real time processing, immediacy is required.
  • Non-real time processing is processing for accumulating data received from the client device 20, for example. Data accumulated in non-real-time processing is used, for example, for various analyzes of the situation of the sensing target. Therefore, in non-real time processing, data accuracy is required.
  • the server device 30 includes a processor 31, a memory 32, a communication interface 33, and a storage 34. These configurations are connected via a bus 35.
  • the processor 31 performs various processes by reading the program into the memory 32 and executing the program. For example, a CPU may be used as the processor 31.
  • the memory 32 stores a program to be executed by the processor 31.
  • As the memory 32 for example, a ROM, a RAM, or a combination thereof may be used.
  • the communication interface 33 performs data communication with the client device 20 or the terminal device 40 connected via the communication line 2.
  • the storage 34 stores various data and programs. As the storage 34, for example, a hard disk or flash memory may be used.
  • the storage 34 also stores a server program for causing the server apparatus 30 to execute server-side processing.
  • the terminal device 40 functions as a UI (User Interface) device that outputs data transmitted from the server device 30 by the above-described real-time processing.
  • a UI User Interface
  • an electronic device having a display such as a client computer, a tablet terminal, or a smartphone may be used as the terminal device 40.
  • the terminal device 40 displays the data received from the server device 30 on a display.
  • the display of this data may be performed by a browser, for example.
  • the terminal device 40 may display the data as it is or may visualize and display the data using a visual expression such as an image.
  • FIG. 4 is a diagram showing an example of a functional configuration of the data acquisition system 1.
  • the data collection system 1 includes a connection control unit 101, a request unit 102, an information management unit 103, a release unit 104, a response unit 105, a reception unit 106, an acquisition unit 107, a generation unit 108, and an addition unit. It functions as the processor 109, the transmitter 110, the receiver 111, and the processor 112.
  • the connection control unit 101, the request unit 102, the reception unit 106, the acquisition unit 107, the generation unit 108, the addition unit 109, and the transmission unit 110 are implemented in the client device 20. These functions are realized by the cooperation of the client program stored in the memory 22 and the processor 21 executing this client program.
  • the information management unit 103, the release unit 104, the response unit 105, the reception unit 111, and the processing unit 112 are implemented in the server device 30. These functions are realized by the cooperation of the server program stored in the memory 32 and the processor 31 executing this server program.
  • connection control unit 101 controls a connection with the server device 30.
  • the connection control unit 101 establishes or disconnects a connection with the server device 30.
  • This connection refers to a virtual dedicated communication path established in connection-oriented communication.
  • the request unit 102 transmits a request including attribute information indicating an attribute of a data group to the server device 30 via the connection.
  • attribute information information that can determine this process is used.
  • the attribute information may include retransmission information indicating whether the retransmission condition is satisfied.
  • a retransmission flag is used.
  • the attribute information may include storage information indicating whether or not the storage condition is satisfied. For example, a storage flag is used as the storage information.
  • the attribute information may include a transfer destination identifier that identifies a transfer destination of data. As the transfer destination identifier, for example, a transfer destination ID (Identification) is used.
  • the information management unit 103 associates the attribute information included in the request transmitted from the request unit 102 with the identifier of the data group, and stores the association in the storage unit.
  • the storage 34 described above is used as the storage unit.
  • the request unit 102 may transmit a request for releasing the association between the attribute information and the identifier of the data group to the server device 30 via the connection.
  • the release unit 104 releases the association between the attribute information and the identifier in response to the request.
  • the response unit 105 transmits a response to the server device 30 via the connection.
  • the receiving unit 106 receives this response.
  • the acquisition unit 107 acquires data from the sensor 10.
  • the generation unit 108 generates unit data including the data acquired by the acquisition unit 107.
  • This unit data is, for example, a data block.
  • This data block is called, for example, a section.
  • Each data block contains acquired data and markers.
  • the marker indicates a break from other data blocks.
  • the data block includes a marker indicating the start of the data block and a marker indicating the end of the data block.
  • the marker indicating the start of the data block is called, for example, SOS (Start of Section).
  • a marker indicating the start of a data block is called, for example, EOS (End of Section).
  • the data and markers contained in the section are the components that make up the data block.
  • the adding unit 109 adds, to the unit data generated by the generating unit 108, an identifier associated with the connection, which identifies the data group to which the unit data belongs.
  • the unit data belongs to, for example, a data group having an attribute corresponding to the attribute.
  • the “corresponding attribute” is, for example, the same attribute.
  • a stream ID is used as the identifier of the data group.
  • the transmitting unit 110 transmits the unit data to which the identifier has been added by the adding unit 109 to the server device 30 via the connection. This transmission is performed, for example, in a streaming manner.
  • the receiving unit 111 receives unit data from the client device 20.
  • the processing unit 112 subjects the unit data received by the receiving unit 111 to processing corresponding to the attribute of the data group identified by the identifier added to the unit data.
  • the client device 20 when the client device 20 is described as the subject of the process, specifically, this process is performed by cooperation of the client program stored in the memory 22 and the processor 21 that executes the client program. Means to be performed. The same applies to the server device 30.
  • FIG. 5 is a sequence chart showing an example of the operation of the data acquisition system 1.
  • the operation shown in FIG. 5 is performed by the client device 20 to which the ID “C001” is assigned and the server device 30.
  • the client device 20 negotiates with the server device 30.
  • step S101 the connection control unit 101 establishes a connection with the server device 30. Specifically, the connection control unit 101 transmits a connection establishment request to the server device 30. The server device 30 transmits a response to the client device 20 in response to the establishment request. Thus, a connection is established between the client device 20 and the server device 30.
  • step S102 the request unit 102 transmits, to the server device 30, a request for creating information related to streaming data via the connection established in step S101 (hereinafter, referred to as “connection under connection”).
  • FIG. 6 is a diagram showing an example of the data format of the creation request.
  • the creation request includes a request ID, the number of streams, a stream ID, a flag, a measurement ID, a transmission source ID, and a transfer destination ID.
  • the request ID is information that uniquely identifies a creation request.
  • the request ID is determined by the request unit 102. In this example, "1" is determined as the request ID.
  • the number of streams indicates the number of pieces of information related to streaming data included in the creation request.
  • the creation request includes a set of stream ID, flag, measurement ID, transmission source ID, and transfer destination ID by the number indicated by the number of streams. For example, when the number of streams is “3”, three sets of stream ID, flag, measurement ID, transmission source ID, and transfer destination ID are included. That is, the creation request may include information on a plurality of streaming data. In this case, a single creation request can request creation of information on a plurality of streaming data.
  • the flag, the measurement ID, the transmission source ID, and the transfer destination ID are attribute information indicating attributes of streaming data. This attribute information generally has a larger amount of data than the stream ID.
  • the stream ID is information that uniquely identifies streaming data.
  • the stream ID is associated with the connection being connected. That is, the stream ID is information uniquely identifying streaming data in the connection being connected.
  • the stream ID is determined by the request unit 102. This is because the stream ID is associated with the connection, and can be arbitrarily determined on the side of the client device 20 without considering duplication with the stream ID used in other client devices 20.
  • the flag is information indicating an attribute of streaming data.
  • the flag includes a retransmission flag and a storage flag.
  • the retransmission flag is information indicating whether data is to be retransmitted. If the retransmission flag is “0”, it indicates that the data is not to be retransmitted, ie, to be transmitted first. On the other hand, when the retransmission flag is "1", it indicates that the data is to be retransmitted.
  • the storage flag is information indicating whether or not data is stored. If the storage flag is "0”, it indicates that data is not stored. On the other hand, when the storage flag is "1", it indicates that data is stored.
  • the measurement ID is information uniquely identifying a measurement that has generated data. For example, the same measurement ID is given to the data measured from the start to the end of the car engine.
  • the transmission source ID is information that uniquely identifies the client device 20 that is the transmission source of streaming data. In this example, the ID "C001" of the client device 20 is used as the transmission source ID.
  • the transfer destination ID is information for uniquely identifying another client device 20 or terminal device 40 to which data is to be transferred. For example, when the transfer destination ID is the ID “T001” of the terminal device 40, it means that data is transferred to the terminal device 40 via the server device 30. On the other hand, when the transfer destination ID is "-", it means that data is not transferred from the server device 30.
  • the creation request includes the request ID “1” determined by the request unit 102 and the number of streams “3”. Subsequently, the request unit 102 determines three stream IDs. In this example, “1” is determined as the stream ID of the first streaming data, “2” as the stream ID of the second streaming data, and “3” as the stream ID of the second streaming data. It is determined.
  • the first streaming data includes data generated by measurement of the measurement ID “M001”. This data is not to be resent, and needs to be stored in the server device 30. Furthermore, after this data is transmitted from the client device 20 to the server device 30, it is necessary to transfer the data from the server device 30 to the terminal device 40.
  • the creation request includes a set of stream ID “1”, retransmission flag “0”, storage flag “1”, measurement ID “M001”, transmission source ID “C001”, and transfer destination ID “T001”.
  • the second streaming data includes data generated by the measurement of the measurement ID “M001”. This data is to be resent, and needs to be stored in the server device 30. Furthermore, after this data is transmitted from the client device 20 to the server device 30, there is no need to transfer the data from the server device 30.
  • the creation request further includes a stream ID “2”, a retransmission flag “1”, a storage flag “1”, a measurement ID “M001”, a transmission source ID “C001”, and a transfer destination ID “-”. Is included.
  • the third streaming data includes data generated by measurement of the measurement ID "M002". This data is not to be resent, and needs to be stored in the server device 30. Furthermore, after this data is transmitted from the client device 20 to the server device 30, it is necessary to transfer the data from the server device 30 to the terminal device 40.
  • the creation request further includes a stream ID “3”, a retransmission flag “0”, a storage flag “1”, a measurement ID “M002”, a transmission source ID “C001”, and a transfer destination ID “T001”. Is included.
  • the set of stream ID and attribute information included in the creation request is stored in the storage 24.
  • step S103 when the information management unit 103 receives a creation request from the client device 20, the information management unit 103 associates the stream ID and the attribute information included in the creation request, and stores them in the storage.
  • the stream ID and the attribute information are managed using the stream table 121.
  • FIG. 7 shows an example of the stream table 121.
  • the stream table 121 stores stream IDs and attribute information in association with each other.
  • the attribute information includes a retransmission flag, a storage flag, a measurement ID, a transmission source ID, and a transfer destination ID.
  • the retransmission flag "0”, the storage flag "1”, the measurement ID “M001”, the transmission source ID "C001”, and the transfer destination ID "T001” are stored in association with the stream ID "1".
  • the retransmission flag “1”, the storage flag “1”, the measurement ID “M001”, the transmission source ID “C001”, and the transfer destination ID “-” are stored.
  • the retransmission flag “0”, the storage flag “1”, the measurement ID “M002”, the transmission source ID “C001”, and the transfer destination ID “T001” are stored.
  • step S104 in response to the creation request received from the client device 20, the response unit 105 transmits a response to the client device 20 via the connection under connection.
  • the receiving unit 106 receives this response from the server device 30.
  • FIG. 8 is a diagram showing an example of the data format of the response.
  • the response includes the request ID and the result information.
  • the request ID included in the creation request is used as the request ID.
  • Result information is information indicating whether or not the creation request has succeeded. For example, result information “0” indicates that the creation request has succeeded, and result information “1” indicates that the creation request has failed.
  • the creation request fails if the creation request does not include the required items, or if the items included in the creation request do not have a value. On the other hand, if there is no such defect in the creation request, the creation request succeeds.
  • the response includes the request ID “1” and the result information “1”.
  • result information may be included for each stream ID.
  • step S105 the acquisition unit 107 acquires the data string output from the sensor 10.
  • the data strings acquired by the acquisition unit 107 are sequentially stored in the transmission memory area in the memory 22.
  • data is stored, for example, in a queue system.
  • a sensor ID and a time stamp are added to each data included in this data string.
  • the sensor ID is information that uniquely identifies the sensor 10 that has output the data.
  • the time stamp is, for example, information indicating an elapsed time up to the date when the data is acquired starting from the date and time when the measurement was started. In another example, if the client device 20 has a clocking function, the time stamp may be information indicating the time measured by the clocking function.
  • step S106 the generation unit 108 generates streaming data based on the data string acquired in step S105.
  • Streaming data is divided into multiple sections.
  • Each section includes a series of multiple data included in the data string. For example, in the case where the interval between sections is 1 second, if the sampling period of the sensor 10 is 1000 Hz and the generation period of the sections is 50 Hz, one section includes 20 pieces of data output from the sensor 10 Be Note that the interval of this section, the sampling cycle of the sensor 10, and the generation cycle of the sections are not limited to this example, and may be another interval or another cycle. Also, the length of each section may be any length. Furthermore, the number of units included in each section does not have to be the same. The number of units included in one section may vary from one section to another.
  • FIG. 9 is a view showing an example of the data format of the section.
  • the section includes SOS, multiple units, and EOS.
  • SOS is information indicating the start of a section. SOS is included at the beginning of the section.
  • the plurality of units include one series of a plurality of data.
  • EOS is information indicating the end of a section. EOS is included at the end of the section.
  • EOS includes a unit count and a serial number.
  • the unit count is information indicating the number of units included in the section. This unit count is used, for example, to manage data loss in a section.
  • the serial number is information that uniquely identifies a section related to the same measurement unit.
  • step S107 the adding unit 109 adds the stream ID corresponding to the streaming data generated in step S106 described above to the SOS, the plurality of units, and the EOS included in each section of the streaming data.
  • the data included in the streaming data has an attribute indicated by the attribute information corresponding to the stream ID "1".
  • the stream ID “1” is added to each of the SOS, the plurality of units, and the EOS included in each section of the streaming data.
  • step S108 the transmission unit 110 sequentially transmits the streaming data to which the stream ID is added in step S107 to the server device 30 via the connection under connection.
  • the transmission unit 110 transmits streaming data in data units.
  • the data unit is the component unit of the section, that is, the SOS, unit or EOS unit.
  • the receiving unit 111 sequentially receives streaming data from the client device 20.
  • step S109 the processing unit 112 performs a process corresponding to the attribute on the received streaming data.
  • stream ID “1” is added to each data included in the streaming data.
  • the stream table 121 stores a retransmission flag “0”, a storage flag “1”, and a transfer destination ID “T001” in association with the stream ID “1”.
  • processing for storing streaming data in the storage 34 and processing for transferring the streaming data to the terminal device 40 are performed.
  • this storage process may be performed in units of sections.
  • this transfer process may be performed in data units. That is, data included in each section may be sequentially transferred in response to reception without waiting for reception of the EOS of that section.
  • the attribute information stored in step S103 described above may be changed during connection of the connection.
  • the request unit 102 transmits a change request including the stream ID of the change target and the attribute information after the change to the server device 30.
  • the information management unit 103 updates the stream table 121 in response to the change request. For example, when a change request including a pair of stream ID “1” and attribute information after change is transmitted, attribute information included in the change request is attribute information associated with stream ID “1” in the stream table 121. To be rewritten.
  • the streaming data ID stored in step S103 described above may be released during connection of the connection.
  • the request unit 102 transmits the release request of the streaming data ID to the server device 30.
  • This release request may use the same data format as the creation request shown in FIG.
  • the information management unit 103 deletes the record including the stream ID “1” from the stream table 121 in response to the release request received from the client device 20.
  • the association between the stream ID "1” and the retransmission flag "0", the storage flag "1", the measurement ID "M001”, the transmission source ID "C001”, and the transfer destination ID "T001” is released.
  • the stream ID "1” is released and can be used as an identifier of other streaming data. This prevents the available stream IDs from being exhausted even when a large number of streaming data are transmitted.
  • step S110 the connection control unit 101 disconnects the connection with the server device 30. Specifically, the connection control unit 101 transmits a connection disconnection request to the server device 30. The server device 30 transmits a response to the client device 20 in response to the disconnection request. Thus, the connection between the client device 20 and the server device 30 is disconnected.
  • step S111 the information management unit 103 deletes all stream IDs and attribute information stored in the stream table 121. As a result, the association between all stream IDs stored in the stream table 121 and the connection is released. In this case, all stream IDs stored in the stream table 121 are released. Therefore, when other connections are established, these street IDs can be used as identifiers of other streaming data. Even when the connection is disconnected without using the client device 20, the same process as step S111 may be performed.
  • Second streaming data new streaming data (hereinafter referred to as “second streaming data”) based on this section Is generated and stored in the memory area for retransmission in the memory 22. If this retransmission condition is satisfied, for example, if the transmission of the section included in the streaming data fails, or if the transmission of the streaming data succeeds, a response indicating an error from the server device 30 due to a data loss or the like Including the case of receiving.
  • data is stored, for example, in a queue system.
  • the data included in the second streaming data has an attribute indicated by the attribute information corresponding to the stream ID “2”.
  • the stream ID “2” is added to each of the SOS, the plurality of units, and the EOS included in each section of the second streaming data.
  • the second streaming data is retransmitted at a predetermined timing.
  • third streaming data new streaming data
  • the data included in the third streaming data has an attribute indicated by the attribute information corresponding to the stream ID “3”.
  • the stream ID “3” is added to each of the SOS, the plurality of units, and the EOS included in each section of the third streaming data.
  • the third streaming data is mixed with the second streaming data and transmitted.
  • FIG. 10 is a diagram illustrating an example of a method of transmitting the second streaming data and the third streaming data.
  • first section the SOS of a certain section included in the second streaming data
  • second section the first section of the third streaming data
  • the SOS, the plurality of units, and the EOS included in the second section are inserted and transmitted one by one between the unit following the SOS in the first section or between the unit and the EOS.
  • the second streaming data and the third streaming data are transmitted in data units as in the streaming data described above. Therefore, these streaming data can be mixed and transmitted in data units.
  • the transmission of the third streaming data can be started without waiting for the completion of the transmission of the second streaming data.
  • the data included in the second streaming data is to be retransmitted while the data included in the third streaming data is to be sent first, so the third streaming data is more immediate Sex is required.
  • the processing unit 112 When the second streaming data and the third streaming data are received from the client device 20, the processing unit 112 performs processing corresponding to each attribute on these streaming data. As described above, the stream ID “2” is added to each data in the second streaming data. In the stream table 121, a retransmission flag "1", a storage flag "1", and a transfer destination ID "-" are stored in association with the stream ID "2". In this case, the processing unit 112 performs a process of storing the second streaming data in the storage 34. At this time, since the data included in the second streaming data is resent, the corresponding section of the original streaming data may be overwritten with the section of the second streaming data. The process of transferring the second streaming data is not performed. The process corresponding to the attribute is similarly applied to the third streaming data.
  • the server device 30 can recognize the streaming data to which each data belongs, and can perform an appropriate process according to each attribute. .
  • a request including attribute information indicating an attribute of streaming data is transmitted from the client device 20 to the server device 30.
  • An identifier of streaming data to which the data belongs is added to each data included in the streaming data, and attribute information is not added. Therefore, in the transmission of streaming data, the amount of data related to the attributes of the streaming data is reduced. Also, when transmitting the second streaming data and the third streaming data that include data of different attributes, the third streaming data may be transmitted together with the second streaming data.
  • the stream ID may be added only to the SOS, the plurality of units, and a part of the EOS included in each section of streaming data.
  • the stream ID may be attached only to SOS or may be attached only to EOS. This can further reduce the amount of data related to data attributes.
  • the streaming data is transmitted not in data units but in section units. Also, in this case, a plurality of streaming data are transmitted without being mixed.
  • the streaming data does not necessarily have to be divided into multiple sections.
  • streaming data may include only a plurality of units.
  • each unit is unit data.
  • the streaming data does not have to include SOS and EOS.
  • processing such as data loss processing can not be performed in units of sections.
  • the stream ID may be determined on the server device 30 side.
  • the creation request includes streaming data attribute information but does not include the stream ID.
  • the server device 30 determines the stream ID.
  • the stream table 121 stores attribute information included in the creation request and the stream ID determined by the server device 30 in association with each other.
  • the response also includes this stream ID.
  • the receiving unit 106 receives a response including the stream ID.
  • the attribute information of the streaming data is not limited to that described in the above embodiment.
  • the attribute information may be information indicating whether the data is thinned or not.
  • the attribute information may be data priority.
  • the processing applied to the data is not limited to the one described in the above embodiment. For example, when the data included in the streaming data is decimated, processing to complement the decimated data may be performed.
  • the data that the client device 20 transmits to the server device 30 is not limited to the data output from the sensor 10. This data may be output from an object other than the sensor 10. In another example, the data may be data generated by the client device 20.
  • streaming data need not necessarily have multiple types of attributes.
  • Streaming data may have only a single attribute.
  • the creation request includes attribute information indicating a single attribute.
  • the creation request is transmitted triggered by the establishment of the connection
  • the timing at which the creation request is transmitted is not necessarily limited to this.
  • the creation request may be transmitted at another timing.
  • the process steps performed in the data collection system 1 are not limited to the examples described in the above embodiments. The steps of this process may be interchanged as long as there is no contradiction.
  • the present invention may be provided as a data collection method comprising the steps of processing performed in the data collection system 1. Also, the present invention may be provided as a data transmission method including the steps of processing performed in the client device 20.
  • the present invention may be provided as a client program executed on the client device 20 or a server program executed on the server device 30. These programs may be downloaded via a communication line such as the Internet. In addition, these programs are provided in the state of being recorded on a computer-readable recording medium such as a magnetic recording medium (magnetic tape, magnetic disk, etc.), an optical recording medium (optical disc, etc.), a magneto-optical recording medium, a semiconductor memory, etc. It may be done.
  • a computer-readable recording medium such as a magnetic recording medium (magnetic tape, magnetic disk, etc.), an optical recording medium (optical disc, etc.), a magneto-optical recording medium, a semiconductor memory, etc. It may be done.
  • Data acquisition system 10 Sensor 20: Client device 30: Server device 40: Terminal device 101: Connection control unit 102: Request unit 103: Information management unit 104: Cancel unit 105: Response Unit 106: Reception unit 107: Acquisition unit 108: Generation unit 109: Addition unit 110: Transmission unit 111: Reception unit 112: Processing unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Library & Information Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

データの送信において、そのデータの属性に関するデータ量を削減する。 要求部は、サーバー装置との間でコネクションが確立されると、データグループの属性を示す属性情報を含む要求を、コネクションを介してサーバー装置に送信する。取得部は、データを取得する。付加部は、取得されたデータを含む単位データに、この単位データが属するデータグループを識別する、コネクションに対応付けられた識別子を付加する。送信部は、識別子が付加された単位データを、コネクションを介してサーバー装置に送信する。

Description

クライアント装置、データ収集システム、データ送信方法、及びプログラム
 本発明は、データを収集する技術に関する。
 データを送信する前に、データの送信側と受信側との間でネゴシエーションを行う技術が知られている。例えば特許文献1には、事前処理において、送信データの種別、データ数等の情報をやり取りしてから、データ送信処理を行うことが記載されている。また、特許文献2には、送信側がIPパケットのヘッダのCIDを決定し、これと対応させてIP(Internet Protocol address)ヘッダ又はUDP(User Datagram Protocol)ヘッダが登録されたテーブルを受信側との間でメモリー中に共有した後、IPパケットのIPヘッダ及び又はUDPヘッダを除去して受信側に送信することが記載されている。
特開2005-176407号公報 特開平11-331274号公報
 ところで、例えばストリーミングデータを送信する場合、このストリーミングデータに対して受信側でその属性に対応する処理が行われる場合がある。しかし、この場合、送信側においてストリーミングデータに含まれるデータ毎に属性情報を付加すると、属性情報のデータ量が増えてしまう。
 本発明は、データの送信において、そのデータの属性に関するデータ量を削減することを目的とする。
 本発明は、サーバー装置との間でコネクションが確立されると、データグループの属性を示す属性情報を含む要求を、前記コネクションを介して前記サーバー装置に送信する要求部と、データを取得する取得部と、前記取得されたデータを含む単位データに、当該単位データが属する前記データグループを識別する、前記コネクションに対応付けられた識別子を付加する付加部と、前記識別子が付加された前記単位データを、前記コネクションを介して前記サーバー装置に送信する送信部とを備えるクライアント装置を提供する。
 前記単位データは、前記取得されたデータと、他のデータブロックとの区切りを示すマーカーとを含むデータブロックであり、前記付加部は、前記データブロックの各構成要素に前記識別子を付加してもよい。
 前記単位のデータは、前記取得されたデータと、他のデータブロックとの区切りを示すマーカーとを含むデータブロックであり、前記付加部は、前記データブロックの少なくとも一部に前記識別子を付加してもよい。
 前記要求部は、前記識別子を決定し、前記要求は、前記属性情報と前記識別子とを含んでもよい。
 前記クライアント装置は、前記要求に応じて、前記サーバー装置から前記コネクションを介して前記識別子を含む応答を受信する受信部を更に備えてもよい。
 前記データグループは、複数種類の属性を有し、前記要求は、前記複数種類の属性を示す属性情報を含んでもよい。
 前記要求部は、複数のデータグループの属性を示す複数の属性情報を含む単一の要求を送信してもよい。
 前記要求部は、前記コネクションが確立されたことを契機として、前記要求を送信してもよい。
 また、本発明は、クライアント装置とサーバー装置とを備え、前記クライアント装置は、前記サーバー装置との間でコネクションが確立されると、データグループの属性を示す属性情報を含む要求を、前記コネクションを介して前記サーバー装置に送信する要求部と、データを取得する取得部と、前記取得されたデータを含む単位データに、当該単位データが属する前記データグループを識別する、前記コネクションに対応付けられた識別子を付加する付加部と、前記識別子が付加された前記単位データを、前記コネクションを介して前記サーバー装置に送信する送信部とを有し、前記サーバー装置は、前記クライアント装置から前記単位データを受信する受信部と、前記受信された単位データに、当該単位データに付加された前記識別子により識別される前記データグループの前記属性に対応する処理を施す処理部とを有するデータ収集システムを提供する。
 前記要求部は、前記属性情報と前記識別子との対応付けを解除する他の要求を、前記コネクションを介して前記サーバー装置に送信し、前記サーバー装置は、前記要求に含まれる前記属性情報と、前記識別子とを対応付けて記憶する記憶部と、前記他の要求に応じて、前記属性情報と前記識別子との対応付けを解除する解除部とを備えてもよい。
 前記処理は、前記データを転送する処理を含み、前記要求は、前記データの転送先を識別する転送先識別子を含んでもよい。
 また、本発明は、サーバー装置との間でコネクションが確立されると、データグループの属性を示す属性情報を含む要求を、前記コネクションを介して前記サーバー装置に送信するステップと、データを取得するステップと、前記取得されたデータを含む単位データに、当該単位データが属する前記データグループを識別する、前記コネクションに対応付けられた識別子を付加するステップと、前記識別子が付加された前記単位データを、前記コネクションを介して前記サーバー装置に送信するステップとを備えるデータ送信方法を提供する。
 さらに、本発明は、コンピュータに、サーバー装置との間でコネクションが確立されると、データグループの属性を示す属性情報を含む要求を、前記コネクションを介して前記サーバー装置に送信するステップと、データを取得するステップと、前記取得されたデータを含む単位データに、当該単位データが属する前記データグループを識別する、前記コネクションに対応付けられた識別子を付加するステップと、前記識別子が付加された前記単位データを、前記コネクションを介して前記サーバー装置に送信するステップとを実行させるためのプログラムを提供する。
 本発明によれば、データの送信において、そのデータの属性に関するデータ量を削減することができる。
本実施形態に係るデータ収集システム1の一例を示す図である。 クライアント装置20のハードウェア構成の一例を示す図である。 サーバー装置30のハードウェア構成の一例を示す図である。 データ収集システム1の機能構成の一例を示す図である。 データ収集システム1の動作の一例を示すシーケンスチャートである。 作成要求のデータフォーマットの一例を示す図である。 ストリームテーブル121の一例を示す図である。 応答のデータフォーマットの一例を示す図である。 セクションのデータフォーマットの一例を示す図である。 第2ストリーミングデータ及び第3ストリーミングデータの送信方法の一例を示す図である。
構成
 図1は、本実施形態に係るデータ収集システム1の一例を示す図である。データ収集システム1は、各種のデータを収集し、まとめて管理する仕組みを提供する。このデータには、例えばセンサー10から出力されたデータが含まれる。例えばセンシング対象が車である場合、センサー10には、エンジンの回転数を計測する回転計、車の速度を計測する速度計、ステアリングの角度を計測する角度計、燃料噴射量計、温度計、及び車の位置を測定するGPS(Global Positioning System)等の車に設けられた各種の計測機器が用いられてもよい。
 データ収集システム1は、複数のクライアント装置20と、サーバー装置30と、端末装置40とを備える。これらの装置は、通信回線2を介して接続される。通信回線2には、移動通信ネットワークが含まれる。各クライアント装置20とサーバー装置30との間は、移動通信ネットワークを介して接続される。移動通信ネットワークにおいては、3G、LTE(Long Term Evolution)、Wi-Fi(登録商標)、WiMAX(登録商標)、Bluetooth(登録商標)等の無線通信規格に従って通信が行われる。複数のクライアント装置20の少なくとも一つは、通信回線3を介してセンサー10に接続される。
 なお、図1に示されるセンサー10の数、クライアント装置20の数、サーバー装置30の数、及び端末装置40の数は例示に過ぎず、これに限定されない。例えば、センサー10の数は、図1に例示する数より多くてもよいし、少なくてもよい。同様に、クライアント装置20の数も、図1に例示する数より多くてもよいし、少なくてもよい。端末装置40の数は、図1に例示する数より多くてもよい。
 センサー10は、センサー素子とAD(Analog-to-Digital)変換回路とを含む。センサー10は、所定のサンプリング周期で物理量を検出し、その物理量を示すデータを生成して出力する。センサー10からは、例えば1秒間に数百~数千個のデータが時系列に沿って出力される。1個のデータには、センサー10により検出された1つの検出値が含まれる。つまり、100個のデータには、延べ100回分の検出値が含まれる。
 図2は、クライアント装置20のハードウェア構成の一例を示す図である。クライアント装置20は、センサー10から出力されたデータをストリーミング方式でサーバー装置30に送信する機能を有する。このストリーミング方式とは、データを取得に応じて順次送信する方式をいう。
 クライアント装置20は、プロセッサー21と、メモリー22と、通信インタフェース23と、ストレージ24とを備える。これらの構成は、バス25を介して接続される。プロセッサー21は、プログラムをメモリー22に読み出して実行することにより、各種の処理を実行する。プロセッサー21としては、例えばCPU(Central Processing Unit)が用いられてもよい。メモリー22は、プロセッサー21により実行されるプログラムを記憶する。メモリー22としては、例えばROM(Read Only Memory)、RAM(Random Access Memory)、又はこれらの組み合わせが用いられてもよい。
 通信インタフェース23は、通信回線2を介して接続されたサーバー装置30とデータ通信を行う。クライアント装置20とサーバー装置30との間の通信では、TCP/IPやWebSocket等のコネクション型の通信プロトコルが用いられる。また、通信インタフェース23は、通信回線3を介して接続されたセンサー10とデータ通信を行う。クライアント装置20とセンサー10との間の通信では、例えばCAN(Controller Area Network)プロトコルが用いられる。ストレージ24は、各種のデータ及びプログラムを記憶する。ストレージ24としては、例えばハードディスク又はフラッシュメモリが用いられてもよい。また、ストレージ24には、クライアント装置20にクライアント側の処理を実行させるためのクライアントプログラムが記憶される。
 図3は、サーバー装置30のハードウェア構成の一例を示す図である。サーバー装置30は、クライアント装置20から受信したデータに対して、その属性に応じた処理を行う機能を有する。この処理には、リアルタイム処理と、非リアルタイム処理とが含まれる。リアルタイム処理は、例えばクライアント装置20から受信したデータをリアルタイムで他のクライアント装置20又は端末装置40に送信する処理である。なお、リアルタイムとは、完全に同時である必要はなく、多少の時間の遅延があってもよい。リアルタイム処理で送信されるデータは、例えばセンシング対象の現在の状況をユーザーが把握するのに用いられる。そのため、リアルタイム処理では、即時性が要求される。非リアルタイム処理は、例えばクライアント装置20から受信したデータを蓄積する処理である。非リアルタイム処理で蓄積されるデータは、例えばセンシング対象の状況についての各種の分析に用いられる。そのため、非リアルタイム処理では、データの正確性が要求される。
 サーバー装置30は、プロセッサー31と、メモリー32と、通信インタフェース33と、ストレージ34とを備える。これらの構成は、バス35を介して接続される。プロセッサー31は、プログラムをメモリー32に読み出して実行することにより、各種の処理を行う。プロセッサー31としては、例えばCPUが用いられてもよい。メモリー32は、プロセッサー31により実行されるプログラムを記憶する。メモリー32としては、例えばROM、RAM、又はこれらの組み合わせが用いられてもよい。通信インタフェース33は、通信回線2を介して接続されたクライアント装置20又は端末装置40とデータ通信を行う。ストレージ34は、各種のデータ及びプログラムを記憶する。ストレージ34としては、例えばハードディスク又はフラッシュメモリが用いられてもよい。また、ストレージ34には、サーバー装置30にサーバー側の処理を実行させるためのサーバープログラムが記憶される。
 端末装置40は、上述したリアルタイム処理によりサーバー装置30から送信されたデータを出力するUI(User Interface)機器として機能する。端末装置40としては、例えばクライアントコンピュータ、タブレット端末、スマートフォン等のディスプレイを有する電子機器が用いられてもよい。例えば端末装置40は、サーバー装置30から受信したデータをディスプレイに表示する。このデータの表示は、例えばブラウザーにより行われてもよい。なお、端末装置40は、データをそのまま表示してもよいし、画像等の視覚的表現を使用してデータを可視化して表示してもよい。
 図4は、データ収集システム1の機能構成の一例を示す図である。データ収集システム1は、コネクション制御部101と、要求部102と、情報管理部103と、解除部104と、応答部105と、受信部106と、取得部107と、生成部108と、付加部109と、送信部110と、受信部111と、処理部112として機能する。この例では、コネクション制御部101、要求部102、受信部106、取得部107、生成部108、付加部109、及び送信部110は、クライアント装置20に実装される。これらの機能は、メモリー22に記憶されたクライアントプログラムと、このクライアントプログラムを実行するプロセッサー21との協働により実現される。一方、情報管理部103、解除部104、応答部105、受信部111、及び処理部112は、サーバー装置30に実装される。これらの機能は、メモリー32に記憶されたサーバープログラムと、このサーバープログラムを実行するプロセッサー31との協働により実現される。
 コネクション制御部101は、サーバー装置30との間のコネクションを制御する。コネクション制御部101は、サーバー装置30との間にコネクションを確立し又は切断する。このコネクションとは、コネクション型の通信において確立される仮想的な専用通信路をいう。
 要求部102は、サーバー装置30との間でコネクションが確立されると、データグループの属性を示す属性情報を含む要求を、コネクションを介してサーバー装置30に送信する。この「コネクションを介して」送信するとは、コネクションが接続された状態で送信することをいう。データグループは、同一の属性を有するデータの集まりである。同一のデータグループに属するデータには、同一の処理が施される。属性情報には、この処理を決定し得るような情報が用いられる。例えば属性情報には、再送条件を満たすか否かを示す再送情報が含まれてもよい。この再送情報としては、例えば再送フラグが用いられる。また、属性情報には、保存条件を満たすか否かを示す保存情報が含まれてもよい。この保存情報としては、例えば保存フラグが用いられる。さらに、属性情報には、データの転送先を識別する転送先識別子が含まれてもよい。この転送先識別子としては、例えば転送先ID(Identification)が用いられる。
 情報管理部103は、要求部102から送信された要求に含まれる属性情報とデータグループの識別子とを対応付けて記憶部に記憶させる。この記憶部としては、例えば上述したストレージ34が用いられる。要求部102は、属性情報とデータグループの識別子との対応付けを解除する要求を、コネクションを介してサーバー装置30に送信してもよい。この要求が送信されると、解除部104は、この要求に応じて、属性情報と識別子との対応付けを解除する。
 応答部105は、要求部102から送信された要求に応じて、コネクションを介してサーバー装置30に応答を送信する。受信部106は、この応答を受信する。取得部107は、センサー10からデータを取得する。
 生成部108は、取得部107により取得されたデータを含む単位データを生成する。この単位データは、例えばデータブロックである。このデータブロックは、例えばセクションと呼ばれる。各データブロックには、取得されたデータとマーカーとが含まれる。マーカーは、他のデータブロックとの区切りを示す。例えばデータブロックには、データブロックの開始を示すマーカーと、データブロックの終了を示すマーカーとが含まれる。データブロックの開始を示すマーカーは、例えばSOS(Start of Section)と呼ばれる。データブロックの開始を示すマーカーは、例えばEOS(End of Section)と呼ばれる。セクションに含まれるデータ及びマーカーは、データブロックを構成する構成要素である。
 付加部109は、生成部108により生成された単位データに、その単位データが属するデータグループを識別する、コネクションに対応付けられた識別子を付加する。単位データは、例えばその属性に対応する属性を有するデータグループに属する。この「対応する属性」とは、例えば同一の属性である。データグループの識別子としては、例えばストリームIDが用いられる。
 送信部110は、付加部109により識別子が付加された単位データを、コネクションを介してサーバー装置30に送信する。この送信は、例えばストリーミング方式で行われる。受信部111は、クライアント装置20から単位データを受信する。処理部112は、受信部111により受信された単位データに対して、その単位データに付加された識別子により識別されるデータグループの属性に対応する処理を施す。
 なお、以下の説明において、クライアント装置20を処理の主体として記載する場合には、具体的にはメモリー22に記憶されたクライアントプログラムと、このクライアントプログラムを実行するプロセッサー21との協働によりこの処理が実行されることを意味する。サーバー装置30についても同様である。
動作
 図5は、データ収集システム1の動作の一例を示すシーケンスチャートである。この例では、図1に示す複数のクライアント装置20のうちID「C001」が付与されたクライアント装置20とサーバー装置30とにより、図5に示す動作が行われる。まず、クライアント装置20は、サーバー装置30とネゴシエーションを行う。
 ステップS101において、コネクション制御部101は、サーバー装置30とコネクションを確立する。具体的には、コネクション制御部101は、サーバー装置30にコネクションの確立要求を送信する。サーバー装置30は、この確立要求に応じてクライアント装置20に応答を送信する。これにより、クライアント装置20とサーバー装置30との間でコネクションが確立される。
 ステップS102において、要求部102は、ステップS101において確立されたコネクション(以下、「接続中のコネクション」という。)を介して、ストリーミングデータに関する情報の作成要求をサーバー装置30に送信する。
 図6は、作成要求のデータフォーマットの一例を示す図である。作成要求には、要求IDと、ストリーム数と、ストリームIDと、フラグと、計測IDと、送信元IDと、転送先IDとが含まれる。要求IDは、作成要求を一意に識別する情報である。この要求IDは、要求部102により決定される。この例では、要求IDとして「1」が決定される。
 ストリーム数は、この作成要求に含まれるストリーミングデータに関する情報の数を示す。作成要求には、ストリーム数により示される数だけ、ストリームID、フラグ、計測ID、送信元ID、及び転送先IDの組が含まれる。例えばストリーム数が「3」である場合には、ストリームID、フラグ、計測ID、送信元ID、及び転送先IDの組が三個含まれる。すなわち、作成要求には、複数のストリーミングデータに関する情報が含まれてもよい。この場合、単一の作成要求により、複数のストリーミングデータに関する情報の作成を要求することができる。フラグ、計測ID、送信元ID、及び転送先IDは、ストリーミングデータの属性を示す属性情報である。この属性情報は、一般に、ストリームIDよりもデータ量が多い。
 ストリームIDは、ストリーミングデータを一意に識別する情報である。ストリームIDは、接続中のコネクションに対応付けられている。すなわち、ストリームIDは、接続中のコネクションにおいてストリーミングデータを一意に識別する情報である。ストリームIDは、要求部102により決定される。これは、ストリームIDはコネクションに対応付けられたものであるため、他のクライアント装置20において用いられるストリームIDとの重複を考慮することなく、クライアント装置20側で任意に決定できるためである。
 フラグは、ストリーミングデータの属性を示す情報である。フラグには、再送フラグと、保存フラグとが含まれる。再送フラグは、データが再送されるものか否かを示す情報である。再送フラグが「0」である場合、データが再送されるものではない、すなわち最初に送信されるものであることを示す。一方、再送フラグが「1」である場合、データが再送されるものであることを示す。保存フラグは、データを保存するか否かを示す情報である。保存フラグが「0」である場合、データを保存しないことを示す。一方、保存フラグが「1」である場合、データを保存することを示す。
 計測IDは、データを生成した計測を一意に識別する情報である。例えば車のエンジンをかけてから切るまでに計測されたデータには、同一の計測IDが付与される。送信元IDは、ストリーミングデータの送信元となるクライアント装置20を一意に識別する情報である。この例では、クライアント装置20のID「C001」が送信元IDとして用いられる。転送先IDは、データの転送先となる他のクライアント装置20又は端末装置40を一意に識別する情報である。例えば、転送先IDが端末装置40のID「T001」である場合には、データはサーバー装置30を介して端末装置40に転送されることを意味する。一方、転送先IDが「-」である場合には、サーバー装置30からデータが転送されないことを意味する。
 この例では、クライアント装置20からサーバー装置30に三種類のストリーミングデータが送信される場合を想定する。この場合、作成要求には、要求部102により決定された要求ID「1」と、ストリーム数「3」とが含まれる。続いて、要求部102により三つのストリームIDが決定される。この例では、一つ目のストリーミングデータのストリームIDとして「1」が決定され、二つ目のストリーミングデータのストリームIDとして「2」が、二つ目のストリーミングデータのストリームIDとして「3」が決定される。
 一つ目のストリーミングデータには、計測ID「M001」の計測により生成されたデータが含まれる。このデータは、再送されるものではなく、サーバー装置30に保存する必要がある。さらに、このデータは、クライアント装置20からサーバー装置30に送信された後、サーバー装置30から端末装置40に転送する必要がある。この場合、作成要求には、ストリームID「1」、再送フラグ「0」、保存フラグ「1」、計測ID「M001」、送信元ID「C001」、及び転送先ID「T001」の組が含まれる。
 二つ目のストリーミングデータには、計測ID「M001」の計測により生成されたデータが含まれる。このデータは、再送されるものであり、サーバー装置30に保存する必要がある。さらに、このデータは、クライアント装置20からサーバー装置30に送信された後、サーバー装置30からは転送する必要がない。この場合、作成要求には、さらに、ストリームID「2」、再送フラグ「1」、保存フラグ「1」、計測ID「M001」、送信元ID「C001」、及び転送先ID「-」の組が含まれる。
 三つ目のストリーミングデータには、計測ID「M002」の計測により生成されたデータが含まれる。このデータは、再送されるものではなく、サーバー装置30に保存する必要がある。さらに、このデータは、クライアント装置20からサーバー装置30に送信された後、サーバー装置30から端末装置40に転送する必要がある。この場合、作成要求には、さらに、ストリームID「3」、再送フラグ「0」、保存フラグ「1」、計測ID「M002」、送信元ID「C001」、及び転送先ID「T001」の組が含まれる。なお、作成要求に含まれるストリームIDと属性情報との組は、ストレージ24に格納される。
 ステップS103において、情報管理部103は、クライアント装置20から作成要求を受信すると、この作成要求に含まれるストリームIDと属性情報とを対応付けてストレージ34に格納する。この例では、ストリームIDと属性情報とは、ストリームテーブル121を用いて管理される。
 図7は、ストリームテーブル121の一例を示す図である。ストリームテーブル121には、ストリームIDと属性情報とが対応付けて格納される。この属性情報には、再送フラグ、保存フラグ、計測ID、送信元ID、及び転送先IDが含まれる。この例では、ストリームID「1」と対応付けて、再送フラグ「0」、保存フラグ「1」、計測ID「M001」、送信元ID「C001」、及び転送先ID「T001」が格納される。また、ストリームID「2」と対応付けて、再送フラグ「1」、保存フラグ「1」、計測ID「M001」、送信元ID「C001」、及び転送先ID「-」が格納される。さらに、ストリームID「3」と対応付けて、再送フラグ「0」、保存フラグ「1」、計測ID「M002」、送信元ID「C001」、及び転送先ID「T001」が格納される。
 ステップS104において、応答部105は、クライアント装置20から受信した作成要求に応じて、接続中のコネクションを介してクライアント装置20に応答を送信する。受信部106は、サーバー装置30からこの応答を受信する。
 図8は、応答のデータフォーマットの一例を示す図である。応答には、要求IDと、結果情報とが含まれる。要求IDには、作成要求に含まれる要求IDが用いられる。結果情報は、作成要求が成功したか否かを示す情報である。例えば、結果情報「0」は、作成要求が成功したことを示し、結果情報「1」は、作成要求が失敗したことを示す。例えば作成要求に必要な項目が含まれていない場合や、作成要求に含まれる項目が値を有していない場合には、作成要求は失敗する。一方、作成要求にこのような不備がない場合、作成要求は成功する。例えば要求ID「1」を含む作成要求が成功した場合、応答には、要求ID「1」と、結果情報「1」が含まれる。なお、作成要求に複数のストリームIDが含まれる場合には、ストリームID毎に結果情報が含まれてもよい。
 ステップS105において、取得部107は、センサー10から出力されたデータ列を取得する。取得部107により取得されたデータ列は、メモリー22内の送信用メモリー領域に順次記憶される。この送信用メモリー領域においては、例えばキュー方式でデータが記憶される。このデータ列に含まれる各データには、センサーID及びタイムスタンプが付加される。このセンサーIDは、データを出力したセンサー10を一意に識別する情報である。タイムスタンプは、例えば計測を開始した日時を起点とした、データが取得された日時までの経過時間を示す情報である。他の例において、クライアント装置20が計時機能を有する場合、タイムスタンプは、この計時機能により計測された時刻を示す情報であってもよい。
 ステップS106において、生成部108は、ステップS105において取得されたデータ列に基づいてストリーミングデータを生成する。ストリーミングデータは、複数のセクションに分割される。各セクションには、データ列に含まれる一連の複数のデータが含まれる。例えば、セクションの間隔を1秒とした場合において、センサー10のサンプリング周期が1000Hzであり、セクションの生成周期が50Hzであるときは、一つのセクションに、センサー10から出力されたデータが20個含まれる。なお、このセクションの間隔、センサー10のサンプリング周期、及びセクションの生成周期はこの例に限定されず、他の間隔又は他の周期であってもよい。また、各セクションの長さは、任意の長さであってもよい。さらに、各セクションに含まれるユニットの数は必ずしも同じである必要はない。一つのセクションに含まれるユニットの数は、セクション毎に変化してもよい。
 図9は、セクションのデータフォーマットの一例を示す図である。セクションには、SOSと、複数のユニットと、EOSとが含まれる。SOSは、セクションの開始を示す情報である。SOSは、セクションの先頭に含まれる。複数のユニットには、一連の複数のデータが1個ずつ含まれる。EOSは、セクションの終了を示す情報である。EOSは、セクションの後尾に含まれる。EOSには、ユニットカウントと、シリアルナンバーとが含まれる。ユニットカウントは、セクションに含まれるユニットの数を示す情報である。このユニットカウントは、例えばセクション内のデータの欠損管理に用いられる。シリアルナンバーは、同一の計測単位に係るセクションを一意に識別する情報である。
 ステップS107において、付加部109は、上述したステップS106において生成されたストリーミングデータに対応するストリームIDを、そのストリーミングデータの各セクションに含まれるSOS、複数のユニット、及びEOSにそれぞれ付加する。例えばストリーミングデータに含まれるデータが、ストリームID「1」に対応する属性情報により示される属性を有する場合を想定する。この場合、このストリーミングデータの各セクションに含まれるSOS、複数のユニット、及びEOSに、それぞれストリームID「1」が付加される。
 ステップS108において、送信部110は、ステップS107においてストリームIDが付加されたストリーミングデータを、接続中のコネクションを介して、サーバー装置30に順次送信する。このとき、送信部110は、ストリーミングデータをデータ単位で送信する。この例では、データ単位とは、セクションの構成要素単位、すなわちSOS、ユニット、又はEOS単位である。受信部111は、クライアント装置20からストリーミングデータを順次受信する。
 ステップS109において、処理部112は、受信されたストリーミングデータに、その属性に対応する処理を施す。この例では、ストリーミングデータに含まれる各データに、ストリームID「1」が付加されている。ストリームテーブル121には、このストリームID「1」と対応付けて、再送フラグ「0」、保存フラグ「1」、及び転送先ID「T001」が格納されている。この場合、ストリーミングデータをストレージ34に格納する処理と、端末装置40に転送する処理とが行われる。なお、この格納処理は、セクション単位で行われてもよい。一方、この転送処理は、データ単位で行われてもよい。すなわち、各セクションに含まれるデータが、そのセクションのEOSの受信を待たずに、受信に応じて順次転送されてもよい。
 上述したステップS103において格納された属性情報は、コネクションの接続中に変更されてもよい。この場合、要求部102は、変更対象のストリームIDと変更後の属性情報を含む変更要求をサーバー装置30に送信する。情報管理部103は、この変更要求に応じてストリームテーブル121を更新する。例えばストリームID「1」と変更後の属性情報との組を含む変更要求が送信された場合、ストリームテーブル121においてストリームID「1」に対応付けられた属性情報が、変更要求に含まれる属性情報に書き換えられる。
 上述したステップS103において格納されたストリーミングデータIDは、コネクションの接続中に解放されてもよい。この場合、要求部102は、このストリーミングデータIDの解放要求をサーバー装置30に送信する。この解放要求には、図6に示す作成要求と同じデータフォーマットが用いられてもよい。例えば、ストリームID「1」の解放を要求する場合、このストリームID「1」と送信元ID「0」とを含む解放要求が送信される。情報管理部103は、クライアント装置20から受信した解放要求に応じて、ストリームID「1」を含むレコードをストリームテーブル121から削除する。これにより、ストリームID「1」と、再送フラグ「0」、保存フラグ「1」、計測ID「M001」、送信元ID「C001」、及び転送先ID「T001」との対応付けが解除される。この場合、ストリームID「1」が解放され、他のストリーミングデータの識別子として使用可能となる。これにより、多数のストリーミングデータが送信される場合であっても、使用可能なストリームIDが尽きるのが防止される。
 クライアント装置20からサーバー装置30へのストリーミングデータの送信が終了すると、ステップS110に進む。ステップS110において、コネクション制御部101は、サーバー装置30とのコネクションを切断する。具体的には、コネクション制御部101は、サーバー装置30にコネクションの切断要求を送信する。サーバー装置30は、この切断要求に応じてクライアント装置20に応答を送信する。これにより、クライアント装置20とサーバー装置30との間でコネクションが切断される。
 ステップS111において、情報管理部103は、ストリームテーブル121に格納された全てのストリームID及び属性情報を削除する。これにより、ストリームテーブル121に格納された全てのストリームIDとコネクションとの対応付けが解除される。この場合、ストリームテーブル121に格納された全てのストリームIDが解放される。そのため、他のコネクションが確立されると、これらのストリートIDは、他のストリーミングデータの識別子として使用可能となる。なお、クライアント装置20によらずにコネクションが切断された場合にも、ステップS111と同様の処理が行われてもよい。
複数のストリーミングデータを混ぜて送信する動作例
 例えば上述したステップS108において送信されたストリーミングデータに含まれるセクションが再送条件を満たす場合、このセクションに基づいて新たなストリーミングデータ(以下、「第2ストリーミングデータ」という。)が生成され、メモリー22内の再送用メモリー領域に記憶される。この再送条件を満たす場合には、例えばストリーミングデータに含まれるセクションの送信に失敗した場合や、ストリーミングデータの送信には成功しているが、データの欠損等により、サーバー装置30からエラーを示す応答を受信した場合が含まれる。この再送用メモリー領域においては、例えばキュー方式でデータが記憶される。この例では、第2ストリーミングデータに含まれるデータが、ストリームID「2」に対応する属性情報により示される属性を有する場合を想定する。この場合、第2ストリーミングデータの各セクションに含まれるSOS、複数のユニット、及びEOSには、それぞれストリームID「2」が付加される。この第2ストリーミングデータは、所定のタイミングで再送される。
 ここで、第2ストリーミングデータの再送中に、センサー10から新たなデータ列が取得された場合を想定する。この場合、このデータ列に基づいて新たなストリーミングデータ(以下、「第3ストリーミングデータ」という。)が生成され、送信用メモリー領域に記憶される。この例では、第3ストリーミングデータに含まれるデータが、ストリームID「3」に対応する属性情報により示される属性を有する場合を想定する。この場合、第3ストリーミングデータの各セクションに含まれるSOS、複数のユニット、及びEOSには、それぞれストリームID「3」が付加される。この第3ストリーミングデータは、第2ストリーミングデータに混ぜて送信される。
 図10は、第2ストリーミングデータ及び第3ストリーミングデータの送信方法の一例を示す図である。この例では、第2ストリーミングデータに含まれる或るセクション(以下、「第1セクション」という。)のSOSが送信された時に、第3ストリーミングデータの最初のセクション(以下、「第2セクション」という。)の送信準備が整った場合を想定する。この場合、第1セクションのSOSに続くユニットの間又はユニットとEOSとの間に、第2セクションに含まれるSOS、複数のユニット、及びEOSが一つずつ挿入されて送信される。
 第2ストリーミングデータ及び第3ストリーミングデータは、上述したストリーミングデータと同様にデータ単位で送信される。そのため、これらのストリーミングデータは、データ単位で混ぜて送信することができる。このように第2ストリーミングデータと第3ストリーミングデータとを混ぜて送信することにより、第2ストリーミングデータの送信完了を待たずに第3ストリーミングデータの送信を開始することができる。特に第2ストリーミングデータに含まれるデータは、再送されるものであるのに対し、第3ストリーミングデータに含まれるデータは、最初に送付されるものであるため、第3ストリーミングデータの方がより即時性が要求される。第2ストリーミングデータと第3ストリーミングデータとを混ぜて送信することにより、第3ストリーミングデータの遅延を減らすことができる。
 クライアント装置20から第2ストリーミングデータ及び第3ストリーミングデータを受信すると、処理部112は、これらのストリーミングデータに対して各々の属性に対応する処理を施す。上述したように、第2ストリーミングデータに各データには、ストリームID「2」が付加されている。ストリームテーブル121には、このストリームID「2」と対応付けて、再送フラグ「1」、保存フラグ「1」、及び転送先ID「-」が格納されている。この場合、処理部112は、第2ストリーミングデータをストレージ34に格納する処理を行う。このとき、第2ストリーミングデータに含まれるデータは再送されたものであるため、元のストリーミングデータの対応するセクションが第2ストリーミングデータのセクションで上書きされてもよい。なお、第2ストリーミングデータを転送する処理は行われない。第3ストリーミングデータについても、同様に、その属性に対応する処理が施される。
 第2ストリーミングデータ及び第3ストリーミングデータにおいては、各データにストリームIDが付加される。そのため、第2ストリーミングデータと第3ストリーミングデータとが混ぜて送信された場合でも、サーバー装置30は、各データが属するストリーミングデータを認識し、各々の属性に応じた適切な処理を施すことができる。
 以上説明した実施形態によれば、ストリーミングデータを送信する前に、クライアント装置20からサーバー装置30にストリーミングデータの属性を示す属性情報を含む要求が送信される。ストリーミングデータに含まれる各データには、そのデータが属するストリーミングデータの識別子が付加され、属性情報は付加されない。そのため、ストリーミングデータの送信において、そのストリーミングデータの属性に関するデータ量が削減される。また、互いに異なる属性のデータを含む第2ストリーミングデータと第3ストリーミングデータとを送信するときに、第2ストリーミングデータと共に第3ストリーミングデータを送信することができる。
変形例
 上述した実施形態は、本発明の一例である。この実施形態は、以下のように変形してもよい。また、以下の変形例を組み合わせて実施してもよい。
 上述した実施形態において、ストリームIDは、ストリーミングデータの各セクションに含まれるSOS、複数のユニット、及びEOSの一部だけに付加されてもよい。例えばストリームIDは、SOSだけに付加されてもよいし、EOSだけに付加されてもよい。これにより、データの属性に関するデータ量をさらに削減することができる。ただし、ストリームIDがセクションの構成要素の一部だけに付加される場合、ストリーミングデータは、データ単位ではなくセクション単位で送信される。また、この場合には、複数のストリーミングデータは混ぜずに送信される。
 上述した実施形態において、ストリーミングデータは必ずしも複数のセクションに分割される必要はない。例えばストリーミングデータには、複数のユニットだけが含まれてもよい。この場合、個々のユニットが単位データとなる。また、この場合、ストリーミングデータには、SOS及びEOSが含まれる必要はない。ただし、この場合には、データの欠損処理等の処理をセクション単位で行うことはできない。
 上述した実施形態において、サーバー装置30側でストリームIDを決定してもよい。この場合、作成要求には、ストリーミングデータの属性情報は含まれるが、ストリームIDは含まれない。サーバー装置30は、クライアント装置20から受信した作成要求に応じて、ストリームIDを決定する。ストリームテーブル121には、作成要求に含まれる属性情報と、サーバー装置30で決定されたストリームIDとが対応付けて格納される。また、応答には、このストリームIDが含まれる。この場合、受信部106は、ストリームIDを含む応答を受信する。
 ストリーミングデータの属性情報は、上述した実施形態で説明したものに限定されない。例えば属性情報は、データが間引かれたものであるか否かを示す情報であってもよい。他の例において属性情報は、データの優先度であってもよい。また、データに対して施される処理は、上述した実施形態で説明したものに限定されない。例えば、ストリーミングデータに含まれるデータが間引かれたものである場合には、間引かれたデータを補完する処理が行われてもよい。
 上述した実施形態において、クライアント装置20がサーバー装置30に送信するデータは、センサー10から出力されたデータに限定されない。このデータは、センサー10以外の対象から出力されたものであってもよい。他の例において、データは、クライアント装置20により生成されたデータであってもよい。
 上述した実施形態では、ストリーミングデータが複数種類の属性を有する例について説明したが、ストリーミングデータは必ずしも複数種類の属性を有する必要はない。ストリーミングデータは単一の属性だけを有していてもよい。この場合、作成要求には、単一の属性を示す属性情報が含まれる。
 上述した実施形態では、コネクションが確立されたことを契機として作成要求が送信されていたが、作成要求が送信されるタイミングは必ずしもこれに限定されない。作成要求は、他のタイミングで送信されてもよい。
 データ収集システム1において行われる処理のステップは、上述した実施形態で説明した例に限定されない。この処理のステップは、矛盾のない限り、入れ替えられてもよい。本発明は、データ収集システム1において行われる処理のステップを備えるデータ収集方法として提供されてもよい。また、本発明は、クライアント装置20において行われる処理のステップを備えるデータ送信方法として提供されてもよい。
 本発明は、クライアント装置20において実行されるクライアントプログラム又はサーバー装置30において実行されるサーバープログラムとして提供されてもよい。これらのプログラムは、インターネットなどの通信回線を介してダウンロードされてもよい。また、これらのプログラムは、磁気記録媒体(磁気テープ、磁気ディスクなど)、光記録媒体(光ディスクなど)、光磁気記録媒体、半導体メモリーなどの、コンピュータが読取可能な記録媒体に記録した状態で提供されてもよい。
1:データ収集システム、10:センサー、20:クライアント装置、30:サーバー装置、40:端末装置、101:コネクション制御部、102:要求部、103:情報管理部、104:解除部、105:応答部、106:受信部、107:取得部、108:生成部、109:付加部、110:送信部、111:受信部、112:処理部

Claims (13)

  1.  サーバー装置との間でコネクションが確立されると、データグループの属性を示す属性情報を含む要求を、前記コネクションを介して前記サーバー装置に送信する要求部と、
     データを取得する取得部と、
     前記取得されたデータを含む単位データに、当該単位データが属する前記データグループを識別する、前記コネクションに対応付けられた識別子を付加する付加部と、
     前記識別子が付加された前記単位データを、前記コネクションを介して前記サーバー装置に送信する送信部と
     を備えるクライアント装置。
  2.  前記単位データは、前記取得されたデータと、他のデータブロックとの区切りを示すマーカーとを含むデータブロックであり、
     前記付加部は、前記データブロックの各構成要素に前記識別子を付加する
     請求項1に記載のクライアント装置。
  3.  前記単位のデータは、前記取得されたデータと、他のデータブロックとの区切りを示すマーカーとを含むデータブロックであり、
     前記付加部は、前記データブロックの少なくとも一部に前記識別子を付加する
     請求項1に記載のクライアント装置。
  4.  前記要求部は、前記識別子を決定し、
     前記要求は、前記属性情報と前記識別子とを含む
     請求項1から3のいずれか1項に記載のクライアント装置。
  5.  前記要求に応じて、前記サーバー装置から前記コネクションを介して前記識別子を含む応答を受信する受信部を更に備える
     請求項1から3のいずれか1項に記載のクライアント装置。
  6.  前記データグループは、複数種類の属性を有し、
     前記要求は、前記複数種類の属性を示す属性情報を含む
     請求項1から5のいずれか1項に記載のクライアント装置。
  7.  前記要求部は、複数のデータグループの属性を示す複数の属性情報を含む単一の要求を送信する
     請求項1から6のいずれか1項に記載のクライアント装置。
  8.  前記要求部は、前記コネクションが確立されたことを契機として、前記要求を送信する
     請求項1から7のいずれか1項に記載のクライアント装置。
  9.  クライアント装置とサーバー装置とを備え、
     前記クライアント装置は、
     前記サーバー装置との間でコネクションが確立されると、データグループの属性を示す属性情報を含む要求を、前記コネクションを介して前記サーバー装置に送信する要求部と、
     データを取得する取得部と、
     前記取得されたデータを含む単位データに、当該単位データが属する前記データグループを識別する、前記コネクションに対応付けられた識別子を付加する付加部と、
     前記識別子が付加された前記単位データを、前記コネクションを介して前記サーバー装置に送信する送信部とを有し、
     前記サーバー装置は、
     前記クライアント装置から前記単位データを受信する受信部と、
     前記受信された単位データに、当該単位データに付加された前記識別子により識別される前記データグループの前記属性に対応する処理を施す処理部とを有する
     データ収集システム。
  10.  前記要求部は、前記属性情報と前記識別子との対応付けを解除する他の要求を、前記コネクションを介して前記サーバー装置に送信し、
     前記サーバー装置は、
     前記要求に含まれる前記属性情報と、前記識別子とを対応付けて記憶する記憶部と、
     前記他の要求に応じて、前記属性情報と前記識別子との対応付けを解除する解除部とを備える
     請求項9に記載のデータ収集システム。
  11.  前記処理は、前記データを転送する処理を含み、
     前記要求は、前記データの転送先を識別する転送先識別子を含む
     請求項9又は10に記載のデータ収集システム。
  12.  サーバー装置との間でコネクションが確立されると、データグループの属性を示す属性情報を含む要求を、前記コネクションを介して前記サーバー装置に送信するステップと、
     データを取得するステップと、
     前記取得されたデータを含む単位データに、当該単位データが属する前記データグループを識別する、前記コネクションに対応付けられた識別子を付加するステップと、
     前記識別子が付加された前記単位データを、前記コネクションを介して前記サーバー装置に送信するステップと
     を備えるデータ送信方法。
  13.  コンピュータに、
     サーバー装置との間でコネクションが確立されると、データグループの属性を示す属性情報を含む要求を、前記コネクションを介して前記サーバー装置に送信するステップと、
     データを取得するステップと、
     前記取得されたデータを含む単位データに、当該単位データが属する前記データグループを識別する、前記コネクションに対応付けられた識別子を付加するステップと、
     前記識別子が付加された前記単位データを、前記コネクションを介して前記サーバー装置に送信するステップと
     を実行させるためのプログラム。
PCT/JP2017/028214 2017-08-03 2017-08-03 クライアント装置、データ収集システム、データ送信方法、及びプログラム WO2019026229A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201780093422.XA CN110959155B (zh) 2017-08-03 客户端设备、数据收集系统、数据发送方法和程序
US16/631,877 US11483362B2 (en) 2017-08-03 2017-08-03 Client apparatus, data collection system, data transmission method, and program
EP17919980.7A EP3663929B1 (en) 2017-08-03 2017-08-03 Client device, data collection system, data transmission method, and program
PCT/JP2017/028214 WO2019026229A1 (ja) 2017-08-03 2017-08-03 クライアント装置、データ収集システム、データ送信方法、及びプログラム
JP2019533816A JP7004982B2 (ja) 2017-08-03 2017-08-03 クライアント装置、データ収集システム、データ送信方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/028214 WO2019026229A1 (ja) 2017-08-03 2017-08-03 クライアント装置、データ収集システム、データ送信方法、及びプログラム

Publications (1)

Publication Number Publication Date
WO2019026229A1 true WO2019026229A1 (ja) 2019-02-07

Family

ID=65232447

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/028214 WO2019026229A1 (ja) 2017-08-03 2017-08-03 クライアント装置、データ収集システム、データ送信方法、及びプログラム

Country Status (4)

Country Link
US (1) US11483362B2 (ja)
EP (1) EP3663929B1 (ja)
JP (1) JP7004982B2 (ja)
WO (1) WO2019026229A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11331274A (ja) 1998-05-14 1999-11-30 Nippon Telegr & Teleph Corp <Ntt> Atmゲートウェイ装置
JP2005176407A (ja) 2002-03-13 2005-06-30 Matsushita Electric Ind Co Ltd データ通信システム
JP2013008295A (ja) * 2011-06-27 2013-01-10 Nippon Telegr & Teleph Corp <Ntt> 情報記録装置、情報記録方法およびプログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3183343B2 (ja) 1999-02-26 2001-07-09 日本電気株式会社 データ通信方法、端末装置、中継装置、データ通信システム及びその記録媒体
EP1345384A3 (en) 2002-03-13 2004-09-22 Matsushita Electric Industrial Co., Ltd. Data communication method
JP4808409B2 (ja) * 2005-01-14 2011-11-02 株式会社日立製作所 センサネットワークシステム、センサデータの検索方法及びプログラム
JP6105936B2 (ja) 2011-01-12 2017-03-29 シャープ株式会社 再生装置
US9396337B2 (en) * 2012-04-11 2016-07-19 Intermec Ip Corp. Wireless sensor field enumeration
US20140195516A1 (en) * 2013-01-09 2014-07-10 Dropbox, Inc. Systems and methods for presenting content items in a collections view
JP6194292B2 (ja) 2014-08-11 2017-09-06 日本電信電話株式会社 通信システム、方法及びプログラム
CA2931906C (en) * 2015-06-03 2023-09-05 Evertz Microsystems Ltd. Systems and methods for determining a destination location in a network system
EP3440349B1 (en) * 2016-04-07 2021-06-16 Vestas Wind Systems A/S Data collection system for wind turbine data
US10812543B1 (en) * 2017-02-27 2020-10-20 Amazon Technologies, Inc. Managed distribution of data stream contents

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11331274A (ja) 1998-05-14 1999-11-30 Nippon Telegr & Teleph Corp <Ntt> Atmゲートウェイ装置
JP2005176407A (ja) 2002-03-13 2005-06-30 Matsushita Electric Ind Co Ltd データ通信システム
JP2013008295A (ja) * 2011-06-27 2013-01-10 Nippon Telegr & Teleph Corp <Ntt> 情報記録装置、情報記録方法およびプログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
See also references of EP3663929A4
YOSHIMASA ISHI: "Development and Evaluation of a P2P Streaming System with Hop Limit for Sensor Data Stream with Different Collection Cycles", TRANSACTIONS OF INFORMATION PROCESSING SOCIETY OF JAPAN , vol. 57, no. 2, 1 February 2016 (2016-02-01), pages 583 - 596, XP055658889 *

Also Published As

Publication number Publication date
US11483362B2 (en) 2022-10-25
CN110959155A (zh) 2020-04-03
EP3663929A1 (en) 2020-06-10
US20200145469A1 (en) 2020-05-07
EP3663929A4 (en) 2021-02-24
JPWO2019026229A1 (ja) 2020-07-16
JP7004982B2 (ja) 2022-01-21
EP3663929B1 (en) 2022-11-23

Similar Documents

Publication Publication Date Title
EP2874116A1 (en) Communication method between content requester and content provider for providing content and real-time streaming content in content name-based content centric network
CN105450785B (zh) 一种文件传输方法和装置
US10680922B2 (en) Communication control apparatus and communication control method
JP7102862B2 (ja) 無線通信システムおよび無線通信方法
JP7004982B2 (ja) クライアント装置、データ収集システム、データ送信方法、及びプログラム
JP6893009B2 (ja) クライアント装置、データ収集システム、データ送信方法、及びプログラム
CN110959155B (zh) 客户端设备、数据收集系统、数据发送方法和程序
CN115459873B (zh) 一种应用于网络设备的数据传输方法、存储介质和设备
CN114697205B (zh) 日志处理方法及装置
CN104468190A (zh) 一种wifi数据抓包方法、装置及智能终端
WO2019043855A1 (ja) データ伝送装置、データ処理システムおよびデータ伝送方法
WO2018078913A1 (ja) データ収集システム、データ収集方法、クライアント装置、サーバー装置及びプログラム
WO2019207695A1 (ja) 転送装置、転送システム、転送方法、及びプログラム
JP2004289748A (ja) マルチメディア通信の品質監視システム及びその品質監視方法
US20140348163A1 (en) Port switching method, analysis device, and recording medium
WO2014007247A1 (ja) ネットワーク装置、パケット処理方法及びプログラム、並びにネットワークシステム
JP4709060B2 (ja) 通信装置、通信装置の制御方法及びプログラム
JP4350640B2 (ja) 端末装置
CN112887354B (zh) 一种性能信息的获取方法和装置
CN109842465A (zh) 数据传输方法、数据端设备
CN116708247B (zh) 路由器测速方法和路由器
JP2007166659A5 (ja)
CN114189565A (zh) 一种头域还原系统、方法及相关设备
JP2017022687A (ja) 通信制御装置及び通信制御方法
JP5842657B2 (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: 17919980

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019533816

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2017919980

Country of ref document: EP

Effective date: 20200303