찬란

데이터 링크 제어(DLC) 본문

데이터 통신

데이터 링크 제어(DLC)

chan4 2023. 5. 25. 02:46

해당 블로그의 내용은 학교에서 배운 내용을 개인적으로 정리한 내용이므로, 잘못된 부분이 있을 수도 있습니다. 

 

 

개요

  • DLC 서비스
  • 데이터 링크층 프로토콜
  • HDLC
  • 점-대-점 프로토콜

 

DLC 서비스

 

프레임 짜기

  • 비트들을 프레임으로 만들고 각 프레임은 다른 프레임과 구분 
  • ex) 우편 시스템
    • 봉투에 편지를 넣는 행위 
    • 봉투가 분리 역할을 함, 서로 다른 정보가 뒤섞이지 않도록 함 

고정 길이 프레임

  • ex) ATM 광역네트워크의 셀(cell)

가변 길이 프레임

  • 주로 LAN에서 사용
  • 프레임이 끝나는 곳과 다음 프레임이 시작하는 곳 지정 (Flag, 프레임 경계 분리 목적)
  • 프레임 짜기(framing)
    • 송신자와 수신자의 주소를 넣음으로써 메세지에 대한 발신지와 목적지를 구분한다 
    • 문자 중심 프레임 짜기
      • 시작과 마지막에 8비트 플래그(flag)를 추가
      • 바이트 채우기(stuffing)와 빼기(unstuffing)
        • 정보 내에 플래그로 사용되는 패턴이 있을 경우, 이를 플래그로 오인하지 않게 하기 위한 것
        • 텍스트에 플래그ESC문자가 있을 때 여분의 1바이트(byte)를 추가
    • 비트 중심 프레임 짜기
      • 프레임의 데이터 부분을 전부 Bit 열로 인식
      • 01111110 , 8비트 패턴의 플래그 사용 
      • 비트 채우기(stuffing)와 빼기(unstuffing)
        • 수신자가 데이터 속의 01111110을 플래그로 오인하지 않도록 하기 위함
        • 0 뒤에 연속하는 5개의 1이 있게 되면 0을 추가로 채우는 과정 

문자 중심 프레임 짜기
비트 중심 프레임 짜기

흐름 제어와 오류 제어

  • 흐름 제어(flow control)
    • 수신자로부터 확인응답을 받기 전까지 얼마나 많은 데이터를 전송할 수 있는지를 알려주는 일련의 절차
    • 2개의 버퍼(buffer)를 사용
      • 패킷을 저장할 수 있는 메모리의 집합
      • 하나는 송신 데이터 링크층에서, 다른 하나는 수신 데이터 링크층에서 사용
  • 오류 제어(error control)
    • 손상된 패킷을 수신 노드로 전달하는 것을 방지하기 위함
    • 자동 반복 요구(ARQ)
      • 오류가 확인된 순간 해당 프레임을 재전송하는 것 

 

비연결형과 연결형

  • 비연결형 프로토콜
    • 프레임은 프레임들 사이에 독립적인 관계
    • 데이터 링크 프로토콜들s
  • 연결형 프로토콜
    • 연결 설정 단계 / 전송 단계 / 연결 해제 단계
    • 점-대-점 프로토콜, 무선 LAN 및 WAN에서 사용 

프로토콜

  • 한 노드에서 다른 노드로 데이터를 보내기 위한 규칙 
    • 프레임 짜기
    • 흐름 제어/ 오류 제어
  • 프로그램 언어를 사용하여 소프트웨어로 구현
  • 각 프로토콜은 의사 코드를 사용하여 설명
    • 구현 언어에 의존하지 않기 위함
    • 언어 규칙에 구애 받지 않고 절차 자체를 설명하기 위해 

 

데이터 링크층 프로토콜

 

잡음 없는 채널

  • 우선 프레임 손실x
  • 중복, 손상되지 않음
  • 이상적인 채널, 오류 제어는 없음
  • 단순 프로토콜(흐름, 오류 제어 X)
  • 정지 후 대기 프로토콜
    • 송신자가 한 개의 프레임을 전송한 후에 수신자로부터 확인응답(ACK)를 받음
    • ACK를 받을 때까지 기다린 후, 다음 프레임을 전달

잡음 있는 채널

  • 오류 제어를 사용하는 3개의 프로토콜
  • ARQ(Automatic Repeat Request)
  • 정지 후 대기 ARQ
  • N-복귀 ARQ
  • 선택적 반복 

정지 후 대기 ARQ

  • 오류 제어는 전송된 프레임의 사본 보관하고 있다가 타이머가 만료되면 해당 프레임을 다시 전달
  • 순서 번호는 프레임에 부여하여 사용, 순서 번호는 모듈러-2 연산을 기반
  • ACK 번호는 다음에 받기를 기대하는 프레임의 번호를 모듈러-2연산으로 만들어 전달

