JP2002527994A - Self-predictive communication network - Google Patents

Self-predictive communication network

Info

Publication number
JP2002527994A
JP2002527994A JP2000576582A JP2000576582A JP2002527994A JP 2002527994 A JP2002527994 A JP 2002527994A JP 2000576582 A JP2000576582 A JP 2000576582A JP 2000576582 A JP2000576582 A JP 2000576582A JP 2002527994 A JP2002527994 A JP 2002527994A
Authority
JP
Japan
Prior art keywords
unit
network
message
state
virtual
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
JP2000576582A
Other languages
Japanese (ja)
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.)
General Electric Co
Original Assignee
General Electric Co
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 General Electric Co filed Critical General Electric Co
Publication of JP2002527994A publication Critical patent/JP2002527994A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/149Network analysis or design for prediction of maintenance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0213Standardised network management protocols, e.g. simple network management protocol [SNMP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence

Abstract

(57)【要約】 【課題】 自己予測通信ネットワーク及び方法、即ち、同時に通信媒質及びシミュレータとして作用するように構成されたコンピュータ・ネットワークを提供する。 【解決手段】 コンピュータ・ネットワーク(100)は、メッセージを発生するように構成された少なくとも1つの発信ユニット(102)と、メッセージを受信するように構成された少なくとも1つの着信ユニット(103)と、発信ユニット及び着信ユニットの両方に結合されていて、その間でメッセージを通過させる少なくとも1つの中間デバイス(101)とを有する。中間デバイスは、コンピュータ・ネットワークの少なくとも一部分の将来状態情報を提供するように、メッセージに応答するように構成されている。 A self-predictive communication network and method are provided, that is, a computer network configured to simultaneously act as a communication medium and a simulator. The computer network (100) includes at least one originating unit (102) configured to generate a message, at least one terminating unit (103) configured to receive a message, It has at least one intermediate device (101) coupled to both the originating and terminating units for passing messages therebetween. The intermediate device is configured to respond to the message to provide future status information of at least a portion of the computer network.

Description

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

【0001】[0001]

【発明の属する技術分野】TECHNICAL FIELD OF THE INVENTION

この発明は全体的に通信ネットワーク、特に、同時に通信媒質及びシミュレー
タとして作用することにより、それ自身の挙動をモデル化し予測することが出来
る通信ネットワークに関する。
The present invention relates generally to communication networks, and more particularly, to communication networks that can simultaneously model and predict their own behavior by acting as a communication medium and simulator.

【0002】[0002]

【従来の技術】[Prior art]

インターネットを介して何百万ものコンピュータをネットワーク接続した結果
として、大量のグローバル通信アーキテクチュアが出現している。有線、無線及
び衛星技術が、今日、ネットワーク・ユーザと本明細書で呼ぶ何十億もの種々の
プロセッサを接続している。ネットワーク管理の目標は、特定の動作目的に合う
ように、例えば、ネットワーク内にある全てのユーザの流れに可能な限りの最善
のサービスの品質を提供する為に、ネットワークの資源を割当てることである。
こういう大量のネットワークを管理する問題、並びに新しいネットワーク・アー
キテクチュアを設計して実現する挑戦が、急速に複合化しつつある。
Massive global communication architectures have emerged as a result of networking millions of computers via the Internet. Wired, wireless and satellite technologies connect billions of different processors, referred to herein as network users. The goal of network management is to allocate network resources to meet specific operational objectives, for example, to provide the best possible quality of service for all user flows in the network. .
The challenges of managing these large numbers of networks, as well as the challenges of designing and implementing new network architectures, are rapidly compounding.

【0003】 ネットワークの将来の利用が判れば、ネットワークの資源を割当てる問題は著
しく助かる。複雑なネットワークを管理する1つの方式は、ネットワークの挙動
をモデル化し、該モデル化した挙動に基づいて、ネットワークの将来の性能を予
測する為に、シミュレータを用いることである。こういうシミュレータによって
作成されたモデル及び予測を利用して、ネットワークの資源を構成する。即ち、
プロセッサ、ルータ等の部品を割振り、隘路が避けられ、ネットワークの性能が
最適になるようにする。
Given the future use of the network, the problem of allocating network resources is greatly aided. One way to manage a complex network is to use a simulator to model the behavior of the network and predict future performance of the network based on the modeled behavior. The network resources are configured using the models and predictions created by these simulators. That is,
Allocate components such as processors and routers to avoid bottlenecks and optimize network performance.

【0004】 その目的の為に、コンピュータ・ネットワークの挙動を模擬(シミュレーショ
ン)する多数の方式が開発されている。例えば、並列離散事象シミュレーション
(PDES;parallel discrete event simulation)の分野は、複雑なネットワ
ークのシミュレーションをする必要に対処するところまで、過去15年間に成長
してきた。PDESを基本とする種々の手段が開発され、最適のネットワークの
設計及び構成を実現することが出来るように、種々の状態に於けるネットワーク
の挙動をシミュレーションすると共に予測している。このシミュレーションを行
う手段は、典型的には、離散事象シミュレーション・アルゴリズムを実行するよ
うにプログラムされた複数個の専用並列分布プロセッサで構成されているのが典
型的である。
[0004] To that end, a number of schemes have been developed to simulate the behavior of computer networks. For example, the field of parallel discrete event simulation (PDES) has grown over the last 15 years to address the need to simulate complex networks. Various tools based on PDES have been developed to simulate and predict the behavior of the network in various conditions so that an optimal network design and configuration can be realized. The means for performing this simulation typically comprises a plurality of dedicated parallel distributed processors programmed to execute a discrete event simulation algorithm.

【0005】 しかし、こういうプロセッサ群は、シミュレーション・タスクに専用にするの
が典型的であり、一般的には、ネットワーク・ユーザのアプリケーションを同時
に実行するようには構成されていない。典型的には、シミュレータ自体は、それ
らがシミュレーションしようとする実際のネットワーク程大量でもなければ、複
雑でもない。その理由で、このようなシミュレータは、「現実」のネットワーク
の性能をモデル化する上での有用性を制限する欠点を持っている。例えば、シミ
ュレータ・モデルに基づくソリューション及び予測をこれよりずっと複雑な現実
の場合に適用するとき、スケーリングの問題が起こる場合が多い。現在のネット
ワーク・モデル化ツール及びシミュレーション方式は、例えばインターネットの
複雑さを持つようなシステムに容易にスケールを合わせることが出来ない。
[0005] However, these processors are typically dedicated to simulation tasks and are generally not configured to simultaneously execute network user applications. Typically, the simulators themselves are not as large or complex as the actual networks they are trying to simulate. For that reason, such simulators have drawbacks that limit their usefulness in modeling the performance of "real" networks. For example, scaling solutions often arise when applying solutions and predictions based on simulator models to much more complex real-world cases. Current network modeling tools and simulation schemes cannot be easily scaled to systems such as those having the complexity of the Internet.

【0006】[0006]

【発明が解決しようとする課題】[Problems to be solved by the invention]

従って、通信ネットワークの挙動をモデル化し予測すると共に、この予測に基
づいてネットワークを管理する改良された方法及び装置に対する必要が存在する
Accordingly, a need exists for an improved method and apparatus for modeling and predicting the behavior of a communication network and managing the network based on the prediction.

【0007】[0007]

【課題を解決するための手段】[Means for Solving the Problems]

この発明は自己予測通信ネットワーク及び方法、即ち、同時に通信媒質及びシ
ミュレータとして作用するように構成されたコンピュータ・ネットワークを提供
する。このコンピュータ・ネットワークは、メッセージを発生するように構成さ
れた少なくとも1つの発信ユニットと、メッセージを受信するように構成された
少なくとも1つの着信ユニットと、発信ユニット及び着信ユニットの両方に結合
されていて、その間でメッセージを通す少なくとも1つの中間デバイスとを有す
る。中間デバイスは、コンピュータ・ネットワークの少なくとも一部分の将来状
態の情報を提供するように、メッセージに応答するように構成されている。
The present invention provides a self-predictive communication network and method, i.e., a computer network configured to simultaneously act as a communication medium and simulator. The computer network is coupled to at least one originating unit configured to generate the message, at least one terminating unit configured to receive the message, and to both the originating unit and the terminating unit. , At least one intermediate device between which messages are passed. The intermediate device is configured to respond to the message to provide information on a future state of at least a portion of the computer network.

【0008】[0008]

【発明の実施の形態】BEST MODE FOR CARRYING OUT THE INVENTION

図1は典型的なコンピュータ・ネットワーク100の全体的な構造を示す見取
図である。ネットワーク100が、1つ又は更に多くの発信ユニット102、1
つ又は更に多くの着信ユニット103及び1つ又は更に多くの中間デバイス10
1を有する。説明の為並びに判り易くする為、発信ユニット102及び着信ユニ
ット103が図1では別々に示されている。しかし、ネットワークのユニットは
一般的に、発信部及び着信部の両方の部品として動作するように構成されていて
、ネットワークを介してメッセージを送信することも受信することも出来ること
を承知されたい。この明細書では、「構成された(configured)」という言葉は、
「動作出来るようにプログラムされて組立てられた、ソフトウエア部品及びハー
ドウエア部品で構成された適当な部品を含むこと」を意味する。典型的には、発
信及び着信ユニット102及び103は種々のプロセッサ及びコンピュータ(パ
ーソナル・コンピュータ、メイン・フレーム・コンピュータ、ミニコンピュータ
及びラップ・トップ・コンピュータを含む)で構成される。典型的な中間デバイ
スはルータ、交換機、中継器、ハブ等を含む。
FIG. 1 is a sketch showing the overall structure of a typical computer network 100. The network 100 includes one or more originating units 102, 1
One or more terminating units 103 and one or more intermediate devices 10
One. The originating unit 102 and the terminating unit 103 are shown separately in FIG. 1 for explanation and for clarity. However, it should be appreciated that the units of the network are generally configured to operate as both components of the originating and terminating portions, and can send and receive messages over the network. In this specification, the word "configured"
It means "including appropriate parts composed of software parts and hardware parts, which are programmed and assembled to be operable". Typically, the sending and receiving units 102 and 103 consist of various processors and computers, including personal computers, mainframe computers, minicomputers and laptop computers. Typical intermediate devices include routers, switches, repeaters, hubs, and the like.

【0009】 ネットワークのユニット102及び103及び中間デバイス101が、ネット
ワーク104を介して互いに接続される。ネットワークは、メッセージの交換及
びデータ並びにシステム資源を共有する為に、2つ又は更に多くのコンピュータ
が接続されていることと定義する。この発明の1実施例では、ネットワーク10
4はインターネットを表す。インターネットは、複数個の国、例えば、合衆国、
カナダ、ヨーロッパ及びアジアにある複数個(例えば何千個)ものネットワーク
を接続する広域ネットワーク(WAN)である。一般的に、インターネットは、
これに限らないが、政府用、教育用及び産業用ネットワークで構成された群から
選ばれるネットワークにあるコンピュータの間のグローバル通信が出来るように
する。この発明の別の実施例は、ネットワーク104が、ローカル・エリア・ネ
ットワーク、相互接続された私用又は専用ネットワーク回線、広域ネットワーク
及びその組合せで構成されているものを含む。
The units 102 and 103 of the network and the intermediate device 101 are connected to one another via a network 104. A network is defined as two or more computers connected to exchange messages and share data and system resources. In one embodiment of the present invention, network 10
4 indicates the Internet. The Internet is available in several countries, such as the United States,
A wide area network (WAN) that connects multiple (eg, thousands) networks in Canada, Europe and Asia. Generally, the Internet
To enable global communication between computers on a network selected from the group consisting of, but not limited to, governmental, educational and industrial networks. Other embodiments of the present invention include those in which network 104 comprises a local area network, interconnected private or private network lines, a wide area network, and combinations thereof.

【0010】 図1に示す場合、ネットワーク104を介してユニット102及び103の間
でメッセージを中継することによって、通信が達成される。この発明の1実施例
では、メッセージを中継する為に、「パケット交換」アーキテクチュアが用いら
れる。「パケット交換」という言葉は、メッセージがパケットと呼ばれる比較的
小さなデータ単位で構成されていて、各々のパケット内に含まれている着信先ア
ドレスに基づいてネットワークの中を配送される種類のネットワークを言う。通
信をパケットに分割することにより、ネットワーク内の多くのユーザに同じデー
タ通路を共有にすることが出来る。
In the case shown in FIG. 1, communication is achieved by relaying messages between the units 102 and 103 via the network 104. In one embodiment of the present invention, a "packet switched" architecture is used to relay messages. The term "packet exchange" refers to a type of network in which messages are composed of relatively small units of data called packets, and are delivered through the network based on the destination address contained in each packet. To tell. By dividing the communication into packets, many users in the network can share the same data path.

【0011】 典型的には、パケットは、配送情報を含むフィールドと、メッセージの少なく
とも一部分を表すデータを含むフィールドとを有する。パケットが、予定の通信
プロトコルに従って、発信部及び着信部の間で配送される。普通の通信プロトコ
ルの例としては、伝送制御プロトコル/インターネット・プロトコル(TCP/
IP)及び開放システム相互接続(OSI)プロトコルがある。
Typically, a packet has a field containing delivery information and a field containing data representing at least a portion of a message. Packets are delivered between the originating and terminating parts according to a predetermined communication protocol. Examples of common communication protocols include Transmission Control Protocol / Internet Protocol (TCP /
IP) and Open System Interconnection (OSI) protocols.

【0012】 図1には普通のシミュレータ105も示されている。シミュレータ105は、
従来公知のシミュレーション技術を用いて、ネットワーク100をシミュレーシ
ョンするようにプログラムされる。このような技術の一例は、並列離散事象シミ
ュレーションである。シミュレータ105が、典型的な従来のシステムでは、ネ
ットワーク動作とは独立にシミュレーションが行われることを示す為に、ネット
ワーク100から離して示されている。シミュレータ105は、オペレータから
供給されるネットワーク100の知識か、又はネットワーク・データを収集する
ように設計されたプログラムによって集められたデータに基づいてシミュレーシ
ョンを行う。
FIG. 1 also shows a conventional simulator 105. The simulator 105
The program is programmed to simulate the network 100 using a conventionally known simulation technique. One example of such a technique is parallel discrete event simulation. Simulator 105 is shown away from network 100 to show that in a typical conventional system, the simulation is performed independently of network operation. Simulator 105 simulates based on knowledge of network 100 provided by an operator or data gathered by a program designed to gather network data.

【0013】 この発明では、少なくとも1つの発信ユニット102が図2に示すように構成
されている。この発明の1実施例では、少なくとも1つの発信ユニット102が
コンピュータ、例えば、インターネットに接続されたパーソナル・コンピュータ
である。この発明の別の実施例では、少なくとも1つの発信ユニット102が、
ローカル・エリア・ネットワークに接続された専用プロセッサである。当業者で
あれば判るように、発信ユニット102は、種々のネットワーク形式の広い範囲
の種々のプロセッサ及びコンピュータで構成された群から選ぶことが出来る。図
2に示す実施例では、発信ユニット102が、プロセッサ402、メモリ403
、及び表示装置及びキーボード406に結合された端末入出力(I/O)装置4
05のような普通のコンピュータ部品を有する。データ・バス407が部品の間
を相互接続して、データ及び指令をその間でやり取りすることが出来るようにし
ている。制御線路装置(LCU)420が発信ユニット102を(図1にも示し
た)ネットワーク104と相互接続する。
In the present invention, at least one transmitting unit 102 is configured as shown in FIG. In one embodiment of the present invention, at least one originating unit 102 is a computer, for example, a personal computer connected to the Internet. In another embodiment of the present invention, at least one originating unit 102 comprises:
A dedicated processor connected to the local area network. As those skilled in the art will appreciate, the originating unit 102 can be selected from a group consisting of a wide variety of different processors and computers in different types of networks. In the embodiment shown in FIG. 2, the transmitting unit 102 includes a processor 402, a memory 403,
And a terminal input / output (I / O) device 4 coupled to the display and keyboard 406
It has ordinary computer parts like 05. A data bus 407 interconnects the components so that data and commands can be passed between them. A control line unit (LCU) 420 interconnects the originating unit 102 with the network 104 (also shown in FIG. 1).

【0014】 しかし、従来のコンピュータ部品と異なり、発信ユニット102のプロセッサ
402は、駆動ユニット416及び仮想メッセージ発生器415を含む。駆動ユ
ニット416は、「駆動プログラム」を実行するように構成されたプロセッサで
ある。この明細書では、「駆動プログラム」はネットワーク・ユーザのアプリケ
ーション、並びにこれらのアプリケーションがその実行中に消費する資源を監視
するプログラムである。駆動プログラムが、発信部102の所定のプロセッサ4
02で実行されるユーザ・アプリケーション及び関連するプロセスに関係する統
計を収集する。この統計の例としては、これに限らないが、メッセージの流量、
メッセージの種類、規模、時間等がある。駆動プログラムはこういう統計を使っ
て、将来のメッセージ・トラヒック及び資源利用情報を含めて、将来プロセッサ
402で運用されるプロセスに関する計画を立てる。
However, unlike conventional computer components, the processor 402 of the originating unit 102 includes a drive unit 416 and a virtual message generator 415. The drive unit 416 is a processor configured to execute a “drive program”. As used herein, a "driving program" is a program that monitors the network user's applications as well as the resources these applications consume during their execution. The driving program is executed by the predetermined processor 4 of the transmitting unit 102.
Gather statistics pertaining to the user application and associated processes running at 02. Examples of this statistic include, but are not limited to, message flow,
There are message type, scale, time, etc. The driving program uses these statistics to plan for future processes to be run on the processor 402, including future message traffic and resource utilization information.

【0015】 普通に使われているネットワーク・トラヒックの多数の予測方式が、この発明
で使うのに適している。例えば、適当な方式が、IEEE/ACM INFOC
OM、1998年所載のS.マ及びC.ジの論文「VBRビデオ・トラヒックの
ウエーブレット領域モデル化」及びProc.IEEE/ACM INFOCO
M、1998年所載のC.フード及びC.ジの論文「プロアクティブ・ネットワ
ーク故障検出」に記載されている。この発明に使うのに適した商業的に利用し得
る駆動プログラムの例としては、CA92037、トリー・パインズ CtLa
Jolla、333NのCACIプロダクツ・カンパニから入手し得るCOMN
ETIII(登録商標)がある。
[0015] Many commonly used prediction methods of network traffic are suitable for use with the present invention. For example, a suitable scheme is IEEE / ACM INFOC
OM, 1998. And C.I. J., "Wavelet Domain Modeling of VBR Video Traffic," and Proc. IEEE / ACM INFOCO
M., 1998, C.I. Food and C.I. In his paper entitled "Proactive Network Failure Detection." Examples of commercially available drive programs suitable for use in the present invention include CA92037, Tory Pines CtLa
COMN available from CACI Products Company of Jolla, 333N
There is ETIII (registered trademark).

【0016】 仮想メッセージ発生器415は、表1(TABLE 1) に示す駆動プロセス・アルゴ
リズムを実行するようにプログラムされたプロセッサである。駆動プロセス・ア
ルゴリズムに従って、仮想メッセージ発生器415が駆動ユニット416と通信
する。それに駆動ユニット416から収集した情報に基づいて、仮想メッセージ
発生器415が仮想メッセージを発生する。
The virtual message generator 415 is a processor programmed to execute the driving process algorithm shown in Table 1 (TABLE 1). The virtual message generator 415 communicates with the drive unit 416 according to the drive process algorithm. The virtual message generator 415 generates a virtual message based on the information collected from the driving unit 416.

【0017】 この明細書では、「仮想メッセージ」という言葉は、論理プロセスに関係する
データ及び着信先情報を含むメッセージを指す。論理プロセスは、将来のある時
点で実行が予想される物理プロセスを、現在の時点で表し且つ模倣(エミュレー
ション)するプロセスである。「物理プロセス」は、プログラム・コードによっ
て定められた実行タスクである。物理プロセスの例としては、データベースの表
のフィールドの更新、カウンタのインクレメント、及びビーム形成通信システム
でビーム角度に対するビーム表の計算がある。
As used herein, the term “virtual message” refers to a message that includes data and destination information relating to a logical process. A logical process is a process that represents and emulates a physical process that is expected to be executed at a certain point in the future at the present point in time. A “physical process” is an execution task defined by a program code. Examples of physical processes include updating a table field in a database, incrementing a counter, and calculating a beam table for beam angles in a beam forming communication system.

【0018】 論理プロセスは、シミュレーションの分野でローカル仮想時間(LVT;loca
l virtual time)の名前で知られているそれ自身の固有の時間についての表式(n
otion)を管理しているのが典型的である。論理プロセスは現在時点で物理プロセ
スを模倣するが、プロセッサは、対応する物理プロセスが運用されると予想され
る時間を知っていなければならない。この時間が、ローカル仮想時間(LVT)
である。従って、論理プロセスは、物理プロセスと、システムが実時間に先立っ
て実行するときの、メッセージの順序及び正しい動作を管理する為の余分のデー
タ構造及び命令とを有する。
Logic processes are known in the field of simulation as local virtual time (LVT; loca).
l virtual time) expression of its own intrinsic time known as (n
otion) is typically managed. Although a logical process now mimics a physical process, the processor must know the time at which the corresponding physical process is expected to be run. This time is the local virtual time (LVT)
It is. Thus, a logical process has physical processes and extra data structures and instructions to manage message order and correct operation as the system executes prior to real time.

