JP5044007B2 - Information processing apparatus, control method for information processing apparatus, and program - Google Patents

Information processing apparatus, control method for information processing apparatus, and program Download PDF

Info

Publication number
JP5044007B2
JP5044007B2 JP2010269019A JP2010269019A JP5044007B2 JP 5044007 B2 JP5044007 B2 JP 5044007B2 JP 2010269019 A JP2010269019 A JP 2010269019A JP 2010269019 A JP2010269019 A JP 2010269019A JP 5044007 B2 JP5044007 B2 JP 5044007B2
Authority
JP
Japan
Prior art keywords
network
network device
setting information
processing apparatus
information processing
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.)
Expired - Fee Related
Application number
JP2010269019A
Other languages
Japanese (ja)
Other versions
JP2011100469A (en
Inventor
哲也 山田
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 JP2010269019A priority Critical patent/JP5044007B2/en
Publication of JP2011100469A publication Critical patent/JP2011100469A/en
Application granted granted Critical
Publication of JP5044007B2 publication Critical patent/JP5044007B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)

Description

本発明は、ネットワークを介して所定の処理を行うネットワークデバイスに対する設定を行う情報処理装置、情報処理装置の制御方法、プログラムに関するものである。   The present invention relates to an information processing apparatus that performs settings for a network device that performs predetermined processing via a network, a control method for the information processing apparatus, and a program.

近年、コンピュータを相互に接続したローカルエリアネットワーク(LAN)が普及しており、このようなLANは、ビルのフロアやビル全体、地域、あるいはさらに大きいエリアにわたって構築することができる。このようなネットワークにはさらに相互に接続され、世界的規模のネットワークにも接続することができる。こうした相互接続された各LANには、多様なハードウエア相互接続技術と、いくつものネットワークプロトコルを持つ場合がある。   In recent years, a local area network (LAN) in which computers are connected to each other has become widespread, and such a LAN can be constructed over a building floor, an entire building, a region, or a larger area. Such networks are further connected to each other and can be connected to global networks. Each such interconnected LAN may have a variety of hardware interconnection technologies and a number of network protocols.

このようなLANにおいて、個々のネットワーク機器は、各ネットワークプロトコル特有のネットワークアドレスによって識別され、運営、管理される。   In such a LAN, each network device is identified, operated and managed by a network address specific to each network protocol.

こうしたネットワークに接続されたネットワーク上のデバイスを管理するための方法として、これまでにいくつかの方法が挙げられている。   There have been several methods for managing devices on a network connected to such a network.

例えば、独自の通信手順やプロトコルを定義し、そのプロトコルに促したネットワーク機器デバイスを管理する技術や、SNAPのような、標準化されたプロトコルでネットワーク機器デバイスを管理する技術である(SNAPに関しては、インターネットの標準化団体であるIETF(Internet Enginerring Task Force)のRFC1157などで定義されている)。   For example, a technique for defining a unique communication procedure or protocol, and managing a network equipment device prompted by the protocol, or a technique for managing a network equipment device with a standardized protocol such as SNAP (for SNAP, (It is defined in RFC1157 of Internet Engineering Task Force (IETF) which is an Internet standardization organization).

また、その実装に関しては下記非特許文献1などに、記述されている。   The implementation is described in Non-Patent Document 1 below.

こうしたネットワーク管理技術において、ネットワーク管理ソフトウェアやアプリケーションが、その管理の対象となるデバイスの一覧をモニタなどに表示する場合に、ブロードキャストパケットや、マルチキャストパケットを用いることが多い。ブロードキャストパケットとはネットワーク上のすべてのデバイスにパケットを送信することで、マルチキャストとは、ネットワーク上の特定のデバイスの集合にパケットを送信することである。このようなブロードキャストパケットやマルチキャストパケットを受信したネットワークデバイスは、それを送信したアプリケーションにそのレスポンスを返すことになる。   In such a network management technique, when a network management software or application displays a list of devices to be managed on a monitor or the like, a broadcast packet or a multicast packet is often used. A broadcast packet is a packet transmitted to all devices on the network, and a multicast is a packet transmitted to a specific set of devices on the network. A network device that receives such a broadcast packet or multicast packet returns a response to the application that transmitted it.

つまり、ネットワーク管理ソフトウェアはブロードキャストパケットをネットワーク上に送信することによって、ネットワーク上に接続されているすべてのデバイスからそのレスポンスを受信することが可能となる。その結果、ネットワーク管理ソフトウェアは管理の対象となるデバイスの一覧を得ることができるのである。   That is, the network management software can receive the response from all devices connected on the network by transmitting the broadcast packet onto the network. As a result, the network management software can obtain a list of devices to be managed.

「TCP/IPネットワーク管理入門実用的な管理を目指して」M.T.ローズ=著/西田竹志=訳 (株) トッパン発行1992年8月20日初版“Introduction to TCP / IP Network Management” T.A. Rose = work / Takeshi Nishida = translation Toppan publishing August 20, 1992 first edition

上記のようなネットワークシステムを構成するネットワークに、デバイスを新規に接続し利用できる状態にするためには、デバイスのネットワークボードに適当な設定を施す必要がある。   In order to make a device newly connected to the network constituting the network system as described above and making it usable, it is necessary to make an appropriate setting on the network board of the device.

この設定を行う場合、例えばあるプロトコルのブロードキャストに対応するネットワークボードに対して行う場合、対応するネットワークボードがすでに設定されているか否かに関わらず一覧表示され、ユーザに設定が必要のないネットワークボードを含んだ状態で設定が必要なネットワークボードの選択を強いるためユーザによる設定に戸惑わせて、確認負担が重くなり操作性が悪い等の問題点が指摘されていた。   When performing this setting, for example, for a network board that supports broadcasting of a certain protocol, a network board that is displayed regardless of whether or not the corresponding network board has already been set, and that does not require setting by the user In order to force the user to select a network board that needs to be set up in a state that includes, it has been pointed out that the user is confused by the setting, and the burden of confirmation becomes heavy and the operability is poor.

本発明は、上記の課題を解決するためになされたもので、本発明の目的は、ネットワーク上に接続されているネットワークデバイスで既に設定が必要のないネットワークデバイスを表示することなく、ネットワーク設定が必要である新規接続されるネットワークデバイスを設定対象としてユーザに提示して、意図するネットワーク情報を自在に設定することができる利便性に優れたネットワーク設定処理を効率よく行える仕組みを提供することである。   The present invention has been made to solve the above-described problems. The object of the present invention is to perform network setting without displaying network devices that are already connected to the network and need not be set. It is to provide a mechanism for efficiently presenting a network setting process that is convenient and presents a necessary newly connected network device to a user as a setting target and can freely set intended network information. .

上記目的を達成する本発明の情報処理装置は以下に示す構成を備える。
ネットワークを介してネットワークデバイスと通信可能な情報処理装置であって、前記ネットワークデバイスの工場出荷時のネットワーク設定情報を予め保持する保持手段と、前記ネットワーク上のネットワークデバイスから、当該ネットワークデバイスに現在設定されているネットワーク設定情報を受信する受信手段と、前記受信手段が受信した前記ネットワークデバイスに現在設定されているネットワーク設定情報が、前記保持手段に予め保持されている前記ネットワークデバイスの工場出荷時のネットワーク設定情報と一致するか否かを判定する判定手段と、前記判定手段による判定の結果、前記受信手段が受信した前記ネットワークデバイスに現在設定されているネットワーク設定情報が、前記保持手段に予め保持されている前記ネットワークデバイスの工場出荷時のネットワーク設定情報と一致すると判定された場合に、設定が必要なネットワークデバイスとして前記ネットワークデバイスをユーザに提示する提示手段とを備えることを特徴とする。
The information processing apparatus of the present invention that achieves the above object has the following configuration.
An information processing apparatus capable of communicating with a network device via a network, a holding unit that holds network setting information at the time of factory shipment of the network device in advance, and a network device on the network that is currently set to the network device Receiving means for receiving the network setting information, and the network setting information currently set for the network device received by the receiving means at the time of factory shipment of the network device held in advance in the holding means A determination unit that determines whether or not the network setting information matches, and the network setting information currently set in the network device received by the reception unit as a result of the determination by the determination unit is held in the holding unit in advance. Said ne If the network is determined to match the network setting information at the time of factory shipment of the device, and a presenting means for presenting to a user the network device as a network device need to be configured.

本発明によれば、ネットワーク上に接続されているネットワークデバイスで既に設定が必要のないネットワークデバイスを表示することなく、ネットワーク設定が必要である新規接続されるネットワークデバイスを設定対象としてユーザに提示して、意図するネットワーク情報を自在に設定することができる利便性に優れたネットワーク設定処理を効率よく行える等の効果を奏する。   According to the present invention, a newly connected network device that requires network setting is presented to the user as a setting target without displaying network devices that are not already set among the network devices connected on the network. As a result, it is possible to efficiently perform network setting processing excellent in convenience and capable of freely setting intended network information.

本発明の第1実施形態を示すネットワーク制御装置を適用可能な印刷システムの構成を説明する図である。It is a figure explaining the structure of the printing system which can apply the network control apparatus which shows 1st Embodiment of this invention. 本発明の第1実施形態を示すネットワーク制御装置を適用可能なネットワークシステムの構成を説明する図である。It is a figure explaining the structure of the network system which can apply the network control apparatus which shows 1st Embodiment of this invention. 図1に示したPCの制御構成を説明するブロック図である。It is a block diagram explaining the control structure of PC shown in FIG. 図1に示したネットワークシステムにおけるパケットの構成を説明する図である。It is a figure explaining the structure of the packet in the network system shown in FIG. 図4に示したコンフィグレータプロトコルにおけるパケットのデータ部の構造の概略図である。FIG. 5 is a schematic diagram of a structure of a data portion of a packet in the configurator protocol shown in FIG. 本発明に係るネットワークシステムにおけるパケットの流れを説明する概略図である。It is the schematic explaining the flow of the packet in the network system which concerns on this invention. 図1に示したPCに表示されるネットワークインタフェースボード設定画面の一例を示す図である。It is a figure which shows an example of the network interface board setting screen displayed on PC shown in FIG. 本発明に係る情報処理装置における第1のデータ処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the 1st data processing procedure in the information processing apparatus which concerns on this invention. 図1に示したPCに表示されるネットワークインタフェースボード追加設定画面例を示す図である。It is a figure which shows the example of a network interface board addition setting screen displayed on PC shown in FIG. 本発明に係る情報処理装置における第2のデータ処理手順の一例を示すフローチャートである。It is a flowchart which shows an example of the 2nd data processing procedure in the information processing apparatus which concerns on this invention. 本発明に係る情報処理装置を適用可能なネットワークシステムで読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。It is a figure explaining the memory map of the storage medium which stores the various data processing program which can be read by the network system which can apply the information processing apparatus which concerns on this invention.

〔LANの構成〕ネットワーク設定ソフトウェアが管理するデバイスが接続されているネットワークシステムについて説明する。
〔第1実施形態〕
図1は、本発明の第1実施形態を示すネットワーク制御装置を適用可能な印刷システムの構成を説明する図であり、例えばネットワークボード101をプリンタ102に接続した印刷システム例に対応する。
[LAN Configuration] A network system to which devices managed by the network setting software are connected will be described.
[First Embodiment]
FIG. 1 is a diagram illustrating the configuration of a printing system to which the network control apparatus according to the first embodiment of the present invention can be applied, and corresponds to an example of a printing system in which a network board 101 is connected to a printer 102, for example.

図1において、101はネットワークボードで、ローカルエリアネットワーク(LAN)100に接続されるネットワークデバイスである。なお、LANへの接続はRF−45を持つ10Base−Tなどのインターフェースを介して接続されている。パーソナルコンピュータ(PC)103もまたLAN100に接続されており、PC103はLAN100を介してネットワークボード101と通信することが可能である。   In FIG. 1, reference numeral 101 denotes a network board, which is a network device connected to a local area network (LAN) 100. The connection to the LAN is via an interface such as 10Base-T having RF-45. A personal computer (PC) 103 is also connected to the LAN 100, and the PC 103 can communicate with the network board 101 via the LAN 100.

通常、LAN100などのLANは、一つの建物内の一つの階、または、連続した複数の階でのユーザグループといった、幾分ローカルなグループに対してサービスを提供する。   Typically, a LAN such as LAN 100 provides services to a somewhat local group, such as a user group on one floor in a building, or on multiple consecutive floors.

例えば、ユーザが他の建物にいる場合などでは、ユーザ間の距離に応じて、ワイドエリアネットワーク(WAN)を用いてもよい。WANは基本的には、いくつかのLANを高速度サービス総合デジタルネットワーク(ISDN)電話などの高速度デジタルラインで接続して形成された集合体である。   For example, when the user is in another building, a wide area network (WAN) may be used according to the distance between the users. A WAN is basically an aggregate formed by connecting several LANs with high-speed digital lines such as high-speed integrated services digital network (ISDN) telephones.

図2は、本発明の第1実施形態を示すネットワーク制御装置を適用可能なネットワークシステムの構成を説明する図であり、例えばネットワークボードをプリンタに接続した複数のプリンタとホストコンピュータ等が接続されるネットワークシステム例に対応する。   FIG. 2 is a diagram for explaining the configuration of a network system to which the network control apparatus according to the first embodiment of the present invention can be applied. For example, a plurality of printers each having a network board connected to a printer and a host computer are connected This corresponds to an example network system.

図2において、201〜206はネットワークボードが接続されているプリンタで、LAN100にネットワーク接続している。本実施形態ではPC103が検索ブロードキャストパケットをLAN100に送信するとLAN100に接続されているプリンタ201〜206までのネットワークボードがその応答を返すものである。   In FIG. 2, reference numerals 201 to 206 denote printers connected to a network board, which are connected to the LAN 100 via a network. In this embodiment, when the PC 103 transmits a search broadcast packet to the LAN 100, the network boards from the printers 201 to 206 connected to the LAN 100 return the response.

なお、プリンタ201〜206中のいずれかは、プリンタメーカが推奨するネットワークボードまたはサードパーティが供給するネットワークボードを接続可能に構成されている場合があるとともに、プリンタメーカが推奨するネットワークボードも選択可能なプロトコル数等により複数のネットワークボードを選択できる場合がある。   In addition, any of the printers 201 to 206 may be configured so that a network board recommended by the printer manufacturer or a network board supplied by a third party can be connected, and a network board recommended by the printer manufacturer can also be selected. In some cases, a plurality of network boards can be selected depending on the number of protocols.

〔PCの構成〕
図3は、図1に示したPC103の制御構成を説明するブロック図であり、PC103がネットワーク設定ソフトウェアが稼動可能な構成を備えている場合に対応する。
[Configuration of PC]
FIG. 3 is a block diagram for explaining a control configuration of the PC 103 shown in FIG. 1, and corresponds to a case where the PC 103 has a configuration capable of operating the network setting software.

図3において、103はネットワーク設定ソフトウェアが稼動するPCであり、図1におけるPC103と同等である。PC103は、ROM302もしくはハードディスク(HD)311に記憶された、あるいはフロッピー(登録商標)ディスク(FD)312より供給されるネットワーク設定プログラムを実行するCPU301を備え、システムバス304に接続される各デバイスを総括的に制御する。   In FIG. 3, reference numeral 103 denotes a PC on which network setting software runs, which is equivalent to the PC 103 in FIG. The PC 103 includes a CPU 301 that executes a network setting program stored in a ROM 302 or a hard disk (HD) 311 or supplied from a floppy (registered trademark) disk (FD) 312. Each device connected to the system bus 304 is connected to the PC 103. Overall control.

また、ハードディスク(HD)311には、ネットワーク設定プログラムが参照可能なネットワークボードの工場出荷時の設定情報が記憶されており、後述する図10に示すフローチャートの手順に従い参照比較される。   The hard disk (HD) 311 stores setting information at the time of factory shipment of a network board that can be referred to by the network setting program, and is referred to and compared in accordance with the procedure of the flowchart shown in FIG.

303はRAM容量を拡張可能なRAMで、CPU301の主メモリ、ワークエリアなどとして機能する。305はキーボードコントローラ(KBC)で、キーボード(KB)309や不図示のポインティングデバイスなどからの指示入力を制御する。   Reference numeral 303 denotes a RAM whose RAM capacity can be expanded, and functions as a main memory and work area of the CPU 301. A keyboard controller (KBC) 305 controls an instruction input from a keyboard (KB) 309 or a pointing device (not shown).

306はCRTコントローラ(CRTC)で、CRTディスプレイ(CRT)310の表示を制御する。307はディスクコントローラ(DKC)で、ブートプログラム、種々のアプリケーション、編集ファイル、ユーザファイル、およびネットワーク設定プログラムなどを記憶するハードディスク(HD)311およびフロッピーディスク(FD)312とのアクセスを制御する。308はネットワークボード(NIC)で、LAN100を介して、エージェントあるいはネットワーク機器と双方向にデータをやりとりする。   A CRT controller (CRTC) 306 controls display on a CRT display (CRT) 310. A disk controller (DKC) 307 controls access to a hard disk (HD) 311 and a floppy disk (FD) 312 that store a boot program, various applications, editing files, user files, a network setting program, and the like. Reference numeral 308 denotes a network board (NIC), which exchanges data bidirectionally with an agent or a network device via the LAN 100.

〔コンフィギュレータパケット〕
図4は、図1に示したネットワークシステムにおけるパケットの構成を説明する図であり、独自設定参照プロトコルをTCP/IPプロトコルに実装した場合の、パケットヘッダの一例である。
[Configurator packet]
FIG. 4 is a diagram for explaining a packet configuration in the network system shown in FIG. 1, and is an example of a packet header when the unique setting reference protocol is implemented in the TCP / IP protocol.

本実施形態における独自設定参照プロトコルをコンフィギュレータプロトコルと呼ぶ。本実施形態ではコンフィグレータプロトコルをUDP上に実装している。   The unique setting reference protocol in this embodiment is called a configurator protocol. In this embodiment, the configurator protocol is mounted on UDP.

特にコンフィグレータプロトコルがUDPのポート番号として0x83b6を使用しており、要求パケットの送信先のIPアドレス(Dest IP)を「255.255.255.255」、MACアドレス(Dest MAC)を0xffffffffffffとしている。   In particular, the configurator protocol uses 0x83b6 as the UDP port number, the destination IP address (Dest IP) of the request packet is “255.255.255.255”, and the MAC address (Dest MAC) is 0xffffffffffff.

ここで言うMACアドレスとは、ネットワーク固有の物理アドレスである。Ethernetであれば、6バイト長で先頭の3バイトはベンダーコードとしてIEEE(Institute of Electrical and Electronic Engineers、米国電気電子学会)が管理/割り当てを行っている。残りの3バイトは各ベンダーで独自に(重複しないように)管理しているコードである。   The MAC address here is a physical address unique to the network. In the case of Ethernet, the leading 3 bytes are 6 bytes long and are managed / assigned by IEEE (Institute of Electrical and Electronic Engineers, American Institute of Electrical and Electronics Engineers) as vendor code. The remaining 3 bytes are codes managed independently by vendors (to avoid duplication).

その結果、世界中で同じ物理アドレスを持つネットワーク機器は存在せず、全て異なるアドレスが割り当てられることになる。このアドレスが0xffffffffffffの場合にはブロードキャストパケットとして取り扱われ、そのネットワーク上に接続しているデバイス全てがこのパケットを受信することになる。   As a result, there are no network devices having the same physical address in the world, and all different addresses are assigned. When this address is 0xffffffffffff, it is handled as a broadcast packet, and all the devices connected on the network receive this packet.

このようなコンフィグレータプロトコルではPC103からネットワークボード101の設定、参照、リセット、および探索が可能である。   With such a configurator protocol, the network board 101 can be set, referred to, reset, and searched from the PC 103.

図5は、図4に示したコンフィグレータプロトコルにおけるパケットのデータ部の構造の概略図である。   FIG. 5 is a schematic diagram of the structure of the data portion of the packet in the configurator protocol shown in FIG.

図5において、パケットのデータ部各パラメータの詳細は以下の通りである。
Version(2byte)で、本バージョンは0x0300(バージョン3.00)である。Request Code(2byte)は、本パケットで要求する機能を示すコードで、「0」はSet(設定)を、「1」はGet(参照)を、「2:」はNVRAM−Reset(NVRAM値でリセット)を、「3」はFactory−Reset(工場初期値でリセット)を、「4」はDiscovery(探索)を示す。
In FIG. 5, the details of each parameter of the data portion of the packet are as follows.
Version (2 bytes), this version is 0x0300 (version 3.00). Request Code (2 bytes) is a code indicating the function requested in this packet, “0” is Set (setting), “1” is Get (reference), “2:” is NVRAM-Reset (NVRAM value). "Reset", "3" indicates Factory-Reset (reset with factory default value), and "4" indicates Discovery.

また、Result Code(2byte)は要求された結果を示すコードで、例えば「0x0000」は成功を、「0x0001」はメディアタイプ異常を、「0x0002」は指定プロトコルスタックなしを、「0x0003」はバージョン異常を、「0x0100」はプロトコル設定異常詳細不明 )を、「0x0101」はプロトコル設定異常(NetWare IPX)を、「0x0102」はプロトコル設定異常(TcpIp)を、「0x0104」はプロトコル設定異常(AppleTalk)を、「0x0108」はプロトコル設定異常(TokenRing)を示す。   The Result Code (2 bytes) is a code indicating the requested result. For example, “0x0000” indicates success, “0x0001” indicates a media type error, “0x0002” indicates no specified protocol stack, and “0x0003” indicates a version error. "0x0100" indicates protocol setting error details unknown), "0x0101" indicates protocol setting error (NetWare IPX), "0x0102" indicates protocol setting error (TcpIp), and "0x0104" indicates protocol setting error (AppleTalk). “0x0108” indicates a protocol setting error (TokenRing).

