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

SunYerim·2023년 5월 4일
0

네트워크

목록 보기
6/18
post-thumbnail

28. 응용 계층의 역할

1. 응용 계층의 역할

  • 애플리케이션은 서비스를 요청하는 측 & 서비스를 제공하는 측으로 나뉨 (클라이언트, 서버)
  • 서버에는 웹 서버 프로그램과 메일 서버 프로그램 등이 있는데 응용 계층에서 동작한다.
  • 응용 계층을 세션 계층과 표현 계층을 포함하는 것으로 간주한다.
  • 응용계층에서는 사용자 측(클라이언트)의 요청을 전달하기 위해 통신 대상이 이해할 수 있는 메시지로 변환하고 전송 계층으로 전달하는 역할.
  • 클라이언트 측 애플리케이션이 서버 측 애플리케이션과 통신하려면 응용 계층의 프로토콜을 사용해야함.
  • 주요 응용 계층 프로토콜
  • 응용 계층은 각각의 애플리케이션에 대응되는 데이터를 전송하는 역할을 함.
  • OSI 모델의 계층에서 사용되는 프로토콜과 기술

29. 웹 서버의 구조 (웹 사이트 접속)

1. www란?

  • www는 줄여서 w3이나 웹이라고도 부름.
  • www는 html, url, http라는 세 가지 기술이 사용됨.
  • HTML: 마크업 언어
    • 하이퍼텍스트를 작성하는 마크업 언어
    • 문자와 이미지를 표시하거나 하이퍼링크를 사용할 수 있음.
    • 하이퍼링크는 보통 링크라고 부름.
    • 이동한 사이트에서는 html 파일이나 이미지 파일이 웹 서버에서 전송됨.
  • 문서와 이미지는 각각 별도로 요청함.

2. HTTP란?

  • 클라이언트(웹 브라우저)는 웹 사이트를 보기 위해 서버(웹 서버 프로그램)의 80번 포트를 사용하여 HTTP 통신을 함.
  • 클라이언트에서 HTTP 요청을 보내고 서버에서 HTTP 응답을 반환함.
  • 클라이언트가 데이터를 요청할 때는 “GET”이라고 하는 요청 정보, 파일 이름, 버전 등을 서버에 전송함.
  • 서버는 응답으로 요청을 정상적으로 처리했다는 “OK”라는 정보를 반환하고 index.html을 클라이언트에게 보냄.
  • 예전의 HTTP/1.0 버전에서는 요청을 보낼 때마다 연결했다 끊는 작업을 반복했음.
  • HTTP/1.1 버전에서는 keepalive라는 기능이 추가됨.
    • 연결을 한 번 수립하면 데이터 교환을 마칠때까지 유지.
    • 데이터 교환을 모두 끝내면 연결을 끊는 구조
    • keepalive는 요청도 순서대로 처리하는 특징이 있음.
  • HTTP/2 버전 : HTTP/1.1 버전의 단점을 보완해서 빠르게 콘텐츠를 표시할 수 있는 프로토콜
  • 1.1 버전에서는 이전 요청을 처리하는 데 시간이 길어지면 다음 요청에 대한 처리가 늦어짐.
    • 그래서 2버전이 출시되었다!
    • HTTP/2 버전: 요청을 보낸 순서대로 응답을 반환하지 않아도 됨. ⇒ 콘텐츠를 빠르게 표시 가능함.

30. DNS 서버의 구조 (이름 해석)

1. 도메인 이름이란?

  • 이름 해석을 통해 도메인 이름을 IP주소로 변환하는 역할을 하는 DNS

  • 컴퓨터(서버)에는 IP주소가 있어서 인터넷을 통해 웹 서버에 접속하여 웹 사이트를 볼 수 있었음.

  • DNS는 URL을 IP 주소로 변환하는 서비스

  • IP 주소가 아닌 http://www.gilbut.co.kr과 같은 주소를 사용하여 접속하도록 돕는 것을 DNS의 이름 해석이라고 함.

    • 해당 URL에 접속하면 DNS 서버가 이 웹 사이트 서버의 IP 주소를 알려주는 것을 이름 해석이라고 함.
  • www.gilbut.co.kr과 같이 컴퓨터나 네트워크를 식별하기 위해 붙여진 이름을 도메인 이름이라고 하고, 도메인 이름 앞에 있는 www는 호스트 이름(서버 이름)이라고 함.

  • 컴퓨터와 DNS 서버 간에 일어나는 IP 주소 교환

  • DNS 서버 간에 일어나는 IP 주소 정보 교환

    • 요청한 첫 번째 DNS 서버가 도메인의 IP 주소를 모르는 경우 ⇒ DNS 서버 1이 DNS 서버 2에 요청함.
  • DNS 서버는 전 세계에 흩어져 있고 모두 계층적으로 연결되어 있음! ⇒ 연계하면서 동작

31. 메일 서버의 구조 (SMTP와 POP3)

1. 메일의 송수신 구조

  • 메일을 송수신하려면 클라이언트 측의 메일 프로그램과 서버 측의 메일 서버 프로그램 간에 통신을 해야 함. 이때 사용되는 프로토콜에는 두 가지 종류가 있음.
  • SMTP: 메일을 보내는 데 사용되는 프로토콜, 포트번호 25번
  • POP3: 메일을 받는 데 사용되는 프로토콜, 포트번호 110번
  • SMTP는 메일 서버 간의 메일 전송에도 이용됨.

2. SMTP에 의한 메일 송신과 메일 전송

3. POP3에 의한 메일 수신

  • 메일 서버에는 메일 박스라고 하는 메일을 보관해 주는 기능이 있음.
  • 메일 서버 2에는 컴퓨터 1의 메일이 도착하면 컴퓨터 2는 메일 서버 2의 메일 박스에 있는 메일을 받아 가야 하지만, 메일을 수신할 때는 사용자 이름과 비밀번호를 이용한 사용자 인증이 필요함.
profile
내 안에 있는 힘을 믿어라.

0개의 댓글