JP4825794B2 - ユーザーレベルスタック - Google Patents
ユーザーレベルスタック Download PDFInfo
- Publication number
- JP4825794B2 JP4825794B2 JP2007508969A JP2007508969A JP4825794B2 JP 4825794 B2 JP4825794 B2 JP 4825794B2 JP 2007508969 A JP2007508969 A JP 2007508969A JP 2007508969 A JP2007508969 A JP 2007508969A JP 4825794 B2 JP4825794 B2 JP 4825794B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- network interface
- application
- interface device
- operating system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 claims abstract description 78
- 238000012546 transfer Methods 0.000 claims abstract description 59
- 239000000872 buffer Substances 0.000 claims abstract description 56
- 238000012545 processing Methods 0.000 claims abstract description 53
- 230000005540 biological transmission Effects 0.000 claims abstract description 35
- 238000004891 communication Methods 0.000 claims abstract description 23
- 230000006870 function Effects 0.000 claims description 32
- 230000004044 response Effects 0.000 claims description 8
- 230000000977 initiatory effect Effects 0.000 claims description 4
- 230000008569 process Effects 0.000 description 29
- 230000002093 peripheral effect Effects 0.000 description 14
- 230000008901 benefit Effects 0.000 description 5
- 230000011664 signaling Effects 0.000 description 5
- 230000004913 activation Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 101100206195 Arabidopsis thaliana TCP2 gene Proteins 0.000 description 2
- 101100536570 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) CCT2 gene Proteins 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 101000666730 Homo sapiens T-complex protein 1 subunit alpha Proteins 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 102100038410 T-complex protein 1 subunit alpha Human genes 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000001154 acute effect Effects 0.000 description 1
- 229910052785 arsenic Inorganic materials 0.000 description 1
- RQNWIZPPADIBDY-UHFFFAOYSA-N arsenic atom Chemical compound [As] RQNWIZPPADIBDY-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 210000002784 stomach Anatomy 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
- Lock And Its Accessories (AREA)
- Control Of Eletrric Generators (AREA)
- Eyeglasses (AREA)
- Communication Control (AREA)
Description
本発明は、ネットワークインターフェース、例えばコンピューターをネットワークにリンクするためのインターフェースデバイスに関するものである。
サービスでのカーネルスタックインプリメンテーションと非常に似ている。しかしTCPインプリメンテーションにより要求される非同期処理のモデルを供給するために、転送ライブラリ内での実行アクティブスレッドが多く存在しなければならない:
(i)アプリケーションにより供給されるシステムAPIコール
(ii)プロトコルコードへのタイマー発生コール
(iii)仮想ネットワークインターフェースおよび結果として生ずるプロトコルコードへのアップコールの管理。(iiおよびiiiは、いくつかのアーキテクチャのために組み合わせてもよい)
(a)共有データ構造を保護するためのこれらスレッドおよびインプリメントロッキング間のコンテキストスイッチングのオーバーヘッドは重大であり得、かなりの量の処理時間を費やす。
(b)ユーザーレベルタイマーコードは、一般に、オペレーティングシステムにより供給されるタイマー/時間サポートを使用することにより作動する。タイマーモジュールからのシステムコールにより引き起こされる大きなオーバーヘッドの結果、システムが、オペレーティングシステムおよびデータバス間の相互作用を防ぐという目的に応じられなくなる。
(c)多くの独立アプリケーションが存在することがあり、それらは、それぞれネットワーク接続のサブセットを、いくつかはそれら自身の転送ライブラリを介して、およびいくつかは既存のカーネルスタック転送ライブラリにより管理する。NICは、効率よくパケットを解析し、それらを、IPポートおよびホストアドレスビットのようなプロトコル情報に基づく適切な仮想インターフェース(またはOS)に送信できなければならない。
(d)アプリケーションが、例えば、ユニックスオペレーティングシステム上でのフォーク()システムコール中に、特定のネットワーク接続制御を別のアプリケーションに受け渡すことは可能である。これは、接続状態にアクセスするために、完全に異なる転送ライブラリインスタンスが要求されることを必要とする。より悪いことに、多くのアプリケーションは、ネットワーク接続を共有することがあり、これは、転送ライブラリが、(プロセス間通信)技術を介して所有権を共有することを意味する。ユーザーレベルでの既存の転送は、これをサポートしようと試みていない。
(e)転送プロトコルが、ネットワークコネクションに、それがつながれているアプリケーションよりも長生きするよう指令することは一般的である。例えばTCPプロトコルを使用して、転送は、送られるが無応答のデータを送信するよう努めなければならず、送信アプリケーションが存在するか、または破損しているときには正常に接続を閉じるよう努めなければならない。これは、アプリケーションの状態(または存在)を問わずに、「タイマー」入力をプロトコルスタックに供給できるカーネルスタックインプリメンテーションでの問題ではなく、アプリケーションが存在する、破損する、またはデバッガー内で停止される場合に、(場合により非正常に)消失することがある転送ライブラリの課題である。
本発明の一側面によれば、概略的に記載されるように、データ処理システムによるデータ送信方法が提供され、該システムは、オペレーティングシステムおよび少なくとも1つのアプリケーションをサポートでき、メモリに、およびネットワーク上で別のネットワークインターフェースデバイスとの通信リンクをサポートできるネットワークインターフェースデバイスにアクセスでき、該方法は:送信されるデータをアプリケーションにより形成するステップ;アプリケーションにより、データ処理システムの非オペレーティングシステム機能に、送信されるデータを送ることを要求するステップ;その要求に応答する:送信されるデータをメモリ領域に書き込むステップ;および非オペレーティングシステム機能およびネットワークインターフェースデバイス間の直接通信により、ネットワーク上に、データの少なくともいくつかの送信操作を開始するステップ;および続いて、オペレーティングシステムによりメモリにアクセスするステップ、およびネットワークインターフェースデバイスによりネットワーク上にデータの少なくともいくつかの送信操作の少なくとも一部を行うステップを含む。
本発明を、これから添付図面を参照しながら、例として説明していく:
図1は、使用時のネットワークインターフェースデバイスの概略図である;
図2は、転送ライブラリアーキテクチャのインプリメンテーションを示す;
図3は、ユーザーレベルTCP転送と共に標準的なカーネルTCP転送を用いるアーキテクチャを示す;
図4は、標準的なカーネルスタックがユーザーレベルでインプリメントされているアーキテクチャを示す;
図5は、TCP転送アーキテクチャの例を示す;
図6は、着信TCP/パケットをフィルターに掛けるために、ネットワークインターフェースデバイスにより行うことができるステップを示す;
図7は、コンテンツアドレス可能メモリによりサーバー(受動)接続の操作を示す。
以下の記載は、あらゆる当業者が本発明を作り、使用できるようにするために示され、特定の適用およびその要件との関連で提供される。開示された実施態様の様々な修正は、当業者にとって容易に理解できるであろう、そしてこの中で明確にされた一般原理は、本発明の意図および範囲から外れることなく、他の実施態様および適用に応用することができる。従って本発明は、示した実施態様に限定されることは意図されておらず、この中で開示された原理および機能と矛盾しない最も広い範囲と一致させられることが意図されている。
(ii)接続状態およびデータバッファは、カーネルメモリおよび転送ライブラリのアドレススペースにマップされたメモリに保持される。オペレーティングシステムは、それらバッファの所有者であり、そうしてそれらを完全に制御するが、それらは、その通信のためにそれらが使用されるアプリケーションにより直接アクセスすることができる。これは、アプリケーションが、それらバッファを通じてデータを直接送受信すること、および状態データを対応する状態バッファから読み取ることを可能にする。
(iii)カーネルおよび転送ライブラリコードの両方が、特定のネットワーク接続のために、およびこれに代わって、仮想ハードウェアインターフェースにアクセスできる。
(iv)タイマーは、仮想ハードウェアインターフェースを通じて管理することができ、(これらはネットワークインターフェースデバイス上の実タイマーに対応する)、システムコールにそれらを設定およびクリアすることを要求しなくてもよい。NICは、タイマーイベントを発生させ、それは、ネットワークインターフェースデバイスドライバにより受信され、デバイスのためにTCPサポートコードに受け渡される。
TCPコードは、転送ライブラリ中でシステムAPIコール(例えばrecv())(図5のステップi参照)の結果として、またはタイマーイベント(図5のステップii参照)の結果としてカーネルによるいずれかで実行することができるので、この要件は、図5のアーキテクチャのために存在しない。いずれかの場合、VI(仮想インターフェース)を管理でき、両方のコードパスは、接続状態またはデータバッファにアクセスでき、その保護および相互排他は、共有メモリロックにより管理できる。転送ライブラリレベルでスイッチするスレッドのオーバーヘッドが除去されるのと同様に、この機能は、アプリケーションがそれらスレッドおよび単一操作想定を変更する要件を妨げることができる:例えばいくつかの状態で、単一スレデッドアプリケーションに複数スレデッドライブラリとリンクするよう要求することは、非許容であり得る。
ネットワークインターフェースデバイスは多くのタイマーをインプリメントすることができ、これらを、特定の仮想インターフェースインスタンスに割り当てることができる:例えばアクティブTCP転送ライブラリごとに1つのタイマーが存在し得るので、この要件は、図5のアーキテクチャのために存在しない。これらタイマーは、メモリマップVIを通じてプログラム可能にすることができ(図5のステップiii参照)、その結果、イベント(図5のステップiv参照)を出すことができる。タイマーは、システムコール無しで、−オペレーティングシステムを直接含まずに−、設定およびクリアできるので、タイマー管理のためのオーバーヘッドは大幅に削減される。
ネットワークインターフェースデバイスは、コンテンツアドレス可能メモリを含有するか、またはそれにアクセスでき、これは、着信パケットのヘッダーから得られるビットを並列ハードウェア一致操作として一致させることができる。一致の結果を、配信のために使用されなければならない宛先仮想インターフェースを示すために得ることができ、ハードウェアは、VIに押し付けられたバッファに、パケットを配信し続けることができる。一致処理のために1つの可能な配列は、以下で記載される。下記配列は、IPv6と関連したより大きなホストアドレスを逆多重化するために拡張してもよいが、これは、記載されるような配列よりも広いCAMまたはパケットごとに複数のCAM検索を要求するであろう。
ネットワーク接続が引き渡されるとき、同じシステム共通リソースハンドルを、アプリケーション間で受け渡すことができる。これは、例えばファイル記述子であってもよい。ネットワークインターフェースデバイスのアーキテクチャは、ネットワーク接続と関連した全ての状態を、その(例えば)ファイル記述子で接続でき、この状態で転送ライブラリにメモリマップすることを要求できる。ネットワーク接続の引渡し後に、新しいアプリケーションは(アプリケーション、スレッドまたは処理のいずれかとして)、−それが異なるアドレススペース内で実行する場合でさえ−、メモリマップし、状態を使用し続けることができる。さらに、カーネルおよび転送ライブラリ間で使用されるのと同じバッキングプリミティブにより、あらゆる数のアプリケーションは、標準的なシステムAPIにより指定されるのと同じ意味で、ネットワーク接続の使用を共有できる。
接続状態およびプロトコルコードはカーネル常駐のままでいられるので、このステップを、ネットワークインターフェースデバイスのアーキテクチャにおいて達成できる。OSカーネルコードは、汎用TCP(TCPk)プロトコルスタックと同じように、アプリケーション状態の変化を通知され得る。停止されたアプリケーションは、次いで先行プロトコル実行にスレッドを提供しないが、プロトコルは、例えば先行技術のカーネルスタックプロトコルのために知られているように、タイマーイベントを介して続けられるであろう。
(ii)(例えば帯域幅×遅延の積がメッセージサイズよりも小さい場合)転送における全てのデータが送られる前に、そこでデータがほぼ完全に確認される。
ネットワークインターフェースデバイスは、(好ましくはハードウェア中で)、それが実質上ネットワークヘッダーを休止できるようにするため、着信パケットフローに割り込むか、またはそれをバッファに入れることができる。このことは、データフローに影響せずに、それが着信パケット中の関連ビットシーケンスを識別することを許す。TCPおよび/またはUDPパケットのために、ビットシーケンスの識別を、例えば前述のパケットの単純ヘッダーレイアウトのせいで単純デコードパイプラインを使用して、インプリメントしても良い。これは、レジスターに保持された多くのフィールドに帰着する。
(a)転送ライブラリは、ドライバを介してCAMエントリーを割り当てる。
(b)転送ライブラリの仮想インターフェースに割り振られるアドレススペースに、割り振られるCAMをマップするために、ドライバは、その保護制御インターフェースを通じてハードウェアをプログラムする。
(c)転送ライブラリは、仮想インターフェースを介してCAMエントリーをプログラムする。
{dest host, 0, dest port}
をビットからパケットヘッダー中に構成でき、それをCAMに与えることができる。これは、一致をCAMインデックスXで生じさせる。次いで仮想インターフェース:βの基底アドレスを検出するために、ネットワークインターフェースデバイスは、SRAM中を検索できる。次いでNICは、仮想インターフェースβにパケットを配信できる。
{dest host, port}
を
{source host, port}
に結合するネットワーク接続を作成することができ、サーバーは、
{source host, source port, dest port}
で新しいCAMエントリーをプログラムする。
{source, host source port, dest port}
を構成させ、これは、CAMに与えられるときに、SRAM中で仮想インターフェースσと一致する一致インデックスθを生じさせる。ネットワーク接続がサーバーエンドポイントと同じ転送ライブラリにより管理される場合、σはβと同じであり得ることは注意すべきである。
{dest host, dest port}
のフィルターだけをCAMに保管することである。別のオプションは、「ドント・ケア」ビットを使用してマスクできる3進法CAMを用いることである。両方の操作モードが同時に可能である場合、SYNビットが受信パケット中でゼロに設定されるときに、異なるフィルターを構成する必要があるために、2つのCAM検索が要求され得るので、効率が低下し得ることは注意すべきである。一度に1つだけのモードが可能であれば、この要件は回避し得る。
Claims (21)
- データ処理システムによるデータ送信方法であり、該システムは、オペレーティングシステムおよび少なくとも1つのアプリケーションをサポートでき、メモリに、およびネットワーク上で別のネットワークインターフェースデバイスとの通信リンクをサポートできるネットワークインターフェースデバイスにアクセスでき、該方法は:
送信されるデータをアプリケーションにより形成するステップ;
アプリケーションにより、データ処理システムの非オペレーティングシステム機能に、ネットワーク上に送信されるデータを送ることを要求するステップ;
その要求に応答する:
送信されるデータを、データバッファと対応する接続状態を含むメモリ領域に書き込むステップ;および
非オペレーティングシステム機能およびネットワークインターフェースデバイス間の直接通信により、ネットワーク上に、データの少なくともいくつかの送信操作を開始するステップ;
および続いて、アプリケーションが応答しないと決定された場合に、オペレーティングシステムが前記データバッファおよび接続状態にアクセスし、ネットワークインターフェースデバイスによりネットワーク上にデータの少なくともいくつかの送信操作の少なくとも一部を行うステップ、を含む方法。 - オペレーティングシステムがネットワークインターフェースデバイスと直接通信できる、請求項1に記載の方法。
- 非オペレーティングシステム機能間の前記直接通信がオペレーティングシステムを迂回する、請求項2に記載の方法。
- 非オペレーティングシステム機能が転送ライブラリである、請求項1〜3のいずれかに記載の方法。
- 前記メモリ領域が、メモリの第2領域にマップされ、メモリの第2領域は、オペレーティングシステムとアクセス可能であるが、非オペレーティングシステム機能とは直接アクセスできない、請求項1〜4のいずれかに記載の方法。
- ネットワーク上にデータの送信操作を開始するときに、タイマーをスタートすること;および肯定応答がそのデータに対して受信される前にタイマーが予定値に達した場合に、ネットワークインターフェースデバイスからデータ処理システムに失敗メッセージを送信することを含む、請求項1〜5のいずれかに記載の方法。
- ネットワーク上にデータの送信操作を開始するときに、その操作の記録およびデータソースであったアプリケーションの表示を保管すること;およびそのアプリケーションのためのデータを受信したときに、そのアプリケーションと関連する各記録に対してタイマーをスタートすること;および肯定応答がそのデータに対して受信される前に前述のタイマーが予定値に達した場合に、ネットワークインターフェースデバイスからデータ処理システムに失敗メッセージを送信することを含む、請求項1〜5のいずれかに記載の方法。
- タイマーまたは各タイマーが、ネットワークインターフェースデバイス上で実行される、請求項6または7に記載の方法。
- データに対して肯定応答を受信したときはタイマーが取り消され、また、失敗メッセージまたは各失敗メッセージはオペレーティングシステムに向けて発せられる、請求項6〜8のいずれかに記載の方法。
- タイマーを取り消すステップがエンティティをシグナル通知するアプリケーションを含み、そこでタイマーがオペレーティングシステムを迂回する方式で実行される、請求項9に記載の方法。
- 失敗メッセージまたは各失敗メッセージが、データソースであったアプリケーションに向けて発せられる、請求項6〜10のいずれかに記載の方法。
- 失敗メッセージに対応するデータに関して、前記送信操作の少なくとも一部を行うためのネットワークデバイスともはや通信していないアプリケーションに向けて発せられる失敗メッセージに、オペレーティングシステムが応答する、請求項11に記載の方法。
- データを送信するためのデータ処理システムであり、該システムは、メモリに、およびネットワーク上で別のネットワークインターフェースデバイスとの通信リンクをサポートできるネットワークインターフェースデバイスにアクセスでき、該システムは:
データをデータバッファと対応する接続状態を含むメモリ領域に書き込むため、送信可能な形態にデータを形成し、データ処理システムの非オペレーティングシステム機能に、ネットワーク上に送信されるべきデータを送ることを要求するように構成されているアプリケーション;
それ自身およびネットワークインターフェースデバイス間の直接通信により、ネットワーク上へのデータの少なくともいくつかの送信操作を開始するように構成されている非オペレーティングシステム機能;および
アプリケーションが応答しないと決定した場合、該データバッファおよび接続状態にアクセスするように、およびネットワークインターフェースデバイスによりネットワーク上へのデータの少なくともいくつかの送信操作の少なくとも一部を行うように構成されているオペレーティングシステム、
を有するシステム。 - データ処理システムによりデータを受信するための方法であり、該システムは、少なくとも1つのアプリケーションをサポートでき、メモリに、およびネットワーク上で別のネットワークインターフェースデバイスとの通信リンクをサポートできるネットワークインターフェースデバイスにアクセスでき、該方法は:
データ処理システムの非オペレーティングシステム機能により、アプリケーションでデータを受信するためのチャネルを確立するステップ、該チャネルはデータバッファと対応する接続状態を含むメモリ領域と関連する;
そのチャネルを通じて:
ネットワークインターフェースデバイスがデータバッファに受信データを書き込むこと;および
アプリケーションがデータバッファから受信データを読み取ること;および続いて
アプリケーションがネットワークデバイスと通信できない場合、オペレーティングシステムが接続状態にアクセスし、データバッファから受信データを読み取ること
によりデータを受信するステップ、を含む方法。 - アプリケーションがネットワークデバイスと通信できないという決定がなされたときに、オペレーティングシステムが、自動的にデータバッファから受信データを読み取るように構成されている、請求項14に記載の方法。
- データを受信するためのシステムであって、該システムは:
ネットワーク上で別のネットワークインターフェースデバイスとの通信リンクをサポートできるネットワークインターフェースデバイスと、
オペレーティングシステムおよび少なくとも1つのアプリケーションのサポートを有し、かつ、メモリおよびネットワークインターフェースデバイスにアクセスできるデータ処理システムと、を含むシステムであり、該データ処理システムは、アプリケーションによりデータ受信のためのチャネルを確立するように構成されている非オペレーティングシステム機能をさらに有し、該チャネルは、データバッファと対応する接続状態を含むメモリ領域と関連し;
該ネットワークインターフェースデバイスは、データバッファに受信データを書き込むように構成されており;
該アプリケーションは、データバッファから受信データを読み取るように構成されており;および
該オペレーティングシステムは、続いて、アプリケーションがネットワークデバイスと通信できない場合に、接続状態にアクセスし、データバッファから受信データを読み取るように構成されている
システム。 - データ処理システムによるデータ送信方法であり、該システムは、少なくとも1つのアプリケーションをサポートでき、メモリに、およびネットワーク上で別のネットワークインターフェースデバイスとの通信リンクをサポートできるネットワークインターフェースデバイスにアクセスでき、該方法は:
送信されるデータをアプリケーションにより形成するステップ;
非オペレーティングシステム機能が、そのデータを、送信のためにネットワークインターフェースデバイスに、オペレーティングシステムを迂回して、受け渡すステップ;
ネットワークインターフェースデバイスによりデータを送信するステップ;
データに対して肯定応答を受信したときに、ネットワークインターフェースデバイスが、アプリケーションにアクセスできるメモリ領域に肯定応答を書き込み、ネットワークインターフェースデバイスのタイマーをスタートするステップ;および
アプリケーションが肯定応答にアクセスする場合に、タイマーを取り消すステップ;または
タイマーが予定値に達した場合に、ネットワークインターフェースデバイスが、アプリケーションが応答できないことを示すために、オペレーティングシステムにシグナル通知するステップ、を含む方法。 - 非オペレーティングシステム機能が転送ライブラリである、請求項17に記載の方法。
- 前記シグナル通知が、失敗イベントをオペレーティングシステムのイベントキューに適用することを含む、請求項17または18に記載の方法。
- オペレーティングシステムがシグナル通知されることに応答して、該オペレーティングシステムが、ネットワークインターフェースデバイスと通信し、前記の別のネットワークデバイスとの通信を拡張することを含む、請求項17〜19のいずれかに記載の方法。
- データ処理システムと、ネットワーク上で別のネットワークインターフェースデバイスとの通信リンクをサポートできるネットワークインターフェースデバイスとを含むデータ送信システムであり、該データ処理システムは、メモリおよびネットワークインターフェースデバイスにアクセスでき、さらに:
送信可能な形態にデータを形成するように構成されているアプリケーション;
送信のために形成されたデータを通信のためのネットワークインターフェースデバイスに、オペレーティングシステムを迂回して、受け渡すように構成されている非オペレーティングシステム機能;および
ネットワークインターフェースデバイスにおけるタイマーを有し、
該ネットワークインターフェースデバイスは、データを送信するように構成されており、およびデータに対する肯定応答を受信したとき、アプリケーションにアクセスできるメモリ領域に肯定応答を書き込み、データに対応するタイマーをスタートさせ;
ネットワークインターフェースデバイスは、さらに、
アプリケーションが肯定応答にアクセスした場合、タイマーを取り消し;またはタイマーが予定値に達した場合、アプリケーションが応答できないことを示すためにオペレーティングシステムにシグナル通知する、システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB0408876.1A GB0408876D0 (en) | 2004-04-21 | 2004-04-21 | User-level stack |
GB0408876.1 | 2004-04-21 | ||
PCT/GB2005/001525 WO2005104475A2 (en) | 2004-04-21 | 2005-04-21 | User-level stack |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011081728A Division JP5282115B2 (ja) | 2004-04-21 | 2011-04-01 | ユーザーレベルスタック |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007534073A JP2007534073A (ja) | 2007-11-22 |
JP4825794B2 true JP4825794B2 (ja) | 2011-11-30 |
Family
ID=32344135
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007508969A Active JP4825794B2 (ja) | 2004-04-21 | 2005-04-21 | ユーザーレベルスタック |
JP2011081728A Active JP5282115B2 (ja) | 2004-04-21 | 2011-04-01 | ユーザーレベルスタック |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011081728A Active JP5282115B2 (ja) | 2004-04-21 | 2011-04-01 | ユーザーレベルスタック |
Country Status (7)
Country | Link |
---|---|
US (2) | US8005916B2 (ja) |
EP (2) | EP2273375B1 (ja) |
JP (2) | JP4825794B2 (ja) |
CN (1) | CN100478926C (ja) |
AT (2) | ATE533107T1 (ja) |
GB (1) | GB0408876D0 (ja) |
WO (1) | WO2005104475A2 (ja) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8185602B2 (en) * | 2002-11-05 | 2012-05-22 | Newisys, Inc. | Transaction processing using multiple protocol engines in systems having multiple multi-processor clusters |
EP1861778B1 (en) | 2005-03-10 | 2017-06-21 | Solarflare Communications Inc | Data processing system |
WO2006134373A2 (en) | 2005-06-15 | 2006-12-21 | Solarflare Communications Incorporated | Reception according to a data transfer protocol of data directed to any of a plurality of destination entities |
GB0600417D0 (en) | 2006-01-10 | 2006-02-15 | Level 5 Networks Inc | Virtualisation support |
EP2214378B1 (en) * | 2005-12-28 | 2015-10-07 | Solarflare Communications Inc | Processing received data |
US7921046B2 (en) * | 2006-06-19 | 2011-04-05 | Exegy Incorporated | High speed processing of financial information using FPGA devices |
US9948533B2 (en) | 2006-07-10 | 2018-04-17 | Solarflare Communitations, Inc. | Interrupt management |
EP2552081B1 (en) | 2006-07-10 | 2015-06-17 | Solarflare Communications Inc | Interrupt management |
US9686117B2 (en) | 2006-07-10 | 2017-06-20 | Solarflare Communications, Inc. | Chimney onload implementation of network protocol stack |
US8089180B2 (en) * | 2007-01-16 | 2012-01-03 | Panasonic Corporation | Integrated circuit device, method of controlling operation of integrated circuit device, and method of fabricating integrated circuit device |
FR2939994B1 (fr) * | 2008-12-12 | 2010-12-17 | Canon Kk | Procede de transmission d'un flux de donnees multi-canal sur un tunnel multi-transport, produit programme d'ordinateur, moyen de stockage et tetes de tunnel correspondantes |
CA3184014A1 (en) | 2008-12-15 | 2010-07-08 | Exegy Incorporated | Method and apparatus for high-speed processing of financial market depth data |
US8908542B2 (en) * | 2009-12-22 | 2014-12-09 | At&T Mobility Ii Llc | Voice quality analysis device and method thereof |
US9083772B2 (en) | 2010-04-30 | 2015-07-14 | Qualcomm Incorporated | Exchanging data associated with a communication session within a communications system |
US9203742B2 (en) | 2010-09-16 | 2015-12-01 | Nec Corporation | Network system and frame communication method |
JP5344382B2 (ja) * | 2010-11-02 | 2013-11-20 | 日本電気株式会社 | ネットワークシステム及びフレーム通信方法 |
CN104734993B (zh) * | 2013-12-24 | 2018-05-18 | 杭州华为数字技术有限公司 | 数据分流方法及分流器 |
US9563588B1 (en) | 2014-01-29 | 2017-02-07 | Google Inc. | OS bypass inter-processor interrupt delivery mechanism |
US9774706B2 (en) * | 2014-09-30 | 2017-09-26 | Level 3 Communications, Llc | Providing functional requirements for a network connection from a local library |
US10320918B1 (en) * | 2014-12-17 | 2019-06-11 | Xilinx, Inc. | Data-flow architecture for a TCP offload engine |
US10749734B2 (en) * | 2015-07-07 | 2020-08-18 | International Business Machines Corporation | Management of events and moving objects |
US11093284B2 (en) * | 2017-05-12 | 2021-08-17 | Xilinx, Inc. | Data processing system |
US11146508B2 (en) * | 2017-05-12 | 2021-10-12 | Xilinx, Inc. | Data processing system |
EP3402172B1 (en) * | 2017-05-12 | 2021-02-17 | Xilinx, Inc. | A data processing system |
US10504368B2 (en) | 2017-06-21 | 2019-12-10 | International Business Machines Corporation | Management of mobile objects |
US10600322B2 (en) | 2017-06-21 | 2020-03-24 | International Business Machines Corporation | Management of mobile objects |
JP7096094B2 (ja) | 2017-07-28 | 2022-07-05 | 積水化学工業株式会社 | 樹脂製透明継手 |
US10616339B2 (en) | 2017-11-28 | 2020-04-07 | Dell Products, L.P. | System and method to configure, manage, and monitor stacking of ethernet devices in a software defined network |
US11150817B2 (en) | 2019-02-08 | 2021-10-19 | International Business Machines Corporation | Integrating kernel-bypass user-level file systems into legacy applications |
US11734156B2 (en) * | 2021-09-23 | 2023-08-22 | Microsoft Technology Licensing, Llc | Crash localization using crash frame sequence labelling |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01149155A (ja) * | 1987-12-07 | 1989-06-12 | Yokogawa Electric Corp | I/oチャネル制御装置 |
JPH06301623A (ja) * | 1993-02-12 | 1994-10-28 | Internatl Business Mach Corp <Ibm> | デバイス操作方法 |
JPH0816493A (ja) * | 1994-06-30 | 1996-01-19 | Canon Inc | スキャナプリンタサーバーシステムのデータ通信制御方法 |
JPH11328134A (ja) * | 1998-05-14 | 1999-11-30 | Hitachi Ltd | 計算機間データ送受信方法 |
JP2002305535A (ja) * | 2001-01-11 | 2002-10-18 | Internatl Business Mach Corp <Ibm> | データを転送する信頼できるプロトコルを提供する方法および装置 |
JP2003526150A (ja) * | 2000-02-29 | 2003-09-02 | パルテク アクチェンゲゼルシャフト | コンピュータネットワーク内で単一コンピュータの通信を制御するための方法 |
JP2004054657A (ja) * | 2002-07-22 | 2004-02-19 | Canon Inc | ネットワークデバイス管理装置 |
Family Cites Families (177)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2002A (en) * | 1841-03-12 | Tor and planter for plowing | ||
US2545194A (en) * | 1945-11-14 | 1951-03-13 | Allan P Colburn | Adsorption process for removal of carbon dioxide from the atmosphere of a submarine |
US3491031A (en) * | 1966-11-18 | 1970-01-20 | Calgon C0Rp | Reactivation of monoethanolamine impregnated activated carbon |
US3594983A (en) * | 1969-06-17 | 1971-07-27 | Process Services Inc | Gas-treating process and system |
FR2127112A5 (ja) * | 1971-02-24 | 1972-10-13 | Air Liquide | |
US4005708A (en) * | 1974-04-29 | 1977-02-01 | A-T-O Inc. | Apparatus for endothermal absorption of carbon dioxide |
US4539189A (en) * | 1984-01-23 | 1985-09-03 | Chevron Research Company | Method for removing sulfides from industrial gas |
ATE45302T1 (de) * | 1985-02-01 | 1989-08-15 | Euratom | Verfahren zur selektiven adsorption von schwefelverbindungen aus gasfoermigen gemischen, welche merkaptane enthalten. |
US4675309A (en) * | 1985-04-22 | 1987-06-23 | Hidefumi Hirai | Adsorbent for use in selective gas adsorption-separation and a process for producing the same |
US4668255A (en) * | 1985-10-30 | 1987-05-26 | University Of Cincinnati | Adsorption of gases by amine complexed Mn (II) |
JPS6359322A (ja) | 1986-08-29 | 1988-03-15 | Arai Tekkosho:Kk | 多目的分離装置 |
US4822383A (en) * | 1987-04-30 | 1989-04-18 | United Technologies Corporation | Method and apparatus for removing carbon dioxide from air |
US4810266A (en) * | 1988-02-25 | 1989-03-07 | Allied-Signal Inc. | Carbon dioxide removal using aminated carbon molecular sieves |
JP2653370B2 (ja) | 1989-01-12 | 1997-09-17 | 住友重機械工業株式会社 | Co▲下2▼吸着用アミン系イオン交換樹脂の再生方法 |
EP0733395B1 (en) * | 1991-10-09 | 2004-01-21 | The Kansai Electric Power Co., Inc. | Recovery of carbon dioxide from combustion exhaust gas |
EP0551191B1 (en) * | 1992-01-09 | 2000-04-12 | Cabletron Systems, Inc. | Apparatus and method for transferring data to and from host system |
US5281254A (en) * | 1992-05-22 | 1994-01-25 | United Technologies Corporation | Continuous carbon dioxide and water removal system |
US5325532A (en) | 1992-09-25 | 1994-06-28 | Compaq Computer Corporation | Automatic development of operating system boot image |
US5376614A (en) * | 1992-12-11 | 1994-12-27 | United Technologies Corporation | Regenerable supported amine-polyol sorbent |
US5272599A (en) | 1993-03-19 | 1993-12-21 | Compaq Computer Corporation | Microprocessor heat dissipation apparatus for a printed circuit board |
US5462908A (en) * | 1993-06-16 | 1995-10-31 | Her Majesty The Queen In Right Of Canada, As Represented By The Minister Of National Defence | Organic amine impregnated activated carbon |
US5518626A (en) * | 1993-12-23 | 1996-05-21 | United Technologies Corporation | Process employing thermally sterilizable aqueous polishing agents |
US6098112A (en) | 1995-10-19 | 2000-08-01 | Hewlett-Packard Company | Streams function registering |
US5913024A (en) * | 1996-02-09 | 1999-06-15 | Secure Computing Corporation | Secure server utilizing separate protocol stacks |
US5876488A (en) * | 1996-10-22 | 1999-03-02 | United Technologies Corporation | Regenerable solid amine sorbent |
US5886872A (en) | 1997-04-23 | 1999-03-23 | Compaq Computer Corporation | Pivotable support and heat sink apparatus removably connectable without tools to a computer processor |
US6049842A (en) * | 1997-05-01 | 2000-04-11 | International Business Machines Corporation | Efficient data transfer mechanism for input/output devices |
US6397316B2 (en) * | 1997-07-24 | 2002-05-28 | Intel Corporation | System for reducing bus overhead for communication with a network interface |
US6160554A (en) | 1998-03-19 | 2000-12-12 | Hewlett Packard Company | Computer file content preview window |
US6002804A (en) | 1998-03-26 | 1999-12-14 | Hewlett-Packard Company | Tone dependent variable halftoning with adjustable algorithm selection |
US6246683B1 (en) * | 1998-05-01 | 2001-06-12 | 3Com Corporation | Receive processing with network protocol bypass |
US6865672B1 (en) * | 1998-05-18 | 2005-03-08 | Spearhead Technologies, Ltd. | System and method for securing a computer communication network |
US6260127B1 (en) | 1998-07-13 | 2001-07-10 | Compaq Computer Corporation | Method and apparatus for supporting heterogeneous memory in computer systems |
US6768996B1 (en) | 1998-10-08 | 2004-07-27 | Hewlett-Packard Development Company, L.P. | System and method for retrieving an abstracted portion of a file without regard to the operating system of the current host computer |
US6360241B1 (en) | 1999-02-01 | 2002-03-19 | Compaq Information Technologies Goup, L.P. | Computer method and apparatus for division and square root operations using signed digit |
US6466952B2 (en) | 1999-04-08 | 2002-10-15 | Hewlett-Packard Company | Method for transferring and indexing data from old media to new media |
US6502203B2 (en) | 1999-04-16 | 2002-12-31 | Compaq Information Technologies Group, L.P. | Method and apparatus for cluster system operation |
US6304945B1 (en) | 1999-05-13 | 2001-10-16 | Compaq Computer Corporation | Method and apparatus for maintaining cache coherency in a computer system having multiple processor buses |
US7318102B1 (en) | 1999-05-24 | 2008-01-08 | Hewlett-Packard Development Company, L.P. | Reliable datagram |
US20030195983A1 (en) * | 1999-05-24 | 2003-10-16 | Krause Michael R. | Network congestion management using aggressive timers |
US20020133620A1 (en) * | 1999-05-24 | 2002-09-19 | Krause Michael R. | Access control in a network system |
WO2001018988A1 (en) | 1999-09-08 | 2001-03-15 | Mellanox Technologies Ltd. | Bridge between parallel buses over a packet-switched network |
US20030053574A1 (en) | 1999-12-28 | 2003-03-20 | Shai Cohen | Adaptive sampling |
US6799220B1 (en) * | 2000-04-13 | 2004-09-28 | Intel Corporation | Tunneling management messages over a channel architecture network |
US7103626B1 (en) | 2000-05-24 | 2006-09-05 | Hewlett-Packard Development, L.P. | Partitioning in distributed computer system |
WO2001090838A2 (en) | 2000-05-24 | 2001-11-29 | Voltaire Advanced Data Security Ltd. | Filtered application-to-application communication |
AU6420001A (en) | 2000-06-02 | 2001-12-11 | Mellanox Technologies Ltd. | Dma doorbell |
US6690757B1 (en) | 2000-06-20 | 2004-02-10 | Hewlett-Packard Development Company, L.P. | High-speed interconnection adapter having automated lane de-skew |
US6364938B1 (en) * | 2000-08-17 | 2002-04-02 | Hamilton Sundstrand Corporation | Sorbent system and method for absorbing carbon dioxide (CO2) from the atmosphere of a closed habitable environment |
US7346702B2 (en) | 2000-08-24 | 2008-03-18 | Voltaire Ltd. | System and method for highly scalable high-speed content-based filtering and load balancing in interconnected fabrics |
US6765922B1 (en) | 2000-09-08 | 2004-07-20 | Hewlett-Packard Development Company, L.P. | Speculative transmit for system area network latency reduction |
US20020059052A1 (en) | 2000-09-12 | 2002-05-16 | Mellanox Technologies Ltd. | Co-simulation of network components |
US6349035B1 (en) | 2000-09-29 | 2002-02-19 | Compaq Information Technologies Group, L.P. | Method and apparatus for tooless mating of liquid cooled cold plate with tapered interposer heat sink |
US6718392B1 (en) | 2000-10-24 | 2004-04-06 | Hewlett-Packard Development Company, L.P. | Queue pair partitioning in distributed computer system |
AUPR108900A0 (en) | 2000-10-28 | 2000-11-23 | S4 Technology Pty Limited | Modular digital transmission assembly |
US6871296B2 (en) * | 2000-12-29 | 2005-03-22 | International Business Machines Corporation | Highly available TCP systems with fail over connections |
US6728743B2 (en) | 2001-01-04 | 2004-04-27 | Mellanox Technologies Ltd. | Modulo remainder generator |
US7254237B1 (en) | 2001-01-12 | 2007-08-07 | Slt Logic, Llc | System and method for establishing a secure connection |
US6950961B2 (en) | 2001-02-13 | 2005-09-27 | Hewlett-Packard Development Company, L.P. | Highly available, monotonic increasing sequence number generation |
GB2372914B (en) | 2001-02-28 | 2003-12-24 | 3Com Corp | Direct data placement and message reassembly |
US20020129293A1 (en) | 2001-03-07 | 2002-09-12 | Hutton John F. | Scan based multiple ring oscillator structure for on-chip speed measurement |
US20020140985A1 (en) | 2001-04-02 | 2002-10-03 | Hudson Kevin R. | Color calibration for clustered printing |
US20020152328A1 (en) | 2001-04-11 | 2002-10-17 | Mellanox Technologies, Ltd. | Network adapter with shared database for message context information |
US7543290B2 (en) | 2001-04-11 | 2009-06-02 | Mellanox Technologies Ltd. | Multiple queue pair access with single doorbell |
US6944168B2 (en) | 2001-05-04 | 2005-09-13 | Slt Logic Llc | System and method for providing transformation of multi-protocol packets in a data stream |
US6901052B2 (en) | 2001-05-04 | 2005-05-31 | Slt Logic Llc | System and method for policing multiple data flows and multi-protocol data flows |
US7042848B2 (en) | 2001-05-04 | 2006-05-09 | Slt Logic Llc | System and method for hierarchical policing of flows and subflows of a data stream |
US6904057B2 (en) | 2001-05-04 | 2005-06-07 | Slt Logic Llc | Method and apparatus for providing multi-protocol, multi-stage, real-time frame classification |
US6438130B1 (en) | 2001-06-28 | 2002-08-20 | Mellanox Technologies Ltd. | Forwarding database cache |
US6980328B2 (en) | 2001-07-05 | 2005-12-27 | Hewlett-Packard Development Company, L.P. | Direction-dependent color conversion in bidirectional printing |
US7136397B2 (en) | 2001-08-20 | 2006-11-14 | Slt Logic Llc | Network architecture and system for delivering bi-directional xDSL based services |
US7151744B2 (en) | 2001-09-21 | 2006-12-19 | Slt Logic Llc | Multi-service queuing method and apparatus that provides exhaustive arbitration, load balancing, and support for rapid port failover |
US7099275B2 (en) | 2001-09-21 | 2006-08-29 | Slt Logic Llc | Programmable multi-service queue scheduler |
US7161719B2 (en) | 2001-09-26 | 2007-01-09 | Hewlett-Packard Development Company, L.P. | Generalized color calibration architecture and method |
US6904534B2 (en) | 2001-09-29 | 2005-06-07 | Hewlett-Packard Development Company, L.P. | Progressive CPU sleep state duty cycle to limit peak power of multiple computers on shared power distribution unit |
US7023584B2 (en) | 2001-10-02 | 2006-04-04 | Hewlett-Packard Development Company, L.P. | Color calibration method and apparatus |
US20030065856A1 (en) | 2001-10-03 | 2003-04-03 | Mellanox Technologies Ltd. | Network adapter with multiple event queues |
US7054035B2 (en) | 2001-10-29 | 2006-05-30 | Hewlett-Packard Development Company, L.P. | Method and system for management of color through conversion between color spaces |
US7240350B1 (en) | 2002-01-07 | 2007-07-03 | Slt Logic, Llc | System and method for providing communications to processes |
US7093158B2 (en) | 2002-03-11 | 2006-08-15 | Hewlett-Packard Development Company, L.P. | Data redundancy in a hot pluggable, large symmetric multi-processor system |
JP2004007354A (ja) * | 2002-04-02 | 2004-01-08 | Nippon Telegr & Teleph Corp <Ntt> | 計算機間データ転送方法及びデータ同報配信方法 |
US7245627B2 (en) | 2002-04-23 | 2007-07-17 | Mellanox Technologies Ltd. | Sharing a network interface card among multiple hosts |
US6705703B2 (en) | 2002-04-24 | 2004-03-16 | Hewlett-Packard Development Company, L.P. | Determination of control points for construction of first color space-to-second color space look-up table |
US6667918B2 (en) | 2002-05-01 | 2003-12-23 | Mellanox Technologies Ltd. | Self-repair of embedded memory arrays |
US7149227B2 (en) | 2002-05-31 | 2006-12-12 | Mellanox Technologies Ltd. | Round-robin arbiter with low jitter |
US7944920B2 (en) * | 2002-06-11 | 2011-05-17 | Pandya Ashish A | Data processing system using internet protocols and RDMA |
CN1169063C (zh) | 2002-06-21 | 2004-09-29 | 华中科技大学 | 现场总线与串行接口设备间的协议转换方法 |
US7024672B2 (en) | 2002-06-26 | 2006-04-04 | Microsoft Corporation | Process-mode independent driver model |
US7263103B2 (en) | 2002-07-23 | 2007-08-28 | Mellanox Technologies Ltd. | Receive queue descriptor pool |
US7143412B2 (en) | 2002-07-25 | 2006-11-28 | Hewlett-Packard Development Company, L.P. | Method and apparatus for optimizing performance in a multi-processing system |
US7631106B2 (en) | 2002-08-15 | 2009-12-08 | Mellanox Technologies Ltd. | Prefetching of receive queue descriptors |
US8230090B2 (en) * | 2002-09-11 | 2012-07-24 | Broadcom Corporation | System and method for TCP offloading and uploading |
US8010707B2 (en) * | 2002-08-30 | 2011-08-30 | Broadcom Corporation | System and method for network interfacing |
US7299266B2 (en) * | 2002-09-05 | 2007-11-20 | International Business Machines Corporation | Memory management offload for RDMA enabled network adapters |
US7386619B1 (en) | 2003-01-06 | 2008-06-10 | Slt Logic, Llc | System and method for allocating communications to processors in a multiprocessor system |
US7316017B1 (en) | 2003-01-06 | 2008-01-01 | Slt Logic, Llc | System and method for allocatiing communications to processors and rescheduling processes in a multiprocessor system |
US7190827B2 (en) | 2003-01-22 | 2007-03-13 | Hewlett-Packard Development Company, L.P. | Color space conversion using interpolation |
US7502826B2 (en) | 2003-03-27 | 2009-03-10 | Hewlett-Packard Development Company, L.P. | Atomic operations |
US7554993B2 (en) | 2003-03-27 | 2009-06-30 | Hewlett-Packard Development Company, L.P. | Method and apparatus for performing connection management with multiple stacks |
US8023520B2 (en) | 2003-03-27 | 2011-09-20 | Hewlett-Packard Development Company, L.P. | Signaling packet |
US7103744B2 (en) | 2003-03-27 | 2006-09-05 | Hewlett-Packard Development Company, L.P. | Binding a memory window to a queue pair |
US20040210754A1 (en) | 2003-04-16 | 2004-10-21 | Barron Dwight L. | Shared security transform device, system and methods |
US20050021680A1 (en) * | 2003-05-12 | 2005-01-27 | Pete Ekis | System and method for interfacing TCP offload engines using an interposed socket library |
US20040252685A1 (en) | 2003-06-13 | 2004-12-16 | Mellanox Technologies Ltd. | Channel adapter with integrated switch |
US7352893B2 (en) | 2003-07-09 | 2008-04-01 | Hewlett-Packard Development Company, L.P. | Representing extended color gamut information |
US7446901B2 (en) | 2003-07-21 | 2008-11-04 | Hewlett-Packard Development Company | Conforming output intensities of pens |
US7496903B2 (en) | 2003-08-12 | 2009-02-24 | Hewlett-Packard Development Company, L.P. | Synthesizing application response measurement (ARM) instrumentation |
US7484209B2 (en) | 2003-08-12 | 2009-01-27 | Hewlett-Packard Development Company, L.P. | Instrumenting java code by modifying bytecodes |
US20050039171A1 (en) | 2003-08-12 | 2005-02-17 | Avakian Arra E. | Using interceptors and out-of-band data to monitor the performance of Java 2 enterprise edition (J2EE) applications |
US7617376B2 (en) | 2003-08-14 | 2009-11-10 | Hewlett-Packard Development Company, L.P. | Method and apparatus for accessing a memory |
US7757232B2 (en) | 2003-08-14 | 2010-07-13 | Hewlett-Packard Development Company, L.P. | Method and apparatus for implementing work request lists |
US7404190B2 (en) | 2003-09-18 | 2008-07-22 | Hewlett-Packard Development Company, L.P. | Method and apparatus for providing notification via multiple completion queue handlers |
US7543037B2 (en) * | 2003-12-02 | 2009-06-02 | International Business Machines Corporation | RDMA completion and retransmit system and method |
US7653754B2 (en) | 2004-01-05 | 2010-01-26 | Mellanox Technologies Ltd. | Method, system and protocol that enable unrestricted user-level access to a network interface adapter |
US20050172181A1 (en) | 2004-01-16 | 2005-08-04 | Mellanox Technologies Ltd. | System and method for production testing of high speed communications receivers |
US7168784B2 (en) | 2004-03-30 | 2007-01-30 | Hewlett-Packard Development Company, L.P. | Formation of images |
US20050219278A1 (en) | 2004-03-30 | 2005-10-06 | Hudson Kevin R | Image formation with a flexible number of passes |
US7929161B2 (en) | 2004-04-15 | 2011-04-19 | Hewlett-Packard Development Company, L.P. | Image processing system and method |
US7650386B2 (en) | 2004-07-29 | 2010-01-19 | Hewlett-Packard Development Company, L.P. | Communication among partitioned devices |
US20060045098A1 (en) | 2004-08-31 | 2006-03-02 | Krause Michael R | System for port mapping in a network |
US7403535B2 (en) | 2004-12-14 | 2008-07-22 | Hewlett-Packard Development Company, L.P. | Aggregation of network resources providing offloaded connections between applications over a network |
US7551614B2 (en) | 2004-12-14 | 2009-06-23 | Hewlett-Packard Development Company, L.P. | Aggregation over multiple processing nodes of network resources each providing offloaded connections between applications over a network |
US20060193318A1 (en) | 2005-02-28 | 2006-08-31 | Sriram Narasimhan | Method and apparatus for processing inbound and outbound quanta of data |
US7674564B2 (en) | 2005-04-11 | 2010-03-09 | Hewlett-Packard Development Company, L.P. | Color filter |
US7580415B2 (en) | 2005-04-27 | 2009-08-25 | Hewlett-Packard Development Company, L.P. | Aggregation of hybrid network resources operable to support both offloaded and non-offloaded connections |
US7580495B2 (en) | 2005-06-30 | 2009-08-25 | Slt Logic Llc | Mixer-based phase control |
US7573967B2 (en) | 2005-07-01 | 2009-08-11 | Slt Logic Llc | Input threshold adjustment in a synchronous data sampling circuit |
US8645964B2 (en) | 2005-08-23 | 2014-02-04 | Mellanox Technologies Ltd. | System and method for accelerating input/output access operation on a virtual machine |
US7813460B2 (en) | 2005-09-30 | 2010-10-12 | Slt Logic, Llc | High-speed data sampler with input threshold adjustment |
US7285996B2 (en) | 2005-09-30 | 2007-10-23 | Slt Logic, Llc | Delay-locked loop |
US9104894B2 (en) | 2005-12-16 | 2015-08-11 | Hewlett-Packard Development Company, L.P. | Hardware enablement using an interface |
US7827442B2 (en) | 2006-01-23 | 2010-11-02 | Slt Logic Llc | Shelf management controller with hardware/software implemented dual redundant configuration |
US7518164B2 (en) | 2006-03-29 | 2009-04-14 | Mellanox Technologies Ltd. | Current-triggered low turn-on voltage SCR |
US9111602B2 (en) | 2006-04-07 | 2015-08-18 | Mellanox Technologies, Ltd. | Accurate global reference voltage distribution system with local reference voltages referred to local ground and locally supplied voltage |
US7514978B2 (en) | 2006-05-08 | 2009-04-07 | Mellanox Technologies Ltd. | Terminated input buffer with offset cancellation circuit |
US7567267B2 (en) | 2006-07-31 | 2009-07-28 | Hewlett-Packard Development Company, L.P. | System and method for calibrating a beam array of a printer |
US7822594B2 (en) | 2006-08-07 | 2010-10-26 | Voltaire Ltd. | Service-oriented infrastructure management |
US8948199B2 (en) | 2006-08-30 | 2015-02-03 | Mellanox Technologies Ltd. | Fibre channel processing by a host channel adapter |
US7801027B2 (en) | 2006-08-30 | 2010-09-21 | Mellanox Technologies Ltd. | Auto-negotiation by nodes on an infiniband fabric |
US20080115217A1 (en) | 2006-10-31 | 2008-05-15 | Hewlett-Packard Development Company, L.P. | Method and apparatus for protection of a computer system from malicious code attacks |
US8522042B2 (en) | 2006-10-31 | 2013-08-27 | Hewlett-Packard Development Company, L.P. | Method and apparatus for enforcement of software licence protection |
US8296849B2 (en) | 2006-10-31 | 2012-10-23 | Hewlett-Packard Development Company, L.P. | Method and apparatus for removing homogeneity from execution environment of computing system |
US8233380B2 (en) | 2006-11-06 | 2012-07-31 | Hewlett-Packard Development Company, L.P. | RDMA QP simplex switchless connection |
US8244825B2 (en) | 2006-11-06 | 2012-08-14 | Hewlett-Packard Development Company, L.P. | Remote direct memory access (RDMA) completion |
US20080135774A1 (en) | 2006-12-08 | 2008-06-12 | Asml Netherlands B.V. | Scatterometer, a lithographic apparatus and a focus analysis method |
US8909742B2 (en) | 2006-12-18 | 2014-12-09 | Hewlett-Packard Development Company, L.P. | Distributed configuration of network interface cards |
US7864787B2 (en) | 2007-03-26 | 2011-01-04 | Voltaire Ltd. | Device, system and method of multicast communication |
US7848322B2 (en) | 2007-03-26 | 2010-12-07 | Voltaire Ltd. | Device, system and method of UDP communication |
US7856488B2 (en) | 2007-03-30 | 2010-12-21 | Hewlett-Packard Development Company, L.P. | Electronic device profile migration |
US20090097200A1 (en) | 2007-04-11 | 2009-04-16 | Viswa Sharma | Modular blade for providing scalable mechanical, electrical and environmental functionality in the enterprise using advancedtca boards |
US8817817B2 (en) | 2007-06-06 | 2014-08-26 | Hewlett-Packard Development Company, L.P. | Method for ethernet power savings on link aggregated groups |
US7802071B2 (en) | 2007-07-16 | 2010-09-21 | Voltaire Ltd. | Device, system, and method of publishing information to multiple subscribers |
US20090165003A1 (en) | 2007-12-21 | 2009-06-25 | Van Jacobson | System and method for allocating communications to processors and rescheduling processes in a multiprocessor system |
KR101408390B1 (ko) | 2008-04-28 | 2014-06-17 | 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. | 데이터 전송 레이트 모니터 및 최대 데이터 전송 레이트 제어 방법 |
US8248930B2 (en) | 2008-04-29 | 2012-08-21 | Google Inc. | Method and apparatus for a network queuing engine and congestion management gateway |
US8520686B2 (en) | 2008-05-08 | 2013-08-27 | Hewlett-Packard Development Company, L.P. | Method for interfacing a fibre channel network with an ethernet based network |
US8108538B2 (en) | 2008-08-21 | 2012-01-31 | Voltaire Ltd. | Device, system, and method of distributing messages |
US20100088437A1 (en) | 2008-10-06 | 2010-04-08 | Mellanox Technologies Ltd | Infiniband adaptive congestion control adaptive marking rate |
US7921178B2 (en) | 2008-12-04 | 2011-04-05 | Voltaire Ltd. | Device, system, and method of accessing storage |
US8201168B2 (en) | 2008-12-25 | 2012-06-12 | Voltaire Ltd. | Virtual input-output connections for machine virtualization |
US8370675B2 (en) | 2009-01-28 | 2013-02-05 | Mellanox Technologies Ltd. | Precise clock synchronization |
US20110289210A1 (en) | 2009-01-29 | 2011-11-24 | Kelley Keith L | Connecting ports of one or more electronic devices to different subsets of networks based on different operating modes |
US8000336B2 (en) | 2009-04-21 | 2011-08-16 | Voltaire Ltd. | Spanning tree root selection in a hierarchical network |
US8255475B2 (en) | 2009-04-28 | 2012-08-28 | Mellanox Technologies Ltd. | Network interface device with memory management capabilities |
US8407478B2 (en) | 2009-07-07 | 2013-03-26 | Mellanox Technologies Ltd. | Control message signature for device control |
US8365057B2 (en) | 2009-07-30 | 2013-01-29 | Mellanox Technologies Ltd | Processing of data integrity field |
US8644140B2 (en) | 2009-09-09 | 2014-02-04 | Mellanox Technologies Ltd. | Data switch with shared port buffers |
US8225182B2 (en) | 2009-10-04 | 2012-07-17 | Mellanox Technologies Ltd. | Processing of block and transaction signatures |
US7934959B2 (en) | 2009-10-06 | 2011-05-03 | Mellanox Technologies Ltd. | Adapter for pluggable module |
WO2011043768A1 (en) | 2009-10-07 | 2011-04-14 | Ziebel, As | Combination injection string and distributed sensing string |
US8576715B2 (en) | 2009-10-26 | 2013-11-05 | Mellanox Technologies Ltd. | High-performance adaptive routing |
EP2494298A1 (en) | 2009-10-30 | 2012-09-05 | Hewlett-Packard Development Company, L.P. | Thermal bus bar for a blade enclosure |
US20120120959A1 (en) | 2009-11-02 | 2012-05-17 | Michael R Krause | Multiprocessing computing with distributed embedded switching |
US9110860B2 (en) | 2009-11-11 | 2015-08-18 | Mellanox Technologies Tlv Ltd. | Topology-aware fabric-based offloading of collective functions |
US8811417B2 (en) | 2009-11-15 | 2014-08-19 | Mellanox Technologies Ltd. | Cross-channel network operation offloading for collective operations |
US8213315B2 (en) | 2009-11-19 | 2012-07-03 | Mellanox Technologies Ltd. | Dynamically-connected transport service |
US20110173352A1 (en) | 2010-01-13 | 2011-07-14 | Mellanox Technologies Ltd | Power Reduction on Idle Communication Lanes |
-
2004
- 2004-04-21 GB GBGB0408876.1A patent/GB0408876D0/en not_active Ceased
-
2005
- 2005-04-21 AT AT05736008T patent/ATE533107T1/de active
- 2005-04-21 WO PCT/GB2005/001525 patent/WO2005104475A2/en not_active Application Discontinuation
- 2005-04-21 EP EP10176955A patent/EP2273375B1/en active Active
- 2005-04-21 CN CNB2005800117777A patent/CN100478926C/zh active Active
- 2005-04-21 US US11/111,481 patent/US8005916B2/en active Active
- 2005-04-21 AT AT10176955T patent/ATE545911T1/de active
- 2005-04-21 JP JP2007508969A patent/JP4825794B2/ja active Active
- 2005-04-21 EP EP05736008A patent/EP1738266B1/en active Active
-
2011
- 2011-04-01 JP JP2011081728A patent/JP5282115B2/ja active Active
- 2011-06-30 US US13/173,349 patent/US8612536B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01149155A (ja) * | 1987-12-07 | 1989-06-12 | Yokogawa Electric Corp | I/oチャネル制御装置 |
JPH06301623A (ja) * | 1993-02-12 | 1994-10-28 | Internatl Business Mach Corp <Ibm> | デバイス操作方法 |
JPH0816493A (ja) * | 1994-06-30 | 1996-01-19 | Canon Inc | スキャナプリンタサーバーシステムのデータ通信制御方法 |
JPH11328134A (ja) * | 1998-05-14 | 1999-11-30 | Hitachi Ltd | 計算機間データ送受信方法 |
JP2003526150A (ja) * | 2000-02-29 | 2003-09-02 | パルテク アクチェンゲゼルシャフト | コンピュータネットワーク内で単一コンピュータの通信を制御するための方法 |
JP2002305535A (ja) * | 2001-01-11 | 2002-10-18 | Internatl Business Mach Corp <Ibm> | データを転送する信頼できるプロトコルを提供する方法および装置 |
JP2004054657A (ja) * | 2002-07-22 | 2004-02-19 | Canon Inc | ネットワークデバイス管理装置 |
Also Published As
Publication number | Publication date |
---|---|
US20110264758A1 (en) | 2011-10-27 |
EP1738266A2 (en) | 2007-01-03 |
JP2011141894A (ja) | 2011-07-21 |
US8612536B2 (en) | 2013-12-17 |
GB0408876D0 (en) | 2004-05-26 |
ATE533107T1 (de) | 2011-11-15 |
CN1969267A (zh) | 2007-05-23 |
JP2007534073A (ja) | 2007-11-22 |
US20050226165A1 (en) | 2005-10-13 |
WO2005104475A3 (en) | 2006-04-27 |
EP2273375B1 (en) | 2012-02-15 |
EP2273375A1 (en) | 2011-01-12 |
CN100478926C (zh) | 2009-04-15 |
WO2005104475A2 (en) | 2005-11-03 |
US8005916B2 (en) | 2011-08-23 |
EP1738266B1 (en) | 2011-11-09 |
JP5282115B2 (ja) | 2013-09-04 |
ATE545911T1 (de) | 2012-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4825794B2 (ja) | ユーザーレベルスタック | |
US11210148B2 (en) | Reception according to a data transfer protocol of data directed to any of a plurality of destination entities | |
EP2632109B1 (en) | Data processing system and method therefor | |
US9112752B2 (en) | Network interface and protocol | |
WO2005104478A2 (en) | Network interface card with rdma capability | |
US20070076712A1 (en) | Processing packet headers | |
US20110296535A1 (en) | Checking data integrity |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080401 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20090126 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20090126 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101220 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110104 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110324 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110816 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110912 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4825794 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140916 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140916 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |