[모두의 네트워크] 7. 응용 계층 : 애플리케이션에 데이터 전송하기

진예·2023년 12월 19일
0

Network

목록 보기
7/8
post-thumbnail
post-custom-banner

💡 응용 계층 (Application Layer)

OSI 모델 7계층 (최상위) : 애플리케이션에 대한 서비스 제공

  • 클라이언트 (Client) : 서비스를 요청하는 측
  • 서버 (Server) : 서비스를 제공하는 측

애플리케이션사용자가 원하는 일을 할 수 있도록 돕는다.

예를 들어, 사용자가 메일을 전송하기를 원한다면 메일 프로그램을 통해 메일을 보낼 수 있다. 메일 프로그램은 클라이언트 애플리케이션으로 서버 애플리케이션인 메일 서버 프로그램사용자가 작성한 메일을 전달하여 사용자가 원하는 목적지에 메일을 전송한다.

이처럼 클라이언트와 서버가 통신하기 위해서는 응용 계층의 프로토콜을 사용하여 각 애플리케이션에 대응하는 정보를 전달한다.

✔️ 응용 계층 프로토콜

프로토콜내용
HTTP웹 사이트 접속
DNS이름 해석
FTP파일 전송
SMTP메일 송신
POP3메일 수신

📒 웹 서버

WWW (World Wide Web) : 언제 어디서든 필요한 곳에 접근하거나 정보를 공유하고 주고받을 수 있는 멀티미디어 인터넷 서버 = 웹 (Web)


📝 HTML

하이퍼텍스트를 작성하는 마크업 언어

HTML은 태그를 사용하여 웹 페이지의 구조나 문자를 꾸미는 언어이다. HTML은 문자, 이미지, 링크 등을 다루기 때문에 웹 사이트를 통해 해당 요소들을 확인할 수 있다.


📝 HTTP

웹 서비스에서 웹 브라우저(클라이언트)와 웹 서버 간 정보를 주고받기 위해 사용되는 프로토콜 ➡️ 포트 번호 : 80번

  • HTTP 요청 (request) : 클라이언트 측에서 서버 측에 데이터를 요청
  • HTTP 응답 (response) : 서버 측에서 클라이언트 측에 요청 확인 응답

초기의 HTTP/1.0 버전에서는 요청을 넣을 때마다 연결을 수행했는데, HTTP/1.1 버전에서 keepalive 기능이 생겨 한 번 연결을 수행한 후 모든 데이터 전송이 끝나면 연결을 끊게 되었다.

이후 HTTP/2 버전은 클라이언트가 한 번에 여러 개의 요청을 보내고, 서버 측에서는 처리가 먼저 끝난 요청부터 응답을 보내게 되었다.


📒 DNS 서버

DNS : URL ➡️ IP 주소로 변환하는 서비스 = 이름 해석

✔️ URL

Uniform Resource Locator : 인터넷에서 파일 위치를 지정하기 위해 기술된 주소 = 웹 사이트 주소

  • 도메인 이름 : 인터넷에 연결된 컴퓨터를 사람이 쉽게 기억하고 입력할 수 있도록 문자(영문, 한글 등)로 만든 인터넷 주소

  • 호스트 (서버) 이름 : www

우리가 어떤 웹 사이트에 접속할 때, IP 주소를 사용하면 주소들을 식별하기 어려울 것이다. 도메인 이름을 사용하면 사이트 이름을 통해 접속할 수 있으므로 굉장히 편리하다.

하지만 컴퓨터다른 컴퓨터에 접속하기 위해서는 IP 주소가 필요하므로, 클라이언트가 URL을 통해 웹 사이트에 접속하려고 한다면 DNS 서버 측에서 도메인 이름을 IP 주소로 변환하여 전달하면 최종적으로 웹 사이트에 접속할 수 있게 된다.

DNS 서버는 전 세계에 흩어져 있어 각 서버가 연계되어 동작한다. 만약 요청받은 DNS 서버에 도메인 이름에 해당하는 IP 주소가 없다면, 다른 DNS 서버로 주소를 전달하여 IP 주소를 찾을 수 있다.


📒 메일 서버

메일을 송수신하기 위한 프로그램

  • SMTP : 메일을 송신하기 위한 프로토콜 ➡️ 포트 번호 : 25번
  • POP3 : 메일을 수신하기 위한 프로토콜 ➡️ 포트 번호 : 110번

📝 SMTP

일반적으로 메일 서비스를 이용할 때, 각 포털 사이트의 메일 서버를 사용하게 된다. 클라이언트 측에서 메일을 전송하면 SMTP를 통해 해당 메일 서버에 데이터가 전송된다. 이후 최종 목적지에 메일을 전송하기 위해 목적지에서 사용하는 메일 서버에 메일을 보내줘야 한다. 서버 간 데이터를 전송할 때도 SMTP를 사용한다.


📝 POP3

출발지의 메일 서버에서 전송한 데이터를 목적지의 메일 서버에서 전달받으면 해당 서버의 메일 박스데이터를 보관한다. 이후 클라이언트 측에서 해당 메일을 수신하기를 원하면 메일 박스에서 데이터를 꺼내 POP3를 통해 프로그램으로 전달한다. 이 때, 메일의 수신자에 대한 사용자 인증이 필요하다.


✔️ ping 명령

ping 목적지 IP 주소
ping 목적지 호스트 이름

ICMP 프로토콜을 사용하여 목적지 컴퓨터에 ICMP 패킷을 보내 정상적으로 응답이 돌아오는지 확인하는 명령어이다. 응답이 제대로 돌아오면 네트워크 연결이 정상이라는 뜻이다.


✔️ 요약

  • 서비스를 요청하는 측을 클라이언트, 서비스를 제공하는 측을 서버라고 한다.

  • HTML은 문장 구조를 나타내기 위해 태그를 사용하여 작성한다.

  • 웹 브라우저와 웹 서버 간의 통신에서는 HTTP 프로토콜이 사용된다.

  • 일반적으로 웹 서버에서는 80번 포트를 사용한다.

  • 웹 브라우저가 요청을 보내면 웹 서버는 응답을 반환한다.

  • DNS 서버는 도메인 이름과 IP 주소에 대한 대응표를 가지고 있어 문의가 오면 이름 해석을 한다.

  • 메일 송신 프로토콜에는 SMTP가 있고, 25번 포트를 사용한다.

  • 메일 수신 프로토콜에는 POP3가 있고, 110번 포트를 사용한다.


출처 : 모두의 네트워크

profile
백엔드 개발자👩🏻‍💻가 되고 싶다
post-custom-banner

0개의 댓글