OSI 7계층 | Open Systems Interconnection 7 Layers

가잉·2025년 4월 4일

CS

목록 보기
2/2
post-thumbnail

자격증 공부할 때마다 등장하는 OSI 7계층입니다. 대략적인 흐름은 알고 있지만 아직도 헷갈리는 부분이 있어 이번 기회에 확실하게 짚고 가고자 정리하게 되었습니다. 누군가 저를 툭 치기만 해도 술술 읊을 수 있을 정도로 모든 것을 정리해 보겠습니다.


🧭 OSI 7계층

OSI(Open Systems Interconnection) 7계층은 컴퓨터 네트워크에서 데이터가 어떻게 전달되는지를 7단계로 나눈 국제 표준 모델입니다.

데이터가 한 컴퓨터에서 다른 컴퓨터로 전송될 때 단순히 한 줄로 이동하는 것이 아니라 각 단계별로 담당하는 역할이 다르게 구성되어 있습니다.

💡 실제 인터넷에서는 TCP/IP 4계층 모델이 더 널리 사용되고 있습니다. 이 모델에 대한 자세한 내용은 별도의 포스팅에서 정리해보겠습니다.


❓ OSI 7계층으로 나눈 이유

비록 실무에서는 TCP/IP 4계층 모델이 더 많이 사용되지만 OSI 7계층 모델은 이론적 기반으로서 학습에 매우 유용합니다.

네트워크에서 통신이 일어나는 전체 과정을 계층별로 나누면 문제가 발생했을 때 어느 단계에서 문제가 생겼는지 정확히 진단하고 고치기 쉬워지기 때문입니다.

예를 들어

  • 3계층(Network Layer): IP 주소 설정 오류
  • 1계층(Physical Layer): 랜선 불량 또는 포트 고장
  • 7계층(Application Layer): 웹 브라우저나 앱 자체의 문제

이렇게 특정 계층에서만 문제가 발생했다면 나머지 계층은 건드릴 필요 없이 그대로 두고 문제 발생 계층에만 집중적으로 점검하고 수정하면 됩니다.

이처럼 문제를 좁혀서 빠르게 해결할 수 있는 구조이기 때문에 OSI 7계층 모델은 네트워크 트러블슈팅(문제 해결)의 핵심 도구로 활용되고 있습니다.


📊 OSI 7계층 요약표

계층이름주요 역할전송 단위예시 프로토콜 / 장비
7응용 계층(Application)사용자와 직접 연결되는 소프트웨어 계층메시지(Message)HTTP, FTP, SMTP, Telnet
6표현 계층(Presentation)데이터 압축, 암호화, 인코딩/디코딩메시지(Message)JPEG, MPEG, SSL
5세션 계층(Session)세션 연결, 유지, 종료메시지(Message)TLS, NetBIOS, RPC
4전송 계층(Transport)신뢰성 있는 전송, 오류/흐름 제어세그먼트(Segment)TCP, UDP
3네트워크 계층(Network)경로 설정, 라우팅, IP 주소 관리패킷(Packet)IP, ARP, RARP, ICMP, IGMP
2데이터 링크 계층(Data Link)MAC 주소 관리, 프레임화, 오류 검출프레임(Frame)Ethernet, PPP, 스위치
1물리 계층(Physical)전기 신호로 비트 전송, 물리적 연결비트(Bit)UTP, 광케이블, 허브, 리피터

[1] 🔌 물리 계층(Physical Layer)

데이터를 전기 신호, 빛, 전파 등의 물리적인 신호 형태로 변환하여 전송하는 계층입니다.

🛠 하는 일

물리 계층은 OSI 7계층 중 가장 하위에 위치한 계층으로 컴퓨터 내부에서 만들어진 데이터를 실제 전송 가능한 신호로 바꾸는 역할을 합니다.

즉, 사람이 이해할 수 있는 정보(0과 1의 비트)를 다음과 같은 물리적 매체를 통해 전달 가능하도록 변환합니다.

  • 전기 신호: 구리선 케이블을 통한 유선 통신
  • 빛 신호: 광섬유 케이블을 통한 고속 전송
  • 전파 신호: 무선(Wi-Fi, Bluetooth 등) 전송

