JP2024044549A - 送信するパケットを事前廃棄する送信装置 - Google Patents

送信するパケットを事前廃棄する送信装置 Download PDF

Info

Publication number
JP2024044549A
JP2024044549A JP2022150132A JP2022150132A JP2024044549A JP 2024044549 A JP2024044549 A JP 2024044549A JP 2022150132 A JP2022150132 A JP 2022150132A JP 2022150132 A JP2022150132 A JP 2022150132A JP 2024044549 A JP2024044549 A JP 2024044549A
Authority
JP
Japan
Prior art keywords
stage
information acquired
discard rate
receiving device
packets
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022150132A
Other languages
English (en)
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.)
KDDI Corp
Original Assignee
KDDI Corp
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 KDDI Corp filed Critical KDDI Corp
Priority to JP2022150132A priority Critical patent/JP2024044549A/ja
Publication of JP2024044549A publication Critical patent/JP2024044549A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】輻輳を回避するために送信するパケットを事前廃棄するために、受信装置における処理結果を劣化させず、かつ、受信装置において処理結果を得るまでの時間が長くなることを抑える送信装置及びプログラムを提供する。【解決手段】送信装置1は、受信装置2に送信すべき情報に基づき複数の第1パケットを生成するソース部10と、廃棄率Rを設定する制御部13と、廃棄率Rに従い前記複数の第1パケットの一部を廃棄して残りの複数の第2パケットを受信装置に送信するパケット廃棄部11と、を備える。制御部は、前記複数の第2パケットの受信装置2による受信期間に対応する第1情報(遅延L)と、受信装置2が前記複数の第2パケットに基づき行う処理の結果の性能を示す第2情報(評価値P)と、を受信装置2から取得し、遅延L及び評価値Pに基づき廃棄率Rを更新して記憶部12に格納し、前記第1情報及び前記第2情報に基づき前記廃棄率を制御する。【選択図】図1

Description