さらに、Media Type(2byte)は通信メディアで、「0」はEtherNetを、「1」はTokenRingを示す。   Further, Media Type (2 bytes) is a communication medium, “0” indicates EtherNet, and “1” indicates TokenRing.

また、Protocol Infoはそれぞれのプロトコル情報に対応するフラグで、Request Codeが「0(設定)」の場合、対応するバイトが「1」のプロトコルに関する情報のみが設定される。
NetWare Infoは、NetWareに関連する情報の設定および参照を行うフィールドであり、FrameType(2byte)はNetWareで使用するフレームタイプを示し、<EtherNet>である場合、「0」はDisable(NetWare使用不可)を、「1」は802.3を、「2」は802.2を、「4」はEtherNetIIを、「8」は802.2SNAPを、「16」はAutoSenseを示す。
Protocol Info is a flag corresponding to each protocol information, and when the Request Code is “0 (set)”, only information related to the protocol whose corresponding byte is “1” is set.
NetWare Info is a field for setting and referencing information related to NetWare. FrameType (2 bytes) indicates a frame type used in NetWare. When <EtherNet> is set, “0” is Disable (NetWare cannot be used). “1” indicates 802.3, “2” indicates 802.2, “4” indicates EtherNet II, “8” indicates 802.2 SNAP, and “16” indicates AutoSense.

