Post

02 OSI - 데이터링크계층

02 OSI - 데이터링크계층

1. 데이터 링크 계층

1. 데이터 링크 계층 개요

  • 네트워크 7계층 중 2번째 계층(하위 계층)
  • 물리 계층에서 받은 비트열을 프레임 단위로 조직화
  • 직접 연결된 두 장치 간의 안정적 데이터 전송을 담당
  • MAC 주소 기반의 주소 지정 및 오류 감지 기능 제공

2. 데이터 링크 계층 역할

  • 프레이밍: 연속된 비트열을 구조화된 프레임 단위로 구분
  • 주소 지정: 프레임에 출발지 및 목적지 MAC 주소를 포함
  • 오류 검출: 프레임에 FCS(프레임 검사 시퀀스) 추가하여 전송 오류 감지
  • 매체 접근 제어(MAC): 공유 네트워크에서 누가 언제 전송할지 조정 (예: CSMA/CD)
  • 스위치, 네트워크 카드(NIC) 등 장비와 직접 관련

3. 상위/하위계층

구분LLC 계층MAC 계층
계층 위치데이터 링크 계층의 상위 부분데이터 링크 계층의 하위 부분
주기능논리 연결, 오류/흐름 제어, 상위 계층 인터페이스물리 주소 부여, 매체 접근 제어, 프레임 전송
구현소프트웨어적하드웨어적 (NIC 등)
관련 표준IEEE 802.2IEEE 802.3, 802.11 등

2. 이더넷

1. 이더넷

  • LAN(Local Area Network) 환경에서 가장 널리 사용되는 유선 통신 기술
  • IEEE에서 제정한 802.3 표준 기반
  • 데이터 링크 계층(2계층)과 물리 계층(1계층) 모두를 정의함
  • MAC 주소 기반 통신, 프레임 단위 전송, CSMA/CD 방식 사용
  • 저렴하고 설치가 간편하여 기업 및 가정에서 보편적 사용

2. 이더넷의 속도

이름속도비고
이더넷10 Mbps최초의 표준 이더넷
패스트 이더넷100 Mbps100Base-T
기가비트 이더넷1 Gbps1000Base-T
10기가 이더넷10 Gbps주로 백본망 사용
100기가 이더넷100 Gbps대형 데이터센터, 통신사 백본망 등

3. 이더넷의 규격들

규격속도매체설명
10Base-T10 MbpsUTP10Mbps, 트위스트 페어 케이블
100Base-TX100 MbpsUTP2쌍 트위스트 페어
1000Base-T1 GbpsUTP기가비트, 4쌍 케이블
1000Base-LX1 Gbps광섬유장거리 전송 (최대 10km 이상)
10GBase-T10 GbpsUTP고속 기가 전송, Cat6 이상 필요
10GBase-SR10 Gbps광섬유짧은 거리용 광 통신

3. 데이터 링크 계층의 데이터

1. 데이터 링크 계층의 데이터

구분구성 요소길이 (바이트)설명
헤더목적지 MAC 주소6수신자의 MAC 주소
헤더출발지 MAC 주소6송신자의 MAC 주소
헤더타입 (Type)2상위 프로토콜 구분
(IPv4 / IPv6 / ARP / VLAN 태그)
페이로드데이터 (Payload)46 ~ 1500실제 데이터
트레일러FCS (Frame Check Sequence)4오류 검출용 CRC

2. 헤더

  • 프레임의 앞부분에 붙는 제어 정보
  • 목적지/출발지 MAC 주소, 타입 필드, 제어 정보 등이 포함됨

3. 트레일러(Trailer)

  • 프레임의 끝부분에 붙는 오류 검출 정보
  • 전송 중 오류를 검사하기 위한 CRC 값 등 포함

4. MAC 주소

1. MAC 주소

  • MAC(Media Access Control) 주소는 네트워크 인터페이스 카드(NIC)에 할당된 고유 식별자
  • 길이: 48비트(6바이트), 보통 16진수 12자리(예: 00-1A-2B-3C-4D-5E)로 표현
  • 전 세계에서 유일한 주소로, LAN 내에서 장치를 식별하는 데 사용
  • 네트워크 계층의 IP 주소와 달리 데이터 링크 계층에서 물리적 장치 식별 용도
  • MAC 주소는 제조사별로 할당된 OUI(Organizationally Unique Identifier, 상위 3바이트)와 장치 식별자(하위 3바이트)로 구성됨

