JP3690809B2 - 不要な再送信を防止するarq技術を用いたネットワークマルチキャスティング方法 - Google Patents
不要な再送信を防止するarq技術を用いたネットワークマルチキャスティング方法 Download PDFInfo
- Publication number
- JP3690809B2 JP3690809B2 JP52237396A JP52237396A JP3690809B2 JP 3690809 B2 JP3690809 B2 JP 3690809B2 JP 52237396 A JP52237396 A JP 52237396A JP 52237396 A JP52237396 A JP 52237396A JP 3690809 B2 JP3690809 B2 JP 3690809B2
- Authority
- JP
- Japan
- Prior art keywords
- server
- client
- multicast
- data
- block
- 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.)
- Expired - Lifetime
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1614—Details of the supervisory signal using bitmaps
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1809—Selective-repeat protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1836—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with heterogeneous network architecture
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1863—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
- H04L12/1868—Measures taken after transmission, e.g. acknowledgments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/11—Identifying congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/11—Identifying congestion
- H04L47/115—Identifying congestion using a dedicated 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/10—Flow control; Congestion control
- H04L47/15—Flow control; Congestion control in relation to multipoint traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/29—Flow control; Congestion control using a combination of thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L5/00—Arrangements affording multiple use of the transmission path
- H04L5/14—Two-way operation using the same type of signal, i.e. duplex
- H04L5/1438—Negotiation of transmission parameters prior to communication
- H04L5/1446—Negotiation of transmission parameters prior to communication of transmission speed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/62—Establishing a time schedule for servicing the requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/185—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1863—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L2001/0092—Error control systems characterised by the topology of the transmission link
- H04L2001/0093—Point-to-multipoint
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/24—Negotiation of communication capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/324—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/06—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/16—Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
- H04W28/18—Negotiating wireless communication parameters
- H04W28/22—Negotiating communication rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/005—Discovery of network devices, e.g. terminals
Description
本願は、1995年1月19日に出願され、本願の出願日の時点では係属中である、米国特許出願第08/375,493号(代理人番号第PSM-001号)に関連している。また、本願は、その他2つの米国特許出願にも関連している。これらその他の出願は、ともに本願と同じ日に米国特許および商標庁に出願される。これらその他の出願は、代理人番号第STR-001CP1号および第STR-001CP2号により識別される。これら2つのその他の出願および米国特許出願第08/375,493号はいずれも、本願において参考として援用される。
発明の分野
本発明は、データ送信に関する。具体的には、本発明は、サーバからクライアントへの高速で信頼性の高いファイル送信に関する。
発明の背景
ワイドエリアネットワーク(WAN)のようなコンピュータネットワークは、サーバノードおよび1以上のクライアントノードのようなネットワーク加入者の間での通信を可能にするように、ユニキャスト、マルチキャストおよびブロードキャストサービスを提供している。マルチキャストフレームリレーは、コンピュータネットワーク上で通信するために利用されるサービスである。マルチキャストIPテクノロジーもまた、コンピュータネットワーク上で通信するために利用されるサービスである。ブロードキャストフレームリレーは、衛星ネットワーク上で通信するために利用されるサービスである。ここで、用語「ブロードキャスト」は、ネットワークに接続されたクライアントノードのすべてに情報を送るサーバノードを指している。用語「マルチキャスト」は、ネットワークに接続されたすべてのクライアントノード中の1サブセットに情報を送るサーバノードを指している。ブロードキャストおよびマルチキャストは、WANを用いた比較的、新しいネットワーク機能である。
情報プロバイダの中には、中央ロケーションにおけるサーバノードから遠隔カスタマロケーションにおける1以上のクライアントノードへと、サーバおよびクライアントが結合されているコンピュータネットワークを介して、情報を電子的にブロードキャストまたはマルチキャストすることにより情報を伝達したいと望んでいるものがある。ブロードキャストおよびマルチキャストネットワークは、伝達した情報についての応答確認を全く提供しないので、これらのサーバは信頼できない可能性がある。このような信頼性の低さは、一般に、情報プロバイダには望ましくなく、受け入れがたいことである。
コンピュータネットワークで通常用いられる1組のプロトコルは、TCP/IPである。これは、インターネットで用いられているプロトコルである。TCPとは、伝送制御プロトコルを表し、IPとは、インターネットプロトコルを表す。TCP/IPに関しては、2つのファイル転送プロトコルが利用可能である。すなわち、(i)TCPの最上位のアプリケーションをランするファイル転送プロトコル(FTP)と、(ii)UDPの最上位でランする簡易ファイル転送プロトコル(TFTP)との2つである。UDPとは、ユーザデータグラムプロトコルを表す。TCPおよびUDPはともに、インターネットワーク(すなわち、ネットワークのネットワーク)を介した情報のエンドツーエンド伝達の責任をもつトランスポートプロトコルである。
FTPおよびTFPTはともに、ポイントツーポイント(つまり、ユニキャスト)ファイル転送のみをサポートする。FTPは、信頼性ある伝達についてはTCPに依存する。なぜなら、TCPは、コネクションオリエンテッド応答確認型トランスポートプロトコルであるからである。TFTPは、信頼性については独自の応答確認を提供する。なぜなら、TFTPは、応答確認をサポートしないコネクションレストランスポートサービスであるUDPの最上位でランするからである。
TCPのような接続指向のプロトコルは、バーチャルサーキット接続のセットアップおよびティアダウンを要求する。そのオーバーヘッドが比較的長いので、TCPおよびこれに類似したプロトコルは、セルラーディジタルパケットデータ(CDPD)ネットワークのような本質的には貧弱な接続のネットワークでは望ましくない。CDPDは、TCP/IPを、ネットワークで用いられる1次プロトコルスイートとして利用する。CDPD無線ネットワークは、UDP(コネンクションレストランスポート層)よりも上位のアプリケーションのみで動作することを勧める。よって、CDPDに選択されるファイル転送プロトコルは、TFTPとなる。
TFTPは、ファイルを、それぞれのデータについて512バイトを有する複数のパケットに分解した後、それぞれのデータパケットを1度に1個ずつ送る。それぞれのデータパケットが送られた後、TFTPは、送信側のノードに次のデータパケットの送信を許可する前に、送信側のノードに、少なくとも1つの受信側ノードからの応答確認を待たせる。TFTPは、例えば、Douglas E. Comer(Internetworking with TCP/IP, Volume I, Principles, Protocols and Architecture、第2版、Prentice Hall、1991年、第23章、第377〜390頁)により著された文献に記載されている。
応答確認はTFTPの一部ではあるものの、TFTPにおいて用いられている応答確認スキームは、ネットワーク遅延が顕著になるにつれて、および/または受信側ノード中の2つ以上で異なってくると、非常に効率が悪くなる。現在知られているデータ転送メカニズムの中には、TFTPと同様に、パケット毎の応答確認を要求するものもある。よって、このようなその他のメカニズムも、データ全体の転送については、比較的低速である。
発明の要旨
本発明の目的は、通信リンク上でサーバから1つ以上のクライアントへとファイルを高速かつ信頼性よく送信することである。ファイルの転送は、好ましくは、複数のクライアントへのマルチキャスト送信である。概略的にいうと、本発明によるファイル転送は、たとえ遅延が顕著になっても、および/または受信側クライアント中の2つ以上で遅延が異なってきても、リンク遅延時にさえ速度、信頼性および効率の低下を被ることがない。本発明は、コンピュータソフトウェアファイルを電子的に分配するのに理想的なメカニズムを提供する。
サーバを複数のクライアントに結合し、それらの間での通信を可能にする通信リンクは、コンピュータネットワーク(例えば、LAN、WAN、インターネットなど)でも、無線ネットワーク(例えば、CDPDのようなパケットセルラーデータネットワーク)でも、これらのタイプの通信媒体の組み合わせでも、あるいは、一般に高速で遅延の少ないネットワークである、例えば衛星ネットワークのようなその他の通信媒体であってもよい。
本発明によれば、クライアントは、サーバがデータファイルを送っている間に、否定応答確認のみをサーバに送り返す。この通信は、連続的である。すなわち、サーバは、データの送信を中止してクライアントからの否定応答確認を待つのではなく、サーバは、サーバがデータを送信している間にクライアントの否定応答確認を受信する。クライアントの否定応答確認は、サーバに対して、特にどのパケットが再送信される必要があるかを指示する。パケットが再送信される必要があるのは、例えば、そのパケットが、1以上のクライアントによって受信されなかったか、あるいは誤って受信されたからである。サーバがリンクを介してデータの全体(例えば、ファイルの全体)をクライアントに送った後、サーバは、第2ラウンドの送信をおこなう。この第2ラウンドでは、サーバは、クライアントにより再送信を要求すると指示された特定のパケットのみを再送信する。この第2ラウンドの間も、クライアントは、やはり否定応答確認(すなわち、全く受信されなかったか、または正しく受信されなかったパケットの指示)のみを送る。その後、このプロセスは、それぞれのクライアントがすべてのパケットを正しく受信するのに必要であれば、さらに多数のラウンドの再送信を継続しておこなうことができる。あるいは、再送信ラウンドは、所定の回数だけ繰り返されてもよい。この回数は修正可能である(つまり、この回数は設定可能である)。後続するラウンドはそれぞれ、典型的には、その直前のラウンドよりも少数のパケットの送信を伴う。なぜなら、直前で誤りを含むパケットのみが再び送られるからである。
このスキームは、サーバから1以上のクライアントへとデータを迅速に、かつ信頼性よく転送する。このスキームが迅速なのは、パケット間の境界で停止して、今送信したばかりのパケットについてクライアントからの否定応答確認を待つことなく、ファイルの全体を転送することがサーバに許可されるからである。すなわち、データの転送は、それぞれのデータ転送ラウンドが、特定のクライアントの受信問題に関わりなく、および/またはどのようなリンク遅延の問題(例えば、パケットがサーバからあるクライアントへ到達するのに要する時間と、パケットがそのサーバから別のクライアントへと到達するのに要する時間との間の差)にも関わりなく継続するという点で、否定応答確認には直接結びつくものではない。また、後続するそれぞれの送信ラウンドは、直前のラウンドの間に受信されなかったか、または誤って受信されたパケットの送信のみを伴うので、概略的にいうと、サーバが、同一のファイルの全体を1回よりも多く送ることが必要になることは決してない。このスキームの信頼性が高いのは、それぞれのクライアントにあらゆるパケットを提供しようとしているからであり、また、概略的にいうと、特定個人のクライアントの受信問題が、その他のクライアントの受信速度および精度に悪影響を及ぼすことがないからである。
本発明によるデータ転送は、クライアントの誰からも肯定応答確認を要求することはないし、また期待することもない。もし否定応答確認がサーバに戻ってきて受信されなければ、肯定応答確認が暗黙のうちに示される。また、本発明によれば、好ましくは、複数の否定応答確認が収集され、「マルチプルセレクティブリジェクト否定応答確認」としてサーバに送り返される。典型的には、少なくとも1つのこのようなマルチプルセレクティブリジェクト否定応答確認が、例えば、サーバからクライアントへの第1ラウンドの送信の間にサーバに送り返される。1つのマルチプルセレクティブリジェクト否定応答確認が、何百もの個別否定応答確認を表現することができる。これらの否定応答確認の集合を用いることによって、リンク上のトラヒックを大幅に減らすことができ、サーバからクライアントへのデータ転送あるいはその他の目的のためにリンク上の帯域幅を解放することができる。本発明では、概略的にいうと、サーバとリンクとが、同時に、またはごく短い時間帯の間にまとめて戻ってくる多数の個別否定応答確認で閉塞されることはない。このように、リンク上でサーバへと送られつつある個別応答確認の個数を減らすことができる結果、スケーラビリティを改善できるという効果が得られ、有意な利点が得られる。すなわち、マルチプルセレクティブリジェクト否定応答確認を使用すれば、1個のファイルを送ることができるクライアントの数は、サーバに戻ってくる応答確認トラヒックが減るので増やすことができる。
本発明の好ましい実施の形態では、転送されるべきデータの全体(例えば、1個のファイル)は、複数のブロックに分割される。ここで、それぞれのブロックは複数のパケットを有する。サーバは、すべてのブロック(例えば、1個のファイル全体)の送信を終了すると、1ラウンドを完了する。1個の完全なブロックが送信された後、クライアントは、戻りユニキャスト通信パスを介して、否定応答確認をサーバに送り返す。ブロックの境界は、クライアントによる否定応答確認の送信をトリガする。ブロックNについて、否定応答確認がクライアントからサーバへと戻ってくる時、サーバは、ブロックN+1(つまり、後続ブロック)をクライアントに送出しつつあるか、または、サーバは、既にすべてのブロックの送信を終了している。
本発明によれば、以下の特徴が提供される。まず、伝送レートを設定し、マルチキャストグループを規定する能力が得られる。また、「マルチキャストネットワークプローブ」という特徴を用いて、容量が未知であるリンクについてその容量を決定し、同一の特徴を用いることによって、容量が既知であるリンクのフレームエラーレートを決定することができる。「マルチキャストピン」という特徴は、ソースと、マルチキャストグループのメンバーたちとの間のコネクティビティを決定するのに用いることができる。「シードグループ」は、リンクの容量を求めた後にセットアップすることができる。あるいは、もしその容量が分かっているのなら、第1のパスでは、最も高速のリンクによってソースに接続されている受け手はすべてのデータを受信するようにし、より低速なリンクの受け手は、そのデータの一部のみを受信するように、セットアップすることもできる。ソースからデータを受信できる受け手の数は、「否定応答確認収集」スキームを用いることによって、大幅に(例えば、1000倍以上に)増やすことができる。これにより、「複製点(replication point)」(好ましくは、ルータ)は、個々の否定応答確認を収集し、それらを1単位として次のレベルに送り出すことができる。
なお、用語「パケット」、「データグラム」および「フレーム」は、本願明細書においては、同一のものを識別するために用いられており、互いに置き換え可能な用語である。すなわち、これらの用語は、ソースアドレスおよびデスティネーションアドレスをその一部としてもつことができ、リンクを介して送信されるデータまたは情報の単位を指す言葉である。
本発明の上記目的、局面、特徴および利点、ならびに、その他の目的、局面、特徴および利点は、以下の説明および請求の範囲から明らかになるであろう。
【図面の簡単な説明】
図面において、同一の参照番号は、すべての図を通して広く同一の部分を指している。また、これらの図面は必ずしも現実の縮尺に即したものではなく、概略的には、本発明の原理を説明するために強調されているところもある。
図1は、本発明によるデータ送信動作のフローチャートである。
図2は、サーバが1以上のクライアントと通信することができるようにする物理構成の図である。
図3は、TCP/IPプロトコルスタックに対する本発明の一実施の形態のロケーションを示す図である。
図4は、本発明による、「第1パス」のブロックおよびフレーム送信および応答確認プロセスの図である。
図5は、本発明の少なくとも一部が実施可能である、サーバの簡略ブロック図である。
図6は、マルチキャストグループのメンバーたちが別々の容量のリンクにより接続されている、混成マルチキャストネットワークの図である。
図7は、スケーラビリティを向上させ、何百万もの受け手が送り手からのデータを迅速に、かつ信頼性よく受信できるようにする、本発明による応答確認収集という特徴を説明する図である。
図8は、可変ブロックサイズ方法を用いる、輻輳/フロー制御に関連する図である。
図9は、ブロック境界よりも前にクライアントからの否定応答確認を要請する好ましいステータスリクエスト方法を用いる、輻輳/フロー制御に関連する図である。
説明
図1および図2を参照すると、本発明によれば、通信リンク24上でのソースつまりサーバ20から1以上の受け手つまりレシーバつまりクライアント221、222、…、22Nへの迅速で、信頼性の高いデータ送信は、複数のフレームのかたちのデータ(例えば、ファイル)を、そのファイルの全体(すなわち、それら複数のフレームのすべて)がリンク24上で送信されてしまうまで、リンク24上で1以上の受け手22に送信すること(ステップ10)を含む。これらのフレームが送信されている間に、1以上の受け手22からのフレーム否定応答確認がリンク24を介して受信される(ステップ10)。もし、ファイルの全体がリンク24上で送信された後に、いくつかのフレームがリンク24上で再送信される必要があると否定応答確認が指示すれば(ステップ12)、これらいくつかのフレームのみが再送信される(ステップ14)。これらいくかのフレームがリンク24上で再送信されている間に、1以上の受け手22からのフレーム否定応答確認がリンク24を介して受信される(ステップ14)。このプロセスは、その後、ステップ12、14および16によって示されるフレーム再送信の要求がなくなるまで、必要な回数だけ繰り返される。ステップ16では、サーバ20は、すべての受け手22による「ダン(done)」メッセージがサーバ20において受信されたかどうかを判定する。もし受け手が「ダン」したのなら、その受け手は、すべてのフレームを既に受信しており、サーバ20に対して「ダン」メッセージを既に送ってその旨を示していることになる。「ダン」である受け手たちは、自分の名前が「ダンリスト」に載っているのを見るまで「ダン」メッセージをサーバに送り続ける。この「ダンリスト」は、すべての「ダン」である受け手(つまり、「ダンリスト」に載っている受け手)に対して、「ダン」メッセージをサーバに送ることをやめることを指示する通知としてサーバが送るものである。所定の時間の経過後、または所定のイベントの後に、サーバ20は、応答しないすべての受け手22(すなわち、サーバが、「ダン」メッセージを受信していない受け手)に対してステータスリクエストを送る(ステップ18)。ファイル全体の初期転送および後続するエラーフレームの一回の送信を、ここでは広く「ラウンド」または「パス」と称することにする。
第1のパスでは、サーバ20は、好ましくは、ファイルをすべてのクライアント22中の1サブセットにマルチキャストする。典型的には、これらのクライアント22のうち少なくとも2つで、それぞれに伴うサーバ・クライアント間フレーム伝送遅延が異なってくる。本発明によるデータ送信は、たとえ遅延の差が顕著であっても、また、たとえあらゆるクライアント22でそれぞれに伴う遅延が異なっているとしても、このような遅延の差に影響されることはない。
リンク24は、コンピュータネットワーク(例えば、LAN、WAN、インターネットなど)でも、無線ネットワーク(例えば、セルラーデータネットワーク)でも、これら2つのタイプの通信媒体の組み合わせでも、あるいは、典型的には、高速で遅延の少ない、例えば衛星ネットワークのようなその他の通信媒体であってもよい。第1ラウンドの間にリンク24上で送信される複数のフレームは、それら全部を合わせて、サーバ20から1以上のクライアント22に転送されている、1個のコンピュータデータファイルを表すことができる。
サーバ20およびクライアント22は、DOSを含む多種多様なオペレーティングシステムのいずれか1つをランする、PCあるいはワークステーションのようなコンピュータでありうる。図5を参照すると、サーバ20は、どのタイプのコンピュータであるかには関わりなく、典型的には、中央プロセッサ50と、プログラムおよび/またはデータを格納するメインメモリユニット52と、入力/出力コントローラ54と、ネットワークインタフェース56と、キーボートやマウスのような1つ以上の入力デバイス58と、ディスプレイデバイス60と、固定されたドライブユニット、すなわちハードディスクドライブユニット62と、フロッピーディスクドライブユニット64と、テープドライブユニット66と、これらの機器間での通信を可能にするようにこれらの機器を結合するデータバス68と、を備えている。クライアントコンピュータ22はそれぞれ、一般に、図5のサーバ20に含まれている機器のすべて、またはその一部を備えている。
ある実施の形態では、1つ以上のコンピュータプログラムが、サーバ20およびクライアント22の演算能力を規定する。これらのプログラムは、ハードドライブ62、フロッピードライブ64および/またはテープドライブ66を介してサーバ20およびクライアント22にロードされうる。あるいは、これらのプログラムは、メインメモリ52の永久記憶部分(例えば、ROMチップ)に常駐していてもよい。他の実施の形態では、サーバ20および/またはクライアント22は、コンピュータプログラムからインストラクションを受けることを必要とせずにここで記載されるすべての機能を実行する、特別に設計され、専用で、結線された電子回路を備えていてもよい。本発明は、例えば、クライアントソフトウェアの新しい改版レベルをサーバから1以上のクライアントへと電子的に、迅速かつ高い信頼性でロードするのに用いることができる。
図3を参照すると、本発明は、好ましくは、TCP/IPプロトコルスタック32のUDPよりも上位にあるアプリケーション層30で動作する。また、本発明は、ネットウェアSPX/IPXプロトコルスイートにおけるIPXのようなその他のプロトコルスタックに存在するコネクションレストランスポート層の上層にあるアプリケーション層において動作することもできる。UDPは、ユーザデータグラムプロトコルを表しており、また、あるコンピュータ上のアプリケーションプログラムが、別のコンピュータ上のアプリケーションプログラムへとデータグラムを送ることができるようにするのは、TCP/IP標準プロトコルである。UDPは、データグラムを伝達するためにインターネットプロトコル(IP)を用いる。UDPデータグラムがIPデータグラムと異なるのは、ダイアグラムの送り手に、受信側コンピュータ上の多数のデスティネーション(つまり、アプリケーションプログラム)からの識別を可能にする、プロトコルポートナンバをUDPデータグラムが含んでいることである。UDPデータグラムは、また、典型的には、送られているデータに対するチェックサムを含んでいる。
広くいうと、本発明によるデータ送信は、4つの局面、すなわち「アイドル」、「アナウンス/登録」、「転送」および「完了」を含んでいる。「アイドル」状態では、活動はおこなわれない。データの集合体(例えば、ファイル)がサーバ20により送信用に選択されると、「アナウンス/登録」フェーズに入る。これら4つのフェーズのいずれの間でも、サーバ20におけるオペレータにはすべてのファイルが利用可能である。
アナウンス/登録
このフェーズ(図1のステップ8)では、サーバは、クライアントに対して、1個のファイルがまさに転送されつつあることを「アナウンス」し、そのファイルの転送に伴うパラメータを提供する。このフェーズの最大持続時間は、分単位で表され、設定可能である。「アナウンス」メッセージは、マルチキャストグループをセットアップするのに用いられ、クラスDのアドレスは、マルチキャストグループの割り当てに用いられる。
クライアントは、「アナウンス」メッセージを受信したことをサーバに登録することを強制される。クライアントはこの「アナウンス」メッセージを見ると、自分が、そのメッセージ中で識別されているグループに関連づけられていることを確認する。レシーバが正しいサーバIPアドレスと、正しいポートナンバとをもっていることは、「アナウンス」メッセージを処理できるレシーバには暗黙のうちに示される。クライアントは、自分のアドレスが後続する「アナウンス」パケット内の登録されたクライアントリスト内にあるのを見るまで、「アナウンス」パケットに対して「登録」パケットを用いて自動的に応答する。「登録」パケットは、クライアントの加入に関するサーバへの肯定応答確認として作用する。いったんサーバがクライアントの「登録」パケットを受信すると、サーバは、そのクライアントを「アナウンス」パケットの次のブロードキャストにおけるクライアントリストに加える。クライアントリストは、サーバにより保守される。クライアントが、そのクライアントのIDがクライアントリスト内に含まれている「アナウンス」パケットを受信すると、そのクライアントの登録は完了する。期待されたすべてのレシーバが「アナウンス」メッセージに応答した時、または、「アナウンス」タイムアウトが時間切れになった時、これらのどちらが最初に起こっても、その時点でファイルの実際の転送が始まる。クライアントには、送られようとしているファイルを操作するリソースがあるので、このクライアントはそのグループに加入できることを、この登録は示している。望まざる加入を防止するために、グループセットアップ時に暗号鍵交換をおこなうことができる。いったんファイルの転送が始まると、「アナウンス」パケットは送られなくなり、「アナウンス」フェーズは、終了する(図1のステップ9)。
ファイル送信のすべての特性は、「アナウンス」パケットに入れて送信される。この「アナウンス」メッセージを受信するとただちに、クライアントは、ユニキャストデータグラムを用いてサーバに応答する。この応答は、レシーバがファイルを受信するための設備をもっているかどうかを示す。また、この応答は、送信アボートの場合には、クライアントが送信を続行(図1に示されている「再開」)するのに十分なコンテクストをもっているかどうかも示す。いくつかの事例でのアナウンス期間の持続時間は、サーバサイトのオペレータが、クライアントサイトに対する呼を開始し、コンピュータが利用可能ではないか、または転送用の設備をもっていないことを示すことができるだけの長さであるべきである。クライアントサイトでは、訂正は手動でなされてもよいし、あるいはそのように構成されている時には、クライアントが転送に参加できるようにリソースを解放するサーバからの遠隔制御の下になされてもよい。
全送信期間のどの時点においても、クライアントはこのパケットに応答して、そのエンドからの送信をアボートしたことを示し、メッセージ中にその理由を示すことができる。もし転送が完了以前に中断されたのなら、本発明では、ファイル中の既に送信に成功した部分を再び送ることなく、後に続行する(図1の「再開」)ことができる。このことは、非常に大きなファイルを送るときには、特に重要で有用な特徴である。この特徴を実現するために、クライアントは、部分的に受信済みのファイルを破棄しない。その代わり、クライアントは、部分的に受信済みのファイルを格納する。もし、ファイルが最初に送られている時、すべてのクライアント(例えば、1マルチキャストグループ内のすべてのクライアント)がそのファイルの全体を受信できないようにする問題が発生(例えば、ファイル送信中に何らかの理由でリンクが切れたときなど)すれば、後に送信は再開され、転送を完了することができる。再開時には、サーバは、受信されなかったデータフレームのリストをすべてのクライアントにクエリー(query)した後、サーバは、それらのフレームのみを送ることによって、転送を完了させ始める。よって、図1では、再開にあたって、ステップ10は、転送がアボートされなかった場合の通常の開始時のように、ファイルの最初のブロックの最初のフレームから開始するのではなく、初回のアボートされた送信の間に受信されなかった(つまり、否定応答確認された)フレームからまず開始する送信を伴う。
転送
データ転送フェーズに入ると、送信ログは、サーバにおいて保守される。このログは常にオンであり、すべてのイベントを見失わないようにする。それぞれのクライアントもまた、送信ログを保守する。それぞれのクライアントで保守されるログは、後に「完了」の項で参照する。
2ギガバイト以上のデータを有するファイルが転送されうる時、転送の全期間にわたってファイルの全体をサーバのメモリに保持しておくことは、一般に現実的ではない。そのファイルを受信することになるクライアントの数は、1000以上でありうるので、次のブロック転送に引き続いて移る前に、送信を一時中断して、それらのクライアントのそれぞれからの応答確認を待つことは、受け入れがたいことである。
サーバは、転送されるそれぞれのファイルを、フレームのブロックへと論理的に分解する。それぞれのブロックは、典型的には、複数のフレームを有しており、何千ものフレームを有する可能性もある。図4を参照すると、ある例では、サーバ20は、1個のファイルを4つのブロック、すなわちブロック1、ブロック2、ブロック3およびブロック4に分解している。ここで、それぞれのブロックは、1つ以上のフレームを有している。それぞれのブロックは、1個のブロックがサーバにより送られたとクライアントが判定したとき、転送に参加しているあらゆるクライアントにより否定応答確認される(だけで、肯定応答確認はされない)単位を表す。クライアントは、このことを、受信されたデータパケット中のブロック番号の変化により検出する。なぜなら、送られたそれぞれのフレームは、そのブロック番号と、そのブロック内でのフレーム番号とを示すからである。ファイルを複数のブロックに分解することにより、少なくとも2つの利点が得られる。すなわち、(i)要求される否定応答確認の個数を減らすことができ、かつ(ii)次のファイルパスの転送ブロックを決めるためのサーバでのメモリへの要求を減らすことができる。
データの転送は、否定応答確認に直接、結びつくものではない。転送は、どのような個別のクライアントによる否定応答確認を受信しそこねたとしても、あるいは、どのクライアントが、以前にデータパケットが受信しそこねたとしても、継続する。これによって、設計を簡単にすることができ、個々のクライアントの問題が、グループ全体には最小限の影響しか与えないようにすることが確実になる。なお、クライアントは、サーバから受信した内容に基づいてブロック否定応答確認を送ることについては、責任があることにも留意されたい。
図4を参照すると、サーバは、まず、第1のブロックの第1のフレーム(つまり、ブロック1の第1のフレーム)を送ることによって、転送を開始する。サーバは、これらのフレームを設定可能なレートで送る。このことは、基本転送レートが、パフォーマンス次第で減速させる(つまり、低くする)ことができることを表している。サーバは、完全なファイルがいったんネットワークに送られてしまう(つまり、ブロック1〜ブロック4が送信される)まで、ファイルのフレームを送り続ける。これが、第1パスまたは第1ラウンドとして規定され、図4において「B4」として表されているだけの量の時間を要する。クライアントの中には、第1パスの後、完全なファイル(つまり、4つのブロックのすべて)を正しく受信できた者もいる。そのような場合、それらのクライアントは、ファイルの受信を終了したことになる。1個以上のエラーを含むフレームを受信したか、または1個以上のフレームを全く受信していないクライアントは、そのファイルのいくつかの「部分」(つまり、誤って受信したフレーム、または受信しそこねたフレーム)を、後続するパスまたはラウンドで再び送ることを要求する。後続するパスまたはラウンドはそれぞれ、前回よりも少ない数のフレームの送信を要求する。なぜなら、前回のラウンドで否定応答確認されたフレーム(つまり、受信されなかったか、あるいは誤って受信されたフレーム)が、後続するラウンドでは再送信されるからである。
完了するための最大パスカウントまたは最大時間は、設定可能なパラメータでありうる。最大パス時間つまり最大持続時間までに、ファイルの全体を正しく受信できたわけではない複数のクライアントが存在する可能性がある。これらのクライアントはサーバにより識別される。また、サーバは、例えば、ユニキャストファイル転送プロセスを介して、残りの情報をこれらのクライアントが得ることができるようにするために、さらにアクションを起こすことができる。好ましい実施の形態では、クライアントは、「ダン」メッセージを送ることによって、ファイル全体を受信したことを示し、一方、サーバは、「ダンリスト」を送ることによって、「ダン」であるといっているクライアントを示す。もし、ある所定のイベント(例えば、所定の時間経過)の後、サーバが、いくつかのクライアントから「ダンメッセージ」を受け取っておらず、すべてのNAKがサービスされているのなら、サーバはそれらのクライアントに対してステータスリクエストメッセージを送り、さらなるデータを必要としているクライアントには、欠けているすべてのフレームを送る。依然として応答しないどのようなクライアントに対しても、例えばユニキャスト転送により、その後、サーバからそのクライアントへとファイルを送ることができる。
サーバがブロック境界(すなわち、図4ではB1、B2、B3およびB4)を通る時、個々のクライアントは、好ましくは、それぞれのブロックについて「マルチプルセレクティブリジェクト否定」応答確認(「Nak」)を送る。それぞれのブロックについてクライアントから送られてくるこれらの応答確認は、そのブロックの境界通過後、しばらくしてからサーバにおいて受信される。肯定応答確認は、暗黙のうちに示される。ある特定のブロックに対するマルチプルセレクティブリジェクト否定応答確認は、その特定のブロックにおける1個または多数のフレームが、これらのクライアントにより誤って受信されたか、あるいは、全く受信されなかったことを意味しており、何らかの理由でネットワークがそれらのフレームを伝達しなかったことを示している。よって、サーバに送られた応答確認は、誤って受信されたり、全く受信されなかったフレームがどれであるかを示している。
後続するパス(すなわち、図4に示す第1パスに続くパス)では、クライアントは、再び正しく受信されなかったブロックについての否定応答確認のみで応答する。サーバは、後続するパスで、さまざまなクライアントにより要求されたファイルの部分(フレーム)をすべてのクライアントに送るので、クライアントの多くが、それを既に第1パスで正しく受信している可能性がある。よって、それらのクライアントは、それを無視することになる。
一般に、クライアントからサーバに戻ってくるすべての情報は、サーバがそれらのフレームをクライアントに転送するのに用いる(1つ以上の)パスとは別の戻りパス上で送信されうる。しかし、ここでは、説明のために、通信リンク24(図2)または、サーバとクライアントとが通信できるようにするその他のパスは、サーバからクライアントへのリンクおよびクライアントへの戻りリンクの両方を広く意味するもの解釈されたい。
サーバは、転送およびその転送の加入者に関するさまざまな情報を保守する。好ましい実施の形態では、この情報は、データ構造またはリストのかたちでサーバにより保守される。サーバは、この情報を保守し、使用することによって、ファイル転送のステータスを記録し、決定する。
また、サーバは、すべてのクライアントからの個々のフレームに関するセレクティブリジェクトのすべてを示すフレームデータ構造も保守する。もし多数のクライアントが同一のフレームを受信しそこなったのなら、フレームデータ構造は、そのフレームが受信されなかったことを示すのみである。すなわち、フレームデータ構造は、サーバによりクライアント単位で保守されるわけではない。一般に、サーバが、受信されなかったフレームの詳細なリストを個々のクライアント単位で保守することは望ましくない。なぜなら、そのようなスキームは、特に多数(例えば、1000以上)のクライアントがマルチキャストに参加している時には、法外な量のメモリを用いることになるからである。例えば、1以上のクライアントが、ブロック1のフレーム24および25、ブロック2のフレーム1、ブロック9のいくつかのフレーム…を全く受信しなかったか、あるいは誤って受信したものとする。もしサーバにより保守されているフレームステータスが、ある特定のブロックのある特定のフレームが再送信される必要があることを示すのなら、クライアント中の少なくとも1人が、その特定のブロックを首尾よく完了したことを応答確認していないことは事実である。サーバがファイルの全体をいったん送信した後、サーバは、このフレームステータス情報を通過させ、そこにリストアップされているフレームのみを再び送信する。この操作は、すべてのクライアントが「ダンメッセージ」を送り終わり、フレームステータスリストが空になる(つまり、最大ラウンド数あるいは最大時間に到達する)まで、1パス毎に継続する。
なお、与えられたどのパスについても、もし否定応答確認が全くサーバに戻ってこないのなら、クライアントは、サーバによる次のパスの間、同じリジェクトおよび再送信リクエストメッセージを送り返すことになることには注意が必要である。このことは、もしある特定のクライアントがサーバにより受信されていないのなら、そのクライアントは、より長い時間のあいだ参加しなければならないが、そのクライアントが、残りの受信クライアントに顕著な影響を及ぼすことはないことを意味している。
サーバに格納されている情報の別の一部としては、マルチキャストグループに関する統計がある。送信が完了すると、オペレータがシステムパフォーマンスの問題および/または特定のクライアントのパフォーマンスの問題を判定する一助になるサマリー情報が送信データにのせられる。
ファイルを通した多数のパス:
いったんファイルが一回、完全に処理されると(つまり、第1パスまたは第1ラウンドが終了すると)、本発明による送信プロセスは、パスカウンタをインクリメントし、エラーのあった最初のブロックについて、サーバにあるフレームステータスリストをスキャンする。この最初のエラーブロックを発見するとただちに、サーバは、そのブロック中の受信されなかったパケットを再び送る。これらの受信されなかったパケットに対する否定応答確認は、前述したように、クライアントがブロック内のエラーを検出した時に、クライアントにより発生される。これは、第1パスとも一貫している。セレクティブリジェクト否定応答確認はすべて状態を示すものであるので、あるパスに固有ではない。ただし、それらの否定応答確認は、それぞれのパスで変化することはある。好ましい実施の形態では、マルチプルセレクティブリジェクト否定応答確認は、1個のワードの全体が1個のブロックを表し、そのワード中のそれぞれのビットが、そのブロックを構成する複数のフレームのそれぞれ異なる1つを表す、ビットマップのかたちをとる。
送信アボート:
もし、送信中に、修正不可能な欠陥に遭遇したか、あるいは、オペレータが手動でアボートしたのなら、送信アボートシーケンスが開始される。このシーケンスは、ある間隔のあいだ(例えば、送信ファイルにおいて指定された間隔のあいだ)、アボートメッセージを繰り返し送信することを必然的に伴う。レシーバは、このアボートメッセージを応答確認し、例えば、転送の潜在的続行(つまり再開)のためのコンテクストを保存するか、または、別の送信に備えてコンテクストを再び初期化するアクションを起こすことができる。ユーザが、送信アボートを初期化することを可能にする設備がある。理由コードは、一時中断のためにも、あるいは初期化のためにも設定されうる。前者の場合、送信は、その後ある時刻に続行または再開されうる。一方、後者の場合、クライアントは、そのコンテクストを再び初期化するようにリクエストされる。
完了
サーバは、クライアントから「ダンメッセージ」を受信することによって、個々のクライアントの完了を検出する。クライアントは、自分にファイルのすべてのブロックが手に入るとすぐに終了したことが分かるが、サーバが完了を確認するまでは、「ダンメッセージ」を送り続けなければならない。サーバは、あるクライアントが「ダン」であることを、そのクライアントのアドレスを「ダンリスト」に入れ、そのリストを複数のクライアントに送り出すことによって、確認する。クライアントは、自分のアドレスが「ダンリスト」にリストアップされているのを見て、転送を完了したことを知る。その後、このクライアントは、その送信ログを更新することによって、転送が上首尾に完了したことを示す。
サーバまたはクライアントからの転送をアボートする能力も設けられる。アボートパケットは、サーバおよびクライアントに対して、転送を早くにアボートする能力を与える。もしクライアントがアボートを送れば、サーバは、そのクライアントをグループから除く。もしサーバがアボートすれば、転送は、ファイルの全体を第1パスで送ってしまわなくても、再開可能である。
ステータスリクエスト:
もし、第1パスの後、サーバがクライアントからDONEもNAKも受信しなかったのなら、ステータスが分かっていないクライアントに対してクエリーが直接、送られる。これらの応答は、標準的な応答メッセージのかたちをとる。また、これらの応答は、もしリポートすべきエラーがあるのなら、それらのエラーを記述するビットマップを含むことがある。
輻輳/フロー制御
大型の「インターネット」がマルチキャスト可能になるにつれて、情報が、グループのメンバーたちに対してそれぞれ異なる送信リンクをもつことを望むマルチキャストグループは、さらによく見られるようになるであろう。これらの異なるリンクは、それぞれ異なる容量を有することができる。これら容量は、互いに大きく分散していてもよい。例えば、グループ中のあるメンバーが1Mbpsを超えるリンク容量をもつ一方で、別のメンバーが、わずか56Kbpsをもっていてもよい。一般に、これらのリンク容量に関する知識は、送信波の送り手(例えば、サーバ)には分からないであろう。よって、リンク容量を瞬時に決定し、フロー制御メカニズムを設けることによって、ネットワークのオーバーロード/輻輳を防止するとともに、データ転送プロトコルの効率を制御しないようにできるのが望ましい。
ここで説明されているデータ転送プロトコルは、ブロックの概念を含んでいる。これらのブロックはそれぞれ、何百または何千ものフレームを含みうる。クライアント(受け手)は、もしそのブロックにおいて何らかのフレームが欠けているか、あるいは誤っているのなら、ブロックの境界において、マルチプルセレクティブリジェクトNAKを送ることを強制される。フロー制御の目的から、実用的である限りにおいてできるだけ早く、受信されなかった/誤りを含む(つまり、脱落している)フレームに関する知識を得て、フロー制御の判定を下すことができるようにするのが望ましい。本発明によるデータ転送プロトコルを用いてこれを達成するためには、変更可能な、つまり可変のブロックサイズを使うのが、一つの方法である。このことは、比較的小さなブロックから始めて、ファイル転送の間にブロックのサイズを大きくしていき、クライアントの応答確認を減らすことによって、現在のスケーラビリティを維持することを必然的に伴う。本発明によるデータ転送プロトコルを用いてこれを達成するための別の好ましい方法としては、ブロックのサイズはすべて同じに(均一なブロックサイズに)するが、ブロック境界よりも前にクライアントがNAKで応答することができるように、ブロック境界が発生する前に、サーバにステータスリクエストを遅らせる方法がある。この後者の技術のほうがフレクシブルである。なぜなら、NAKは、ブロック境界のみ(前者の技術はこのケースに相当する)ではなく、いかなる時にも請求される可能性があるからである。これら2つの技術のいずれによっても、NAKは、転送の早い段階で請求される。
「可変ブロックサイズ」方法(前段落で言及した第1の技術)では、第1のブロックは、比較的小さくてもよい(例えば、100フレーム)。後続ブロックは、毎回2倍ずつ大きくなっていく。ブロックサイズは、最大のブロックサイズに到達するか、またはファイルがその終わりに達するまで、次々に倍増されていく。
「ステータスリクエスト」方法(前段落で言及した第2の技術)では、サーバは、自らが望む時点でNAKリクエストを請求する。それらの時点は、ブロック境界ではない。輻輳またはフロー制御のための好ましい実施の形態では、ステータスリクエストは、回を追うごとに長くなる間隔で送られる。
両方の方法ともに、伝送レートまたは転送レートは、本明細書に記載されているように設定される。しかし、固定された転送レートではない、セット可能な転送レートは、転送レートの上限を表す。第1のブロックの後(可変ブロックサイズ方法の場合)またはステータスリクエストが受信された後(ステータスリクエスト方法の場合)、NAKが、脱落したフレームのあるクライアントによりサーバに送られる。また、これは、これらのクライアントによりサーバに輻輳が示されることでもある。
もしNAKがあるのなら、それらが特定のリンクの瞬時の容量に関連しているという事実は、以下の方程式に基づき、輻輳を示すリンクのすべてについてリンク容量を決定するのに用いることができる。
((送られたフレーム数−否定応答確認されたフレーム数))×転送レート=リンク容量
図6の異質マルチキャストネットワークでは、リンク速度は、64Kbps〜1024Kbpsの範囲であり、リンク容量には大きな差がある。その他のトラヒックがないものとすると、もし転送レートが150Kbpsに合わせて設定されれば、クライアントAからのブロック1に対するブロックNAKは、(可変ブロックサイズ方法では)第1のブロックについて約58個のフレームが脱落していることを示すことになる。上記方程式を用いれば、瞬時のリンク速度は、63Kbpsと計算される。クライアントBからのブロック1に対するブロックNAKは、(可変ブロックサイズ方法では)第1のブロックについて約15個のフレームが脱落していることを示すことになる。再びこの方程式を用いれば、Bへのリンクの瞬時のリンク速度は、127.5Kbpsと計算される。その他のトラヒックが存在する場合、脱落するフレームの個数はより多くなるので、計算されるリンク速度はさらに低くなる結果となる。
グループ閾値パラメータは、ユーザにより設定されうる。グループ閾値は、マルチキャストグループに加入し続けることが許可されている特定のクライアントによる限界(脱落しているフレームの占めるパーセントで表される)である。もしグループ閾値が25%に設定されれば、グループ内で25%よりも高いフレーム脱落パーセンテージをもつどのクライアントも、グループの残りの者が悪影響を被らないように、アクションを起こす必要があることを意味している。図6の例では、58%のフレームが脱落しているクライアントAは、アクションを起こす必要があることになる。クライアントは、判定を下すのに十分な情報をもつことになる。なぜなら、転送レートおよびグループ閾値パラメータは、アナウンスメッセージのかたちでクライアントに送信されるからである。自分のフレーム脱落レートが閾値を超えていることを検出したクライアントは、以下のアクション中の一つを起こす。
1. グループを去り、より低速のグループに入ることをサーバからリクエストする。ここで、そのグループは、そのクライアントにおいてなされた測定に基づいて速度指定される。
2. それ以上の伝達をリクエストせずにグループを去る。このことは、このクライアントがこの送信を受信しそこなうことを意味する。
3. ステータスリクエストメッセージがサーバから受信されるまで、NAKを抑える。これにより、フレームロスの大きいクライアントから過度の再送信により停滞させることなく、グループの残りの者が終了できるようになる(このクライアントのセットに対する再送信のための転送レートは、それらの容量が小さいことを反映するように低くすることができる)。
図6の例では、2番目に高いフレーム脱落パーセンテージは、クライアントBの15%である。この値は、グループ閾値よりも低い。この数は、パフォーマンスを過度に低下させることなく、グループ全体が合わせることのできる係数を表している。クライアントBに合わせるためには、このグループのサーバ転送レートは、15%、またはそれよりも高いパーセンテージ、またはそれよりもわずかに高いパーセンテージだけ下落することになる。
可変ブロックサイズ方法のタイミングは、図8に示されている。クライアントにおける情報が、そのフレーム脱落はグループ閾値を超えていることを示すと直ちに、そのクライアントは、グループの送信に悪影響が及ぼされないように、上に列挙した3つの選択可能なアクションの中から1つを選択しなければならない。グループの転送レートの調整は、第2のブロックが送られた後おこなわれ、ブロック3のはじめから開始する。転送レートの変化は、ブロックの境界で実施され、正確なデータをブロック単位でブロックNAKから供給する。その後、ファイル転送は、ブロック3の転送に進む。ブロック3は、ちょうどブロック2がブロック1の2倍の大きさであるように、ブロック2の2倍の大きさに設定される。この後、ブロック4が続く。ブロック4は、ブロック3の2倍の大きさである。以下も、最大のブロックサイズに到達するか、ファイルがその終わりに到達するまで(それらのどちらが最初に起こっても)同様である。しかし、もしブロック3以降のグループからのNAKが、最悪のクライアントでもレート閾値パラメータ(設定可能)を超えていることを示すのなら、そのレートは、ブロック5の送信のためにさらに調整される。このレート閾値は、グループに対する転送レート調整がおこなわれる最小のフレーム脱落パーセンテージである。例えば、クライアントからの最大フレーム脱落パーセンテージが1%であるのなら、レート閾値が典型的には、1%を超える数に設定されるような調整は保証されない。
ステータスリクエスト方法では、ブロックは均一なサイズであり、ステータスリクエストは、ブロックの境界に到達する以前に、サーバにより送られてNAKをリクエストする。図9を参照すると、可変サイズブロック方法について今説明したばかりのシナリオと等価なシナリオが図示されている。ただし、ここでは(図9)では、ブロックサイズは均一である。ある例では、第1のステータスリクエストは、100個のフレームを転送した後に送られ、第2のステータスリクエストは、200個のフレームが送られた後に送られる。以下も同様である。クライアントのNAKは、可変ブロックサイズ方法と正確に同じ時刻にサーバに送り返される。しかし、ステータスリクエスト方法では、可変ブロックサイズ方法のようにNAKを受信するためにブロック境界を待つ必要はなく、いつでも望みの時刻にステータスリクエストが送られるという点で、よりフレクシブルである。
可変ブロックサイズ方法でも、ステータスリクエスト方法でも、単にグループのメンバーを削除し、それらのメンバーをハンギングのまま放置することは一般に望ましいことではない。削除されたグループメンバーは、より低い転送レートで動作する別のグループに集めることができる。より遅いこの転送レートは、グループを去ったクライアントによりおこなわれるリンク容量の計算により決定されうる。その後、このグループは、ふさわしい転送レートでセットアップされうる。そして、新しい転送が開始されうる。
フロー制御プロセスの可変ブロックサイズ方法およびステータスリクエスト方法はともに、自動化されうる。
マルチキャスト:
マルチキャストは二つの形をとりうる。すなわち、ネットワークが依然としてデータをブロードキャストグループの全体に伝達しているアプリケーション層(AL)マルチキャストと、ネットワークが、マルチキャストルータに基づいてトラヒックをルーティングしており、インターネット仕様RFC1112がクライアントに実施される、マルチキャストIPの2つである。
いずれの場合でも、マルチキャストグループは、サーバの開始の下にセットアップされる。サーバは、ユニキャスト単位でクライアントに通知を送ることによって、クライアントに対して特定のマルチキャストグループのメンバーシップを通知する。これらのマルチキャストグループは、迅速にセットアップされ、解体されうるので、マルチキャストグループをダイナミックに構成することが可能となる。例えば、マルチキャストグループは、ある特定のファイルを送信するためだけにセットアップされうる。その後、このグループは解体されうる。
ALマルチキャストでは、ネットワークは依然としてブロードキャスト単位でトラヒックを伝達しているが、グループに属していないクライアントは、それ専用ではないデータを破棄する。グループがセットアップされると、たとえデータがそのノードで破棄されないような事態が発生しても、グループの外のクライアントがそのデータをリードすることができないように、セキュリティキーを領布することもできる(なお、このことは、マルチキャストIPでも展開されうる)。また、ALマルチキャストでは、IPアドレスは、グローバルな、またはネットワークベースのブロードキャストアドレスのままである。ブロードキャストの場合と同様に、このアドレスは、リンク層プロトコルにおけるブロードキャストアドレス(例えば、ブロードキャストSMDSアドレス)にマッピングされる。マルチキャストヘッダが、このグループについて選択され、グループの識別子となる。
マルチキャストIPの場合、ネットワークは、ルータがクラスDのマルチキャストIPアドレスおよびマルチキャストルーティングをサポートする、ルータネットワークである。クライアントは、RFC1112、すなわち「IPマルチキャスティングのためのホスト拡張」をサポートする。RFC1112は、ルータテーブルのアップデートを目的として、最も近いマルチキャストルータへとその存在をホスト通知することを可能にする。
以下に、上述した本発明の機能について説明する。
再び図2を参照する。図2は、あらゆるブロードキャストまたはマルチキャストIPルータベースのネットワークを広く表しうる。本発明の目的は、ワイドエリアネットワーク(WAN)接続24を介して、サーバ20により5000以上の受信ノード22へと、小型または大型のデータファイル(サイズが2ギガバイトまで、またはそれ以上のファイル)を同時に送信可能とすることである。また、本発明は、前述したように、ローカルエリアネットワークまたはその他のタイプの通信リンク上でも作用可能である。送信媒体24は、好ましい実施の形態においてTCP/IPプロトコルスタックをサポートできれば、どのようなタイプのものでもよい。その他のプロトコルスタックもまた、本発明のための通信環境として作用可能であろう。
マルチキャストは、2つの方法によりサポートされうる。すなわち、前述したように、ALマルチキャストと、マルチキャストIPとの2つである。
クライアントに転送されるファイルは、テープを介して(例えば、図5のテープドライブ66を介して)サーバ20にロードされうるし、もしそれらのファイルが十分に小さければ、フロッピー(例えば、図5のフロッピードライブ)によってもロードされうる。また、転送されるファイルは、例えば、LANあるいはその他のネットワーク上で、ファイルのソースから、FTP(ファイル転送プロトコル)あるいはその他のユニキャスト転送メカニズムを介して、サーバ20へとロードされうる。これらのファイルは、一般に、どのようなフォーマットであってもよい。その後、データファイルが、テープまたはフロッピーから、送信サーバ20のファイルシステム内へとリードされる。なお、サーバ20が、データファイルの圧縮されていないコピーをリードするのに十分なスペースをもっていなければならないことには、留意されたい。どちらのサービスについても、データファイルは、不適格なレシーバがこのデータファイルを受信して利用することができないように、暗号化されてもよい。送信ファイルはそれぞれ、好ましくは、ユニークに識別される。その内容および発生時刻については、好ましくは、指示がある。プロセスへの入力ファイルは、2ギガバイトを超えるサイズであってもよい。また、システムは、2ギガバイトよりもはるかに大きいファイルを操作することもできる。
その後、ファイルは、サーバ20に格納され、送信の準備が整えられる。以前の送信からのデータは、再送信されることが必要である場合には、しばらくのあいだサーバ20上でいつでも利用できるようにされる必要がある。このデータにアクセスするためのメカニズムは、そのデータを待ち行列に入れておいて、いつでも再送信できるように設けられる。
効率のために、ファイルはブロックのかたちで送信される。ブロックのサイズは、通信リンク24上で転送されうる最大のパケットから導き出される(あるいは、ブロックサイズは、ユーザにより選択されてもよい)。その導出は、クライアントが、1個のブロック中のどのパケットを受信しそこねたかをサーバに示すことが必要になるという事実に基づいている。これをおこなうためのある方法(そして、一般に最も簡単な方法)としては、ビットマップを送って、ビットの設定値により、どのパケットが受信されなかったかを位置的に示す方法がある。よって、ブロックのサイズは、それ自身は1個のパケットの中に含められるビットマップのかたちで応答確認されうるパケットの個数にほぼ等しい。例えば、もしパケットサイズが256バイトであれば、1個のパケットが含むことのできる最大のビット数は、256(バイト/パケット)×8(ビット/バイト)=2048(ビット/パケット)となる。このことは、許容される最大のブロックサイズが、2048個のパケットを有するブロックであるということを意味する。
受信ノード22を10MbpsでイーサネットLANにインタフェースさせることは可能ではあるが、WANリンクは、それよりもずっと低い速度であることが多い。よって、明示的な送信データレートは、セット可能/設定可能である。
受信ノードは、それぞれ、送信の前、または送信中にリソースの問題を経験する可能性がある。受信ノードは、送信前にそのリソースについてクエリーし、データを受信するための設備をもっているかどうかを判定するようにイネーブルされる。もしそうではないのなら、これらのノードは、送信専用のスペースを再び初期化すべきであるか、あるいは、送信に参加できないことを示すべきである。そうすれば、異なるチャネルを通して、修正対策に着手可能となる。サーバが遠隔操作により利用可能なディスクのスペースを強制的に作らせることによって、ファイルの転送を実行可能とする設備を設けてもよい。
レシーバ22は、現在何を聴取しているかに気づいていなければならない。ある専用チャネルでデータグラムが受信される時、ノード22は、自らがアドレシングされているかどうかを判定しなければならない。このアプリケーションが2以上の送信サーバ20により用いられている時には、問題が発生する。受信ノード22が、ある与えられた時刻に正確に一つの送信に参加していることを保証できる方法がなければならない。UDPポートをサーバ20に専用とし、かつ暗号鍵をそのサーバに関連づけることによって、ネットワーク24上でランダムなモードタップを用いている受信ノードが、送信されたデータを解釈できる能力をもつような事態を確実に回避できる。
送信サーバ20上では、何らかの参照情報が保守されている。好ましくは、ネットワーク内のすべての可能な受信ノードのリストがある。サービス故障、問題などの場合に、情報プロバイダがクライアントを管理することを可能にするのに十分な参照情報が利用可能であれば好ましい。また、暗号化され、圧縮されたデータファイルがいつでも送信できるように保守されている送信データベースがあれば好ましい。この送信データベースは、準備されたデータとともに、ファイルの内容を識別する、例えば、70バイト以下の記述情報を含んでいる。
それぞれの送信は、好ましくは、完了ステータス指標記録と、送信中に遭遇したすべてのエラーのログとを有している。また、送信に失敗した対象であり、データを送るべき全ノード、および失敗した理由を記したリストを含むイベントファイルがあれば好ましい。
送信中のどの時点においても、オペレータは、サーバ20およびそれぞれの受信ノード22に適用している送信のステータスを問い合わせることもできる。もし、いくつかのクライアントへの通信に関する問題、あるいはその他の問題が発生すれば、警告が発せられる。もし何らかの介入が示されれば、オペレータには、修正アクションを開始することが許可される。
サービスに関する現在進行中の保守および管理について、オペレータには、レシーバ、送信グループ、送信ファイル記述子、送信パラメータおよび送信データベースのリストを保守することが許可される。バックグラウンドプロセスは、環境および年齢データの両方を保守し、もし警告を受けたオペレータにより許可されれば、ハウスキーピングパラメータにより、それを削除することになる。
以上に、本発明によるデータ送信について説明した。以下では、本発明のその他の局面について説明する。その他の局面には、「セット可能な伝送レート」、「マルチキャストグループ」、「マルチキャストピン」、「マルチキャストネットワークプローブ」、「速度グループ」および「否定応答確認収集」がある。
セット可能な伝送レート
前述したように、データ伝送レートをセットすることが可能である。以前に述べた例では、セット可能なレートが役に立つ場合を説明した。その例では、受信ノード22は、利用可能な帯域幅が10MbpsであるイーサネットLANと、そのLANを10Mbpsよりもはるかに低い速度のその他のネットワークに接続するWANリンクとにインタフェースされる。このような場合、データ伝送レートは、本発明によれば、例えば、最も低速のWANリンクの速度と一致するようにセットされることになる。
本発明によれば、どのようなファイル転送セッションが与えられたとしても、データ伝送レートは、事前にセットできる。もっと詳しく言えば、そのセッションの間にデータが送信される際の最大ビットレートは、セット可能である。好ましい実施の形態では、最大ビットレートは、キロビット/秒(Kbps)単位でビットレートを表す整数値にパラメータを設定することによってセットされる。例えば、もしこのレートパラメータが値56であるのなら、このパラメータは、最大のビットレートである56Kbpsに対応する。このレートパラメータは、ソースをデスティネーションに接続するリンクの利用可能な帯域幅を対応するいかなる値、または利用可能な帯域幅未満のレートを表す値に設定されうる。すなわち、もし利用可能な帯域幅が1Mbpsであるのなら、レートパラメータは、0から1000の間のどの値に設定されてもよい。ここで、1000Kbpsは、1Mbpsに等しい。転送レートを明示的にセットする能力は、ネットワーク全帯域幅あるいは実質的にすべての帯域幅を占有することなく、ネットワーク上のその他のアプリケーションと、(時間的に)長いファイル転送とを共存させることを可能にする。
マルチキャストグループ
「マルチキャスト」は、以上の説明では、サーバノード20が、ネットワーク24に接続されているすべてのクライアントノード22の1サブセットにデータ(例えば、ファイル)を送る場合として規定された。また、以上の説明では、マルチキャスト送信は、2つのかたちをとりうることも開示された。すなわち、「アプリケーション層(AL)マルチキャスト」と、「マルチキャストIP」の2つである。ALマルチキャストは、ネットワークがインターネット仕様RFC1112はサポートしないが、ブロードキャストはサポートする時に用いられる。もしマルチキャストIPがRFC1112およびマルチキャストIPルーティングに従ってネットワークによりサポートされるのなら、マルチキャストIPのほうが、ALマルチキャストよりも勧められる。マルチキャストIPは、グループのメンバーがマルチキャストをサポートしなければならず、ルータネットワークにおけるルータもまた、ある種のマルチキャストルーティングプロトコル(例えば、DVMRP、MOSPFあるいはPIM)をサポートしなければならない時に用いられる。ALマルチキャストとは異なり、マルチキャストIPは、マルチキャストグループのメンバーのみが送信されたデータを受信する、真のマルチキャストプロトコルである。
それぞれのファイル転送のたびに、マルチキャストグループは、前述したように、データ送信の「アナウンス/登録」局面のあいだに規定されうる。既に述べたように、サーバは、ファイル転送およびその転送に参加している加入者またはグループに関するさまざまな情報を保守する。好ましい実施の形態では、この情報は、データ構造またはリストのかたちでサーバにより保守される。サーバは、この情報を保守し、用いることによって、「データ転送」段階のあいだのファイル転送のステータスを記録し、決定する。クライアントステータス構造は、サーバにより受信されたアナウンス登録からのデータに基づく、マルチキャストグループの加入者のステータスリストを含んでいる。
マルチキャストグループ管理は、クライアントをマルチキャストグループに割り当てるプロセスである。それぞれのグループのクライアントリストを作成し、操作するタスクは、最初の事例でファイル転送を開始するアプリケーションプログラムの責任である。アプリケーションプログラムは、一般に、名前をクライアントのIPアドレスに関連づけること、名前をグループに割り当てることのような、簡単に利用できる特徴を提供する。グループ管理は、送信側の局(例えば、サーバ)のみで要求される。マルチキャストグループは、送信側の局がファイルを送信したいと望む時に指定される。このグループは、クライアントのIPアドレスリストにより識別される。ここで、1個のアドレスが、マルチキャストグループ内のそれぞれのクライアントに相当する。
マルチキャストグループには2つの選択肢がある。すなわち、ダイナミックおよびスタティックの2つである。ダイナミックマルチキャストグループの場合、転送が完了すると、グループは解体する。ダイナミックマルチキャストグループは、マルチキャストグループのクラスDアドレスを用いる「アナウンス」メッセージにより形成される。ダイナミックマルチキャストグループとは対照的に、スタティックマルチキャストグループでは、転送が完了しても、グループのメンバー全員がそのグループのメンバーのままである。スタティックマルチキャストグループは、サーバによりユニキャスト単位で形成され、および/またはコンフィギュレーションをセットアップするために通常のクラスDアドレスを用いて形成される。
マルチキャストピン
TCP/IPにおける「ピン」ユーティリティは、TCP/IPネットワーク内の2つのポイント間のコネクティビティを判定する(すなわち、2つのポインタが実際に接続されているかどうかを判定する)際には非常に有用である。TCP/IPでは、ピンパケットが所望のエンドポイントに送られると、そのエンドポイントは、アドレスを反転させ、それを送り手に送り返す。また、周回時間遅延も測定される。これは、ピンパケットが送り手から所望のエンドポイントへと移動してから、送り手に戻ってくるまでの時間の測定である。
また、あるマルチキャストグループのメンバー全員がピンパケットまたはピンリクエストに応答する、マルチキャストピンユーティリティを提供するのも望ましい。マルチキャストIP(RFC1112)をサポートするクライアントまたはホストは、ピンリクエストに対して、デスティネーションアドレスとしてのクラスDのIPアドレスで応答する。しかし、現在知られているマルチキャスト実現形態では、ピンリクエストの送り手は、そのピンリクエストに対して受信した最初の応答しか表示しない。すなわち、現在知られているマルチキャストピン技術では、ネットワークコネクティビティの測定をおこなわない。
本発明による「マルチキャストピン」という特徴によれば、ピンリクエストに対するすべてのマルチキャスト応答を表示することによって、ネットワークコネクティビティ情報をソースからグループ内の受け手へと提供し、マルチキャストグループ内のそれぞれの受け手についての周回時間遅延情報を提供する。好ましい実施の形態では、この特徴は、標準的なピンICMPメッセージを用いる。
また、本発明による一改善事項として、前述したアナウンス/登録機能を、「マルチキャストピン」という特徴の別の形態として用いることも可能である。この改善をおこなうことにより、アナウンス/登録ピンメッセージは、グループ内の受け手のアプリケーション層に至るコネクティビティおよび送り手に戻る側のコネクティビティを判定し、グループ内のそれぞれの受け手について周回時間遅延情報を判定する。
よって、この「マルチキャストピン」という特徴により、マルチキャストグループのメンバーについて、送り手がネットワークコネクティビティおよび周回遅延を判定することが可能になる。
マルチキャストネットワークプローブ
マルチキャスト(1つのものを全員ではなく、多数に送ること)データネットワークは、今まさにその実現段階に移行しようとしている。特に、マルチキャストIPは、ルータネットワークの中でも新しく、あらゆる種類(例えば、フレームリレー、SMDS、LAN、衛星、無線など)のネットワーク上でマルチキャストグループをつくるためのメカニズムを提供できる。インターネットもまた、「Mbone」(マルチキャストバックボーン)、すなわちマルチキャストIPをサポートするインターネットの一部を有している。
Mboneは、1992年の早いうちから開始され、成長を続けた結果、1995年のはじめには、インターネット中の1500を超えるサブネットがマルチキャスト可能になった。今日に至るまで、Mboneは、インターネット「ラジオ」およびその他の実験的アプリケーションとともに、PCおよびワークステーションに基づくビデオ会議およびホワイトボードマルチキャストアプリケーションをテストしてきたインターネットの研究者たちにより、実験的ネットワークとして用いられてきた。Mbone上のマルチキャストIPルーティングは、当初、マルチキャストルーティングプロトコルDVMRPを用いてワークステーションにおいて実施された。しかし、Mboneの一部は既にそのルータをアップグレードしていたので、それらは、現在、マルチキャスト可能である。今後、5、6年のうちに、インターネットは、インターネット内のルータを用いることによって、完全にマルチキャスト可能になると予想されている。
インターネット中のマルチキャスト可能な部分が増えていくにつれて、Mboneは、単なる実験用の研究ツールとしてではなく、メインストリームマルチキャストアプリケーションのために用いられるようになるであろう。これが実現されると、ツールは、その使用法を簡単にすることが要求されるであろう。
インターネットとプライベートネットワークとの間の大きな違いの一つとしては、インターネットは非常に異質なネットワークであることが挙げられる。インターネットは、ネットワークのネットワークであり、別々の組織により操作されるネットワークの別々の部分では、大きな違いがある。これに対して、多くのプライベートネットワークは、比較的均質であるようにセットアップされ、ネットワークのアーキテクチャに関しては、プライベートネットワークのオペレータが大きな制御を及ぼしている。
マルチキャストネットワーク内の多数のエンドポイントは、別々のネットワークを用いて別々のレートでリンクされる可能性が高く、ネットワーク内の輻輳は、ネットワークの別々の部分ではそれぞれ違ってくるので、マルチキャストグループ内での加入リンクの容量に関する知識を得て、その容量でのパフォーマンスをテストすることができるのが望ましい。本発明による「マルチキャストネットワークプローブ」という特徴は、Mboneあるいはその他の大型異質マルチキャストネットワークをそのトラヒックソースから調査(プローブ)し、そのトラヒックソースから個々のリンクの容量を迅速に測定することができるように設計されている。
図6を参照すると、異質マルチキャストネットワーク(例えば、インターネットのMbone部分)は、5つのメンバーA〜Eをもつマルチキャストグループを有している。ここで、グループのそれぞれのメンバーは、それぞれ異なる容量のリンク(すなわち、異なるレートのリンク)により接続されている。グループのメンバーAは、64Kbps(キロビット/秒)のリンクによりネットワークに結びつけられており、Bは128Kbpsのリンクによって、Cは256Kbpsのリンクによって、Dは512Kbpsのリンクによって、そしてEは1024Kbpsのリンクによって結びつけられている。これらのリンク接続の性格は、サーバ(すなわち、トラヒックソース)には知られていない。なぜなら、インターネットへの接続は、異なる多数の速度のリンクを介しておこなわれうるからである。
デスティネーションへの情報のマルチキャスト転送をどのようにしておこなうかを最適のかたちで決定できるように、トラヒックソースが、デスティネーションへと至るそれぞれのリンクの特性を知ることが望ましい。もしアプリケーションがビデオ会議であるのなら、64KbpsのAへの品質は受け入れられないが、残りの者は、128Kbpsで参加できると決定されうる。同様に、もしアプリケーションがファイル転送であるのなら、DおよびEのグループは、512Kbpsの転送レートで動作するグループを構成できるが、A、BおよびCからなるグループは、ネットワークの容量を超えることなく、64Kbpsで動作可能である。
本発明によれば、ネットワークをプローブすることによって、遠隔のリンク容量を決定するメカニズムは、本願明細書で記載されたシステムおよびプロトコルである。メンバーA〜Eから構成されるマルチキャストグループへのアナウンス/登録が、例えば、前セクションで記載した本発明の「マルチキャストピン」という特徴に基づいてコネクティビティを判定する(どのメンバーが実際にサーバに接続されているかを判定する)ための一手段として用いられた後、一連の小型テストファイルが、グループの個々のメンバーへとそれぞれ異なる速度で順次送られる。例えば、400個のフレームからなるテストファイルは、まず64Kbpsで送られた後、128Kbpsで送られ、次に256Kbpsで送られ、次に512Kbpsで送られ、そして最後に1024Kbpsで送られうる。クライアントの否定応答確認は、リンク上にその他のトラヒックがないものとすると、以下の表1に示すようにサーバで受信され、格納される。
表1を参照すると、速度64Kbpsでの第1のランは、グループのメンバーの誰に対しても否定応答確認(つまり、NAKsまたはNaks)はゼロという結果である。なぜなら、すべてのリンクは64Kbps以上をサポートしているからである。
第2のランは、第1のランの2倍である128Kbpsである。この第2のランでは、クライアントAは200個のNAKをもっている。つまり、全フレームの半分が失われたことを意味している。このことは、クライアントAの速度が、64Kbpsである(すなわち、((400−200)/400)×128Kbps=64Kbps)ことを意味している。クライアントB〜Eは、第2のランでは失ったフレームがないことを示している。よって、これらのクライアントのそれぞれの速度は、少なくとも128Kbpsである。
第3のランでは、転送速度は256Kbpsであり、クライアントAおよびBは、それぞれ300個および50個のフレームを失ったことを示している。よって、この第3のランから、クライアントAの速度は、64Kbps(すなわち、((400−300)/400)×256Kbps=64Kbps)であることが分かる。これは、第2のランによる測定結果を裏書きしている。また、第3のランでは、クライアントBの速度は、128Kbps(すなわち、((400−200)/400)×256Kbps=128Kbps)である。クライアントC〜Eは、第3のランではエラーがなかったことを示している。よって、これらのクライアントはそれぞれ、少なくとも256Kbpsの速度で動作している。
第4のランでは、転送速度は512Kbpsである。クライアントAは、350個のフレームを失ったことを示している。よって、((400−350)/400)×512Kbpsつまり64Kbpsと測定され、この結果はこれまでの測定と一致する。クライアントBは、300個のフレームを失ったことを示している。よって、((400−300)/400)×512Kbpsつまり128Kbpsと測定され、この結果もこれまでのランと一致する。クライアントCは、200個のフレームを失ったことを示している。よって、((400−200)/400)×512Kbpsつまり256Kbpsと測定される。
第5のランでは、転送速度は1024Kbpsである。クライアントAは、375個のフレームを失ったことを示している。よって、これまでと同様に((400−375)/400)×1024Kbpsつまり64Kbpsと測定される。クライアントBは、((400−350)/400)×1024Kbpsつまり128Kbpsと測定され、クライアントCは、((400−300)/400)×1024Kbpsつまり256Kbpsと測定される。クライアントDは、((400−200)/400)×1024Kbpsつまり512Kbpsと測定される。クライアントEには、脱落がない。このことは、その速度が少なくとも1024Kbpsであることを意味している。
よって、これら5つのランのそれぞれについて、ある与えられたリンクの容量は、以下の方程式により求められる。
((送られたフレーム数−否定応答確認数)/送られたフレーム数)×送信速度=リンク容量
このテスト技術もまた、リンク上のトラヒックを考慮に入れることになる。例えば、もしテストがおこなわれている間に物理リンクが256Kbpsであり、リンク上に128Kbpsのトラヒックがあるのなら、測定結果は、128Kbpsの容量、すなわちトラヒックが考慮される時の残りの容量となる。
これらのテストを実施するためのソフトウェアは、ソースがそれぞれのクライアントに対するリンク速度を知っているとすれば、リンクの品質をテストするのに用いることもできる。例えば、図6では、リンク速度は知ることができるので、フレームエラーレートを求めるためには、比較的長いテストパターンを用いてリンクをテストするのが望ましい。例えば、100,000フレームのテストファイルを、メンバーA〜Eから構成されるグループに64Kbpsで送ればよい。伝送レートおよびNAKは、ソースに格納され、それぞれのクライアントからのNAK数は、それぞれのリンクの品質(すなわち、フレームエラーレート)を測定することを可能にする。Aは、最も重い負荷がかけられるリンクであるので品質が最悪になり、Eは、最小の負荷がかけられるリンクであるので最高になるだろうと予測されうる。しかし、その他のファクタがそれ以外の結果をもたらすこともある。同様に、より高速のリンクにより重い負荷を及ぼすためには、速度を増加させ、過剰な負荷のかけられたリンクをグループから削除してもよい。
よって、本発明による「マルチキャストネットワークプローブ」という特徴を用いれば、たとえ個々のリンクの容量が未知であっても、個々のリンクの容量を迅速に測定することができる。また、もしリンク速度がサーバには既知であるのなら、本発明のこの特徴は、それぞれのリンクの品質を判定する(すなわち、それぞれのリンクのフレームエラーレートを求める)のに用いることができる。
本発明のこの特徴によれば、マルチキャストグループのメンバーたちのコネクティビティが、まず、前述した「アナウンス/登録」フェーズを通ることにより判定される。すなわち、最初のステップは、グループ内のどのメンバーがサーバに接続されているかを判定することである。いったん接続されているメンバーがわかれば、テストファイル転送を開始して、テストファイルをそれぞれのメンバーに送り、その結果(すなわち、個々のグループメンバーについての否定応答確認の個数)を記録するサーバにより、リンク速度または品質を求めることができる。
速度グループ
サーバを複数のクライアントにインタフェースする多種多様なリンクそれぞれの容量、速度、あるいは帯域幅(例えば、前セクションに述べた「マルチキャストネットワークプローブ」という特徴により利用可能となる)がわかれば、これらの速度のリストが、サーバにより格納されうる。その後、このリストは、リンク速度に基づいて複数のクライアントグループを生成あるいは規定するのに用いることができる。例えば、2つの速度グループがあり、その一方は、可能な最高速度が64Kbpsであるリンク(つまり、実効リンク)上でサーバに接続されているクライアントを含んでおり、他方は、可能な最高速度が1024Kbpsであるリンク(つまり、実効リンク)上でサーバに接続されているクライアントを含んでいることがある。よって、第2のグループは、第1のグループよりもはるかに高速である。特定の受け手がどの速度グループに属しているかということは、その受け手へのデータ転送に影響を及ぼす。本発明による最初のデータ転送パスのあいだ、第2の、より高速なグループ内のそれぞれの受け手には、サーバにより複数のフレームのすべてが送られるが、第1の、より低速なグループ内のそれぞれの受け手には、第2のグループに送られた16個のフレーム中の1個(1/16)が送られるにすぎない。このことは、第1のパスの後、サーバは、第2グループの受け手にはすべてのフレームを送っているが、第1のグループには、それらのフレームの全個数中の16分の1しか送っていないことを意味している。第1のグループにまだ送られていない残りのフレーム(つまり、全フレーム中の15/16)は、その後、後続するパスで第1グループの受け手に送られる。要点は、いったん、サーバにグループの各メンバーの容量がわかれば、サーバは、データの転送を調整することによって、より大容量のリンクを活用し、そのグループへのデータの転送を遅くすることがないという点にある。
否定応答確認収集
前述したように、本発明によりファイルを受信できるクライアントの数は、何千にも及ぶことがある。よって、サーバにより保守されるクライアントステータスリストのエントリ数も、何千にもなることがある。本発明によるファイル転送は、さらにその数量を高めることができる。例えば、何千もの受け手/クライアントの代わりに、何百万もの受け手/クライアントにファイルを送るように、スケーリングすることができる。好ましい実施の形態では、これらのクライアントすなわち受け手は、複数のクライアントから構成されるマルチキャストグループのメンバーである。
このスケーリングに関する特徴は、グループ内のクライアントの数があまりにも大きくなった時に発生する可能性のある問題を避ける一助になる。この問題は、多数のクライアントが否定応答確認をファイルの送り手(例えば、サーバ)に送り返し、送り手が程良い長さの時間の間に処理可能な限度を超えている個数の否定応答確認で、送り手を事実上、閉塞している時に起こる。これにより、送り手のパフォーマンスは低下する。なぜなら、送り手は、否定応答確認を受信し、処理するのに膨大な量の時間を費やす必要があり、その他の義務に従事することができないからである。このことが、送り手に戻るリンクを停滞させ、これらの否定応答確認のトラヒックにより渋滞することになる。
この問題に対する解決策は、「否定応答確認の収集」である。これにより、ファイルの送り手/サーバ20に渋滞を起こすことなく、クライアント/受け手の数を数千から数百万へと飛躍的に増やすことが逆に可能となる。この収集という特徴によれば、いくつかのクライアントあるいはその他のネットワークノードが「複製点」として作用し、他のクライアントからのブロック否定応答確認を収集する。好ましい実施の形態では、これらの複製点(RP)はルータである。図7を参照すると、米国全体にわたって5つのRPが示されている。また、それぞれのRPから発している線は、そのRPに接続されている1以上のクライアントを表している。例えば、RP100は、1200のクライアントを傘下に入れており、RP102は、900のクライアントを傘下に入れており、RP104は、100のクライアントを傘下に入れており、RP106は、800のクライアントを傘下に入れており、RP108は、500のクライアントを傘下に入れている。サーバすなわちソース20は、米国内の別の場所に位置している。RP100は、それに加入しているか、または接続されている(例えば、1200の)クライアントからのブロック否定応答確認のすべてを収集する。その他のRP102、104、106および108も、それらに加入しているクライアントに対して同じことをする。それぞれのRPについて、それに加入しているクライアントのすべてからすべてのブロック否定応答確認を収集した後、そのRPがサーバ20、またはサーバ20へと向かうチェーンの別のRPへとただ1つの応答確認メッセージを送る。その1個のメッセージが、そのRPに加入しているすべてのクライアントからのブロック否定応答確認のすべてを含んでいる。サーバ20が、最終的にこれらの収集されたブロック否定応答確認メッセージを複数のRPから受信すると、サーバは、次のパスで否定応答確認されたフレームのすべてを送り返す。これらのRPは、これらの後続パスフレームを受信し、それらのフレームを、チェーン内の適切なクライアントまたはその他のRPへと送り出す責任をもつ。それらのクライアントまたはRPは、その後、それらのフレームをチェーン内の適切なクライアントまたはその他のRPへと送り出す。以下、この操作が繰り返される。
ここに記載されたことに関する変更、改変およびその他の実現形態は、クレームされている本発明の精神および範囲から離れることなく、当業者には着想可能であろう。したがって、本発明は、以上に記した例示的な説明によってではなく、以下の請求の範囲によって規定されるべきである。
Claims (12)
- 通信リンク上でデータを送信する方法であって、
(A)該データを複数のブロックに区分するステップであって、該複数のブロックのそれぞれが複数のパケットを含み、該複数のパケットのそれぞれが1つ以上のビットを含み、該区分するステップがブロックごとのパケットの数を、パケットごとに利用できるビットの最大数とほぼ同等に設定することを含む、ステップと、
(B)該複数のブロックのそれぞれにおける該複数のパケットのすべてを、ブロックごとに、1以上の受け手に送信するステップと、
(C)送信の間に、該送信されたブロック内の再送信を要求するパケットの指示を、該1以上の受け手のうちの1以上から受信するステップであって、それぞれの指示は該1以上の受け手ごとに関連付けられており、該パケットの1つに含まれるビットマップを含む指示であって、該ビットマップが、該パケット内で利用できるビットの最大数にほぼ同等の複数のビットを含み、該ビットマップの各ビットが、該送信されるブロック内の該パケットの異なる1つを表す、ステップと、
(D)該ステップ(B)、(C)および(D)を繰り返すことにより、再送信を必要とするパケットのみを再送信するステップと、
を含む方法。 - 前記ステップ(D)が、前記ステップ(B)、(C)および(D)を所定の回数繰り返すことを含む、請求項1に記載の方法。
- 前記ステップ(D)が、前記ステップ(B)、(C)および(D)を所定の量の時間繰り返すことを含む、請求項1に記載の方法。
- 前記通信リンクがインターネットを含む、請求項1に記載の方法。
- 前記通信リンクがセルラーネットワークを含む、請求項1に記載の方法。
- 前記ステップ(B)が前記複数のパケットを所定の速度で送信することをさらに含む、請求項1に記載の方法。
- 送信を受け取っていない受信者がいる場合、どの受信者であるかを判別し、その後、該判別結果に基づき前記所定の速度を調節して、受信者のパケット受信を増大させるステップをさらに含む、請求項6に記載の方法。
- 前記データは、1つ以上のコンピュータファイルを含んでおり、前記区分するステップは、該1つ以上のコンピュータファイルを壊して前記複数のブロックにする、請求項1に記載の方法。
- 前記ステップ(C)において受信された指示は、前記1以上の受け手のうち特定の受け手が前記パケットのうち1つ以上のパケットの再送信を要求するという否定応答確認を含む、請求項1に記載の方法。
- 前記通信リンクは無線リンクを含み、前記ステップ(B)、(C)および(D)は、該無線リンクを介した送信を含む、請求項1に記載の方法。
- 前記区分するステップは、ブロックごとのパケット数をパケットごとに利用可能な最大ビット数に等しくなるように設定する、請求項1に記載の方法。
- 前記区分するステップは、ブロックごとのパケット数をパケットごとに利用可能な最大ビット数にほぼ等しくなるが、該最大ビット数未満となるように設定する、請求項1に記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08375493 US5553083B1 (en) | 1995-01-19 | 1995-01-19 | Method for quickly and reliably transmitting frames of data over communications links |
US08/375,493 | 1995-01-19 | ||
PCT/US1996/000634 WO1996022641A2 (en) | 1995-01-19 | 1996-01-16 | Network multicasting method using arq techniques for preventing unnecessary retransmissions |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10512726A JPH10512726A (ja) | 1998-12-02 |
JP3690809B2 true JP3690809B2 (ja) | 2005-08-31 |
Family
ID=23481110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP52237396A Expired - Lifetime JP3690809B2 (ja) | 1995-01-19 | 1996-01-16 | 不要な再送信を防止するarq技術を用いたネットワークマルチキャスティング方法 |
Country Status (9)
Country | Link |
---|---|
US (3) | US5553083B1 (ja) |
EP (2) | EP0804838B1 (ja) |
JP (1) | JP3690809B2 (ja) |
AT (2) | ATE209411T1 (ja) |
AU (1) | AU5295096A (ja) |
DE (2) | DE69636201T2 (ja) |
DK (1) | DK0804838T3 (ja) |
ES (1) | ES2163011T3 (ja) |
WO (1) | WO1996022641A2 (ja) |
Families Citing this family (446)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4111131C2 (de) * | 1991-04-06 | 2001-08-23 | Inst Rundfunktechnik Gmbh | Verfahren zum Übertragen digitalisierter Tonsignale |
US6678864B1 (en) * | 1992-02-25 | 2004-01-13 | Irving Tsai | Method and apparatus for linking designated portions of a received document image with an electronic address |
US6193520B1 (en) * | 1993-05-10 | 2001-02-27 | Yugengaisha Adachi International | Interactive communication system for communicating video game and karaoke software |
JPH0816446A (ja) * | 1994-07-05 | 1996-01-19 | Fujitsu Ltd | クライアント/サーバ・システム |
US6292181B1 (en) * | 1994-09-02 | 2001-09-18 | Nec Corporation | Structure and method for controlling a host computer using a remote hand-held interface device |
US6453438B1 (en) | 1995-01-19 | 2002-09-17 | The Fantastic Corporation | System and method for automatically rescheduling a data transmission to members of a group |
US5553083B1 (en) * | 1995-01-19 | 2000-05-16 | Starburst Comm Corp | Method for quickly and reliably transmitting frames of data over communications links |
US6873627B1 (en) | 1995-01-19 | 2005-03-29 | The Fantastic Corporation | System and method for sending packets over a computer network |
US6625652B1 (en) | 1995-01-19 | 2003-09-23 | The Fantastic Corporation | System and method for host list pruning |
TW347616B (en) | 1995-03-31 | 1998-12-11 | Qualcomm Inc | Method and apparatus for performing fast power control in a mobile communication system a method and apparatus for controlling transmission power in a mobile communication system is disclosed. |
US6977967B1 (en) | 1995-03-31 | 2005-12-20 | Qualcomm Incorporated | Method and apparatus for performing fast power control in a mobile communication system |
US6700958B2 (en) * | 1995-04-10 | 2004-03-02 | Starguide Digital Networks, Inc. | Method and apparatus for transmitting coded audio signals through a transmission channel with limited bandwidth |
CA2229578C (en) * | 1995-08-16 | 2003-02-11 | Starguide Digital Networks, Inc. | Dynamic allocation of bandwidth for transmission of audio signals and a video signal |
EP0847638A4 (en) * | 1995-09-01 | 2002-08-21 | Starguide Digital Networks Inc | DEVICE FOR GENERATING AND DISTRIBUTING AN AUDIO FILE |
JP4160642B2 (ja) * | 1995-09-08 | 2008-10-01 | 株式会社日立製作所 | ネットワークデータ転送方法 |
US6470391B2 (en) * | 1995-09-08 | 2002-10-22 | Hitachi, Ltd. | Method for transmitting data via a network in a form of divided sub-packets |
JPH09160858A (ja) * | 1995-12-08 | 1997-06-20 | Nippon Telegr & Teleph Corp <Ntt> | データ再送方法及びサーバ |
GB9603582D0 (en) | 1996-02-20 | 1996-04-17 | Hewlett Packard Co | Method of accessing service resource items that are for use in a telecommunications system |
KR970055857A (ko) * | 1995-12-30 | 1997-07-31 | 김광호 | 디지탈 셀룰라 시스템에서 기지국시스템의 로딩방법 |
JP3000913B2 (ja) * | 1996-02-02 | 2000-01-17 | 富士ゼロックス株式会社 | デ−タ伝送装置および方法 |
JP2897711B2 (ja) * | 1996-02-05 | 1999-05-31 | 日本電気株式会社 | 伝送制御システム |
US6182109B1 (en) * | 1996-03-08 | 2001-01-30 | International Business Machines Corporation | Dynamic execution unit management for high performance user level network server system |
US6343313B1 (en) * | 1996-03-26 | 2002-01-29 | Pixion, Inc. | Computer conferencing system with real-time multipoint, multi-speed, multi-stream scalability |
US6154445A (en) | 1996-04-18 | 2000-11-28 | Bell Atlantic Network Services, Inc. | Telephony communication via varied redundant networks |
US6069890A (en) | 1996-06-26 | 2000-05-30 | Bell Atlantic Network Services, Inc. | Internet telephone service |
US7266686B1 (en) | 1996-05-09 | 2007-09-04 | Two-Way Media Llc | Multicasting method and apparatus |
KR100228297B1 (ko) * | 1996-05-10 | 1999-11-01 | 윤종용 | 디지탈 셀룰라시스템의 기지국에서 로딩에러 검출방법 |
JP3159055B2 (ja) * | 1996-05-16 | 2001-04-23 | ヤマハ株式会社 | 通信システム |
US5898780A (en) * | 1996-05-21 | 1999-04-27 | Gric Communications, Inc. | Method and apparatus for authorizing remote internet access |
US8079953B2 (en) * | 1996-06-17 | 2011-12-20 | Cybernet Systems Corporation | General-purpose medical instrumentation |
GB2357941B (en) * | 1996-07-31 | 2001-08-22 | Inmarsat Ltd | Method and apparatus for transmitting data |
US5928330A (en) * | 1996-09-06 | 1999-07-27 | Motorola, Inc. | System, device, and method for streaming a multimedia file |
US6094671A (en) * | 1996-10-09 | 2000-07-25 | Starguide Digital Networks, Inc. | Aggregate information production and display system |
US5905871A (en) * | 1996-10-10 | 1999-05-18 | Lucent Technologies Inc. | Method of multicasting |
US6101180A (en) | 1996-11-12 | 2000-08-08 | Starguide Digital Networks, Inc. | High bandwidth broadcast system having localized multicast access to broadcast content |
JP3605242B2 (ja) * | 1996-11-12 | 2004-12-22 | 富士通株式会社 | データ送信装置、データ受信装置、およびデータファイル記憶媒体 |
US6161207A (en) * | 1996-11-15 | 2000-12-12 | Motorola, Inc. | Communications unit and method of communicating having efficient packet acknowledgement |
US6078582A (en) | 1996-12-18 | 2000-06-20 | Bell Atlantic Network Services, Inc. | Internet long distance telephone service |
US6061722A (en) * | 1996-12-23 | 2000-05-09 | T E Network, Inc. | Assessing network performance without interference with normal network operations |
JP3507307B2 (ja) * | 1996-12-27 | 2004-03-15 | キヤノン株式会社 | 情報処理装置およびネットワークプリントシステムおよびその制御方法およびプログラムが格納された記憶媒体 |
JP3545154B2 (ja) | 1997-01-29 | 2004-07-21 | 三菱電機株式会社 | データ配布方法およびデータ配布装置 |
US6963923B1 (en) * | 1997-02-10 | 2005-11-08 | International Business Machines Corporation | Method for file transfer restarts using standard internet protocol |
DE69838043T2 (de) * | 1997-02-10 | 2008-03-20 | Motorola, Inc., Schaumburg | Verfahren und Vorrichtung zur Suche von Fehlnachrichten in einem Radiokommunikatonssystem |
US6067567A (en) * | 1997-02-20 | 2000-05-23 | International Business Machines Corporation | Message distribution capability which uses distribution nodes to collect acknowledgements for a primary node |
US6990069B1 (en) | 1997-02-24 | 2006-01-24 | At&T Corp. | System and method for improving transport protocol performance in communication networks having lossy links |
US5974028A (en) * | 1997-02-24 | 1999-10-26 | At&T Corp. | System and method for improving transport protocol performance in communication networks having lossy links |
US6049892C1 (en) * | 1997-02-24 | 2002-06-04 | Ethos Software Corp | Process and apparatus for downloading data from a server computer to a client computer |
US6006267A (en) * | 1997-03-06 | 1999-12-21 | International Business Machines Corp. | Method and system for connecting network hosts having different communication protocols |
US6137869A (en) | 1997-09-16 | 2000-10-24 | Bell Atlantic Network Services, Inc. | Network session management |
US6104711A (en) | 1997-03-06 | 2000-08-15 | Bell Atlantic Network Services, Inc. | Enhanced internet domain name server |
US6574216B1 (en) * | 1997-03-11 | 2003-06-03 | Verizon Services Corp. | Packet data network voice call quality monitoring |
US6075796A (en) | 1997-03-17 | 2000-06-13 | At&T | Methods and apparatus for providing improved quality of packet transmission in applications such as internet telephony |
US6870827B1 (en) | 1997-03-19 | 2005-03-22 | Verizon Services Corp. | Voice call alternative routing through PSTN and internet networks |
JP2001521716A (ja) * | 1997-04-23 | 2001-11-06 | モトローラ・インコーポレイテッド | マルチキャスト・ネットワークにおいてマルチキャスト・グループ・メンバシップを管理するためのシステム,デバイスおよび方法 |
US6014688A (en) | 1997-04-25 | 2000-01-11 | Postx Corporation | E-mail program capable of transmitting, opening and presenting a container having digital content using embedded executable software |
US6407752B1 (en) | 1997-04-29 | 2002-06-18 | International Business Machines Corporation | Method and system for a user interface for remote FTP hosts |
JP3498887B2 (ja) | 1997-04-30 | 2004-02-23 | ソニー株式会社 | 送信装置および送信方法、並びに受信装置および受信方法 |
EP0876023A1 (en) * | 1997-04-30 | 1998-11-04 | Sony Corporation | Transmitter and transmitting method, receiver and receiving method, and transceiver and transmitting/receiving method |
US5931915A (en) * | 1997-05-13 | 1999-08-03 | International Business Machines Corporation | Method for processing early arrival messages within a multinode asynchronous data communications system |
US6061097A (en) | 1997-05-22 | 2000-05-09 | United Video Properties, Inc. | Interactive television program guide with selectable non-program options |
US6108706A (en) * | 1997-06-09 | 2000-08-22 | Microsoft Corporation | Transmission announcement system and method for announcing upcoming data transmissions over a broadcast network |
US6014710A (en) * | 1997-06-30 | 2000-01-11 | Sun Microsystems, Inc. | System and method for message transmission between network nodes using remote wires |
JPH1168873A (ja) * | 1997-08-08 | 1999-03-09 | Nec Corp | データ通信方法及びデータ通信システム |
US6553404B2 (en) * | 1997-08-08 | 2003-04-22 | Prn Corporation | Digital system |
US6385647B1 (en) * | 1997-08-18 | 2002-05-07 | Mci Communications Corporations | System for selectively routing data via either a network that supports Internet protocol or via satellite transmission network based on size of the data |
DE19741870A1 (de) * | 1997-09-23 | 1999-03-25 | Cit Alcatel | Verfahren zum Verteilen von Datenpaketen einer Betriebssoftware |
US6061733A (en) * | 1997-10-16 | 2000-05-09 | International Business Machines Corp. | Method and apparatus for improving internet download integrity via client/server dynamic file sizes |
US7301944B1 (en) | 1997-10-24 | 2007-11-27 | Tranz-Send Broadcasting Network, Inc. | Media file distribution with adaptive transmission protocols |
US6185623B1 (en) * | 1997-11-07 | 2001-02-06 | International Business Machines Corporation | Method and system for trivial file transfer protocol (TFTP) subnet broadcast |
EP0920154B1 (de) * | 1997-11-24 | 2004-11-03 | STMicroelectronics GmbH | Verfahren und Schaltungsanordnung zur selektiven digitalen seriellen Übertragung |
US6038491A (en) * | 1997-11-26 | 2000-03-14 | Mars, Incorporated | Monitoring and reporting system using cellular carriers |
US6741869B1 (en) * | 1997-12-12 | 2004-05-25 | International Business Machines Corporation | Radio-like appliance for receiving information from the internet |
DE69840915D1 (de) * | 1997-12-15 | 2009-07-30 | Thomson Licensing | Architektur für ein Stromleitungskommunikationsprotokoll |
BR9906817A (pt) * | 1998-01-09 | 2000-11-28 | Abb Power T & D Co | a qual suporta um protocolo de controle de terminal/protocolo de internet (tcp/ip). a rede de computação da empresa (50) compreende programas aplicativos (80) através dos quais ordens de trabalho podem ser atribuídas e gerenciadas, várias máquinas servidoras contendo dados relacionados às ordens de trabalho, uma rede de área local (lan) conectando as máquinas servidoras, e uma porta para a rede sem fio tcp/ip. uma unidade de campo móvel (52) compreende um dispositivo de computação e um modem para comunicação pela rede sem fio (54) para o sistema computacional de empresa (50). uma unidade de campo móvel |
US6151357A (en) * | 1998-01-16 | 2000-11-21 | Aspect Communications Corporation | Method and apparatus for displaying a visual indication of a transmission status |
US7051003B1 (en) | 1998-02-26 | 2006-05-23 | Atabok Japan, Inc. | Method and apparatus for delivering electronic data through a proxy server |
US7194757B1 (en) * | 1998-03-06 | 2007-03-20 | Starguide Digital Network, Inc. | Method and apparatus for push and pull distribution of multimedia |
US6085251A (en) * | 1998-04-02 | 2000-07-04 | The United States Of America As Represented By The Secretary Of The Air Force | Implementing a parallel file transfer protocol |
US8284774B2 (en) * | 1998-04-03 | 2012-10-09 | Megawave Audio Llc | Ethernet digital storage (EDS) card and satellite transmission system |
US6160797A (en) * | 1998-04-03 | 2000-12-12 | Starguide Digital Networks, Inc. | Satellite receiver/router, system, and method of use |
US7545816B1 (en) * | 1998-04-29 | 2009-06-09 | Ncr Corporation | Transaction processing systems maintenance |
US6167444A (en) * | 1998-05-08 | 2000-12-26 | International Business Machines Corporation | Method and system for exchanging routing information |
US6182084B1 (en) | 1998-05-26 | 2001-01-30 | Williams Communications, Inc. | Method and apparatus of data comparison for statistical information content creation |
US6078954A (en) * | 1998-05-26 | 2000-06-20 | Williams Communications, Inc. | Server directed multicast communication method and system |
US6615383B1 (en) | 1998-05-29 | 2003-09-02 | Sun Microsystems, Inc. | System and method for message transmission between network nodes connected by parallel links |
US20070078978A1 (en) * | 1998-06-01 | 2007-04-05 | Sri International | Method and apparatus for updating information in a low-bandwidth client/server object-oriented system |
JP4080599B2 (ja) * | 1998-06-17 | 2008-04-23 | 富士通株式会社 | 通信制御装置およびマルチキャスト対応lanに適用される通信制御方法 |
US6212240B1 (en) * | 1998-06-24 | 2001-04-03 | Motorola, Inc. | Method and apparatus for conveying data between communication devices |
US6381215B1 (en) * | 1998-06-29 | 2002-04-30 | Microsoft Corporation | Method and computer program product for efficiently and reliably sending small data messages from a sending system to a large number of receiving systems |
US6266334B1 (en) * | 1998-07-20 | 2001-07-24 | Zayante, Inc. | Method for optimizing acknowledge packet rate |
US6515994B1 (en) * | 1998-07-30 | 2003-02-04 | Lucent Technologies Inc. | Method of communication in a communications network and apparatus therefor |
US6289012B1 (en) | 1998-08-03 | 2001-09-11 | Instanton Corporation | High concurrency data download apparatus and method |
US6621799B1 (en) * | 1998-10-05 | 2003-09-16 | Enterasys Networks, Inc. | Semi-reliable data transport |
KR100418875B1 (ko) * | 1998-10-10 | 2004-04-17 | 엘지전자 주식회사 | 영상데이터재전송방법 |
US6519636B2 (en) * | 1998-10-28 | 2003-02-11 | International Business Machines Corporation | Efficient classification, manipulation, and control of network transmissions by associating network flows with rule based functions |
US6373842B1 (en) * | 1998-11-19 | 2002-04-16 | Nortel Networks Limited | Unidirectional streaming services in wireless systems |
FI982530A (fi) | 1998-11-23 | 2000-05-24 | Nokia Multimedia Network Terminals Oy | Menetelmä ja järjestelmä tiedonsiirtokapasiteetin varaamiseksi |
US6452935B1 (en) * | 1998-11-25 | 2002-09-17 | Sony Corporation | Stream allocation in home networks |
US6272469B1 (en) * | 1998-11-25 | 2001-08-07 | Ge Medical Systems Global Technology Company, Llc | Imaging system protocol handling method and apparatus |
US7151770B1 (en) | 1998-11-27 | 2006-12-19 | British Telecommunications Public Limited Company | Communications network |
WO2000033502A1 (en) * | 1998-11-27 | 2000-06-08 | Telefonaktiebolaget Lm Ericsson (Publ) | Bandwidth efficient acknowledgement/negative acknowledegment |
US6367045B1 (en) | 1999-07-01 | 2002-04-02 | Telefonaktiebolaget Lm Ericsson (Publ) | Bandwidth efficient acknowledgment/negative acknowledgment in a communication system using automatic repeat request (ARQ) |
CA2352200C (en) * | 1998-11-27 | 2007-10-16 | British Telecommunications Public Limited Company | Communications network |
DE69927339T2 (de) | 1998-11-30 | 2006-06-22 | Matsushita Electric Industrial Co., Ltd., Kadoma | Datenübertragungverfahren |
US6405259B1 (en) * | 1998-12-08 | 2002-06-11 | International Business Machines Corporation | Data processing system and method for transmission of a network packet specifying a group identifier identifying a selected plurality of clients |
US20010011305A1 (en) * | 1999-02-22 | 2001-08-02 | Keith R. Barker | File transmission acknowledgement system and method |
US7106689B1 (en) * | 1999-03-02 | 2006-09-12 | Matsushita Electric Industrial Co., Ltd. | OFDM transmission/reception apparatus |
FI106760B (fi) | 1999-03-03 | 2001-03-30 | Nokia Oyj | Menetelmä ja laite tiedonsiirtopakettien uudelleenlähettämiseksi |
US7102998B1 (en) * | 1999-03-22 | 2006-09-05 | Lucent Technologies Inc. | Scaleable congestion control method for multicast communications over a data network |
US6728713B1 (en) | 1999-03-30 | 2004-04-27 | Tivo, Inc. | Distributed database management system |
US7024627B2 (en) * | 2000-07-19 | 2006-04-04 | Verizon Corporate Services Group Inc. | System and method for providing a graphical representation of a frame inside a central office of a telecommunications system |
US6269080B1 (en) * | 1999-04-13 | 2001-07-31 | Glenayre Electronics, Inc. | Method of multicast file distribution and synchronization |
WO2000064111A1 (en) * | 1999-04-16 | 2000-10-26 | Unifree, L.L.C. | Media file distribution with adaptive transmission protocols |
US6418473B1 (en) * | 1999-05-20 | 2002-07-09 | Nortel Networks Limited | Multimedia clent and server |
US7318102B1 (en) | 1999-05-24 | 2008-01-08 | Hewlett-Packard Development Company, L.P. | Reliable datagram |
WO2000072169A1 (en) * | 1999-05-24 | 2000-11-30 | Hewlett-Packard Company | Congestion management in distributed computer system |
WO2000072558A1 (en) * | 1999-05-26 | 2000-11-30 | Walter Jay Weingarten | Transparent systems for communication over computer networks |
US6507582B1 (en) * | 1999-05-27 | 2003-01-14 | Qualcomm Incorporated | Radio link protocol enhancements for dynamic capacity wireless data channels |
US7197144B1 (en) | 1999-06-08 | 2007-03-27 | Ethos Technologies, Inc. | Method and apparatus to authenticate a user's system to prevent unauthorized use of software products distributed to users |
US6625773B1 (en) * | 1999-06-09 | 2003-09-23 | International Business Machines Corporation | System for multicast communications in packet switched networks |
US7296091B1 (en) | 1999-06-18 | 2007-11-13 | The Trustees Of Columbia University In The City Of New York | System and method for receiving over a network a broadcast from a broadcast source |
AU6337300A (en) * | 1999-06-22 | 2001-01-09 | World Multicast.Com, Inc. | Self implementing multicast level escalation |
US6870843B1 (en) | 1999-06-22 | 2005-03-22 | World Multicast.Com, Inc. | Self implementing multicast level escalation |
JP3289706B2 (ja) * | 1999-06-23 | 2002-06-10 | 日本電気株式会社 | 送受信回路及び送受信方法並びに記録媒体 |
JP2001016233A (ja) * | 1999-06-28 | 2001-01-19 | Oki Electric Ind Co Ltd | データ通信方法 |
US6581175B1 (en) * | 1999-06-29 | 2003-06-17 | Nortel Networks Limited | Apparatus and method of requesting retransmission of a message across a network |
GB9915593D0 (en) * | 1999-07-02 | 1999-09-01 | Nokia Telecommunications Oy | Data acknowledgement |
US7085273B1 (en) * | 1999-07-08 | 2006-08-01 | Lucent Technologies Inc. | Sender-initiated recovery algorithm (SIRA) for the layer 2 tunneling protocol (L2TP) |
KR100424654B1 (ko) | 1999-08-02 | 2004-03-24 | 삼성전자주식회사 | 이동 통신시스템에서 라디오링크프로토콜에 따른 데이터 재전송 장치 및 방법 |
US6587434B1 (en) * | 1999-08-10 | 2003-07-01 | Cirrus Logic, Inc | TCP/IP communications protocol |
US6859834B1 (en) * | 1999-08-13 | 2005-02-22 | Sun Microsystems, Inc. | System and method for enabling application server request failover |
AU6643100A (en) * | 1999-08-16 | 2001-03-13 | Orblynx, Inc. | Internet caching system |
US6526434B1 (en) * | 1999-08-24 | 2003-02-25 | International Business Machines Corporation | System and method for efficient transfer of data blocks from client to server |
US6789130B1 (en) * | 1999-08-26 | 2004-09-07 | International Business Machines Corporation | Automatic rate adaptation system in a local area network |
JP3636947B2 (ja) * | 1999-08-31 | 2005-04-06 | 株式会社日立製作所 | 情報サービスシステム、サービス利用クライアント及びサービス規制方法 |
US7313627B1 (en) | 1999-09-30 | 2007-12-25 | Data Expedition, Inc. | Flow control method and apparatus |
US7158479B1 (en) * | 1999-09-30 | 2007-01-02 | Data Expedition, Inc. | Method and apparatus for non contiguous sliding window |
US7404003B1 (en) * | 1999-09-30 | 2008-07-22 | Data Expedition, Inc. | Method and apparatus for client side state management |
US6771700B1 (en) * | 1999-10-09 | 2004-08-03 | Qualcomm Incorporated | Method and apparatus for minimizing total transmission energy in a communication system employing retransmission of frame received in error |
US9066113B1 (en) | 1999-10-19 | 2015-06-23 | International Business Machines Corporation | Method for ensuring reliable playout in a DMD system |
US20030182567A1 (en) | 1999-10-20 | 2003-09-25 | Tivo Inc. | Client-side multimedia content targeting system |
US6629284B1 (en) * | 1999-10-28 | 2003-09-30 | Koninklijke Philips Electronics N.V. | System and method for supervised downloading of broadcast data |
US6871203B1 (en) * | 1999-10-29 | 2005-03-22 | International Business Machines Corporation | Data processing system |
US6700893B1 (en) | 1999-11-15 | 2004-03-02 | Koninklijke Philips Electronics N.V. | System and method for controlling the delay budget of a decoder buffer in a streaming data receiver |
US6757736B1 (en) * | 1999-11-30 | 2004-06-29 | International Business Machines Corporation | Bandwidth optimizing adaptive file distribution |
US6674994B1 (en) | 1999-12-01 | 2004-01-06 | Panamsat Corporation | Pickup and delivery of data files |
US6564064B1 (en) * | 1999-12-01 | 2003-05-13 | Trimble Navigation Limited | Cellular telephone using pseudolites for determining location |
FR2802735B1 (fr) * | 1999-12-20 | 2002-03-29 | Canon Kk | Procede et dispositif de codage, procede et dispositif de decodage, et systemes les mettant en oeuvre |
KR100394827B1 (ko) * | 1999-12-22 | 2003-08-21 | 엘지전자 주식회사 | 이동통신교환기의 프로세서 재시동을 위한 프로그램 및데이터 적재방법 |
US6587438B1 (en) | 1999-12-22 | 2003-07-01 | Resonate Inc. | World-wide-web server that finds optimal path by sending multiple syn+ack packets to a single client |
US6738819B1 (en) * | 1999-12-27 | 2004-05-18 | Nortel Networks Limited | Dynamic admission control for IP networks |
FR2809839A1 (fr) * | 1999-12-30 | 2001-12-07 | Thomson Multimedia Sa | Procede de telechargement de donnees procedees par des signaux d'annonce |
US6574668B1 (en) * | 2000-01-25 | 2003-06-03 | Cirrus Logic, Inc. | Retransmission scheme in wireless computer networks |
US6996100B1 (en) | 2000-02-03 | 2006-02-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system for medium access on a radio channel |
WO2001067673A2 (en) * | 2000-03-03 | 2001-09-13 | Sri International | Method and apparatus for updating information in a low-bandwidth client/server object-oriented system |
US6831912B1 (en) * | 2000-03-09 | 2004-12-14 | Raytheon Company | Effective protocol for high-rate, long-latency, asymmetric, and bit-error prone data links |
GB0006096D0 (en) * | 2000-03-15 | 2000-05-03 | Pace Micro Tech Plc | Improvements to control system for network servers |
US7284064B1 (en) * | 2000-03-21 | 2007-10-16 | Intel Corporation | Method and apparatus to determine broadcast content and scheduling in a broadcast system |
JP2001273122A (ja) * | 2000-03-23 | 2001-10-05 | Hitachi Ltd | 並列計算システムのプログラムインストール方法及び装置 |
US6748447B1 (en) * | 2000-04-07 | 2004-06-08 | Network Appliance, Inc. | Method and apparatus for scalable distribution of information in a distributed network |
US6993587B1 (en) | 2000-04-07 | 2006-01-31 | Network Appliance Inc. | Method and apparatus for election of group leaders in a distributed network |
US6718361B1 (en) | 2000-04-07 | 2004-04-06 | Network Appliance Inc. | Method and apparatus for reliable and scalable distribution of data files in distributed networks |
US6745360B1 (en) * | 2000-04-13 | 2004-06-01 | Microsoft Corporation | Method and system for controlling the rate of acknowledgment of communication packets |
US6850488B1 (en) * | 2000-04-14 | 2005-02-01 | Sun Microsystems, Inc. | Method and apparatus for facilitating efficient flow control for multicast transmissions |
US6732182B1 (en) * | 2000-05-17 | 2004-05-04 | Worldcom, Inc. | Method for generating packet loss report by a data coordinator in a multicast data transmission network utilizing a group shortest path tree |
US6529525B1 (en) * | 2000-05-19 | 2003-03-04 | Motorola, Inc. | Method for supporting acknowledged transport layer protocols in GPRS/edge host application |
US6865617B2 (en) * | 2000-05-23 | 2005-03-08 | Sepaton, Inc. | System maps SCSI device with virtual logical unit number and multicast address for efficient data replication over TCP/IP network |
US7171484B1 (en) | 2000-05-24 | 2007-01-30 | Krause Michael R | Reliable datagram transport service |
US7953834B1 (en) * | 2000-06-22 | 2011-05-31 | Emc Corporation | System and method for reducing bandwidth consumed by looping message packets in local area network |
US6910063B1 (en) * | 2000-06-28 | 2005-06-21 | Microsoft Corporation | System and method of enhancing web server throughput in single and multiple processor systems |
US6952733B1 (en) * | 2000-06-30 | 2005-10-04 | Northrop Grumman Corporation | System and method for reliable multicast data distribution over an unreliable packet switched network |
WO2002003597A1 (en) * | 2000-06-30 | 2002-01-10 | Kanad Ghose | System and method for fast, reliable byte stream transport |
US7102773B1 (en) | 2000-07-19 | 2006-09-05 | Sharp Laboratories Of America, Inc. | Method for multicast of documents |
US6839754B2 (en) * | 2000-09-15 | 2005-01-04 | Wm. Marsh Rice University | Network tomography using closely-spaced unicast packets |
US6963993B1 (en) * | 2000-09-28 | 2005-11-08 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Fail-over file transfer process |
US6697962B1 (en) | 2000-10-20 | 2004-02-24 | Unisys Corporation | Remote computer system monitoring and diagnostic board |
US6970847B1 (en) * | 2000-10-24 | 2005-11-29 | Canon Kabushiki Kaisha | Business method for secure document folder distribution |
US7254605B1 (en) | 2000-10-26 | 2007-08-07 | Austen Services Llc | Method of modulating the transmission frequency in a real time opinion research network |
WO2002069073A2 (en) * | 2000-11-13 | 2002-09-06 | Starguide Digital Networks, Inc. | Ethernet digital storage (eds) card and satellite transmission system including faxing capability |
US6629261B1 (en) | 2000-11-21 | 2003-09-30 | At&T Wireless Services, Inc. | Enhanced data link layer selective reject mechanism in noisy wireless environment |
US7275254B1 (en) | 2000-11-21 | 2007-09-25 | Intel Corporation | Method and apparatus for determining and displaying the service level of a digital television broadcast signal |
US20020075824A1 (en) * | 2000-12-14 | 2002-06-20 | Willekes Tom J. | System and method for distributing files in a wireless network infrastructure |
US7254638B2 (en) * | 2000-12-15 | 2007-08-07 | International Business Machines Corporation | Method and apparatus for identifying slow links and for providing application-based responses to slow links in a distributed computer network |
US20020087752A1 (en) * | 2000-12-28 | 2002-07-04 | Connor Patrick L. | Method of real time statistical collection for I/O controllers |
US20020143499A1 (en) * | 2001-01-12 | 2002-10-03 | Graphin Co., Ltd | Methods and apparatus for communicating information via a network |
US20020133624A1 (en) * | 2001-01-16 | 2002-09-19 | Tony Hashem | System and process for routing information in a data processing system |
US6845274B2 (en) * | 2001-01-24 | 2005-01-18 | Koninklijke Philips Electronics N.V. | Communication port control module for lighting systems |
US7240105B2 (en) * | 2001-01-26 | 2007-07-03 | International Business Machines Corporation | Distributed multicast caching technique |
WO2002060149A2 (en) * | 2001-01-26 | 2002-08-01 | Placeware, Inc. | A method and apparatus for automatically determining an appropriate transmission method in a network |
US7260785B2 (en) * | 2001-01-29 | 2007-08-21 | International Business Machines Corporation | Method and system for object retransmission without a continuous network connection in a digital media distribution system |
US20020133398A1 (en) * | 2001-01-31 | 2002-09-19 | Microsoft Corporation | System and method for delivering media |
US7383329B2 (en) | 2001-02-13 | 2008-06-03 | Aventail, Llc | Distributed cache for state transfer operations |
US7360075B2 (en) * | 2001-02-12 | 2008-04-15 | Aventail Corporation, A Wholly Owned Subsidiary Of Sonicwall, Inc. | Method and apparatus for providing secure streaming data transmission facilities using unreliable protocols |
US7689598B2 (en) * | 2001-02-15 | 2010-03-30 | International Business Machines Corporation | Method and system for file system synchronization between a central site and a plurality of remote sites |
JP3737705B2 (ja) * | 2001-02-20 | 2006-01-25 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ネットワークシステム、サーバ、クライアント、通信方法、及び通信プログラム |
US20020116500A1 (en) * | 2001-02-22 | 2002-08-22 | Arora Akhil K. | Protocol for wireless devices |
US20020131428A1 (en) * | 2001-03-13 | 2002-09-19 | Vivian Pecus | Large edge node for simultaneous video on demand and live streaming of satellite delivered content |
US7174373B1 (en) | 2001-03-13 | 2007-02-06 | Panamsat Corporation | Self-contained demonstration node in a satellite based content delivery system |
US6886029B1 (en) | 2001-03-13 | 2005-04-26 | Panamsat Corporation | End to end simulation of a content delivery system |
US7130908B1 (en) | 2001-03-13 | 2006-10-31 | Intelsat Ltd. | Forward cache management between edge nodes in a satellite based content delivery system |
US7237017B1 (en) | 2001-03-13 | 2007-06-26 | Panamsat Corporation | Micronode in a satellite based content delivery system |
US6807578B2 (en) | 2001-03-14 | 2004-10-19 | International Business Machines Corporation | Nack suppression for multicast protocols in mostly one-way networks |
US20020144265A1 (en) * | 2001-03-29 | 2002-10-03 | Connelly Jay H. | System and method for merging streaming and stored content information in an electronic program guide |
US8199696B2 (en) | 2001-03-29 | 2012-06-12 | Qualcomm Incorporated | Method and apparatus for power control in a wireless communication system |
US20020143591A1 (en) * | 2001-03-30 | 2002-10-03 | Connelly Jay H. | Method and apparatus for a hybrid content on demand broadcast system |
US20020144269A1 (en) * | 2001-03-30 | 2002-10-03 | Connelly Jay H. | Apparatus and method for a dynamic electronic program guide enabling billing broadcast services per EPG line item |
US6792544B2 (en) | 2001-04-03 | 2004-09-14 | Ge Financial Assurance Holdings, Inc. | Method and system for secure transmission of information |
US7301956B2 (en) * | 2001-05-10 | 2007-11-27 | Brocade Communications Systems, Inc. | System and method for storing and retrieving multi-speed data streams within a network switch |
US7024609B2 (en) * | 2001-04-20 | 2006-04-04 | Kencast, Inc. | System for protecting the transmission of live data streams, and upon reception, for reconstructing the live data streams and recording them into files |
US7418515B2 (en) | 2001-04-27 | 2008-08-26 | International Business Machines Corporation | Data communication method, data communication system and program |
US20020165970A1 (en) * | 2001-05-02 | 2002-11-07 | Carl Ludewig | System and method for intelligent bit rate and buffer selection |
JP2002359641A (ja) * | 2001-05-31 | 2002-12-13 | Matsushita Electric Ind Co Ltd | ファイル配信システム、ファイル配信サーバ装置、及び受信クライアント装置 |
US7185352B2 (en) * | 2001-05-11 | 2007-02-27 | Intel Corporation | Method and apparatus for combining broadcast schedules and content on a digital broadcast-enabled client platform |
US7353252B1 (en) | 2001-05-16 | 2008-04-01 | Sigma Design | System for electronic file collaboration among multiple users using peer-to-peer network topology |
US7272645B2 (en) | 2001-05-25 | 2007-09-18 | Sbc Technology Resources, Inc. | Method of improving the reliability of peer-to-peer network downloads |
US20030005465A1 (en) * | 2001-06-15 | 2003-01-02 | Connelly Jay H. | Method and apparatus to send feedback from clients to a server in a content distribution broadcast system |
US20030005451A1 (en) * | 2001-06-15 | 2003-01-02 | Connelly Jay H. | Method and apparatus to distribute content descriptors in a content distribution broadcast system |
US20020194603A1 (en) * | 2001-06-15 | 2002-12-19 | Jay H. Connelly | Method and apparatus to distribute content using a multi-stage broadcast system |
US7328455B2 (en) * | 2001-06-28 | 2008-02-05 | Intel Corporation | Apparatus and method for enabling secure content decryption within a set-top box |
US20030002497A1 (en) * | 2001-06-29 | 2003-01-02 | Anil Vasudevan | Method and apparatus to reduce packet traffic across an I/O bus |
US7363569B2 (en) * | 2001-06-29 | 2008-04-22 | Intel Corporation | Correcting for data losses with feedback and response |
US6983410B2 (en) * | 2001-07-02 | 2006-01-03 | Qualcomm, Incorporated | System and method for a frame re-transmission in a broadcast communication system |
JP4767443B2 (ja) * | 2001-07-04 | 2011-09-07 | 富士通株式会社 | ネットワーク蓄積型ビデオカメラシステム |
SE0102546D0 (sv) * | 2001-07-16 | 2001-07-16 | Icomera Ab | Network-aware application in a 4g environment |
EP1278348A1 (en) * | 2001-07-17 | 2003-01-22 | Alcatel | Long-lived TCP connection using ICMP messages in wireless mobile communications |
US20030023915A1 (en) * | 2001-07-30 | 2003-01-30 | Koninklijke Philips Electronics N.V. | Forward error correction system and method for packet based communication systems |
US8001594B2 (en) * | 2001-07-30 | 2011-08-16 | Ipass, Inc. | Monitoring computer network security enforcement |
US20030028632A1 (en) * | 2001-08-02 | 2003-02-06 | Davis Thomas G. | System and method of multicasting data messages |
US7149813B2 (en) * | 2001-08-14 | 2006-12-12 | Microsoft Corporation | Method and system for synchronizing mobile devices |
US20030037132A1 (en) * | 2001-08-20 | 2003-02-20 | Abdollahi Mahshid Ellie | Controlling multiple nodes using SNMP |
US7903593B2 (en) * | 2001-08-23 | 2011-03-08 | Runcom Technologies Ltd. | Multicast transmission in packet based cellular networks |
US7047456B2 (en) * | 2001-08-28 | 2006-05-16 | Intel Corporation | Error correction for regional and dynamic factors in communications |
US20030046683A1 (en) * | 2001-08-28 | 2003-03-06 | Jutzi Curtis E. | Server-side preference prediction based on customer billing information to generate a broadcast schedule |
US6535924B1 (en) * | 2001-09-05 | 2003-03-18 | Pluris, Inc. | Method and apparatus for performing a software upgrade of a router while the router is online |
US7231653B2 (en) | 2001-09-24 | 2007-06-12 | Intel Corporation | Method for delivering transport stream data |
US20030061611A1 (en) * | 2001-09-26 | 2003-03-27 | Ramesh Pendakur | Notifying users of available content and content reception based on user profiles |
US8943540B2 (en) * | 2001-09-28 | 2015-01-27 | Intel Corporation | Method and apparatus to provide a personalized channel |
US20030066090A1 (en) * | 2001-09-28 | 2003-04-03 | Brendan Traw | Method and apparatus to provide a personalized channel |
ES2254724T3 (es) * | 2001-10-01 | 2006-06-16 | Research In Motion Limited | Gestion del contacto para dispositivos moviles de comunicacion en redes inalambricas de paquetes conmutados. |
US7051112B2 (en) * | 2001-10-02 | 2006-05-23 | Tropic Networks Inc. | System and method for distribution of software |
US7647422B2 (en) | 2001-11-06 | 2010-01-12 | Enterasys Networks, Inc. | VPN failure recovery |
US6983334B2 (en) * | 2001-11-07 | 2006-01-03 | International Business Machines Corporation | Method and system of tracking missing packets in a multicast TFTP environment |
US7016967B2 (en) * | 2001-11-08 | 2006-03-21 | Northrop Grumman Corporation | Methodology for fast file transfer protocol |
US7330432B1 (en) * | 2001-11-15 | 2008-02-12 | Network Appliance, Inc. | Method and apparatus for optimizing channel bandwidth utilization by simultaneous reliable transmission of sets of multiple data transfer units (DTUs) |
US7013418B1 (en) * | 2001-11-15 | 2006-03-14 | Network Appliance, Inc. | Method and apparatus for reliable delivery of status information for multiple sets of data units in a single packet |
US7549096B2 (en) * | 2001-11-16 | 2009-06-16 | At&T Mobility Ii Llc | Methods and systems for tracking and playing back errors in a communications network |
US7487262B2 (en) | 2001-11-16 | 2009-02-03 | At & T Mobility Ii, Llc | Methods and systems for routing messages through a communications network based on message content |
US7617328B2 (en) | 2001-11-16 | 2009-11-10 | At&T Mobility Ii Llc | System for translation and communication of messaging protocols into a common protocol |
US7317697B2 (en) | 2001-11-16 | 2008-01-08 | At&T Mobility Ii Llc | System for handling file attachments |
US7454195B2 (en) | 2001-11-16 | 2008-11-18 | At&T Mobility Ii, Llc | System for the centralized storage of wireless customer information |
US7793334B2 (en) | 2001-11-16 | 2010-09-07 | At&T Mobility Ii Llc | System and method for password protecting a distribution list |
US7319858B2 (en) * | 2001-11-16 | 2008-01-15 | Cingular Wireless Ii, Llc | System and method for querying message information |
US7401148B2 (en) | 2001-11-16 | 2008-07-15 | At&T Mobility Ii Llc | System for customer access to messaging and configuration data |
US7657253B2 (en) | 2001-11-16 | 2010-02-02 | At&T Mobility Ii Llc | System and method for providing message notification |
US8660537B2 (en) * | 2001-11-16 | 2014-02-25 | At&T Mobility Ii Llc | System for the storage and retrieval of messages |
US20030126162A1 (en) * | 2002-01-03 | 2003-07-03 | Yohe Thomas Patrick | System and method for synchronizing databases in a secure network environment |
US20030135857A1 (en) * | 2002-01-11 | 2003-07-17 | Ramesh Pendakur | Content discovery in a digital broadcast data service |
US20030135605A1 (en) * | 2002-01-11 | 2003-07-17 | Ramesh Pendakur | User rating feedback loop to modify virtual channel content and/or schedules |
AU2003207617A1 (en) * | 2002-01-22 | 2003-09-02 | Sharp Laboratories Of America, Inc. | Systems and methods for acknowledgement of multi-cast traffic |
CA2369196A1 (en) * | 2002-01-24 | 2003-07-24 | Alcatel Canada Inc. | System and method of downloading data for a communication switch |
EP1333614A3 (en) * | 2002-01-24 | 2004-04-14 | Alcatel Canada Inc. | System and method of downloading data for a communication switch |
US6957374B1 (en) | 2002-01-31 | 2005-10-18 | The United States Of America As Represented By The National Security Agency | Method of acknowledging receipt of data packets |
JP4039658B2 (ja) * | 2002-02-08 | 2008-01-30 | 株式会社東芝 | ソフトウエア管理方法、通信システム、端末、アクセスポイント、通信システムの端末で用いるセキュリティ対策ファイルのダウンロード方法 |
DE10205901A1 (de) * | 2002-02-13 | 2003-08-28 | Tenovis Gmbh & Co Kg | Verfahren und Anordnung zur Datenübertragung mit einer Mehrpunktverbindung |
GB2385499A (en) * | 2002-02-18 | 2003-08-20 | Venation Ltd | Network transport protocol |
AU2003217819B2 (en) | 2002-03-01 | 2008-04-03 | Extreme Networks, Inc. | Location aware data network |
US7184705B2 (en) * | 2002-03-08 | 2007-02-27 | Telefonaktiebolaget Lm Ericsson (Publ) | Distributed MAC in an uncoordinated radio environment |
JP3920675B2 (ja) * | 2002-03-22 | 2007-05-30 | 株式会社リコー | データ通信方法、コンピュータ、プログラム及び記憶媒体 |
US7155578B2 (en) * | 2002-04-05 | 2006-12-26 | Genworth Financial, Inc. | Method and system for transferring files using file transfer protocol |
US20030206549A1 (en) * | 2002-05-03 | 2003-11-06 | Mody Sachin Satish | Method and apparatus for multicast delivery of information |
US7302691B2 (en) * | 2002-05-10 | 2007-11-27 | Sonics, Incorporated | Scalable low bandwidth multicast handling in mixed core systems |
DE10224994A1 (de) * | 2002-06-05 | 2003-12-18 | Siemens Ag | Verfahren und System zum Übertragen von Datenpaketen |
US7289500B1 (en) * | 2003-07-17 | 2007-10-30 | Novell, Inc. | Method and system for reliable multicast data transmission |
JP2004165712A (ja) * | 2002-09-19 | 2004-06-10 | Ntt Docomo Inc | 移動通信システム、基地局、移動局及び無線制御装置 |
JP4133156B2 (ja) * | 2002-09-19 | 2008-08-13 | 株式会社エヌ・ティ・ティ・ドコモ | 移動通信システム、移動局及び無線制御装置 |
GB2394386A (en) * | 2002-10-16 | 2004-04-21 | Nokia Corp | Multicast data transfer |
JP2004159017A (ja) * | 2002-11-05 | 2004-06-03 | Ntt Docomo Inc | 移動通信システム、及びこれに用いて好適な無線局 |
US7984174B2 (en) * | 2002-11-11 | 2011-07-19 | Supracomm, Tm Inc. | Multicast videoconferencing |
US7974416B2 (en) | 2002-11-27 | 2011-07-05 | Intel Corporation | Providing a secure execution mode in a pre-boot environment |
JP2004180092A (ja) * | 2002-11-28 | 2004-06-24 | Sony Corp | 情報処理装置および情報処理方法、並びにコンピュータ・プログラム |
US20040133699A1 (en) * | 2002-12-04 | 2004-07-08 | Tony Hashem | System and method for performing data transfer |
US6996763B2 (en) * | 2003-01-10 | 2006-02-07 | Qualcomm Incorporated | Operation of a forward link acknowledgement channel for the reverse link data |
US7747244B2 (en) * | 2003-01-23 | 2010-06-29 | Research In Motion Limited | Methods and apparatus for re-establishing communication for a wireless communication device after a communication loss in a wireless communication network |
US7660282B2 (en) | 2003-02-18 | 2010-02-09 | Qualcomm Incorporated | Congestion control in a wireless data network |
US20040160922A1 (en) | 2003-02-18 | 2004-08-19 | Sanjiv Nanda | Method and apparatus for controlling data rate of a reverse link in a communication system |
US8391249B2 (en) | 2003-02-18 | 2013-03-05 | Qualcomm Incorporated | Code division multiplexing commands on a code division multiplexed channel |
US7155236B2 (en) | 2003-02-18 | 2006-12-26 | Qualcomm Incorporated | Scheduled and autonomous transmission and acknowledgement |
IL154739A0 (en) * | 2003-03-04 | 2003-10-31 | Bamboo Mediacasting Ltd | Segmented data delivery over non-reliable link |
US7215930B2 (en) | 2003-03-06 | 2007-05-08 | Qualcomm, Incorporated | Method and apparatus for providing uplink signal-to-noise ratio (SNR) estimation in a wireless communication |
US8705588B2 (en) | 2003-03-06 | 2014-04-22 | Qualcomm Incorporated | Systems and methods for using code space in spread-spectrum communications |
JP4283589B2 (ja) * | 2003-03-25 | 2009-06-24 | 株式会社エヌ・ティ・ティ・ドコモ | 通信装置、通信制御方法及びプログラム |
US7327731B1 (en) * | 2003-04-09 | 2008-02-05 | At&T Corp. | Point-to-multipoint connections for data delivery |
US9420072B2 (en) | 2003-04-25 | 2016-08-16 | Z124 | Smartphone databoost |
US8477592B2 (en) | 2003-05-14 | 2013-07-02 | Qualcomm Incorporated | Interference and noise estimation in an OFDM system |
US7181588B2 (en) * | 2003-05-22 | 2007-02-20 | International Business Machines Corporation | Computer apparatus and method for autonomic adjustment of block transfer size |
US7296204B2 (en) * | 2003-05-30 | 2007-11-13 | Wegener Communications, Inc. | Error correction apparatus and method |
US7400616B2 (en) * | 2003-06-18 | 2008-07-15 | Nippon Telegraph And Telephone Corporation | Wireless packet communication method and wireless packet communication apparatus |
US20050010687A1 (en) * | 2003-06-26 | 2005-01-13 | Silicon Graphics, Inc. | Multiprocessor network multicasting and gathering |
US8862866B2 (en) | 2003-07-07 | 2014-10-14 | Certicom Corp. | Method and apparatus for providing an adaptable security level in an electronic communication |
US7236738B2 (en) | 2003-08-01 | 2007-06-26 | Pathfire, Inc. | Multicast control systems and methods for dynamic, adaptive time, bandwidth,frequency, and satellite allocations |
US8489949B2 (en) | 2003-08-05 | 2013-07-16 | Qualcomm Incorporated | Combining grant, acknowledgement, and rate control commands |
EP1661311B1 (en) * | 2003-08-15 | 2012-07-18 | GVBB Holdings S.A.R.L | Changeable functionality in a broadcast router |
FR2859297A1 (fr) * | 2003-08-29 | 2005-03-04 | France Telecom | Dispositif de transmission de messages par reseau a des postes d'utilisateurs |
IL157886A0 (en) * | 2003-09-11 | 2009-02-11 | Bamboo Mediacasting Ltd | Secure multicast transmission |
IL157885A0 (en) * | 2003-09-11 | 2004-03-28 | Bamboo Mediacasting Ltd | Iterative forward error correction |
US7188292B2 (en) * | 2003-09-26 | 2007-03-06 | Nortel Networks Limited | Data mirroring system |
IL158158A (en) | 2003-09-29 | 2012-05-31 | Bamboo Mediacasting Ltd | Distribution of multicast data to users |
US7447148B2 (en) * | 2003-10-28 | 2008-11-04 | Ntt Docomo, Inc. | Method for supporting scalable and reliable multicast in TDMA/TDD systems using feedback suppression techniques |
US7095739B2 (en) * | 2003-11-25 | 2006-08-22 | Cisco Technology, Inc. | Reliable multicast communication |
US20050160345A1 (en) * | 2003-12-24 | 2005-07-21 | Rod Walsh | Apparatus, system, method and computer program product for reliable multicast transport of data packets |
WO2005069552A1 (en) * | 2004-01-14 | 2005-07-28 | Gridiron Software, Inc. | Redundant pipelined file transfer |
JP4695098B2 (ja) * | 2004-01-23 | 2011-06-08 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | パケットデータマルチキャスト通信システム、局、及びこのようなシステムを動作する方法 |
US8190098B2 (en) * | 2004-01-23 | 2012-05-29 | Koninklijke Philips Electronics N.V. | Packet data multicast communication system, a station, and a method of operating the system |
US7580403B2 (en) | 2004-02-26 | 2009-08-25 | Enterasys Networks, Inc. | Status transmission system and method |
TWI278199B (en) * | 2004-03-26 | 2007-04-01 | Quanta Comp Inc | Deployment method and system for multiple remote computers |
US7680885B2 (en) | 2004-04-15 | 2010-03-16 | Citrix Systems, Inc. | Methods and apparatus for synchronization of data set representations in a bandwidth-adaptive manner |
US7756033B2 (en) * | 2004-05-03 | 2010-07-13 | Verizon Business Global Llc | Systems and methods for managing multicast data transmissions |
US8122145B2 (en) * | 2004-05-17 | 2012-02-21 | Nokia Corporation | System, method and computer program product for grouping clients and transferring content in accordance with the same |
JP4068592B2 (ja) * | 2004-05-28 | 2008-03-26 | 株式会社東芝 | 無線通信装置 |
US20080192661A1 (en) * | 2004-06-02 | 2008-08-14 | Yasuo Hamamoto | Radio Transmission Method |
JP2006054853A (ja) * | 2004-07-14 | 2006-02-23 | Iwatsu Electric Co Ltd | 無線lanにおけるパケット伝送方法及び装置 |
US8223647B2 (en) * | 2004-07-21 | 2012-07-17 | Nokia Corporation | System and method for increasing data throughout using a block acknowledgement |
JP4107594B2 (ja) * | 2004-07-26 | 2008-06-25 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報処理システム、情報処理装置、制御方法、プログラム、及び記録媒体 |
US7945945B2 (en) | 2004-08-06 | 2011-05-17 | Enterasys Networks, Inc. | System and method for address block enhanced dynamic network policy management |
US7533324B2 (en) * | 2004-09-22 | 2009-05-12 | Kencast, Inc. | System, method and apparatus for FEC encoding and decoding |
US7360140B2 (en) * | 2004-09-23 | 2008-04-15 | International Business Machines Corporation | Apparatus and method for tracking packets in a reliably connected transmission system |
US7347628B2 (en) | 2004-11-08 | 2008-03-25 | Enterasys Networks, Inc. | Optical interface identification system |
KR100677425B1 (ko) * | 2005-01-13 | 2007-02-02 | 엘지전자 주식회사 | 무선 데이터 망의 성능 점검 장치 및 그 방법 |
US7739580B1 (en) | 2005-02-17 | 2010-06-15 | Kencast, Inc. | System, method and apparatus for reducing blockage losses on information distribution networks |
EP1866789B8 (en) * | 2005-02-28 | 2020-04-15 | McAfee, LLC | Mobile data security system and methods |
WO2006094426A1 (en) | 2005-03-05 | 2006-09-14 | Intel Corporation | Server side tftp flow control |
US20060239195A1 (en) * | 2005-04-26 | 2006-10-26 | Martin Camins | Method and apparatus for dual-mode application update protocol |
US7586930B2 (en) * | 2005-05-10 | 2009-09-08 | Harris Corporation | Multicast data communication method and network |
FI20055239A (fi) * | 2005-05-13 | 2006-11-14 | Nethawk Oy | Menetelmä sanomien käsittelemiseksi tietojenkäsittelylaite ja tietokoneohjelmatuote |
US8675653B2 (en) * | 2005-05-17 | 2014-03-18 | Alcatel Lucent | Co-existing static and dynamic IP multicast |
US20060271877A1 (en) * | 2005-05-25 | 2006-11-30 | Citrix Systems, Inc. | A system and methods for selective sharing of an application window |
US8443040B2 (en) | 2005-05-26 | 2013-05-14 | Citrix Systems Inc. | Method and system for synchronizing presentation of a dynamic data set to a plurality of nodes |
KR101114737B1 (ko) * | 2005-05-31 | 2012-02-29 | 삼성전자주식회사 | 이동통신시스템에서 패킷 수신 결과 보고방법 |
US8086232B2 (en) | 2005-06-28 | 2011-12-27 | Enterasys Networks, Inc. | Time synchronized wireless method and operations |
US8605642B2 (en) * | 2005-07-07 | 2013-12-10 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and arrangement for coding and scheduling in packet data communication systems |
WO2007021097A1 (en) * | 2005-08-12 | 2007-02-22 | Samsung Electronics Co., Ltd. | Method and apparatus to transmit and/or receive data via wireless network and wireless device |
US8223643B1 (en) | 2005-09-06 | 2012-07-17 | Kencast, Inc. | Method for packet-level FEC encoding a stream of source packets using shifted interleaving |
CA2624671C (en) | 2005-09-30 | 2012-01-03 | Research In Motion Limited | Methods and apparatus for dynamically adjusting a data packet window size for data packet transmission in a wireless communication network |
US8396041B2 (en) | 2005-11-08 | 2013-03-12 | Microsoft Corporation | Adapting a communication network to varying conditions |
CN100505859C (zh) * | 2005-11-08 | 2009-06-24 | 联想(北京)有限公司 | 一种点到多点的无线显示方法 |
KR100750170B1 (ko) | 2005-11-15 | 2007-08-21 | 삼성전자주식회사 | 통신 네트워크에서 데이터 프레임을 효율적으로 전송하는방법 및 장치 |
US8381047B2 (en) * | 2005-11-30 | 2013-02-19 | Microsoft Corporation | Predicting degradation of a communication channel below a threshold based on data transmission errors |
US8000304B2 (en) * | 2005-12-12 | 2011-08-16 | Motorola Mobility, Inc. | System and method for determining a forward channel rate for wirelessly communicating information to a wireless communication device |
US7558587B2 (en) | 2005-12-12 | 2009-07-07 | Motorola, Inc. | System and method for dynamically selecting wireless information communication modes for a wireless communication device |
US8005892B2 (en) * | 2006-02-17 | 2011-08-23 | Nintendo Of America, Inc. | Method and apparatus for distributing data to a plurality of game devices |
US7664198B2 (en) * | 2006-03-21 | 2010-02-16 | Kyocera Corporation | System and method for broadcasting data over a wireless network using rateless codes |
US8688978B2 (en) | 2006-04-13 | 2014-04-01 | Certicom Corp. | Method and apparatus for providing an adaptable security level in an electronic communication |
US8677252B2 (en) * | 2006-04-14 | 2014-03-18 | Citrix Online Llc | Systems and methods for displaying to a presenter visual feedback corresponding to visual changes received by viewers |
EP1848139A1 (en) | 2006-04-18 | 2007-10-24 | THOMSON Licensing | Method and device for transmitting data to several receivers using ARQ |
US8140618B2 (en) * | 2006-05-04 | 2012-03-20 | Citrix Online Llc | Methods and systems for bandwidth adaptive N-to-N communication in a distributed system |
US8769019B2 (en) * | 2006-05-04 | 2014-07-01 | Citrix Systems, Inc. | Methods and systems for managing shared state within a distributed system with varying consistency and consensus semantics |
US20080095052A1 (en) * | 2006-07-27 | 2008-04-24 | Patrick Julien | Network Control Time Spans |
US20080097824A1 (en) * | 2006-07-27 | 2008-04-24 | Patrick Julien | Campaign Performance Report |
US20080103904A1 (en) * | 2006-07-27 | 2008-05-01 | Patrick Julien | Fine-Grained Criteria Targeting |
US20080097848A1 (en) * | 2006-07-27 | 2008-04-24 | Patrick Julien | Day Part Frame Criteria |
US20080091497A1 (en) * | 2006-07-27 | 2008-04-17 | Patrick Julien | Broadcast Days |
KR20080018148A (ko) * | 2006-08-23 | 2008-02-27 | 한국전자통신연구원 | 패킷 기반 셀룰라 시스템에서 방송 및 멀티캐스트 서비스데이터의 전송 및 수신 방법 |
KR100966047B1 (ko) * | 2006-08-25 | 2010-06-28 | 삼성전자주식회사 | 통신시스템에서 미디어 송신 방법 및 장치 |
US8078972B2 (en) | 2006-09-15 | 2011-12-13 | Citrix Systems, Inc. | Methods and interfaces for displaying performance data related to a current remote access session |
US7978617B2 (en) | 2006-09-15 | 2011-07-12 | Citrix Systems, Inc. | Methods for providing performance improvement recommendations |
JP4680860B2 (ja) * | 2006-09-29 | 2011-05-11 | 富士通株式会社 | データ通信方法 |
US8707139B2 (en) | 2006-10-18 | 2014-04-22 | Kencast, Inc. | Systems, methods, apparatus, and computer program products for providing forward error correction with low latency |
US7924730B1 (en) * | 2006-10-30 | 2011-04-12 | Solace Systems, Inc. | Method and apparatus for operations, administration and maintenance of a network messaging layer |
CA2673778C (en) * | 2006-12-28 | 2015-07-28 | Research In Motion Limited | Methods and apparatus for increasing data throughput by grouping data packets into maximum transmissible units |
US8515079B1 (en) * | 2007-01-26 | 2013-08-20 | Cisco Technology, Inc. | Hybrid rekey distribution in a virtual private network environment |
EP2115923A4 (en) * | 2007-02-09 | 2017-06-14 | Clipsal Australia Pty Ltd | Wireless network communications system |
US20080198754A1 (en) * | 2007-02-20 | 2008-08-21 | At&T Knowledge Ventures, Lp | Method and system for testing a communication network |
US20080244042A1 (en) * | 2007-03-26 | 2008-10-02 | Sugih Jamin | Method and system for communicating media over a computer network |
US7949778B2 (en) * | 2007-03-27 | 2011-05-24 | Kencast, Inc. | Systems, methods, apparatus and computer program products for providing packet-level FEC with higher throughput using user datagram protocol (UDP) |
US8483068B2 (en) * | 2007-03-30 | 2013-07-09 | Verizon Patent And Licensing Inc. | System and method of performance monitoring of multicast services with mobility support |
CN101296165B (zh) * | 2007-04-27 | 2011-09-21 | 华为技术有限公司 | 发送控制信令的方法和装置 |
US8312347B2 (en) * | 2007-05-04 | 2012-11-13 | Leviton Manufacturing Co., Inc. | Lighting control protocol |
US8055779B1 (en) | 2007-05-10 | 2011-11-08 | Adobe Systems Incorporated | System and method using data keyframes |
US8205140B2 (en) * | 2007-05-10 | 2012-06-19 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for the use of network coding in a wireless communication network |
US20080285496A1 (en) * | 2007-05-14 | 2008-11-20 | Bamboo Mediacasting Ltd. | Data download in wireless network |
US9979931B2 (en) * | 2007-05-30 | 2018-05-22 | Adobe Systems Incorporated | Transmitting a digital media stream that is already being transmitted to a first device to a second device and inhibiting presenting transmission of frames included within a sequence of frames until after an initial frame and frames between the initial frame and a requested subsequent frame have been received by the second device |
US8018933B2 (en) * | 2007-06-27 | 2011-09-13 | Microsoft Corporation | Reliable multicast with automatic session startup and client backfil support |
US8612617B2 (en) * | 2007-06-28 | 2013-12-17 | Microsoft Corporation | Reliable multicast transport protocol |
US8683065B2 (en) * | 2007-06-29 | 2014-03-25 | Microsoft Corporation | Multicast content provider |
JP5361888B2 (ja) * | 2007-08-20 | 2013-12-04 | アルカテル−ルーセント | マルチキャスト・システムにおける再送をトリガするための方法、およびその方法を実施する装置 |
JP2009049704A (ja) * | 2007-08-20 | 2009-03-05 | Toshiba Corp | 無線通信装置 |
US8233402B2 (en) | 2007-09-20 | 2012-07-31 | At&T Intellectual Property Ii, L.P. | Multicast-based inference of temporal loss characteristics in packet data networks |
JP5157351B2 (ja) * | 2007-09-28 | 2013-03-06 | 日本電気株式会社 | 動画配信システム、加入者回線終端装置、動画配信方法、動画配信プログラム、及び記憶媒体 |
CA2706125A1 (en) | 2007-11-29 | 2009-06-04 | Airbus Operations Gmbh | System and method for archiving of data |
US8418034B2 (en) | 2008-02-08 | 2013-04-09 | Kencast, Inc. | Systems, methods, apparatus and computer program products for highly reliable file delivery using compound and braided FEC encoding and decoding |
EP2243249A4 (en) * | 2008-02-14 | 2012-03-21 | Ericsson Telefon Ab L M | SEGMENTATION OF SERVICES DISTRIBUTED IN MULTICAST |
US8542683B2 (en) * | 2008-06-30 | 2013-09-24 | Entropic Communications, Inc. | Dynamic bitloading |
CN101631137B (zh) * | 2008-07-15 | 2012-10-10 | 株式会社日立制作所 | 通信控制装置及通信控制方法 |
US8738780B2 (en) * | 2009-01-22 | 2014-05-27 | Citrix Systems, Inc. | System and method for hybrid communication mechanism utilizing both communication server-based and direct endpoint-to-endpoint connections |
US8977684B2 (en) * | 2009-04-14 | 2015-03-10 | Citrix Systems, Inc. | Systems and methods for computer and voice conference audio transmission during conference call via VoIP device |
US8223943B2 (en) * | 2009-04-14 | 2012-07-17 | Citrix Systems Inc. | Systems and methods for computer and voice conference audio transmission during conference call via PSTN phone |
US8060645B1 (en) * | 2009-05-26 | 2011-11-15 | Google Inc. | Semi reliable transport of multimedia content |
US8238538B2 (en) | 2009-05-28 | 2012-08-07 | Comcast Cable Communications, Llc | Stateful home phone service |
SG169903A1 (en) * | 2009-09-08 | 2011-04-29 | Certis Cisco Security Pte Ltd | A file transfer system |
US8891939B2 (en) * | 2009-12-22 | 2014-11-18 | Citrix Systems, Inc. | Systems and methods for video-aware screen capture and compression |
US8902967B2 (en) | 2010-03-31 | 2014-12-02 | Citrix Systems, Inc. | Systems and methods for distributed media stream transcoding and sharing |
CN102484616B (zh) * | 2010-06-16 | 2015-02-25 | 松下电器产业株式会社 | 发送终端及频带估计方法 |
DE102010045683A1 (de) | 2010-09-16 | 2012-03-22 | Heidelberger Druckmaschinen Ag | Kombinierte Unicast/Multicast Softwareübertragung |
US8788576B2 (en) * | 2010-09-27 | 2014-07-22 | Z124 | High speed parallel data exchange with receiver side data handling |
US8751682B2 (en) | 2010-09-27 | 2014-06-10 | Z124 | Data transfer using high speed connection, high integrity connection, and descriptor |
US8533374B1 (en) * | 2010-11-11 | 2013-09-10 | Symantec Corporation | Techniques for adaptive data transfer |
US8799378B2 (en) * | 2010-12-17 | 2014-08-05 | Microsoft Corporation | Non-greedy consumption by execution blocks in dataflow networks |
US8922617B2 (en) | 2010-12-23 | 2014-12-30 | Citrix Systems, Inc. | Systems, methods, and devices for time-shifting playback of a live online meeting |
US9282289B2 (en) | 2010-12-23 | 2016-03-08 | Citrix Systems, Inc. | Systems, methods, and devices for generating a summary document of an online meeting |
US9269072B2 (en) * | 2010-12-23 | 2016-02-23 | Citrix Systems, Inc. | Systems, methods, and devices for facilitating navigation of previously presented screen data in an ongoing online meeting |
US9129258B2 (en) | 2010-12-23 | 2015-09-08 | Citrix Systems, Inc. | Systems, methods, and devices for communicating during an ongoing online meeting |
CN102088378A (zh) * | 2011-01-19 | 2011-06-08 | 深圳创维数字技术股份有限公司 | 一种网络设备状态实时检测方法及系统 |
US8824687B2 (en) * | 2011-05-04 | 2014-09-02 | Acquire Media Ventures, Inc. | Method and system for pacing, acking, timing, and handicapping (path) for simultaneous receipt of documents employing encryption |
US20140055400A1 (en) | 2011-05-23 | 2014-02-27 | Haworth, Inc. | Digital workspace ergonomics apparatuses, methods and systems |
US9471192B2 (en) | 2011-05-23 | 2016-10-18 | Haworth, Inc. | Region dynamics for digital whiteboard |
EP2715490B1 (en) | 2011-05-23 | 2018-07-11 | Haworth, Inc. | Digital whiteboard collaboration apparatuses, methods and systems |
US9465434B2 (en) | 2011-05-23 | 2016-10-11 | Haworth, Inc. | Toolbar dynamics for digital whiteboard |
US20130013438A1 (en) * | 2011-07-05 | 2013-01-10 | Li-Hui Chen | Grouping Method for Group-buying Based on Wireless Communication Protocol |
US8499051B2 (en) | 2011-07-21 | 2013-07-30 | Z124 | Multiple messaging communication optimization |
US9774721B2 (en) | 2011-09-27 | 2017-09-26 | Z124 | LTE upgrade module |
US9495012B2 (en) | 2011-09-27 | 2016-11-15 | Z124 | Secondary single screen mode activation through user interface activation |
US20130097656A1 (en) | 2011-10-17 | 2013-04-18 | John Kennedy | Methods and systems for providing trusted signaling of domain-specific security policies |
US8850133B1 (en) * | 2011-12-20 | 2014-09-30 | Emc Corporation | Using dynamic block sizes in data transfer operations |
US9479549B2 (en) | 2012-05-23 | 2016-10-25 | Haworth, Inc. | Collaboration system with whiteboard with federated display |
US9479548B2 (en) | 2012-05-23 | 2016-10-25 | Haworth, Inc. | Collaboration system with whiteboard access to global collaboration data |
CN104782078B (zh) * | 2012-07-27 | 2019-02-26 | 爱立信(中国)通信有限公司 | 执行文件修复过程的用户设备节点、服务器节点以及方法 |
US10567471B2 (en) * | 2012-10-26 | 2020-02-18 | Sirius Xm Radio Inc. | Systems and methods for cost effective distribution of files to user devices using combination of broadcast and two-way communication paths |
US9071659B2 (en) | 2012-11-29 | 2015-06-30 | Citrix Systems, Inc. | Systems and methods for automatically identifying and sharing a file presented during a meeting |
US9224219B2 (en) | 2012-12-21 | 2015-12-29 | Citrix Systems, Inc. | Systems and methods for presenting a free-form drawing |
US10304037B2 (en) | 2013-02-04 | 2019-05-28 | Haworth, Inc. | Collaboration system including a spatial event map |
US11861561B2 (en) | 2013-02-04 | 2024-01-02 | Haworth, Inc. | Collaboration system including a spatial event map |
US20150341858A1 (en) * | 2014-05-21 | 2015-11-26 | Qualcomm Incorporated | Apparatus, methods, and computer program products providing power savings in sps-configured volte with c-drx |
CA2990957A1 (en) | 2014-06-25 | 2015-12-30 | Daniel Maurice Lerner | Piping assembly control system with addressed datagrams |
JP6717193B2 (ja) * | 2014-06-30 | 2020-07-01 | ソニー株式会社 | 無線通信装置、無線通信方法及びプログラム |
US9646163B2 (en) | 2014-11-14 | 2017-05-09 | Getgo, Inc. | Communicating data between client devices using a hybrid connection having a regular communications pathway and a highly confidential communications pathway |
EP3291507B1 (en) * | 2015-04-27 | 2023-12-13 | Sony Group Corporation | Information processing device, communication system, information processing method and program |
EP3292524B1 (en) | 2015-05-06 | 2020-07-08 | Haworth, Inc. | Virtual workspace viewport follow mode in collaboration systems |
US10623149B2 (en) * | 2017-01-24 | 2020-04-14 | Mediatek Inc. | Blockage detection in millimeter wave radio communications |
CN108631954B (zh) * | 2017-03-24 | 2020-12-11 | 电信科学技术研究院 | 一种数据传输方法及装置 |
US11126325B2 (en) | 2017-10-23 | 2021-09-21 | Haworth, Inc. | Virtual workspace including shared viewport markers in a collaboration system |
US11934637B2 (en) | 2017-10-23 | 2024-03-19 | Haworth, Inc. | Collaboration system including markers identifying multiple canvases in multiple shared virtual workspaces |
US10741143B2 (en) * | 2017-11-28 | 2020-08-11 | Nvidia Corporation | Dynamic jitter and latency-tolerant rendering |
WO2020176517A1 (en) | 2019-02-25 | 2020-09-03 | Haworth, Inc. | Gesture based workflows in a collaboration system |
US11444805B2 (en) * | 2019-08-06 | 2022-09-13 | WiSilica Inc. | Secure over the air upload mechanism for wireless mesh nodes |
US11750672B2 (en) | 2020-05-07 | 2023-09-05 | Haworth, Inc. | Digital workspace sharing over one or more display clients in proximity of a main client |
US11212127B2 (en) | 2020-05-07 | 2021-12-28 | Haworth, Inc. | Digital workspace sharing over one or more display clients and authorization protocols for collaboration systems |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4493021A (en) * | 1981-04-03 | 1985-01-08 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Multicomputer communication system |
US4554656A (en) * | 1982-08-11 | 1985-11-19 | At&T Bell Laboratories | Method and system for controlling the interconnecting of a plurality of local data networks |
US4888767A (en) * | 1984-12-25 | 1989-12-19 | Nec Corporation | Repeat request signal transmission method for multi-station packet communication |
JPS6276840A (ja) * | 1985-09-30 | 1987-04-08 | Hitachi Ltd | ノ−ド装置 |
JPH0771088B2 (ja) * | 1987-04-06 | 1995-07-31 | 古河電気工業株式会社 | 多重伝送方式 |
US4807224A (en) * | 1987-08-21 | 1989-02-21 | Naron Steven E | Multicast data distribution system and method |
US4937819A (en) * | 1988-09-26 | 1990-06-26 | A.T. & T. Paradyne | Time orthogonal multiple virtual dce for use in analog and digital networks |
US5109384A (en) * | 1988-11-02 | 1992-04-28 | Tseung Lawrence C N | Guaranteed reliable broadcast network |
GB2240011B (en) * | 1990-01-11 | 1994-01-19 | Stc Plc | Telecommunications systems |
US5297143A (en) * | 1990-12-03 | 1994-03-22 | Echelon Systems, Corp. | Network communication protocol including a reliable multicasting technique |
US5296936A (en) * | 1991-07-22 | 1994-03-22 | International Business Machines Corporation | Communication apparatus and method for transferring image data from a source to one or more receivers |
JPH05207023A (ja) * | 1992-01-24 | 1993-08-13 | Hitachi Ltd | 大量データ伝送方法 |
US5619689A (en) * | 1993-10-19 | 1997-04-08 | Hughes Electronics | Method and apparatus for confirming delivery of files in a file broadcast system with rebroadcast timing at the receiver |
US5497373A (en) * | 1994-03-22 | 1996-03-05 | Ericsson Messaging Systems Inc. | Multi-media interface |
US5553083B1 (en) * | 1995-01-19 | 2000-05-16 | Starburst Comm Corp | Method for quickly and reliably transmitting frames of data over communications links |
-
1995
- 1995-01-19 US US08375493 patent/US5553083B1/en not_active Expired - Lifetime
-
1996
- 1996-01-16 DE DE69636201T patent/DE69636201T2/de not_active Expired - Lifetime
- 1996-01-16 AT AT96909466T patent/ATE209411T1/de not_active IP Right Cessation
- 1996-01-16 ES ES96909466T patent/ES2163011T3/es not_active Expired - Lifetime
- 1996-01-16 WO PCT/US1996/000634 patent/WO1996022641A2/en active IP Right Grant
- 1996-01-16 DK DK96909466T patent/DK0804838T3/da active
- 1996-01-16 EP EP96909466A patent/EP0804838B1/en not_active Revoked
- 1996-01-16 US US08/585,948 patent/US5727002A/en not_active Expired - Lifetime
- 1996-01-16 EP EP01112388A patent/EP1128591B1/en not_active Expired - Lifetime
- 1996-01-16 AU AU52950/96A patent/AU5295096A/en not_active Abandoned
- 1996-01-16 AT AT01112388T patent/ATE328417T1/de not_active IP Right Cessation
- 1996-01-16 JP JP52237396A patent/JP3690809B2/ja not_active Expired - Lifetime
- 1996-01-16 DE DE69617204T patent/DE69617204T2/de not_active Revoked
-
1998
- 1998-01-23 US US09/012,386 patent/US6151696A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH10512726A (ja) | 1998-12-02 |
US5727002A (en) | 1998-03-10 |
WO1996022641A2 (en) | 1996-07-25 |
AU5295096A (en) | 1996-08-07 |
DE69617204T2 (de) | 2002-07-04 |
US6151696A (en) | 2000-11-21 |
US5553083B1 (en) | 2000-05-16 |
ES2163011T3 (es) | 2002-01-16 |
EP0804838B1 (en) | 2001-11-21 |
DE69636201D1 (de) | 2006-07-06 |
ATE328417T1 (de) | 2006-06-15 |
DE69636201T2 (de) | 2007-05-16 |
EP1128591A2 (en) | 2001-08-29 |
ATE209411T1 (de) | 2001-12-15 |
EP0804838A2 (en) | 1997-11-05 |
WO1996022641A3 (en) | 1997-01-16 |
DK0804838T3 (da) | 2002-03-18 |
EP1128591B1 (en) | 2006-05-31 |
EP1128591A3 (en) | 2002-03-06 |
US5553083A (en) | 1996-09-03 |
DE69617204D1 (de) | 2002-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3690809B2 (ja) | 不要な再送信を防止するarq技術を用いたネットワークマルチキャスティング方法 | |
Yavatkar et al. | A reliable dissemination protocol for interactive collaborative applications | |
US6453438B1 (en) | System and method for automatically rescheduling a data transmission to members of a group | |
US5905871A (en) | Method of multicasting | |
US7020714B2 (en) | System and method of source based multicast congestion control | |
Talpade et al. | Single connection emulation (SCE): An architecture for providing a reliable multicast transport service | |
EP0969622B1 (en) | Method and computer program product for efficiently and reliably sending small data messages from a sending system to a large number of receiving systems | |
US6577599B1 (en) | Small-scale reliable multicasting | |
US6392993B1 (en) | Method and computer program product for efficiently and reliably sending small data messages from a sending system to a large number of receiving systems | |
US6507562B1 (en) | Dynamic optimization for receivers using distance between a repair head and a member station in a repair group for receivers having a closely knit topological arrangement to locate repair heads near the member stations which they serve in tree based repair in reliable multicast protocol | |
EP2211270A2 (en) | Methods and systems for testing stateful network communications devices | |
US20030031175A1 (en) | Method of multicasting | |
KR20030093221A (ko) | 통신 네트워크를 통한 데이터 전송 방법, 프로그램 요소,컴퓨터 소프트웨어 제품 및 컴퓨터 시스템 | |
WO2000062495A1 (en) | Method of multicast file distribution and synchronization | |
JP2003515269A (ja) | 送信システム | |
WO2001069853A2 (en) | Synchronised data delivery | |
JP2002507857A (ja) | 最小時間のマルチキャストグラフト・ジョイン復元の方法、装置および媒体 | |
EP1018248A1 (en) | Congestion control in reliable multicast protocol | |
Buskens et al. | Reliable multicasting of continuous data streams | |
CN111371888B (zh) | 一种基于纠删编码的多源数据传输系统及方法 | |
Sano et al. | Monitoring-based flow control for reliable multicast protocols and its evaluation | |
Gemmell et al. | In search of an api for scalable reliable multicast | |
El-Marakby et al. | A scalability scheme for the real-time control protocol | |
Dunigan et al. | Pvm and ip multicast | |
Azcorra et al. | " A Network-Based Approach to Reliable Multicast |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040921 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20041221 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20050214 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050322 |
|
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: 20050524 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050614 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
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: 20080624 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090624 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100624 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110624 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110624 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120624 Year of fee payment: 7 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120624 Year of fee payment: 7 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120624 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130624 Year of fee payment: 8 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |