Xem mẫu

  1. 5/22/2011 LOGO C2 TẦNG ỨNG DỤNG Giao thức tầng ứng dụng Web FTP Email DNS Biên soạn : Lê Minh LOGO Giao thức tầng ứng dụng I Người dùng tương tác với ứng dụng thông qua chương trình cài đặt trên thiết bị Các ứng dụng liên lạc với nhau thông qua các tiến trình (process) Các tiến trình chạy trên các máy tính khác nhau liên lạc với nhau tuân theo giao thức tầng ứng dụng Biên soạn : Lê Minh 1
  2. 5/22/2011 LOGO Giao thức tầng ứng dụng I Giao thức tầng ứng dụng: Là một phần của một ứng dụng mạng Xác định kiểu thông điệp (message) trao đổi Xác định cú pháp của thông điệp Xác định ý nghĩa của các trường Xác định thời điểm và cách thức gởi/nhận thông điệp Sử dụng các dịch vụ cung cấp bởi giao thức của tầng dưới ( TCP và UDP) User agent: giao diện giữa người dùng và ứng dụng mạng Biên soạn : Lê Minh LOGO Mô hình mạng client/server 1 Các ứng dụng mạng thường gồm 2 phía : client và server Client Khởi tạo giao tiếp với server Yêu cầu dịch vụ từ server Server Cung cấp các dịch vụ cho client Biên soạn : Lê Minh 2
  3. 5/22/2011 LOGO Truyền thông giữa các tiến trình 2 Các tiến trình gởi/ host or host or server server nhận thông điệp qua socket của chúng controlled by app developer Socket có thể xem như process process “cửa” của tiến trình socket socket Quá trình gởi: đẩy TCP with TCP with thông điệp qua “cửa” Internet buffers, buffers, variables variables Quá trình nhận: thông điệp được gửi đến “cửa” của nơi nhận controlled by OS Biên soạn : Lê Minh LOGO Truyền thông giữa các tiến trình 2 Định địa chỉ tiến trình: Tiến trình gởi phải xác định địa chỉ của tiến trình nhận Mỗi máy tính sẽ có một địa chỉ IP (32bit) trên mạng. Mỗi tiến trình sẽ được định một địa chỉ cổng (port number) • web server dùng cổng 80 • Mail server dùng cổng 25,… Phải xác định địa chỉ IP và địa chỉ cổng của bên nhận Biên soạn : Lê Minh 3
  4. 5/22/2011 LOGO Dịch vụ của giao thức tầng giao vận 3 Dịch vụ TCP Dịch vụ UDP Theo hướng kết nối: Truyền dữ liệu không yêu cầu thiết lập kết tin cậy giữa tiến trình nối giữa client và truyền và nhận server Không hỗ trợ: thiết Truyền dữ liệu tin cậy lập kết nối, điều khiển lưu lượng, kiểm soát Có điều khiển lưu tắc nghẽn, băng lượng thông và thời gian tối Có kiểm soát tắc thiểu nghẽn Không hỗ trợ thời gian và băng thông tối thiểu Biên soạn : Lê Minh LOGO Dịch vụ Web II Trang Web: chứa các đối tượng ( file HTML, file ảnh, file âm thanh…) Các đối tượng được xác định qua địa chỉ URL Chứa 1 file HTML cơ sở và tham chiếu tới các đối tượng khác Ví dụ: www.school.edu/department/pic1.gif Trình duyệt (Browers): giao tiếp với người dùng Web server: lưu giữ website, xác định qua địa chỉ URL Biên soạn : Lê Minh 4
  5. 5/22/2011 LOGO HTTP 1 HTTP(HyperText Transfer Protocol): giao thức tầng ứng PC running dụng của dịch vụ Web Explorer Sử dụng mô hình server/client Client: là trình duyệt Server running Server: phần mềm web Apache Web server server HTTP có 2 phiên bản: Mac running 1.0 và 1.1 Navigator Biên soạn : Lê Minh LOGO HTTP 1 Cơ chế hoạt động : Sử dụng giao thức TCP ở tầng giao vận Client khởi tạo kết nối TCP (socket) đến server qua cổng 80 Server chấp nhận kết nối TCP từ Client Các thông điệp HTTP được trao đổi qua lại giữa trình duyệt ( HTTP client) và Web server (HTTP server) Đóng kết nối HTTP Biên soạn : Lê Minh 5
  6. 5/22/2011 LOGO Kết nối HTTP 2 Có 2 loại: kết nối không liên tục và kết nối liên tục Kết nối không liên tục Chỉ có 1 đối tượng được gởi qua kết nối TCP Kết nối được đóng sau khi client nhận được đối tượng Sử dụng cho phiên bản HTTP 1.0 Trình duyệt thường mở nhiều kết nối TCP song song để nhận các đối tượng Biên soạn : Lê Minh LOGO Kết nối HTTP 2 Kết nối liên tục: Nhiều đối tượng có thể được gởi qua 1 kết nối TCP giữa client và server Server không đóng kết nối sau khi gởi xong thông điệp trả lời Sử dụng cho phiên bản 1.1 Biên soạn : Lê Minh 6
  7. 5/22/2011 LOGO Định dạng thông điệp HTTP 3 Có 2 dạng thông điệp HTTP: thông điệp yêu cầu và thông điệp trả lời Thông điệp yêu cầu: viết theo mã ASCII Biên soạn : Lê Minh LOGO Định dạng thông điệp HTTP 3 Thông điệp yêu cầu Ví dụ: request line (lệnh GET, POST, GET /somedir/page.html HTTP/1.1 HEAD) Host: www.someschool.edu User-agent: Mozilla/4.0 header Connection: close lines Accept-language:fr Carriage return, (extra carriage return, line feed) line feed (cho biết kết thúc thông điệp Biên soạn : Lê Minh 7
  8. 5/22/2011 LOGO Định dạng thông điệp HTTP 3 Thông điệp trả lời: Định dạng thông điệp trả lời Version phrase Status code Status line Biên soạn : Lê Minh LOGO Định dạng thông điệp HTTP 3 Thông điệp trả lời Ví dụ: status line (protocol HTTP/1.1 200 OK status code Connection: close status phrase) Date: Thu, 06 Aug 1998 12:00:15 GMT Server: Apache/1.3.0 (Unix) header Last-Modified: Mon, 22 Jun 1998 …... lines Content-Length: 6821 Content-Type: text/html data, e.g., data data data data data ... requested HTML file Biên soạn : Lê Minh 8
  9. 5/22/2011 LOGO Định dạng thông điệp HTTP 3 Các mã trạng thái (status code) của thông điệp trả lời: • 1XX : thông tin – 100 Continue, 101 Switching Protocols • 2XX: thành công – 200 OK, 206 Partial Content • 3XX: hướng dẫn – 301 Moved Permanently, 304 Not Modified • 4XX: lỗi client – 400 Bad Request, 403 Forbidden, 404 Not Found • 5XX: lỗi server – 500 Internal Server Error, 503 Service Unavailable, 505 HTTP Version Not Supported Biên soạn : Lê Minh LOGO Web Proxy Caching 3 Mục đích: đáp ứng yêu cầu của client mà không origin cần tới server gốc chứa server đối tượng Proxy Người dùng thiết lập server client trình duyệt web: truy cập thông qua web cach Trình duyệt gởi các yêu cầu HTTP tới cach Nếu có đối tượng: gởi về client cho client origin server Nếu không có: gởi yêu cầu đến server gốc Biên soạn : Lê Minh 9
  10. 5/22/2011 LOGO Web Proxy Caching 3 Tại sao sử dụng web catching? Giảm thời gian đáp ứng cho client. Giảm tải mạng : tránh hiện tượng “thắt cổ chai” Biên soạn : Lê Minh LOGO FTP III FTP (File Transfer Protocol): giao thức truyền file giữa các máy tính Sử dụng mô hình server/client Biên soạn : Lê Minh 10
  11. 5/22/2011 LOGO FTP III Sử dụng giao thức TCP của tầng giao vận Dùng 2 cổng (port) 20 và 21 Port 21: truyền thông tin điều khiển Port 20: truyền dữ liệu TCP control connection port 21 TCP data connection FTP FTP port 20 client server Biên soạn : Lê Minh LOGO FTP III Cơ chế hoạt động: FTP client thiết lập 1 kết nối TCP với FTP server qua cổng 21 (kết nối điều khiển) Client chứng thực với server qua kết nối điều khiển Client gởi yêu cầu truyền/nhận file đến server qua kết nối điều khiển Server mở kết nối TCP với client qua cổng 20 (kết nối dữ liệu), truyền/nhận file qua kết nối này Biên soạn : Lê Minh 11
  12. 5/22/2011 LOGO FTP III Cơ chế hoạt động: Sau khi truyền/nhận xong, server đóng kết nối dữ liệu Server sẽ mở một kết nối dữ liệu khác khi client có yêu cầu truyền/nhận file khác Trong phiên làm việc, server lưu lại trạng thái: thư mục hiện hành và lần chứng thực trước đó của client Biên soạn : Lê Minh LOGO Electronic Mail III Hệ thống E-Mail gồm 3 thành phần chính SMTP SMTP access protocol user user agent agent receiver’s mail sender’s mail server server User agent Mail server Giao thức gởi/truy cập mail Biên soạn : Lê Minh 12
  13. 5/22/2011 LOGO SMTP 1 Là giao thức gởi thư giữa các mail server user Dùng giao thức TCP agent mail của tầng dưới user server agent Dùng cổng 25 SMTP mail server user Theo mô hình SMTP agent client/server: SMTP Mail server gởi thư: user mail agent server đóng vai trò là client Mail server nhận user agent thư: đóng vai trò là user server agent Biên soạn : Lê Minh LOGO SMTP 1 Cơ chế hoạt động Client thiết lập một kết nối TCP với server qua cổng 25 Quá trình gởi thư trải qua 3 bước: • Bắt tay giữa 2 client/server • Truyền nội dung thư • Đóng kết nối Tương tác giữa client/server thông qua lệnh (client => server) và trả lời (server => client) • Lệnh: viết theo mã ASCII • Trả lời: mã trạng thái và từ ngữ Biên soạn : Lê Minh 13
  14. 5/22/2011 LOGO SMTP 1 Ví dụ: S: 220 hamburger.edu C: HELO crepes.fr S: 250 Hello crepes.fr, pleased to meet you C: MAIL FROM: S: 250 alice@crepes.fr... Sender ok C: RCPT TO: S: 250 bob@hamburger.edu ... Recipient ok C: DATA S: 354 Enter mail, end with "." on a line by itself C: Do you like ketchup? C: How about pickles? C: . S: 250 Message accepted for delivery C: QUIT S: 221 hamburger.edu closing connection soạn : Lê Minh Biên LOGO Định dạng Email 2 Header: các dòng tiêu đề, chứa các nội header blank dung như: line T o: From: Subject: … body Body: nội dung thư, chỉ chứa các ký tự thuộc bản mã ASCII Biên soạn : Lê Minh 14
  15. 5/22/2011 LOGO MIME 3 Chuẩn quy định định dạng email khi nội dung email có các thành phần multimedia Thêm vào phần header để khai báo thư thuộc định dạng MIME From: alice@crepes.fr Phiên bản MIME To: bob@hamburger.edu Subject: Picture of yummy crepe. phương pháp MIME-Version: 1.0 mã hóa dữ liệu Content-Transfer-Encoding: base64 Content-Type: image/jpeg Khai báo kiểu dữ liệu nội dung base64 encoded data ..... ......................... ......base64 encoded data Dữ liệu đã mã hóa Biên soạn : Lê Minh LOGO MIME 3 Nội dung thuộc kiểu: multipart/mixed From: alice@crepes.fr To: bob@hamburger.edu Subject: Picture of yummy crepe. MIME-Version: 1.0 Content-Type: multipart/mixed;Boundary=123 --123 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain Dear Bob, Please find a picture of a crepe. --123 Content-Transfer-Encoding: base64 Content-Type: image/jpeg base64 encoded data ..... ......................... ......base64 encoded data --123-- Biên soạn : Lê Minh 15
  16. 5/22/2011 LOGO Giao thức truy cập Mail 4 SMTP SMTP access protocol user user agent agent receiver’s mail sender’s mail server server Dùng để lấy mail từ server, có 3 giao thức POP IMAP HTTP Biên soạn : Lê Minh LOGO DNS IV Các máy tính trên mạng Internet: được quản lý bằng địa chỉ IP Con người: biết đến các máy chủ thông qua “tên”, vd: yahoo.com.vn Tên IP?? DNS (Domain Name System): hệ thống phân giải tên miền Biên soạn : Lê Minh 16
  17. 5/22/2011 LOGO Các dịch vụ của DNS 1 Ánh xạ giữa Tên và địa chỉ IP Vd: google.com.vn 74.125.235.17 Đặt bí danh cho máy chủ: một máy chủ có thể được gọi bằng tên đầy đủ (canonical name) hay bí danh (alias name) Đặt bí danh cho mail server Phân phối tải giữa các server: Server “nhân bản”: một tên miền có thể ứng với nhiều server ở các IP các nhau Biên soạn : Lê Minh LOGO Cấu trúc của hệ thống DNS 2 root DNS server Gồm: Client resolver 2 Local DNS server 3 TLD DNS server Authoritative DNS 4 server 5 Root DNS server local DNS server dns.poly.edu Top-Level Domain DNS server 6 7 1 8 Hoạt động? authoritative DNS server Vd: máy tính dns.cs.umass.edu muốn biết IP của requesting host gaia.cs.umass.edu gaia.cs.umass.edu Biên soạn : Lê Minh 17
  18. 5/22/2011 LOGO Quản lý không gian tên miền 3 Root DNS Servers TLD ca DNS servers edu DNS servers Servers com DNS servers yahoo.com amazon.com ucalgary.ca usask.ca poly.edu umass.edu DNS servers DNS servers DNS servers DNS servers DNS serversDNS servers Root name NS server và TLD server thường không chứa ánh xạ hostname IP mà chỉ chứa ánh xạ tới IP của các DNS server khác Biên soạn : Lê Minh LOGO Quản lý không gian tên miền 3 Biên soạn : Lê Minh 18
  19. 5/22/2011 LOGO Chức năng các server 4 Local DNS server: Mỗi ISP có một local DNS server Khi một máy tính (host) muốn biết một IP của một tên miền, nó gởi một truy vấn DNS (DNS query) tới Local DNS server Nếu có thể phân giải tên, Local DNS server sẽ trả lời host, nếu không sẽ gởi truy vấn DNS tới Root DNS server Biên soạn : Lê Minh LOGO Chức năng các server 4 Authoritative DNS server: Chứa các ánh xạ hostname IP được chứng thực Được điều hành bởi các tổ chức hoặc các công ty dịch vụ TLD server: Quản lý các vùng tên miền chung như: .com .org .net .edu … và các tên miền quốc gia như : .us .fr .jp …. Có thể trao quyền quản lý các vùng con trong vùng của mình cho server khác Biên soạn : Lê Minh 19
  20. 5/22/2011 LOGO Chức năng các server 4 root DNS server Root DNS server: Được các Local DNS 2 server hỏi khi local DNS server không TLD DNS server thể phân giải tên Root Name server local DNS server trả lời Local name dns.poly.edu server ?? 1 authoritative DNS server dns.cs.umass.edu requesting host cis.poly.edu gaia.cs.umass.edu Biên soạn : Lê Minh LOGO Cơ chế hoạt động 4 root DNS server Máy host gởi truy vấn DNS tới Local DNS server 2 TLD DNS server 3 Nếu không phân giải 4 được, local DNS 5intermedia DNS server server sẽ gởi truylocal DNS server 6 vấn tới root DNS dns.poly.edu 9 server 8 7 10 1 Root gởi thông điệp authoritative DNS server trả lời yêu cầu Local dns.cs.umass.edu hỏi TLD DNS server requesting host cis.poly.edu … gaia.cs.umass.edu Biên soạn : Lê Minh 20
nguon tai.lieu . vn