JP2007249851A - Information processor and information processing method, and program - Google Patents

Information processor and information processing method, and program Download PDF

Info

Publication number
JP2007249851A
JP2007249851A JP2006075516A JP2006075516A JP2007249851A JP 2007249851 A JP2007249851 A JP 2007249851A JP 2006075516 A JP2006075516 A JP 2006075516A JP 2006075516 A JP2006075516 A JP 2006075516A JP 2007249851 A JP2007249851 A JP 2007249851A
Authority
JP
Japan
Prior art keywords
processing
toe
communication
command
selection
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.)
Withdrawn
Application number
JP2006075516A
Other languages
Japanese (ja)
Inventor
Satoshi Katsuo
聡 勝尾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2006075516A priority Critical patent/JP2007249851A/en
Publication of JP2007249851A publication Critical patent/JP2007249851A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To optimally allocate a resource of a TOE. <P>SOLUTION: An application part 11 issues a command in response to an operation of a user, a TOE selection processing part 13 selects an allocated side for executing communication processing as to a network protocol stack, based on the issued command, a communication processing part 14 executes the communication processing, in response to a selection result of the allocated side, to allocate optimally the resource of the TOE. The present invention is applicable to a personal computer. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、情報処理装置および方法、並びにプログラムに関し、特に、TOE(TCP/IP Offload Engine)により通信をする情報処理装置および方法、並びにプログラムに関する。   The present invention relates to an information processing apparatus and method, and a program, and more particularly, to an information processing apparatus and method, and a program for performing communication using a TOE (TCP / IP Offload Engine).

従来より、インターネットなどのネットワークで使用されるプロトコルとして、TCP/IP(Transmission Control Protocol/Internet Protocol)がある。TCP/IPは、もともとUNIX(登録商標)においてソフトウェア(プログラム)により実装されていた経緯があり、現在でもその処理の大部分がソフトウェアにより行われている。しかし、容量の大きいデータのネットワーク転送要求が高まるにつれて、TCP/IPの処理の高速化を求める声が大きくなってきた。   Conventionally, there is TCP / IP (Transmission Control Protocol / Internet Protocol) as a protocol used in networks such as the Internet. TCP / IP was originally implemented by software (program) in UNIX (registered trademark), and even today, most of the processing is performed by software. However, as the demand for network transfer of large-capacity data increases, there is a growing demand for faster TCP / IP processing.

そのような要求に対して、例えば、TOE(TCP/IP Offload Engine)と称される、ホスト側のCPU(Central Processing Unit)リソースが費やされていたTCP/IPの処理を、別のチップ(専用のハードウェア)が代わりに行うようにする技術がある。このようにすることで、ホスト側のCPUリソースをアプリケーションプログラムに関する処理だけに割り当てることができるようになり、ホスト側のCPUの負荷を減らすとともに、TCP/IPの処理を高速化させることができる。   In response to such a request, for example, the processing of TCP / IP, which is called the TOE (TCP / IP Offload Engine), where the CPU (Central Processing Unit) resource on the host side has been spent, is transferred to another chip ( There is a technology that (dedicated hardware) does instead. By doing so, it becomes possible to allocate the CPU resources on the host side only to the processing related to the application program, thereby reducing the load on the CPU on the host side and speeding up the TCP / IP processing.

また、入力してくるAV(Audio Visual)データをAVバッファ回路に格納した後に、パケット処理部において、32キロバイトのジャンボパケットデータを生成し、CPUが生成したヘッダデータに基づいて、生成したジャンボパケットデータを分割して、最大1518バイトのイーサーネット(登録商標)パケットを生成して送信する送信装置もある(例えば、特許文献1)。   Also, after storing the incoming AV (Audio Visual) data in the AV buffer circuit, the packet processing unit generates jumbo packet data of 32 kilobytes, and the generated jumbo packet based on the header data generated by the CPU There is also a transmission apparatus that divides data to generate and transmit an Ethernet (registered trademark) packet of a maximum of 1518 bytes (for example, Patent Document 1).

特開2003−229905号公報JP 2003-229905 A

しかしながら、ソフトウェアによるTCP/IPの処理では、論理的にセッション数は無限となるが、TOEはハードウェアであるために、これを使用するセッションの本数(リソース)には限りがあるという問題があった。   However, in software TCP / IP processing, the number of sessions is logically infinite, but since the TOE is hardware, there is a problem that the number of sessions (resources) that use it is limited. It was.

例えば、特開2003−229905号公報に開示されている送信装置は、パケットデータを分割して送信しているが、分割されたパケットデータをTOEにより送信しようとした場合、TOEのリソースを最適に割り当てることができない可能性があった。   For example, the transmission device disclosed in Japanese Patent Application Laid-Open No. 2003-229905 divides and transmits packet data, but when the divided packet data is transmitted by the TOE, the resources of the TOE are optimized. There was a possibility that it could not be assigned.

また、TOEを制御するためには独自の制御方法となるので、一般的に、ネットワークプログラミングをするユーザ(開発者)は、TOEを使用することを意識しながら開発をする必要があるという問題もあった。   In addition, since it is an original control method for controlling the TOE, there is a general problem that users (developers) who perform network programming need to develop while being conscious of using the TOE. there were.

本発明はこのような状況に鑑みてなされたものであり、最適に、TOEのリソースを割り当てることができるようにするものである。   The present invention has been made in view of such a situation, and makes it possible to optimally allocate TOE resources.

本発明の一側面は、ネットワークを介して、通信を行う情報処理装置において、ユーザによるアプリケーションプログラムへの操作に応じてコマンドを発行する発行手段と、発行された前記コマンドに基づいて、ネットワークプロトコルスタックに関する通信処理を行う割り当て先を選択する選択手段と、前記割り当て先の選択結果に応じて、前記通信処理を行う通信処理手段とを備える情報処理装置である。   One aspect of the present invention is an information processing apparatus that performs communication via a network, an issuing unit that issues a command in response to a user operation on an application program, and a network protocol stack based on the issued command An information processing apparatus comprising: a selection unit that selects an assignment destination for performing communication processing related to the communication unit; and a communication processing unit that performs the communication process according to a selection result of the assignment destination.

ネットワークとは、少なくとも2つの装置が接続され、ある装置から、他の装置に対して、情報の伝達をできるようにした仕組みをいう。ネットワークを介して通信する装置は、独立した装置どうしであってもよいし、1つの装置を構成している内部ブロックどうしであってもよい。   The network is a mechanism in which at least two devices are connected and information can be transmitted from one device to another device. Devices that communicate via a network may be independent devices, or may be internal blocks that constitute one device.

また、通信とは、無線通信および有線通信は勿論、無線通信と有線通信とが混在した通信、すなわち、ある区間では無線通信が行われ、他の区間では有線通信が行われるようなものであってもよい。さらに、ある装置から他の装置への通信が有線通信で行われ、他の装置からある装置への通信が無線通信で行われるようなものであってもよい。   The communication is not only wireless communication and wired communication, but also communication in which wireless communication and wired communication are mixed, that is, wireless communication is performed in one section and wired communication is performed in another section. May be. Further, communication from one device to another device may be performed by wired communication, and communication from another device to one device may be performed by wireless communication.

前記選択手段は、インクルードファイルによって提供され、前記アプリケーションプログラムによって呼び出されるAPIにより制御されるようにすることができる。   The selection means may be provided by an include file and controlled by an API called by the application program.

前記通信処理手段は、前記通信処理をハードウェアにより行う第1の処理手段と、前記通信処理をソフトウェアにより行う第2の処理手段とを備えるようにすることができる。   The communication processing means may include a first processing means for performing the communication processing by hardware and a second processing means for performing the communication processing by software.

前記発行手段は、前記コマンドの引数として、前記第1の処理手段に対して、前記通信処理を行わせることを指示することを示す値が付加されたコマンドを発行し、前記選択手段は、発行された前記コマンドに基づいて、前記第1の処理手段が前記通信処理を行っていない場合、前記第1の処理手段に前記通信処理を割り当て、それに対して、前記第1の処理手段が前記通信処理を既に行っている場合、前記第2の処理手段に前記通信処理を割り当てるようにすることができる。   The issuing means issues a command with a value added to instruct the first processing means to perform the communication process as an argument of the command, and the selecting means If the first processing means does not perform the communication processing based on the command, the communication processing is assigned to the first processing means, whereas the first processing means When the process has already been performed, the communication process can be assigned to the second processing means.

前記選択手段は、発行された前記コマンドに基づいて、前記第1の処理手段に前記通信処理を割り当てるか否かを示す設定情報を読み出し、読み出した前記設定情報が前記第1の処理手段に前記通信処理を割り当てることを示している場合、前記第1の処理手段に前記通信処理を割り当て、それに対して、前記設定情報が前記第1の処理手段に前記通信処理を割り当てないことを示している場合、前記第2の処理手段に前記通信処理を割り当てるようにすることができる。   The selection means reads setting information indicating whether to assign the communication process to the first processing means based on the issued command, and the read setting information is sent to the first processing means. When the communication process is indicated to be assigned, the communication process is assigned to the first processing means, and the setting information indicates that the communication process is not assigned to the first processing means. In this case, the communication processing can be assigned to the second processing means.

前記選択手段は、さらに、前記第1の処理手段が前記通信処理を行っていない場合、前記第1の処理手段に前記通信処理を割り当て、それに対して、前記第1の処理手段が既に前記通信処理を行っている場合、前記第2の処理手段に前記通信処理を割り当てるようにすることができる。   The selection means further assigns the communication processing to the first processing means when the first processing means is not performing the communication processing, whereas the first processing means has already assigned the communication processing. When processing is performed, the communication processing can be assigned to the second processing means.

前記ネットワークプロトコルスタックは、TCP/IPであるようにすることができる。   The network protocol stack may be TCP / IP.

本発明の一側面は、ネットワークを介して、通信を行う情報処理装置の情報処理方法において、ユーザによるアプリケーションプログラムへの操作に応じてコマンドを発行する発行ステップと、発行された前記コマンドに基づいて、ネットワークプロトコルスタックに関する通信処理を行う割り当て先を選択する選択ステップと、前記割り当て先の選択結果に応じて、前記通信処理を行う通信処理ステップとを含む情報処理方法である。   One aspect of the present invention is an information processing method for an information processing apparatus that performs communication via a network, an issue step for issuing a command in response to a user operation on an application program, and the issued command An information processing method including a selection step of selecting an assignment destination for performing communication processing related to a network protocol stack, and a communication processing step of performing the communication processing according to a selection result of the assignment destination.

本発明の一側面は、ネットワークを介して、通信を行う処理を、コンピュータに行わせるプログラムにおいて、ユーザによるアプリケーションプログラムへの操作に応じてコマンドを発行する発行ステップと、発行された前記コマンドに基づいて、ネットワークプロトコルスタックに関する通信処理を行う割り当て先を選択する選択ステップと、前記割り当て先の選択結果に応じて、前記通信処理を行う通信処理ステップとを含むプログラムである。   One aspect of the present invention is an issuance step of issuing a command in response to an operation on an application program by a user in a program for causing a computer to perform a process of performing communication via a network, and based on the issued command Thus, the program includes a selection step of selecting an allocation destination for performing communication processing related to the network protocol stack, and a communication processing step of performing the communication processing in accordance with the selection result of the allocation destination.

本発明の一側面においては、ユーザによるアプリケーションプログラムへの操作に応じてコマンドが発行され、発行された前記コマンドに基づいて、ネットワークプロトコルスタックに関する通信処理を行う割り当て先が選択され、前記割り当て先の選択結果に応じて、前記通信処理が行われる。   In one aspect of the present invention, a command is issued in response to an operation to the application program by a user, an assignment destination for performing communication processing related to a network protocol stack is selected based on the issued command, and the assignment destination The communication process is performed according to the selection result.

以上のように、本発明の一側面によれば、最適に、TOEのリソースを割り当てることができる。   As described above, according to one aspect of the present invention, it is possible to optimally allocate TOE resources.

以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書または図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書または図面に記載されていることを確認するためのものである。従って、明細書または図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。   Embodiments of the present invention will be described below. Correspondences between constituent elements of the present invention and the embodiments described in the specification or the drawings are exemplified as follows. This description is intended to confirm that the embodiments supporting the present invention are described in the specification or the drawings. Therefore, even if there is an embodiment which is described in the specification or the drawings but is not described here as an embodiment corresponding to the constituent elements of the present invention, that is not the case. It does not mean that the form does not correspond to the constituent requirements. Conversely, even if an embodiment is described here as corresponding to a configuration requirement, that means that the embodiment does not correspond to a configuration requirement other than the configuration requirement. It's not something to do.

本発明の一側面の情報処理装置(例えば、図1のパーソナルコンピュータ1)は、ユーザによるアプリケーションプログラムへの操作に応じてコマンドを発行する発行手段(例えば、図1のアプリケーション部11)と、発行されたコマンドに基づいて、ネットワークプロトコルスタックに関する通信処理を行う割り当て先(例えば、図1のTOE21−1乃至TOE21−NまたはTCP/IP処理部22)を選択する選択手段(例えば、図1のTOE選択処理部13)と、割り当て先の選択結果に応じて、通信処理を行う通信処理手段(例えば、図1の通信処理部14)と備える。   An information processing apparatus according to an aspect of the present invention (for example, the personal computer 1 in FIG. 1) includes an issuing unit (for example, the application unit 11 in FIG. 1) that issues a command in response to an operation on an application program by a user. A selection means (for example, the TOE in FIG. 1) that selects an assignment destination (for example, the TOE 21-1 to the TOE 21-N or the TCP / IP processing unit 22 in FIG. 1) that performs communication processing related to the network protocol stack based on the command that has been issued. A selection processing unit 13) and communication processing means (for example, the communication processing unit 14 in FIG. 1) that performs communication processing according to the selection result of the assignment destination.