이 계층은 '무엇을 보냈는가'보다는 '어떻게 보내는가'에 집중합니다. 데이터 내용은 관여하지 않고 전송 방식과 매체만 처리합니다.

📦 전송 단위 - 비트(Bit)

비트는 컴퓨터가 이해하는 가장 작은 단위(0과 1)입니다.

물리 계층에서는 이 비트를 전압의 높낮이, 빛의 유무, 전파의 파형 등 물리적인 방식으로 표현합니다.

예시:

  • 전선에 5V 전압이 흐르면 → 1
  • 전선에 0V 전압이 흐르면 → 0

이런 식으로 비트를 눈에 보이지 않는 신호로 바꿔서 케이블을 타고 흐르게 만드는 역할을 합니다.

🔌 주요 장비

📌 UTP 케이블(Unshielded Twisted Pair)

  • 가장 일반적으로 사용하는 유선 LAN 케이블입니다.
    • 대부분 가정이나 사무실에서 컴퓨터를 인터넷에 연결할 때 사용하는 선입니다.
  • 케이블 내부는 두 가닥씩 꼬여 있는 구리선으로 구성되어 있고 전기 신호의 형태로 데이터를 주고받습니다.
  • 전자기 간섭을 줄이기 위해 꼬여 있으며 전기 신호가 흐르는 물리적 통로 역할을 합니다.
  • 이더넷 통신이나 인터넷 회선에서 대표적인 전송 매체로 사용됩니다.

📌 광케이블(Fiber Optic Cable)

  • 빛 신호를 이용하여 데이터를 전달하는 케이블입니다.
  • 전기 신호가 아니라 레이저LED 빛을 이용해 데이터를 빠르게 멀리까지 보낼 수 있습니다.
  • 전자기 간섭이 거의 없고 속도가 매우 빠르며 데이터 센터, 통신사 백본망 같은 고속·장거리 환경에서 많이 사용됩니다.

📌 무선 전송 방식(Wi-Fi, Bluetooth 등)

  • 전파를 이용하여 0과 1의 신호를 주고받는 전송 방식입니다.
  • 케이블 없이 공중을 통해 데이터가 오가는 방식으로 대표적으로 Wi-Fi, Bluetooth, 4G/5G 등이 있습니다.
  • 물리 계층에서 보이지 않는 매체(전파)로 신호를 전달합니다.

📌 허브(Hub)

  • 물리 계층에서 동작하는 네트워크 장비입니다.
  • 받은 데이터를 단순히 증폭하거나 전체로 뿌리는 역할만 수행합니다.
    • 어디로 보낼지 판단은 못 하고 그냥 다 보내버리는 장비입니다.
  • 스위치와 달리 데이터를 구별하거나 MAC 주소를 확인하지 않습니다.

📌 리피터(Repeater)

  • 전송 도중 약해진 신호를 증폭하여 멀리까지 전달해주는 장비입니다.
  • 케이블이 너무 길어지면 신호가 점점 약해지는데 이 신호를 재생하고 강하게 만들어 다시 전송하는 역할을 합니다.
  • 주로 광케이블 중간, 지하철 와이파이 중계기 같은 곳에서 사용됩니다.

같은 네트워크 내에서 데이터를 안정적으로 전달하고 MAC 주소를 기준으로 목적지를 식별하는 계층입니다.

🛠 하는 일

데이터 링크 계층은 물리 계층을 통해 전달될 데이터를 프레임이라는 형태로 감싸서 보내는 역할을 합니다.

  • 전송할 데이터를 프레임 단위로 포장하여 같은 네트워크 안에서 안전하게 전송합니다.
    • 예를 들어 택배 상자를 보내기 위해 이름과 주소를 적고 포장하는 과정과 유사합니다.
  • MAC 주소를 기준으로 수신 대상을 정합니다.
    • MAC 주소는 네트워크 카드에 내장된 고유 식별자이며 같은 네트워크 내 장치를 식별하는 데 사용됩니다.
    • 전화번호처럼 고정되어 있어 이걸 보고 "누구한테 보낼까?"를 정합니다.
  • 전송 중에 문제가 생겼는지 확인하고 필요하면 재전송하거나 조절합니다.
    • 예를 들어 전송 중에 노이즈가 끼어서 데이터가 깨졌다면 그걸 감지해주는 기능도 포함돼 있습니다.

