Brevet FR2844124A1 — publié le 20040305

La présente invention concerne de façon générale une carte d'interface de réseau, et plus particulièrement une carte d'interface de réseau destinée à réduire le nombre d'interruptions générées dans un réseau Ethernet, et un procédé de génération d'interruptions. Pour améliorer les performances d'un contrôleur utilisé dans un réseau Ethernet gigabit, qui est jusqu'à 10 fois plus rapide qu'un réseau Ethernet 100 Mbit/s général, il est nécessaire d'optimiser la transmission d'interrup10 tions, qui exigent un temps de traitement considérable dans la transmission de données. En réduisant le nombre d'interruptions lorsque des données sont traitées, il est possible de réduire le nombre d'informations de servitude à traiter. Les performances du contrôleur peuvent ainsi être 15 améliorées. Une carte d'interface de réseau (ou NIC pour "Network Interface Card") est installée dans un ordinateur personnel d'un utilisateur pour établir une connexion d'interface avec un réseau local (ou LAN pour "Local Area 20 Network") Ethernet. La NIC a un contrôleur et un émetteurrécepteur qui permettent à l'utilisateur d'utiliser le réseau local Ethernet. C'est le contrôleur qui a une influence sur les performances de la NIC. Le contrôleur comprend une unité d'interface de bus pour assurer 25 l'interface avec l'ordinateur personnel, une unité d'accès direct en mémoire (ou DMA pour "Direct Memory Access") pour écrire ou lire dans une mémoire, et un coeur de commande d'accès au support pour traiter un protocole du réseau Ethernet. La figure 1 montre le fonctionnement d'un 30 contrôleur d'une carte d'interface de réseau (NIC). En se référant à la figure 1, on note qu'une carte d'interface de réseau (NIC) 100 comprend un contrôleur 110 et un émetteur-récepteur 120. Le contrôleur 110 comprend une unité d'interface de bus 111, une unité d'accès direct 35 en mémoire (DMA) 113 et un coeur de commande d'accès au support (MAC pour "Media Access Control") 115. On décrira ci-après en référence à la figure 1 l'émission-réception de données de la NIC 100. Une trame de données DF (Data Frame) à émettre est envoyée vers un pilote de dispositif 150 par 5 l'intermédiaire d'un protocole de couche supérieure (ULP pour "Upper Layer Protocol") d'un système d'exploitation (OS), par exemple un protocole TCP/IP (Transmission Control Protocol / Internet Protocol), ou un protocole de datagramme d'utilisateur (UDP pour "User Datagram 10 Protocol"). Ici, le pilote de dispositif 150 est un logiciel qui pilote la NIC 100 (étape (1)). Le pilote de dispositif 150 envoie la trame de données DF vers une région de mémoire à laquelle l'unité de DMA 113 du contrôleur 110 accède, par exemple une première 15 mémoire ou File d'Attente d'Emission 130 (étape (2)). Ensuite, le pilote de dispositif 150 envoie un ordre d'émission vers le contrôleur 110 (étape (3)). Le contrôleur 110, qui reçoit l'ordre d'émission, teste la première mémoire, File d'Attente d'Emission, 130, 20 en utilisant l'unité de DMA 113 et transfère la trame de données DF vers lui-même (étape (4)), et émet la trame de données DF, qui est traitée dans le contrôleur 110, vers un réseau externe (non représenté) (étape (5)). Pour émettre les données vers le réseau externe, le 25 coeur de MAC 115 dans le contrôleur 110 forme des trames Ethernet en utilisant les données. Lorsque la trame de données DF est reçue, la trame de données DF est traitée de façon inverse du processus d'émission. Pour recevoir la trame de données DF, le pilote 30 de dispositif 150 alloue une seconde mémoire, ou File d'Attente de Réception, 140, dans laquelle une trame de données DF reçue sera stockée, et informe le contrôleur 110 lorsque la trame de données DF est stockée dans la seconde mémoire, File d'Attente de Réception, 140. Lorsque la trame de données DF est reçue par l'émetteur-récepteur 120 de la NIC 100, le coeur de MAC 115 effectue un contrôle pour déterminer si la trame de données DF est effective (étape (a)). Après que le coeur de MAC 115 a déterminé si la trame de données DF est reçue, la trame de données DF est 5 envoyée à l'unité de DMA 113. L'unité de DMA 113 transmet une trame de données DF reçue à la seconde mémoire, File d'Attente de Réception, 140 (étape (b)). Après l'achèvement de la transmission de la trame de données DF, l'unité de DMA 113 informe le pilote de dispositif 150 qu'elle est 10 prête à transmettre la trame de données DF reçue, en générant une interruption (INTS) (étape (c)). L'interruption INTS générée dans la NIC 100 est traitée par l'OS et envoyée au pilote de dispositif 150 (étape (d)). Après que le pilote de dispositif 150 a reçu 15 l'interruption INTS, il teste la seconde mémoire, File d'Attente de Réception, 140, recherche la trame de données DF reçue (étape (e)), et transmet au protocole de couche supérieure la trame de données DF reçue (étape (f)). Dans ces étapes, du fait que le coeur de MAC 115 ou 20 l'émetteurrécepteur 120 ne stocke pas la trame de données DF à émettre/recevoir, les performances d'émission/réception dépendent du fonctionnement de l'unité de DMA 113 ou du pilote de dispositif 150. Ainsi, si des retards se produisent lorsque l'unité 25 de DMA 113 écrit ou lit dans la première mémoire, File d'Attente d'Emission, 130, ou dans la seconde mémoire, File d'Attente de Réception, 140, le temps pris pour la transmission d'une trame de données DF est allongé, ce qui fait que les performances de la NIC 100 sont dégradées. Cependant, le facteur le plus important pour les performances d'émission/réception de la trame de données DF est un temps de fonctionnement du pilote de dispositif 150. L'opération de l'unité de DMA 113 est réalisée par matériel, et par conséquent des temps-systèmes qui 35 apparaissent à l'intérieur ont peu d'influence sur les performances de la NIC 100, en comparaison avec le pilote de dispositif 150 qui fonctionne par logiciel. Par conséquent, il est nécessaire d'optimiser le fonctionnement de l'unité de DMA 113 pour traiter la trame de données DF avec un minimum d'opérations du pilote de dispositif 150, 5 de façon à pouvoir améliorer les performances du contrôleur 110 de la NIC 100. La transmission de l'interruption INTS occupe la majeure partie du temps nécessaire pour la transmission de la trame de données DF. Après l'achèvement de l'opération 10 de l'unité de DMA 113, l'interruption INTS est générée et est tout d'abord traitée par l'OS. Après que l'OS a détecté l'interruption INTS générée, l'OS arrête son fonctionnement et commence à exécuter une procédure de traitement de l'interruption INTS. La procédure de traitement de 15 l'interruption INTS recherche un programme qui traitera l'interruption INTS générée, et elle est accomplie par le pilote de dispositif 150. Ainsi, la procédure de traitement de l'interruption INTS comprend des étapes compliquées, et les étapes sont traitées par du logiciel incluant l'OS. Par 20 conséquent, la procédure de traitement de l'interruption INTS nécessite un temps considérable. Si le nombre d'interruptions INTS augmente, une unité centrale de traitement (UC) doit traiter une tâche d'utilisateur en une courte durée, et par conséquent les performances du système 25 entier sont dégradées de façon correspondante. De ce fait, on peut améliorer les performances du système entier en traitant la plus grande quantité de données possible par une seule génération d'une interruption INTS. La figure 2 est une représentation de principe d'un 30 procédé classique de génération d'interruptions ayant des retards. Dans le procédé classique de génération d'interruptions ayant des retards, si des interruptions doivent être générées après qu'une première trame de 35 données DF1 a été reçue, les interruptions sont générées après un temps de retard TD. Premièrement, comme représenté dans la séquence (i), des trames de données DF1 à DF3 sont reçues. Le temps de retard TD est estimé en réponse à la première trame de données DFt. Le temps de retard TD est stocké dans un 5 registre de commande et d'état (CSR pour "Control and Status Register") dans la NIC 100 (non représentée), de façon que le pilote de dispositif 150 puisse commander le temps de retard TD. Le temps de retard TD est plus long que le temps nécessaire pour recevoir une trame de données DF. 10 Bien que la première trame de données DF1 soit reçue, l'interruption INTS est générée après le temps de retard TD. Du fait que les trames de données reçues DF1 et DF2 sont envoyées au système par l'unité de DMA 113 pendant le temps de retard TD, un plus grand nombre de trames DF 15 peuvent être transmises par une seule génération de l'interruption. De plus, comme représenté dans la séquence (ii) de la figure 2, les première et seconde trames de données DF1 et DF2 peuvent être traitées en générant une interruption 20 une seule fois, et par conséquent il n'est pas nécessaire de générer une interruption INTS pour la seconde trame de données DF2. Ici, "TP" désigne un temps de retard TD depuis la génération de l'interruption INTS jusqu'à l'appel de la procédure de traitement de l'interruption INTS à partir du 25 pilote de dispositif 115. La figure 3 est une représentation de principe d'un autre procédé classique de génération d'interruptions ayant un temps de retard TD. Dans ce procédé, lorsque le nombre prédéterminé de 30 trames de données DF est reçu, les interruptions sont générées avant que le temps de retard TD se soit écoulé. Ici, le nombre maximal de trames de données DF à recevoir, par exemple N, est stocké dans le CSR et est commandé. Le pilote de dispositif 150 détermine si le nombre 35 de trames de données DF est égal à N, si le temps de retard TD ne s'est pas écoulé. Ici, N est inférieur au nombre de trames de données DF qui peuvent remplir la seconde mémoire, File d'Attente de Réception, 140, avant que le temps de retard TD se soit écoulé. Si le nombre de trames de données DF est égal à N 5 avant que le temps de retard TD se soit écoulé, l'interruption INTS est générée. Si le temps de retard TD s'est écoulé avant que le nombre de trames de données DF soit égal à N, l'interruption INTS est également générée. Comme représenté sur la figure 3, si la trame de 10 données DF, par exemple les trames de données DF1-DF4, du nombre prédéterminé (ici, 4) sont reçues avant que le temps de retard TD soit écoulé, l'interruption INTS est générée, de façon qu'il soit possible d'empêcher que la trame de données DF soit retenue sans être traitée. Cependant, si un intervalle de temps entre les trames de données est long, le temps nécessaire pour traiter la première trame de données est allongé. Selon un aspect de la présente invention, il est proposé un procédé de génération d'une interruption qui 20 minimise le nombre d'interruptions se produisant pendant la réception de trames de données dans une carte d'interface de réseau, et traite de nombreuses trames de données par une seule génération d'interruption. Selon un autre aspect de la présente invention, il 25 est proposé une carte d'interface de réseau qui minimise le nombre d'interruptions se produisant pendant la réception de trames de données et traite de nombreuses trames de données par une seule génération d'interruption. Un premier mode de réalisation de la présente 30 invention procure un procédé de génération d'interruptions d'une carte d'interface de réseau qui émet/reçoit des données, le procédé comprenant les étapes suivantes: (a) on reçoit des trames de données; (b) on estime un premier temps de retard et un second temps de retard en réponse à 35 une trame de données reçue et on compte un nombre de trames de données reçues; (c) on détermine si le premier temps de retard s'est écoulé et on génère une première interruption si le premier temps de retard s'est écoulé; (d) on compte le nombre de trames de données si le premier temps de retard ne s'Test pas écoulé et on génère l'interruption si 5 le nombre de trames de données est égal à N; (e) on détermine si le second temps de retard s'est écoulé si le nombre de trames de données n'est pas égal à N, et on génère l'interruption si le second temps de retard s'est écoulé, ou on retourne à l'étape (b) si le second temps de 10 retard ne s'est pas écoulé; (f) on arrête les opérations d'estimation des premier et second temps de retards et de comptage du nombre de trames de données en réponse aux interruptions générées, et on transmet les trames de données reçues; et (g) on reçoit une nouvelle trame de 15 données et on retourne à l'étape (b). Le premier temps de retard commence au moment auquel une première trame de données est reçue. Le second temps de retard est un intervalle de temps entre des trames de données reçues et il est plus court que le premier temps de retard. Un second mode de réalisation de la présente invention procure un procédé de génération d'interruptions d'un carte d'interface de réseau qui émet/reçoit des données, le procédé comprenant les étapes suivantes (a) on reçoit des trames de données; (b) on estime un temps de 25 retard de paquet en réponse aux trames de données reçues; (c) on détermine si le temps de retard de paquet s'est écoulé et on génère une interruption si le temps de retard de paquet s'est écoulé, ou on retourne à l'étape (b) si le temps de retard de paquet ne s'est pas écoulé; (d) on 30 arrête une opération d'estimation du temps de retard de paquet et on transmet les trames de données reçues; et (e) on reçoit une nouvelle trame de données et on retourne à l'étape (b). Le temps de retard de paquet est un intervalle de temps entre des trames de données reçues. Un troisième mode de réalisation de la présente invention procure un procédé de génération d'interruptions d'une carte d'interface de réseau qui émet/reçoit des données, le procédé comprenant les étapes suivantes: (a) on reçoit des trames de données; (b) on estime un premier temps de retard en réponse aux trames de données reçues, on 5 compte un nombre de trames de données reçues, et on reconnaît un champ de type des trames de données reçues; c) on détermine si le premier temps de retard s'est écoulé et on génère une interruption si le premier temps de retard s'est écoulé; (d) on compte le nombre de trames de données 10 reçues et on génère l'interruption si le nombre de trames de données reçues est N; (e) on détermine si un champ de type est identique à un champ de type prédéterminé, si le nombre de trames de données n'est pas égal à N, on génère l'interruption si le champ de type est identique au champ 15 de type prédéterminé, ou on retourne à l'étape (b) si le champ de type n'est pas identique au champ de type prédéterminé; (f) on arrête les opérations d'estimation du premier temps de retard, de comptage du nombre de trames de données reçues et de reconnaissance du champ de type de la 20 trame de données en réponse aux interruptions générées, et on transmet les trames de données reçues; et (g) on reçoit une nouvelle trame de données et on retourne à l'étape (b). Le premier temps de retard commence au moment auquel la première trame de données est reçue. Un quatrième mode de réalisation de la présente invention procure un procédé de génération d'interruptions d'une carte d'interface de réseau qui émet/reçoit des données, le procédé comprenant les étapes suivantes: (a) on reçoit des trames de données; (b) on reconnaît un champ 30 de type des trames de données reçues; (c) on détermine si le champ de type des trames de données reçues est identique à un champ de type prédéterminé et on génère une interruption si le champ de type est identique au champ de type prédéterminé, ou on retourne à l'étape (b) si le champ 35 de type n'est pas identique au champ de type prédéterminé; (d) on arrête une opération de reconnaissance du champ de type des trames de données reçues en réponse à l'interruption générée, et on transmet les trames de données reçues; et (e) on reçoit une nouvelle trame de données et on retourne à l'étape (b). Un cinquième mode de réalisation de la présente invention procure un procédé de génération d'interruptions d'une carte d'interface de réseau qui émet/reçoit des données, le procédé comprenant les étapes suivantes: (a) on reçoit des trames de données; (b) on estime un premier 10 temps de retard en réponse aux trames de données reçues, on compte un nombre de trames de données reçues, et on reconnaît un champ de protocole d'un entête de paquet dans un champ de données des trames de données reçues; (c) on détermine si le premier temps de retard s'est écoulé et on 15 génère une interruption si le premier temps de retard s'est écoulé; (d) on détermine si le nombre de trames de données reçues est égal à N si le premier temps de retard ne n'est pas écoulé, et on génère l'interruption si le nombre de trames de données est égal à N; (e) on détermine si le 20 champ de protocole est identique à un champ de protocole prédéterminé si le nombre de trames de données reçues n'est pas égal à N, on génère l'interruption si le champ de protocole est identique au champ de protocole prédéterminé, ou on retourne à l'étape (b) si le champ de protocole n'est 25 pas identique au champ de protocole prédéterminé; (f) on arrête les opérations d'estimation du premier temps de retard, de comptage du nombre de trames de données reçues et de reconnaissance du champ de protocole en réponse aux interruptions générées, et on transmet les trames de 30 données reçues; et (g) on reçoit une nouvelle trame de données et on retourne à l'étape (b). Le premier temps de retard commence au moment auquel une première trame de données est reçue. Un sixième mode de réalisation de la présente 35 invention procure un procédé de génération d'interruptions d'une carte d'interface de réseau qui émet/reçoit des données, le procédé comprenant les étapes suivantes: (a) on reçoit des trames de données; (b) on reconnaît un champ de protocole d'un en-tête de paquet dans un champ de données des trames de données reçues; (c) on détermine si 5 le champ de protocole est identique à un champ de protocole prédéterminé et on génère une interruption si le champ de protocole est identique au champ de protocole prédéterminé, ou on retourne à l'étape (b) si le champ de protocole n'est pas identique au champ de protocole prédéterminé; (d) on 10 arrête une opération de reconnaissance du champ de protocole et on transmet les trames de données reçues; et (e) on reçoit une nouvelle trame de données et on retourne à l'étape (b). Un septième mode de réalisation de la présente 15 invention procure un procédé de génération d'interruptions d'une carte d'interface de réseau qui émet/reçoit des données, le procédé comprenant les étapes suivantes: (a) on reçoit des trames de données; (b) on estime un premier temps de retard et un second temps de retard en réponse aux 20 trames de données reçues, on compte un nombre de trames de données reçues, on reconnaît un champ de type des trames de données reçues, et on reconnaît un champ de protocole d'un en-tête de paquet dans un champ de données des trames de données reçues; (c) on détermine si le premier temps de 25 retard s'est écoulé et on génère une interruption si le premier temps de retard s'est écoulé; (d) on compte le nombre de trames de données reçues si le premier temps de retard ne s'est pas écoulé et on génère l'interruption si le nombre de trames de données reçues est égal à N; (e) on 30 détermine si le second temps de retard s'est écoulé si le nombre de trames de données reçues n'est pas égal à N, et on génère l'interruption si le second temps de retard s'est écoulé; (f) on détermine si un champ de type est identique à un champ de type prédéterminé si le second temps de 35 retard ne s'est pas écoulé, et on génère l'interruption si le champ de type est égal au champ de type prédéterminé; (g) on détermine si le champ de protocole des trames de données reçues est identique à un champ de protocole prédéterminé, si le champ de type n'est pas identique au champ de type prédéterminé, et on génère l'interruption si 5 le champ de protocole est identique au champ de protocole prédéterminé, ou on retourne à l'étape (b) si le champ de protocole n'est pas identique au champ de protocole prédéterminé; (h) on arrête les opérations d'estimation du premier temps de retard et du second temps de retard, de 10 comptage du nombre de trames de données reçues et de reconnaissance du champ de type et du champ de protocole des trames de données, en réponse à l'interruption générée, et on transmet les trames de données reçues; et (i) on reçoit une nouvelle trame de données et on retourne à 15 l'étape (b). Le premier temps de retard commence au moment auquel une première trame de données est reçue. Le second temps de retard est un intervalle de temps entre les trames de données reçues et est plus court que le premier temps de retard. Un huitième mode de réalisation de la présente invention procure une carte d'interface de réseau qui minimise le nombre de fois que des interruptions sont générées, la carte d'interface de réseau comprenant: un premier circuit d'estimation de temps de retard qui estime 25 un premier temps de retard en réponse à des trames de données reçues, et arrête l'estimation du premier temps de retard en réponse à une interruption; un second circuit d'estimation de temps de retard qui estime un second temps de retard en réponse aux trames de données reçues et arrête 30 l'estimation du second temps de retard en réponse à l'interruption; un circuit de comptage de trames de données qui compte un nombre de trames de données reçues en réponse aux trames de données reçues et arrête le comptage des trames de données en réponse à l'interruption; un circuit 35 de détermination qui détermine si le temps atteint le premier temps de retard en réponse à un signal de sortie du premier circuit d'estimation de temps de retard, détermine si le temps atteint le second temps de retard en réponse à un signal de sortie du second circuit d'estimation de temps de retard, détermine si le nombre de trames de données 5 reçues est égal à N en réponse à un signal de sortie du circuit de comptage de trames de données, et génère un signal de commande d'interruption pour commander la génération de l'interruption; et un circuit de génération d'interruptions qui génère l'interruption en réponse au 10 signal de commande d'interruption. Le premier temps de retard est estimé à partir du moment auquel une première trame de données est reçue. Le second temps de retard est un intervalle de temps entre les trames de données reçues et est plus court que le premier temps de retard. La carte d'interface de réseau comprend en outre un circuit de réception, qui reçoit des trames de données et transmet les trames de données reçues au premier circuit d'estimation de retard, au second circuit d'estimation de retard et au circuit de comptage de trame de données; et un 20 circuit de transmission, qui reçoit et transmet l'interruption. Un neuvième mode de réalisation de la présente invention procure une carte d'interface de réseau qui minimise le nombre de fois que des interruptions sont 25 générées, la carte d'interface de réseau comprenant un premier circuit d'estimation de temps de retard qui estime un premier temps de retard en réponse à des trames de données reçues et arrête l'estimation du premier temps de retard en réponse à une interruption; un circuit de 30 reconnaissance de type qui reconnaît un champ de type de trames de données en réponse aux trames de données reçues et arrête la reconnaissance du champ de type en réponse à l'interruption; un circuit de comptage de trames de données qui compte un nombre de trames de données reçues en 35 réponse aux trames de données reçues et arrête le comptage du nombre de trames de données reçues en réponse aux interruptions; un circuit de détermination qui détermine si le premier circuit d'estimation de temps de retard atteint un temps de retard en réponse au signal de sortie du premier circuit d'estimation de temps de retard, détermine 5 si le nombre de trames de données reçues est égal à N en réponse à un signal de sortie du circuit de comptage de trames de données, détermine si le champ de type reconnu en réponse à un signal de sortie du circuit de reconnaissance de type est identique à un champ de type prédéterminé, et 10 génère un signal de commande d'interruption pour commander la génération de l'interruption; et un circuit de génération d'interruptions qui génère l'interruption en réponse au signal de commande d'interruption. Le premier temps de retard commence au moment auquel une première 15 trame de données est reçue. Un dixième mode de réalisation de la présente invention procure une carte d'interface de réseau qui minimise le nombre de fois que des interruptions sont générées, la carte d'interface de réseau comprenant un 20 premier circuit d'estimation de temps de retard qui estime un premier temps de retard en réponse à des trames de données reçues et arrête l'estimation du premier temps de retard en réponse à une interruption; un circuit de reconnaissance de protocole qui reconnaît un champ de 25 protocole d'un en-tête de paquet dans un champ de données des trames de données reçues, en réponse aux trames de données reçues, et arrête la reconnaissance du champ de protocole en réponse à l'interruption; un circuit de comptage de trames de données qui compte un nombre de 30 trames de données reçues en réponse aux trames de données reçues et arrête le comptage du nombre de trames de données reçues en réponse à l'interruption; un circuit de détermination qui détermine si le premier circuit d'estimation de temps de retard atteint un temps de retard, 35 en réponse au signal de sortie du premier circuit d'estimation de temps de retard, détermine si le nombre de trames de données reçues est égal à N, en réponse à un signal de sortie du circuit de comptage de trames de données, détermine si le champ de protocole reconnu en réponse à un signal de sortie du circuit de reconnaissance 5 de protocole est identique à un champ de protocole prédéterminé, et génère un signal de commande d'interruption pour commander la génération de l'interruption; et un circuit de génération d'interruptions qui génère l'interruption en réponse au signal de commande 10 d'interruption. Le premier temps de retard est estimé à partir du moment auquel une première trame de données est reçue. Un onzième mode de réalisation de la présente invention procure une carte d'interface de réseau qui 15 minimise le nombre de fois que des interruptions sont générées, la carte d'interface de réseau comprenant un premier circuit d'estimation de temps de retard qui estime un premier temps de retard en réponse aux trames de données reçues et arrête l'estimation du premier temps de retard en 20 réponse à une interruption; un second circuit d'estimation de temps de retard qui estime un second temps de retard en réponse à des trames de données reçues et à l'interruption; un circuit dereconnaissance de type qui reconnaît un champ de type de trames de données en réponse aux trames de 25 données reçues et arrête la reconnaissance du champ de type en réponse à l'interruption; un circuit de comptage de trames de données qui compte un nombre de trames de données reçues, en réponse aux trames de données reçues, et arrête le comptage du nombre de trames de données reçues en 30 réponse à l'interruption; un circuit de reconnaissance de protocole qui reconnait un champ de protocole d'un en-tête de paquet dans un champ de données des trames de données reçues, en réponse aux trames de données reçues, et arrête la reconnaissance du champ de protocole en réponse à 35 l'interruption; un circuit de détermination qui détermine si le premier temps de retard s'est écoulé, en réponse au signal de sortie du premier circuit d'estimation de temps de retard, détermine si le second temps de retard s'est écoulé, en réponse à un signal de sortie du second circuit d'estimation de temps de retard, détermine si le champ de 5 type reconnu en réponse à un signal de sortie du circuit de reconnaissance de type est identique à un champ de type prédéterminé, détermine si le nombre de trames de données reçues est égal à N, en réponse à un signal de sortie du circuit de comptage de trames de données, détermine si le 10 champ de protocole reconnu par le circuit de reconnaissance de protocole, en réponse à un signal de sortie du circuit de reconnaissance de protocole, est identique à un champ de protocole prédéterminé, et génère un signal de commande d'interruption pour commander la génération de l'interruption; et un circuit de génération d'interruptions qui génère l'interruption en réponse au signal de commande d'interruption. Le premier temps de retard commence au moment auquel une première trame de données est reçue. Le second temps de retard est un intervalle de temps entre les 20 trames de données reçues et est plus court que le premier temps de retard. La carte d'interface de réseau comprend en outre un circuit de réception, qui reçoit des trames de données et transmet les trames de données reçues au premier circuit 25 d'estimation de temps de retard, au second circuit d'estimation de temps de retard, au circuit de comptage de trames de données, au circuit de reconnaissance de type et au circuit de reconnaissance de protocole; et un circuit de transmission, qui reçoit et transmet l'interruption. Les caractéristiques et avantages de la présente invention indiqués ci-dessus, ainsi que d'autres, ressortiront davantage de la description détaillée d'exemples de modes de réalisation, en référence aux dessins annexés, dans lesquels: la figure 1 montre le fonctionnement d'un contrôleur d'une carte d'interface de réseau; la figure 2 est une représentation de principe d'un procédé classique de génération d'interruptions ayant des retards; la figure 3 est une représentation de principe d'un 5 autre procédé classique de génération d'interruptions ayant des retards; la figure 4 est un organigramme illustrant un procédé de génération d'interruptions conforme à un premier mode de réalisation de la présente invention; la figure 5 est une représentation de principe du procédé de génération d'interruptions de la figure 4; la figure 6 est un organigramme illustrant un procédé de génération d'interruptions conforme à un second mode de réalisation de la présente invention; la figure 7 est un organigramme illustrant un procédé de génération d'interruptions conforme à un troisième mode de réalisation de la présente invention; la figure 8 est un organigramme illustrant un procédé de génération d'interruptions conforme à un 20 quatrième mode de réalisation de la présente invention; la figure 9 est un organigramme illustrant un procédé de génération d'interruptions conforme à un cinquième mode de réalisation de la présente invention; la figure 10 est un organigramme illustrant un 25 procédé de génération d'interruptions conforme à un sixième mode de réalisation de la présente invention; la figure 11 est un organigramme illustrant un procédé de génération d'interruptions conforme à un septième mode de réalisation de la présente invention; la figure 12 est un schéma synoptique illustrant une carte d'interface de réseau conforme à un huitième mode de réalisation de la présente invention; la figure 13 est un schéma synoptique illustrant une carte d'interface de réseau conforme à un neuvième mode 35 de réalisation de la présente invention; la figure 14 est un schéma synoptique illustrant une carte d'interface de réseau conforme à un dixième mode de réalisation de la présente invention; et la figure 15 est un schéma synoptique illustrant 5 une carte d'interface de réseau conforme à un onzième mode de réalisation de la présente invention. On va maintenant décrire la présente invention de façon plus complète en référence aux dessins annexés, qui montrent des modes de réalisation préférés de l'invention. 10 Des numéros de référence semblables sont utilisés pour désigner des éléments semblables dans toutes les figures. La figure 4 est un organigramme illustrant un procédé de génération d'interruptions conforme à un premier mode de réalisation de la présente invention. La figure 5 est une représentation de principe du procédé de génération d'interruptions de la figure 4. En se référant aux figures 4 et 5, on note que dans un procédé de génération d'interruptions d'une carte d'interface de réseau (NIC) qui émet/reçoit des données, le 20 procédé 400 comprend la réception de trames de données (étape 410), l'estimation d'un premier temps de retard TD1 et d'un second temps de retard TD2 en réponse à une trame de données reçue et le comptage du nombre de trames de données reçues (étape 420), la détermination du fait que le 25 premier temps de retard TD1 s'est écoulé ou non (étape 430), la génération d'une interruption si le temps atteint le premier temps de retard TD1 (étape 460), le comptage du nombre de trames de données si le premier temps de retard TD1 ne s'est pas écoulé (étape 440), la génération d'une 30 interruption si le nombre de trames de données est N (étape 460), la détermination du fait que le temps atteint ou non le second temps de retard TD2 si le nombre de trames de données n'est pas N, la génération d'une interruption si le second temps de retard TD2 s'est écoulé, ou le retour à l'étape 420 si le second temps de retard TD2 ne s'est pas écoulé (étapes 450 et 460), l'arrêt de l'estimation des premier et second temps de retard TD1 et TD2, l'arrêt du comptage du nombre de trames de données en réponse à l'interruption générée, la transmission de trames de données reçues (étape 470), la réception de nouvelles trames de données et le retour à l'étape 420 (étape 480). Le premier temps de retard TD1 commence au moment auquel une première trame de données est reçue. Le second temps de retard TD2 est un intervalle de temps entre des trames de données reçues et il est plus court que le 10 premier temps de retard TD1. En se référant aux figures 4 et 5, on va décrire en détail le procédé de génération d'interruptions conforme au premier mode de réalisation de la présente invention. Si l'intervalle de temps entre les trames de 15 données reçues DF1 et DF2 est long et le premier temps de retard TD1 est fixé de façon à être long, le temps nécessaire pour traiter la première trame de données DF1 est allongé. Pour raccourcir le temps nécessaire pour traiter la première trame de données DF1, si l'intervalle 20 de temps entre les trames de données DF1 et DF2 est plus long qu'une certaine durée, des interruptions sont générées de façon que la première trame de données DF1 soit traitée conformément au procédé de la figure 4. Aux étapes 410 à 430, la première trame de données 25 DF1 est reçue et le premier temps de retard TD1 est estimé. Le premier temps de retard TD1 commence au moment auquel la première trame de données DF1 est reçue. Si le premier temps de retard TD1 s'est écoulé, une interruption est générée. Si le premier temps de retard TD1 ne s'est pas 30 écoulé, on détermine si le nombre de trames de données DF est égal à N (étape 440). Si le nombre de trames de données est égal à N, une interruption est générée pour traiter des données, du fait que le nombre de trames de données prédéterminé est accumulé. Si le nombre de trames de 35 données n'est pas égal à N, on détermine si le temps atteint le second temps de retard TD2 (étape 450). Le second temps de retard TD2 est l'intervalle de temps entre des trames de données reçues DF1 et DF2, et il est plus court que le premier temps de retard TD1. Après que la première trame de données DF1 a été 5 reçue, si la seconde trame de données DF2 n'est pas reçue avant la fin du second temps de retard TD2, une interruption est générée à la fin du second temps de retard TD2. Si la seconde trame de données DF2 est reçue avant l'expiration du second temps de retard TD2, après la 10 réception de la première trame de données DF1, l'interruption n'est pas générée, et le second temps de retard TD2 recommence au moment auquel la seconde trame de données DF2 est reçue. Si des trames de données DF sont reçues avant la fin du second temps de retard TD2, c'est-à15 dire si l'intervalle de temps entre les trames de données est plus court que le second temps de retard TD2, l'interruption est générée lorsque le temps atteint la fin du premier temps de retard TD1 ou lorsque le nombre de trames de données reçues est égal à N. Le second temps de retard TD2 peut être estimé par un temporisateur, mais ceci n'est pas limitatif. Si des interruptions sont générées, des opérations d'estimation des premier et second temps de retard TD1 et TD2 et de comptage des trames de données DF sont arrêtées 25 en réponse aux interruptions générées, et la trame de données DF1 reçue est transmise à un protocole de couche supérieure (étape 470). Après que la transmission de la trame de données DF1 reçue est achevée, la seconde trame de données DF2 est reçue pour estimer les premier et second 30 temps de retard TD1 et TD2 et pour commencer l'étape 420 de comptage du nombre de trames de données (étape 480). En se référant à la figure 5, on note que du fait que la seconde trame de données DF2 n'est pas reçue avant la fin du second temps de retard TD, une interruption est 35 générée après la fin du second temps de retard TD2. La figure 6 est un organigramme illustrant un procédé de génération d'interruptions conforme à un second mode de réalisation de la présente invention. En se référant à la figure 6, on note qu'un procédé 5 de génération d'interruptions 600 d'une NIC qui émet/reçoit des données comprend la réception de trames de données (étape 610); l'estimation d'un temps de retard de paquet en réponse aux trames de données reçues (étape 620); la détermination du fait que le temps de retard de paquet 10 s'est écoulé (étape 630); la génération d'interruptions si le temps atteint le temps de retard de paquet, ou le retour à l'étape 620 si le temps n'atteint pas le temps de retard de paquet (étape 640); l'arrêt de l'opération d'estimation du temps de retard de paquet et la transmission des trames 15 de données reçues (étape 650); la réception d'une nouvelle trame de données et le retour à l'étape 620 (étape 660). Le temps de retard de paquet est un intervalle de temps entre des trames de données reçues. Dans ce qui suit, on décrira le procédé de 20 génération d'interruptions conforme au second mode de réalisation, en se référant à la figure 6. Le procédé de génération d'interruptions 600 conforme au second mode de réalisation de la présente invention utilise le second temps de retard TD2 du procédé 25 de génération d'interruptions 400 conforme au premier mode de réalisation de la présente invention. Ainsi, le temps de retard de paquet est pratiquement le même que le second temps de retard TD2 du premier mode de réalisation de la présente invention. Une trame de données est reçue et un temps de retard de paquet est estimé (étapes 610 et 620). On détermine si le temps de retard de paquet s'est écoulé ou a expiré (étape 630). Le temps de retard de paquet est l'intervalle de temps entre les trames de données reçues. Si la seconde trame de données n'est pas reçue pendant le temps de retard de paquet, après la réception de la première trame de données, une interruption est générée à la fin du temps de retard de paquet. Si la seconde trame de données est reçue avant la fin du temps de retard de paquet et après que la première trame de données a été 5 reçue, l'interruption n'est pas générée, et ensuite le temps de retard de paquet recommence à partir du moment auquel la seconde trame de données est reçue. Le temps de retard de paquet peut être estimé par un temporisateur, mais ceci n'est pas limitatif. Si des interruptions sont générées, une opération d'estimation du temps de retard de paquet est arrêtée en réponse à l'interruption générée, et la trame de données reçue est transmise au protocole de couche supérieure (étape 650). Après que la trame de données reçue a été 15 transmise, une nouvelle trame de données est reçue, et l'étape 620 pour l'estimation du temps de retard de paquet est commencée (étape 660). La figure 7 est un organigramme illustrant un procédé de génération d'interruptions conforme au troisième 20 mode de réalisation de la présente invention. En se référant à la figure 7, on note qu'un procédé de génération d'interruptions 700 d'une NIC qui émet/reçoit des données comprend la réception de trames de données (étape 710); l'estimation d'un premier temps de retard en 25 réponse aux trames de données reçues, le comptage du nombre de trames de données reçues, et la reconnaissance d'un champ de type des trames de données reçues (étape 720); la détermination du fait que le premier temps de retard s'est écoulé ou non et la génération d'une interruption si le 30 premier temps de retard s'est écoulé (étapes 730 et 760); le comptage du nombre de trames de données reçues et la génération d'une interruption si le nombre de trames de données reçues est égal à N (étapes 740 et 760); la détermination du fait qu'un champ de type est identique à 35 un champ de type prédéterminé, si le nombre de trames de données n'est pas égal à N, et la génération d'interruptions si le champ de type est égal au champ de type prédéterminé, ou le retour à l'étape 720 si le champ de type n'est pas identique au champ de type prédéterminé (étapes 750 et 760); l'arrêt d'opérations d'estimation du 5 premier temps de retard, de comptage du nombre de trames de données et de reconnaissance du champ de type de la trame de données en réponse à l'interruption générée, et la transmission des trames de données reçues (étape 770); la réception d'une nouvelle trame de données et le retour à 10 l'étape 720 (étape 780). Le premier temps de retard commence au moment auquel la première trame de données est reçue. Dans ce qui suit, on décrira en détail le procédé de génération d'interruptions conforme au troisième mode de 15 réalisation de la présente invention, en se référant à la figure 7. Parmi les trames de données reçues, il y a plusieurs trames de données qui doivent être traitées en un temps prédéterminé. Si de telles trames de données qui sont 20 prédéterminées sont reçues, elles sont reconnues, et des interruptions sont ainsi générées. Il y a plusieurs champs, par exemple un champ d'adresse de destination, un champ d'adresse de source, un champ de type, un champ de données, un champ de contrôle 25 par redondance cyclique (CRC), et autres, dans des trames de données. Dans chaque champ, des adresses de destination, des adresses de source, des types, des données, des contrôles par redondance cyclique (CRC), et autres, sont respectivement stockés. Dans le champ de type, il est 30 stocké une information portant sur le type de données d'une trame de données. Le type de données devant être traitées en un certain temps est prédéterminé, et un champ de type est recherché. Si un champ de type trouvé est identique au 35 champ de type prédéterminé, des interruptions sont générées. Ici, le champ de type prédéterminé peut être stocké dans le registre de commande et d'état (CSR) de la NIC. Des trames de données sont reçues, et un premier temps de retard est estimé (étapes 710 et 720). Le premier 5 temps de retard commence au moment auquel une première trame de données est reçue. Il est déterminé si le temps atteint le premier temps de retard, et une interruption est générée si le temps atteint le premier temps de retard (étapes 730 et 760) . Si le temps n'atteint pas le premier 10 temps de retard, il est déterminé si le nombre de trames de données est égal à N (étape 740). Si le nombre de trames de données est égal à N, l'interruption est générée pour traiter des données, du fait que le nombre prédéterminé de trames de données est accumulé. Si le nombre de trames de 15 données n'est pas égal à N, il est déterminé si le champ de type est identique au champ de type prédéterminé (étape 750). Le champ de type est placé dans une position prédéterminée de la trame de données. En général, le champ d'adresse de destination et le champ d'adresse de source 20 combinés ont une longueur de 12 octets. Le champ de type a une longueur de 2 octets. Par conséquent, les 2 octets, qui suivent 12 octets, de la trame de données reçue sont le champ de type qui est comparé avec le champ de type prédéterminé. Si le champ de type des trames de données reçues est identique au champ de type prédéterminé, des interruptions sont générées. Si le champ de type des trames de données reçues n'est pas identique au champ de type prédéterminé, des interruptions sont générées après 30 l'écoulement du temps correspondant au premier temps de retard, ou au moment auquel le nombre de trames de données accumulées est égal à N. Pour reconnaître le champ de type, un circuit de reconnaissance de type supplémentaire est nécessaire. Le 35 circuit de reconnaissance de type reconnaît une position du champ de type dans les trames de données reçues et détermine si le champ de type dans les trames de données reçues est identique à un champ de type prédéterminé. Si des interruptions sont générées, des opérations d'estimation d'un premier temps de retard, de comptage du 5 nombre de trames de données, et de reconnaissance du champ de type sont arrêtées, et les trames de données reçues sont transmises au protocole de couche supérieure (étape 770). Après l'achèvement de la transmission des trames de données reçues, une nouvelle trame de données est reçue, et le 10 processus retourne à l'étape 720 qui est l'étape d'estimation du premier temps de retard, de comptage du nombre de trames de données et de reconnaissance du champ de type (étape 780). La figure 8 est un organigramme illustrant un 15 procédé de génération d'interruptions conforme à un quatrième mode de réalisation de la présente invention. En se référant à la figure 8, on note qu'un procédé de génération d'interruptions 800 d'une carte d'interface de réseau (NIC) qui émet/reçoit des données comprend la 20 réception de trames de données (étape 810); la reconnaissance d'un champ de type des trames de données reçues (étape 820); la détermination du fait que le champ de type des trames de données reçues est identique ou non à un champ de type prédéterminé (étape 830); la génération 25 d'une interruption si le champ de type est identique au champ de type prédéterminé ou le retour à l'étape 820 si le champ de type n'est pas identique au champ de type prédéterminé (étape 840); l'arrêt de la reconnaissance du champ de type des trames de données reçues en réponse à 30 l'interruption générée et la transmission des trames de données reçues (étape 850); la réception d'une nouvelle trame de données et le retour à l'étape 820 (étape 860). Dans ce qui suit, on décrira en détail le procédé de génération d'interruptions conforme au quatrième mode de 35 réalisation de la présente invention, en se référant à la figure 8. Le procédé de génération d'interruptions 800 conforme au quatrième mode de réalisation de la présente invention concerne la reconnaissance du champ de type des trames de données du procédé de génération d'interruptions 5 700 conforme au troisième mode de réalisation de la présente invention. Parmi les trames de données reçues, il y a plusieurs trames de données qui doivent être traitées en un temps prédéterminé. Si de telles trames prédéterminées sont 10 reçues, elles sont reconnues, et par conséquent des interruptions sont générées. Le type de données devant être traitées en un certain temps est prédéterminé, et un champ de type est recherché. Si un champ de type trouvé est identique au 15 champ de type prédéterminé, des interruptions sont générées. Ici, le champ de type prédéterminé peut être stocké dans le registre de commande et d'état (CSR) de la NIC. Des trames de données sont reçues à l'étape 810. Un 20 champ de type des trames de données reçues est reconnu à l'étape 820. Il est déterminé à l'étape 830 si le champ de type des trames de données reçues est identique à un champ de type prédéterminé. Le champ de type est placé dans une position prédéterminée dans la trame de données. De façon 25 générale, le champ d'adresse de destination et le champ d'adresse de source combinés ont une longueur de 12 octets. Le champ de type a une longueur de 2 octets. Par conséquent, les 2 octets, qui suivent 12 octets, de la trame de données reçues, sont le champ de type qui est 30 comparé au champ de type prédéterminé. Des interruptions sont générées si le champ de type des trames de données reçues est identique au champ de type prédéterminé (étape 840). Pour reconnaître les types de champs, un circuit de 35 reconnaissance de type supplémentaire est nécessaire. Le circuit de reconnaissance de type reconnaît une position du champ de type dans les trames de données reçues et détermine si le champ de type dans les trames de données reçues est identique au champ de type prédéterminé. Si les interruptions sont générées, une opération 5 de reconnaissance du champ de type est arrêtée, et les trames de données reçues sont transmises au protocole de couche supérieure (étape 850). Après l'achèvement de la transmission des trames de données reçues, une nouvelle trame de données est reçue et le processus retourne à 10 l'étape 820 pour reconnaître un champ de type de la nouvelle trame de données (étape 860). La figure 9 est un organigramme illustrant un procédé de génération d'interruptions conforme à un cinquième mode de réalisation de la présente invention. En se référant à la figure 9, on note qu'un procédé de génération d'interruptions 900 d'une carte d'interface de réseau (NIC) qui émet/reçoit des données, comprend la réception de trames de données (étape 910); l'estimation d'un premier temps de retard en réponse aux trames de 20 données reçues, le comptage du nombre de trames de données reçues, et la reconnaissance d'un champ de protocole d'un en-tête de paquet dans un champ de données des trames de données reçues (étape 920); la détermination du fait que le premier temps de retard s'est écoulé ou non, et la 25 génération d'une interruption si le temps atteint le premier temps de retard (étape 930); la détermination du fait que le nombre de trames de données est égal à N ou non, si le premier temps de retard ne s'est pas écoulé, et la génération de l'interruption si le nombre de trames de 30 données est égal à N (étape 940); la détermination du fait que le champ de protocole est identique ou non à un champ de protocole prédéterminé, si le nombre de trames de données n'est pas égal à N, la génération de l'interruption si le champ de protocole est identique au champ de 35 protocole prédéterminé, ou le retour à l'étape 920 si le champ de protocole n'est pas identique au champ de protocole prédéterminé (étapes 950 et 960); l'arrêt des opérations d'estimation du premier temps de retard, de comptage du nombre de trames de données et de reconnaissance du champ de protocole, en réponse aux 5 interruptions générées, et la transmission des trames de données reçues (étape 970); et la réception d'une nouvelle trame de données et le retour à l'étape 920 (étape 980). Le premier temps de retard commence au moment auquel une première trame de données est reçue. Dans ce qui suit, on décrira en détail un procédé de génération d'interruptions 900 conforme au cinquième mode de réalisation de la présente invention, en se référant à la figure 9. Il y a plusieurs champs, par exemple un champ 15 d'adresse de destination, un champ d'adresse de source, un champ de type, un champ de données, un champ de contrôle par redondance cyclique (CRC) et autres, dans chaque trame de données. Dans chaque champ, des adresses de destination, des adresses de source, des types, des données, des 20 contrôles par redondance cyclique (CRC), et autres, sont respectivement stockés comme décrit précédemment. Un paquet, qui est généré dans un protocole d'une couche supérieure d'Ethernet, est placé dans le champ de données. Le protocole de la couche supérieure d'Ethernet 25 comprend un protocole IP (Internet Protocol), un protocole ICMP (Internet Control Message Protocol), et autres. En particulier, IP est très largement utilisé pour la couche supérieure d'Ethernet. Un paquet IP, qui est placé dans le champ de 30 données des trames de données reçues et est généré à partir du protocole IP, comprend deux régions, par exemple un entête de paquet IP et des données de paquet IP. Dans l'entête de paquet IP, il est stocké une information de commande pour transmettre des données de protocole stockées 35 dans le paquet de données IP. Dans les données de paquet IP, il est stocké des données de protocole telles qu'un protocole TCP (Transmission Control Protocol) d'une couche supérieure du protocole IP, ou un protocole UDP (User Datagram Protocol). Une information de commande d'un type de données de 5 protocole stockées dans les données de paquet IP, est stockée dans le champ de protocole. Dans le procédé de génération d'interruptions 900 conforme au cinquième mode de réalisation de la présente invention, des interruptions sont générées si le champ de 10 protocole de l'en-tête de paquet dans le champ de données des trames de données reçues est identique à un champ de protocole prédéterminé. Le champ de protocole prédéterminé peut être fixé par un utilisateur, de façon que des interruptions puissent être générées de façon urgente par 15 l'utilisateur. Ici, le champ de protocole prédéterminé peut être stocké dans le registre CSR de la NIC. Dans le cinquième mode de réalisation, on décrit un cas dans lequel le paquet IP est inclus dans les trames de 20 données. Cependant, le cas n'est pas limité au paquet IPinclus dans les trames de données. Des trames de données sont reçues, et un premier temps de retard est estimé (étapes 910 et 920). Le premier temps de retard commence lorsqu'une première trame de 25 données est reçue. Il est déterminé si le premier temps de retard s'est écoulé, et une interruption est générée si le premier temps de retard s'est écoulé (étapes 930 et 960). Si le premier temps de retard ne s'est pas écoulé, il est déterminé si le nombre de trames de données est égal 30 à N (étape 940). Si le nombre de trames de données est égal à N, l'interruption est générée pour traiter des données, du fait qu'un nombre prédéterminé de trames de données est accumulé. Si le nombre de trames de données n'est pas égal à N, il est déterminé si le champ de protocole est identique 35 au champ de protocole prédéterminé (étape 950). Le champ de protocole est placé dans le champ de données de la trame de données. En général, le champ d'adresse de destination et le champ d'adresse de source combinés ont une longueur de 12 octets. Le champ de type a une longueur de 2 octets. Par conséquent, le champ de données commence au 15ième octet 5 des bits supérieurs des trames de données reçues. Le champ de protocole est placé dans l'en-tête de paquet du champ de données. Il est donc déterminé si le champ de protocole est identique au champ de protocole prédéterminé. Si le champ de protocole des trames de données est 10 identique au champ de protocole prédéterminé, des interruptions sont générées. Si le champ de protocole des trames de données reçues n'est pas identique au champ de protocole prédéterminé, des interruptions sont générées après que le premier temps de retard s'est écoulé, ou au 15 moment auquel le nombre de trames de données est égal à N. Pour reconnaître le champ de protocole, un circuit de reconnaissance de paquet IP supplémentaire et un circuit d'extraction de champ de protocole pour reconnaître le champ de protocole sont nécessaires. Le circuit de 20 reconnaissance de paquet IP détermine si les trames de données reçues contiennent le paquet IP. Le circuit d'extraction de champ de protocole extrait et reconnaît le champ de protocole si les trames de données reçues contiennent le paquet IP. Le circuit de 25 reconnaissance de paquet IP et le circuit d'extraction de champ de protocole peuvent aisément être réalisés par l'homme de l'art. Si des interruptions sont générées, des opérations d'estimation d'un premier temps de retard, de comptage du 30 nombre de trames de données, et de reconnaissance du champ de type sont arrêtées en réponse aux interruptions générées, et les trames de données reçues sont transmises au protocole de couche supérieure (étape 970). Après l'achèvement de la transmission des trames de données 35 reçues, une nouvelle trame de données est reçue, et l'étape 920 pour estimer le premier temps de retard, compter le nombre de trames de données et reconnaître le champ de type, commence (étape 980). La figure 10 est un organigramme illustrant un procédé de génération d'interruptions conforme au sixième mode de réalisation de la présente invention. En se référant à la figure 10, on note qu'un procédé de génération d'interruptions 1000 d'une carte d'interface de réseau (NIC) qui émet/reçoit des données comprend la réception de trames de données (étape 1010); la 10 reconnaissance d'un champ de protocole d'un en-tête de paquet dans un champ de données des trames de données reçues (étape 1020); la détermination du fait que le champ de protocole est identique ou non à un champ de protocole prédéterminé (étape 1030); la génération d'une interruption 15 si le champ de protocole est identique au champ de protocole prédéterminé, ou le retour à l'étape 1020 si le champ de protocole n'est pas identique au champ de protocole prédéterminé (étape 1040); l'arrêt d'une opération de reconnaissance du champ de protocole, et la 20 transmission des trames de données reçues (étape 1050), et la réception d'une nouvelle trame de données et le retour à l'étape 1020 (étape 1060). Dans ce qui suit, on décrira en détail un procédé de génération d'interruptions 1000, conforme à un sixième mode de réalisation de la présente 25 invention, en référence à la figure 10. Le procédé de génération d'interruptions 1000 conforme au sixième mode de réalisation de la présente invention concerne la reconnaissance du champ de protocole des trames de données du procédé de génération 30 d'interruptions 900 conforme au cinquième mode de réalisation de la présente invention. Le champ de protocole est prédéterminé conformément à une demande de l'utilisateur pour générer des interruptions de façon urgente. Si des trames de données 35 qui contiennent le champ de protocole sont reçues, elles sont reconnues, et des interruptions sont ainsi générées. Les trames de données sont revues à l'étape 1010. Le champ de protocole des trames de données est reconnu à l'étape 1020. Le champ de protocole se trouve dans un entête de paquet de la trame de données. Il est déterminé si 5 un champ de protocole des trames de données est identique ou non à un champ de protocole prédéterminé, à l'étape 1030. Des interruptions sont générées si un champ de type des trames de données reçues est identique à un champ de type prédéterminé, à l'étape 1040. Pour reconnaître le champ de protocole, un circuit de reconnaissance de paquet IP supplémentaire et un circuit d'extraction de champ de protocole pour reconnaître le champ de protocole sont nécessaires. Le circuit de reconnaissance de paquet IP détermine si les trames de 15 données reçues contiennent le paquet IP. Le circuit d'extraction de champ de protocole extrait et reconnaît le champ de protocole si les trames de données reçues contiennent le paquet IP. Le circuit de reconnaissance de paquet IP et le circuit d'extraction de champ de protocole 20 peuvent être réalisés aisément par l'homme de l'art. Si des interruptions sont générées, une opération de reconnaissance du champ de protocole est arrêtée en réponse aux interruptions générées, et les trames de données reçues sont transmises au protocole de couche 25 supérieure (étape 1050). Après l'achèvement de la transmission des trames de données reçues, une nouvelle trame de données est reçue, et le processus retourne à l'étape 1020 à laquelle la reconnaissance du champ de protocole commence (étape 1060). La figure 11 est un organigramme illustrant un procédé de génération d'interruptions conforme à un septième mode de réalisation de la présente invention. * En se référant à la figure 11, on note qu'un procédé de génération d'interruptions 1100 d'une carte 35 d'interface de réseau (NIC) qui émet/reçoit des données, comprend la réception de trames de données (étape 1110), l'estimation d'un premier temps de retard et d'un second temps de retard en réponse aux trames de données reçues, le comptage du nombre de trames de données reçues, la reconnaissance d'un champ de type des trames de données 5 reçues, et la reconnaissance d'un champ de protocole d'un en-tête de paquet dans un champ de données des trames de données reçues (étape 1120); la détermination du fait que le premier temps de retard s'est écoulé ou non, et la génération une interruption si le premier temps de retard 10 s'est écoulé (étapes 1130 et 1170); le comptage du nombre de trames de données reçues si le premier temps de retard ne s'est pas écoulé, et la génération de l'interruption si le nombre de trames de données est égal à N (étapes 1140 et 1170); la détermination du fait que le second temps de 15 retard s'est écoulé ou non, si le nombre de trames de données n'est pas égal à N, et la génération d'interruptions si le second temps de retard s'est écoulé (étapes 1150 et 1170); la détermination du fait qu'un champ de type est identique ou non à un champ de type déterminé 20 si le second temps de retard ne s'est pas écoulé, et la génération d'interruptions (étapes 1160 et 1170); la détermination du fait que le champ de protocole des trames de données reçues est identique ou non à un champ de protocole prédéterminé, si le champ de type n'est pas 25 identique au champ de type prédéterminé, la génération d'interruptions si le champ de protocole est identique au champ de protocole prédéterminé, ou le retour à l'étape 1120 si le champ de protocole n'est pas identique au champ de protocole prédéterminé (étapes 1165 et 1170); l'arrêt 30 d'opérations d'estimation du premier temps de retard et du second temps de retard, du comptage du nombre de trames de données et de la reconnaissance du champ de type et du champ de protocole des trames de données, en réponse aux interruptions générées, et l'émission des trames de données 35 reçues (étape 1180); et la réception d'une nouvelle trame de données, et le retour à l'étape 1120 (étape 1190). Le premier temps de retard commence au moment auquel une première trame de données est reçue. Le second temps de retard est un intervalle de temps entre les trames de données reçues et il est plus court que le premier temps de retard. Dans ce qui suit, on décrira en détail un procédé de génération d'interruptions 1100 conforme au septième mode de réalisation de la présente invention, en référence à la figure 11. Le procédé de génération d'interruptions 1100 10 conforme au septième mode de réalisation de la présente invention est obtenu en combinant le procédé de génération d'interruptions 700 conforme au troisième mode de réalisation de la présente invention avec le procédé de génération d'interruptions 900 conforme au cinquième mode 15 de réalisation de la présente invention. Ainsi, le procédé de génération d'interruptions 1100 conforme au septième mode de réalisation de la présente invention comprend un procédé de génération d'interruptions pour empêcher que les trames de données 20 reçues soient accumulées sans être traitées, après que l'intervalle de temps entre les trames de données reçues est devenu plus grand qu'un temps prédéterminé; un procédé de génération d'interruptions en prédéterminant un champ de type de données qui doivent être traitées au cours du temps 25 prédéterminé, et en reconnaissant si les trames de données ayant les données sont reçues; et un procédé de reconnaissance d'un champ de protocole dans le champ de données des trames de données, et de génération d'interruptions si le champ de protocole est identique à un 30 champ de protocole prédéterminé. Les procédés de génération d'interruptions 400, 700 et 900 ont déjà été décrits, et par conséquent on ne décrira pas le procédé de génération d'interruptions 1100. La figure 12 est un schéma synoptique illustrant 35 une carte d'interface de réseau 1200 conforme à un huitième mode de réalisation de la présente invention. En se référant à la figure 12, on note que la carte d'interface de réseau (NIC) 1200 conforme au huitième mode de réalisation de la présente invention comprend un premier circuit d'estimation de temps de retard 1220, un second 5 circuit d'estimation de temps de retard 1230, un circuit de comptage de trames de données 1240, un circuit de détermination 1250 et un circuit de génération d'interruptions 1260. Le premier circuit d'estimation de temps de retard 10 1220 estime un premier temps de retard en réponse aux trames de données DFB reçues et arrête l'estimation du premier temps de retard en réponse à une interruption INTS. Le second circuit d'estimation de temps de retard 1230 estime un second temps de retard en réponse à des 15 trames de données DFB reçues et arrête l'estimation du second temps de retard en réponse à l'interruption INTS. Le second temps de retard est un intervalle de temps entre les trames de données reçues et est plus court que le premier temps de retard. Le circuit de comptage de trames de données 1240 compte un nombre de trames de données DFB reçues, en réponse à des trames de données DFB reçues, et il arrête le comptage des trames de données en réponse à l'interruption INTS. Le circuit de détermination 1250 détermine si le premier temps de retard s'est écoulé, en réponse à un signal de sortie OTDS1 du premier circuit d'estimation de temps de retard 1220, il détermine si le second temps de retard s'est écoulé en réponse à un signal de sortie OTDS2 30 du second circuit d'estimation de temps de retard 1230, il détermine si le nombre de trames de données DFB reçues est égal à N, en réponse à un signal de sortie ODFS du circuit de comptage de trames de données 1240, et il génère un signal de commande d'interruption CTRLS pour commander la 35 génération de l'interruption INTS. Le circuit de génération d'interruptions 1260 génère l'interruption INTS en réponse au signal de commande d'interruption CTRLS. La carte d'interface de réseau (NIC) 1200 comprend 5 en outre un circuit de réception 1210 qui reçoit des trames de données DFA et transmet les trames de données DFA au premier circuit d'estimation de temps de retard 1220, au second circuit d'estimation de temps de retard 1230 et au circuit de comptage de trames de données 1240, et un 10 circuit de transmission 1270 qui reçoit et transmet l'interruption INTS. Dans ce qui suit, on décrira une opération de la carte NIC 1200 en référence à la figure 12. La carte NIC 1200 de la figure 12 correspond au 15 procédé de génération d'interruptions 400 de la figure 4. Le premier circuit d'estimation de temps de retard 1220 estime un premier temps de retard en réponse à des trames de données DFB reçues. L'interruption INTS est générée après que le premier temps de retard s'est écoulé à partir 20 du moment auquel les trames de données DFB ont été reçues. Par conséquent, toutes les trames de données DFB, qui sont reçues avant que l'interruption INTS soit générée et après qu'une première trame de données a été reçue, peuvent être traitées par une interruption INTS. De ce fait, le premier 25 temps de retard doit être plus long que le temps nécessaire pour recevoir une trame de données DFB. Le premier circuit d'estimation de temps de retard 1220 peut être un temporisateur, qui estime un temps prédéterminé en réponse à des trames de données DFB. Cependant, l'homme de l'art 30 peut comprendre que le premier circuit d'estimation de temps de retard 1220 peut être un autre dispositif et n'est pas limité au temporisateur. Le premier circuit d'estimation de temps de retard 1220 cesse d'estimer le temps de retard si l'interruption INTS est générée. Le circuit de détermination 1250 détermine si le premier temps de retard s'est écoulé, en réponse à un signal de sortie OTDS1 du premier circuit d'estimation de temps de retard 1220. Par exemple, le signal de sortie OTDS1 est généré à un premier niveau logique si un temps de retard prédéterminé ne s'est pas écoulé, et le signal de 5 sortie OTDS1 est généré à un second niveau logique si le premier temps de retard s'est écoulé. Ainsi, le circuit de détermination 1250 peut déterminer si le premier temps de retard s'est écoulé, conformément au niveau logique du signal de sortie OTDS1. Le circuit de détermination 1250 10 génère le signal de commande d'interruption CTRLS au premier niveau logique s'il est déterminé que le premier circuit d'estimation de temps de retard 1220 n'atteint pas le temps de retard, en utilisant le niveau logique du signal de sortie OTDS1, et il génère le signal de commande 15 CTRLS au second niveau logique s'il est déterminé que le premier circuit d'estimation de temps de retard 1220 atteint le temps de retard, en utilisant le niveau logique du signal de sortie OTDS1. Ensuite, le circuit de génération d'interruptions 1260 génère l'interruption INTS 20 en réponse au niveau logique du signal de commande d'interruption CTRLS. Du fait que l'homme de l'art peut réaliser une configuration du circuit de détermination 1250 et du circuit de génération d'interruptions 1260, on ne donnera pas de description pour de telles configurations. De plus, l'homme de l'art peut comprendre aisément que les fonctions des premier et second niveaux logiques décrits ici peuvent être permutées. Si le temps de retard estimé par le premier circuit d'estimation de temps de retard 1220 est fixé de façon à 30 être une longue durée, certaines trames de données DFB peuvent ne pas être reçues, du fait qu'une mémoire peut être remplie avec des trames de données DFB avant que l'interruption INTS soit générée lorsque le premier temps de retard s'est écoulé. Par conséquent, le circuit de 35 comptage de trames de données 1240 compte le nombre de trames de données DFB reçues. Le nombre de trames de données DFB peut être déterminé en utilisant le niveau logique du signal de sortie ODFS du circuit de comptage de trames de données 1240. Ainsi, le signal de sortie ODFS du circuit de 5 comptage de trames de données 1240 est émis à un premier niveau logique avant que le nombre de trames de données DFB soit égal à N, et le signal de sortie ODFS du circuit de comptage de trames de données 1240 est émis à un second niveau logique si le nombre de trames de données DFB est 10 égal à N. Par conséquent, le circuit de détermination 1250 génère le signal de commande d'interruption CTRLS au premier niveau logique ou au second niveau logique, conformément au niveau logique du signal de sortie ODFS du circuit de comptage de trames de données 1240. Le circuit 15 de génération d'interruptions 1260 génère l'interruption INTS en réponse au signal de commande d'interruption CTRLS lorsque le nombre de trames de données DFB reçues est égal à N. Le circuit de comptage de trames de données 1240 20 peut être un compteur, qui compte le nombre de trames de données DFB reçues. Cependant, l'homme de l'art peut comprendre que le circuit de comptage de trames de données 1240 peut être un autre dispositif et n'est pas limité au compteur. Si l'intervalle de temps entre des trames de données DFB reçues est grand et le premier temps de retard est fixé trop long, le temps nécessaire pour traiter une première trame de données DFB devient également long. Par conséquent, dans la présente invention, des trames de 30 données DFB reçues sont traitées en générant l'interruption INTS si l'intervalle de temps entre les trames de données DFB est supérieur au temps de retard prédéterminé. Ainsi, le second circuit d'estimation de temps de retard 1230 estime un temps de retard à partir du moment 35 auquel une première trame de données est reçue jusqu'au moment auquel la trame de données suivante est reçue. Le circuit de détermination 1250 reçoit un signal de sortie OTDS2 du second circuit d'estimation de temps de retard 1230, en plus des signaux de sortie OTDS1 et ODFS du premier circuit d'estimation de temps de retard 1220 et du 5 circuit de comptage de trames de données 1240, et il détermine si l'intervalle de temps entre les trames de données reçues est égal au second temps de retard. Le circuit de génération d'interruptions 1260 reçoit le signal de commande d'interruption CTRLS émis par le circuit de 10 détermination 1250, et il génère l'interruption INTS. Il est possible de déterminer si l'intervalle de temps entre les trames de données reçues est égal au second temps de retard en utilisant le niveau logique du signal de sortie OTDS2 du second circuit d'estimation de temps de 15 retard 1230. Ainsi, le signal de sortie OTDS2 du second circuit d'estimation de temps de retard 1230 est généré au premier niveau logique avant que l'intervalle de temps entre les trames de données atteigne le second temps de retard, et le signal de sortie OTDS2 du second circuit 20 d'estimation de temps de retard 1230 est généré au second niveau logique si l'intervalle de temps entre les trames de données atteint le second temps de retard. Ensuite, le circuit de détermination 1250 génère le signal de commande d'interruption CTRLS au premier niveau logique ou au second 25 niveau logique, conformément au niveau logique du signal de sortie OTDS2 du second circuit d'estimation de temps de retard 1230. Le circuit de génération d'interruptions 1260 génère l'interruption INTS en réponse au signal de commande d'interruption CTRLS à un niveau logique qui est le même 30 qu'un niveau logique d'un cas dans lequel l'intervalle entre les trames de données reçues est égal au second temps de retard. Le second circuit d'estimation de temps de retard 1230 peut être un temporisateur similaire au premier 35 circuit d'estimation de temps de retard 1220. Cependant, l'homme de l'art peut comprendre que le circuit d'estimation de temps de retard 1230 peut être un autre dispositif et n'est pas limité au temporisateur. La carte d'interface de réseau (1200) peut en outre inclure un circuit de réception 1210 qui reçoit des trames 5 de données DFA et transmet les trames de données DFA au premier circuit d'estimation de temps de retard 1220, au second circuit d'estimation de temps de retard 1230 et au circuit de comptage de trames de données 1240, et un circuit de transmission 1270 qui reçoit et transmet 10 l'interruption INTS. Du fait que l'homme de l'art peut réaliser une configuration du circuit de réception 1210 ou du circuit de transmission 1270, on ne décrira pas de telles configurations. En outre, du fait que l'homme de l'art peut comprendre le fonctionnement de la carte NIC 1200 conforme au huitième mode de réalisation de la présente invention, d'après le procédé de génération d'interruptions de la figure 4, on ne le décrira pas ici. La figure 13 est un schéma synoptique illustrant une carte d'interface de réseau 1300 conforme à un neuvième mode de réalisation de la présente invention. La carte d'interface de réseau 1300 de la figure 13 comprend un premier circuit d'estimation de temps de retard 25 1320, un circuit de comptage de trames de données 1340, un circuit de reconnaissance de type 1330, un circuit de détermination 1350 et un circuit de génération d'interruptions 1360. Le premier circuit d'estimation de temps de retard 1320 estime un premier temps de retard en réponse à des 30 trames de données DFB reçues, et arrête l'estimation du premier temps de retard en réponse à une interruption INTS. Le circuit de comptage de trames de données 1340 compte le nombre de trames de données DFB reçues, en réponse aux trames de données DFB reçues, et arrête le comptage du 35 nombre de trames de données DFB reçues, en réponse à l'interruption. Le circuit de reconnaissance de type 1330 reconnaît un champ de type de trames de données en réponse aux trames de données DFB reçues, et arrête la reconnaissance du champ de type en réponse à l'interruption INTS. Le circuit de détermination 1350 détermine si le premier circuit d'estimation de temps de retard 1320 atteint un temps de retard, en réponse au signal de sortie OTDS1 du premier circuit d'estimation de temps de retard 1320, détermine si le nombre de trames de données DFB 10 reçues est égal à N, en réponse à un signal de sortie ODFS du circuit de comptage de trames de données 1340, détermine si le champ de type reconnu en réponse à un signal de sortie OPRS du circuit de reconnaissance de type 1330 est identique à un champ de type prédéterminé, et génère un 15 signal de commande d'interruption CTRLS pour commander la génération de l'interruption INTS. Le circuit de génération d'interruptions 1360 génère l'interruption INTS en réponse au signal de commande d'interruption CTRLS. En se référant à la figure 13, on note que la NIC 1300 conforme au neuvième mode de réalisation de la présente invention comprend le circuit de reconnaissance de type 1330 au lieu du second circuit d'estimation de retard 1230 de la NIC 1200 de la figure 12. Ainsi, des opérations 25 liées au premier circuit d'estimation de temps de retard 1320 et au circuit de comptage de trames de données 1340 sont identiques aux opérations de la NIC 1200 de la figure 12, et une opération de reconnaissance du champ de type des trames de données DFB est ajoutée à des opérations de la 30 NIC 1200 de la figure 12. De plus, des opérations de la NIC 1300 correspondent au procédé de génération d'interruptions de la figure 7. Parmi les trames de données reçues, il y a 35 plusieurs trames de données qui doivent être traitées en un temps prédéterminé. Si de telles trames de données qui sont prédéterminées sont reçues, elles sont reconnues et par conséquent des interruptions sont générées. Il y a plusieurs champs, par exemple un champ d'adresse de destination, un champ d'adresse de source, un 5 champ de type, un champ de données, un champ de contrôle par redondance cyclique (CRC), et autres, dans des trames de données. Dans chaque champ, des adresses de destination, des adresses de source, des types, des données, des contrôles par redondance cyclique (CRC), et autres, sont 10 respectivement stockés. Dans les champs de type, il est stocké une information portant sur le type de données de trames de données. Le type de données qui doivent être traitées en un certain temps est prédéterminé, et un champ de type est 15 recherché. Si un champ de type trouvé est identique au champ de type prédéterminé, des interruptions sont générées. Le champ de type est placé à une position prédéterminée dans la trame de données. En général, le 20 champ d'adresse de destination et le champ d'adresse de source combinés ont une longueur de 12 octets. Le champ de type a une longueur de 2 octets. Par conséquent, le circuit de reconnaissance de type 1330 lit 2 octets après 12 octets à partir du bit supérieur des trames de données reçues, et 25 il reconnaît un champ de type de 2 octets. Si le champ de type reconnu est identique à un champ de type prédéterminé, le circuit de reconnaissance de type 1330 génère un signal de sortie OPRS au premier niveau logique. Si le champ de type reconnu n'est pas identique au champ de type 30 prédéterminé, le circuit de reconnaissance de type 1330 génère le signal de sortie OPRS au second niveau logique. Ici, le premier niveau logique peut être un niveau haut, et le second niveau logique peut être un niveau bas. Cependant, les premier et second niveaux logiques décrits 35 ici peuvent être permutés. Le circuit de reconnaissance de type 1330 reconnaît une position du champ de type des trames de données reçues et détermine si le champ de type est identique au champ de type prédéterminé. Le circuit de reconnaissance de type 1330 peut aisément être réalisé par l'homme de l'art. La NIC 1300 conforme au neuvième mode de réalisation de la présente invention peut en outre inclure un circuit de réception 1310 et un circuit de transmission 1370. Les fonctions du circuit de réception 1310 et du 10 circuit de transmission 1370 sont les mêmes que dans le mode de réalisation de la figure 12. Du fait que l'homme de l'art peut comprendre le fonctionnement de la NIC 1300 conforme au neuvième mode de réalisation de la figure 13 d'après le procédé de 15 génération d'interruptions de la figure 7, on ne décrira pas le fonctionnement de la NIC 1300. La figure 14 est un schéma synoptique montrant une carte d'interface de réseau 1400 conforme à un dixième mode de réalisation de la présente invention. La carte d'interface de réseau (NIC) 1400 de la figure 14 comprend un premier circuit d'estimation de temps de retard 1420, un circuit de comptage de trames de données 1440, un circuit de reconnaissance de protocole 1430, un circuit de détermination 1450 et un circuit de génération 25 d'interruptions 1460. Le premier circuit d'estimation de temps de retard 1420 estime un premier temps de retard en réponse aux trames de données DFB reçues, et arrête l'estimation du premier temps de retard en réponse à une interruption INTS. 30 Le circuit de comptage de trames de données 1440 compte le nombre de trames de données DFB en réponse aux trames de données DFB reçues, et il arrête le comptage des trames de données DFB reçues en réponse à l'interruption INTS. Le circuit de reconnaissance de protocole 1430 35 reconnaît un champ de protocole d'un en-tête de paquet dans un champ de données des trames de données DFB reçues, en réponse aux trames de données DFB reçues, et il arrête la reconnaissance du champ de protocole en réponse à l'interruption INTS. Le circuit de détermination 1450 détermine si le 5 premier circuit d'estimation de temps de retard 1420 atteint le premier temps de retard en réponse à un signal de sortie OTDS1 du premier circuit d'estimation de temps de retard 1420, détermine si le nombre de trames de données DFB reçues est égal à N, en réponse à un signal de sortie 10 ODFS du circuit de comptage de trames de données 1440, détermine si le champ de protocole reconnu en réponse à un signal de sortie OPPS du circuit de reconnaissance de protocole 1430 est identique à un champ de protocole prédéterminé, et génère un signal de commande 15 d'interruption CTRLS pour commander la génération de l'interruption INTS. Le circuit de génération d'interruptions 1460 génère l'interruption INTS en réponse au signal de commande d'interruption CTRLS. En se référant à la figure 14, on note que la NIC 1400 conforme au dixième mode de réalisation de la figure 14 comprend le circuit de reconnaissance de protocole 1430 au lieu du second circuit d'estimation de retard 1230 de la NIC 1200 de la figure 12. Ainsi, des opérations liées au 25 premier circuit d'estimation de temps de retard 1420 et au circuit de comptage de trames de données 1440 sont identiques aux opérations de la NIC 1200 de la figure 12, et une opération de reconnaissance du champ de protocole des trames de données DFB est ajoutée aux opérations de la 30 NIC 1200 de la figure 12. De plus, des opérations de la NIC 1400 correspondent au procédé de génération d'interruptions 900 de la figure 9. Comme décrit dans le procédé de génération 35 d'interruptions 900 de la figure 9, un paquet qui est généré dans un protocole d'une couche supérieure sur d'Ethernet est placé dans un champ de données des trames de données reçues. Un protocole IP (Internet Protocol) est très largement utilisé parmi les protocoles de la couche supérieure sur Ethernet. Un paquet IP comprend deux régions, c'est-à-dire un en-tête de paquet IP et des données de paquet IP. Le circuit de reconnaissance de protocole 1430 de la NIC 1400 de la figure 14 reconnaît le champ de protocole de l'entête de paquet IP. Dans le champ de protocole, il est 10 stocké une information de commande portant sur un type de données de protocole stockées dans les données de paquet IP. Le circuit de reconnaissance de protocole 1430 détermine si le paquet IP est inclus dans les trames de 15 données reçues, et extrait et reconnaît le champ de protocole si le paquet IP est inclus dans les trames de données reçues. De plus, le circuit de reconnaissance de protocole 1430 détermine si le champ de protocole reconnu est identique à un champ de protocole prédéterminé. Du fait 20 que le circuit de reconnaissance de protocole 1430 peut être réalisé par l'homme de l'art, on ne le décrira pas ici. Si le champ de protocole reconnu est identique au champ de protocole prédéterminé, le circuit de 25 reconnaissance de protocole 1430 génère un signal de sortie OPPS à un premier niveau logique. Si le champ de protocole reconnu n'est pas identique au champ de protocole prédéterminé, le circuit de reconnaissance de protocole 1430 génère le signal de sortie 30 OPPS à un second niveau logique. Ici, le premier niveau logique peut être un niveau haut, et le second niveau logique peut être un niveau bas. Cependant, les premier et second niveaux logiques décrits ici peuvent être permutés. Le circuit de génération d'interruptions 1260 35 génère l'interruption INTS en réponse au signal de commande d'interruption CTRLS à un niveau logique qui est identique au niveau logique dans le cas o le champ de protocole reconnu est identique à un champ de protocole prédéterminé. Si l'interruption INTS est générée, des opérations du premier circuit d'estimation de temps de retard 1420, du 5 circuit de reconnaissance de protocole 1430 et du circuit de comptage de trames de données 1440 sont arrêtées jusqu'à ce qu'une nouvelle trame de données soit reçue. La NIC 1400 conforme au dixième mode de réalisation de la présente invention peut en outre inclure un circuit 10 de réception et un circuit de transmission 1470. Des fonctions du circuit de réception 1410 et du circuit de transmission 1470 sont identiques au mode de réalisation de la figure 12. Du fait que l'homme de l'art peut comprendre des 15 opérations de la NIC 1400 conforme au dixième mode de réalisation de la présente invention, d'après le procédé de génération d'interruptions 900 de la figure 9, elles ne seront pas décrites ici. La figure 15 est un schéma synoptique illustrant 20 une carte d'interface de réseau 1500 conforme à un onzième mode de réalisation de la présente invention. Une carte d'interface de réseau (NIC) 1500 de la figure 15 comprend un premier circuit d'estimation de temps de retard 1520, un second circuit d'estimation de temps de 25 retard 1530, un circuit de comptage de trames de données 1550, un circuit de reconnaissance de type 1540, un circuit de reconnaissance de protocole 1555, un circuit de détermination 1560 et un circuit de génération d'interruptions 1570. Le premier circuit d'estimation de temps de retard 1520 estime un premier temps de retard en réponse aux trames de données DFB reçues, et arrête l'estimation du premier temps de retard en réponse à une interruption INTS. Le second circuit d'estimation de temps de retard 35 1530 estime un second temps de retard en réponse aux trames de données DFB reçues et arrête l'estimation du second temps de retard en réponse à l'interruption INTS. Le second temps de retard est un intervalle de temps entre les trames de données DFB reçues, et est plus court que le premier temps de retard. Le circuit de comptage de trames de données 1550 compte le nombre de trames de données DFB reçues, en réponse aux trames de données DFB reçues, et il arrête le comptage des trames de données DFB en réponse à l'interruption INT. Le circuit de reconnaissance de type 1540 reconnaît un champ de type des trames de données DFB reçues, en réponse aux trames de données DFB reçues, et arrête la reconnaissance du champ de type en réponse à l'interruption INTS. Le circuit de reconnaissance de protocole 1555 reconnaît un champ de protocole d'un en-tête de paquet dans un champ de données des trames de données DFB reçues, en réponse aux trames de données DFB reçues, et arrête la reconnaissance du champ de protocole en réponse à 20 l'interruption INTS. Le circuit de détermination 1560 détermine si le premier temps de retard s'est écoulé, en réponse à un signal de sortie OTDS1 du premier circuit d'estimation de temps de retard 1520, détermine si le second temps de retard s'est écoulé, en réponse à un signal de sortie OTDS2 du second circuit d'estimation de temps de retard 1530, détermine si le nombre de trames de données DFB reçues est égal à N, en réponse à un signal de sortie ODFS du circuit de comptage de trames de données 1550, détermine si le champ de type reconnu est identique à un champ de type prédéterminé, en réponse à un signal de sortie OPRS du circuit de reconnaisse de type 1540, détermine si un champ de protocole reconnu par le circuit de reconnaissance de protocole 1555 est identique à un champ de protocole 35 prédéterminé, en réponse à un signal de sortie OPPS du circuit de reconnaissance de protocole 1555, et génère le signal de commande d'interruption CTRLS pour commander la génération de l'interruption INTS. Le circuit de génération d'interruptions 1570 génère l'interruption INTS en réponse au signal de commande d'interruption CTRLS. En se référant à la figure 15, on note que la NIC 1500 conforme au onzième mode de réalisation de la présente invention est créée en combinant des configurations des NIC 1200, 1300 et 1400. Du fait que des opérations de la NIC 1500 correspondent au procédé de génération d'interruptions 1100 de la figure 11, on ne les décrira pas ici. Comme décrit ci-dessus, un procédé de génération d'interruptions et une carte d'interface de réseau (NIC) 15 conformes à des modes de réalisation de la présente invention peuvent minimiser le nombre d'interruptions générées et traiter de nombreuses trames de données par une seule génération d'interruption. Il va de soi que de nombreuses modifications 20 peuvent être apportées au dispositif et au procédé décrits et représentés, sans sortir du cadre de l'invention. REVENDICATIONS 1. Procédé de génération d'interruptions d'une carte d'interface de réseau qui émet/reçoit des données, caractérisé en ce qu'il comprend les étapes suivantes: (a) 5 on reçoit des trames de données (410); (b) on estime un premier temps de retard (TD1) et un second temps de retard (TD2) en réponse à une trame de données reçue et on compte un nombre de trames de données reçues (420); (c) on détermine si le premier temps de retard (TD1) s'est écoulé 10 (430) et on génère une interruption si le premier temps de retard (TD1) s'est écoulé (460); (d) on compte le nombre de trames de données (440) si le premier temps de retard (TD1) ne s'est pas écoulé, et on génère l'interruption si le nombre de trames de données est égal à N (460); (e) on 15 détermine si le second temps de retard (TD2) s'est écoulé (450) si le nombre de trames de données n'est pas égal à N, et on génère l'interruption si le second temps de retard s'est écoulé (460), ou on retourne à l'étape (b) si le second temps de retard (TD2) ne s'est pas écoulé; (f) on 20 arrête les opérations d'estimation des premier et second temps de retard (TD1, TD2) et de comptage du nombre de trames de données, en réponse aux interruptions générées, et on transmet les trames de données reçues (470); et (g) on reçoit une nouvelle trame de données et on retourne à 25 l'étape (b) (480). 2. Procédé selon la revendication 1, caractérisé en ce que le premier temps de retard (TD1) commence au moment auquel une première trame de données (DF1) est reçue. 3. Procédé selon la revendication 1, caractérisé en 30 ce que le second temps de retard (TD2) est un intervalle de temps entre des trames de données reçues et est plus court que le premier temps de retard (TD1). 4. Procédé de génération d'interruptions d'une carte d'interface de réseau qui émet/reçoit des données, 35 caractérisé en ce qu'il comprend les étapes suivantes: (a) on reçoit des trames de données (610); (b) on estime un temps de retard de paquet en réponse aux trames de données reçues (620); (c) on détermine si le temps de retard de paquet s'est écoulé (630) et on génère une interruption si le temps de retard de paquet s'est écoulé (640), ou on 5 retourne à l'étape (b) si le temps de retard de paquet ne s'est pas écoulé; (d) on arrête une opération d'estimation du temps de retard de paquet et on transmet les trames de données reçues (650); et (e) on reçoit une nouvelle trame de données et on retourne à l'étape (b) (660). 5. Procédé selon la revendication 4, caractérisé en ce que le temps de retard de paquet est un intervalle de temps entre des trames de données reçues. 6. Procédé de génération d'interruptions d'une carte d'interface de réseau qui émet/reçoit des données, 15 caractérisé en ce qu'il comprend les étapes suivantes: (a) on reçoit des trames de données (710); (b) on estime un premier temps de retard en réponse aux trames de données reçues, on compte un nombre de trames de données reçues, et on reconnaît un champ de type des trames de données reçues 20 (720); (c) on détermine si le premier temps de retard s'est écoulé (730) et on génère une interruption si le premier temps de retard s'est écoulé (760); (d) on compte le nombre de trames de données reçues (740) et on génère l'interruption si le nombre de trames de données reçues est N (760); 25 (e) on détermine si un champ de type est identique à un champ de type prédéterminé (750) si le nombre de trames de données n'est pas égal à N, on génère l'interruption (760) si le champ de type est identique au champ de type prédéterminé, ou on retourne à l'étape (b) si le champ de 30 type n'est pas identique au champ de type prédéterminé; (f) on arrête les opérations d'estimation du premier temps de retard, de comptage du nombre de trames reçues et de reconnaissance du champ de type de la trame de données, en réponse aux interruptions générées, et on transmet les 35 trames de données reçues (770); et (g) on reçoit une nouvelle trame de données et on retourne à l'étape (b) (780). 7. Procédé selon la revendication 6, caractérisé en ce que le premier temps de retard commence au moment auquel la première trame de données est reçue. 8. Procédé de génération d'interruptions dans une 5 carte d'interface de réseau qui émet/reçoit des données, caractérisé en ce qu'il comprend les étapes suivantes: (a) on reçoit des trames de données (810); (b) on reconnaît un champ de type des trames de données reçues (820); (c) on détermine si le champ de type des trames de données reçues 10 est identique à un champ de type prédéterminé (830) et on génère une interruption (840) si le champ de type est identique au champ de type prédéterminé, ou on retourne à l'étape (b) si le champ de type n'est pas identique au champ de type prédéterminé; (d) on arrête une opération de 15 reconnaissance du champ de type des trames de données reçues, en réponse à l'interruption générée, et on transmet les trames de données reçues (850); et (e) on reçoit une nouvelle trame de données et on retourne à l'étape (b) (860). 9. Procédé de génération d'interruptions d'une carte d'interface de réseau qui émet/reçoit des données, caractérisé en ce qu'il comprend les étapes suivantes: (a) on reçoit des trames de données (910); (b) on estime un premier temps de retard en réponse aux trames de données 25 reçues, on compte un nombre de trames de données reçues, et on reconnaît un champ de protocole d'un en-tête de paquet dans un champ de données des trames de données reçues (920); (c) on détermine si le premier temps de retard s'est écoulé (930) et on génère une interruption (960) si le premier temps de retard s'est écoulé; (d) on détermine si le nombre de trames de données reçues est égal à N (940) si le premier temps de retard ne n'est pas écoulé, et on génère l'interruption (960) si le nombre de trames de données est égal à N; (e) on détermine si le champ de 35 protocole est identique à un champ de protocole prédéterminé si le nombre de trames de données reçues n'est pas égal à N (950), on génère l'interruption si le champ de protocole est identique au champ de protocole prédéterminé (960), ou on retourne à l'étape (b) si le champ de protocole n'est pas identique au champ de protocole 5 prédéterminé; (f) on arrête les opérations d'estimation du premier temps de retard, de comptage du nombre de trames de données reçues et de reconnaissance du champ de protocole, en réponse aux interruptions générées, et on transmet les trames de données reçues (970); et (g) on reçoit une 10 nouvelle trame de données et on retourne à l'étape (b) (980). 10. Procédé selon la revendication 9, caractérisé en ce que le premier temps de retard commence au moment auquel une première trame de données est reçue. 11. Procédé de génération d'interruptions d'une carte d'interface de réseau qui émet/reçoit des données, caractérisé en ce qu'il comprend les étapes suivantes: (a) on reçoit des trames de données (1010); (b) on reconnaît un champ de protocole d'un en-tête de paquet dans un champ de 20 données des trames de données reçues (1020); (c) on détermine si le champ de protocole est identique à un champ de protocole prédéterminé (1030) et on génère une interruption (1040) si le champ de protocole est identique au champ de protocole prédéterminé, ou on retourne à 25 l'étape (b) si le champ de protocole n'est pas identique au champ de protocole prédéterminé; (d) on arrête une opération de reconnaissance du champ de protocole et on transmet les trames de données reçues (1050); et (e) on reçoit une nouvelle trame de données et on retourne à 30 l'étape (b) (1060). 12. Procédé de génération d'interruptions d'une carte d'interface de réseau qui émet/reçoit des données, caractérisé en ce qu'il comprend les étapes suivantes: (a) on reçoit des trames de données (1010); (b) on estime un 35 premier temps de retard et un second temps de retard en réponse aux trames de données reçues, on compte un nombre de trames de données reçues, on reconnaît un champ de type des trames de données reçues, et on reconnaît un champ de protocole d'un en-tête de paquet dans un champ de données des trames de données reçues (1120); (c) on détermine si le 5 premier temps de retard s'est écoulé (1130) et on génère une interruption (1170) si le premier temps de retard s'est écoulé; (d) on compte le nombre de trames de données reçues si le premier temps de retard ne s'est pas écoulé (1140) et on génère l'interruption (1170) si le nombre de trames de 10 données reçues est égal à N; (e) on détermine si le second temps de retard s'est écoulé (1150) si le nombre de trames de données reçues n'est pas égal à N, et on génère l'interruption (1170) si le second temps de retard s'est écoulé; (f) on détermine si un champ de type est identique 15 à un champ de type déterminé (1160) si le second temps de retard ne s'est pas écoulé, et on génère l'interruption (1170) si le champ de type est identique au champ de type prédéterminé; (g) on détermine si le champ de protocole des trames de données reçues est identique à un champ de 20 protocole prédéterminé (1165) si le champ de type n'est pas identique au champ de type prédéterminé, et on génère l'interruption (1170) si le champ de protocole est identique au champ de protocole prédéterminé, ou on retourne à l'étape (b) si le champ de protocole n'est pas 25 identique au champ de protocole prédéterminé; (h) on arrête les opérations d'estimation du premier temps de retard et du second temps de retard, de comptage du nombre de trames de données reçues et de reconnaissance du champ de type et du champ de protocole des trames de données, en réponse à 30 l'interruption générée, et on transmet les trames de données reçues (1180); et (i) on reçoit une nouvelle trame de données et on retourne à l'étape (b) (1190). 13. Procédé selon la revendication 12, caractérisé en ce que le premier temps de retard commence au moment 35 auquel une première trame de données est reçue. 14. Procédé selon la revendication 12, caractérisé en ce que le second temps de retard est un intervalle de temps entre les trames de données reçues et est plus court que le premier temps de retard. 15. Carte d'interface de réseau (1200) qui minimise le nombre de fois que des interruptions sont générées, caractérisée en ce qu'elle comprend: un premier circuit d'estimation de temps de retard (1220) qui estime un premier temps de retard en réponse à des trames de données 10 reçues (DFB) et arrête l'estimation du premier temps de retard en réponse à une interruption (INTS); un second circuit d'estimation de temps de retard (1230), qui estime un second temps de retard en réponse aux trames de données reçues (DFB) et arrête l'estimation du second temps de 15 retard en réponse à l'interruption (INTS); un circuit de comptage de trames de données (1240) qui compte un nombre de trames de données reçues (DFB) en réponse aux trames de données reçues, et arrête le comptage des trames de données en réponse à l'interruption (INTS); un circuit de 20 détermination (1250) qui détermine si le temps atteint le premier temps de retard en réponse à un signal de sortie (OTDS1) du premier circuit d'estimation de temps de retard (1220), détermine si le temps atteint le second temps de retard en réponse à un signal de sortie (OTDS2) du second 25 circuit d'estimation de temps de retard (1230), détermine si le nombre de trames de données reçues (DFB) est égal à N, en réponse à un signal de sortie (ODFS) du circuit de comptage de trames de données (1240), et génère un signal de commande d'interruption (CTRLS) pour commander la 30 génération de l'interruption; et un circuit de génération d'interruptions (1260) qui génère l'interruption (INTS) en réponse au signal de commande d'interruption (CTRLS). 16. Carte d'interface de réseau selon la revendication 15, caractérisée en ce que le premier temps 35 de retard est estimé à partir du moment auquel une première trame de données (DFB) est reçue. 17. Carte d'interface de réseau selon la revendication 15, caractérisée en ce que le second temps de retard est un intervalle de temps entre les trames de données reçues (DFB) et est plus court que le premier temps de retard. 18. Carte d'interface de réseau (1300) qui minimise le nombre de fois que des interruptions sont générées, caractérisée en ce qu'elle comprend: un premier circuit d'estimation de temps de retard (1320) qui estime un 10 premier temps de retard en réponse à des trames de données reçues (DFB) et arrête l'estimation du premier temps de retard en réponse à une interruption (INTS); un circuit de reconnaissance de type (1330) qui reconnaît un champ de type de trames de données (DFB) en réponse aux trames de 15 données reçues et arrête la reconnaissance du champ de type en réponse à l'interruption (INTS); un circuit de comptage de trames de données (1340) qui compte un nombre de trames de données reçues (DFB) en réponse aux trames de données reçues et arrête le comptage du nombre de trames de données 20 reçues en réponse à l'interruption (INTS); un circuit de détermination (1350) qui détermine si le premier circuit d'estimation de temps de retard (1320) atteint un temps de retard en réponse au signal de sortie (OTDS1) du premier circuit d'estimation de temps de retard (1320), détermine 25 si le nombre de trames de données reçues (DFB) est égal à N, en réponse à un signal de sortie (ODFS) du circuit de comptage de trames de données (1340), détermine si le champ de type reconnu en réponse à un signal de sortie (OPRS) du circuit de reconnaissance de type (1330) est identique à un 30 champ de type prédéterminé, et génère un signal de commande d'interruption (CTRLS) pour commander la génération de l'interruption (INTS); et un circuit de génération d'interruptions (1360) qui génère l'interruption (INTS) en réponse au signal de commande d'interruption (CTRLS). 19. Carte d'interface de réseau selon la revendication 18, caractérisée en ce que le premier temps de retard commence au moment auquel une première trame de données (DFB) est reçue. 20. Carte d'interface de réseau (1400) qui minimise le nombre de fois que des interruptions sont générées, 5 caractérisée en ce qu'elle comprend: un premier circuit d'estimation de temps de retard (1420), qui estime un premier temps de retard en réponse à des trames de données reçues (DFB) et arrête l'estimation du premier temps de retard en réponse à une interruption (INTS); un circuit de 10 reconnaissance de protocole (1430) qui reconnaît un champ de protocole d'un en-tête de paquet dans un champ de données des trames de données reçues (DFB), en réponse aux trames de données reçues, et arrête la reconnaissance du champ de protocole en réponse à l'interruption (INTS); un 15 circuit de comptage de trames de données (1440), qui compte un nombre de trames de données reçues (DFB) en réponse aux trames de données reçues, et arrête le comptage du nombre de trames de données reçues (DFB) en réponse à l'interruption (INTS); un circuit de détermination (1450) 20 qui détermine si le premier circuit d'estimation de temps de retard (1420) atteint un temps de retard, en réponse au signal de sortie (OTDS1) du premier circuit d'estimation de temps de retard (1420), détermine si le nombre de trames de données reçues (DFB) est égal à N, en réponse à un signal 25 de sortie (ODFS) du circuit de comptage de trames de données, détermine si le champ de protocole reconnu en réponse à un signal de sortie (OPPS) du circuit de reconnaissance de protocole (1430) est identique à un champ de protocole prédéterminé, et génère un signal de commande 30 d'interruption (CTRLS) pour commander la génération de l'interruption (INTS); et un circuit de génération d'interruptions (1460) qui génère l'interruption (INTS) en réponse au signal de commande d'interruption (CTRLS). 21. Carte d'interface de réseau selon la 35 revendication 20, caractérisée en ce que le premier temps de retard est estimé à partir du moment auquel une première trame de données (DFB) est reçue. 22. Carte d'interface de réseau (1500) qui minimise le nombre de fois que des interruptions sont générées, 5 caractérisée en ce qu'elle comprend: un premier circuit d'estimation de temps de retard (1520), qui estime un premier temps de retard en réponse à des trames de données reçues (DFB) et arrête l'estimation du premier temps de retard en réponse à une interruption (INTS); un second circuit d'estimation de temps de retard (1530) qui estime un second temps de retard en réponse aux trames de données reçues (DFB) et arrête l'estimation du second temps de retard en réponse à l'interruption (INTS); un circuit de reconnaissance de type (1540) qui reconnaît un champ de 15 type de trames de données en réponse aux trames de données reçues (DFB), et arrête la reconnaissance du champ de type en réponse à l'interruption (INTS); un circuit de comptage de trames de données (1550), qui compte un nombre de trames de données reçues (DFB) en réponse aux trames de données 20 reçues, et arrête le comptage du nombre de trames de données reçues en réponse à l'interruption (INTS); un circuit de reconnaissance de protocole (1555) qui reconnaît un champ de protocole d'un en-tête de paquet dans un champ de données des trames de données reçues (DFB) en réponse 25 aux trames de données reçues, et arrête la reconnaissance du champ de protocole en réponse à l'interruption (INTS); un circuit de détermination (1560) qui détermine si le premier temps de retard s'est écoulé, en réponse au signal de sortie (OTDS1) du premier circuit d'estimation de temps 30 de retard (1520), détermine si le second temps de retard s'est écoulé, en réponse à un signal de sortie (OTDS2) du second circuit d'estimation de temps de retard (1530), détermine si le champ de type reconnu en réponse à un signal de sortie (OPRS) du circuit de reconnaissance de 35 type (1540) est identique à un champ de type prédéterminé, détermine si le nombre de trames de données reçues (DFB) est égal à N, en réponse à un signal de sortie (ODFS) du circuit de comptage de trames de données (1550) , détermine si le champ de protocole reconnu par le circuit de reconnaissance de protocole (1555), en réponse à un signal 5 de sortie (OPPS) du circuit de reconnaissance de protocole (1555) est identique à un champ de protocole prédéterminé, et génère un signal de commande d'interruption (CTRLS) pour commander la génération de l'interruption (INTS); et un circuit de génération d'interruptions (1570) qui génère 10 l'interruption (INTS) en réponse au signal de commande d'interruption (CTRLS). 23. Carte d'interface de réseau selon la revendication 22, caractérisée en ce que le premier temps de retard commence au moment auquel une première trame de 15 données (DFB) est reçue. 24. Carte d'interface de réseau selon la revendication 22, caractérisée en ce que le second temps de retard est un intervalle de temps entre les trames de données reçues (DFB) et est plus court que le premier 20 intervalle de retard. 25. Carte d'interface de réseau selon la revendication 15, caractérisée en ce qu'elle comprend en outre: un circuit de réception (1210) qui reçoit des trames de données (DFA) et transmet les trames de données 25 reçues au premier circuit d'estimation de temps de retard (1220), au second circuit d'estimation de temps de retard (1230) et au circuit de comptage de trames de données (1240); et un circuit de transmission (1270) qui reçoit et transmet l'interruption (INTS). 26. Carte d'interface de réseau selon la revendication 18, caractérisée en ce qu'elle comprend en outre: un circuit de réception (1310) qui reçoit des trames de données (DFA) et transmet les trames de données reçues au premier circuit d'estimation de temps de retard 35 (1320), au circuit de comptage de trames de données (1340) et au circuit de reconnaissance de type (1330); et un circuit de transmission (1370) qui reçoit et transmet l'interruption (INTS). 27. Carte d'interface de réseau selon la revendication 20, caractérisée en ce qu'elle comprend en 5 outre: un circuit de réception (1410) qui reçoit des trames de données (DFA) et transmet les trames de données reçues au premier circuit d'estimation de temps de retard (1420), au circuit de comptage de trames de données (1440) et au circuit de reconnaissance de protocole (1430); et un 10 circuit de transmission (1470) qui reçoit et transmet l'interruption (INTS). 28. Carte d'interface de réseau selon la revendication 22, caractérisée en ce qu'elle comprend en outre: un circuit de réception (1510) qui reçoit des 15 trames de données (DFA) et transmet les trames de données reçues au premier circuit d'estimation de temps de retard (1520), au second circuit d'estimation de temps de retard (1530), au circuit de comptage de trames de données (1550), au circuit de reconnaissance de type (1540) et au circuit 20 de reconnaissance de protocole (1555); et un circuit de transmission (1580) qui reçoit et transmet l'interruption (INTS).