JP2001257684A - 計算機システム - Google Patents

計算機システム

Info

Publication number
JP2001257684A
JP2001257684A JP2000065553A JP2000065553A JP2001257684A JP 2001257684 A JP2001257684 A JP 2001257684A JP 2000065553 A JP2000065553 A JP 2000065553A JP 2000065553 A JP2000065553 A JP 2000065553A JP 2001257684 A JP2001257684 A JP 2001257684A
Authority
JP
Japan
Prior art keywords
priority code
code string
priority
packet
probability distribution
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
JP2000065553A
Other languages
English (en)
Inventor
Atsushi Kitamura
淳 北村
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2000065553A priority Critical patent/JP2001257684A/ja
Publication of JP2001257684A publication Critical patent/JP2001257684A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Abstract

(57)【要約】 【課題】 優先度符号列を最適な範囲の値に決定する。 【解決手段】 パラメータ決定部28は送信に必要な情
報を保持するリソースが十分にあるかどうかを確認す
る。結果、リソースが十分であれば、確率分布関数の優
先度符号列を決定するために使用するパラメータσとμ
は初期値を使い、十分でなければσの値を小さくし、か
つμの値を大きくしてパラメータ保持部25にこれらの
値を保持する。次にn個の一様乱数を一様乱数発生部2
3で発生する。次にパラメータ保持部25に保持した値
と一様乱数発生部23で発生した一様乱数を用いて確率
分布生成部24は所定の確率分布関数を計算する。以上
のようにして優先度符号列はある分布で決定され、優先
度符号列の生成が終了する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、計算機システムに
係り、より詳しくは、ネットワークに接続されると共
に、送信するパケットに優先度を示す優先度符号列を付
加しておき、前記パケット同士が衝突した場合に前記優
先度符号列を比較することによってパケットの再送信順
序を決定する計算機システムに関する。
【0002】
【従来の技術】近年ローカル・エリア・ネットワーク
(LAN:Local Area Network) の伝送速度は100Mbps
(Mega Bit Per Second) が主流となりつつある。LANの
伝送速度が向上したことにより、映像や音声などの大量
のマルチメディア・データの高速伝送が可能となってき
た。同時に、近年パーソナル・コンピュータ (PC:Perso
nal Computer) のパフォーマンスが格段に向上してき
た。中央演算処理装置 (CPU:Central Processing Unit)
の計算速度が高速になり、かつメモリの容量もこれま
でと比較して非常に大きくなっている。このような状況
に伴い、PCを使って遠隔地間で会議を行うデスクトップ
会議システムや遠隔教育などの新しいアプリケーション
が現実のものとなってきている。現在さらなる高速化の
要求から、1Gbpsの伝送速度をもつLANへの移行が急速
に進められている。
【0003】以降、計算機システムにはPC端末を想定す
る。
【0004】PC端末をLANに接続するために、一般にネ
ットワーク・インターフェース・カード (NIC:Network
Interface Card) が使用される。まずPC端末用のNICの
概要を説明する。NICはPC端末のホスト・システムから
ネットワークへ送信データを送出する働きと、ネットワ
ークから入ってきた受信データをPC端末のホスト・シス
テムへ転送する働きをもつ。現在PC端末用のNICは、多
くの場合LANコントローラと呼ばれるIC (Integrated Ci
rcuit) チップによって機能する。Digital Equipment社
やIntel社などから市販されているものを含め、代表的
なLANコントローラの構成概略図を図 1に示す。1がLA
Nコントローラであり、現在の代表的なLANコントローラ
はほとんどが32ビットの周辺要素相互接続 (PCI:Peri
pheral Component Interconnect) バス・インターフェ
ース2を備えている。ホスト・システム3とLANコント
ローラ1の間のデータ転送はすべてPCIバス・インター
フェース2を介して行われる。また、通常DMAコントロ
ーラ4を備えており、LANコントローラ1はバス・マス
タとなり得る。ここでは一つのDMAコントローラしか書
かれていないが、一般的には送信用および受信用に2チ
ャネルのDMAコントローラを備えている。これらは各々
に独立して動作し、ホスト・システム3中のシステム・
メモリ5との間のデータ転送に使われる。ネットワーク
7から流れてきた受信フレームはSIA (Serial Interfa
ce Adapter) インターフェース8もしくはMII (Media I
ndependent Interface) インターフェース9を介し、メ
ディア・アクセス制御 (MAC:Media Access Control) コ
ントローラ10で必要な処理を施された後に受信用先入
れ先出しメモリ (FIFO:First-In First-Out Buffer)1
2に一時格納される。また、送信FIFO11は送信データ
をネットワークへ送出する前に一時格納しておくための
バッファ・メモリである。ホスト・システム3からLAN
コントローラ1に対するコマンドおよびステータスなど
の情報を含んだデータ・ストラクチャの受け渡しマネー
ジメントはデータ制御部13で行われる。また、上記の
コマンドやステータスなどを格納しておくための多目的
レジスタ14が用意されている。通常はコントロール/
ステータス・レジスタ (CSR:Control/Status Regsiter)
と呼ばれる名で用意され、これはシステム・メモリ5
上にマッピングされる。従ってLANコントローラ1から
もホスト・システム3からもリード/ライトが可能とな
る。ホスト・システム3からLANコントローラ1へ送信
パケットを転送する一般的な機構は以下のとおりであ
る。一般にホスト・システム3からLANコントローラ1
へ送信パケットを転送するために、送信ディスクリプタ
と呼ばれるデータ・ストラクチャが使われる。送信ディ
スクリプタはPCの起動時にデバイス・ドライバによって
システム・メモリ5に複数割り当てられる。送信ディス
クリプタにはバッファ・アドレス領域とサイズ領域があ
り、バッファ・アドレス領域には送信するパケットが保
持されているシステム・メモリ5のメモリ・アドレス
が、サイズ領域には送信するパケットの大きさが記述さ
れる。デバイス・ドライバは、送信ディスクリプタが存
在するシステム・メモリ5のアドレスを多目的レジスタ
14に書き込み、LANコントローラ1に対して送信の命
令を出す。LANコントローラ1はデバイス・ドライバか
ら送信の命令を受けると指定されたアドレスから送信デ
ィスクリプタをリードする。リードされた送信ディスク
リプタには送信するパケットが格納されているシステム
・メモリ5中のアドレスが記述されているので、そのア
ドレスから指定されたサイズだけリードし、送信FIFO1
1へ格納する。送信FIFO11に格納されたデータはMAC
コントローラ10によってネットワーク7へと送出され
る。
【0005】次にデータ通信プロトコルについて説明す
る。
【0006】LANに用いられる代表的なネットワークに
はイーサネット(登録商標) (Ethernet)
(登録商標) がある。Ethernetで使用されているプロ
トコルはCSMA/CD (Carrier Sense MultipleAccess/Coll
ision Detection) と呼ばれる方式で、IEEE802.3で
規格化されている。CSMA/CDでは、パケットを送信するP
C端末 (以降、送信端末と呼ぶ) がパケットを送信する
前にネットワーク・チャネルのキャリアをセンシング
し、キャリアがなければパケットの送信を開始し、キャ
リアがあればキャリアがなくなるのを待ってからパケッ
トの送信を開始する。送信されたパケットがネットワー
ク上のすべての端末に到着するまでには伝播遅延がある
ので、ほぼ同時に複数の送信端末がパケットの送信を開
始しようとしてキャリアをセンシングすると、互いにキ
ャリアの存在を確認できず、各々の送信端末がパケット
の送信を開始してしまう場合が起こりえる。この場合は
パケット同士の衝突が起こり、各々の送信端末はランダ
ムな時間を待機した後に同じパケットを再送信すること
になる。各々の送信端末が待機している間はネットワー
クが使用されない。CSMA/CDでは通信量が増加するにつ
れてパケット同士の衝突頻度が高くなり、従って極端に
ネットワークの使用効率が悪くなることが知られてい
る。
【0007】特開平5-252170号公報では送信す
るパケットに優先度を示す符号列 (以降、優先度符号列
と呼ぶ) を付加し、送信されたパケットが衝突した場合
には付加された優先度符号列の値を比較して、衝突した
パケットの再送信順序を決定し、衝突が生じたパケット
を送信した二つの送信端末のうちどちらか一方はランダ
ムな時間を待つことなしに送信ができるデータ通信方式
を提案している。
【0008】特開平5-252170号公報で提案され
るデータ通信方式では、少なくともどちらか一方の送信
端末はパケットを直ちに送信できるので、ネットワーク
の使用効率が良い。
【0009】特開平5-252170号公報で提案され
るデータ通信方式は、伝送媒体に光ファイバとスターカ
プラを利用する。スターカプラは電源を必要としない受
動型デバイスであり、自送信端末以外のネットワーク端
末すべてへパケットを分配し、かつ送信したパケットに
衝突が起きた場合でも自送信端末だけは他送信端末が送
信したパケットを正常に受信することができる特性を持
っている。スターカプラの構成については特開平5-3
457に開示されており、特開平5-252170号公
報で提案されるデータ通信方式はNICに加え、スターカ
プラの特性を利用して実現される。
【0010】特開平5-252170号公報に開示され
た発明を応用し、各ユーザが送信端末ごとに、もしくは
各アプリケーションのデータごとに、さらには音声・動
画を含むマルチメディア・データのコーデックごとにあ
らかじめ優先度符号列に差をつけておけば、この優先度
符号列を用いることで特定のデータを優先的にネットワ
ークに送信することが可能な優先制御を実現することが
できる。
【0011】LANにおける優先制御はデスクトップ会議
や遠隔教育など、いくつかのアプリケーションにおいて
非常に重要な技術である。
【0012】
【発明が解決しようとする課題】特開平5-25217
0号公報に開示された前記従来技術では優先度の与え方
についてはいかなる規定もなされていない。しかし、優
先度の与え方によってはデータ通信の優先制御を行う上
でいくつかの問題が生じる。例えば、ランダムに優先度
符号列を決定するだけではデータ通信の優先制御ができ
ないことは明らかである。この場合、送信するパケット
が優先的に送信されることは全く保証されない。
【0013】また、例えば優先度符号列を固定的に決定
すると、ネットワークが混雑した状態では優先度が低い
データを送信する送信端末はいつまでたってもパケット
の送信を行えない可能性がある。これは送信端末がネッ
トワークから切断されることに相当する。この場合、優
先度の低いデータを送信する送信端末は、送信するパケ
ットの格納情報を保持する送信ディスクリプタを次々と
使用し、キューに貯めていく。また送信パケット自体は
システム・メモリ中に格納されたままとなる。しかしな
がら、当然これらのリソースは有限なので、パケットの
送信が滞るとリソースの枯渇が生じてしまう。従って、
データ通信のパフォーマンスが極端に悪くなり、円滑な
コミュニケーションに支障をきたす。さらに優先度はユ
ーザ、アプリケーション、ネットワークの状況やリソー
スの状況などによってダイナミックに変動することが理
想であり、そうでなければ利用しにくいシステムとなっ
てしまう。
【0014】以上説明したように、パケットに優先度符
号列を付加し、付加した優先度符号列を用いてデータ通
信の優先制御を行う場合、優先度符号列の値の決定方法
がが非常に重要な問題となってくる。
【0015】本発明は、上記事実に鑑み成されたもの
で、優先度符号列を最適な範囲の値に決定することの可
能な計算機システムを提案することを目的とする。
【0016】
【課題を解決するための手段】上記目的達成のため請求
項1記載の発明は、ネットワークに接続されると共に、
送信するパケットに優先度を示す優先度符号列を付加し
ておき、前記パケット同士が衝突した場合に前記優先度
符号列を比較することによってパケットの再送信順序を
決定する計算機システムであって、 前記パケットに与
える優先度符号列を、所定範囲内で生成する優先度符号
列生成手段を備え、前記優先度符号列生成手段で生成さ
れた優先度符号列をパケットに付加して送信することを
特徴とする。
【0017】即ち、本発明は、ネットワークに接続され
ると共に、送信するパケットに優先度を示す優先度符号
列を付加しておき、前記パケット同士が衝突した場合に
前記優先度符号列を比較することによってパケットの再
送信順序を決定する計算機システムである。
【0018】このように、計算機システムは、パケット
同士が衝突した場合、優先度符号列を比較することによ
ってパケットの再送信順序を決定するので、優先度符号
列は重要となる。
【0019】そこで、本発明では、優先度符号列生成手
段は、前記パケットに与える優先度符号列を、所定範囲
内で生成する。なお、所定範囲は、衝突したパケット同
士に差がでるように定められる。そして、パケットに
は、この優先度符号列が付加されて送信される。
【0020】このように衝突したパケット同士に差がで
るように定められた範囲内で優先度符号列が生成され
る。よって、パケット同士が衝突した場合、優先度符号
列を比較すれば、パケットの再送信順序が、差のある優
先度により決定される。従って、パケットの送信を適切
に行うことができる。
【0021】ここで、請求項2のように、優先度符号列
生成手段は、確率密度関数に従うと共に前記所定範囲内
の確率分布を発生する確率分布発生手段を備え、この確
率分布発生手段により発生された確率分布に従って、優
先度符号列を生成する。
【0022】ここで、確率密度関数は、複数の確率密度
関数の中から、優先度のレベルによって定めてもよい。
具体的には、ユーザ、アプリケーション、プロトコル、
通信データのコーデック、通信相手端末のアドレス、ネ
ットワークの使用率、もしくはネットワーク端末がデー
タ通信に用いるメモリやデータ・ストラクチャ等を含め
たリソースのいずれかと、確率密度関数と、対応づけた
関数決定テーブルを備え、この関数決定テーブルを用い
て確率密度関数を定めてもよい。
【0023】なお、請求項3のように、確率密度関数
は、変数が±∞になるに従って0に収束する関数であ
り、請求項4のように、確率分布が正規分布をなす関数
であることが望ましい。
【0024】ここで、上記所定範囲を固定としてもよい
が、請求項6のように、所定範囲を設定する設定手段を
更に備え、優先度符号列生成手段は、設定手段により設
定された所定範囲内で、優先度符号列を生成するように
してもよい。このように所定範囲を設定する設定手段を
備えると、優先度符号列を柔軟に定めることができる。
【0025】なお、優先度符号列生成手段が確率分布発
生手段を備える場合には、請求項7のように、設定手段
は、確率密度関数の確率分布を定めるパラメータを、確
率分布が所定範囲内になるように、定めることにより、
前記所定範囲を設定するようにしてもよい。具体的に
は、請求項8のように、設定手段は、パラメータにより
定められる確率分布が所定範囲内になるためのパラメー
タのテーブルを備え、該テーブルから前記パラメータを
定める。即ち、ユーザ、アプリケーション、プロトコ
ル、通信データのコーデック、通信相手端末のアドレ
ス、ネットワークの使用率、もしくはネットワーク端末
がデータ通信に用いるメモリやデータ・ストラクチャ等
を含めたリソースのいずれかと、パラメータと、を対応
づけたパラメータ決定テーブルを備えてもよい。
【0026】
【発明の実施の形態】以下、図面を参照して、本発明の
実施の形態を詳細に説明する。
【0027】本実施の形態に係る計算機システムでは、
確率分布を発生し、発生した確率分布に従って優先度符
号列を決定する。また用いる確率分布の選択と期待値お
よび標準偏差の変動はユーザ、アプリケーション、プロ
トコル、通信データのコーデック、ネットワークの使用
率、もしくはネットワーク端末がデータ通信に用いるメ
モリや構造体等を含めたリソースと連動してダイナミッ
クに行われる。これらの処理はソフトウェアで行われて
もハードウェアで行われても良い。以下、詳細に説明す
る。
【0028】図 2には、本実施の形態に係る計算機シ
ステムを実施する上で想定するネットワーク・システム
の構成を示した概略図である。点線で囲まれた15がネ
ットワークを構成する最小セグメントであり、計算機シ
ステムとしてのネットワーク端末16(a)〜16(c)が光
ファイバ17とスターカプラ18を介して接続されてい
る。ここではスターカプラに接続されているネットワー
ク端末16は3台であるが、接続される端末台数は何台
であっても構わない。以後、本実施例ではわかりやすく
するためにネットワークを構成する最小セグメント15
の中で説明する。またネットワーク端末16(a)〜16
(c)としてはPC端末を想定する。
【0029】図 3に示すように、ネットワーク端末1
6(a)と16(b)が同時にパケットを送信し、パケット同
士の衝突が生じる場合の振る舞いを説明する図である。
送信しているネットワーク端末16(a)と16(b)は互い
のパケットを正しく受信できるが、第三者であるネット
ワーク端末16(c)は二つのパケットが重なってしまう
ために正しいパケットを受信できない。従ってネットワ
ーク端末16(a)と16(b)は再度送信を行う。この時の
送信順序は送信されたパケットのフレーム中に含まれて
いる優先度符号列によって決定される。
【0030】図 4に示すように、パケットの構成を示
す図である。通常のEthernetフレームに加え、プリアン
ブルと宛先アドレスの間に優先度符号列の領域20が確
保されている。本実施例では優先度符号列のサイズを1
6ビットとする。優先度符号列のサイズは任意である
が、あまり大きい値だとオーバーヘッドが大きくなりデ
ータ通信に不利である。また、小さすぎても優先度の優
劣がつけにくい。これらのことを加味して優先度符号列
のサイズを決定すれば良い。
【0031】次に、図 5及び図13を参照して、一般
的な送信パケットのフレーム生成手順について簡単に説
明する。なお、図 5は送信するパケットのフレームを
生成するまでの流れを説明するための図であり、図13
は送信するパケットのフレームを生成するまでの処理の
流れを説明するための図である。
【0032】システム・メモリ5における所定領域5A
に、送信先/元アドレス(図5では、0x○○○○等で
示した)及びタイプや送信データが格納された後、送信
端末のアプリケーションから送信命令が発生すると(S5
01)、ステップ502で、オペレーティング・システ
ム (OS:Operating System) はNICのデバイス・ドライバ
をコールし、デバイス・ドライバに送信先/元アドレス
や送信データが格納されている送信端末内のシステム・
メモリのアドレスとそれらのサイズ(図8では、○○b
ytesで示した)をNICに伝え、デバイス・ドライバ
に対して送信命令を出す(S502)。
【0033】ここで、デバイス・ドライバはネットワー
ク端末の初期化時にあらかじめネットワーク端末内にあ
るシステム・メモリ5に所定領域5Aを確保している。
即ち、送信ディスクリプタ5Bを含め必要な情報(送信
先/元アドレス及びタイプや送信データが格納されてい
るシステム・メモリ5のアドレス)を保持するための構
造体を複数個用意してある。
【0034】ステップ503で、送信命令されたデバイ
ス・ドライバは、この予め用意した送信ディスクリプタ
5Bに、この用意してある送信ディスクリプタにOSから
伝えられる送信に必要な情報、即ち送信先/元アドレス
や送信データが格納されているシステム・メモリのアド
レスとそれらのサイズを格納し、リストを作成する(S5
03)。
【0035】ステップ504で、デバイス・ドライバは
NICの状態を監視し、NICが送信可能な状態であればNIC
に対して送信開始の命令を発生する(S504)。ステッ
プ505で、NICはデバイス・ドライバからの送信命令
を受けると、まずパケットを送信するために必要な情報
が格納されている送信ディスクリプタをシステム・メモ
リからリードし、NIC内部のレジスタに保持する(S50
5)。
【0036】次のステップ506で、リードした送信デ
ィスクリプタに記述されているシステム・メモリのアド
レスから、やはり送信ディスクリプタに記述されている
サイズ分のデータをリードして、NIC内部に用意された
送信FIFOに格納する(S506)。
【0037】ステップ507で、リードした送信ディス
クリプタのリストすべてについてこの処理を行ったか否
かを判断し、リードした送信ディスクリプタのリストす
べてについてこの処理を行った場合、ステップ508
で、パケットを構成するデータをすべて送信FIFOへと格
納する。一般的にはプリアンプルとFCSとをNIC自体で用
意し、送信用FIFOのデータと合わせ、送信パケットのフ
レームを生成し、送信する(S508)。この説明で生成
される送信パケットのフレームには優先度符号列は含ま
れておらず、即ち通常のEthernetフレームである。
【0038】ところで、前述した図4に示すように、優
先度符号列をプリアンブルと送信先アドレスとの間に付
加するために、特に優先度符号列を生成する生成手段を
ネットワーク端末に設けることが本発明の特徴である。
生成手段はソフトウェアで実装されてもハードウェアで
実装されても構わない。本実施例では生成手段がソフト
ウェアで実現される場合について、優先度符号列の生成
過程を説明する。
【0039】この場合、生成手段はデバイス・ドライバ
の一部として組み込むことができる。生成手段が生成し
た優先度符号列は、送信先/元アドレスや送信データと
同様、ネットワーク端末のシステム・メモリ中に保持さ
れる。優先度符号列が格納されているネットワーク端末
のシステム・メモリのアドレスと優先度符号列のサイズ
は送信先/元アドレスや送信データなどと同様に送信パ
ケットを送信するために必要な情報を格納するための構
造体、即ち送信ディスクリプタに保持され、NICへ伝え
られる。従って、デバイス・ドライバは送信ディスクリ
プタを一つ余計に使うことになる。図 6に優先度符号
列の情報を保持する送信ディスクリプタを含む構造体の
リストを表す図を示す。21は送信に必要な情報を保持
する構造体郡、即ち送信ディスクリプタのリストであ
る。この情報から、NICは最初に優先権符号列をリード
し、送信用FIFOへ格納することで、プリアンブルと送信
先アドレスの間に優先度符号列を含んだパケットのフレ
ームが生成される。
【0040】本実施の形態において、優先度符号列を生
成する生成手段は確率密度関数に従う確率分布を発生
し、この確率分布に従って優先度符号列を決定する。図
7はこの生成手段の一構成例を示す図である。生成手
段22は少なくとも一つの一様乱数生成部23と少なく
とも一つの確立分布発生部24とパラメータ保持部25
から構成可能である。
【0041】デバイス・ドライバはOSから送信命令を伝
えられると一様乱数生成部23で一様乱数を発生する。
本実施例では優先度符号列のサイズを16ビットとして
いるので、一様乱数生成部は0から65535の範囲で
一様乱数を発生する。
【0042】確率分布発生部24はいくつかの確率密度
関数に従う確率分布を発生できる。発生する確率分布の
確立密度関数f(x)は、
【0043】
【数1】 を満たせばいずれでも利用可能であるが、確率密度関数
f(x)は、複数の確率密度関数の中から、優先度のレベル
によって定めてもよい。具体的には、ユーザ、アプリケ
ーション、プロトコル、通信データのコーデック、通信
相手端末のアドレス、ネットワークの使用率、もしくは
ネットワーク端末がデータ通信に用いるメモリやデータ
・ストラクチャ等を含めたリソースのいずれかと、確率
密度関数と、対応づけた関数決定テーブルを備え、この
関数決定テーブルを用いて確率密度関数を定めてもよ
い。特に±∞の極限で0に収束する関数が便利である。
本実施例では確率分布発生部24が正規分布(ガウス分
布)を発生する場合について説明する。
【0044】正規分布の確率密度関数は、
【0045】
【数2】 で表される。ここでσは標準偏差、μは期待値である。
正規分布はn個の一様乱数の和を用いて、
【0046】
【数3】 により発生できることが一般に知られている。従って、
確率分布発生部24は決められた標準偏差σと期待値μ
をパラメータ保持部25に保持しておき、一様乱数発生
部23が発生する乱数を使って式(3)から優先度符号列
26を決定できる。決定された優先度符号列26は、ネ
ットワーク端末のシステム・メモリ上に保持され、保持
されているシステム・メモリのアドレスと優先度符号列
のサイズが送信ディスクリプタのリストに最初に付け加
えられる。
【0047】以上、説明した方法によって、確率分布に
従う優先度符号列を生成することができる。図8に、生
成される優先度符号列の分布図を示す。使用される標準
偏差σの値によって分布の幅が決定され、また使用され
る期待値μの値によって分布の位置が決定される。即
ち、二つのパラメータによって優先度帯(所定範囲(衝
突したパケット同士に優先度に優劣がつくようにするた
めの範囲))が決定される。
【0048】パラメータ保持部25に保持されるパラメ
ータ、標準偏差σと期待値μは、変動可能であることが
望ましい。
【0049】ユーザがネットワーク端末のユーザ・イン
ターフェースから値を選択指定するようにしてもよい。
【0050】または、特に優先度レベル判定手段を設
け、優先度レベル判定手段がパラメータ保持部25に保
持されるパラメータ、標準偏差σと期待値μを決定す
る。
【0051】アプリケーション、プロトコル、通信デー
タのコーデックもしくは通信相手端末のアドレスによっ
て値が変わるように実装してもよい。デバイス・ドライ
バよりも上位のシステム・レベル、即ちアプリケーショ
ンやOSがデバイス・ドライバに対してアプリケーショ
ン、プロトコル、通信データのコーデックもしくは通信
相手端末のアドレスに合わせて使用するべき最適な標準
偏差σと期待値μの値を指定できることが理想である
が、デバイス・ドライバが能動的に送信するデータのTC
P/IPヘッダを確認することでもプロトコルやデータのコ
ーデックを知ることができるので、ダイナミックにパラ
メータ保持部25に保持されたパラメータの値を変える
ことが可能である。
【0052】この場合、最も簡単な実装方法は生成手段
22に優先度レベル判定手段としてパラメータ決定テー
ブル27を備えることである。図 9にパラメータ決定
テーブルの例を二つ示す。図 9(a)はTCP/IPヘッダに記
述されたコネクション・ポート番号、すなわちアプリケ
ーションによってパラメータを決定するパラメータ決定
テーブルの例である。また、図 9(b)は送信する相手端
末のアドレスによってパラメータを決定するパラメータ
決定テーブルの例である。これらのパラメータ決定テー
ブルを参照することで、特定のアプリケーションや相手
の端末ごとにパラメータを変えることができ、すなわち
決定される優先度帯を変えることができる。
【0053】さらに、パラメータ保持部25に保持され
るパラメータ、標準偏差σと期待値μの最も効果的な別
の決め方は、パケットの送信に必要な情報を保持するリ
ソースと連動して値を変える方法と、ネットワークの使
用率を監視して値を変える方法である。この場合、これ
らの監視は別の優先度レベル判定手段であるパラメータ
決定部28が行う。
【0054】図 10にパラメータ変更に伴う確率分布
のシフトする様子を示す。例えば、デバイス・ドライバ
が送信に必要な構造体を次々と使用していき、リソース
が不足しそうになった場合、パラメータ決定部28はリ
ソースの使用状況に合わせてパラメータ保持部25の標
準偏差σを小さい値に、かつ期待値μを大きい値に変更
する。図 10の29がこのシフトを示している。この
変更により優先度符号列の分布は集中度が増し、かつ確
実に大きい値の優先度符号列が生成され、それまで送信
できなかった状態から開放される。また、ネットワーク
の使用率が高くなっていることはキャリアをセンシング
していれば確認できるので、パラメータ決定部はNICか
ら定期的にネットワークの状況を通知してもらい、例え
ば十分にリソースに余裕があり、かつ送信するパケット
がリアルタイム性を要求しないものであれば、パラメー
タ保持部25の標準偏差σを大きい値に、かつ期待値μ
を小さい値に変更する。図10の30がこのシフトを示
している。この変更により優先度符号列の分布は集中度
が緩和し、かつ確実に小さい値の優先度符号列が生成さ
れ、他のネットワーク端末にネットワークの使用を譲る
ことができる。
【0055】また、通常の状態ではそれぞれのパケット
に付加される優先度符号列の確率分布はある程度の範囲
でマージするように設定されるのが望ましい。例えば各
ネットワーク端末やアプリケーションごとに適当なパラ
メータ値を初期設定しておき、この値を使用するように
する。図 11に複数の優先度符号列生成分布を示す。
この状態では優先度符号列の期待値が大きいパケットと
期待値が小さいパケットで、実際に生成される優先度符
号列の大小が逆転する場合が起こり得る。従って、ネッ
トワークが非常に混雑した状況において、優先度が低い
パケットを送信する送信端末でも最低限の送信が可能と
なる。
【0056】以上、説明した優先度符号列生成過程のフ
ローチャートを図 12に示す。この例ではパケットの
送信に必要な情報を保持するリソースと連動して優先度
を決定する場合を示している。また、生成される優先度
符号列は正規分布に従うものとする。
【0057】生成手段22は優先度符号列生成処理を開
始する(S1101)と、まず設定手段であるパラメータ
決定部28は送信に必要な情報を保持するリソースが十
分にあるかどうかを確認する(S1102)。これらはと
もにデバイス・ドライバでの処理である。結果リソース
が十分であれば(S1103)、優先度符号列を決定する
ために使用するパラメータσとμは初期値を使い、十分
でなければ(S1104)σの値を小さくし、かつμの値
を大きくしてパラメータ保持部25にこれらの値を保持
する。次にn個の一様乱数を一様乱数発生部23で発生
する(S1105)。次にパラメータ保持部25に保持し
た値と一様乱数発生部23で発生した一様乱数を用いて
確率分布生成部24は式(3)を計算する(S1106)。
以上のようにして優先度符号列が決定され(S110
7)、優先度符号列の生成が終了する(S1108)。
【0058】本実施例では生成手段22がソフトウェア
で実装される場合について説明したが、ハードウェアに
よっても容易に実装可能である。この場合は生成手段2
2をNICの一部として組み込むことができる。生成手段
22の構成自体はハードウェアで実装した場合でも図
7と変わらない。ハードウェアで一様乱数生成部23や
確立分布発生部24を実現した方が、ネットワーク端末
の計算機能力に負荷をかけることがないという点で有利
である。また、生成手段22をNICの一部として実装す
るのであれば、優先度符号列をメモリからNICへ転送す
る必要はなく、プリアンブルの次に負荷してパケットを
送信するだけで良い。
【0059】このようにして、確率分布を発生し、発生
した確率分布に従って優先度符号列をダイナミックに決
定することによって、優先度を示す符号列を柔軟に、か
つ最適な範囲の値に決定することができる。特に本実施
例では二つのパラメータを決定するだけで、容易に優先
度帯を変えることが可能である。さらに優先度が低いパ
ケットを送信する計算機システムも最低限の送信を保証
できるデータ通信の優先制御方式が実現される。
【0060】即ち、本実施の形態によってパケットに保
持された優先度を示す符号列によってデータ通信の優先
制御を行う場合に、ユーザごと、もしくはアプリケーシ
ョンごと、さらには音声・動画を含むマルチメディア・
データのコーデックや通信相手端末のアドレスごとに優
先度帯を柔軟に、かつ最適な範囲の値に決定することが
できる。また、ネットワークの使用率、もしくはネット
ワーク端末がデータ通信に用いるメモリや構造体等を含
めたリソースの状況に応じて優先度のベース値(期待
値)を変えられ、優先度が低い端末でも最低限の送信を
保証できるデータ通信システムの優先制御方式を実現で
きる。
【0061】
【発明の効果】以上説明したように本発明は、所定範囲
内、例えば、衝突したパケット同士に差がでるように定
められ範囲内で優先度符号列を生成するので、パケット
同士が衝突した場合、優先度符号列を比較すれば、パケ
ットの再送信順序を、差のある優先度により適切に決定
することができる、という効果を有する。
【0062】また、本発明は、優先度符号列の値には分
布があるので、全く送信ができない状態は確率的に回避
することができる、という効果を有する。
【0063】更に、本発明は、容易に優先度符号列の値
の分布を変えることができる、という効果を有する。
【図面の簡単な説明】
【図 1】LANコントローラの構成を示す概略図である。
【図 2】ネットワーク・システムの構成を示す概略図
である。
【図 3】パケットの衝突が生じる場合を示す図であ
る。
【図 4】パケットの構成図である。
【図 5】送信パケットのフレームを生成するまでの流
れを説明するための図である。
【図 6】優先度符号列の情報を保持する構造体を表す
図である。
【図 7】優先度符号列生成手段の構成例を示す図であ
る。
【図 8】本発明により生成される優先度符号列の分布
図である。
【図 9】パラメータ決定テーブルの例を示す図であ
る。
【図 10】パラメータ変更に伴う確率分布のシフトを
表す図である。
【図 11】複数のネットワーク端末の優先度符号列生
成分布を示す図である。
【図 12】優先度符号列生成過程のフローチャート図
である。
【図13】送信パケットのフレームを生成するまでの処
理の流れを説明するための図である。
【符号の説明】
22 優先度符号列生成手段 23 一様乱数生成部 24 確率分布発生部 25 パラメータ保持部 26 優先度符号列
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B045 BB47 EE07 EE12 JJ45 5K030 GA03 HA08 HB01 HB02 HB17 HB28 HC14 JA05 JL03 JT02 5K033 AA02 BA04 BA15 CA08 CB17 CC01 DA15 DB02 DB22 5K034 AA01 CC02 CC05 DD03 EE02 FF04 FF12 FF13 HH01 HH06 MM03 MM22 9A001 CC02 CC06 CC08 GG05 GG22 LL09

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 ネットワークに接続されると共に、送信
    するパケットに優先度を示す優先度符号列を付加してお
    き、前記パケット同士が衝突した場合に前記優先度符号
    列を比較することによってパケットの再送信順序を決定
    する計算機システムであって、 前記パケットに与える優先度符号列を、所定範囲内で生
    成する優先度符号列生成手段を備え、 前記優先度符号列生成手段で生成された優先度符号列を
    パケットに付加して送信することを特徴とする計算機シ
    ステム。
  2. 【請求項2】 前記優先度符号列生成手段は、 確率密度関数に従うと共に前記所定範囲内の確率分布を
    発生する確率分布発生手段を備え、 前記確率分布発生手段により発生された確率分布に従っ
    て、前記優先度符号列を生成することを特徴とする、 請求項1記載の計算機システム。
  3. 【請求項3】 前記確率密度関数は、変数が±∞になる
    に従って0に収束する関数であることを特徴とする請求
    項2記載の計算機システム。
  4. 【請求項4】 前記確率密度関数は、前記確率分布が正
    規分布をなす関数であることを特徴とする請求項2又は
    請求項3記載の計算機システム。
  5. 【請求項5】 前記所定範囲は、衝突したパケット同士
    に差がでるように定められることを特徴とする請求項1
    乃至請求項4の何れか1項に記載の計算機システム。
  6. 【請求項6】 前記所定範囲を設定する設定手段を更に
    備え、 前記優先度符号列生成手段は、前記設定手段により設定
    された所定範囲内で、前記優先度符号列を生成する、 ことを特徴とする請求項1乃至請求項5の何れか1項に
    記載の計算機システム。
  7. 【請求項7】 前記優先度符号列生成手段が前記確率分
    布発生手段を備える場合、 前記設定手段は、確率密度関数の確率分布を定めるパラ
    メータを、前記確率分布が前記所定範囲内になるよう
    に、定めることにより、前記所定範囲を設定する、 ことを特徴とする請求項6記載の計算機システム。
  8. 【請求項8】 前記設定手段は、前記パラメータにより
    定められる確率分布が前記所定範囲内になるためのパラ
    メータのテーブルを備え、該テーブルから前記パラメー
    タを定めることを特徴とすることを特徴とする請求項7
    記載の計算機システム。