📦 전송 단위 - 프레임(Frame)

프레임은 데이터를 네트워크에서 보내기 위한 운송 상자와 같습니다.

  1. 송신자 MAC 주소: 이 데이터를 누가 보냈는지 나타냅니다.
  2. 수신자 MAC 주소: 이 데이터를 누구에게 보낼 건지 나타냅니다.
  3. 데이터(payload): 실제로 전송하고 싶은 내용입니다. (ex. 이미지, 텍스트, 명령 등)
  4. FCS(Frame Check Sequence): 전송 중 오류가 생겼는지 확인하는 코드입니다.

프레임은 같은 네트워크 내에서 통신의 정확성과 안정성을 보장하는 핵심 단위입니다.

🔌 주요 장비

📌 이더넷(Ethernet)

  • 가장 널리 쓰이는 유선 LAN 기술입니다.
    • 대부분의 사무실이나 집에서 사용하는 인터넷은 이더넷 기반입니다.
  • 데이터를 어떻게 나누고, 어떤 순서로 보내고, 어떻게 오류를 감지할지를 정한 표준 프로토콜입니다.
    • 규칙이 없으면 서로 엉망으로 보낼 테니 이더넷이 이걸 정리해주는 역할을 합니다.
  • 데이터를 전송할 매체(실제로 흐르게 되는 통로)는 보통 UTP 케이블을 사용합니다.
    • 우리가 흔히 말하는 랜선, 집에서 컴퓨터에 꽂는 인터넷선이 바로 이겁니다.

📌 스위치(Switch)

  • 데이터 링크 계층에서 작동하는 네트워크 장비입니다.
  • 프레임을 받아서 목적지 MAC 주소를 확인한 후 그 주소에 해당하는 포트(출구)로만 데이터를 보냅니다.
    • 즉, 불필요하게 다른 컴퓨터로 데이터를 흘리지 않고 정확한 대상에게만 전송해줍니다.
  • 허브는 무작정 모든 장치에게 보내지만 스위치는 정확히 하나만 콕 찍어 보내는 똑똑한 장비입니다.

📌 PPP(Point-to-Point Protocol)

  • 1:1로 직접 연결된 환경에서 쓰이는 연결 지향형 프로토콜입니다.
  • 예전에는 모뎀이나 전화선 통신에서 많이 사용되었고 지금은 DSL, VPN 등에서도 사용됩니다.
    • DSL(Digital Subscriber Line): 기존 전화선을 이용해서 고속 인터넷을 제공하는 기술.
    • VPN(Virtual Private Network): 공용 인터넷망 위에 사설 네트워크처럼 보안 연결을 만들어주는 기술.
  • 이더넷처럼 MAC 주소 기반은 아니지만 프레임 단위로 데이터를 주고받는 기능은 동일합니다.

[3] 🗺️ 네트워크 계층(Network Layer)

데이터를 어느 경로를 통해 어디로 보낼지 결정하는 계층입니다.

🛠 하는 일

네트워크 계층은 데이터를 다른 네트워크로 전송하기 위해 경로를 설정하고 IP 주소를 기준으로 수신지를 식별하는 역할을 합니다. 다시 말해 이 계층은 목적지가 어디인지를 파악하고 데이터를 그곳까지 최적의 경로(Route)로 보내주는 길잡이 역할 합니다.

  • IP 주소 기반의 주소 지정

    • 같은 네트워크 내부에서는 MAC 주소를 사용하지만 서로 다른 네트워크 간 통신에서는 IP 주소로 장치를 식별합니다.
  • 라우팅 기능 수행

    • 여러 네트워크를 거쳐 최적의 경로로 데이터를 전달합니다. 이는 인터넷과 같은 복잡한 망에서 매우 중요한 기능입니다.
  • 패킷 단위 전송

    • 데이터를 작은 조각으로 나눈 패킷 단위로 전송하며 각 패킷이 독립적으로 경로를 찾아갑니다.

📦 전송 단위 - 패킷(Packet)