また、<TokenRing>である場合、「0」はDisable(NetWare使用不可)を、「1」はTOKENRINGを、「2」はTOKEN_SNAPを示す。   In the case of <TokenRing>, “0” indicates Disable (cannot use NetWare), “1” indicates TOKENRING, and “2” indicates TOKEN_SNAP.

また、TcpIp Infoは、TcpIpに関連する情報の設定および参照を行うフィールドで、ErameType(2byte)とTcpipで使用するフレームタイプとからなり、Tcpipで使用するフレームタイプが「0」はDisable(TcpIp使用不可)を示し、「4」はEtherNetIIを示す。   TcpIp Info is a field for setting and referencing information related to TcpIp. It is composed of FrameType (2 bytes) and the frame type used in Tcpip. The frame type used in Tcpip is “Disable” (TcpIp is used). "4" indicates EtherNet II.

IP mode(2byte)は、IPアドレス決定方法で、参照時には以下の値がORされており、「0」はIP固定(NVRAM値より立ち上がる)を、「1」はBOOTP validを、「2」はRARP validを、「4」はDHCP validを示す。 IP mode (2 bytes) is an IP address determination method, and the following values are ORed at the time of reference: “0” is IP fixed (rising from NVRAM value), “1” is BOOTP valid, “2” is RARP valid, “4” indicates DHCP valid.