選択手段は、インクルードファイルによって提供され、アプリケーションプログラムによって呼び出されるAPIにより制御されるようにすることができる。   The selection means can be provided by an include file and controlled by an API called by an application program.

通信処理手段は、通信処理をハードウェアにより行う第1の処理手段(例えば、図1のTOE21−1乃至TOE21−N)と、通信処理をソフトウェアにより行う第2の処理手段(例えば、図1のTCP/IP処理部22)とを備えるようにすることができる。   The communication processing means includes first processing means (for example, TOE 21-1 to TOE 21 -N in FIG. 1) that performs communication processing by hardware, and second processing means (for example, in FIG. 1) that performs communication processing by software. A TCP / IP processing unit 22).

発行手段は、コマンドの引数として、第1の処理手段に対して、通信処理を行わせることを指示することを示す値が付加されたコマンド(例えば、オプション付コマンド)を発行し、選択手段は、発行されたコマンドに基づいて、第1の処理手段が通信処理を行っていない場合、第1の処理手段に通信処理を割り当て、それに対して、第1の処理手段が通信処理を既に行っている場合、第2の処理手段に通信処理を割り当てるようにすることができる。   The issuing unit issues a command (for example, a command with an option) to which a value indicating that the first processing unit is instructed to perform communication processing is issued as an argument of the command. If the first processing means is not performing communication processing based on the issued command, the communication processing is assigned to the first processing means, whereas the first processing means has already performed communication processing. If so, the communication processing can be assigned to the second processing means.

選択手段は、発行されたコマンド(例えば、標準コマンド)に基づいて、第1の処理手段に通信処理を割り当てるか否かを示す設定情報を読み出し、読み出した設定情報が第1の処理手段に通信処理を割り当てることを示している場合、第1の処理手段に通信処理を割り当て、それに対して、設定情報が第1の処理手段に通信処理を割り当てないことを示している場合、第2の処理手段に通信処理を割り当てるようにすることができる。   The selection means reads setting information indicating whether or not to assign communication processing to the first processing means based on the issued command (for example, standard command), and the read setting information communicates to the first processing means. If the process indicates that the communication process is assigned, the communication process is assigned to the first processing means, whereas if the setting information indicates that the communication process is not assigned to the first process means, the second process Communication processing can be assigned to the means.

選択手段は、さらに、第1の処理手段が通信処理を行っていない場合、第1の処理手段に通信処理を割り当て、それに対して、第1の処理手段が既に通信処理を行っている場合、第2の処理手段に通信処理を割り当てるようにすることができる。   The selecting means further assigns the communication processing to the first processing means when the first processing means is not performing the communication processing, whereas if the first processing means is already performing the communication processing, Communication processing can be assigned to the second processing means.

ネットワークプロトコルスタックは、TCP/IPであるようにすることができる。   The network protocol stack can be TCP / IP.

本発明の一側面の情報処理方法またはプログラムは、ユーザによるアプリケーションプログラムへの操作に応じてコマンドを発行する発行ステップ(例えば、図2のステップS11の処理)と、発行されたコマンドに基づいて、ネットワークプロトコルスタックに関する通信処理を行う割り当て先を選択する選択ステップ(例えば、図2のステップS13の処理)と、割り当て先の選択結果に応じて、通信処理を行う通信処理ステップ(例えば、図2のステップS14の処理)とを含む。   An information processing method or program according to one aspect of the present invention is based on an issue step (for example, the process of step S11 in FIG. 2) for issuing a command in response to an operation on an application program by a user, and the issued command. A selection step (for example, processing in step S13 in FIG. 2) for selecting an assignment destination for performing communication processing related to the network protocol stack, and a communication processing step (for example, in FIG. 2) for performing communication processing according to the selection result of the assignment destination. Step S14).

本発明の一側面のプログラムは、記録媒体(例えば、図8のリムーバブルメディア121)に記録することができる。   The program according to one aspect of the present invention can be recorded on a recording medium (for example, the removable medium 121 in FIG. 8).

以下、図面を参照しながら本発明の実施の形態について説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1は、本発明を適用したパーソナルコンピュータ1の一実施の形態の構成を示すブロック図である。   FIG. 1 is a block diagram showing a configuration of an embodiment of a personal computer 1 to which the present invention is applied.

パーソナルコンピュータ1は、ネットワークを介して、ネットワークに接続されている他の機器と通信を行う機器であり、本発明の情報処理装置の一例である。   The personal computer 1 is a device that communicates with other devices connected to the network via the network, and is an example of the information processing apparatus of the present invention.

パーソナルコンピュータ1は、アプリケーション部11、標準コマンドインターフェース部12、TOE選択処理部13、および通信処理部14を含むようにして構成される。   The personal computer 1 is configured to include an application unit 11, a standard command interface unit 12, a TOE selection processing unit 13, and a communication processing unit 14.

