JPH11234339A - 通信ネットワークを介するパケット配信装置及び方法 - Google Patents
通信ネットワークを介するパケット配信装置及び方法Info
- Publication number
- JPH11234339A JPH11234339A JP10280640A JP28064098A JPH11234339A JP H11234339 A JPH11234339 A JP H11234339A JP 10280640 A JP10280640 A JP 10280640A JP 28064098 A JP28064098 A JP 28064098A JP H11234339 A JPH11234339 A JP H11234339A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- packets
- new
- queue
- new packet
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9021—Plurality of buffers per packet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/901—Buffering arrangements using storage descriptor, e.g. read or write pointers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9084—Reactions to storage capacity overflow
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Small-Scale Networks (AREA)
Abstract
避するパケット発送機構を提供する。 【解決手段】 通信ネットワークを通じて一連のパケッ
トを発送する機構は、送信するパケットのためのキュー
と、新たなパケットの受信に応答し、新たなパケットと
キュー内に既にある任意のパケットのパラメータどうし
を比較するキュー・コントローラとを含み、比較の結果
に応じて、新たなパケットを整列させるか欠落させるか
決定する。パケットを欠落させるのは、新たなパケット
および整列されているパケットが同じ情報フローに関係
し、新たなパケットのシーケンス番号が整列されている
パケットのシーケンス番号と等しく、かつ新たなパケッ
トの承認番号が整列されているパケットの承認番号より
小さい場合である。この場合、整列されているパケット
が新たなパケットより長ければ、新たなパケットを欠落
させ、逆ならば、整列されているパケットを新たなパケ
ットと置換する。
Description
を通じてパケットを発送する機構、およびかかる機構を
組み込んだネットワーク発信装置(netowork
sender)またはルータ・ステーション、あるいは
ノードに関するものである。
コルの下で動作するインター・ネットワークおよびイン
トラ・ネットワークを通じた、TCP情報の伝送に特に
その用途を見出すものである。
経路内に備えられたルータ10を有する、インター・ネ
ットまたはイントラ・ネットのインスタンスの概略図で
ある。ソース12(即ち送出側ノード)とルータ・ノー
ド10との間には、ネット16が示されており、更にル
ータ・ノード10と宛先ノード14との間には別のネッ
ト18が示されている。実際には、ネット16およびネ
ット18は同一とすることができ、ルータ10は事実上
ソース12と宛先14との間の「中継ポスト(stag
ed post)」を形成する。以下では、発送機構に
言及する。尚、発送機構は、本願の関連においては、図
1に示すような別個の「中継ポスト」とは異なり、ソー
ス12の一部を同等に形成し得ることは認められよう。
は宛先14のステーションの構成の概略図である。これ
らのステーションは、適切な技術であれば、いずれを用
いても実現可能である。しかしながら、図2に示すよう
に、ステーションは、任意にディスプレイ38、キーボ
ード40およびその他の入力デバイス42を有するシス
テム・ユニット22を備えた、サーバ・コンピュータ2
0によって実現されている。尚、ルータ10は、必ずし
もキーボード、ディスプレイ等を含む必要はないことを
注意しておく。ブロック44は、システム・ユニット2
2の内部の態様の概略ブロック図である。ブロック44
内に示すように、システム・ユニットは、プロセッサ2
8、メモリ30、ディスク・ドライブ24および26、
ならびに通信ネットワーク16/18に接続するための
1本以上の通信ライン34に接続する通信アダプタ32
を含む。ブロック44内に示すように、システム・ユニ
ットの構成部品は、バス構造36を通じて接続されてい
る。図2は、ルータまたは送出側ステーションまたは宛
先ステーションを形成するサーバ・コンピュータに可能
な1つの構成全体の概略図であり、多くの代替構成を備
えることも可能であることは認められよう。
ービスを提供する。最も低いレベルでは、コネクション
レス配信システムが基盤を与え、その上に全てが存在す
る。次のレベルでは、信頼性の高いトランスポート・サ
ービスが上位プラットフォームを与える。第3レベルで
は、信頼性の高いトランスポート・サービスに基づいて
アプリケーション・サービスが与えられる。
信頼性かつベストエフォート形でコネクションレスのパ
ケット配信システム(unreliable, bes
t−effort, connectionless,
packet delivery system)か
ら成る。このサービスを「低信頼性」と記述し得るの
は、配信が保証されていないからである。パケットは、
失われたり、二重化したり、順序通りに配信されない場
合があるが、インターネットはかかる状態を検出せず、
送出側にも受信側にも通知しない。このサービスを「コ
ネクションレス」と記述し得るのは、各パケットが他の
全てから独立して扱われるからである。一方の機械から
他方の機械に送られる一連のパケットは、異なる経路を
通って移動する可能性がある。その中には失われるもの
もあり、その他のものは配信される。このサービスを
「ベストエフォート形」と記述し得るのは、インターネ
ットはパケットを配信しようと最大限努力するからであ
る。
構を定義するプロトコルを、「インターネット・プロト
コル」と呼び、通常その頭文字であるIPを用いて引用
する。IPは、データ・フォーマットの形式的な仕様を
定義し、データ転送の基本単位、およびインターネット
を通過する全てのデータの正確なフォーマットを定義す
る。また、IPは、パケットをいかに処理するのか、お
よびエラーに対していかに対処するのかについて指定す
る規則も含む。即ち、IPは信頼性の低い配信およびパ
ケット・ルーティングの観念を具現化するものである。
コルの形態(aspect)の更なる詳細は、例えば、
以下の米国特許第5,293,379号、第5,30
7,347、第5,307,413号、第5,309,
437号、第5,351,237号、および5,53
5,199号において得ることができる。
「インターネット・データグラム(Internet
datagram)、または代わりに「IPデータグラ
ム」、あるいは単に「データグラム」と呼ばれる。デー
タグラムは、ヘッダおよびデータ・エリア、ならびにソ
ースおよび宛先アドレスを備えている。データグラムに
は固定サイズがない。このこと、およびインターネット
の基本となる基礎的なハードウエア・サービスの物理的
制約も念頭に入れると、データグラムを「フラグメン
ト」と呼ばれる部分に分割することが必要である。
のフォーマットを示す。同じフォーマットは、データグ
ラムのフラグメントにも用いられる。
は、IPプロトコル・バージョンを指定し、データ・グ
ラムの経路に沿った全てのノードがそのフォーマットに
応ずることを保証するために用いられる。
測定した、データグラム・ヘッダ長を与える。TOTA
L LENGTH領域は、オクテット単位で測定したI
Pデータグラムの長さを与え、ヘッダおよびデータの長
さを含む。
ータグラムに対する処理の詳細を含む。
DENT、FLAGS、およびFRAGMENT OF
FSETが、データグラムのフラグメント化および再組
立を制御する。領域IDENTは、データグラムを識別
する一意の識別子を含む。
ータグラムがフラグメント化可能か否かを指定し、第2
ビットはこれが当該データグラム内の最後のフラグメン
トか否かを示す。FRAGMENT OFFSET領域
は、基のデータグラムにおけるこのフラグメントのオフ
セットを指定する。これは、オフセット0から開始し、
8オクテット単位で測定する。
じ基本ヘッダ・フォーマットを有するので、FLAGS
およびFRAGMENT OFFSET領域の組み合わ
せを用いて、ヘッダがフラグメントに関係することを示
し、更に元のデータグラム内のフラグメントの位置を示
す。FRAGMENT OFFSET領域は、当該デー
タグラム内における位置を識別し、前述のFLAGSビ
ットの第2ビット(時としてMORE FRAGMEN
TSフラグとも呼ばれる)を用いて、データグラム内に
未だフラグメントがあるか否か、また逆に当該フラグメ
ントがデータグラムの最後のフラグメントであることを
示す。
ある。HEADER CHECKSUM数値は、ヘッダ
値の保全性を保証する。
びDESTINATION IPADDRESSは、デ
ータグラムの送出側および意図した受信側の32ビット
・インターネット・アドレスを含む。OPTIONS領
域およびPADDING領域は、データグラム内では任
意の選択肢である。DATAと記された領域は、データ
領域の開始を表す。
ル構造のIP層の上では、提供される1つのサービス
は、信頼性のあるトランスポート・サービスであり、通
常、送信制御プロトコル(TCP:Transmiss
ion Control Protocol)によって
定義される、「信頼性のあるストリーム搬送サービス」
と呼ばれている。TCPはインターネット上で提供され
るが、実際には独立した汎用プロトコルであり、他の配
信システムと共に用いることも可能である。TCPは、
その基礎となるネットワークに関する仮定が非常に少な
く、更に、複雑なインターネットやイントラネット上だ
けでなく、イーサネットのような単一のネットワーク上
でも用いることが可能である。
ービスを提供し、インターネット上で提供される信頼性
のないデータグラム・プロトコル(UDP:unrel
iable datagram protocol)と
対比することができる。UDPは、配信が保証されてい
ないので、信頼性のない配信サービスを提供するのに対
して、TCPは、ストリームの形態で信頼性のある配信
を保証する、より複雑な構造を提供する。
供するので、そのため、伝送エラーがデータと干渉した
り、ネットワークのハードウエアが故障したり、あるい
はネットワークに負荷がかかり過ぎて割り当てられた負
荷に対処できない場合に、パケットが消失したり、破壊
される場合もある。一方、TCPは、8ビットのオクテ
ット即ちバイトに分割された、ビットのストリームによ
って配信を提供することによって動作する。
信頼性がない場合、TCP伝送は、再伝送による肯定承
認(positive acknowledgemen
twith retransmission)として知
られている技法にしたがって動作する。この技法は、受
信側がソースと通信し、受信側がデータを受信する度
に、承認メッセージを返送することを要求する。また、
送出側は、それが送った各パケットのレコードを保持
し、次のパケットを送出する前に承認を待つ。また、送
出側は、そのパケットを送るときにタイマを起動し、承
認が到達する前にタイマが時間切れとなった場合、パケ
ットを再送信する。図3Aは、パケットおよび承認の送
信および受信の概略図である。図3Aの左側は、送出側
50におけるイベントを表し、右側は受信側52におけ
るイベントを表し、中央部分は、送出側と受信側との間
を通過するネットワーク・メッセージを表す。
タ10)は、ネットワークを通じてパケットP1を受信
側(例えば、宛先14)に送り、メッセージP1のため
にタイマを起動する。受信側52が56でパケットP1
を受信すると、次に受信側は58において承認A1を送
る。承認A1が60において送出側50に受信される
と、送信側は62においてタイマをキャンセルし、次の
パケットP2を受信側52に送ることができ、メッセー
ジP2のためにタイマをセットする。受信側52が64
においてパケットP2を受信すると、66において第2
の承認A2を送出側50に送る。再度送出側は、タイマ
をキャンセルすることができる。その後、プロセスは継
続し、第2の承認A2の受信時に、更に次のパケットの
送信が行われる。
T即ちラウンド・トリップ・タイム)以内に応答を受信
し、適正に動作するシステムを表すものである。RTT
の概念について以下に述べる。しかしながら、図3B
は、パケットが受信されない場合(例えば、パケットが
消失したため)に、何が発生し得るかを例示するもので
ある。
送出し、タイマ(RTTタイマ)を起動する。送出側5
0と受信側52との間の伝送において、パケットP1が
消失した。したがって、時点72において受信側に受信
されているはずのパケットが、受信されていない。この
ため、74において行われるはずであった承認の送出が
行われない。同様に、76において送出側50に受信さ
れているはずの承認が、受信されていない。78におい
て、RTTタイマが満了し、パケットが消失したことを
示す。これを受けて、送出側は、80においてパケット
1をP1’として再送信する。次いで、82において、
これは受信側52においてしかるべく受信され、受信側
52は84において承認A’1を送出側に返送し、86
においてこれが受信される。
基本的な転送プロトコルは、承認を受信しなければ、次
のパケットを送ることができないという欠点がある。デ
ータ・フローを増加させるために、インターネット・ス
トリーム・サービスは、「スライディング・ウインドウ
(sliding window)」として知られてい
る概念を用いることができる。スライディング・ウイン
ドウ手法は、承認を受信する前に、一連のパケットを送
信することを可能にするためのものである。承認を受信
する前に送信可能なパケットの数は、「ウインドウ」内
のパケット数によって定義される。したがって、一連の
パケット1〜6に対しては、ウインドウがパケット1か
らパケット3まで及ぶ場合がある。すると、承認を待つ
ことなく、最初の3つのパケットを全て送信することが
できる。しかしながら、パケット4を送信できるのは、
パケット1に対する承認を受信したときだけである。パ
ケット1に対する承認を受信すると、パケット4が送出
される。この段階において、パケット5は、パケット2
から承認を受信するまで、送ることができない。したが
って、ウインドウは、承認が受信されるに連れて、一連
のパケットに沿って効果的にスライドすることがわか
る。スライディング・ウインドウ・プロトコルは、どの
パケットが承認されたかについて覚えており、未承認の
各パケット毎に、別個のタイマを保持している。パケッ
トが消失した場合、タイマは終了し、送出側はそのパケ
ットを再送信する。送出側がそのウインドウをスライド
させるに連れて、ウインドウは承認されたパケットを通
過して移動する。受信端において、同様のウインドウが
維持され、パケットが到達する毎に受け入れそして承認
する。プロトコルは比較的複雑であるが、より効率的な
転送を可能にすることは認められよう。図4は、サイズ
3のスライディング・ウインドウに対する、パケットの
交換を表す概略図である。これは、どのようにしてウイ
ンドウWがパケットのリストに沿ってスライドするかを
示すものである。
な、信頼性のあるストリームのサービスにその用途を見
出す。このサービスは、伝送制御プロトコル、即ち、T
CPによって定義される。TCPプロトコルと、基礎と
なるインターネット・プロトコル(IP)との組み合わ
せを、多くの場合TCP/IPと呼んでいる。
トを指定し、これらを2個所のコンピュータが交換する
ことによって、信頼性のある転送、およびデータが正確
に到達することを保証する手順を達成する。TCPプロ
トコルは、基礎となる通信システムについて想定するこ
とは非常に少なく、IPデータグラム配信サービスを含
む種々のパケット配信システムと共に使用可能である。
TCPサービスは、IPレイヤの上に位置し、一方IP
レイヤは、インターネットのネットワーク・インターフ
ェースの上に位置する。
間で通信を行うために用いられるセグメントのフォーマ
ットを表す。各セグメントは、ヘッダとそれに続くデー
タという、2つの部分に分割されている。ヘッダは、S
OURCE PORTおよびDESTINATION
PORT領域を備えており、接続の終端におけるアプリ
ケーション・プログラムを識別するTCP PORT番
号を収容する。SEQUENCE NO.は、当該セグ
メント内のデータの送出側のバイト・ストリームにおけ
る位置を識別する。ACKNOWLEDGEMENT
NO.領域は、ソースが受信した最上位バイトの位置を
識別する。SEQUENCE NO.は、セグメントと
同じ方向に流れるストリームを示し、一方ACKNOW
LEDGEMENT NO.は逆方向に流れるストリー
ムを示す。OFF領域は、セグメントのデータ部分のオ
フセットを指定する整数を収容する。これが必要なの
は、OPTIONS領域の長さが変化するからである。
領域RESは、将来の使用のために予約されている。セ
グメントは、承認またはデータまたは要求を搬送し、接
続を確立したり、接続を閉じるために用いることができ
る。CODE領域は、セグメントの目的および内容を判
定するために用いられる。WINDOW領域は、セグメ
ントを送る毎に、宛先が受け入れようとするバッファ・
サイズを指定する。CHECK SUM領域は、TCP
ヘッダのチェック・サムを含む。URGENT POI
NTER領域は、至急データを識別するために用いられ
る。
するために用いられる。例えば、OPTIONS領域
は、最大セグメント・サイズを指定するために用いるこ
とができる。DATA指示は、セグメントのデータ領域
の先頭を表す。
送ると、承認は必然的に、パケットまたはセグメントで
はなく、ストリーム内の位置を参照する。各承認は、受
信した最上位バイト位置よりも1大きなバイト位置を指
定する。したがって、承認は、受信側が受信することを
予期する次のバイトの番号を指定する。
ついて述べた。これは、対応する承認の受信までの、セ
グメントの送信に対する平均ラウンド時間を表す。ラウ
ンド・トリップ時間は経時的に変動する可能性があるの
で、RTT時間は動的に設定する必要がある。図6は、
RTTがイベントH1に応答して変動する様子の概略図
である。RTTは劇的に増大する場合があるが、システ
ム内で実際に応答時間を発生するために用いられるアル
ゴリズムは非常にゆっくりと変化する可能性がある。そ
の結果、RTTおよび応答曲線は、少なくとも一時的に
発散する。
テーションおよび送出側ステーションによるパケットの
整列の結果、パケットをキューに保持する時間のため
に、実際のRTTは増大する。その結果、承認が受信さ
れなかった場合、不要なパケットの再送信が行われる可
能性がある。これを、図7に概略的に表す。図7におい
て、パケットP2の送信の遅延のために、メッセージP
2が承認A1の受信の前に再送信されることがわかる。
不要なパケットP2の再送信の結果として、ネットワー
ク上のトラフィック容量が不必要に増大し、ネットワー
ク上の輻輳を悪化させる可能性がある。
と、TCPレイヤは、基礎のネットワーク上におけるデ
ータの消失から回復するための再送信機構を含む。再送
信間の間隔は、TCPレイヤによって動的に計算され、
ネットワークの応答時間にそれを適合させる。しかしな
がら、ネットワーク上の負荷が増大すると、TCPレイ
ヤは、ネットワークの応答時間の増大と同等の迅速性で
その再送信を適合させることはできない。その結果、T
CPレイヤは、実際には必要ではないときに、パケット
を再送信することになる。何故なら、承認の欠如は、パ
ケットを受信しないことによるのではなく、単にその受
信の遅延によるからである。再送信のために、ネットワ
ーク上のトラフィックが更に一層増大するという影響が
あり、これによって、ネットワークの応答時間の更なる
増大を招くことになる。この効果は、インターネット界
では公知であり、通常「輻輳崩壊(congestio
n collapse)」を引き起こす。
発明の目的である。
れば、通信ネットワークを通じて一連のパケットを発送
する機構が提供され、この発送機構は、送信するパケッ
トのためのキューと、新たに送信するパケットの受信に
応答し、新たなパケットのパラメータをキュー内に既に
あるパケットのパラメータと比較するキュー・コントロ
ーラであって、比較(複数の比較)の結果に応じて、新
たなパケットを整列させるか欠落させるかについて判定
を行うキュー・コントローラと、から成る。
されているパケットと比較することによって、例えば、
ネットワークの輻輳のためにパケット送信が遅れている
場合に、不要なパケットの重複送信を回避することがで
きる。整列されているパケットの再送信を回避すること
により、ネットワーク輻輳の悪化を防止する。新たなパ
ケットが、整列されているパケットの再送信である場
合、整列されているパケットは消失したのではなく、単
に遅れているだけであることがわかるので、再送信は不
要となる。
スト構造として実現するとよい。何故なら、これは、キ
ューのサイズ変更およびキュー・エントリの追加削除を
許す、柔軟性のある機構を備えるからである。好ましく
は、リンク・リストが、パケット・フローに関係する情
報を収容するエントリ、ならびにパケット・アイデンテ
ィティ情報およびパケット自体への別個のポインタを備
えている。また、これは、キュー・コントローラがキュ
ーを容易に横断し、先程言及した比較(複数の比較)を
行うことを可能にする。
ース・パラメータおよび宛先パラメータを含む、新たな
パケットおよび整列されているパケット(群)のフロー
・パラメータを比較し、新たなパケットおよび整列され
ているパケットが同じパケット・フローに関係するもの
であるか否かについて確定するように構成されている。
TCP環境では、ソース・パラメータはソースIPアド
レスおよびソースTCPポートを含むことができ、宛先
パラメータは宛先IPアドレスおよび宛先TCPポート
を含むことができる。
ラは、更に、新たなパケットおよび整列されているパケ
ット(群)に対して、パケット・シーケンス番号および
/または承認番号を比較し、新たなパケットが、整列さ
れているパケットの再送であるか否かについて確定する
ように構成されている。
キュー・コントローラは、 i)新たなパケットのシーケンス番号が、整列されてい
るパケットのシーケンス番号と等しい場合、かつ ii)新たなパケットの承認番号が、整列されているパ
ケットのパケット承認番号よりも小さい場合、新たなパ
ケットを、整列されているパケットの再送信と判定する
ように構成されている。
が、整列されているパケットの再送信ではないと判定し
た場合、新たなパケットをキューに追加するように構成
されている。
ットが整列されているパケットの再送信であり、整列さ
れているパケットの長さが新たなパケットのそれ以上で
ある場合、キュー・コントローラは新たなパケットを欠
落させるように構成されている。また、新たなパケット
が整列されているパケットの再送信であり、新たなパケ
ットの長さが整列されているパケットのそれよりも大き
い場合、キュー・コントローラはキュー内に整列されて
いるパケットを新たなパケットと置換するように構成さ
れている。
上で動作するソフトウエアによって実装することができ
る。
ークを通じて一連のパケットを送るステーションが提供
され、このステーションは、パケットに対する発送キュ
ーと、発送する新たなパケットのフローおよびパケット
・シーケンス・パラメータを、整列されているパケット
のフローおよびパケット・シーケンス・パラメータと比
較するように構成され、更に、新たなパケットが、整列
されているパケットの内同じフロー経路に関係するもの
の再送信であることの検出に応答して、新たなパケット
または整列されているパケットのいずれかを破棄するよ
うに構成されているキュー・コントローラと、を備える
発送コントローラを含む。ステーションは、例えば、通
信ネットワークを通じて一連のパケットをルーティング
するためのルータとすることができる。
トワークを通じて一連のパケットの発送を管理する方法
が提供され、この方法は、送信するパケットを整列させ
るステップと、送信する新たなパケットのフローおよび
パケット・シーケンス・パラメータを、整列されている
パケットのフローおよびパケット・シーケンスと比較す
るステップと、新たなパケットが、整列されているパケ
ットの内同じフロー経路に関係するものの再送信である
ことの検出に応答して、新たなパケットまたは整列され
ているパケットのいずれかを破棄するステップと、から
成る。
トワークを通じて一連のパケットの発送を制御するため
の、記憶媒体上のソフトウエア発送機構が提供され、こ
のソフトウエア発送機構は、送信するパケットのための
キューと、新たに送信するパケットの受信に応答し、新
たなパケットのパラメータをキュー内に既にあるパケッ
トのパラメータと比較するキュー・コントローラであっ
て、比較(複数の比較)の結果に応じて、新たなパケッ
トを整列させるか欠落させるかについて判定を行うキュ
ー・コントローラと、を定義するように動作可能となる
よう構成されている。
て、これより、添付図面を参照しながら一例としてのみ
説明する。図面において、同様の参照符号は同様のエレ
メントに関係するものとする。
群154〜160に対する4つの双方向接続を有するル
ータ150の概略図である。このルータは、例えば、図
2を参照しながら説明したような、従来のハードウエア
を用い、ルーティング機能のための適切なソフトウエア
実装ロジック152によって実現することができる。ネ
ットワーク154〜160は、別個に表されているが、
実際には同一ネットワークの一部とすることができる。
54から受信され、ネットワーク156およびネットワ
ーク158にそれぞれルーティングされる例を概略的に
示す。ルーティング処理は、従来の方法で行うことがで
き、受信したデータグラム・フラグメントから宛先情報
を抽出し、ルーティング・ロジック152の一部として
ルータ内に保持されている、宛先とルートとの間のマッ
ピングを含む、ルーティング表153を参照することに
よって行う。
152からの各出力経路における発送機構110も示
す。
実施形態の概略図であり、通信ネットワークのノード、
例えば図1に示したような、例えばルータまたは送出側
(ソース・ステーション)内に組み込むためのものであ
る。本発明の一実施形態は、図1ないし図3に示したよ
うな同じ全体構造の中に実現することも可能である。し
かしながら、本発明によれば、バッファの制御、または
ネットワークに送信するパケットのキューは、重複送信
の可能性を考慮するように、特定の方法で制御される。
5によって概略的に表されるような、ルータまたは送出
ステーションの従来のルーティング・ロジックから、発
送のためのデータ・パケットを受け取るように接続可能
であり、行列機構即ち構造を備える。これについて、以
下に更に詳しく説明する。
トローラ112が、58においてネットワークに送出す
るパケットのためのキュー116を管理する。キュー・
コントローラは、キュー116の管理のために、キュー
制御レコード114を備えており、あるいはこれを利用
する。尚、図9は、本発明の一実施形態の概略図であ
り、本発明の別の実施形態には異なる構造を備える場合
もあることを注意しておくべきであろう。図9に示す構
造は、特定のハードウエアによって、あるいは発送機構
を実現するために用いられる計算機システム上で動作す
るソフトウエアによって実現可能であることは認められ
よう。発送機構は、ネットワーク内において「中継ポス
ト」を形成するルータ(ルーティング・ステーション)
内に実現することができ、あるいはネットワークに送信
するパケットのソース(即ち、送出ステーション)の一
部とすることも可能である。
いて重複TCPパケットを検出しそれらを破棄する機構
を提供する。新たなパケットを整列する毎に、発送機構
は、既に整列されているパケットをチェックし、新たな
パケットと同じものがキュー内に収容されているか否か
検出する。収容されている場合、所定のパラメータにし
たがって、整列しようとしているパケットまたは既に整
列されているパケットのいずれかを欠落させる判断を下
す。この基本的な概念を更に発展させることにより、受
信した承認を監視し、それ以上の重複データを排除す
る。 図10は、キュー116内のパケットを管理する
キュー・コントローラ112によって管理される、キュ
ー制御レコード114の構造の一例の概略図である。こ
のデータ構造は、例えば、発送機構が実現されるコンピ
ュータ・ハードウエアのランダム・アクセス・メモリ内
に保持することができる。データ構造は、パケット・エ
ントリ122のリンク・リスト(linked list)の先頭お
よび末尾に対するそれぞれ先頭ポインタHおよび末尾ポ
インタTからなるベース・レジスタ対120を備えてい
る。領域内のデータは、TCPパケットのヘッダおよび
/またはメッセージの転送に用いられる、関連するIP
データグラムから抽出される。例えば、ポート情報はT
CPヘッダから抽出され、アドレス情報はIPヘッダか
ら抽出される(図5Bおよび図5Aをそれぞれ比較され
たい)。パケット・エントリ122の各々は、以下の領
域を含む。
ット・エントリへのポインタ。 PREVIOUS: リンク・リスト内の直前のパケッ
ト・エントリへのポインタ。
26.1へのポインタ。 図10に示すように、2つのエントリ122.1および
122.2を備えたリンク・リストが示されている。パ
ケット・エントリ122.1は、リストの先頭を形成
し、リストの末尾を形成するパケット・エントリ12
2.2へのポインタNを含む。同様に、パケット・エン
トリ122.2は、パケット・エントリ122.1への
前ポインタPを含む。パケット・エントリ122.1お
よび122.2の各々は、それぞれのTCPパケット1
26.1および126.2への各ポインタを含む。
112の動作を示すフロー図である。
ローラは、新たなパケットが送信のために得られるのを
待つ。新たなパケットは、最初に送られるパケットであ
る可能性があり、あるいは、ルータまたは送出側のRT
Tアルゴリズムの規則にしたがって再送信されるパケッ
トである可能性もある。130においてキュー・コント
ローラ122が、新たなパケットが送信のために得られ
たことを検出したなら、TCPフローに関係する情報の
全てが抽出される。これらのデータは、図10において
124で識別されるものであり、ソースIPアドレス、
宛先IPアドレス、ソースTCPポートおよび宛先TC
Pポートを含む。パケット・エントリ122.1〜12
2.2のリンク・リスト内の各エントリの124におい
て、この情報を対応する情報と比較する。新たなパケッ
トのフロー情報パラメータが、パケット・エントリ12
2.1〜122.2によって識別されるパケットの内の
1つのフロー情報パラメータに対応する場合、ステップ
134において、これらのパケットは同じTCPフロー
に関係すると判定する。この場合、ステップ136にお
いて、新たなTCPパケットは、関連するTCPエント
リ122によって表される、整列されているTCPパケ
ットの再送信であるか否かについてチェックされる。
プ136において、キュー・コントローラは、整列TC
Pシーケンス番号が、新しいTCPシーケンス番号と同
じであるか否か、および整列TCP承認番号が新たなT
CP承認番号以下であるか否かについてチェックを行
う。これらの検査双方が肯定である場合、ステップ13
6において、新たなパケットは実際に、以前のパケット
の再送信に関係すると判定する。この場合、これらのパ
ケットの1つを欠落させる。言い換えると、キュー・コ
ントローラは、以下の場合、新たなパケットが以前のパ
ケットの再送信であると判定する。 i)新たなパケットのシーケンス番号が、整列されてい
るパケット・シーケンス番号に等しい場合、かつ ii)新たなパケットの承認番号が、整列されているパ
ケット承認番号よりも小さい場合。 これらのパケット
のどちらを欠落させるかについての判定を、パケット長
の比較によって行う。ステップ138において、キュー
・コントローラは、整列されているパケットの長さが、
新たなパケット以上であるか否かについてチェックを行
う。整列されているパケットの長さが新たなパケット以
上である場合、新たなパケットを欠落させる。新たなパ
ケットの方が整列されているパケットよりも長い場合、
整列されているパケットをキューから除去し、新たなパ
ケットで置換する。キューにおけるパケットの置換は、
関連するパケット・エントリ122を新たなパケットに
関係するパケット・エントリと置換することによって行
う。この置換処理は、パケット・エントリ122内に適
切な次ポインタNおよび前ポインタPをセットするこ
と、およびパケット・エントリ122のその他の領域に
適切な情報を格納すること、特に、新たなパケット12
6へのデータ・ポインタを格納することを含む。
切なパケット・エントリ122をリンク・リスト構造に
追加しなければよい。
プ136における検査において否定であった場合、即
ち、整列されているパケットが同じフローに関係せず、
同じフローの中のパケットの再送信を形成しない場合、
ステップ140において、適切なパケット・ヘッダ12
2をキューの末尾に追加することにより、新たなパケッ
トを整列させる。新たなパケット122の追加は、関連
する新たなTCPパケットに対応する新たなパケット・
ヘッダ122の種々の領域に適切なデータを含ませるこ
と、および当該TCPパケットへのポインタを含ませる
ことから成る。データは、パケット・ヘッダからのソー
スおよび宛先ポート情報を含むフロー・データ、および
IPデータグラム・ヘッダからのソースおよび宛先アド
レス情報を含む。キュー122.2の以前の末尾への前
ポインタを、新たなパケット・ヘッダ122の前P領域
に配置し、以前の末尾領域122は、新たなパケット・
ヘッダ・エントリ122への次ポインタNを受け取る。
末尾ポインタTも、以前の末尾パケット・エントリ12
2.2ではなく、新たなパケット122を指し示すよう
に補正する。
き、対応するパケット・エントリ122を、リンク・リ
スト構造から除去する。したがって、例えば、パケット
126.1を送るとき、先頭ポインタHを変更し、リス
ト内の次のエントリ(例えば、122.2)を指し示す
ようにすることによって、対応するパケット・エントリ
122.1をリストから削除し、当該次のパケット・エ
ントリ122.2の前ポインタをヌルにセットし、それ
がリストの先頭であることを示す。
から送信可能とする際の遅延の結果、承認の受信の遅延
が発生する場合に、重複したパケットの不要な再送信を
回避する機構について説明した。キュー・コントローラ
が、発送のための新たなパケットのフローおよびパケッ
ト・シーケンス・パラメータを、整列されているパケッ
トのフローおよびパケット・シーケンス・パラメータと
比較するように構成され、更に、同じフロー・パスに関
係する、整列されているパケットの再送信である前記新
たなパケットの検出に応答し、前記新たなパケットまた
は前記整列されているパケットのいずれかを破棄するよ
うに構成されている。これによって、ネットワーク上で
輻輳が増大することを回避し、輻輳崩壊の危険性を低下
させる。
ィング・ウインドウ手法を使用するか否かには無関係
に、更に、スライディング・ウインドウを使用する場
合、関連するスライディング・ウインドウのサイズには
無関係に、適用可能である。
ワーク上のTCPプロトコルによるデータ伝送という設
定に特定して本発明について説明してきたが、本発明は
それに限定されるものではないことは認められよう。し
たがって、インターネットにはなじみのある用語の使用
が、本発明をインターネットとの使用に限定することを
意味する訳ではない。したがって、技術毎に用語が異な
ることを念頭に入れ、本明細書において用いられている
用語は、いずれの特定環境において用いられ得る同等の
用語も包含することを意図するものである。
について説明してきたが、添付の特許請求の範囲に規定
される本発明の精神および範囲内で、多くの変更/追加
および/または置換も可能であることが認められよう。
これらの請求項を参照することにより、本発明の精神お
よび範囲内において、請求項に明示的に列挙されている
以外の従属項の特徴を、適宜他の従属項および/または
独立項の特徴と組み合わせることが可能であることを注
記しておく。
におけるソース位置および宛先位置を含む通信環境の概
略図である。
データの概略図である。図3Bは、送出側と受信側との
間で交換されるデータの概略図である。
データの概略図である。
グラム・フォーマットの概略図である。図5Bは、ネッ
トワーク上で使用可能なパケット・フォーマットの概略
図である。
構の概略図である。
の概略図である。
を示すフロー図である。
Claims (23)
- 【請求項1】 通信ネットワークを通じて一連のパケッ
トを発送する機構であって、 送信するパケットのためのキューと、 新たに送信するパケットの受信に応答し、前記新たなパ
ケットのパラメータを前記キュー内に既にあるパケット
のパラメータと比較するキュー・コントローラであっ
て、前記比較(複数の比較)の結果に応じて、前記新た
なパケットを整列させるか欠落させるかについて判定を
行う前記キュー・コントローラと、から成ることを特徴
とする発送機構。 - 【請求項2】 請求項1記載の発送機構において、前記
キューが、パケットのリンク・リストを備えることを特
徴とする発送機構。 - 【請求項3】 請求項1記載の発送機構において、前記
キューが、前記整列されているパケットへのポインタの
リンク・リストを備えることを特徴とする発送機構。 - 【請求項4】 請求項3記載の発送機構において、前記
ポインタのリンク・リストが、前記整列されているパケ
ットの前記パラメータも含むことを特徴とする発送機
構。 - 【請求項5】 請求項1記載の発送機構において、前記
キュー・コントローラが、ソース・パラメータおよび宛
先パラメータを含む、前記新たなパケットおよび前記整
列されているパケット(群)のフロー・パラメータを比
較するように構成されていることを特徴とする発送機
構。 - 【請求項6】 請求項5記載の発送機構において、前記
ソース・パラメータが、ソースIPアドレスおよびソー
スTCPポートを含み、前記宛先パラメータが宛先IP
アドレスおよび宛先TCPポートを含むことを特徴とす
る発送機構。 - 【請求項7】 請求項6記載の発送機構において、前記
キュー・コントローラが、更に、前記新たなパケットお
よび前記整列されているパケット(群)に対して、パケ
ット・シーケンス番号を比較するように構成されている
ことを特徴とする発送機構。 - 【請求項8】 請求項7記載の発送機構において、前記
キュー・コントローラが、下記の場合、新たなパケット
を、整列されているパケットの再送信と判定するように
構成されていることを特徴とする発送機構。 i)前記新たなパケットのシーケンス番号が、前記整列
されているパケットのシーケンス番号と等しい場合、か
つ ii)前記新たなパケットの承認番号が、前記整列され
ているパケットのパケット承認番号よりも小さい場合。 - 【請求項9】 請求項1記載の発送機構において、前記
新たなパケットが、整列されているパケットの再送信で
はない場合、前記キュー・コントローラが、前記新たな
パケットを前記キューに追加するように構成されている
ことを特徴とする発送機構。 - 【請求項10】 請求項1記載の発送機構において、前
記新たなパケットが、整列されているパケットの再送信
であり、前記整列されているパケットの長さが、前記新
たなパケットのそれ以上である場合、前記キュー・コン
トローラが、前記新たなパケットを欠落させるように構
成されていることを特徴とする発送機構。 - 【請求項11】 請求項1記載の発送機構において、前
記新たなパケットが、前記整列されているパケットの再
送信であり、前記新たなパケットの長さが前記整列され
ているパケットのそれよりも大きい場合、前記キュー・
コントローラが、前記キュー内に整列されているパケッ
トを前記新たなパケットと置換するように構成されてい
ることを特徴とする発送機構。 - 【請求項12】 請求項1記載の発送機構において、前
記機構がソフトウエア機構であることを特徴とする発送
機構。 - 【請求項13】 通信ネットワークを通じて一連のパケ
ットを送るステーションであって、該ステーションが、 パケットに対する発送キューと、 発送する新たなパケットのフローおよびパケット・シー
ケンス・パラメータを、整列されているパケットのフロ
ーおよびパケット・シーケンス・パラメータと比較する
ように構成され、更に、前記新たなパケットが、整列さ
れているパケットの内同じフロー経路に関係するものの
再送信であることの検出に応答して、前記新たなパケッ
トまたは前記整列されているパケットのいずれかを破棄
するように構成されているキュー・コントローラと、を
備える発送コントローラを含むことを特徴とするステー
ション。 - 【請求項14】 請求項13記載のステーションにおい
て、前記ステーションが、通信ネットワークを通じて一
連のパケットをルーティングするルータであることを特
徴とするステーション。 - 【請求項15】 通信ネットワークを通じる一連のパケ
ットの発送を管理する方法であって、 送信するパケットを整列させるステップと、 送信する新たなパケットのフローおよびパケット・シー
ケンス・パラメータを、整列されているパケットのフロ
ーおよびパケット・シーケンスと比較するステップと、 前記新たなパケットが、整列されているパケットの内同
じフロー経路に関係するものの再送信であることの検出
に応答して、前記新たなパケットまたは前記整列されて
いるパケットのいずれかを破棄するステップと、から成
ることを特徴とする方法。 - 【請求項16】 請求項15記載の方法において、前記
比較するステップが、前記新たなパケットおよび前記整
列されているパケット(群)のソースおよび宛先フロー
・パラメータを比較するステップを含むことを特徴とす
る方法。 - 【請求項17】 請求項16記載の方法において、前記
ソース・パラメータがソースIPアドレスおよびソース
TCPポートを含み、前記宛先パラメータが宛先IPア
ドレスおよび宛先TCPポートを含むことを特徴とする
方法。 - 【請求項18】 請求項17記載の方法において、前記
比較するステップが、更に、前記新たなパケットおよび
前記整列されているパケット(群)に対して、パケット
・シーケンス番号を比較するステップを含むことを特徴
とする方法。 - 【請求項19】 請求項15記載の方法において、 i)前記新たなパケットのシーケンス番号が、前記整列
されているパケットのシーケンス番号と等しい場合、か
つ ii)前記新たなパケットの承認番号が、前記整列され
ているパケットのパケット承認番号よりも小さい場合、
新たなパケットを、整列されているパケットの再送信と
判定することを特徴とする方法。 - 【請求項20】 請求項15記載の方法において、前記
新たなパケットが、整列されているパケットの再送でな
い場合、前記新たなパケットを前記キューに追加するこ
とを特徴とする方法。 - 【請求項21】 請求項15記載の方法において、前記
新たなパケットが、整列されているパケットの再送であ
り、かつ前記整列されているパケットの長さが前記新た
なパケットのそれ以上である場合、前記新たなパケット
を欠落させることを特徴とする方法。 - 【請求項22】 請求項15記載の方法において、前記
新たなパケットが、前記整列されているパケットの再送
信であり、かつ前記新たなパケットの長さが前記整列さ
れているパケットのそれよりも大きい場合、前記キュー
内に整列されているパケットを、前記新たなパケットと
置換することを特徴とする方法。 - 【請求項23】 通信ネットワークを通じて一連のパケ
ットの発送を制御するための、記憶媒体上のソフトウエ
ア発送機構であって、 送信するパケットのためのキューと、 新たに送信するパケットの受信に応答し、前記新たなパ
ケットのパラメータを前記キュー内に既にあるパケット
のパラメータと比較するキュー・コントローラであっ
て、前記比較(複数の比較)の結果に応じて、前記新た
なパケットを整列させるか欠落させるかについて判定を
行う前記キュー・コントローラと、を定義するように動
作可能となるよう構成されているソフトウエア発送機
構。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/942,809 US6473425B1 (en) | 1997-10-02 | 1997-10-02 | Mechanism for dispatching packets via a telecommunications network |
US942809 | 1997-10-02 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11234339A true JPH11234339A (ja) | 1999-08-27 |
Family
ID=25478631
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10280640A Pending JPH11234339A (ja) | 1997-10-02 | 1998-10-02 | 通信ネットワークを介するパケット配信装置及び方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US6473425B1 (ja) |
EP (1) | EP0912028B1 (ja) |
JP (1) | JPH11234339A (ja) |
CA (1) | CA2249169A1 (ja) |
DE (1) | DE69833631D1 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003514440A (ja) * | 1999-11-10 | 2003-04-15 | クゥアルコム・インコーポレイテッド | データ呼出しの設定時間を低減する無線通信回線プロトコルの改良 |
JP2008283421A (ja) * | 2007-05-10 | 2008-11-20 | Casio Hitachi Mobile Communications Co Ltd | 通信装置およびプログラム |
US7552167B2 (en) | 2001-12-19 | 2009-06-23 | Fujitsu Limited | Communications control method and system with automatic data congestion preventing function |
JP2009532954A (ja) * | 2006-03-31 | 2009-09-10 | クゥアルコム・インコーポレイテッド | 高速メディアアクセス制御に関するメモリ管理 |
Families Citing this family (129)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7168084B1 (en) | 1992-12-09 | 2007-01-23 | Sedna Patent Services, Llc | Method and apparatus for targeting virtual objects |
US9286294B2 (en) | 1992-12-09 | 2016-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content suggestion engine |
US6757746B2 (en) | 1997-10-14 | 2004-06-29 | Alacritech, Inc. | Obtaining a destination address so that a network interface device can write network data without headers directly into host memory |
US7167927B2 (en) | 1997-10-14 | 2007-01-23 | Alacritech, Inc. | TCP/IP offload device with fast-path TCP ACK generating and transmitting mechanism |
US8621101B1 (en) | 2000-09-29 | 2013-12-31 | Alacritech, Inc. | Intelligent network storage interface device |
US6226680B1 (en) | 1997-10-14 | 2001-05-01 | Alacritech, Inc. | Intelligent network interface system method for protocol processing |
US7174393B2 (en) | 2000-12-26 | 2007-02-06 | Alacritech, Inc. | TCP/IP offload network interface device |
US8782199B2 (en) | 1997-10-14 | 2014-07-15 | A-Tech Llc | Parsing a packet header |
US6697868B2 (en) | 2000-02-28 | 2004-02-24 | Alacritech, Inc. | Protocol processing stack for use with intelligent network interface device |
US8539112B2 (en) | 1997-10-14 | 2013-09-17 | Alacritech, Inc. | TCP/IP offload device |
US6434620B1 (en) | 1998-08-27 | 2002-08-13 | Alacritech, Inc. | TCP/IP offload network interface device |
US7237036B2 (en) | 1997-10-14 | 2007-06-26 | Alacritech, Inc. | Fast-path apparatus for receiving data corresponding a TCP connection |
DK1034262T3 (da) * | 1997-11-18 | 2005-11-28 | Pioneer Hi Bred Int | Sammensætninger og fremgangsmåder til genetisk modifikation af planter |
US7091968B1 (en) * | 1998-07-23 | 2006-08-15 | Sedna Patent Services, Llc | Method and apparatus for encoding a user interface |
US9924234B2 (en) | 1998-07-23 | 2018-03-20 | Comcast Ip Holdings I, Llc | Data structure and methods for providing an interactive program |
WO2000005891A1 (en) | 1998-07-23 | 2000-02-03 | Diva Systems Corporation | Interactive user interface |
US6754905B2 (en) | 1998-07-23 | 2004-06-22 | Diva Systems Corporation | Data structure and methods for providing an interactive program guide |
US7664883B2 (en) | 1998-08-28 | 2010-02-16 | Alacritech, Inc. | Network interface device that fast-path processes solicited session layer read commands |
JP3230671B2 (ja) * | 1999-01-14 | 2001-11-19 | 日本電気株式会社 | パケット課金装置 |
EP1179000A4 (en) | 1999-02-26 | 2005-10-12 | Millennium Pharm Inc | DECISION PROTEINS AND THEIR USE |
US6754271B1 (en) | 1999-04-15 | 2004-06-22 | Diva Systems Corporation | Temporal slice persistence method and apparatus for delivery of interactive program guide |
US6904610B1 (en) | 1999-04-15 | 2005-06-07 | Sedna Patent Services, Llc | Server-centric customized interactive program guide in an interactive television environment |
US7096487B1 (en) | 1999-10-27 | 2006-08-22 | Sedna Patent Services, Llc | Apparatus and method for combining realtime and non-realtime encoded content |
CA2299022A1 (en) * | 1999-04-30 | 2000-10-30 | Nortel Networks Corporation | Method and apparatus for bandwidth management of aggregate data flows |
US6700871B1 (en) * | 1999-05-04 | 2004-03-02 | 3Com Corporation | Increased throughput across data network interface by dropping redundant packets |
DE19921589C2 (de) * | 1999-05-05 | 2002-10-24 | Siemens Ag | Verfahren zum Betrieb eines Datenübertragungssystems |
US7404003B1 (en) | 1999-09-30 | 2008-07-22 | Data Expedition, Inc. | Method and apparatus for client side state management |
US7158479B1 (en) * | 1999-09-30 | 2007-01-02 | Data Expedition, Inc. | Method and apparatus for non contiguous sliding window |
US7313627B1 (en) | 1999-09-30 | 2007-12-25 | Data Expedition, Inc. | Flow control method and apparatus |
US7046665B1 (en) * | 1999-10-26 | 2006-05-16 | Extreme Networks, Inc. | Provisional IP-aware virtual paths over networks |
CA2388606C (en) | 1999-10-27 | 2009-12-29 | Diva Systems Corporation | Picture-in-picture and multiple video streams using slice-based encoding |
JP2001142845A (ja) * | 1999-11-17 | 2001-05-25 | Toshiba Corp | コンピュータシステムおよびデータ転送制御方法 |
US8199646B1 (en) * | 1999-12-07 | 2012-06-12 | Nortel Networks Limited | System, device, and method for distributing link state information in a communication network |
US6779038B1 (en) * | 1999-12-31 | 2004-08-17 | Nortel Networks Limited | System and method for extending virtual synchrony to wide area networks |
EP1122959A1 (en) * | 2000-02-03 | 2001-08-08 | Telefonaktiebolaget Lm Ericsson | Handling of circuit-switched data services in IP-based GSM networks |
US7324442B1 (en) * | 2000-02-28 | 2008-01-29 | The Board Of Trustees Of The Leland Stanford Junior University | Active queue management toward fair bandwidth allocation |
US6744765B1 (en) * | 2000-08-24 | 2004-06-01 | Sun Microsystems, Inc. | Mechanism for completing messages in memory |
US6381242B1 (en) * | 2000-08-29 | 2002-04-30 | Netrake Corporation | Content processor |
US6816458B1 (en) * | 2000-09-13 | 2004-11-09 | Harris Corporation | System and method prioritizing message packets for transmission |
US6856599B1 (en) * | 2000-09-13 | 2005-02-15 | Harris Corporation | System and method of reducing retransmission of messages in a TCP/IP environment |
US6826152B1 (en) | 2000-09-13 | 2004-11-30 | Harris Corporation | System and method of conserving bandwidth in the transmission of message packets |
US6826153B1 (en) | 2000-09-13 | 2004-11-30 | Jeffrey Kroon | System and method of increasing the message throughput in a radio network |
US8019901B2 (en) | 2000-09-29 | 2011-09-13 | Alacritech, Inc. | Intelligent network storage interface system |
US7013346B1 (en) * | 2000-10-06 | 2006-03-14 | Apple Computer, Inc. | Connectionless protocol |
US7760737B2 (en) * | 2000-11-30 | 2010-07-20 | Audiocodes, Inc. | Method for reordering and reassembling data packets in a network |
US7418522B2 (en) * | 2000-12-21 | 2008-08-26 | Noatak Software Llc | Method and system for communicating an information packet through multiple networks |
US7287090B1 (en) | 2000-12-21 | 2007-10-23 | Noatak Software, Llc | Method and system for identifying a computing device in response to a request packet |
US7421505B2 (en) * | 2000-12-21 | 2008-09-02 | Noatak Software Llc | Method and system for executing protocol stack instructions to form a packet for causing a computing device to perform an operation |
US7546369B2 (en) * | 2000-12-21 | 2009-06-09 | Berg Mitchell T | Method and system for communicating a request packet in response to a state |
US20020116532A1 (en) * | 2000-12-21 | 2002-08-22 | Berg Mitchell T. | Method and system for communicating an information packet and identifying a data structure |
US20020116605A1 (en) * | 2000-12-21 | 2002-08-22 | Berg Mitchell T. | Method and system for initiating execution of software in response to a state |
US7512686B2 (en) * | 2000-12-21 | 2009-03-31 | Berg Mitchell T | Method and system for establishing a data structure of a connection with a client |
US20020116397A1 (en) * | 2000-12-21 | 2002-08-22 | Berg Mitchell T. | Method and system for communicating an information packet through multiple router devices |
US6772375B1 (en) * | 2000-12-22 | 2004-08-03 | Network Appliance, Inc. | Auto-detection of limiting factors in a TCP connection |
US8051212B2 (en) * | 2001-04-11 | 2011-11-01 | Mellanox Technologies Ltd. | Network interface adapter with shared data send resources |
US7068595B2 (en) | 2001-04-13 | 2006-06-27 | Sun Microsystems, Inc. | Method and apparatus for facilitating instant failover during packet routing |
US7149892B2 (en) | 2001-07-06 | 2006-12-12 | Juniper Networks, Inc. | Secure sockets layer proxy architecture |
US7228412B2 (en) * | 2001-07-06 | 2007-06-05 | Juniper Networks, Inc. | Bufferless secure sockets layer architecture |
US7853781B2 (en) * | 2001-07-06 | 2010-12-14 | Juniper Networks, Inc. | Load balancing secure sockets layer accelerator |
US7908472B2 (en) * | 2001-07-06 | 2011-03-15 | Juniper Networks, Inc. | Secure sockets layer cut through architecture |
US7793326B2 (en) | 2001-08-03 | 2010-09-07 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator |
US7908628B2 (en) | 2001-08-03 | 2011-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content coding and formatting |
US7249193B1 (en) * | 2001-08-28 | 2007-07-24 | Emc Corporation | SRDF assist |
WO2003028289A2 (de) * | 2001-09-26 | 2003-04-03 | Siemens Aktiengesellschaft | Verfahren zur übertragung von echtzeit-datentelegrammen in einem zyklischen kommunikationssystem |
US7543087B2 (en) | 2002-04-22 | 2009-06-02 | Alacritech, Inc. | Freeing transmit memory on a network interface device prior to receiving an acknowledgement that transmit data has been received by a remote device |
US7181544B2 (en) * | 2002-09-03 | 2007-02-20 | Intel Corporation | Network protocol engine |
US20040044796A1 (en) * | 2002-09-03 | 2004-03-04 | Vangal Sriram R. | Tracking out-of-order packets |
US20040143592A1 (en) * | 2002-09-30 | 2004-07-22 | Philippe Jung | Method for processing redundant packets in computer network equipment |
US7324540B2 (en) | 2002-12-31 | 2008-01-29 | Intel Corporation | Network protocol off-load engines |
ATE387051T1 (de) * | 2003-02-27 | 2008-03-15 | Koninkl Philips Electronics Nv | Verfahren und drahtloser komponent zur vermeidung von tcp paketwiederübertragung während des weiterreichens eines mobilgeräts |
US20040213278A1 (en) * | 2003-04-24 | 2004-10-28 | Broadcom Corporation | System, method, and computer program product for in-place, lightweight Ack promotion in a cable modem environment |
JP2005039726A (ja) * | 2003-07-18 | 2005-02-10 | Matsushita Electric Ind Co Ltd | 基地局装置及び送信方法 |
US20050122977A1 (en) * | 2003-12-05 | 2005-06-09 | Microsoft Corporation | Efficient download mechanism for devices with limited local storage |
US7917649B2 (en) * | 2003-12-19 | 2011-03-29 | Nortel Networks Limited | Technique for monitoring source addresses through statistical clustering of packets |
US7394813B2 (en) * | 2004-05-05 | 2008-07-01 | Sharp Laboratories Of America, Inc. | Systems and methods for implementing an acknowledgement mechanism for transmission of a real-time data stream |
US7656870B2 (en) | 2004-06-29 | 2010-02-02 | Damaka, Inc. | System and method for peer-to-peer hybrid communications |
US20070078720A1 (en) * | 2004-06-29 | 2007-04-05 | Damaka, Inc. | System and method for advertising in a peer-to-peer hybrid communications network |
US7933260B2 (en) * | 2004-06-29 | 2011-04-26 | Damaka, Inc. | System and method for routing and communicating in a heterogeneous network environment |
US7623476B2 (en) * | 2004-06-29 | 2009-11-24 | Damaka, Inc. | System and method for conferencing in a peer-to-peer hybrid communications network |
US7623516B2 (en) * | 2004-06-29 | 2009-11-24 | Damaka, Inc. | System and method for deterministic routing in a peer-to-peer hybrid communications network |
US8050272B2 (en) | 2004-06-29 | 2011-11-01 | Damaka, Inc. | System and method for concurrent sessions in a peer-to-peer hybrid communications network |
US7570636B2 (en) | 2004-06-29 | 2009-08-04 | Damaka, Inc. | System and method for traversing a NAT device for peer-to-peer hybrid communications |
US8009586B2 (en) | 2004-06-29 | 2011-08-30 | Damaka, Inc. | System and method for data transfer in a peer-to peer hybrid communication network |
US7778187B2 (en) * | 2004-06-29 | 2010-08-17 | Damaka, Inc. | System and method for dynamic stability in a peer-to-peer hybrid communications network |
US8248939B1 (en) | 2004-10-08 | 2012-08-21 | Alacritech, Inc. | Transferring control of TCP connections between hierarchy of processing mechanisms |
US7673060B2 (en) * | 2005-02-01 | 2010-03-02 | Hewlett-Packard Development Company, L.P. | Systems and methods for providing reliable multicast messaging in a multi-node graphics system |
US7738500B1 (en) | 2005-12-14 | 2010-06-15 | Alacritech, Inc. | TCP timestamp synchronization for network connections that are offloaded to network interface devices |
JP2008306551A (ja) * | 2007-06-08 | 2008-12-18 | Sanden Corp | 通信機器用の接続装置 |
CA2701894C (en) | 2007-09-03 | 2015-11-17 | Damaka, Inc. | Device and method for maintaining a communication session during a network transition |
WO2009043016A2 (en) | 2007-09-28 | 2009-04-02 | Damaka, Inc. | System and method for transitioning a communication session between networks that are not commonly controlled |
US8380859B2 (en) | 2007-11-28 | 2013-02-19 | Damaka, Inc. | System and method for endpoint handoff in a hybrid peer-to-peer networking environment |
US8369348B2 (en) * | 2008-01-28 | 2013-02-05 | Broadcom Corporation | Method, and system, and computer program product for dynamically adjusting acknowledgement filtering for high-latency environments |
US8015313B2 (en) * | 2008-03-04 | 2011-09-06 | Sony Corporation | Method and apparatus for managing transmission of TCP data segments |
US8539513B1 (en) | 2008-04-01 | 2013-09-17 | Alacritech, Inc. | Accelerating data transfer in a virtual computer system with tightly coupled TCP connections |
US7551621B1 (en) * | 2008-07-21 | 2009-06-23 | International Business Machines Corporation | Method for detecting and reducing packet drops |
US8341286B1 (en) | 2008-07-31 | 2012-12-25 | Alacritech, Inc. | TCP offload send optimization |
US9306793B1 (en) | 2008-10-22 | 2016-04-05 | Alacritech, Inc. | TCP offload device that batches session layer headers to reduce interrupts as well as CPU copies |
US8874785B2 (en) * | 2010-02-15 | 2014-10-28 | Damaka, Inc. | System and method for signaling and data tunneling in a peer-to-peer environment |
US8892646B2 (en) | 2010-08-25 | 2014-11-18 | Damaka, Inc. | System and method for shared session appearance in a hybrid peer-to-peer environment |
US8725895B2 (en) | 2010-02-15 | 2014-05-13 | Damaka, Inc. | NAT traversal by concurrently probing multiple candidates |
US8325623B1 (en) | 2010-02-16 | 2012-12-04 | Google Inc. | System and method for reducing latency during data transmissions over a network |
US8689307B2 (en) * | 2010-03-19 | 2014-04-01 | Damaka, Inc. | System and method for providing a virtual peer-to-peer environment |
US9043488B2 (en) * | 2010-03-29 | 2015-05-26 | Damaka, Inc. | System and method for session sweeping between devices |
US9191416B2 (en) | 2010-04-16 | 2015-11-17 | Damaka, Inc. | System and method for providing enterprise voice call continuity |
US8352563B2 (en) | 2010-04-29 | 2013-01-08 | Damaka, Inc. | System and method for peer-to-peer media routing using a third party instant messaging system for signaling |
US8446900B2 (en) | 2010-06-18 | 2013-05-21 | Damaka, Inc. | System and method for transferring a call between endpoints in a hybrid peer-to-peer network |
US8611540B2 (en) | 2010-06-23 | 2013-12-17 | Damaka, Inc. | System and method for secure messaging in a hybrid peer-to-peer network |
US8468010B2 (en) | 2010-09-24 | 2013-06-18 | Damaka, Inc. | System and method for language translation in a hybrid peer-to-peer environment |
US8743781B2 (en) | 2010-10-11 | 2014-06-03 | Damaka, Inc. | System and method for a reverse invitation in a hybrid peer-to-peer environment |
US8407314B2 (en) | 2011-04-04 | 2013-03-26 | Damaka, Inc. | System and method for sharing unsupported document types between communication devices |
US8694587B2 (en) | 2011-05-17 | 2014-04-08 | Damaka, Inc. | System and method for transferring a call bridge between communication devices |
US9154813B2 (en) | 2011-06-09 | 2015-10-06 | Comcast Cable Communications, Llc | Multiple video content in a composite video stream |
US8478890B2 (en) * | 2011-07-15 | 2013-07-02 | Damaka, Inc. | System and method for reliable virtual bi-directional data stream communications with single socket point-to-multipoint capability |
US9027032B2 (en) | 2013-07-16 | 2015-05-05 | Damaka, Inc. | System and method for providing additional functionality to existing software in an integrated manner |
US9357016B2 (en) | 2013-10-18 | 2016-05-31 | Damaka, Inc. | System and method for virtual parallel resource management |
US9240939B2 (en) * | 2013-10-22 | 2016-01-19 | Cisco Technology, Inc. | Detecting packet loss and retransmission in a network environment |
WO2016022574A1 (en) | 2014-08-05 | 2016-02-11 | Damaka, Inc. | System and method for providing unified communications and collaboration (ucc) connectivity between incompatible systems |
US10298494B2 (en) * | 2014-11-19 | 2019-05-21 | Strato Scale Ltd. | Reducing short-packet overhead in computer clusters |
WO2016079626A1 (en) * | 2014-11-19 | 2016-05-26 | Strato Scale Ltd. | Reducing short-packet overhead in computer clusters |
US9843530B2 (en) * | 2015-12-15 | 2017-12-12 | International Business Machines Corporation | System, method, and recording medium for queue management in a forwarder |
US10091025B2 (en) | 2016-03-31 | 2018-10-02 | Damaka, Inc. | System and method for enabling use of a single user identifier across incompatible networks for UCC functionality |
US10089339B2 (en) * | 2016-07-18 | 2018-10-02 | Arm Limited | Datagram reassembly |
US10805434B2 (en) | 2017-06-08 | 2020-10-13 | Hyannis Port Research, Inc. | Dynamic TCP stream processing with modification notification |
CN109274530B (zh) * | 2018-09-05 | 2022-03-22 | 杭州安恒信息技术股份有限公司 | 基于tcp协议的网络数据包零误差场景再现方法和装置 |
CN114125940A (zh) * | 2020-08-31 | 2022-03-01 | Oppo广东移动通信有限公司 | 数据报文发送方法、处理方法、装置、设备及数据报文 |
CN112583936B (zh) * | 2020-12-29 | 2022-09-09 | 上海阅维科技股份有限公司 | 重组传输会话流的方法 |
US11902343B1 (en) | 2021-04-19 | 2024-02-13 | Damaka, Inc. | System and method for highly scalable browser-based audio/video conferencing |
US11770584B1 (en) | 2021-05-23 | 2023-09-26 | Damaka, Inc. | System and method for optimizing video communications based on device capabilities |
CN113992363B (zh) * | 2021-10-11 | 2024-02-27 | 杭州迪普科技股份有限公司 | 一种基于iec104规约通信的方法、装置 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5175765A (en) * | 1989-05-09 | 1992-12-29 | Digital Equipment Corporation | Robust data broadcast over a distributed network with malicious failures |
US5309437A (en) | 1990-06-29 | 1994-05-03 | Digital Equipment Corporation | Bridge-like internet protocol router |
US5231633A (en) * | 1990-07-11 | 1993-07-27 | Codex Corporation | Method for prioritizing, selectively discarding, and multiplexing differing traffic type fast packets |
CA2065578C (en) | 1991-04-22 | 1999-02-23 | David W. Carr | Packet-based data compression method |
US5307413A (en) | 1991-07-19 | 1994-04-26 | Process Software Corporation | Method and apparatus for adding data compression and other services in a computer network |
US5379297A (en) * | 1992-04-09 | 1995-01-03 | Network Equipment Technologies, Inc. | Concurrent multi-channel segmentation and reassembly processors for asynchronous transfer mode |
US5307347A (en) | 1992-04-10 | 1994-04-26 | International Business Machines Corporation | Method and apparatus for sharing a telecommunications channel among multiple users |
JP2826416B2 (ja) | 1992-06-05 | 1998-11-18 | 日本電気株式会社 | ローカルエリアネットワーク間の接続ルータ |
GB9326276D0 (en) * | 1993-12-23 | 1994-02-23 | Newbridge Network Corp | Frame relay interface |
US5535199A (en) | 1994-09-06 | 1996-07-09 | Sun Microsystems, Inc. | TCP/IP header compression X.25 networks |
US5650993A (en) * | 1995-03-20 | 1997-07-22 | Bell Communications Research, Inc. | Drop from front of buffer policy in feedback networks |
US5621798A (en) * | 1995-04-18 | 1997-04-15 | Intel Corporation | Method and apparatus for cooperative messaging |
US5586121A (en) * | 1995-04-21 | 1996-12-17 | Hybrid Networks, Inc. | Asymmetric hybrid access system and method |
US5734865A (en) * | 1995-06-07 | 1998-03-31 | Bull Hn Information Systems Inc. | Virtual local area network well-known port routing mechanism for mult--emulators in an open system environment |
US5754754A (en) * | 1995-07-26 | 1998-05-19 | International Business Machines Corporation | Transmission order based selective repeat data transmission error recovery system and method |
GB2304210B (en) * | 1995-08-11 | 2000-02-16 | Fujitsu Ltd | Data receiving devices |
US5664091A (en) * | 1995-08-31 | 1997-09-02 | Ncr Corporation | Method and system for a voiding unnecessary retransmissions using a selective rejection data link protocol |
US6006268A (en) * | 1997-07-31 | 1999-12-21 | Cisco Technology, Inc. | Method and apparatus for reducing overhead on a proxied connection |
US5960178A (en) * | 1997-08-08 | 1999-09-28 | Bell Communications Research, Inc. | Queue system and method for point-to-point message passing having a separate table for storing message state and identifier of processor assigned to process the message |
-
1997
- 1997-10-02 US US08/942,809 patent/US6473425B1/en not_active Expired - Lifetime
-
1998
- 1998-09-24 EP EP98402355A patent/EP0912028B1/en not_active Expired - Lifetime
- 1998-09-24 DE DE69833631T patent/DE69833631D1/de not_active Expired - Lifetime
- 1998-09-30 CA CA002249169A patent/CA2249169A1/en not_active Abandoned
- 1998-10-02 JP JP10280640A patent/JPH11234339A/ja active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003514440A (ja) * | 1999-11-10 | 2003-04-15 | クゥアルコム・インコーポレイテッド | データ呼出しの設定時間を低減する無線通信回線プロトコルの改良 |
JP4842480B2 (ja) * | 1999-11-10 | 2011-12-21 | クゥアルコム・インコーポレイテッド | データ呼出しの設定時間を低減する無線通信回線プロトコルの改良 |
US8295190B2 (en) | 1999-11-10 | 2012-10-23 | Qualcomm Incorporated | Radio link protocol enhancements to reduce setup time for data calls |
US7552167B2 (en) | 2001-12-19 | 2009-06-23 | Fujitsu Limited | Communications control method and system with automatic data congestion preventing function |
JP2009532954A (ja) * | 2006-03-31 | 2009-09-10 | クゥアルコム・インコーポレイテッド | 高速メディアアクセス制御に関するメモリ管理 |
US8139593B2 (en) | 2006-03-31 | 2012-03-20 | Qualcomm Incorporated | Memory management for high speed media access control |
US8594112B2 (en) | 2006-03-31 | 2013-11-26 | Qualcomm Incorporated | Memory management for high speed media access control |
JP2008283421A (ja) * | 2007-05-10 | 2008-11-20 | Casio Hitachi Mobile Communications Co Ltd | 通信装置およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
US6473425B1 (en) | 2002-10-29 |
EP0912028A3 (en) | 2003-12-17 |
CA2249169A1 (en) | 1999-04-02 |
DE69833631D1 (de) | 2006-04-27 |
EP0912028B1 (en) | 2006-03-01 |
EP0912028A2 (en) | 1999-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6473425B1 (en) | Mechanism for dispatching packets via a telecommunications network | |
US6249530B1 (en) | Network bandwidth control | |
US7804780B2 (en) | Receiving and transmitting devices for providing fragmentation at a transport level along a transmission path | |
US7483376B2 (en) | Method and apparatus for discovering path maximum transmission unit (PMTU) | |
US8190960B1 (en) | Guaranteed inter-process communication | |
US7483433B2 (en) | System and method for router data distribution | |
US6934257B2 (en) | Transferring transmission control protocol packets | |
US8259728B2 (en) | Method and system for a fast drop recovery for a TCP connection | |
US20030086415A1 (en) | Method for filtering redundant data packets | |
WO2003021447A1 (en) | Methods and apparatus for partially reordering data packets | |
EP2001152B1 (en) | Reliable message transport network | |
US20030187975A1 (en) | Apparatus and method of reducing dataflow disruption when detecting path maximum transmission unit (PMTU) | |
EP2001180A2 (en) | One-way message notification with out-of-order packet delivery | |
US7480301B2 (en) | Method, system and article for improved TCP performance during retransmission in response to selective acknowledgement | |
US7359326B1 (en) | Method for splitting data and acknowledgements in a TCP session | |
US20070291782A1 (en) | Acknowledgement filtering | |
JPH11177627A (ja) | 遠隔通信ネットワークを介してデータ・ユニットを発送するための機構 | |
US8578040B2 (en) | Method, system and article for client application control of network transmission loss tolerance | |
EP3319297B1 (en) | Network interface device and host processing device | |
US7860920B2 (en) | Multicast enabled web-based application data distribution | |
CA2246134C (en) | Enhanced network protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050621 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050621 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060912 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061212 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070326 |