JP2006285903A - Method of avoiding duplication of communication port - Google Patents

Method of avoiding duplication of communication port Download PDF

Info

Publication number
JP2006285903A
JP2006285903A JP2005108573A JP2005108573A JP2006285903A JP 2006285903 A JP2006285903 A JP 2006285903A JP 2005108573 A JP2005108573 A JP 2005108573A JP 2005108573 A JP2005108573 A JP 2005108573A JP 2006285903 A JP2006285903 A JP 2006285903A
Authority
JP
Japan
Prior art keywords
network device
port information
network
transmission request
request data
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
JP2005108573A
Other languages
Japanese (ja)
Inventor
Masamichi Tanji
雅道 丹治
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.)
Canon Inc
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 JP2005108573A priority Critical patent/JP2006285903A/en
Publication of JP2006285903A publication Critical patent/JP2006285903A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To prevent data from being simultaneously transmitted on a network relating to a duplicated port number by a protocol stack provided to a first network device and a protocol stack provided to a second network device. <P>SOLUTION: When data for requesting transmission is transferred to the second network device from the first network device via a connection interface, the data for requesting transmission is discarded and transmission error is notified to a transmission requesting source if a used port number of the data for requesting transmission and a port number used by a second network device are duplicated. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、第一のネットワーク装置と接続インターフェイスを介して接続可能な第二のネットワーク装置において、前記第一のネットワーク装置に備えられたプロトコルスタックと前記第二のネットワーク装置に備えられたプロトコルスタックとの間で送信時に使用する通信ポートに重複が生じていないかを判断し、重複が生じていた場合にはその重複を回避する方法に関するものである。   The present invention provides a second network device connectable to a first network device via a connection interface, a protocol stack provided in the first network device and a protocol stack provided in the second network device. It is related to a method for determining whether or not duplication has occurred in communication ports used at the time of transmission, and for avoiding duplication.

ビジネス・オフィス環境をサポートするためのネットワークなどの大規模ネットワーク環境においては、しばしば、ネットワーク機能を備えた印刷装置など、異なる機能能力を有する、異なるタイプおよび世代の多数のネットワーク・デバイスが含まれることがある。新しい技術が出現し、改善された機能性が新しいモデルまたは世代のネットワーク・デバイスにおいて実施されるにつれて、ネットワーク内で使用可能な機能は、どのネットワーク・デバイスが利用されているかに応じて大幅に変化する可能性がある。たとえば、ネットワーク環境におけるいくつかのより新しい印刷装置はセキュア・プリンティングをサポートすることができるのに対して、そのネットワーク環境に存在するより古い印刷装置はセキュア・プリンティングをサポートしていないという状態が生じ得る。   Large network environments, such as networks to support business office environments, often include a large number of different types and generations of network devices with different functional capabilities, such as printing devices with network capabilities There is. As new technologies emerge and improved functionality is implemented in new models or generations of network devices, the functionality available in the network varies significantly depending on which network device is being utilized. there's a possibility that. For example, some newer printing devices in a network environment can support secure printing, while older printing devices that exist in the network environment do not support secure printing. obtain.

新しい技術および改良をネットワーク環境全体に渡って実施し、それにより同じ機能能力のセットを、すべてのネットワーク・ユーザがすべてのネットワーク・デバイスについて使用可能にすることが、一般には望ましい。さもないと、一部のネットワーク・ユーザに割り当てられたネットワーク・デバイスが他のより新しいネットワーク・デバイスによってサポートされた新しい機能性をサポートしないような場合には、そのネットワーク・ユーザはセキュア・プリンティングおよび電子メール印刷などの新しい有用な機能を利用できなくなるであろう。   It is generally desirable to implement new technologies and improvements throughout the network environment, thereby making the same set of capabilities available to all network users for all network devices. Otherwise, if a network device assigned to some network user does not support the new functionality supported by other newer network devices, the network user may New useful features such as email printing will not be available.

この問題に対する1つの問題解決手法は、単純にすべてのレガシー・ネットワーク・デバイスを、所望の新しい機能能力を有する新しいネットワーク・デバイスで置き換えることである。しかしながら、この問題解決手法を実施する場合の労力および費用は多大であり、新しい機能能力を必要とする新しいエンタープライズ・アプリケーションが頻繁に実施されるような場合には現実的な方法ではない。   One problem-solving approach to this problem is simply to replace all legacy network devices with new network devices with the desired new functional capabilities. However, the effort and cost of implementing this problem-solving approach is tremendous and not practical when new enterprise applications that require new functional capabilities are frequently implemented.

上記問題に対するもう1つの問題解決手法は、新しいファームウェアを各レガシー・ネットワーク・デバイスにダウンロードすることによってレガシー・ネットワーク・デバイスを修正することである。しかし、この問題解決手法においても、ネットワーク・アドミニストレータまたはサービス担当者が物理的に各レガシー・ネットワーク・デバイスにアクセスし、次いで適切なバージョンのファームウェアをダウンロードして、そのレガシー・デバイスが他のネットワーク・デバイスと整合の取れた機能性をサポートするようにすることが必要であり、著しい労力が要求されてしまう。また、多くの場合、レガシー・デバイスにハードウェアおよびデザイン上の制限があるため、新しい機能性を実施するために新しいバージョンのファームウェアをレガシー・デバイスにダウンロードすることは可能ではない。   Another problem-solving approach to the above problem is to modify the legacy network device by downloading new firmware to each legacy network device. However, in this problem-solving approach, a network administrator or service representative can physically access each legacy network device, then download the appropriate version of firmware, and the legacy device can It is necessary to support functionality that is consistent with the device, which requires significant effort. Also, in many cases, because legacy devices have hardware and design limitations, it is not possible to download new versions of firmware to legacy devices to implement new functionality.

この問題に対するその他の問題解決手法として、接続インターフェイスを介してレガシー・ネットワーク・デバイスと接続可能な、レガシー・ネットワーク・デバイスのための所望の追加機能性をサポートするネットワーク・モジュールを用いるという手法が考えられる。   Another possible solution to this problem is to use a network module that supports the desired additional functionality for the legacy network device that can be connected to the legacy network device through the connection interface. It is done.

上記ネットワーク・モジュールの具体例のひとつとして、接続インターフェイスを介して印刷装置に装着可能な、インテリジェント型ネットワークカードモジュールが挙げられる(例えば、特許文献1)。   As a specific example of the network module, there is an intelligent network card module that can be attached to a printing apparatus via a connection interface (for example, Patent Document 1).

この場合、印刷装置本体とネットワークカードモジュールは個々にCPUを持ったインテリジェントな形態であり、通常ネットワークカードモジュール側にネットワーク経由での各種プリントサービスの統括制御を行うプリントサーバ機能を備えており、印刷装置とネットワークカードモジュールは接続インターフェイスを介して通信を行ない所望のサービスを実装している。   In this case, the printer main unit and network card module are intelligent forms with individual CPUs, and the network card module usually has a print server function that performs overall control of various print services via the network. The device and the network card module communicate with each other via a connection interface to implement a desired service.

このことは逆に負荷の重い機能をネットワークカードモジュールに追い出すことが可能となり、相対的に印刷装置本体のCPUや周辺パフォーマンスを下げることが可能となり、印刷装置本体のコスト削減をもたらしている。
特開2002-259075号公報
On the contrary, this makes it possible to drive out heavy functions to the network card module, relatively lowering the CPU and peripheral performance of the printing apparatus body, and reducing the cost of the printing apparatus body.
Japanese Patent Laid-Open No. 2002-259075

