개발자라면 알아야할 인터넷 프로토콜: 데이터 링크 계층과 네트워크 계층

인터넷 프로토콜의 각 계층에서 어떤 처리를 하는지 바로 설명하지 못한다면! [컴퓨터 네트워크(3/3)]

SoniaComp
5 min readMar 17, 2021

참고자료

네트워크 관련 글 목록

1. 데이터 통신

2. OSI 참조모델과 인터넷 프로토콜 구조

3. 데이터 링크 계층

4. 네트워크 계층과 라우팅

5. 데이터 압축과 암호화

앞에 두개의 글에서, 네트워크란 결국엔 데이터를 공유하기 위해 존재한다는 것을 알게 되었습니다. 그러면 각 계층에서 구체적으로 어떤 일을 하는지, 또, 그 일을 수행하는 방법은 어떻게 이루어지는지 알아봅시다!

OSI 2~4 계층을 정리한 그림 (출처: sonia 😊)

0. LAN 환경

LAN은 한정된 지역 내에서 다양한 통신 기기의 상호 연결을 가능하게 하는 통신 네트워크입니다.

  • 제한된 접속 길이
  • 전송 용량: 보통 수십 Mbps 에서 수 Gbps 정도
  • 브로드캐스팅(broadcasting) 형태의 패킷 네트워크
  • 패킷 지연의 최소화: 통신 속도가 빠를 뿐 아니라 거리가 제한되어 있어 수신 패킷 지연 시간이 짧다.
  • 낮은 오류율: WAN에 비해 상당히 작다.

LAN 구성 형태

  • 스타형
    모든 호스트는 하나의 허브 또는 스위치에 연결
    설치 및 보수가 용이하며 허브를 쉽게 업그레이드 가능
  • 버스형
    모든 호스트는 하나의 전송매체에 연결
    케이블에 소요되는 비용이 최소
    메인 케이블이 고장나면 전체 네트워크에 영향을 줌
    네트워크 부하가 심한 경우 성능이 떨어짐
  • 링형
    토큰을 갖고 있는 호스트만이 데이터를 전소알 수 있으므로 호스트 수가 증가하더라도 성능에 영향을 주지 않음
    임의의 호스트가 고장나면 네트워크 전체가 동작하지 않을 수 있으며 호스트를 추가하거나 제거할 때 어려움.

1. 데이터 링크 계층

데이터 링크 계층에서 하는 역할은 인접한 노드간의 물리적인 회선을 망계층(3 layer)에서 사용할 수 있도록 전송에러가 없는 통신 채널로 변화시키는 것입니다.

출처: slide share

LAN과 데이터 링크 계층 1: LLC 계층

하나 이상의 서비스 접근점(SAP, Service Access Point)을 제공하는 계층으로 상위 계층과의 인터페이스를 다룸

LAN과 데이터 링크 계층 1: MAC (Medium Access Control) 계층

  • 상위 계층의 데이터를 보낼 때 주소와 CRC를 포함한 프레임을 만듦
  • 프레임을 수신할 때 프레임을 풀어서 주소를 인식하고 CRC를 사용하여 오류 검사 수행
  • LAN 전송 매체에 대한 접근 제어
  • 인터넷에서 가장 많이 사용하는 이더넷 MAC은 IEEE 802.3 (CSMA/CD)
    - 버스타 스타형 LAN에서 가장 일반적으로 이용되고 있는 매체 액세스 제어 기법. 보통 이더넷이라고도 함.
    - CSMA/CD 방식은 채널을 사용할 때, 먼저 다른 호스트가 채널을 이용하는지의 여부를 모니터링 한 다음 사용하는 방법
    → 채널이 사용중이 아닌 것으로 판단되면, 전송을 시작. 이때 다른 호스트가 동시에 전송을 시작하면 충돌이 발생하고, 곧바로 전송을 중단. 일정 시간이 지나고 나서, 채널 모니터링 후 전송을 재개
    → 만일 채널이 사용중이면, 일정 시간만큼 기다렸다가 다시 채널 상태를 살핀 후 전송을 재시도
  • 토큰 버스 MAC은 IEEE 802.4, 토큰 링 MAC은 IEEE 802.5 WG에서 표준을 정함
  • 현재: CSMA
  • 무선 네트워크: wi-fi

cf. 이더넷 프레임 구조

출처: 정보통신기술용어해설

2. 네트워크 계층

네트워크 계층은 OSI 모델에서 라우팅 등의 기능을 수행

라우터란 둘, 혹은 그 이상의 네트워크 간 데이터 전송을 위해 최적 경로를 설정해주는 인터넷 접속 장비
→ 네트워크를 통해 정보를 주고 받을 때, 데이터에 포함된 수신 측의 주소를 읽고 가장 적절한 통신 통로를 이용해 다른 통신망으로 전송하는 장치 (여러가지 프로토콜에서 전송되는 패킷을 수신할 수 있어야 함. 패킷이란 통신망에서 주고 받는 데이터 단위이며 데이터 뿐만 아니라 목적지 주소까지 포함)

  1. 경로설정: 라우팅 알고리즘 (라우팅 프로토콜)
  2. 스위칭: 라우터에 도착한 패킷을 적절한 포트로 보냄
  3. 연결 설정: 경우에 따라 데이터 전송 전에 연결 설정 필요 (IP 프로토콜)
    + ICMP 프로토콜(오류보고)
출처: 정보통신기술용어해설
출처: 네이버 블로그 (고니)

라우팅 알고리즘

다익스트라

인터넷 주소 기법

세가지 호스트 식별자

호스트명, IP주소, MAC주소(물리적 하드웨어 주소, 48비트)
→ 서브넷(Subnet): IP주소는 네트워크 ID와 호스트 ID로 단지 2단계 계층만을 허용. 인터넷을 구성하고 있는 네트워크의 수가 상대적으로 적을 때 충분.

3. 인터네트워킹

인터네트워킹: 네트워크 상호간의 연동

인터네트워킹은 상호 연동되는 네트워크의 구조 및 사용 프로토콜의 차이점을 해결하면서 상호 정보 교환이 용이하도록 해주는 기능

연동하고자 하는 네트워크의 상황에 따라 여러가지 방법이 존재

→ 두 네트워크 간에 패킷 교환을 위한 장비가 필요
→ 연동을 위한 장비의 기능은 수행하는 계층에 따라 다름

  1. 계층1: 리피터(Repeater), 허브(Hub)
  2. 계층2: 브리지(Bridge), 스위치(Switch)
  3. 계층3: 라우터(Router), L3 스위치
  4. 계층4이상: 게이트웨이(Gateway)

--

--

SoniaComp

Data Engineer interested in Data Infrastructure Powering Fintech Innovation (https://www.linkedin.com/in/sonia-comp/)