OSI 7계층
OSI 7계층 모델은 네트워크 통신이 일어나는 과정을 7단계로 나눈 것을 말한다.
통신이 일어나는 과정을 단계별로 파악하기 용이하고, 특정 계층에서 이상이 생겼을 때 다른 계층은 놔두고 문제가 있는 계층만 고쳐서 문제를 해결할 수 있기 때문에 계층을 나누어 네트워크 모델을 정의한다.
1-1) 물리 계층 (Physical Layer)
- 전기적, 기계적, 기능적인 특성을 이용하여 통신 케이블로 데이터를 전송한다.
- 사용되는 통신 단위는 비트(bit)이며, 0또는 1만 나타낼 수 있다.
- 단지 데이터를 전달만 할 뿐 전송하려는, 또는 받으려는 데이터가 무엇인지는 전혀 신경쓰지 않는다.
- 대표적인 장치로 통신 케이블, 리피터, 허브 등이 있다.
1-2) 데이터 링크 계층 (Data Link Layer)
- 물리계층을 통해 송수신되는 정보의 오류와 흐름을 관리하여 안전한 통신의 흐름을 관리하는 역할을 한다.
- 맥 주소(MAC address)를 가지고 통신한다.
헤더의 끝에는 물리주소 정보(MAC address), 트레일러에는 오류 검출 비트를 포함하여 상위 계층으로부터 받은 패킷이 프레임으로 변환되어 물리 계층으로 전송된다. - 대표적인 장비로는 브리지, 스위치 등이 있다.
1-3) 네트워크 계층 (Network Layer)
- 데이터를 목적지까지 가장 안전하고 빠르게 전달하는 기능(라우팅)을 한다.
- 라우터(Router)를 통해 경로를 선택하고, IP 주소를 정하고, 경로에 따라 패킷을 전달한다. 이에 패킷의 구조는 IP 주소를 담고있는 헤더 + 세그먼트(데이터)로 구성된다.
- 대표적인 장비로는 라우터가 있다.
1-4) 전송계층 (Transport Layer)
- 끝단의 사용자들이 신뢰성 있는 데이터를 주고 받을 수 있게 해 주어, 상위 계층들이 데이터 전달의 유효성이나 효율성을 생각하지 않도록 한다.
- 메시지의 오류를 제어하며, 메시지가 클 경우 이를 나눠서(Segmentation) 네트워크 계층으로 전달한다. 그리고 받은 패킷을 재조립해서 상위 계층으로 전달한다.
- 대표적으로 TCP, UDP 프로토콜이 있다. TCP는 연결 지향형 통신을, UDP는 비연결형 통신을 제공한다.
1-5) 세션 계층 (Session Layer)
- 데이터가 통신하기 위한 논리적인 연결을 한다.
- 세션 설정, 유지, 종료, 전송 중단시 복구 등의 기능이 있다.
- TCP/IP 세션을 만들고 없애는 책임을 진다.
1-6) 표현 계층 (Presentation Layer)
- 데이터 표현이 상이한 응용 프로세스의 독립성을 제공하고, 암호화한다.
- 사용자 시스템에서 데이터의 형식상 차이를 다루는 부담을 응용 계층으로 덜어준다.
- 해당 데이터가 텍스트인지, 그림인지, GIF인지, JPG인지의 구분 등의 역할을 한다.
1-7) 응용 계층 (Application Layer)
- 신의 최종 목적지로, 응용 프로그램들이 통신으로 활용하는 계층이다.
- 사용자에게 가장 가까운 계층이며 웹 브라우저, 응용 프로그램을 통해 사용자와 직접적으로 상호작용한다.
- 대표적으로 HTTP, SMTP 등의 프로토콜이 있다.
TCP/IP 계층
네트워크 전송 시 데이터 표준을 정리한 것이 OSI 7계층이었다면, 이 이론을 실제로 사용하는 인터넷 표준이 TCP/IP 4계층이다. OSI 참조 모델을 기반으로 상업적이고 실무적으로 이용될 수 있도록 단순화했다.
1-1) 네트워크 인터페이스 계층 (Network Interface, Network Access)
- OSI 계층의 1,2 계층에 해당된다.
- 물리적으로 데이가 네트워크를 통해 어떻게 전송되는지를 정의한다.
- 에러 검출 기능과 패킷의 프레임화 기능을 수행한다.
1-2) 인터넷 계층 (Internet)
- OSI 계층에서 3계층에 해당된다.
- 네트워크상 최종 목적지까지 정확하게 연결되도록 연결성을 제공한다.
- IP를 이용한 노드간 전송과 라우팅 기능, 즉 어드레싱(addressing), 패키징(packaging), 라우팅(routing) 기능을 제공한다.
- 핵심 프로토콜은 IP, ARP, ICMP, IGMP 등이 있다.
1-3) 전송 계층 (Transport)
- OSI 계층에서 4 계층에 해당된다.
- 통신 노드 간의 연결 제어 및 자료 송수신을 담당한다.
- 어플리케이션 계층의 세션과 데이터그램 통신서비스를 제공한다.
- TCP/UDP가 핵심 프로토콜이다.
1-4) 응용 계층 (Application)
- OSI 계층에서 5, 6, 7 계층에 해당된다.
- 다른 계층의 서비스에 접근할 수 있게 하는 어플리케이션을 제공한다.
- 어플리케이션들이 데이터를 교환하기 위해 사용하는 프로토콜을 정의한다.
- TCP/IP 네트워크를 사용하거나 관리하는 것을 도와주는 프로토콜이다.
Q) 웹 서버 소프트웨어(Apache, Nginx)는 OSI 7계층 중 어디서 작동하는지 설명해보세요.
웹 서버는 HTTP 프로토콜을 사용해 html 데이터를 클라이언트에 제공하는 서버다.
HTTP 프로토콜이란 OSI 7 계층인 application layer에 위치한 프로토콜로서 브라우저(클라이언트)와 서버 사이에 정보를 주고 받기 위한 프로토콜로 사용된다.
Apache, Nginx는 웹 서버 중의 하나이므로 이 또한 Applicaion 계층에서 작동합니다.
Q) 웹 서버 소프트웨어(Apache, Nginx)의 서버 간 라우팅 기능은 OSI 7계층 중 어디서 작동하는지 설명해보세요.
서버 간 라우팅 기능은 네트워크 계층에서 동작한다.
출처
'Computer Science > 네트워크' 카테고리의 다른 글
웹 통신의 흐름 (0) | 2023.03.13 |
---|---|
TCP와 UDP (1) | 2023.03.12 |
REST의 정의와 HTTP 메소드 (0) | 2023.03.10 |
CORS 에러 해결하기 (0) | 2023.03.09 |
HTTP와 HTTPS (0) | 2023.03.09 |