【0019】 シミュレーションの分野の当業者であれば判るように、論理プロセスは、因果
律違反又は「狂った」メッセージの為に、「ロールバック」することがある。因
果律回避方式としてのロールバックの説明は、1985年、カリフォルニア州サ
ンジエゴで催されたザ・ソサイアティ・フォ・コンピュータ・シミュレーション
・マルチコンファレンスの分布シミュレーションで発表されたジェファーソン及
びソビツラルの論文「時間ウオープ機構を用いた速い併行シミュレーション」に
述べられている。この論文は、シミュレーションされるネットワークの各ユニッ
トが、それ自身のリスクで、実時間より先に実行することが許される方式を教示
している。ある事象を実行させないようにするようなメッセージが到着したとき
、ロールバックを実行して、行われたシミュレーションを解除する。ユニットの
ロールバックは必ずしも困難ではない。しかし、ロールバックさせなければなら
ないシミュレーションされた事象により、メッセージが他のユニットに送信され
たかもしれない事実の為に、このタスクが大幅に複雑になる。ロールバックを行
う為、ジェファーソン他の論文では、「アンチメッセージ」を使うことが述べら
れている。アンチメッセージは、元のメッセージと同様であるが、元の動作を「
解除」するある動作を遂行させる点が異なるメッセージである。ロールバック方
式は、離散事象シミュレーションで時に用いられることがある。この方式は、通
信ネットワークでは用いられないのが典型的であったが、この方式はこの発明の
ネットワークでは使うのに適している。
As will be appreciated by those skilled in the field of simulation, logic processes may "roll back" due to causality violations or "crazy" messages. A description of rollback as a causal avoidance method is described in Jefferson and Sovietral's dissertation published in The Society for Computer Simulation Multi-Conference in 1985 in San Diego, California. Fast Parallel Simulations Used ". This paper teaches a scheme in which each unit of the simulated network is allowed to execute before real time at its own risk. When a message arrives that prevents an event from running, a rollback is performed to release the simulation that was performed. Rolling back a unit is not always difficult. However, the simulated event that has to be rolled back greatly complicates this task due to the fact that the message may have been sent to other units. Jefferson et al. Disclose using "anti-messages" to do the rollback. Anti-message is similar to the original message, but the original behavior is
A different message is that a certain action of "release" is performed. Rollback schemes are sometimes used in discrete event simulations. This scheme was typically not used in communication networks, but is suitable for use in the network of the present invention.

