Skip to main content
QUICK REVIEW

[論文レビュー] Deconstructing the Tail at Scale Effect Across Network Protocols

Akshitha Sriraman, Sihang Liu|arXiv (Cornell University)|Jan 10, 2017
Cloud Computing and Resource Management参考文献 19被引用数 5
ひとこと要約

この論文は、ネットワークの混雑やプロトコルの複雑さを排除しても、OSカーネルのTCP/UDPプロトコルスタックがネットワークプロトコルにおける極端な尾遅延の主な原因であると特定している。TCP-IP、UDP-IP、RDMAの各環境で制御された実験を実施した結果、接続レスなUDP-IPですら110倍の尾遅延スパイクを示した一方、OSカーネルをバイパスするRDMAは極めて小さな尾遅延を示し、OSプロトコルスタックが現代の低遅延システムにおける性能劣化の根本的原因であることを証明した。

ABSTRACT

Network latencies have become increasingly important for the performance of web servers and cloud computing platforms. Identifying network-related tail latencies and reasoning about their potential causes is especially important to gauge application run-time in online data-intensive applications, where the 99th percentile latency of individual operations can significantly affect the the overall latency of requests. This paper deconstructs the "tail at scale" effect across TCP-IP, UDP-IP, and RDMA network protocols. Prior scholarly works have analyzed tail latencies caused by extrinsic network parameters like network congestion and flow fairness. Contrary to existing literature, we identify surprising rare tails in TCP-IP round-trip measurements that are as enormous as 110x higher than the median latency. Our experimental design eliminates network congestion as a tail-inducing factor. Moreover, we observe similar extreme tails in UDP-IP packet exchanges, ruling out additional TCP-IP protocol operations as the root cause of tail latency. However, we are unable to reproduce similar tail latencies in RDMA packet exchanges, which leads us to conclude that the TCP/UDP protocol stack within the operating system kernel is likely the primary source of extreme latency tails.

研究の動機と目的

  • データセンタースケールのコンピューティングプラットフォームで使用されるネットワークプロトコルにおける極端な尾遅延の根本原因を調査すること。
  • 観察された尾遅延スパイクの原因が、ネットワークの混雑、フローの公平性、またはプロトコルの複雑さ(例:TCPの3ウェイハンドシェイク)にあるかどうかを特定すること。
  • TCP-IP、UDP-IP、RDMAを制御された条件下で比較することで、OSカーネルのネットワークプロトコルスタックの役割を分離して評価すること。
  • OSの干渉が排除されたRDMAにおいて極端な尾遅延が消失するかどうかを評価し、カーネルスタックが遅延の外れ値の主な原因であると示唆すること。
  • TCP-IPがUDP-IPよりも悪い尾遅延を引き起こすのはプロトコルの複雑さによるという一般的な信念に挑戦すること。

提案手法

  • ネットワークの混雑を最小限に抑えた条件下で、TCP-IP、UDP-IP、RDMAプロトコルの制御されたネットワーク実験を実施し、OSレベルの影響を分離した。
  • 帯域幅利用率を変化させた状態でのRound-Trip Time(RTT)を測定し、負荷が尾遅延に与える影響を評価した。
  • UDP-IPをコントロールとして用い、フローモニタリングや再送信といったTCP固有の機能が尾遅延の原因であるかどうかを除外した。
  • プロトコル間のRTT分布を比較し、99百分位数の遅延と極端な外れ値(例:中央値の110倍)に注目した。
  • RDMAのユーザースペースによるOSカーネルのバイパス機能を活用し、カーネルプロトコルスタックの関与を排除して、基本的な尾遅延挙動を評価した。
  • 段階的除外法による推論:ネットワーク要因、TCPの複雑さ、ユーザーモードソフトウェアの影響を除外し、残ったのはカーネルプロトコルスタックが最も可能性の高い原因であった。

実験結果

リサーチクエスチョン

  • RQ1ネットワークの混雑やルーティング要因を排除した状態で、ネットワークプロトコルにおける極端な尾遅延の原因は何ですか?
  • RQ2TCP-IPの追加的な複雑さ(例:3ウェイハンドシェイク、フローモニタリング)は、UDP-IPに比べて尾遅延を顕著に増加させるでしょうか?
  • RQ3OSカーネルのネットワークプロトコルスタックは、現代の低遅延システムにおける極端な遅延外れ値の主な原因になり得るでしょうか?
  • RQ4TCPの信頼性メカニズムが欠如しているにもかかわらず、UDP-IPのラウンドトリップがなぜ依然として巨大な尾遅延スパイクを示すのでしょうか?
  • RQ5RDMAのカーネルバイパス設計は尾遅延挙動においてどのように異なるでしょうか?そして、これは極端な尾遅延の根本原因を何に示唆していますか?

主な発見

  • ネットワークが混雑していない状態でも、TCP-IPのラウンドトリップ測定において中央値の110倍に達する極端な尾遅延が観測された。
  • UDP-IPにおいても同様に極端な尾遅延が観測されたため、再送信やフローモニタリングといったTCP固有のプロトコル操作が外れ値の原因であるとは考えにくくなった。
  • RDMAのラウンドトリップ時間は最大150 µsであり、顕著な尾遅延スパイクは見られず、OSカーネルプロトコルスタックが極端な遅延尾を生じる主な原因であると示唆された。
  • RDMAにおけるOSカーネルの関与の欠如と、TCP/UDP-IPにおける継続的な尾遅延の存在を併せ考えると、OSプロトコルスタック、特に複数回のメモリコピーとシステムインタラプトの必要性が主なボトルネックであると確認された。
  • この研究は、TCP-IPがUDP-IPよりも inherently 悪い尾遅延を引き起こすという仮定に疑問を呈し、同じ条件下で両プロトコルが同等の極端な尾遅延挙動を示すことを示した。
  • 古い、遅いCPUを想定して最適化された従来のネットワークプロトコル設計は、もはや計算遅延によって隠されなくなった、数ミリ秒に達するサブミリ秒オーバーヘッドを露呈しており、現代のシステムではこれがミリ秒スケールの尾遅延として顕在化している。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。