Option メニュー

Optionメニューには、さまざまな機能の設定があります。 概ね動作するはずですが、あまり役に立たないものも混じっています。必要に応じてお使いください。

Change Process Priority
UDPmakerのOSでの実行の優先順位を変更します。
デフォルトでは優先順位は「Normal=通常」です。
高速での送受信を行なう場合には、より高い優先順位に上げると、特に受信時のパケットロスが少なくなることが期待できます
なお、タスクマネージャなどを利用して優先順位を変更することもできますが、プログラムで管理している優先順位と実際の優先順位の同期がとれなくなります。 どちらかの方法だけを使ってください。

Set DSCP/IP Precedence
送信するパケットのToSフィールドを指定します。仕様上、Windows 7以降のOSでのみ機能します。(ただし、バージョン1.40をテストした環境は8.1と10のみです)
デフォルトではDSCP DF=IP Precedence 0です。DSCPは名称で選択できますが、10進数で値を指定することも可能です。
 旧バージョンと異なり、レジストリの編集は必要ありませんが、"管理者として実行"しないと機能しません。(厳密には、実行時にAdministratorsかNetwork Configuration Operatorsグループに属する権限が必要) IPv6に対しても適用されます。
ToSフィールドの設定はユニキャストパケットに対しては正常に機能します。ブロードキャストパケットには機能しません。マルチキャストパケットは、"netsh interface ip show join"(IPv4) "netsh interface ipv6 show join"(IPv6)コマンドで、送信するインターフェースでJoinした履歴のあるアドレスには機能しません。("終了"や"参照"の状態によらず、コマンドの出力に存在するアドレスには機能しません) おそらくWindowsの仕様と思われますが、プログラムでの回避方法が見つかっていません。

Burst Transmission
パケットの送信をバースト的に行なうための機能です。
Burst Transmission Dialog
Transmission Modeには、以下の3つがあります。
- Normal バースト送信を行なわず、一定の間隔でパケットを送信します
- Burst (Periodic) 周期的にバースト送信を行ないます
- Burst (Single Burst) 1回だけバースト送信を行ないます。送信終了後は自動的に停止します。
デフォルトの設定はNormalで、バースト送信は行ないません。
バーストの周期・長さは、SendとWaitの値で調節します。
(Single Burstの場合は、Sendのみが有効です。)
デフォルトではSendに8が、Waitに120が設定されています。 この状態でBurst (Periodic)モードを設定すると、8パケット送信、120パケット送信無しを繰り返します。
UDPsendのデフォルトの128,000bps、1000バイトの設定では、通常62.5msごとにパケットを送信しますが、Send 8、Wait 120の設定でバースト送信すると、 62.5ms間隔で8パケット送信(500ms)したあと、62.5ms×120=7.2sの間パケットを送信せず、を繰り返します。Calculationボタンを押すとパケット数から時間を計算して表示します。
UDPsendで設定した送信速度はバースト送信している時のものですので、長時間にわたって平均した送信速度は、
(長時間平均速度)=(UDPsendの送信速度)×(Sendの値)÷(Sendの値+Waitの値)
となります。
なお、この設定を変更しても、既に開始されている送信には影響しません。一度送信を止めてから再度開始してください。

Change Display of Transmission Rate
パケットの「長さ」と、それに基づく送受信速度の計算方式の設定です。
通常は、UDPペイロードの長さを設定し、送受信速度もUDPペイロード部分で計算していますが、これをIPパケットや、レイヤ2フレームの長さに変更することができます。 試験の目的などに合わせて設定してください。
Change Display of Rate Dialog
Rate Calculationで、「長さ」と送受信速度を計算する範囲を指定します。
Include Layer 2 Headerを指定した場合は、Layer 2 Encapsulationでレイヤ2の種類を選択します。 Ethernet, Cisco HDLC, Frame Relayが選択できますが、それ以外の方式の場合や、付記されているオーバーヘッド部分の長さが適切でない場合(例:Ethernetでも802.1Qトランクの場合や、FCS・プリアンブルなども考慮する場合)は、Otherを選択し、Lengthにレイヤ2のオーバーヘッド部分の長さを指定してください。
バージョン1.20より、設定を変更した際に、送信速度やパケット長を再計算して設定前と同じ動作となるようにする機能は廃止しました。この設定を変更した後は、改めて送受信に関わる設定値を確認してください。