【0020】 ネットワーク100に示した各ユニット及びデバイスが、それ自身の表式の時
間、即ち、LVTに従って動作するから、最新の仮想時間、即ち、ネットワーク
全体の各ユニットが模倣を終わっている将来に向けての1番先の点を決定するこ
とが、ネットワークの管理に重要である。ネットワーク全体の全てのユニットが
既に模倣をしたという最新の仮想時間が、グローバル仮想時間(GVT)として
知られている。「実時間」メッセージ(RT)という言葉は、発生されて、現在
時間、即ち「壁時計」時間が時間として刻印されたメッセージを言う。RTメッ
セージは、ネットワーク・ユーザのアプリケーション・プログラムを実行する 過程で、ネットワークの部品によって発生されるのが典型的である。
Since each unit and device shown in network 100 operates according to its own expressive time, ie, LVT, the latest virtual time, ie, the future in which each unit of the entire network has finished imitating. Determining the first point toward the destination is important for network management. The latest virtual time at which all units in the entire network have already imitated is known as the global virtual time (GVT). The term "real time" message (RT) refers to a message that has been generated and has the current time, or "wall clock" time stamped as time. RT messages are typically generated by network components during the course of executing a network user's application program.

【0021】 表1に概略を示したように、仮想メッセージ発生器415は、次に述べる工程
を実施して、駆動ユニット416と通信し、仮想メッセージ400を発生する。
最初に、(2)で仮想メッセージ発生器415が、GVTがルックアヘッド時間
を超えていないと決定する。即ち、これは、GVTが実時間(t)に(Λ以内で
)十分に接近していて、それが発生する仮想メッセージが、実時間に十分接近し
て実行され、ネットワークの性能が受容れ難い程劣化することがないことを検査
する。言い換えると、Λは、シミュレーションが将来のどの位先に運用されるか
を制限する「ルックアヘッド」時間である。この発明の1実施例では、Λが20
0秒に設定されている。しかし、当業者であれば理解されるように、Λは非常に
変わり得るものであって、多数の状態に関係する。ある場合には、シミュレーシ
ョンを将来の何日かに互って運用することが望ましく、別の場合には、将来の何
週間か又はそれ以上に互って運用することが望ましい。これと対照的に、ある非
常にダイナミックなネットワークは、将来の数ミリ秒に互ってしかシミュレーシ
ョンを運用しない。
As outlined in Table 1, virtual message generator 415 communicates with drive unit 416 to generate virtual message 400 by performing the following steps.
First, at (2), the virtual message generator 415 determines that the GVT has not exceeded the look-ahead time. That is, this is because the GVT is close enough to the real time (t) (within Λ) and the virtual messages it generates are executed close enough to the real time, making network performance unacceptable. Inspect that it does not deteriorate as much. In other words, Λ is the “look-ahead” time that limits how far in the future the simulation will run. In one embodiment of the present invention, Λ is 20
It is set to 0 seconds. However, as will be appreciated by those skilled in the art, Λ can vary greatly and involves a number of situations. In some cases, it may be desirable to run the simulations several days in the future, and in other cases, it may be desirable to run the simulations several weeks or more in the future. In contrast, some very dynamic networks will only run simulations in the next few milliseconds.