2. MAC 주소 테이블

  • 스위치는 네트워크에서 들어오는 프레임의 출발지 MAC 주소를 학습하여
  • 어떤 포트에 어떤 MAC 주소가 연결되어 있는지 테이블로 관리
  • 이를 통해 프레임을 목적지 MAC 주소가 연결된 포트로 효율적으로 전달
  • 테이블 구조

    항목설명예시
    MAC 주소고유 식별자 (48비트)00-1A-2B-3C-4D-5E
    OUI제조사 코드 (상위 3바이트)00-1A-2B (Cisco 등)
    장치 식별자개별 장치 구분 (하위 3바이트)3C-4D-5E
    MAC 주소 유형유니캐스트 / 멀티캐스트 / 브로드캐스트유니캐스트: 단일 대상
    MAC 주소 테이블스위치가 학습하는 MAC 주소와 포트 매핑 테이블MAC 주소 → 연결 포트 저장

5. 스위치

1. 스위치

  • LAN(Local Area Network) 내에서 데이터 프레임을 목적지 장치로 효율적으로 전달하는 역할
  • 여러 포트를 가지고 각 포트에 여러 장치를 연결할 수 있음
  • MAC 주소를 인식하고, 이를 기반으로 데이터를 전송할 목적지를 결정함
  • 리피터나 허브와 달리, 데이터 충돌을 줄이고 네트워크 효율을 크게 향상시킴

2. 스위치 동작 순서

  • 프레임 수신 (입력)
    • 스위치의 특정 포트로 이더넷 프레임이 들어옴
    • 프레임에는 출발지 MAC 주소가 포함되어 있음
  • 출발지 MAC 주소 학습
    • 스위치는 프레임의 출발지 MAC 주소와 해당 포트를 기억함
    • 이 정보를 MAC 주소 테이블(MAC 주소 ↔ 포트)에 등록함
    • 이 과정을 통해 스위치는 네트워크에 연결된 장치들의 위치를 학습함
  • 목적지 MAC 주소 확인
    • 프레임의 목적지 MAC 주소를 MAC 주소 테이블에서 찾음
  • 프레임 전달 (포워딩)
    • 목적지 MAC 주소가 테이블에 있으면 → 해당 포트로만 프레임 전송
    • 목적지 MAC 주소가 없다면 → 모든 포트로 브로드캐스트 (플러딩) / 수신 포트 제외
  • 충돌 없는 프레임 전달
    • 각 포트는 독립적인 충돌 도메인이기 때문에, 프레임은 충돌 없이 전송됨
  • 프레임 전달 완료
    • 목적지 포트로 프레임이 전송되어, 해당 장치가 데이터를 수신함

6. CSMA/CD

1. CSMA/CD(Carrier Sense Multiple Access with Collision Detection)

  • 네트워크에서 여러 장치가 하나의 전송 매체(공유 케이블)를 사용할 때 발생할 수 있는 충돌(Collision)을 해결하기 위한 메커니즘
  • 이더넷 초기에는 동축 케이블의 버스형 구조에서 데이터를 전송하였고, 이를 관리하기 위해 CSMA/CD가 등장.
  • 지금은 대부분의 스위치 기반 네트워크에서 사용하지 않음.

2. 순서

  • Carrier Sense (채널 감지)
    • 전송하려는 장치가 네트워크 매체(케이블)를 감시
    • 만약 다른 장치가 데이터를 전송 중이면 대기.
  • 전송 시도 (전송 시작)
    • 채널이 비어 있으면(유휴 상태) 장치는 데이터 전송을 시작함.
    • 하지만 다른 장치도 동시에 채널이 비어 있다고 판단하고 전송할 수 있음.
  • Collision Detection (충돌 감지)
    • 두 장치가 거의 동시에 전송하면, 충돌이 발생함.
    • 이더넷 장치는 충돌 여부를 감지하기 위해 송신 중에도 수신을 동시에 감시함.
  • 충돌 발생 시, 전송 중단
    • 충돌이 감지되면, 모든 장치는 즉시 전송을 중단함.
  • Jamming Signal 전송
    • 충돌을 인지했음을 네트워크 상에 알리기 위해 짧은 잡음 신호(Jamming Signal)를 전송
    • 이로써 다른 장치도 충돌이 발생했음을 인지하게 됨.
  • Backoff (재시도 대기)
    • 각 장치는 랜덤한 시간만큼 기다린 뒤 전송을 다시 시도함.
    • 이때 Binary Exponential Backoff 알고리즘을 사용해 재시도 간 간격을 늘림.
  • 전송 재시도
    • 일정 시간 대기 후, 다시 1단계부터 반복하며 전송을 재시도함.

3. 재전송

  • 최대 재전송 횟수 제한이 있음(이더넷(IEEE 802.3) 표준에선 최대 16회까지 재전송 시도)
  • 매번 충돌 후 기다리는 시간은 Binary Exponential Backoff 방식으로 늘어남
  • 16번 연속 실패하면, 전송 실패로 간주하고 포기함
This post is licensed under CC BY 4.0 by the author.