백엔드/네트워크

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

박지환 2022. 12. 11. 14:10

7장 응용 계층 : 애플리케이션에 데이터 전송하기

28. 응용 계층의 역할

  • 애플리케이션
    • 클라이언트: 서비스를 요청하는 측
    • 서버: 서비스를 제공하는 측
  • 응용계층: 클라이언트의 요청을 전달하기 위해 통신 대상이 이해할 수 있는 메시지로 변환하고, 전송 계층으로 전달하는 역할을 하는 계층
    • 클라이언트에서 사용하는 애플리케이션과 서버에서 사용하는 서버 프로그램 간의 통신은 응용 계층의 프로토콜을 사용함
  • 응용 계층의 프로토콜
    • HTTP: 웹 사이트 접속
    • DNS: 이름 해석
    • FTP: 파일 전송
    • SMTP: 메일 송신
    • POP3: 메일 수신
  • OSI 모델의 계층에서 사용되는 프로토콜과 기술

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

  • WWW (W3): 웹
    • HTML: 웹 페이지를 보여주는 태그 기반 하이퍼텍스트 마크업 언어
    • HTTP: 웹 사이트를 보기 위해 클라이언트(웹 브라우저)와 서버(웹 서버 프로그램)이 통신하는 프로토콜
      • 일반적으로 80번 포트를 통해 웹 브라우저와 웹 서버 프로그램은 HTTP 통신을 수행함
      • 클라이언트에서 HTTP 요청(request)를 보내고, 서버에서 HTTP 응답(response)를 반환함
      • HTTP/1.0 버전: 요청을 보낼 때마다 연결했다 끊는 작업을 수행함
      • HTTP/1.1 버전: keepalive 기능 추가, 요청을 보낸 순서대로 처리함
        • keepalive : 데이터를 교환하는 동안에는 연결을 유지하고, 데이터 교환이 끝나면 연결을 끊는 방식
      • HTTP/2.0 버전: 요청을 보낸 순서대로 응답 반환하지 않아도 됨
    • URL (Uniform Resource Locator)

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

  • DNS: URL을 IP주소로 변환하는 서비스(시스템)
    • 이름 해석(name resolution): 도메인 이름을 입력하면 DNS 서버가 해당 URL의 웹 사이트 서버의 IP 주소를 알려줌
    • ex) www.gilbut.co.kr → 222.235.64.222
      • gilbut.co.kr: 도메인 이름
      • www: 호스트 이름(서버 이름)
    • DNS 서버는 전세계에 계층적으로 연계하며 동작함
      • 요청받은 DNS 서버가 해당 도메인 이름의 IP 주소를 모르는 경우에는 다른 DNS 서버에 질의함

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

  • 메일 송수신 프로토콜
    • SMTP: 메일 송신 프로토콜, 25번 포트 사용
      • 컴퓨터 1는 메일 서버 1에게 메일 전송 (컴퓨터 1 → 메일 서버 1)
        1. 세션 시작 통지
        2. 송신자의 메일 주소 통지
        3. 목적지 메일 주소 통지
        4. 메일 본문 전송 통지
        5. 메일 본문 송신
        6. 세션 종료 통지
      • 메일 서버 1는 메일 서버 2에게 메일 전송 (메일 서버 1 → 메일 서버 2)
    • POP3: 메일 수신 프로토콜, 110번 포트 사용
      • 메일 서버 2는 POP3를 사용하여 메일 서버 2의 메일 박스에서 메일을 가져와서 컴퓨터 2로 전송 (메일 서버 2 → 컴퓨터 2)
        • 메일 박스: 메일 서버에 존재하는 메일 보관 장소
        1. 세션 시작 통지
        2. 수신자의 사용자 이름 통지
        3. 수신자의 비밀번호 통지
        4. 메일 확인
        5. 메일의 전송 요청
        6. 세션 종료 통지

추가: PING

  • ping 명령: 목적지 컴퓨터와의 통신을 확인하기 위해 사용하는 명령
    • ICMP(internet Control Message Protocol)라는 프로토콜을 사용하여 목적지 컴퓨터에 ICMP 패킷을 전송하고 패킷에 대한 응답이 제대로 오는지 확인하는 멍령

용어 정리

  • 응용 계층(application layer, 애플리케이션 계층) : OSI 모델의 최상위 계층으로 다양하게 존재하는 응용 환경에서 공통적으로 필요한 기능을 다룸. 시스템 간의 응용 처리는 상호 간에 통신하면서 일련의 업무를 처리할 수 있도록 필요한 서비스 기능을 제공함. 이메일, 파일 전송, 웹 사이트 조회 등 애플리케이션에 대한 서비스를 제공하는 계층
  • WWW(World Wide Web, 월드 와이드 웹) : 거대한 통신망인 인터넷은 수많은 사이트, 데이터, 정보를 갖고 있으며, 통신 회선이 거미물처럼 서로 연결되어 있어서 언제 어디서든 필요한 곳에 접근하거나 정보를 공유하고 주고받을 수 있는 멀티미디어 인터넷 서버
  • HTTP(HyperText Transfer Protocol) : 웹 서비스에서 클라이언트(웹 브라우저)와 웹 서버 간에 정보를 주고받기 위해 사용되는 네트워크 프로토콜
  • DNS(Domain Name System, 도메인 이름 시스템) : 네트워크에서 호스트 이름을 IP 주소로 변환하는 데 사용하는 시스템(서비스). DNS 서비스가 동작하는 컴퓨터(서버)를 DNS 서버라고 함
  • FTP(File Transfer Protocol, 파일 전송 프로토콜) : 서버와 클라이언트 간에 파일을 전송하기 위한 프로토콜. 일반적으로 통신 포트는 제어 용도로는 21번 사용, 데이터 전송 용도로는 20번 포트 사용
  • SMTP(Simple Mail Transfer Protocol, 단순 메일 전달 프로토콜) : 인터넷에서 메일을 송신하는 데 사용하는 프로토콜. 통신 포트는 일반적으로 25번을 사용. SMTP를 지원하는 서버를 SMTP 서버라고 함
  • POP3 : 인터넷에서 메일을 수신하는 데 사용하는 프로토콜. 통신 포트는 일반적으로 110번 사용. POP3를 지원하는 서버를 POP3 서버라고 함
  • HTML(HyperText Markup Language) : 인터넷 서비스의 하나인 WWW를 통해 볼 수 있는 문서를 만들 때 사용하는 프로그래밍 언어. 하이퍼텍스트를 작성하기 위해 개발됨
  • URL(Uniform Resource Locator) : 인터넷에서 파일 위치를 지정하기 위해 기술된 주소. 웹 사이트 주소를 지정하기 위해 사용함

 

Reference: http://www.yes24.com/Product/Goods/61794014

 

모두의 네트워크 - YES24

네트워크를 전혀 몰라도 괜찮다!초보자와 비전공자를 위한 가장 쉬운 네트워크 입문서[모두의 네트워크]는 이제 막 네트워크를 공부하기 시작했거나 공부해야겠다고 마음먹은 초급자를 대상으

www.yes24.com