NL1013249C2 - Method for the transmission of a software module from a transmitter to a receiver in a computer system or computer network. - Google Patents

Method for the transmission of a software module from a transmitter to a receiver in a computer system or computer network. Download PDF

Info

Publication number
NL1013249C2
NL1013249C2 NL1013249A NL1013249A NL1013249C2 NL 1013249 C2 NL1013249 C2 NL 1013249C2 NL 1013249 A NL1013249 A NL 1013249A NL 1013249 A NL1013249 A NL 1013249A NL 1013249 C2 NL1013249 C2 NL 1013249C2
Authority
NL
Netherlands
Prior art keywords
class
classes
receiver
transmitter
group
Prior art date
Application number
NL1013249A
Other languages
Dutch (nl)
Inventor
Erwin Joost Bolwidt
Original Assignee
Tryllian B V
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tryllian B V filed Critical Tryllian B V
Priority to NL1013249A priority Critical patent/NL1013249C2/en
Priority to NL1013249 priority
Application granted granted Critical
Publication of NL1013249C2 publication Critical patent/NL1013249C2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • G06F9/4862Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration the task being a mobile agent, i.e. specifically designed to migrate
    • G06F9/4875Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration the task being a mobile agent, i.e. specifically designed to migrate with migration policy, e.g. auction, contract negotiation
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Description

Werkwijze voor het overdragen van een softwaremodule van een zender aan een ontvanger in een computersysteem of computernetwerk. Method for the transmission of a software module from a transmitter to a receiver in a computer system or computer network.

De uitvinding heeft betrekking op een werkwijze voor het overdragen van een softwaremodule van een zender aan een ontvanger in een computersysteem of -netwerk, waarbij de softwaremodule ten minste een object en ten minste een klasse omvat, waarbij het 5 object een instantie is van de klasse(n). The present invention relates to a method for transmitting a software module from a transmitter to a receiver in a computer system or network, wherein the software module comprises at least one object and at least a class, wherein the fifth object is an instance of the class (n).

Bij object-georiënteerde softwaretechnologie is het bekend een softwaremodule te maken als combinatie van zogenaamde objecten en klassen, waarbij het of elk object dat tot een klasse behoort een instantie van de klasse wordt genoemd. In object-oriented software technology, it is known to make a software module as a combination of so-called objects and classes, wherein the or each object that belongs to a class is called an instance of the class. De objecten 10 bevatten gewoonlijk slechts bepaalde waarden voor de variabelen die specifiek zijn voor een vooraf bepaalde softwaremodule, waarbij de variabelen en door de softwaremodule uit te voeren werkwijzen zijn gedefinieerd in de klasse of klassen. The objects usually contain 10, only certain values ​​for the variables which are specific to a predetermined software application module, wherein the variables and by executing the software module methods are defined in the class or classes.

Bij toenemend gebruik van computersystemen en netwerken, 15 zoals het Internet, neemt de overdracht toe van softwaremodules van het object-georiënteerde type tussen processen die binnen een computersysteem worden uitgevoerd of tussen computers van een computernetwerk. With increasing use of computer systems and networks 15 such as the Internet, the transmission increases from software modules of the object-oriented type between processes running inside a computer or between computers of a computer network. Deze toenemende overdracht van softwaremodules leidt tot een toename van het gegevensverkeer in het computersys-20 teem of het computernetwerk. This increased transfer of software modules leads to an increase of the data traffic in the computersys-20 system or the computer network.

Een eerste doel van de onderhavige uitvinding is het verschaffen van een werkwijze van de bovengenoemde soort, waarbij het gegevensverkeer binnen een computersysteem of computernetwerk tijdens het overdragen van een softwaremodule wordt gereduceerd. A first object of the present invention is to provide a method of the above kind, wherein the movement of data within a computer system or computer network is reduced during the transmission of a software module. 25 Het is een verder doel van de uitvinding een werkwijze van deze soort te verschaffen, waarbij een softwaremodule op een veilige wijze kan worden overgedragen. 25 It is a further object of the invention to provide a method of this type, in which a software module can be transferred in a secure manner.

Volgens de uitvinding wordt een werkwijze van de bovengenoemde soort verschaft, waarbij waarbij elke klasse of groep van 30 klassen is voorzien van een klasse-identificatie, waarbij zowel «013249 2 zender als ontvanger een database van klassen en groepen van klassen met bijbehorende klasse-identificaties omvat, waarbij de zender de klasse-identificatie van een over te dragen softwaremo-dule zendt aan de ontvanger en de ontvanger zijn database contro-5 leert op aanwezigheid van de ontvangen klasse-identificatie, waarbij de ontvanger een boodschap "aanwezig" of "afwezig" aan de zender stuurt en waarbij de zender alleen het object van de soft-waremodule of zowel het object als de klasse of groep van klassen overdraagt afhankelijk van de aan- of afwezigheid van de klasse 10 of groep van klassen bij de ontvanger. According to the invention, there is provided a method of the above kind, wherein each class or group of 30 classes includes a class identifier, wherein both «013 249 2 transmitter and receiver, a database of classes and groups of classes with corresponding class identifiers , wherein the transmitter of the class identifier of an over softwaremo-module to carry sends to the receiver and the receiver are database contro-5 learns in the presence of the received class identifier, wherein the receiver a message "present" or "absent "sends to the transmitter and wherein the transmitter only the object of the soft-ware module, or both the object and the class or group of classes transfers depending on the presence or absence of the 10 class or group of classes at the receiver.