IP address(4byte)は、ネットワークボードのIPアドレスである。また、Gateway address (4byte)は、ネットワークボードのGatewayアドレスであり、Subnetmask(4byte)は、ネットワークボードのサブネットマスクでる。   IP address (4 bytes) is the IP address of the network board. Gateway address (4 bytes) is the gateway address of the network board, and Subnetmask (4 bytes) is the subnet mask of the network board.

さらに、AppleTalk Infoは、AppleTalk(登録商標)に関連する情報の設定および参照を行うフィールドであり、FrameType(2byte)とAppleTalkで使用するフレームタイプとからなり、「0」はDisable(AppleTalk使用不可)を、「1」はPhase1を示し、「2」はPhase2を示し、「3」はPhase1 and Phase2を示す。   In addition, AppleTalk Info is a field for setting and referring to information related to AppleTalk (registered trademark), and is composed of FrameType (2 bytes) and a frame type used in AppleTalk, and “0” is Disable (Cannot use AppleTalk). “1” indicates Phase 1, “2” indicates Phase 2, and “3” indicates Phase 1 and Phase 2.

MACaddress(6byte)はボードのMACアドレスであり、RequestCodeが「4(Discovery)」以外の場合で、本フィールドの値とネットワークボードのMACアドレスが一致しない場合、パケットは無視される。   MAC address (6 bytes) is the MAC address of the board. If RequestCode is other than “4 (Discovery)” and the value of this field does not match the MAC address of the network board, the packet is ignored.

〔設定シーケンス〕
図6は、本発明に係るネットワークシステムにおけるパケットの流れを説明する概略図であり、実施形態に係るコンフィギュレータプロトコルによるネットワーク設定の流れに対応する。
[Setting sequence]
FIG. 6 is a schematic diagram for explaining a packet flow in the network system according to the present invention, and corresponds to a network setting flow by the configurator protocol according to the embodiment.

図7は、図1に示したPC103に表示されるネットワークインタフェースボード設定画面の一例を示す図であり、NetWare,TCP/IP,AppleTalkについての設定フィールドを備えている場合に対応する。   FIG. 7 is a diagram showing an example of a network interface board setting screen displayed on the PC 103 shown in FIG. 1, and corresponds to a case where setting fields for NetWare, TCP / IP, and AppleTalk are provided.

本実施形態では、図6に示すように時間軸を縦方向にとって、ネットワーク設定ソフトウェアから探索要求パケット701がLAN100上にブロードキャストされると、ネットワークボード101がその要求パケットを受信して応答パケットを返信する。   In this embodiment, when the search request packet 701 is broadcast on the LAN 100 from the network setting software with the time axis set in the vertical direction as shown in FIG. 6, the network board 101 receives the request packet and returns a response packet. To do.

PC103が応答パケットを受け取り、ネットワーク設定ソフトウェアは、図7で示されるデバイスリストにユーザに設定を行わせるデバイスのリストを表示する。ユーザは、デバイスリストからデバイスを選択し、図7で示される画面で必要な設定項目を入力する。   The PC 103 receives the response packet, and the network setting software displays a list of devices that allow the user to make settings in the device list shown in FIG. The user selects a device from the device list and inputs necessary setting items on the screen shown in FIG.

そこで、ネットワーク管理ソフトウェアは設定要求パケット(Set要求)703を対象デバイスに送信する。ネットワークボード101は、設定を行い、結果をSet応答704でPC103に返信する。   Therefore, the network management software transmits a setting request packet (Set request) 703 to the target device. The network board 101 performs the setting, and returns the result to the PC 103 with a Set response 704.

図8は、本発明に係る情報処理装置における第1のデータ処理手順の一例を示すフローチャートであり、ブロードキャストに対してネットワークボードが返信した応答パケットを受け取り、デバイスリストを表示する処理手順に対応する。なお、S1001〜S1006は各ステップを示す。   FIG. 8 is a flowchart showing an example of a first data processing procedure in the information processing apparatus according to the present invention, which corresponds to the processing procedure for receiving a response packet returned from the network board in response to the broadcast and displaying the device list. . S1001 to S1006 indicate each step.

なお、図9は、図1に示したPC103に表示されるネットワークインタフェースボード追加設定画面例を示す図である。   FIG. 9 is a diagram showing an example of a network interface board addition setting screen displayed on the PC 103 shown in FIG.

先ず、ステップS1001で、ネットワーク設定ソフトウェアはDiscoverパケットを送信し、本実施形態に係るコンフィギュレータパケットに対応しているネットワークボードからの応答パケットを受信する。   First, in step S1001, the network setting software transmits a Discover packet, and receives a response packet from the network board corresponding to the configurator packet according to the present embodiment.

そして、ネットワーク設定ソフトウェアは、受信した全ての応答パケットに対してステップS1002で、コンフィギュレータパケット中の、TcpIp InfoにあるIP Address及びSubnetmaskを読み出し、それらからネットワークボード(NIC)のIPアドレスのネットワーク部を得る。   In step S1002, the network setting software reads the IP address and subnet mask in the TcpIp Info in the configurator packet for all received response packets, and the network part of the IP address of the network board (NIC) is read from them. obtain.

次に、ステップS1003では、PC103のIPアドレスのネットワーク部を取得する。そして、ステップS1004では、ステップS1002、ステップS1003で得られた各IPアドレスのネットワーク部が同一かどうかを判断して、同一であると判断した場合は、処理を終了し、異なっていると判断した場合は、ステップS1002を返信したネットワークボードは、PC103のネットワークで稼動し得ない状態にあることになるので、設定が必要なネットワークボードであると判断し、ステップS1005で、図9に示すようなデバイスリストに表示する。次に、ステップS1006で、ユーザは設定を行い、処理を終了する。 In step S1003, the network part of the IP address of the PC 103 is acquired. In step S1004, it is determined whether or not the network part of each IP address obtained in steps S1002 and S1003 is the same. If it is determined that they are the same, the process is terminated and it is determined that they are different. In this case, since the network board that has returned step S1002 cannot operate on the network of the PC 103, it is determined that the network board needs to be set, and in step S1005, as shown in FIG. Display in device list. Next, in step S1006, the user makes settings and ends the process.

これにより、設定が必要なネットワークボードのみをPC103上の表示装置に対してリスト表示することができる。   As a result, only the network boards that need to be set can be displayed as a list on the display device on the PC 103.

〔第2実施形態〕
図10は、本発明に係る情報処理装置における第2のデータ処理手順の一例を示すフローチャートであり、ブロードキャストに対してネットワークボードが返信した応答パケットを受け取り、デバイスリストを表示する処理手順に対応する。なお、S1101〜S1104は各ステップを示す。
[Second Embodiment]
FIG. 10 is a flowchart showing an example of a second data processing procedure in the information processing apparatus according to the present invention, which corresponds to the processing procedure for receiving a response packet returned from the network board in response to the broadcast and displaying the device list. . S1101 to S1104 indicate each step.

先ず、ステップS1101で、ネットワーク設定ソフトウェアはDlscoverパケットを送信し、本実施形態に係るコンフィギュレータパケットに対応しているネットワークボードからの応答パケットを受信する。   First, in step S1101, the network setting software transmits a Dlscover packet and receives a response packet from the network board corresponding to the configurator packet according to the present embodiment.

そして、ステップS1102で、ネットワーク設定ソフトウェアは、受信した全ての応答パケットに対してコンフィギュレータパケット中の設定情報を、ネットワーク設定ソフトウェアが予め持っているネットワークボードの工場出荷値と比較して、一致していないと判断した場合は、処理を終了し、一致していると判断した場合は、該一致していたネットワークボードを設定が必要なネットワークボードであると判断して、ステップS1103で、図9で例示したデバイスリストに表示する。そして、ステップS1104で、ユーザは設定を行い、処理を終了する。   In step S1102, the network setting software compares the setting information in the configurator packet with respect to all received response packets by comparing the factory setting value of the network board that the network setting software has in advance. If it is determined that the network board does not match, the process is terminated. If it is determined that the network board matches, it is determined that the matching network board is a network board that needs to be set, and in step S1103, FIG. Displayed in the exemplified device list. In step S1104, the user makes settings and ends the process.

これにより、設定が必要なネットワークボードのみをPC103上の表示装置に対してリスト表示することができる。   As a result, only the network boards that need to be set can be displayed as a list on the display device on the PC 103.

上記実施形態によれば、ネットワークボードとネットワーク設定ソフトウェアが稼動しているPCのIPアドレスのネットワーク部の情報を利用することにより、設定が必要なネットワークボードのみをリスト表示することができ、ユーザは設定が必要なネットワークボードがどれかを調べる必要がなくなるり、ユーザによるネットワークデバイスに対する設定時における操作確認処理負担を大幅に軽減することができる。   According to the above embodiment, by using the information of the network part of the IP address of the PC on which the network board and the network setting software are running, it is possible to display only a list of network boards that need to be set. It is not necessary to check which network board needs to be set, and the operation confirmation processing burden when setting the network device by the user can be greatly reduced.

以下、図11に示すメモリマップを参照して本発明に係る情報処理装置を適用可能なネットワークシステムで読み出し可能なデータ処理プログラムの構成について説明する。   The configuration of a data processing program that can be read by a network system to which the information processing apparatus according to the present invention can be applied will be described below with reference to the memory map shown in FIG.

図11は、本発明に係る情報処理装置を適用可能なネットワークシステムで読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。   FIG. 11 is a diagram for explaining a memory map of a storage medium for storing various data processing programs that can be read by a network system to which the information processing apparatus according to the present invention can be applied.

なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
Although not particularly illustrated, information for managing a program group stored in the storage medium, for example, version information, creator, etc. is also stored, and information depending on the OS on the program reading side, for example, a program is identified and displayed. Icons may also be stored.
Further, data depending on various programs is also managed in the directory. In addition, a program for installing various programs in the computer, and a program for decompressing when the program to be installed is compressed may be stored.

本実施形態における図8,図10に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。   The functions shown in FIGS. 8 and 10 in the present embodiment may be performed by a host computer by a program installed from the outside. In this case, the present invention is applied even when an information group including a program is supplied to the output device from a storage medium such as a CD-ROM, a flash memory, or an FD, or from an external storage medium via a network. Is.

以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。   As described above, a storage medium storing software program codes for realizing the functions of the above-described embodiments is supplied to a system or apparatus, and the computer (or CPU or MPU) of the system or apparatus is stored in the storage medium. It goes without saying that the object of the present invention can also be achieved by reading and executing the program code.

この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。   In this case, the program code itself read from the storage medium realizes the novel function of the present invention, and the storage medium storing the program code constitutes the present invention.

プログラムコードを供給するための記憶媒体としては、例えば、フロッピーディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROM,EEPROM等を用いることができる。 As a storage medium for supplying the program code, for example, a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, a ROM, an EEPROM, or the like is used. it can.

また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) or the like running on the computer based on the instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.

さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Further, after the program code read from the storage medium is written to a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the case where the CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.

なお、上記第1実施形態と第2実施形態とに示したネットワークシステムを適宜有効に組み合わせてなる新たな実施形態も本発明の適用範囲であることは言うまでもない。   Needless to say, a new embodiment in which the network systems shown in the first embodiment and the second embodiment are effectively combined as appropriate is also within the scope of the present invention.

また、ネットワークデバイスとして、プリンタ装置を例とする場合について説明したが、複数の画像処理、例えばスキャナ機能処理,プリント機能処理,ファクシミリ通信機能処理等を行うマルチファンクション装置であってもネットワーク対応機器であれば、本発明を適用可能であることは言うまでもない。   Further, the case where a printer device is taken as an example of the network device has been described. However, even a multi-function device that performs a plurality of image processing such as scanner function processing, print function processing, facsimile communication function processing, etc. Needless to say, the present invention is applicable.

100 ローカルエリアネットワーク(LAN)
101 ネットワークボード(NB)
102 プリンタ
103 パーソナルコンピュータ(PC)
201〜206 プリンタ
301 CPU
302 ROM
303 RAM
100 Local Area Network (LAN)
101 Network board (NB)
102 Printer 103 Personal Computer (PC)
201-206 Printer 301 CPU
302 ROM
303 RAM

Claims (7)

ネットワークを介してネットワークデバイスと通信可能な情報処理装置であって、
前記ネットワークデバイスの工場出荷時のネットワーク設定情報を予め保持する保持手段と、
前記ネットワーク上のネットワークデバイスから、当該ネットワークデバイスに現在設定されているネットワーク設定情報を受信する受信手段と、
前記受信手段が受信した前記ネットワークデバイスに現在設定されているネットワーク設定情報が、前記保持手段に予め保持されている前記ネットワークデバイスの工場出荷時のネットワーク設定情報と一致するか否かを判定する判定手段と、
前記判定手段による判定の結果、前記受信手段が受信した前記ネットワークデバイスに現在設定されているネットワーク設定情報が、前記保持手段に予め保持されている前記ネットワークデバイスの工場出荷時のネットワーク設定情報と一致すると判定された場合に、設定が必要なネットワークデバイスとして前記ネットワークデバイスをユーザに提示する提示手段と、
を備えることを特徴とする情報処理装置。
An information processing apparatus capable of communicating with a network device via a network,
Holding means for holding in advance network setting information at the time of factory shipment of the network device;
Receiving means for receiving network setting information currently set in the network device from the network device on the network;
Determination to determine whether the network setting information currently set in the network device received by the receiving unit matches the network setting information at the time of factory shipment of the network device held in advance in the holding unit Means,
As a result of the determination by the determination unit, the network setting information currently set in the network device received by the receiving unit matches the network setting information at the time of factory shipment of the network device held in advance in the holding unit. Then, when it is determined, a presentation unit that presents the network device to the user as a network device that needs to be set;
An information processing apparatus comprising:
前記提示手段は、現在設定されているネットワーク設定情報が工場出荷時のネットワーク設定情報と一致すると判定されたネットワークデバイスを示す情報を、表示手段に表示させることを特徴とする請求項1に記載の情報処理装置。   2. The display unit according to claim 1, wherein the presenting unit causes the display unit to display information indicating a network device that has been determined that the currently set network setting information matches the factory default network setting information. Information processing device. 前記提示手段は、現在設定されているネットワーク設定情報が工場出荷時のネットワーク設定情報と一致しないと判定されたネットワークデバイスを示す情報を、前記表示手段に表示させないことを特徴とする請求項2に記載の情報処理装置。   3. The presenting means does not cause the display means to display information indicating a network device that has been determined that the currently set network setting information does not match factory default network setting information. The information processing apparatus described. 前記提示手段は、現在設定されているネットワーク設定情報が工場出荷時のネットワーク設定情報と一致すると判定されたネットワークデバイスが複数存在する場合に、当該複数のネットワークデバイスを示す情報を、前記表示手段にリスト表示させることを特徴とする請求項2または3に記載の情報処理装置。   The presenting means displays information indicating the plurality of network devices on the display means when there are a plurality of network devices determined that the currently set network setting information matches the network setting information at the time of shipment from the factory. 4. The information processing apparatus according to claim 2, wherein a list is displayed. 前記提示手段により提示されたネットワークデバイスからユーザにより選択されたネットワークデバイスに対して、前記ネットワークを介してネットワーク設定を行う設定手段を更に備えることを特徴とする請求項4に記載の情報処理装置。   The information processing apparatus according to claim 4, further comprising a setting unit configured to perform network setting via the network for a network device selected by a user from the network device presented by the presenting unit. ネットワークを介してネットワークデバイスと通信可能な情報処理装置の制御方法であって、
前記ネットワークデバイスの工場出荷時のネットワーク設定情報を予め保持する保持ステップと、
前記ネットワーク上のネットワークデバイスから、当該ネットワークデバイスに現在設定されているネットワーク設定情報を受信する受信ステップと、
前記受信ステップで受信した前記ネットワークデバイスに現在設定されているネットワーク設定情報が、前記保持ステップで予め保持された前記ネットワークデバイスの工場出荷時のネットワーク設定情報と一致するか否かを判定する判定ステップと、
前記判定ステップにおける判定の結果、前記受信ステップで受信した前記ネットワークデバイスに現在設定されているネットワーク設定情報が、前記保持ステップで予め保持された前記ネットワークデバイスの工場出荷時のネットワーク設定情報と一致すると判定された場合に、設定が必要なネットワークデバイスとして前記ネットワークデバイスをユーザに提示する提示ステップと、
を備えることを特徴とする情報処理装置の制御方法。
An information processing apparatus control method capable of communicating with a network device via a network,
A holding step for holding network setting information at the time of factory shipment of the network device in advance;
Receiving from the network device on the network the network setting information currently set in the network device;
Determination step of determining whether the network setting information currently set in the network device received in the receiving step matches the network setting information at the time of factory shipment of the network device held in advance in the holding step. When,
As a result of the determination in the determination step, when the network setting information currently set in the network device received in the reception step matches the network setting information at the time of factory shipment of the network device previously held in the holding step A presentation step of presenting the network device to a user as a network device that needs to be configured if determined;
An information processing apparatus control method comprising:
請求項6に記載の情報処理装置の制御方法をコンピュータに実行させるためのプログラム。



