Chapter2.3 이메일과 SMTP
- 인터넷 이메일 시스템 구조
- SMTP(Simple Mail Transfer Protocol)
- MAP(Mail Access Protocol)
- POP3
- IMAP
- HTTP
인터넷 이메일 시스템 구조
- 시스템 구성 요소
- User Agent: 사용자 장치에서 메일 작성, 읽기, 관리 기능 수행
- Mail Server: 다수 사용자들의 메일밗 관리, 메일 송수신 제어
- SMTP: 메일 전송 프로토콜 (=Simple Mail Transfer Protocol)
*메일을 송신만 가능(다운X)
User Agent에서 메일 서버에 전달 -> outgoing message queue에 내가 보낸 메일 전달
-> SMTP를 이용해 목적지에 있는 서버로 전달! (메일의 목적지 주소-Local Part를 보고 전달함)

- 인터넷 이메일 시스템 구조
- 송신자 UA에서 메일 작성 후 메일 서버로 전달
- 송신자 메일 서버의 출력 메세지 큐(outgoing message queue)에 저장
- 수신자 메일 서버로 전송
- 전송 불가시 30분 단위로 재전송 시도, 정해진 기간 동안 전송 불가시 중단 및 송신자에게 통보
- 수신자 메일 서버의 수신자 메일박스(mailbox)에 저장
- 수신자 UA에서 메일 서버의 메일박스의 메일 읽기 및 관리
SMTP(Simple Mail Transfer Protocol)
- 클라이언트-서버 프로토콜
- 클라이언트: 송신 메일 서버/UA
- 서버: 수신 서버 메일/송신 메일 서버
*송신자 메일 서버가 클라이언트 역할을 할 수도 있고,
수신자 메일 서버가 서버 역할 할 수도 있다!
(서버 안에서도 클라이언트-서버 역할이 정해질 수 있음: '클라이언트-서버 동시지원')
- TCP 사용
- 신뢰 전송
- 서버 포트번호: 25
- ASCII 텍스트 프로토콜
- 명령어: ASCII 그래픽문자 + 제어문자
- 메시지(←메일): ASCII 그래픽문자 + 제어문자
*아스키문자가 아닌 메일을 보낼 때는 반드시 아스키문자로 변환을 한 후에 전송하고 있음
- 프로토콜 동작 절차 : 연결 설정과 해제
- 프로토콜 동작 절차 : 메일 전송
- 메시지 포맷
- ASCII (0~127)
0~32: 제어문자
33~126: 그래픽문자
*송신자가 보낸 데이터와 수신자가 해석한 데이터 값이 다를 수 있다.
- MIME(Multipurpose Internet Mail Extension): base-64
: ASCII 코드가 아닌 문자를 MIME을 통해서 ASCII 문자로 바꾸어 전달한다.
- HTTP와 SMTP 비교
- HTTP
- Pull Protocol (가져오기 방식)
- Multimedia 객체 전송
- 1 응답 메시지: 1 웹 객체
- SMTP
- Push Protocol (보내기 방식)
- Text(=ASCII)-only 메시지 전송
- 1 전송 메시지: 멀티-파트 메시지
메일 접속 프로토콜
- UA와 메일 서버 분리
- POP3(Post Office Protocol V3) // 아주 간단
- Download & delete mode or Download & keep mode
- Authorization phase (인증)
- Transaction phase
- List
- Retr
- Dele
- Quit
- IMAP4(Internet Mail Access Protocol V4) // 좀 더 복잡, 기능 다양
- 모든 메시지를 메일 서버에 유지
- 메일 서버에서 폴더로 메시지 관리 기능
- HTTP
- 메일 서버를 웹 서버로 구현
- 웹 브라우저에서 HTTP로 메일 서버 접속 : 메일 송신과 수신
'CS > 네트워크' 카테고리의 다른 글
[컴퓨터네트워크] Chapter3.1~2 트랜스포트 계층 서비스 / 다중화와 역다중화 (0) | 2023.10.25 |
---|---|
[컴퓨터네트워크] Chapter2.4 DNS(Domain Name System) (0) | 2023.10.25 |
[컴퓨터네트워크] Chapter2.2 웹과 HTTP(2): 메시지, 쿠키, 캐시 (0) | 2023.10.25 |
[컴퓨터네트워크] Chapter2.2 웹과 HTTP(1): 동작원리와 지속 비지속 연결 (0) | 2023.10.24 |
[컴퓨터네트워크] Chapter2.1 응용계층원리 (0) | 2023.10.11 |