ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • What is RTT- RFC2988
    카테고리 없음 2016. 7. 13. 00:27
    본 문서는

    위 링크의 내용을 참조하였습니다.





    1.타임아웃 시간은 얼마나 길어야 하는가?

    + Time out > 패킷이 목적지까지 가는 시간 + 응답이 되돌아오는 시간 
    + 타임아웃 시간이 왕복 시간보다 짧다면 패킷은 불필요하게 재전송 된다.
    + 타임아웃을 길게 잡는다고 하더라도 왕복 시간이 얼마나 길어질 지 아무도 모르기 때문에 여유있게 잡는다고 잡은 타임아웃시간은 훨씬 길수도 있으며 재전송을 해야 할 때 너무 긴 타임 아웃으로 심각한 시간 지연을 가져올 수도 있다. 
    + 타임아웃은 ‘고정된’값을 가져서는 안된다.





    2.TCP의 타임아웃 시간 설정

    + Van Jacobson이 1988에 제안한 방법
    + RTO ( Retransmission Time Out) : 최종적으로 구해야 할 타임 아웃 시간
    + RTT ( Round Trip Time ) : 패킷이 목적지에 도달한 후, 그에 대한 응답이 돌아오기까지의 시간, 즉 패킷의 왕복 시간. 각 패킷마다 전송 경로 및 그때마다의 네트웍 부하가 틀리므로 매번의 RTT는 각 패킷별로 틀릴 수밖에 없으며 RTT는 이러한 각 패킷마다의 개별적인 왕복 시간을 의미한다.
    + SRTT ( Smoothed RTT ) 각 RTT들의 가중 평균치 
    + RTTVAR ( RTT variation ) : 최근의 RTT가 이전까지의 평균 RTT에 비해서 얼마나 빗나갔는지를 나타내는 가중치 




    3. 공식

    + RTT는 패킷이 TCP단에서 IP단으로 넘어간 시점으로부터 ACK가 되돌아올 때까지의 총 시간을 의미하고, 각 패킷마다 그 때의 망 상황과 경로 선택에 의해 매번 변경될 수 밖에 없다.
    + RTO를 결정하기 위해 RTT의 평균치를 구해야 한다. 
    + 단순히 각 RTT를 더한 후 총 회수로 나누는 단순 평균은 적절치가 않은데 그 이유는 가장 최근의 RTT가 현재의 망 상황을 더 잘 반영하기 때문이다.
    + 최근에 측정된 RTT의 비중이 크게 적용되도록 평균을 구해야 하며 이런 식으로 구해진 평균 RTT를 SRTT라고 부른다.

    + SRTT_n = ((1-x)*SRTT_m) + (x*RTT)
    이전까지의 평균치 (SRTT_m)와 최근에 측정된 RTT에 가중치(x)를 곱한값을 더해서 가중 평균치 (SRTT_n)을 구한다. 

    + RTO = SRTT + (4*RTTVAR)

    + RTTVAR = ((1-x)*RTTVAR_m) + (x*|RTT - SRTT|)




Designed by Tistory.