Nhập môn mạng máy tính - C7.0.Tầng ứng dụng (HUST) GV. Ngô Hồng Sơn

LI
lienhejb
0 téléchargements
43
0

Contenu du document

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

Page 2

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

Page 4

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

Page 5

Ứ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

Page 6

Ứ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

Page 7

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

Page 8

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

Page 10

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

Page 11

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

Page 12

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

Page 14

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

Page 15

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

Page 16

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

Page 17

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

Page 18

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

Page 19

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

Page 20

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

Affichage des 20 premières pages. Téléchargez le document pour le voir en entier.

Commentaires (0)

Se connecter pour rejoindre la discussion

Aucun commentaire pour le moment. Soyez le premier !