上記ネットワークカードモジュールでは、ネットワークカードモジュールに備えられたプロトコルスタックと印刷装置に備えられたプロトコルスタックが、それぞれ非同期にネットワークカードモジュールに備えられた物理インターフェイスを介してネットワーク上に存在するホストコンピュータ等のクライアントとTCP/IPやその他の通信プロトコルを使用して通信を行う。これを可能にするためネットワークカードモジュールは、物理インターフェイスよりデータを受信した際に、その受信データをネットワークカードモジュールに備えられたプロトコルスタックと印刷装置に備えられたプロトコルスタックのいずれか適切な方に振り分ける機能を有する。前記振り分け機能は、ネットワークカードモジュールに備えられたプロトコルスタックと物理インターフェイスを制御するドライバとの間の層に位置し、具体的には以下の処理を行う。まず、物理インターフェイスのドライバより受信データを渡されると、その受信データのヘッダ情報を先読みして、送信先ネットワーク・アドレスや送信先ポート番号などの送信先ネットワーク情報を取得する。次に、ネットワークカードモジュールに備えられたプロトコルスタックがオープン中であるソケットのソケット情報を取得し、前記送信先ネットワーク情報と一致するネットワーク・アドレスやポート番号などのネットワーク情報でオープン中のソケットが存在するかどうか検索する。検索の結果、一致するソケットが存在する場合は、その受信データをネットワーク・モジュール自身に備えられているプロトコルスタックに振り分ける。一致するソケットが存在しない場合には、受信データを接続インターフェイスを介して印刷装置に転送する。   In the network card module, a protocol stack provided in the network card module and a protocol stack provided in the printing apparatus are asynchronously connected to each other via a physical interface provided in the network card module, such as a host computer. Communicate with clients using TCP / IP or other communication protocols. To enable this, when the network card module receives data from the physical interface, the received data is sent to the appropriate protocol stack provided in the network card module or the protocol stack provided in the printing device. Has a function of sorting. The distribution function is located in a layer between a protocol stack provided in the network card module and a driver that controls the physical interface, and specifically performs the following processing. First, when received data is passed from the driver of the physical interface, the header information of the received data is prefetched to acquire destination network information such as a destination network address and a destination port number. Next, the socket information of the socket in which the protocol stack provided in the network card module is open is acquired, and there is an open socket with network information such as the network address and port number that matches the destination network information. Search if you want to. If there is a matching socket as a result of the search, the received data is distributed to the protocol stack provided in the network module itself. If there is no matching socket, the received data is transferred to the printing apparatus via the connection interface.

以上の処理を行う前記振り分け機能では、ネットワークカードモジュールに備えられたプロトコルスタックと印刷装置に備えられたプロトコルスタックとの間で通信ポート番号の重複が生じている場合には、重複ポート番号に対する受信データは常にネットワークカードモジュールに備えられたプロトコルスタックに振り分ける。すなわち、受信に関して常にネットワークカードモジュールに備えられたプロトコルスタックを優先させたシステムを実現している。   In the distribution function for performing the above processing, if there is a duplication of communication port numbers between the protocol stack provided in the network card module and the protocol stack provided in the printing apparatus, reception for the duplicate port number is performed. Data is always distributed to the protocol stack provided in the network card module. That is, a system that always prioritizes the protocol stack provided in the network card module for reception is realized.

しかしながら、ネットワークカードモジュールに備えられたプロトコルスタックと印刷装置に備えられたプロトコルスタックが重複ポート番号に対して同時にデータ送信を行った場合、どちらのデータもネットワーク上に送出されてしまうという問題点が考えられる。また、印刷装置に備えられたプロトコルスタックから重複ポート番号を使用して送信されたデータに対する応答データが前記重複ポート番号に対して来た場合、この応答データは前記振り分け機能によってネットワークカードモジュールに備えられたプロトコルスタックに振り分けられる。そのため、例えばTCP/IPプロトコルにおけるユーザデータグラムプロトコル(UDP)などのコネクションレス型プロトコルを使用した通信の場合、ネットワークカードモジュールに実装されたアプリケーション・プログラムに不要な受信データが渡されることとなる。また、伝送制御プロトコル(TCP)などのコネクション型プロトコルを使用した通信の場合であっても、ネットワークカードモジュールに備えられたプロトコルスタックに不要なデータが渡されることとなる。いずれも場合であっても、ネットワークカードモジュールで不要なデータの受信処理による作業負荷が増大する可能性が考えられる。   However, when the protocol stack provided in the network card module and the protocol stack provided in the printing apparatus simultaneously transmit data to the duplicate port number, both data are transmitted over the network. Conceivable. Further, when response data for data transmitted using a duplicate port number from the protocol stack provided in the printing apparatus comes to the duplicate port number, the response data is provided in the network card module by the distribution function. Assigned to the designated protocol stack. Therefore, for example, in the case of communication using a connectionless protocol such as the user datagram protocol (UDP) in the TCP / IP protocol, unnecessary received data is passed to the application program installed in the network card module. Even in the case of communication using a connection-type protocol such as the transmission control protocol (TCP), unnecessary data is passed to the protocol stack provided in the network card module. In either case, there is a possibility that the work load due to reception processing of unnecessary data in the network card module increases.

本発明は上記問題点に鑑みてなされたものであり、
第一のネットワーク装置と接続インターフェイスを介して接続可能な第二のネットワーク装置であって、
前記第一のネットワーク装置から前記接続インターフェイスを介して転送された送信依頼データもしくは前記第二のネットワーク装置に備えられたプロトコルスタックから転送された送信依頼データを、前記第二のネットワーク装置に備えられた物理インターフェイスよりネットワークに送信する送信依頼データ送信手段と、
前記物理インターフェイスより受信した受信データを前記第一のネットワーク装置と前記第二のネットワーク装置に備えられたプロトコルスタックのいずれかもしくは両方に転送する受信データ転送手段と、
を備えることを特徴とする第二のネットワーク装置において、
前記第二のネットワーク装置に備えられたプロトコルスタックが現在使用中であるポート情報を記憶するポート情報記憶手段と、
前記第一のネットワーク装置より前記接続インターフェイスを介して送信依頼データが転送された際に、前記送信依頼データから送信元ポート情報を取得する送信元ポート情報取得手段と、
前記送信元ポート情報取得手段で得られた送信元ポート情報が前記ポート情報記憶手段で記憶しているポート情報と重複していないかどうかを判断するポート情報重複判断手段と、
前記ポート情報重複判断手段でポート情報の重複が検出された場合に、前記送信依頼データを破棄し、送信依頼元に送信エラーを通知する手段と、
から構成されるポート情報重複回避方法である。
The present invention has been made in view of the above problems,
A second network device connectable to the first network device via a connection interface,
Transmission request data transferred from the first network device via the connection interface or transmission request data transferred from a protocol stack provided in the second network device is provided in the second network device. Transmission request data transmission means for transmitting to the network from the physical interface,
Received data transfer means for transferring received data received from the physical interface to either or both of the protocol stacks provided in the first network device and the second network device;
In the second network device, comprising:
Port information storage means for storing port information currently used by the protocol stack provided in the second network device;
Source port information acquisition means for acquiring source port information from the transmission request data when transmission request data is transferred from the first network device via the connection interface;
Port information duplication judgment means for judging whether or not the transmission source port information obtained by the transmission source port information acquisition means is duplicated with the port information stored in the port information storage means;
Means for discarding the transmission request data and notifying a transmission request source of a transmission error when duplication of port information is detected by the port information duplication determination means;
Is a method for avoiding duplication of port information.

