Skip to main content

[Network] Chapter 7. 응용 계층 : 애플리케이션에 데이터 전송하기

모두의 네트워크 책을 읽고 공부한 노트입니다.




응용 계층의 역할 #

  • 응용 계층
    • 애플리케이션과 데이터를 주고받기 위해 서비스를 제공하는 계층이다.
    • 클라이언트의 요청을 서버에 전달하기 위해서, 서버가 이해할 수 있는 데이터로 변환한 후 전송 계층으로 전달하는 역할을 한다.
    • 클라이언트 측 애플리케이션이 서버 측 애플리케이션과 서로 통신하려면 응용 계층의 프로토콜이 필요하다.
      프로토콜 내용
      HTTP 웹 사이트 접속
      DNS 이름 해석
      FTP 파일 전송
      SMTP 파일 수신
      POP3 메일 수신



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

  • HTML(HyperText Markup Language)
    • 웹 페이지에서 문장 구조나 문자를 꾸미는 태그를 사용하여 작성하는 마크업 언어이다.
    • HTML로 작성하면 웹 브라우저로 볼 수 있다.

  • HTTP(HyperText Transfer Protocol)
    • 웹 서비스에서 클라이언트(웹 브라우저)와 웹 서버 간에 정보를 주고받기 위해 사용되는 네트워크 프로토콜이다.
    • 클라이언트(웹 브라우저)는 웹 사이트를 보기 위해서 서버(웹 서버 프로그램)의 80번 포트를 사용해서 HTTP 통신을 한다.
    • 클라이언트가 데이터를 요청할 때는 GET이라고 하는 요청 정보, 파일 이름, 버전 등을 서버에 전송한다. (HTTP 요청)
    • 그러면 서버는 응답으로 요청을 정상적으로 처리했다는 OK라는 정보를 반환하고 html을 보낸다. (HTTP 응답)
  • HTTP 버전
    • HTTP/1.0
      • HTTP 요청을 보내고 HTTP 응답을 받은 후에는 연결을 끊는 작업을 반복했다.
    • HTTP/1.1
      • keepalive 라는 기능이 추가되서 연결을 한 번 수립하면 데이터 교확을 마칠 때까지 유지하였다.
    • HTTP/2.0
      • 요청과 응답을 순서대로 응답하지 않아도 되어서 콘텐츠를 빠르게 표시할 수 있게 되었다.



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

  • DNS(Domain Name System)
    • 사람이 읽을 수 있는 도메인 이름(URL)을 IP 주소로 변환해주는 서비스(시스템)이다.
    • 이것을 이름 해석(name resolution)이라고 한다.
    • 53번 포트를 사용한다.
      DNS
      Image Source
  • DNS 서버는 전 세계에 흩어져 있고 모두 계층적으로 연결되어 있다.
    • 그래서 어떤 DNS 서버가 해당 도메인의 IP 주소를 모르면 다음 DNS 서버에 요청한다.



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

SMTP와 POP3
Image Source

  • SMTP(Simple Mail Transfer Protocol)
    • 이메일을 전송할 때 사용하는 프로토콜이다.
    • 클라이언트가 작성한 메일을 서버로 전송할 때나, 서버 간 메일을 전송할 때 사용한다.
    • 25번 포트를 사용한다.
  • POP3(Post Office Protocol 3)
    • 이메일을 수신할 때 사용하는 프로토콜이다.
    • 이메일 서버에 도착한 메일을 메일 박스(메일 서버에 있는, 메일을 보관하는 곳)에서 클라이언트로 가져올 때 사용한다. 사용자 인증이 필요하다.
    • 110번 포트를 사용한다.

  • ping(Packet INternet Groper) 명령
    • ICMP(Internet Control Message Protocol)라는 프로토콜을 사용해서, 목적지에 ICMP 패킷을 보내고, 패킷에 대한 응답이 제대로 오는지 확인하는 명령이다.
    • 대상 컴퓨터 동작 여부 혹은 네트워크 상태를 파악할 수 있다.
ping 목적지 IP 주소 혹은 목적지 도메인 이름