JP2004088471A - Decentralized processing system - Google Patents

Decentralized processing system Download PDF

Info

Publication number
JP2004088471A
JP2004088471A JP2002247375A JP2002247375A JP2004088471A JP 2004088471 A JP2004088471 A JP 2004088471A JP 2002247375 A JP2002247375 A JP 2002247375A JP 2002247375 A JP2002247375 A JP 2002247375A JP 2004088471 A JP2004088471 A JP 2004088471A
Authority
JP
Japan
Prior art keywords
connection
address
card
network
processing system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002247375A
Other languages
Japanese (ja)
Inventor
Takeshi Masazumi
正瑞 武司
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.)
Hitachi Kokusai Electric Inc
Original Assignee
Hitachi Kokusai Electric 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 Hitachi Kokusai Electric Inc filed Critical Hitachi Kokusai Electric Inc
Priority to JP2002247375A priority Critical patent/JP2004088471A/en
Publication of JP2004088471A publication Critical patent/JP2004088471A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To perform synchronous start-up processing of a decentralized processing system at a high speed. <P>SOLUTION: In a decentralized processing system which comprises a plurality of devices connected through a network and allows the devices to perform a portion of start-up processing cooperatively through TCP connection, the respective devices, immediately after it becomes possible to transmit UDP packets, repeatedly send connection preparation completion messages including their IP addresses, wait port numbers, and numbers for identifying the devices to a broadcast address of the network by using UDP packets until connections of all the devices which need to be connected are completed and also try TCP connections with the transmission-source devices of the messages by using at least one of the IP addresses and wait ports of the messages. When transmitting the messages, devices automatically assign the IP addresses to themselves. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】本発明は、ネットワークで接続された複数の機器からなる分散処理システムに関し、、特にその立上げ処理を機器間で同期して行う分散処理システムに関する。
【0002】
【従来の技術】一般に、ネットワークにより物理的に接続され、TCP(Transmission  control protocol)或いはUDP(User Datagram  Protocol)を用いて通信するネットワーク機器からなる、分散処理システムが知られている。以下に、上記分散処理システムの各ネットワーク機器の電源投入後の立上げ処理の一例を説明する。ただし、各ネットワーク機器はほぼ平等で、立上げ処理において主導的役割を果たすような所謂サーバは存在しないものとする。
【0003】電源投入後の初期段階では、個々のネットワーク機器(以下機器と略す)では内部のCPU(Central  Processor  Unit)が独立して動作し、夫々の機器単体で実行可能な第1の初期化処理を行う。その次に、データ通信を行いながら、他の機器と同期して為される第2の初期化処理を行う。機器の立上げ処理を素早く行うためには、各装置においてTCP/IP通信が利用可能となるのに合わせ、出来るだけ早く他機器とTCPリンクを確立し、第2の初期化処理を開始するようにしている。
【0004】また、同様の分散処理システムの立上げ処理に関する従来技術として、特開2000−78171号公報「産業設備を運転するためのシステムの機器にコンピュータアドレスを割り当てる方法」がある。この従来技術は、立上げ処理に必要なIPアドレスの決定をUDPの同報通信機能を利用して行うものである。
【0005】
【発明が解決しようとする課題】しかしながら以上従来技術は、機器のCPU負荷の増加により他の初期化処理を妨げることなく、最短の時間でTCPリンクを確立すつことは困難であった。つまり、各機器の担当機能やハードウェア構成の違いにより、ネットワークデバイスやTCP/IP処理部の初期化処理が終了するまでの時間も異なり、一方の機器のCPU(CPU1)がTCP/IP通信可能になっても、もう一方(CPU2)では通信が可能とは限らない。この場合、CPU1からCPU2へのTCP接続処理は失敗する。可能な限り早くTCP接続を確立しようとすると、CPU2が通信可能になるまで、CPU1は繰り返し接続処理を行う必要がある。しかしこれはCPU資源の無駄であり、特にTCP接続中はエラー制御やフロー制御が可能なように複雑な処理が必要とされるので、並列で行われている別の初期化処理を遅らせ、機器の立上げ時間が長くなるという問題があった。或いは、無駄なCPU時間を消費しないように、TCP接続処理をある間隔を置いて行うこともできるが、この場合は最短の時間でTCP接続を確立できないという問題があった。
【0006】本発明は、上記実情に鑑みて為されたものであって、CPUに負担をかけることなくより短い時間でTCPリンクを確立して、立上げ処理を高速に行う無線基地局装置を提供することを目的とする。
【0007】
【課題を解決するための手段】上記の目的を達成するために本発明は、請求項1では、複数のネットワーク機器と、前記複数のネットワーク機器を互いに接続するネットワークとからなり、前記複数のネットワーク機器が立上げ処理の一部を同期して行う分散処理システムであって、前記複数のネットワーク機器の夫々が、UDPパケットが送信可能になると直ちに、夫々のIPアドレスと、待受けポート番号と、ネットワーク機器を識別するための番号とを含む接続準備完了メッセージを、UDPパケットを用いて、前記ネットワークのブロードキャストアドレス宛てに、接続が必要な全てのネットワーク機器との接続が完了するまで繰返し送信、
前記複数のネットワーク機器の少なくとも一つが、受信した前記接続準備完了メッセージが含む前記番号のネットワーク機器に対し、受信した前記接続準備完了メッセージが含む前記IPアドレスか待受けポートの少なくとも一方を利用してTCP接続を試行することを特徴とする分散処理システム。
【0008】前記一部の立上げ処理を行うのに必要な接続が確立された時点で、前記一部の立上げ処理を開始することを特徴とする請求項1記載の分散処理システム。
【0009】前記複数のネットワーク機器の少なくとも一つが、自身のIPアドレスが取り得る範囲と、他のネットワーク機器から受信した前記接続準備完了メッセージが含むIPアドレスとを記憶し、
自身が送信する接続準備完了メッセージが含むIPアドレスを、直前の自身のIPアドレス以上で、且つ、記憶している他のネットワーク機器のIPアドレスに重複せず、且つ、記憶している前記範囲の内で最小のIPアドレスに設定することを特徴とする請求項1記載の分散処理システム。
【0010】
【発明の実施の形態】≪第1の実施の形態≫以下、図面を参照して本発明の第1の実施の形態を説明する。なお、以下で説明する機能実現手段は、当該機能を実現できる手段であれば、どのような回路または装置であっても構わず、単数或いは複数の要素から構成されてもよく、また機能をソフトウェア或いはハードウェアのどちらで実現してもよい。
【0011】図1は、本発明の実施の形態に係る無線基地局装置のハードウェア構成図である。図1に示すように、無線信号の送受を行う無線部1と、通話に伴う信号処理などの制御を行う制御部2と、電話網上位装置(図示せず)との接続を行う有線伝送路部3とを備える。
【0012】図2は、制御部2の内部構成図である。制御部2は、カード21、22、23で構成されている。各カードは夫々、CPUと、ネットワークポートと、メモリとを備える。各カードは、無線基地局装置で必要な制御を分担しており、分担に応じて無線部1や有線伝送路3とのインターフェース(図示せず)も備える。
【0013】また各カードにおいて、CPU21a、22a、23aは、カードが分担する主要な制御を行う。通常、各カードのCPUは同等の処理能力を有する。ネットワークポート21b、22b、23bは、各カードをネットワーク  LAN24を介して互いに接続する。これによりカード間の連携処理に必要なデータ通信をTCP接続を用いて行う。メモリ21c、22c、23cは、TCP接続を確立すべき他カードのカード番号、IPアドレス、ポート番号、接続方向(接続処理をどちらが行うか)、接続状態を接続テーブルとして記憶する。またメモリ21c、22c、23cは、自カードのカード番号、IPアドレス、ポート番号も記憶する。カード番号は、各カードを識別するために各カードの機能分担に応じて割当てるものであって、本実施例の形態においては、各カードで重複しないように割当てられる。接続テーブルを記憶するメモリには通常、不揮発性メモリーを用いる。
【0014】図3は、メモリ21cが記憶する接続テーブルの構成図である。図3において、カード21はカード22、23とTCP接続するため、カード21とカード23へのエントリを備え、カード21からカード22、カード23からカード21の向きで接続する設定となっている。また接続テーブルにはカード22とカード23間のリンクに関する情報は存在しないが、これはカード21にとって不要なためである。
【0015】図4は、接続処理のフローチャートである。以下カード21での処理を処理フローに沿って説明する。ただし他のカードの処理も同様であり、夫々のCPUによりほぼ並行して行われる。
【0016】まず、CPU21aは立上げ処理を開始すると、夫々のカード単体で実行可能な第1の立上げ処理として、他カードとのTCPやUDP接続をアプリケーションが利用可能になるようにソケットの準備を行う(S101)。この時、当該接続処理以外の立上げ処理も並列に行われてもよい。次に、接続テーブルの接続状況欄を全て未接続に設定する(S102)。
【0017】続いて、各カードが接続されたネットワーク LAN24のブロードキャストアドレス宛てにUDPプロトコルを用い、図5に図示するような接続準備完了メッセージを送る(S103)。このメッセージはカード21がTCP接続可能になったことをカード22、23に通知するために用いられる。本メッセージにはカード21の番号(1)の他に、カード21のIPアドレス、及び当該TCP接続手順で使用するポート番号(6300)が備えられる。これにより、カード21がTCP接続時に待受けるIPアドレス、ポート番号が、カード22、23がメモリに記憶しているカード21のIPアドレス、ポート番号の初期値と異なる値に変更されている場合にも、本メッセージを受信することで正しいアドレス、ポート番号を知ることができる。また、本メッセージはUDPプロトコルのため、事前のリンク設定が不要であり、また、ブロードキャストを用いるため、1回の送信でLAN上の全てのカードに対し一度にメッセージを送信できる。
【0018】S103において接続準備完了メッセージは、S101で行ったUDP接続のための準備が完了しUDPパケットが送信可能になると速やかに行われ、TCP接続のための準備の完了を待つ必要なない。速やかとは、後述する送信間隔と同程度かそれ以下の時間で行うものであって、通常容易に達成できる。また、本メッセージは接続テーブルに存在する全てのカードとの接続が完了するまで、つまり接続状況欄が全て接続済みになるまで、繰り返し送信される。ただし、一回目の送信が終了した時点で次のS104の処理は開始し、2回目以降の送信は他の処理と並列で行われる。送信間隔は任意(例えば10ms)であるが、一定周期よりもある程度ランダムなほうが良い。乱数発生源の初期値として各カードで異なる値(例えばカード番号1〜3)を用いることができる。
【0019】S103の一回目の送信の後、接続テーブルを参照し、自カード21から接続すべきカードがあるか確認する(S104)。接続すべきカードがある場合、それらに対して並列に、TCP接続を試行する(S105)。以降の処理も接続先カード夫々に対し独立に並列処理される。
【0020】S105の試行の結果は3通りあるが、接続成功と失敗により2つに条件分岐する(S106)。つまり結果1つ目の、接続先のカード22が接続準備ができていない場合、2つ目の、カード22が初期値と異なるIPポートアドレス、ポート番号で待受けている場合は、いずれも接続に失敗する。一方、結果3つ目の、カード21よりカード22が既に接続可能となっている場合は接続に成功する。
【0021】接続に失敗したと判断された場合、接続先のカード22からの接続準備完了メッセージを待つ(S107)。メッセージを受信したら、接続テーブルのIPアドレス、ポート番号を更新する(S108)。
【0022】そして、S105にジャンプし、メッセージを送信した当該カードに再度接続を試みる。例えば、カード21の接続テーブルと異なるIPアドレス或いはポート番号でカード22が待受けている場合、カード21からカード22への接続処理は(タイムアウト等で)失敗するが、カード22からの接続完了メッセージを受信して正しい接続先に修正されれば、接続は通常、成功する。
【0023】次のS106において接続成功と判断されると、接続テーブルの接続状況欄に接続済をマークする(S109)。
【0024】いずれかのカードとの接続が完了すると、残りのカードの接続が全ての終了するまで、待機する(S110)。そして、全てのカードとの接続が終了したら、S103により今までバックグランドで行っていた接続準備完了メッセージ送信処理を終了し(S111)、TCP接続処理は完了する。
【0025】以上の処理において、S103以降に他のカードからTCP接続を受けた場合は、図4のフローとは並列に、或いはフローを中断して他のカードとの接続処理に応じる。なお、各カードのIPアドレス、待受けポート番号が変更になった場合を除き、接続準備完了メッセージは通常1ないし2回送信するだけで前接続が完了するはずであるが、信頼性を提供しないUDPプロトコルを用いるため、ネットワーク上でのパケット衝突などにより相手カードにメッセージが読み取られないことがあるため、全接続が完了するまで繰り返しメッセージを送信するものである。
【0026】図5は、準備完了メッセージの内容構成図であり、カード21が送信するIPパケットを示している。受信完了メッセージは図示した1IPパケットから構成される。IPパケットの中にUDPパケットがカプセル化されており、UDPパケットのデータ部分に、自カード番号(1)及び、TCP接続で使用するポート番号(6300)が格納される。図5において括弧内の値は内容値の一例であり、特に指示が無いものは10進表記してある。また例が示されていない部分は、一般的なUDP/IPパケットに準ずる。送信元ポート、宛先ポート、及びカード22、23が本パケットを待受けるポート番号は予め決めておく。通常、宛先ポートと待受けポートは全てのカード間で同一(45000)にする。送信元ポートも宛先ポート、待受けポートに一致させる(45000)とよい。
【0027】本パケットはネットワーク上ではネットワークフレームでカプセル化され伝達される。ネットワークフレームが備える送信元ネットワーク(MAC)アドレスとIPパケットヘッダが備える送信元IPアドレスとを、本フレームを受信したカードが関連付けて記憶することで、データリンク層におけるIPアドレスからネットワークアドレスへの変換に利用することができる。
【0028】本実施例の形態において、カード番号は各カードで重複しないように割当てられることが望ましいが、各カードのネットワークポートが備えるネットワークアドレスをカード番号と併せて用いることでカード番号が重複していても各カードを識別することができる。
【0029】以上の処理により、TCP接続のリトライを押させつつ、可能な限り早く各カード間を接続することができる。特に本実施の形態である無線基地局においては、障害発生などにより制御部の再起動が必要になった場合により短い時間で再起動するので、普通時間をより短くできる効果がある。
【0030】≪第2の実施の形態≫以下、図面を参照して本発明の第2の実施の形態を説明する。本実施の形態は、自カードのIPアドレスの事前設定を不要にした点で第1の実施の形態と異なる。なお、本実施の形態の説明に当たり第1の実施の形態の構成と同一構成部分には、同一符号のみを付してその説明を省略する。
【0031】図6に、本実施の形態における、メモリ21c、22c、23cが記憶する接続テーブルを示す。接続テーブルは接続方向(接続処理をどちらが行うか)と、優先接続とを、初期値として記憶する。優先接続は、他のカードと連携して初期化処理を行う必要がある場合にその連携処理(第2の初期化処理)に先駆けてTCP接続を確立するため、第2の初期化処理の開始よりも優先して処理することを意味するフラグであり、論理値(ブーリアン)である。またIPアドレス、ポート番号、接続状況を記憶する領域は第1の実施の形態同様に用意する。
【0032】本実施の形態における接続処理は、第1の立上げ処理(夫々のカード単体で実行可能な処理)と、第2の立上げ処理(カード間で連携して行う処理)に分割される。図7に、第1の立上げ処理で行う接続処理のフローチャートを示す。以下カード21での処理を処理フローに沿って説明する。
【0033】S201からS202は、第1の実施の形態におけるS101からS102と同一の処理を行う。S203は接続準備完了メッセージの繰返し送信を開始するものであるが、後で説明するように、送信する際に自カード21のIPアドレスが変化することがある点でS204と異なる。
【0034】次に、接続先テーブルを検査し、自カード21から優先接続が必要なカードの有無に応じて分岐する(S204)。自カード21から優先接続が必要なカードとは、接続テーブルにおいて接続の向きが1→X(Xは任意)で且つ優先接続のフラグが立っているカードである。
【0035】自カード21から優先接続が必要なカードがある場合、他のカードからの接続準備完了メッセージの受信を待つ(S205)。メッセージを受信すると、メッセージに含まれる送信元IPアドレス、ポート番号及びカード番号を用いて、接続先テーブルを更新する(S206)。
【0036】次に、S206での更新が、自カード21から接続必要なカードであり且つ未接続かどうか判断し、接続必要でないか接続済みの場合は、S205へ分岐する(S207)。
接続必要で且つ未接続の場合は、S105同様にTCP接続を試行する(S208)。このとき、S203で自カードのIPアドレスが更新されている場合、更新された新しいアドレスを使用する。
【0037】そして、接続が成功した場合は接続先テーブルを接続済みに更新し(S209)、S204にジャンプする。
【0038】S204において優先接続が必要なカードがない場合、全てのカードとTCP接続が終了しているか接続先テーブルを検査し(S210)、接続済みの場合は、S110同様に接続準備完了メッセージの送信を終了する(S211)。これにより第1の立上げ処理における接続処理を完了する。
【0039】図9に、S203の処理の内部のフローチャートを示す。本フローチャートの処理は呼び出した図7の処理の子プロセスとして図7の処理と並列に処理される。本実施例において、カード21を含む全てのカードは、自カードが取りうるIPアドレスの範囲を各メモリに記憶しており、カード21の取り得るアドレスは192.168.1.*とする。*は通常0から255までの値を示すが、上記例のアドレスの下位8ビット分の場合は1から254までの値を取り得る。
【0040】本処理においてまず、カード21の取り得るアドレス数に応じたメモリを確保し、図10に示すアドレス表を作成する(S2031)。アドレス表において、取り得るアドレスは昇順に並べられ、夫々のアドレスについてネットワーク上で既に使われているかどうかを示すフラグが設けられている。
【0041】次に、自カード21のIPアドレスの初期値を仮設定する(S2032)。初期値には、自カード21の取り得る最小のアドレスにカード番号1を足した、192.168.0.2を設定する。次に、接続準備完了メッセージを送信する間隔を設定する(S2033)。設定間隔は、接続準備完了メッセージを送信する間隔の各カード共通初期値(例えば10ms)にカード番号1に相当する時間を足した値(例えば11ms)にする。
【0042】次に接続準備完了メッセージをブロードキャストアドレス宛てにUDPプロトコルを用いて送信し(S2034)、タイマを始動する(S2035)。
【0043】タイマが終了するより前に、図7のS211より接続準備完了メッセージ送信終了指令を受け取った場合(S2040)、本処理は終了する。
【0044】或いは、タイマが終了するより前に、他カードからの接続準備完了メッセージを受信した場合(S2037)、受信したメッセージの送信元IPアドレスは既に使われているとして、アドレス表に該当するIPアドレスがあれば、そのフラグを使用済みに設定する(S2038)。そして、現在自カード21が使用しているアドレス値以上で、使用済みでない最小のアドレスを新しいIPアドレスとして仮設定し(S2039)、S2034にジャンプする。仮設定(S2039)は、現アドレスを他のカードが使用していない場合、結果的に現アドレスを変更しない。また、自カードの取り得るアドレス範囲によりこれ以上アドレス値を大きくできなくなったときは、自カードの取り得るアドレス範囲の最小値に戻る。
【0045】送信終了指令と、メッセージのいずれも受信せずタイマが終了した(S2036)場合は、そのままS2034にジャンプする。以上の処理により、接続準備完了メッセージ繰返し送信を行う。
【0046】図8に、第2の立上げ処理で行う接続処理のフローチャートを示す。S301からS306の処理は、図7のS204からS209とほぼ同様であり、S307からS308の処理は図4のS110からS111と同一である。ただし、S301が、自カード21から接続が必要なカードを優先接続のカードに限定しない点でS204と異なる。これにより、第1の立上げ処理で行わなかった自カードからのTCP接続を行い、他カードからの接続を待って、全ての接続処理を完了する。
【0047】以上の処理により、予めIPアドレスを各カードに割当てなくとも、可能な限り早く各カード間を接続できるので、カードの交換や増設が容易に早くできる。
【0048】上記の第1及び第2の実施の形態において、ネットワークポート21b、22b、23bなどが、LANから受信したパケットをバッファリングしている場合、S105でTCP接続を試行する前に、バッファが記憶しているUDPパケットを検査して接続先のカードのIPアドレス、ポート番号が通知されていないか予め確認するようにしてもよい。
【0049】
【発明の効果】本発明の分散処理システムによれば、CPUに負担をかけることなくより短い時間でTCPリンクを確立して、立上げ処理を高速に行うことができる。
【図面の簡単な説明】
【図1】本発明による分散処理システムの第一及び第二の実施の形態の機器構成図。
【図2】図1の機器構成図の一部詳細図。
【図3】第1の実施の形態の分散処理システムのメモリ21bが記憶する接続テーブルを示す説明図。
【図4】第1の実施の形態の分散処理システムの立上げ処理を示すフローチャート。
【図5】第1の実施の形態の分散処理システムが用いる接続準備完了メッセージを構成するUDP/IPパケットのデータ構成図。
【図6】第2の実施の形態の分散処理システムのメモリ21bが記憶する接続テーブルを示す説明図。
【図7】第2の実施の形態の分散処理システムの第1の立上げ処理を示すフローチャート。
【図8】第2の実施の形態の分散処理システムの第2の立上げ処理を示すフローチャート。
【図9】図7の接続準備完了メッセージ繰返し送信開始の詳細動作を示すフローチャート。
【図10】第2の実施の形態の分散処理システムにおいてカード21が用いるアドレス表を示す説明図。
【符号の説明】
1 無線部
2 制御部
3 優先伝送路部
21〜23 カード
21a〜23a CPU
21a〜23a メモリ
21a〜23a ネットワークポート
24 ネットワーク LAN
[0001]
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a distributed processing system comprising a plurality of devices connected via a network, and more particularly to a distributed processing system for performing a start-up process synchronously between the devices.
[0002]
2. Description of the Related Art In general, there is known a distributed processing system including network devices which are physically connected to each other by a network and communicate using TCP (Transmission Control Protocol) or UDP (User Datagram Protocol). Hereinafter, an example of a start-up process after power-on of each network device of the distributed processing system will be described. However, it is assumed that each network device is almost equal, and there is no server that plays a leading role in the startup process.
In an initial stage after power-on, an internal CPU (Central Processor Unit) operates independently in each network device (hereinafter abbreviated as device), and a first initialization executable by each device alone. Perform processing. Next, a second initialization process performed in synchronization with another device is performed while performing data communication. In order to quickly start up the device, a TCP link with another device should be established as soon as possible in accordance with the availability of TCP / IP communication in each device, and the second initialization process should be started. I have to.
[0004] Further, as a prior art relating to the same startup processing of a distributed processing system, there is Japanese Patent Application Laid-Open No. 2000-78171 entitled "Method of assigning computer addresses to equipment of a system for operating industrial equipment". In this prior art, an IP address required for a start-up process is determined using a broadcast function of UDP.
[0005]
However, it has been difficult for the prior art to establish a TCP link in the shortest time without hindering other initialization processing due to an increase in the CPU load of the device. In other words, the time until the initialization process of the network device or the TCP / IP processing unit is completed differs depending on the function assigned to each device and the hardware configuration, and the CPU (CPU1) of one device can perform TCP / IP communication. However, the communication is not always possible with the other (CPU 2). In this case, the TCP connection processing from CPU 1 to CPU 2 fails. In order to establish a TCP connection as soon as possible, the CPU 1 needs to repeatedly execute a connection process until the CPU 2 can communicate. However, this is a waste of CPU resources. Especially during TCP connection, complicated processing is required so that error control and flow control can be performed. There was a problem that the start-up time of the device was long. Alternatively, TCP connection processing can be performed at certain intervals so as not to waste CPU time, but in this case, there is a problem that a TCP connection cannot be established in the shortest time.
SUMMARY OF THE INVENTION The present invention has been made in view of the above circumstances, and provides a radio base station apparatus which establishes a TCP link in a shorter time without imposing a load on a CPU and performs a startup process at a high speed. The purpose is to provide.
[0007]
According to a first aspect of the present invention, there is provided a network system comprising: a plurality of network devices; and a network connecting the plurality of network devices to each other. A distributed processing system in which a device performs a part of a start-up process in a synchronized manner, wherein each of the plurality of network devices is configured to transmit a UDP packet as soon as each of the IP address, a standby port number, and a network A connection preparation completion message including a number for identifying a device is repeatedly transmitted to a broadcast address of the network using a UDP packet until connection with all network devices requiring connection is completed,
At least one of the plurality of network devices transmits a TCP to the network device having the number included in the received connection preparation completion message by using at least one of the IP address and the listening port included in the received connection preparation completion message. A distributed processing system characterized by trying a connection.
2. The distributed processing system according to claim 1, wherein said part of the start-up processing is started when a connection necessary for performing said part of the start-up processing is established.
[0009] At least one of the plurality of network devices stores a range that its own IP address can take, and an IP address included in the connection preparation completion message received from another network device,
The IP address included in the connection preparation completion message transmitted by itself is equal to or greater than the immediately preceding own IP address and does not overlap with the stored IP address of another network device. 2. The distributed processing system according to claim 1, wherein the IP address is set to the smallest IP address.
[0010]
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS First Embodiment Hereinafter, a first embodiment of the present invention will be described with reference to the drawings. Note that the function realizing means described below may be any circuit or device as long as the function can be realized, and may be composed of one or more elements. Alternatively, it may be realized by either hardware.
FIG. 1 is a hardware configuration diagram of a radio base station apparatus according to an embodiment of the present invention. As shown in FIG. 1, a wireless unit 1 for transmitting and receiving wireless signals, a control unit 2 for controlling signal processing and the like accompanying a call, and a wired transmission line for connecting to a telephone network host device (not shown) Unit 3.
FIG. 2 is an internal configuration diagram of the control unit 2. The control unit 2 includes cards 21, 22, and 23. Each card includes a CPU, a network port, and a memory. Each card shares necessary control in the wireless base station device, and also includes an interface (not shown) with the wireless unit 1 and the wired transmission path 3 according to the sharing.
In each card, the CPUs 21a, 22a and 23a perform main control of the cards. Usually, the CPU of each card has the same processing capacity. The network ports 21b, 22b and 23b connect the respective cards to one another via a network LAN 24. As a result, data communication required for coordination processing between cards is performed using the TCP connection. The memories 21c, 22c, and 23c store a card number, an IP address, a port number, a connection direction (who performs connection processing), and a connection state of another card with which a TCP connection is to be established as a connection table. The memories 21c, 22c, and 23c also store the card number, the IP address, and the port number of the own card. The card number is assigned according to the function assignment of each card in order to identify each card. In the embodiment, the card numbers are assigned so as not to be duplicated for each card. Normally, a nonvolatile memory is used as a memory for storing the connection table.
FIG. 3 is a configuration diagram of the connection table stored in the memory 21c. In FIG. 3, the card 21 is provided with entries for the card 21 and the card 23 in order to establish a TCP connection with the cards 22 and 23, and is set to be connected in the direction of the card 21 to the card 22 and the card 23 to the card 21. Further, there is no information on the link between the card 22 and the card 23 in the connection table, but this is unnecessary for the card 21.
FIG. 4 is a flowchart of the connection process. Hereinafter, the processing in the card 21 will be described along the processing flow. However, the processing of other cards is the same, and is performed by the respective CPUs almost in parallel.
First, when the CPU 21a starts the start-up process, as a first start-up process which can be executed by each card alone, preparation of a socket is performed so that an application can use TCP or UDP connection with another card. Is performed (S101). At this time, startup processing other than the connection processing may be performed in parallel. Next, all connection status columns in the connection table are set to unconnected (S102).
Subsequently, a connection preparation completion message as shown in FIG. 5 is sent to the broadcast address of the network LAN 24 to which each card is connected, using the UDP protocol (S103). This message is used to notify the cards 22 and 23 that the card 21 has been enabled for TCP connection. This message is provided with the IP address of the card 21 and the port number (6300) used in the TCP connection procedure in addition to the number (1) of the card 21. Thereby, when the IP address and the port number that the card 21 waits for at the time of the TCP connection are changed to values different from the initial values of the IP address and the port number of the card 21 stored in the memories of the cards 22 and 23. Also, by receiving this message, the correct address and port number can be known. In addition, since this message is a UDP protocol, no prior link setting is required, and since broadcast is used, the message can be transmitted to all the cards on the LAN at one time by one transmission.
In step S103, the connection preparation completion message is sent immediately when the preparation for the UDP connection performed in step S101 is completed and the UDP packet can be transmitted, and there is no need to wait for the completion of the preparation for the TCP connection. The term "quickly" means that the time is about the same as or shorter than the transmission interval to be described later, and can usually be easily achieved. This message is repeatedly transmitted until the connection with all the cards existing in the connection table is completed, that is, until all the connection status columns are connected. However, when the first transmission is completed, the next process of S104 is started, and the second and subsequent transmissions are performed in parallel with other processes. The transmission interval is arbitrary (for example, 10 ms), but it is better to be somewhat random than a fixed period. Different values (for example, card numbers 1 to 3) can be used for each card as the initial value of the random number generation source.
After the first transmission in S103, it is checked whether there is a card to be connected from the own card 21 by referring to the connection table (S104). If there are cards to be connected, a TCP connection is attempted for them in parallel (S105). Subsequent processing is also performed independently and in parallel for each connection destination card.
Although there are three types of results of the trial in S105, the condition branches into two depending on the success or failure of the connection (S106). That is, as a result, when the first connection destination card 22 is not ready for connection, and secondly, when the card 22 is waiting at an IP port address and a port number different from the initial values, both are connected. Fail. On the other hand, if the third card is already connectable to the card 22 from the card 21, the connection is successful.
If it is determined that the connection has failed, the process waits for a connection preparation completion message from the connection destination card 22 (S107). When the message is received, the IP address and the port number in the connection table are updated (S108).
Then, the process jumps to S105, and tries again to connect to the card to which the message has been transmitted. For example, when the card 22 is waiting at an IP address or a port number different from the connection table of the card 21, the connection processing from the card 21 to the card 22 fails (due to a timeout or the like), but the connection completion message from the card 22 If received and modified to the correct destination, the connection usually succeeds.
If the connection is determined to be successful in the next step S106, the connection status is marked in the connection status column of the connection table (S109).
When the connection with one of the cards is completed, the process stands by until the connection of the remaining cards is completed (S110). When the connection with all the cards is completed, the connection preparation completion message transmission processing which has been performed in the background is ended in S103 (S111), and the TCP connection processing is completed.
In the above processing, when a TCP connection is received from another card after S103, the connection processing with another card is performed in parallel with the flow of FIG. 4 or by interrupting the flow. Unless the IP address and the listening port number of each card are changed, the connection preparation completion message should normally be transmitted only once or twice to complete the previous connection, but UDP which does not provide reliability. Because the protocol is used, the message may not be read by the partner card due to a packet collision on the network or the like. Therefore, the message is repeatedly transmitted until all the connections are completed.
FIG. 5 is a diagram showing the contents of the preparation completion message, showing an IP packet transmitted by the card 21. The reception completion message is composed of the illustrated one IP packet. The UDP packet is encapsulated in the IP packet, and the data part of the UDP packet stores the own card number (1) and the port number (6300) used for the TCP connection. In FIG. 5, values in parentheses are examples of content values, and those not specifically indicated are represented in decimal. Portions where no examples are given are based on general UDP / IP packets. The source port, destination port, and port numbers on which the cards 22 and 23 wait for this packet are determined in advance. Normally, the destination port and the standby port are the same (45000) for all cards. The source port should also match the destination port and the standby port (45000).
This packet is encapsulated in a network frame on the network and transmitted. Conversion from an IP address to a network address in the data link layer by storing a source network (MAC) address included in a network frame and a source IP address included in an IP packet header in association with a card receiving the frame. Can be used for
In the embodiment of the present invention, it is desirable that the card numbers are assigned so as not to be duplicated for each card. However, the card numbers are duplicated by using the network address provided in the network port of each card together with the card number. Each card can be identified.
With the above processing, it is possible to connect between the cards as soon as possible while pressing the retry of the TCP connection. In particular, in the wireless base station according to the present embodiment, when the restart of the control unit becomes necessary due to a failure or the like, the restart is performed in a shorter time, so that there is an effect that the normal time can be shortened.
Second Embodiment A second embodiment of the present invention will be described below with reference to the drawings. This embodiment is different from the first embodiment in that the prior setting of the IP address of the own card is unnecessary. In the description of this embodiment, the same components as those of the first embodiment will be denoted by the same reference numerals, and the description thereof will be omitted.
FIG. 6 shows a connection table stored in the memories 21c, 22c, and 23c in the present embodiment. The connection table stores the connection direction (who performs the connection process) and the priority connection as initial values. The priority connection starts the second initialization process in order to establish a TCP connection prior to the cooperation process (second initialization process) when the initialization process needs to be performed in cooperation with another card. This is a flag indicating that processing is performed with higher priority than a flag, and is a logical value (boolean). An area for storing an IP address, a port number, and a connection status is prepared as in the first embodiment.
The connection process in the present embodiment is divided into a first startup process (a process that can be executed by each card alone) and a second startup process (a process performed in cooperation between cards). You. FIG. 7 shows a flowchart of the connection processing performed in the first startup processing. Hereinafter, the processing in the card 21 will be described along the processing flow.
Steps S201 to S202 perform the same processing as steps S101 to S102 in the first embodiment. S203 starts the repeated transmission of the connection preparation completion message, but differs from S204 in that the IP address of the own card 21 may change at the time of transmission, as described later.
Next, the connection destination table is inspected, and the process branches depending on the presence or absence of a card requiring priority connection from the own card 21 (S204). The card requiring priority connection from the own card 21 is a card in which the connection direction is 1 → X (X is arbitrary) in the connection table and the priority connection flag is set.
When there is a card that requires priority connection from the own card 21, the reception of a connection preparation completion message from another card is waited for (S205). When the message is received, the connection destination table is updated using the source IP address, port number, and card number included in the message (S206).
Next, it is determined whether or not the update in S206 is a card that requires connection from the own card 21 and whether or not the connection has not been made. If the connection is not necessary or the connection has been made, the flow branches to S205 (S207).
If the connection is necessary and the connection is not established, a TCP connection is attempted as in S105 (S208). At this time, if the IP address of the own card has been updated in S203, the updated new address is used.
If the connection is successful, the connection destination table is updated to "connected" (S209), and the process jumps to S204.
If there is no card requiring priority connection in S204, the connection destination table is checked to see if TCP connection with all cards has been completed (S210). If connection has been completed, a connection preparation completion message is sent as in S110. The transmission ends (S211). This completes the connection processing in the first startup processing.
FIG. 9 shows an internal flowchart of the processing in S203. The processing of this flowchart is processed in parallel with the processing of FIG. 7 as a child process of the called processing of FIG. In this embodiment, all the cards including the card 21 store the range of IP addresses that can be taken by the own card in each memory, and the addresses that can be taken by the card 21 are 192.168.1. * * Generally indicates a value from 0 to 255, but can take a value from 1 to 254 in the case of the lower 8 bits of the address in the above example.
In the present processing, first, a memory corresponding to the number of addresses that the card 21 can take is secured, and an address table shown in FIG. 10 is created (S2031). In the address table, possible addresses are arranged in ascending order, and a flag indicating whether each address is already used on the network is provided.
Next, the initial value of the IP address of the own card 21 is provisionally set (S2032). The initial value is set to 192.168.0.2, which is the minimum address of the own card 21 plus the card number 1. Next, an interval for transmitting the connection preparation completion message is set (S2033). The setting interval is set to a value (for example, 11 ms) obtained by adding a time corresponding to the card number 1 to an initial value common to each card (for example, 10 ms) of the interval for transmitting the connection preparation completion message.
Next, a connection preparation completion message is transmitted to the broadcast address using the UDP protocol (S2034), and a timer is started (S2035).
If a connection preparation completion message transmission end command is received from S211 in FIG. 7 before the timer expires (S2040), this processing ends.
Alternatively, if a connection preparation completion message is received from another card before the timer expires (S2037), it is determined that the source IP address of the received message has already been used and corresponds to the address table. If there is an IP address, the flag is set to used (S2038). Then, the smallest address that is equal to or larger than the address value currently used by the own card 21 and is not used is provisionally set as a new IP address (S2039), and the process jumps to S2034. The provisional setting (S2039) does not change the current address as a result when the current address is not used by another card. If the address value cannot be further increased due to the address range that the own card can take, the address returns to the minimum value of the address range that the own card can take.
If neither the transmission end command nor the message is received and the timer ends (S2036), the process jumps to S2034. Through the above processing, the connection preparation completion message is repeatedly transmitted.
FIG. 8 shows a flowchart of the connection processing performed in the second startup processing. The processes from S301 to S306 are almost the same as S204 to S209 in FIG. 7, and the processes from S307 to S308 are the same as S110 to S111 in FIG. However, the difference from S204 is that S301 does not limit the cards that need to be connected from the own card 21 to the cards of priority connection. As a result, the TCP connection from the own card which has not been performed in the first start-up processing is performed, and the connection from the other card is waited to complete all the connection processing.
According to the above-described processing, it is possible to connect between the cards as soon as possible without assigning an IP address to each card in advance, so that card exchange and expansion can be easily and quickly performed.
In the first and second embodiments, when the network ports 21b, 22b, 23b, etc. are buffering the packets received from the LAN, the buffering is performed before the TCP connection is attempted in S105. May be inspected to check in advance whether the IP address and port number of the connection destination card have been notified.
[0049]
According to the distributed processing system of the present invention, a TCP link can be established in a shorter time without imposing a load on the CPU, and the startup processing can be performed at a high speed.
[Brief description of the drawings]
FIG. 1 is a device configuration diagram of first and second embodiments of a distributed processing system according to the present invention.
FIG. 2 is a partially detailed view of the device configuration diagram of FIG. 1;
FIG. 3 is an explanatory diagram showing a connection table stored in a memory 21b of the distributed processing system according to the first embodiment.
FIG. 4 is a flowchart showing start-up processing of the distributed processing system according to the first embodiment;
FIG. 5 is a data configuration diagram of a UDP / IP packet constituting a connection preparation completion message used by the distributed processing system according to the first embodiment;
FIG. 6 is an explanatory diagram showing a connection table stored in a memory 21b of the distributed processing system according to the second embodiment.
FIG. 7 is a flowchart illustrating a first startup process of the distributed processing system according to the second embodiment;
FIG. 8 is a flowchart illustrating a second startup process of the distributed processing system according to the second embodiment;
FIG. 9 is a flowchart showing the detailed operation of starting connection preparation completion message repetitive transmission in FIG. 7;
FIG. 10 is an explanatory diagram showing an address table used by the card 21 in the distributed processing system according to the second embodiment.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 Radio | wireless part 2 Control part 3 Priority transmission path part 21-23 Card 21a-23a CPU
21a-23a Memory 21a-23a Network Port 24 Network LAN

