2024. 8. 28. 22:16ㆍ[Node.js_6기] 스탠다드반
OSI 모델이란?
네트워크 통신 기능을 7개의 계층으로 나누는 개념적 프레임워크를 '오픈 시스템 상호 연결(OSI) 모델'이라고 한다. 주요 기능에 따라 각 시스템 구성 요소의 운영 계층을 분리할 수 있다. 네트워크 통신 개발을 표준화하기 때문에 사람들이 시스템에 대한 사전 지식이 없어도 매우 복잡한 시스템을 신속하게 이해, 구축 및 분해할 수 있도록 한다. 또한 세부 사항을 추상화하기 때문에 엔지니어가 모델의 모든 측면을 이해할 필요가 없다는 장점이 있다.
*OSI 모델을 사용하는 모든 시스템이 모든 계층을 구현하지는 않는다.
1) 물리 계층
물리적 통신 매체와 해당 매체를 통해 데이터를 전송하는 기술을 말한다. 광섬유 케이블과 같은 물리적 채널을 통해 디지털/전자 신호를 전송하는 것을 예로 들 수 있다. 스마트폰에서 흔히 사용되는 블루투스, NFC 등도 이에 해당된다. 이 계층에서 0과 1의 문자열인 비트 스트림으로 변환하는 작업이 이루어진다.
2) 데이터 링크 계층
네트워크를 통해 물리 계층이 이미 존재하는 두 시스템을 연결하는 데에 사용되는 기술을 말한다. 이더넷, 와이파이 등을 예로 들 수 있다. 데이터의 흐름 제어 및 오류 제어가 주 기능이며, 네트워크 계층으로부터 받아온 패킷을 프레임이라는 더 작은 조각으로 세분화하기도 한다.
3) 네트워크 계층
서로 다른 두 네트워크 간 데이터 전송을 용이하게 하는 역할을 한다. 네트워크 계층에서 데이터가 표적에 도달하기 위해 최적의 물리적 경로를 찾는 것을 '라우팅'이라고 한다. 또한 데이터 링크 계층과 같이 데이터 흐름 제어도 관리할 수 있다. 인터넷 프로토콜 v4(IPv4) 및 IPv6 등을 예로 들 수 있다. 전송 계층의 세그먼트를 패킷이라는 더 작은 단위로 세분화하기도 한다.
4) 전송 계층
데이터 패킷이 손실이나 오류 없이 올바른 순서로 도착하는 것이 주 목적인 계층이다. 이를 위해 연결 속도가 빠른 송신자가 연결 속도가 느린 수신자를 압도하지 않도록 최적의 전송 속도를 제어하는 등, 흐름 제어 및 오류 제어 기능의 역할을 수행하기도 한다. 필요한 경우 데이터 패킷을 원활하게 복구하기도 한다. 전송 제어 프로토콜(TCP) 및 사용자 데이터그램 프로토콜(UDP)을 예로 들 수 있다. 세션 계층에서 가져온 데이터를 세그먼트라고 하는 조각으로 분할하고, 세그먼트를 다시 세션 계층에서 사용할 수 있는 데이터로 재조립하는 일도 이 계층에서 수행된다.
5) 세션 계층
서로 다른 두 애플리케이션 간의 네트워크 조정을 담당하는 계층이다. 통신이 시작될 때부터 종료될 때까지의 시간을 세션이라고 한다. 데이터 전송을 체크포인트와 동기화하기 때문에, 연결이 끊어지거나 충돌이 발생하면 마지막 체크포인트에서 세션을 재개할 수 있다. 네트워크 파일 시스템(NFS)과 서버 메시지 블록(SMB)을 예로 들 수 있다.
6) 프레젠테이션 계층
애플리케이션 계층이 소비할 수 있도록 데이터를 준비(프레젠테이션)하는 계층이다. 애플리케이션에서 전송하고 소비하는 데이터의 변환, 암호화, 압축을 담당한다. 통신하는 장치가 서로 다른 인코딩 방법을 사용할 수도 있으므로, 수신 장치의 애플리케이션 계층이 이해할 수 있는 구문으로 수신 데이터를 변환하기도 한다. 또한 세션 계층으로 데이터를 전송하기 전에 압축하여 데이터의 양을 최소화함으로써 통신의 속도와 효율을 높이는 데에 기여하기도 한다. HTML과 JSON, CSV는 모두 이 계층의 데이터 구조를 설명하는 모델링 언어이다.
7) 애플리케이션(응용 프로그램) 계층
사용자의 데이터와 직접 상호 작용하는 유일한 계층이다. 소프트웨어가 사용자에게 의미 있는 데이터를 제공하기 위해 의존하는 프로토콜과 데이터를 조작하는 역할을 한다. HTTP, SMTP 등을 예로 들 수 있다.
[ 참고 자료 ]
https://aws.amazon.com/ko/what-is/osi-model/
https://www.cloudflare.com/ko-kr/learning/ddos/glossary/open-systems-interconnection-model-osi/
'[Node.js_6기] 스탠다드반' 카테고리의 다른 글
OSI 7계층 자세히 알아보기 - 전송 계층 (2) | 2024.09.23 |
---|---|
OSI 7계층 자세히 알아보기 - 네트워크 계층 (1) | 2024.09.09 |
OSI 7계층 자세히 알아보기 - 데이터 링크 계층 (0) | 2024.09.04 |
OSI 7계층 자세히 알아보기 - 물리계층 (0) | 2024.09.02 |
서버와 클라이언트 기본 개념 알아보기 (0) | 2024.08.27 |