アプリケーション部11は、例えば、ユーザ(開発者)がプログラミングを行う開発環境(開発ツール)などのアプリケーションプログラムである。例えば、ユーザは、アプリケーション部11を操作することにより、ネットワークプログラミングを行う。アプリケーション部11は、ユーザの操作に応じたコマンドを、標準コマンドインターフェース部12に供給する。   The application unit 11 is an application program such as a development environment (development tool) in which a user (developer) performs programming. For example, the user performs network programming by operating the application unit 11. The application unit 11 supplies commands corresponding to user operations to the standard command interface unit 12.

ここで、コマンドとは、ユーザによるアプリケーションプログラムへの操作に応じて、パーソナルコンピュータ1に与えられる命令である。なお、以下の説明においては、一般的なコマンド(オプションが付加されていないコマンド)を標準コマンドと称し、オプションが付加された標準コマンドをオプション付コマンドと称して説明する。さらに、単に、コマンドと称した場合、標準コマンドとオプション付コマンドとの両方を含んでいるとして説明する。   Here, the command is a command given to the personal computer 1 in response to an operation on the application program by the user. In the following description, a general command (a command to which no option is added) is referred to as a standard command, and a standard command to which an option is added is referred to as an option-added command. Furthermore, when it is simply referred to as a command, it will be described as including both a standard command and a command with options.

標準コマンドインターフェース部12は、アプリケーション部11から供給されたコマンドに対応する所定の処理を行う。標準コマンドインターフェース部12は、アプリケーション部11から供給されたコマンドをTOE選択処理部13に供給する。   The standard command interface unit 12 performs predetermined processing corresponding to the command supplied from the application unit 11. The standard command interface unit 12 supplies the command supplied from the application unit 11 to the TOE selection processing unit 13.

標準コマンドインターフェース部12は、例えば、ソケットAPI(Socket Application Program Interface)などからなり、アプリケーション部11から供給されたコマンドを基に、プロセス間通信(IPC(InterProcess Communication))などを行う。これらのソケットAPIは、例えば、OS(Operating System)がUNIX(登録商標)である場合、BSDソケットにより実装され、また、OSがWindows(登録商標)である場合、Winsock(Windows(登録商標) Sockets)により実装される。   The standard command interface unit 12 includes, for example, a socket API (Socket Application Program Interface), and performs inter-process communication (IPC (InterProcess Communication)) based on a command supplied from the application unit 11. These socket APIs are implemented by, for example, BSD sockets when the OS (Operating System) is UNIX (registered trademark), and Winsock (Windows (registered trademark) Sockets) when the OS is Windows (registered trademark). ).

TOE選択処理部13は、標準コマンドインターフェース部12を介して、アプリケーション部11から供給されてくるオプション付コマンドを基に、TOE21−1乃至TOE21−Nのいずれかを選択し、選択したTOE21−1乃至TOE21−NのいずれかにTCP/IPの処理を割り当てる。また、TOE選択処理部13は、TOE21−1乃至TOE21−NにTCP/IPの処理を割り当てられない場合、TCP/IP処理部22を選択し、TCP/IP処理部22にTCP/IPの処理を割り当てる。   The TOE selection processing unit 13 selects one of the TOE 21-1 to TOE 21 -N based on the command with options supplied from the application unit 11 via the standard command interface unit 12, and selects the selected TOE 21-1. TCP / IP processing is assigned to any one of TOE21-N. Further, when the TCP / IP processing cannot be assigned to the TOE 21-1 to TOE 21 -N, the TOE selection processing unit 13 selects the TCP / IP processing unit 22, and the TCP / IP processing unit 22 performs the TCP / IP processing. Assign.

また、例えば、TOE選択処理部13は、それらの機能がライブラリ(Library)として提供され、そのライブラリはインクルードファイル(Include File)などとして実装される。すなわち、TOE選択処理部13は、インクルードファイルとして提供されるので、このインクルードファイルをインクルードすることにより、TOE選択処理部13に関する機能を実装することが可能となる。換言すれば、ユーザ(開発者)は、特別な機能であるTOE選択処理部13に関する機能を意識せずに、通常のネットワークプログラミングと同様にプログラミングをして、TOE選択処理部13に関する機能を実装させることができるとも言える。その結果、プログラミングによる不具合を減らすことができるとともに、開発時の工数も減らすことができる。   Further, for example, the TOE selection processing unit 13 is provided with these functions as a library (Library), and the library is implemented as an include file (Include File) or the like. That is, since the TOE selection processing unit 13 is provided as an include file, it is possible to implement functions related to the TOE selection processing unit 13 by including this include file. In other words, the user (developer) implements the function related to the TOE selection processing unit 13 by programming in the same manner as normal network programming without being aware of the special function related to the TOE selection processing unit 13. It can be said that it can be made. As a result, programming problems can be reduced and the number of man-hours during development can also be reduced.

なお、TOE選択処理部13の機能を提供するライブラリは、インクルードファイルに限らず、そのライブラリを定義することが可能となるファイルなどであればよい。   The library that provides the function of the TOE selection processing unit 13 is not limited to an include file, and may be any file that can define the library.

通信処理部14は、TOE選択処理部13による選択の結果を基に、TCP/IPの処理を行うことにより、ネットワークを介して、ネットワークに接続されている他の機器と通信をする。   The communication processing unit 14 communicates with other devices connected to the network via the network by performing TCP / IP processing based on the selection result by the TOE selection processing unit 13.

通信処理部14は、TOE21−1乃至TOE21−NおよびTCP/IP処理部22を含むようにして構成される。   The communication processing unit 14 is configured to include the TOE 21-1 to TOE 21 -N and the TCP / IP processing unit 22.

TOE21−1は、例えば、TCP/IPの処理を行う専用のハードウェアである。TOE21−1は、TOE選択処理部13により選択された場合、1つのセッションに対して、TCP/IPの処理を行う。   The TOE 21-1 is, for example, dedicated hardware that performs TCP / IP processing. When the TOE 21-1 is selected by the TOE selection processing unit 13, it performs TCP / IP processing for one session.

なお、TCP/IPの処理では、例えば、チェックサム(Check Sum)、IPフラグメント(IP Fragment)、またはIPデフラグメント(IP Defragment)などの処理や、セッションを張る処理、パケットをロスしたときのパケットの再送処理、またはルーティングの処理などが行われる。   In TCP / IP processing, for example, checksum, IP fragment (IP Fragment), or IP defragment processing, session creation processing, packet loss, etc. Retransmission processing or routing processing is performed.

TOE21−2は、TOE21−1と同様に、例えば、TCP/IPの処理を行う専用のハードウェアであり、TOE選択処理部13により選択された場合、1つのセッションに対して、TCP/IPの処理を行う。   Similar to the TOE 21-1, the TOE 21-2 is, for example, dedicated hardware that performs TCP / IP processing. When the TOE 21-2 is selected by the TOE selection processing unit 13, the TCP 21 Process.

TOE21−3は、TOE21−1と同様に、例えば、TCP/IPの処理を行う専用のハードウェアであり、TOE選択処理部13により選択された場合、1つのセッションに対して、TCP/IPの処理を行う。   Like the TOE 21-1, the TOE 21-3 is a dedicated hardware that performs TCP / IP processing, for example. When selected by the TOE selection processing unit 13, the TOE 21-3 performs TCP / IP processing for one session. Process.

TOE21−4乃至TOE21−Nのそれぞれは、TOE21−1と同様に、例えば、TCP/IPの処理を行う専用のハードウェアであり、それぞれ、TOE選択処理部13により選択された場合、1つのセッションに対して、TCP/IPの処理を行う。   Each of the TOE 21-4 to TOE 21-N is, for example, dedicated hardware that performs TCP / IP processing, as in the case of the TOE 21-1, and if selected by the TOE selection processing unit 13, each session On the other hand, it performs TCP / IP processing.

すなわち、TOE21−1乃至TOE21−Nのそれぞれは、それぞれ異なるセッションに対して、TCP/IPの処理を行う。   That is, each of the TOE 21-1 to TOE 21 -N performs TCP / IP processing for different sessions.

TCP/IP処理部22は、例えば、TCP/IPの処理を行うソフトウェア(ソフトウェアプログラム)である。TCP/IP処理部22は、リソースが許容する範囲で、複数のセッションに対して、TCP/IPの処理を行う。   The TCP / IP processing unit 22 is, for example, software (software program) that performs TCP / IP processing. The TCP / IP processing unit 22 performs TCP / IP processing for a plurality of sessions within the range allowed by the resource.

なお、TCP/IP処理部22は、例えば、ソフトウェアとして構成されるため、リソースが許容する範囲で、複数のセッションに対して、TCP/IPの処理を行うことが可能となる。   Since the TCP / IP processing unit 22 is configured as software, for example, it is possible to perform TCP / IP processing for a plurality of sessions as long as the resources allow.

以上のように、パーソナルコンピュータ1において、アプリケーション部11は、ユーザの操作に応じたオプション付コマンドを、標準コマンドインターフェース部12を介して、TOE選択処理部13に供給し、TOE選択処理部13は、アプリケーション部11から供給されてくるオプション付コマンドに応じて、TOE21−1乃至TOE21−NまたはTCP/IP処理部22のいずれかを選択して処理を割り当て、処理を割り当てられたTOE21−1乃至TOE21−NまたはTCP/IP処理部22のそれぞれは、TCP/IPの処理を実行することになる。   As described above, in the personal computer 1, the application unit 11 supplies the command with options according to the user's operation to the TOE selection processing unit 13 via the standard command interface unit 12, and the TOE selection processing unit 13 In accordance with the command with options supplied from the application unit 11, the TOE 21-1 to the TOE 21-N or the TCP / IP processing unit 22 is selected and assigned, and the processing is assigned to the TOE 21-1 to Each of the TOE 21-N or the TCP / IP processing unit 22 executes TCP / IP processing.