本開示は、輻輳を回避するために送信するパケットを事前廃棄する技術に関する。
非特許文献1は、ニューラルネットワーク(NN)の分散深層学習(DDL)を行うための構成を開示している。DDLでは、1つのNNの学習のために行う処理を分割して複数の処理装置に実行させる。DDLにおいて、処理装置は、自装置に割り当てられた処理を実行するために、他の処理装置が行った処理により得られた情報を一般的に必要とする。このため、DDLでは、処理装置間でパケットの送受信が行われる。以下の説明において、パケットを他の処理装置に送信する処理装置を"送信装置"と表記し、他の処理装置からパケットを受信する処理装置を"受信装置"と表記する。なお、複数の処理装置は、それぞれ、"送信装置"と"受信装置"の両方として機能し得る。
例えば、NNの学習における順方向伝搬時に送信装置から送信されるパケットには、当該NNの複数のレイヤ(層)の内の当該送信装置が処理を担当するレイヤの出力値を示す情報が含められる。また、逆方向伝搬時、送信装置から送信されるパケットには、当該送信装置が処理を担当するレイヤの誤差を示す情報が含められる。非特許文献1は、処理装置間を光パスで接続する構成を開示している。また、非特許文献2は、DDLにおいて輻輳を回避するため、送信装置において、受信装置に送信するパケットの一部を廃棄する構成を開示している。DDLにおいては、送信装置が受信装置に送信する情報の一部が欠落しても学習に大きな影響を与えないことが知られている。
C. Wang,et.al.,"Acceleration and Efficiency Warranty for Distributed Machine Learning Jobs over Data Center Network with Optical Circuit Switching",2021 Optical Fiber Communications Conference and Exhibition(OFC),2021,pp.1-3 Jiacheng Xia,et.al.,2019.Rethinking Transport Layer Design for Distributed Machine Learning. In Proceedings of the 3rd Asia-Pacific Workshop on Networking 2019(APNet´19),Association for Computing Machinery,New York,USA,22-28
しかながら、輻輳を回避するために送信装置が多数のパケットを廃棄すると、受信装置では多くの情報が欠落し、当該受信装置における処理結果のパフォーマンス(性能)が劣化し得る。一方、送信装置におけるパケットの廃棄が十分ではないと輻輳が回避されず、当該パケットを受信する受信装置において処理結果を得るまでの時間が長くなる。
本開示は、送信するパケットを事前廃棄する送信装置において、受信装置における処理結果を劣化させず、かつ、受信装置において処理結果を得るまでの時間が長くなることを抑える技術を提供するものである。
本開示の一態様によると、送信装置は、受信装置に送信すべき情報に基づき複数の第1パケットを生成する生成手段と、廃棄率を設定する制御手段と、前記廃棄率に従い前記複数の第1パケットの一部を廃棄して残りの複数の第2パケットを前記受信装置に送信する送信手段と、前記複数の第2パケットの前記受信装置による受信期間に対応する第1情報と、前記受信装置が前記複数の第2パケットに基づき行う処理の結果の性能を示す第2情報と、を前記受信装置から取得する取得手段と、を備え、前記制御手段は、前記第1情報及び前記第2情報に基づき前記廃棄率を制御する。
本開示によると、送信するパケットを事前廃棄する送信装置において、受信装置における処理結果を劣化させず、かつ、受信装置において処理結果を得るまでの時間が長くなることを抑えることができる。
一実施形態による送信装置及び受信装置の構成図。 一実施形態による送信装置が行う処理のフローチャート。 一実施形態による制御部が行う処理のフローチャート。 一実施形態による制御部が行う処理のフローチャート。
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態で説明されている特徴の組み合わせの全てが発明に必須のものとは限らない。実施形態で説明されている複数の特徴のうちの二つ以上の特徴が任意に組み合わされてもよい。また、同一若しくは同様の構成には同一の参照番号を付し、重複した説明は省略する。
以下では、複数の処理装置によりDDLを行う場合を例として実施形態の説明を行う。上述した様に、DDLにおいては複数の処理装置間でパケットの送受信を行う。本実施形態において、パケットを送信する処理装置は送信装置として参照され、パケットを受信する処理装置は受信装置として参照される。なお、各処理装置は、送信装置及び受信装置の両方として機能し得る。送信装置と受信装置のペアは複数あるが、送信装置が受信装置にパケットを送信するために行う処理は、総てのペアにおいて同様である。したがって、以下では、図1に示す送信装置1と受信装置2の1つのペアについてのみ説明する。
まず、本実施形態で使用する用語について説明する。NNの深層学習は、教師データによる各レイヤ(層)の出力値の順方向伝搬と、順方向伝搬の結果に基づく誤差の逆方向伝搬により実行される。以下では、順方向伝搬と、当該順方向伝搬の結果に基づく誤差の逆方向伝搬とを実行して、NNの各重みを更新するまでの処理を1つの"ステージ"と表記する。深層学習においては、このステージが繰り返し行われる。
各ステージにおいて、送信装置1は受信装置2に複数のパケットを送信する。当該複数のパケットは、例えば、NNの複数のレイヤの内の送信装置1が処理を担当するレイヤの出力値や、誤差といった送信装置1での処理結果を含む。当該処理結果は、受信装置2での処理に使用される。本実施形態において、"遅延"とは、1つのステージにおいて、受信装置2が送信装置1からの最初のパケットの受信を開始したタイミングから最後のパケットの受信を完了したタイミングまでの期間とする。つまり、本実施形態における"遅延"とは、受信装置2が送信装置1からのパケットを受信している受信期間に対応する。なお、各ステージにおいて、送信装置1が受信装置2に送信するデータ量は一定であるものとする。各ステージにおいて、送信装置1が受信装置2に送信するデータ量が一定であるため、送信装置1から受信装置2に至るネットワークの経路に輻輳が生じていない場合、各ステージにおいて遅延は略一定である。一方、送信装置1から受信装置2に至るネットワークの経路に輻輳が生じると、輻輳が生じていない場合と比較して遅延は大きくなる。なお、一般的に、輻輳の程度が高くなる程、遅延は大きくなる。
各ステージにおいて、送信装置1から受信装置2へのパケットの送信が完了すると受信装置2は所定の処理を行う。受信装置2は所定の処理が完了すると、処理結果のパフォーマンスを評価して評価値を判定する。パフォーマンスの評価方法は任意である。例えば、DDLにおいて各受信装置2は、ステージ毎に誤差を受け取る。誤差は、ステージの繰り返し回数が多くなる程、一般的には小さくなるが、受信装置2が処理に必要な情報を十分に受信していない場合には、前回のステージからの誤差の減少度合いが小さくなる、或いは、場合によっては増加し得る。したがって、連続する2つのステージの誤差の差に基づき各ステージのパフォーマンスを評価して評価値を判定することができる。
以下、図1を使用して、1つのステージにおける送信装置1及び受信装置2の動作について説明する。送信装置1のソース部10は、あるステージにおいて送信装置1が行った処理結果で得られた情報の内、受信装置2に送信する必要がある情報をパケット化してパケット廃棄部11に出力する。記憶部12には、パケットの廃棄率Rが格納されている。パケット廃棄部11は、廃棄率Rに基づきソース部10からの複数のパケットの内の一部を廃棄し、残りの複数のパケットを受信装置2に送信する。例えば、パケットの廃棄率Rの値が1%であり、ソース部10から100個のパケットを受信した場合、パケット廃棄部11は、その内の1つを廃棄して残りの99個のパケットを受信装置2に送信する。
受信装置2の受信部20は、送信装置1からのパケットを受信して処理部21に出力する。処理部21は、送信装置1からのパケットを使用して受信装置2に与えられた所定の処理を実行する。また、受信部20は、受信したパケットに基づき上述した遅延Lを測定して送信装置1に通知する。さらに、処理部21は、所定の処理の結果に基づき、上述したパフォーマンスの評価値Pを判定して送信装置1に通知する。送信装置1の制御部13は、受信装置2から取得する遅延L及び評価値Pに基づき廃棄率Rを更新して記憶部12に格納する。この廃棄率Rは、次のステージにおいて使用される。なお、制御部13は、送信装置1が行う動作の全体を制御する。
図2は、送信装置1が実行する処理のフローチャートである。図2のフローチャートにおいては、各ステージを順に第sステージと表記する。なお、sは0以上の整数とする。また、第sステージで使用する廃棄率RをRと表記し、第sステージで受信装置2から通知される遅延L及び評価値Pを遅延L及び評価値Pと表記する。なお、最初のステージ、つまり、第0ステージにおける廃棄率Rを0とする。
S10において、制御部13は、ステージの繰り返し回数を示すインデクスsを0に初期化する。S11において、パケット廃棄部11は、廃棄率Rでソース部10からのパケットを廃棄しながら受信装置2に残りのパケットを送信する。第0ステージの場合、廃棄率Rは0であるためパケット廃棄部11は、ソース部10からの総てのパケットを受信装置2に送信する。S12において、制御部13は、第sステージでの遅延L及び評価値Pを受信装置2から取得する。
制御部13は、S13においてs=0であるか否か、つまり、第0ステージであるか否かを判定する。第0ステージである場合、制御部13は、S14で、次のステージ、つまり、第1ステージにおける廃棄率Rを所定値Rに設定する。一方、第0ステージではない場合、制御部13は、S15において、1つ前のステージにおける遅延Ls-1及び評価値Ps-1と、現在のステージにおける遅延L及び評価値Pと、に基づき次のステージ、つまり、第(s+1)ステージにおける廃棄率Rs+1を求める。制御部13は、S16で、現在のステージが最終ステージであるか否かを判定する。現在のステージが最終ステージではない場合、制御部13は、S17でインデクスsを1だけ増加させてS11から処理を繰り返す。一方、現在のステージが最終ステージである場合、制御部13は、図2の処理を終了する。
図3は、図2のS15における処理のフローチャートである。制御部13は、S20において、第sステージでの評価値Pと第(s-1)ステージでの評価値Ps-1とを比較し、評価値Pが評価値Ps-1より劣化し、かつ、その劣化度合いが第1閾値より大きいかを判定する。つまり、第(s-1)ステージでのパフォーマンスと比較して、第sステージでのパフォーマンスが、第1閾値より大きく劣化しているかを判定する。第sステージでのパフォーマンスが、1つ前のステージに対して第1閾値より大きく劣化している場合、制御部13は、廃棄率Rが大きすぎると判定する。よって、制御部13は、S22で、次の第(s+1)ステージでの廃棄率Rs+1を、現在の第sステージでの廃棄率Rより所定値Rp2だけ減少させる。
一方、第sステージでのパフォーマンスが、1つ前のステージに対して第1閾値より大きく劣化していない場合、制御部13は、S21において、第sステージでの遅延Lと第(s-1)ステージでの遅延Ls-1とを比較し、遅延Lが遅延Ls-1より増加し、かつ、その増加度合いが第2閾値より大きいかを判定する。つまり、第(s-1)ステージでの遅延と比較して、第sステージでの遅延が、第2閾値より大きく増加しているかを判定する。第sステージでの遅延が、1つ前のステージに対して第2閾値より大きく増加している場合、制御部13は、廃棄率Rが小さすぎると判定する。よって、制御部13は、S23で、次の第(s+1)ステージでの廃棄率Rs+1を、現在の第sステージでの廃棄率Rより所定値Rp1だけ増加させる。一方、第sステージでの遅延が、1つ前のステージに対して第2閾値より大きく増加していない場合、制御部13は、現在の廃棄率Rが適切であると判定する。この場合、制御部13は、S24で、現在の廃棄率Rを変更せずに第(s+1)ステージでも使用すると判定する。
以上の様に廃棄率Rを制御することで、遅延を抑え、かつ、パフォーマンスの低下を抑える様に廃棄率Rを制御することができる。遅延を抑えることで、つまり、受信装置2での送信装置1からの情報の受信期間が長くなることを抑えることで、受信装置において処理結果を得るまでの時間が長くなることを抑えることができる。また、パフォーマンスの低下を抑えることで、受信装置2における処理結果の劣化を抑えることができる。
なお、廃棄率Rは負の値をとり得ないため、S22において廃棄率Rs+1が負の値になる場合、制御部13は、廃棄率Rs+1を0に設定する。また、廃棄率Rの上限値を定め、S23において廃棄率Rs+1が上限値を超える場合、制御部13は、廃棄率Rs+1を上限値に設定する構成とし得る。また、所定値R、Rp+1及びRp+2は、同じ値であっても異なる値であっても良い。
<変形例>
図3において、制御部13は、S21で、第sステージでの遅延が1つ前のステージに対して第2閾値より大きく増加している場合、S23で、次のステージでの廃棄率Rを所定値だけ増加させ、そうでない場合、S24で、廃棄率Rを変更せずに次のステージでそのまま使用すると決定していた。本変形例では、第kステージ(kは2以上の整数)になると、現在の第sステージでの遅延Lと、過去k回のステージでの遅延との比較により、次の第(s+1)ステージでの廃棄率Rs+1を決定する。なお、第kステージとなるまでの処理は図3と同様である。
図4は、本変形例において制御部13が図2のS15で行う処理のフローチャートを示している。なお、本変形例において図2のS15は、"L~Ls-kとP及びPs-1とに基づきRs+1を判定"となる。図4では、図3のフローチャートと同じ処理ステップについては同じステップ番号を付与している。図3のフローチャートとの相違点は、図3のS21がS30となることである。S30において、制御部13は、遅延Lと、過去k回のステージでの遅延Ls-1、Ls-2、・・・、Ls-kとを比較する。そして、遅延Ls-1、Ls-2、・・・、Ls-kの内の少なくとも1つに対する遅延Lの増加量が第2閾値より大きい場合、制御部13は、S23において、次のステージでの廃棄率Rを所定値だけ増加させる。一方、遅延Ls-1、Ls-2、・・・、Ls-kの総てに対する遅延Lの増加量が第2閾値より大きくない場合、制御部13は、S24において、廃棄率Rを変更せずに次のステージでそのまま使用すると決定する。
本変形例では、1つの前のステージのみならず、過去複数回のステージでの遅延Lとの比較結果に基づき廃棄率Rを制御するため、パフォーマンスの劣化を抑えつつ、遅延をより最適化する様に廃棄率Rを制御することができる。
なお、DDLを行う場合を例にして実施形態の説明を行ったが、本開示は、一部の情報が欠落しても問題が無いアプリケーションに対して適用できる。その様なアプリケーションの例は、例えば、動画や音楽等のコンテンツの配信である。コンテンツの配信においては一部の少量の情報が欠落しても、コンテンツの視聴が不可能となることはない。コンテンツ配信においては、コンテンツを所定データ量のブロックに分割し、1つのブロックの送信を1つのステージとし得る。
なお、本開示による送信装置1は、1つ以上のプロセッサを有する装置の当該1つ以上のプロセッサで実行されると、当該装置を上記送信装置1として機能させるコンピュータプログラムにより実現され得る。コンピュータプログラムは、1つ以上のプロセッサが実行可能なプログラム命令を含み得る。コンピュータプログラムは、コンピュータが読み取り可能な非一時的な記憶媒体に記憶されて、又は、ネットワーク経由で配布が可能なものである。
以上の構成により、送信するパケットを事前廃棄する送信装置において、受信装置における処理結果を劣化させず、かつ、受信装置において処理結果を得るまでの時間が長くなることを抑えることができる。したがって、国連が主導する持続可能な開発目標(SDGs)の目標9「レジリエントなインフラを整備し、持続可能な産業化を推進するとともに、イノベーションの拡大を図る」に貢献することが可能となる。
発明は上記の実施形態に制限されるものではなく、発明の要旨の範囲内で、種々の変形・変更が可能である。
10:ソース部、11:パケット廃棄部、13:制御部