Op deze manier wordt een werkwijze verkregen, waarbij het gegevensverkeer gedurende het overdragen van softwaremodules aanmerkelijk wordt gereduceerd, aangezien de klassen of groepen van klassen niet bij elke overdracht van een softwaremodule behoeven 15 te worden overgedragen. In this way is obtained a method in which the data traffic will be significantly reduced during the transmission of software modules, because the classes or groups of classes 15 need not be transferred at each transfer of a software module.

Volgens een gunstige uitvoeringsvorm van de uitvinding levert de zender een klasse-identificatie door het combineren van een bepaalde naam van elke klasse of groep van klassen van een softwaremodule en het resultaat van een cryptografische hash-20 functie, waarbij dit resultaat wordt verkregen door het uitvoeren van een cryptografische hash-functie op het gegevensbestand van de klasse of groep van klassen. According to an advantageous embodiment of the invention, the transmitter provides a class identifier by combining a specific name of each class or group of classes of a software module, and the result of a cryptographic hash-20 function, in which this result is obtained by performing a cryptographic hash function to the data of the class or group of classes. Hierdoor wordt een veilige identificatie verkregen, waarbij fouten ten gevolge van identieke identificaties voor verschillende klassen of groepen van klassen 25 zijn uitgesloten. This allows a secure identification is obtained, in which errors due to identical identifications for different classes or groups of classes 25 are excluded.

Volgens een voorkeursuitvoeringsvorm controleert de ontvanger een klasse of groep van klassen die wordt ontvangen van een zender door het vergelijken van het resultaat van de hash-functie van de ontvangen klasse-identificatie met het resultaat, 30 dat wordt verkregen door het uitvoeren van dezelfde cryptografi-sche hash-functie op het gegevensbestand van de ontvangen klasse of groep van klassen. According to a preferred embodiment, the receiver checks a class or group of classes, which is received from a transmitter by comparing the result of the hash function of the received class identifier with the result 30, which is obtained by carrying out the same cryptografi- cal hash function on the data file of the received class or group of classes.

Hierdoor wordt de beveiliging bij het overdragen van softwaremodules gegarandeerd, aangezien ontvangers zullen weige-35 ren klassen te gebruiken waarvan het resultaat van de hash- 1018249 3 functie van de identificatie niet overeenkomt met het resultaat van de hash-functie, dat is verkregen door de ontvanger uit het gegevensbestand van de ontvangen klasse of groep van klassen. As a result, the security is guaranteed by the transmission of software modules, since receivers will refusal-35 acids to be used classes for which the result of the hash 1,018,249 third function of the identifier does not match the result of the hash function, which has been obtained by the receiver from the data of the received class or group of classes.

De uitvinding zal nader worden toegelicht aan de hand van 5 de tekeningen, waarin een uitvoeringsvoorbeeld van de werkwijze volgens de uitvinding schematisch is weergegeven. The invention will be explained in more detail with reference to the 5 drawings, in which an embodiment of the method according to the invention is schematically shown.

Figuur 1 toont schematisch een computernetwerk waarin een werkwijze volgens de uitvinding wordt toegepast. Figure 1 shows, diagrammatically, a computer network in which a method is used according to the invention.

De figuren 2 en 3 tonen stroomdiagrammen van de werking 10 van een zender en een ontvanger bij de werkwijze volgens de uitvinding. Figures 2 and 3 show flow diagrams of the operation 10 of a transmitter and a receiver in the method according to the invention.

Een voorkeursuitvoeringsvorm van de werkwij ze volgens de uitvinding zal bij wijze van voorbeeld worden beschreven in een toepassing in zogenaamde softwareagenten die in een computernet-15 werk, zoals het Internet, bijvoorbeeld kunnen worden gebruikt voor het zoeken van informatie op het Internet. A preferred embodiment of the method will be described by way of example, according to the invention in an application in so-called software agents in a computer-network 15 work, such as the Internet, for example, can be used for searching for information on the Internet. Het zal echter duidelijk zijn dat de werkwijze volgens de uitvinding niet tot deze specifieke toepassing is beperkt. However, it will be appreciated that the method according to the invention is not limited to this particular application is limited. De werkwijze kan worden gebruikt voor het overdragen van elke softwaremodule van een ob-20 ject georiënteerd type van de beschreven soort. The method can be used for the transmission of each software module of an ob-ject oriented type 20 of the type described.

