<electronic mail>
[주요 요소]
- user agents
- mail servers
- mail transfer protocol(SMTP)

[user agent]
- mail reader
- 들어오고 나가는 messages들은 server에 저장됨
[mail server]
- mailbox : 들어온 messages 포함
- message queue : 내보낼 messages 저장
- SMTP protocol : server(mail 받는 server)와 client(mail 보내는 server)사이에 message 전달
<SMTP>
- TCP 사용해서 client와 server 사이에 message 전달(port 25)
- command(ACSII) 보내면 server에서 response하는 형태
- message는 7-bit ASCII
- persistent connection
- CRLF.CRLF : message의 끝을 나타냄
[transfer 과정]
- handshaking(greeting)
- transfer message
- closure
1. 메일을 보내면 처음에 mail server에서 message queue에 저장
2. client쪽 SMTP가 TCP connection 열기
3. TCP connection을 통해 message 전달
4. 받는 사람 mail server의 mailbox에 message 저장
[SMTP vs HTTP]
- HTTP는 pull(server의 정보 가져옴) SMTP는 push(message 전송)
- SMTP는 body도 ASCII
<mail message format>

- header : to, from, subject...
- body : message(ASCII)
<mail access protocol>

- POP : Post Office Protocol(허가)
- IMAP : Internet Mail Access Protocol(저장된 messages 다룸)
- HTTP :gmail, yahoo,...
<POP3 protocol>
[authorization phase]

- user : username
- pass : password
- +OK
- -ERR
[transaction phase]

- list : message number
- retr : message 검색
- dele : delete
- quit
- download-and-delete mode : client 바뀌면 다시 mail 읽기 불가능
- download-and-keep mode : client 바뀌면 message copy
- POP3는 session(client 같은 유저의 여러 client)에 대해 stateless
<IMAP>
: session에 대해 state(user)
'Computer > 컴퓨터 네트워크' 카테고리의 다른 글
| 2.5 P2P applications (0) | 2022.04.01 |
|---|---|
| 2.4 DNS (0) | 2022.04.01 |
| 2.2 web & HTTP (0) | 2022.03.31 |
| 2.1 network applications (0) | 2022.03.31 |
| 1.4 protocol layers, service models (0) | 2022.03.21 |