3. 프로토콜 기능

프로토콜 기능

  • 정당성
    • 여러 프로토콜에서 사용되는 특정 메커니즘, 절차(객체 지향).
    1. 오류 제어
      • PDU 비정상 전달 시 프로토콜 엔터티의 동작
    2. 흐름 제어
      • 데이터 수, 속도 제어
    3. 분열
      • 긴 SDU 절단 및 전송

오류 제어

  • 개요
    • TCP의 핵심 역할 중 하나
      • PDU를 상대방에게 안정적으로 전달
      • 안정적인 전송을 위한 연결
  • 움직임
    1. 감지하다
      • 발신자 측 오류 인식
    2. 반응하다
      • 오류 발생 시 송신측 동작
  • 감지 방법
    • PDU 도착을 알기 위해 ACK 사용
      • PDU 전송, ACK 수신
    • ACK
      • 명시적 ACK 유형
        • 긍정 ACK
          • 정상적으로 수신된 PDU를 알리는 방법
          • 수신한 PDU의 다음 시퀀스 번호를 ACK를 통해 알려줌
          • 누적 ACK
            • 네트워크 부하를 줄이기 위해 사용
            • 매번 ACK를 보내는 대신 일정 개수의 PDU를 수신한 후 ACK를 보냅니다.
        • 네거티브 ACK
          • 미수령 PDU를 통지하는 방법
          • 누락된 PDU 보고 메커니즘: 능동적 오류 제어
      • 암시적 ACK
        • 응답이 없을 때 오류가 없는지 확인하는 방법
      • 편승
        • 양방향 통신의 경우 ACK를 PDU에 넣어 전송한다.
    • 시간제 노동자
      • TX, RX 엔터티 정보 누락 시 무한대기 상태인 데드락 방지
      • PDU 전송 및 ACK 전송 시 타이머 동작
      • 각 프로토콜에 대해 적절한 시간이 표준화되어 있습니다.
      • 도착 시 타이머 재설정
      • 도달하지 않으면 타이머 만료
      • 활동 타이머
        • 피어 엔터티의 상태를 확인하려면
        • PDU, ACK 등 정상 동작 확인 시 정지
      • 중요성
        • 프로토콜 정의의 핵심 포인트 중 하나
          • 이름, 간격, 시작, 중지, 만료
        • 시간을 적당한 길이로 설정
          • 너무 짧으면 불필요한 반응이 일어난다.
          • 너무 길면 불필요한 Deadlock 구간이 발생한다.
  • 실제 사례
    • PDU 손실 및 복제
      1. PDU 손실
        1. 시간 초과 후 PDU에 도달하지 않은 경우
        2. 더 큰 PDU 시퀀스가 ​​도착하는 경우
      2. PDU 복제
        1. ACK 유실 시 시간 초과로 PDU 재전송
        2. ACK를 받기 전에 PDU를 다른 이웃에게 재전송
  • 반응 방법
    • 자동 반복 요청(ARQ) 사용
      • 정당성
        • 신뢰할 수 있는 PDU 전송을 위한 가장 인기 있는 프로토콜 기능
        • 시간 초과를 기다리는 동안 일련의 작업을 포함하여 ACK 수신
        • ACK + 타이머 + 반응으로 구성
      • 방법
        1. 멈추고 기다려
          • PDU를 보내고 ACK를 기다리는 방법
        2. 돌아가다 N
          • n으로 돌아가기
          • TX: ACK를 받을 때까지 전송된 PDU를 저장합니다.
          • RX: 수신된 PDU 중 N번째 이후 파기
        3. 선택적 반복
          • N번째 PDU 재전송
          • RX: 수신된 모든 PDU를 적절하게 저장, TX: 버퍼 있음
        4. 뒤로 가기 N, 선택적 반복
          • 완충기
            • 돌아가기 N: 텍사스
            • 선택적 반복: TX, RX
          • 시간
            • 돌아가기 N > 선택적 반복
    • FEC(forward error control) 이용
      • 정당성
        • 큰 메시지를 다시 보내는 것보다 오류를 수정하는 것이 더 효율적입니다.
        • 코딩 이론: 자가 치유 능력
      • 절차
        • 3비트 데이터를 10비트로 증가, 전송, 3비트로 복원, 오류 수정
      • 특성
        • 무거운 계산
        • 실시간 트래픽에 좋음(재전송 필요 X)
        • 무선 통신 시스템에 활용
  • CRC(순환 중복 검사)
    • 정당성
      • FEC는 모든 비트 오류를 ​​수정하지 않습니다.
        • 많은 오류 또는 지속적인 오류
    • 용도
      • 오류 감지
      • 오류가 있음을 감지하는 목적
    • 원칙
      • 수신 오류 확인
    • 계산법
      1. 보낼 때
        • 보낼 데이터를 더하여 제수로 나눕니다. + (주어진 제수의 비트 수만큼 0)
        • 나머지는 전송할 데이터에 추가하여 전송
      2. 받을 때
        • 받은 데이터를 제수로 나눕니다.
        • 나머지가 0인 경우 오류 X