EP3238383A1 - Procédé de traitement de messages montants ou descendants applicatifs en provenance ou à destination d'une unité électronique de contrôle d'une installation domotique par un serveur - Google Patents
Procédé de traitement de messages montants ou descendants applicatifs en provenance ou à destination d'une unité électronique de contrôle d'une installation domotique par un serveurInfo
- Publication number
- EP3238383A1 EP3238383A1 EP15823712.3A EP15823712A EP3238383A1 EP 3238383 A1 EP3238383 A1 EP 3238383A1 EP 15823712 A EP15823712 A EP 15823712A EP 3238383 A1 EP3238383 A1 EP 3238383A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- message
- electronic control
- control unit
- application
- server
- Prior art date
- Legal status (The legal status 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 status listed.)
- Withdrawn
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2816—Controlling appliance services of a home automation network by calling their functionalities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2816—Controlling appliance services of a home automation network by calling their functionalities
- H04L12/282—Controlling appliance services of a home automation network by calling their functionalities based on user interaction within the home
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2823—Reporting information sensed by appliance or service execution status of appliance services in a home automation network
- H04L12/2827—Reporting to a device within the home network; wherein the reception of the information reported automatically triggers the execution of a home appliance functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/283—Processing of data at an internetworking point of a home automation network
- H04L12/2832—Interconnection of the control functionalities between home networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/143—Termination or inactivation of sessions, e.g. event-controlled end of session
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L2012/2847—Home automation networks characterised by the type of home appliance used
- H04L2012/285—Generic home appliances, e.g. refrigerators
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
Definitions
- the present invention relates to a method for processing application upstream messages and application downstream messages between a server and an electronic control unit of a home automation system.
- connection mechanism between the electronic unit and the server, in order to route the data from the server to the electronic control unit and vice versa.
- the present invention aims to solve all or part of the disadvantages mentioned above.
- the present invention relates to a method for processing application uplink messages from an electronic control unit of a home automation installation by a server comprising the following steps:
- a step of posting an incoming message in the case where the message amount application contains useful data, the incoming message being posted on an incoming queue for processing by an application module, the incoming message comprising useful data determined according to the useful data of the application amount message and an identifier of the electronic control unit;
- the first processing time of each request varies little as the useful data are posted on a queue for a second asynchronous processing. Following the first processing, or in a maximum predictable or bounded delay, the connection corresponding to the request is released.
- a large number of electronic control units can communicate with the processing instances of the server that supports the connections, also called connectors, because the connections are released quickly, without waiting for the end of the processing performed asynchronously, which allows to limit the number of concurrent connections and therefore the corresponding resources on the server.
- This mode of communication is particularly suitable for home automation applications in which a large number of electronic control units are connected to a server with a small volume of data to be exchanged therewith.
- the term amount relates to the messages transmitted by the electronic unit to the server and that the term descendant concerns the messages transmitted by the server to the electronic control unit.
- the release of the connection can be made according to the case on the initiative of the server or the electronic control unit.
- immediate release is meant a release after a complete transmission step.
- the release also includes the management of the acknowledgment message requested by most connected protocols (acknowledgment or "acknowledge", ACK).
- acknowledgement for example, in the case of receipt of useful data, after sending the ACK message; in the case of a broadcast, after the receipt of the ACK message.
- a maximum delay Tmax may be provided before the connection is released, this delay making it possible, for example, to wait for a return of an application module to the incoming message, in the form of a descending message for which a message Application descendant could be transmitted by the server to the electronic control unit.
- the calculation of the delay Tmax can in particular be performed from the step of establishing a connection, from the posting step, or from a step of receiving an application amount message.
- an empty response may be sent at the end of the delay Tmax and prior to the release of the connection.
- An empty response does not contain useful data, but may contain the acknowledgment type (ACK) message relating to the request formed by the amount message.
- ACK acknowledgment type
- the application response to the amount message may be communicated during a subsequent connection.
- the uplink message further comprises an identifier of the processing instance or connector.
- the method comprises a step of reserving resources by the server for managing the connection.
- the application amount message corresponds to a request from the electronic control unit.
- the incoming message includes a processing priority attribute, the posting step being performed in a position different from the queue based on the value of the priority attribute.
- the method comprises a step of transmitting a descending message to the electronic control unit in response to the application amount message, the descending message comprising previously received useful data or no useful data.
- the method comprises a step of determining an incoming queue on which the incoming message must be posted, prior to the posting step, the determining step taking into account the identifier of the electronic control unit.
- the determination step implements for example the use of a hash function.
- the method comprises a preliminary step of routing the application upstream messages and / or of the connection as a function of the electronic control unit to a processing instance, the correspondence between a processing instance and a electronic control unit being stored in a repository.
- the routing is performed according to an identifier of the electronic control unit, such as an IP address.
- the method comprises a subsequent step of collecting at least one message on an incoming queue by a listener in connection with the application module.
- the method comprises:
- a second step of receiving a second application amount message subsequently to the first step of receiving a first application amount message by the server from the electronic control unit, prior to the transmission step of an application descendant message, the second application amount message comprising useful data or no useful data;
- the application downlink message comprising useful data corresponding to a response to a reception of the first application amount message from the electronic control unit.
- the first step of receiving the first application amount message is performed between a first step establishing a connection between the server and the electronic control unit and a first step of releasing the connection;
- the second step of receiving the first application amount message and the step of transmitting the application downlink message are performed between a second step of establishing a connection between the server and the electronic control unit, after the first step of releasing the connection and a second releasing step of the connection;
- the present invention also relates to a method for processing downstream messages to an electronic control unit of a home automation installation by a server comprising the following steps:
- the step of releasing the connection is performed at the initiative of the server.
- immediate release means a release after a complete transmission step.
- the release also includes the management of the acknowledgment message requested by most connected protocols (acknowledgment or "acknowledge", ACK).
- acknowledgement for example, in the case of receipt of useful data, after sending the ACK message; in the case of a broadcast, after the receipt of the ACK message.
- a maximum delay Tmax may be provided before the connection is released.
- the calculation of the delay Tmax can in particular be carried out from the step of establishing a connection, or from a possible step of posting a message on an incoming queue, or even counting a step of receiving a message applicative amount possible.
- the method comprises a step of transmission by the server to an electronic control unit, according to a first communication protocol, of a connection opening request message to the server ; then a step of accepting the establishment of a connection by the server at the initiative of the electronic control unit according to a second connection protocol;
- the step of establishing the connection at the initiative of the electronic control unit occurs later in response to the request to open a connection according to a second communication protocol.
- the establishment of the connection according to the second communication protocol is carried out at the initiative of the electronic control unit to the server, following the request for connection opening formulated by the server according to the first protocol.
- connection will be authorized by the firewall because it is the initiative of the electronic control unit.
- the server can then use the connection according to the second protocol to communicate the useful data corresponding to its request to open a connection in the message down.
- the use of two communication protocols makes it possible to use a simpler first protocol involving a low use of resources on the server, and a second connected protocol involving a greater use of resources only when information must be communicated by the server.
- the first protocol is a non-connected mode protocol.
- the second protocol corresponds to a communication in connected mode.
- the first communication protocol is the UDP protocol.
- the second communication protocol is the TCP protocol.
- the first and / or the second protocol may be of the Raw IP or other protocol type above IP.
- the first protocol used may be of various other types so as not to be subject to the constraints imposed by the firewall.
- the first communication protocol is a protocol comprising sending a message from the server to the electronic control unit, in particular an SMS message.
- the first protocol corresponds to data provided in an audio and / or video stream, for example an MPEG stream.
- the step of transmitting an application downward message to the electronic control unit is performed according to the second communication protocol.
- the method further comprises a first step of periodically receiving a rising message according to the first communication protocol by the server from the electronic control unit; the first transmission step according to the first communication protocol of a connection opening request message comprising a step of transmitting at least one downward message subsequent to the first reception step.
- the method further comprises, prior to the first step of transmitting a connection opening request, a step of transmission by the server to the electronic control unit of a server. downlink message corresponding to an accessibility response;
- the method comprises a step of receiving an application amount message by the server from the electronic control unit, prior to the step of transmitting an application descendant message, the message application amount comprising useful data or no useful data;
- the application downlink message is accepted by the "firewall" protecting the private network on which the electronic control unit is located because said downstream message is interpreted as a response to a rising message of the electronic control unit. .
- HTTP HyperText Transfer Protocol
- HTTPS HyperText Transfer Protocol
- the server may in a response in the form of a descending message according to the second protocol to communicate the useful data corresponding to its request to open a connection.
- the method comprises a step of storing useful data included in at least one outgoing message and the identifier of the electronic control unit;
- the storage step is performed by storing the useful data of one or more outgoing messages corresponding to an identifier of an electronic control unit, the useful data then being transmitted during the step of transmission to the electronic control unit corresponding to the identifier.
- the storage step is performed until a waiting period or receipt of an application amount message or an establishment of a connection with the electronic control unit.
- a connection request may be sent by the server to communicate the useful data to the electronic control unit if no connection has been established on the initiative of the latter.
- the method comprises
- the downlink application comprising downward payload corresponding to a response to the first application amount message from the electronic control unit.
- the useful data exchanged up and down during a request and response exchange are not necessarily related to the same application exchange or application transaction between the electronic unit control and an application module, but with different exchanges or transactions.
- this system makes it possible to take advantage of the exchanges to communicate the present data to be transferred from one side to the other, and to simulate a data exchange in the form of a request and a response, which is a mode of communication accepted by the firewall.
- the first step of receiving the first application amount message is performed between a first step of establishing a connection between the server and the electronic control unit and a first step of releasing the connection ;
- the second step of receiving the first application amount message and the step of transmitting the application downlink message are performed between a second step of establishing a connection between the server and the electronic control unit, after the first step of release of the connection and a second step of releasing the connection.
- the outgoing message comprises useful data generated by an application module following an external event.
- this system makes it possible to take advantage of the exchanges to communicate the present data to be transferred from one side to the other, and to simulate a data exchange in the form of a request and a response, which is a mode of communication accepted by the firewall.
- the present invention also relates to a method for processing application uplink messages by an electronic control unit of a home automation installation intended for a server, comprising the following steps:
- the method comprises a step of receiving an application downlink message by the electronic control unit in from the server, the application downlink message including useful data or no useful data.
- the application amount message corresponds to a request from the electronic control unit, or else information from a sensor, a log, a response to an order or a request from the server.
- the present invention also relates to a method of processing application downstream messages by an electronic control unit of a home automation installation from the server comprising the following steps:
- the method comprises a step of transmitting an application amount message by the electronic control unit to the server, the application amount message comprising useful data or no useful data.
- the method comprises a first reception step according to a first communication protocol by the electronic control unit of a connection opening request message from the server; the step of establishing a connection to the server being performed at the initiative of the electronic control unit according to a second connection protocol.
- the method comprises a first step of periodically transmitting a rising message according to the first communication protocol by the electronic control unit to the server, the first step of receiving a message of request to open a connection comprising a reception step according to the first protocol of at least one downlink message subsequent to the first periodic transmission step according to the first communication protocol;
- the sending of a rising message enables the server to respond to this message with a message that can reach the message.
- electronic unit as it will be considered as a response to the message amount.
- the periodic sending of the amount message offers windows of time to the server to communicate connection opening requests.
- a periodicity of the messages below the window of time allowed by the firewall to respond to a rising message it is possible to permanently maintain a possibility of communication from the server to the electronic control unit, ie ie an open communication channel.
- a periodic sending makes it possible to know the state of the network link between the electronic control unit and the server.
- the method comprises, prior to the first step of receiving a connection opening request, a reception step according to the first communication protocol by the electronic control unit of a message. descending from the server corresponding to an accessibility response;
- the preliminary step and the second step can be simultaneous, successive and / or have a time recovery period.
- the prior reception step corresponds to the reception of an accessibility response according to a first delay after the transmission step, in order to maintain the possibility of receiving a second frame according to a second delay.
- the second step corresponds to receiving a connection request during said second delay.
- the method comprises a step of monitoring at least a delay of reception of a downlink message from the server following the first transmission step, the triggering a new first transmission step being performed in case of exceeding the at least one reception period.
- the method comprises a step of transmitting an encryption key by the electronic control unit to the server, so as to enable a signature of the upstream and / or downstream messages according to the first communication protocol and / or according to the second communication protocol.
- the method comprises a step of receiving an invalid or expired key indication from the server, and in response a new step of transmitting an encryption key.
- the present invention also relates to a computer program product comprising portions of program code for executing the steps of a method for processing upstream messages or downstream messages by a server as described above.
- the present invention also relates to an electronic control unit of a home automation installation comprising a processing unit arranged to contain and execute the computer program product implementing the steps of the method, the electronic control unit further comprising at least a communication interface for controlling and / or controlling at least one actuator, in particular a movable element of a building, or other equipment that can be controlled or controlled electrically or electronically, such as for example a control system. alarm, or at least one sensor, and a communication interface for communication with a server.
- the present invention also relates to a computer program product comprising portions of program code for executing the steps of a method for processing upstream messages or downstream messages by an electronic control unit as described above.
- the present invention also relates to a server for controlling and / or remote control of at least one electronic control unit of a home automation installation comprising a processing unit arranged to contain and execute the computer program product implementing the steps of the method, the server further comprising at least one communication interface intended in particular for the communication according to the first communication protocol or the second communication protocol with at least one electronic control unit.
- the server may also include a communication interface for communication with a user interface.
- the user interface may for example be formed by a web server communicating with a user terminal, for example a computer, a mobile phone or a tablet.
- the present invention also relates to a distributed system comprising at least one server and a plurality of electronic control units arranged to communicate with the server so as to implement the method as described above.
- Figure 1 is a diagram illustrating the structure of a system for implementing a method of processing application upstream and downstream messages between a server and a set of electronic control units home automation systems.
- Figure 2 is a diagram illustrating the components of the server processing unit and their interactions.
- FIG. 3 is a diagram illustrating a mode of implementation of a method for processing the upstream messages.
- FIG. 4 is a diagram illustrating a mode of implementation of a method of processing the application downstream messages.
- FIG. 4bis is a diagram illustrating a mode of implementation of a method of processing a plurality of downstream messages and application amounts.
- Figure 5 is a diagram illustrating a mode of implementation of a data transmission method.
- Fig. 6 is a diagram illustrating an additional step of the method of Fig. 5.
- Figure 7 is a diagram illustrating the structure of a second system for implementing a method of data transmission between a server and a set of electronic control units home automation systems.
- a distributed system comprises at least one server S and a plurality of electronic control units U of home automation installations arranged to communicate with the server S so as to implement a transmission method of data.
- Each electronic control unit of a home automation system is disposed on a private network PN, PN ', whose access is generally protected by a firewall FW.
- the server S is also arranged on a private network NS.
- the private networks PN, PN ', SN are connected to an extended network N, for example the Internet.
- an electronic control unit U of a home automation installation comprises a processing unit 2 arranged to contain and execute a first computer program or a first set of computer programs.
- the processing unit 2 comprises a processor, a storage flash memory and a random access memory, and an Ethernet chip PHY.
- the electronic control unit U furthermore comprises at least one communication interface 3 intended for the control / control of movable element actuators of a building, sensors, or other equipment with electrical or electronic control such as an alarm system.
- the communication interface 3 allows the control and the control of at least one actuator 5, 5 'of a movable element of a building, for example a roller shutter 6 or a sunshade 6'or still the reception of information of a sensor 7 providing information of a user's presence or values of surrounding parameters such as temperature, humidity, brightness.
- the interface can allow the control / command of an alarm system 8.
- the communication interface may comprise a lo-homecontrol and / or Zwave and / or WM-Bus radiofrequency chip communicating at a frequency of 868 MHz, and / or an RTS / RTD / RTD + radio frequency chip communicating at a frequency of 433 MHz. Mhz.
- the electronic control unit U furthermore comprises a battery and / or a mains power supply, as well as physical connection ports such as, for example, USB host, RJ45 and micro-USB.
- the electronic control unit U also includes interface elements such as reset buttons, configuration buttons, launch buttons representedrii, and operating indicators, such as LEDs.
- the electronic control unit U furthermore comprises a communication interface 4 intended for communication according to the first communication protocol PI or the second communication protocol P2 with a server S, such as in particular a network card that can be the Ethernet chip PHY.
- the server that allows the remote control and / or control of the plurality of electronic control units U of a home automation installation comprises a processing unit 102 arranged to contain and execute a second program or a set of second programs.
- the server s further comprises at least one communication interface 104 intended for communication according to the first communication protocol PI or the second communication protocol P2 with the plurality of electronic control units U.
- the server s may also comprise a communication interface 106 intended for communication with a user interface 107.
- the user interface 107 may for example be formed by a web server communicating with a user terminal 108 via the network N, for example a computer , a cell phone or a tablet.
- Figure 2 illustrates the components of the server processing unit 102 and their interactions.
- server is a logical designation that may cover the use of multiple physical servers to distribute the computing load to be performed.
- One or more MA application modules are running on the server.
- the application modules MA are intended to process requests from the electronic control units U or to generate commands for the units electronic control U based on external events, such as an order communicated by a user through the terminal 108 connected to the web server 107.
- the architecture for processing the upstream and downstream messages between the communication interface 104 and the application modules MA comprises a plurality of components, and in particular:
- a first routing component Rt is a first routing component
- a Q.M queue manager for managing a plurality of input queues Q.e and an output queue Q.s;
- a Reg repository for storing associations defined between C-connector instances and U-control electronic units for routing communications.
- the first routing component is intended to route the messages of the electronic control units U to a connector instance C, in particular according to an identifier of the electronic control unit, such as an IP address.
- Each connector C makes it possible to manage the connection Cnx and the exchange of data with a plurality of electronic control units U synchronously and to communicate asynchronously by posting or by collecting messages on the incoming queues Qe, and respectively outgoing Qs queue manager Qs.
- the message handlers H interface between the queues and the application modules MA input and output.
- the different types of components can be distributed on different physical servers in order to distribute the processing load and to adapt to the number of connections to be processed.
- an NC number of connector instances an NQ.e number of incoming queues on a queue manager QM, an NH number of message handlers each comprising NLT instances of listeners or LT listener threads on Qe incoming queues, and a NMA number of application modules or application module instances. Since the application concerned must ensure that the sequence of messages from an electronic control unit U is respected, the routing component ensures that communications from an electronic control unit are always routed. to the same C connector instance among the NC connector instances. Similarly, each connector instance C posts the messages in connection with an electronic control unit on the same queues Qe among the NQ.e queues. In this case, a listener or a listener thread must listen on a single queue, to then feed the application modules.
- the set of connector instances C collect messages on said queue Qs by selecting the messages assigned to them, that is to say containing for example their identifier.
- FIG. 3 represents the steps of a process for processing application messages Mm originating from an electronic control unit U of a home automation installation by a server S.
- An application amount message Mm may correspond to a request from the electronic control unit, or information from a sensor, a log, a response to an order or a request from the server.
- a storing step EMU0 identification data Rqid of useful data PIm is performed by the electronic control unit U in order to correlate the said PIm payload with payload Pld of a subsequent downstream message. If the amount message does not correspond to a request to be answered by the server S, this step can be omitted.
- An establishment step EMU1 of a connection Cnx to the server S is then performed at the initiative of the electronic control unit U accepted by the server s in a step EMC1.
- This connection is for example made according to the TCP communication protocol.
- a resource reservation is performed by the server S for the management of the connection.
- a routing step ERtM1 of the communication to a connector instance C as a function of the electronic control unit U is performed, the correspondence between a processing instance C and a electronic control unit U being stored in the repository Reg.
- the routing is performed according to an identifier of the electronic control unit, such as an IP address.
- an EMU2 transmission step of an application amount message Mm is performed by the electronic control unit U, the message being received by a connector instance C in a step EMC2.
- the rising message Mm comprises useful data Plm and an identifier Uid of the electronic control unit U.
- the connector instance C then performs a step EMC3 determination of an incoming queue Q.e, on which an incoming message Me must be posted.
- This determination step takes into account the identifier of the electronic control unit Uid, for example by implementing the use of a hash function on the basis of the identifier Uid.
- an EMC4 posting step of an incoming message Me is performed.
- the useful data Plm of the incoming message Me are determined according to the useful data Plm, the application amount message Mm. In particular, it can be a copy of this useful data Plm.
- the posting is performed on the incoming queue Q.e for processing by an application module MA.
- the incoming message Me comprises, in addition to the useful data Plm, an identifier of the electronic control unit Uid and an identifier Cid of the connector instance C.
- the incoming message may also include a processing priority attribute, the posting step being performed in a position different from the Q.e queue depending on the value of the priority attribute in order to change its processing order.
- An EMC7 monitoring step of maximum delay Tmax is performed by the connector before the release of the Cnx connection, this delay allowing, for example, waiting for an application module to return to the incoming message, in the form of a message downlink for which an application downlink message could be transmitted by the server to the electronic control unit.
- the calculation of the delay Tmax can notably be carried out starting from the step of establishing an EMC1 connection, starting from the posting step EMC3, or starting from a step of receiving an application amount message. EMC2.
- the delay Tmax is counted from the posting step EMC4.
- the connector performs a step EMC8 transmission of a Md downlink message to the electronic control unit U which receives it in a step EMU8, in response to the message Mm application amount.
- the downlink message Md can include:
- the downlink message will include either payload data Pld corresponding to another application exchange than that involving the amount message; or no useful data.
- An EMC9 release step of the connection Cnx is then performed by the connector C and found in a step EMU9 by the electronic control unit U.
- a listener instance H performs an EMH5 collection of at least one incoming message Me on an incoming queue Q.e.
- the listener H can then communicate the content of the message to an application module MA in an EMMA6 step.
- the application module then performs the processing of the incoming message Me.
- the application modules MA are intended to process the requests coming from the electronic control units U or to generate commands intended for the electronic control units U on the external events database, such as an order communicated by a user via the terminal 108 connected to the web server 107.
- the application modules MA communicate in a step EDMAl data useful to a transmission thread AND a message manager H, specifying the electronic control unit U recipient of this payload data Pld.
- the message manager H sets on the outgoing queue Qs of the queue manager QM an outgoing message Ms comprising an identifier of an electronic control unit Uid, an identifier of a connector Cid and useful data Pld.
- Determining the identifier of the connector Cid is performed by interrogating the repository Reg to determine if the electronic control unit is associated with a connector or a connector instance C.
- the outgoing message Ms may also include a processing priority attribute Pr, the posting step being performed in a position different from the queue Qs according to the value of the priority attribute in order to modify its order of priority. treatment.
- the method then comprises an EDC3 collection step of an outgoing message Ms on an outgoing queue Q.s coming from an application module MA.
- the outgoing Ms messages may include useful data Pld corresponding to a response to a previous incoming message Me posted following receipt of a message amount Mm from the electronic control unit U or the payload data Pld generated by a application module MA following an external event.
- the storage step EDC4 is performed by storing the user data Pld of one or more outgoing Ms messages corresponding to a Uid identifier of an electronic control unit U until a waiting time expires Twait or reception an application amount message Mm.
- an EDU5 / EDC5 establishment step of a connection Cnx between the server S and the electronic unit of U control corresponding to the identifier of the electronic unit of Uid control included in the Ms outgoing message is performed.
- This step corresponds either to the establishment of a connection at the initiative of the electronic control unit which has useful data to transmit or to the establishment of a connection at the initiative of the electronic unit. control after a request to establish a connection by the connector as will be detailed later,
- a rising message Mm is transmitted in a step EDU6 by the electronic control unit U and received by the server s in a step EDC6, the rising message Mm comprising useful data Plm or none useful data.
- An application downlink message Md is then transmitted in a step EDC8 to the electronic control unit U which receives it in a step EDU8, the application downlink message Md comprising useful data PLd determined from the payload data Pld of the outgoing message (s). Ms stored in step EDC4.
- An EDC7 monitoring step of maximum delay Tmax can be optionally performed by the connector before the release of the Cnx connection.
- the calculation of the delay Tmax can in particular be carried out from the step of establishing an EDC5 connection, from a possible postage step to an incoming queue, or from a reception step of an EDC6 application amount message.
- the delay T max is counted from the step of receiving an application amount message EDC 6.
- the release of the connection can be provided immediately.
- an EDC9 release step of the connection Cnx is performed, for example at the initiative of the server.
- the control unit U can then carry out a verification step EDU10 of the correspondence of the payload data P1 received with a prior request corresponding to a transmission of a rising message Md by using identification data Rqid of the stored payload data Plm.
- EMU1 / EMC1 or EDU5 / EDC5 connection establishment steps EMU2 / EMC2, EDU6 / EDC6 upstream application message exchange and EMU8 / EMC8, EDU8 / EDC8, and EMU9 connection release transactions, EMC9 may be common to both processes.
- EMC9 may be common to both processes.
- several EDC3 and EDC4 storage steps can be performed while waiting for the establishment of a Cnx connection.
- upstream and downstream useful data flowing during a request and response exchange do not necessarily correspond to the same application exchange between the electronic control unit.
- U and an application module MA do not necessarily correspond to the same application exchange between the electronic control unit.
- U and an application module MA do not necessarily correspond to the same application exchange between the electronic control unit.
- U and an application module MA but with different exchanges.
- this system makes it possible to take advantage of the exchanges to communicate the present data to be transferred from one side to the other, and to simulate a data exchange in the form of a request and a response, which is a mode of communication accepted by the FW firewall.
- FIG. 4bis shows a method of processing application upstream and downstream messages in which several connection steps EDU5a / EDC5a, EDU5b / EDC5b and EDU5c / EDC5c and several disconnection steps EDU9a / EDC9a, EDU9b / EDC9b and EDU9c / EDC9c are carried out, an upstream message Mml, Mm2, Mm3 and an application downlink message Md1, Md2, Md3 being exchanged as part of each of these connections during transmission steps EDU6a, EDU6b, EDU6c and reception EDC6a, EDC6b, EDC6c messages application and reception amounts EDU8a, EDU8b, EDU8c and EDC8a, EDC8b, EDC8c transmission of respective downstream messages.
- FIG. 4bis illustrates an example in which two X, Y application transactions involving a request and an application response are performed.
- the X and Y transactions correspond to requests from the electronic control unit to which the server must respond.
- the first application message amount Mml includes useful data PlmX corresponding to the request of the transaction X.
- the first downlink message Md1 does not include any useful data or empty payload represented by PldO.
- the second application message amount Mm2 includes useful data PlmY corresponding to the request of the transaction Y.
- the second downlink message Md2 comprises useful data PldX corresponding to the response of the transaction X.
- the third application message amount Mm3 does not include useful data, which is represented by Plmfl.
- the downlink message Md2 comprises useful data PldX corresponding to the response of the transaction X.
- the useful data exchanged upstream and downstream during an upstream and downstream message exchange are not necessarily relative to the same application exchange or transaction between the electronic control unit and an application module, but with different exchanges or transactions.
- the correlation can be performed on the side of the electronic control unit with the identification data Rqid useful data Plm corresponding to an application transaction.
- the two methods of processing the upstream and downstream application messages involve the establishment of a connection Cnx between one of the electronic control units U and the server S. Since the electronic control unit U is located on a network Private PN protected by a firewall, the exchange of data between the server and the plurality of electronic control units must take into account the presence of this firewall. In particular, the establishment of a connection at the initiative of a server outside the private network is usually prohibited by a firewall or can be made difficult by the use of address translation mechanism (NAT ).
- NAT address translation mechanism
- the present invention implements a method of data transmission allowing in particular the transmission of application messages from the server S to an electronic control unit U.
- FIG. 5 represents a diagram of implementation of the data transmission methods executed on the server S, in particular by a connector C and on an electronic control unit U of a home automation system I.
- the method comprises a first phase PhO for negotiating a secret key, a second phase Phi produced according to the first communication protocol intended to collect a connection request from the client. server S and a third phase Ph2 data transmission following the establishment of a connection according to the second communication protocol at the initiative of the electronic control unit.
- the negotiation phase of a secret key PhO comprises a step EO transmission of an encryption key in a message Mkey by the electronic control unit U to the server S which receives it during a step EO ', so to enable a signature of the upstream and / or downstream messages according to the first communication protocol PI and / or according to the second communication protocol P2.
- the encryption key may in particular be chosen randomly by the electronic control unit U.
- the server acknowledges receipt of the key and validates that it has taken into account the new key by a MkeyAck downlink message transmitted in a step ⁇ which is received by the electronic control unit U during a reception step El.
- the exchanges between the electronic control unit U during the negotiation phase can be performed according to a communication protocol that is different from or similar to the first communication protocol and the second communication protocol PI and P2.
- a communication protocol that is different from or similar to the first communication protocol and the second communication protocol PI and P2.
- HTTPS type protocol can be chosen which makes it possible to communicate the key in a secure manner.
- this exchange is not carried out frequently, and therefore does not represent a significant consumption of resources. For example, a periodicity of several days can be provided for the validity of the keys.
- the second phase of communication Phi according to the first protocol PI comprises a first step E2 periodic transmission of a message Mping up according to the first communication protocol PI by the electronic control unit U to the server S which receives it in a step E2 '.
- a periodicity of the order of ten seconds can be provided for the periodicity of the transmission, and in particular of the order of 20s.
- the server S transmits in a step E4 'a Mpong downlink message to the electronic control unit U which is received in a prior reception step E4 within a first delay Drl short after transmission of the Mping amount message.
- the delay Drl can be of the order of a few seconds, and in particular of the order of 5 s.
- This first message Mpong down keeps the communication channel open for a second delay Dr2 greater than the first delay Drl. It appears that the operation of a conventional firewall can prevent the passage of a downlink message to the extent that it is received beyond a first time after sending a rising message. Also in the usual way, since a first descendant message is received, a second, larger delay is allowed to receive one or more other descendant messages. In particular, it is possible to choose to trigger a new transmission of the message Mping before the expiry of the delay Dr2.
- the server S transmits according to the first communication protocol PI during a step E5 'a request message D Mopen connection opening, which is received by the electronic control unit U during a step E5.
- the second communication phase Phi according to the first protocol PI comprises a monitoring step E3 of a reception delay Dr of a downlink message from the server S following the first transmission step Mping, the triggering of a new first E2 transmission step being performed in case of exceeding the reception time.
- the server can perform a transmission step ERO 'of an invalid or expired key indication Minvalidkey from the server S , and in response a new step of transmitting an encryption key E0.
- this situation can occur during the transmission of a message amount MPing, the server having found that the message has a correct format but is not signed with a valid key. It should be noted that in case of restart of the electronic control unit, the first phase of communication PhO with communication of the key is carried out again.
- the first communication protocol may in particular be the UDP protocol.
- the third phase Ph2 of the method is performed following the reception of the connection opening request received by the electronic control unit in the second phase in step E5.
- an establishment step E6 of a connection Cnx to the server S which accepts this connection in a corresponding step E6 'is performed, on the initiative of the electronic control unit U according to a second protocol of P2 connection.
- the communication protocol may be the TCP protocol.
- the establishment step E6 may comprise several exchanges between the server and the unit U, and in particular exchanges of connection management messages, such as the TCP SYN, SYN / ACK, ACK protocol messages.
- a transmission step E7 of an amount message Mm is carried out according to the second communication protocol P2 intended for the server S which receives this message in a step E7 '.
- the message Mm may be a message without useful data but constituting an amount message to which a response will be provided by the server.
- the server transmits a downlink message Md in a transmission step E8 'to the electronic control unit U.
- This downward message contains the payload data Pld that the server was to transmit to the electronic control unit U.
- the second communication protocol used may be in particular the TCP protocol.
- the exchanges of the steps E7 / E7 'and E8 / E8' can in particular be made in the form of a request and a response according to the HTTPS protocol that uses TCP.
- the release of the connection can take place after several exchanges of uplink messages and / or messages receiving messages according to the second communication protocol or after a specified delay after the step of establishing the connection. E6 communication.
- the steps of establishing the connection E6 and accepting this connection E6 'can respectively correspond to the steps of establishing an EDU5 and EDC5 connection described with reference to FIG. 4 for the method of transmitting application downstream messages.
- the transmission steps of an application amount message E7 and reception E7 'can respectively correspond to the transmission and reception steps EDU6 and EDC6 described with reference to FIG. 4 for the method for transmitting application downstream messages.
- the transmission steps of an Md E8 and E8 'downstream application message may respectively correspond to the transmission and reception steps EDC8 and EDU8 described with reference to FIG. 4 for the method for transmitting application downstream messages.
- the first communication protocol is an SMS-type protocol comprising sending a message from the server to the electronic unit.
- U control identified in this case by a telephone number.
- This second protocol is used on a N2 type telephone network, for example a GSM network or wired telephony over the Internet, with a digital message management function.
- the server s comprises for this purpose a communication interface 107 on the network N2, such as for example a GSM card, just like the electronic control unit, which also comprises a communication interface 7 on the network N2, such as a GSM card. or an internet telephony hardware and software module that can be integrated into the firewall or the electronic control unit U.
- a communication interface 107 on the network N2 such as for example a GSM card, just like the electronic control unit, which also comprises a communication interface 7 on the network N2, such as a GSM card. or an internet telephony hardware and software module that can be integrated into the firewall or the electronic control unit U.
- the exchange according to the first protocol and the step of receiving a connection opening request corresponds to a simple sending of SMS between the server S and the electronic control unit U.
- FIG. 7 represents only an electronic control unit, but this second embodiment of course applies to communication with a multitude of electronic control units.
- the first protocol used may be of various types making it possible not to be subject to the constraints imposed by the firewall.
- the first protocol corresponds to data provided in an audio and / or video stream, for example an MPEG stream.
- the electronic control unit U comprises or is associated with a decoding interface of the corresponding audio and / or video stream.
- the first and / or the second protocol may be Raw IP type or other protocol above IP.
- the application exchanges may follow the transaction model, comprising a request and a response. Queries are sent as upstream messages, and responses as descendant messages. So, in a request and response exchange in the form of a rising or falling message, only the response or only the request may contain useful data. A rising message and the downstream message sent back may contain useful data that does not necessarily correspond to the same transaction. For example, a request in progress requiring an application processing is transmitted in the form of a rising message, and may trigger the transmission of a downlink message without useful data, or containing useful data relating to a previous request. In the same way, the application response corresponding to the current request can be sent during a subsequent message sinking message / subsequent message exchange. This exchange may include a rising message without useful data.
- the transmission of data in the sense of the electronic control unit to the server can be achieved for example according to the second communication protocol without difficulty since it is possible to establish a connection directly at the initiative of the electronic control unit.
- a request and a response according to the HTTPS protocol can be performed, then the established connection released to limit the use of server resources.
- IP network layer
- This protocol must provide the application a reliable "transport” service in so-called “connected” mode between the server and each of the electronic control units.
- the resources reserved to provide a transport service in connected mode are important, because for each connection it is necessary to reserve buffers for the incoming data, but also for the outgoing data, because it is necessary to keep messages already transmitted, but not yet paid, to avoid their loss and to allow their eventual retransmission.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Automation & Control Theory (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1463301A FR3031261B1 (fr) | 2014-12-24 | 2014-12-24 | Procede de traitement de messages montants ou descendants applicatifs en provenance ou a destination d’une unite electronique de controle d’une installation domotique par un serveur |
PCT/FR2015/053739 WO2016102902A1 (fr) | 2014-12-24 | 2015-12-23 | Procédé de traitement de messages montants ou descendants applicatifs en provenance ou à destination d'une unité électronique de contrôle d'une installation domotique par un serveur |
Publications (1)
Publication Number | Publication Date |
---|---|
EP3238383A1 true EP3238383A1 (fr) | 2017-11-01 |
Family
ID=52627479
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP15823712.3A Withdrawn EP3238383A1 (fr) | 2014-12-24 | 2015-12-23 | Procédé de traitement de messages montants ou descendants applicatifs en provenance ou à destination d'une unité électronique de contrôle d'une installation domotique par un serveur |
Country Status (4)
Country | Link |
---|---|
US (1) | US20170366645A1 (fr) |
EP (1) | EP3238383A1 (fr) |
FR (1) | FR3031261B1 (fr) |
WO (1) | WO2016102902A1 (fr) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11909849B2 (en) * | 2018-09-11 | 2024-02-20 | Stmicroelectronics S.R.L. | Method of communicating information and corresponding device and system |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5812951A (en) * | 1994-11-23 | 1998-09-22 | Hughes Electronics Corporation | Wireless personal communication system |
US7006530B2 (en) * | 2000-12-22 | 2006-02-28 | Wi-Lan, Inc. | Method and system for adaptively obtaining bandwidth allocation requests |
TW200408242A (en) * | 2002-09-06 | 2004-05-16 | Matsushita Electric Ind Co Ltd | Home terminal apparatus and communication system |
BRPI0509010A (pt) * | 2004-03-26 | 2007-08-07 | Jolla Networks Inc | método e sistema de comunicação de rede multifuncional escalonável entre dispositivos de apresentação e provedores de serviços, unidade de extremidade de cabeça para comunicação de rede multifuncional escalonável entre unidades de cpe acopladas entre dispositivos de apresentação e provedores de serviço, e, unidade de equipamento de premissa de consumidor para comunicação de rede multifuncional escalonável entre dispositivos de apresentação e provedores de serviço |
US7421501B2 (en) * | 2005-02-04 | 2008-09-02 | Microsoft Corporation | Queued sessions for communicating correlated messages over a network |
US7706368B2 (en) * | 2007-04-06 | 2010-04-27 | Research In Motion Limited | System and method for correlating messages within a wireless transaction |
FR3000336A1 (fr) * | 2012-12-20 | 2014-06-27 | France Telecom | Mecanisme de gestion d'une session de communication |
US9544235B2 (en) * | 2013-10-17 | 2017-01-10 | North Carolina State University | Scaling WiFi performance for large-audience environments via access points |
-
2014
- 2014-12-24 FR FR1463301A patent/FR3031261B1/fr active Active
-
2015
- 2015-12-23 EP EP15823712.3A patent/EP3238383A1/fr not_active Withdrawn
- 2015-12-23 US US15/539,907 patent/US20170366645A1/en not_active Abandoned
- 2015-12-23 WO PCT/FR2015/053739 patent/WO2016102902A1/fr active Application Filing
Non-Patent Citations (2)
Title |
---|
None * |
See also references of WO2016102902A1 * |
Also Published As
Publication number | Publication date |
---|---|
FR3031261B1 (fr) | 2017-01-13 |
FR3031261A1 (fr) | 2016-07-01 |
US20170366645A1 (en) | 2017-12-21 |
WO2016102902A1 (fr) | 2016-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3238384A1 (fr) | Procédé de transmission de données entre un serveur et une unité électronique de contrôle d'une installation domotique | |
EP2885899B1 (fr) | Dispositif et procédé de transfert unidirectionnel de données | |
WO2012131275A2 (fr) | Mécanisme de redirection entrante sur un proxy inverse | |
BE1023440B1 (fr) | Système de portier vidéo à canaux multiples avec accès à des services numériques avancés | |
WO2018122508A1 (fr) | Procédé de configuration d'accès, de commande et de supervision à distance d'au moins un dispositif domotique appartenant à une installation domotique | |
EP3563557A1 (fr) | Procédé de configuration d'accès, de commande et de supervision à distance d'au moins un dispositif domotique appartenant à une installation domotique | |
CN113747192B (zh) | 一种直播控制方法、装置、电子设备和存储介质 | |
EP3734901B1 (fr) | Procédé de transmission sécurisée de données | |
WO2016102902A1 (fr) | Procédé de traitement de messages montants ou descendants applicatifs en provenance ou à destination d'une unité électronique de contrôle d'une installation domotique par un serveur | |
FR2946164A1 (fr) | Procede de telechargement de donnees de grande taille vers un grand nombre de machines clientes en reseau a partir d'un serveur unique | |
WO2018206880A1 (fr) | Singularisation de trames à émettre par un objet connecté et blocage de trames réémises sur un réseau de communication sans-fil basse consommation | |
EP4256830A1 (fr) | Procédé de gestion d'une demande d'accès à un réseau de communication local, procédé de traitement d'une demande d'accès à un réseau de communication local, procédé de demande d'accès à un réseau de communication local, dispositifs, plateforme de gestion, passerelle, terminal utilisateur, système et programmes d'ordinateur correspondants | |
EP3709185A1 (fr) | Procédé d'optimisation d'échanges de données dans une infrastructure d'objets connectés | |
EP2614630B1 (fr) | Traitement de données pour la notification d'un équipement | |
EP2808819B1 (fr) | Procédé de mise à jour de certificats dans un dispositif portable | |
EP2525525B1 (fr) | Procédé, programme d'ordinateur et dispositif de cooptation permettant à un abonné d'un service de partager ce service avec un autre utilisateur | |
EP3360293A1 (fr) | Moyens de gestion d'accès à des données | |
EP3224994A1 (fr) | Procédé de notification de messages | |
EP2667574B1 (fr) | Procédé et dispositif de sécurisation d'échange de messages transmis dans un réseau d'interconnexions | |
FR3097666A1 (fr) | Procédé de stockage de données d’authentification de documents | |
EP1858224A1 (fr) | Méthode de mise en place des réseaux privés virtuels et contrôle d'accès distant | |
EP1952599A1 (fr) | Procede de diffusion maitrisee d'informations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20170621 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: BA ME |
|
DAV | Request for validation of the european patent (deleted) | ||
DAX | Request for extension of the european patent (deleted) | ||
RIC1 | Information provided on ipc code assigned before grant |
Ipc: H04L 12/911 20130101ALI20190307BHEP Ipc: H04L 29/06 20060101ALI20190307BHEP Ipc: H04L 12/28 20060101AFI20190307BHEP Ipc: H04L 29/08 20060101ALI20190307BHEP |
|
17Q | First examination report despatched |
Effective date: 20190514 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 20190925 |