|Title of Invention||
METHOD CHAINING TRANSMISSION PROCESS AND SYSTEM FOR DATA BASES
|Abstract||The invention concerns a method and a system for transmitting a chain of messages for updating a database between a management centre and a plurality of geographically distributed subscriber databases. Each message comprises a chain identifier (FM) and a chain index (FI) for identifying the message in the chain. If a message is not received following a disturbance in the connection, the processing of the next messages can block the databases. In order to remedy that inconvenience, the solution consists in assigning to each message a block status (CD) which determines whether said message is to be processed without referring to the members of the chain and what are the conditions concerning the prior processing of members of the chain.|
|Full Text||FORM 2
THE PATENTS ACT 1970
[39 OF 1970]
THE PATENTS RULES, 2003
[See Section 10; rule 1,3]
"METHOD CHAINING TRANSMISSION PROCESS AND SYSTEM FOR DATA BASES"
NAGRACARD SA, of 22 route de Geneva, CH-1033 Cheseaux-sur-Lausanne, Switzerland
The following specification particularly decries the invention and the manner in which it is to be perfor-med;
MESSAGE CHAINING TRANSMISSION PROCESS AND SYSTEM FOR
The present invention concerns a process and system of database updating, and particular during the transmission of a chain of messages.
In a system comprising a management centre and a plurality of subscribers over a wide territory, the sending by telephone or hertz route of updating information of the database of these subscribers is known. These messages are addressed, either to all subscribers, or to one subscriber in particular, that is to say that it contains a subscriber module address.
These messages are for the administration of the system and are themselves superposed to the useful data such as video, audio or data. One understands that the place used by these messages is limited. Another limitation applies to the length of the message which is limited by the fact that the useful data cannot be interrupted but for a short moment. One understands that, in the example of an audio/video
transmission, the emission channel cannot be interrupted but for a short moment so that no visual impact will be perceptible.
This is why, for transmission of a large amount of data, it has been necessary to divide them in a large number of messages.
These messages are sent in sequence on the network, in a logic order, that is to say one after the other, separated by a short interval, for example one second.
As certain systems of this type do not use return towards the managing centre, as for example a modem, it is difficult for the managing centre to know if the sent data has arrived correctly. In this way, it is obliged to repeat these messages periodically so as to statistically ensure that each message has arrived at destination.
A subscriber module includes schematically a numerical, audio, video or data receiver, to see a combination of these three types, a decoder able to separate the management messages, these latter being directed towards a security module comprising the subscriber database. This security module can be directly installed in
the subscriber module or, for security and cost reasons, it can be as a detachable module such as an intelligent card or microchip card.
The messages arriving at the security module are processed by the control-data reader. It is possible that the messages do not arrive in the emission order because of interferences in the transmission or simply as the subscriber"s unit was not engaged at the moment of the sending of previous messages. It is necessary to specify that prior to each processing, each message is first decrypted and controlled for its authenticity. A message which does not satisfy the control criteria is rejected. In this hypothesis, the security module will receive for example the sign message 3 before the sign messages 1 and 2. The execution of the sign message 3 without the prerequisite execution of two previous messages can lead to blocking of the database or to a certain error.
A first solution consists in memorizing all messages constituting a chain and, when it is complete, to proceed to its processing. This solution has the drawback to establish the length of the maximum chain according to the memory available.
The memory capacity of detachable intelligent cards is limited, which obliges the card to process each message at each arrival.
The problem that the present invention proposes to solve, is to suppress on the subscriber"s database the disastrous effects due to the execution of messages in an order different to that initially foreseen.
This aim is fully reached by a transmission process of a chain of subscriber"s database management messages, a process consisting to associate a conditional block which determines if the message is to be processed without reference to all or part of others element of the chain or the conditions bound to the previous processing of all or part of other elements of the chain.
In fact, due to this new conditional block included in each message elements of a chain, it is possible to determine if this message can be processed separately ox must satisfy the conditions of processing of the messages considered to be received first. It is obvious that this test allows also to determine if the message in evaluation has already been processed.
Jo reach this aim, the security module disposes of a memory organized under the form of table indicating, for each chain which are part of the messages of this chain already having been made object of a processing. After processing of all the elements of the chain, the table of this chain is maintained in order to avoid that the returning of the same chain restarts its execution. It can be deleted on request of the management centre or after a predefined time.
The conditional block contained in the message does not contain only a simple indication binding the processing of the message in progress to condition of having carried out the previous message, but also covers the more complex functions, such 10 as conditions on each element of the message chain. For example, it is possible to submit the processing of element 4 of the chain on the condition that both elements 1 or 2 are processed and that element 3 is categorically processed. We will thus have the function:
F(4) = (1 or 2) and 3.
15 We take the example of the arrival to the security module of the message element of family 5, this message being element 4 of this family. The first operation will be to determine if its processing is submitted to other conditions. If this is not the case, it can be processed immediately. It should be noted that to chain messages does not mean that the processing must be made in the index order of the chain. One can
20 imagine the case where one loads a significant software, and for this reason, one divides it to transmit it in a chain of messages. Each of these messages contains a charging address and the corresponding data. This is why an element of the chain can be processed in a indifferent order. On the other hand, the last element of the chain starting this new software will contain a condition stating that all the elements of the chain must have been carried out in order that this one can be carried out for its part. When this condition has been satisfied, the table correspondent to this family indicates that all messages have been carried out.
According to a variant of the invention, the conditional block is divided in two parts, the one called "operation" to describe the type of logic function and the other called "interested element" to describe on which other elements the operation must apply. The size of the part "interested element" corresponds to the size used in the table
stored in the database designating the state of processing the elements of the chain. In this way, the logic comparison is greatly facilitated.
According to other embodiments, the conditional block refers not to all the other elements of the chain, but to some only. It would be for example possible referring to three previous elements and not to all the elements. This allows to reduce the length of the conditional block and takes into account the fact that an interference rarely exceeds the time of three messages. According to another example, one could define a chain structure where only the last element contains a conditional block.
This structure allows, unlike the solutions of the prior art, to reject only a minimum of message. In fact, when a message is missed in a chain, all the following messages were rejected until the new passage of the missing message. The execution of a chain was in this way dependent upon the continuous receiving of elements of the chain, each element missing having as a consequence to reject all the index messages higher than missing message.
According to an embodiment of the invention, the subscriber module, besides sending the messages to the security module, includes a memory to memories them as soon as they arrive.
Therefore, it is possible that the absence of a message containing a condition on a preceding message leads to reject all the following messages. When this attended message arrives, it is of course processed authorizing the processing of other messages. It is possible on the other hand that a great deal of time elapses before these are present in the transmission with the risk that some are rejected, for example due to the bad quality of the connection between the managing centre and the subscriber module.
To minimize the number of repeated messages necessary for the chain is finally carried out in its entirety, the security module can accede to memory situated in the subscriber module because it contains all the messages in their arrival order. Thus, as soon as the arrival of the missing message and its processing has been accomplished, the security module asks the reading of the memory to process all the
30 messages which have been rejected because of the condition on the missing message.
important aspect of the invention lies in presenting each message to the security module together with the storage in memory in the subscriber module. This principle
can include exceptions when some messages are not destined to the security module but only to the module of the subscriber. Thus, even if some messages are rejected by the security module as the conditions are not fulfilled, this system knows that this message is contained in the memory of the subscriber module and can, when the condition is fulfilled, accede to memory to carry out these messages instead of awaiting a next passage of following messages.
In an embodiment, the memory of the subscriber module is organized as a stack with 10- entry in series, each new entry causing the displacement of previous entry.
The reading by the security module can be realized in different ways. It can ask the transmission of an exact address of the memory. Nevertheless, an important aspect of the security in this kind of application lies in the confidentiality of the organization of data, For this reason, instead asking the transmission of a specific address, the 15 security module asks the subscriber module to submit all or part of messages contained in its memory. A loading of the security module remains to sort out between the messages already carried out and the messages to carry out.
The invention will be better understood based on the following detailed description which refers to annexed drawings which are given by way of a non limitative 2$T example, wherein:
Figure 1 represents a message such as that sent in the systems of prior art;
Figure 2 represents a message such as that sent according to the invention;
Figure 3 represents an example of updating the temporary memory of the subscriber module.
In Figure 1 the different blocks of a message which take part in the function of chaining are represented schematically. We find a first heading block HD, which describes the kind of message, and contains the information that this message is part of a chain. To form the chain, a second family block FM indicates to which family this message belongs. In fact, it is possible that several chains are transmitted simultaneously and in this case the identification of the family is necessary. Now that
the family is defined, the subsequent block Fl is used to identify each element of the family and its place in the chain. So, with these two data, each element of the family can be placed again end to end with the other elements of the same family if necessary. It is known to indicate in one or the other of control blocks Fl or FM the 5 maximum number of the element of the family. This function can equally be obtained by a particular marking of last element of the family.
In the example of figure 2, the message of Figure 1, starting the two blocks FM and Fl, one sees adjoining a supplementary block CD which determines a condition to carry out this message. According to a first embodiment of the invention, this block is constituted by a bit which indicates if the previous message should or should not be executed. If this condition is requested, the interpreter in charge of operations on the database, will verify if the previous message has been executed properly and will execute this new message.
In another embodiment, this conditional block CD is constituted by a field realized 15 with groups, a group for each element of the chain. Each group contains a condition on an element of the chain and can have several meanings, for example the condition "must have been executed", "can be executed" or "must not be executed". The latter condition generally corresponds to the first.
We take the example of a chain of 6 elements, the element 3 should forcedly be 20- carried out before element 5. In this case, one can specify in message 3 that it should not be carried out if message 5 has been done, This condition can lead to a locking if one does not specify the inverted condition in message 5. In this case, message 5 will contain the condition "must be executed", on message 3 in order that if message 5 arrived before 3, it will be not processed.
25 In Figure 3, an implementation of the memory M of the subscriber module and the connection with the security module are represented. The incoming flux is firstly filtered by a module SEL, which has the scope to separate the managing messages of other data. These messages are then transmitted to the selection module SW which has the scope to send them to different modules that is to say the security
30 module SM, to the processing centre CTR of the subscriber module STB and to memory M of the subscriber module. The placing in memory of these messages
pauses the increasing of the number of incoming messages so that no message will be lost, the oldest message being then eliminated from the memory. In the same way, these messages are transmitted to the security module, represented here as an intelligent card SM. This card SM contains a first memory managing module GM and a control interpreter INT for managing the controls of the database BD. This memory manager GM can dialogue with the processing centre CTR by the connection \IO and by this means, to influence the connections in the selection module SW. The dotted line represented in Figure 3 represents the subscriber module STB. All the managing messages addressed to the security module SM are directed by the selector SW to the security module, in particular to the management of memory GM, then are transmitted to the control interpreter if the carrying out conditions are fulfilled. The memory manager GM updates the table of messages carried out to make the necessary comparisons at the moment of the arrival of a new message. The connection with the intelligent card SM is of in/out type and in this way
information and controls can be sent to destination of the subscriber module, connection represented by the line I/O. As explained previously, the memory M is physically in the subscriber unit STB. This is why the card SM can, by the intermediate of the line I/O, ask the availability of a memory section so as to be able to store the messages of a chain. In our example, the maximum number of elements
in a chain does not exceed 16. So, at the arrival of the first element of the chain, the card SM, by the line I/O, requests the reservation of at least 16 memory places. If, during the transmission of this first chain, another chain is announced, the card will ask the reservation of 16 new places in order to assure the storage of a maximum number of the chain according to the receiving conditions.
In order to read the data contained in the memory M, for example the position M3, the card SM can order, through the selector SW, the address multiplexer AMUX to return the content of this memory position. In order to forward these data towards the card, a data multiplexer DMUX has the function to read the memory position required and to transfer it towards the card. These different transfers are directed by the
When the carrying out of the chain has been interrupted by the lack of a interference on a message for example, the other messages continue to be stored in the memory
of the subscriber module. When the missing message is retransmitted by the managing centre, it is executed properly and the memory manager GM recalls all the other messages of the chain acceding the memory of the subscriber module.
this case, the entry of the intelligent card SM is not made any longer on the arrival of messages but on the contents of the memory M. This access to memory M can be made in direct access specifying a memory address, or by sequential access reading the messages in their arrival order.
In an embodiment, the memory M is organized as a memory buffer of a fixed length according to the availability of the free memory of the subscriber module. This memory includes an entry number increased on each message introduced in the memory, and an exit number increased on each reading by the memory manager GM.
The dialogue possibility between the card SM and the subscriber module STB, in particular the centre CTR, authorizes more complex functions. One of problems
In frequently met at the moment of the exchange of one or the other of elements of the system, both the card or the subscriber module, is to assure the compatibility of functions with the material of previous generations. For this, it is interesting to allow dialogue between the different elements in order to establish the functions available in each of them; this is the scope of the line I/O which allows to send instructions of
20 the card to the subscriber module. These instructions can, for example, ask the subscriber module to communicate its audio, video or data functions, the generation of the module or the software version. To answer to this request, the module STB disposes of means to compose a managing message and to transmit it, in the memory M for further reading by the card, or directly to card, such as represented in
According to another embodiment of the invention, the module STB disposes of a connection by modem with the managing centre. In this case, the announcement of resources can be made by the module STB to the managing centre through the modem, on request of the security module SM.
As indicated in Figure 3, the module STB receives in the same way the managing messages coming from the managing centre. The messages arriving to the
processing centre CTR can contain a configuration request instruction. The response can be made by the modem or be transmitted to card SM. Some of these managing messages are only destined to the module STB and the processing centre CTR, responsible to the management of the module STB, will not transmit them to the
5 security module SM or to memory M.
1. Method of transmission of chain of database management messages between a management centre and a plurality of subscriber databases, each management message comprising a chain header (HD), a chain identifier (FM) allowing the simultaneous transmission of several chains and a chain index (FI) allowing to identify the message in the chain, characterized in that it consists in adding to each message a conditional block (CD) which determines if this message is to be processed without references to all or part of elements of the chain or to be processed according to the conditions linked to the previous processing of all or part of elements of the chain.
2. Method of transmission as claimed in claim 1, wherein it consists in determining according to the conditional block (CD) if all or part of elements of the chain can, or must, or must not have been processed
3. Method of transmission as claimed in claim 1, wherein it consists in managing a table to the heart of the subscriber database containing a piece of information representing the processing state of each element of the chain, and to update said table every time that an element of the chain is processed, and to restart said table either on request of the managing centre, or after a predefined time.
4. Method of transmission as claimed in claim 1, wherein the subscriber database is linked to a subscriber unit and in that it consists in memorising the management messages in a memory of the subscriber unit and to present them on request to the database.
5. Method of transmission as claimed in claim 4, wherein it consists in memorising in series the incoming messages, each incoming message causing the increasing of a stack pointer of incoming messages, and to allow a direct access of the messages asked from the database,
6. Method of transmission as claimed in claim 4, wherein it consists in using the memory of the subscriber unit working as a serial memory buffer in a fixed length.
7. Method of transmission as claimed in claim 4, wherein it consists in receiving in the database, a message element of a chain, and to allocate in the subscriber unit, the memory necessary for receiving all the elements of the chain.
8. Method of transmission as claimed in claim 4, wherein it consists, on request, to allow the composition by the subscriber of a managing message describing its software and hardware resources and in sending said message, either to the database (SM), or to the management centre.
9. Method of transmission as claimed in claim 8, wherein this request is transmitted, either by the management centre under the form of a management message, or by the database (SM) under the form of an instruction by the I/O line.
10. System for transmitting chain of managing database messages as claimed in the method of claim 1 comprising a management centre and a plurality of subscriber"s units, each unit comprising a database, each message comprising a header (HD), a chain identifier (FM) allowing the simultaneous transmission of several chains, and a chain index (FI) allowing to identify the message in the chains, characterized in that it includes a conditional block (CD) which determines if the message has to
be processed without reference to all or part of the elements of the chain, or to be processed according to conditions linked to the previous processing of all or part of elements of the chain.
11. System as claimed in claim 10, wherein the conditional block (CD) contains a condition determining if all or part of the elements of the chain can, or must, or must not have been processed first.
12. System as claimed in claim 10, wherein it comprises a security module (SM) including a message manager (GM) able to store in a memory the state of the processing of each message of the chain, and comparison means of said state with the conditions mentioned in the conditional block (CD) of the message in processing.
13. System as claimed in claim 10, wherein the subscriber unit includes a memory (M) of messages, each incoming message causing the displacement of the previous message in the memory (M), and in that the security module (SM) includes means to read and process these messages,
14. System as claimed in claims 10 to 13, wherein the subscriber unit (STB) includes a connection line (I/O) towards the security module (SM) and that it includes means to determine the size of the memory (M) according to the instructions received from the security module (SM), and to answer about the composition and the sending of a managing message to the security module (SM).
15. System as claimed in claims 10 to 13, wherein the subscriber unit (STB) includes a selection module (SW) allowing to connect the separator of management messages (SEL), the processing centre (CTR) of the subscriber module, the security module (SM) and the memory (M), and
means to recognize the management messages destined only to the processing centre (CTR), and switching by the selection module (SW) these messages only towards the processing centre (CTR).
Dated this March 4, 2002.
(RANJAKA MEHTA DUTT)
OF REMFRY AND SAGAR ATTORNEY FOR THE APPLICANTS
|Indian Patent Application Number||IN/PCT/2002/00265/MUM|
|PG Journal Number||43/2007|
|Date of Filing||04-Mar-2002|
|Name of Patentee||NAGRACARD SA|
|Applicant Address||22 ROUTE DE GENEVE, CH-1033 CHESEAUX-SUR-LAUSANNE,|
|PCT International Classification Number||H04L 29/06,G06F9/445|
|PCT International Application Number||PCT/IB00/01301|
|PCT International Filing date||2000-09-14|