JP2001344121A - Information apparatus, reception processing method, and recording medium - Google Patents

Information apparatus, reception processing method, and recording medium

Info

Publication number
JP2001344121A
JP2001344121A JP2000166242A JP2000166242A JP2001344121A JP 2001344121 A JP2001344121 A JP 2001344121A JP 2000166242 A JP2000166242 A JP 2000166242A JP 2000166242 A JP2000166242 A JP 2000166242A JP 2001344121 A JP2001344121 A JP 2001344121A
Authority
JP
Japan
Prior art keywords
reception processing
task
communication device
processing task
execution priority
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2000166242A
Other languages
Japanese (ja)
Inventor
Akitomo Sasaki
章友 佐々木
Original Assignee
Canon Inc
キヤノン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc, キヤノン株式会社 filed Critical Canon Inc
Priority to JP2000166242A priority Critical patent/JP2001344121A/en
Publication of JP2001344121A publication Critical patent/JP2001344121A/en
Application status is Pending legal-status Critical

Links

Abstract

PROBLEM TO BE SOLVED: To provide an information apparatus not generating an ill effect caused by the offset of the packets stored in a communication device in the network protocol software allocating a reception process task for each communication device. SOLUTION: In the network protocol software allocating the reception task for each communication device, the execution priority order of the corresponding reception task is changed according to the number of the packets stored in the communication device.

Description

【発明の詳細な説明】 DETAILED DESCRIPTION OF THE INVENTION

【0001】 [0001]

【発明の属する技術分野】本発明は、ネットワークのプロトコルを、ソフトウエアを用いて取り扱う情報機器に関するものである。 The present invention relates to the network protocol, to a information device for handling using software.

【0002】 [0002]

【従来の技術】ソフトウエアを用いて取り扱う情報機器において、1つのネットワーク処理タスクがその処理を行ったり、ユーザモードとカーネルモードとのように、 In information devices handling using BACKGROUND ART software, a network processing tasks or perform the processing, as the user mode and kernel mode,
モードが別れているOSでは、ネットワークプロトコルの処理を、カーネル部に構築したりする等、様々な提案や実装が行われている。 In OS mode is parted, the process of the network protocol, etc. or to build the kernel portion, a variety of proposals and implementations have been made.

【0003】 [0003]

【発明が解決しようとする課題】複数の通信デバイスを有する従来の情報機器において、パケットの受信処理を行うタスクである受信処理タスクを、通信デバイス毎に割り当てるように構成されている。 In conventional information device having a plurality of communication devices [0005] The reception processing task is a task that performs reception processing of the packet, and is configured to assign for each communication device.

【0004】そして、各通信デバイスが受信したパケットを蓄積する機構を備えるネットワークプロトコルソフトウエアにおいては、複数の通信デバイスが、多数のパケットを同時に受信した場合、各受信処理タスク毎に、 [0004] Then, in the network protocol software provided with a mechanism for storing a packet the communication device receives a plurality of communication devices, when receiving a large number of packets simultaneously in each reception processing task,
パケットが蓄積される。 Packets are accumulated.

【0005】この場合、蓄積されたパケットを逐次処理すると、特定の受信処理を行うタスクのみが実行されることになり、多くのパケットを蓄積している受信処理タスクの実行が後回しにされ、この結果、パケットをロスする等、通信デバイスに蓄積されているパケットの片寄りに起因する弊害が生じるという問題がある。 [0005] In this case, when sequential processing the stored packets, will be only tasks to particular receive processing is executed, the execution of the reception processing task have accumulated many packets are put off, the result, equal to lost packets, there is a problem that adverse effects due to the offset of the packet stored in the communication device occurs.

【0006】本発明は、通信デバイス毎に、受信処理タスクを割り当てるように構成されているネットワークプロトコルソフトウエアにおいて、通信デバイスに蓄積されているパケットの片寄りに起因する弊害が生じない情報機器を提供することを目的とするものである The present invention, for each communication device, in the network protocol software that is configured to allocate a receive processing task, the information device adverse effects due to the offset of the packet stored in the communication device does not occur it is an object to provide

【0007】 [0007]

【課題を解決するための手段】本発明は、通信デバイス毎に、受信のためのタスクを割り当てるように構成されているネットワークプロトコルソフトウエアにおいて、 The present invention SUMMARY OF THE INVENTION may, for each communication device, in the network protocol software that is configured to assign tasks for reception,
通信デバイスに蓄積されているパケットの数に応じて、 Depending on the number of packets stored in the communication device,
対応する受信用のタスクの実行優先順位を変更するものである And it changes the execution priority of the corresponding task for reception

【0008】 [0008]

