Brevet FR2835992A1 — publié le 20030815

PROCEDES ET DISPOSITIFS OPTIMISES D'EMISSION ET DE RECEPTION DE DONNEES PAR DEFLECTION DE DONNEES La présente invention se rapporte à des procédés et des dispositifs optimisés d'émission et de réception de données. Plus précisément, la présente invention se rapporte à un protocole optimisé de communication de données dans un réseau informatique. On définit ici un protocole de communication comme étant un programme informatique permettant l'échange de données entre différentes applications informatiques s'exécutant sur des systèmes informatiques reliés par un réseau informatique. Du point de vue des applications, ces protocoles de communication fournissent des services que ne peuvent garantir les réseaux de communication physique, comme par exemple la retransmission de données en cas de perte, ou encore la possibilité d'échanger des données de taille illimitée. Ces protocoles de communication devenant ainsi des programmes d'une grande complexité, on comprend aisément qu'ils tendent à consommer des ressources de calcul importantes. Traditionnellement pourtant, dans le cas des systèmes numériques embarqués prévus pour la mise en oeuvre d'un nombre limité de fonctions prédéterminées, les ressources de calcul dédiées à la mise en oeuvre du protocole de communication sont réduites, la puissance de calcul étant calculée et réservée pour l'accomplissement de ces tâches. La présente invention vise ainsi à proposer un protocole de communication optimisé pouvant facilement être implémenté dans un système numérique embarqué, tel qu'un photocopieur numérique par exemple. Comme nous allons maintenant le voir en référence à la figure 1, une partie significative de la charge de calcul utilisée par un protocole de communication traditionnel vient des copies multiples que subissent les données en traversant les différentes couches logicielles. La figure 1 représente schématiquement l'envoi d'un message M par une application APP~1 d'une première station PC à destination d'une application APP~2 d'une deuxième station P. Chacune de ces stations comporte une carte réseau CR permettant de relier ladite station à un réseau informatique NET. De façon connue, chacune de ces stations comporte une organisation logicielle en couches, chaque couche logicielle utilisant les services de la couche qui lui est immédiatement inférieure. Ainsi, les applications APP1 et APP~2 des première et deuxième stations utilisent un protocole de communication conçu pour utiliser les services des couches"transport"TCP et"réseau"IP telles que définies par le modèle OSI. On peut ainsi considérer la couche de transport TCP comme une bibliothèque de procédures mises à la disposition des applications lorsque celles-ci ont besoin d'une communication fiable avec une autre station. De même, la couche réseau"IP"utilise les services fournis par les pilotes P - CR des cartes réseau CR. L'envoi d'un message M de données depuis la mémoire APPMEM1 directement accessible par l'application APP1 de la première station PC vers une zone de la mémoire APPMEM2 directement accessible par l'application APP2 de la deuxième station P nécessite un certain nombre de copies qui vont maintenant être détaillées. Tout d'abord, le message M est découpé en paquets Pi copiés dans des tampons MBUF1 d'une mémoire accessible par la couche de transport TCP de la première station PC. Ces paquets sont ensuite acheminés par la carte réseau CR de la première station PC vers la carte réseau CR de la deuxième station P. Sur réception d'un paquet Pi par la carte réseau CR de la deuxième station P, le pilote PCR de cette carte réseau CR copie ce paquet Pi dans un tampon MBUF2 d'une mémoire accessible par la couche transport TCP de la deuxième station P. Ce paquet Pi est ensuite recopié depuis le tampon MBUF2 vers une zone de mémoire APPJvMEM2 directement accessible par l'application de la deuxième station, ceci afin de reconstituer le message M. La principale raison justifiant ces différentes copies tient à l'exigence de modularité respectée lors du développement des différentes couches logicielles. Cette caractéristique de modularité permet en particulier de développer chacune des couches sans faire d'hypothèse sur le format de données utilisé par les autres couches. Notamment, les couches du niveau d'application APP1 et APP~2 peuvent utiliser des formats différents du format utilisé par les couches de niveau transport TCP ou du format utilisé par le pilote P~CR de la carte réseau CR. Ces copies de données au cours de la traversée des différentes couches logicielles sont malheureusement consommatrices de ressources de calcul, ce qui peut être particulièrement dommageable pour une station constituée par un système numérique embarqué dont les capacités de calcul sont limitées, par exemple un photocopieur numérique. La présente invention vise à réduire le nombre de copies de données lors de l'envoi d'un message par l'application de la première station vers l'application de la deuxième station. Plus particulièrement et selon un premier aspect, la présente invention vise un procédé d'émission d'une première station à une deuxième station, ces données comportant des informations utiles destinées à être traitées par une application informatique et des informations de contrôle de l'application informatique, ce procédé comportant les étapes suivantes : - émission, par la première station, selon un premier protocole de transport, d'un en-tête comportant une information représentative de la taille des informations utiles ; - à réception d'un ordre d'émission provenant de la deuxième station, émission, par la première station, des informations utiles selon un deuxième protocole de transport, le deuxième protocole de transport étant adapté à indiquer l'emplacement des données utiles dans une mémoire de la deuxième station, l'emplacement étant directement accessible par l'application informatique. Ainsi, le deuxième protocole de transport permettant d'indiquer l'emplacement des données utiles dans la mémoire directement accessible par l'application informatique de la deuxième station, ces données utiles peuvent être copiées directement et dès réception dans cette mémoire, sans qu'une copie intermédiaire ne soit nécessaire. Dans un mode préféré de réalisation, le premier protocole étant un protocole permettant de garantir l'arrivée et l'ordre d'arrivée des données, les informations de contrôle sont envoyées selon ce premier protocole. Cette caractéristique permet avantageusement de garantir d'une part que les informations de contrôle parviennent à l'application informatique, et d'autre part, que ces informations de contrôle lui parviennent dans l'ordre dans lequel elles ont été émises. Dans une variante de réalisation, le deuxième protocole de transport est un protocole adapté à envoyer les données par paquets (on parle aussi de"datagramme"). Préférentiellement, il est implémenté au-dessus du protocole UDP/IP standard. Ce mode de réalisation est particulièrement avantageux car il permet de simplifier considérablement le développement de ce deuxième protocole de transport. Dans cette variante préférée de réalisation, le deuxième protocole de transport est adapté à retransmettre les paquets précités. Le protocole UDP/IP ne traitant pas la perte de paquets, cette variante de réalisation permet de réduire considérablement les pertes de paquets. Corrélativement à ce premier aspect de l'invention, la présente invention concerne un dispositif d'émission de données vers une station, les données comportant des informations utiles destinées à être traitées par une application informatique et des informations de contrôle de l'application informatique, ce dispositif comportant : - des premiers moyens d'émission selon un premier protocole de transport, d'un en-tête comportant une information représentative de la taille des informations utiles ; - des moyens de réception d'un ordre d'émission provenant de la station ; - des deuxièmes moyens d'émission des informations utiles selon un deuxième protocole de transport, ce deuxième protocole de transport étant adapté à indiquer l'emplacement des données utiles dans une mémoire de la station, cet emplacement étant directement accessible par l'application informatique. Selon un deuxième aspect, la présente invention vise aussi un procédé de réception, par une deuxième station, de données provenant d'une première station, les données comportant des informations utiles destinées à être traitées par une application informatique et des informations de contrôle de l'application informatique. Ce procédé comporte les étapes suivantes : - réception, par la deuxième station, selon un premier protocole de transport, d'un en-tête comportant une information représentative de la taille des informations utiles ; - réservation, par la deuxième station, en fonction de la taille, d'un espace mémoire directement accessible par l'application ; - envoi, par la deuxième station, d'un ordre d'émission des informations utiles à destination de la première station ; - réception des informations utiles selon un deuxième protocole de transport, ce deuxième protocole de transport étant adapté à indiquer l'emplacement des informations utiles dans l'espace mémoire précité ; et - mémorisation des informations utiles dans cet espace mémoire. Ainsi, la deuxième station réserve, dans un premier temps, un espace mémoire pour l'enregistrement des informations utiles dans une mémoire directement accessible par l'application, et, dans un deuxième temps, y mémorise les informations utiles dès leur réception, cette deuxième opération évitant une copie intermédiaire des informations utiles. Dans une variante de réalisation, le deuxième protocole de transport est un protocole de type"datagramme". Préférentiellement, il est implémenté au-dessus du protocole UDP/IP standard, et est adapté à retransmettre lesdits paquets. Cette variante présente les avantages décrits précédemment, à savoir simplifier le développement du deuxième protocole de transport et réduire le nombre de paquets perdus. Dans une autre variante de réalisation, dans laquelle la première et la deuxième stations sont reliées par un réseau Ethernet, le deuxième protocole de transport (ALF) est implémenté directement au dessus du protocole Ethernet. Cette variante préférée de réalisation permet en particulier d'augmenter les performances au niveau de la deuxième station par rapport à une implémentation basée sur la pile UDP/IP. Bien entendu, dans le mode préféré de réalisation mentionné auparavant dans lequel les informations de contrôle sont envoyées selon un premier protocole permettant de garantir l'arrivée et l'ordre d'arrivée de ces informations de contrôle, le procédé de réception selon l'invention est adapté à recevoir ces informations de contrôle selon ce premier protocole de transport. Selon une autre caractéristique particulière, le procédé de réception de données comporte une étape de filtrage consistant à aiguiller les informations de contrôle vers une mémoire accessible par le premier protocole de transport et les informations utiles vers l'espace mémoire. Ce filtrage permet de traiter efficacement les données reçues et de limiter l'utilisation des ressources de calcul. Dans un mode préféré de réalisation, l'étape préalable de filtrage comporte une sous-étape de vérification de la validité des données. Cette sous-étape permet avantageusement d'éviter la mémorisation et le traitement ultérieur par l'application de données corrompues. Dans un autre mode préféré de réalisation, l'étape de filtrage est démarrée après réception de l'en-tête et arrêtée lorsque toutes les informations utiles ont été reçues. Cette caractéristique permet de ne mettre en oeuvre le filtrage que lorsque des informations utiles sont susceptibles d'être reçues. Corrélativement à ce deuxième aspect de l'invention, la présente invention vise un dispositif de réception de données provenant d'une station, les données comportant des informations utiles destinées à être traitées par une application informatique et des informations de contrôle de l'application informatique, ce dispositif comportant : - des premiers moyens de réception, selon un premier protocole de transport, d'un en-tête comportant une information représentative de la taille des informations utiles ; - des moyens de réservation, en fonction de la taille, d'un espace mémoire directement accessible par l'application ; - des moyens d'envoi d'un ordre d'émission des informations utiles à destination de la station ; - des deuxièmes moyens de réception des informations utiles selon un deuxième protocole de transport, ce deuxième protocole de transport étant adapté à indiquer l'emplacement des informations utiles dans l'espace mémoire précité ; et - des moyens de mémorisation des informations utiles dans cet espace mémoire. La présente invention vise aussi : - un système informatique comportant des moyens adaptés à mettre en oeuvre un procédé d'émission de données tel que décrit brièvement ci-dessus ; - un système informatique comportant des moyens adaptés à mettre en oeuvre un procédé de réception de données tel que décrit brièvement ci-dessus ; - un système informatique comportant un dispositif d'émission de données tel que décrit brièvement ci-dessus ; et - un système informatique et un photocopieur numérique comportant un dispositif de réception de données tel que décrit brièvement cidessus. La présente invention vise aussi : - un support d'informations lisible par un système informatique, éventuellement totalement ou partiellement amovible, notamment CD-ROM ou support magnétique, tel un disque dur ou une disquette, ou support transmissible, tel un signal électrique ou optique, comportant des instructions d'un programme d'ordinateur permettant la mise en oeuvre d'un procédé d'émission de données tel que décrit brièvement ci-dessus, lorsque ce programme est chargé et exécuté par un système informatique ; et - un support d'informations lisible par un système informatique, éventuellement totalement ou partiellement amovible, notamment CD-ROM ou support magnétique, tel un disque dur ou une disquette, ou support transmissible, tel un signal électrique ou optique, comportant des instructions d'un programme d'ordinateur permettant la mise en oeuvre d'un procédé de réception de données tel que décrit brièvement ci-dessus, lorsque ce programme est chargé et exécuté par un système informatique. La présente invention vise également : - un programme d'ordinateur stocké sur un support d'informations, ce programme comportant des instructions permettant la mise en oeuvre d'un procédé d'émission de données tel que décrit brièvement cidessus, lorsque ce programme est chargé et exécuté par un système informatique ; et - un programme d'ordinateur stocké sur un support d'informations, ce programme comportant des instructions permettant la mise en oeuvre d'un procédé de réception de données tel que décrit brièvement cidessus, lorsque ce programme est chargé et exécuté par un système informatique. Les avantages et caractéristiques particulières propres aux dispositifs d'émission et de réception, aux systèmes informatiques, au photocopieur numérique, aux supports d'informations et aux programmes d'ordinateur étant les mêmes que ceux exposés ci-dessus concernant les procédés d'émission et de réception, ils ne seront pas rappelés ici. D'autres aspects et avantages de la présente invention apparaîtront plus clairement à la lecture de la description de modes particuliers de réalisation qui va suivre, cette description étant donnée uniquement à titre d'exemple non limitatif et faite en référence aux dessins annexés sur lesquels : - la figure 1, déjà décrite, représente schématiquement l'envoi d'un message conformément à l'état de la technique ; - la figure 2 représente le cheminement des données émises d'une première station vers une deuxième station selon un procédé d'émission de données conforme à la présente invention ; - la figure 3 représente, sous forme d'organigramme, les principales étapes d'envoi d'un message de données conformément à la présente invention ; - la figure 4 représente, sous forme d'organigramme, les principales étapes de réception d'un paquet de données conformément à la présente invention ; - la figure 5 représente schématiquement un dispositif d'émission de données conforme à la présente invention ; - la figure 6 représente schématiquement un dispositif de réception de données conforme à la présente invention ; et - la figure 7 représente schématiquement un système informatique adapté à mettre un oeuvre un procédé d'émission de données ou un procédé de réception de données conforme à la présente invention. La figure 2 représente de façon schématique le cheminement des données émises d'une première station PC vers une deuxième station P selon un procédé d'émission de données conforme à la présente invention. Dans l'exemple de la figure 2 nous considérons que : - la première station PC est un ordinateur ; - la deuxième station P est un photocopieur numérique ; et - les applications informatiques PRINT~CL et PRINT~S installées respectivement dans la première station PC et la deuxième station P sont respectivement un client et un serveur d'impression permettant à un utilisateur de la première station PC d'imprimer un document sur la deuxième station P. Dans l'exemple décrit ici, les données émises par la première station PC vers la deuxième station P lors de l'impression d'un document sont de deux types : - premièrement, des données comportant des informations de contrôle utilisées par le serveur d'impression PRINT~S de la deuxième station P, à savoir par exemple des codes de début de document START, de fin de page EOP, et de fin de document END, - deuxièmement des informations utiles RAW correspondant aux données à imprimer proprement dites. Dans le mode de réalisation décrit ici, le protocole d'impression utilise des messages de données de taille limitée RAWMAX. Selon la présente invention, et comme nous allons le décrire maintenant les données utiles RAW et les informations de contrôle START, EOP, END sont acheminées à partir de la première station PC vers la deuxième station P par deux protocoles de transport distincts, respectivement un premier protocole de transport TCP et un deuxième protocole de transport ALF. En variante, le premier protocole de transport pourrait être le protocole SPX connu de l'homme du métier. Le deuxième protocole de transport ALF utilisé pour le transport des informations utiles RAW utilise "le principe ALF" (en anglais, Application Level Framing) tel que défini par D. D. Clark et D. L. Thennenhouse dans le document considerations for a new generation of protocols ; Proceedings of the Symposium on Communications Architectures and Protocols (SIGCOMM), Philadelphia, PA, Sept. 1990, ACM, pp. 200-208". Le deuxième protocole de transport ALF utilisé dans la présente invention comporte : - une partie client ALF~C implémentée au niveau des couches transport et réseau de la deuxième station P, soit le photocopieur numérique ; et - une partie serveur ALF~S implémentée au niveau des couches réseau et transport de la première station PC, c'est-à-dire l'ordinateur. Nous allons maintenant décrire l'envoi d'un message de données M par le client d'impression PRINT~CL résidant sur la première station PC vers le serveur d'impression PRINT~S résidant dans la deuxième station P, conformément à la présente invention. Selon le mécanisme d'impression utilisé dans le mode de réalisation de l'invention décrit ici, le message M comprend une première partie constituée par un en-tête H et une deuxième partie constituée : - soit exclusivement par des informations de contrôle START, EOP, END (on parlera par la suite de message de "type contrôle") ; - soit exclusivement par des informations utiles RAW (message de"type données"). Le client d'impression PRINT~CL résidant sur la première station PC comporte un sous-programme déflecteur SP adapté à différencier le type du message M. Lorsqu'à l'envoi d'un message de données M, le sous-programme déflecteur SP du client d'impression PRINT~CL reconnaît qu'il s'agit d'un message de type"contrôle", ce message est acheminé vers le serveur d'impression PRINT~S de la deuxième station P au moyen du protocole de transport TCP tel que décrit précédemment en référence à la figure 1. En revanche, lorsque le sous-programme déflecteur SP reconnaît que le message M est de type "données", les informations RAW contenues dans ce message sont tout d'abord mises à disposition de la partie serveur ALF~S du deuxième protocole de transport ALF. Dans un mode préféré de réalisation, cette mise à disposition s'effectue en communiquant à la partie serveur ALFS du deuxième protocole de transport ALF l'adresse des informations utiles RAW dans la mémoire APP ~MEM1 directement accessible par le client d'impression PRINT~CL. Le sous-programme déflecteur SP du client d'impression PRINT~CL extrait par la suite l'en-tête H du message de données M et lui ajoute, d'une part, la taille RAW~SIZE des informations utiles RAW contenues dans le message M de type"données", et d'autre part, un identificateur ID de ce message M. Cet en-tête H ainsi formé est ensuite acheminé par le client d'impression PRINT~CL à destination du serveur d'impression PRINT~S au moyen du premier protocole de transport TCP tel que décrit précédemment en référence à la figure 1. Lorsque cet en-tête H est reçu par le serveur d'impression PRINT~S résidant sur la deuxième machine P, le protocole d'impression PRINT~S réserve un espace mémoire MEM2 dans la mémoire d'application APP ~MEM2 directement accessible par le serveur d'impression PRINTS, cet espace mémoire MEM2 étant de taille égale à la taille RAW~SIZE contenue dans l'en-tête H. Puis, le serveur d'impression PRINT~S invoque la partie client du deuxième protocole de transport ALF~C avec l'identificateur de message ID contenu dans l'en-tête H et l'adresse de l'espace mémoire MEM2 réservé par le serveur d'impression PRINTS. Sur réception de cette demande, le client ALFC active un filtre F dans le pilote P - CR de la carte réseau CR de la deuxième station P et envoie un ordre d'émission des informations utiles RAW à la partie serveur ALFS du deuxième protocole de communication ALF. L'utilité du filtre F sera explicitée ciaprès. Les informations utiles sont alors transmises par paquets Pi par la partie serveur ALFS du deuxième protocole de communication ALF, ces paquets Pi étant reçus par la partie client ALFC résidant sur la deuxième station P. Conformément au principe des protocoles de transport de type ALF, un paquet Pi reçu par la partie client ALFC du deuxième protocole de transport ALF contient une information suffisante pour que puisse être calculée l'adresse à laquelle ce paquet doit être mémorisé au sein de l'espace mémoire MEM2 réservé dans la mémoire d'application APPMEM2. Le filtre F activé par la partie client ALF~C du deuxième protocole de transport ALF est adapté à reconnaître un paquet conforme au premier protocole de transport TCP et à reconnaître un paquet conforme au deuxième protocole de transport ALF. Ainsi, sur réception d'un paquet Pi conforme au premier protocole de transport TCP, le filtre F mémorise ce paquet dans un tampon MBUF2 accessible par le premier protocole de transport TCP, ce paquet étant ensuite recopié dans la mémoire APP ~MEM2 directement accessible par le serveur d'impression PRINT~S, tel que décrit précédemment en référence à la figure 1. Dans un mode préféré de réalisation, le filtre F est en outre adapté à vérifier la validité des paquets Pi de données reçus. En revanche, sur réception d'un paquet Pi conforme au deuxième protocole de transport ALF, ce paquet est directement copié dans l'espace mémoire MEM2 directement accessible par le serveur d'impression PRINTS. Ce mécanisme permet ainsi avantageusement : - premièrement, d'utiliser le premier protocole de transport TCP pour le transport des informations de contrôle START, EOP, END et pour le transport de l'en-tête H des messages de type "utile" ; et - d'utiliser le deuxième protocole de transport ALF pour le transport des informations utiles RAW proprement dites, ce qui minimise considérablement la recopie des données. La figure 3 représente les principales étapes E300 à E370 d'envoi d'un message de données M par le client d'impression PRINT~CL de la première station PC, à destination du serveur d'impression PRINT~S de la deuxième station P. Au cours de la première étape E300, le sous-programme déflecteur SP du client d'impression PRINT~CL détermine si le message M est un message de"type données"ou un message de"type contrôle". Lorsque le message M est un message de"type contrôle", le résultat du test E300 est négatif. Ce test est alors suivi par une étape E310 au cours de laquelle le message M est acheminé vers le serveur d'impression PRINT~S de la deuxième station P au moyen du premier protocole de transport TCP. En revanche, lorsque le message M est de"type données", le résultat du test E300 est positif. Ce test est alors suivi par une étape E320 au cours de laquelle les informations utiles RAW contenues dans le message M sont mises à disposition de la partie serveur ALFS du deuxième protocole de transport ALF. L'étape E320 est suivie par une étape E330 au cours de laquelle le sous-programme déflecteur SP du client d'impression PRINT~CL extrait l'entête H du message de données M. Puis, au cours d'une étape E340, le sous-programme déflecteur SP ajoute à cet en-tête H la taille RAW~SIZE des informations utiles RAW et un identificateur ID du message M. Cet en-tête H ainsi formé est ensuite acheminé au cours d'une étape E350, par le premier protocole de transport TCP, vers la deuxième station P. L'étape E350 est suivie par une étape E360 au cours de laquelle la partie serveur ALF~S du deuxième protocole de transport ALF attend un ordre d'émission en provenance de la partie client ALFC de ce deuxième protocole de transport. Lorsqu'un tel ordre d'émission est reçu, l'étape E360 se termine. Cette étape est alors suivie par une étape E370 au cours de laquelle les informations utiles RAW du message M sont transmises par paquets Pi à la deuxième station P par le deuxième protocole de transport ALF. Nous allons maintenant décrire en référence à la figure 4 les principales étapes E400 à E490 mises en oeuvre lors de la réception d'un paquet Pi par la deuxième station P. Au cours de la première étape E400, on vérifie si le filtre F du pilote PCR de la carte réseau CR est activé. Dans le mode préféré de réalisation décrit ici, le filtre F est tout d'abord désactivé au cours d'une étape d'initialisation non décrite ici. Il est ensuite activé sur réception d'un paquet d'en-tête H, et désactivé lorsque toutes les informations utiles RAW, dont la taille est comprise dans cet en-tête H, ont été reçues. Lorsque le filtre F est désactivé, le résultat du test E400 est négatif. Ce test est alors suivi par une étape E410 au cours de laquelle ce paquet Pi est mémorisé dans un tampon MBUF2 accessible au premier protocole de transport TCP puis recopié dans la mémoire APPMEM2 directement accessible par le serveur d'impression PRINTS. Ce traitement est en particulier effectué lors de la réception de l'en-tête H d'un message M de type"données", cet en-tête H étant en effet transmis par une première station PC au moyen du premier protocole de transport TCP tel que décrit précédemment en référence à l'étape E350. L'étape E410 est suivie par un test E420 au cours duquel le pilote PCR de la carte de réseau CR détermine si le paquet Pi est effectivement l'en- tête H d'un message M de type"données". Si tel n'est pas le cas, le résultat du test E420 est négatif et la réception du paquet Pi est terminée. En revanche, lorsque le paquet Pi est un paquet correspondant à l'en-tête H d'un message M de type "données", le résultat du test E420 est positif. Ce paquet ayant été mémorisé au cours de l'étape E410 dans un espace mémoire MEM2 de la mémoire d'application APPMEM2 accessible par le serveur d'impression PRINTS, ce serveur d'impression PRiNTS est adapté à obtenir la taille RAW~SIZE contenue dans l'en-tête H. Après lecture de cette taille RAW~SIZE, le serveur d'impression PRINT~S réserve un espace mémoire MEM2 de taille RAW~SIZE dans la mémoire d'application APP ~MEM2. L'étape E430 est alors suivie par une étape E440 au cours de laquelle le serveur d'impression PRINT~S invoque la partie client du deuxième protocole de transport ALF~C avec l'identificateur du message ID lu dans l'entête H et l'adresse de l'espace mémoire MEM2 réservé à l'étape E430. L'étape E440 est suivie par une étape E450 au cours de laquelle le filtre F du pilote P - CR de la carte réseau CR est activé. Puis l'étape E450 est suivie par une étape E460 au cours de laquelle la partie client ALF~C du deuxième protocole de transport ALF envoie un ordre d'émission à destination de la partie serveur ALFS du deuxième protocole de communication ALF. Cet ordre d'émission est attendu, comme décrit précédemment, par la partie serveur ALF-S du deuxième protocole de transport ALF au cours de l'étape E360. Cette étape E460 termine la réception du paquet Pi. De retour au test E400, lorsque l'on reçoit un paquet Pi, le filtre F étant activé, le résultat du test E400 est positif. Ce test est alors suivi par un test E405 au cours duquel le filtre F du pilote P~CR de la carte réseau CR de la deuxième station P vérifie si le paquet Pi est conforme au premier protocole de transport TCP. Lorsque tel est le cas, le résultat du test E405 est positif. Ce test est alors suivi par l'étape de mémorisation E410 déjà décrite. En revanche, lorsque le paquet Pi est conforme au deuxième protocole de transport ALF, le résultat du test E405 est négatif. Ce test est alors suivi par une étape E470 au cours de laquelle on calcule l'adresse de mémorisation du paquet Pi du sein de l'espace mémoire MEM2 réservé au cours de l'étape E430. Au cours de cette même étape E470, le paquet Pi est mémorisé à cette adresse. L'étape E470 est suivie par un test E480 au cours duquel la partie serveur PRINT~S du protocole d'impression détermine si toutes les informations utiles RAW ont été reçues. Dans le mode préféré de réalisation, ce test est effectué en comparant la taille des informations utiles déjà reçues (après élimination des paquets dupliqués) avec la taille RAW~SIZE de ces informations utiles contenue dans l'en-tête H reçu précédemment. Lorsque toutes les informations utiles ont été reçues, le résultat du test E480 est positif. Ce test est alors suivi par une étape E490 au cours de laquelle le filtre F activé à l'étape E450 est désactivé. Cette étape E490 termine la réception du paquet Pi. De même, lorsque le résultat du test E480 est négatif, c'est-à-dire si toutes les informations utiles RAW n'ont pas été reçues, la réception du paquet Pi se termine. Dans un mode préféré de réalisation, le deuxième protocole de transport ALF est implémenté au dessus d'un protocole datagramme standard tel que UDP/IP. La figure 5 représente schématiquement un dispositif 500 d'émission de données conforme à la présente invention. Le dispositif 500 d'émission de données peut être intégré dans un ordinateur PC. Ce dispositif 500 d'émission de données permet l'envoi de données vers une station P, ces données comportant : - des informations utiles RAW destinées à être traitées par une application informatique ; et - des informations de contrôle START, EOP, END de l'application informatique. Le dispositif 500 d'émission de données comporte des premiers moyens d'émission 510, selon un premier protocole de transport TCP, d'un entête H comportant une information RAW~SIZE représentative de la taille des informations utiles RAW. Dans un mode préféré de réalisation, ces premiers moyens d'émission 510 mettent en oeuvre le protocole de transport TCP connu de l'homme du métier. Ces premiers moyens d'émission 510 sont également adaptés à envoyer les informations de contrôle START, EOP, END selon le premier protocole de transport TCP. Le dispositif d'émission de données 500 comporte également des moyens 520 de réception d'un ordre d'émission provenant de la station P. Le dispositif d'émission de données 500 comporte également des deuxièmes moyens d'émission 530 adaptés à émettre les informations utiles RAW selon un deuxième protocole de transport ALF, ce deuxième protocole de transport ALF étant adapté à indiquer l'emplacement des données utiles RAW dans une mémoire APP ~MEM2 de la station P, cet emplacement étant directement accessible par l'application informatique. Dans un mode préféré de réalisation les deuxièmes moyens d'émission 530 sont adaptés à envoyer les informations utiles par paquets Pi. Préférentiellement, le deuxième protocole de transport mise en oeuvre par les deuxièmes moyens d'émission 530 est implémenté au dessus du protocole UDP/IP. En cas de perte ou de mauvaise transmission d'un paquet Pi, les deuxièmes moyens d'émission 530 sont adaptés à retransmettre ce paquet. Dans le mode de réalisation décrit ici, les premiers moyens d'émission 510, les moyens 520 de réception d'un ordre d'émission, et les deuxièmes moyens d'émission 530 des informations utiles sont reliés au réseau informatique NET. La figure 6 représente schématiquement un dispositif 600 de réception de données conforme à la présente invention. Le dispositif 600 de réception de données peut être intégré dans un photocopieur numérique P. Le dispositif 600 de réception de données est adapté à recevoir des données en provenance d'une station PC, ces données comportant des informations utiles RAW destinées à être traitées par une application informatique et des informations de contrôle START, EOP, END de l'application informatique. Le dispositif 600 de réception de données comporte des premiers moyens de réception 610 adaptés à recevoir, selon un premier protocole de transport TCP, un en-tête H comportant une information RAW~SIZE représentative de la taille des informations utiles RAW. Dans un mode préféré de réalisation, le premier protocole de transport TCP est un protocole permettant de garantir l'arrivée et l'ordre d'arrivée des données. Les premiers moyens de réception 610 sont adaptés également à recevoir les informations de contrôle START, EOP, END, selon ce premier protocole de transport. Le dispositif 600 de réception de données comporte des moyens 620 de réservation, en fonction de la taille RAW~SIZE, d'un espace mémoire MEM2 directement accessible par l'application. Le dispositif 600 de réception de données comporte des moyens 630 d'envoi, à destination de la station, d'un ordre d'émission des informations utiles. Ce dispositif 600 de réception comporte également des deuxièmes moyens de réception 640 des informations utiles RAW, selon un deuxième protocole de transport ALF, ce protocole de transport ALF étant adapté à indiquer l'emplacement des informations utiles dans l'espace mémoire MEM2 réservé par les moyens 620 de réservation. Dans le mode préféré de réalisation décrit ici, les deuxièmes moyens de réception 640 sont adaptés à recevoir les informations utiles selon un deuxième protocole ALF de transport par paquets Pi, et à demander la retransmission de ces paquets Pi en cas de perte ou de mauvaise transmission. Préférentiellement, le deuxième protocole de transport mis en oeuvre par les deuxièmes moyens de réception 640 est implémenté au dessus du protocole UDP/IP connu de l'homme du métier. Le dispositif 600 de réception de données comporte également des moyens 650 de filtrage adaptés à aiguiller les informations de contrôle START, EOP, END vers une mémoire MBUF2 accessible par le premier protocole de transport TCP, et les informations utiles RAW vers l'espace mémoire MEM2 réservé par les moyens 620 de réservation. Les moyens 650 de filtrage sont en outre adaptés à vérifier la validité des données reçues. Dans un mode préféré de réalisation, les premiers moyens de réception 610 sont adaptés, après réception de l'en-tête H, à générer un signal à destination des moyens 650 de filtrage pour démarrer le filtrage. De même, les deuxièmes moyens de réception 640 des informations utiles sont adaptés à vérifier que l'ensemble des informations utiles RAW a été reçu, et, dans ce cas, à envoyer un signal à destination des moyens 650 de filtrage, pour commander l'arrêt du filtrage. Le dispositif 600 de réception de données comporte également des moyens 660 de mémorisation des informations utiles RAW dans l'espace mémoire MEM2. La figure 7 représente schématiquement un système informatique adapté à mettre un oeuvre un procédé d'émission de données ou un procédé de réception de données conforme à la présente invention, dans un mode préféré de réalisation. Cet appareil programmable comporte un clavier 710, un écran 709, conjointement reliés à un port d'entrées-sorties 703 d'une carte de traitement 701. La carte de traitement 701 comporte, reliés entre eux par un bus d'adresses et de données 702 : - une unité centrale de traitement 700 ; - une mémoire vive RAM 704 ; - une mémoire morte ROM 705 ; et - le port d'entrées-sorties 703. Chacun des éléments illustrés en figure 7 est bien connu de l'homme du métier des micro-ordinateurs et, plus généralement, des systèmes de traitement de l'information. Ces éléments communs ne sont donc pas décrits ici. Le mot "registre" utilisé ci-après désigne, dans chacune des mémoires 704 et 705, aussi bien une zone mémoire de faible capacité (quelques données binaires) qu'une zone mémoire de grande capacité (permettant de stocker un programme entier). La mémoire vive 704 comporte notamment : - au moins un registre Pi pour la mémorisation d'un paquet Pi de données selon l'invention ; - un registre H mémorisant un en-tête H selon l'invention ; et - un registre RAW~SIZE pour mémoriser la taille RAW~SIZE des informations utiles RAW. La mémoire morte 705 est adaptée à conserver le programme de fonctionnement de l'unité centrale de traitement 700. Elle comporte notamment un registre"Program"pour mémoriser les instructions d'un programme mettant en oeuvre un procédé d'émission de données et/ou un procédé de réception de données conformes à l'invention. La mémoire morte 705 comporte également un registre P~CR pour mémoriser le pilote de la carte réseau CR, un registre TCP/IP pour mémoriser le premier protocole de communication et un registre ALF pour mémoriser la partie cliente ALF~C ou la partie serveur ALF~S du deuxième protocole de transport ALF. La mémoire morte 705 comporte également un registre APPL pour mémoriser le serveur d'impression PRINT~S ou le client d'impression PRINT C. L'unité centrale de traitement 700 est adaptée à mettre en oeuvre un procédé d'émission de données et/ou un procédé de réception d'un paquet de données conformes à l'invention, tels qu'illustrés par les organigrammes des figures 3 et 4. REVENDICATIONS 1. Procédé d'émission de données d'une première station (PC) à une deuxième station (P), lesdites données comportant des informations utiles (RAW) destinées à être traitées par une application informatique et des informations de contrôle (START, EOP, END) de ladite application informatique, caractérisé en ce qu'il comporte les étapes suivantes : - émission (E350), par la première station (PC), selon un premier protocole de transport (TCP), d'un en-tête (H) comportant une information (RAW~SIZE) représentative de la taille desdites informations utiles (RAW) ; - à réception (E360) d'un ordre d'émission provenant de la deuxième station (P), émission (E370), par la première station (PC), desdites informations utiles (RAW) selon un deuxième protocole de transport (ALF), ledit deuxième protocole de transport (ALF) étant adapté à indiquer l'emplacement desdites données utiles (RAW) dans une mémoire (APP ~MEM2) de la deuxième station (P), ledit emplacement étant directement accessible par ladite application informatique. 2. Procédé d'émission de données selon la revendication 1, caractérisé en ce que, le premier protocole (TCP) permettant de garantir l'arrivée et l'ordre d'arrivée desdites données, lesdites informations de contrôle (START, EOP, END) sont envoyées (E310) selon ledit premier protocole (TCP). 3. Procédé d'émission de données selon la revendication 1 ou 2, caractérisé en ce que le deuxième protocole de transport (ALF) est un protocole adapté à envoyer (E370) lesdites informations utiles par paquets (Pi). 4. Procédé d'émission de données selon la revendication 3, caractérisé en ce que le deuxième protocole (ALF) est implémenté au dessus du protocole UDP/IP. 5. Procédé d'émission de données selon la revendication 3 ou 4, caractérisé en ce que le deuxième protocole de transport (ALF) est adapté à retransmettre lesdits paquets (Pi). 6. Procédé de réception, par une deuxième station (P), de données provenant d'une première station (PC), lesdites données comportant des informations utiles (RAW) destinées à être traitées par une application informatique et des informations de contrôle (START, EOP, END) de ladite application informatique, caractérisé en ce qu'il comporte les étapes suivantes : - réception, par la deuxième station (P), selon un premier protocole de transport (TCP), d'un en-tête (H) comportant une information (RAW~SIZE) représentative de la taille desdites informations utiles (RAW) ; - réservation (E430), par la deuxième station (P), en fonction de ladite taille (RAW~SIZE), d'un espace mémoire (MEM2) directement accessible par ladite application ; - envoi (E460), par la deuxième station (P), d'un ordre d'émission desdites informations utiles (RAW) à destination de la première station (PC) ; - réception desdites informations utiles (RAW) selon un deuxième protocole de transport (ALF), ledit deuxième protocole de transport (ALF) étant adapté à indiquer l'emplacement desdites informations utiles dans ledit espace mémoire (MEM2) ; et - mémorisation (E470) desdites informations utiles (RAW) dans ledit espace mémoire (MEM2). 7. Procédé de réception de données selon la revendication 6, caractérisé en ce que, le premier protocole (TCP) permettant de garantir l'arrivée et l'ordre d'arrivée desdites données, lesdites informations de contrôle (START, EOP, END) sont reçues selon ledit premier protocole de transport (TCP). 8. Procédé de réception de données selon la revendication 6 ou 7, caractérisé en ce que le deuxième protocole de transport (ALF) est un protocole adapté à recevoir lesdites informations utiles par paquets (Pi). 9. Procédé de réception de données selon la revendication 8, caractérisé en ce que le deuxième protocole (ALF) est implémenté au dessus du protocole UDP/IP. 10. Procédé de réception de données selon la revendication 8 ou 9, caractérisé en ce que le deuxième protocole de transport (ALF) est adapté à demander la retransmission desdits paquets (Pi). 11. Procédé de réception de données selon la revendication 6 ou 7, dans lequel la première et la deuxième stations sont reliées par un réseau Ethernet, caractérisé en ce que le deuxième protocole de transport (ALF) est implémenté directement au-dessus du protocole Ethernet. 12. Procédé de réception de données selon l'une quelconque des revendications 6 à 11, caractérisé en ce qu'il comporte une étape de filtrage consistant à aiguiller lesdites informations de contrôle (START, EOP, END) vers une mémoire (MBUF2) accessible par ledit premier protocole de transport (TCP) et lesdites informations utiles (RAW) vers ledit espace mémoire (MEM2). 13. Procédé de réception de données selon la revendication 12, caractérisé en ce que ladite étape de filtrage comporte une sous-étape de vérification de la validité desdites données. 14. Procédé de réception de données selon la revendication 12 ou 13, caractérisé en ce que ladite étape de filtrage est démarrée (E450) après réception dudit en-tête (H), et arrêtée (E490) lorsque toutes les informations utiles (RAW) ont été reçues. 15. Dispositif d'émission de données vers une station (P), lesdites données comportant des informations utiles (RAW) destinées à être traitées par une application informatique et des informations de contrôle (START, EOP, END) de ladite application informatique, caractérisé en ce qu'il comporte : des premiers moyens d'émission (510) selon un premier protocole de transport (TCP), d'un en-tête (H) comportant une information (RAW~SIZE) représentative de la taille desdites informations utiles (RAW) ; des moyens (520) de réception d'un ordre d'émission provenant de la station (P) ; des deuxièmes moyens d'émission (530) desdites informations utiles (RAW) selon un deuxième protocole de transport (ALF), ledit deuxième protocole de transport (ALF) étant adapté à indiquer l'emplacement desdites données utiles (RAW) dans une mémoire (APP ~MEM2) de la station (P), ledit emplacement étant directement accessible par ladite application informatique. 16. Dispositif d'émission de données selon la revendication 15, caractérisé en ce que, le premier protocole (TCP) permettant de garantir l'arrivée et l'ordre d'arrivée desdites données, les premiers moyens d'émission (510) sont adaptés à envoyer lesdites informations de contrôle (START, EOP, END) selon ledit premier protocole (TCP). 17. Dispositif d'émission de données selon la revendication 15 ou 16, caractérisé en ce que les deuxièmes moyens d'émission (530) sont adaptés à envoyer lesdites informations utiles (RAW) selon un deuxième protocole de transport par paquets (Pi). 18. Dispositif d'émission de données selon la revendication 17, caractérisé en ce que le deuxième protocole de transport est implémenté audessus du protocole UDP/IP. 19. Dispositif d'émission de données selon la revendication 17 ou 18, caractérisé en ce que les deuxièmes moyens d'émission (530) sont adaptés à retransmettre lesdits paquets (Pi). 20. Dispositif de réception de données provenant d'une station (PC), lesdites données comportant des informations utiles (RAW) destinées à être traitées par une application informatique et des informations de contrôle (START, EOP, END) de ladite application informatique, caractérisé en ce qu'il comporte : des premiers moyens de réception (610), selon un premier protocole de transport (TCP), d'un en-tête (H) comportant une information (RAW~SIZE) représentative de la taille desdites informations utiles (RAW) ; des moyens (620) de réservation, en fonction de ladite taille (RAW~SIZE), d'un espace mémoire (MEM2) directement accessible par ladite application ; des moyens (630) d'envoi d'un ordre d'émission desdites informations utiles (RAW) à destination de ladite station (PC) ; des deuxièmes moyens de réception (640) desdites informations utiles (RAW) selon un deuxième protocole de transport (ALF), ledit deuxième protocole de transport (ALF) étant adapté à indiquer l'emplacement desdites informations utiles dans ledit espace mémoire (MEM2) ; et des moyens (650) de mémorisation desdites informations utiles (RAW) dans ledit espace mémoire (MEM2). 21. Dispositif de réception de données selon la revendication 20, caractérisé en ce que les deuxièmes moyens de réception (640) sont adaptés à recevoir lesdites informations utiles selon un deuxième protocole de transport par paquets (Pi). 22. Dispositif de réception de données selon la revendication 21, caractérisé en ce que le deuxième protocole de transport est implémenté audessus du protocole UDP/IP. 23. Dispositif de réception de données selon la revendication 21 ou 22, caractérisé en ce que les deuxièmes moyens de réception (640) sont adaptés à demander la retransmission desdits paquets (Pi). 24. Dispositif de réception de données selon la revendication 23, dans lequel la première et la deuxième stations sont reliées par un réseau Ethernet, caractérisé en ce que le deuxième protocole de transport (ALF) est implémenté directement au-dessus du protocole Ethernet. 25. Dispositif de réception de données selon l'une quelconque des revendications 20 à 24, caractérisé en ce que le premier protocole (TCP) permettant de garantir l'arrivée et l'ordre d'arrivée desdites données, - lesdits premiers moyens de réception (610) sont adaptés à recevoir lesdites informations de contrôle (START, EOP, END) selon ledit premier protocole de transport (TCP) ; et en ce qu'il comporte en outre des moyens (650) de filtrage adaptés à aiguiller lesdites informations de contrôle (START, EOP, END) vers une mémoire (MBUF2) accessible par ledit premier protocole de transport (TCP) et lesdites informations utiles (RAW) vers ledit espace mémoire (MEM2). 26. Dispositif de réception de données selon la revendication 25, caractérisé en ce que lesdits moyens (650) de filtrage sont adaptés à vérifier la validité desdites données. 27. Système informatique caractérisé en ce qu'il comporte des moyens adaptés à mettre en oeuvre un procédé d'émission de données selon l'une quelconque des revendications 1 à 5. 28. Système informatique caractérisé en ce qu'il comporte des moyens adaptés à mettre en oeuvre un procédé de réception de données selon l'une quelconque des revendications 6 à 14. 29. Système informatique caractérisé en ce qu'il comporte un dispositif d'émission de données selon l'une quelconque des revendications 15 à 19. 30. Système informatique caractérisé en ce qu'il comporte un dispositif de réception de données selon l'une quelconque des revendications 20 à 26. 31. Photocopieur numérique caractérisé en ce qu'il comporte un dispositif de réception de données selon l'une quelconque des revendications 20 à 26. 32. Support d'informations lisible par un système informatique, éventuellement totalement ou partiellement amovible, notamment CD-ROM ou support magnétique, tel un disque dur ou une disquette, ou support transmissible, tel un signal électrique ou optique, caractérisé en ce qu'il comporte des instructions d'un programme d'ordinateur permettant la mise en oeuvre d'un procédé d'émission de données selon l'une quelconque des revendications 1 à 5, lorsque ce programme est chargé et exécuté par un système informatique. 33. Support d'informations lisible par un système informatique, éventuellement totalement ou partiellement amovible, notamment CD-ROM ou support magnétique, tel un disque dur ou une disquette, ou support transmissible, tel un signal électrique ou optique, caractérisé en ce qu'il comporte des instructions d'un programme d'ordinateur permettant la mise en oeuvre d'un procédé de réception de données selon l'une quelconque des revendications 6 à 14, lorsque ce programme est chargé et exécuté par un système informatique. 34. Programme d'ordinateur stocké sur un support d'informations, ledit programme comportant des instructions permettant la mise en oeuvre d'un procédé d'émission de données selon l'une quelconque des revendications 1 à 5, lorsque ce programme est chargé et exécuté par un système informatique. 35. Programme d'ordinateur stocké sur un support d'informations, ledit programme comportant des instructions permettant la mise en oeuvre d'un procédé de réception de données selon l'une quelconque des revendications 6 à 14, lorsque ce programme est chargé et exécuté par un système informatique.