컴퓨터공학/데이터통신

[데이터 통신] Data Link Layer - Data Link Control (DLC)

NIMHO 2022. 10. 18. 00:37
728x90

복습하기 위해 학부 수업 내용을 필기한 내용입니다.
이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다.
그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다.

Contents

  • Introduction
  • Data Link Control
  • Media Access Protocols
  • Link Layer Addressing
 

Data-Link Control (DLC)

  • data link control(DLC)는 두 인접 노드 간의 통신 절차를 다룬다.
  • DLC 기능에는 framing 및 error control가 포함된다.
728x90

Framing

  • 데이터 링크 계층은 비트를 프레임에 패킹해야 한다.
    • 우편 시스템은 일종의 framing을 실행한다.
    • 편지를 봉투에 넣는 간단한 동작은 한 정보를 다른 정보와 분리한다. 
    • 봉투는 구분자 역할을 한다.
  • 데이터 링크 계층의 프레임은 sender 주소와 destination 주소를 추가하여 메시지를 하나의 source에서 destination으로 분리한다.
  • 비록 전체 메시지가 한 프레임에 포장될 수 있지만, 그것은 일반적으로 수행되지 않는다.
    • 한 가지 이유는 프레임이 매우 커서 흐름과 오류 제어를 매우 비효율적으로 만들 수 있기 때문이다.
    • 메시지가 하나의 매우 큰 프레임으로 전송될 때, 단일 비트 오류라도 전체 프레임의 재전송을 필요로 한다.
    • 메시지가 더 작은 프레임으로 분할될 때 단일 비트 오류는 그 작은 프레임에만 영향을 미친다.
  • 프레임 크기
    • 프레임은 고정 또는 가변 크기일 수 있다.
    • 첫째, 프레임의 경계를 정의할 필요가 없으며, 둘째, 우리는 그렇게 할 필요가 있다.
  • 문자 지향 프레임 (Character-Oriented Framing)
    • 이러한 유형의 프레임에서 전달할 데이터는 8비트 문자이다.
    • 헤더는 source 및 destination 주소 및 기타 제어 정보를 전달하며 8비트의 배수이다.
    • 트레일러는 오류 감지 중복 비트를 전달하며 8비트의 배수이다.
    • 한 프레임을 다음 프레임에서 분리하려면 프레임의 시작과 끝에 8비트(1바이트) 플래그가 추가된다.
    • 플래그는 텍스트 통신에 사용되지 않는 모든 문자로 선택될 수 있다.
    • 플래그를 위해 사용되는 모든 패턴은 정보의 일부가 될 수도 있다.
    • 데이터 중간에서 이 패턴을 만나면 수신자는 프레임 끝에 도달했다고 생각한다.
    • 이 문제를 해결하기 위해 byte-stuffing 전략이 추가되었다.
    • 플래그와 동일한 패턴을 가진 문자가 있는 경우 프레임의 데이터 섹션에 특수 바이트가 추가된다.
      • 이 바이트는 일반적으로 이스케이프 문자(ESC)라고 하며 미리 정의된 비트 패턴이 있다.
      • 수신기가 ESC를 만날 때마다 데이터 섹션에서 ESC를 제거하고 다음 문자를 구분 플래그가 아닌 데이터로 처리한다.

  • 비트 지향 프레임 (Bit-Oriented Framing)
    • 비트 지향 프레임에서 데이터는 비트의 시퀀스이다. (byte 단위가 아니라 bit 단위로)
    • 한 프레임을 다른 프레임에서 분리하기 위해 일반적으로 8비트 플래그(011111)를 사용한다.
    • 바이트가 플래그로 해석되는 것을 방지하기 위해 bit-stuffing을 수행한다.
    • bit-stuffing은 수신자가 패턴 0111110을 플래그로 착각하지 않도록 5개의 연속된 1이 0 뒤에 올 때마다 1개의 추가 0을 추가하는 과정이다.
    • 수신기가 "011111" 패턴 뒤에 있는 0을 제거한다.

Error Control

  • 오류 제어는 error detection(오류 감지) 및 error correction(오류 수정)이다.
    • error detection
      • 에러를 발견하면 재전송을 요청한다.
      • overhead가 작다. 그렇기에 재전송 요청해도 된다.
    • error correction
      • 에러를 발견하면 수신자가 수정한다.
      • 재전송을 하지 않기에 보낼 때 overhead를 크게 해서 보낸다.
  • 수신기가 전환 중에 프레임이 손실되거나 손상된 경우 전송자에게 알리고 전송자가 프레임 재전송을 조정할 수 있다.

Error Control은 수업 때 배운 양이 상당히 많았다.

그래서 다음 글에서 따로 적어야 할 것 같다.

728x90