【0022】 ネットワーク100のGVTが実時間からΛ以内であれば、仮想メッセージ発
生器415は、将来の所望の時間(LVT+Δ)にメッセージの内容Mを駆動ユ
ニット416に照会する。メッセージの内容Mは、予測されるメッセージ・トラ
ヒックのある面、例えば流量に対応する情報である。次に、仮想メッセージの受
信時間RTを、所望の将来時間(LVT+Δ)に対応するように設定する。最後
に、新しく作り出した仮想メッセージを送信する。
If the GVT of the network 100 is within Λ of the real time, the virtual message generator 415 queries the driving unit 416 for the message content M at a desired time in the future (LVT + Δ). The message content M is information corresponding to a certain aspect of the expected message traffic, for example, the flow rate. Next, the reception time RT of the virtual message is set so as to correspond to the desired future time (LVT + Δ). Finally, send the newly created virtual message.

【0023】[0023]

【表1】 [Table 1]

【0024】 図3はこの発明の中間デバイス101を示す。中間デバイス101は、ルータ
、交換機、ハブ及び中継器等で構成されるネットワーク・デバイス及び部品の群
から選ばれる。選ばれたデバイスの種類に関係なく、中間デバイス101は、デ
ータ・バス207を介して互いに接続されたプロセッサ202及びメモリ203
のような普通の部品を持っているのが典型的である。メモリ203は、プログラ
ム、データ及び送信及び受信用のメッセージをその中に記憶している。
FIG. 3 shows an intermediate device 101 of the present invention. The intermediate device 101 is selected from a group of network devices and components including a router, a switch, a hub, a repeater, and the like. Regardless of the type of device selected, the intermediate device 101 includes a processor 202 and a memory 203 connected together via a data bus 207.
It is typical to have ordinary parts such as The memory 203 has stored therein programs, data and messages for transmission and reception.

【0025】 しかし、従来の部品とは対照的に、この発明の中間デバイス101は、ネット
ワーク管理ユニット204及び論理プロセッサ208をも有する。プロセッサ2
02の実時間プロセッサ209が典型的なネットワーク部品プロセッサとして作
用するが、即ち、それがネットワーク104を介して通信される実時間メッセー
ジに応答するが、論理プロセッサ208はローカル仮想時間で論理プロセスを実
行するように構成されている。更に、論理プロセッサ208は、中間ユニット1
01が受信した仮想メッセージに応答して、表3(TABLE 3) に示す論理プロセス
・アルゴリズムを実行するようにプログラムされている。この明細書の説明では
、実時間プロセッサ207及び仮想プロセッサ208を別々に示して説明する。
しかし、当業者であれば、論理プロセッサ208及び実時間プロセッサ207の
両方の動作を遂行するように、1個のプロセッサをプログラムすることが出来る
ことが理解されよう。
However, in contrast to conventional components, the intermediate device 101 of the present invention also has a network management unit 204 and a logical processor 208. Processor 2
02 real-time processor 209 acts as a typical network component processor, ie, it responds to real-time messages communicated over network 104, while logical processor 208 executes logical processes in local virtual time. It is configured to be. Further, the logical processor 208 includes the intermediate unit 1
01 is programmed to execute the logical process algorithm shown in Table 3 in response to the received virtual message. In the description of this specification, the real-time processor 207 and the virtual processor 208 are separately illustrated and described.
However, those skilled in the art will appreciate that a single processor can be programmed to perform the operations of both logical processor 208 and real-time processor 207.

【0026】 更に従来の中間デバイスとは対照的に、中間デバイス101のメモリ203は
実時間メモリ210及び仮想メモリ212を含んでいる。実時間メモリ210は
、プロセッサ202によって物理プロセスが実行されるときの中間デバイス10
1に関係する現在状態情報を記憶する。仮想メモリ212は、プロセッサ202
によって論理プロセスが実行されるときの中間デバイス101に関する将来状態
情報を記憶する。この明細書では、「状態(state) 」という言葉は、所定の時刻
、普通はプロセスを実行するときのユニットの動作状態を特徴付ける1組のパラ
メータを意味する。作表されたパラメータの組を「状態表(state table)」の形
でメモりに記憶する。
Further, in contrast to conventional intermediate devices, memory 203 of intermediate device 101 includes real-time memory 210 and virtual memory 212. The real-time memory 210 stores the intermediate device 10 when the physical process is executed by the processor 202.
The current state information relating to 1 is stored. The virtual memory 212 includes a processor 202
Stores future state information about the intermediate device 101 when the logical process is executed. As used herein, the term "state" refers to a set of parameters that characterize the operating state of a unit at a given time, usually when performing a process. The tabulated set of parameters is stored in memory in the form of a "state table".

【0027】 シミュレーションの用途では、並びにこの明細書では、「計算(computation)
」という言葉は、ユニットの「状態」を変更する1組の動作(「事象計算」と呼
ばれる)を指す。この後の事象計算によって状態が変更されるまでは、前の状態
がメモリに記憶されている。ロールバックがあると、保管されていた値をコピー
することにより、前の状態が復元される。
In simulation applications, as well as in this specification, “computation
The term "" refers to a set of actions that change the "state" of a unit (called "event computation"). Until the state is changed by the subsequent event calculation, the previous state is stored in the memory. If there is a rollback, the previous state is restored by copying the saved values.

【0028】 この発明の1実施例では、実時間メモリ210及び仮想メモリ212を利用し
て、事象計算シミュレーションの正確さを決定する。この為、論理プロセスが対
応する物理プロセスをどの位良くシミュレーションしたかの目安を求めることが
出来る。論理プロセスが中間ユニット101のプロセッサ202で実行された後
、ユニット101の状態が仮想メモリ212に記憶される。その後、中間ユニッ
ト101のプロセッサ202が対応する物理プロセスを実行するとき、ユニット
101の状態が実時間メモリ210に記憶される。2つの状態をこの後比較して
、それらがどの位よく合うかを決定する。状態が同一であれば、シミュレーショ
ンは正確であったことになる。
In one embodiment of the present invention, real-time memory 210 and virtual memory 212 are utilized to determine the accuracy of an event calculation simulation. For this reason, it is possible to obtain an indication of how well the logical process simulates the corresponding physical process. After the logical process is executed by the processor 202 of the intermediate unit 101, the state of the unit 101 is stored in the virtual memory 212. Thereafter, when the processor 202 of the intermediate unit 101 executes the corresponding physical process, the state of the unit 101 is stored in the real-time memory 210. The two states are subsequently compared to determine how well they fit. If the states are the same, the simulation was accurate.

