OSI 7 layer
1. 개요
OSI(Open Systems Interconnection) 모델은 국제표준화기구(ISO)에서 네트워크 통신을 체계적으로 설명하기 위해 제정한 표준 참조 모델. 목적은 네트워크 프로토콜을 층(layer) 단위로 나누어 각 층에서 수행해야 하는 기능과 역할을 명시함으로써, 네트워크 개발과 설계, 트러블슈팅(문제 해결) 등을 쉽게 할 수 있도록 돕는 것입니다. 이 계층 구조를 채택하면, 특정 계층에 수정이 필요할 때 하위 혹은 상위 계층에 미치는 영향을 최소화하면서 독립적으로 변경·개선할 수 있습니다.
OSI 모델은 이론적으로 매우 완벽한 구조를 제공하지만, 실무에서는 전 세계적으로 TCP/IP 모델이 사실상 표준으로 자리 잡았습니다.
2. 각 계층의 역할과 특징
2.1. 물리 계층(링크 계층)
데이터(비트)를 전기적 신호 또는 광학적 신호 등으로 변환하여 물리 매체(케이블, 무선 등)를 통해 전송.
물리 계층은 ‘신호 레벨의 전송’을 담당하므로, 이 계층에서는 데이터가 실제로 ‘0과 1’의 형태로 전송되는 방식 자체를 규정한다.
2.2. 데이터 링크 계층(링크 계층)
MAC 주소 기반으로 네트워크 상의 장치들을 식별.
스위치는 이 계층에서 동작하며, 수신한 프레임의 MAC 주소를 확인하여 MAC 주소 테이블 기반으로 프레임을 전달
2.3. 네트워크 계층(인터넷 계층)
네트워크 계층에서 가장 중요한 프로토콜은 **IP(Internet Protocol)**이다. IP는 전 세계적으로 인터넷을 가능케 하는 핵심 프로토콜로, 각 호스트(컴퓨터, 장비)에 고유한 IP 주소를 할당하고, 패킷을 목적지 IP 주소로 전달한다.
라우터는 이 계층에서 동작하며, 라우팅 테이블을 참조하여 패킷을 어느 인터페이스(Port)로 전달할지 결정한다.
네트워크 계층은 종단 간 연결보다는, “이번 홉(next hop)을 어디로 보낼까?”를 결정하고 패킷을 전달하는 데 집중한다.
2.4. 전송 계층(전송 계층)
TCP는 연결 지향적(Connection-oriented) 프로토콜로, 3-way handshake를 통해 연결을 맺고, 데이터가 유실되면 재전송하며, 패킷이 올바른 순서로 도착하도록 정렬하는 등 신뢰성 있는 전송을 보장한다.
UDP는 비연결성(Connectionless) 프로토콜로, 데이터그램 단위로 빠르게 전송하지만, 중간에 손실이 생겨도 재전송을 하지 않는다(주로 실시간 스트리밍이나 VoIP 등에 쓰임).
전송 계층에서는 **포트(Port)**라는 개념을 통해 애플리케이션(프로세스)을 구분한다. 예를 들어 HTTP는 포트 80, HTTPS는 포트 443, SSH는 포트 22 등의 방식이다.
2.5. 세션 계층(애플리케이션 계층)
세션 계층은 양 끝단(End-to-End)의 애플리케이션 간 대화가 ‘지속’될 수 있도록 세션을 유지한다.
예를 들어 대용량 파일을 전송 중 일시적으로 연결이 끊겨도, 세션 계층에서 관리하는 체크포인트나 동기화 지점을 이용해 특정 위치에서 재전송을 재개할 수 있도록 도와줄 수 있다(이론상).
2.6. 프레젠테이션 계층(애플리케이션 계층)
데이터의 표현 형식(Format) 변환, 인코딩/디코딩, 암호화/복호화, 압축/해제 등을 담당.
서로 다른 시스템 간에 데이터 교환 시, 문자 인코딩이나 바이너리 형식이 다를 수 있는데, 프레젠테이션 계층에서 이를 통일된 형식으로 변환해 준다.
암호화/복호화 기능을 수행함으로써 데이터 보안을 높일 수 있으며, 이는 결국 사용자 애플리케이션이 올바르게 데이터를 이해할 수 있도록 돕는다.
실제 구현에서 TCP/IP 스택 상에서는 종종 애플리케이션 계층과 통합되어 논의된다. 예컨대 웹 브라우저가 SSL/TLS를 자체적으로 구현해 HTTPS로 암호화/복호화하는 사례가 대표적이다.
2.7. 애플리케이션 계층(애플리케이션 계층)
사용자가 실제로 접하게 되는 애플리케이션 서비스(예: 웹, 이메일, 파일 전송, 원격 로그인 등).
3. OSI vs TCP/IP
OSI 모델
국제표준화기구(ISO)에서 네트워크 표준화를 위해 만든 이론적 참조 모델이다.
각 계층별 역할을 엄격하게 정의하였고, 7계층 구조로 나누어 통신 과정을 단계별로 설명한다.
개발 목적: 서로 다른 시스템 간 상호 운용성(Interoperability) 확보, 모듈화된 계층 구조 설계.
TCP/IP 모델
실제 동작하는 프로토콜 스택에 가깝다.
실용적인 목적(인터넷 통신 실현)으로 탄생했고, 인터넷 보급과 함께 가장 널리 사용되는 표준 프로토콜이 되었다.
Last updated