N - 복귀 ARQ

  • 전송 효율 높이기 위함
  • ACK를 기다리는 동안 여러 개의 프레임을 전송하는 방식
  • 미닫이 창(Sliding window)
    • 송신자와 수신자에게 필요한 순서 번호의 범위를 지정하는 추상 개념
    • 송신 미닫이 창(send sliding window)
      • 현재 전송할 수 있는 데이터 프레임의 순서 번호가 들어있는 가상의 상자
    • 송신 창의 크기는 2^m 보다 작고, 수신 창의 크기는 항상 1로 일정 

선택적 반복(Selective Repeat) ARQ

  • 전체 N개의 프레임을 전달하는 대신 손상된 프레임만 전송하는 방식
  • 잡음이 많은 채널에서 효율적
  • 수신자 측의 처리절차가 복잡해짐 
  • 송신 창과 수신 창의 크기는 최대 2^m의 절반 

 

피기백킹(Piggybacking)

  • 양방향 프로토콜의 효율을 높이기 위해 데이터 프레임에 제어 정보를 포함해서 보내는 기술 
  • 위의 세  프로토콜은 모두 단방향 
  • 송수신 모두 각각 두 개의 창(수신 창, 송신 창)을 가지고 있다. (총 창의 개수는 4개가 된다)
    • 도착 이벤트는 각 측에서 송수신, 2개의 창을 모두 이용한다
    • 요청 이벤트는 오직 송신 창만 사용 
  • 송수신 양측 모두 같은 알고리즘을 사용한다. 

 

HDLC (High-level Data Link Control)

  • 고급 데이터 링크 제어
  • 점-대-점과 다중점 링크에서 통신을 위한 비트 중심 프로토콜
  • 반이중 통신과 전이중 통신을 지원하도록 설계
  • 정규 응답 모드(NRM)
    • 주국(primary station): 명령 전송
    • 종국(secondary station): 응답 전송 
  • 비동기 균형 모드(ABM)
    • 각 지국은 주국이자 종국의 기능을 수행한다.
    • 요즘 사용되는 모드 

프레임

  • 정보 프레임(I-Frame, Information)
    • 사용자 데이터 전달용
  • 감시 프레임(S-Frame, Supervisory)
    • 흐름 제어와 오류 제어용
  • 비번호프레임(U-Frame, Unnumbered)
    • 세션관리와 제어정보 교환용

  • 제어 필드
    • I-Frame
      • N(S): 전송 중인 프레임 순서 번호
      • N(R): ACK 번호
      • P/F: Poll(주국 >> 종국), Final(종국 >> 주국)
    • S-Frame
      • 코드
        • 수신 준비(RR), 00
        • 수신 불가(RNR), 10
        • 거부(REJ), 01
        • 선택적 거부(SREJ), 11

 

점-대-점 프로토콜 (PPP, Point-to-Point Protocol)

  • 점-대-점 접속을 위한 가장 널리 사용되는 프로토콜
  • 데이터 전송을 제어하고 관리하기 위해 테이터 링크층에서 필요
  • 바이트(Byte) 중심 프로토콜
  • PPP가 제공하는 서비스
    • 장치들 사이에서 교환될 프레임의 형식을 정의
    • 두 장치가  어떻게 링크 설정을 교섭하고 데이터를 교환할지를 정의
    • 여러 네트워크층으로부터 페이로드(payload)를 받도록 설계
    • 인증 또한 프로토콜에 선택적으로 제공 
    • 다중링크(Multilink PPP)는 다중 링크로 연결을 제공
    • 네트워크 주소 구성을 지원
      • 사용자가 인터넷에 연결하기 위해 임시로 네트워크 주소가 필요할 때 유용
  • PPP가 제공하지 않는 서비스
    • 흐름 제어를 제공하지 않음
    • 송신자를 수신자를 생각하지 않고 프레임을 게속 전송
    • 매우 간단한 오류 제어
      • CRC 필드가 오류 검출에 사용
    • 오류 제어를 하지 못하고 순서 번호가 없기 때문에 순서가 바뀌어 패킷이 도달할 수 있음
    • 다중점 링크에서 프레임을 다룰 수 있는 주소지정 방법이 없음 

프레임 짜기

  • PPP 프레임의 형식
    • 플래그: 01111110
    • 주소: 11111111 (브로드캐스트 주소)로 설정 
    • 제어: 00000011 , 흐름 제어 제공 X , 오류 제어 또한 오류 검출을 위해 제한됨
    • 프로토콜: 데이터 필드에 사용자 데이터 또는 다른 정보가 들어 있는 것을 정의
    • 페이로드 필드: 사용자 데이터나 그 밖의 정보들을 전달, 최대 1,500 바이트(Byte)
    • FCS: 프레임 검사 순서 값

 

'데이터 통신' 카테고리의 다른 글

오류 검출과 정정  (0) 2023.05.25
데이터 링크계층  (0) 2023.05.24
데이터 통신에서의 공식들  (0) 2023.04.23
대역폭(Bandwidth)이란?  (0) 2023.04.23
정보 교환 (Data Switching)  (0) 2023.04.21
Comments