【0029】 この発明の1実施例では、更に中間デバイス101がネットワーク管理ユニッ
ト(NMU)204を含む。NMU204は、中間デバイス101のメモリにあ
る管理情報ベース(MIB)を有する。MIBは、管理される対象をアクセスす
る為の仮想情報記憶装置である。当業者であれば判るように、この明細書では、
「対象(object)」はユニットの一部分を記述するデータ表示である。表示される
ユニットは物理的、例えば中間ユニット101であってもよいし、或いはソフト
ウエアの対象であってもよい。管理上割当てられる名前である対象識別子が、各
々の対象の種類に対して、夫々独特な識別の名前を付す。対象の事例と合わせた
対象の種類が、対象の実例を一意的に識別する。人間の便宜の為に、記述子(des
criptor)と呼ばれるテキスト・ストリング(textual string)を使って、対象の種
類を指す。
In one embodiment of the present invention, intermediate device 101 further includes a network management unit (NMU) 204. The NMU 204 has a management information base (MIB) in the memory of the intermediate device 101. The MIB is a virtual information storage device for accessing a managed object. As will be appreciated by those skilled in the art,
An "object" is a data representation that describes a portion of a unit. The displayed unit may be physical, for example, the intermediate unit 101, or may be a target of software. An object identifier, which is an administratively assigned name, gives each object type a unique identification name. The type of target, combined with the target case, uniquely identifies the target instance. For human convenience, the descriptor (des
Use a textual string called a criptor to indicate the type of object.

【0030】 MIBがネットワークの対象を管理する為に普通に用いられている。しかし、
典型的なMIBの対象の種類とは対照的に、NMU204のMIBは、ネットワ
ーク100の将来状態に関係する対象の種類を有する。更に、NMU204のM
IBは、中間デバイス101を通って配送されたときの、仮想メッセージ・パケ
ットから、情報を収集する。
MIBs are commonly used to manage network objects. But,
In contrast to typical MIB object types, the NMU 204 MIB has object types that relate to the future state of the network 100. Further, the M of the NMU 204
The IB collects information from virtual message packets when delivered through the intermediate device 101.

【0031】 この発明の1実施例では、コード部分510を含む少なくとも1つの能動メッ
セージ・パケット500を展開して、NMU204のMIBからネットワークに
関する情報を収集する。コード部分510は、前に中間デバイス101を通過し
た他のメッセージ・パケットからMIBが収集している情報があるかどうか、M
IBに照会するようにプログラムされている。この照会に応答して、能動メッセ
ージ・パケット500がMIBから情報を受取り、その情報を能動メッセージ・
パケット500内に埋込む。従って、パケット500が中間デバイス101を通
過するとき、能動メッセージ・パケット500の内容が変化する。上に述べた形
式では、コード部分510が、移動する単純なネットワーク管理プロトコル(S
NMP)クライアントとして作用し、MIBはSNMPエージェントとして作用
する。当業者であれば判るように、この発明の能動メッセージ500は、シミュ
レーションの用途に使うことに制限されない。能動メッセージ500を展開して
、ネットワーク100の現在状態に関係する情報について、典型的なMIBを照
会し、こうしてネットワーク100に移動SNMPクライアント能力を持たせる
ことが出来る。
In one embodiment of the present invention, at least one active message packet 500 including code portion 510 is deployed to gather information about the network from NMU 204 MIB. Code portion 510 indicates whether there is information that the MIB is collecting from other message packets that have previously passed through intermediate device 101, M
It is programmed to query the IB. In response to this query, active message packet 500 receives information from the MIB and passes the information to the active message packet.
It is embedded in the packet 500. Thus, as the packet 500 passes through the intermediate device 101, the content of the active message packet 500 changes. In the format described above, code portion 510 is a simple moving network management protocol (S
NMP) acts as a client, and the MIB acts as an SNMP agent. As will be appreciated by those skilled in the art, the active message 500 of the present invention is not limited to use in simulation applications. The active message 500 can be expanded to query a typical MIB for information relating to the current state of the network 100, thus allowing the network 100 to have mobile SNMP client capabilities.

【0032】 この発明の1実施例では、能動メッセージ500が、この発明に適応したMI
Bに照会する為に展開させられる。このMIBは、ネットワーク100の将来状
態に関係する仮想メッセージから収集された情報で構成される。このような用途
に用いるのに適したMIBの一例が、表4〜表9に示したTABLE4に記述さ
れている。
In one embodiment of the present invention, the active message 500 is an MI message adapted to the present invention.
Expanded to query B. This MIB comprises information gathered from virtual messages relating to the future state of the network 100. An example of an MIB suitable for use in such an application is described in TABLE4 shown in Tables 4 to 9.

【0033】 表4〜表9(TABLE 4) 示すように、この発明のMIBは、3つの新しい管理さ
れる対象の種類、即ちこの発明の1実施例では、MIB自体(AvnmpMIB
)、パケット(Avnmpパケット)及び論理プロセス(論理プロセス)を定め
ている。これらの対象は、周知の単純ネットワーク管理プロトコル(SNMP)
を通じて管理されるが、対象の種類自体がこの発明の1実施例を表している。
As shown in Table 4 to Table 9 (TABLE 4), the MIB of the present invention has three new types of managed objects, namely, in one embodiment of the present invention, the MIB itself (AvnmpMIB).
), A packet (Avnmp packet) and a logical process (logical process). These objects are the well-known Simple Network Management Protocol (SNMP)
The type of object itself represents one embodiment of the present invention.

【0034】 図3に示すように、仮想メッセージが論理プロセッサ208に供給される。表
2(TABLE 2) は、この発明による論理プロセッサ208の構造的な要素を示して
おり、次のものを含む。即ち、受信時間(TR)順にメッセージを記憶する受信
待ち行列(QR)、送信時間(TS)の順にメッセージを記憶する送信待ち行列
(QS)、LVT表、論理及び物理プロセスの現在状態を記憶する現在状態表、
状態を定期的に保管する状態待ち行列(SQ)、滑りルックアヘッド窓(A)の
値、及び実時間とLVTの間の許容し得る偏差を表す許容値である。
As shown in FIG. 3, a virtual message is provided to logical processor 208. Table 2 shows the structural elements of the logical processor 208 according to the present invention, including: That is, a reception queue (QR) that stores messages in order of reception time (TR), a transmission queue (QS) that stores messages in order of transmission time (TS), an LVT table, and the current state of logical and physical processes are stored. Current status table,
State Queue (SQ), which periodically saves the state, the value of the sliding look-ahead window (A), and an acceptable value representing the allowable deviation between real time and LVT.

【0035】[0035]

【表2】 [Table 2]

【0036】 更に論理プロセッサ208は、表3(TABLE 3) に示したアルゴリズムの工程を
実行するようにプログラムされている。表3に示すように、論理プロセッサ20
8は最初に工程1及び2を実行することにより、時間を合わせる、即ち、論理プ
ロセッサ208がLVTを0に設定する。次に、論理プロセッサ208が壁時計
時間に従って、実時間”t”を設定する。表2に示すこの発明の実施例では、壁
時計時間は、地球測位システム(GPS)から得られる。壁時計時間を求めるこ
の他の手段が商業的に利用可能であり、当業者には容易に明らかであろう。工程
3は、受信待ち行列(QR)のメッセージが利用出来ない限り、無期限に最初の
2つの工程を繰返す。
Further, the logical processor 208 is programmed to execute the steps of the algorithm shown in Table 3 (TABLE 3). As shown in Table 3, the logical processor 20
8 sets the time by executing steps 1 and 2 first, ie, logical processor 208 sets LVT to zero. Next, the logic processor 208 sets the real time “t” according to the wall clock time. In the embodiment of the invention shown in Table 2, the wall clock time is obtained from the Global Positioning System (GPS). Other means of determining wall clock time are commercially available and will be readily apparent to those skilled in the art. Step 3 repeats the first two steps indefinitely, unless a message in the receive queue (QR) is available.

【0037】 受信待ち行列にメッセージが存在すると、工程4が、最低の受信時間(TR)
を持つメッセージを読込む。工程5が、工程4で読込んだメッセージの値に基づ
いて、現在状態を更新する。工程6で、メッセージが現実のものであるか、或い
はそれが許容公差から外れているかどうかを決定する。そうなっていれば、ロー
ルバックを開始する。工程7は、ローカル仮想時間に対して過去にメッセージが
発生したかどうかを検査する。そうであれば、ロールバックを開始する。メッセ
ージが現実のものであり、予測が許容公差以内であれば、工程8が、プロセスを
実行する為に取らなければならない任意の非可逆的な動作を発動する。工程9は
、論理プロセスがそのルックアヘッドを超えなかったかどうかを検査する。超え
ていなければ、論理プロセスが次に述べる工程に基づいて実行される。
If there are messages in the receive queue, step 4 determines the minimum receive time (TR)
Read the message with. Step 5 updates the current state based on the value of the message read in step 4. In step 6, it is determined whether the message is real or if it is out of tolerance. If so, start a rollback. Step 7 checks if a message has occurred in the past for the local virtual time. If so, start a rollback. If the message is real and the prediction is within tolerance, step 8 invokes any irreversible action that must be taken to perform the process. Step 9 checks whether the logic process has not exceeded its look ahead. If not, the logic process is performed based on the steps described below.

【0038】 工程10は、入力メッセージ及び現在のローカル仮想時間に基づいて、状態待
ち行列を更新する。工程11が時間をローカル仮想時間に設定する。工程12が
、現在の入力メッセージ及びローカル仮想時間に基づいて、必要であれば新しい
仮想出力メッセージを発生する。工程14が、将来のロールバックの場合の為に
送信待ち行列の出力メッセージのコピーを保管する。工程15が新しい仮想メッ
セージを送信する。
Step 10 updates the status queue based on the incoming message and the current local virtual time. Step 11 sets the time to local virtual time. Step 12 generates a new virtual output message, if necessary, based on the current input message and the local virtual time. Step 14 saves a copy of the output message in the send queue for future rollback cases. Step 15 sends a new virtual message.

【0039】[0039]

【表3】 [Table 3]