패킷은 네트워크 간 데이터를 전송하기 위해 나눈 단위로 각각은 독립적으로 전달되며 다른 경로로 이동할 수도 있습니다.

  • 송신자 IP 주소: 데이터를 보내는 장치의 IP 주소입니다.
  • 수신자 IP 주소: 데이터를 받을 장치의 IP 주소입니다.
  • 데이터(Payload): 실제로 전송하고 싶은 내용입니다.
  • 제어 정보: 라우팅이나 우선순위 등 네트워크 전달에 필요한 정보입니다.

🔌 주요 장비

📌 IP(Internet Protocol)

  • IP는 컴퓨터나 장비를 식별하는 논리적 주소 체계입니다.
    • ex. 192.168.0.1 / 10.0.0.1
  • 데이터를 목적지 IP까지 전달하기 위해 라우팅 경로를 설정합니다.
  • IP 주소는 전 세계적으로 고유해야 하며 통신 시 기본 식별자 역할을 합니다.

집 주소 같은 것, 네트워크상에서 어디 있는 지를 나타냅니다.

📌 ARP(Address Resolution Protocol)

  • IP 주소애 해당하는 MAC 주소를 찾아주는 프로토콜입니다.
  • "IP는 알고 있는데 실제로 데이터를 보낼 MAC 주소는 뭐야?"라는 질문에 답해줍니다.

IP가 192.168.0.2인 기기의 물리적 주소(MAC)를 찾아서 데이터 링크 계층에 넘깁니다.

📌 RARP(Reverse ARP)

  • MAC 주소를 기반으로 IP 주소를 알아내는 프로토콜입니다.
    • ARP와 반대 역할.
  • IP 설정이 되어있지 않은 장치가 네트워크를 통해 자신의 IP 주소를 자동으로 할당받을 때 사용합니다.

디스크 없는 얇은 단말기(thin client)가 부팅할 때 서버에서 IP를 받아올 때 사용됩니다.

📌 라우터(Router)

  • 네트워크 계층에서 가장 대표적인 장비입니다.
  • 서로 다른 네트워크끼리 데이터를 전달할 때 사용하는 장비입니다.
  • 라우터는 패킷을 보고 목적지 IP 주소에 따라 다음 경로를 결정합니다.
    • 일종의 네트워크 길잡이.
  • 라우팅 테이블을 참고해 어느 경로가 빠르고 효율적인지를 판단하고 결정합니다.

네트워크 세계의 내비게이션. 목적지까지 어떻게 가야 할지 알려주는 길 안내자입니다.


[4] 🚚 전송 계층(Transport Layer)

데이터를 정확하고 안전하게 목적지까지 전달하는 역할을 담당하는 계층입니다.

🛠 하는 일

  • 종단 간(End-to-End) 통신을 담당하는 계층입니다.
  • 데이터를 세그먼트(Segment) 단위로 나누어 전송하며 수신 측에서 올바르게 도착했는지 확인하는 기능을 수행합니다.
  • 오류가 발생하면 재전송, 순서가 어긋나면 순서 재정렬 등의 기능을 통해 신뢰성 있는 데이터 전송을 보장합니다.
  • 포트 번호(port number)를 사용해 응용 프로그램 간 통신을 구분합니다.
    • 웹 브라우저(HTTP): 포트 80
    • 메일 클라이언트(SMTP): 포트 25

📦 전송 단위 - 세그먼트(Segment)

전송 계층에서는 상위 계층(세션, 표현, 응용)에서 받은 데이터를 세그먼트(Segment)로 나누어 전송합니다.

  1. 송신 포트 번호
  2. 수신 포트 번호
  3. 순서 번호(Sequence Number)
  4. 에러 체크 코드(Checksum)

여러 개의 세그먼트로 쪼개진 데이터는 수신 측에서 다시 조립되어 원래의 형태로 복원됩니다.

🔌 주요 프로토콜

📌 TCP(Transmission Control Protocol)

  • 신뢰성 있는 전송을 제공하는 대표적인 프로토콜입니다.
  • 3-way handshaking 방식으로 연결을 설정합니다.
  • 전송 성공 여부를 확인하고 실패한 경우에는 재전송합니다.
  • ex. 웹 브라우징(HTTP), 이메일(SMTP), 파일 전송(FTP)

