데이터 링크 계층 (Data Link Layer)

작성일2021-02-05

데이터 링크 계층은 OSI 7 계층 중 두 번째 계층으로, 물리 계층에 데이터 전송을 지시할 수 있다. 흔히 L2(Layer 2)라고도 불리며 L2에서는 MAC 주소를 기반으로 주소지정을 사용한다.

L2는 프레임 단위의 데이터를 전송하며, 신뢰성 있는 전송을 보장하기 위해 오류제어 및 흐름 제어를 수행한다.
대표적인 프로토콜 기술로는 Ethernet, PPP(Point-to-Point Protocol), HDLC(High-Level Data Link Control) 등이 있다.

L2에는 Mac 주소 테이블이 있으며, 출발지 MAC을 테이블에 학습한다.

NIC

NIC(Network Interface Card)은 네트워크 장치로, 컴퓨터와 네트워크 간의 통신을 위한 하드웨어 장치이다. 컴퓨터에서는 NIC이 L2 계층의 역할로 여러가지 처리를 수행한다.

NIC
L2 계층을 수행하는 랜카드(NIC)

NIC의 주요 특징

  • 각 랜카드는 고유한 MAC 주소(48 Bit)를 가지고있다. (실제로 이 처리를 위해 IEEE에서 관리한다.)
  • 데이터를 프레임 단위로 전송하고 수신
  • L1에서 받은 바이트 스트림을 검사하고 정상 적인 프레임이면 처리, 오류가 있으면 폐기한다.

프레임 구조

Preamble SFD Destination MAC Source MAC Type Data FCS
7 Bytes 1Bytes 6Bytes 6Bytes 2Bytes 46~1500Bytes 4Bytes

L2에서는 각 데이터를 프레임으로 전송하며, 프레임은 위와 같은 구조로 이루어져있다.

  • Preamble: 수신측의 클록 동기화를 위해 사용 되며, 7번 반복된 byte로 구성된다. (예: 10101010(AA) * 7)
  • SFD(Start Frame Delimiter): 프레임의 시작을 알리는 구분 값, 1byte로 구성된다. (예: 10101011(AB))
  • Destination MAC: 목적지 MAC 주소, 6byte로 구성된다.
  • Source MAC: 출발지 MAC 주소, 6byte로 구성된다.
  • Type: 데이터의 종류를 나타내는 값 이며, IPv4는 0x0800, IPv6은 0x86DD, ARP는 0x0806으로 구성된다.
  • Data: 실제 전송할 데이터, 최소 46byte에서 최대 1500bytes 까지 전송 가능하다.
  • FCS(Frame Check Sequence): 오류 검출을 위한 값으로, 4byte로 구성된다. 이 값은 프레임이 손상되었는지 아닌 지를 판단하는 체크섬으로 사용한다.
    • 송신 장치(Sender Device)는 이 필드를 제외한 프레임의 포든 필드를 가져와 CRC(Cyclic Redundancy Check)라는 알고리즘으로 실행하고 결과로 FCS로 사용할 4byte 값을 생성하여 이 필드에 담는다.

L2에서는 Data를 제외 한 모든 필드를 프레임 헤더라고 하며 NIC에서는 이 헤더를 분석하고, Data를 추출하여 상위 계층으로 전달한다.

Copyright © 2019-2025 Alloc · MIT License