【0040】[0040]

【表4】 [Table 4]

【0041】[0041]

【表5】 [Table 5]

【0042】[0042]

【表6】 [Table 6]

【0043】[0043]

【表7】 [Table 7]

【0044】[0044]

【表8】 [Table 8]

【0045】[0045]

【表9】 [Table 9]

【0046】 図4は、この発明の1実施例によるメッセージ・パケット・フォーマット40
0を示す。この発明の1実施例では、メッセージ・パケット・フォーマット40
0が、仮想及び現実メッセージの両方に対して使われる。別の実施例では、メッ
セージ・パケット400が、仮想メッセージに対して使われ、簡単にしたフォー
マット、即ち仮想時間の記録に使われるフィールドを含まないフォーマットが、
現実メッセージに使われる。フィールド401は、メッセージの発信元及び着信
先に関する情報を含む典型的なヘッダ・フィールドである。フィールド402は
、送信時間(TS)を示す。TSはメッセージ400が送信されるときの送信プ
ロセスのLVTである。フィールド403は受信時間(TR)を示す。TRは、
着信ユニットの受信プロセスによって、メッセージ400の受信が計画されてい
る時間である。フィールド404は、メッセージ400をメッセージ或いは「ア
ンチメッセージ」の何れかとして確認する。アンチメッセージは、受信プロセス
を、許容公差外れの為、又は因果関係の状態の為に、ロールバックさせるような
メッセージである。このような誤りは、例えば、これから説明するように、メッ
セージ400のTSがその受信プロセスのLVTより早い場合に起こる。フィー
ルド405は、メッセージの実際の内容であるMを示し、406は、メッセージ
が発信された現実時間又は時計時間を示す。この発明の1実施例では、時計時間
が地球測位システム(GPS)によって決定される。
FIG. 4 shows a message packet format 40 according to one embodiment of the present invention.
Indicates 0. In one embodiment of the present invention, the message packet format 40
0 is used for both virtual and real messages. In another embodiment, the message packet 400 is used for a virtual message and has a simplified format, i.e., one that does not include the fields used to record virtual time.
Used for reality messages. Field 401 is a typical header field that contains information about the source and destination of the message. Field 402 indicates a transmission time (TS). TS is the LVT of the transmission process when the message 400 is transmitted. Field 403 indicates a reception time (TR). TR is
The time at which the receiving process of the terminating unit is scheduled to receive the message 400. Field 404 identifies message 400 as either a message or an "anti-message." Anti-messages are messages that cause the receiving process to roll back due to out-of-tolerance or causal conditions. Such an error may occur, for example, if the TS of message 400 is earlier than the LVT of the receiving process, as will now be described. Field 405 indicates the actual content of the message, M, and 406 indicates the actual or clock time at which the message was sent. In one embodiment of the present invention, the clock time is determined by the Global Positioning System (GPS).

【0047】 この発明の1実施例では、上に述べたメッセージの内の少なくとも1つが、図
5に示すような「能動(active)」メッセージである。「能動」メッセージは、図
4のパケット・フォーマットに示す少なくとも1つのフィールドの他に、そのパ
ケットが実行可能なコード部分510を含むメッセージである。この発明の1実
施例では、能動パケット500の実行可能なコード部分510が、GAVAプロ
グラミング言語で構成された汎用コードであって、パケット500がその着信ユ
ニット103に流れるとき、中間デバイス101のプロセッサ202によって実
行される。パケット500がネットワークの中を通るとき、実行可能なコード部
分510が、それが通過する中間デバイス401のネットワーク管理ユニット2
04から、ネットワークに関する情報を収集する。この為、パケット500は、
ネットワーク100を管理する為の情報を提供し、ネットワーク100が将来の
トラヒック状態に対処するように自ら構成することが出来るようにする。
In one embodiment of the present invention, at least one of the messages described above is an “active” message as shown in FIG. An "active" message is a message that includes, in addition to at least one field shown in the packet format of FIG. In one embodiment of the present invention, the executable code portion 510 of the active packet 500 is a generic code constructed in the GAVA programming language, and when the packet 500 flows to its terminating unit 103, the processor 202 of the intermediate device 101 Performed by As the packet 500 passes through the network, the executable code portion 510 is sent to the network management unit 2 of the intermediate device 401 through which it passes.
From 04, information about the network is collected. Therefore, the packet 500
It provides information for managing the network 100 and allows the network 100 to configure itself to handle future traffic conditions.

【0048】 図6は、この発明の1実施例によるこの発明のソフトウエア部分の相互作用を
示す。最初に電力が投入されたとき、ネットワーク100が現実メッセージRT
を発生し始める。駆動プログラム302が将来事象を予測し始め、駆動プロセス
303が、予想される事象に基づいて、仮想メッセージを発生する。論理プロセ
ス307が仮想及び現実メッセージの両方を受取る。論理プロセス307が各々
の到来メッセージを調べて、メッセージのRTフィールドを検査することによっ
て、それが仮想であるか現実であるかを決定する。メッセージが仮想メッセージ
である場合、論理プロセス307がメッセージの送信時間(TS)を調べる。メ
ッセージの送信時間は、メッセージが送信されたときの送信プロセスのLVTで
ある。
FIG. 6 illustrates the interaction of the software portions of the present invention according to one embodiment of the present invention. When the power is first turned on, the network 100 transmits the real message RT.
Start to occur. The driving program 302 begins to predict future events, and the driving process 303 generates a virtual message based on the expected event. Logic process 307 receives both virtual and real messages. Logic process 307 examines each incoming message and determines whether it is virtual or real by examining the RT field of the message. If the message is a virtual message, logic process 307 looks up the transmission time (TS) of the message. The message transmission time is the LVT of the transmission process when the message was sent.

【0049】 論理プロセス307が仮想メッセージのTSフィールドを論理プロセス307
のLVTと比較する。メッセージが論理プロセス307のLVTに対して、過去
に到着していなければ、メッセージが受信時間(TR)の順に受信待ち行列(Q
R)に入る。次に論理プロセス307が受信待ち行列から次のメッセージを取出
し、 そのLVTを更新し、メッセージを処理する。出のメッセージが発生され
た場合、メッセージのコピーを送信待ち行列に保管し、RTを設定し、送信時間
(ST)を現在のLVTに設定する。その後、出のメッセージが着信先論理プロ
セス308へ送信される。仮想メッセージ400が順序外れで到着した場合、即
ち、論理プロセス307のLVTに対して過去のTSで到着した場合、論理プロ
セス307は、時刻TSより前の最後に記憶された状態を復元する為に、ロール
バックしなければならない。
The logical process 307 stores the TS field of the virtual message in the logical process 307.
LVT. If the message has not arrived in the past with respect to the LVT of the logical process 307, the message is received in the reception queue (Q
Enter R). Next, logic process 307 retrieves the next message from the receive queue, updates its LVT, and processes the message. If an outgoing message is generated, a copy of the message is stored in the transmission queue, the RT is set, and the transmission time (ST) is set to the current LVT. Thereafter, the outgoing message is sent to the destination logic process 308. If the virtual message 400 arrives out of order, i.e., arrives in the past TS with respect to the LVT of the logical process 307, the logical process 307 may use the logical process 307 to restore the last stored state prior to the time TS. Have to roll.

【0050】 この発明の1実施例では、仮想メッセージが、その着信先の論理プロセス30
8へ移動するとき、中間デバイス101のメモリ、例えば、キャッシュ・メモリ
に記憶される。仮想メッセージがインデックスが付けられ、中間デバイス101
を通過するときに各々のメッセージの発信元―着信先アドレスで構成されたキー
に従って記憶される。記憶されているキーと釣合うキー(発信元―着信先アドレ
ス)を持つこの後のメッセージが中間デバイス101を通過するとき、新しいメ
ッセージが記憶されているメッセージと比較される。記憶されているメッセージ
が一層大きな時間刻印の値(RT)を持つ場合、新しい方のメッセージがその着
信先のプロセスに達するときに、因果関係の違反が起こる可能性がある。その場
合、ロールバックが指示される。
In one embodiment of the present invention, the virtual message is sent to the logical process 30
8, the data is stored in the memory of the intermediate device 101, for example, a cache memory. The virtual message is indexed and the intermediate device 101
Are stored according to a key configured with the source-destination address of each message as it passes through. As subsequent messages with a key (source-destination address) that matches the stored key pass through the intermediate device 101, the new message is compared to the stored message. If the stored message has a larger time stamp value (RT), a causal violation may occur when the newer message reaches its destination process. In that case, a rollback is instructed.