Claims (7)

  1. 受信装置に送信すべき情報に基づき複数の第1パケットを生成する生成手段と、
    廃棄率を設定する制御手段と、
    前記廃棄率に従い前記複数の第1パケットの一部を廃棄して残りの複数の第2パケットを前記受信装置に送信する送信手段と、
    前記複数の第2パケットの前記受信装置による受信期間に対応する第1情報と、前記受信装置が前記複数の第2パケットに基づき行う処理の結果の性能を示す第2情報と、を前記受信装置から取得する取得手段と、
    を備え、
    前記制御手段は、前記第1情報及び前記第2情報に基づき前記廃棄率を制御する、送信装置。
  2. 前記送信装置は、複数のステージを繰り返し実行し、
    前記複数のステージそれぞれは、前記廃棄率に従い前記複数の第1パケットの一部を廃棄して残りの前記複数の第2パケットを前記受信装置に送信し、前記受信装置から前記第1情報及び前記第2情報を取得することを含み、
    前記制御手段は、第1ステージで取得した前記第2情報が、前記第1ステージの1つ前の第2ステージで取得した前記第2情報が示す性能に対して第1閾値より大きく劣化していることを示している場合、前記第1ステージの次に行う第3ステージでの前記廃棄率を前記第1ステージでの前記廃棄率より第1所定値だけ減少させる、請求項1に記載の送信装置。
  3. 前記制御手段は、前記第1ステージで取得した前記第2情報が、前記第2ステージで取得した前記第2情報が示す性能に対して前記第1閾値より大きく劣化していないことを示している場合において、前記第1ステージで取得した前記第1情報が、前記第2ステージで取得した前記第1情報が示す受信期間に対して第2閾値より大きく増大していることを示している場合、前記第3ステージでの前記廃棄率を前記第1ステージでの前記廃棄率より第2所定値だけ増加させる、請求項2に記載の送信装置。
  4. 前記制御手段は、前記第1ステージで取得した前記第2情報が、前記第2ステージで取得した前記第2情報が示す性能に対して前記第1閾値より大きく劣化していないことを示している場合において、前記第1ステージで取得した前記第1情報が、前記第1ステージの前に実行した複数回のステージそれぞれで取得した複数の前記第1情報の内の少なくとも1つの前記第1情報が示す受信期間に対して第2閾値より大きく増大していることを示している場合、前記第3ステージでの前記廃棄率を前記第1ステージでの前記廃棄率より第2所定値だけ増加させる、請求項2に記載の送信装置。
  5. 前記制御手段は、前記第1ステージで取得した前記第2情報が、前記第2ステージで取得した前記第2情報が示す性能に対して前記第1閾値より大きく劣化していないことを示している場合において、前記第1ステージで取得した前記第1情報が、前記第2ステージで取得した前記第1情報が示す受信期間に対して第2閾値より大きく増大していないことを示している場合、前記第3ステージでの前記廃棄率を前記第1ステージでの前記廃棄率と同じにする、請求項2に記載の送信装置。
  6. 前記制御手段は、前記第1ステージで取得した前記第2情報が、前記第2ステージで取得した前記第2情報が示す性能に対して前記第1閾値より大きく劣化していないことを示している場合において、前記第1ステージで取得した前記第1情報が、前記第1ステージの前に実行した複数回のステージそれぞれで取得した複数の前記第1情報が示す総ての受信期間に対して第2閾値より大きく増大していないことを示している場合、前記第3ステージでの前記廃棄率を前記第1ステージでの前記廃棄率と同じにする、請求項2に記載の送信装置。
  7. 1つ以上のプロセッサを有する装置の前記1つ以上のプロセッサで実行されると前記装置を請求項1から6のいずれか1項に記載の送信装置として機能させる、コンピュータプログラム。