【発明の実施の形態および実施例】(第1の実施例)図1は、本発明の一実施例である情報処理装置800を示すブロック図である。 Figure 1 (Example of the first) [Embodiment and Examples of the Invention is a block diagram illustrating an information processing apparatus 800 according to an embodiment of the present invention.

【0009】情報処理装置800は、イーサネット等のネットワーク通信を行うイーサネットデバイス801 [0009] The information processing apparatus 800, an Ethernet device 801 to perform network communications such as Ethernet
と、イーサネットデバイス801や座標入力装置807 If, Ethernet devices 801 and the coordinate input device 807
との間でデータのやり取りを行うI/Oバス802と、 And I / O bus 802 for exchanging data with the,
CPU804と、CPU804が動作するプログラムやデータを格納しているROM805と、CPU804が一時的なデータを格納しておくRAM806と、CPU A CPU 804, a ROM805 that stores programs and data to CPU 804 operates, and RAM806 the CPU 804 is storing temporary data, CPU
804、R0M805やRAM806等が接続されているメモリバス803と、計算機にデータを入力する入力装置807と、ディスプレイ809を駆動するディスプレイ駆動装置808と、ディスプレイ809と、イーサネットの通信線810とを有する。 With 804, R0M805 and the memory bus 803 or the like is connected RAM 806, an input device 807 for inputting data to the computer, a display driving device 808 for driving the display 809, a display 809, and Ethernet communication line 810 .

【0010】図1では、ネットワーク通信を行うイーサネット810が、1つの機器に3つ接続されている。 [0010] In Figure 1, Ethernet 810 for performing network communications, are three connected to a single device.

【0011】イーサネット等の通信デバイスを複数有する機器において、複数の通信デバイスが同時に多数のパケットを受信した場合、CPU804の処理が間に合わず、未処理のパケットが蓄積される。 [0011] In devices having a plurality of communication devices such as Ethernet, when a plurality of communication devices receives a large number of packets simultaneously, the processing of the CPU804 is too late, packets outstanding is accumulated. この場合、従来は、1つの通信デバイスに蓄積されたパケットの処理が終わった後に、次の通信デバイスの処理を行う。 In this case, conventionally, after the processing of packets stored in one communication device is finished to process the next communication device.

【0012】しかし、このようにしたのでは、所定の通信デバイスに蓄積されたパケットを処理しているうちに、他の通信デバイスが蓄積することができるパケット数を越えてしまったり、特定の通信のパケットばかりが速やかに処理され、他の通信のパケットが遅延されたり、処理されなかったりすることがある。 [0012] However, than this is done, while handling the packets stored in the predetermined communication device, or other communication devices is exceeded the number of packets that can be stored, a communication specific freshly packet is promptly processed, or packet of another communication is delayed, which may or may not be processed.

【0013】ところで、上記実施例では、通信プロトコルとしてTCP/IPを用い、通信デバイスとしてイーサネット(商標登録)を使用する。 [0013] In the above embodiment, using the TCP / IP as the communication protocol, using Ethernet (registered trademark) as a communication device.

【0014】なお、TCP/IPは、「UNIX NE [0014] In addition, TCP / IP is, "UNIX NE
TWORK PROGRAMMING/W. TWORK PROGRAMMING / W. Richa Richa
rd Stevens著(ISBN 0−13−949 rd Stevens Author (ISBN 0-13-949
876−1)」等、多くの書物にその実装に関する説明が開示されている。 876-1) "and the like, instructions for their implementation in many books have been disclosed.

【0015】次に、上記実施例において、受信の流れについて説明する。 Next, in the above embodiment will be described the flow of the reception.

【0016】図2は、上記実施例における動作説明図である。 [0016] Figure 2 is a diagram illustrating the operation in the above embodiment.

【0017】図3は、上記実施例における動作を示すフローチャートである。 [0017] FIG. 3 is a flowchart showing the operation in the above embodiment.

【0018】上記実施例では、3つのユーザタスクが同時に通信を行っている。 [0018] In the above embodiment, three user tasks is communicating simultaneously. 受信におけるTCP/IPソフトウエアは、イーサネットタスクから呼ばれる関数として構成されている。 TCP / IP software in the receiving is configured as a function called from the Ethernet task.

【0019】まず、イーサネットタスクがパケットを受信し(602)、イーサネットタスクは、受信したパケットからイーサネットヘッダを削除し、IPの受信関数を呼び出す(603)。 Firstly, Ethernet task receives a packet (602), Ethernet task removes the Ethernet header from the received packet, call the receive function of the IP (603). IP受信関数は、パケットからヘッダを取り除く(604)。 IP receive function removes the header from the packet (604). IP受信関数は、IPのパケットから、TCP/UDPどちらのプロトコルであるかを判断し、TCP受信関数またはUDP受信関数を呼び出す(605)。 IP receiving function, from the IP packet, it determines whether the TCP / UDP Both protocols, call the TCP receive function or UDP reception function (605).

【0020】TCP受信関数またはUDP受信関数では、TCPヘッダまたはUDPヘッダを、パケットから削除し、データ化し、プロトコル固有の処理を行う(6 [0020] In TCP receiving function or UDP receiving function, a TCP header or a UDP header, and removed from the packet, into data, performs protocol-specific processing (6
06)。 06). TCP/UDPのヘッダからデータを渡すユーザタスクを選択し、メッセージパッシングを用いて、データをユーザタスクに渡す(607)。 Select the user tasks to pass data from the TCP / UDP header, using a message passing, it passes the data to the user task (607). そして、ユーザタスクで、データを受信することができる(608)。 Then, it is possible in the user task, receives the data (608).

【0021】次に、イーサネットにおける受信部分について、詳しく説明する。 [0021] Next, the reception part in Ethernet, will be described in detail.

【0022】図4は、上記実施例の動作説明図である。 FIG. 4 is a diagram for explaining an operation of the above embodiment.

【0023】図4に示すように、受信のためのイーサネットドライバは、イーサネットデバイス801からCP As shown in FIG. 4, the Ethernet driver for receiving, CP from the Ethernet device 801
U804に通知される割り込みによって起動される割り込みハンドラ702と、受信のためのイーサネットタスク502とによって構成されている。 The interrupt handler 702 is invoked by the interrupt is notified to the U804, it is constituted by an Ethernet task 502 for receiving.

【0024】イーサネットのデバイス801は、通常、 [0024] Ethernet device 801 is, usually,
複数のパケットを受信するバッファが割り当てられ、イーサネットデバイスが受信し、割り込みハンドラ702 Allocated buffer for receiving a plurality of packets, and receive Ethernet device, an interrupt handler 702
が起動されると、このバッファから、パケットをコピーし、または抜き出し、対応するイーサネットタスク50 Ethernet task 50 but when activated, from the buffer, which copies the packet, or withdrawal, corresponding
2が持つキューに上記パケットを入れ、受信処理待ちのイーサネットタスク502に受信したことを通知する。 2 put the packets in the queue has to notify the received Ethernet task 502 of the received pending.
イーサネットタスク502は、上記キューからパケットを抜き出し、受信処理を行う。 Ethernet task 502 extracts the packets from the queue and performs reception processing. 以上が、イーサネットの受信部分の大まかな流れである。 The above is the general flow of the receive portion of the Ethernet.

【0025】イーサネットデバイス801は、物理的なイーサネット810からパケットを受信すると、CPU The Ethernet device 801 receives a packet from the physical Ethernet 810, CPU
804に割り込みを上げる。 804 to raise the interrupt. 割り込みを受けたCPU8 Interrupt received a CPU8
04は、その割り込みに応じた処理を行う割り込みハンドラ702を起動する。 04 activates the interrupt handler 702 to perform the processing corresponding to the interrupt.

【0026】次に、従来例における割り込みハンドラについて、説明する。 Next, the interrupt handler in the conventional example will be described.

【0027】図5は、従来例の割り込みハンドラの動作を示すフローチャートである。 [0027] FIG. 5 is a flowchart showing the operation of the interrupt handler in the conventional example.

【0028】イーサネットデバイス毎に割り当てられているイーサネットタスク502は、それぞれ受信のためのキュー701を持っている。 [0028] Ethernet task 502 that is assigned to each Ethernet device has a queue 701 for receiving respectively. 割り込みハンドラは、受信したパケットを、該当するイーサネットタスク502 The interrupt handler, the received packet, the corresponding Ethernet task 502
のキュー701に入れる(203)。 Placed in the queue 701 (203). そして、受信パケットをキュー701に入れたことを、該当するイーサネットタスク502に通知し(204)、次の割り込みを待つ(202)。 Then, it was placed in the received packet to the queue 701, and notifies the appropriate Ethernet task 502 (204) and waits for the next interrupt (202).

【0029】通知を受けたイーサネットは、キュー70 [0029] Ethernet Upon receiving the notification, the queue 70
1からパケットを抜き、受信処理を行うが、イーサネットタスク502がパケットを処理している間に、イーサネットデバイスがパケットを受信すると、割り込みハンドラが起動し、イーサネットのキュー701に受信パケットを入れる。 1 Remove the packet from, performs the reception processing, while the Ethernet task 502 is processing the packet, the Ethernet device receives a packet, an interrupt handler is activated, put the received packets to the Ethernet queue 701. イーサネットタスク502は、このキュー701に蓄積されたパケットがなくなるまで受信処理を行い、タスクは、受信処理を待つ状態になる。 Ethernet task 502 performs a reception process until packets stored in the queue 701 is eliminated, the task is in a state of waiting for reception processing. このような処理を行うので、複数のイーサネットデバイス80 Since such processing, multiple Ethernet devices 80
1が接続された機器においては、1つのイーサネットタスク502のキュー701に蓄積された受信パケットの処理を終えるまで、他のイーサネットタスク502が受信したパケットの処理を行うことができず、処理に片寄りが出てしまう。 In one it is connected devices, until the end of the processing of stored received packet in the queue 701 of a single Ethernet task 502, not be able to process packets other Ethernet task 502 has received pieces to the processing deviation will come out.

【0030】そこで、上記実施例では、キュー701に蓄積されたパケットの数に応じて、処理すべきパケット数が多い場合には、優先順位を上げ、少なくなった場合には、優先順位を下げるように、イーサネットタスク5 [0030] Therefore, in the above embodiment, depending on the number of packets stored in the queue 701, if the number of packets to be processed is large, raising the priority, if it becomes low, lower the priority as such, Ethernet task 5
02が自分の優先順位を変更し、処理すべきパケット数が多いイーサネットタスク502を優先的に実行させ、 02 change their priorities, preferentially to execute the Ethernet task 502 the number of packets is large to be processed,
このようにすることによって、片寄りがない受信パケットの処理を行うものである。 By doing so, performs a process of offset is not received packet.

【0031】図6は、上記実施例の動作を示すフローチャートである。 [0031] FIG. 6 is a flowchart showing the operation of the above-described embodiment.

【0032】図6において、割り込みハンドラ702から通知を受けたイーサネットタスク502は、キュー7 [0032] In FIG. 6, the Ethernet task 502 from the interrupt handler 702 receives the notification, the queue 7
01にパケットが蓄積されているか否かを調べ(10 01 in the packet is checked whether the accumulated (10
1)、キュー701にパケットが無ければ、また割り込み待ちになる(103)。 1) If there is no packet in the queue 701, also become wait for interrupt (103).

【0033】キュー701に蓄積されているパケットの数を調べ(108)、キュー701に蓄積されているパケットの数が、1〜2個である場合は、タスクの優先順位を8にし(104)、キュー701に蓄積されているパケットの数が、3〜4個である場合は、タスクの優先順位を9にし(105)、キュー701に蓄積されているパケットの数が、5個以上である場合は、タスクの優先順位を10にする(106)。 [0033] determines the number of packets stored in the queue 701 (108), the number of packets stored in the queue 701, when it is one to two orders of priority of the tasks to 8 (104) the number of packets stored in the queue 701, when it is 3-4 is to prioritize tasks 9 (105), the number of packets stored in the queue 701, is 5 or more case, the priority of task 10 (106). なお、タスクの優先順位の数字が大きい方が、タスクの優先順位が高い。 In addition, a larger number of priorities of the task, the higher the priority of the task.

【0034】そして、タスク再スケジュール要求を出し(107)、このとき、他に優先順位の高いイーサネットタスク502があれば、そのタスクが実行される。 [0034] Then, out the task rescheduling request (107), this time, if high Ethernet task 502 priority to another, the task is executed.

【0035】そして、キュー701から受信パケットを抜き(109)、IPパケットであるか否かを判断し(110)、IPパケットでなければ、処理できないので、パケットを破棄し(111)、IPパケットであれば、IP受信関数を呼び出す(112)。 [0035] Then, disconnect the received packet from the queue 701 (109), it is determined whether the IP packet (110), if an IP packet, can not be processed, the packet is discarded (111), IP packet if calls the IP receiving function (112).

【0036】上記のようにすることによって、複数のイーサネットデバイス801が接続された機器において、 [0036] By the above, in an apparatus in which a plurality of Ethernet devices 801 is connected,
複数のイーサネットデバイス801で連続的なパケットを受信しても、片寄り無く、公平に受信処理することができる。 Also receive continuous packets across multiple Ethernet devices 801, offset without, it is possible to fairly receive processing.

【0037】上記実施例では、ネットワークプロトコルとして、TCP/IPを用い、通信デバイスとして、イーサネットを使用しているが、他のネットワークプロトコルであってもよく、通信デバイスとして、イーサネットの代わりに、シリアル回線を用いたPPPやFDDI [0037] In the above embodiment, as the network protocol, using the TCP / IP as the communication devices, the use of the Ethernet may be other network protocols, as a communication device, instead of Ethernet, serial PPP and FDDI using the line
等に、上記実施例を適応するようにしてもよく、PP Etc, it may be adaptively the examples, PP
P、FDDI、イーサネット等が混在している場合にも、上記実施例を適応することができる。 P, even when the FDDI, Ethernet, etc. are mixed, it is possible to adapt the above embodiments.

【0038】(第2の実施例)上記第1の実施例において、タスクの優先順位は、イーサネットタスク502自身が変更しているが、第2の実施例においては、割り込みハンドラ702が、該当するイーサネットタスク50 [0038] (Second Embodiment) In the first embodiment, the priority of the task, although Ethernet task 502 itself is changed, in the second embodiment, the interrupt handler 702, applicable Ethernet task 50
2の優先順位を変更する。 2 To change the priority of.

【0039】第1の実施例において、タスクの優先順位をイーサネットタスク502自身が変更しているので、 [0039] In the first embodiment, since the priority of the task Ethernet task 502 itself is changed,
タスクの優先順位を上げるような状況においても、タスクが実行するまでは、優先順位を上げることができないという欠点があるが、第2の実施例は、この欠点を克服するものである。 Even in a situation such as raising the priority of a task until the task is executed, there is a disadvantage that it is impossible to increase the priority, the second embodiment is to overcome this drawback.

【0040】イーサネットデバイス801は、物理的なイーサネット810からパケットを受信すると、CPU The Ethernet device 801 receives a packet from the physical Ethernet 810, CPU
804に割り込みを上げる。 804 to raise the interrupt. 割り込みを受けたCPU8 Interrupt received a CPU8
04は、その割り込みに応じた処理を行う割り込みハンドラ702を起動する。 04 activates the interrupt handler 702 to perform the processing corresponding to the interrupt.

【0041】図7は、本発明の第2の実施例の動作を示すフローチャートである。 FIG. 7 is a flowchart showing the operation of the second embodiment of the present invention.

【0042】割り込みハンドラ702は、受信したパケットを、該当するイーサネットタスク502のキュー7 [0042] The interrupt handler 702, the received packet, queue 7 to the appropriate Ethernet task 502
01に入れる(203)。 Add to 01 (203). キュー701に蓄積されているパケットの数を調べ(401)、キュー701に蓄積されているパケットの数が、1〜2個である場合は、タスクの優先順位を8にし(402)、キュー701に蓄積されているパケットの数が、3〜4個である場合は、 Determine the number of packets stored in the queue 701 (401), the number of packets stored in the queue 701, when it is 1-2 is to the priority of the task 8 (402), the queue 701 If the number of packets stored is a 3-4 for,
タスクの優先順位を9にし(403)、キュー701に蓄積されているパケットの数が5個以上である場合は、 If the priority of the task to 9 (403), the number of packets stored in the queue 701 is 5 or more, the
タスクの優先順位を10にする(404)。 The priority of the task to 10 (404).

【0043】そして、該当するイーサネットタスク50 [0043] Then, the corresponding Ethernet task 50
2に通知し(204)、次の割り込みを待つ(20 Notify 2 (204) and waits for the next interrupt (20
2)。 2).

【0044】図8は、上記実施例における動作を示すフローチャートである。 [0044] Figure 8 is a flowchart showing the operation in the above embodiment.

【0045】図8において、割り込みハンドラ702から通知を受けたイーサネットタスク502は、キュー7 [0045] In FIG. 8, the Ethernet task 502 receives the notification from the interrupt handler 702, the queue 7
01にパケットが蓄積されているか否かを調べ(10 01 in the packet is checked whether the accumulated (10
1)、キュー701にパケットが無ければ、また割り込み待ちになる(103)。 1) If there is no packet in the queue 701, also become wait for interrupt (103).

【0046】そして、キュー701から受信パケットを抜き(109)、IPパケットであるか否かを判断し(110)、IPパケットでなければ、処理できないのでパケットを破棄し(111)、IPパケットであれば、IP受信関数を呼び出す(112)。 [0046] Then, disconnect the received packet from the queue 701 (109), it is determined whether the IP packet (110), if an IP packet, discards the packet can not be processed (111), an IP packet if calls the IP receiving function (112).

【0047】第2の実施例によれば、複数のイーサネットデバイスが接続された機器において、複数のイーサネットデバイスで連続的なパケットを受信しても、片寄り無く公平に受信処理することができる。 [0047] According to the second embodiment, it is possible in the device in which a plurality of Ethernet device is connected, even if it receives a continuous packets across multiple Ethernet devices and without fairly reception process deviation. また、割り込みハンドラ702が、該当するイーサネットタスク502 Further, an interrupt handler 702, the corresponding Ethernet task 502
の優先順位を変更するので、優先順位を高くしたイーサネットタスク502をすぐに実行することができる。 Since to change the priority of, it is possible to perform the Ethernet task 502 a higher priority immediately.

【0048】また、第2の実施例では、ネットワークプロトコルとしてTCP/IPを用い、通信デバイスとしてイーサネットを例にとったが、他のネットワークプロトコルであっても、上記実施例を適用することができ、 [0048] In the second embodiment, using the TCP / IP as a network protocol, but took an Ethernet as an example of a communication device, even in other network protocols, it is possible to apply the above-described embodiment ,
通信デバイスとしてイーサネットだけでなく、シリアル回線を用いたPPPやFDDI等でも適応することができ、また、PPP、FDDI、イーサネット等が混在している場合にも、上記第2の実施例を適応することができる。 Not only Ethernet as a communication device, it can also be adapted in PPP, FDDI or the like using a serial line, also, PPP, even in the case where FDDI, Ethernet, etc. are mixed, to adapt the second embodiment be able to.

【0049】つまり、上記実施例は、複数の通信デバイスを有する情報機器において、受信に関する処理を実行する受信処理タスクと、上記受信処理タスクを、通信デバイス毎に、割り当てる受信処理タスク割当手段と、上記通信デバイス毎に、受信データを蓄積する受信データキュー手段と、上記受信処理タスクの実行優先順位を、 [0049] That is, the embodiment is an information device having a plurality of communication devices, the reception processing task for executing processing relating to receiving, the reception processing task, for each communication device, and the reception processing task allocation means for allocating, for each of the communication devices, the incoming data queue means for storing the received data, the execution priority of the reception processing task,
変更する実行優先順位変更手段とを有する情報機器の例である。 It is an example of an information device having a execution priority changing means for changing.

【0050】また、上記実施例を記録媒体の例として把握することができる。 [0050] Further, it is possible to grasp the above embodiments as an example of a recording medium. すなわち、上記実施例は、複数の通信デバイスを有し、受信処理タスクを実行する受信処理方法において、受信に関する処理を実行する受信処理タスク手順と、上記受信処理タスクを、通信デバイス毎に、割り当てる受信処理タスク割当手順と、上記通信デバイス毎に、受信データを蓄積する受信データキュー手順と、上記受信処理タスクの実行優先順位を、変更する実行優先順位変更手順とをコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体の例である。 That is, the embodiment has a plurality of communication devices, the reception processing method for performing a reception processing task, the reception processing task instructions for performing processing related to receiving, the reception processing task, for each communication device, assigned recording a reception processing task allocation procedure, for each of the communication device, and receive data queues procedure for storing received data, the execution priority of the reception processing task, a program for executing the procedure execution priority change for changing the computer it is an example of a computer-readable recording medium.

【0051】なお、上記記録媒体として、FD、CD、 [0051] It should be noted that, as the recording medium, FD, CD,
DVD、HD、半導体メモリ等を想定することができる。 DVD, HD, it is possible to assume a semiconductor memory, or the like.

【0052】上記各実施例によれば、複数の通信デバイスを持つ情報機器において、パケットを受信処理するタスクを、通信デバイス毎に割り当てるように構成されているネットワークプロトコルソフトウエアであって、各通信デバイスが受信したパケットを蓄積し、この蓄積されたパケットの数に応じて、対応する受信処理タスクの実行優先順位を変更し、蓄積されたパケットの数が多い受信処理タスクについて、その実行優先順位を高くする。 [0052] According to each of the above embodiments, the information device having a plurality of communication devices, the task of receiving and processing packets, a network protocol software which is configured to assign for each communication device, each communication accumulating the packets received by the device, in accordance with the number of accumulated packets, and changing the execution priority of the corresponding reception processing task, for a large number reception processing tasks stored packets, the execution priority the higher. このようにすることによって、多くのパケットを蓄積している受信処理タスクが優先的に実行されるようになり、多くのパケットを蓄積している受信処理タスクの実行が遅れることがなくなり、通信デバイスに蓄積されているパケットの片寄りが生じず、したがって、通信デバイスに蓄積されているパケットの片寄りに起因する弊害が生じない。 By doing so, become the reception processing task have accumulated many packets are preferentially executed, prevents the execution of reception processing task have accumulated many packets delayed, the communication device offset of packets accumulated does not occur in, therefore, it does not occur adverse effects due to the offset of the packet stored in the communication device.

【0053】 [0053]

【発明の効果】本発明によれば、通信デバイス毎に、受信のためのタスクを割り当てるように構成されているネットワークプロトコルソフトウエアにおいて、通信デバイスに蓄積されているパケットの数に応じて、対応する受信用のタスクの実行優先順位を変更することによって、通信デバイスに蓄積されているパケットの片寄りに起因する弊害が生じないという効果を奏する。 According to the present invention, for each communication device, in the network protocol software that is configured to assign tasks for reception, depending on the number of packets stored in the communication device, the corresponding by changing the execution priority of the task for receiving the, negative effects due to the offset of the packet stored in the communication device is an effect that does not occur.

【0054】また、本発明において、通信デバイスからの割り込みによって起動される割り込みハンドラが、対応する受信処理タスクの優先順位を変えるように構成すれば、優先順位が高くなった受信処理タスクを直ちに実行することができるという効果を奏する。 [0054] In the present invention, the interrupt handler activated by an interrupt from the communication device, if configured to change the priority of the corresponding reception processing task, immediately executing the receive processing task priority is higher an effect that can be.

【図面の簡単な説明】 BRIEF DESCRIPTION OF THE DRAWINGS

【図1】本発明の一実施例である情報処理装置800を示すブロック図である。 1 is a block diagram illustrating an information processing apparatus 800 according to an embodiment of the present invention.

【図2】上記実施例における動作説明図である。 Figure 2 is an operation explanatory diagram in the above embodiment.

【図3】上記実施例における動作を示すフローチャートである。 3 is a flowchart showing the operation in the above embodiment.

【図4】上記実施例の動作説明図である。 4 is a diagram for describing operation of the above embodiment.

【図5】従来例における割り込みハンドラの動作を示すフローチャートである。 5 is a flowchart showing the operation of the interrupt handler in the conventional example.

【図6】上記実施例の動作を示すフローチャートである。 6 is a flowchart showing the operation of the above-described embodiment.

【図7】本発明の第2の実施例の動作を示すフローチャートである。 7 is a flowchart showing the operation of the second embodiment of the present invention.

【図8】上記実施例における動作を示すフローチャートである。 8 is a flowchart showing the operation of the above embodiment.

【符号の説明】 DESCRIPTION OF SYMBOLS

800…情報処理装置、 801…イーサネットデバイス、 802…I/Oバス、 803…メモリバス、 804…CPU、 805…ROM、 806…RAM、 807…入力装置、 808…ディスプレイ駆動装置、 809…ディスプレイ、 810…イーサネットの通信線。 800 ... information processing device, 801 ... Ethernet device, 802 ... I / O bus, 803 ... memory bus, 804 ... CPU, 805 ... ROM, 806 ... RAM, 807 ... input device, 808 ... display driving device, 809 ... display, 810 ... Ethernet communication line.

Claims (6)

    【特許請求の範囲】 [The claims]
  1. 【請求項1】 複数の通信デバイスを有する情報機器において、 受信に関する処理を実行する受信処理タスクと;上記受信処理タスクを、通信デバイス毎に、割り当てる受信処理タスク割当手段と;上記通信デバイス毎に、受信データを蓄積する受信データキュー手段と;上記受信処理タスクの実行優先順位を、変更する実行優先順位変更手段と;を有することを特徴とする情報機器。 1. A information device having a plurality of communication devices, the reception processing task for executing processing relating to receiving; the reception processing task, for each communication device, and the reception processing task allocation means for allocating; for each of the communication device , a received data queue means for storing the received data; information device characterized by having a; the execution priority of the reception processing task, the execution priority changing means for changing.
  2. 【請求項2】 請求項1において、 上記受信データの量が多い場合には、上記実行優先順位を高く設定し、上記受信データの量が少ない場合には、 2. The method of claim 1, when the amount of the received data is large, set high the execution priority, when the amount of the received data is small,
    上記実行優先順位を低く設定する実行優先順位設定手段を有することを特徴とする情報機器。 Information equipment, characterized in that it comprises the execution priority setting means for setting low the execution priority.
  3. 【請求項3】 請求項1において、 上記実行優先順位の設定を、上記受信処理タスクが実行することを特徴とする情報機器。 3. The method of Claim 1, the information device, characterized in that the setting of the execution priority, the reception processing task is performed.
  4. 【請求項4】 請求項1において、 上記実行優先順位の設定を、通信デバイスの割り込み機構から起動されるソフトウエアが実行することを特徴とする情報機器。 4. The method of claim 1, the information device, characterized in that the setting of the execution priority, the software which is activated by the interrupt mechanism of the communication device performs.
  5. 【請求項5】 複数の通信デバイスを有し、受信処理タスクを実行する受信処理方法において、 受信に関する処理を実行する受信処理タスク段階と;上記受信処理タスクを、通信デバイス毎に、割り当てる受信処理タスク割当段階と;上記通信デバイス毎に、受信データを蓄積する受信データキュー段階と;上記受信処理タスクの実行優先順位を、変更する実行優先順位変更段階と;を有することを特徴とする受信処理方法。 Has 5. A plurality of communication devices, the reception processing method for performing a reception processing task, the reception processing task step of performing processing relating to receiving; the reception processing task, for each communication device, allocates reception process task assignment phase and; reception process characterized by having a; for each of the communication device, the received data queue stage and for storing the received data; the execution priority of the reception processing task, the execution priority changing step of changing Method.
  6. 【請求項6】 複数の通信デバイスを有し、受信処理タスクを実行する受信処理方法において、 受信に関する処理を実行する受信処理タスク手順と;上記受信処理タスクを、通信デバイス毎に、割り当てる受信処理タスク割当手順と;上記通信デバイス毎に、受信データを蓄積する受信データキュー手順と;上記受信処理タスクの実行優先順位を、変更する実行優先順位変更手順と;をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体。 Have 6. plurality of communication devices, the reception processing method for performing a reception processing task, the reception processing task instructions for performing processing relating to receiving; the reception processing task, for each communication device, allocates reception process task allocation procedure and; for each of the communication device, the received data queue instructions and for storing the received data; recording a program causing a computer to execute the; run priority of the reception processing task, the procedure execution priority change for changing computer readable recording medium.
JP2000166242A 2000-06-02 2000-06-02 Information apparatus, reception processing method, and recording medium Pending JP2001344121A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000166242A JP2001344121A (en) 2000-06-02 2000-06-02 Information apparatus, reception processing method, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000166242A JP2001344121A (en) 2000-06-02 2000-06-02 Information apparatus, reception processing method, and recording medium

Publications (1)

Publication Number Publication Date
JP2001344121A true JP2001344121A (en) 2001-12-14

Family

ID=18669592

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000166242A Pending JP2001344121A (en) 2000-06-02 2000-06-02 Information apparatus, reception processing method, and recording medium

Country Status (1)

Country Link
JP (1) JP2001344121A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011108246A (en) * 2002-08-23 2011-06-02 Finite State Machine Labs Inc System, method and computer program product for monitoring and controlling network connection from supervisory operating system
WO2014005535A1 (en) * 2012-07-04 2014-01-09 中兴通讯股份有限公司 Message processing method, device and system for internet of things
JP2016149647A (en) * 2015-02-12 2016-08-18 キヤノン株式会社 COMMUNICATION APPARATUS, CONTROL METHOD, AND PROGRAM

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011108246A (en) * 2002-08-23 2011-06-02 Finite State Machine Labs Inc System, method and computer program product for monitoring and controlling network connection from supervisory operating system
US8713158B2 (en) 2002-08-23 2014-04-29 Intellectual Ventures Fund 73 Llc System, method and computer program product for monitoring and controlling network connections from a supervisory operating system
US8805994B2 (en) 2002-08-23 2014-08-12 Intellectual Ventures Fund 73 Llc System, method and computer program product for monitoring and controlling network connections from a supervisory operating system
WO2014005535A1 (en) * 2012-07-04 2014-01-09 中兴通讯股份有限公司 Message processing method, device and system for internet of things
US9832275B2 (en) 2012-07-04 2017-11-28 Xi'an Zhongxing New Software Co.Ltd. Message processing method, device and system for internet of things
JP2016149647A (en) * 2015-02-12 2016-08-18 キヤノン株式会社 COMMUNICATION APPARATUS, CONTROL METHOD, AND PROGRAM

Similar Documents

Publication Publication Date Title
Salim et al. Beyond Softnet.
Karlin et al. VERA: An extensible router architecture
EP1014648B1 (en) Method and network device for creating buffer structures in shared memory
JP3312266B2 (en) Scalable system interrupt structure for a multi-processing system
US5434976A (en) Communications controller utilizing an external buffer memory with plural channels between a host and network interface operating independently for transferring packets between protocol layers
US7984180B2 (en) Hashing algorithm for network receive filtering
JP3553634B2 (en) Interconnection interface
US7443836B2 (en) Processing a data packet
CN100454857C (en) Transmission apparatus and method
US7616633B2 (en) Exposing a bridged network as a single virtual segment
JP4762996B2 (en) Method and apparatus for ordering packets for routing in a network with indirect determination of the packet should be treated with priority
CN1021536C (en) Metrical dispatcher of serial communication controller on data handling stystem
EP1503286A1 (en) Multiple operating system networking
Mogul et al. Eliminating receive livelock in an interrupt-driven kernel
US7533176B2 (en) Method for supporting connection establishment in an offload of network protocol processing
US7072294B2 (en) Method and apparatus for controlling network data congestion
US6085215A (en) Scheduling mechanism using predetermined limited execution time processing threads in a communication network
Druschel et al. Lazy receiver processing (LRP): A network subsystem architecture for server systems
US7930422B2 (en) Apparatus and method for supporting memory management in an offload of network protocol processing
US7039061B2 (en) Methods and apparatus for retaining packet order in systems utilizing multiple transmit queues
US6338078B1 (en) System and method for sequencing packets for multiprocessor parallelization in a computer network system
US7493427B2 (en) Apparatus and method for supporting received data processing in an offload of network protocol processing
CN1745549B (en) System for content based message processing
CN100426780C (en) Switch-based network processor
EP2632109A2 (en) Onload network protocol stack