【0051】 この為、ネットワーク100に対して潜在的なロールバック条件の早期の検出
が得られ、ネットワーク100が適切に応答して、ロールバックの結果を軽減す
ることが出来る。例えば、同じ通路内でこのような数多くのロールバック状態が
起こった場合、着信先のプロセスは遅くなることがある。この代りに、着信先の
プロセスが、因果関係の違反の時間的な影響を軽減する為に、新しい着信先のプ
ロセッサへ移動することがある。比較の後、待ち行列内で、古い方のメッセージ
がより新しいメッセージに置き換えられる。
As a result, early detection of a potential rollback condition for the network 100 is obtained, and the network 100 can appropriately respond and reduce the result of the rollback. For example, if many such rollback situations occur in the same aisle, the destination process may be slow. Alternatively, the destination process may move to a new destination processor to mitigate the temporal impact of the causal violation. After the comparison, older messages are replaced with newer messages in the queue.

【0052】 この発明のある好ましい特徴だけを図面に示して説明したが、当業者には色々
な変更が考えられよう。従って、特許請求の範囲は、この発明の範囲内に含まれ
るこのような全ての変更を包括するものであることを承知されたい。
While only certain preferred features of the invention have been illustrated and described in the drawings, various modifications will occur to those skilled in the art. Therefore, it is to be understood that the appended claims are intended to cover all such modifications that fall within the scope of the invention.

【図面の簡単な説明】[Brief description of the drawings]

【図1】 コンピュータ・ネットワークの全体的な構成を示す見取図。FIG. 1 is a sketch showing an overall configuration of a computer network.

【図2】 この発明の発信ユニットのブロック図。FIG. 2 is a block diagram of a transmitting unit according to the present invention.

【図3】 この発明の中間デバイスのブロック図。FIG. 3 is a block diagram of an intermediate device according to the present invention.

【図4】 この発明の実施例によるメッセージ・パケット構造を示す図。FIG. 4 is a diagram showing a message packet structure according to an embodiment of the present invention.

【図5】 この発明の実施例による能動メッセージ・パケット構造を示す図。FIG. 5 illustrates an active message packet structure according to an embodiment of the present invention.

【図6】 この発明のソフトウエア部品の形式を示すブロック図。FIG. 6 is a block diagram showing a format of a software component of the present invention.

───────────────────────────────────────────────────── フロントページの続き (31)優先権主張番号 09/415,431 (32)優先日 平成11年10月8日(1999.10.8) (33)優先権主張国 米国(US) (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),EA(AM,AZ ,BY,KG,KZ,MD,RU,TJ,TM),IN ,JP──────────────────────────────────────────────────続 き Continued on the front page (31) Priority claim number 09 / 415,431 (32) Priority date October 8, 1999 (Oct. 8, 1999) (33) Priority claim country United States (US) ( 81) Designated countries EP (AT, BE, CH, CY, DE, DK, ES, FI, FR, GB, GR, IE, IT, LU, MC, NL, PT, SE), EA (AM, AZ, BY, KG, KZ, MD, RU, TJ, TM), IN, JP

Claims (24)

【特許請求の範囲】[Claims] 【請求項1】 コンピュータ・ネットワークにおいて、 メッセージを発生するように構成された少なくとも1つの発信ユニットと、 メッセージを受信するように構成された少なくとも1つの着信ユニットと、 前記少なくとも1つの発信ユニット及び前記少なくとも1つの着信ユニットに
結合されていて、前記メッセージを前記少なくとも1つの発信ユニットから前記
少なくとも1つの着信ユニットへ通過させる少なくとも1つの中間デバイスと、
を備え、 前記少なくとも1つの中間デバイスは、前記メッセージに応答して、当該コン
ピュータ・ネットワークの少なくとも一部分の将来状態情報を提供するように構
成されていること、 を特徴とするコンピュータ・ネットワーク。
1. In a computer network, at least one originating unit configured to generate a message, at least one terminating unit configured to receive a message, the at least one originating unit and the At least one intermediate device coupled to at least one terminating unit for passing the message from the at least one originating unit to the at least one terminating unit;
The at least one intermediate device is configured to provide future state information of at least a portion of the computer network in response to the message.
【請求項2】 前記メッセージが現実メッセージ及び仮想メッセージの両方
を含み、前記発信ユニットが仮想メッセージ発生器を含む請求項1記載のコンピ
ュータ・ネットワーク。
2. The computer network of claim 1, wherein said messages include both real and virtual messages, and wherein said originating unit includes a virtual message generator.
【請求項3】 前記メッセージが能動メッセージである請求項1記載のコン
ピュータ・ネットワーク。
3. The computer network according to claim 1, wherein said message is an active message.
【請求項4】 前記能動メッセージがコード部分を含み、該コード部分が前
記中間ユニットで実行される請求項3記載のコンピュータ・ネットワーク。
4. The computer network according to claim 3, wherein said active message comprises a code portion, said code portion being executed on said intermediate unit.
【請求項5】 前記能動メッセージの内容が、前記能動メッセージの前記コ
ード部分を実行したことに基づいて変更される請求項4記載のコンピュータ・ネ
ットワーク。
5. The computer network of claim 4, wherein the content of the active message is changed based on execution of the code portion of the active message.
【請求項6】 前記発信ユニットが更にネットワークの状態を予測する駆動
ユニットを含み、前記仮想メッセージ発生器が前記駆動ユニットに結合されてい
て、前記予測されたネットワークの状態に基づいて仮想メッセージを発生する請
求項2記載のコンピュータ・ネットワーク。
6. The transmitting unit further includes a driving unit for predicting a state of a network, and the virtual message generator is coupled to the driving unit for generating a virtual message based on the predicted state of the network. The computer network of claim 2, wherein
【請求項7】 前記駆動ユニットがネットワーク・トラヒック予測プログラ
ムを有する請求項6記載のコンピュータ・ネットワーク。
7. The computer network according to claim 6, wherein said drive unit has a network traffic prediction program.
【請求項8】 前記中間デバイスがルータ、交換機、ハブ及び中継器から成
る群から選ばれる請求項1記載のコンピュータ・ネットワーク。
8. The computer network of claim 1, wherein said intermediate device is selected from the group consisting of a router, a switch, a hub, and a repeater.
【請求項9】 前記発信ユニットと前記着信ユニットと前記中間デバイスと
がインターネットを介して互いに結合されている請求項1記載のコンピュータ・
ネットワーク。
9. The computer according to claim 1, wherein the transmitting unit, the receiving unit, and the intermediate device are connected to each other via the Internet.
network.
【請求項10】 前記中間デバイスが更に、前記仮想メッセージに応答して
論理プロセスを実行する論理プロセッサを含む請求項2記載のコンピュータ・ネ
ットワーク。
10. The computer network of claim 2, wherein the intermediate device further comprises a logical processor that executes a logical process in response to the virtual message.
【請求項11】 前記中間デバイスが更に、実行された論理プロセスに対応
する前記中間デバイスの状態を記憶する仮想メモリを含む請求項8記載のコンピ
ュータ・ネットワーク。
11. The computer network of claim 8, wherein said intermediate device further comprises a virtual memory for storing a state of said intermediate device corresponding to an executed logical process.
【請求項12】 前記中間デバイスが更に前記仮想メッセージの内容に基づ
いて、情報を収集並びに記憶するネットワーク管理ユニット(NMU)を有する
請求項8記載のコンピュータ・ネットワーク。
12. The computer network of claim 8, wherein said intermediate device further comprises a network management unit (NMU) for collecting and storing information based on the content of said virtual message.
【請求項13】 前記ネットワーク管理ユニットが管理される対象としてパ
ケットを含むように構成された管理情報ベース(MIB)を含む請求項12記載
のコンピュータ・ネットワーク。
13. The computer network of claim 12, wherein said network management unit includes a management information base (MIB) configured to include packets as objects to be managed.
【請求項14】 前記ネットワーク管理ユニットが管理される対象として論
理プロセスを含むように構成されたMIBを含む請求項13記載のコンピュータ
・ネットワーク。
14. The computer network according to claim 13, wherein the network management unit includes an MIB configured to include a logical process as an object to be managed.
【請求項15】 1つの発信ユニットであって、該発信ユニットの利用を予
測する駆動ユニット、及び前記予測された利用に基づいて仮想メッセージを発生
するように構成された仮想メッセージ発生器を含む少なくとも1つの発信ユニッ
トと、 少なくとも1つの中間ユニットと、を備え、 該中間ユニットは、前記仮想メッセージに応答して論理プロセスを実行する論
理プロセッサと、前記仮想メッセージに基づいて、前記ネットワークの将来状態
に関係する情報を提供するネットワーク管理ユニットとを含んでいること、 を特徴とするコンピュータ・ネットワーク。
15. An at least one originating unit, comprising: a driving unit for predicting use of the originating unit; and a virtual message generator configured to generate a virtual message based on the predicted use. An originating unit, at least one intermediate unit, the intermediate unit executing a logical process in response to the virtual message, and a future state of the network based on the virtual message. A network management unit for providing relevant information.
【請求項16】 前記メッセージがコード部分及びデータ部分を含む請求項
15記載のコンピュータ・ネットワーク。
16. The computer network of claim 15, wherein said message includes a code portion and a data portion.
【請求項17】 当該発信ユニットの利用を予測する手段、及び該予測され
た利用に基づいて第1の仮想メッセージを発生する手段を含む発信ユニットと、 前記第1の仮想メッセージに応答して論理プロセスを実行する手段を含む着信
ユニットと、 前記第1の仮想メッセージに応答して論理プロセスを実行すると共に、実行さ
れた論理プロセスに基づいて第2の仮想メッセージを発生する手段を含む中間ユ
ニットと、 を備えているコンピュータ・ネットワーク。
17. An originating unit including means for predicting usage of the originating unit, and means for generating a first virtual message based on the predicted usage, and a logic responsive to the first virtual message. An incoming unit including means for executing a process; an intermediate unit including means for executing a logical process in response to the first virtual message and generating a second virtual message based on the executed logical process; A computer network comprising:
【請求項18】 事象計算シミュレーションの正確さを決定する方法に於て
、 プロセッサを含むユニットで論理プロセスを実行する工程と、 該実行する工程での論理プロセスの実行によって得られる前記ユニットの状態
を表す状態変数値を含む第1の状態表を作成する工程と、 前記第1の状態表をメモりに記憶する工程と、 プロセッサを含む前記ユニットで、前記論理プロセスに対応する物理プロセス
を実行する工程と、 前記物理プロセスの実行から得られた前記ユニットの状態を表す状態変数値を
含む第2の状態表を作成する工程と、 前記第1及び第2の状態表を比較して前記状態変数値の差を決定する工程と、 を含んでいる前記方法。
18. A method for determining the accuracy of an event calculation simulation, comprising: executing a logical process on a unit including a processor; and determining a state of the unit obtained by executing the logical process in the executing step. Creating a first state table including state variable values to be represented; storing the first state table in a memory; and executing a physical process corresponding to the logical process in the unit including a processor. Creating a second state table including a state variable value representing the state of the unit obtained from execution of the physical process; and comparing the first and second state tables with the state variable Determining the difference between the values.
【請求項19】 メッセージを送信及び受信する複数個の相互接続されたユ
ニット、及びその間で前記メッセージを通す少なくとも1つの中間デバイスを有
する通信ネットワークで、該ネットワークの将来状態を予測する方法に於て、 第1のユニットにより、ネットワークの将来の利用の計画に基づいて、仮想メ
ッセージを発生する工程と、 該仮想メッセージに応答して前記中間デバイスで論理プロセスを実行する工程
であって、前記論理プロセスが前記ネットワークの将来の利用を模倣している、
工程と、 前記論理プロセスに関係する第2のユニットの状態をメモりに記憶する工程で
あって、該記憶される状態が前記第2のユニットの将来状態を表している、工程
と、 を含んでいる前記方法。
19. A method for predicting the future state of a communication network having a plurality of interconnected units transmitting and receiving messages and at least one intermediate device passing said messages therebetween. Generating, by the first unit, a virtual message based on a plan for future use of the network; and executing a logical process on the intermediate device in response to the virtual message, the logical process comprising: Mimics the future use of the network,
Storing the state of a second unit associated with the logical process in a memory, wherein the stored state represents a future state of the second unit. Said method.
【請求項20】 前記第1のユニットのネットワークの利用を監視し、監視
された利用に基づいて、前記第1のユニットのネットワークの将来の利用を計画
する最初の工程を含む請求項19記載の方法。
20. The method of claim 19, comprising monitoring the first unit's use of the network and planning future use of the first unit's network based on the monitored use. Method.
【請求項21】 ネットワークを管理する方法に於て、 ネットワーク内を移動するメッセージからネットワークの状態に関係する情報
を収集すると共に該情報をMIBに記憶する工程と、 前記MIBの中に記憶されている情報について前記MIBに照会する工程と、 照会の結果に基づいて、前記ネットワークを管理する工程と、 を含んでいる、ネットワークを管理する方法。
21. A method for managing a network, comprising: gathering information related to the state of the network from messages traveling through the network and storing the information in a MIB; and storing the information in the MIB. Querying the MIB for information that exists, and managing the network based on the results of the query.
【請求項22】 前記MIBが前記ネットワークの将来状態に関係する情報
を持っている請求項21記載の方法。
22. The method of claim 21, wherein the MIB comprises information relating to a future state of the network.
【請求項23】 前記照会が、能動メッセージ・パケットのコード部分に含
まれているコードを実行することによって行われる請求項22記載の方法。
23. The method of claim 22, wherein said query is performed by executing code contained in a code portion of an active message packet.
【請求項24】 前記能動メッセージ・パケットが仮想メッセージ・パケッ
トである請求項23記載の方法。
24. The method of claim 23, wherein said active message packet is a virtual message packet.
JP2000576582A 1998-10-13 1999-10-12 Self-predictive communication network Withdrawn JP2002527994A (en)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US10393698P 1998-10-13 1998-10-13
US10546498P 1998-10-23 1998-10-23
US60/105,464 1998-10-23
US60/103,936 1998-10-23
US41543199A 1999-10-08 1999-10-08
US09/415,431 1999-10-08
PCT/US1999/024039 WO2000022779A2 (en) 1998-10-13 1999-10-12 Self predicting communications networks

