[네트워크] #8 전자 메일 (SMTP, 메일 전송 프로토콜)

2023. 10. 17. 21:46·전공/네트워크
728x90
반응형

목차

  1. 전자메일
  2. 시나리오
  3. 메일 전송 프로토콜

1. 전자메일

세 가지 주요 구성 요소

  • user agents
  • 메일 서버
  • 단순 메일 전송 프로토콜: SMTP

 

user agent

  • ‘메일 판독기’
  • 작성, 편집, 메일 메시지 읽기
  • 예: 아웃룩, 아이폰 메일 클라이언트
  • 서버에 저장된 발신, 수신 메시지

 

mail servers

  • 메일박스에 사용자에 대한 수신 메시지가 들어 있음
  • 발신(보낼) 메일 메시지의 메시지 대기열
  • 전자 메일 메시지를 보내기 위한 메일 서버 간 SMTP 프로토콜

 

SMTP

단순 메일 전송 프로토콜

- TCP를 사용하여 포트 25를 통해 클라이언트에서 서버로 이메일 메시지를 안정적으로 전송

 

직접 전송: 송신 서버에서 수신 서버로

 

전송 3상

  • handshake
  • 메시지 전송
  • Closure

 

요구/응답 상호작용(HTTP 등)

  • 요구: ASCII 텍스트
  • 응답: 상태 코드 및 구문

 


2. 시나리오

앨리스가 밥에게 메시지를 보냄

SMTP는 한 호스트에서 다른 호스트로 전자 메일을 푸시하도록 설계되었음

 

그러나 일반적으로 발신인의 사용자 에이전트는 수신인의 메일 서버와 직접 대화하지 않음

 

왜 두 단계의 절차를 밟을까?

앨리스가 먼저 자신의 메일 서버에 전자 메일을 푸시 함으로써 앨리스의 메일 서버는 밥의 메일 서버가 켜셔 있을 때까지 밥의 메일 서버에 메시지를 반복적으로 전송할 수 있음

 

하지만 아직 한 가지 미해결 과제가 남아 있음

밥은 메일 서버로부터 어떻게 메일을 받을 수 있을까?

SMTP는 푸시 프로토콜에 불과


3. Mail access protocols

밥의 메일 서버에서 로컬 PC로 메시지를 전송하는 특별한 메일 액세스 프로토콜이 있음

  • 우체국 프로토콜 - 버전 3 (POP3)
  • 인터넷 메일 액세스 프로토콜 (IMAP)

 

728x90
반응형

'전공 > 네트워크' 카테고리의 다른 글

[네트워크] #10 전송 계층 서비스, 다중화&역다중화  (1) 2023.10.19
[네트워크] #9 소켓 프로그래밍 (TCP, UDP)  (0) 2023.10.17
[네트워크] #7 웹과 HTTP, 웹 캐시 (프록시 서버)  (2) 2023.10.17
[네트워크] #6 네트워크 응용 원칙 (애플리케이션 아키텍쳐, 응용 계층 프로토콜)  (0) 2023.10.17
[네트워크] #5 성능 (손실, 지연, 처리량)  (0) 2023.10.17
'전공/네트워크' 카테고리의 다른 글
  • [네트워크] #10 전송 계층 서비스, 다중화&역다중화
  • [네트워크] #9 소켓 프로그래밍 (TCP, UDP)
  • [네트워크] #7 웹과 HTTP, 웹 캐시 (프록시 서버)
  • [네트워크] #6 네트워크 응용 원칙 (애플리케이션 아키텍쳐, 응용 계층 프로토콜)
dev_ares
dev_ares
대학에서 컴퓨터공학을 전공하고 있는 학생입니다.
    반응형
    250x250
  • dev_ares
    노트
    dev_ares
  • 전체
    오늘
    어제
    • 분류 전체보기 (187)
      • IT 트랜드 (2)
      • 백엔드 (18)
        • Java + Spring (8)
        • Kotlin + Spring (5)
        • 백엔드 (5)
      • 프론트엔드 (1)
        • React (1)
      • 대외활동 (17)
        • 42서울 (17)
      • 백준 (6)
        • Java (2)
        • C++ (3)
      • 전공 (121)
        • 객체지향프로그래밍 (17)
        • 자료구조 (23)
        • 리눅스시스템관리 (16)
        • 컴퓨터구조 (25)
        • 네트워크 (25)
        • 데이터베이스 (15)
        • 기타 전공 (0)
      • 프로그래밍 언어 (18)
        • Java (5)
        • Swift (4)
        • C++ (1)
        • Kotlin (8)
      • 기타 (4)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    C++
    명령어
    컴공 포트폴리오
    메모리 계층 구조
    코틀린
    사설 문제
    42서울
    티스토리챌린지
    컴퓨터구조
    자료구조
    자바
    반복자
    리눅스
    컴퓨터 구조 및 설계
    단일 사이클
    추가 문제
    백준
    데이터패스
    상속
    오블완
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
dev_ares
[네트워크] #8 전자 메일 (SMTP, 메일 전송 프로토콜)
상단으로

티스토리툴바