📌 UDP(User Datagram Protocol)

  • 신뢰성보다 속도를 중시하는 프로토콜입니다.
  • 연결을 설정하지 않으며 빠르게 데이터를 전송합니다.
  • 순서 보장이나 오류 복구 기능이 없지만 속도가 빠릅니다.
  • ex. 실시간 영상 스트리밍, 온라인 게임, 화상 회의 등.

[5] 💬 세션 계층(Session Layer)

통신하는 두 장치 간의 세션(대화의 시작과 끝)을 관리하는 계층입니다.

🛠 하는 일

세션 계층은 통신을 시작하고 유지하며 종료하는 역할을 합니다.
즉, 네트워크 통신에서 두 장치 또는 두 응용 프로그램 간의 논리적인 연결을 만들어주는 계층입니다.

  • 연결 시작: 통신을 시작할 때 세션을 설정합니다.
  • 연결 유지: 통신 중에는 세션을 유지 및 동기화합니다.
  • 연결 종료: 통신이 끝나면 세션을 정상적으로 종료시킵니다.

또한 세션 도중 오류가 발생하면 재접속하거나 중단된 지점부터 복구할 수 있도록 도와주는 기능도 포함됩니다.

  • 이를 체크포인트(Check Point)라고 하며 긴 데이터 흐름 중 중간 저장 기능처럼 작동합니다.

줌(Zoom)에서 친구와 영상통화를 시작한다고 생각해봅시다.

  • 통화를 시작하면 세션이 설정됩니다.
  • 통화 중 잠깐 끊겼다가도 다시 이어서 대화가 가능한 건 세션이 유지되고 있기 때문입니다.
  • 통화 종료 버튼을 누르면 세션이 종료됩니다.

📦 전송 단위 - 메시지(Message)

  • 세션 계층에서는 응용 계층으로부터 받은 메시지를 그대로 전달하거나 연결 유지 및 동기화와 관련된 메타 정보를 함께 다룹니다.
  • 이 계층에서는 메시지의 흐름과 상태를 조절하는 것이 주된 역할입니다.

🔌 주요 프로토콜

📌 NetBIOS(Network Basic Input/Output System)

  • 마이크로소프트 환경에서 컴퓨터 이름을 기반으로 세션을 설정하고 관리하는 프로토콜입니다.
  • 윈도우 기반의 네트워크 통신에서 자주 사용됩니다.

📌 RPC(Remote Procedure Call)

  • 다른 컴퓨터에 있는 함수를 마치 내 컴퓨터처럼 호출할 수 있도록 세션을 만들어주는 프로토콜입니다.
  • 분산 시스템에서 서버 간 통신을 편리하게 처리할 수 있도록 도와줍니다.

📌 TLS/SSL (보통은 표현 계층에서도 다룸)

  • 보안 연결을 유지하기 위한 프로토콜이며 실제로는 세션 관리 기능도 수행합니다.
  • 클라이언트와 서버 간 암호화된 세션을 설정, 유지, 종료합니다.

[6] 🎨 표현 계층(Presentation Layer)

데이터를 사용자나 시스템이 이해할 수 있는 형태로 변환해주는 계층입니다.

🛠 하는 일

표현 계층은 네트워크 통신에서 데이터의 형식(Format)을 맞추는 역할을 담당합니다.

같은 내용을 주고받더라도 각 시스템의 데이터 처리 방식이 다를 수 있으므로 송수신자가 데이터를 제대로 이해할 수 있도록 중간에서 변환 작업을 수행합니다.

1. 인코딩/디코딩

  • 데이터를 전송할 수 있는 형식으로 바꾸는 과정입니다.
  • ex. 문자를 바이너리(0과 1)로 바꾸기, 이미지 파일 포맷 처리 등

2. 압축/해제

  • 전송하는 데이터를 작게 압축해서 효율적으로 보내고 수신자는 다시 해제합니다.
  • ex. 파일 전송 시 ZIP처럼 용량 줄이기

3. 암호화/복호화

  • 데이터를 안전하게 보내기 위해 암호화하고 받은 쪽은 다시 복호화합니다.
  • ex. HTTPS 통신 중 개인정보 암호화하기

