POP คืออะไร
Post Office Protocol หรือ POP คือ ? จริงๆแล้วก็คือ protocol ชนิดนึงทำงานในระดับ application layer (OSI layer) ใช้งานโดย email client เพื่อทำหน้าที่ดึงข้อมูล email จาก mail server ผ่านทาง TCP/IP connection ซึ่ง POP ถูกพัฒนาขึ้นมาหลาย version ปัจจุบันเป็น version3 หรือ POP3 เป็นมาตราฐานล่าสุด แต่ปัจจุบันใกล้จะโดนยกเลิกแล้ว เพราะการมาแทนที่โดย IMAP เช่นเดียวกับ webmail
ประวัติของ POP
- POP1 ถูกบันทึกไว้เมื่อปี 1984
- POP2 ถูกบันทึกไว้เมื่อปี 1985
- POP3 ถูกบันทึกไว้เมื่อปี 1988 ถูกใช้งานอย่างแพร่หลาย ซึ่งปัจจุบันก็กำลังถูกยกเลิกใช้งานแล้ว
- POP4 เกิดขึ้นโดยที่ยังเป็นเพียงแค่ในเอกสาร และก็ไม่มีการพัฒนามาตั้งแต่ 2003
การทำงของ POP3
สำหรับทำงานของ POP คือ ทำงานบน TCP protocol และใช้ default port 110 ในการติดต่อกับ mail server โดยการทำงานมีอยู่ 3 ขั้นตอน คือ
1. POP3 Authorization State
เริ่มต้น session กับทาง server ที่ Listen port 110 โดย authorization state เริ่มต้อนเมื่อ client สร้าง connection มายัง server เพื่อ greeting โดย client ต้องส่ง USER command และ PASS command มาเพื่อยืนยันตัวตร และทาง server ก็จะต้อบกลับด้วย “+OK”
Server: <wait for connection on TCP port 110>
Client: <open connection>
Server: +OK dewey POP3 server ready
Client: USER mrose
Server: +OK mrose
Client: PASS secret
Server: +OK mrose's maildrop has 2 messages (320 octets)
2. POP3 Transaction State
Transaction state ประกอบไปด้วย ฝั่ง client ส่ง command บางอย่าง เพื่อรอทาง server ตอบกลับ โดย command ที่ว่าจะเป็นข้อมูลที่เกี่ยวกับข้อมูล mail ที่อยู่บน sever
Client: STAT
Server: +OK 2 320
Client: LIST
Server: +OK 2 messages (320 octets)
Server: 1 120
Server: 2 200
Server: .
Client: RETR 1
Server: +OK 120 octets
Server: < the POP3 server sends message 1 >
Server: .
Client: DELE 1
Server: +OK message 1 deleted
Client: RETR 2
Server: +OK 200 octets
Server: < the POP3 server sends message 2 >
Server: .
Client: DELE 2
Server: +OK message 2 deleted
Client: QUIT
3. POP3 Update State
ส่วน state สุดท้าย ฝั่ง server จะทำการลบข้อมูลที่ mark ไว้ และทำการคือ resources ที่ทาง client จอง และปิด connection
ตัวอย่าง POP3
S: <wait for connection on TCP port 110>
C: <open connection>
S: +OK POP3 server ready <1896.697170952@dbc.mtview.ca.us>
C: APOP mrose c4c9334bac560ecc979e58001b3e22fb
S: +OK mrose's maildrop has 2 messages (320 octets)
C: STAT
S: +OK 2 320
C: LIST
S: +OK 2 messages (320 octets)
S: 1 120
S: 2 200
S: .
C: RETR 1
S: +OK 120 octets
S: <the POP3 server sends message 1>
S: .
C: DELE 1
S: +OK message 1 deleted
C: RETR 2
S: +OK 200 octets
S: <the POP3 server sends message 2>
S: .
C: DELE 2
S: +OK message 2 deleted
C: QUIT
S: +OK dewey POP3 server signing off (maildrop empty)
C: <close connection>
S: <wait for next connection>
Author: Suphakit Annoppornchai
Credit: https://saixiii.com, https://en.wikipedia.org