Figuur 1 toont sterk schematisch het Internet dat een aantal onderling verbonden computers of servers 1 en computers 2 van gebruikers omvat. Figure 1 very schematically shows the Internet which includes a plurality of interconnected computers or servers 1 and 2 computers of users. Een gebruikercomputer 2 kan met het Internet worden verbonden via een server 1 van een Internet-25 dienstaanbieder. A user computer 2 may be connected to the Internet through a server 1 of an Internet service provider 25. Indien een gebruiker informatie over een bepaald onderwerp van het Internet wenst te verkrijgen, kan hij een soft-wareagent met zijn vraag het Internet opsturen om deze informatie te verkrijgen. If a user wishes to obtain information about a particular topic on the Internet, he is a soft-ware agent's question send the Internet to obtain this information. Het vinden van goede informatie op het Internet vormt een probleem in verband met de enorme hoeveelheid informa-30 tie die op het Internet beschikbaar is. Finding good information on the Internet is a problem associated with the huge amount of information-30 tie which is available on the Internet. Bestaande technieken, zoals zoekmachines, slaan de meest relevante informatie van het gehele Internet op om deze informatie op snelle wijze te vinden indien een gebruiker om dergelijke informatie vraagt. Existing techniques such as search engines, saving the most relevant information of the entire Internet to find this information in a rapid manner if a user requests such information. Bestaande zoekmachines hebben het nadeel dat het afzoeken van het volledige 35 Internet vanuit één locatie tijdrovend is, zodat een dergelijke 1013249 4 zoekopdracht niet regelmatig zal worden uitgevoerd en daardoor de door de zoekmachine vastgelegde informatie snel verouderd. Existing search engines have the disadvantage that searching the entire Internet from one location 35 is time consuming, so that such 1,013,249 4 search will not be conducted regularly and thereby quickly outdated information recorded by the search engine. Bovendien maken bestaande zoekmachines van hun eigen criteria gebruik, die niet noodzakelijkerwijs behoeven overeen te stemmen met de 5 criteria die een gebruiker zou gebruiken. Moreover, existing search engines use their own criteria, which does not necessarily correspond to the five criteria that would use a user. Een softwareagent die op het Internet zoekt met een vraag van zijn gebruiker kan evenwel zijn eigen criteria gebruiken voor het vinden van relevante informatie en de informatie kan worden verkregen door te communiceren met andere softwareagenten die ook op zoek zijn naar infor-10 matie. A software agent which, however, the Internet looking with a question of his user can use their own criteria to find relevant information and the information can be obtained by communicating with other software agents also are looking to inquire-10 mation. Tijdens het zoeken op het Internet worden de softwareagenten van de ene computer 1 overgedragen naar een andere computer 1, waardoor een belasting van het netwerk ontstaat ten gevolge van het gegevensverkeer dat gepaard gaat met dergelijke overdrachten. While searching on the Internet, the software agents from one computer 1 is transferred to another computer first, creating a network load due to the data traffic associated with such transfers.

15 Teneinde de belasting van het netwerk die wordt veroor zaakt door het overdragen van de softwareagent te reduceren, wordt de volgende werkwij ze toegepast. 15, the order of the network load that is ordered to Case T by transmitting to reduce the software agent, the following method is they are applied.

Opgemerkt wordt dat in de onderhavige beschrijving de term zender wordt gebruikt voor het aanduiden van een computer 1 20 of 2 vanaf welke een softwareagent moet worden overgedragen naar een andere computer 1 of 2, waarbij de ontvangende computer wordt aangeduid met ontvanger. It is noted that the term channel is used in the present description to refer to a computer 1 20 or 2 from which a software agent is to be transferred to another computer 1 or 2, wherein the host computer is designated recipient. Opgemerkt wordt echter dat de onderhavige werkwijze ook kan worden toegepast bij het overdragen van een agent die in een direct uitvoerbare vorm aanwezig is in een pro-25 ces, dat in een computer wordt uitgevoerd, naar een ander proces dat in dezelfde computer wordt uitgevoerd. is, however, noted that the present method can also be applied to the transfer of an agent which is in a pro-25 process is present in an immediately executable form, which is executed in a computer, according to another process that is carried out in the same computer. In dit geval verwijzen de termen zender en ontvanger naar dergelijke processen waartussen een softwareagent wordt overgedragen. In this case, the terms transmitter and receiver to such processes between which a software agent is transmitted. Voorts wordt opgemerkt dat bij een toepassing van de werkwijze in een computernetwerk, 30 zoals het Internet, het niet noodzakelijk is dat alle computers van het netwerk geschikt of geprogrammeerd zijn om te werken als zender en/of ontvanger. It is further noted that, in an application of the method in a computer network, such as the Internet 30, it is not necessary that all the computers of the network are adapted or programmed to operate as a transmitter and / or receiver.

