Chapter11 Data Link Control(DLC)

2023. 6. 13. 23:50· Computer Science/데이터 통신
목차
  1. DLC(Data Link Control) 서비스
  2. 프레이밍(Framing)
  3. 캐릭터 중심 프레이밍(Character-Oriented Framing)
  4. 비트 지향 프레이밍 (Bit-Oriented Framing)
  5. Bit stuffing and unstuffing
  6. 흐름 및 오류제어
  7. 비연결 및 연결지향(Connectionless and Connection-Oriented)
  8. 데이터 링크 계층 프로토콜
  9. Simple Protocol
  10. Stop-and-Wait 프로토콜
  11. 편승(Piggybacking)

DLC(Data Link Control) 서비스

데이터 링크 제어(DLC)는 링크가 전용인지 브로드캐스트인지에 상관없이 인접한 두 노드 간의 통신 절차를 처리한다. 데이터 링크 제어 기능에는 프레이밍(Framing), 흐름 및 오류제어가 포함된다. 이 파트에서는 먼저 프레이밍 또는 물리 계층에서 전달하는 비트를 구성하는 방법에 대해 설명하고 흐름 및 오류제어에 대해 설명한다.

 

 

프레이밍(Framing)

  • 각 프레임이 다른 프레임과 구별되도록 프레임에 패킹된 비트
  • 데이터 링크 계층의 프레이밍은 보낸 사람 주소와 대상 주소를 추가하여 하나의 소스에서 대상으로 메시지를 분리한다.
    • 목적지 주소는 패킷이 갈 곳을 정의한다.
    • 발신자 주소는 수신자가 수신을 확인하는 데 도움이 된다.

 

캐릭터 중심 프레이밍(Character-Oriented Framing)

  • 데이터: ASCII와 같은 코딩 시스템의 8비트 문자
  • 제어 정보: 8비트의 배수
  • 다른 프레임과 분리되는 프레임의 시작과 끝에 플래그로 구분
  • 문자만 주고 받을 때 popular

 

 

비트 지향 프레이밍 (Bit-Oriented Framing)

  • 데이터: 텍스트, 그래픽, 오디오, 비디오 등으로 해석되는 일련의 비트
  • 프레임의 시작과 끝을 정의하는 구분 기호로서의 플래그 : 특수 8비트 패턴 (01111110)

 

Bit stuffing and unstuffing

  • 데이터 중간에 있는 플래그 패턴을 프레임의 끝으로 간주해서는 안된다.
  • Bit stuffing: 0과 다섯개의 1 뒤에 추가적인 0을 붙인다.
  • Bit Unstuffing: 수신자가 추가된 0을 제거한다.

흐름 및 오류제어

데이터 링크 계층에서의 흐름제어

  • 수신 노드는 프레임이 도착하는 것과 동일한 속도로 수신된 패킷을 처리하고 전달할 수 없을 때 프레임 푸시를 중지하거나 늦추도록 송신 노드에 피드백을 보낸다.

 

데이터 링크 계층의 오류제어

  • 수신 노드가 손상된 패킷을 네트워크 계층으로 전달하지 못하도록 방지
  • 두가지 방법
    • 손상된 프레임은 자동으로 폐기시킨다. 이 방식은 이더넷과 같은 유선LAN에서 주로 사용된다.
    • 손상된 프레임은 자동으로 폐기시킨다. 손상되지 않은 패킷의 경우 보낸 사람에게 승인이 전송된다. 이 방식은 Wi-Fi와 같은 무선랜에서 주로 사용된다.

 

 

비연결 및 연결지향(Connectionless and Connection-Oriented)

비연결

  • 프레임 간의 관계가 없다.
  • 프레임에는 번호가 매겨지지 않으며 순서의 의미가 없다.
  • 대부분 Lan들의 데이터 링크 프로토콜

연결지향

  • 두 노드 간의 논리적 연결(설정 단계)
  • 프레임에는 번호가 매겨져 있으며 순서대로 보낸다.
  • 일부 지점간 프로토콜

More usual topic in the network and transport layer

 

 


데이터 링크 계층 프로토콜

전통적으로 흐름 및 오류제어를 처리하기 위해 데이터 링크 계층에 대해 Simple, Stop-and-Wait, Go-Back-N 및 Selectice-Repeat의 네 가지 프로토콜이 정의 되어 있다. 처음 두 프로토콜은 여전히 데이터 링크 계층에서 사용되지만 마지막 두 프로토콜은 사라졌다. 따라서 이 파트에서 처음 두 프로토콜(SImple, Stop-and-Wait)에 대해 간략하게 설명한다.

 

 

Simple Protocol

  • 수신자가 수신한 모든 프레임을 즉시 처리할 수 있다고 가정하고 흐름이나 오류 제어가 없는 프로토콜

  • 송신자와 수신자의 데이터 링크 계층은 네트워크 계층에 전송 서비스를 제공한다.
  • Simple 프로토콜을 위한 유한 상태 머신

  • Simple 프로토콜을 이용한 통신 흐름도

 

 

Stop-and-Wait 프로토콜

  • 흐름 및 오류 제어를 모두 갖춘 프로토콜
  • 송신자는 한번에 하나의 프레임을 보내고 다음 프레임을 보내기전에 승인을 기다린다.
  • CRC는 손상된 프레임을 감지하는 데 사용된다.

  • Stop-and-Wait 프로토콜을 사용하는 발신자를 위한 FSM

  • Stop-and-Wait 프로토콜을 사용하는 발신자를 위한 FSM

  • Stop-and-Wait 프로토콜 통신 흐름도(시퀀스 번호와 승인번호를 사용하지 않은 흐름도)

  • 위 그림에서의 문제
    • 세번째 프레임이 전송되고 승인되었지만 송신자에게 전달하는 승인이 손실 되었다.
    • 프레임이 재전송된다. 그런 다음 수신 사이트의 네트워크 계층은 세 번째 패킷의 두 복사본을 수신하는데 이는 올바르지 않다(같은 내용 두번 수신)
  • 위 문제들은 아래 그림 처럼  간단한 시퀀스 번호와 승인 번호로 중복을 방지 할 수 있다.(ACK1)
    • 시퀀스 번호는 0,1,0,1,0,1 반복된다.
    • 확인 번호(ACK)는 1,0,1,0 이 반복된다. ACK 번호는 수신할 다음 프레임의 시퀀스 번호를 정의하기 때문이다.

 

편승(Piggybacking)

  • TCP/IP 프로토콜은 데이터가 양방향으로 흐르도록 설계되어 있다.
  • 더 효율적인 통신을 위해 한 방향의 데이터는 다른 방향의 승인과 함께 편승된다.

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

Chapter15 Bluetooth  (0) 2023.06.14
Chapter13 Wired LANs: Ethernet  (1) 2023.06.14
Chapter10 Error Detection and Correction  (0) 2023.06.13
Chapter9 Data-Link Layer  (0) 2023.06.12
Chapter8 Switching  (0) 2023.06.12
  1. DLC(Data Link Control) 서비스
  2. 프레이밍(Framing)
  3. 캐릭터 중심 프레이밍(Character-Oriented Framing)
  4. 비트 지향 프레이밍 (Bit-Oriented Framing)
  5. Bit stuffing and unstuffing
  6. 흐름 및 오류제어
  7. 비연결 및 연결지향(Connectionless and Connection-Oriented)
  8. 데이터 링크 계층 프로토콜
  9. Simple Protocol
  10. Stop-and-Wait 프로토콜
  11. 편승(Piggybacking)
'Computer Science/데이터 통신' 카테고리의 다른 글
  • Chapter15 Bluetooth
  • Chapter13 Wired LANs: Ethernet
  • Chapter10 Error Detection and Correction
  • Chapter9 Data-Link Layer
윤재에요
윤재에요
윤재에요
yunzae.log
윤재에요
전체
오늘
어제
  • 분류 전체보기 (438)
    • Computer Science (115)
      • 데이터베이스 (50)
      • 네트워크 (18)
      • 소프트웨어 공학 (1)
      • 알고리즘 (10)
      • 자료구조 (9)
      • 컴퓨터구조 (0)
      • 운영체제 (0)
      • 데이터 통신 (16)
      • 프로그래밍언어론 (11)
    • Project (20)
      • 후크(Flutter) (1)
      • BDSR로그북(App,BackEnd) (2)
      • 나만의 주점(STM32,Arduino,androi.. (9)
      • 공다(App,BackEnd) (2)
      • 카카오쇼핑 클론코딩 (4)
      • 암호화폐자동매매 (2)
    • Problem Solving (208)
      • 자바 문법 (20)
      • 파이썬 문법,함수 (6)
      • 그리디 (5)
      • 구현 (43)
      • DFS (3)
      • BFS (17)
      • 정렬 (15)
      • 이진 탐색 (16)
      • 다이나믹 프로그래밍 (6)
      • 최단 경로 (5)
      • 그래프 (1)
      • 자료구조 (5)
      • 투포인터 (15)
      • SQL (44)
      • 구간합 (7)
    • I leaned (78)
      • 스프링,스프링부트 (31)
      • Git (6)
      • JAVA (5)
      • Etc (30)
    • 취업 (15)
      • PT면접 (6)
      • 기술면접 (9)
      • 인성면접 (0)
    • log (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
  • 글쓰기

공지사항

인기 글

태그

  • 데이터베이스
  • 카카오테크캠퍼스
  • 파이썬
  • weak entity
  • 부품찾기
  • 재시도
  • 다이어그램
  • 다이나믹
  • 다익스트라
  • 효율적인화폐구성
  • 제약 사항
  • 기수정렬
  • 최단 거리
  • 다이나믹프로그래밍
  • 이것이 코딩테스트다.
  • 참조 무결성
  • 계수정렬
  • 최단거리
  • 이것이 코딩테스트다
  • 힙큐
  • 이것이코딩테스트다
  • 개미전사
  • 먀
  • 플로이드 워셜
  • DP
  • Relationship model
  • 교환정렬
  • 그리디
  • UML
  • E-R Model

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.2
윤재에요
Chapter11 Data Link Control(DLC)
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.