Publications (1)

Publication Number Publication Date
JP2002527994A true JP2002527994A (en) 2002-08-27

Family

ID=27379629

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000576582A Withdrawn JP2002527994A (en) 1998-10-13 1999-10-12 Self-predictive communication network

Country Status (5)

Country Link
EP (1) EP1066701A2 (en)
JP (1) JP2002527994A (en)
EA (1) EA200000649A1 (en)
TW (1) TW453067B (en)
WO (1) WO2000022779A2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002374303A (en) * 2001-05-18 2002-12-26 Gateway Inc System and method for predicting network performance
JP2009026101A (en) * 2007-07-20 2009-02-05 Nec Electronics Corp Evaluation apparatus, evaluation method and program

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2338325B (en) * 1994-10-03 2000-02-09 Univ Westminster Data processing method and apparatus for parallel discrete event simulation
US5726979A (en) * 1996-02-22 1998-03-10 Mci Corporation Network management system
US5907696A (en) * 1996-07-03 1999-05-25 Cabletron Systems, Inc. Network device simulator

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002374303A (en) * 2001-05-18 2002-12-26 Gateway Inc System and method for predicting network performance
JP2009026101A (en) * 2007-07-20 2009-02-05 Nec Electronics Corp Evaluation apparatus, evaluation method and program

Also Published As

Publication number Publication date
EA200000649A1 (en) 2001-06-25
WO2000022779A2 (en) 2000-04-20
EP1066701A2 (en) 2001-01-10
TW453067B (en) 2001-09-01
WO2000022779A3 (en) 2000-11-09

Similar Documents

Publication Publication Date Title
CA2107141C (en) Method simulating data traffic on network in accordance with a client/server paradigm
EP2457164B1 (en) Method of monitoring the performance of a software application
Kardani-Moghaddam et al. ADRL: A hybrid anomaly-aware deep reinforcement learning-based resource scaling in clouds
US9246777B2 (en) Computer program and monitoring apparatus
JP2001044993A (en) Device and method for generating simulation model for network, and recording medium storing program for actualizing the method
CN114900436B (en) Network twinning method based on multi-dimensional fusion model
JP2007208633A (en) Device, method and program for designing network
Sieber et al. Towards a programmable management plane for SDN and legacy networks
CN111917750B (en) Data interaction method and interface for simulation communication network and simulation power network
JP3511620B2 (en) Performance analysis method and system for large-scale network monitoring system
JP2002527994A (en) Self-predictive communication network
Muhammad et al. Simulating group communication protocols through an object-oriented framework
JP5874234B2 (en) Device management apparatus, device management method, and device management program
JP2004193816A (en) Network evaluation system
Perkonigg et al. MAC-Sim: A multi-agent and communication network simulation platform for smart grid applications based on established technologies
CN110475206B (en) Monitoring and early warning method based on wifi log
Samolej et al. Simulation and performance analysis of distributed internet systems using TCPNs
Ricciulli et al. Modeling correlated alarms in network management systems
Xiang et al. Modeling and verifying basic modules of floodlight
WO2023109905A1 (en) Digital twin network construction method and network element
Wu et al. Performance modeling for interconnection networks
Morse et al. Feasibility and Functionality of Autonomous Objects in the HLA
Ravindran et al. Management of adaptation capability of networked systems in dynamic environments
JP2002527842A (en) System and method for determining global virtual time for asynchronous parallel discrete event simulation
Hollinghurst Enabling Software Defined Networking in High Criticality Networks

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20070109