JP5164123B2 - スループットの向上を実現するシステム及び方法 - Google Patents

スループットの向上を実現するシステム及び方法 Download PDF

Info

Publication number
JP5164123B2
JP5164123B2 JP2009189263A JP2009189263A JP5164123B2 JP 5164123 B2 JP5164123 B2 JP 5164123B2 JP 2009189263 A JP2009189263 A JP 2009189263A JP 2009189263 A JP2009189263 A JP 2009189263A JP 5164123 B2 JP5164123 B2 JP 5164123B2
Authority
JP
Japan
Prior art keywords
data
data unit
encoding
endpoint
communication
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 - Fee Related
Application number
JP2009189263A
Other languages
English (en)
Other versions
JP2010063094A (ja
Inventor
マシュー・ロバート・ウィリアムズ
ジョナサン・エヌ・クレスマン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LiveQoS Inc
Original Assignee
LiveQoS Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by LiveQoS Inc filed Critical LiveQoS Inc
Publication of JP2010063094A publication Critical patent/JP2010063094A/ja
Application granted granted Critical
Publication of JP5164123B2 publication Critical patent/JP5164123B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0006Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
    • H04L1/0007Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0015Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0023Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the signalling
    • H04L1/0026Transmission of channel quality indication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0033Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the transmitter
    • H04L1/0035Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the transmitter evaluation of received explicit signalling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/08Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0067Rate matching
    • H04L1/0068Rate matching by puncturing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0072Error control for data other than payload data, e.g. control data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/009Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location arrangements specific to transmitters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements 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/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1809Selective-repeat protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements 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/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1812Hybrid protocols; Hybrid automatic repeat request [HARQ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0097Relays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/166IP fragmentation; TCP segmentation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/326Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the transport layer [OSI layer 4]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Description

本発明は、通信データネットワークに関する。特に、本発明は、転送ネットワークの端から見て、転送ネットワークによるデータ伝送のスループットを増加させるシステム及び方法に関する。
全部ではないがほとんどの転送ネットワークは、データストリームをより小さなデータのパケット(パケットは、第1の送信元のネットワーク又はエンドポイントから、第2の転送ネットワークを介して、第3の送信先のネットワーク又はエンドポイントへ送信される。)に分割するパケットベースのネットワークである。しかしながら、混雑や他のネットワークの制限により、全てのパケットが送信先のネットワークに到達するのに成功するわけではない。送信元のネットワークと終端の送信先のネットワークに対して重要なのは、転送ネットワークの性能である。転送ネットワークは、終端ネットワークでのアプリケーションの視点から、理想的にはパケットの紛失のない完璧なものでなければならない。しかしながら、それは、高性能の転送ネットワークを借りるときの通常の費用よりも安い価格で、そのような性能が得られる場合には好ましい。
それ故、低価格の通信転送ネットワークと共に、転送ネットワークの高性能を目的として終端ネットワークのアプリケーションを提供するのに用いることができるシステム及び方法が必要である。
上記状況に対処する取り込みが試みられた。ある取り組みにおいては、カスタムのプロトコルスタックが、紛失とレイテンシへの対応を改善するためにエンドポイントにインストールされている。しかしながら、この取り組みは、両方の終端ネットワークが同一のカスタムプロトコルに従って通信することを必要とし、一般に大規模な再プログラミングを必要とする。
他の取り組みは、標準プロトコルを傍受して遠端の要素の代わりにプロトコルレスポンスを送信するネットワーク要素を使用している。カスタムプロトコルは、傍受するネットワーク要素間で使用される。この取り組みは、TCP/IPアプリケーションに限定され、特に、ネットワークの問題のトラブルシューティングに関し、複雑性を増す。
第1の態様において、信頼できないネットワークでのデータ通信を高速化する方法を提供する。その方法は、2つのエンドポイントの各々に関連付けられた符号化コンポーネントを通信に提供するステップを含む。それから、それぞれの符号化コンポーネント間の符号化されたチャネルが、エンドポイント間の通信セッションのために確立される。それから、通信セッションに関連するデータパケットが、符号化コンポーネントのうちの1つで傍受される。データパケットは分割してマークを付けられて、他方の符号化コンポーネントへの送信のために、符号化されたデータセグメントが提供される。それから、符号化されたデータセグメントと少なくとも1つの追加のセグメントが、符号化されたチャネルにより、他方の符号化コンポーネントに送信される。そこで、それらは復号され且つ組み立て直されて、データパケットが再現される。それから、組み立て直されたデータパケットは、他方の符号化コンポーネントからそれぞれのエンドポイントに送信される。所定のタイムアウト時間内にさらなるパケットが送信されなければ、符号化されたチャネルは解体されうる。
実施形態によれば、符号化されたチャネルを確立するステップは、2つのエンドポイントのうちの1つから発生して、2つのエンドポイントのうちの他方へ向かうメッセージを検出するステップと、通信セッションを一意的に識別する情報を格納するステップと、メッセージへのリプライを検出するステップと、そのリプライを以前に格納された通信セッションを識別する情報と照合するステップと、そのリプライを傍受するステップと、そのメッセージに応答するエンドポイントが、両者の符号化コンポーネントに知られているプロトコルに従ってデータパケットを分割して符号化することが可能であることを示すように、そのリプライにマークを付けるステップと、メッセージを発生するエンドポイントにそのマークされたリプライを転送するステップと、符号化コンポーネント間で、制御メッセージを交換して、符号化されたチャネルを確立するステップと、を含むことができる。
他の実施形態によれば、符号化されたチャネルを確立するステップは、2つのエンドポイントのうちの1つから発生して、2つのエンドポイントのうちの他方へ向かうメッセージを検出するステップと、通信セッションを一意的に識別する情報を格納するステップと、メッセージへのリプライを検出するステップと、そのリプライを以前に格納された通信セッションを識別する情報と照合するステップと、メッセージを発生するエンドポイントに配送する前にそのリプライを傍受するステップと、そのリプライが、メッセージに応答するエンドポイントが、両者の符号化コンポーネントに知られているプロトコルに従ってデータパケットを分割して符号化することが可能であることを示すようにマークされているかどうかを判断するステップと、制御メッセージを送信して、符号化コンポーネント間で符号化されたチャネルを確立するステップと、を含む。リプライにマークを付けるステップは、IPヘッダのオプションを設定するか、又は識別フィールドを既知の値に設定するステップ、を含んでもよい。
さらに他の実施形態では、符号化されたチャネルを確立するステップは、2つのエンドポイント間で既知のプロトコルに従って関連する通信を確立する1つの通信セッション内で制御メッセージ(制御メッセージは、関連する通信セッションの送信元と送信先のポートの識別を含み)を検出するステップと、検出された制御メッセージに応答して符号化されたチャネルを生成するステップと、を含む。制御メッセージを傍受するステップは、例えば、深いパケット分析を制御メッセージに適用するステップを含んでもよい。この実施形態は、例えば、RTSP通信及びH.323通信のために使用されうる。
データパケットを分割してパッケージ化するステップは、所定の符号化レートでデータパケットをデータセグメントに分割するステップ、又は動的に調整される符号化レートでデータパケットをデータセグメントに分割するステップを含んでもよい。動的に調整される符号化レートは、複数の通信セッションのそれぞれについての紛失率を監視するステップと、各通信セッションの紛失率に従って、平均紛失率を決定するステップと、通信セッションの紛失率と平均紛失率を、2つのエンドポイントのうちの他方に伝送して、2つのエンドポイントのうちの他方がその符号化レートを調整することを可能にするステップと、により決定されてもよい。データパケットを分割してパッケージ化するステップは、データパケットのヘッダを変更して、変更したヘッダを符号化されたデータセグメントのそれぞれに加えるステップをさらに含んでもよい。ヘッダを変更するステップは、例えば、TCPヘッダのシーケンス番号を変更することを含んでも良い。特定のデータパケットから得られるセグメント毎の識別情報(シリアル番号など)もまた各セグメントに付加されてもよい。
さらなる態様において、信頼できないネットワークでの高速なデータ通信のための符号化データの符号化レートを設定する方法を提供する。その方法は、複数の通信セッションのそれぞれについて符号化されたチャネルを確立するステップと、各通信セッションの紛失率を監視するステップと、を含む。平均紛失率は、各通信セッションの紛失率に従って決定される。通信セッションの紛失率と平均紛失率は、それぞれのエンドポイントに伝送され、エンドポイントがそれぞれの紛失率を低減できるようにその符号化レートを調整可能にする。紛失率を監視するステップは、紛失率を観測するステップと、報告された紛失率を受信するステップと、を含んでもよい。
さらなる態様は、例えば、リアルタイム・ストリーミング・プロトコル(RTSP)によって又はH.323エンドポイント間で、映像データ又は音声データを配信する方法、又は一方向の通信セッションを符号化する方法を提供する。その方法は、クライアントとサーバで符号化コンポーネントを提供するステップを含む。符号化コンポーネントで、デフォルトのポートに向かうメッセージが検出され、且つ深いパケット分析により解析されて、メッセージのためのセッションの識別が判別される。それから、符号化コンポーネントで、メッセージへのリプライが検出され、解読されて、通信セッションに関して、ユーザに割り当てられた通信ポートが判断される。それから次のデータパケットが検査されて、それらの送信元ポート及び送信先ポートが判別される。割り当てられた通信ポートに合致する送信元ポート及び送信先ポートを持つ各データパケットは、分割されマークされて、クライアントへの送信のための符号化されたデータセグメントが提供される。クライアントに関連付けられている符号化コンポーネントで、受信した符号化されたデータセグメントに基づいて、データパケットが復号されて組み立て直される。実施形態において、深いパケット分析は、正規表現関数を用いて達成されうる。
本発明の他の態様及び特徴は、添付の図面と共に本発明の具体的な実施形態の以下の説明を精査することにより、当業者には明らかとなる。
本発明が実施される環境のブロック図 図1において使用されるサーバの要素を示すブロック図 図1において使用される他のサーバの要素を示すブロック図 第1のデータユニットが受信されて、転送ネットワークに送信するために第2のデータユニットに変換されるときに実行されるステップを示すフローチャート 第2のデータユニットが転送ネットワークから受信されて、終端ネットワークに送信するために第1のデータユニットに変換されるときに実行されるステップを示すフローチャート 本発明の実施形態における典型的なシステムと通信ネゴシエーションプロトコルを示す図 本発明における一般的なパケットの分割と符号化を示す図 本発明の実施形態における典型的なパケットの分割と符号化を示す図 紛失の統計が決定されうる環境を示す図
本出願は、2004年8月6日に出願された米国出願第10/912200の一部継続出願である。米国出願第10/912200の内容は、参照することにより全体がここに組み込まれる。
本発明の実施形態を、添付の図面を参照して、一例として以下に説明する。
図1に、本発明が実施される環境のブロック図を示す。第1のエンドポイント10は、ネットワーク20を介して、第2のエンドポイント30と通信する。第1のエンドポイント10とネットワーク20は、符号化/復号化コンポーネント40を介して通信し、ネットワーク20は符号化/復号化コンポーネント50を介して第2のエンドポイント30と通信する。符号化/復号化コンポーネント40、50(以下、符号化コンポーネントと呼ぶ。)は、エンドポイントで又は中間装置(サーバなど)内に常駐してもよい。第1のエンドポイント10及び第2のエンドポイント30は、モデム、ローカルエリア・ネットワーク又は広域ネットワーク、又はネットワーク20にアクセスする他の装置又はシステムを使用して接続されるパーソナル・コンピュータなどの端末であってもよい。ネットワーク20は、例えば、インターネット又は他の通信ネットワークであってもよい。
ここで使用されるように、データユニットは、ネットワークによりデータをデジタルで送信するのに使用されうる任意の単位のデータである。このようなデータユニットは、データがその単位内でカプセル化されるか又はペイロードとして伝送されるのであれば、パケット、セル、フレーム、又は任意の他の単位の形をとりうる。データユニットの用語は、特定のプロトコル、規格、又は伝送方式を満たすありとあらゆるパケット及びフレームに適用されうる。一般的に、ヘッダ、伝送ルーティング、制御情報及び識別情報が、データのペイロードに追加される。
本システムは、ネットワーク20の予測のつかない変化からエンドポイントを防護する手段を提供する。符号化コンポーネント40及び50は、データユニットの符号化及び復号化、及びネットワーク20を通じた送信を扱うことにより、ネットワーク20からエンドポイント10及び30を防護する手段を備える。エンドポイント10及び30は、符号化コンポーネント40及び50がしうるように、任意のプロトコルを使用して通信できる。符号化コンポーネント40及び50は、エンドポイント10及び30からあるプロトコルのオリジナルのデータユニットを受信して、オリジナルのデータユニットをなるべくより小さなデータユニットにさらに分割し、転送ネットワークを通じて送信されるデータユニットのいくつかが失われたときにオリジナルのデータユニットを再生成又は再構築するのに使用されうる追加のデータユニットを生成し、転送ネットワークを介して送信する前に現在のプロトコルに従って、再分割されたデータユニット及び追加のデータユニットをパッケージし直すことにより、オリジナルのデータユニットを符号化する。
転送ネットワーク20を通じて送信されるデータユニットが、遠くのエンドポイントに関連付けられている符号化コンポーネントで受信されるとすぐに、送信元のエンドポイントからオリジナルのデータユニットが再生成又は再構築される。この再生成又は再構築は、必要であれば、受信したデータユニットを並べ換え、且つ、いくつかのデータユニットが転送中に紛失していた場合は、追加のデータユニットを用いて紛失したデータユニットを再生成することにより、行われる。受信した追加のデータユニットがオリジナルのデータユニットを再生成するのに不十分な場合、受信側の符号化コンポーネントは、送信前にデータユニットの再送信を任意に要求することができる。
説明を簡単にするために、エンドポイントから発生する又はエンドポイントで受信されるデータユニットを、第1のタイプのデータユニットである、第1のデータユニット又はパケットと呼ぶ。転送ネットワークを越えて送信される及び/又は転送ネットワークから受信されるデータユニットを、第2のタイプのデータユニットである、第2のデータユニット又はセグメントと呼ぶ。第2のデータユニットは、符号化されたデータユニットとも呼ぶ。
図2は、符号化コンポーネント40内における本発明を実施するのに必要なモジュールとそれらのそれぞれのデータフローの典型的な実施例を示す。モジュールは、1つの機器内に常駐するか、又はいくつかの機器間で割り振られうる。図に示すように、符号化コンポーネント40は、第1のインターフェース60、第2のインターフェース70、再組み立てモジュール80、及び分割モジュール90を備える。第1のインターフェース60は、第1のデータユニットをエンドポイント10に送信し且つエンドポイント10から第1のデータユニットを受信する。サーバ40の第2のインターフェース70は、転送ネットワーク20に第2のデータユニットを送信し且つ転送ネットワーク20から第2のデータユニットを受信する。
再組み立てモジュール80は、第2のインターフェース70から第2のデータユニットを受信し且つ第1のインターフェース60を介して第1のネットワーク10に送信される第1のデータユニットを生成する。一方、分割モジュール90は、第1のインターフェース60から第1のデータユニットを受信し且つ第2のインターフェース70を介して転送ネットワーク20に送信される第2のデータユニットを生成する。
第2のデータユニットは、転送ネットワークを介して送信されるとすぐに、他方のエンドポイントで符号化コンポーネントにより受信される。これを説明するために、図3は、転送ネットワーク及びエンドポイント30と通信する符号化コンポーネント50のモジュールとデータフローの典型的な実施例を示している。
符号化コンポーネント50内のモジュールは、符号化コンポーネント40のモジュールと同一であり、実際に同一の機能を備える。符号化コンポーネント50の第2のインターフェース70Aは、転送ネットワークと通信し、第2のデータユニットを送受信する。第1のインターフェース60Aは、エンドポイント(この場合、エンドポイント30)と通信し、第1のデータユニットを送受信する。再組み立てモジュール80Aは、第2のデータユニットを受信して第1のデータユニットを生成し、分割モジュール90Aは、第1のデータユニットを受信して第2のデータユニットを生成する。
上述の通り、第1のデータユニットは、終端ネットワークにより使用されるデータユニットであり、第2のデータユニットは、転送ネットワーク及び符号化コンポーネント40、50により互いにデータを送受信するときに使用される。第2のデータユニットは、第1のデータユニットから導き出される。第1のデータユニットのペイロードは、より小さなユニットに分割され、それぞれのより小さなユニットは第2のデータユニットのペイロードになりうる。そのため、各第2のデータユニットは、オリジナルの第1のデータユニット(その第1のデータユニットから第2のデータユニットが得られる。)よりも小さい。一例として、10kBの第1のデータユニットは、5つの2kBのユニットに再分割されてもよい。これらは、5つの第2のデータユニット(各々は10kBより小さい。)のペイロードであっても良い。第1のデータユニットから第2のデータユニットを生成するこの機能は、分割モジュール90、90Aにより成し遂げられる。
また、第2のデータユニットが得られるオリジナルの第1のデータユニットを再生成するのを支援するために、分割モジュールは、追加の第2のデータユニットを生成する。これらの追加の第2のデータユニットは、第1及び第2のデータユニットから得られる。追加の第2のデータユニットは、転送ネットワークを使用した送信の間に、1以上の第2のデータユニットが紛失した場合における、オリジナルの第1のデータユニットの再生成又は再組み立てに際し、再組み立てモジュール80、80Aを支援する。
追加の第2のデータユニットは、多くの形式を取りうる。もしかすると、最も簡単な実施例において、追加の第2のデータユニットは、送信前に選択された第2のデータユニットの単なるコピーである。一例として、第1のデータユニットが4つの第2のデータユニット(例えば、DU1、DU2、DU3、DU4)に分割される場合、追加の第2のデータユニットは、DU2及びDU3のコピーでありうる。この場合、DU2及びDU3が送信中に紛失してしまった場合であっても、オリジナルの第1のデータユニットが再生成されうる。複製される第2のデータユニットの数と識別は予め定まっているか、又はシステム管理者の裁量に委ねられうる。ネットワーク20の現実の又は予期された程度の紛失に応じて、より多くの複製の第2のデータユニットを含むことにより、より多くの冗長性がシステムに組み込まれ、反対に、より少ない複製の第2のデータユニットを含むことにより、より少ない冗長性がシステムに組み込まれうる。最も簡単な場合では、全ての第2のデータユニットが複製されて、実質的に、各第2のデータユニットの2部のコピーが送信先の符号化コンポーネントに送信されることを確実にできる。
同等のデータユニットが、第2の追加のデータユニットとして使用されうる。当技術分野で周知のように、同等のデータユニットはXOR関数を用いて生成されうる。オリジナルの第1のデータユニットから生成される種々の第2のデータユニットのビットは、排他的論理和をとられて、追加の第2のデータユニットに格納されうるビット値となる。第2のデータユニット(追加の第2のデータユニットを含まない。)のいずれか1つが送信中に紛失した場合、残りの受信された第2のデータユニットと追加の第2のデータユニットが、紛失した第2のデータユニットを再生成するのに使用されうる。受信した第2のデータユニットと追加の第2のデータユニットに対してXOR関数を実行することにより、紛失している第2のデータユニットを再生成する。
追加の第2のデータユニットが、他の消失訂正符号を用いて、符号化されてもいいことに注目すべきである。一例として、n個の第2のデータユニットが1つの第1のデータユニットのために生成される場合、m個の追加の第2のデータユニットが、紛失した第2のデータユニットが再生成可能となるように生成されてもよい。上述したように、m個の追加の第2のデータユニットが“重複する”第2のデータユニットと見なされても良く、単なる複製が用いられる場合、m≦nの完全な複製はm=nで達成される。しかしながら、消失訂正符号が、m=2で使用される場合、任意の2つの第2のデータユニットが紛失し、再組み立てモジュールが紛失した第2のデータユニットを再構築できるような方法で、重複する情報を符号化することが可能である。リードソロモン、前方消失訂正技術、及びBCH(Bose-Chaudhuri-Hochquenghem)符号などの周知の方法及びコーディング技術、及び多数の他のものが使用されてもよい。
追加の第2のデータユニットがいくつかの第2のデータユニットの紛失の影響を弱めることを助けるはずであるが、第2のデータユニットがあまりに多く紛失していると、完全にそれを埋め合わすことができなくなる。そのため、閾値を越える数の第2のデータユニットを紛失した場合、適宜、再組み立てモジュールに第2のデータユニットのパッケージ又はグループの再送信を要求させることができる。一例として、追加の第2のデータユニットがデータユニットの25%の紛失から回復可能であり且つ1つの第1のデータユニットから生成された4つの第2のデータユニットがある場合、1つの第2のデータユニットの紛失は、再送信の要求を引き起こさない。しかし、第2のデータユニットが2つ紛失している場合(すなわち、50%の紛失)、再組み立てモジュールは再送信を要求することができる。もし、再送信が有効であれば、再送信の閾値は、理想的には、追加の又は重複する第2のデータユニットのために使用されるコーディングのエラー訂正能力又は紛失訂正能力に関連する。再組み立てモジュールは、第2のデータユニットのペイロードを適切に並べる必要があるため、分割された第1のデータユニット毎に受信される第2のデータユニットの数を把握することができる。
上述からわかるように、再組み立てモジュール80及び80Aは、受信した第2のデータユニットを復号して組み立て直し、オリジナルの第1のデータユニットを形成する。受信された第2のデータユニット及び追加の第2のデータユニットは追跡されて、オリジナルの第1のデータユニットを再生成するのに十分な数が受信されたかどうかが判断される。十分な数が受信されなかった場合、再送信が適宜要求されうる。いくつかの第2のデータユニットしか紛失していない場合は、再組み立てモジュールは紛失している第2のデータユニットを再生成又は再構築できる。上述したように、この処理は、使用されるコーディングと採用される総合的な戦略に依存する。このような復号化及びエラー訂正の処理は、当業者には周知である。
必要とされる数の第2のデータユニットが受信されるとすぐに、それらのペイロードが抽出されて、第2のデータユニットが得られるオリジナルの第1のデータユニットを再構築するのに使用される。これは、第2のデータユニットのペイロードを連結させて、再構築された第1のデータユニットを生じさせるのと同じぐらい簡単かもしれない。しかしながら、復号化に関して上述したように、再構築処理は、オリジナルの第1のデータユニットを分割するのに使用される処理に依存する。オリジナルの第1のデータユニットは再構築されるとすぐに、受信側のエンドポイントと通信する適切なインターフェースに転送されうる。
分割モジュールに関し、これらのモジュールは、第1のデータユニットを分割し、分割されたセグメントを第2のデータユニットに「再パッケージ化」するタスクを実行する。分割モジュールは、上述したように、追加の第2のデータユニットを符号化する。それから、第1のデータユニットと追加の第2のデータユニットから得られた第2のデータユニットは、転送ネットワークと通信するインターフェースモジュールに伝送される。また、第2のデータユニットの任意の再送信を促進するために、分割モジュールは第2のデータユニットをバッファリングすることができる。一例として、5つの第1のデータユニットが20個の第2のデータユニットと5つの追加の第2のデータユニットに分割された場合、分割モジュールは、符号化された最後の3つの第1のデータユニットに対応する最後の3つの第2のデータユニットをバッファリングできる。よって、12個の第2のデータユニットと3つの追加の第2のデータユニットが分割モジュールによりバッファリングされる。
また、分割モジュールは、複数の第2のデータユニットの紛失のリスクを異なる分割された第1のデータユニットに広める交互的な方法で第2のデータユニットを送信するように構成されうる。それ故、第2のデータユニットの各グループが1つの第1のデータユニットに対応するように第2のデータユニットのグループを連続して送信する代わりに、異なる第1のデータユニットからの第2のデータユニットが互いにインターリーブされうる。説明のために、第1のデータユニットA、B、Cはそれぞれ、第2のデータユニットDU−A1、DU−A2、DU−A3、DU−B1、DU−B2、DU−B3、DU−C1、DU−C2、DU−C3に分割されることが仮定されうる。それぞれの第1のデータユニットに従ってグループ化された第2のデータユニットを送信する代わりに、それらはインターリーブされうる。第2のデータユニットが、3つのデータユニットのグループで送信される場合、第1のグループは、DU−A1、DU−B1、及びDU−C1でありうる。他のグループは、DU−A2、DU−B2、及びDU−C2などでありうる。この構想を用いると、あるグループが紛失しても、第1のデータユニットの全体が紛失したのではなく、3つの第1のデータユニットのうちの1/3のみが紛失したこととなる。採用されるコーディング及び戦略に従って、この種の紛失が回復可能であってもよい。
符号化コンポーネント40及び50の1つにより実現されるような本発明の典型的な方法が、図4に示されている。そのプロセスは、送信元のエンドポイントからの第1のデータユニットを受信することにより始まる(ステップ100)。受信後、第1のデータユニットは分割(すなわちセグメント化)されて(ステップ110)、セグメントが第2のデータユニットにパッケージ化される(ステップ120)。第2のデータユニットが生成されるとすぐに、追加の(すなわち、重複する)第2のデータユニットが符号化され生成される(ステップ130)。それから、第2のデータユニットが任意にバッファリングされ(ステップ140)、転送ネットワークに送信される(ステップ150)。それから、その方法はコネクタAを介してステップ100に戻る。再送信が有効であれば、再送信の要求についての任意の検査が非同期的に行われる(ステップ160)。そのような要求が受信されると、決定のフローはステップ150に戻り、要求された第2のデータユニット(任意のステップ140で以前にバッファリングされている。)が送信される。
図5は、転送ネットワークから第2のデータユニットを受信する符号化コンポーネントにより実行されるステップの典型的な実施例を示す。プロセスは、サーバが転送ネットワークから第2のデータユニットを受信することにより始まる(ステップ180)。決定190は、第2のデータユニットが得られた第1のデータユニットを再構築するために、全ての第2のデータユニットが受信されたかどうかを判断する。すべての第2のデータユニットが受信された場合、オリジナルの第1のデータユニットが再生成される(ステップ200)。第1のデータユニットは、再生成されるとすぐに、送信先のエンドポイントに送信される(ステップ205)。制御フローはコネクタDを介してステップ180に戻る。
決定190に戻り、全ての第2のデータユニットが受信されたわけではない場合は、決定は、追加の第2のデータユニットが受信されたかどうかを判断する(ステップ220)。追加の第2のデータユニットが受信されていない場合、再送信が任意に要求されうる(ステップ230)。任意の再送信要求の後、制御フローは、コネクタDを介してステップ180に戻る。追加の第2のデータユニットが受信された場合は、決定240は、オリジナルの第1のデータユニットを再構築するのに十分な数の追加の第2のデータユニット及び第2のデータユニットが受信されたかどうかを判断する。受信された数が不十分であれば、オリジナルのパケットは取りさげられるか、又は任意に制御フローは、コネクタCにより示されるように再送信を要求するステップ230に戻りうる。十分な数の第2のデータユニットと追加の第2のデータユニットが受信された場合は、追加の第2のデータユニットは紛失している第2のデータユニットを再生成又は再構築するのに使用されうる(ステップ260)。それから、コネクタBが制御フローをステップ200に戻す。
いくつかの特定の実施の例は、本システム及び方法の動作を理解するのに役立つ。図6は、エンドポイントA及びエンドポイントBを備えた典型的なシステムを示す。エンドポイントAは、符号化コンポーネント302を介して、インターネットなどのネットワーク300と通信する。エンドポイントBは、符号化コンポーネント304を介して、ネットワーク300と通信する。符号化コンポーネント302及び304は、図2及び図3に関連して説明した、インターフェース、分割モジュール、及び再組み立てモジュールを含み、全体的にソフトウェアにより実現されうるか、又は予めプログラムされたハードウェアのユニット、他の関連するソフトウェア、又はハードウェアとソフトウェアのコンポーネントの組み合わせとして実現されうる。イーサネット又は他の適切な接続が、各エンドポイントをそれぞれの符号化コンポーネントに接続するのに使用されうる。
この例のために、エンドポイントAとエンドポイントBとの間で双方向の通信が発生しており、エンドポイントAが通信を開始することが仮定される。現在の通信プロトコルは、エンドポイントAとエンドポイントBの両方において見えず、全ての機能性が符号化コンポーネント302及び304内に備わっている。エンドポイントA、B間のセッションを立ち上げ、両方のエンドポイントが符号化コンポーネントに関連付けられて、現在のプロトコルに従った通信が可能かどうかを判断するために、図6に示される通信ネゴシエーションプロトコルが使用されうる。エンドポイントAは、エンドポイントB向けのパケットPを送信する。パケットPとその送信先は符号化コンポーネント302により検出され又は気付かれ(306)、符号化コンポーネント302は通信セッションを一意的に識別する情報を格納する。また、パケットPは符号化コンポーネント304により検出され又は気付かれる(308)。符号化コンポーネント304は、パケットに関連する通信セッションを一意的に識別する情報を格納し(310)、そのパケットをエンドポイントBに送信する。エンドポイントBがリプライパケットRをエンドポイントAに送信するとき、リプライパケットRは符号化コンポーネント304により傍受され、以前に格納された通信セッションを識別する情報と照合され、マークを付けられる(312)。通信セッションを一意的に識別する情報は、例えば、送信元IPアドレス、送信先IPアドレス、IPパケット内に含まれるプロトコル(例えば、UDP又はTCP)、及び送信元及び送信先ポートでありうる。イーサネットフレームでは、VLANのIDが使用されうる。
マークされたパケットRは、符号化コンポーネント304が本発明により分割され符号化されたパケットを送受信できることを符号化コンポーネント302に知らせるのに使用されうる。パケットにマークをつけることは、例えば、パケットのIPヘッダに選択肢を設定すること、及び/又は、IP識別フィールドに既知の値を設定することからなる。公衆ネットワーク300内のルータ及び他の機器は、送信中、IP識別フィールドを不変にしておいてもよい。現在のプロトコルに従って通信することができない機器になるべく悪影響を及ぼさないならば、タイムスタンプのIPアドレスフラグを設定するなどの他の適当なマーク付け及びしるし付けの構想が用いられうる。
それから、符号化コンポーネント304は、公衆ネットワーク300を介して、マークされたパケットRをエンドポイントAに転送する。マークされたパケットRは、符号化コンポーネント302により検出される。符号化コンポーネント302は、以前格納した通信セッションを識別する情報を更新し(316)、パケットをエンドポイントAに送信する。符号化コンポーネント302は、パケットをエンドポイントAに転送する前にマークを任意に取り除くことができる。エンドポイントAがエンドポイントB向けの他のパケットPを送信するとき、符号化コンポーネント302は、そのパケットPを以前に格納した通信セッションを識別する情報と照合する(318)。符号化コンポーネント302は、エンドポイントBが現在のプロトコルに従って通信をすることが可能な符号化コンポーネントを備えていることを認識すると、パケットPの転送に加えて、「hello」メッセージを送信する。
符号化コンポーネント304は、符号化コンポーネント302からの「hello」メッセージを受け取り次第、「hello」リプライで応答する。それから、符号化コンポーネント302は、リプライの確認応答(リプライのACK)を符号化コンポーネント304に送信し、現在のプロトコルを使用して、エンドポイントBに向かう予定のデータパケットの分割及び符号化を開始する。コンポーネント304はコンポーネント302からのリプライの確認応答を受信すると、エンドポイントAに向かう予定のデータパケットの分割及び符号化を開始して、上述した第2のデータユニットを提供する。それ故、符号化コンポーネント302及び304間の符号化されたチャネルは、首尾良く自動的に検出され且つ取り決められる。符号化されたチャネルは、データと制御情報の両方を運ぶのに使用されうる。符号化されたチャネルが、現在のプロトコルを使用することが可能な2つの符号化コンポーネント間で取り決められるとすぐに、分割された及び/又は符号化されたメッセージが送信され受信されうる。符号化されたチャネルは、所定のタイムアウト時間(その間、符号化コンポーネントはさらなるパケットを受信しない。)が経過するまでアクティブのままである。それから両サイドは、符号化されたチャネルを解体する。また、2つのエンドポイント間で符号化されたチャネルを取り決めるための他の方法が検討される。例えば、符号化されたチャネルは、通信へのエンドポイント間で、予め存在する制御チャネルを通じて取り決められ得る。
エンドポイントとコンポーネント302及び304間の全ての通信は、確立された又は既存の通信チャネル上で発生することに注目すべきである。チャネルは、IPより上位のUDP(Universal Datagram Protocol)及びTCP(Transmission Control Protocol)などの知られている通信プロトコルを実行することができる。接続がUDP接続の場合、本発明によるメッセージは、UDPのデータペイロードに直接挿入される。
既存のTCP接続によりデータを送信する場合、オリジナルのTCPヘッダは、変更されたシーケンス番号と共に、各セグメントに付け加えられ得る。それ故、送信元ポートと送信先ポートは同一のままである。第1のセグメントはオリジナルパケットのシーケンス番号を与えられるが、その後のセグメントには新しいシーケンス番号が付けられる。好ましい本実施形態においては、符号化された又は追加のセグメントは、それに関連するセグメントのうちの1つのシーケンス番号を再使用する。これは、追加のセグメントが、再送信されるパケットと同一の方法でファイアウォールを通過することを可能にする。データオフセットとチェックサムは不変のままであるが、フラグ又は制御ビットは最初のセグメントを除くすべてにおいて変更される。分割されていないメッセージ(すなわち、制御メッセージ)については、残りのメッセージのバイトが変更されたTCPヘッダのすぐ後に続く。分割されたメッセージについては、セグメントのペイロードが変更されたTCPヘッダに続き、例えば、あるセグメントと、他のセグメントとの関連とを識別するシリアル番号などの識別情報を提供し、オリジナルのパケットの再組み立てを可能にする。それから、セグメントのデータペイロードが続く。
理解されるように、上述したマークされた又は生成されたパケットは、ファイアウォールとNAT(Network Address Translation)変換装置を問題にならないで通過する。効率的に、符号化されたチャネルは、符号化コンポーネント302及び304間の制御チャネルを確立し、パケットはファイアウォール又はNATなどの任意の中間のコンポーネントにより認識されずに又は問題にならずにどちらか一方の終端から通過しうる。
本発明の実施形態のパケットの分割及び符号化について、図7を参照して説明する。説明を簡単にするために、オリジナルパケットと分割されたパケットからヘッダが省略されている。オリジナルのデータペイロード400は本発明の符号化コンポーネントで受信される。オリジナルのデータペイロードはxバイトであり、n個のセグメント402に分割される。nはxの整数の因数として選択され、図示されるように、n個のセグメントのそれぞれはx/nバイトをもつ。さらに、m個の追加のセグメントが生成される。図7において示される例では、m=1であり、且つ追加のパケット404は、XOR関数をn個のセグメントのうち1つに適用することにより生成される同等のセグメントである。
オリジナルのデータペイロード400を同等のセグメントに分割することが、必ずしも可能である又は望ましいとは限らない。例えば、nがxの因数でない場合、最後のセグメントを長くして、全てのセグメントを等しい長さにすることを確実にする必要があってもよい。例えば、x=17でn=2の場合、x/nに最も近い整数値は9である。4又は8の因数であるセグメントサイズが一般に好まれるため、この場合のセグメントサイズは、x/nよりも4つ大きな次の因数となるか、又はx/nと等しくなるように選択される(例えば、12バイト)。図8に示されるように、オリジナルの17バイトのデータペイロード410は2つの12バイトのセグメントペイロード412及び414に分割される。セグメントペイロード412は、オリジナルのデータペイロード410の先頭の12バイトを含み、セグメントペイロード414は、任意に12バイトに引き延ばされた、オリジナルのデータペイロード410の残りの5バイトを含む。さらなる追加のセグメント416(セグメント412の同等セグメント)が、シーケンスの最後のセグメントを形成する。1つのオリジナルのパケット又はフレームに関連する全てのセグメントが同一のシリアル番号をもち、受信終端での識別と再組み立てを可能にすることに注目すべきである。
符号化レートは、n及びmの両方により決定される。符号化レートは、所定値(例えば、図8に示されるようにn=2及びm=1)に設定されうるか、又はあるエンドポイントに関連付けられた符号化コンポーネントで終端する全ての符号化されたチャネルに関して、観測された及び/又は報告されたネットワークの性能に基づいて調整されうる。ネットワークの性能を決定する1つの方法について図9に関連して説明する。図9において、エンドポイントAは、公衆ネットワーク440により、エンドポイントB,C,Dと通信している。エンドポイントのそれぞれは、現在のプロトコルに従って通信可能である。エンドポイントAに関連づけられた符号化コンポーネント(図示せず)は、他のエンドポイントの各々からのセグメントの受信を経験している間、紛失を継続的に監視する。符号化コンポーネントは、例えば、受信に失敗したセグメントの数のカウントを継続することにより、又はそれぞれのセッション中に他方のエンドポイントのそれぞれに送信する再送信リクエストの数をカウントすることにより、そのような紛失を監視できる。エンドポイントAがシーケンス内のセグメントの過度の紛失を検知すると、再送信リクエストがエンドポイントAにより送信されうる。エンドポイントAは、エンドポイントB,C,Dから観測されたネットワークの性能の詳細を受け取ることができる。そのような方法を適用することにより、エンドポイントAは、接続A−Bと接続A−Cは良好であり、紛失がほとんどないと判断する。しかし、収集した性能の統計値は、接続A−Dは紛失があり、エンドポイントAがエンドポイントDからの大損失を経験していることを示している。これは、おそらく、AとDの間のどこかで局所的なわずかな紛失442があることを意味している。エンドポイントAは、エンドポイントDからの大損失を経験しているが、平均すると低損失であることをエンドポイントDに報告する。これは、Dが、その符号化レートを減少又は増加させて(すなわち、n及び/又はmを減少又は増加させて)、紛失の多いチャネルにもかかわらず、パケットがエンドポイントAで受信されたセグメントから回復されうる可能性を改善することを可能にする。
上述した例は、一般に、符号化されたチャネルのネゴシエーションが実現可能且つ望ましいエンドポイント間の双方向通信に関する。しかしながら、本発明は、実質的に一方向の、すなわちストリーミングの、性能を促進するためのアプリケーションや、符号化コンポーネント間のネゴシエーションが実現不可能、さもなければ望ましくない他のアプリケーションにおいても使用されうる。そのようなアプリケーションにおいて、各エンドポイントに関連付けられた符号化コンポーネント間において、ネゴシエーションは必須ではない。符号化されたチャネルは、通話信号のメッセージを認識することにより確立され、それに続く深いパケット分析が、通信セッションに関連するメッセージが認識されることを可能にする。
例えば、本発明の符号化/復号化コンポーネントは、RTSP(Real-Time Streaming Protocol)の状態の把握が可能な特徴を活用して、ストリーミングのための接続を設定し監視するのに使用されうる。RTSPコマンドのためのデフォルトのポートは、ポート554である。それ故、本発明の符号化コンポーネントは、パケットのヘッダを分析して、それらがRTSPデフォルトポートに向かう予定であるか又はRTSPデフォルトポートから発生したものであるかを判断し、それによりRTSPパケットを識別することができる。RTSPメッセージが検出されれば、メッセージは解析されて、それがSETUPリクエスト、SETUPレスポンス、TERDOWNリクエスト、又は一般のRTSPレスポンスを含むかどうかが判断されうる。ユーザからのSETUPリクエストは、メディア・ストリームURLとRTPデータ(音声又は映像)を受信するためのローカルポートを含む。RTSPサーバのリプライは、選択されたパラメータを確認し、サーバの選択されたポートを提供する。RTSPサーバからのリプライを解析することにより、符号化コンポーネントは、データストリームに割り当てられたRTSPセッションの識別、メッセージのためのRTSPシーケンス番号、及びユーザ端末及びRTSPサーバによりセッションに割り当てられたRTPポートを判別できる。このようにして、ストリーミングのための符号化されたチャネルは、符号化コンポーネント間で設定されうる。それから、それに続くクライアントとサーバ間のデータユニットが、例えば、深いパケット分析により分析されうる。ポートがSETUPリプライにおいて設定されたものに一致する場合、メッセージは、上述したように、符号化されたチャネルを設定するための任意のネゴシエーションなしに、分割及び符号化、又は復号化及び再組み立てのために傍受されうる。
同様に、H.323において、符号化コンポーネントはH.323呼び出しが行われていることを示すメッセージについてのパケットを分析できる。例えば、符号化コンポーネントは、H.225/Q.931呼び出し設定メッセージ及び/又はH.245ネゴシエーション及び経路設定メッセージについて、検出し、深いパケット分析を行い、関連するH.323セッションのために使用される、呼び出される側及び呼び出す側のデータポートを識別できる。それから、現在のプロトコルに従って符号化されたチャネルが設定されて、上述したようにデータフローが傍受され符号化されうる。
以下の記述においては、説明のため、多くの細部は、本発明の徹底的な理解を提供するために記述されている。しかし、当業者であれば、これらの具体的な細部は、本発明を実施するのに必須でないことは明らかである。他の例では、本発明を曖昧にしないために、周知の電気的な構造と回路がブロック図の形式で示される。例えば、具体的な細部は、ここに記載された本発明の実施形態が、ソフトウェアのルーチン、ハードウェアの回路、ファームウェア、又はそれらの組み合わせにより実施されるかどうかについて、提供されない。
本発明の実施形態は、機械が解読可能な媒体(コンピュータが解読可能な媒体、プロセッサが解読可能な媒体、又は内部で具体化されたコンピュータが解読可能なプログラムコードを備えたコンピュータが使用可能な媒体とも呼ばれる。)に格納されたソフトウェアの製品として表されてもよい。機械が解読可能な媒体は、磁気、光、又は電気の記憶媒体(ディスケット、CD−ROM(compact disk read only memory)、記憶装置(揮発性又は不揮発性)、又は同様の記憶機構を含む。)を含む任意の適切な有形の媒体であってもよい。機械が解読可能な媒体は、実行されるときに、プロセッサに本発明の実施形態の方法のステップを実行させる、命令、符号系列、設定情報、又は他のデータの種々の組みを含んでも良い。上述した発明を実施するのに必要な他の命令及び操作が、機械が解読可能な媒体に格納されていてもよいことを、当業者は十分に理解できる。機械が読み取り可能な媒体から実行するソフトウェアは、上述したタスクを実行する電気回路と相互作用してもよい。
本発明の上述した実施形態は、単なる例であることを意図している。修正、改良、及び変更が、ここに添付された特許請求の範囲のみにより定義される本発明の範囲から逸脱することなく、当業者により、特定の実施形態にもたらされてもよい。

Claims (7)

  1. 信頼できないネットワークでのデータ通信を高速化する方法であって、
    2つのエンドポイントのそれぞれに関連付けられた符号化コンポーネントを通信に提供するステップと、
    前記2つのエンドポイント間の通信セッションのために前記符号化コンポーネント間に符号化されたチャネルを確立するステップと、
    前記確立ステップは、
    前記2つのエンドポイントのうちの第1のエンドポイントから発生して、前記2つのエンドポイントのうちの他方へ向かうメッセージを検出するステップと、
    前記通信セッションを一意的に識別する情報を格納するステップと、
    前記格納ステップは、送信元IPアドレス、送信先IPアドレス、パケット内に含まれるプロトコル、及び送信元及び送信先ポートを格納することを含み、
    前記第1のエンドポイントが両方の符号化コンポーネントに知られているプロトコルに従ってデータパケットを分割し符号化することが可能であることを示すように、他方のエンドポイントに向けられたメッセージにマークを付けるステップと、
    前記マークされたメッセージを前記他方のエンドポイントに転送するステップと、
    制御メッセージを交換して、前記符号化コンポーネント間の通信チャネルを確立するステップと、
    を含み、
    前記符号化コンポーネントのうちの1つで、前記通信に関連するデータパケットを傍受するステップと、
    前記データパケットを分割してパッケージ化し、前記他方の符号化コンポーネントへの送信のために前記符号化されたデータセグメントを提供するステップと、
    前記提供ステップは、前記データパケットのヘッダを変更して、前記変更したヘッダを前記符号化されたデータセグメントのそれぞれに加えるステップを含み、
    前記符号化されたデータセグメントと少なくとも1つの追加の符号化されたセグメントを、前記符号化されたチャネルを通して、前記他方の符号化コンポーネントに送信するステップと、
    受信した前記符号化されたデータセグメントに基づいて、前記他方の符号化コンポーネントで、前記データパケットを復号し組み立て直すステップと、
    前記他方の符号化コンポーネントからそれぞれのエンドポイントに前記組み立て直されたデータパケットを送信するステップと、
    を含む方法。
  2. リプライにマークを付けるステップは、IPヘッダのオプションを設定するか、又は識別フィールドを既知の値に設定することを含む、請求項1に記載の方法。
  3. 所定のタイムアウト時間内にさらなるパケットが送信されなければ、前記符号化されたチャネルを解体するステップをさらに含む、請求項1又は請求項2に記載の方法。
  4. 前記符号化されたチャネルを確立するステップは、
    前記メッセージが前記通信セッションに関連し、前記他方のエンドポイントが両方の符号化コンポーネントに知られているプロトコルに従ってデータパケットを分割して符号化することが可能であることを示すようにマークされているかどうかを判別するステップと、
    前記符号化コンポーネント間で、通信チャネルを確立するために制御メッセージを送信するステップと、
    をさらに含む、請求項1から請求項3のいずれかの請求項に記載の方法。
  5. 前記通信セッションは、リアルタイム・ストリーミング・プロトコル(RTSP)セッション又はH.323プロトコルセッションである、請求項1から請求項4のいずれかの請求項に記載の方法。
  6. 前記データパケットを分割してパッケージ化するステップは、動的に調整される符号化レートでデータパケットをデータセグメントに分割することを含み、
    前記動的に調整される符号化レートは、
    複数の通信セッションのそれぞれについての紛失率を監視するステップと、
    各通信セッションの紛失率に従って、平均紛失率を決定するステップと、
    前記通信セッションの紛失率と平均紛失率を、前記2つのエンドポイントの他方に伝送して、前記2つのエンドポイントの他方が符号化レートを調整することを許可するステップと、
    により決定される、請求項1から請求項5のいずれかの請求項に記載の方法。
  7. 前記ヘッダを変更するステップは、TCPヘッダのシーケンス番号、TCPヘッダフラグ、又はTCPヘッダの緊急ポインタを変更することを含む、請求項1から請求項6のいずれかの請求項に記載の方法。
JP2009189263A 2008-08-18 2009-08-18 スループットの向上を実現するシステム及び方法 Expired - Fee Related JP5164123B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/193,345 2008-08-18
US12/193,345 US8009696B2 (en) 2004-08-06 2008-08-18 System and method for achieving accelerated throughput

Publications (2)

Publication Number Publication Date
JP2010063094A JP2010063094A (ja) 2010-03-18
JP5164123B2 true JP5164123B2 (ja) 2013-03-13

Family

ID=41268486

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009189263A Expired - Fee Related JP5164123B2 (ja) 2008-08-18 2009-08-18 スループットの向上を実現するシステム及び方法

Country Status (5)

Country Link
US (6) US8009696B2 (ja)
EP (3) EP2658191A1 (ja)
JP (1) JP5164123B2 (ja)
KR (1) KR101649374B1 (ja)
CA (1) CA2675866A1 (ja)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7953114B2 (en) * 2004-08-06 2011-05-31 Ipeak Networks Incorporated System and method for achieving accelerated throughput
US9647952B2 (en) 2004-08-06 2017-05-09 LiveQoS Inc. Network quality as a service
US9189307B2 (en) 2004-08-06 2015-11-17 LiveQoS Inc. Method of improving the performance of an access network for coupling user devices to an application server
US8009696B2 (en) 2004-08-06 2011-08-30 Ipeak Networks Incorporated System and method for achieving accelerated throughput
US8437370B2 (en) * 2011-02-04 2013-05-07 LiveQoS Inc. Methods for achieving target loss ratio
US8325600B2 (en) 2005-12-30 2012-12-04 Intel Corporation Segmentation interleaving for data transmission requests
US8661173B2 (en) * 2008-03-31 2014-02-25 Intel Corporation USB data striping
WO2010087292A1 (ja) * 2009-01-27 2010-08-05 三菱電機株式会社 送信装置、送受信装置、通信システム、および通信方法
KR101589561B1 (ko) * 2009-06-12 2016-01-28 엘지전자 주식회사 CPM 세션에서 이산 미디어 타입(discrete media type)의 메시지 전달 순서를 지키는 방법 및 장치
US8942102B2 (en) * 2010-11-05 2015-01-27 Qualcomm Incorporated Segmented data transfer with resume capability
US10951743B2 (en) * 2011-02-04 2021-03-16 Adaptiv Networks Inc. Methods for achieving target loss ratio
US8717900B2 (en) 2011-02-07 2014-05-06 LivQoS Inc. Mechanisms to improve the transmission control protocol performance in wireless networks
US9590913B2 (en) 2011-02-07 2017-03-07 LiveQoS Inc. System and method for reducing bandwidth usage of a network
US20120250536A1 (en) * 2011-03-31 2012-10-04 Alcatel-Lucent Canada Inc. Ethernet-dual-ended loss measurement calculation
US20130262691A1 (en) * 2012-03-28 2013-10-03 Rovi Corp System and Methods of Media Streaming using RTSP with Reduced Delays
US20130262692A1 (en) * 2012-03-28 2013-10-03 Rovi Corp System and Methods of Media Streaming from a Media Server using RTSP with Reduced Delays
US10547713B2 (en) 2012-11-20 2020-01-28 Nvidia Corporation Method and system of transmitting state based input over a network
EP2755342A1 (en) 2013-01-10 2014-07-16 LiveQoS Inc. Network Quality as a Service
US9532227B2 (en) * 2013-09-13 2016-12-27 Network Kinetix, LLC System and method for an automated system for continuous observation, audit and control of user activities as they occur within a mobile network
US8966074B1 (en) * 2013-09-13 2015-02-24 Network Kinetix, LLC System and method for real-time analysis of network traffic
CN105594164B (zh) * 2014-01-17 2019-05-10 华为技术有限公司 一种数据包的传输方法和传输设备
US10320526B1 (en) 2014-11-07 2019-06-11 Strong Force Iot Portfolio 2016, Llc Packet coding based network communication
US9992088B1 (en) 2014-11-07 2018-06-05 Speedy Packets, Inc. Packet coding based network communication
US9825733B1 (en) 2014-11-07 2017-11-21 Speedy Packets, Inc. Packet coding based network communication
US10999012B2 (en) 2014-11-07 2021-05-04 Strong Force Iot Portfolio 2016, Llc Packet coding based network communication
US9992126B1 (en) 2014-11-07 2018-06-05 Speedy Packets, Inc. Packet coding based network communication
US10135746B2 (en) 2015-07-07 2018-11-20 Strong Force Iot Portfolio 2016, Llc Cross-session network communication configuration
US10104002B2 (en) * 2016-03-18 2018-10-16 Cisco Technology, Inc. Method and system for network address re-use in network address translation
CN106230654B (zh) * 2016-07-22 2019-12-24 安徽皖通邮电股份有限公司 一种快速实现rfc2544带背景流下最大吞吐率的方法
US10135720B2 (en) * 2016-08-03 2018-11-20 Anchorfree Inc. System and method for virtual multipath data transport
US11129033B2 (en) * 2017-08-28 2021-09-21 Mitsubishi Electric Corporation Wireless communication device, wireless communication method and computer readable medium
CA3159276A1 (en) * 2018-04-10 2019-10-17 Huawei Technologies Co., Ltd. Point-to-point database synchronization over a transport protocol
TWI757609B (zh) * 2018-08-03 2022-03-11 日商索尼股份有限公司 用於通訊的傳輸設備和方法、接收設備和方法

Family Cites Families (145)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US141448A (en) * 1873-08-05 Improvement iiss machines for rossing bark
US1640024A (en) * 1924-10-28 1927-08-23 Edward M Trimble Folding crib
US4908827A (en) 1987-07-27 1990-03-13 Tiw Systems, Inc. Forward error correction system
JP2001345854A (ja) * 2000-03-27 2001-12-14 Matsushita Electric Ind Co Ltd ネットワーク間のパケット通信方法及びシステム並びに装置
US20010050943A1 (en) 1989-08-03 2001-12-13 Mahany Ronald L. Radio frequency communication network having adaptive communication parameters
US5600663A (en) 1994-11-16 1997-02-04 Lucent Technologies Inc. Adaptive forward error correction system
US5677918A (en) 1995-07-28 1997-10-14 Motorola, Inc. Method and device for efficient error correction in a packet-switched communication system
US6012159A (en) 1996-01-17 2000-01-04 Kencast, Inc. Method and system for error-free data transfer
US5857072A (en) 1996-04-30 1999-01-05 Sprint Communications Co. L.P. System and method for distributing data simultaneously to multiple computers on a network, with advanced notice to intended recipients
US6172972B1 (en) 1996-05-28 2001-01-09 Microsoft Corporation Multi-packet transport structure and method for sending network data over satellite network
DE19630343B4 (de) 1996-07-26 2004-08-26 Telefonaktiebolaget L M Ericsson (Publ) Verfahren und Paket-Übertragungssystem unter Verwendung einer Fehlerkorrektur von Datenpaketen
US5751970A (en) * 1996-08-08 1998-05-12 International Business Machines Corp. Method for determining an optimal segmentation size for file transmission in a communications system
JPH10119426A (ja) 1996-10-15 1998-05-12 Dainippon Printing Co Ltd 記録用シート
US6038216A (en) 1996-11-01 2000-03-14 Packeteer, Inc. Method for explicit data rate control in a packet communication environment without data rate supervision
JPH10174069A (ja) 1996-12-13 1998-06-26 Victor Co Of Japan Ltd パケット多重化方法及び再生方法
US6000053A (en) 1997-06-13 1999-12-07 Microsoft Corporation Error correction and loss recovery of packets over a computer network
US6236647B1 (en) * 1998-02-24 2001-05-22 Tantivy Communications, Inc. Dynamic frame size adjustment and selective reject on a multi-link channel to improve effective throughput and bit error rate
JPH11163947A (ja) 1997-09-22 1999-06-18 Toshiba Corp ゲートウェイ装置、無線端末装置、ルータ装置および通信ネットワークのゲートウェイ制御方法
US6272658B1 (en) 1997-10-27 2001-08-07 Kencast, Inc. Method and system for reliable broadcasting of data files and streams
JPH11225161A (ja) 1998-02-05 1999-08-17 Matsushita Electric Ind Co Ltd データ処理方法およびデータ処理装置
US6278716B1 (en) 1998-03-23 2001-08-21 University Of Massachusetts Multicast with proactive forward error correction
EP1005726B1 (en) 1998-03-31 2003-10-15 Samsung Electronics Co., Ltd. TURBO ENCODING/DECODING DEVICE AND METHOD FOR PROCESSING FRAME DATA ACCORDING TO QoS
US6445717B1 (en) 1998-05-01 2002-09-03 Niwot Networks, Inc. System for recovering lost information in a data stream
US6421387B1 (en) 1998-05-15 2002-07-16 North Carolina State University Methods and systems for forward error correction based loss recovery for interactive video transmission
US6336200B1 (en) 1998-05-22 2002-01-01 Kencast, Inc. Method for validating communicated packets of data and for locating erroneous packets
US6570843B1 (en) 1998-05-22 2003-05-27 Kencast, Inc. Method for minimizing the number of data packets required for retransmission in a two-way communication system
US6771597B2 (en) 1998-07-31 2004-08-03 International Business Machines Corporation Method and apparatus for transmitting messages
JP3054613B2 (ja) 1998-11-05 2000-06-19 沖電気工業株式会社 パケット通信システム
US6421805B1 (en) 1998-11-16 2002-07-16 Exabyte Corporation Rogue packet detection and correction method for data storage device
US6600737B1 (en) 1999-02-11 2003-07-29 Mediaring Ltd. Bandwidth protection for voice over IP
US6529552B1 (en) * 1999-02-16 2003-03-04 Packetvideo Corporation Method and a device for transmission of a variable bit-rate compressed video bitstream over constant and variable capacity networks
US7593380B1 (en) * 1999-03-05 2009-09-22 Ipr Licensing, Inc. Variable rate forward error correction for enabling high performance communication
US6973140B2 (en) * 1999-03-05 2005-12-06 Ipr Licensing, Inc. Maximizing data rate by adjusting codes and code rates in CDMA system
US6438108B1 (en) 1999-03-11 2002-08-20 Telefonaktiebolaget L M Ericsson (Publ) System for improved transmission of acknowledgements within a packet data network
US6449251B1 (en) 1999-04-02 2002-09-10 Nortel Networks Limited Packet mapper for dynamic data packet prioritization
US6609223B1 (en) 1999-04-06 2003-08-19 Kencast, Inc. Method for packet-level fec encoding, in which on a source packet-by-source packet basis, the error correction contributions of a source packet to a plurality of wildcard packets are computed, and the source packet is transmitted thereafter
US6912276B1 (en) 1999-04-12 2005-06-28 Silicon Laboratories, Inc. Modem on hold
CA2299022A1 (en) 1999-04-30 2000-10-30 Nortel Networks Corporation Method and apparatus for bandwidth management of aggregate data flows
US6925068B1 (en) 1999-05-21 2005-08-02 Wi-Lan, Inc. Method and apparatus for allocating bandwidth in a wireless communication system
US6728920B1 (en) * 1999-05-24 2004-04-27 Adaptive Broadband Corporation Method for correcting errors in transfer of information
JP3910770B2 (ja) 1999-10-15 2007-04-25 株式会社エヌ・ティ・ティ・ドコモ 誤り制御方法及びその方法を使用する受信機
US6728924B1 (en) 1999-10-21 2004-04-27 Lucent Technologies Inc. Packet loss control method for real-time multimedia communications
US7522631B1 (en) 1999-10-26 2009-04-21 Qualcomm, Incorporated Method and apparatus for efficient data transmission control in a wireless voice-over-data communication system
US6901051B1 (en) 1999-11-15 2005-05-31 Fujitsu Limited Server-based network performance metrics generation system and method
US6813252B2 (en) 2000-01-07 2004-11-02 Lucent Technologies Inc. Method and system for interleaving of full rate channels suitable for half duplex operation and statistical multiplexing
US7133407B2 (en) 2000-01-25 2006-11-07 Fujitsu Limited Data communications system
US7310670B1 (en) 2000-04-25 2007-12-18 Thomson Licensing S.A. Multi-channel power line exchange protocol
JP3718616B2 (ja) * 2000-05-12 2005-11-24 アルプス電気株式会社 ステアリング装置への回転コネクタの取り付け構造
US6965646B1 (en) * 2000-06-28 2005-11-15 Cisco Technology, Inc. MPEG file format optimization for streaming
DE50112422D1 (de) 2000-07-14 2007-06-14 Siemens Ag Verfahren und Anordnung zum Schutz gegen Paketverlusten bei einer paketorientierten Datenübertragung
CA2314405A1 (en) 2000-07-24 2002-01-24 Catena Networks Canada Inc. An improved 8 bits/symbol messaging scheme for g.lite.bis and g.dmt.bis
FI112307B (fi) * 2000-08-02 2003-11-14 Nokia Corp Viestintäpalvelu
US20020164024A1 (en) * 2000-08-25 2002-11-07 Hiroshi Arakawa Data transmission method and data relay method
JP3752137B2 (ja) 2000-08-31 2006-03-08 三菱電機株式会社 データ送信装置及びデータ送信方法
US6968554B1 (en) 2000-10-03 2005-11-22 Network General Technology Multi-layer protocol reassembly that operates independently of underlying protocols, and resulting vector list corresponding thereto
US7131038B2 (en) 2000-10-12 2006-10-31 3Com Corporation Performance evaluation of multicarrier channels
US7035217B1 (en) * 2000-10-20 2006-04-25 Cisco Technology, Inc. Router-assisted multicast congestion control
US7075936B2 (en) 2000-11-02 2006-07-11 Agere Systems, Inc. Voice packet processor and method of operation thereof
US7739398B1 (en) * 2000-11-21 2010-06-15 Avaya Inc. Dynamic load balancer
US7050396B1 (en) * 2000-11-30 2006-05-23 Cisco Technology, Inc. Method and apparatus for automatically establishing bi-directional differentiated services treatment of flows in a network
GB2369746A (en) * 2000-11-30 2002-06-05 Ridgeway Systems & Software Lt Communications system with network address translation
US7103317B2 (en) 2000-12-12 2006-09-05 The Directv Group, Inc. Communication system using multiple link terminals for aircraft
KR100467643B1 (ko) 2000-12-28 2005-01-24 엘지전자 주식회사 무선 랜에서의 멀티미디어 데이터 전송 방법
US7319701B2 (en) 2000-12-29 2008-01-15 Texas Instruments Incorporated Modem relay protocol redundancy for reliable low speed modem communications over IP networks with substantial packet loss
US6876669B2 (en) 2001-01-08 2005-04-05 Corrigent Systems Ltd. Packet fragmentation with nested interruptions
US6868083B2 (en) 2001-02-16 2005-03-15 Hewlett-Packard Development Company, L.P. Method and system for packet communication employing path diversity
JP2002290459A (ja) 2001-03-27 2002-10-04 Nec Corp パケット転送装置および方法
US6934257B2 (en) 2001-04-04 2005-08-23 Intel Corporation Transferring transmission control protocol packets
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
US7099346B1 (en) 2001-05-15 2006-08-29 Golden Bridge Technology, Inc. Channel capacity optimization for packet services
US7065482B2 (en) 2001-05-17 2006-06-20 International Business Machines Corporation Internet traffic analysis tool
US7012893B2 (en) 2001-06-12 2006-03-14 Smartpackets, Inc. Adaptive control of data packet size in networks
US6993000B2 (en) * 2001-06-19 2006-01-31 Telcordia Technologies, Inc. Method for CDMA soft handoff via IP multicasting
US7089478B2 (en) 2001-06-22 2006-08-08 Broadcom Corporation FEC block reconstruction system, method and computer program product for mitigating burst noise in a communications system
US7315894B2 (en) 2001-07-17 2008-01-01 Mcafee, Inc. Network data retrieval and filter systems and methods
FR2827530B1 (fr) * 2001-07-17 2004-05-21 Commissariat Energie Atomique Procede de traitement d'une surface par un gel de traitement, et gel de traitement
US20030018793A1 (en) * 2001-07-19 2003-01-23 Oscar Mora Reliable transport layer protocol in low performance 8-bit microcontrollers
EP1421758A1 (en) 2001-08-02 2004-05-26 Sun Microsystems, Inc. Filtering redundant packets in computer network equipments
US7542482B2 (en) 2001-08-16 2009-06-02 Qualcomm Incorporated Method and apparatus for message segmentation in a wireless communication system
US7251246B2 (en) 2001-09-14 2007-07-31 Snowshore Networks, Inc. Selective packet processing in a packet based media processor for latency reduction
US7631084B2 (en) * 2001-11-02 2009-12-08 Juniper Networks, Inc. Method and system for providing secure access to private networks with client redirection
US7519030B2 (en) * 2001-11-19 2009-04-14 At&T Intellectual Property Ii, L.P. Adaptive MAC fragmentation and rate selection for 802.11 wireless networks
US20030108044A1 (en) * 2001-12-11 2003-06-12 Roland Hendel Stateless TCP/IP protocol
US7120454B1 (en) 2001-12-26 2006-10-10 Bellsouth Intellectual Property Corp. Auto sensing home base station for mobile telephone with remote answering capabilites
JP2003198618A (ja) 2001-12-26 2003-07-11 Mitsubishi Electric Corp パケットデータ通信システム及び携帯電話機並びにネットワーク側装置
KR100433629B1 (ko) * 2001-12-27 2004-05-31 주식회사 케이티 인터넷 팩스 데이터의 오류 제어 방법
JP3573426B2 (ja) 2001-12-28 2004-10-06 東芝テック株式会社 カード処理装置及びカード決済システム
US7218645B2 (en) 2002-02-19 2007-05-15 Broadcom Corporation Method and apparatus optimizing a radio link
JP2003298560A (ja) 2002-04-04 2003-10-17 Communication Research Laboratory 送信機および送信方法、受信機および受信方法並びに光無線通信装置および光無線通信方法
US6744766B2 (en) 2002-06-05 2004-06-01 Meshnetworks, Inc. Hybrid ARQ for a wireless Ad-Hoc network and a method for using the same
US6934776B2 (en) 2002-07-16 2005-08-23 Intel Corporation Methods and apparatus for determination of packet sizes when transferring packets via a network
KR100460429B1 (ko) 2002-11-15 2004-12-08 삼성전자주식회사 우선순위 큐잉 장치 및 이를 이용한 우선순위 큐잉 방법
SG111978A1 (en) 2002-11-20 2005-06-29 Victor Company Of Japan An mpeg-4 live unicast video streaming system in wireless network with end-to-end bitrate-based congestion control
US7216282B2 (en) 2003-02-19 2007-05-08 Harris Corporation Mobile ad-hoc network (MANET) including forward error correction (FEC), interleaving, and multi-route communication features and related methods
CN1757237A (zh) 2003-03-03 2006-04-05 皇家飞利浦电子股份有限公司 视频编码
IL154739A0 (en) 2003-03-04 2003-10-31 Bamboo Mediacasting Ltd Segmented data delivery over non-reliable link
US20040196785A1 (en) 2003-04-01 2004-10-07 Gopalakrishnan Janakiraman Congestion notification process and system
US20040264396A1 (en) 2003-06-30 2004-12-30 Boris Ginzburg Method for power saving in a wireless LAN
US7302491B2 (en) 2003-07-31 2007-11-27 International Business Machines Corporation System and method of reducing data corruption due to recycled IP identification numbers
JP4235507B2 (ja) * 2003-08-14 2009-03-11 株式会社エヌ・ティ・ティ・ドコモ 中継装置、送信装置、受信装置およびプログラム
US7352700B2 (en) * 2003-09-09 2008-04-01 Lucent Technologies Inc. Methods and devices for maximizing the throughput of TCP/IP data along wireless links
US7447775B1 (en) 2003-11-07 2008-11-04 Cisco Technology, Inc. Methods and apparatus for supporting transmission of streaming data
US7016409B2 (en) 2003-11-12 2006-03-21 Sony Corporation Apparatus and method for use in providing dynamic bit rate encoding
US20050213586A1 (en) 2004-02-05 2005-09-29 David Cyganski System and method to increase network throughput
US7809011B2 (en) 2004-04-05 2010-10-05 Broadcom Corporation Method and apparatus for establishing communication between entities in a communication system
US7478160B2 (en) * 2004-04-30 2009-01-13 International Business Machines Corporation Method and apparatus for transparent negotiations
KR100533686B1 (ko) 2004-05-21 2005-12-05 삼성전자주식회사 모바일 애드 혹 네트워크에서의 데이터 전송 방법 및 이를이용한 네트워크 장치
WO2006014373A2 (en) 2004-07-02 2006-02-09 Idirect Incorporated Method apparatus and system for accelerated communication
US7474619B2 (en) * 2004-07-22 2009-01-06 International Business Machines Corporation Method and apparatus for providing fragmentation at a transport level along a transmission path
US7742501B2 (en) 2004-08-06 2010-06-22 Ipeak Networks Incorporated System and method for higher throughput through a transportation network
US9189307B2 (en) 2004-08-06 2015-11-17 LiveQoS Inc. Method of improving the performance of an access network for coupling user devices to an application server
US8437370B2 (en) 2011-02-04 2013-05-07 LiveQoS Inc. Methods for achieving target loss ratio
US7953114B2 (en) 2004-08-06 2011-05-31 Ipeak Networks Incorporated System and method for achieving accelerated throughput
US8009696B2 (en) 2004-08-06 2011-08-30 Ipeak Networks Incorporated System and method for achieving accelerated throughput
US7522606B1 (en) 2004-11-09 2009-04-21 Network Equipment Technologies, Inc. Passive packet re-ordering and packet loss detection
WO2006054442A1 (ja) 2004-11-17 2006-05-26 Sharp Kabushiki Kaisha 送信装置、受信装置及び通信システム
US7574353B2 (en) 2004-11-18 2009-08-11 Lsi Logic Corporation Transmit/receive data paths for voice-over-internet (VoIP) communication systems
US9385843B2 (en) * 2004-12-22 2016-07-05 Qualcomm Incorporated Method and apparatus for using multiple modulation schemes for a single packet
US8214707B2 (en) * 2007-06-26 2012-07-03 Aspera, Inc. Method and system for reliable data transfer
US7889654B2 (en) 2005-03-30 2011-02-15 At&T Intellectual Property Ii, L.P. Loss tolerant transmission control protocol
US20060245384A1 (en) 2005-05-02 2006-11-02 Talukdar Anup K Method and apparatus for transmitting data
JP5027122B2 (ja) 2005-06-28 2012-09-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 未知のサブチャネル可用性を有するofdmシステムのためのハンドシェーク方法及び装置
EP1755248B1 (en) 2005-08-19 2011-06-22 Hewlett-Packard Development Company, L.P. Indication of lost segments across layer boundaries
US7804836B2 (en) 2005-09-01 2010-09-28 Telefonaktiebolaget L M Ericsson (Publ) Processing encoded real-time data
CN101278529B (zh) 2005-10-03 2011-10-19 松下电器产业株式会社 通信装置
US7712005B2 (en) * 2005-10-21 2010-05-04 Marvell World Trade Ltd. Encoding and error correction system for enhanced performance of legacy communications networks
CN101305583A (zh) 2005-11-07 2008-11-12 日本电气株式会社 会话中继设备和会话中继方法
DE602006006346D1 (de) 2005-12-16 2009-05-28 Dolby Sweden Ab Vorrichtung zum erzeugen und interpretieren eines datenstroms mit einer reihe von segmenten unter verwendung von daten in nachfolgenden datenrahmen
US7676733B2 (en) * 2006-01-04 2010-03-09 Intel Corporation Techniques to perform forward error correction for an electrical backplane
JP2007184836A (ja) 2006-01-10 2007-07-19 Nippon Telegr & Teleph Corp <Ntt> 通信方法および通信装置
US20070177739A1 (en) 2006-01-27 2007-08-02 Nec Laboratories America, Inc. Method and Apparatus for Distributed Data Replication
WO2007099468A1 (en) 2006-03-03 2007-09-07 Koninklijke Philips Electronics N.V. Method and apparatus for transmitting and receiving a data block in a wireless communication system
US7801044B2 (en) 2006-05-04 2010-09-21 Broadcom Corporation TCP acknowledge for aggregated packet
EP2060119B1 (en) * 2006-09-05 2010-06-09 TELEFONAKTIEBOLAGET LM ERICSSON (publ) IP unicast streaming service delivery
US7944922B2 (en) 2006-10-17 2011-05-17 Altec Lansing Australia Pty Limited Media distribution in a wireless network
JP2008153778A (ja) * 2006-12-14 2008-07-03 Mitsubishi Electric Corp パケット転送装置
EP2116001A4 (en) 2006-12-20 2013-04-03 Thomson Licensing IMPROVE THE THROUGHPUT IN A LAN BY MANAGING TCP ACKS
JP4356742B2 (ja) * 2006-12-25 2009-11-04 ソニー株式会社 データ通信システム、データ送信装置およびデータ送信方法
US7821937B1 (en) 2007-06-29 2010-10-26 Symantec Corporation Network protocol with damage loss resilient congestion control algorithm
PT2177073T (pt) 2007-08-03 2023-08-03 Nokia Siemens Networks Oy Agregação de estação móvel de confirmações e confirmações negativas em redes sem fios
US8045563B2 (en) 2007-12-27 2011-10-25 Cellco Partnership Dynamically adjusted credit based round robin scheduler
US8885644B2 (en) * 2008-02-28 2014-11-11 Alcatel Lucent Compressed IP flow recognition for in-line, integrated mobile DPI
US20100023842A1 (en) 2008-07-25 2010-01-28 Nortel Networks Limited Multisegment loss protection
US10951743B2 (en) 2011-02-04 2021-03-16 Adaptiv Networks Inc. Methods for achieving target loss ratio
US8717900B2 (en) 2011-02-07 2014-05-06 LivQoS Inc. Mechanisms to improve the transmission control protocol performance in wireless networks

Also Published As

Publication number Publication date
US8548003B2 (en) 2013-10-01
KR20100021990A (ko) 2010-02-26
US20080304483A1 (en) 2008-12-11
JP2010063094A (ja) 2010-03-18
EP2157749B1 (en) 2012-10-10
US20120287806A1 (en) 2012-11-15
EP2658191A1 (en) 2013-10-30
US8009696B2 (en) 2011-08-30
US9893836B2 (en) 2018-02-13
EP2157749A1 (en) 2010-02-24
CA2675866A1 (en) 2010-02-18
KR101649374B1 (ko) 2016-08-19
US20120213232A1 (en) 2012-08-23
US20150236813A1 (en) 2015-08-20
US20110103388A1 (en) 2011-05-05
US20100272122A1 (en) 2010-10-28
EP2528289B1 (en) 2014-02-12
EP2528289A1 (en) 2012-11-28
US9379913B2 (en) 2016-06-28

Similar Documents

Publication Publication Date Title
JP5164123B2 (ja) スループットの向上を実現するシステム及び方法
US20210112148A1 (en) System and method for achieving accelerated throughput
US6445717B1 (en) System for recovering lost information in a data stream
EP1741221B1 (en) Forward error correction in packet networks
KR101160056B1 (ko) 데이터 전송 서버, 데이터 전송 시스템 및 데이터 전송방법
US8004963B2 (en) Apparatus and method for packet redundancy and recovery
KR101610715B1 (ko) 단방향 데이터 송수신 시스템 및 방법
EP3084994A1 (en) Dynamic coding for network traffic by fog computing node
KR20060091055A (ko) 손실된 패킷 재건을 위한 방법 및 상기 방법을 수행하기위한 디바이스
JP3934073B2 (ja) リアルタイム情報の伝達システム、リアルタイム情報の送信装置、リアルタイム情報の伝達方法及びプログラム
KR20100112151A (ko) 네트워크 카드 및 정보 처리 장치
JP2014135724A (ja) サービスとしてのネットワーク品質
WO2001084805A2 (en) Optimizing layer i/layer j connections in a network having intermediary agents

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101101

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120628

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120710

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121004

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: 20121113

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121212

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151228

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5164123

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees