[要約] RFC 2398は、TCP実装者向けのテストツールについての要約です。このRFCの目的は、TCPの実装をテストするためのツールを提供することです。

Network Working Group                                          S. Parker
Request for Comments: 2398                                  C. Schmechel
FYI: 33                                           Sun Microsystems, Inc.
Category: Informational                                      August 1998
        

Some Testing Tools for TCP Implementors

TCP実装者向けのいくつかのテストツール

Status of this Memo

本文書の状態

This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited.

このメモは、インターネットコミュニティに情報を提供します。いかなる種類のインターネット標準も規定していません。このメモの配布は無制限です。

Copyright Notice

著作権表示

Copyright (C) The Internet Society (1998). All Rights Reserved.

Copyright(C)The Internet Society(1998)。全著作権所有。

1. Introduction
1. はじめに

Available tools for testing TCP implementations are catalogued by this memo. Hopefully disseminating this information will encourage those responsible for building and maintaining TCP to make the best use of available tests. The type of testing the tool provides, the type of tests it is capable of doing, and its availability is enumerated. This document lists only tools which can evaluate one or more TCP implementations, or which can privde some specific results which describe or evaluate the TCP being tested. A number of these tools produce time-sequence plots, see

TCP実装をテストするために利用可能なツールは、このメモによってカタログ化されています。うまくいけば、この情報を広めることで、TCPの構築と保守の責任者が利用可能なテストを最大限に活用できるようになります。ツールが提供するテストの種類、ツールが実行できるテストの種類、およびその可用性が列挙されています。このドキュメントでは、1つ以上のTCP実装を評価できるツール、またはテスト中のTCPを説明または評価する特定の結果を提供できるツールのみをリストしています。これらのツールの多くは、時系列プロットを生成します。

Tim Shepard's thesis [She91] for a general discussion of these plots.

これらの陰謀の一般的な議論のためのティムシェパードの論文[She91]。

Each tools is defined as follows:

各ツールは次のように定義されています。

Name

名前

The name associated with the testing tool.

テストツールに関連付けられた名前。

Category

カテゴリー

One or more categories of tests which the tools are capable of providing. Categories used are: functional correctness, performance, stress. Functional correctness tests how stringent a TCP implementation is to the RFC specifications. Performance tests how quickly a TCP implementation can send and receive data, etc. Stress tests how a TCP implementation is effected under high load conditions.

ツールが提供できるテストの1つ以上のカテゴリ。使用されるカテゴリは、機能の正確さ、パフォーマンス、ストレスです。機能の正確さは、TCP実装がRFC仕様にどれだけ厳しいかをテストします。パフォーマンステストでは、TCP実装がデータを送受信できる速さなどをテストします。ストレステストは、高負荷状態でのTCP実装への影響をテストします。

Description

説明

A description of the tools construction, and the implementation methodology of the tests.

ツールの構成、およびテストの実装方法の説明。

Automation

オートメーション

What steps are required to complete the test? What human intervention is required?

テストを完了するにはどのような手順が必要ですか?どのような人間の介入が必要ですか?

Availability

可用性

How do you retrieve this tool and get more information about it?

どのようにしてこのツールを取得し、それに関する詳細情報を取得しますか?

Required Environment

必要な環境

Compilers, OS version, etc. required to build and/or run the associated tool.

関連ツールのビルドや実行に必要なコンパイラ、OSバージョンなど。

References

参考文献

A list of publications relating to the tool, if any.

ツールに関連する出版物のリスト(ある場合)。

2. Tools
2. ツール
2.1. Dbs
2.1. Dbs

Author Yukio Murayama

あうてょr ゆきお むらやま

Category Performance / Stress

カテゴリーパフォーマンス/ストレス

Description Dbs is a tool which allows multiple data transfers to be coordinated, and the resulting TCP behavior to be reviewed. Results are presented as ASCII log files.

説明Dbsは、複数のデータ転送を調整し、結果のTCP動作を確認できるようにするツールです。結果はASCIIログファイルとして表示されます。

Automation Command of execution is driven by a script file.

実行の自動化コマンドは、スクリプトファイルによって駆動されます。

Availability See http://www.ai3.net/products/dbs for details of precise OS versions supported, and for download of the source code. Current implementation supports BSDI BSD/OS, Linux, mkLinux, SunOS, IRIX, Ultrix, NEWS OS, HP-UX. Other environments are likely easy to add.

サポート状況サポートされている正確なOSバージョンの詳細、およびソースコードのダウンロードについては、http://www.ai3.net/products/dbsを参照してください。現在の実装では、BSDI BSD / OS、Linux、mkLinux、SunOS、IRIX、Ultrix、NEWS OS、HP-UXがサポートされています。他の環境はおそらく追加が簡単です。

Required Environment C language compiler, UNIX-style socket API support.

必要な環境C言語コンパイラ、UNIXスタイルのソケットAPIサポート。

2.2. Dummynet
2.2. ダミーネット

Author Luigi Rizzo

著者ルイージ・リッツォ

Category Functional Correctness / Performance

カテゴリ機能の正確性/パフォーマンス

Description Dummynet is a tool which simulates the presence of finite size queues, bandwidth limitations, and communication delays. Dummynet inserts between two layers of the protocol stack (in the current implementation between TCP and IP), simulating the above effects in an operational system. This way experiments can be done using real protocol implementations and real applications, even running on the same host (dummynet also intercepts communications on the loopback interface). Reconfiguration of dummynet parameters (delay, queue size, bandwidth) can be done on the fly by using a sysctl call. The overhead of dummynet is extremely low.

説明Dummynetは、有限サイズのキューの存在、帯域幅制限、および通信遅延をシミュレートするツールです。ダミーネットは、(TCPとIPの間の現在の実装では)プロトコルスタックの2つの層の間に挿入し、運用システムで上記の効果をシミュレートします。このようにして、同じホストで実行されていても、実際のプロトコル実装と実際のアプリケーションを使用して実験を行うことができます(ダミーネットもループバックインターフェイス上の通信を傍受します)。 sysctl呼び出しを使用して、dummynetパラメータ(遅延、キューサイズ、帯域幅)の再構成をその場で実行できます。 dummynetのオーバーヘッドは非常に低いです。

Automation Requires merging diff files with kernel source code. Command-line driven through the sysctl command to modify kernel variables.

自動化には、diffファイルをカーネルソースコードとマージする必要があります。カーネル変数を変更するためにsysctlコマンドを介して駆動されるコマンドライン。

Availability See http://www.iet.unipi.it/~luigi/research.html or e-mail Luigi Rizzo (l.rizzo@iet.unipi.it). Source code is available for FreeBSD 2.1 and FreeBSD 2.2 (easily adaptable to other BSD-derived systems).

入手方法http://www.iet.unipi.it/~luigi/research.htmlまたは電子メールでLuigi Rizzo(l.rizzo@iet.unipi.it)を参照してください。ソースコードは、FreeBSD 2.1およびFreeBSD 2.2で利用できます(他のBSD派生システムに簡単に適応できます)。

Required Environment C language compiler, BSD-derived system, kernel source code.

必要な環境C言語コンパイラ、BSD派生システム、カーネルソースコード。

References [Riz97]

参照[Riz97]

2.3. Netperf
2.3. Netperf

Author Rick Jones

著者リック・ジョーンズ

Category Performance

カテゴリーパフォーマンス

Description Single connection bandwidth or latency tests for TCP, UDP, and DLPI. Includes provisions for CPU utilization measurement.

説明TCP、UDP、およびDLPIの単一接続帯域幅または遅延テスト。 CPU使用率測定のプロビジョニングが含まれています。

Automation Requires compilation (K&R C sufficient for all but-DHISTOGRAM, may require ANSI C in the future) if starting from source. Execution as child of inetd requires editing of /etc/services and /etc/inetd.conf. Scripts are provided for a quick look (snapshot_script), bulk throughput of TCP and UDP, and latency for TCP and UDP. It is command-line driven.

ソースから開始する場合、自動化にはコンパイルが必要です(K&R CはDHISTOGRAMを除くすべてに十分ですが、将来ANSI Cが必要になる可能性があります) inetdの子として実行するには、/ etc / servicesおよび/etc/inetd.confを編集する必要があります。スクリプトは、クイックルック(snapshot_script)、TCPおよびUDPのバルクスループット、TCPおよびUDPの遅延のために提供されています。それはコマンドライン駆動です。

Availability See http://www.cup.hp.com/netperf/NetperfPage.html or e-mail Rick Jones (raj@cup.hp.com). Binaries are available here for HP/UX Irix, Solaris, and Win32.

入手方法http://www.cup.hp.com/netperf/NetperfPage.htmlまたは電子メールRick Jones(raj@cup.hp.com)を参照してください。 HP / UX Irix、Solaris、Win32のバイナリはこちらから入手できます。

Required Environment C language compiler, POSIX.1, sockets.

必要な環境C言語コンパイラ、POSIX.1、ソケット。

2.4. NIST Net
2.4. NISTネット

Author Mark Carson

著者Mark Carson

Category Functional Correctness / Performance

カテゴリ機能の正確性/パフォーマンス

Description NIST Net is a network emulator. The tool is packaged as a Linux kernel patch, a kernel module, a set of programming APIs, and command-line and X-based user interfaces.

説明NIST Netはネットワークエミュレーターです。このツールは、Linuxカーネルパッチ、カーネルモジュール、プログラミングAPIのセット、コマンドラインおよびXベースのユーザーインターフェイスとしてパッケージ化されています。