표현 계층은 네트워크에서 주고받는 데이터의 모양과 의미를 다듬고 안전하게 가공해주는 계층입니다.

📦 전송 단위 - 메시지(Message)

표현 계층에서는 데이터를 메시지 단위로 처리하며, 이 메시지를 적절한 형식·보안·크기로 변환합니다.

🔌 주요 프로토콜

📌 TLS/SSL(Transport Layer Security/Secure Sockets Layer)

  • 데이터 암호화를 통해 보안 통신을 보장합니다.
  • HTTP에 SSL을 적용한 것이 HTTPS입니다.
  • 실제 동작은 세션 계층/전송 계층과 연계되지만 표현 계층의 암호화 처리 역할도 포함합니다.

📌 JPEG/PNG/GIF

  • 이미지 데이터를 네트워크로 전송할 수 있도록 인코딩/디코딩 해주는 형식입니다.

📌 MPEG/MP3

  • 영상이나 음성 데이터를 압축해서 전송하고 수신 측에서 해제할 수 있도록 도와주는 포맷입니다.

표현 계층은 이런 포맷과 암호화 기술을 통해 데이터를 네트워크에서 안전하고 효율적으로 주고받을 수 있도록 도와줍니다.


[7] 🌐 응용 계층(Application Layer)

사용자가 네트워크 기능을 직접 활용하는 인터페이스 역할을 하는 계층입니다.

🛠 하는 일

응용 계층은 OSI 7계층의 가장 상위 계층이며 실제 사용자가 웹 브라우저, 이메일, 파일 전송 프로그램 등을 통해 네트워크 서비스를 직접 사용할 수 있게 도와주는 계층입니다.

사용자가 시스템과 직접 소통하는 창구 역할을 하며 아래 계층들이 처리한 모든 데이터 흐름의 출발점이자 도착점이 되는 계층입니다.

1. 사용자 요청 처리

  • 사용자가 웹사이트에 접속하거나 이메일을 보내는 요청 등을 인식하고 처리합니다.

2. 서비스 제공

  • 사용자의 명령을 네트워크 요청으로 변환하고 서버로부터 받은 응답을 사용자에게 보여줄 수 있는 형태로 전달합니다.

3. 응용 계층 프로토콜 작동

  • 웹 통신(HTTP), 파일 전송(FTP), 이메일(SMTP), 도메인 해석(DNS) 등 다양한 프로토콜들이 이 계층에서 동작합니다.

📦 전송 단위 - 메시지(Message)

응용 계층에서는 사용자 관점에서 의미 있는 데이터 단위인 메시지를 주고받습니다. 메시지에는 파일, 텍스트, 이미지, 요청/응답 정보 등이 포함됩니다.

🔌 주요 프로토콜

📌 HTTP(HyperText Transfer Protocol)

  • 웹 페이지를 주고받을 때 사용되는 대표적인 프로토콜입니다.
  • 사용자가 브라우저에 주소(URL)를 입력하면 HTTP 요청을 보내고 서버는 HTML, 이미지 등의 응답을 돌려줍니다.

📌 HTTPS(HTTP Secure)

  • HTTP에 보안 프로토콜인 TLS/SSL을 적용하여 암호화된 웹 통신을 제공합니다.
  • 로그인, 결제 등 민감한 정보 전송에 사용됩니다.

📌 FTP(File Transfer Protocol)

  • 서버와 클라이언트 간에 파일을 업로드하거나 다운로드하는 데 사용되는 프로토콜입니다.
  • 대용량 파일 전송에 자주 사용되며 GUI 기반 FTP 클라이언트도 많이 사용됩니다.

📌 SMTP/POP3/IMAP

  • 이메일 송수신에 사용되는 대표적인 메일 전송 프로토콜입니다.
    • SMTP: 메일 발송
    • POP3: 메일 수신(받은 후 서버에서 삭제함.)
    • IMAP: 메일 수신(서버에 메일을 유지함.)

📌 DNS(Domain Name System)

  • 사용자가 입력한 도메인 주소(ex. google.com)를 실제 통신 가능한 IP 주소로 바꿔주는 서비스입니다.
  • 응용 계층에서 시작되어 하위 계층을 통해 연결이 이루어집니다.
profile
공부합니다.

0개의 댓글