EP2606427A1 - Entité générique de communication à haute vitesse entre composants ccm - Google Patents
Entité générique de communication à haute vitesse entre composants ccmInfo
- Publication number
- EP2606427A1 EP2606427A1 EP11758513.3A EP11758513A EP2606427A1 EP 2606427 A1 EP2606427 A1 EP 2606427A1 EP 11758513 A EP11758513 A EP 11758513A EP 2606427 A1 EP2606427 A1 EP 2606427A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- fragment
- communication
- component
- receiver
- data
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
Definitions
- the subject of the invention is that of communication between two software components respecting the CCM standard.
- CCM CORBA Component Model
- OMG Object Management Group
- a component is a design, implementation, deployment, and execution entity, having an envelope portion, for interfacing, in predefined interaction modes, that entity with other entities within the entity. application, and a portion of business code, encapsulated within the envelope and to specify the particular treatment that performs this software entity.
- CORBA Common Object Request Broker Architecture
- ORB for Object Request Broker
- GIOP General Inter-ORB Protocol
- An ORB is a software entity of the CORBA middleware able to transform (“serialize") the structure of a data item being processed on a first platform, into a sequence of bytes suitable for being transmitted on the network to a second platform, on which the data, after having undergone the inverse transformation by another ORB, will finish being processed.
- the CCM standard defines synchronous and asynchronous modes of communication between two components.
- a first component sending an initial data to a second receiving component suspends the execution of its business code until the second component has returned a response message adapted.
- This response message may for example comprise an acknowledgment-receipt data of the initial data or a data resulting from a processing of the initial data performed by the second component.
- a first component sending an initial data to a second receiving component resumes the execution of its business code as soon as the initial data is sent, without waiting for a response message from the second receiver component.
- Light Weight CORBA Component Model is a subset of the CCM standard that has been defined to meet the special needs of software applications intended to be run on embedded systems. Such a software application must meet strong constraints in terms of size in the memory space and consumption of the computing capabilities (CPU) of the embedded system. It must also lead to low energy consumption.
- Real time means in the following operation of the application in a characteristic time less than a clean time of the system.
- a characteristic time less than a clean time of the system.
- the LwCCM standard does not provide them. necessary means of communication. In addition, it does not allow the exchange of data of varied nature: audio stream, video stream, radio stream, etc.
- the invention therefore aims to overcome the aforementioned problem by allowing, while remaining in the LwCCM standard, to offer the possibility to developers of real-time embedded applications of a high-speed communication between components.
- the subject of the invention is a generic entity for high-speed communication between an emitting component and at least one receiving component as defined by claim 1 and its dependent claims.
- the subject of the invention is also an information recording medium comprising the instructions for the instantiation on a computer installation of an entity of the type presented above, when these instructions are executed by the calculation unit of a computer.
- the invention also relates to a computer installation comprising at least one platform and at least one instantiation of an entity of the type presented above for high speed communication between an instantiation, on a first platform, of a transmitter component. and at least an instantiation, on a second platform, of a Receiver Component, these components complying with the CORBA Component Model, version 1 .0 standard and the first and second platforms can be either confused or remote and connected to each other. another by a network.
- the invention also relates to a high-speed communication method between a transmitting component and at least one receiving component, these components respecting the CORBA Component Model, version 1 .0, comprising the steps consisting of:
- FIG. 1 is a representation in the sense of the standard CCM connector according to the invention for direct communication between two components; and, FIG. 2 is a schematic block diagram of the business code of the connector of FIG. 1.
- the invention consists of a connector, in the sense of the DDS4LwCCM standard, serving as an interface between an output port of a transmitting component and an input port of a receiving component.
- the envelope portion of the connector is shown schematically in FIG. 1, while the connector's business code portion is shown in FIG.
- Connector 10 provides data communication from Transmitter Component 12 to a Receiver Component 14.
- the transmitter component has an output port 13.
- the receiving component has an input port 15.
- the connector is fragmented. It comprises a first emitting fragment and a second receiving fragment.
- the transmitting fragment includes an input port 23 intended to be connected to the
- the receiver fragment has an output port 25 for connection to the input port 15 of the receiving component.
- the transmitter fragment 22 constitutes a service, within the meaning of the DDS4LwCCM standard, of the output port 13 transmitting component.
- the sending fragment and the sending component are instantiated together on the same platform. This is schematically represented in FIG. 1 by the rectangle 32 encompassing in the same software entity the emitting component and the emitting fragment.
- the Receiver Fragment is a service, as defined by the DDS4LwCCM standard, associated with the Receiver Component Port.
- the data exchange is carried out directly by a synchronous method call, the connector managing the mechanism able to make the connection asynchronous.
- the CORBA middleware is not used.
- the emitter and receiver fragments communicate directly with each other (arrow F in FIG. 1). This communication is completely transparent from the point of view of the transmitter and receiver components.
- the transmitter fragment 22 comprises transmission means comprising:
- acquisition means 52 capable of collecting data published on the input port 23 of the sending fragment, and transmitting it to one of the communication means;
- a TCP communication means 56 able to receive data from the acquisition means 52 and to transmit it on a NETWORK2 network, in accordance with the TCP protocol;
- a means of communication in local mode 58 able to receive data from the acquisition means 52 and to publish it by call to a writing means 59;
- a write means 59 able to reserve, on request of the acquisition means 52, a shared memory space in the buffer 60 of a memory of the platform on which the transmitter fragment is deployed, and to write data thereto; which is transmitted to it by the means of communication in local mode 58.
- the receiving fragment comprises:
- a combined UDP communication means 74 able to receive UDP data received on a predetermined channel, and to publish it on the output port 25 of the receiver fragment;
- a combined means of TCP communication 76 able to receive TCP data received on a predetermined channel, and to publish it on the output port 25 of the receiver fragment;
- reading means 79 capable of reading data placed in shared memory space of buffer 60, and transmitting this data to means of communication in local mode 78.
- the connector 10 extends the CCM standard by offering a generic semantics for the exchange of data at high speed between the components. transmitter and receiver.
- the connector is configured when deploying the application. It is configured according to the deployment plan, but also by means of a configuration file such as file 80 in ".xml" format.
- the sender and receiver fragments When starting the application, the sender and receiver fragments will automatically detect if they are instantiated on the same platform of the computer installation or on two different platforms. If yes, the mode of communication in local mode is selected. Otherwise, the remote communication mode is selected.
- This automatic detection is performed as follows in an implementation of the entity 1 to 1.
- Each fragment retrieves the IP address, machine name, and / or equivalent information from the platform on which it is implemented. Then, the two fragments exchange their respective information to determine if this information is identical or different, that is to say if the two fragments are located on the same platform or on two different platforms.
- the configuration file 80 comprises a quality of service parameter for the selection of the communication protocol in remote mode: either the TCP mode if the developer wants reliable communication, or the UDP mode if he favors the communication speed.
- the TCP protocol implements methods of verification of the integrity of the data transmission which increase the quality of the communication, but slow down the speed of this one.
- the buffer 60 is of the FIFO type (for "First In First Out").
- the buffer 60 is common to the sending fragment and the receiving fragment.
- the buffer 60 must be located in a shared memory of the platform on which the receiver and transmitter fragments are deployed. This makes it possible to avoid a copy of the contents of a write buffer associated with the sender fragment, in a read buffer associated with the receiver fragment. As a result, copy errors are avoided and, in the case of a 1-to-N connector, with 1 sender fragment and N receiver fragments, this avoids N copies of the write buffer.
- the sending fragment 22 and the receiving fragment 24 are instantiated, using the information contained in the deployment plan and the configuration file 80, and, in particular, the selection of the communication protocol (mode and quality of service).
- the acquisition means 52 acquires new data published on the input port 23 of the sender fragment. It calls the writing means 59 so that it reserves a memory space in the data exchange buffer 60. As soon as a memory space is reserved, the writing means 59 returns an acknowledgment message to the acquisition means 52.
- the acquisition means 52 transmits the data to the communication means in local mode 58.
- the communication means in local mode 58 Upon receipt of the data, the communication means in local mode 58 transmits it to the writing means 58.
- the writing means Upon receipt of this data, the writing means initiates the execution of a method of writing the data in the previously reserved memory space.
- the reading means 79 successively traverses the different memory spaces of the buffer 60. It accesses a memory space and reads the data contained therein.
- the reading means 79 transmits to the data read by the local mode communication means 78 of the receiver fragment.
- the local mode communication means 78 publishes it on the output port 25 of the receiver fragment.
- the sending fragment 22 and the receiving fragment 24 are instantiated, using the information contained in the configuration file 80, and in particular the selection of the protocol, for example TCP, for the exchange of data on the NETWORK 2 network.
- the protocol for example TCP
- the acquisition means 52 acquires new data published on the input port 23 of the sender fragment.
- the acquisition means 52 transmits the data by means of TCP 56 communication.
- the TCP communication means 56 Upon receipt of the data, the TCP communication means 56 serializes the data and transmits it over the network.
- the TCP communication conjugate means 76 scans a predetermined channel and upon receipt of a data item, it performs the reverse transformation of the serialization.
- the combined TCP communication means 76 publishes the data thus obtained on the output port 25 of the receiving fragment.
- the connector comprises 1 sending fragment and N receiving fragments for a communication 1 towards N.
- the applicant has managed, in a video image processing application, to perform video data exchange between connectors at a rate of 160 megabytes per second in local mode, at 50 megabytes. per second in UDP mode, and 30 megabytes per second in TCP mode, and this by consuming about 10% of the CPU.
- the present solution optimizes the use of hardware resources by managing the flow of data directly within the business code of the connector.
- the CORBA notification service prohibits data sharing between sending and receiving components via shared memory. It does not offer the possibility of choosing the quality of service.
- CCM_sink_impl push (FastEvents :: Ev_TrackReader_ptr trackReader) ⁇
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR1003385A FR2963971B1 (fr) | 2010-08-17 | 2010-08-17 | Entite generique de communication a haute vitesse entre composants ccm |
| PCT/FR2011/051923 WO2012022916A1 (fr) | 2010-08-17 | 2011-08-17 | Entité générique de communication à haute vitesse entre composants ccm |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| EP2606427A1 true EP2606427A1 (fr) | 2013-06-26 |
Family
ID=43881024
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP11758513.3A Withdrawn EP2606427A1 (fr) | 2010-08-17 | 2011-08-17 | Entité générique de communication à haute vitesse entre composants ccm |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US9264487B2 (fr) |
| EP (1) | EP2606427A1 (fr) |
| CA (1) | CA2808581C (fr) |
| FR (1) | FR2963971B1 (fr) |
| WO (1) | WO2012022916A1 (fr) |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR2938944B1 (fr) | 2008-11-25 | 2011-09-30 | Thales Sa | Procede et systeme pour la transformation de composants logiciel ccm en composants deployables dans un environnement compatible du standard sca. |
-
2010
- 2010-08-17 FR FR1003385A patent/FR2963971B1/fr not_active Expired - Fee Related
-
2011
- 2011-08-17 EP EP11758513.3A patent/EP2606427A1/fr not_active Withdrawn
- 2011-08-17 US US13/817,248 patent/US9264487B2/en not_active Expired - Fee Related
- 2011-08-17 WO PCT/FR2011/051923 patent/WO2012022916A1/fr not_active Ceased
- 2011-08-17 CA CA2808581A patent/CA2808581C/fr not_active Expired - Fee Related
Non-Patent Citations (2)
| Title |
|---|
| None * |
| See also references of WO2012022916A1 * |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2012022916A1 (fr) | 2012-02-23 |
| US9264487B2 (en) | 2016-02-16 |
| CA2808581A1 (fr) | 2012-02-23 |
| US20130219016A1 (en) | 2013-08-22 |
| FR2963971B1 (fr) | 2012-08-31 |
| CA2808581C (fr) | 2019-09-03 |
| FR2963971A1 (fr) | 2012-02-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN111447170B (zh) | 数据处理方法及其系统、计算机系统及计算机可读介质 | |
| EP2791798B1 (fr) | Bus logiciel | |
| FR2886494A1 (fr) | Procede et dispositif d'echange de donnees entre des stations mobiles dans un reseau pair a pair | |
| EP2141591A1 (fr) | Dispositif électronique portable comprenant une application portable et un module sécurisé pouvant comminique entre eux, et procédé de communication associé | |
| WO2002001313A2 (fr) | Procede de transmission d'un agent mobile dans un reseau; emetteur, recepteur, et agent mobile associes | |
| EP1422872B1 (fr) | Procédé et dispositif modulaire de traçage d'un message multimédia à travers un réseau de télécommunications | |
| FR2828358A1 (fr) | Procede et dispositif de mise en compatibilite de communication sur reseau de terminaux, par exemple pour permettre un dialogue avec une application sur une carte a puce | |
| EP2124153B1 (fr) | Procédés et dispositif de mise en oeuvre de périphériques multifonction avec un gestionnaire de périphérique standard unique | |
| FR2860616A1 (fr) | Unite de commande de dispositif de memorisation et procede de commande de celui-ci | |
| CA2808581C (fr) | Entite generique de communication a haute vitesse entre composants ccm | |
| EP3135017A1 (fr) | Procédés d'échange de données avec un équipement comprenant des moyens de communication radio | |
| WO2024083978A1 (fr) | Procédé de traitement d'une requête d'exécution d'un service dans un réseau de communication, procédé de validation de la requête, entité intermédiaire, entité de validation, système et programme d'ordinateur correspondants | |
| WO2016083734A1 (fr) | Procede d'envoi de courrier recommande electronique | |
| EP1687719A1 (fr) | Dispositif et procédé asynchrones et automatiques de transmission de résultats entre objets communicants | |
| EP4213024A1 (fr) | Procédé de partage d'image, programme d'ordinateur et système mettant en oeuvre un tel procédé | |
| 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 | |
| KR100664757B1 (ko) | Vms에서의 메시지 처리 장치 및 방법 | |
| FR3078850A1 (fr) | Procede, dispositif et systeme permettant l'acces a une application deployee dans un conteneur | |
| FR2927711A1 (fr) | Dispositif d'echange de documents entre deux parties a travers un reseau | |
| WO2006072692A1 (fr) | Procede pour accomplir des fonctions cryptographiques dans une application informatique ecrite en langage a code mobile, et application informatique correspondante | |
| FR2975554A1 (fr) | Procede d'adaptation d'un contenu en fonction du recepteur du contenu | |
| EP1018818A1 (fr) | Architecture d'agent pouvant coopérer avec des applications corba | |
| EP2257019A1 (fr) | Procédé de traitement de document par un ordinateur distant, système et dispositif amovible connectable à chaud pour la mise en oeuvre de ce procédé | |
| FR2877114A1 (fr) | Systeme et procede de gestion de messages dans un reseau de communication par messagerie electronique | |
| FR3042362A1 (fr) | Moyens de gestion d'acces a des donnees |
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: 20130215 |
|
| 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 |
|
| DAX | Request for extension of the european patent (deleted) | ||
| RIN1 | Information on inventor provided before grant (corrected) |
Inventor name: HAIK, GREGORY Inventor name: HACHET, OLIVIER Inventor name: CHAUVIN, JEROME |
|
| 17Q | First examination report despatched |
Effective date: 20190321 |
|
| 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: 20190801 |