なお、本実施の形態では、例えば、TOE21−1乃至TOE21−Nは、ハードウェアとして構成されているので、TOE21−1乃至TOE21−Nを除く、アプリケーション部11、標準コマンドインターフェース部12、TOE選択処理部13、および通信処理部14のTCP/IP処理部22のそれぞれは、例えば、後述するCPU111が実行するソフトウェアとして構成されている。ただし、TOE21−1乃至TOE21−Nのハードウェア構成を図1の構成とは異ならせることで、アプリケーション部11乃至通信処理部14のそれぞれは、ソフトウェアまたはハードウェア単体として構成することもできるし、ソフトウェアとハードウェアとの組み合わせとして構成することもできる。すなわち、パーソナルコンピュータ1は、図1の機能的構成を少なくとも有していればよい。   In the present embodiment, for example, since the TOE 21-1 to TOE 21 -N are configured as hardware, the application unit 11, standard command interface unit 12, TOE selection, excluding the TOE 21-1 to TOE 21 -N. Each of the processing unit 13 and the TCP / IP processing unit 22 of the communication processing unit 14 is configured as, for example, software executed by a CPU 111 described later. However, by making the hardware configuration of the TOE 21-1 to TOE 21 -N different from the configuration of FIG. 1, each of the application unit 11 to the communication processing unit 14 can be configured as software or hardware alone, It can also be configured as a combination of software and hardware. That is, the personal computer 1 only needs to have at least the functional configuration of FIG.

また、以下の説明においては、TOE21−1乃至TOE21−Nを個々に区別する必要がない場合、単にTOE21と称して説明する。   Further, in the following description, when it is not necessary to individually distinguish the TOE 21-1 to the TOE 21 -N, they will be simply referred to as the TOE 21.

ところで、上述したように、パーソナルコンピュータ1において、TOE選択処理部22は、複数のTOE(TOE21−1乃至TOE21−N)の中から、あるTOEを選択し、その選択されたTOEは、TCP/IPの処理を行うが、以下、その処理の一例として、図2のフローチャートを参照して、図1のパーソナルコンピュータ1による、データ送信の処理について説明する。なお、この処理は、ユーザによりユーザインターフェースを介して、データを送信するための所定の処理を行う指令がされたときに開始される。   As described above, in the personal computer 1, the TOE selection processing unit 22 selects a certain TOE from a plurality of TOEs (TOE 21-1 to TOE 21-N), and the selected TOE is a TCP / IP. As an example of the processing, the data transmission processing by the personal computer 1 in FIG. 1 will be described below as an example of the processing. This process is started when the user gives an instruction to perform a predetermined process for transmitting data via the user interface.

ステップS11において、アプリケーション部11は、ユーザの操作に応じて、オプション付コマンドを発行し、発行したオプション付コマンドを標準コマンドインターフェース部12に供給する。   In step S <b> 11, the application unit 11 issues a command with options in accordance with a user operation, and supplies the issued command with options to the standard command interface unit 12.

ここで、オプション付コマンドとは、任意のセッションに対してTOE21を割り当てるためのコマンドである。すなわち、オプション付コマンドが発行された場合、そのセッションには、優先的にTOE21が割り当てられることになる。例えば、アプリケーション部11は、AV(Audio Visual)データやサイズの大きいファイル(データ)のFTP(File Transfer Protocol)などを送信(受信)する場合、オプション付コマンドを発行することにより、それらのデータを送信(受信)するとき、TOE21−1乃至TOE21−Nのいずれかから、送信(受信)させることが可能となる。   Here, the command with options is a command for assigning the TOE 21 to an arbitrary session. That is, when an option-added command is issued, the TOE 21 is preferentially assigned to that session. For example, when sending (receiving) AV (Audio Visual) data or FTP (File Transfer Protocol) of a large file (data), the application unit 11 issues these commands by issuing a command with options. When transmitting (receiving), it is possible to transmit (receive) from any of the TOE 21-1 to TOE 21 -N.

また、オプション付コマンドであるが、例えば、上述した、UNIX(登録商標)系のBSDソケットコマンドである場合、指定されたソケットのオプションを設定するコマンドである「setsockoptコマンド」に、オプションを追加することにより、実装することができる。   For example, in the case of the UNIX (registered trademark) BSD socket command described above, an option is added to the “setsockopt command” which is a command for setting an option of a specified socket. Can be implemented.

具体的には、例えば、開発時において、ユーザ((ネットワークプログラミングをする)開発者)が、「setsockoptコマンド」のオプションで、フラグパラメータを設定することにより、標準コマンドをオプション付コマンドにすることができる。このように、従来からある標準コマンドに対して、単純にオプションを追加するという、最小限の追加によってオプション付コマンドを発行させることができる。   Specifically, at the time of development, for example, a user (a developer who performs network programming) can set a standard command to a command with options by setting a flag parameter with an option of “setsockopt command”. it can. In this way, a command with an option can be issued with a minimal addition of simply adding an option to a conventional standard command.

なお、上述した例では、UNIX(登録商標)系のBSDソケットコマンドについて説明したが、Windows(登録商標)系のWinsockコマンドの場合であっても同様である。   In the above-described example, the UNIX (registered trademark) BSD socket command has been described, but the same applies to the case of the Windows (registered trademark) Winsock command.

ステップS12において、標準コマンドインターフェース部12は、アプリケーション部11から供給されるオプション付コマンドに応じて、所定の処理を行う。また、標準コマンドインターフェース部12は、アプリケーション部11から供給されるオプション付コマンドをTOE選択処理部13に供給する。   In step S <b> 12, the standard command interface unit 12 performs a predetermined process according to the command with options supplied from the application unit 11. Further, the standard command interface unit 12 supplies the command with options supplied from the application unit 11 to the TOE selection processing unit 13.

ステップS13において、TOE選択処理部13は、標準コマンドインターフェース部12から供給されるオプション付コマンドを基に、TOE選択の処理を行う。   In step S <b> 13, the TOE selection processing unit 13 performs a TOE selection process based on the command with options supplied from the standard command interface unit 12.

ここで、ステップS13における、TOE選択処理部13によるTOE選択の処理の詳細について、図3のフローチャートを参照して説明する。   Here, details of the TOE selection processing by the TOE selection processing unit 13 in step S13 will be described with reference to the flowchart of FIG.

ステップS21において、TOE選択処理部13は、TOE21−1乃至TOE21−Nのうち、空いているTOEがあるか否かを判定する。   In step S21, the TOE selection processing unit 13 determines whether there is a free TOE among the TOE 21-1 to the TOE 21-N.

ステップS21において、空いているTOE21があると判定された場合、ステップS22に進み、TOE選択処理部13は、TOE21−1乃至TOE21−Nのうち、空いているTOEにTCP/IPの処理を割り当てて、TOE選択の処理を終了し、図2のステップS13に処理を戻し、ステップS14以降の処理を実行させる。   If it is determined in step S21 that there is a free TOE 21, the process proceeds to step S22, and the TOE selection processing unit 13 assigns TCP / IP processing to a free TOE among the TOE 21-1 to TOE 21-N. Thus, the TOE selection process is terminated, the process is returned to step S13 in FIG. 2, and the processes after step S14 are executed.

例えば、ステップS22において、TOE選択処理部13は、TOE21−1乃至TOE21−3のそれぞれがあるセッションに対して、既にTCP/IPの処理を行っており、TOE21−4が空いている場合、その空いているTOE21−4にTCP/IPの処理を割り当てる。   For example, in step S22, the TOE selection processing unit 13 has already performed TCP / IP processing for a session with each of the TOE 21-1 to the TOE 21-3, and the TOE 21-4 is free. Allocate TCP / IP processing to an empty TOE 21-4.

一方、ステップS21において、空いているTOEがないと判定された場合、ステップS23に進み、TOE選択処理部13は、TCP/IP処理部22にTCP/IPの処理を割り当てる。   On the other hand, if it is determined in step S21 that there is no free TOE, the process advances to step S23, and the TOE selection processing unit 13 assigns TCP / IP processing to the TCP / IP processing unit 22.

すなわち、TCP/IP処理部22は、例えば、ソフトウェアとして構成されるため、リソースが許容する範囲で、複数のセッションに対して、TCP/IPの処理を行うことが可能となる。   That is, since the TCP / IP processing unit 22 is configured as software, for example, it is possible to perform TCP / IP processing for a plurality of sessions within the range allowed by the resource.

ステップS24において、TOE選択処理部13は、TOE21が空いておらず、TCP/IP処理部22にTCP/IPの処理を割り当てたので、TOEの割り当てに失敗したことを示す通知を、標準コマンドインターフェース部12を介して、アプリケーション部11に供給して、TOE選択の処理を終了し、図2のステップS13に処理を戻し、ステップS14以降の処理を実行させる。   In step S24, the TOE selection processing unit 13 notifies the standard command interface that the TOE allocation has failed because the TOE 21 is not empty and the TCP / IP processing unit 22 has been assigned TCP / IP processing. The data is supplied to the application unit 11 via the unit 12, the TOE selection processing is terminated, the processing is returned to step S13 in FIG. 2, and the processing after step S14 is executed.

