JP5393699B2 - 送信端末及び受信端末 - Google Patents

送信端末及び受信端末 Download PDF

Info

Publication number
JP5393699B2
JP5393699B2 JP2010542814A JP2010542814A JP5393699B2 JP 5393699 B2 JP5393699 B2 JP 5393699B2 JP 2010542814 A JP2010542814 A JP 2010542814A JP 2010542814 A JP2010542814 A JP 2010542814A JP 5393699 B2 JP5393699 B2 JP 5393699B2
Authority
JP
Japan
Prior art keywords
packet
padding
unit
reorder
transmission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010542814A
Other languages
English (en)
Other versions
JPWO2010070793A1 (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2010542814A priority Critical patent/JP5393699B2/ja
Publication of JPWO2010070793A1 publication Critical patent/JPWO2010070793A1/ja
Application granted granted Critical
Publication of JP5393699B2 publication Critical patent/JP5393699B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • 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
    • H04L1/0008Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length by supplementing frame payload, e.g. with padding bits

Landscapes

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

Description

本発明は、インターネット等のパケット通信を行うネットワークを介して、映像音声などのリアルタイムのストリーミングデータを伝送する送信端末、及び該送信端末から送信されたストリーミングデータを受信する受信端末に関する。
図7は、上述した送信端末と受信端末の利用状態を示す図である。同図において、送信端末11は、ネットワーク10を介して映像音声などのリアルタイムストリームデータをパケットに分割し、受信端末12に伝送する。
インターネット等のネットワークの広帯域化やVPN(Virtual Private Network)ルータの高速化は、回線のトランキングや複数の暗号装置の導入で行われることがある。図8は、その一例を示す図である。同図において、送信端末11と受信端末12との間に、ネットワーク中に配置されるルータ(中継装置)801、802、803が介在する。図8では、送信端末11とルータ801は回線804で接続され、ルータ801とルータ802は回線805で接続され、ルータ802とルータ803は回線806で接続され、受信端末12とルータ803は回線807で接続される。このようなネットワークでは、トラフィックの増加により、例えば、回線805の回線容量が不足すると、複数の回線を束ねて回線容量を確保する方法が取られることがある。これは、回線のトランキングと呼ばれている。回線805は、複数の回線を束ねた様子を示している。
図9は、回線のトランキングが行われているルータ801の回線選択の様子をより詳細に示す図である。同図において、ルータ801には、4つの回線804、805−1、805−2、805−3が接続されている。ルータ801は、回線804、805−1〜805−3に対して出力キュー903、904、905を有している。ルータ801のスケジューラ902は、パケットの出力回線を決定する機能を有する。出力キュー903、904、905からは、長さの異なるパケット909、1001、1002が回線に出力されている。すなわち、出力キュー903からはパケット909が回線805−1に出力されており、出力キュー904からはパケット1001が回線805−2に出力されている。また、出力キュー905からは、パケット1002が回線805−3に出力されている。
図8において、ルータ801は、回線804などからパケット入力があると、経路探索を実施し、その結果の転送先が、回線805すなわち図9における回線805−1〜805−3のいずれかを用いてパケットを送信することを決定する。ルータ801のスケジューラ902は、回線805−1、805−2、805−3のうちどの回線を用いるか決定し、決定した回線に対応する出力キューにパケットを格納する。このとき、どの回線を選択するかは、ルータ801に設定されている値によって決定される。具体的には、順番にパケットを格納する回線を選択していくラウンドロビン(round robin)方式や、パケット中の特定領域のハッシュ値を計算し、そのハッシュ値で回線を選択する方式が知られている。それぞれの出力キュー903、904、905に格納されたパケットは、回線速度に応じて、順次(First In First Outで)回線を通じて相手先のルータ(図8の場合、ルータ802)に転送されていく。
このような回線のトランキングが行われているルータ間では、パケットの受信順序の反転が発生することがある。本稿では、パケットのリオーダ(reorder)を、送信端末が出力したパケット送信順序と受信端末が受信するパケットの受信順序が異なりながら伝送されることと定義する。図9の例では、例えばパケット909、1001、1002が、この順番で送信端末11から送信されたにもかかわらずパケット909、1002、1001の順で受信端末12に届くことである。これは、回線のトランキングによってリオーダが発生する代表的な例である。
この他に、ルータ801とルータ803間で暗号化を行うことによって、ネットワークの回線を盗み見られても内容が分らないようにする対策が取られていることを想定する。このような運用条件のもと、送信端末11、受信端末12の伝送の広帯域化に対応すると、ルータ801、803に搭載している暗号化・複合化の能力が不足することがある。このため、ルータ801、803に複数の暗号・復号のハードウェアを搭載し、これらの装置に暗号・復号処理を到着パケット毎に割り振ることによって、暗号・復号処理の高速化を行うことがある。ルータ801、803は、複数の暗号・復号のハードウェアを搭載した場合、リオーダが発生することがある。暗号・復号の処理時間は、一般にパケットの長さに応じて長くなる。つまり、ルータ801、803の暗号・復号の処理は、略同時に暗号・復号を開始した場合、短いパケットの方が長いパケットより短い時間で処理を終了することがある。このようなルータに特定の送信端末から短長パケットが届いた場合は、リオーダが発生することがある。
映像音声などリアルタイムのストリーミングデータの伝送において、リオーダが発生する受信端末では、パケットを並べ直す必要が出てくる。つまり、受信端末の映像音声のデコーダは、入力された情報の順に映像音声を再生するためにデコードしていく。受信端末は、順序が入れ替わったデータをデコーダに入力した場合、通常、映像音声のデコードが正常終了しない。具体的には、受信端末は、順序が入れ替わったデータを入力した場合、例えば、1,2,3というシーケンシャル番号がついたデータを1,3,2の順でデコーダに入力したとする。この場合、受信端末は、3を受信すると2が損失したと判定し、2が入力されると不正データが入力されたと判定し、デコードは正常に行われず、結果として映像音声の再生が一時途切れてしまう。このような事態を防止するための方法としては、「特許文献1」で開示されている受信端末でパケットを並べ直す方法が知られている。この方法による受信端末は、パケット中のシーケンシャル番号を参照し、これによりパケットの並べ直しを行うことで、正常な順序のデータとしてデコーダに入力することができる。
特開平5−056079号公報
しかしながら、受信端末でパケットを並べ直す方法では、最終的な伝送の遅延時間が増大してしまうという課題がある。映像音声などのリアルタイムストリームデータを伝送するシステムでは、最終的な伝送の遅延時間を短縮したいという要望がある。遅延時間の短縮を要望する用途としては、例えば、テレビ電話に代表されるコミュニケーション用途が挙げられる。最終的な伝送の遅延時間とは、送信端末でエンコードされた映像音声のデータが、ネットワークを介して伝送され、受信端末でデコードされ、映像音声として再生されるまでの時間である。つまり、ネットワークでリオーダが発生する場合、受信端末は、リオーダが発生する可能性がある個数分だけ、常にパケットを蓄積してから、デコーダに入力する必要が出てくる。このため、常にパケットを蓄積する方法は、パケットを蓄積する時間分だけデコーダへパケットを入力する時刻が遅くなる。
本発明は、係る事情に鑑みてなされたものであり、リオーダの発生そのものを回避することで、最終的な伝送の遅延時間を短縮したリアルタイムストリームの伝送を実現できる送信端末及び受信端末を提供することを目的とする。
本発明の送信端末は、パケットを発生させるデータ発生部と、受信端末から送信されるパディングを要求するパディング申請パケットを受け取るパディング申請受付部と、前記パディング申請受付部からのパディング要求に基づいて、パケット長が特定長以上となるように、前記データ発生部で発生されたパケットにパディングを施し、ネットワークに送信するパケットパディング部と、を備え、前記パディング申請パケットは、受信端末で算出されたリオーダが発生しない正常パケット長を含み、前記パケットパディング部は、前記正常パケット長となるように、前記データ発生部で発生されたパケットにパディングを施す
この構成によれば、受信端末からパディング要求があると、該要求に基づき、データ発生部で発生したパケットのパケット長が特定長以上となるように該パケットに対して、パディングを施して受信端末に向けて送信する。これにより、本発明の送信端末は、リオーダの発生そのものを回避できて、最終的な伝送の遅延時間を短縮したリアルタイムストリームの伝送が可能となる。
本発明の受信端末は、ネットワークからパケットを受信し、該パケットのリオーダの発生状況を解析するリオーダ状況解析部と、前記リオーダ状況解析部で受信されたパケットを再生するデータ再生部と、前記リオーダ状況解析部での解析結果に基づいて、送信端末にパディングを要求するパディング申請パケットを生成するパディング申請部と、を備えた。
この構成によれば、送信端末から送られてきたパケットにリオーダが発生しているかどうかを解析し、リオーダが発生していれば、送信端末にパディングを要求するパディング申請パケットを送信端末に向けて送信する。これにより、送信端末は、リオーダの発生原因を取り除いた形で送信することが可能となる。また、受信端末は、受信端末側で並べ直しのためのパケットの蓄積を行う必要が無くなり、その結果、最終的な伝送の遅延時間がより短いリアルタイムストリームの伝送が可能となる。
上記受信端末において、前記リオーダ状況解析部は、リオーダが発生している場合、リオーダ個数と受信帯域から、予測正常パケット長を推定する。
本発明のパケット送受信方法は、送信端末が、パケットを発生させるパケット発生ステップと、送信端末が、前記パケット発生ステップで発生されたパケットにパディングを施し、ネットワークに送信するパケット送信ステップと、受信端末が、前記ネットワークからパケットを受信し、該パケットのリオーダの発生状況を解析するリオーダ状況解析ステップと、受信端末が、前記リオーダ状況解析ステップでの解析結果に基づいて、パディングを要求するパディング申請パケットを生成するパディング申請パケット生成ステップと、送信端末が、前記パディング申請パケット生成ステップで生成されたパディング申請パケットを受け取るパディング申請パケット受付ステップと、を備え、前記送信端末のパケット送信ステップは、前記パディング申請パケット受付ステップからのパディング要求に基づいて、パケット長が特定長以上となるように、前記パケット発生ステップで発生されたパケットにパディングを施す。
この方法によれば、送信の際には、リオーダの発生原因を取り除いた形で送信することができ、受信の際には、並べ直しのためのパケット蓄積の必要が無く、最終的な伝送の遅延時間がより短いリアルタイムストリームの伝送が可能となる。
本発明の送信端末は、パケットを発生させるデータ発生部と、前記データ発生部で発生されるパケットの送信データ量と該パケットのバースト送信個数の情報からリオーダを防止するパケット長を算出するリオーダ予測部と、前記リオーダ予測部で算出された前記パケット長に従って前記パケットにパディングを施しネットワークに送信するとともに、前記バースト送信個数の情報を生成し前記リオーダ予測部に供給するパケットパディング部と、を備えた。
この構成によれば、送信の際にリオーダの発生原因を取り除いた形で送信することができ、受信側で、並べ直しのためのパケットの蓄積を行う必要が無く、最終的な伝送の遅延時間がより短いリアルタイムストリームの伝送が可能となる。
本発明のパケット送信方法は、パケットを発生させるパケット発生ステップと、前記パケット発生ステップで発生されるパケットの送信データ量と該パケットのバースト送信個数の情報からリオーダを防止するパケット長を算出するパケット長算出ステップと、前記パケット長算出ステップで算出された前記パケット長に従って前記パケットにパディングを施しネットワークに送信するとともに、前記バースト送信個数の情報を生成するパケット送信ステップと、を備えた。
この方法によれば、送信の際にリオーダの発生原因を取り除いた形で送信することができ、受信側で、並べ直しのためのパケットの蓄積を行う必要が無く、最終的な伝送の遅延時間がより短いリアルタイムストリームの伝送が可能となる。
本発明は、リオーダの発生そのものを回避すること、受信端末で並べ直しのため、パケットを蓄積する必要が根本的に無くなり、その結果、最終的な伝送の遅延時間がより短いリアルタイムストリームの伝送を実現できる。
本発明の実施の形態1に係る送信端末及び受信端末それぞれの概略構成を示すブロック図 図1の受信端末におけるリオーダ状況解析部の処理を説明するためのフローチャート 図1の受信端末のパディング申請部で生成されるパディング申請パケットの一例を模式的に示す図 図1の送信端末におけるパディング申請受付部の処理を説明するためのフローチャート 本発明の実施の形態2に係る送信端末及び受信端末それぞれの概略構成を示すブロック図 図5の送信端末におけるリオーダ予測部の処理を説明するためのフローチャート 送信端末と受信端末の接続状況を示す図 回線のトランキングを説明するための図 回線のトランキングが行われているルータの回線選択の様子を示す図
以下、本発明を実施するための好適な実施の形態について、図面を参照して詳細に説明する。
(実施の形態1)
図1は、本発明の実施の形態1に係る送信端末及び受信端末それぞれの概略構成を示すブロック図である。
図1において、送信端末1は、データ発生部101と、パケットパディング部102と、パディング申請受付部103とを備えている。データ発生部101は、映像音声などのデータをエンコードしてパケットを発生する。パケットパディング部102は、特定のパケット長までパディング(padding)してパケットをネットワーク10に送信する。パディング申請受付部103は、パディング申請パケットを受信し、適切な長さにパディングを行うようにパケットパディング部102に指示を行う。パディング申請受付部103は、データ保存用のメモリ1031を有している。
データ発生部101は、映像をエンコードする場合、特定のデータ単位毎にエンコード処理を実施する。具体的には、1画面単位や1画面を複数に分割したスライス単位でエンコード処理を実施する。このとき、エンコード処理は、画面の複雑さや要求される精細度に応じて処理単位あたりに発生するデータ量が異なる。このため、データ発生部101は、処理単位毎に発生したデータを特定長(Lmax)の長さに分割する。次に、データ発生部101は、分割したそれぞれのデータ単位毎にネットワーク10で伝送するためのヘッダを先頭に付与した複数のパケットとして生成し、パケットパディング部102に引き渡す。このとき、ヘッダには、パケットの生成順序(すなわち再生順序)を示すシーケンシャル番号が付与される。このときのヘッダは、例えば、RFC3550で規定されるRTP(Real-time Transport Protocol)ヘッダであってもよいし、独自に定義したヘッダでもかまわない。
パケットパディング部102は、パディング申請受付部103の指示に従って、パケットにパディングを行って、ネットワーク10経由で受信端末2に送信する。なお、パディングとは、パケットに固定データを付加することで特定のパケット長にする処理である。パディング処理は、例えば、IPv6(Internet Protocol Version6)で定義されているPad1,PadNオプションヘッダで実現してもよい(参考文献:RFC2460)。また、パディング処理は、RTPで定義されているパディングビットを用いて実装してもよい(参考文献:RFC3550)。なお、Pad1,PadNオプションヘッダで実現した場合、受信端末2のアプリケーションは意識することなく、パディングの除去作業は、受信端末のIPスタック中で行われる。また、RTPで定義されているパディングビットで実現した場合、パディングの除去作業は、受信端末2のアプリケーションで行う必要がある。なお、パディングの実現方式は、これらに限定する必要はなく、パディングの除去が受信端末2で実施できる形態であれば、独自に定義したパケット形式で実現してもよい。
受信端末2は、リオーダ状況解析部201と、パディング除去部202と、データ再生部203と、パディング申請部204とを備えている。リオーダ状況解析部201は、ネットワーク10からパケットを受信し、パケットのリオーダの発生状況を解析する。リオーダ状況解析部201は、パケットの受信時刻を取得するためのタイマ2011とデータ保存用のメモリ2012を有している。パディング除去部202は、パディングされているパケットのパディング部分を除去してデータ再生部203に引き渡す。パディング申請部204は、リオーダ状況解析部201からのリオーダの発生状況に基づいてパディング申請パケットを生成し、送信端末1にフィードバックする。データ再生部203は、入力されたパケットを順次デコードし、映像音声として再生する。
本実施の形態では、RTPで定義されているパディングビットで実現した例を想定して説明する。ネットワーク10を介して受信端末2に届いたパケットは、受信端末2で受信後、リオーダ状況解析部201に引き渡される。リオーダ状況解析部201は、パケットのヘッダ中のシーケンシャル番号を観測することでリオーダの発生を検知する。さらに、リオーダ状況解析部201は、リオーダ発生時にリオーダが発生しない正常パケット長Lを算出し、算出した正常パケット長Lをパディング申請部204に通知する。また、リオーダ状況解析部201は、パディングの除去が必要なパケットはパディング除去部202に引渡し、パディングの除去が不要なパケットはデータ再生部203に引き渡す。
ここでは、図2に示すフローチャートを参照してリオーダ状況解析部201の処理の詳細を説明する。リオーダ状況解析部201は、パケットを受信する度に起動される。ステップS201の処理は、現在の受信帯域を計測し、計測結果をRWとしてメモリ2012に保存する。受信帯域は、単位時間あたりのパケット受信量で計測できる。次いで、ステップS202の処理は、最大パケット長を計測し、計測結果をLmax1としてメモリ2012に保存する。最大パケット長とは、通信開始から受信するパケット長の最大長である。次いで、ステップS203の処理は、パケット到着順序が反転しているかどうか判定する。すなわち、この判定処理は、パケット中のシーケンシャル番号の反転を観測することでリオーダの発生の有無を判定する。この場合、具体的な処理は、過去受信したパケットのシーケンシャル番号の最大値より、小さいシーケンシャル番号のパケットが到着したら、パケットの到着順序が反転して到着したと判定する。なお、判定の前にシーケンシャル番号が一巡することで、大小関係が反転することはないように、ラップラウンド(lap round)処理を施した後で判定する。
ラップラウンド処理は、具体的には、例えば、比較する双方から特定の同じ値を引き算することで実現できる。リオーダ状況解析部201は、リオーダが発生している場合、リオーダ個数と受信帯域から、予測正常パケット長Lを推定し、パディング申請部204に通知する。この処理が図2のステップS204からステップS207である。ステップS203の処理でリオーダが発生していると判定した場合(Yesの場合)は、ステップS204に進む。次に、ステップS204の処理は、パケット受信時刻をTrとし、反転前パケット番号をS1とし、反転検知パケット通信番号をS2として、それぞれをメモリ2012に保存する。なお、ステップS204の処理は、パケット受信時刻Trをタイマ2011から取得する。
次いで、ステップS205の処理は、リオーダ個数(S1-S2)Nrを算出し、メモリに2012保存する。また、ステップS205の処理は、受信帯域RW、反転前パケット番号S1、反転検知パケット通信番号S2、パケット受信時刻Tr、リオーダ個数Nrから本来の受信時刻Ttを算出し、メモリ2012に保存する。具体的には、本来の受信時刻TtをTt=Tr+RW(Nr*Lmax)/8として算出する。
次いで、ステップS206の処理は、リオーダ個数Nr、最大パケット長Lmax1から予測正常パケット長LをL=Lmax1−α/Nrに基づいて算出する。次いで、ステップS207の処理は、算出した予測正常パケット長Lおよびリオーダ個数Nrをパディング申請部204に通知する。ここで、αは、正の定数としてもよいし、値域が正の値となる時間(Tt−Tr)の関数としてもよい。例えば、αは、α=β*(Tt−Tr)*(Tt−Tr)(但し、β=正の定数としてよい)と求める。
図1に戻り、パディング申請部204は、リオーダ状況解析部201から予測正常パケット長L、リオーダ個数Nrを受け取ると、これらの情報を特定のパディング申請パケットに記載して送信端末1に送付する。具体的には、RFC3550で規定されるRTCPのAPP(Application Defined、アプリケーション定義)形式に従ってパケットを構成してもよい。図3は、そのパケット形式の一例を示したものである。図3でフィールド301から307までは、RFC3550で規定されるAPPのパケット形式の通りである。AAPのパケット形式は、バージョン番号301、バディングビット302、サブタイプ303、パケットタイプPT304、RTCPパケット長305、送信元識別子(SSRC(送信元識別子)/CSRC(貢献送信元識別子))306、及び名前(4バイト)307を含む。サブタイプ303は、例えば「1」としてよいがこれに限らない。名前307は、例えばRPADの4文字に対応するASCIIコードとしてよいがこれに限らない。フィールド308、309は、それぞれ本発明で追加したものであり、フィールド308にはリオーダ個数Nrが格納されフィールド309には予測正常パケット長Lが格納される。
送信端末1にパディング申請パケットが到着すると、パディング申請受付部103がそれを受け取る。図4に示すフローチャートは、パディング申請受付部103の処理の詳細を示したものである。ステップS401において、パディング申請受付部103は、パケットパディング部102より、現在の通信で送信中のパケットの最大長を取得し、Lmax2としてメモリ1031に保存する。通信の単位は、RFC3550で規定されるRTPパケットの送信単位で規定される。具体的には、映像のRTPパケットを送信する単位や音声のRTPパケットを送信する単位が挙げられる。パケットパディング部102では、それらの通信において過去に送信したパケットの最大長を保持する。このパケットの最大長の値は、パディング申請受付部103の要求に基づき通知する。
次に、ステップS402において、パディング申請受付部103は、パディング申請パケットに記載されている予測正常パケット長Lおよびリオーダ個数Nrをそれぞれメモリ1031に保存する。次いで、ステップS403において、パディング申請受付部103は、現在の送信帯域SWおよび最大バースト送信個数Bmaxをパケットパディング部102より取得し、それぞれメモリ1031に保存する。パケットパディング部102では、パケットの送信量を一定時間毎に統計する。現在の送信帯域SWは、パケットの送信量を観測間隔で除算したものである。また、パケットパディング部102では、特定時間毎にパケットを0個以上N個送信するかどうかをトークンバケツで判定する。このとき、パケットパディング部102は、同じ通信で、過去特定時間P以内に一度に送信した最大のパケット数を記録している。パケットパディング部102は、この一度に送信した最大のパケット数をBmaxとして、パディング申請受付部103に引き渡す。
次いで、ステップS404において、パディング申請受付部103は、現在の送信帯域SW、最大バースト送信個数Bmax、リオーダ個数Nr、予測正常パケット長Lから、補正済み正常パケット長Lmを算出する。また、パディング申請受付部103は、算出した補正済み正常パケット長Lmをパケットパディング部102に通知し、処理を終了する。補正済み正常パケット長Lmは、Lm=L−β(Lmax2−L)/I(Nr/Bmax)で算出する。ここで、βは、0≦β≦1を満たす定数であり、I(x)は、I(x)=1(x≧1)、x(0≦x<1)の値をとる関数である。
パケットパディング部102では、通知された補正済み正常パケット長Lmに従って、送信するパケットにパディングを実施する。具体的には、送信対象のパケットの長さがLmに満たない場合、パケット全体の長さがLmになるようにパディングする。パディングの具体的な処理は、前述したIPv6のPAD1、PADNオプションを用いる方法やRTPのパディングビットを用いてパディングの有無をパケット中に記録し、最後尾のバイトでパディング長を伝送する方法を用いてよい。
以上の実施の形態1で述べたように動作することで、送信端末1は、ネットワーク10でリオーダが発生しない長さにパケットにパディングを施して送信するため、ネットワーク10でリオーダが発生することは無くなる。また、受信端末2では、リオーダしたパケットを並べ直すためにパケットをバッファする必要がなくなる。この結果、最終的な伝送の遅延時間がより短いリアルタイムストリームの伝送が可能となる。
なお、リオーダが発生する要因として、ルータ間の回線のトランキングを挙げているがこれに限らない。例えば、リオーダの発生原因は、複数チャネルを用いて通信する無線ネットワークにおけるチャネル選択が原因となる場合がある。また、別の例としては、企業ネットワークとインターネットとの間に設置されるファイヤーウオール中に配置される複数の不正パケット検知エンジンの処理時間ずれによって発生する場合がある。これのいずれの場合でも、本実施の形態の通信端末は、有効に動作する。
(実施の形態2)
図5は、本発明の実施の形態2に係る送信端末及び受信端末それぞれの概略構成を示すブロック図である。なお、図5において前述した図1と共通する部分には同一の符号を付けている。前述した実施の形態1では、受信端末2からのパディング申請に基づいて、送信端末1がパディングの実行の要否を判定していたが、実施の形態2では、送信端末1Aにおいてパディングの要否を判断する点が実施の形態1とは異なっている。
図5において、送信端末1Aのリオーダ予測部501は、ネットワーク10でリオーダが発生するかどうか予測する。パケットパディング部502は、図1のパケットパディング部102と同じ機能を有し、リオーダ予測部501に、シェイピングタイマ粒度(shaping timer granularity)を与えるという点に違いがある。受信端末2Aのパディング除去部503は、図1で説明したパディング除去部202と同じ機能を有するが、パケットを受信し、パディング除去が不要な場合、受信したパケットをそのままデータ再生部203に受け渡す点に違いがある。
リオーダ予測部501は、送信帯域と送信データ量とパケットパディング部502から受け取り、シェイピングタイマ粒度からリオーダの発生を予測する。さらに、リオーダ予測部501は、リオーダが実際に発生するのを防止するのに必要なパケット長、すなわちパディング後のパケットの長さを示す送信予測正常パケット長を算出し、その結果をパケットパディング部502に通知する。リオーダ予測部501は、データ保存用のメモリ5011を有している。
ここでは、リオーダ予測部501の動作について、図6を参照して詳細に説明する。図6は、リオーダ予測部501の処理の詳細を説明するためのフローチャートである。データ発生部101は、一定時間毎にデータを発生させてリオーダ予測部501に引き渡す。例えばデータ発生部101は、映像のエンコーダを含む場合、画面のエンコード毎に特定量のデータを発生する。例えば、60フレーム/秒の画面をエンコードする場合は、1/60秒毎に数十キロバイトのデータを発生する。
データ発生部101が生成したデータを受け取ったリオーダ予測部501は、ステップS601で、パケットパディング部502より現在の送信帯域SWを取得し、メモリ5011に保存する。また、データ発生部101が発生したデータ量Dをメモリ5011に保存する。次いで、ステップS602において、リオーダ予測部501は、パケットパディング部502から最大パケット長Lmax3を取得し、メモリ5011に保存する。最大パケット長Lmax3は、パケットパディング部502がネットワーク10にパケットを送信する際、最大パケット長(MTU: Max Transfer Unit)を利用してもよい。また、最大パケット長Lmax3は、パケットパディング部502が特定の最大長以下でパケットを送信するようにデータを分割パケット化する際、利用する最大パケット長でもよい。
次いで、ステップS603において、リオーダ予測部501は、パケットパディング部502よりシェイピングタイマ粒度Ptを取得し、メモリ5011に保存する。ここで、シェイピングタイマ粒度とは、パケットパディング部502がネットワーク10にパケットを送信する際、一定時間毎に一定個数のパケットを送信するように送信流量を制御する時刻間隔をさす。具体的には、このシェイピングタイマ粒度は、ソフトウエアで実装されている場合、ソフトウエアのオペレーティングシステム(OS:Operating System)が提供するタイマの粒度に下限を律速される。例えば、フリーウエアのオペレーティングシステムであるLinux(登録商標)では、オペレーティングシステムのタイマ粒度を設定する値(HZ)をHZ=1000とし、最も細かく動作する場合で、タイマの粒度は、1ミリ秒である。このシステムの場合は、これ以上細かい時間間隔(例500マイクロ秒)で動作することはできない。シェイピングタイマ粒度とは、この例の場合1ミリ秒である。
次に、ステップS604において、リオーダ予測部501は、現在の送信帯域SW、最大パケット長Lmax3、発生したデータ量D、シェイピングタイマ粒度Ptより、バースト送信個数Bを算出する。具体的には、バースト送信個数B=(D/Lmax3)*8/SW*Ptを算出し、算出結果をメモリ5011に保存する。次いで、ステップS605において、リオーダ予測部501は、バースト送信個数Bが正の整数定数β以上か否かを判定し、β以上の場合はステップS607を実行し、β未満の場合はステップS606を実行するように処理を分岐する。ステップS606(すなわち、B<βの場合)の処理では、送信パケット毎にパディングする必要がないことをパケットパディング部502に通知するとともに、データをパケットパディング部502に引き渡す。パケットパディング部502は、受け取ったデータを特定長のパケットに必要であれば分割して、受信端末2Aに向けて上述した流量制御を実行しながら送信する。
一方、ステップS607(すなわち、B≧βの場合)において、リオーダ予測部501は、バースト送信個数Bとパケット長Lcと最大パケット長Lmax3より、送信予測正常パケット長Lsを算出する。さらに、リオーダ予測部501は、これをパケットパディング部502に通知するとともに、データをパケットパディング部502に引き渡す。ここで、送信予測正常パケット長Lsは、Ls=Lc+(Lmax3−Lc)*B/γ(但し、γはγ≧Bとなる定数、Lcは送信する対象のパケット長さ)として算出する。なお、送信予測正常パケット長Lsは、γ=B、すなわち、Ls=Lmaxとして運用してもかまわない。
送信予測正常パケット長Lsの通知を受けたパケットパディング部502は、受け取ったデータを特定長のパケットに必要であれば分割して、受信端末2Aに向けて上述した流量制御を実行しながら送信する。なお、このとき、パケットパディング部502は、送信する対象のパケットの長さLcがLs以下である場合、パケット長がLsになるようにパディングを施しながらパケットを送信する。
以上の実施の形態2で述べたように動作することで、送信端末1Aは、ネットワーク10でリオーダが発生しない長さにパケットにパディングを施して送信するため、ネットワーク10でリオーダが発生することは回避される。また、受信端末2Aでは、リオーダしたパケットを並べ直すためにパケットをバッファする必要がなくなる。この結果、最終的な伝送の遅延時間がより短いリアルタイムストリームの伝送が可能となる。特に、実施の形態2では、送信端末1Aがパディングの実行の要否を判定するので、受信端末2Aに実施の形態1の受信端末2が持つリオーダ状況解析部201及びパディング申請部204を設ける必要が無い分、受信端末2Aを安価となる。
本発明を詳細にまた特定の実施態様を参照して説明したが、本発明の精神と範囲を逸脱することなく様々な変更や修正を加えることができることは当業者にとって明らかである。
本出願は、2008年12月19日出願の日本特許出願(特願2008−324609)に基づくものであり、その内容はここに参照として取り込まれる。
本発明は、最終的な伝送の遅延時間がより短い映像音声などのリアルタイムストリームの伝送が可能になるといった効果を有し、映像音声などリアルタイムのストリーミングデータの送信を行うサーバ等の送信端末、該送信端末から送信されたストリーミングデータを受信可能なパーソナルコンピュータ、携帯電話等の受信端末への適用が可能である。
1、1A 送信端末
2、2A 受信端末
10 ネットワーク
101 データ発生部
102、502 パケットパディング部
103 パディング申請受付部
201 リオーダ状況解析部
202、503 パディング除去部
203 データ再生部
204 パディング申請部
501 リオーダ予測部
1031、2012、5011 メモリ
2011 タイマ

Claims (6)

  1. パケットを発生させるデータ発生部と、
    受信端末から送信されるパディングを要求するパディング申請パケットを受け取るパディング申請受付部と、
    前記パディング申請受付部からのパディング要求に基づいて、パケット長が特定長以上となるように、前記データ発生部で発生されたパケットにパディングを施し、ネットワークに送信するパケットパディング部と、
    を備え
    前記パディング申請パケットは、受信端末で算出されたリオーダが発生しない正常パケット長を含み、
    前記パケットパディング部は、前記正常パケット長となるように、前記データ発生部で発生されたパケットにパディングを施す、
    送信端末。
  2. ネットワークからパケットを受信し、該パケットのリオーダの発生状況を解析するリオーダ状況解析部と、
    前記リオーダ状況解析部で受信されたパケットを再生するデータ再生部と、
    前記リオーダ状況解析部での解析結果に基づいて、送信端末にパディングを要求するパディング申請パケットを生成するパディング申請部と、
    を備えた受信端末。
  3. 前記リオーダ状況解析部は、リオーダが発生している場合、リオーダ個数と受信帯域から、予測正常パケット長を推定する、
    請求項記載の受信端末。
  4. 送信端末が、パケットを発生させるパケット発生ステップと、
    送信端末が、前記パケット発生ステップで発生されたパケットにパディングを施し、ネットワークに送信するパケット送信ステップと、
    受信端末が、前記ネットワークからパケットを受信し、該パケットのリオーダの発生状況を解析するリオーダ状況解析ステップと、
    受信端末が、前記リオーダ状況解析ステップでの解析結果に基づいて、パディングを要求するパディング申請パケットを生成するパディング申請パケット生成ステップと、
    送信端末が、前記パディング申請パケット生成ステップで生成されたパディング申請パケットを受け取るパディング申請パケット受付ステップと、を備え、
    前記送信端末のパケット送信ステップは、前記パディング申請パケット受付ステップからのパディング要求に基づいて、パケット長が特定長以上となるように、前記パケット発生ステップで発生されたパケットにパディングを施す、
    パケット送受信方法。
  5. パケットを発生させるデータ発生部と、
    前記データ発生部で発生されるパケットの送信データ量と該パケットのバースト送信個数の情報からリオーダを防止するパケット長を算出するリオーダ予測部と、
    前記リオーダ予測部で算出された前記パケット長に従って前記パケットにパディングを施しネットワークに送信するとともに、前記バースト送信個数の情報を生成し、前記リオーダ予測部に供給するパケットパディング部と、
    を備えた送信端末。
  6. パケットを発生させるパケット発生ステップと、
    前記パケット発生ステップで発生されるパケットの送信データ量と該パケットのバースト送信個数の情報からリオーダを防止するパケット長を算出するパケット長算出ステップと、
    前記パケット長算出ステップで算出された前記パケット長に従って前記パケットにパディングを施し、ネットワークに送信するとともに、前記バースト送信個数の情報を生成するパケット送信ステップと、
    を備えたパケット送信方法。
JP2010542814A 2008-12-19 2009-10-13 送信端末及び受信端末 Active JP5393699B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010542814A JP5393699B2 (ja) 2008-12-19 2009-10-13 送信端末及び受信端末

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2008324609 2008-12-19
JP2008324609 2008-12-19
JP2010542814A JP5393699B2 (ja) 2008-12-19 2009-10-13 送信端末及び受信端末
PCT/JP2009/005329 WO2010070793A1 (ja) 2008-12-19 2009-10-13 送信端末及び受信端末

Publications (2)

Publication Number Publication Date
JPWO2010070793A1 JPWO2010070793A1 (ja) 2012-05-24
JP5393699B2 true JP5393699B2 (ja) 2014-01-22

Family

ID=42268479

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010542814A Active JP5393699B2 (ja) 2008-12-19 2009-10-13 送信端末及び受信端末

Country Status (4)

Country Link
US (1) US8711695B2 (ja)
JP (1) JP5393699B2 (ja)
CN (1) CN102257775B (ja)
WO (1) WO2010070793A1 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07107255A (ja) * 1993-10-04 1995-04-21 Fujitsu Ltd 画像情報転送制御方式

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH022762A (ja) * 1988-06-17 1990-01-08 Fujitsu Ltd ノード間トラヒック輻輳状態通知方式
JP3198547B2 (ja) 1991-08-28 2001-08-13 松下電器産業株式会社 受信装置のバッファ管理方法
US5802064A (en) * 1996-03-14 1998-09-01 Starlight Networks, Inc. Protocol header alignment
US6301620B1 (en) * 1997-03-11 2001-10-09 Matsushita Electric Industrial Co., Ltd. Method of sending data from server computer, storage medium, and server computer
JP3839922B2 (ja) * 1997-07-25 2006-11-01 キヤノン株式会社 通信制御方法及び無線通信システム、無線通信装置
JP3558522B2 (ja) * 1998-06-12 2004-08-25 三菱電機株式会社 レート制御通信装置及びレート制御通信方法
EP0982970B1 (en) * 1998-08-21 2006-10-04 Nippon Telegraph and Telephone Corporation ATM switch
JP2003169090A (ja) 2001-11-30 2003-06-13 Fujitsu Ltd 伝送システム
JP3880404B2 (ja) 2002-01-18 2007-02-14 富士通株式会社 Mplsネットワークシステム
US7953115B2 (en) * 2003-06-18 2011-05-31 Nippon Telegraph And Telephone Corporation Wireless packet communication method
US7430254B1 (en) * 2003-08-06 2008-09-30 Lockheed Martin Corporation Matched detector/channelizer with adaptive threshold
CN100493075C (zh) 2003-11-06 2009-05-27 西安电子科技大学 变长数据分组与定长信元混合传送的方法与适配装置
KR100592907B1 (ko) 2003-12-22 2006-06-23 삼성전자주식회사 큐오에스를 향상시키기 위한 무선 인터넷 단말 장치 및패킷 전송 방법
JP4497299B2 (ja) 2004-07-01 2010-07-07 日本電気株式会社 移動無線通信端末装置
US8259748B2 (en) * 2006-07-22 2012-09-04 Cisco Technologies, Inc. Multiple channels and flow control over a 10 Gigabit/second interface
CN101193060B (zh) 2006-12-01 2010-09-01 武汉烽火网络有限责任公司 在分组网上采用前向纠错机制实现可靠的e1传送的方法
US7817642B2 (en) * 2007-07-03 2010-10-19 Applied Micro Circuits Corporation MoCA frame bundling and frame bursting
US7903550B2 (en) * 2007-07-27 2011-03-08 Silicon Image, Inc. Bandwidth reservation for data flows in interconnection networks
KR101527246B1 (ko) * 2007-09-28 2015-06-09 라쿠텐 인코포레이티드 업링크 프로토콜 변경을 지원하기 위한 방법 및 장치
JP4996451B2 (ja) * 2007-12-28 2012-08-08 株式会社東芝 無線通信装置、無線通信方法、及びプログラム
CN101286745B (zh) 2008-05-07 2011-11-30 中兴通讯股份有限公司 一种交织编码方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07107255A (ja) * 1993-10-04 1995-04-21 Fujitsu Ltd 画像情報転送制御方式

Also Published As

Publication number Publication date
CN102257775A (zh) 2011-11-23
CN102257775B (zh) 2014-10-22
JPWO2010070793A1 (ja) 2012-05-24
US8711695B2 (en) 2014-04-29
US20110243130A1 (en) 2011-10-06
WO2010070793A1 (ja) 2010-06-24

Similar Documents

Publication Publication Date Title
KR100982155B1 (ko) 비디오 전화통신을 위한 비디오 패킷 쉐이핑
US8276035B1 (en) High performance digital communications resiliency in a roamable virtual private network
US8081609B2 (en) Proxy-based signaling architecture for streaming media services in a wireless communication system
US7076064B2 (en) Maintaining end-to-end synchronization on telecommunications connection
JP5147858B2 (ja) 複合および非複合rtcpパケット間のrtcp帯域幅の分割
KR20060002787A (ko) 컨텐츠 처리 방법, 장치 및 제품
EP1845691B1 (en) Media stream relay device and method
WO2016062106A1 (zh) 报文处理方法、装置及***
KR20190027856A (ko) 데이터 스트리밍의 순방향 오류 정정
WO2012129922A1 (zh) 一种报文处理方法、转发设备及***
JP2008048182A (ja) 通信処理装置、および通信制御方法、並びにコンピュータ・プログラム
US7321557B1 (en) Dynamic latency assignment methodology for bandwidth optimization of packet flows
WO2018036173A1 (zh) 一种网络负载均衡方法、设备及***
CA2522877C (en) Performing compression of user datagram protocol packets
KR100793345B1 (ko) 음성/데이터 통합 시스템의 패킷 처리 방법 및 그 장치
US7065087B2 (en) Performing compression of user datagram protocol packets
CN111031340A (zh) 边缘节点控制
JP2007515872A (ja) 一般nackレポートブロックおよび消失rleレポートブロックを使用するフィードバックの提供
US20060072495A1 (en) Increasing the throughput of voice over internet protocol data on wireless local area networks
JP5393699B2 (ja) 送信端末及び受信端末
US20080130675A1 (en) Method and System for Data Traffic Integration Using Dynamic Data Packet Fragmentation
JP2004194232A (ja) パケット通信装置
EP1372300A1 (en) Adapting packet length to network load for VoIP communications
JP2005229378A (ja) 中継装置及びその制御方法
JP2004357132A (ja) 通信装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120706

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130528

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130624

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131015

R150 Certificate of patent or registration of utility model

Ref document number: 5393699

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150