Elke softwareagent is uitgevoerd als een softwaremodule van een object georiënteerd type. Each software agent is implemented as a software module of an object-oriented type. Dit betekent in het kader van 35 de onderhavige beschrijving dat de softwaremodule een of meer ob- 1018249 5 jecten en een of meer klassen omvat, waarbij de objecten instanties van de klasse of klassen zijn. This means in the context of 35 the present description that the software module comprises one or more obstructive 1018249 5 projects and one or more classes, in which the objects are instances of the class or classes. Een object omvat gegevens, zoals variabele waarden. An object includes data, such as variable values. Een klasse omvat definities van de gegevensstructuur, dat wil zeggen naam en type van gegevensvelden, en 5 definities van functies of routines die moeten worden uitgevoerd op de objecten van de klasse. One class comprises definitions of the data structure, that is to say, the name and type of data fields, and 5 definitions of functions or routines that are to be performed on the objects of the class. Objecten of meer in het bijzonder de variabele waarden van de objecten veranderen vaak gedurende het uitvoeren van de routines die in de klassen zijn gedefinieerd. Objects or more, in particular, the variable values ​​of the objects often change during the execution of the routines that have been defined in the classes. Indien een softwaremodule twee of meer klassen omvat, zul-10 len deze klassen in deze beschrijving worden aangeduid als een groep van klassen. If a software module comprises two or more classes, you-10 len these classes are referred to in this specification as a group of classes.

Volgens de beschreven werkwijze wordt een softwaremodule van een eerste computer 1, de zender, overgedragen naar een tweede computer 1, de ontvanger, in het computernetwerk door de klas-15 se of klassen van de softwaremodule alleen over te dragen indien de klasse of klassen niet aanwezig zijn aan de ontvangerzijde. According to the method described, a software module of a first computer 1, the transmitter, transmitted to a second computer 1, the receiver, in the computer network to be borne by the class-15 se or classes of the software module only if the class or classes not are present on the receiver side. In die computers van het netwerk die geschikt zijn om te werken als een zender en/of ontvanger, is voorzien in een database voor het opslaan van klassen of groepen van klassen, waarbij een unieke 20 klasse-identificatie is toegevoegd aan elke klasse of groep van klassen. In those computers of the network which are suitable to act as a transmitter and / or receiver, there is provided a database for storing class or group of classes, which is assigned a unique 20 class identifier of each class or group of classes. Wanneer een zender een softwaremodule aan een ontvanger wil overdragen, beginnen de zender en ontvanger te communiceren om te controleren of de klasse of groep van klassen van de over te dragen softwaremodule al dan niet aanwezig is in de ontvanger. When a transmitter is a software module wants to transfer to a recipient, begin to communicate the transmitter and the receiver to check whether the class or group of classes of the software module to be transmitted is or is not present in the receiver. 25 De stappen van de werkwijze zijn schematisch weergegeven in de figuren 2 en 3 voor respectievelijk zenderzijde en ontvangerzij-de. 25, the steps of the method are shown schematically in Figures 2 and 3 for the transmitter side and receiver side, respectively-of the.

Om het overdrachtprotocol te beginnen, zendt de zender een startboodschap aan de ontvanger, die aangeeft "hierna volgen 30 alle gegevens van een softwaremodule". To begin with, the transfer protocol, the transmitter transmits a start message to the recipient, which indicates "hereinafter referred to as monitor 30, all the information of a software module". Alle objecten die deel uitmaken van de over te dragen softwaremodule worden gecombineerd in een gegevensbestand en dit gegevensbestand wordt aan de ontvanger gezonden. All objects that are part of the transfer software module part are combined in a database, and this data is sent to the recipient. Voorts zendt de zender de unieke klasse-identif icatie aan de ontvanger. In addition, the transmitter transmits the unique class-identif ication to the recipient. Daarna controleert de ontvanger 35 zijn database op de aanwezigheid van de ontvangen unieke klasse- 101324$ 6 identificatie. Thereafter, the receiver 35 checks its database for the presence of the received unique identification class- 101324 $ 6. De ontvanger zendt een retourboodschap "aanwezig" of "afwezig" aan de zender en de zender zendt alleen een gegevensbestand met de klasse of groep van klassen indien een boodschap "afwezig" werd ontvangen. The receiver sends a return message "present" or "absent" at the transmitter and the transmitter only sends a data file containing the class or group of classes, where a message "absent" has been received. Indien Java wordt gebruikt als 5 softwaretaal voor de softwaremodule, kunnen de gegevensbestanden van de klassen van een softwaremodule worden gebundeld tot één gegevensbestand door middel van een Java-gereedschap JAR. Where Java is used as the 5 software language for the software module, the data files of the classes of a software module may be combined into one data file by means of a Java JAR tool. Het aldus verkregen gegevensbestand is een zogenaamd JAR bestand. The resulting data file is a so-called JAR file. Bij de onderhavige werkwijze zal een klasse gewoonlijk een software-10 routine of dergelijke bevatten. In the present process will be a class usually a software routine 10 or the like. Andere uitvoeringsvormen zouden het gebruik van klassen met zich mee kunnen brengen, die verwijzingen naar routines of dergelijke bevatten en niet de routine zelf. Other embodiments would be the use of classes can involve, which references to routines, or the like, and not the routine itself.

De ontvanger verkrijgt de softwaremodule door het combi-15 neren van de van de zender ontvangen objecten met de klasse of groep van klassen die hetzij uit zijn database zijn opgehaald of van de zender zijn ontvangen. The receiver obtains the software module by the combi-15 tioning of the transmitter of the received objects with the class or group of classes, that is either from its database are retrieved or received from the transmitter. Indien de ontvanger er in slaagt de objecten en de klasse of groep van klassen te combineren, zendt de ontvanger een boodschap "overdracht geslaagd" aan de zender. If the receiver succeeds in combining the objects and the class or group of classes, the receiver sends "successful transmission" a message to the sender.

20 Indien de ontvanger de objecten en klassen niet kan combineren, zal een boodschap "overdracht niet geslaagd" aan de zender worden gestuurd. 20, if the receiver can not combine the objects and classes, a message "transmission failed" will be sent to the transmitter.

Op deze wijze zal het gegevensverkeer in het netwerk aanmerkelijk worden gereduceerd, aangezien gewoonlijk alleen de ob-25 jeeten van een softwaremodule behoeven te worden overgedragen. In this manner, the data traffic will be significantly reduced in the network, since usually only the ob-25 jeeten of a software module need not be transmitted.

Uiteraard kan een ontvanger bij elke overdracht van een klasse of groep van klassen bij ontvangst van nieuwe klassen de klasse of groep van klassen tezamen met de bijbehorende unieke klasse-identificatie opslaan in zijn database voor toekomstig ge-30 bruik. Of course, a receiver at each transmission of a class or group of classes, upon receipt of new classes to store the class or group of classes, together with the associated unique class identifier in its database for future use ge-30. Op deze wijze zal de database geleidelijk verder worden aangevuld, waardoor toekomstig gegevensverkeer wordt gereduceerd. In this way it will be complemented progressively further to the database, so that future data traffic is reduced.

Opgemerkt wordt, dat hoewel bij het hierboven beschreven voorbeeld de objecten en klasse-identificatie zonder onderbreking van de zender naar de ontvanger worden gestuurd, het ook mogelijk 35 is eerst de klasse-identificatie te verzenden om de aanwezigheid 1013249 7 bij de ontvanger te controleren en vervolgens de objecten. It is noted that although be sent when the objects, and class identifier example described above, without the interruption of the transmitter to the receiver, it is also possible 35 is to first send the class identifier in order to verify the presence 1013249 7 to the receiver, and then the objects. De beschreven volgorde heeft evenwel het voordeel dat het aantal omschakelingen van zenden naar ontvangen aan de zenderzijde en ont-vangerzijde wordt gereduceerd, hetgeen tot een verdere reductie 5 van de tijdperiode voor het overdragen van een softwaremodule leidt, aangezien het omschakelen in een computernetwerk relatief tijdrovend is. The above-described sequence, however, has the advantage that the number of switches from transmit to receive is reduced at the transmitter side and de-catcher side, which leads to a further reduction in 5 of the time period for the transmission of a software module, since the switching in a computer network is relatively time-consuming is.

Bij de werkwijze volgens de uitvinding wordt de unieke klasse-identificatie bij voorkeur als volgt verkregen. In the method according to the invention, the unique class identifier is preferably obtained as follows. Eerst kan 10 de gebruiker een vooraf bepaalde naam aan een klasse of groep van klassen geven. First 10 can provide the user with a predetermined name to a class or group of classes. Deze bepaalde naam vormt een eerste deel van de klasse-identificatie. This particular name is a first portion of the class identifier. Voorts worden alle klassen van een softwa-remodule gebundeld tot een één gegevens bestand, dat het over te dragen gegevensbestand vormt, indien de groep van klassen aan de 15 ontvangerzijde afwezig is. Furthermore, all classes of a software;-remodule bundled into a single data file, which data file is about to be, bear if the group of classes on the receiver 15 side is absent. Aan de zenderzijde wordt een programma uitgevoerd voor het bepalen van een cryptografische hash-functie van het gegevensbestand van de groep van klassen en het resultaat van deze hash-functie wordt vastgelegd. On the transmitter side, a program is executed for determining a cryptographic hash function of the data file from the group of classes, and the result of this hash function is stored. Dit resultaat van de hash-functie vormt het tweede deel van de unieke klasse-20 identificatie. This result of the hash function forms the second part of the class-20 unique identifier.

Opgemerkt wordt dat elke cryptografische hash-functie kan worden gebruikt die een resultaat oplevert, dat aanmerkelijk kleiner is dan het oorspronkelijke gegevensbestand, waarbij een kleine wijziging in het oorspronkelijke gegevensbestand een grote 25 verandering oplevert in het resultaat van de hash-functie en waarbij het zeer moeilijk is een ingangsgegevensbestand te bepalen dat tot een vooraf bepaald resultaat van de hash-functie leidt. It is noted that can be used any cryptographic hash function which produces a result that is considerably smaller than the original data file, wherein a small change a large 25 change in the original data file yields in the result of the hash function, and wherein the very is difficult to determine an input data file which leads to a predetermined result of the hash function.