なお、このとき、アプリケーション部11は、TOE選択処理部13から供給される、TOEの割り当てに失敗したことを示す通知を基に、例えば、その通知に応じた内容(メッセージ)を表示部(後述する出力部117)に表示させる。その結果、ユーザは、表示されたメッセージを確認することにより、TOEの割り当てに失敗したことを知ることができる。   At this time, the application unit 11 displays, for example, the content (message) corresponding to the notification based on the notification indicating that the TOE allocation failed, supplied from the TOE selection processing unit 13 (described later). To be displayed on the output unit 117). As a result, the user can know that the TOE assignment has failed by confirming the displayed message.

このように、TOE選択処理部13は、オプション付コマンドが供給されてきた場合、TOE選択の処理を行うことができる。換言すれば、ユーザ(開発者)は、高速化したい任意のセッションがある場合、オプション付コマンドを発行させることにより、そのセッションに対して、TOE21を(任意に)割り当てることが可能となる。   In this way, the TOE selection processing unit 13 can perform the TOE selection processing when an option-added command has been supplied. In other words, if there is an arbitrary session to be accelerated, the user (developer) can assign the TOE 21 (arbitrarily) to the session by issuing a command with an option.

図2のフローチャートに戻り、ステップS14において、通信処理部14は、TOE選択処理部13によるTOE選択の処理の結果を基に、TCP/IPの処理を行う。   Returning to the flowchart of FIG. 2, in step S <b> 14, the communication processing unit 14 performs TCP / IP processing based on the result of the TOE selection processing by the TOE selection processing unit 13.

ここで、ステップS14における、通信処理部14によるTCP/IPの処理の詳細について、図4のフローチャートを参照して説明する。   Here, details of TCP / IP processing by the communication processing unit 14 in step S14 will be described with reference to the flowchart of FIG.

ステップS31において、通信処理部14は、TOE21に処理が割り当てられているか否かを判定する。   In step S <b> 31, the communication processing unit 14 determines whether a process is assigned to the TOE 21.

ステップS31において、TOE21に処理が割り当てられていると判定された場合、ステップS32に進み、TOE21−1乃至TOE21−Nのうち、処理を割り当てられている(選択されている)TOE21は、TCP/IPの処理を行って、TCP/IPの処理を終了し、図2のステップS14に処理を戻し、データ送信の処理は終了する。   If it is determined in step S31 that the process is assigned to the TOE 21, the process proceeds to step S32, and the TOE 21 to which the process is assigned (selected) among the TOEs 21-1 to 21-N is connected to the TCP / IP. The IP process is performed, the TCP / IP process is terminated, the process is returned to step S14 in FIG. 2, and the data transmission process is terminated.

例えば、処理がTOE21−4に割り当てられている場合、ステップS32において、TOE21−4は、TCP/IPの処理を行う。   For example, when the process is assigned to the TOE 21-4, in step S32, the TOE 21-4 performs a TCP / IP process.

一方、ステップS31において、TOE21に処理が割り当てられていないと判定された場合(TCP/IP処理部22にTCP/IPの処理が割り当てられている場合)、ステップS33に進み、TCP/IP処理部22は、TCP/IPの処理を行って、TCP/IPの処理を終了し、図2のステップS14に処理を戻し、データ送信の処理は終了する。   On the other hand, when it is determined in step S31 that no processing is assigned to the TOE 21 (when TCP / IP processing is assigned to the TCP / IP processing unit 22), the process proceeds to step S33, and the TCP / IP processing unit is processed. 22 performs TCP / IP processing, ends TCP / IP processing, returns processing to step S14 in FIG. 2, and ends data transmission processing.

以上のようにして、パーソナルコンピュータ1においては、TOE選択処理部13により、セッションの本数(リソース)が最適になるようにTOE21が選択され、選択されたTOE21により、データが送信(受信)される。   As described above, in the personal computer 1, the TOE selection processing unit 13 selects the TOE 21 so that the number of sessions (resources) is optimal, and the selected TOE 21 transmits (receives) data. .

このように、本発明においては、限りあるTOE21のリソースを、TOE21の使用状況に合わせて選択し、選択されたTOE21がTCP/IPの処理を行うので、最適に、TOE21のリソースを割り当てることができる。また、TOE21に処理を割り当てられない場合でも、TCP/IP処理部22がTCP/IPの処理を行うようにすることができる。   As described above, in the present invention, limited resources of the TOE 21 are selected in accordance with the usage status of the TOE 21, and the selected TOE 21 performs TCP / IP processing. Therefore, the resources of the TOE 21 can be optimally allocated. it can. Even when processing cannot be assigned to the TOE 21, the TCP / IP processing unit 22 can perform TCP / IP processing.

さらに、本発明においては、特殊な制御となるTOE21に関する処理を、例えば、BSDソケットまたはWinsockなどの標準的なAPIにより制御することができる。その結果、ユーザ(開発者)は、特別な機能であるTOE21を特別意識することなく、標準コマンドにオプションを追加するという最小限の変更するだけで、通常のネットワークプログラミングと同様に、プログラミングすることができる。   Furthermore, in the present invention, processing related to the TOE 21 that is a special control can be controlled by a standard API such as a BSD socket or Winsock. As a result, the user (developer) can perform programming in the same way as normal network programming, with minimal changes such as adding options to the standard command, without being particularly aware of the special function TOE21. Can do.

ところで、上述した例においては、TOE選択処理部13は、オプション付コマンド(オプションが付加された標準コマンド)に基づいて、使用するTOE21を選択していたが、本発明はそれに限らず、標準コマンドをそのまま使用してもよい。以下、図5乃至図7を参照して、標準コマンドを使用してTOE21を選択する処理について説明する。   In the above-described example, the TOE selection processing unit 13 selects the TOE 21 to be used based on the command with options (standard command to which the option is added). However, the present invention is not limited thereto, and the standard command is selected. May be used as they are. Hereinafter, processing for selecting the TOE 21 using the standard command will be described with reference to FIGS.

図5は、本発明を適用したパーソナルコンピュータ51の一実施の形態の構成を示すブロック図である。   FIG. 5 is a block diagram showing a configuration of an embodiment of a personal computer 51 to which the present invention is applied.

なお、図5では、図1と同様の箇所には、同一の符号が付してありその説明は省略する。すなわち、図5において、パーソナルコンピュータ51は、図1のパーソナルコンピュータ1を構成するTOE選択処理部13の代わりに、TOE選択処理部61を含むようにして構成される。   In FIG. 5, the same parts as those in FIG. 1 are denoted by the same reference numerals, and the description thereof is omitted. That is, in FIG. 5, the personal computer 51 is configured to include a TOE selection processing unit 61 instead of the TOE selection processing unit 13 constituting the personal computer 1 of FIG.

TOE選択処理部61は、標準コマンドインターフェース部12を介して、アプリケーション部11から供給されてくる標準コマンドに応じてTOE自動割り当て情報を読み出し、読み出したTOE自動割り当て情報を基に、TOE21−1乃至TOE21−Nを選択し、選択したTOE21−1乃至TOE21−NのいずれかにTCP/IPの処理を割り当てる。また、TOE選択処理部13は、TOE21−1乃至TOE21−NにTCP/IPの処理を割り当てられない場合、TCP/IP処理部22を選択し、TCP/IP処理部22にTCP/IPの処理を割り当てる。   The TOE selection processing unit 61 reads the TOE automatic allocation information according to the standard command supplied from the application unit 11 via the standard command interface unit 12, and based on the read TOE automatic allocation information, the TOE 21-1 to Select TOE21-N and assign TCP / IP processing to any of the selected TOE21-1 to TOE21-N. Further, when the TCP / IP processing cannot be assigned to the TOE 21-1 to TOE 21 -N, the TOE selection processing unit 13 selects the TCP / IP processing unit 22, and the TCP / IP processing unit 22 performs the TCP / IP processing. Assign.

ここで、詳細は後述するが、TOE自動割り当て情報とは、オンまたはオフのいずれか一方に設定される、TOE21−1乃至TOE21−Nのいずれかを使用してTCP/IPの処理を行うかを設定している情報である。TOE自動割り当て情報は、例えば、ユーザによるアプリケーションプログラムへの操作により、初期値としてあらかじめその情報が設定される。   Here, although details will be described later, the TOE automatic allocation information refers to whether to perform TCP / IP processing using any one of the TOE 21-1 to TOE 21 -N set to either on or off. Is the information that is set. For the TOE automatic allocation information, for example, the information is set in advance as an initial value by a user operation on the application program.

また、例えば、TOE選択処理部61は、TOE選択処理部13と同様に、それらの機能がライブラリとして提供され、そのライブラリはインクルードファイルなどにより実装される。   In addition, for example, the TOE selection processing unit 61 is provided with these functions as a library, like the TOE selection processing unit 13, and the library is implemented by an include file or the like.

