SWS   Silly Window Syndrome   어리석은 윈도우 신드롬

(2020-09-17)

바보 윈도우 증후군, Nagle’s Algorithm, Nagle 알고리즘

1. 어리석은 윈도우 신드롬 (SWS, Silly Window Syndrome)

  ㅇ 송신,수신측 응용 프로그램데이터 처리 단위가 작거나 저속일 때,
     - 예를들면, 
        . 송신측이 저속으로 1 바이트 씩 발생시키거나, 
        . 수신측이 저속으로 1 바이트 씩 처리하는 경우에,
     - 데이터 1 바이트 전송을 위해,
        . 최소 IPTCP헤더가 각각 20 바이트 씩 총 40 바이트가 부가적으로 붙여짐
        . 즉, 전송하기 위해 배 보다 배꼽이 더 큰 비 효율적인 현상이 발생되는데,
     - 이를 어리석은 윈도우 신드롬(SWS) 현상이라고 함
        . 이는 네트워크의 자원을 낭비하는 결과가 됨

  ㅇ 송신측 SWS 문제점 해결 방안 : Nagle 알고리즘 (매우 단순함)
     - 처음에는, 응용 프로그램쪽에서 1개 바이트전송 요청하더라도 이를 송신하나,
     - 그 다음부터는, 누적시켜가며, 
        . 수신측 ACK가 올 때까지 또는 최대 MSS(Maximum Segment Size)까지 채울 때까지 송신 보류함
     - 이로써, 네트워크 속도 및 응용 프로그램 속도를 맞추는 역할을 하게 됨

  ㅇ 수신측 SWS 문제점 해결 방안 : Clark's solution 또는 Delayed Acknowledgment
     - Clark's solution
        . 일단, 수신 즉시 ACK를 보내서 송신측에 잘받았다는 소식을 전하나,
        . 이때, 슬라이딩 윈도우 크기를 0(zero)로 셋팅하여 보내서, 수신 처리 속도가 늦음을 알림
        . 최소 수신 버퍼의 1/2 이상 또는 MSS 정도를 채울 정도까지 기다린 후에야, 윈도우 크기 늘림
     - Delayed Acknowledgment
        . 수신 즉시 ACK를 보내지 않고, 수신 버퍼가 넉넉할 때까지 지연시키는 단순한 방식
        . 단, 단순하지만 괜히 재전송 횟수 만 키워 네트워크 혼잡에 기여할 수도 있음 
        . 따라서, 기본 500 ms 보다 더 길게 ACK지연 못하도록 규칙을 정함


[TCP 흐름/혼잡 제어] 1. 흐름제어 2. Sliding Window 3. TCP 혼잡제어 4. Slow Start 5. Silly Windown Syndrome 6. TCP 타이머 7. RTT 예측 8. 확인응답 9. TCP 재전송
  1.   기술공통
  2.   기초과학
  3.   진동/파동
  4.   전기전자공학
  5.   방송/멀티미디어/정보이론
  6.   통신/네트워킹
        1. 통신 이란?
        2. 신뢰적 통신
    1.   통신이론
    2.   선로/전송
    3.   통신망
    4.   회선교환(PSTN)
    5.   무선/이동통신
    6.   광통신
    7.   인터넷/데이터통신
          1. 데이터통신망
          2. 인터넷
          3. 데이터 네트워크 설계
      1.   데이터 단위
      2.   프로토콜/계층
      3.   데이터 링크
      4.   TCP/IP
            1. TCP/IP 이란?
        1.   IP 계층
        2.   전송계층(UDP,TCP,SCTP,포트번호)
              1. 전송 계층
          1.   포트번호(프로세스식별)
          2.   TCP
                1. TCP
            1.   TCP 패킷(세그먼트)
            2.   TCP 연결관리
            3.   TCP 오류제어
            4.   TCP 흐름/혼잡 제어
              1.   1. 흐름제어
                  2. Sliding Window
                  3. TCP 혼잡제어
                  4. Slow Start
                  5. Silly Windown Syndrome
                  6. TCP 타이머
                  7. RTT 예측
                  8. 확인응답
                  9. TCP 재전송
            5.   TCP 기타사항
          3.   UDP,SCTP,MPTCP
        3.   DHCP
        4.   TCP/IP 유틸리티
        5.   TCP/IP 기타일반
      5.   라우팅
      6.   인터넷 QoS
      7.   인터넷 관리
      8.   웹기술
      9.   인터넷 응용
      10.   인터넷 기타
      11.   패킷교환(PSN)
      12.   인터넷 관련 기관
  7.   정보기술(IT)
  8.   공학일반(기계,재료등)
  9.   표준/계측/품질
  10.   기술경영

 
        최근수정     요약목록     참고문헌