Als verdere mogelijkheid voor het verschaffen van een 30 unieke klasse-identificatie is het mogelijk de lengte van het gegevensbestand als derde deel toe te voegen aan de unieke klasse-identif icatie . As a further possibility for the provision of a unique class identifier 30, it is possible, the length of the data file as a third part to add to the unique class-identif ication.

Op deze wijze wordt gewaarborgd dat indien een zender de unieke klasse-identificatie van een softwaremodule aan een ont-35 vanger zendt en de ontvanger aangeeft dat de klasse of groep van 1013249 8 klassen van de ontvangen unieke klasse-identificatie in zijn database aanwezig is, inderdaad de juiste klasse of klassen aan de ontvangerzijde beschikbaar zijn. In this way it is ensured that, if a transmitter transmits the unique class identifier of a software module for a dis-35 catcher and the receiver indicates that the class or group of 1,013,249 8 classes of the received unique class identifier in its database is present, indeed, the right class or classes are available at the receiver side.

Voorts verschaft het gebruik van een cryptografische 5 hash-functie een beveiliging van de wijze van overdracht. Further, the use of a 5 cryptographic hash function, a security of the route of transmission. De ontvanger zal altijd de unieke klasse-identificatie controleren met het ontvangen gegevensbestand van de klassen. The receiver will always check the unique class identifier with the received data of the classes. Hiertoe zal de ontvanger dezelfde cryptografische hash-functie uitvoeren op het gegevensbestand van de klassen en zal het resultaat van zijn eigen 10 hash-functie vergelijken met het resultaat van de hash-functie in de klasse-identificatie. To this end, the receiver will perform the same cryptographic hash function on the data file of the classes and will compare the result of its own hash function 10 with the result of the hash function in the class identifier. Indien geen overeenstemming wordt gevonden, zal de ontvanger een boodschap "overdracht niet geslaagd" aan de zender sturen en zal het overdrachtprotocol beëindigen. If no match is found, the receiver will "transfer failed" to send a message to the sender and will terminate the transfer protocol.

De beschreven werkwijze kan met voordeel worden gebruikt 15 bij een Internet-toepassing van softwareagenten, waarbij de soft-wareagent over het Internet reist op zoek naar informatie en dergelijke. The method described can be used to advantage 15 at an Internet application of software agents, wherein the soft-ware agent over the Internet travels in search of information, and the like. Het zal echter duidelijk zijn dat de werkwijze tot dezelfde voordelen leidt van een reductie van gegevensverkeer tussen processen die in één computersysteem draaien of bij de over-20 dracht van softwaremodules tussen computers in elk type netwerk. However, it will be appreciated that the method leads to the same advantages of a reduction in data transfer between processes running in a single computer system, or in the over-20 transfer of software modules between computers, in any type of network.

De uitvinding is niet beperkt tot het hierboven beschreven uitvoeringsvoorbeeld en kan binnen het kader van de volgende conclusies op verschillende manieren worden gevarieerd. The invention is not limited to the embodiment example described above and may be varied within the scope of the following claims in various ways.

1013249 1013249

Claims (10)