以上のように、パーソナルコンピュータ51において、アプリケーション11は、アプリケーション部11は、ユーザの操作に応じた標準コマンドを、標準コマンドインターフェース部12を介して、TOE選択処理部61に供給し、TOE選択処理部61は、アプリケーション部11から供給されてくる標準コマンドに応じて、TOE21−1乃至TOE21−NまたはTCP/IP処理部22を選択して処理を割り当て、処理を割り当てられたTOE21−1乃至TOE21−NまたはTCP/IP処理部22のそれぞれは、TCP/IPの処理を実行することになる。   As described above, in the personal computer 51, the application 11 supplies the standard command corresponding to the user operation to the TOE selection processing unit 61 via the standard command interface unit 12, and the TOE selection processing. The unit 61 selects the TOE 21-1 to TOE 21 -N or the TCP / IP processing unit 22 according to the standard command supplied from the application unit 11, assigns the process, and assigns the process to the TOE 21-1 to TOE 21. Each of the -N or TCP / IP processing unit 22 executes TCP / IP processing.

次に、図6のフローチャートを参照して、図5のパーソナルコンピュータ51による、データ送信の処理について説明する。   Next, data transmission processing by the personal computer 51 of FIG. 5 will be described with reference to the flowchart of FIG.

ステップS51において、アプリケーション部11は、ユーザの操作に応じて、標準コマンドを発行し、発行した標準コマンドを標準コマンドインターフェース部12に供給する。   In step S <b> 51, the application unit 11 issues a standard command in accordance with a user operation, and supplies the issued standard command to the standard command interface unit 12.

例えば、ステップS51において、アプリケーション部11は、ユーザの操作に応じて、UNIX(登録商標)系のOS上で動作している場合、BSDソケットコマンドを発行し(Windows(登録商標)系のOS上で動作している場合、Winsockコマンドを発行し)、発行したBSDソケットコマンド(Winsockコマンド)を標準コマンドインターフェース部12に供給する。   For example, in step S51, the application unit 11 issues a BSD socket command (on the Windows (registered trademark) OS when operating on the UNIX (registered trademark) OS) in response to a user operation. In the case of the operation, the Winsock command is issued), and the issued BSD socket command (Winsock command) is supplied to the standard command interface unit 12.

ステップS52において、標準コマンドインターフェース部12は、アプリケーション部11から供給される標準コマンドに応じて、所定の処理を行う。また、標準コマンドインターフェース部12は、アプリケーション部11から供給される標準コマンドをTOE選択処理部61に供給する。   In step S <b> 52, the standard command interface unit 12 performs predetermined processing according to the standard command supplied from the application unit 11. Further, the standard command interface unit 12 supplies the standard command supplied from the application unit 11 to the TOE selection processing unit 61.

例えば、ステップS52において、標準コマンドインターフェース部12は、UNIX(登録商標)系のOS上で動作している場合、アプリケーション部11から供給されるBSDソケットコマンドに応じた処理を行う。標準コマンドインターフェース部12は、アプリケーション部11から供給されるBSDソケットコマンドをTOE選択処理部61に供給する。   For example, in step S52, when operating on a UNIX (registered trademark) OS, the standard command interface unit 12 performs processing according to the BSD socket command supplied from the application unit 11. The standard command interface unit 12 supplies the BSD socket command supplied from the application unit 11 to the TOE selection processing unit 61.

ステップS53において、TOE選択処理部61は、標準コマンドインターフェース部12から供給される標準コマンドを基に、TOE選択の処理を行う。   In step S53, the TOE selection processing unit 61 performs a TOE selection process based on the standard command supplied from the standard command interface unit 12.

ここで、ステップS53における、TOE選択処理部61によるTOE選択の処理の詳細について、図7のフローチャートを参照して説明する。   Here, details of the TOE selection processing by the TOE selection processing unit 61 in step S53 will be described with reference to the flowchart of FIG.

ステップS61において、TOE選択処理部61は、標準コマンドインターフェース部12から供給される標準コマンドを基に、TOE自動割り当て情報を読み出して、TOE自動割り当て情報がオンとなっているか否かを判定する。   In step S61, the TOE selection processing unit 61 reads the TOE automatic allocation information based on the standard command supplied from the standard command interface unit 12, and determines whether the TOE automatic allocation information is on.