本発明によれば、前記第一のネットワーク装置より前記接続インターフェイスを介して送信依頼データが前記第二のネットワーク装置に転送された際に、前記送信依頼データの使用ポート番号が前記第二のネットワーク装置の使用するポート番号と重複していた場合には、前記送信依頼データを破棄し、送信依頼元へ送信エラーを通知することにより、前記第一のネットワーク装置に備えられたプロトコルスタックと前記第二のネットワーク装置に備えられたプロトコルスタックが重複ポート番号に対して同時にデータをネットワーク上に送出してしまうことを防ぐことができる。またそのため、前記第一のネットワーク装置に備えられたプロトコルスタックから重複ポート番号を使用して送信されたデータに対する応答データが前記重複ポート番号に対して来ることが無くなり、前記応答データが前記第二のネットワーク装置に備えられた受信データの振り分け機能によって前記第二のネットワーク装置に備えられたプロトコルスタックに振り分けられることも無くなる。結果として、前記第二のネットワーク装置における不要なデータの受信処理に要する作業負荷を軽減させることが可能となる。   According to the present invention, when transmission request data is transferred from the first network device to the second network device via the connection interface, the use port number of the transmission request data is set to the second network. If the port number used by the device is duplicated, the transmission request data is discarded, and a transmission error is notified to the transmission request source, whereby the protocol stack provided in the first network device and the first It is possible to prevent the protocol stack provided in the second network device from simultaneously sending data on the network to the duplicate port number. For this reason, response data for data transmitted using a duplicate port number from the protocol stack provided in the first network device does not come to the duplicate port number, and the response data is not sent to the second network device. The received data distribution function provided in the network device is not distributed to the protocol stack provided in the second network device. As a result, it is possible to reduce the work load required for unnecessary data reception processing in the second network device.

(実施例1)
図1は、本発明の実施形態に関わる印刷システムのハードウェア構成を説明するブロック図である。1000はプリンタで、内部で大きくネットワークプリンタサーバ1500とプリンタコントローラ1600からなる異なる制御系を司る機器で構成されている。ネットワークプリントサーバ1500において、1はネットワークプリントサーバ用CPUで、書き換え可能なFlashROM3に記憶された制御プログラムに基づいてシステムバス4に接続されるネットワークコントローラ(LANC5)を介してローカルエリアネットワーク(LAN2000)に接続されたホストコンピュータ等の複数の外部装置(不図示)と所定のネットワーク通信プロトコルを用いて、前記外部装置から送られる印刷データやプリンタ制御命令等の各種データ送受信要求を統括的に制御し、拡張インターフェイスコントローラ(EXPC7)を介して接続されるプリンタコントローラ1600に対して適切なデータ転送制御を行う。またFlashROM3には、図3,4のフローチャートで示されるようなポート情報重複判断・重複回避のプログラムも記憶されている。
Example 1
FIG. 1 is a block diagram illustrating a hardware configuration of a printing system according to an embodiment of the present invention. Reference numeral 1000 denotes a printer, which is mainly composed of devices that control different control systems, including a network printer server 1500 and a printer controller 1600. In the network print server 1500, 1 is a CPU for the network print server, which is connected to the local area network (LAN2000) via a network controller (LANC5) connected to the system bus 4 based on a control program stored in the rewritable Flash ROM 3. By using a plurality of external devices (not shown) such as connected host computers and a predetermined network communication protocol, it collectively controls various data transmission / reception requests such as print data and printer control commands sent from the external device, Appropriate data transfer control is performed for the printer controller 1600 connected via the expansion interface controller (EXPC7). FlashROM 3 also stores a port information duplication determination / duplication avoidance program as shown in the flowcharts of FIGS.

RAM2はCPU1の主メモリ、ワークエリア等の一時記憶領域として用いられる。   The RAM 2 is used as a temporary storage area such as the main memory and work area of the CPU 1.