1. Werkwijze voor het overdragen van een softwaremodule van een zender aan een ontvanger in een computersysteem of computernetwerk, waarbij de softwaremodule is voorzien van ten minste één object en ten minste één klasse, waarbij het object een in- 5 stantie is van de klasse(n), waarbij elke klasse of groep van klassen is voorzien van een klasse-identificatie, waarbij zowel zender als ontvanger een database van klassen en groepen van klassen met bijbehorende klasse-identificaties omvat, waarbij de zender de klasse-identificatie van een over te dragen softwaremo-10 dule zendt aan de ontvanger en de ontvanger zijn database controleert op aanwezigheid van de ontvangen klasse-identificatie, waarbij de ontvanger een boodschap "aanwezig" of "afwezig" aan de zender stuurt en waarbij de zender alleen het object van de soft-waremodule of zowel het object als de klasse of groep van klassen 15 overdraagt afhankelijk van de aan- of afwezigheid van de klasse of groep van klassen bij de ontvange 1. A method for transmitting a software module from a transmitter to a receiver in a computer system or computer network, wherein the software module is provided with at least one object and at least one class, wherein the object is an in-5 stantie of the class ( n), with each class or group of classes includes a class identifier, wherein both transmitter and receiver comprises a database of classes and groups of classes with corresponding class identifiers, wherein the transmitter to transmit the class-the identification of a softwaremo-module 10 sends to the receiver and the receiver checks its database for the presence of the received class identifier, wherein the receiver sends a message "present" or "absent" to the transmitter and wherein the transmitter, only the software of the object true module or both the object and the class or group of classes 15 transmits, depending on the presence or absence of the class or group of classes may receive at the r. r.
2. Werkwijze volgens conclusie 1, waarbij de zender eerst alle objecten en de klasse-identificatie aan de ontvanger stuurt, waarbij de zender de klasse of groep van klassen aan de ontvanger 20 stuurt indien de boodschap "afwezig" wordt ontvangen. 2. A method according to claim 1, wherein the transmitter first sends all of the objects and the class identifier to the receiver, wherein the transmitter sends the class or group of classes to the receiver 20 if the message is "absent" is received.
3. Werkwijze volgens conclusie 1 of 2, waarbij de ontvanger de over te dragen softwaremodule verkrijgt door combineren van het ontvangen object met de klasse of groep van klassen die uit zijn database is gehaald of is ontvangen, waarbij de ontvan- 25 ger een boodschap "overdracht geslaagd" of "overdracht niet geslaagd" stuurt afhankelijk van de vraag of de ontvanger al dan niet slaagt in het combineren van het object en de klasse of groep van klassen. 3. A method according to claim 1 or 2, wherein the receiver receives the software module to be assigned by combining the received object with the class or group of classes, which is retrieved from its database or is received, wherein the receiver 25 a message ger " transfer successful "or" unsuccessful transmission "sends depending on whether the recipient may or may not succeed in combining the object and the class or group of classes.
4. Werkwijze volgens één der voorgaande conclusies, waar-30 bij de ontvanger elke ontvangen klasse of groep van klassen met de bijbehorende klasse-identificatie in zijn database vastlegt voor later gebruik. 4. A method according to any one of the preceding claims, where-30 at the receiver each received class or group of classes, with the corresponding class identifier in its database, provides for later use. 1013249 1013249
5. Werkwijze volgens één der voorgaande conclusies, waarbij de zender een klasse - identificatie vormt door het combineren van een bepaalde naam van elke klasse of groep van klassen van een softwaremodule en het resultaat van een cryptografische hash- 5 functie, waarbij dit resultaat wordt verkregen door het uitvoeren van een cryptografische hash-functie op het gegevensbestand van de klasse of groep van klassen. 5. A method according to any one of the preceding claims, wherein the transmitter is a class - the identification forms by combining a specific name of each class or group of classes of a software module, and the result of a cryptographic hash fifth function, in which this result is obtained by performing a cryptographic hash function to the data of the class or group of classes.
6. Werkwijze volgens conclusie 5, waarbij een zender voorts de lengte van het gegevensbestand van de klasse of groep 10 van klassen combineert met de bepaalde naam en het resultaat van de hash-functie voor het verschaffen van de klasse-identificatie. 6. A method according to claim 5, wherein a transmitter, moreover, the length of the database of the class or classes of group 10 combines with the given name and the result of the hash function for the provision of the class identifier.
7. Werkwijze volgens conclusie 5 of 6, waarbij de ontvanger een van een zender ontvangen klasse of groep van klassen controleert door vergelijken van het resultaat van de hash-functie 15 van de ontvangen klasse-identificatie met het resultaat dat is verkregen door het uitvoeren van dezelfde cryptografische hash-functie op het gegevensbestand van de ontvangen klasse of groep van klassen. 7. A method according to claim 5 or 6, wherein the receiver has a transmitter of a received class or group of classes checking by comparing the result of the hash function 15 of the received class identifier with the result that has been obtained by carrying out the same cryptographic hash function on the data file of the received class or group of classes.
8. Werkwijze volgens conclusie 7, waarbij de ontvanger 20 een boodschap "overdracht geslaagd" of "overdracht niet geslaagd" stuurt afhankelijk van de vergelijking van het resultaat van de hash-functie op het ontvangen gegevensbestand en het resultaat van de hash-functie van de klasse-identificatie. 8. A method according to claim 7, wherein the receiver 20 "successful transfer" message or a "transmission failed" in dependence on the comparison of the result of the hash function on the received data file and the result of the hash function of the classmark.
9. Werkwijze volgens een der voorgaande conclusies, waar-25 bij zenders en ontvangers computers zijn in een computernetwerk, zoals het Internet. 9. A method according to any one of the preceding claims, in which at-25 transmitters and receivers are computers in a computer network, such as the Internet.
10. Werkwijze volgens conclusie 9, waarbij de softwaremodule een zogenaamde agent is voor het zoeken, uitwisselen en/of leveren van informatie op het netwerk. 10. A method according to claim 9, wherein the software module is a so-called agent for searching, sharing, and / or providing information to the network. 1013249 1013249
NL1013249A 1999-10-08 1999-10-08 Method for the transmission of a software module from a transmitter to a receiver in a computer system or computer network. NL1013249C2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
NL1013249A NL1013249C2 (en) 1999-10-08 1999-10-08 Method for the transmission of a software module from a transmitter to a receiver in a computer system or computer network.
NL1013249 1999-10-08

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
NL1013249A NL1013249C2 (en) 1999-10-08 1999-10-08 Method for the transmission of a software module from a transmitter to a receiver in a computer system or computer network.
EP20000973256 EP1221092A1 (en) 1999-10-08 2000-10-06 Method for transferring a software module from a sender to a receiver in a computer system or network
AU11785/01A AU1178501A (en) 1999-10-08 2000-10-06 Method for transferring a software module from a sender to receiver in a computer system or network
PCT/NL2000/000720 WO2001027757A1 (en) 1999-10-08 2000-10-06 Method for transferring a software module from a sender to a receiver in a computer system or network
JP2001530702A JP2003511792A (en) 1999-10-08 2000-10-06 In a computer system or network, a method of transferring a software module from a sender to a recipient