NIST Net works by turning the system into a "selectively bad" router - incoming packets may be delayed, dropped, duplicated, bandwidth-constrained, etc. Packet delays may be fixed or randomly distributed, with loadable probability distributions. Packet loss may be uniformly distributed (constant loss probability) or congestion-dependent (probability of loss increases with packet queue lengths). Explicit congestion notifications may optionally be sent in place of congestion-dependent loss.

NISTネットは、システムを「選択的に悪い」ルーターに変えることで機能します。着信パケットは遅延、ドロップ、複製、帯域幅の制約などがあります。パケット遅延は、ロード可能な確率分布で固定またはランダムに分散されます。パケット損失は、均一に分散するか(一定の損失確率)、または輻輳に依存する可能性があります(損失の確率は、パケットキューの長さとともに増加します)。輻輳に依存した損失の代わりに、明示的な輻輳通知をオプションで送信できます。

Automation To control the operation of the emulator, there is an interactive user interface, a non-interactive command-line interface, and a set of APIs. Any or all of these may be used in concert. The interactive interface is suitable for simple, spur-of-the-moment testing, while the command-line or APIs may be used to create scripted, non-interactive tests.

自動化エミュレーターの操作を制御するために、対話型ユーザーインターフェイス、非対話型コマンドラインインターフェイス、およびAPIセットがあります。これらのいずれかまたはすべてを組み合わせて使用​​できます。インタラクティブなインターフェースは、簡単な瞬間的なテストに適していますが、コマンドラインまたはAPIを使用して、スクリプト化された非インタラクティブなテストを作成できます。

Availability NIST Net is available for public download from the NIST Net web site, http://www.antd.nist.gov/itg/nistnet/. The web site also has installation instructions and documentation.

