5

以下に添付された tcptrace の出力について (これはサイトhttp://tcptrace.org/manual/index.htmlの RTT stats から取得したものです)

1 arg remaining, starting with 'indica.dmp.gz'
Ostermann's tcptrace -- version 6.4.5 -- Fri Jun 13, 2003

153 packets seen, 153 TCP packets traced
elapsed wallclock time: 0:00:00.128422, 1191 pkts/sec analyzed
trace file elapsed time: 0:00:19.092645
TCP connection info:
1 TCP connection traced:
TCP connection 1:
    host a:        192.168.0.70:32791
    host b:        webco.ent.ohiou.edu:23
    complete conn: yes
    first packet:  Thu Aug 29 18:54:54.782937 2002
    last packet:   Thu Aug 29 18:55:13.875583 2002
    elapsed time:  0:00:19.092645
    total packets: 153
    filename:      indica.dmp.gz
   a->b:                  b->a:
     total packets:            91           total packets:            62      
           . . .                                  . . .
           . . .                                  . . .
     throughput:               10 Bps       throughput:               94 Bps  

     RTT samples:              48           RTT samples:              47      
     RTT min:                74.1 ms        RTT min:                 0.1 ms   
     RTT max:               204.0 ms        RTT max:                38.8 ms   
     RTT avg:               108.6 ms        RTT avg:                 8.1 ms   
     RTT stdev:              44.2 ms        RTT stdev:              14.7 ms   

     RTT from 3WHS:          75.0 ms        RTT from 3WHS:           0.1 ms   

     RTT full_sz smpls:         1           RTT full_sz smpls:         1      
     RTT full_sz min:        79.5 ms        RTT full_sz min:         0.1 ms   
     RTT full_sz max:        79.5 ms        RTT full_sz max:         0.1 ms   
     RTT full_sz avg:        79.5 ms        RTT full_sz avg:         0.1 ms   
     RTT full_sz stdev:       0.0 ms        RTT full_sz stdev:       0.0 ms   

     post-loss acks:            0           post-loss acks:            0

したがって、私が持っている質問は、a->b と b->a の RTT 平均を見ると、値に大きな違いがあるということです。私はそれらがまったく同じであるとは思っていませんが、違いはかなり大きいです。RTT が計算されている方法で、舞台裏で何かが起こっていると思いますが、それはよくわかりません。

4

2 に答える 2

5

要約: キャプチャを行った場所に応じて、会話の正しい半分の RTT を確認してください。

This answerは、tcptraceがデータセグメントのタイムスタンプとそれを確認するACKのタイムスタンプの違いを使用してRTTを計算することを説明しています。これは、RTT の計算がトレースをキャプチャする場所に依存することを意味します。

たとえば、ノード A でパケットをキャプチャしている場合、ノード B から到着した対応するセグメントを確認した直後に A の ACK が表示されるため、B->A セグメントの RTT の値が非常に低くなります。A->B セグメントの場合、A からのセグメントと b からの対応する ACK を確認する間に「実際の」往復が発生するため、実際の RTT を測定します。

ノード b でキャプチャを行った場合、状況は逆転し、中間のどこかでキャプチャを行った場合、「真の」RTT は A->B + B->A のほぼ合計になります。

于 2011-09-29T13:45:33.757 に答える
0

RTT 計算は、送信側ノードでは行われません。それらは、パスに沿ったポイントで作成された可能性があります。a->b および b->a は、必ずしも送信側ノードと受信側ノードの間にあるとは限りません。

それはこのようなものになることができます

S--A--------->Rここで、S は送信者、R は受信者、A は S と R の間のポイントです。a->b は A から R への RTT を表すことができ、b->a は A から S への RTT を表すことができます。

于 2011-09-30T08:53:31.263 に答える