Chương 8 Lớp ứng dụng Application Layer

Các lớp bên dưới: cung cấp dịch vụ vận chuyển dữ liệu cho lớp ứng dụng không thực sự giao tiếp với người sử dụng. 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.

pdf56 trang | Chia sẻ: lylyngoc | Lượt xem: 1677 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Chương 8 Lớp ứng dụng Application Layer, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1MẠNG MÁY TÍNH Chương 8 LỚP ỨNG DỤNG Application Layer 2Giới thiệu  Các lớp bên dưới: cung cấp dịch vụ vận chuyển dữ liệu cho lớp ứng dụng không thực sự giao tiếp với người sử dụng.   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. 38.1- Hệ thống tên miền DNS 8.1.1- Không gian tên miền  Các ứng dụng máy chủ theo địa chỉ mạng tương ứng của chúng.  Địa chỉ này thường rất khó nhớ  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ỉ có các cơ chế để chuyển đổi chuỗi mã ASCII thành địa chỉ mạng  Khi số lượng các máy tính và máy chủ nối đến mạng quá lớn  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) 4Hệ thống tên miền DNS  Cấu trúc DNS  cấu trúc phân cấp dạng cây theo miền tên  hệ thống cơ sở dữ liệu phân tán 5Hệ thống tên miền DNS  Trên cùng là nút gốc các nút cha, nút con,… cuối cùng là các nút lá  Mỗi server quản lý DNS sẽ ứng với một nút của cây  Mỗi nút biểu diễn một miền trong hệ thống DNS  Mỗi miền có một hay nhiều miền con và có một máy chủ DNS tương ứng quản lý hệ thống tên trong miền đó 6Hệ thống tên miền DNS  Nút: Độ dài tên không quá 63 ký tự Nút kề nhau không được có cùng tên Nút gốc có nhãn rỗng, ký hiệu “.”  Miền con: Tạo thành từ mỗi nút của không gian tên Các nút bên dưới có thể đi đến được các nút đó 7Hệ thống tên miền DNS  Cơ chế phân giải Để 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 miền (Resolver) 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 8Hệ thống tên miền DNS 98.1.2- Bản ghi tài nguyên RR  Mỗi tên miền đều có thể có một tập bản ghi tài nguyên liên quan  Bản ghi tài nguyên = (IP + tài nguyên khác).  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 Domain_name Time_to_live Class Type Value 10 Bản ghi tài nguyên  Domain_name: chỉ miền mà bản ghi áp dụng.  Time_to_live: biểu thị thời gian sống của bản ghi.  Class:  Internet: trường này có giá trị là IN.  Non-internet: giá trị khác  Type: chỉ loại bản ghi  11 Văn bản dạng mã ASCIIMô tả máy chủ DNSTXT CPU và Hệ ĐH bằng ký tựCấu hình của ServerHINFO Tên danh định của đ/c IPCon trỏ ánh xạ đ/c IP sang tên miền PTR Tên miềnSD khi khai báo nhiều tên miền cùng trỏ đến 1 đ/c CNAME Tên của máy chủ miềnMáy chủ tên miền/ miền quản lý NS Ưu tiên, miền sẵn sàng nhận thưXĐ máy chủ email cho một tên miền MX Số nguyên 32-bitĐịa chỉ IP của một máy chủ nào đó A Các tham số của miền (số id, email, TTL,…) Khởi tạo quyền (máy chủ này là nơi lưu trữ dl về miền) SOA Giá trịÝ nghĩaType 12 8.1.3- Máy chủ tên miền  Hệ 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: tổ chức và địa lý.  Ví dụ:.gov; .int; ... (ISO 3166 ) 13 Không gian tên miền  Tên miền đầy đủ: Tên các nút từ nút lá đến nút gốc Phân cách bằng dấu chấm “.” Ví dụ:  Các miền cấp cao (mức đỉnh): Miền tổ chức: tên gồm 3 ký tự Ví dụ: com, edu, gov, … Miền địa lý: các mã quốc gia gồm 2 ký tự Ví dụ: uk, vn, ca, fr, … 14 Không gian tên miền  Tên miền của một nút: Dãy các nhãn từ nút đó đến nút của cây Các nhãn trong tên miền cách nhau bằng dấu chấm “.” Độ dài tên miền tối đa là 255 ký tự Tên miền tuyệt đối kết thúc bằng dấu chấm “.” Ví dụ: www.microsoft.com. Tên miền tương đối không kết thúc bằng dấu chấm và sẽ được phần mềm cục bộ ghép đầy đủ khi xử lý Một miền là miền con của miền khác nếu tên miền đó chứa tên miền kia 15 Không gian tên miền Mô tảMiền (domain) Các tổ chức không thuộc một trong các loại trênorg Một mạng không thuộc các loại phân vùng khácnet Các tổ chức quân sựmil Các tổ chức quốc tếint Các tổ chức chính phủgov Các tổ chức giáo dụcedu Các tổ chức thương mại, doanh nghiệpcom (commercial) Miền tổ chức 16 Không gian tên miền Việt Namvn Nhật Bảnjp Ý it Quốc gia tương ứngMiền (domain) CHLB Đứcde Phápfr Phần Lanfi Canada ca Bỉbe Áoat Úcau Miền địa lý 17 Máy chủ tên miền  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  Thực tế:  máy chủ này sẽ bị quá tải vì số lượng tên miền quá lớn,  máy chủ này ngừng hoạt động Internet sẽ không làm việc được. Zone 18 Máy chủ tên miền  Zone Mỗi zone là một phần của hệ thống tên miền (tree) Chứa một name server lưu thông tin của miền đó 19 Hoạt động  Dựa trên mô hình client/server Client đưa ra một truy vấn đến DNS server Sau đó DNS server tìm kiếm trong CSDL và phản hồi lại thông tin tìm được Client DNS Server Truy vấn www.microsoft.com  IP ? Phản hồi địa chỉ IP 20 Hoạt động Quá trình truy cập trang web www.yahoo.com 1. Truy vấn địa chỉ IP của tên vùng www.yahoo.com? 4. Phản hồi lại trang chủ của www.yahoo.com 2. Địa chỉ IP của www.yahoo.com là 209.191.93.52 3. Truy xuất trang chủ tại địa chỉ 209.191.93.52 DNS Server Client 209 .191.93.52 21 Hoạt động 22 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. 23 8.2.1- Kiến trúc và các dịch vụ  Hệ thống thư điện tử bao gồm 2 thành phần  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ền  Hầ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ư, ... 24 Kiến trúc và các dịch vụ  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ời Chuyển giao bản tin: liên quan đến việc di chuyển bản tin từ nguồn đến đích nhận Thông báo: báo cho người gửi biết tình trạng của bản tin Hiển thị bản tin nhận được để người nhận có thể đọc. Sắp xếp/ 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. 25 Kiến trúc và các dịch vụ  Kết cấu một thư gồm 3 phần: bao thư (envelop), phần đầu (header) và phần thân (body) Envelop: đóng gói bản tin. Chứa các thông tin cần thiết để truyền bản tin (đ/c nhận, mức độ ưu tiên, bảo mật,…) Header: chứa các thông tin liên đến tác tử người dùng 26 8.2.2- Tác tử người dùng  Một tác tử người dùng một chương trình /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ư. Gửi thư điện tử  Nội dung  nội dung bản tin  địa chỉ đích  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. 27 Tác tử người dùng Đọ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ộp thư hoặc liệt kê danh sách các thư nhận được. 28 8.2.3- Cấu trúc bản tin  Chuẩn RFC 822  Bản tin bao gồm một bao thư gốc, các trường mào đầu, dòng ký tự trống và nội dung bản tin. Return-Path Receiced Sender From Bcc Cc To Ý nghĩaHeader 29 Cấu trúc bản tin  Ngoài ra, phần header còn chứa một số thông tin khác 30 Cấu trúc bản tin  Chuẩn MIME (The Multipurpose Internet Mail Extensions)  Chuẩn RFC 822: sử dụng cho bản tin gồm tiếng Anh và ký tự theo mã ASCII  Thực tế, bản tin có thể chứa: Chữ có dấu. Không theo mẫu tự Latin (alphabet). Chữ tượng hình Đa phương tiện  => Chuẩn MIME 31 Cấu trúc bản tin  Chuẩn MIME Tiếp tục sử dụng cấu trúc của RFC 822 Thêm vào cấu trúc của phần thân Xác định kỹ thuật mã hóa cho nội dung không phải là mã ASCII 32 Cấu trúc bản tin  Content-Type 33  Ví dụ 34 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.  Giao thức  SMTP  ESMTP (Extended Simple Mail Transport Protocol ) 35 SMTP  Là một giao thức sử dụng mã ASCII đơn giản  Thiết lập một kết nối TCP - cổng 25.  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. Nếu chấp nhận kết nối  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 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 36 SMTP  Sau khi thiết lập kết nốiTCP đến cổng 25, máy gửi thư hoạt động như một máy khách (client), đợi máy nhận lúc 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 tồn tại người nhận 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. 37 38 8.2.5- Phân phối bản tin đến người nhận  Vấn đề Thiết lập một kết nối TCP đến người nhận và sau đó truyền bản tin trên kết nối đó.  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).  Giải pháp 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. 39 Phân phối bản tin đến người nhận  Để người nhận thư có thể lấy được thư từ máy chủ ISP về  giao thức 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 (Post Office Protocol - Giao thức bưu điện tử).  IMAP (Internet Message Access Protocol - Giao thức truy cập thông điệp Internet). Webmail. 40 POP3  Giao 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 và trong trường hợp người nhận không lên mạng 41 POP3  POP3 đượ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ự tiến trình sau: Chứng thực Giao dịch Cập nhật 42 POP3 43 IMAP  Giao 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 rải rác khắp nơi.   IMAP (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ư,  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 44 POP3 vs. IMAP 45 Webmail  Webmail 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 46 World Wide Web 47 World Wide Web  WWW là một hệ thống thông tin phi cấu trúc. Bao gồm các Server cung cấp t.tin theo định dạng siêu văn bản và các Client (trình duyệt) nhận thông tin/hiển thị thông tin theo yêu cầu NSD  Sử dụng giao thức HTTP (HypterText Transfer Protocol). 48 World Wide Web  Các thành phần của www Clients Nhà cung cấp dịch vụ Internet (ISP) Hệ thống truyền dẫn, Routers và switches Servers 49 World Wide Web  Cách thức một trình duyệt lấy một web page Client gửi một yêu cầu đến server để lấy trang web. Một yêu cầu có cấu trúc theo giao thức HTTP chứa một địa chỉ trang web đó (còn gọi là URL- Uniform Resource Locator). Một địa chỉ trang web có cấu trúc như sau: 50 World Wide Web  Một trang web là một tài liệu điện tử được viết bằng HTML hoặc các ngôn ngữ khác.  Trang web có thể chứa văn bản, hình ảnh, video, ảnh động và âm thanh, các dữ liệu tương tác.  Mỗi trang web có một địa chỉ duy nhất URL xác định vị trí của nó trên server.  Các trang web chứa siêu liên kết đến các trang web khác. 51 World Wide Web  Web site: Một website là một hay nhiều trang web có nội dung liên quan, được tổ chức lưu trữ theo cấu trúc và liên kết với nhau bởi các siêu liên kết (hyperlink). Người dùng có thể duyệt hết các trang web bằng các sử dụng các siêu liên kết giữa các trang web này 52 World Wide Web  Cookies Lưu thông tin về người dùng (user) đã truy cập vào server để sử dụng lại các thông tin này  Phân biệt người dùng nào đã đăng ký rồi  Thương mại điện tử: xác định hàng đã bỏ vào shopping cart  Customized web portal: yahoo, gmail,… Khi người dùng yêu cầu 1 trang web, server gắn thêm các thông tin vào trang web trả về này  Cookies RFC 2109 53 World Wide Web  Cấu trúc Content: chứa các thông tin mà Server có thể dùng lại 54 World Wide Web  Static Web Dữ liệu chứa trong máy chủ, chỉ có thể hiện thị và không thể thay đổi  Dynamic Web 55 Ví dụ về truyền thông của SMTP Sau khi kết nối giữa người gửi (trình khách) và người nhận (trình chủ) đã được thiết lập, những việc làm sau đây là những việc hoàn toàn hợp lệ, đối với một phiên giao dịch dùng giao thức SMTP. Các hệ thống máy tính đều có thể thiết lập một kết nối, bằng cách dùng những dòng lệnh của phần mềm telnet, trên một máy khách. Chẳng hạn: telnet www.example.com 25 khởi động một kết nối SMTP từ máy gửi thông điệp đến máy chủ www.example.com. 56 S: 220 www.example.com ESMTP Postfix C: HELO mydomain.com S: 250 Hello mydomain.com C: MAIL FROM: S: 250 Ok C: RCPT TO: S: 250 Ok C: DATA S: 354 End data with . C: Subject: test message C: From: sender@mydomain.com C: To: friend@example.com C: C: Hello, C: This is a test. C: Goodbye. C: . S: 250 Ok: queued as 12345 C: QUIT S: 221 Bye
Tài liệu liên quan