JP2022150132A 2022-09-21 2022-09-21 送信するパケットを事前廃棄する送信装置 Pending JP2024044549A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022150132A JP2024044549A (ja) 2022-09-21 2022-09-21 送信するパケットを事前廃棄する送信装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022150132A JP2024044549A (ja) 2022-09-21 2022-09-21 送信するパケットを事前廃棄する送信装置

Publications (1)

Publication Number Publication Date
JP2024044549A true JP2024044549A (ja) 2024-04-02

Family

ID=90479838

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022150132A Pending JP2024044549A (ja) 2022-09-21 2022-09-21 送信するパケットを事前廃棄する送信装置

Country Status (1)

Country Link
JP (1) JP2024044549A (ja)

Similar Documents

Publication Publication Date Title
Szabo et al. Towards the tactile internet: Decreasing communication latency with network coding and software defined networking
Han et al. Accelerating federated learning with split learning on locally generated losses
US9264333B1 (en) Checksum trailer in timing protocols
US20100177666A1 (en) Method and apparatus for tracking clock sources
CN110896556B (zh) 基于深度增强学习的后5g前传网时间同步方法及装置
CN107040334A (zh) 用于通信网络的丢失复原协议
JP2024044549A (ja) 送信するパケットを事前廃棄する送信装置
JP2016192747A (ja) 誤り訂正装置、光受信器および光伝送装置
CN110536308A (zh) 一种基于博弈的多节点计算卸载方法
US8879548B2 (en) Alignment circuit and receiving apparatus
EP3054600A1 (en) Program, encoding device, and encoding method
RU2526755C1 (ru) Способ многомерной динамической маршрутизации в сети связи с пакетной передачей сообщений
CN106357552B (zh) 一种拥塞控制方法及网络节点
US11418449B2 (en) Multipath coding apparatus and related techniques
CN114726792A (zh) 一种基于json报文的处理方法、装置、设备及介质
CN116489154A (zh) 一种负载分担方法和相关装置
Ogawa et al. One-to-many file transfers using multipath-multicast with coding at source
Hanauer et al. Dynamic demand-aware link scheduling for reconfigurable datacenters
US10185610B2 (en) Method and system for adjusting the maximum duration of time-critical functions
JP6526802B2 (ja) データレートの変更中に信号送信を制御するための方法および装置
CN115208769B (zh) 适用于Dragonfly拓扑的环形通信方法
CN111431541A (zh) 一种获得crc码的方法及装置
US11570084B2 (en) Path routing with delay constraints
US11665111B2 (en) Low latency compact Clos network controller
CN112948432B (zh) 数据处理方法和数据处理装置