Claims (3)

複数のネットワーク機器と、前記複数のネットワーク機器を互いに接続するネットワークとからなり、前記複数のネットワーク機器が立上げ処理の一部を同期して行う分散処理システムであって、
前記複数のネットワーク機器の夫々が、UDPパケットが送信可能になると速やかに、夫々のIPアドレスと、待受けポート番号と、ネットワーク機器を識別するための番号とを含む接続準備完了メッセージを、UDPパケットを用いて、前記ネットワークのブロードキャストアドレス宛てに、接続が必要な全てのネットワーク機器との接続が完了するまで繰返し送信し、
前記複数のネットワーク機器の少なくとも一つが、受信した前記接続準備完了メッセージが含む前記番号のネットワーク機器に対し、受信した前記接続準備完了メッセージが含む前記IPアドレスか待受けポートの少なくとも一つを利用してTCP接続を試行することを特徴とする分散処理システム。
A distributed processing system comprising a plurality of network devices and a network connecting the plurality of network devices to each other, wherein the plurality of network devices synchronize part of a start-up process,
As soon as each of the plurality of network devices becomes capable of transmitting the UDP packet, a connection preparation completion message including the IP address, the standby port number, and the number for identifying the network device is transmitted to the UDP packet. Using, to the broadcast address of the network, repeatedly transmitted until the connection with all network devices that require connection is completed,
At least one of the plurality of network devices, for the network device of the number included in the received connection preparation completion message, using at least one of the IP address or the listening port included in the received connection preparation completion message A distributed processing system for trying a TCP connection.
前記一部の立上げ処理を行うのに必要な接続が確立された時点で、前記一部の立上げ処理を開始することを特徴とする請求項1記載の分散処理システム。2. The distributed processing system according to claim 1, wherein the part of the start-up processing is started when a connection necessary for performing the part of the start-up processing is established. 前記複数のネットワーク機器の少なくとも一つが、自身のIPアドレスが取り得る範囲と、他のネットワーク機器から受信した前記接続準備完了メッセージが含むIPアドレスとを記憶し、
自身が送信する接続準備完了メッセージが含むIPアドレスを、直前の自身のIPアドレス以上で、且つ、記憶している他のネットワーク機器のIPアドレスに重複せず、且つ、記憶している前記範囲の内で最小のIPアドレスに設定することを特徴とする請求項1記載の分散処理システム。
At least one of the plurality of network devices stores a range that its own IP address can take, and an IP address included in the connection preparation completion message received from another network device,
The IP address included in the connection preparation completion message transmitted by itself is equal to or greater than the immediately preceding own IP address, does not overlap with the stored IP address of another network device, and is in the range of the stored range. 2. The distributed processing system according to claim 1, wherein the IP address is set to the smallest IP address.
JP2002247375A 2002-08-27 2002-08-27 Decentralized processing system Pending JP2004088471A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002247375A JP2004088471A (en) 2002-08-27 2002-08-27 Decentralized processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002247375A JP2004088471A (en) 2002-08-27 2002-08-27 Decentralized processing system

Publications (1)

Publication Number Publication Date
JP2004088471A true JP2004088471A (en) 2004-03-18

Family

ID=32055041

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002247375A Pending JP2004088471A (en) 2002-08-27 2002-08-27 Decentralized processing system

Country Status (1)

Country Link
JP (1) JP2004088471A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007207131A (en) * 2006-02-06 2007-08-16 Hitachi Ltd Print processing system and print processor
JP2007249718A (en) * 2006-03-17 2007-09-27 Oki Data Corp Image processor

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007207131A (en) * 2006-02-06 2007-08-16 Hitachi Ltd Print processing system and print processor
JP4626527B2 (en) * 2006-02-06 2011-02-09 株式会社日立製作所 Print processing system and print processing apparatus
JP2007249718A (en) * 2006-03-17 2007-09-27 Oki Data Corp Image processor

Similar Documents

Publication Publication Date Title
CN111740899B (en) ARP request message forwarding method, cross-device link aggregation group and network device
CN111865779B (en) Route synchronization method and cross-device link aggregation group
RU2540815C2 (en) Interruption, at least in part, of frame transmission
JPS62239641A (en) Multiple address communication system
JPH11194981A (en) Input/output device
US5649091A (en) Local area network redundant pieces of interconnection equipment a false physical address and a logical address in common to form a unique entity
JP4789425B2 (en) Route table synchronization method, network device, and route table synchronization program
US7269661B2 (en) Method using receive and transmit protocol aware logic modules for confirming checksum values stored in network packet
JPWO2005125113A1 (en) Wireless cordless handset
CN112769959A (en) Session synchronization method, device, first node, second node, system and medium
JP2006129355A (en) Information processor, data transmission system, data transmission method, and program for performing the data transmission method on the information processor
JP5039975B2 (en) Gateway device
US6219353B1 (en) Message hub
US20030065741A1 (en) Concurrent bidirectional network communication utilizing send and receive threads
US20030225931A1 (en) Supporting multiple protocols with a single device driver
JP2007526544A (en) Communication protocol between processors
JPH11150566A (en) Internetwork device
JP2004088471A (en) Decentralized processing system
JP4415391B2 (en) Method and apparatus for transmitting data to a network and method and apparatus for receiving data from a network
JP2007243301A (en) Connection apparatus for communication equipment
Cisco Router Products Release Notes for Software Release 9.14
Cisco Router Products Release Notes for Software Release 9.14
Cisco Router Products Release Notes for Software Release 9.14
Cisco Router Products Release Notes for Software Release 9.14
JP2005244388A (en) Communication terminal and communication interface apparatus