Publications (1)

Publication Number Publication Date
NL1013249C2 true NL1013249C2 (en) 2001-04-10

Family

ID=19770019

Family Applications (1)

Application Number Title Priority Date Filing Date
NL1013249A NL1013249C2 (en) 1999-10-08 1999-10-08 Method for the transmission of a software module from a transmitter to a receiver in a computer system or computer network.

Country Status (5)

Country Link
EP (1) EP1221092A1 (en)
JP (1) JP2003511792A (en)
AU (1) AU1178501A (en)
NL (1) NL1013249C2 (en)
WO (1) WO2001027757A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0778522A2 (en) * 1995-12-08 1997-06-11 Sun Microsystems, Inc. System and method for generating trusted, architecture specific, compiled versions of architecture neutral programs
EP0841615A2 (en) * 1996-11-08 1998-05-13 International Computers Limited Updating mechanism for software
US5845077A (en) * 1995-11-27 1998-12-01 Microsoft Corporation Method and system for identifying and obtaining computer software from a remote computer

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5845077A (en) * 1995-11-27 1998-12-01 Microsoft Corporation Method and system for identifying and obtaining computer software from a remote computer
EP0778522A2 (en) * 1995-12-08 1997-06-11 Sun Microsystems, Inc. System and method for generating trusted, architecture specific, compiled versions of architecture neutral programs
EP0841615A2 (en) * 1996-11-08 1998-05-13 International Computers Limited Updating mechanism for software

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"OBJECT LOCATION ALGORITHM" IBM TECHNICAL DISCLOSURE BULLETIN,US,IBM CORP. NEW YORK, deel 36, nr. 9B, 1 September 1993 (1993-09-01), bladzijden 257-258, XP002045269 ISSN: 0018-8689 *
IBM, CRYSTALIZ, GENERAL MAGIC, GMD FOCUS: "Mobile Agent Facility Specification" OMG TC DOCUMENT, 2 Juni 1997 (1997-06-02), XP002143104 *
OSHIMA, KARJOTH & ONO: "Aglets Specification 1.1 Draft" INTERNET, 8 September 1998 (1998-09-08), XP002143103 www.trl.ibm.co.jp/aglets/spec11.html *

Also Published As

Publication number Publication date
EP1221092A1 (en) 2002-07-10
WO2001027757A1 (en) 2001-04-19
AU1178501A (en) 2001-04-23
JP2003511792A (en) 2003-03-25

Similar Documents

Publication Publication Date Title
US7120691B2 (en) Secured and access controlled peer-to-peer resource sharing method and apparatus
US9124594B2 (en) Method and apparatus for dynamic data flow control using prioritization of data requests
CN1961558B (en) Method for improving a peer to peer network communication
US8683076B2 (en) Method of generating a web page
JP2511644B2 (en) Cash Sa - Ba Bruno - computer having a de - data-networks - a method and apparatus for searching a resource in click
US5933604A (en) Network resource monitoring system and method for providing notice of changes in resources in a network
EP1163661B1 (en) Method of speech recognition
US5222242A (en) System for locating a node containing a requested resource and for selectively verifying the presence of the resource at the node
US7054935B2 (en) Internet content delivery network
US7277914B2 (en) Proxy server apparatus and method for providing service using the same
US7555563B2 (en) High-performance addressing and routing of data packets with semantically descriptive labels in a computer network
US8930544B2 (en) Network resource identification
US6907011B1 (en) Quiescent reconfiguration of a routing network
US7213071B2 (en) Quality of service improvements for network transactions
US8606996B2 (en) Cache optimization
CN103795789B (en) A network device based on content exchange
JP2575800B2 (en) How to find resources
JP4608195B2 (en) Data caching method
US4644470A (en) Non-unique names for broadcast messages
US8296396B2 (en) Delivering resources to clients in a distributed computing environment with rendezvous based on load balancing and network conditions
EP0669741A2 (en) Method and apparatus for encrypted communication in data networks
CA2265334C (en) Message broker apparatus, method and computer program product
US20020078134A1 (en) Push-based web site content indexing
US20020080789A1 (en) Switch-based network processor
US5745680A (en) Interconnected networks and methods for communicating therebetween using virtual communications links

Legal Events

Date Code Title Description
PD2B A search report has been drawn up
SD Assignments of patents

Owner name: TRYLLIAN HOLDING N.V.

VD1 Lapsed due to non-payment of the annual fee

Effective date: 20050501