ACK   Acknowledgement   확인 응답

(2023-05-20)

Positive Acknowledgement, 긍정 확인응답, NACK, NAK, Negative Acknowledgement, 부정 확인응답, SACK, Selective Acknowledgement, 선택 확인응답, TCP 확인응답


1. 확인응답 (Acknowledgement) 이란?

  ㅇ 송신 메세지가 정상 수신되었음을, 수신측에서 송신측으로 확인응답하는 것
     - 용도  :  오류제어흐름제어를 위해 사용
     - 방법  :  통상, 데이터 프레임 안에 포함시켜 응답함  ☞ 피기백 방식 참조


2. 확인응답 종류

  ㅇ ACK 신호 (긍정 확인응답)
     - 수신측에서 메세지에러없이 정상적으로 수신했거나, 송신해도 된다는 것을
       송신측에 알리기 위한 제어신호

     - ACK 특징
        . ACK 신호 사용은 패킷교환망에서 서비스의 신뢰성에 도움을 주나, 
        . 과도한 부하를 주게되어 망의 신뢰성이 높아질수록 사용하지 않는 경향이 있으며, 
        . 이 경우 종단측은 에러검사 등에 있어 더 많은 책임을 부여 받게됨
  
     - ACK 신호 형식
        . 통상적으로 별도의 패킷 또는 다음 패킷에 속하는 1비트짜리 플래그일 수도 있음 

  ㅇ NACK 또는 NAK 신호 (부정 확인응답)
     - 부정 확인응답은 정상적으로 수신되지 않았음을 송신측에 알리는 메세지이나, 
       실제적으로는 잘 쓰이지 않고 있음

     * 보통은, 송신측이 순서번호타이머를 갖추고 있기 때문에,
        . 일정 시간이 지나도 ACK가 오지 않으면, 오류로 간주하여 해당 메세지를 재전송하게 됨


3. TCP 확인응답TCP 확인응답의 주요 특징
     - 명확한 확인응답을 위해,                                    ☞ TCP 헤더 참조
        . 확인응답 번호를, 다음에 기대되는 순서 번호로 함
     - 신뢰적 전송 등을 위해,                                     ☞ TCP 타이머 참조
        . 송신측은 매 세그먼트 전송때 마다, 부정 확인응답(NACK)의 일종(시간 버젼)인,
        . 재전송 타이머를 가동
     - 전송의 효율성 등을 위한 흐름제어로써,                      ☞ 윈도우 흐름제어 참조
        . 슬라이딩 윈도우 방식에 의한 확인응답을 함


  ※ 한편, TCP에서 과다한 확인응답 방지를 위해,
     - 누적 확인응답, 선택적 확인응답 실시

  ㅇ 누적 확인응답 (CACK, Cumulative Acknowledgement)
     - 현재까지 수신된 바이트들을 단 하나의 ACK로 일괄 확인응답 하는 것
        . TCP에서는, TCP 헤더의 32 비트 ACK 필드에서 이를 구현 
     - 중간 세그먼트손실이면, 수신측은 그 뒤 세그먼트는 보관하고,
        . 현재까지 수신된 세그먼트 중 연속된 세그먼트로써 마지막 만 누적 확인응답 함
     - 만일, 비 연속적으로 수신된 세그먼트(여러 중간 손실)이면,
        . 처음 중간 손실부터 다시 재전송 시작되는 등 심각한 성능 저하 발생

  ㅇ 선택적 확인응답 (SACK, Selective Acknowledgement)
     - 여러 세그먼트손실세그먼트 만 선택적으로 확인응답하는 방식
        . TCP에서는, TCP 옵션으로 구현됨
           .. TCP 연결설정 과정에서 송수신간에 SACK 사용 합의하고, 
           .. TCP 세그먼트에 SACK 범위 목록을 포함시킴
     - (표준) RFC 2018 `TCP selective acknowledgment options` (1996)

[재전송 기반]1. ARQ (검출후 재전송 방식)   2. ACK/NACK (확인응답)   3. 정지대기방식 (Idle ARQ)   4. 연속적 AQR (GBN)  

[TCP 흐름/혼잡 제어]1. TCP 혼잡제어   2. Slow Start   3. Silly Windown Syndrome   4. TCP 타이머   5. RTT 예측   6. 확인응답   7. TCP 재전송  

[TCP 오류제어]1. 오류제어   2. TCP 체크섬   3. 확인응답   4. TCP 재전송  

  1. Top (분류 펼침)      :     1,594개 분류    6,533건 해설

"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"
     [정보통신기술용어해설]       편집·운영 (차재복)