ここで、上述したように、TOE自動割り当て情報とは、オンまたはオフのいずれか一方に設定される、TOE21−1乃至TOE21−Nのいずれかを使用してTCP/IPの処理を行うかを設定している情報である。TOE自動割り当て情報は、例えば、パーソナルコンピュータ51から送信されるデータが、AVデータやサイズの大きいファイル(データ)のFTPなどである場合、その設定をオンとしておくことにより、それらのデータを送信(受信)するとき、TOE21−1乃至TOE21−Nのいずれかから、送信(受信)されることになる。   Here, as described above, the TOE automatic allocation information indicates whether to perform TCP / IP processing using any of the TOE 21-1 to TOE 21 -N set to either on or off. It is the set information. For example, when the data transmitted from the personal computer 51 is AV data or FTP of a large file (data), the TOE automatic allocation information is transmitted by setting the setting to ON ( When receiving, it is transmitted (received) from any of the TOE 21-1 to TOE 21 -N.

なお、TOE自動割り当て情報であるが、例えば、ユーザの操作により、初期値としてあらかじめその情報を設定させるようにしてもよいし、コマンドに含まれるようにしてもよい。TOE自動割り当て情報は、初期値として設定するようにした場合、例えば、ハードディスクなどからなる後述する記録部118または後述するRAM(Random Access Memory)113などに記録されることになる。その場合、TOE選択処理部61は、記録部118に記録されているTOE自動割り当て情報を読み出すことにより、TOE自動割り当て情報がオンとなっているか否かを判定することになる。   The TOE automatic allocation information may be set in advance as an initial value or included in a command, for example, by a user operation. When the TOE automatic allocation information is set as an initial value, it is recorded in, for example, a recording unit 118 (to be described later) composed of a hard disk or a RAM (Random Access Memory) 113 (to be described later). In this case, the TOE selection processing unit 61 reads out the TOE automatic allocation information recorded in the recording unit 118 to determine whether the TOE automatic allocation information is on.

ステップS61において、TOE自動割り当て情報がオフとなっている場合、ステップS64に進み、TOE選択処理部61は、TCP/IP処理部22にTCP/IPの処理を割り当てて、TOE選択の処理を終了し、図6のステップS53に処理を戻し、ステップS54以降の処理を実行させる。   If the TOE automatic allocation information is off in step S61, the process proceeds to step S64, where the TOE selection processing unit 61 allocates TCP / IP processing to the TCP / IP processing unit 22 and ends the TOE selection processing. Then, the process returns to step S53 in FIG. 6 to execute the processes after step S54.

一方、ステップS61において、TOE自動割り当て情報がオンとなっている場合、ステップS62に進み、TOE選択処理部61は、TOE21−1乃至TOE21−Nのうち、空いているTOE21があるか否かを判定する。   On the other hand, if the TOE automatic allocation information is turned on in step S61, the process proceeds to step S62, and the TOE selection processing unit 61 determines whether there is a free TOE 21 among the TOE 21-1 to the TOE 21-N. judge.

ステップS62において、空いているTOE21がないと判定された場合、ステップS64に進み、TOE選択処理部61は、TCP/IP処理部22にTCP/IPの処理を割り当てて、TOE選択の処理を終了し、図6のステップS53に処理を戻し、ステップS54以降の処理を実行させる。   If it is determined in step S62 that there is no free TOE 21, the process proceeds to step S64, where the TOE selection processing unit 61 assigns TCP / IP processing to the TCP / IP processing unit 22 and ends the TOE selection processing. Then, the process returns to step S53 in FIG. 6 to execute the processes after step S54.

すなわち、TCP/IP処理部22は、例えば、ソフトウェアとして構成されるため、リソースが許容する範囲で、複数のセッションに対して、TCP/IPの処理を行うことが可能となる。   That is, since the TCP / IP processing unit 22 is configured as software, for example, it is possible to perform TCP / IP processing for a plurality of sessions within the range allowed by the resource.

一方、ステップS62において、空いているTOE21があると判定された場合、ステップS63に進み、TOE選択処理部61は、空いているTOE21にTCP/IPの処理を割り当てて、TOE選択の処理を終了し、図6のステップS53に処理を戻し、ステップS54以降の処理を実行させる。   On the other hand, if it is determined in step S62 that there is a free TOE 21, the process proceeds to step S63, where the TOE selection processing unit 61 assigns TCP / IP processing to the free TOE 21 and ends the TOE selection processing. Then, the process returns to step S53 in FIG. 6 to execute the processes after step S54.

具体的には、例えば、TOE選択処理部61は、TOE21−1およびTOE21−2のそれぞれが既に割り当てられている場合、空いているTOE21−3にTCP/IPの処理を割り当てる。   Specifically, for example, when each of the TOE 21-1 and the TOE 21-2 has already been assigned, the TOE selection processing unit 61 assigns TCP / IP processing to the empty TOE 21-3.

図6のフローチャートに戻り、ステップS54において、通信処理部14は、TOE選択処理部61によるTOE選択の処理の結果を基に、TCP/IPの処理を行う。   Returning to the flowchart of FIG. 6, in step S54, the communication processing unit 14 performs TCP / IP processing based on the result of the TOE selection processing by the TOE selection processing unit 61.

ステップS54のTCP/IPの処理は、上述した、図2のステップS14の処理(図4のTCP/IPの処理)と同様であり、その説明は省略する。   The TCP / IP process in step S54 is the same as the above-described process in step S14 in FIG. 2 (TCP / IP process in FIG. 4), and a description thereof will be omitted.

以上のようにして、パーソナルコンピュータ51においては、TOE選択処理部61により、TOE21−1乃至TOE21−Nのセッションの本数(リソース)が最適になるようにTOE21が選択され、選択されたTOE21によりデータが送信(受信)される。   As described above, in the personal computer 51, the TOE 21 is selected by the TOE selection processing unit 61 so that the number of sessions (resources) of the TOE 21-1 to the TOE 21-N is optimized. Is sent (received).

このように、本発明においては、限りあるTOE21のリソースを、TOE21の使用状況に合わせて選択し、選択されたTOE21がTCP/IPの処理を行うので、最適に、TOE21のリソースを割り当てることができる。また、TOE21に処理を割り当てられない場合でも、TCP/IP処理部22がTCP/IPの処理を行うようにすることができる。   As described above, in the present invention, limited resources of the TOE 21 are selected in accordance with the usage status of the TOE 21, and the selected TOE 21 performs TCP / IP processing. Therefore, the resources of the TOE 21 can be optimally allocated. it can. Even when processing cannot be assigned to the TOE 21, the TCP / IP processing unit 22 can perform TCP / IP processing.

ところで、上述した例においては、(図2のフローチャートを参照して説明した)オプション付コマンドと、(図6のフローチャートを参照して説明した)TOE自動割り当て情報による、TOE21の割り当てについて説明したが、これらのオプション付コマンドとTOE自動割り当て情報とを、同時に行うようにしてもよい。   By the way, in the above-described example, the assignment of the TOE 21 using the command with options (described with reference to the flowchart in FIG. 2) and the automatic TOE assignment information (described with reference to the flowchart in FIG. 6) has been described. These command with options and TOE automatic allocation information may be performed simultaneously.

例えば、TOE21が4本(TOE21−1乃至TOE21−4)である場合、4本のTOE21のうち、TOE21−1とTOE21−2とをオプション付コマンドにより、残りのTOE21−3とTOE21−4とをTOE自動割り当て情報により、それぞれ割り当てるようにしてもよい。   For example, when there are four TOEs 21 (TOE 21-1 to TOE 21-4), among the four TOEs 21, the TOE 21-1 and the TOE 21-2 are commanded with options, and the remaining TOE 21-3 and TOE 21-4 are May be assigned according to the TOE automatic assignment information.

なお、これらのTOE21の割り当て本数に関する情報は、例えば、TOE自動割り当て情報と同様に、ユーザの操作により、初期値としてあらかじめその情報を設定しておくようにすればよい。   Note that the information regarding the number of assigned TOEs 21 may be set in advance as an initial value by a user operation, for example, as in the automatic TOE assignment information.

以上のように、本発明によれば、最適に、TOE21のリソースを割り当てることができる。   As described above, according to the present invention, the resources of the TOE 21 can be optimally allocated.

また、本発明によれば、ユーザ(開発者)は、容易にネットワークプログラミングすることができる。すなわち、特殊な制御となるTOE21を、例えば、標準的なBSDソケットまたはWinsockなどのAPIにより制御することができる。その結果、ユーザ(開発者)は、特別な機能であるTOEを意識せずに、通常のネットワークプログラミングと同様に、プログラミングすることができる。   Further, according to the present invention, a user (developer) can easily perform network programming. That is, the TOE 21 serving as special control can be controlled by an API such as a standard BSD socket or Winsock. As a result, the user (developer) can perform programming in the same manner as normal network programming without being aware of the special function TOE.

なお、上述した例においては、パーソナルコンピュータ1(またはパーソナルコンピュータ51)を一例にして説明したが、本発明においてはそれに限らず、例えば、ビデオカメラ、AV(Audio Visual)サーバ、またはスイッチャなど、ネットワークに接続して、ネットワークに接続された他の機器と通信をする機器であればよい。   In the above-described example, the personal computer 1 (or personal computer 51) has been described as an example. However, the present invention is not limited to this, and for example, a network such as a video camera, an AV (Audio Visual) server, or a switcher is used. Any device that communicates with other devices connected to the network by connecting to the network.

また、上述した例においては、ネットワークプロトコルスタックとして、TCP/IPを一例にして説明したが、本発明においてはそれに限らず、例えば、UDP/IP(User Datagram Protocol/Internet Protocol)などであってもよい。   In the above-described example, TCP / IP is described as an example of the network protocol stack. However, the present invention is not limited to this, and for example, UDP / IP (User Datagram Protocol / Internet Protocol) may be used. Good.

上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。   The series of processes described above can be executed by hardware, but can also be executed by software. When a series of processing is executed by software, a program constituting the software may execute various functions by installing a computer incorporated in dedicated hardware or various programs. For example, it is installed from a recording medium in a general-purpose personal computer or the like.

図8は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータ1の構成の例を示すブロック図である。CPU111は、ROM(Read Only Memory)112、または記録部118に記録されているプログラムに従って各種の処理を実行する。RAM113には、CPU111が実行するプログラムやデータなどが適宜記憶される。これらのCPU111、ROM112、およびRAM113は、バス114により相互に接続されている。   FIG. 8 is a block diagram showing an example of the configuration of the personal computer 1 that executes the above-described series of processing by a program. The CPU 111 executes various processes according to a program recorded in a ROM (Read Only Memory) 112 or a recording unit 118. The RAM 113 appropriately stores programs executed by the CPU 111 and data. The CPU 111, the ROM 112, and the RAM 113 are connected to each other by a bus 114.

CPU111にはまた、バス114を介して入出力インターフェース115が接続されている。入出力インターフェース115には、キーボード、マウス、マイクロホンなどよりなる入力部116、ディスプレイ、スピーカなどよりなる出力部117が接続されている。CPU111は、入力部116から入力される指令に対応して各種の処理を実行する。そして、CPU111は、処理の結果得られた画像等を出力部117に出力する。   An input / output interface 115 is also connected to the CPU 111 via the bus 114. The input / output interface 115 is connected to an input unit 116 including a keyboard, a mouse, and a microphone, and an output unit 117 including a display and a speaker. The CPU 111 executes various processes in response to commands input from the input unit 116. Then, the CPU 111 outputs an image or the like obtained as a result of the processing to the output unit 117.

入出力インターフェース115に接続されている記録部118は、例えばハードディスクなどで構成され、CPU111が実行するプログラムや各種のデータを記録する。通信部119は、インターネット、その他のネットワークを介して外部の装置と通信する。   The recording unit 118 connected to the input / output interface 115 is composed of, for example, a hard disk and records programs executed by the CPU 111 and various data. The communication unit 119 communicates with an external device via the Internet or other networks.

また、通信部119を介してプログラムを取得し、記録部118に記録してもよい。   Further, the program may be acquired via the communication unit 119 and recorded in the recording unit 118.

入出力インターフェース115に接続されているドライブ120は、リムーバブルメディア121が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記録部118に転送され、記録される。   When the removable medium 121 is loaded, the drive 120 connected to the input / output interface 115 drives them and acquires programs and data recorded therein. The acquired program and data are transferred to the recording unit 118 and recorded as necessary.

この記録媒体は、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disk))を含む)、光磁気ディスク(MD(Mini-Disk)(登録商標)を含む)、若しくは半導体メモリなどよりなるリムーバブルメディア121により構成されるだけでなく、コンピュータに予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM112や記録部118などで構成される。   The recording medium is distributed to provide a program to the user separately from the computer, and includes a magnetic disk (including a flexible disk) on which the program is recorded, an optical disk (CD-ROM (Compact Disc-Read Only Memory)) , DVD (Digital Versatile Disk)), magneto-optical disk (including MD (Mini-Disk) (registered trademark)), or removable media 121 made of semiconductor memory, etc. The program is configured by a ROM 112, a recording unit 118, and the like that are provided to the user in a built-in state and in which a program is recorded.

また、上述した一連の処理を実行させるプログラムは、必要に応じてルータ、モデムなどのインターフェースを介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を介してコンピュータにインストールされるようにしてもよい。   The program for executing the above-described series of processing is installed in a computer via a wired or wireless communication medium such as a local area network, the Internet, or digital satellite broadcasting via an interface such as a router or a modem as necessary. You may be made to do.

なお、本明細書において、記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。   In the present specification, the step of describing the program stored in the recording medium is not limited to the processing performed in chronological order according to the described order, but is not necessarily performed in chronological order. It also includes processes that are executed individually.

なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。   The embodiment of the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the gist of the present invention.

本発明を適用したパーソナルコンピュータの一実施の形態の構成を示すブロック図である。It is a block diagram which shows the structure of one Embodiment of the personal computer to which this invention is applied. 図1のパーソナルコンピュータによる、データ送信の処理を説明するフローチャートである。3 is a flowchart for explaining data transmission processing by the personal computer of FIG. 1. 図1のパーソナルコンピュータによる、TOE選択の処理の詳細を説明するフローチャートである。3 is a flowchart for explaining details of processing for TOE selection by the personal computer of FIG. 1. 図1のパーソナルコンピュータによる、TCP/IPの処理の詳細を説明するフローチャートである。3 is a flowchart for explaining details of TCP / IP processing by the personal computer of FIG. 1. 本発明を適用したパーソナルコンピュータの一実施の形態の他の構成を示すブロック図である。It is a block diagram which shows the other structure of one Embodiment of the personal computer to which this invention is applied. 図5のパーソナルコンピュータによる、データ送信の処理を説明するフローチャートである。It is a flowchart explaining the process of data transmission by the personal computer of FIG. 図5のパーソナルコンピュータによる、TOE選択の処理の詳細を説明するフローチャートである。6 is a flowchart for explaining details of processing for TOE selection by the personal computer of FIG. 5. パーソナルコンピュータの構成を説明するブロック図である。It is a block diagram explaining the structure of a personal computer.

