오늘은 5계층 세션 계층, 6계층 표현 계층, 7계층 응용 계층에 대해 살펴보겠습니다.
OSI(Open Systems Interconnection) 7계층 모델은 네트워크 통신의 기능을 7개의 계층으로 나눠서 설명하는 모델로, 각각의 계층은 특정 역할을 담당하고 있습니다. 이 모델은 네트워크 통신 프로토콜의 이해를 돕고, 시스템 간의 상호 연결을 표준화하는 데 목적이 있습니다. 아래에서는
세션 계층은 통신 세션(Session)을 설정, 관리 및 종료하는 역할을 합니다. 두 장치 간의 연결이 이루어진 후, 세션 계층은 연결을 유지하며 데이터를 주고받을 수 있도록 제어하고, 세션 간 동기화 및 오류 검출 기능을 제공합니다.
세션 설정, 유지 및 종료
데이터 교환 동기화 (Checkpoints 설정)
통신 중 오류 발생 시 세션 복구
화상 통화에서 일어나는 여러 개의 데이터 흐름(오디오, 비디오)의 동기화를 세션 계층에서 관리합니다.
NetBIOS(Network Basic Input/Output System) 프로토콜도 세션 계층에서 동작하며, 컴퓨터 간의 통신을 설정하고 관리합니다.
표현 계층은 데이터의 형식(Format) 및 표현 방식(Encoding)을 처리하는 계층입니다. 데이터가 수신될 때, 이 계층은 데이터의 인코딩 및 암호화를 해제하거나, 전송할 때 데이터의 형식을 표준화하여 전송을 쉽게 만듭니다. 즉, 응용 계층과 하위 계층 간의 데이터 번역자 역할을 합니다.
데이터 인코딩/디코딩
데이터 암호화/복호화
데이터 압축/해제압축
웹 브라우저에서 이미지 파일(.jpg, .png 등)을 다운로드할 때, 표현 계층에서 이 파일을 인식 가능한 이미지 포맷으로 변환합니다.
TLS/SSL 프로토콜도 표현 계층에 해당하며, 데이터를 암호화하여 전송할 때 사용됩니다.
응용 계층은 사용자와 직접 상호작용하는 계층으로, 응용 프로그램(예: 웹 브라우저, 이메일 클라이언트)이 네트워크에 접근하고 데이터를 주고받는 역할을 합니다. 이 계층은 네트워크 서비스에 대한 사용자 인터페이스를 제공하며, 사용자가 네트워크와 직접 소통할 수 있도록 도와줍니다.
사용자 인터페이스 제공
네트워크 자원에 접근
데이터 전송에 필요한 다양한 프로토콜 제공
HTTP/HTTPS: 웹 브라우저와 서버 간의 데이터 전송을 위한 프로토콜입니다. HTTP는 비암호화된 형태로 데이터를 전송하고, HTTPS는 SSL/TLS를 사용해 암호화된 데이터를 전송합니다.
SMTP(Simple Mail Transfer Protocol): 이메일 전송을 위한 프로토콜로, 이메일 서버 간의 메일 교환에 사용됩니다.
FTP(File Transfer Protocol): 파일을 전송하고 받을 수 있도록 도와주는 프로토콜입니다.
TCP/IP 스택은 인터넷 통신에서 사용되는 표준 프로토콜 스택으로, OSI 7계층 모델과 비슷하지만 4계층으로 구성됩니다. 여기서 응용 계층(Application Layer)은 OSI 모델의 응용 계층(7계층), 표현 계층(6계층), 세션 계층(5계층)의 기능을 모두 포함하고 있습니다.
HTTP(Hypertext Transfer Protocol)는 응용 계층(Application Layer)에서 사용하는 대표적인 프로토콜입니다. 웹 브라우저와 웹 서버 간의 데이터 통신을 담당하며, 사용자가 웹 페이지에 접근할 때 요청(Request)과 응답(Response)을 주고받는 데 사용됩니다.
특징
요청/응답(Request/Response) 구조: 클라이언트(브라우저)가 서버에 요청을 보내면, 서버가 이에 대한 응답을 돌려줍니다.
무상태 프로토콜(Stateless): 서버는 각 요청에 대한 상태를 유지하지 않습니다. 즉, 사용자가 어떤 페이지를 방문했는지에 대한 정보를 저장하지 않습니다.
사용자가 웹 브라우저에 http://example.com을 입력하면, 브라우저는 HTTP 요청을 생성하여 서버에 보내고, 서버는 HTML 페이지의 데이터를 응답합니다.
DNS는 도메인 이름(예: www.google.com)을 IP 주소(예: 142.250.196.142)로 변환해주는 응용 계층 프로토콜입니다. 웹사이트를 방문할 때 사용자는 기억하기 쉬운 도메인 이름을 입력하지만, 네트워크는 숫자 형식의 IP 주소로 통신합니다. 이때 DNS가 사용자의 도메인 이름을 해당 IP 주소로 변환하여 웹사이트에 접근할 수 있도록 도와줍니다.
도메인 이름을 IP 주소로 변환
사용자가 입력한 도메인 이름에 대한 IP 주소를 빠르게 찾을 수 있도록 캐싱(Cache) 기능 제공
사용자가 www.google.com을 입력하면, DNS 서버가 해당 도메인의 IP 주소를 찾아 반환하여 사용자가 구글의 웹사이트에 접근할 수 있도록 도와줍니다.