2.2.2.1. POP (Post Office Protocol)
- POP cho phép ngời dùng có Account tại máy chủ th điện tử kết nối vào và lấy th về máy tính của mình, ở đó có thể đọc và trả lời lại. POP đợc phát triển đầu tiên vào năm 1984 và đợc nâng cấp từ bản POP2 lên POP3 vào năm 1988. Và hiện nay hầu hết ngời dùng sử dụng tiêu chuẩn POP3.
- POP3 kết nối trên nền TCP/IP để đến máy chủ th điện tử (sử dụng giao thức TCP cổng mặc định là 110). Ngời dùng điền Username và Password. Sau khi xác thực đầu máy khách sẽ sử dụng các lệnh của POP3 để lấy và xoá th.
- POP3 chỉ là thủ tục để lấy th trên máy chủ th điện tử về MUA, POP3 đợc quy định bởi tiêu chuẩn RFC 1939.
Lệnh của POP3:
Lệnh Miêu tả
User Xác định Username
Pass Xác định Password
Star Yêu cầu về trạng thái của hộp th, số lợng, độ lớn th
List Hiện danh sách của th
Retr Nhận th
Dele Xoá một bức th xác định
Noop Không làm gì cả
Rset Khôi phục lại những th đã xoá (Rollback) Quit Thực hiện việc thay đổi và thoát ra
- Thủ tục POP3 là một thủ tục rất có ích và sử dụng rất đơn giản để lấy th về cho ngời dùng. Nhng sự đơn giản đó cũng đem đến việc thiếu một số công dụng cần thiết.
- IMAP thì hỗ trợ những thiếu sót của POP3, IMAP đợc phát triển vào năm 1986 bởi trờng đại học Stanford. IMAP2 phát triển vào năm 1987. IMAP4 là bản mới nhất đang đợc sử dụng và nó đợc các tổ chức tiêu chuẩn Internet chấp nhận vào năm 1994. IMAP4 đợc quy định bởi tiêu chuẩn RFC 2060 và nó sử dụng cổng 143 của TCP.
- IMAP hỗ trợ hoạt động ở chế độ Online, Offline hoặc Disconnect. IMAP cho phép ngời dùng tập hợp các th từ máy chủ, tìm kiếm và lấy Message cần ngay trên máy chủ, lấy th về MUA mà th không bị xoá trên máy chủ. IMAP cũng cho phép ngời dùng chuyển th từ th mục này của máy chủ sang th mục khác hoặc xoá th. IMAP hỗ trợ rất tốt cho ngời dùng hay phải di chuyển và phải sử dụng các máy tính khác nhau.
Lệnh của IMAP4:
Lệnh Miêu tả
Capability Yêu cầu danh sách các chức năng hỗ trợ Authenticate Xác định sử dụng các thực từ một Server khác
Login Cung cấp Username và Password
Select Chọn hộp th
Examine Điền hộp th chỉ đợc phép đọc
Create Tạo hộp th
Delete Xoá hộp th
Rename Đổi tên hộp th
Subscribe Thêm vào một list đang hoạt động
Unsubscribe Dời khỏi list đang hoạt động
List Danh sách hộp th
Lsub Hiện danh sách ngời sử dụng hộp th
Status Trạng thái của hộp th (số lợng th...)
Append Thêm Message vào hộp th
Check Yêu cầu kiểm tra hộp th
Close Thực hiện xoá và thoát khỏi hộp th
Expunge Thực hiện xoá
Search Tìm kiếm trong hộp th để tìm Message xác định
Fetch Tìm kiếm trong nội dung của Message
Store Thay đổi nội dung của Message
Copy Copy Message sang hộp th khác
Noop Không làm gì
LogOut Đóng kết nối
- So sánh POP3 và IMAP4
Có rất nhiều điểm khác nhau giữa POP3 và IMAP4. Phụ thuộc vào ngời dùng, MTA và sự cần thiết, có thể sử dụng POP3, IMAP4 hoặc cả hai.
Lợi ích của POP3 là: + Rất đơn giản.
Bởi rất đơn giản nên POP3 có rất nhiều giới hạn. Ví dụ nó chỉ hỗ trợ sử dụng một hộp th và th sẽ đợc xoá khỏi máy chủ th điện tử khi lấy về.
IMAP4 có những lợi ích sau: + Hỗ trợ sử dụng nhiều hộp th
+ Đặc biệt hỗ trợ cho các chế độ làm việc Online, Offline, hoặc không kết nối. + Chia sẻ hộp th giữa nhiều ngời dùng
+ Hoạt động hiệu quả cả trên đờng kết nối tốc độ thấp.
2.2.3. Giao thức SMTP
- Việc phát triển các hệ thống th điện tử (Mail System) đòi hỏi phải hình thành các chuẩn chung về th điện tử. Có hai chuẩn về th điện tử quan trọng nhất và đợc sử dụng từ tr- ớc đên nay là X400 và SMTP (Simple Mail Transfer Protocol), SMTP thờng đi kèm với chuẩn POP3. Mục đích chính của X400 là cho phép các E-mail có thể đợc truyền nhận thông qua các loại mạng khác nhau bất chấp cấu hình phần cứng, hệ điều hành mạng, giao thức truyền dẫn đợc dùng. Còn chuẩn SMTP miêu tả cách điều khiển các thông điệp trên mạng Internet. Điều quan trọng của chuẩn SMTP là giả định MTA hoặc MUA gửi th phải dùng giao thức SMTP gửi th điện tử cho một MTA nhận th cũng sử dụng SMTP. Sau đó, MUA sẽ lấy th khi nào họ muốn dùng giao thức POP (Post Office Protocol). Ngày nay POP đợc cải tiến thành POP3 (Post Office Protocol Version3).
- Thủ tục chuẩn trên Internet để nhận và gửi của th điện tử là SMTP (Simple Mail TransPort Protocol). SMTP là thủ tục phát triển ở mức ứng dụng trong mô hình 7 lớp OSI cho phép gửi bức điện trên mạng TCP/IP. SMTP đợc phát triển vào năm 1982 bởi tổ chức IETF (Internet Engineering Task Fonce) và đợc chuẩn hoá theo tiêu chuẩn RFCS 821 và 822. SMTP sử dụng cổng 25 của TCP.
Mail Server POP Server Mail Server POP Server Mail Box MDA MTA Mail Server POP Server Mail Server POP Server Mail Box MDA MTA PC MUA Mail Box PC MUA Mail Box Line POP Line SM TP
- Mặc dù SMTP là thủ tục gửi và nhận th điện tử phổ biến nhất nhng nó vẫn còn thiếu một số đặc điểm quan trong có trong thủ tục X400. Phần yếu nhất của SMTP là thiếu khả năng hỗ trợ cho các bức điện không phải dạng Text.
- Ngoài ra SMTP cũng có kết hợp thêm hai thủ tục khác hỗ trợ cho việc lấy th là POP3 và IMAP4.
IME và SMTP
- MIME (Multipurpose Internet Mail Extensions) cung cấp thêm khả năng cho SMTP và cho phép các file có dạng mã hoá đa phơng tiện (MulTimedia) đi kèm với bức điện SMTP chuẩn.
- SMTP yêu cầu nội dung của th phải ở dạng 7 bit – ASCII. Tất cả các dạng dữ liệu khác phải đợc mã hóa về dạng mã ASCII. Do đó MIME đợc phát triển để hỗ trợ SMTP trong việc mã hóa dữ liệu chuyển về dạng ASCII và ngợc lại.
- Một th khi gửi đi đợc SMTP sử dụng MIME để định dạng lại về dạng ACSII và đồng thời phần Header đợc điền thêm các thông số của định dạng cho phép đầu nhận th có thể định dạng trở lại dạng ban đầu của bức điện.
- MIME là một tiêu chuẩn hỗ trợ bởi hầu hết các ứng dụng hiện nay. MIME đợc quy chuẩn trong các tiêu chuẩn RFC 2045-2094.
Lệnh của SMTP
- SMTP sử dụng một cách đơn giản các câu lệnh ngắn để điều khiển bức điện Bảng danh sách các lệnh của SMTP các lệnh của SMTP đợc xác định trong tiêu chuẩn RFC 821:
Lệnh Mô tả
Hello Hello. Sử dụng để xác định ngời gửi điện. Lệnh này đi kèm với tên của Host gửi điện. Trong ESTMP
(Extended Protocol), thì lệnh này sẽ là EHLO.
Mall Khởi tạo một dao dịch gửi th. Nó kết hợp “From” để xác định ngời gửi th
Rcpt Xác định ngời nhận th
Data Thông báo bắt đầu nội dung thực sự của bức điện. Dữ
liệu đợc mã thành dạng mã 128-bit ASCII và nó đợc kết thúc với một dòng đơn chứa dấu (.)
Mã trạng thái của SMTP
Lệnh Mô tả
Rset Huỷ bỏ giao dịch th
Vrfy Sử dụng để xác thực ngời nhận th
Noop Nó là lệnh “No Operation” xác định không thực hiện hành động gì
Quit Thoát khỏi tiến trình để kết thúc
Send Cho Host nhận biết rằng th còn phải gửi đến đầu cuối khác
- Khi một MTA gửi một lệnh SMTP tới MTA nhận thì MTA nhận sẽ trả lời với một mã trạng thái để cho ngời gửi biết đang có việc gì xảy ra tại đầu nhận. Và dới đây là bảng mã trạng thái của SMTP theo tiêu chuẩn RFC821. Mức độ của trạng thái đợc xác định bởi số đầu tiên của mã (5xx là lỗi nặng, 4xx là lỗi tạm thời, 1xx-3xx là hoạt động bình thờng).
SMTP mở rộng (Extended SMTP)
- SMTP thì đợc cải tiến để ngày càng đáp ứng nhu cầu cao của ngời dùng và là một thủ tục ngày càng có ích. Nhng dù sao cũng co sự mở rộng tiêu chuẩn SMTP, và chuẩn RFC 1869 ra đời để bổ sung cho SMTP. Nó không chỉ mở rộng mà còn thêm các tính năng cần thiết cho các lệnh có sẵn. Ví dụ: lệnh SIZE là lệnh mở rộng cho phép nhận giới hạn độ lớn của bức điện đến. Không có ESMTP thì sẽ không giới hạn đợc độ lớn của bức th.
- Khi hệ thống kết nối với một MTA, nó sẽ sử dụng khởi tạo thì ESMTP thay HELO bằng EHLO. Nếu MTA có hỗ trợ SMTP mở rộng (ESMTP) thì nó sẽ trả lời với một danh sách các lệnh mà nó sẽ hỗ trợ. Nếu không nó sẽ trả lời với mã lệnh sai (500 Command Not Recognized) và Host gửi sẽ quay trở về sử dụng SMTP.
Các lệnh cơ bản của ESMTP
Lệnh Miêu tả
Ehlo Sử dụng ESMTP thay cho HELO của SMTP
8BitMIME Sử dụng 8-bit MIME cho mã dữ liệu
Size Sử dụng giới hạn độ lớn của bức điện
SMTP Headers
- Có thể lấy đợc rất nhiều thông tin có ích bằng cách kiểm tra phần Header của th. Không chỉ xem đợc bức điện từ đầu đến, chủ đề của th, ngày gửi và những ngời nhận. Bạn còn có thể xem đợc những điểm mà bức điện đã đi qua trớc khi đến hộp th của bạn. Tiêu chuẩn RFC 822 quy định Header chứa những gì. Tối thiểu có ngời gửi (From), ngày gửi và ngời nhận (TO, CC, hoặc BCC)
Các u điểm và nhợc điểm của SMTP
Ưu điểm:
+ SMTP rất phổ biến.
+ Nó đợc hỗ trợ bởi nhiều tổ chức.
+ SMTP có giá thành quản trị và duy trì thấp. + SMTP có cấu trúc địa chỉ đơn giản.
Nhợc điểm:
+ SMTP thiếu một số chức bảo mật (SMTP thờng gửi dới dạng Text do đó có thể bị đọc trộm - phải bổ sung thêm các tính năng về mã hóa dữ liệu S/MIME).
+ Hỗ trợ định dạng dữ liệu yếu (phải chuyển sang dạng ASCII – sử dụng MINE).
+ Nó chỉ giới hạn vào những tính năng đơn giản. (Nhng cũng là một u điểm do chỉ giới hạn những tính năng đơn giản nên nó sẽ làm việc hiệu quả và dễ dàng).
2.2.4. Đờng đi của th
- Mỗi một bức th truyền thống phải đi đến các bu cục khác nhau trên đờng đến với ngời dùng. Tơng tự th điện tử cũng chuyển từ máy chủ th điện tử này (Mail Server) tới máy chủ th điện tử khác trên Internet. Khi th đợc chuyển tới đích thì nó đợc chứa tại hộp th điện tử tại máy chủ th điện tử cho đến khi nó đợc nhận bởi ngời nhận. Toàn bộ quá trình xảy ra trong vài phút, do đó nó cho phép nhanh chóng liên lạc với mọi ngời trên toàn thế giới một cách nhanh chóng tại bất cứ thời điểm nào dù ngày hay đêm.
Gửi, nhận và chuyển th
- Để nhận đợc th điện tử thì bạn cần phải có một tài khoản (Account) th điện tử. Nghĩa là bạn phải có một địa chỉ để nhận th. Một trong những thuận lợi hơn với th thông thờng là bạn có thể nhận th điện tử bất cứ ở đâu. Bạn chỉ cần kết nối vào máy chủ th điện tử để lấy th về máy tính của mình.
- Để gửi đợc th bạn cần phải có một kết nối vào Internet và truy nhập vào máy chủ th điện tử để chuyển th đi. Thủ tục tiêu chuẩn đợc sử dụng để gửi th là SMTP (Simple Mail Transfer Protocol). Nó đợc kết hợp với thủ tục POP (Post Office Protocol) và IMAP (Internet Message Access Protocol) để lấy th.
POP3 Server SMTP Local - MTA POP3 Server SMTP Remote-MTA Client Client In te rn et
Gửi th (Send)
- Sau khi khi ngời sử dụng máy tính dùng MUA để viết th và đã ghi rõ địa chỉ của ngời nhận và bấm gửi th thì máy tính sẽ chuyển bức th lên MTA của ngời gửi. Căn cứ vào địa chỉ ngời gửi, máy chủ gửi sẽ chuyển th đên một MTA thích hợp. Giao thức để kết nối từ chơng trình soạn th (MUA) đến máy chủ gửi th (MTA) là SMTP.
Chuyển th (Delivery)
- Nếu máy gửi (Local-MTA) có thể liên lạc đợc với máy nhận (Remote-MTA) thì việc chuyển th sẽ đợc tiến hành. Giao thức đợc sử dụng để vận chuyển th giữa hai máy chủ th điện tử cũng là SMTP. Trớc khi nhận th thì máy nhận sẽ kiểm soát tên ngời nhận có hộp th thuộc máy nhận quản lý hay không. Nếu tên ngời nhận th thuộc máy nhận quản lý thì lá th sẽ đợc nhận lấy và lá th sẽ đợc bỏ vào hộp th của ngời nhận. Trờng hợp nếu máy nhận kiểm soát thấy rằng tên ngời nhận không có hộp th thì máy nhận sẽ khớc từ việc nhận lá th. Trong trờng hợp khớc từ này thì máy gửi sẽ thông báo cho ngời gửi biết là ngời nhận không có hộp th (User Unknown).
Nhận th (Receive)
- Sau khi máy nhận (Remote-MTA) đã nhận lá th và bỏ vào hộp th cho ngời nhận tại máy nhận. MUA sẽ kết nối đên máy nhận để xem th hoặc lấy về để xem. Sau khi xem th xong thì ngời nhận có thể lu trữ (Save), hoặc xoá (Delete), hoặc trả lời (Reply) v.v...Trờng hợp nếu ngời nhận muốn trả lời lại lá th cho ngời gửi thì ngời nhận không cần phải ghi lại địa chỉ vì địa chỉ của ngời gửi đã có sẵn trong lá th và chơng trình th sẽ bỏ địa chỉ đo vào trong bức th trả lời. Giao thức đợc sử dụng để nhận th phổ biển hiện nay là POP3 và IMAP.
Trạm phục vụ th hay còn gọi là máy chủ th điện tử (Mail Server)
- Trên thực tế, trong những cơ quan và các hãng xởng lớn, máy tính của ngời gửi th không trực tiếp gửi đến máy tính của ngời nhận mà thờng qua các máy chủ th điện tử (Máy chủ th điện tử - Mail Server bao hàm kết hợp cả MTA, MDA và hộp th của ng- ời dùng).
Ví dụ: Quá trình gửi th.
Gửi th từ A tới B
- Nh mô hình trên cho thấy, nếu nh một ngời ở máy A gửi tới một ngời ở máy B một lá th thì trớc nhất máy A sẽ gửi đến máy chủ th điện tử X. Khi trạm phục vụ th X sẽ chuyển tiếp cho máy chủ th điện tử Y. Khi trạm phục vụ th Y nhận đợc th từ X thì Y sẽ chuyển th tới máy B là nơi ngời nhận. Trờng hợp máy B bị trục trặc thì máy chủ th Y sẽ gửi th.
- Thông thờng thì máy chủ th điện tử thờng chuyển nhiều th cùng một lúc cho một máy nhận. Nh ví dụ ở trên trạm phục vụ th Y có thể chuyển nhiều th cùng một lúc cho máy B từ nhiều nơi gửi đến.
- Một vài công dụng khác của máy chủ thu là khi ngời sử dụng có chuyện phải nghỉ một thời gian thì ngời sử dụng có thể yêu cầu máy chủ th giữ giùm tất cả những th từ trong thời gian ngời sử dụng vắng mặt hoặc có thể yêu cầu máy chủ th chuyển tất cả các th tới một hộp th khác.
2.3. Cấu trúc của E-mail
- Tơng tự nh việc gửi th bằng bu điện, việc gửi th điện tử cũng cần phải có địa chỉ của nơi ngời gửi và địa chỉ của nơi ngời nhận. Địa chỉ của E-Mail đợc theo cấu trúc nh sau: user-mailbox@domain-part (Hộp-th@vùng quản lý)
- User-Mailbox (hộp th): Là địa chỉ của hộp th ngời nhận trên máy chủ quản lý th. Có thể hiểu nh phần địa chỉ số nhà của th bu điện thông thờng.
- Domain-Part (tên miền): Là khu vực quản lý của ngời nhận trên Internet. Có thể hiểu nó giống nh một thành phố, tên tỉnh và quốc gia nh địa chỉ nhà trên th bu điện thông thờng.
Thí dụ của một dạng địa chỉ thông dụng nhất: ktm-vdc1vdc.com.vn
- Từ phải sang trái, “vn” là hệ thống tên miền của Việt Nam quản lý. “com” là hộp th thơng mại. “VDC” là tên của một máy tính do VDC quản lý. “ktm-vcd1” là tên