A program for causing a computer to execute the control method of the information processing apparatus according to claim 6.



JP2010269019A 2010-12-02 2010-12-02 Information processing apparatus, control method for information processing apparatus, and program Expired - Fee Related JP5044007B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010269019A JP5044007B2 (en) 2010-12-02 2010-12-02 Information processing apparatus, control method for information processing apparatus, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010269019A JP5044007B2 (en) 2010-12-02 2010-12-02 Information processing apparatus, control method for information processing apparatus, and program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2001098563A Division JP4717240B2 (en) 2001-03-30 2001-03-30 Information processing apparatus, information processing apparatus control method, and storage medium

Publications (2)

Publication Number Publication Date
JP2011100469A JP2011100469A (en) 2011-05-19
JP5044007B2 true JP5044007B2 (en) 2012-10-10

Family

ID=44191543

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010269019A Expired - Fee Related JP5044007B2 (en) 2010-12-02 2010-12-02 Information processing apparatus, control method for information processing apparatus, and program

Country Status (1)

Country Link
JP (1) JP5044007B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5980078A (en) * 1997-02-14 1999-11-09 Fisher-Rosemount Systems, Inc. Process control system including automatic sensing and automatic configuration of devices
GB9718722D0 (en) * 1997-09-04 1997-11-12 Comm & Control Electronics Ltd Local communication system
JP2001056896A (en) * 1999-08-18 2001-02-27 Yokogawa Electric Corp Measurement system
JP2001069160A (en) * 1999-08-31 2001-03-16 Ricoh Co Ltd Network setting system, interface device, setting device and network setting method

Also Published As

Publication number Publication date
JP2011100469A (en) 2011-05-19

Similar Documents

Publication Publication Date Title
JP4235460B2 (en) Network device management method, network device management program, and network control apparatus
EP2866389B1 (en) Method and device thereof for automatically finding and configuring virtual network
US20040028061A1 (en) Address autoconfiguration method for home network
JP4974848B2 (en) Network management device, network management method, and program for executing network management method
US20080089323A1 (en) System and method for assigning virtual local area networks
JP2022033791A (en) Bras system-based packet encapsulation method and device
JP2006343852A (en) Information processing server, and remote operation system and method
JP4717240B2 (en) Information processing apparatus, information processing apparatus control method, and storage medium
US7945649B2 (en) Information processing device, information processing method, and computer-readable medium for setting a value used in network communications
WO2006011698A2 (en) Apparatus and method for managing addresses of network elements
JP3658206B2 (en) Network device control apparatus and method
JP5044007B2 (en) Information processing apparatus, control method for information processing apparatus, and program
US20080232370A1 (en) Method of communication in LAN without setting IP
JP2005341287A (en) Network device, and network connection setting program
JP2004030062A (en) Equipment, method, and program for managing network
JP4272928B2 (en) Network device and device setting device
JP2000183874A (en) Method and proxy server system for multi-protocol network management, server system for multi-protocol address management, and multiprotocol network management system
JP4976672B2 (en) Network device apparatus, data processing method, and computer program
JP2005136718A (en) Network access managing method, network access managing device, network service providing method, network service providing system, its program, and storage medium
KR101860964B1 (en) Method and system for securing access to configuration information stored in universal plug and play data models
JP5213070B2 (en) Wireless communication network connection system and wireless communication network connection method
JP2001154967A (en) Network device, network control method, computer readable recording medium for string control program and network device control program
JP3869924B2 (en) Network control device, communication protocol setting method, and storage medium storing computer-readable program
JP2004070726A (en) Method and apparatus for managing network device, and recording medium
CN118018513A (en) Multi-service channel DNS query method and device based on port binding

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120710

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120712

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150720

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees