글 목록으로 돌아가기

Network

네트워크 기본 개념

OSI 7계층 구조, TCP/IP 프로토콜 스택, 캡슐화/역캡슐화 등 네트워크 통신의 기본 개념 정리

Dohyeon Kim
Dohyeon Kim 2026년 7월 30일 · 8분 읽기
Network AutoEverSW

1. Protocol

개요

프로토콜(Protocol)은 서로 다른 시스템이 통신하기 위해 미리 정의한 규약(Rule) 또는 통신 규칙을 의미한다.

프로토콜은 표준을 제정한 기관이나 워킹 그룹(Working Group), 그리고 사용 목적에 따라 다양한 종류가 존재한다.

최근에는 복잡하게 혼재되어 있던 여러 네트워크 기술이 Ethernet + TCP/IP 기반으로 통합되는 추세이다.

  • 물리적 측면
    • 데이터 전송 매체
    • 전기 신호 규약
    • 회선 규격
    • Ethernet이 대표적으로 사용된다.
  • 논리적 측면
    • 장치 간 통신 규칙을 정의한다.
    • TCP/IP 프로토콜이 가장 널리 사용된다.

Network Protocol의 목표

초기의 네트워크 환경은 컴퓨팅 자원이 매우 제한적이었고 네트워크 속도 또한 매우 느렸다.

따라서 네트워크 프로토콜은 최소한의 자원으로 최대한 효율적인 통신을 수행하는 것을 목표로 설계되었다.

이러한 이유로 대부분의 네트워크 프로토콜은 사람이 읽기 쉬운 문자열이 아닌 2진수(Bit) 기반으로 설계되었다.

또한 최소한의 비트만 사용하여 정보를 전달하기 위해 송신자와 수신자 사이에는 매우 정교한 통신 규칙이 필요하다.

반면, 애플리케이션 계층에서는 사람이 이해하기 쉬운 문자 기반(Text-Based) 프로토콜이 많이 사용된다.

대표적인 예가 HTTP(HyperText Transfer Protocol)이다.

HTTP는 비트 단위가 아니라 문자 자체를 이용하여 헤더(Header)와 헤더 값을 표현하고 전송한다.

정리

  • 프로토콜은 네트워크 통신을 위한 규약이다.
  • 현대 네트워크는 Ethernet과 TCP/IP 기반으로 통합되고 있다.
  • 하위 계층은 효율성을 위해 비트 기반 프로토콜을 주로 사용한다.
  • 상위 계층은 HTTP와 같은 문자 기반 프로토콜을 많이 사용한다.

2. OSI 7계층

개요

과거에는 네트워크 장비 제조사(Vendor)마다 서로 다른 통신 규약을 사용하였다.

이로 인해 제조사가 다른 시스템끼리는 호환되지 않거나 통신이 불가능한 경우가 많았다.

이러한 문제를 해결하기 위해 표준 통신 모델을 정의하려는 노력이 이루어졌으며, 그 결과가 OSI 7계층(Open Systems Interconnection 7 Layer) 이다.

강의에서는 당시 Windows와 Macintosh가 서로 다른 인터넷 케이블을 사용했던 사례를 예로 들어, 표준화 이전에는 장비 간 호환성이 매우 낮았음을 설명하였다.

현재 대부분의 네트워크는 TCP/IP 프로토콜 스택을 사용하지만, OSI 7계층은 네트워크 구조와 데이터 흐름을 이해하기 위한 대표적인 참조 모델(Reference Model)로 활용된다.

OSI 7계층 구성

Layer 역할 데이터 단위(PDU)
7 Application Data
6 Presentation Data
5 Session Data
4 Transport Segment
3 Network Packet
2 Data Link Frame
1 Physical Bit

복잡한 데이터 전송 과정을 계층별로 분리하여 이해할 수 있다는 것이 OSI 모델의 가장 큰 장점이다.


Data Flow Layer와 Application Layer

OSI 7계층은 크게 두 영역으로 구분할 수 있다.

구분 계층 역할
Data Flow Layer 1~4계층 데이터를 목적지까지 정확하게 전달
Application Layer 5~7계층 애플리케이션에서 사용할 데이터 처리

Data Flow Layer

하위 계층인 Data Flow Layer는 데이터를 상대방에게 정확하게 전달하는 역할을 수행한다.

애플리케이션 개발자는 일반적으로 이 계층의 내부 동작을 직접 고려하지 않으며, 데이터 표현과 서비스 구현에 집중한다.

Application Layer

상위 계층인 Application Layer는 애플리케이션이 실제 데이터를 생성하고 사용하는 영역이다.

네트워크 엔지니어는 하위 계층 중심으로 네트워크를 이해하는 반면, 애플리케이션 개발자는 상위 계층부터 하향식으로 네트워크를 이해하는 경우가 많다.

정리

  • 1~4계층은 데이터 전달을 담당한다.
  • 5~7계층은 애플리케이션 서비스를 담당한다.
  • 개발자와 네트워크 엔지니어는 서로 다른 관점에서 계층을 이해한다.

Physical Layer (1계층)

Physical Layer는 물리적인 연결과 전기 신호의 전달을 담당하는 계층이다.

데이터의 의미는 해석하지 않고 전기 신호를 정확하게 전달하는 것에 초점을 둔다.

특징

  • 물리적인 연결 정의
  • 전기 신호 전달
  • 주소 개념이 없음
  • 입력 포트를 제외한 모든 포트로 동일한 신호를 전달

주요 장비

  • Hub
  • Repeater
  • Cable
  • Connector
  • Transceiver
  • TAP

TAP(Test Access Point) 은 네트워크를 흐르는 전기 신호를 복제하여 다른 장비로 전달하는 장비이다.

주로 다음과 같은 장비와 함께 사용된다.

  • Wireshark
  • IDS(Intrusion Detection System)
  • IPS(Intrusion Prevention System)
  • 패킷 분석 장비

원래의 통신에는 영향을 주지 않고 모니터링만 수행한다.


Data Link Layer는 전기 신호를 의미 있는 데이터(Frame)로 변환하고, MAC 주소를 이용하여 정확한 장비에 데이터를 전달하는 계층이다.

특징

  • 전기 신호를 Frame으로 변환
  • MAC 주소 사용
  • 오류 탐지 및 일부 오류 복구
  • Flow Control 수행
  • 동일한 네트워크 내에서 정확한 장비로 데이터 전달

1계층에서는 목적지를 구분할 수 없지만, 2계층에서는 출발지와 목적지 MAC 주소를 확인하여 자신이 처리해야 할 데이터인지 판단한다.

주소 체계가 도입되면서 여러 장비가 동시에 통신할 수 있게 되었으며, 데이터를 무조건 전송하는 것이 아니라 상대방이 수신 가능한지도 고려하게 되었다.

주요 장비

  • NIC(Network Interface Card)
  • Switch

MAC 주소

2계층의 가장 중요한 특징은 MAC(Media Access Control) 주소를 사용한다는 점이다.

NIC와 Switch는 모두 MAC 주소를 인식하여 통신을 수행한다.

Switch는 목적지 MAC 주소를 확인하여 해당 장비가 연결된 포트로만 Frame을 전달할 수 있다.

NIC 동작

NIC는 다음 순서로 동작한다.

  1. 전기 신호를 Frame으로 변환한다.
  2. 출발지와 목적지 MAC 주소를 확인한다.
  3. 자신의 MAC 주소와 목적지 MAC 주소를 비교한다.
  4. 주소가 일치하면 데이터를 처리하고, 일치하지 않으면 폐기한다.

Switch 동작

Switch는 MAC 주소를 학습(MAC Learning)하여 어느 포트에 어떤 장비가 연결되어 있는지 기억한다.

이를 기반으로 필요한 포트에만 데이터를 전달(Forwarding)한다.

Hub는 하나의 포트에서 들어온 신호를 모든 포트로 전달하지만,

Switch는 필요한 포트에만 Frame을 전달하기 때문에 네트워크의 효율이 크게 향상되었으며, 이더넷 기반 네트워크가 빠르게 보급되는 계기가 되었다.

Forwarding

Forwarding은 출발지 주소를 변경하지 않고 목적지 방향으로 그대로 전달하는 동작을 의미한다.

Redirect와는 반대되는 개념이다.

정리

  • 2계층은 MAC 주소를 이용하여 통신한다.
  • NIC는 자신의 MAC 주소를 기준으로 데이터를 처리한다.
  • Switch는 MAC 주소를 학습하여 필요한 포트로만 데이터를 전달한다.

Network Layer (3계층)

Network Layer는 IP(Internet Protocol) 주소와 같은 논리적 주소를 이용하여 서로 다른 네트워크 간 통신을 수행하는 계층이다.

데이터 통신에서는 두 종류의 주소가 사용된다.

  • MAC 주소(2계층)
  • IP 주소(3계층)

IP 주소는 사용 환경에 따라 변경할 수 있으므로 논리적 주소(Logical Address) 라고 한다.

또한 IP 주소는 네트워크 주소와 호스트 주소로 구성된다.

3계층 장비는 목적지 IP 주소를 이용하여 같은 네트워크인지 원격 네트워크인지를 판단하고 목적지까지의 경로를 결정한다.

주요 장비

  • Router
  • Layer 3 Switch

Router는 IP 주소를 이용하여 최적의 경로를 찾고 해당 경로로 패킷을 전달한다.


Transport Layer (4계층)

Transport Layer는 데이터를 정상적으로 전달하기 위한 신뢰성을 제공하는 계층이다.

패킷 기반 네트워크에서는 하나의 데이터를 여러 개의 패킷으로 분할하여 전송한다.

이 과정에서 패킷이 손실되거나 순서가 바뀔 수 있으므로 이를 해결하기 위한 기능을 제공한다.

주요 기능

  • Sequence Number를 이용한 순서 관리
  • ACK(Acknowledgement Number)를 이용한 응답 확인
  • Port 번호를 이용한 애플리케이션 구분

4계층 정보를 활용하는 대표적인 장비는 다음과 같다.

  • Firewall
  • Load Balancer

이들 장비는 Port 번호와 Sequence Number 등을 이용하여 보안 정책을 적용하거나 부하 분산을 수행한다.

정리

  • 3계층은 IP 주소를 이용하여 경로를 결정한다.
  • 4계층은 Port와 Sequence, ACK를 이용하여 신뢰성 있는 통신을 제공한다.

Session Layer (5계층)

Session Layer는 통신을 수행하는 양 끝단의 응용 프로그램이 세션(Session) 을 생성하고 유지하며 종료할 수 있도록 관리하는 계층이다.

통신이 시작되면 연결을 설정하고, 통신 중에는 연결 상태를 유지하며, 작업이 끝나면 세션을 종료한다.

또한 통신 중 오류가 발생한 경우에는 세션을 복구하거나 재전송을 수행하는 역할도 담당한다.

주요 기능

  • 세션 생성
  • 세션 유지
  • 세션 종료
  • 오류 발생 시 복구 및 재전송

Presentation Layer (6계층)

Presentation Layer는 서로 다른 시스템이나 애플리케이션 간의 데이터 표현 방식을 통일하는 계층이다.

데이터 형식이 서로 다르더라도 동일한 형식으로 변환하여 응용 프로그램이 데이터를 올바르게 해석할 수 있도록 한다.

번역기(Translator) 또는 변환기(Converter)의 역할을 수행하는 계층이라고도 한다.

주요 기능

  • 데이터 형식 변환
  • MIME(Multipurpose Internet Mail Extensions) 인코딩
  • 암호화(Encryption)
  • 압축(Compression)
  • 문자 코드 변환(Character Encoding)

Presentation Layer를 이용하면 응용 프로그램은 데이터 형식 차이를 직접 처리하지 않아도 된다.


Application Layer (7계층)

Application Layer는 사용자가 직접 사용하는 네트워크 서비스와 가장 가까운 계층이다.

사용자 인터페이스(UI)와 네트워크 응용 프로그램이 동작하는 영역이며, 웹 브라우저나 메일 프로그램과 같은 애플리케이션이 이 계층에서 동작한다.

특징

  • 사용자와 가장 가까운 계층
  • 네트워크 서비스 제공
  • 사용자 입출력 처리
  • 응용 프로그램과 네트워크를 연결

계층별 프로토콜과 장비

OSI 7계층에서는 계층마다 사용하는 프로토콜과 대표적인 네트워크 장비가 다르다.

Layer 대표 프로토콜 대표 장비
7 HTTP, HTTPS, TELNET ADC, NGFW, WAF
6 TLS, SSH -
5 NFS, RPC, SSH -
4 TCP, UDP Load Balancer, Firewall
3 ARP, IPv4, IPv6, NAT Router, Layer 3 Switch
2 IEEE 802.2, FDDI Switch, Bridge, NIC
1 RS-232, RS-449 Cable, Hub, TAP

주요 장비

ADC (Application Delivery Controller)

애플리케이션 트래픽을 효율적으로 처리하기 위한 장비이다.

고성능 Load Balancer의 기능과 애플리케이션 최적화 기능을 함께 제공한다.

NGFW (Next Generation Firewall)

기존 방화벽 기능뿐 아니라 애플리케이션 분석, IDS(Intrusion Detection System), IPS(Intrusion Prevention System) 등의 기능을 제공하는 차세대 방화벽이다.

WAF (Web Application Firewall)

HTTP와 HTTPS 트래픽을 분석하여 SQL Injection, XSS(Cross Site Scripting) 등 웹 애플리케이션 공격을 탐지하고 차단하는 방화벽이다.

정리

  • 5계층은 세션을 생성·유지·종료한다.
  • 6계층은 데이터 표현 방식을 변환한다.
  • 7계층은 사용자에게 네트워크 서비스를 제공한다.
  • 각 계층은 서로 다른 프로토콜과 네트워크 장비를 사용한다.

3. TCP/IP Protocol Stack

개요

현대의 대부분의 네트워크는 TCP/IP 프로토콜 스택(TCP/IP Protocol Stack)Ethernet 기반으로 동작한다.

특수한 환경에서는 다른 프로토콜이 사용되기도 하지만, 일반적인 네트워크에서는 TCP/IP와 Ethernet이 사실상의 표준으로 사용된다.

강의에서는 NVIDIA GPU 간 통신에 사용되던 프로토콜이 기업의 장기적인 전략에 따라 공개된 사례를 예로 들었다.

  • NVLink
  • NVSwitch
  • CUDA

프로토콜은 만들어진 역사적 배경과 표준화 기관, 그리고 개발 목적에 따라 특징이 달라진다.

TCP/IP는 이론적인 완전성보다 실용성을 우선하여 설계된 프로토콜 스택이다.

TCP/IP 4계층

TCP/IP는 OSI 7계층을 다음과 같이 4개의 계층으로 단순화하여 표현한다.

TCP/IP 계층 OSI 7계층
Application Application, Presentation, Session
Transport Transport
Internet Network
Network Access Data Link, Physical

OSI 모델은 개념적인 참조 모델이며, 실제 인터넷에서는 TCP/IP 프로토콜 스택을 기반으로 통신이 이루어진다.

정리

  • 현대 네트워크는 TCP/IP와 Ethernet 기반으로 동작한다.
  • TCP/IP는 실용성을 중심으로 설계된 프로토콜 스택이다.
  • TCP/IP는 OSI 7계층을 4개의 계층으로 단순화하여 사용한다.

4. Encapsulation & Decapsulation

개요

데이터를 전송하기 위해 각 계층의 헤더(Header)를 추가하는 과정을 캡슐화(Encapsulation) 라고 한다.

반대로 데이터를 수신하면서 각 계층의 헤더를 제거하는 과정을 역캡슐화(Decapsulation) 라고 한다.


패킷 기반 네트워크

현대의 네트워크는 대부분 패킷(Packet) 기반으로 동작한다.

큰 데이터를 여러 개의 작은 패킷으로 분할하여 전송하는 이유는 다음과 같다.

  • 하나의 통신이 회선을 독점하지 않도록 하기 위해
  • 여러 장비가 동시에 통신할 수 있도록 하기 위해

데이터 전송 과정

송신 측에서는 상위 계층에서 생성한 데이터에 각 계층의 헤더를 추가하면서 전송한다.

계층 데이터 형태
Application Data
Transport Segment
Network Packet
Data Link Frame
Physical Bit

Encapsulation

  1. Application 계층에서 데이터를 생성한다.
  2. Transport 계층에서 TCP/UDP 헤더(Port)를 추가하여 Segment를 만든다.
  3. Network 계층에서 IP 헤더를 추가하여 Packet을 만든다.
  4. Data Link 계층에서 MAC 헤더를 추가하여 Frame을 만든다.
  5. Physical 계층에서 전기 신호(Bit)로 변환하여 전송한다.

Decapsulation

수신 측에서는 반대로 각 계층의 헤더를 제거한다.

  1. Physical 계층에서 전기 신호를 수신한다.
  2. Data Link 계층에서 MAC 헤더를 제거한다.
  3. Network 계층에서 IP 헤더를 제거한다.
  4. Transport 계층에서 TCP/UDP 헤더를 제거한다.
  5. Application 계층에서 최종 데이터를 해석한다.

MSS와 MTU

애플리케이션에서 생성한 데이터는 네트워크 환경에 맞는 크기로 분할되어 전송된다.

MTU

MTU(Maximum Transmission Unit)는 한 번에 전송할 수 있는 최대 데이터 크기를 의미한다.

일반적인 Ethernet 환경에서는 1500Byte를 사용한다.

MSS

MSS(Maximum Segment Size)는 TCP 데이터가 실제로 사용할 수 있는 최대 크기이다.

일반적인 Ethernet에서는 다음과 같이 계산한다.

  • MTU : 1500Byte
  • IP Header : 20Byte
  • TCP Header : 20Byte
1500 - 20 - 20 = 1460Byte

따라서 일반적인 Ethernet 환경에서 MSS는 1460Byte가 된다.

정리

  • Encapsulation은 헤더를 추가하며 데이터를 전송하는 과정이다.
  • Decapsulation은 헤더를 제거하며 데이터를 해석하는 과정이다.
  • MTU는 한 번에 전송 가능한 최대 크기이다.
  • MSS는 TCP 데이터가 사용할 수 있는 최대 크기이며 일반적으로 1460Byte이다.

댓글