符号の説明Explanation of symbols

1 パーソナルコンピュータ, 11 アプリケーション部, 12 標準コマンドインターフェース部, 13 TOE選択処理部, 14 通信処理部, 21−1乃至21−N TOE, 22 TCP/IP処理, 51 パーソナルコンピュータ, 61 TOE選択処理部, 111 TOE選択処理部, 112 ROM, 113 RAM, 118 記録部, 119 通信部, 120 ドライブ, 121 リムーバブルメディア   DESCRIPTION OF SYMBOLS 1 Personal computer, 11 Application part, 12 Standard command interface part, 13 TOE selection processing part, 14 Communication processing part, 21-1 thru | or 21-N TOE, 22 TCP / IP processing, 51 Personal computer, 61 TOE selection processing part, 111 TOE selection processing unit, 112 ROM, 113 RAM, 118 recording unit, 119 communication unit, 120 drives, 121 removable media

Claims (9)

ネットワークを介して、通信を行う情報処理装置において、
ユーザによるアプリケーションプログラムへの操作に応じてコマンドを発行する発行手段と、
発行された前記コマンドに基づいて、ネットワークプロトコルスタックに関する通信処理を行う割り当て先を選択する選択手段と、
前記割り当て先の選択結果に応じて、前記通信処理を行う通信処理手段と
を備える情報処理装置。
In an information processing apparatus that performs communication via a network,
Issuing means for issuing commands in response to user operations on application programs;
Selection means for selecting an assignment destination for performing communication processing related to the network protocol stack based on the issued command;
An information processing apparatus comprising: communication processing means for performing the communication processing according to the selection result of the assignment destination.
前記選択手段は、インクルードファイルによって提供され、前記アプリケーションプログラムによって呼び出されるAPI(Application Program Interface)により制御される
請求項1の情報処理装置。
The information processing apparatus according to claim 1, wherein the selection unit is controlled by an API (Application Program Interface) provided by an include file and called by the application program.
前記通信処理手段は、
前記通信処理をハードウェアにより行う第1の処理手段と、
前記通信処理をソフトウェアにより行う第2の処理手段と
を備える請求項1の情報処理装置。
The communication processing means includes
First processing means for performing the communication processing by hardware;
The information processing apparatus according to claim 1, further comprising: a second processing unit that performs the communication processing by software.
前記発行手段は、前記コマンドの引数として、前記第1の処理手段に対して、前記通信処理を行わせることを指示することを示す値が付加されたコマンドを発行し、
前記選択手段は、発行された前記コマンドに基づいて、前記第1の処理手段が前記通信処理を行っていない場合、前記第1の処理手段に前記通信処理を割り当て、それに対して、前記第1の処理手段が前記通信処理を既に行っている場合、前記第2の処理手段に前記通信処理を割り当てる
請求項3の情報処理装置。
The issuing means issues a command with a value added to instruct the first processing means to perform the communication processing as an argument of the command,
The selecting means assigns the communication process to the first processing means when the first processing means is not performing the communication processing based on the issued command, and the first processing means The information processing apparatus according to claim 3, wherein when the processing means has already performed the communication process, the communication process is assigned to the second processing means.
前記選択手段は、発行された前記コマンドに基づいて、前記第1の処理手段に前記通信処理を割り当てるか否かを示す設定情報を読み出し、読み出した前記設定情報が前記第1の処理手段に前記通信処理を割り当てることを示している場合、前記第1の処理手段に前記通信処理を割り当て、それに対して、前記設定情報が前記第1の処理手段に前記通信処理を割り当てないことを示している場合、前記第2の処理手段に前記通信処理を割り当てる
請求項3の情報処理装置。
The selection means reads setting information indicating whether to assign the communication process to the first processing means based on the issued command, and the read setting information is sent to the first processing means. If the communication process is assigned, the communication process is assigned to the first processing means, whereas the setting information indicates that the communication process is not assigned to the first processing means. The information processing apparatus according to claim 3, wherein the communication process is assigned to the second processing unit.
前記選択手段は、さらに、前記第1の処理手段が前記通信処理を行っていない場合、前記第1の処理手段に前記通信処理を割り当て、それに対して、前記第1の処理手段が既に前記通信処理を行っている場合、前記第2の処理手段に前記通信処理を割り当てる
請求項5の情報処理装置。
The selecting means further assigns the communication processing to the first processing means when the first processing means is not performing the communication processing, whereas the first processing means has already assigned the communication processing. The information processing apparatus according to claim 5, wherein when processing is performed, the communication processing is assigned to the second processing means.
前記ネットワークプロトコルスタックは、TCP/IP(Transmission Control Protocol/Internet Protocol)である
請求項1の情報処理装置。
The information processing apparatus according to claim 1, wherein the network protocol stack is TCP / IP (Transmission Control Protocol / Internet Protocol).
ネットワークを介して、通信を行う情報処理装置の情報処理方法において、
ユーザによるアプリケーションプログラムへの操作に応じてコマンドを発行する発行ステップと、
発行された前記コマンドに基づいて、ネットワークプロトコルスタックに関する通信処理を行う割り当て先を選択する選択ステップと、
前記割り当て先の選択結果に応じて、前記通信処理を行う通信処理ステップと
を含む情報処理方法。
In an information processing method of an information processing apparatus that performs communication via a network,
An issuing step for issuing a command in response to an operation to the application program by the user;
Based on the issued command, a selection step of selecting an assignment destination for performing communication processing related to the network protocol stack;
A communication processing step of performing the communication processing according to a selection result of the assignment destination.
ネットワークを介して、通信を行う処理を、コンピュータに行わせるプログラムにおいて、
ユーザによるアプリケーションプログラムへの操作に応じてコマンドを発行する発行ステップと、
発行された前記コマンドに基づいて、ネットワークプロトコルスタックに関する通信処理を行う割り当て先を選択する選択ステップと、
前記割り当て先の選択結果に応じて、前記通信処理を行う通信処理ステップと
を含むプログラム。
In a program that causes a computer to perform a process of communicating via a network,
An issuing step for issuing a command in response to an operation to the application program by the user;
Based on the issued command, a selection step of selecting an assignment destination for performing communication processing related to the network protocol stack;
A communication processing step for performing the communication processing according to a selection result of the allocation destination.
JP2006075516A 2006-03-17 2006-03-17 Information processor and information processing method, and program Withdrawn JP2007249851A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006075516A JP2007249851A (en) 2006-03-17 2006-03-17 Information processor and information processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006075516A JP2007249851A (en) 2006-03-17 2006-03-17 Information processor and information processing method, and program

Publications (1)

Publication Number Publication Date
JP2007249851A true JP2007249851A (en) 2007-09-27

Family

ID=38594030

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006075516A Withdrawn JP2007249851A (en) 2006-03-17 2006-03-17 Information processor and information processing method, and program

Country Status (1)

Country Link
JP (1) JP2007249851A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008312094A (en) * 2007-06-18 2008-12-25 Ricoh Co Ltd Communication apparatus and program
JP2011013892A (en) * 2009-07-01 2011-01-20 Canon Inc Data processing apparatus, control method for data processing apparatus and program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008312094A (en) * 2007-06-18 2008-12-25 Ricoh Co Ltd Communication apparatus and program
JP2011013892A (en) * 2009-07-01 2011-01-20 Canon Inc Data processing apparatus, control method for data processing apparatus and program

Similar Documents

Publication Publication Date Title
US20180210752A1 (en) Accelerator virtualization method and apparatus, and centralized resource manager
JP4235460B2 (en) Network device management method, network device management program, and network control apparatus
EP2675132A1 (en) System for dynamic stream management in audio video bridged networks
US10084882B2 (en) Method for processing requests and server device processing requests
KR20130140785A (en) Wireless network interface with infrastructure and direct modes
JP2007135207A (en) System and method of offering high reliable wireless home use media distribution
EP1517491A2 (en) Network device, system and method
US8504694B2 (en) Remote content classification and transmission using multiple transport channels
JP4506676B2 (en) Information processing apparatus and method, and program
JP5084372B2 (en) Data processing apparatus and data processing apparatus control method
JP2005085238A (en) Aggregate information acquiring method, equipment searching method, equipment controlling device, equipment controlling method and program
JP4363404B2 (en) Receiving apparatus and method, and program
US10284481B2 (en) Communication device, communication method, and storage medium
JP2006048725A (en) Image processor, method for controlling image processor and storage medium
US6898654B1 (en) Method and system for managing bandwidth on a master-slave bus
JP2007249851A (en) Information processor and information processing method, and program
JPWO2007123025A1 (en) Technology to control communication with external devices using a proxy server
JP2006178654A (en) Information processor, and method and program for processing image formation request
JP2007201884A (en) Information processing apparatus and method, as well as program
JP2008312204A (en) Image processing device, control method thereof, and storage medium
JP4398192B2 (en) Data processing method and data processing system
WO2020261514A1 (en) Assignment control device, assignment control method, and assignment control program
JP2010041117A (en) Control method of communication system and receiving device
JP2009055134A (en) Communication control unit, communication control method, and communication control program
JP2009116386A (en) Information processor, method and program

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20090602