네트워크

네트워크 계층 이해하기: OSI 7계층 모델

GearDeveloper 2024. 6. 29. 17:47
네트워크 통신을 설명하는데 있어서 OSI(Open Systems Interconnection) 7계층 모델은 매우 중요한 역할을 합니다. 이 모델은 네트워크 통신을 7개의 계층으로 나누어 각 계층의 역할과 기능을 설명합니다. 이번 글에서는 OSI 모델의 각 계층을 살펴보고, 네트워크 계층의 중요성과 실제 사례에 대해 알아보겠습니다.

Layer 1 (Physical Layer)

  • 물리 계층은 물리적 연결에 관련된 정보를 정의합니다.
  • 주로 전기 신호의 전송을 담당합니다.
  • 주요 장비:
    • 허브, 리피터: 네트워크 통신을 중재하는 네트워크 장비입니다.
    • 케이블, 커넥터, 트랜시버: 컴퓨터의 LAN 카드와 케이블을 연결하는 장치입니다.
    • : 네트워크 모니터링 및 패킷 분석을 위해 다른 장비에 전기 신호를 복제합니다.
  • 물리 계층의 목적은 들어오는 전기 신호를 올바르게 전송하는 것입니다.
  • 물리 계층 장비는 주소 개념이 없어서 전기 신호가 들어온 포트를 제외한 모든 포트로 동일한 전기 신호를 전송합니다.

Layer 2 (Data Link Layer)

  • 데이터 링크 계층은 전기 신호를 수집하여 우리가 인식할 수 있는 데이터 형태로 처리합니다.
  • 1계층과 달리, 주소 정보를 정의하고 올바른 주소로의 통신을 보장하는 데 중점을 둡니다.
  • 2계층에서는 출발지와 목적지 주소를 확인한 후 데이터 처리가 이루어집니다.
  • 주소 시스템의 생성으로 여러 사람과 동시에 통신할 수 있습니다. 데이터를 그냥 보내기 전에 수신자가 데이터를 받을 수 있는지 확인하는 역할을 흐름 제어라고 합니다.
    1. 서버에서 스위치로 데이터 전송
    2. 스위치에서 서버로 혼잡 발생 시 일시 중지 프레임 전송
    3. 서버에서 일시 중지 프레임 수신 후 대기
  • 2계층에서 작동하는 네트워크 구성 요소는 네트워크 인터페이스 카드(NIC)와 스위치입니다.
  • 2계층의 가장 중요한 특징은 MAC 주소라는 주소 체계를 가진다는 것입니다.
  • 네트워크 인터페이스 카드와 스위치 모두 MAC 주소를 이해할 수 있으며, 스위치는 MAC 주소를 확인하여 어느 포트와 통신할지 지정할 수 있습니다.
  • 네트워크 인터페이스 카드 동작 방식(LAN 카드)
    1. 전기 신호를 데이터 형태로 변환합니다.
    2. 목적지 MAC 주소와 출발지 MAC 주소를 확인합니다.
    3. 네트워크 인터페이스 카드의 MAC 주소를 확인합니다.
    4. 목적지 MAC 주소와 네트워크 인터페이스 카드의 MAC 주소가 일치하면 데이터를 처리하고, 그렇지 않으면 데이터를 폐기합니다.
  • 스위치는 주소 획득 과정을 통해 터미널이 어떤 MAC 주소를 가지고 어떤 포트에 연결되어 있는지 알아낼 수 있습니다.
  • 터미널이 데이터를 기반으로 통신할 때, 포트를 적절히 필터링하여 올바른 포트로 전달합니다.

Layer 3 (Network Layer)

  • 3계층에서는 IP 주소와 같은 논리적 주소가 정의됩니다.
  • 2계층의 MAC 주소와 달리, IP 주소는 사용자가 환경에 맞게 변경할 수 있으며, 네트워크 주소 부분과 호스트 주소 부분으로 나뉩니다.
  • 3계층에서 작동하는 장치는 라우터입니다. 라우터는 3계층에서 정의된 IP 주소를 이해할 수 있습니다.
  • 라우터는 IP 주소를 사용하여 최적의 경로를 찾아 패킷을 해당 경로로 전송합니다.

Layer 4 (Transport Layer)

  • 4계층은 데이터가 실제로 올바르게 전송되었는지 확인하는 책임이 있습니다.
  • 패킷 네트워크는 데이터를 분할하여 패킷 단위로 전송하므로, 패킷이 손실되거나 순서가 변경될 수 있습니다. 이를 해결하기 위해 4계층은 패킷이 손실되거나 순서가 잘못된 경우 이를 수정하는 역할을 합니다.
    • 순서 번호는 패킷이 전송되는 순서를 지정합니다.
    • ACK 번호는 수신 순서를 나타냅니다.
  • Port 번호를 사용하여 장치 내의 여러 애플리케이션을 구분합니다.
  • 4계층에서 작동하는 장치는 애플리케이션 식별자(포트 번호), 순서, ACK 번호를 사용하여 부하를 분산하거나 보안 정책을 수립하여 패킷을 전달하거나 차단하는 기능을 수행합니다.
    • 로드 밸런서
    • 방화벽

Layer 5 (Session Layer)

  • 세션 계층은 양 끝의 애플리케이션 프로세스가 연결을 설정하고, 연결이 안정적으로 유지되며, 작업이 완료된 후 연결을 해제하는 데 도움을 줍니다.
  • 주요 역할은 우리가 흔히 말하는 “세션”을 관리하는 것입니다.

Layer 6 (Presentation Layer)

  • 6계층인 표현 계층은 표현 방식을 단일 통일 구문 형식으로 변환하여 서로 다른 표현 방식을 가진 애플리케이션 또는 시스템 간의 통신을 용이하게 합니다.
  • 인코딩, 암호화, 압축, 코드 변환과 같은 작업이 이 계층에서 이루어집니다.

Layer 7 (Application Layer)

  • 응용 계층은 OSI 7계층 중 가장 높은 계층으로, 애플리케이션 프로세스를 정의하고 애플리케이션 서비스를 수행합니다.
  • 응용 계층의 역할은 네트워크 소프트웨어의 UI 부분 또는 사용자 입력/출력 부분을 정의하는 것입니다.

Reference

[1] 고재성, 이상훈. "IT 엔지니어를 위한 네트워크 입문." 길벗, 2022.