JP2000065553A 2000-03-09 2000-03-09 計算機システム Pending JP2001257684A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000065553A JP2001257684A (ja) 2000-03-09 2000-03-09 計算機システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000065553A JP2001257684A (ja) 2000-03-09 2000-03-09 計算機システム

Publications (1)

Publication Number Publication Date
JP2001257684A true JP2001257684A (ja) 2001-09-21

Family

ID=18585055

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000065553A Pending JP2001257684A (ja) 2000-03-09 2000-03-09 計算機システム

Country Status (1)

Country Link
JP (1) JP2001257684A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021181896A1 (ja) * 2020-03-10 2021-09-16 オムロン株式会社 通信装置、通信装置の制御方法、および集積回路

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021181896A1 (ja) * 2020-03-10 2021-09-16 オムロン株式会社 通信装置、通信装置の制御方法、および集積回路
JP7435054B2 (ja) 2020-03-10 2024-02-21 オムロン株式会社 通信装置、通信装置の制御方法、および集積回路

Similar Documents

Publication Publication Date Title
JP2528626B2 (ja) デ―タ通信方法及び装置
US7936772B2 (en) Enhancement of end-to-end network QoS
US5229993A (en) Control of access through local carrier sensing for high data rate networks and control of access of synchronous messages through circulating reservation packets
US6877048B2 (en) Dynamic memory allocation between inbound and outbound buffers in a protocol handler
US5918021A (en) System and method for dynamic distribution of data packets through multiple channels
US6381666B1 (en) Method and apparatus for extending the range of the universal serial bus protocol
US6741559B1 (en) Method and device for providing priority access to a shared access network
US7492710B2 (en) Packet flow control
JP4150258B2 (ja) ネットワークデバイスにおける選択的データフレーム間引き
US20030026267A1 (en) Virtual channels in a network switch
JPH0732398B2 (ja) バス・アクセス制御方法
Alves et al. Ethernet goes real-time: a survey on research and technological developments
JP2022518857A (ja) パケットスケジューリング方法、スケジューラ、ネットワーク装置及びネットワークシステム
US7342883B2 (en) Method and apparatus for managing network traffic
US20110019685A1 (en) Method and system for packet preemption for low latency
KR20000006114A (ko) 네트워크인터페이스를제공하기위한방법및장치
US7209489B1 (en) Arrangement in a channel adapter for servicing work notifications based on link layer virtual lane processing
US20110019668A1 (en) Method And System For Packet Preemption Via Packet Rescheduling
US6678782B1 (en) Flow architecture for remote high-speed interface application
US20040120339A1 (en) Method and apparatus to perform frame coalescing
US8107371B2 (en) Apparatus and method for providing QoS of AV streams
JP2005318591A (ja) 実時間サービスのためのイーサネットmac適応装置及びそのデータ伝送方法
US20060067311A1 (en) Method of processing packet data at a high speed
JP2001257684A (ja) 計算機システム
JP2007306221A (ja) ネットワークスイッチ及び通信ネットワーク