LED6はネットワークプリントサーバの動作状態を示す表示部として用いられており、例えばネットワークコントローラ(LANC5)とローカルエリアネットワーク(LAN2000)の電気的な接続状態(LINK)やネットワーク通信モード(10Baseや100Base、全二重、半二重)等の各種動作状態をLEDの点滅パターンや色で示すことが可能となっている。   The LED 6 is used as a display unit that shows the operating status of the network print server.For example, the electrical connection status (LINK) between the network controller (LANC5) and the local area network (LAN2000) and the network communication mode (10Base and 100Base, all Various operating states such as double and half duplex can be indicated by the blinking pattern and color of the LED.

さらにネットワークプリントサーバ1500とプリンタコントローラ1600を繋ぐ拡張インターフェイス17は、図示しないコネクタで構成されておりネットワークプリントサーバ1500のみが着脱し、同じ構成を持つ別のプリンタ1000にネットワークプリントサーバ1500を装着することも可能な構成となっている。   Furthermore, the expansion interface 17 that connects the network print server 1500 and the printer controller 1600 is configured with a connector (not shown). Only the network print server 1500 can be attached and detached, and the network print server 1500 can be attached to another printer 1000 having the same configuration. Is also possible.

プリンタコントローラ1600において、8はプリンタコントローラ用CPUで、ROM9に記憶された制御プログラム等あるいはディスクコントローラ(DKC15)を介して接続された外部メモリ10に記憶された制御プログラムやリソースデータ(資源情報)等に基づいてシステムバス11に接続される各種デバイスとのアクセスを統括的に制御し、拡張インターフェイスコントローラ(EXPC13)を介して接続されるネットワークプリントサーバ1500から受信される印刷データを基にラスタコントローラ12によって出力画像情報を生成し、プリントエンジン16に対して画像信号を出力する。   In the printer controller 1600, 8 is a CPU for the printer controller, such as a control program stored in the ROM 9, or a control program or resource data (resource information) stored in the external memory 10 connected via the disk controller (DKC15). And the raster controller 12 based on print data received from the network print server 1500 connected via the expansion interface controller (EXPC 13). To generate output image information and output an image signal to the print engine 16.

14はCPU8の主メモリ、ワークエリア等として機能するRAMで、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。   Reference numeral 14 denotes a RAM that functions as a main memory, work area, and the like for the CPU 8, and is configured so that the memory capacity can be expanded by an optional RAM connected to an expansion port (not shown).

18は操作パネル(操作部)でプリンタ1000の動作モード等の設定や印刷データの取り消し等の操作を行うためのボタンおよびプリンタ1000の動作状態を示す液晶パネルやLED等の表示部が配されている。   Reference numeral 18 denotes an operation panel (operation unit) with buttons for performing operations such as setting the operation mode of the printer 1000 and canceling print data, and a display unit such as a liquid crystal panel and an LED indicating the operation state of the printer 1000. Yes.

なお、本図で示したプリンタエンジン16は既知の印刷技術を利用するものであり、好適な実施系として例えば電子写真方式(レーザービーム方式)やインクジェット方式、昇華(熱転写)方式等が挙げられる。   The printer engine 16 shown in the figure uses a known printing technique, and examples of suitable implementation systems include an electrophotographic system (laser beam system), an inkjet system, and a sublimation (thermal transfer) system.

図2は、本発明の実施形態に好適な印刷システムにおけるプリンタ1000内の制御機器であるネットワークプリントサーバ1500およびプリンタコントローラ1600の各記憶デバイスに記憶された制御プログラム内のソフトウェア構成を説明するブロック図である。   FIG. 2 is a block diagram illustrating a software configuration in a control program stored in each storage device of the network print server 1500 and the printer controller 1600 that are control devices in the printer 1000 in the printing system suitable for the embodiment of the present invention. It is.

なお上記各制御プログラムは各制御機器のCPUによってプログラムが解析され処理される。   Each control program is analyzed and processed by the CPU of each control device.

1501はネットワークプリントサーバ1500の基本的なデータの入出力制御を統括するオペレーティングシステムである。さらに前記オペレーティングシステム1501内にはプログラム/データ記憶部1509との入出力制御を行うファイルシステム1505、プリンタコントローラ1600と拡張インターフェイス17を介して通信制御を行う拡張インターフェイスドライバ1506、ローカルエリアネットワーク(LAN2000)の通信媒体を介して不図示のホストコンピュータ等の外部装置と通信を行うネットワークインターフェイスドライバ1507、TCP/IPプロトコルでの通信制御を行うプロトコルスタック1508、中間モジュール1510を内包している。   An operating system 1501 controls basic data input / output control of the network print server 1500. Further, the operating system 1501 includes a file system 1505 for controlling input / output with the program / data storage unit 1509, an expansion interface driver 1506 for controlling communication with the printer controller 1600 and the expansion interface 17, and a local area network (LAN2000). A network interface driver 1507 that communicates with an external device such as a host computer (not shown) via the communication medium, a protocol stack 1508 that performs communication control using the TCP / IP protocol, and an intermediate module 1510 are included.

中間モジュール1510は、プロトコルスタック1508と拡張インターフェイスドライバ1506、ネットワークインターフェイスドライバ1507の中間に位置し、プロトコルスタック1508から渡された送信依頼データ、もしくは、拡張インターフェイス17及び拡張インターフェイスドライバ1506を介してプリンタコントローラ1600から渡された送信依頼データを、ネットワークインターフェイスドライバ1507より送信する手段と、ネットワークインターフェイスドライバ1507より渡された受信データをプロトコルスタック1508とプリンタコントローラ1600のいずれかもしくは両方に振り分けるための振り分け先判断手段と、判断結果に基づいて受信データをプロトコルスタック1508とプリンタコントローラ1600のいずれかもしくは両方に振り分ける手段とを備える。また、中間モジュール1510は、本発明の主題である送信ポート番号の重複検出及び重複回避手段を更に備えている。   The intermediate module 1510 is located between the protocol stack 1508, the extension interface driver 1506, and the network interface driver 1507, and the transmission request data passed from the protocol stack 1508 or the printer controller via the extension interface 17 and the extension interface driver 1506. Sending request data passed from the 1600 is sent from the network interface driver 1507, and the receiving destination judgment for sorting the received data passed from the network interface driver 1507 to one or both of the protocol stack 1508 and the printer controller 1600 And means for distributing received data to one or both of the protocol stack 1508 and the printer controller 1600 based on the determination result. Further, the intermediate module 1510 further includes a transmission port number duplication detection and duplication avoidance means that is the subject of the present invention.

1502はアプリケーションプログラムインターフェイス(API)であり、ネットワークプリントサーバ1500で動作するユーザアプリケーション1503やプリンタ1000やユーザアプリケーションの登録・管理を行う管理アプリケーション等のアプリケーションプログラムに対して前記オペレーティングシステムが備える各種機能を提供する。また前記アプリケーションプログラムインターフェイス1502で提供される機能は、印刷データの送受信機能を提供するデータ転送API、ビットマップ画像や表示メッセージ等のリソースデータの入出力制御を行うリソース制御API、プリンタ1000の再起動や設定値の初期化や設定等の制御を行うプリンタ制御API、印刷ジョブの取り消しや再印刷指示などを制御するジョブ制御API、ネットワークプリントサーバ1500の再起動や設定値の初期化や設定、およびアプリケーションプログラムの起動、登録、削除を行うプリントサーバ制御APIを備える。   Reference numeral 1502 denotes an application program interface (API), which provides various functions of the operating system for application programs such as a user application 1503 that runs on the network print server 1500, a printer 1000, and a management application that registers and manages user applications. provide. The functions provided by the application program interface 1502 include a data transfer API that provides a print data transmission / reception function, a resource control API that controls input / output of resource data such as bitmap images and display messages, and a restart of the printer 1000. Printer control API that controls settings and initialization of settings and settings, job control API that controls print job cancellation and reprint instructions, restarting network print server 1500, initialization and setting of settings, and A print server control API for starting, registering, and deleting application programs is provided.

1601はプリンタコントローラ1600の各種処理制御を統括するオペレーティングシステムであり、内部にプリントエンジンとの通信制御を行うプリントエンジン制御部1603およびネットワークプリントサーバ1500から参照されるビットマップ画像やエラーメッセージ等の機種依存リソースおよびネットワークプリントサーバ上で動作する機種依存アプリケーションプログラム等を記憶する機種依存リソース/プログラム記憶部との入出力制御を行うファイルシステム1604、TCP/IPプロトコルでの通信制御を行うプロトコルスタック1605を内包している。   1601 is an operating system that controls various processing controls of the printer controller 1600. The print engine control unit 1603 that performs communication control with the print engine and models such as bitmap images and error messages that are referred to from the network print server 1500 A file system 1604 that performs input / output control with model-dependent resources / program storage units that store dependent resources and model-dependent application programs that run on the network print server, and a protocol stack 1605 that performs communication control using the TCP / IP protocol Contains.

1602は拡張インターフェイス制御部であり、拡張インターフェイス17を介してネットワークプリントサーバ1500との通信制御を行う。さらに前記拡張インターフェイス制御部は、制御種別毎に印刷データの入出力を制御するデータ転送論理インターフェイス、機種依存リソース/プログラム記憶部9に記憶された各種データの入出力を制御するリソース制御論理インターフェイス、プリンタ1000の再起動や設定値の初期化や設定等の制御を行うプリンタ制御論理インターフェイス、印刷ジョブの取り消しや再印刷指示などを制御するジョブ制御論理インターフェイスを備えており、各論理インターフェイスを介してネットワークプリントサーバ1500から要求された命令をオペレーティングシステム1601に対して転送し、その処理結果をネットワークプリントサーバ1500に対して返信する。   Reference numeral 1602 denotes an expansion interface control unit that controls communication with the network print server 1500 via the expansion interface 17. The extended interface control unit further includes a data transfer logical interface for controlling input / output of print data for each control type, a resource control logical interface for controlling input / output of various data stored in the model-dependent resource / program storage unit 9, It has a printer control logical interface that controls the restart of the printer 1000, initialization of setting values, settings, etc., and a job control logical interface that controls cancellation of print jobs and reprint instructions. The command requested from the network print server 1500 is transferred to the operating system 1601, and the processing result is returned to the network print server 1500.

図3は、本発明に係るネットワークプリントサーバ1500上で動作する送信ポート番号の重複検出・回避処理機能の一実施形態を示すフローチャートである。なお、S301〜S310は各処理ステップを示し、ネットワークプリントサーバ1500において、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508もしくはプリンタコントローラ1600のいずれかから送信依頼データが渡された場合の中間モジュール1510の処理フローに対応する。なお各ステップに対応する制御手順はネットワークプリントサーバ1500のFlashROM3に記憶されている。また、プリンタコントローラ使用ポートリストはプリンタコントローラ1600がデータ送信に使用しているポート番号を登録するためにネットワークプリントサーバ1500のRAM2上に確保された有限な領域である。   FIG. 3 is a flowchart showing an embodiment of the transmission port number duplication detection / avoidance processing function operating on the network print server 1500 according to the present invention. S301 to S310 indicate each processing step. In the network print server 1500, the intermediate module 1510 when the transmission request data is delivered from either the protocol stack 1508 provided in the network print server 1500 or the printer controller 1600. Corresponds to the processing flow. The control procedure corresponding to each step is stored in the Flash ROM 3 of the network print server 1500. The printer controller use port list is a finite area secured on the RAM 2 of the network print server 1500 in order to register the port numbers used by the printer controller 1600 for data transmission.

S301において、渡された送信依頼データが、プリンタコントローラ1600から拡張インターフェイス17を介して渡されたものであるかどうかを判断する。   In S301, it is determined whether or not the transmitted transmission request data has been transmitted from the printer controller 1600 via the extension interface 17.

送信依頼データがプリンタコントローラ1600から渡されたものでない場合は、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508から渡されたものであると判断し、S302に進んで、送信依頼データのヘッダ情報を読み出し、送信元ポート番号を取得する。次に、S303でプリンタコントローラ使用ポートリストを検索し、取得した送信元ポート番号と同じポート番号が登録されていないかどうかを判断する。   If the transmission request data is not passed from the printer controller 1600, it is determined that the transmission request data is passed from the protocol stack 1508 provided in the network print server 1500, and the process proceeds to S302, where the header information of the transmission request data is obtained. Read and acquire the source port number. In step S303, the printer controller use port list is searched to determine whether the same port number as the acquired transmission source port number is registered.

同じポート番号が登録されていた場合は、そのポート番号はプリンタコントローラ1600が使用中であると判断して、S304に進み、送信依頼データは破棄し、送信依頼元であるネットワークプリントサーバ1500に備えられたプロトコルスタック1508に対して送信エラーを通知した後処理を終了する。   If the same port number is registered, the printer controller 1600 determines that the port number is in use, and the process proceeds to S304, where the transmission request data is discarded and the network print server 1500 that is the transmission request source prepares. After the transmission error is notified to the protocol stack 1508, the processing is terminated.

S303において同じポート番号が登録されていない場合は、S310に進み、送信依頼データをLAN2000を介して不図示のホストコンピュータ等の外部装置に対して送信した後処理を終了する。   If the same port number is not registered in S303, the process proceeds to S310, where transmission request data is transmitted to an external device such as a host computer (not shown) via the LAN 2000, and the process is terminated.

S301で、送信依頼データがプリンタコントローラ1600から渡されたものであった場合は、S305で送信依頼データのヘッダ情報を読み出し、送信元ポート番号を取得する。   If the transmission request data is passed from the printer controller 1600 in S301, the header information of the transmission request data is read in S305 to acquire the transmission source port number.

次にS306で、プリンタコントローラ使用ポートリストを検索し、S305で取得した送信元ポート番号と同じポート番号が登録されていないかどうかを確認する。   In step S306, the printer controller use port list is searched to check whether the same port number as the transmission source port number acquired in step S305 is registered.

同じポート番号が登録されていない場合は、S307に進み、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508が使用中のソケットのソケット情報を検索して、送信元ポート番号と同じポート番号を使用中のソケットが存在していないかどうかを判断する。   If the same port number is not registered, the process proceeds to S307, and the protocol stack 1508 provided in the network print server 1500 searches the socket information of the socket being used, and is using the same port number as the source port number. Determine if there is no socket.

同じポート番号を使用中のソケットが存在していた場合は、そのポート番号はネットワークプリントサーバ1500に備えられたプロトコルスタック1508が使用中であると判断して、S308に進み、送信依頼データは破棄し、送信依頼元であるプリンタコントローラ1600に対して拡張インターフェイス17を介して送信エラーを通知した後処理を終了する。   If there is a socket using the same port number, it is determined that the protocol stack 1508 provided in the network print server 1500 is in use, and the process proceeds to S308, where the transmission request data is discarded. Then, the printer controller 1600 that is the transmission request source is notified of the transmission error via the extension interface 17, and the processing is ended.

S307において同じポート番号を使用中のソケットが存在しない場合は、S309で送信元ポート番号をプリンタコントローラ使用ポートリストに登録する。次にS310に進み、送信依頼データをLAN2000を介して不図示のホストコンピュータ等の外部装置に対して送信した後処理を終了する。   If there is no socket using the same port number in S307, the source port number is registered in the printer controller use port list in S309. In step S310, transmission request data is transmitted to an external device such as a host computer (not shown) via the LAN 2000, and the processing is terminated.

S306で、取得した送信元ポート番号と同じポート番号がプリンタコントローラ使用ポートリストに登録されていた場合は、プリンタコントローラ1600が使用中のポート番号であると判断して、S310に進み、送信依頼データをLAN2000を介して不図示のホストコンピュータ等の外部装置に対して送信した後処理を終了する。   In S306, if the same port number as the acquired transmission source port number is registered in the printer controller use port list, it is determined that the printer controller 1600 is the port number being used, and the process proceeds to S310, where the transmission request data Is transmitted to an external device such as a host computer (not shown) via the LAN 2000, and the processing is terminated.

(実施例2)
図4は、本発明に係るネットワークプリントサーバ1500上で動作する送信ポートの重複検出および重複回避処理を行う機能の第二の実施形態を示すフローチャートである。なお、S401〜S412は各処理ステップを示し、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508もしくはプリンタコントローラ1600のいずれかから送信依頼データが渡された場合の中間モジュール1510の処理フローに対応する。なお各ステップに対応する制御手順はネットワークプリントサーバ1500のFlashROM3に記憶されている。また、プリンタコントローラ使用ポートリストはプリンタコントローラ1600がデータ送信に使用しているポート番号を登録するためにネットワークプリントサーバ1500のRAM2上に確保された有限な領域である。
(Example 2)
FIG. 4 is a flowchart showing a second embodiment of a function for performing duplication detection and duplication avoidance processing of a transmission port operating on the network print server 1500 according to the present invention. S401 to S412 indicate processing steps, and correspond to the processing flow of the intermediate module 1510 when transmission request data is delivered from either the protocol stack 1508 provided in the network print server 1500 or the printer controller 1600. The control procedure corresponding to each step is stored in the Flash ROM 3 of the network print server 1500. The printer controller use port list is a finite area secured on the RAM 2 of the network print server 1500 in order to register the port numbers used by the printer controller 1600 for data transmission.

S401において、渡された送信依頼データがプリンタコントローラ1600から拡張インターフェイス17を介して渡されたものであるかどうかを判断する。   In S401, it is determined whether or not the transmitted transmission request data has been transmitted from the printer controller 1600 via the extension interface 17.

送信依頼データがプリンタコントローラ1600から渡されたものでない場合は、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508から渡されたものであると判断し、S402に進んで、送信依頼データのヘッダ情報を読み出し、送信元ポート番号を取得する。   If the transmission request data is not passed from the printer controller 1600, it is determined that the transmission request data has been passed from the protocol stack 1508 provided in the network print server 1500, and the process proceeds to S402, where the header information of the transmission request data is obtained. Read and acquire the source port number.

次にS403で、プリンタコントローラ使用ポートリストを検索し、取得した送信元ポート番号と同じポート番号が登録されていないかどうかを判断する。   In step S403, the printer controller use port list is searched to determine whether the same port number as the acquired transmission source port number is registered.

同じポート番号が登録されていた場合は、S404に進み、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508より代替ポート番号を取得する。次にS405に進み、送信依頼データは破棄し、送信依頼元であるネットワークプリントサーバ1500に備えられたプロトコルスタック1508に対して代替ポート番号を通知した後処理を終了する。   If the same port number is registered, the process proceeds to S404, and an alternative port number is acquired from the protocol stack 1508 provided in the network print server 1500. In step S405, the transmission request data is discarded, the alternative port number is notified to the protocol stack 1508 provided in the network print server 1500, which is the transmission request source, and the processing ends.

S403で同じポート番号が登録されていない場合は、S412に進み、送信依頼データをLAN2000を介して不図示のホストコンピュータ等の外部装置に対して送信した後処理を終了する。   If the same port number is not registered in S403, the process proceeds to S412 and the transmission request data is transmitted to an external device such as a host computer (not shown) via the LAN 2000, and the process is terminated.

S401で、送信依頼データがプリンタコントローラ1600から渡されたものであった場合は、S406に進み、送信依頼データのヘッダ情報を読み出し、送信元ポート番号を取得する。   If the transmission request data is passed from the printer controller 1600 in S401, the process proceeds to S406, where the header information of the transmission request data is read, and the transmission source port number is acquired.

次にS407で、プリンタコントローラ使用ポートリストを検索し、取得した送信元ポート番号と同じポート番号が登録されていないかどうかを判断する。   In step S407, the printer controller use port list is searched to determine whether the same port number as the acquired transmission source port number is registered.

同じポート番号が登録されていない場合は、S408に進み、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508が使用中のソケットのソケット情報を検索して、S406で取得した送信元ポート番号と同じポート番号を使用中のソケットが存在していないかどうかを判断する。同じポート番号が登録されていた場合は、S409に進み、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508より代替ポート番号を取得する。次にS410に進み、送信依頼データは破棄し、送信依頼元のプリンタコントローラ1600に拡張インターフェイス17を介して代替ポート番号を通知したした後、処理を終了する。   If the same port number is not registered, the process proceeds to S408, and the protocol stack 1508 provided in the network print server 1500 searches the socket information of the socket in use, and the same port as the source port number acquired in S406. Determine if there are any sockets using numbers. If the same port number is registered, the process proceeds to S409, and an alternative port number is acquired from the protocol stack 1508 provided in the network print server 1500. In step S410, the transmission request data is discarded, the transmission request source printer controller 1600 is notified of the alternative port number via the extension interface 17, and the processing is terminated.

S408で同じポート番号が登録されていない場合は、S411に進み、プリンタコントローラ使用ポートリストにポート番号を登録する。次にS412で、送信依頼データをLAN2000を介して不図示のホストコンピュータ等の外部装置に対して送信した後処理を終了する。   If the same port number is not registered in S408, the process proceeds to S411, and the port number is registered in the printer controller use port list. In step S412, the transmission request data is transmitted to an external device such as a host computer (not shown) via the LAN 2000, and the processing is terminated.

S410でプリンタコントローラ使用ポートリストに同じポート番号が登録されていた場合は、直ちにS412に進み、送信依頼データをLAN2000を介して不図示のホストコンピュータ等の外部装置に対して送信した後処理を終了する。   If the same port number is registered in the printer controller port list in S410, the process immediately proceeds to S412 and the transmission request data is transmitted to an external device such as a host computer (not shown) via the LAN 2000, and the processing is terminated. To do.

(実施例3)
実施例2において、送信依頼データにポート番号の重複が生じていた際には、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508より代替ポート番号を取得し、その代替ポート番号を送信依頼データの送信元であるネットワークプリントサーバ1500に備えられたプロトコルスタック1508もしくはプリンタコントローラ1600に通知している。
(Example 3)
In the second embodiment, when there is a duplicate port number in the transmission request data, the alternative port number is acquired from the protocol stack 1508 provided in the network print server 1500, and the transmission request data is transmitted to the alternative port number. The protocol stack 1508 or printer controller 1600 provided in the original network print server 1500 is notified.

しかしながら、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508に対して代替ポートの取得を要求した場合に、空きポート番号が存在しないなどの理由で代替ポート番号が取得できない可能性も考えられる。また、代替ポート番号が取得できた場合であっても、その代替ポート番号はすでにプリンタコントローラ1600によって使用中である可能性も考えられる。   However, when the acquisition of an alternative port is requested to the protocol stack 1508 provided in the network print server 1500, there is a possibility that the alternative port number cannot be acquired because there is no available port number. Even if the alternative port number can be acquired, there is a possibility that the alternative port number is already in use by the printer controller 1600.

図5は、図4で示した代替ポート番号取得処理に上記問題点の対処法を追加したフローチャートである。なお、S501〜S505は各処理ステップを示し、ネットワークプリントサーバ1500において、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508もしくはプリンタコントローラ1600のいずれかから渡された送信依頼データにポート番号の重複が生じていた場合の中間モジュール1510の処理フローに対応する。また、S501〜S505は図4における処理ステップS404〜S405およびS409〜S410の派生となる処理ステップである。なお各ステップに対応する制御手順はネットワークプリントサーバ1500のFlashROM3に記憶されている。また、プリンタコントローラ使用ポートリストはプリンタコントローラ1600がデータ送信に使用しているポート番号を登録するためにネットワークプリントサーバ1500のRAM2上に確保された有限な領域である。   FIG. 5 is a flowchart in which a countermeasure for the above problem is added to the alternative port number acquisition process shown in FIG. S501 to S505 indicate each processing step. In the network print server 1500, duplication of port numbers occurs in the transmission request data passed from either the protocol stack 1508 provided in the network print server 1500 or the printer controller 1600. This corresponds to the processing flow of the intermediate module 1510. S501 to S505 are processing steps that are derived from the processing steps S404 to S405 and S409 to S410 in FIG. The control procedure corresponding to each step is stored in the Flash ROM 3 of the network print server 1500. The printer controller use port list is a finite area secured on the RAM 2 of the network print server 1500 in order to register the port numbers used by the printer controller 1600 for data transmission.

中間モジュール1510は、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508もしくはプリンタコントローラ1600のいずれかから渡された送信依頼データにポート番号の重複が生じていた場合に、まず、S501において、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508に代替ポート番号の取得要求を行い、S502で、代替ポートを取得できたかどうか判断する。空きポート番号が無いなどの理由で代替ポート番号を取得できなかった場合は、S503に進み、送信依頼データを破棄し、送信依頼データの送信元であるネットワークプリントサーバ1500に備えられたプロトコルスタック1508もしくはプリンタコントローラ1600に送信エラーを通知した後処理を終了する。   The intermediate module 1510 first receives the network print server in S501 when there is a duplicate port number in the transmission request data passed from either the protocol stack 1508 provided in the network print server 1500 or the printer controller 1600. An alternative port number acquisition request is issued to the protocol stack 1508 provided in 1500, and it is determined in S502 whether the alternative port has been acquired. If the alternative port number could not be acquired because there is no available port number, etc., the process proceeds to S503, the transmission request data is discarded, and the protocol stack 1508 provided in the network print server 1500 that is the transmission source of the transmission request data Alternatively, the process ends after notifying the printer controller 1600 of a transmission error.

S502において、代替ポート番号を取得できた場合は、S504に進み、取得した代替ポート番号がプリンタコントローラ使用ポートリストに登録されているポート情報と重複しないかを判断する。重複していない場合は、S505に進み、送信依頼データを破棄し、送信依頼データの送信元であるネットワークプリントサーバ1500に備えられたプロトコルスタック1508もしくはプリンタコントローラ1600に代替ポート番号を通知して処理を終了する。   If the alternative port number can be acquired in S502, the process proceeds to S504, and it is determined whether or not the acquired alternative port number overlaps with the port information registered in the printer controller use port list. If not, proceed to S505, discard the transmission request data, notify the protocol stack 1508 provided in the network print server 1500 that is the transmission source of the transmission request data or the printer controller 1600 with the alternative port number and process it Exit.

S504において、取得した代替ポート番号がプリンタコントローラ使用ポートリストに登録されているポート情報と重複している場合は、S501に戻り、S501〜S505の処理を繰り返す。   In S504, if the acquired alternative port number overlaps with the port information registered in the printer controller use port list, the process returns to S501 and repeats the processes of S501 to S505.

(実施例4)
実施例1〜3において、ネットワークプリンタサーバ1500はプリンタ1000から物理的に切り離されて存在する別個の機器であって、プリンタ1000は内部にプリンタコントローラ1600からなる制御系を司る機器を備えており、ネットワークプリンタサーバ1500において、図1で示される拡張インターフェイスコントローラ(EXPC7)はシステムバス4に接続される第二のネットワークコントローラであり、図2で示される拡張インターフェイスドライバ1506はオペレーティングシステム1501が内包する第二のネットワークインターフェイスドライバであり、プリンタコントローラ1600において、図1で示される拡張インターフェイスコントローラ(EXPC13)はシステムバス11に接続されるネットワークコントローラであり、図1及び図2で示される拡張インターフェイス17は第二のローカルエリアネットワークであって、ネットワークプリントサーバ1500とプリンタコントローラ1600とは前記第二のローカルエリアネットワークにともに接続されていても良い。
Example 4
In the first to third embodiments, the network printer server 1500 is a separate device that is physically separated from the printer 1000, and the printer 1000 includes a device that controls the control system including the printer controller 1600. In the network printer server 1500, the extended interface controller (EXPC7) shown in FIG. 1 is a second network controller connected to the system bus 4, and the extended interface driver 1506 shown in FIG. In the printer controller 1600, the extended interface controller (EXPC13) shown in FIG. 1 is a network controller connected to the system bus 11, and the extended interface controller shown in FIGS. The network 17 is a second local area network, and the network print server 1500 and the printer controller 1600 may be connected to the second local area network.

(実施例5)
実施例1〜4において、プリンタコントローラ1600から拡張インターフェイス17を介して渡された送信依頼データをLAN2000を介して不図示のホストコンピュータ等の外部装置に送信する際に、中間モジュール1510は送信依頼データが使用しているポート番号をプリンタコントローラ使用ポートリストに登録している。そして、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508からの送信依頼データがあった場合には、送信依頼データの使用するポート番号がプリンタコントローラ使用ポートリストに登録済みのポート番号と重複していないかどうかを判断している。これにより、プリンタコントローラ1600が使用中のポート番号を、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508が重複して使用してしまう状況を回避している。
(Example 5)
In the first to fourth embodiments, when the transmission request data passed from the printer controller 1600 via the expansion interface 17 is transmitted to an external device such as a host computer (not shown) via the LAN 2000, the intermediate module 1510 transmits the transmission request data. Is registered in the printer controller port list. If there is transmission request data from the protocol stack 1508 provided in the network print server 1500, the port number used by the transmission request data does not overlap with the port number registered in the printer controller use port list. Judgment whether or not. This avoids a situation in which the port number being used by the printer controller 1600 is duplicated by the protocol stack 1508 provided in the network print server 1500.

しかしながら、この手段では、一度プリンタコントローラ1600が送信に使用してプリンタコントローラ使用ポートリストに登録されたポート番号に関しては、例えその後プリンタコントローラ1600がそのポート番号を使用した通信を終了したとしても、当該ポート番号はプリンタコントローラ使用ポートリストに残ったままである。そのため、一度プリンタコントローラ使用ポートリストに登録されたポート番号は、その後ネットワークプリントサーバ1500に備えられたプロトコルスタック1508からは使用できないことになる。   However, with this means, regarding the port number once used by the printer controller 1600 for transmission and registered in the printer controller use port list, even if the printer controller 1600 thereafter terminates communication using that port number, The port number remains in the printer controller use port list. Therefore, the port number once registered in the printer controller use port list cannot be used thereafter from the protocol stack 1508 provided in the network print server 1500.

但し、ネットワークプリントサーバ1500では、プリンタコントローラ1600がどのポート番号を使用しているのかという情報は、プリンタコントローラ1600から拡張インターフェイス17を介して送信依頼データが渡された時点でしか知ることは出来ない。そのため、一度プリンタコントローラ1600が送信に使用してプリンタコントローラ使用ポートリストに登録されたポート番号に関して、プリンタコントローラ1600がそのポート番号を使用した通信を終了した時点でプリンタコントローラ使用ポートリストから削除するという方法を実現することは出来ない。   However, in the network print server 1500, information on which port number the printer controller 1600 is using can be known only when the transmission request data is passed from the printer controller 1600 via the expansion interface 17. . Therefore, the port number once used by the printer controller 1600 for transmission and registered in the printer controller use port list is deleted from the printer controller use port list when the printer controller 1600 finishes communication using the port number. The method cannot be realized.

そこでこの対処法として、プリンタコントローラ使用ポートリストにタイムアウト機能を設けるという方法が考えられる。プリンタコントローラ使用ポートリストに登録されたポート番号に関して、一定期間以内に再度プリンタコントローラ1600から拡張インターフェイス17を介して送信依頼データが無い場合には、当該ポート番号をプリンタコントローラ使用ポートリストから削除する。   Therefore, as a countermeasure, a method of providing a timeout function in the printer controller use port list can be considered. If there is no transmission request data from the printer controller 1600 via the expansion interface 17 again within a certain period for the port number registered in the printer controller use port list, the port number is deleted from the printer controller use port list.

この方法によれば、一度プリンタコントローラ1600が送信に使用してプリンタコントローラ使用ポートリストに登録されたポート番号であっても、そのポートを使用した送信依頼データが一定期間以上の間プリンタコントローラ1600から拡張インターフェイス17を介して渡されない場合には、ネットワークプリントサーバ1500に備えられたプロトコルスタック1508が当該ポート番号を使用出来るようになる。   According to this method, even if the printer controller 1600 once used for transmission and registered in the printer controller use port list, the transmission request data using the port is not received from the printer controller 1600 for a certain period or more. If not passed through the extension interface 17, the protocol stack 1508 provided in the network print server 1500 can use the port number.

本発明の実施形態に関わる印刷システムのハードウェア構成ブロック図1 is a block diagram of a hardware configuration of a printing system according to an embodiment of the present invention. 本発明の実施形態に関わる印刷システムソフトウェア構成ブロック図Printing system software configuration block diagram according to an embodiment of the present invention 本発明に係る送信ポート番号の重複検出および重複回避方法の一実施形態を示すフローチャートThe flowchart which shows one Embodiment of the duplication detection of the transmission port number based on this invention, and the duplication avoidance method 本発明に係る送信ポート番号の重複検出および重複回避方法の第二の実施形態を示すフローチャートThe flowchart which shows 2nd embodiment of the duplication detection of the transmission port number based on this invention, and the duplication avoidance method. 第二の実施の形態における代替ポート番号取得処理のその他の実施形態を示すフローチャートThe flowchart which shows other embodiment of the alternative port number acquisition process in 2nd embodiment.

符号の説明Explanation of symbols

1000 プリンタ
1500 ネットワークプリントサーバ
1600 プリンタコントローラ
2000 ローカルエリアネットワーク
1 CPU
2 RAM
3 フラッシュROM
4 システムバス
5 LANコントローラ
6 LED
7 拡張インターフェイスコントローラ
8 CPU
9 ROM
10 外部メモリ
11 システムバス
12 ラスタコントローラ
13 拡張インターフェイスコントローラ
14 RAM
15 ディスクコントローラ
16 プリントエンジン
17 拡張インターフェイスバス
18 操作パネル
1000 Printer 1500 Network Print Server 1600 Printer Controller 2000 Local Area Network 1 CPU
2 RAM
3 Flash ROM
4 System bus 5 LAN controller 6 LED
7 Expansion interface controller 8 CPU
9 ROM
10 External memory 11 System bus 12 Raster controller 13 Extended interface controller 14 RAM
15 Disk Controller 16 Print Engine 17 Expansion Interface Bus 18 Operation Panel

Claims (2)

第一のネットワーク装置と接続インターフェイスを介して接続可能な第二のネットワーク装置であって、
前記第一のネットワーク装置から前記接続インターフェイスを介して転送された送信依頼データもしくは前記第二のネットワーク装置に備えられたプロトコルスタックから転送された送信依頼データを、前記第二のネットワーク装置に備えられた物理インターフェイスよりネットワークに送信する送信依頼データ送信手段と、
前記物理インターフェイスより受信した受信データを前記第一のネットワーク装置と前記第二のネットワーク装置に備えられたプロトコルスタックのいずれかもしくは両方に転送する受信データ転送手段と、
を備えることを特徴とする第二のネットワーク装置において、
前記第二のネットワーク装置に備えられたプロトコルスタックが現在使用中であるポート情報を記憶するポート情報記憶手段と、
前記第一のネットワーク装置より前記接続インターフェイスを介して送信依頼データが転送された際に、前記送信依頼データから送信元ポート情報を取得する送信元ポート情報取得手段と、
前記送信元ポート情報取得手段で得られた送信元ポート情報が前記ポート情報記憶手段で記憶しているポート情報と重複していないかどうかを判断するポート情報重複判断手段と、
前記ポート情報重複判断手段でポート情報の重複が検出された場合に、前記送信依頼データを破棄し、送信依頼元に送信エラーを通知する手段と、
を備えることを特徴とするポート情報重複回避方法。
A second network device connectable to the first network device via a connection interface,
Transmission request data transferred from the first network device via the connection interface or transmission request data transferred from a protocol stack provided in the second network device is provided in the second network device. Transmission request data transmission means for transmitting to the network from the physical interface,
Received data transfer means for transferring received data received from the physical interface to either or both of the protocol stacks provided in the first network device and the second network device;
In the second network device, comprising:
Port information storage means for storing port information currently used by the protocol stack provided in the second network device;
Source port information acquisition means for acquiring source port information from the transmission request data when transmission request data is transferred from the first network device via the connection interface;
Port information duplication judgment means for judging whether or not the transmission source port information obtained by the transmission source port information acquisition means is duplicated with the port information stored in the port information storage means;
Means for discarding the transmission request data and notifying a transmission request source of a transmission error when duplication of port information is detected by the port information duplication determination means;
A method for avoiding duplication of port information, comprising:
第一のネットワーク装置と接続インターフェイスを介して接続可能な第二のネットワーク装置であって、
前記第一のネットワーク装置から前記接続インターフェイスを介して転送された送信依頼データもしくは前記第二のネットワーク装置に備えられたプロトコルスタックから転送された送信依頼データを、前記第二のネットワーク装置に備えられた物理インターフェイスよりネットワークに送信する送信依頼データ送信手段と、
前記物理インターフェイスより受信した受信データを前記第一のネットワーク装置と前記第二のネットワーク装置に備えられたプロトコルスタックのいずれかもしくは両方に転送する受信データ転送手段と、
を備えることを特徴とする第二のネットワーク装置において、
前記第二のネットワーク装置に備えられたプロトコルスタックが現在使用中であるポート情報を記憶するポート情報記憶手段と、
前記第一のネットワーク装置より前記接続インターフェイスを介して送信依頼データが転送された際に、前記送信依頼データから送信元ポート情報を取得する送信元ポート情報取得手段と、
前記送信元ポート情報取得手段で得られた送信元ポート情報が前記ポート情報記憶手段で記憶しているポート情報と重複していないかどうかを判断するポート情報重複判断手段と、
前記ポート情報重複判断手段でポート情報の重複が検出された場合に、前記送信依頼データを破棄し、送信依頼元に代替ポート番号を通知する手段と、
を備えることを特徴とするポート情報重複回避方法。
A second network device connectable to the first network device via a connection interface,
Transmission request data transferred from the first network device via the connection interface or transmission request data transferred from a protocol stack provided in the second network device is provided in the second network device. Transmission request data transmission means for transmitting to the network from the physical interface,
Received data transfer means for transferring received data received from the physical interface to either or both of the protocol stacks provided in the first network device and the second network device;
In the second network device, comprising:
Port information storage means for storing port information currently used by the protocol stack provided in the second network device;
Source port information acquisition means for acquiring source port information from the transmission request data when transmission request data is transferred from the first network device via the connection interface;
Port information duplication judgment means for judging whether or not the transmission source port information obtained by the transmission source port information acquisition means is duplicated with the port information stored in the port information storage means;
Means for discarding the transmission request data and notifying the transmission request source of an alternative port number when duplication of port information is detected by the port information duplication determination means;
A method for avoiding duplication of port information, comprising:
JP2005108573A 2005-04-05 2005-04-05 Method of avoiding duplication of communication port Withdrawn JP2006285903A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005108573A JP2006285903A (en) 2005-04-05 2005-04-05 Method of avoiding duplication of communication port

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005108573A JP2006285903A (en) 2005-04-05 2005-04-05 Method of avoiding duplication of communication port

Publications (1)

Publication Number Publication Date
JP2006285903A true JP2006285903A (en) 2006-10-19

Family

ID=37407727

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005108573A Withdrawn JP2006285903A (en) 2005-04-05 2005-04-05 Method of avoiding duplication of communication port

Country Status (1)

Country Link
JP (1) JP2006285903A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013242613A (en) * 2012-05-17 2013-12-05 Kyocera Document Solutions Inc Image forming apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013242613A (en) * 2012-05-17 2013-12-05 Kyocera Document Solutions Inc Image forming apparatus

Similar Documents

Publication Publication Date Title
JP4947913B2 (en) Communication device and communication control method thereof
EP3066556B1 (en) Mobile device for automatically delivering print jobs to printers
EP1860547A2 (en) Remote stored print job retrieval
JP7362855B2 (en) Image forming apparatus, image forming apparatus control method, and program
JP5063253B2 (en) Network system and communication method
JP5879987B2 (en) Information processing apparatus, information processing apparatus control method, control program, and image forming system
JP2008004010A (en) Communication equipment and control method therefor
JP5031539B2 (en) Printing system, printing apparatus and printing method
JP6755706B2 (en) Information processing device, its control method, and program
JP2006338268A (en) Data processor, network interface substrate and application program registering method
JP4892469B2 (en) COMMUNICATION DEVICE, ITS CONTROL METHOD, PROGRAM
US6873425B1 (en) Delayed printing of print jobs requiring special resources
JP2006285903A (en) Method of avoiding duplication of communication port
CN101489008B (en) Device setting system, device setting method
JP2005038011A (en) Network system and its control method
JP3710789B2 (en) Image forming apparatus having a plurality of communication protocols
JP5153841B2 (en) Communication device and communication control method thereof
US20060268289A1 (en) Multi image forming method and system using job retention functions
JP4429138B2 (en) System and method for monitoring imaging jobs using implicit address discovery
JP4387710B2 (en) Network device and control method thereof
JP4560313B2 (en) Information processing apparatus, image forming system, and information processing apparatus control method
JP2007140663A (en) Image processor
JP2006190032A (en) Distributed printing controller, distributed printing system, method for transmitting control command, and method for canceling printing job
JP2007157040A (en) Network device and service starting method
JP2009140068A (en) Information processing apparatus and information processing method for information processing apparatus

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080701