Tài liệu Mạng máy tính - Chương VIII: Lớp ứng dụng: TRƯỜNG CAO ĐẲNG CNTT HỮU NGHỊ VIỆT HÀNCHƯƠNG VIIILỚP ỨNG DỤNG Giới thiệuCác lớp bên dưới có khả năng cung cấp dịch vụ vận chuyển dữ liệu cho lớp ứng dụng nhưng chúng không thực sự giao tiếp với người sử dụng. Dĩ nhiên, trong lớp ứng dụng cũng cần có các giao thức hỗ trợ để cho phép các ứng dụng thực hiện được các chức năng của mình. Trong chương này chúng ta sẽ nghiên cứu các ứng dụng thực sự giao tiếp với người sử dụng 8.1 Hệ thống tên miền DNSVề nguyên tắc, các ứng dụng trên mạng có thể gửi dữ liệu đến các máy chủ, hộp thư và các tài nguyên khác theo địa chỉ mạng tương ứng của chúng. Tuy nhiên, các địa chỉ này thường rất khó nhớ, vì vậy người ta sử dụng ký tự chữ cái để thay thế cho các địa chỉ mạng. Do mạng chỉ hiểu được các địa chỉ nên cần phải có các cơ chế để chuyển đổi chuỗi mã ASCII thành địa chỉ mạngKhi số lượng các máy tính và máy chủ nối đến mạng quá lớn thì việc sử dụng ký tự để đặt tên cho các phần tử mạng phải được quản lý tập trung để tránh xung đột về tên phần tử mạng. ...
20 trang |
Chia sẻ: Khủng Long | Lượt xem: 978 | Lượt tải: 1
Bạn đang xem nội dung tài liệu Mạng máy tính - Chương VIII: Lớp ứng dụng, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
TRƯỜNG CAO ĐẲNG CNTT HỮU NGHỊ VIỆT HÀNCHƯƠNG VIIILỚP ỨNG DỤNG Giới thiệuCác lớp bên dưới có khả năng cung cấp dịch vụ vận chuyển dữ liệu cho lớp ứng dụng nhưng chúng không thực sự giao tiếp với người sử dụng. Dĩ nhiên, trong lớp ứng dụng cũng cần có các giao thức hỗ trợ để cho phép các ứng dụng thực hiện được các chức năng của mình. Trong chương này chúng ta sẽ nghiên cứu các ứng dụng thực sự giao tiếp với người sử dụng 8.1 Hệ thống tên miền DNSVề nguyên tắc, các ứng dụng trên mạng có thể gửi dữ liệu đến các máy chủ, hộp thư và các tài nguyên khác theo địa chỉ mạng tương ứng của chúng. Tuy nhiên, các địa chỉ này thường rất khó nhớ, vì vậy người ta sử dụng ký tự chữ cái để thay thế cho các địa chỉ mạng. Do mạng chỉ hiểu được các địa chỉ nên cần phải có các cơ chế để chuyển đổi chuỗi mã ASCII thành địa chỉ mạngKhi số lượng các máy tính và máy chủ nối đến mạng quá lớn thì việc sử dụng ký tự để đặt tên cho các phần tử mạng phải được quản lý tập trung để tránh xung đột về tên phần tử mạng. Đó là lý do ra đời của Hệ thống tên miền (DNS) 8.1 Hệ thống tên miền DNSDNS có cấu trúc phân cấp theo miền tên và hệ thống cơ sở dữ liệu phân tán với nhiệm vụ chủ yếu dùng để gắn tên các phần tử mạng và địa chỉ thư điện tử vào các địa chỉ IPĐể gắn một tên miền vào một địa chỉ IP, một chương trình ứng dụng sẽ gọi một thủ tục trong thư viện gọi là Bộ phân giải tên và truyền tham số tên cho nó. Bộ phân giải tên sẽ gửi gói dữ liệu dạng UDP cho máy chủ DNS, tại đây máy chủ DNS sẽ tìm kiếm và cung cấp một địa chỉ IP tương ứng cho Bộ phân giải tên. Căn cứ vào địa chỉ IP này, chương trình có thể thiết lập kết nối TCP với đầu cuối hoặc gửi gói dữ liệu UDP 8.1.1 Không gian tên miền DNSHệ thống Internet được chia thành hơn 200 miền cấp cao, mỗi miền chứa một số lượng lớn các máy chủ và được chia thành nhiều miền con theo phân cấp.Một tên miền cấp cao chứa 2 thông tin: chủng loại và quốc gia. Ví dụ: tên miền .gov chỉ chính phủ liên bang Hoa kỳ; .int chỉ các tổ chức quốc tế; ... Các tên miền quốc gia được định nghĩa trong chuẩn ISO 3166 8.1.2 Bản ghi tài nguyên Mỗi tên miền đều có thể có một tập bản ghi tài nguyên liên quan, ngoài bản ghi tài nguyên chứa địa chỉ IP còn có các bản ghi tài nguyên khác. Khi Bộ phân giải tên gửi tên miền đến DNS thì kết quả trả về chính là bản ghi tài nguyên ứng với tên miền đó. Có thể nói, chức năng chính của DNS là gán tên miền vào bản ghi tài nguyên.Các bản ghi tài nguyên ở dạng mẫu tự ASCII, chỉ có 1 hàng và có khuôn dạng như sau: Domain_name Time_to_live Class Type Value 8.1.2 Bản ghi tài nguyênTrường Domain_name: chỉ miền mà bản ghi áp dụng.Trường Time_to_live: biểu thị thời gian sống của bản ghi.Trường Class: Đối với Internet, trường này có giá trị là IN.Trường Type: chỉ loại bản ghi TypeÝ nghĩaGiá trịSOAKhởi tạo quyền Các tham số cho miềnAĐịa chỉ IP của máy trạmSố nguyên 32-bitMXChuyển phát thư điện tửƯu tiên, miền sẵn sàng nhận thưNSMáy chủ tên miềnTên của máy chủ miềnCNAMETên hợp chuẩnTên miềnPTRCon trỏTên danh định của đ/c IPHINFOĐặc điểm máy trạmCPU và Hệ ĐH bằng ký tựTXTDạng văn bảnVăn bản dạng mã ASCII8.1.3 Máy chủ tên miền Về mặt lý thuyết, có thể sử dụng một máy chủ tên miền để chứa toàn bộ cơ sở dữ liệu DNS và xử lý các yêu cầu về tên miền. Tuy nhiên, máy chủ này sẽ bị quá tải vì số lượng tên miền quá lớn, hơn nữa nếu máy chủ này ngừng hoạt đông thì toàn bộ mạng Internet sẽ không làm việc được. 8.2 Hệ thống thư điện tửNăm 1982, hệ thống thư điện tử của ARPANET xuất hiện tương ứng với chuẩn RFC 821 (giao thức truyền dẫn) và RFC 822 (khuôn dạng bản tin). Sau đó chúng được chỉnh sửa lại thành các chuẩn của mạng Internet là RFC 2821 và RFC 2822.8.2.1 Kiến trúc và các dịch vụ của hệ thống thư điện tửHệ thống thư điện tử bao gồm 2 hệ thống Các tác tử người dùng: cho phép người sử dụng đọc và gửi mail. Đây chính là các chương trình cục bộ cung cấp các phương thức dựa vào câu lệnh, bảng chọn (menu) hoặc đồ họa để tương tác với hệ thống thư điện tử.Tác tử truyền bản tin: cho phép chuyển bản tin từ nguồn đến đích. Chúng thường là các nhân (deamon) của hệ thống hoạt động như các tiến trình nềnHầu hết các hệ thống đều cho phép người sử dụng tạo hộp thư để lưu trữ thư nhận được. Người ta thường sử dụng các câu lệnh để tạo và hủy hộp thư, duyệt nội dung thư, chèn và xóa bản tin khỏi hộp thư, ... 8.2.1 Kiến trúc và các dịch vụ của hệ thống thư điện tửHệ thống thư điện tử hỗ trợ 5 chức năng cơ bản sau:Kết cấu bản tin: liên quan đến tiến trình tạo bản tin và trả lờiChuyển giao bản tin: liên quan đến việc di chuyển bản tin từ nguồn đến đích nhậnThông báo: báo cho người gửi biết tình trạng của bản tinHiển thị bản tin nhận được để người nhận có thể đọc.Bố trí: đây là bước cuối cùng, nó liên quan đến các thao tác mà người nhận làm đối với bản tin đã nhận được. 8.2.2 Tác tử người dùngMột tác tử người dùng thường là một chương trình (còn gọi là bộ đọc thư) có thể hiểu được các lệnh để tạo thư, nhận thư và phản hồi thư cũng như các thao tác đối với hộp thư. 8.2.2.1 Gửi thư điện tửĐể gửi thư điện tử, người gửi phải cung cấp nội dung bản tin, địa chỉ đích và các thông số cần thiết khác. Bản tin có thể được tạo bởi các bộ soạn thảo, chương trình xử lý văn bản. Địa chỉ của người nhận phải tuân theo khuôn dạng mà tác tử người dùng có thể hiểu được. 8.2.2.2 Đọc thư điện tửKhi tác tử người dùng khởi động, nó tìm kiếm thư gửi đến trong hộp thư của người sử dụng trước khi hiển thị. Sau đó nó có thể thông báo số lượng các bản tin trong hộ thư hoặc liệt kê danh sách các thư nhận được. 8.2.2 Tác tử người dùng8.2.3. Cấu trúc bản tin8.2.3.1 Chuẩn RFC 822Bản tin bao gồm một bao thư gốc (được mô tả trong chuẩn RFC 821), các trường mào đầu, dòng ký tự trống và nội dung bản tin. Mỗi trường mào đầu gồm có một dòng mã ASCII chứa tên, một dấu chấm 2 chấm và một gia trị. HeaderÝ nghĩaToĐịa chỉ của người nhận chínhCcĐịa chỉ của người nhận thứ 2 (phụ)BccĐịa chỉ của người nhận thứ phụ (dạng ẩn)FromNgười gửi bản tinSenderĐịa chỉ thư của người gửi thựcReceicedĐịa chỉ của các đại lý trung gian chuyển thưReturn-PathCó thể dùng để xác định đường chuyển trả thư8.2.4 Truyền bản tin Hệ thống truyền bản tin liên quan đến việc chuyển mạch bản tin từ nguồn gửi đến đích. Một phương pháp đơn giản để thực hiện việc này là thiết lập một kết nối từ máy nguồn đến máy đích và sau đó chuyển bản tin.8.2.4.1 Giao thức chuyển thư đơn giản (SMTP-The Simple Mail Transfer Protocol)Đối với mạng Internet, thư điện tử được chuyển đi bằng cách thiết lập một kết nối TCP từ máy nguồn đến máy địch qua cổng 25. Một hạt nhân của hệ thống thư điện tử sẽ lắng nghe cổng 25 thông qua giao thức SMTP. Nhân này sẽ chấp nhận kết nối và sao chép bản tin và đưa vào hộp thư tương ứng. Nếu không phân phát được bản tin, nó sẽ tạo ra thông báo lỗi chứa phần đầu của bản tin và gửi trả lại nơi phát bản tin 8.2.4 Truyền bản tinSMTP là một giao thức sử dụng mã ASCII đơn giản. Sau khi thiết lập kết nốiTCP đến cổng 25, máy gửi thư họat động như một máy khách (client), đợi máy nhận luc này hoạt động như máy chủ (server) ra thông báo trước. Máy chủ bắt đầu gửi một dòng văn bản chứa nhận dạng và thông báo chuẩn bị sẳn sàng nhận thư. Nếu quá trình này không xảy ra thì, máy khách sẽ giải phóng kết nối và lặp lại quá trình trên.Nếu máy chủ sẵn sàng nhận thư điện tử, máy khách sẽ thông báo người gửi và người nhận thư. Nếu người nhận có mặt ở máy đích thì máy chủ sẽ cho phép máy khách gửi thư. Sau khi máy khách gửi thư và máy chủ chấp nhận, thư sẽ không được kiểm tra lỗi vì kết nối TCP cung cấp kết nối tin cậy. Phần dưới cung cấp đoạn mã minh họa quá trình trao đổi để gửi bản tin 8.2.5 Phân phối bản tin đến người nhậnThư điện tử được gửi đến người nhận bằng cách thiết lập một kết nối TCP đến người nhận và sau dó truyền bản tin trên kết nối đó. Mô hình chỉ làm việc được khi tất cả các máy trạm trên mạng muốn trao đổi bản tin đều phải vào mạng (on-line). Tuy nhiên, vấn đề nảy sinh khi người nhận không vào mạng và như vậy kết nối TCP không thể thiết lập được và bản tin không thể gửi đi được.Một giải pháp để khắc phục vấn đề này là xây dựng một tác tử chuyển giao bản tin trên máy chủ ISP để nhận thư điện tử và lưu thư vào hộp thư nằm trên máy chỉ ISP. Như vậy, người sử dụng có thể gửi và nhận thư bất cứ lúc nào 8.2.5 Phân phối bản tin đến người nhậnGiải pháp nêu trên gặp phải một vấn đề là làm sao để người nhận thư có thể lấy được thư từ máy chủ ISP về? Câu trả lời là tạo ra một giao thức mới cho phép tác tử chuyển giao bản tin trên máy người nhận kết nối được với tác tử chuyển giao bản tin trên máy chủ ISP và sao chép bản tin từ máy chủ về máy người nhận thư (POP3, IMAP).a- POP3Giao thức này dùng để giữ kết nối giữa máy người gửi và máy người nhận thông qua mạng Internet trong trường hợp cả 2 máy đều cùng có mặt trên mạng (hình a) và trong trường hợp người nhận không lên mạng 8.2.5 Phân phối bản tin đến người nhậnPOP3 được bắt đầu khi người sử dụng khởi động bộ nhận thư. Bộ nhận thư sẽ gọi máy chủ ISP và thiết lập một kết nối TCP với tác tử chuyển giao bản tin ở cổng 110. Khi thiết lập được kết nối, POP3 sẽ thực hiện tuần tự 1 trong 3 tiến trình sau:Chứng thực Giao dịchCập nhật 8.2.5 Phân phối bản tin đến người nhậnb- IMAPGiao thức POP3 sẽ hoạt động có hiệu quả khi một người sử dụng chỉ có một địa chỉ thư điện tử trên một ISP và luôn truy cập từ một máy tính. Nếu việc nhận thư được thực hiện ở nhiều máy và nhiều nơi khác nhau thì tất cả các thư của một người nào đó sẽ bị phân tán rai rác khắp nơi. Điều này được khắc phục bằng một giao thức khác đó là IMAP, được định nghĩa trong RFC 2060. Tất cả các thư điện tử sẽ được lưu giữ trong máy chủ vô thời hạn và ở trong nhiều hộp thư, IMAP sẽ cung cấp các cơ chế mở rộng cho phép đọc được các bản tin hoặc một phần bản tin mà không cần chuyển bản tin về máy người nhận 8.2.5 Phân phối bản tin đến người nhận c- WebmailWebmail sử dụng các tác tử chuyển giao bản tin để lắng nghe cổng 25 đối với kết nối SMTP vào. Một kết nối TCP được thiết lập để gửi các lệnh SMTP.Khi người sử dụng đăng nhập vào trang web, nếu đăng nhập thành công, máy chủ sẽ tìm kiếm hộp thư của người sử dụng và liệt kê danh sách thư điện tử có trong đó theo định dạng của trang web
Các file đính kèm theo tài liệu này:
- tailieu.ppt