可用性NIST Netは、NIST Net Webサイト(http://www.antd.nist.gov/itg/nistnet/)から一般にダウンロードできます。 Webサイトには、インストール手順とドキュメントもあります。

Required Environment NIST Net requires a Linux installtion, with kernel version 2.0.27 - 2.0.33. A kernel source tree and build tools are required to build and install the NIST Net components. Building the X interface requires a version of XFree86 (Current Version is 3.3.2). An Athena-replacement widget set such as neXtaw (http://www.inf.ufrgs.br/~kojima/nextaw/) is also desirable for an improved user interface.

必要な環境NIST Netには、カーネルバージョン2.0.27〜2.0.33のLinuxインストールが必要です。 NIST Netコンポーネントをビルドしてインストールするには、カーネルソースツリーとビルドツールが必要です。 Xインターフェースを構築するには、XFree86のバージョンが必要です(現在のバージョンは3.3.2です)。ユーザーインターフェイスを改善するには、neXtaw(http://www.inf.ufrgs.br/~kojima/nextaw/)などのAthena置換ウィジェットセットも望ましいです。

NIST Net should run on any i386-compatible machine capable of running Linux, with one or more interfaces.

NIST Netは、1つ以上のインターフェースを備え、Linuxを実行できるi386互換マシンで実行する必要があります。

2.5. Orchestra
2.5. オーケストラ

Author Scott Dawson, Farnam Jahanian, and Todd Mitton

著者Scott Dawson、Farnam Jahanian、およびTodd Mitton

Category Functional Correctness / Performance

カテゴリ機能の正確性/パフォーマンス

Description This tool is a library which provides the user with an ability to build a protocol layer capable of performing fault injection on protocols. Several fault injection layers have been built using this library, one of which has been used to test different vendor implementations of TCP. This is accomplished by probing the vendor implementation from one machine containing a protocol stack that has been instrumented with Orchestra. A connection is opened from the vendor TCP implementation to the machine which has been instrumented. Faults may then be injected at the Orchestra side of the connection and the vendor TCP's response may be monitored. The most recent version of Orchestra runs inside the X-kernel protocol stack on the OSF MK operating system.

説明このツールは、プロトコルでフォールトインジェクションを実行できるプロトコルレイヤーを構築する機能をユーザーに提供するライブラリです。このライブラリを使用していくつかのフォールトインジェクションレイヤーが構築されています。そのうちの1つは、TCPのさまざまなベンダー実装をテストするために使用されています。これは、Orchestralで計測されたプロトコルスタックを含む1台のマシンからベンダーの実装をプローブすることで実現されます。ベンダーのTCP実装から、インストルメントされたマシンへの接続が開かれます。次に、接続のオーケストラ側で障害が挿入され、ベンダーのTCPの応答が監視されます。 Orchestraの最新バージョンは、OSF MKオペレーティングシステムのXカーネルプロトコルスタック内で実行されます。

When using Orchestra to test a protocol, the fault injection layer is placed below the target protocol in the protocol stack. This can either be done on one machine on the network, if protocol stacks on the other machines cannot be modified (as in the case of testing TCP), or can be done on all machines on the network (as in the case of testing a protocol under development). Once the fault injection layer is in the protocol stack, all messages sent by and destined for the target protocol pass through it on their way to/from the network. The Orchestra fault injection layer can manipulate these messages. In particular, it can drop, delay, re-order, duplicate, or modify messages. It can also introduce new messages into the system if desired.

オーケストレーションを使用してプロトコルをテストする場合、フォールトインジェクションレイヤーは、プロトコルスタックのターゲットプロトコルの下に配置されます。これは、他のマシンのプロトコルスタックを変更できない場合(TCPをテストする場合など)、ネットワーク上の1つのマシンで実行するか、ネットワーク上のすべてのマシンで実行できます(テストする場合など)開発中のプロトコル)。フォールトインジェクションレイヤーがプロトコルスタックに入ると、ターゲットプロトコルによって送信され、ターゲットプロトコルに宛てられたすべてのメッセージは、ネットワークへの、またはネットワークからのその途中で通過します。オーケストラのフォールトインジェクションレイヤーはこれらのメッセージを操作できます。特に、メッセージの削除、遅延、並べ替え、複製、変更が可能です。必要に応じて、新しいメッセージをシステムに導入することもできます。

The actions of the Orchestra fault injection layer on each message are determined by a script, written in Tcl. This script is interpreted by the fault injection layer when the message enters the layer. The script has access to the header information about the message, and can make decisions based on header values. It can also keep information about previous messages, counters, or any other data which the script writer deems useful. Users of Orchestra may also define their own actions to be taken on messages, written in C, that may be called from the fault injection scripts.

各メッセージに対するOrchestratorフォールトインジェクションレイヤーのアクションは、Tclで記述されたスクリプトによって決定されます。このスクリプトは、メッセージが層に入るときに障害挿入層によって解釈されます。スクリプトはメッセージに関するヘッダー情報にアクセスでき、ヘッダー値に基づいて決定を行うことができます。また、以前のメッセージ、カウンター、またはスクリプト作成者が有用と考えるその他のデータに関する情報を保持することもできます。 Orchestraのユーザーは、Cで記述されたメッセージに対して実行する独自のアクションを定義することもできます。これは、フォールトインジェクションスクリプトから呼び出すことができます。

Automation Scripts can be specified either using a graphical user interface which generates Tcl, or by writing Tcl directly. At this time, post-analysis of the results of the test must also be performed by the user. Essentially this consists of looking at a packet trace that Orchestra generates for (in)correct behavior. Must compile and link fault generated layer with the protocol stack.

自動化スクリプトは、Tclを生成するグラフィカルユーザーインターフェイスを使用するか、Tclを直接記述することで指定できます。このとき、テスト結果の事後分析もユーザーが行う必要があります。基本的に、これはOrchestraが(不適切な)動作のために生成するパケットトレースを調べることで構成されます。障害が発生した層をコンパイルしてプロトコルスタックにリンクする必要があります。

Availability See http://www.eecs.umich.edu/RTCL/projects/orchestra/ or e-mail Scott Dawson (sdawson@eecs.umich.edu).

可用性http://www.eecs.umich.edu/RTCL/projects/orchestra/を参照するか、スコットドーソン(sdawson@eecs.umich.edu)に電子メールを送信してください。

Required Environment OSF MK operating system, or X-kernel like network architecture, or adapted to network stack.

必要な環境OSF MKオペレーティングシステム、またはネットワークアーキテクチャのようなXカーネル、またはネットワークスタックに適合。

References [DJ94], [DJM96a], [DJM96b]

参照[DJ94]、[DJM96a]、[DJM96b]

2.6. Packet Shell
2.6. パケットシェル

Author Steve Parker and Chris Schmechel

著者Steve ParkerとChris Schmechel

Category Functional Correctness / Performance

カテゴリ機能の正確性/パフォーマンス

Description An extensible Tcl/Tk based software toolset for protocol development and testing. Tcl (Tool Command Language) is an embeddable scripting language and Tk is a graphical user interface toolkit based on Tcl. The Packet Shell creates Tcl commands that allow you to create, modify, send, and receive packets on networks. The operations for each protocol are supplied by a dynamic linked library called a protocol library. These libraries are silently linked in from a special directory when the Packet Shell begins execution. The current protocol libraries are: IP, IPv6, IPv6 extensions, ICMP, ICMPv6, Ethernet layer, data layer, file layer (snoop and tcpdump support), socket layer, TCP, TLI.

説明プロトコルの開発およびテスト用の拡張可能なTcl / Tkベースのソフトウェアツールセット。 Tcl(ツールコマンド言語)は埋め込み可能なスクリプト言語であり、TkはTclに基づくグラフィカルユーザーインターフェイスツールキットです。パケットシェルは、ネットワークでパケットを作成、変更、送信、および受信できるTclコマンドを作成します。各プロトコルの操作は、プロトコルライブラリと呼ばれるダイナミックリンクライブラリによって提供されます。これらのライブラリは、パケットシェルが実行を開始すると、特別なディレクトリからサイレントリンクされます。現在のプロトコルライブラリは、IP、IPv6、IPv6拡張、ICMP、ICMPv6、イーサネットレイヤー、データレイヤー、ファイルレイヤー(スヌープおよびtcpdumpサポート)、ソケットレイヤー、TCP、TLIです。

It includes harness, which is a Tk based graphical user interface for creating test scripts within the Packet Shell. It includes tests for no initial slow start, and retain out of sequence data as TCP test cases mentioned in [PADHV98].

パケットシェル内でテストスクリプトを作成するためのTkベースのグラフィカルユーザーインターフェイスであるハーネスが含まれています。 [PADHV98]で言及されているTCPテストケースのように、初期のスロースタートがないためのテストが含まれており、シーケンスデータを保持します。

It includes tcpgraph, which is used with a snoop or tcpdump capture file to produce a TCP time-sequence plot using xplot.

これには、xplotを使用してTCP時間シーケンスプロットを生成するためにsnoopまたはtcpdumpキャプチャファイルで使用されるtcpgraphが含まれています。

Automation Command-line driven through Tcl commands, or graphical user interface models are available through the harness format.

Tclコマンドによって駆動されるオートメーションコマンドライン、またはグラフィカルユーザーインターフェイスモデルは、ハーネスフォーマットを通じて利用できます。

Availability See http://playground.sun.com/psh/ or e-mail owner-packet-shell@sunroof.eng.sun.com.

可用性http://playground.sun.com/psh/または電子メールowner-packet-shell@sunroof.eng.sun.comを参照してください。

Required Environment

必要な環境

Solaris 2.4 or higher. Porting required for other operating systems.

Solaris 2.4以降。他のオペレーティングシステムには移植が必要です。

2.7. Tcpanaly
2.7. Tcpanaly

Author Vern Paxson

著者Vern Paxson

Category Functional Correctness / Performance

カテゴリ機能の正確性/パフォーマンス

Description This is a tool for automatically analyzing a TCP implementation's behavior by inspecting packet traces of the TCP's activity. It does so through packet filter traces produced by tcpdump. It has coded within it knowledge of a large number of TCP implementations. Using this, it can determine whether a given trace appears consistent with a given implementation, and, if so, exactly why the TCP chose to transmit each packet at the time it did. If a trace is found inconsistent with a TCP, tcpanaly either diagnoses a likely measurement error present in the trace, or indicates exactly whether the activity in the trace deviates from that of the TCP, which can greatly aid in determining how the traced implementation behaves.

説明これは、TCPのアクティビティのパケットトレースを検査することにより、TCP実装の動作を自動的に分析するためのツールです。これは、tcpdumpによって生成されたパケットフィルタートレースを通じて行われます。その中には、多数のTCP実装に関する知識がコーディングされています。これを使用して、特定のトレースが特定の実装と一致しているかどうか、および一致している場合は、TCPがそのときに各パケットを送信することを選択した理由を正確に判断できます。トレースがTCPと一致しないことが判明した場合、tcpanalyは、トレースに存在する可能性のある測定エラーを診断するか、トレースのアクティビティがTCPのアクティビティから逸脱しているかどうかを正確に示します。これは、トレースされた実装の動作を決定するのに非常に役立ちます。

Tcpanaly's category is somewhat difficult to classify, since it attempts to profile the behavior of an implementation, rather than to explicitly test specific correctness or performance issues. However, this profile identifies correctness and performance problems.

Tcpanalyのカテゴリは、特定の正確性やパフォーマンスの問題を明示的にテストするのではなく、実装の動作をプロファイルしようとするため、分類がやや困難です。ただし、このプロファイルは正確さとパフォーマンスの問題を識別します。

Adding new implementations of TCP behavior is possible with tcpanaly through the use of C++ classes.

TCP動作の新しい実装を追加するには、tcpanalyでC ++クラスを使用します。

Automation Command-line driven and only the traces of the TCP sending and receiving bulk data transfers are needed as input.

自動化コマンドライン駆動で、バルクデータ転送を送受信するTCPのトレースのみが入力として必要です。

Availability Contact Vern Paxson (vern@ee.lbl.gov).

可用性Vern Paxson(vern@ee.lbl.gov)にお問い合わせください。

Required Environment C++ compiler.

必要な環境C ++コンパイラ。

References [Pax97a]

参照[Pax97a]

2.8. Tcptrace
2.8. Tcptrace

Author Shawn Ostermann

著者Shawn Ostermann

Category Functional Correctness / Performance

カテゴリ機能の正確性/パフォーマンス

Description This is a TCP trace file analysis tool. It reads output trace files in the formats of : tcpdump, snoop, etherpeek, and netm.

説明これは、TCPトレースファイル分析ツールです。 tcpdump、snoop、etherpeek、netmの形式で出力トレースファイルを読み取ります。

For each connection, it keeps track of elapsed time, bytes/segments sent and received, retransmissions, round trip times, window advertisements, throughput, etc from simple to very detailed output.

接続ごとに、経過時間、送受信されたバイト/セグメント、再送信、往復時間、ウィンドウアドバタイズメント、スループットなどを単純な出力から非常に詳細な出力まで追跡します。

It can also produce three different types of graphs:

3つの異なるタイプのグラフを生成することもできます。

Time Sequence Graph (shows the segments sent and ACKs returned as a function of time)

時間シーケンスグラフ(送信されたセグメントと時間の関数として返されたACKを示します)

Instantaneous Throughput (shows the instantaneous, averaged over a few segments, throughput of the connection as a function of time).

瞬時スループット(時間の関数として、接続のスループットを数セグメントにわたって平均した瞬時を示します)。

Round Trip Times (shows the round trip times for the ACKs as a function of time)

往復時間(時間の関数としてACKの往復時間を示します)

Automation Command-line driven, and uses the xplot program to view the graphs.

オートメーションコマンドライン駆動で、xplotプログラムを使用してグラフを表示します。

Availability Source code is available, and Solaris binary along with sample traces. See http://jarok.cs.ohiou.edu/software/tcptrace/tcptrace.html or e-mail Shawn Ostermann (ostermann@cs.ohiou.edu).

ソースコードが利用可能で、サンプルトレースとともにSolarisバイナリも利用できます。 http://jarok.cs.ohiou.edu/software/tcptrace/tcptrace.htmlまたは電子メールShawn Ostermann(ostermann@cs.ohiou.edu)を参照してください。

Required Environment C compiler, Solaris, FreeBSD, NetBSD, HPUX, Linux.

必要な環境Cコンパイラ、Solaris、FreeBSD、NetBSD、HPUX、Linux。

2.9. Tracelook
2.9. Tracelook

Author Greg Minshall

著者グレッグ・ミンシャル

Category Functional Correctness / Performance

カテゴリ機能の正確性/パフォーマンス

Description This is a Tcl/Tk program for graphically viewing the contents of tcpdump trace files. When plotting a connection, a user can select various variables to be plotted. In each direction of the connection, the user can plot the advertised window in each packet, the highest sequence number in each packet, the lowest sequence number in each packet, and the acknowledgement number in each packet.

説明これは、tcpdumpトレースファイルの内容をグラフィカルに表示するためのTcl / Tkプログラムです。接続をプロットするとき、ユーザーはプロットするさまざまな変数を選択できます。接続の各方向で、ユーザーは各パケットのアドバタイズされたウィンドウ、各パケットの最大シーケンス番号、各パケットの最小シーケンス番号、および各パケットの確認応答番号をプロットできます。

Automation Command-line driven with a graphical user interface for the graph.

グラフのグラフィカルユーザーインターフェイスで駆動されるオートメーションコマンドライン。

Availability See http://www.ipsilon.com/~minshall/sw/tracelook/tracelook.html or e-mail Greg Minshall (minshall@ipsilon.com).

可用性http://www.ipsilon.com/~minshall/sw/tracelook/tracelook.htmlまたは電子メールGreg Minshall(minshall@ipsilon.com)を参照してください。

Required Environment A modern version of awk, and Tcl/Tk (Tk version 3.6 or higher). The program xgraph is required to view the graphs under X11.

必要な環境awkの最新バージョン、およびTcl / Tk(Tkバージョン3.6以降)。 X11でグラフを表示するには、プログラムxgraphが必要です。

2.10. TReno
2.10. 列車

Author Matt Mathis and Jamshid Mahdavi

著者Matt MathisとJamshid Mahdavi

Category Performance

カテゴリーパフォーマンス

Description This is a TCP throughput measurement tool based on sending UDP or ICMP packets in patterns that are controlled at the user-level so that their timing reflects what would be sent by a TCP that observes proper congestion control (and implements SACK). This allows it to measure throughput independent of the TCP implementation of end hosts and serve as a useful platform for prototyping TCP changes.

説明これは、ユーザーレベルで制御されるパターンでUDPまたはICMPパケットを送信することに基づくTCPスループット測定ツールであり、適切な輻輳制御を監視する(およびSACKを実装する)TCPによって送信されるものをそれらのタイミングが反映するようにします。これにより、エンドホストのTCP実装とは無関係にスループットを測定し、TCP変更のプロトタイピングに役立つプラットフォームとして機能します。

Automation Command-line driven. No "server" is required, and it only requires a single argument of the machine to run the test to.

自動化されたコマンドライン駆動。 「サーバー」は必要なく、テストを実行するためにマシンの単一の引数のみが必要です。

Availability See http://www.psc.edu/networking/treno_info.html or e-mail Matt Mathis (mathis@psc.edu) or Jamshid Mahdavi (mahdavi@psc.edu).

可用性http://www.psc.edu/networking/treno_info.htmlまたは電子メールMatt Mathis(mathis@psc.edu)またはJamshid Mahdavi(mahdavi@psc.edu)を参照してください。

Required Environment C compiler, POSIX.1, raw sockets.

必要な環境Cコンパイラ、POSIX.1、rawソケット。

2.11. Ttcp
2.11. Ttcp

Author Unknown

著者不明

Category Performance

カテゴリーパフォーマンス

Description Originally written to move files around, ttcp became the classic throughput benchmark or load generator, with the addition of support for sourcing to/from memory. It can also be used as a traffic absorber. It has spawned many variants, recent ones include support for UDP, data pattern generation, page alignment, and even alignment offset control.

説明もともとファイルを移動するために作成されたttcpは、メモリへの、またはメモリからのソースのサポートが追加されて、古典的なスループットベンチマークまたはロードジェネレータになりました。トラフィックアブソーバーとしても使用できます。多くの亜種が生み出され、最近の亜種では、UDP、データパターン生成、ページアライメント、さらにはアライメントオフセットコントロールのサポートが含まれています。

Automation Command-line driven.

自動化されたコマンドライン駆動。

Availability See ftp://ftp.arl.mil/pub/ttcp/ or e-mail ARL (ftp@arl.mil) which includes the most common variants available.

可用性ftp://ftp.arl.mil/pub/ttcp/または電子メールARL(ftp@arl.mil)を参照してください。入手可能な最も一般的なバリアントが含まれています。

Required Environment C compiler, BSD sockets.

必要な環境Cコンパイラ、BSDソケット。

2.12. Xplot
2.12. Xplot

Author Tim Shepard

著者Tim Shepard

Category Functional Correctness / Performance

カテゴリ機能の正確性/パフォーマンス

Description This is a fairly conventional graphing/plotting tool (xplot itself), a script to turn tcpdump output into xplot input, and some sample code to generate xplot commands to plot the TCP time-sequence graph).

説明これは、かなり一般的なグラフ作成/プロットツール(xplot自体)、tcpdump出力をxplot入力に変換するスクリプト、およびTCP時系列グラフをプロットするxplotコマンドを生成するサンプルコードです。

Automation Command-line driven with a graphical user interface for the plot.

プロット用のグラフィカルユーザーインターフェイスで駆動されるオートメーションコマンドライン。

Availability See ftp://mercury.lcs.mit.edu/pub/shep/xplot.tar.gz or e-mail Tim Shepard (shep@lcs.mit.edu).

可用性ftp://mercury.lcs.mit.edu/pub/shep/xplot.tar.gzまたは電子メールTim Shepard(shep@lcs.mit.edu)を参照してください。

Required Environment C compiler, X11.

必要な環境Cコンパイラ、X11。

References [She91]

参照[She91]

3. Summary
3. 概要

This memo lists all TCP tests and testing tools reported to the authors as part of TCP Implementer's working group and is not exhaustive. These tools have been verified as available by the authors.

このメモは、TCPインプリメンターのワーキンググループの一部として作成者に報告されたすべてのTCPテストとテストツールをリストしたものであり、網羅的なものではありません。これらのツールは、作成者が利用できることが確認されています。

4. Security Considerations
4. セキュリティに関する考慮事項

Network analysis tools are improving at a steady pace. The continuing improvement in these tools such as the ones described make security concerns significant.

ネットワーク分析ツールは着実に進歩しています。説明されているツールなど、これらのツールの継続的な改善により、セキュリティ上の懸念が大きくなっています。

Some of the tools could be used to create rogue packets or denial-of-service attacks against other hosts. Also, some of the tools require changes to the kernel (foreign code) and might require root privileges to execute. So you are trusting code that you have fetched from some perhaps untrustworthy remote site. This code could contain malicious code that could present any kind of attack.

一部のツールは、他のホストに対する不正なパケットやサービス拒否攻撃を作成するために使用される可能性があります。また、一部のツールではカーネル(外部コード)の変更が必要であり、実行するにはroot権限が必要な場合があります。したがって、おそらく信頼できないリモートサイトからフェッチしたコードを信頼しています。このコードには、あらゆる種類の攻撃を引き起こす可能性のある悪意のあるコードが含まれている可能性があります。

None of the listed tools evaluate security in any way or form.

リストされているツールのいずれも、セキュリティを評価する方法や形式はありません。

There are privacy concerns when grabbing packets from the network in that you are now able to read other people's mail, files, etc. This impacts more than just the host running the tool but all traffic crossing the host's physical network.

ネットワークからパケットを取得する際にプライバシーの問題があり、他の人のメール、ファイルなどを読み取ることができるようになりました。これは、ツールを実行しているホストだけでなく、ホストの物理ネットワークを通過するすべてのトラフィックに影響を与えます。

5. References
5. 参考文献

[DJ94] Scott Dawson and Farnam Jahanian, "Probing and Fault Injection of Distributed Protocol Implementations", University of Michigan Technical Report CSE-TR-217-94, EECS Department.

[DJ94]スコットドーソンとファーナムジャハニアン、「分散プロトコル実装のプロービングとフォールトインジェクション」、ミシガン大学テクニカルレポートCSE-TR-217-94、EECS部。

[DJM96a] Scott Dawson, Farnam Jahanian, and Todd Mitton, "ORCHESTRA: A Fault Injection Environment for Distributed Systems", University of Michigan Technical Report CSE-TR-318-96, EECS Department.

[DJM96a] Scott Dawson、Farnam Jahanian、およびTodd Mitton、「ORCHESTRA:A Fault Injection Environment for Distributed Systems」、ミシガン大学テクニカルレポートCSE-TR-318-96、EECS部門。

[DJM96b] Scott Dawson, Farnam Jahanian, and Todd Mitton, "Experiments on Six Commercial TCP Implementations Using a Software Fault Injection Tool", University of Michigan Technical Report CSE-TR-298-96, EECS Department.

[DJM96b] Scott Dawson、Farnam Jahanian、およびTodd Mitton、「ソフトウェア障害挿入ツールを使用した6つの商用TCP実装の実験」、ミシガン大学テクニカルレポートCSE-TR-298-96、EECS部。

[Pax97a] Vern Paxson, "Automated Packet Trace Analysis of TCP Implementations", ACM SIGCOMM '97, September 1997, Cannes, France.

[Pax97a] Vern Paxson、「TCP実装の自動パケットトレース分析」、ACM SIGCOMM '97、1997年9月、フランス、カンヌ。

[PADHV98] Paxson, V., Allman, M., Dawson, S., Heavens, I., and B. Volz, "Known TCP Implementation Problems", Work In Progress.

[PADHV98] Paxson、V.、Allman、M.、Dawson、S.、Heavens、I。、およびB. Volz、「既知のTCP実装の問題」、作業中。

[Riz97] Luigi Rizzo, "Dummynet: a simple approach to the evaluation of network protocols", ACM Computer Communication Review, Vol. 27, N. 1, January 1997, pp. 31-41.

[Riz97]ルイージリッツォ、「ダミーネット:ネットワークプロトコルの評価への簡単なアプローチ」、ACM Computer Communication Review、Vol。 27、N。1、1997年1月、31-41ページ。

[She91] Tim Shepard, "TCP Packet Trace Analysis", MIT Laboratory for Computer Science MIT-LCS-TR-494, February, 1991.

[She91] Tim Shepard、「TCPパケットトレース分析」、MITコンピュータサイエンス研究所MIT-LCS-TR-494、1991年2月。

6. Authors' Addresses
6. 著者のアドレス

Steve Parker Sun Microsystems, Inc. 901 San Antonio Road, UMPK17-202 Palo Alto, CA 94043 USA

Steve Parker Sun Microsystems、Inc. 901 San Antonio Road、UMPK17-202 Palo Alto、CA 94043 USA

Phone: (650) 786-5176 EMail: sparker@eng.sun.com

電話:(650)786-5176メール:sparker@eng.sun.com

Chris Schmechel Sun Microsystems, Inc. 901 San Antonio Road, UMPK17-202 Palo Alto, CA, 94043 USA

Chris Schmechel Sun Microsystems、Inc. 901 San Antonio Road、UMPK17-202 Palo Alto、CA、94043 USA

Phone: (650) 786-4053 EMail: cschmec@eng.sun.com

電話:(650)786-4053メール:cschmec@eng.sun.com

7. 完全な著作権表示

Copyright (C) The Internet Society (1998). All Rights Reserved.

Copyright(C)The Internet Society(1998)。全著作権所有。

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.

このドキュメントとその翻訳はコピーして他のユーザーに提供することができ、コメントまたはその他の方法で説明したり、その実装を支援する二次的著作物は、いかなる種類の制限なしに、全体または一部を準備、コピー、公開、および配布することができますただし、上記の著作権表示とこの段落は、そのようなすべてのコピーと派生物に含まれています。ただし、このドキュメント自体は、著作権に関する通知を削除したり、インターネットソサエティや他のインターネット組織への参照を削除したりするなど、いかなる方法でも変更できません。ただし、インターネット標準を開発する目的で必要な場合は除きます。インターネット標準のプロセスに従うか、または必要に応じて、それを英語以外の言語に翻訳する必要があります。

The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.

上記で付与された制限付きのアクセス許可は永続的であり、インターネットソサエティまたはその後継者または譲受人によって取り消されることはありません。

This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

このドキュメントとここに含まれる情報は「現状有姿」で提供され、インターネット社会およびインターネット技術タスクフォースは、明示または黙示を問わず、ここに記載されている情報の使用が保証するものに限定されないいかなる保証も含め、一切の保証を否認します。商品性または特定の目的への適合性に関する権利または黙示の保証を侵害すること。