Specify Source Port
パケットのソースポート番号を設定する機能です。
Source Port Dialog
ソースポートの指定を有効にするには、「Specify Source Port」にチェックをつける必要があります。デフォルトではチェックは外れており、Winsockによって選択された未使用のポート番号が使用されます。
各チャネルのソースポート番号を設定可能です。ただし、同じPCで、UDPreceiveで受信用に利用しているポート番号と、送信用のソースポート番号に同じものを利用することはできません。
なお、この設定を変更しても、既に開始されている送信には影響しません。必要な場合は、一度送信を止めてから再度開始してください。

Join Multicast Group at Start Reception
マルチキャストのパケットを受信するための機能です。
Join Multicast Group Dialog
マルチキャストを受信するためには、まず「Enable Multicast Reception」にチェックをつけて、受信したいマルチキャストのアドレスを「Multicast Group」に設定してください。
Receiving Interfaceには、受信に利用するインターフェースのIPアドレス(IPv4)かIndex(IPv6)を設定します。Indexは、"route print"や"netsh interface ipv6 show join"などのコマンドで確認できます。
UDPreceiveのいずれかのチャネルで受信を開始すると、IGMPまたはICMPv6でのJoin/Membership Reportが送信されます。
なお、この設定を変更しても、すでに開始している受信チャネルには影響を与えません。必要な場合は、一度受信を止めてから再度開始してください。

Set TTL for Multicast Packet
マルチキャストアドレスへの送信パケットのTTLを設定します。
デフォルトでは32が設定されています。
なお、ユニキャストのTTLは、Winsockのデフォルトの値(レジストリを操作しなければ128)を使用します。

Disable/Enable UDP Checksum
送信するUDPパケットのチェックサムの有無を設定します。IPv4のパケットにのみ有効です。
デフォルトではチェックサムが設定されたパケットが送信されます。
なお、この設定を変更しても、既に開始されている送信には影響しません。必要な場合は、一度送信を止めてから再度開始してください。
IPv6のパケットは、常にチェックサムが設定された状態で送信されます。

Set Socket Send/Receive Buffer Size
送受信で利用するソケットのバッファ長の設定です。
Winsockのデフォルト値は小さいため(XPでは8kbyteでした)、高速なデータ送受信の際には処理が追いつかずにパケットを取りこぼす場合があります。 バージョン1.20から、デフォルトの設定をLarge(1Mbyte)に変更して、より高速な送受信に耐えうるように変更しました。 また、バージョン1.30からExtra Large (16Mbyte)を追加しました。長時間にわたる数10Mbps以上の高速な受信を安定させたい場合にお試しください。 設定変更後、新たに開始される送受信に対して有効になります。

Enable Status Update
1秒ごとの送受信状態の更新を行なうかどうかの設定です。
デフォルトではチェックがついており、更新を行なうようになっています。 チェックを外すと画面の更新を行なわなくなるため、多少高速な送受信に対応できるようになるかもしれません。
この機能はあまり使うことはないと思います。

Fill Payload by Random Data
送信するパケットのUDPペイロードの内容をランダムな値にする設定です。
デフォルトではチェックはついておらず、先頭の4バイトに設定されるシーケンス番号以外は0x00で埋められています。 チェックすると、シーケンス番号以外の領域に乱数を設定するようになります。パケットを生成するごとに新たな乱数で上書きされます。
ネットワークの途中にデータ圧縮を行なう装置があった場合に、圧縮を無効にしたい場合などにお使いください。

RTP Like Sequence Numbering
送信するパケットに記録するシーケンス番号に、RTPと同じフォーマットを利用します。
デフォルトではチェックはついておらず、ペイロードの先頭に4バイトのシーケンス番号を記録しています。 チェックすると、先頭2バイトはRTPバージョン2、ペイロード種別PCM mu-lawになるように設定され、その後の2バイトにシーケンス番号が「ネットワーク」なエンディアンで記録されます。
Wiresharkでパケットキャプチャする場合、この機能を使うとパケットがRTPとして認識されるようになるので、RTP Stream Analysisを使うとパケットロスなどの確認がやりやすくなります。送受信速度が比較的低速な場合にお試しください。


トップページへ

Last modified: Mon Aug 20 22:35:00 +0900 2018