Page 1
Chương 7: Tầng ứng dụng Giảng viên: Ngô Hồng Sơn Bộ môn Truyền thông và Mạng máy tính Khoa CNTT- ðHBK Hà Nội 1 goupee.com fb.com/groups/goupee
Chương 7: Tầng ứng dụng Giảng viên: Ngô Hồng Sơn Bộ môn Truyền thông và Mạng máy tính Khoa CNTT- ðHBK Hà Nội 1 goupee.com fb.com/groups/goupee
Tổng quan Buổi trước: Tầng giao vận Nguyên lý của tầng giao vận TCP và UDP Khái niệm kiểm soát luồng và kiểm soát tắc nghẽn Hôm nay: Tầng ứng dụng Nguyên lý của tầng ứng dụng Case study: HTTP, Mail, FTP, DNS, P2P… 2 goupee.com fb.com/groups/goupee
Nhắc lại về kiến trúc phân tầng Application Hỗ trợ các ứng dụng trên mạng (HTTP, Mail, …) Transport Truyền dữ liệu giữa các ứng dụng (UDP, TCP …) Network Chọn ñường và chuyển tiếp gói tin giữa (IP, ICMP…) các máy, các mạng Datalink Hỗ trợ việc truyền thông cho các thành (Ethernet, ADSL…) phần kế tiếp trên cùng 1 mạng Physical Truyền và nhận dòng bit trên ñường (bits…) truyền vật lý 4 goupee.com fb.com/groups/goupee
Ứng dụng và dịch vụ trên mạng? MUSIC ONLINE VoIP GAME CHAT VoD ON LINE e-Office SMS e-BANK MAIL SCHOOL ON THE WEB YOUTUBE INTERNET VIDEO CONFERENCE FTP EBAY GOOGLE SKYPE TELNET SSH NEWS E-COMMERCE GRID BITTORENT e-Goverment 5 goupee.com fb.com/groups/goupee
Ứng dụng và giao thức ứng dụng Giao thức ứng dụng application transport ðịnh nghĩa các quy tắc giao tiếp network data link Sử dụng các dịch vụ giao vận physical (TCP/UDP…) Ứng dụng : Các tiến trình giao tiếp với nhau trên Internet qua việc trao ñổi thông ñiệp Hoạt ñộng trên các hệ thống cuối Cài ñặt giao thức ứng dụng ñể application transport cung cấp dịch vụ network data link Ví dụ ứng dụng/giao thức: physical application transport Web (HTTP) network data link Mail (SMTP/POP/IMAP) … physical 6 goupee.com fb.com/groups/goupee
Các thành phần của ứng dụng Chương trình Giao diện NSD: Hỗ trợ cho NSD ñể làm việc với ứng dụng, e.g. trình duyệt Web (Firefox, IE), phần mềm thư ñiện tử (Thunderbird, Outlook,..) Cài ñặt các giao thức và sử dụng dịch vụ giao vận Chương trình máy chủ Cung cấp dịch vụ cho người sử dụng Tiến trình ứng dụng: chương trình ñang chạy trên hệ ñiều hành Các tiến trình giao tiếp? Trên một máy: IPC (inter-process communication) Giữa các máy trên mạng: qua socket 7 goupee.com fb.com/groups/goupee
Giao tiếp giữa các tiến trình trên Internet Nhắc lại: Socket là một giao diện giữa tiến trình ứng dụng host or host or và tầng giao vận server server Socket ñược ñịnh danh bởi Số hiệu cổng controlled by app developer ðịa chỉ IP process process Kiểu giao thức giao vận socket socket (TCP hay UDP) transport transport layer Internet layer Socket API (Application services services Programming Interface): Cho phép các tiến trình lựa chọn tham số, lựa chọn dịch vụ… controlled by OS 8 goupee.com fb.com/groups/goupee
Mô hình khách chủ Khách client Gửi yêu cầu truy cập dịch vụ ñến máy chủ Về nguyên tắc, không liên client lạc trực tiếp với các máy khách khác Chủ client Thường xuyên online ñể Server chờ y/c ñến từ máy trạm Có thể có máy chủ dự phòng ñể nâng cao hiệu client năng, phòng sự cố e.g. Web, Mail, … 10 goupee.com fb.com/groups/goupee
Mô hình ñiểm-ñiểm thuần túy Peer Không có máy chủ trung Peer tâm Các máy có vai trò ngang nhau Peer Hai máy bất kỳ có thể Peer liên lạc trực tiếp với nhau Không cần vào mạng thường xuyên E.g. Gnutella Peer Peer 11 goupee.com fb.com/groups/goupee
Mô hình lai Một máy chủ trung tâm Client ñể quản lý NSD, thông tin tìm kiếm… Các máy khách sẽ giao tiếp trực tiếp với nhau Server sau khi ñăng nhập E.g. Skype Máy chủ Skype quản lý các phiên ñăng nhập, mật khẩu… Client Sau khi kết nối, các máy Client sẽ gọi VoIP trực tiếp cho nhau Client-Server Comm. 12 P2P Comm. goupee.com fb.com/groups/goupee
HTTP và Web Web clients WWW: World Wide Web trao ñổi dữ liệu siêu văn bản HTML (HyperText Markup http request Language) trên Internet IE http response Web HTTP: HyperText Transfer server Protocol Mô hình Client/Server Client yêu cầu truy nhập tới các Firefox trang web (các ñối tượng web) và hiển thị chúng lên trình duyệt Server: Nhận yêu cầu và trả lời http request cho client http response Navigator 14 goupee.com fb.com/groups/goupee
HTTP hoạt ñộng ntn? Server mở một TCP socket chờ tại cổng 80 (default) Client khởi tạo một liên kết TCP tới server Server chấp nhận yêu cầu tạo liên kết Trao ñổi thông ñiệp HTTP (giao thức ứng dụng) HTTP Request HTTP Response ðóng liên kết TCP IP header TCP header HTTP header Dữ liệu - payload 15 goupee.com fb.com/groups/goupee
Khuôn dạng HTTP request Mã ASCII (dễ dàng ñọc ñược dưới dạng văn bản) request line (GET, POST, GET /dccn/index.html HTTP/1.1 HEAD commands) Host: www.it-hut.edu.vn User-agent: Mozilla/4.0 header Connection: close lines Accept-language:en-us CR, LF (extra carriage return, line feed) indicates end of message 16 goupee.com fb.com/groups/goupee
Khuôn dạng HTTP response status line (protocol status code HTTP/1.1 200 OK status phrase) Connection close Date: Tue, 16 Mar 2008 12:00:15 GMT header Server: Apache/1.3.0 (Unix) lines Last-Modified: Mon, 15 Mar 2008 …... Content-Length: 8990 Content-Type: text/html data, e.g., data data data data data ... requested HTML file 17 goupee.com fb.com/groups/goupee
Các liên kết HTTP HTTP không duy trì HTTP có duy trì Chỉ một ñối tượng web Nhiều ñối tượng có thể ñược gửi qua liên kết ñược gửi qua một liên TCP kết TCP. Sử dụng mặc ñịnh Sử dụng mặc ñịnh trong HTTP/1.0 trong HTTP/1.1 HTTP 1.0: RFC 1945 HTTP 1.1: RFC 2068 18 goupee.com fb.com/groups/goupee
Hoạt ñộng của HTTP/1.0 Web client Web server Init TCP connection TCP Conn. Req. Accept TCP connection OK, send HTTP request GET /index.html Send HTTP response: index.html Close TCP connection index.html Parse index.html: has 10 TCP Conn. Req. reference to 10 images Accept TCP connection Repeat above steps 10 Accepted times! GET img1.jpg Send images 1 img1.jpg Close TCP connection 2xRTT 19 Time Time goupee.com fb.com/groups/goupee
Hoạt ñộng của HTTP/1.1 Web client Web server Init TCP connection TCP Conn. Req. Accept TCP connection Accepted OK, send HTTP request GET /index.html Send HTTP Parse index.html: has 10 index.html response: index.html reference to 10 images GET… request images 1 Send images 1 img1.jpg request images 2 GET… Send images 2 Stop-and- Pipeline request images 10 wait! 20 Time Time goupee.com fb.com/groups/goupee
Showing the first 20 pages. Download the document to see it all.
No comments yet. Be the first!
Comments (0)
No comments yet. Be the first!