intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Mạng máy tính: Chương 2 - Nguyễn Quang Hải Bằng (tt)

Chia sẻ: Sơn Tùng | Ngày: | Loại File: PDF | Số trang:22

62
lượt xem
3
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

 Bài giảng "Mạng máy tính - Chương 2: Giao thức tầng ứng dụng (application layer)" cung cấp cho người học các kiến thức: File Transfer Protocol, Domain Name System, Electronic Mail Protocols. Mời các bạn cùng tham khảo nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Mạng máy tính: Chương 2 - Nguyễn Quang Hải Bằng (tt)

  1. Chương 2 (tiếp). Giao thức tầng ứng dụng (application layer) Trần Quang Hải Bằng Computer Networking and Internet (course of 2009) Faculty of Information Technology University of Communication and Transport (Unit 2) Office location: Administration building, Block D3, Room 6 Office phone: 38962018 Cell phone: N/A Email: bangtqh@hotmail.com Discussion Web programming with ASP. Visual Basic programming. § Object oriented programming. § Event driven programming. § Component driven programming. TCP Socket programming. § Simple web server. 24/8-25/10/2009 Chapter 2. The Application Layer 2
  2. Winsock 24/8-25/10/2009 Chapter 2. The Application Layer 3 HTTP example Giả sử người dùng truy cập URL: www.uct2.edu.vn/index.htm (trang web có text và 10 hình ảnh jpeg) 0. http server tại máy phục vụ 1a. http client thiết lập liên kết www.uct2.edu.vn chờ yêu cầu TCP với http server (process) kết nối TCP tại cổng 80. tại địa chỉ www.uct2.edu.vn, cổng 80 (ngầm định với http server). 1b. http server chấp nhận kết nối rồi thông báo với client. 2. http client gửi http request message (bao gồm cả URL) tới TCP connection socket 3. http server nhận request message, tạo ra http response time message có chứa các đối tượng được yêu cầu rồi gửi vào socket. 24/8-25/10/2009 Chapter 2. The Application Layer 4
  3. 4. http server ngắt liên kết. 5. http client nhận response message có chứa html file, hiển thị html. Sau đó, phân tích html file, tìm URL của 10 hình ảnh time jpeg trong tài liệu. 6. Bước 1-5 được lặp lại với từng hình ảnh. 24/8-25/10/2009 Chapter 2. The Application Layer 5 Ch2. The Application Layer 2.1. Một số khái niệm và nguyên tắc. 2.2. Web & Hyper Text Transfer Protocol. 2.3. Web design and HTTP, Web programming. 2.4. File Transfer Protocol. 2.5. Electronic Mail Protocols. 2.6. Domain Name System. 24/8-25/10/2009 Chapter 2. The Application Layer 6
  4. 2.4. FTP - File Transfer Protocol FTP file transfer FTP FTP user client server interface user at host local file remote file system system n Truyền/tải tệp (to/from remote host). n Client/server model ¤ Client: đưa ra yêu cầu truyền tải. ¤ Server = remote host. n FTP: RFC 959 24/8-25/10/2009 Chapter 2. The Application Layer 7 FTP: control & data connections TCP control connection port 21 TCP data connection FTP port 20 FTP n FTP sử dụng TCP. client server n FTP sử dụng đồng thời 2 liên kết TCP tại 2 cổng: ¤ TCP control connection, port 21: trao đổi các thông điệp điều khiển (commands, responses…). ¤ TCP data connection, port 20: truyền tải tệp. n FTP lưu giữ trạng thái client trong phiên làm việc (state vs. HTTP is stateless). 24/8-25/10/2009 Chapter 2. The Application Layer 8
  5. FTP: Quá trình trao đổi/truyền tải TCP control connection port 21 TCP data connection FTP server nghe tại cổng 21. client port 20 server FTP client yêu cầu kết nối với FTP server qua TCP tại cổng 21. Gửi user & password để đăng nhập. FTP server chấp nhận, liên kết điều khiển (control connection) được thiết lập. Quá trình trao đổi có thể bắt đầu. Khi server nhận được lệnh truyền tệp, nó mở liên kết dữ liệu (data connection) tới client, tệp được truyền qua liên kết này. Sau khi truyền xong một tệp, server ngắt liên kết dữ liệu (mỗi liên kết chỉ sử dụng để truyền một tệp). 24/8-25/10/2009 Chapter 2. The Application Layer 9 FTP commands, responses Lệnh (commands), phúc đáp (responses) được truyền dạng ASCII Sample commands: Sample return codes n sent as ASCII text over control n status code and phrase (as in channel HTTP) n USER username n 331 Username OK, n PASS password password required n LIST return list of file in n 125 data connection already open; current directory transfer starting n RETR filename retrieves n 425 Can’t open data (gets) file connection n STOR filename stores n 452 Error writing (puts) file onto remote host file 24/8-25/10/2009 Chapter 2. The Application Layer 10
  6. FTP clients & servers FTP file transfer FTP FTP user client server interface user at host local file remote file system system n Command-based client: n Microsoft FTP Service ¤ Windows FTP command. n … ¤ Linux FTP command. n GUI clients ¤ Windows Commander. ¤ CuteFTP, WS_FTP… 24/8-25/10/2009 Chapter 2. The Application Layer 11 Ch2. The Application Layer 2.1. Một số khái niệm và nguyên tắc. 2.2. Web & Hyper Text Transfer Protocol. 2.3. Web design and HTTP, Web programming. 2.4. File Transfer Protocol. 2.5. Electronic Mail Protocols. 2.6. Domain Name System. 24/8-25/10/2009 Chapter 2. The Application Layer 12
  7. 2.5. Electronic Mail Ba thành phần chính: user agent n User agents (mail clients) mail user ¤ Soạn, đọc thư (messages). server agent ¤ Vd: Outlook, Eudora, Netscape SMTP mail Messenger... server user n Mail servers SMTP agent ¤ Lưu trữ, xử lý thư. SMTP ¤ Vd: Exchange, MDeamon… mail user server agent n Protocols ¤ Simple Mail Transfer Protocol (SMTP). user ¤ Post Office Protocol (POP). agent user outgoing ¤ Internet Mail Access Protocol (IMAP). agent message queue ¤ HTTP. user mailbox 24/8-25/10/2009 Chapter 2. The Application Layer 13 Alice Bob 1) Alice sử dụng UA soạn thư, đ/c gửi 4) Mail server của Alice gửi tới “to”: bob@yahoo.com. thư qua liên kết TCP. 2) Alice’s UA gửi thư đến mail server 5) Mail server của Bob cất thư của Alice, bức thư được xếp vào nhận được vào hòm thư của hàng đợi (message queue). Bob. 3) Mail server của Alice mở liên kết 6) Bob dùng UA để lấy thư từ TCP tới mail server của Bob. server về rồi đọc thư. 1 mail mail server user user server 2 agent agent 3 6 4 5 Outlook Yahoo! Mail uct2.edu.vn yahoo.com 24/8-25/10/2009 Chapter 2. The Application Layer 14
  8. SMTP (Simple Mail Transfer Protocol) n Sử dụng liên kết TCP (port 25) để gửi mails: ¤ Từ sender’s mail client tới sender’s mail server. ¤ Từ sender’s mail server tới receiver’s mail server. n Ba pha (three ways handshake): ¤ Bắt tay (handshaking/greeting). ¤ Trao đổi messages. ¤ Kết thúc. n Command/response: ¤ commands: ASCII. ¤ responses: status code & phrase. 24/8-25/10/2009 Chapter 2. The Application Layer 15 SMTP: sample interaction (C: client; S: server) S: 220 yahoo.com C: HELO uct2.edu.vn S: 250 Hello uct2.edu.vn, pleased to meet you C: MAIL FROM: S: 250 alice@uct2.edu.vn... Sender ok C: RCPT TO: S: 250 bob@yahoo.com ... Recipient ok C: DATA S: 354 Enter mail, end with "." on a line by itself C: Hi Bob! C: Would you like to play tennis this evening? C: . S: 250 Message accepted for delivery C: QUIT S: 221 yahoo.com closing connection 24/8-25/10/2009 Chapter 2. The Application Layer 16
  9. SMTP: more n SMTP sử dụng persistent connection: một liên kết, nhiều thông điệp. n Thông điệp (kể cả nội dung thư) phải được mã hoá dạng ASCII 7 bit (US-ASCII). n Đánh dấu kết thúc msg bởi CRLF.CRLF n Một số dữ liệu nhị phân (vd: picture) có thể chứa CRLF.CRLF cần mã hoá để đảm bảo không có dữ liệu nào trùng với ký hiệu kết thúc message (vd: base64). n So sánh với HTTP: ¤ HTTP: pull protocol SMTP: push protocol. ¤ Cùng sử dụng ASCII (command/req/resp/status code). ¤ HTTP: mỗi obj chứa trong một msg SMTP: cho phép nhiều obj (text, picture…) trong một msg (multipart msg). 24/8-25/10/2009 Chapter 2. The Application Layer 17 Mail message format SMTP: giao thức trao đổi email msg (exchange msgs). RFC 822: standard for text message header blank format: line n Header lines, vd: ¤ To: ¤ From: body ¤ Subject: Khác với smtp commands (MAIL FROM, RCPT TO,…)! n Body ¤ The “message”. ¤ ASCII 24/8-25/10/2009 Chapter 2. The Application Layer 18
  10. MIME (Multipurpose Internet Mail Extension) n RFC 822: text msg, gặp khó khăn với multimedia. n MIME: RFC 2045, RFC 2056. n So với RFC 822, MIME thêm vào các header lines để mô tả nội dung của email msg. From: alice@uct2.edu.vn MIME version To: bob@yahoo.com Subject: Picture of yummy crepe. method used MIME-Version: 1.0 to encode data Content-Transfer-Encoding: base64 Content-Type: image/jpeg multimedia data type, subtype, base64 encoded data ..... parameter declaration ......................... ......base64 encoded data encoded data 24/8-25/10/2009 Chapter 2. The Application Layer 19 MIME: Content types Content-type: type/subtype; parameters 24/8-25/10/2009 Chapter 2. The Application Layer 20
  11. MIME: Encoding types Content-Transfer-Encoding: Encoding type 24/8-25/10/2009 Chapter 2. The Application Layer 21 MIME: Multiple objects mail message From: alice@uct2.edu.vn To: bob@yahoo.com Subject: Picture of yummy crepe. MIME-Version: 1.0 Content-Type: multipart/mixed; boundary=StartOfNextPart --StartOfNextPart Content-Transfer-Encoding: quoted-printable Content-Type: text/plain Dear Bob, Please find a picture of a crepe. --StartOfNextPart Content-Transfer-Encoding: base64 Content-Type: image/jpeg base64 encoded data ..... ......................... ......base64 encoded data --StartOfNextPart 24/8-25/10/2009 Chapter 2. The Application Layer 22
  12. The received mail message n Server thêm vào dòng header mỗi khi nhận thư: ¤ Received: ¤ Return-path: n Mail có thể được chuyển qua nhiều server khác nhau (forward). Received: from hamburger.edu by sushi.jp; 12 Oct 98 15:30:01 GMT Received: from crepes.fr by hamburger.edu; 12 Oct 98 15:27:39 GMT From: alice@crepes.fr To: bob@hamburger.edu Subject: Picture of yummy crepe. MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Type: image/jpeg base64 encoded data ....... ........................................ .......base64 encoded data 24/8-25/10/2009 Chapter 2. The Application Layer 23 Hiển thị full headers với Y! Mail 2.General Preference 1.Mail Options 3.Messages: Show all… 24/8-25/10/2009 Chapter 2. The Application Layer 24
  13. Mail access protocol SMTP SMTP access user user agent protocol agent sender’s mail receiver’s mail server server n SMTP: giao thức gửi mail tới server. n Mail access protocol: giao thức nhận mail từ server. ¤ POP (Post Office Protocol): RFC 1939. TCP Port 110. ¤ IMAP (Internet Mail Access Protocol): RFC 1730. TCP port 143. ¤ HTTP: Hotmail, Yahoo!... 24/8-25/10/2009 Chapter 2. The Application Layer 25 POP3 protocol [1] Authorization phase S: +OK POP3 server ready n client commands: C: user bob ¤ user: declare username [1] S: +OK ¤ pass: password C: pass hungry n server responses S: +OK user successfully logged on ¤ +OK C: list ¤ -ERR S: 1 498 S: 2 912 S: . [2] Transaction phase, client: C: retr 1 n list: list message numbers [2] S: n retr: retrieve message by number S: . n dele: delete C: dele 1 C: retr 2 [3] Update phase: S: n Quit S: . n những thay đổi (dele) được cập nhật C: dele 2 C: quit [3] S: +OK POP3 server signing off 24/8-25/10/2009 Chapter 2. The Application Layer 26
  14. POP3 (more) and IMAP More about POP3 IMAP4 n Chế độ “download and delete” n Lưu trữ toàn bộ msg tại (xem vd trước): server. ¤ Msg bị xoá khi thoát. n Cho phép người dùng tổ chức ¤ Không thể nhận msg lần nữa. lưu trữ trên server (tạo thư n “Download-and-keep”: mục, di chuyển msg…) ¤ Msg được giữ lại server. n Lưu trạng thái giữa các phiên ¤ Có thể nhận msg nhiều lần từ (state): nhiều client. ¤ Thư mục tự tạo. n Không lưu trạng thái giữa các ¤ Các msgs đã di chuyển. phiên làm việc (stateless). 24/8-25/10/2009 Chapter 2. The Application Layer 27 Ch2. The Application Layer 2.1. Một số khái niệm và nguyên tắc. 2.2. Web & Hyper Text Transfer Protocol. 2.3. Web design and HTTP, Web programming. 2.4. File Transfer Protocol. 2.5. Electronic Mail Protocols. 2.6. Domain Name System. 24/8-25/10/2009 Chapter 2. The Application Layer 28
  15. 2.6. DNS (Domain Name System) Mr Toan HTTP (Internet Explorer) www.uct2.edu.vn From: N.V.Toan www.uct2.edu.vn => 210.245.22.125 To: Phòng ðT Phòng ðT 210.245.22.125 => D3 DNS client DNS servers Ms Phuong n Địa chỉ IP (32 bit) được sử dụng để xác định một nút trong mạng TCP/IP: 210.245.22.125 khó nhớ! Sử dụng tên (host name) song song với IP address. n DNS (RFC 1034, RFC 1035, RFC 2136): ¤ Chuyển host name IP address. 24/8-25/10/2009 Chapter 2. The Application Layer 29 DNS services DNS không tương tác trực tiếp với users mà cung cấp các dịch vụ cho các chương trình khác (HTTP, FTP…) thuộc tầng ứng dụng: n Host name IP (hostname to IP resolve). n Host aliasing. ¤ Một máy tính có tên chính thức và có thể có bí danh (alias). n Mail server aliasing. ¤ @uct2.edu.vn mail server address = ? n Load distribution (phân tán tải) ¤ Một dịch vụ web (cnn.com, yahoo.com…) có thể được cung cấp tại nhiều server có IP khác nhau để phân tán tải do lượng người sử dụng cao. 24/8-25/10/2009 Chapter 2. The Application Layer 30
  16. Internet domain name space vn n Domain name (tên miền): n Host name: www.uct2.edu.vn; ¤ Miền = tập hợp các nút mạng có cùng mail.uct2.edu.vn một nút cha trong sơ đồ trên. ¤ vn: Vietnam. ¤ Vd: ¤ edu: education. ¤ uct2.edu.vn; yahoo.com; yale.edu. ¤ uct2: University of Commnication & ¤ Sub-domain: cs.yale.edu; Transport – unit 2. ¤ www: máy chủ world wide web. ¤ mail: máy chủ mail. 24/8-25/10/2009 Chapter 2. The Application Layer 31 Domain name servers Root DNS Servers com DNS servers org DNS servers edu DNS servers pbs.org poly.edu umass.edu yahoo.com amazon.com DNS servers DNS servers DNS servers DNS servers DNS servers Vd: client muốn biết IP của www.amazon.com thì: n Tìm địa chỉ của com DNS servers hỏi Root DNS servers. n amazon.com com DNS servers. n www.amazon.com amazon.com DNS servers. 24/8-25/10/2009 Chapter 2. The Application Layer 32
  17. DNS: Root name servers a Verisign, Dulles, VA c Cogent, Herndon, VA (also Los k RIPE London (also Amsterdam, Angeles) Frankfurt) d U Maryland College Park, MD g US DoD Vienna, VA i Autonomica, Stockholm (plus 3 h ARL Aberdeen, MD other locations) j Verisign, ( 11 locations) m WIDE Tokyo e NASA Mt View, CA f Internet Software C. Palo Alto, CA (and 17 other locations) 13 root name servers b USC-ISI Marina del Rey, CA worldwide l ICANN Los Angeles, CA n Khi local name server không thể chuyển host name IP, gửi yêu cầu tới root srv. n root name server: ¤ Liên lạc với authoritative name server nếu chưa thể ánh xạ đ/c ngay. ¤ Lấy kết quả ánh xạ gửi về từ authoritative name server. ¤ Trả kết quả về cho local name server. 24/8-25/10/2009 Chapter 2. The Application Layer 33 TLD and Authoritative Servers n Top-level domain (TLD) servers: chịu trách nhiệm về các miền com, org, net, edu… và uk, fr, ca, jp… ¤ Network Solutions: quản lý com TLD servers. ¤ Educause: quản lý edu TLD servers. n Authoritative DNS servers: ¤ Mỗi host trong mạng muốn được biết đến phải được khai báo với một authoritiative DNS server. ¤ DNS servers của các tổ chức ánh xạ hostname IP cho các hosts của tổ chức đó (vd: web, mail…). ¤ Có thể được quản lý bởi các tổ chức hay nhà cung cấp dịch vụ. 24/8-25/10/2009 Chapter 2. The Application Layer 34
  18. Local name server n Thuộc quản lý của ISP (ISP, company, university…). n Khi một host muốn biết IP của một host nào đó, trước tiên, nó “hỏi” local name server. n Không nhất thiết phải nằm trong kiến trúc DNS servers (độc lập). n “Gần” máy tính của người sử dụng nhất nên thường được “hỏi thăm” đầu tiên mỗi khi có truy vấn DNS. n Xem Windows Local DNS: ipconfig 24/8-25/10/2009 Chapter 2. The Application Layer 35 DNS example 1 root name server Tình huống: host surf.eurecom.fr cần đ/c IP của gaia.cs.umass.edu 2 4 5 3 1. Liên lạc với local DNS server: dns.eurecom.fr 2. dns.eurecom.fr liên lạc với local name server Authorititive root name server (nếu cần) dns.eurecom.fr name server dns.umass.edu 3. root name server liên lạc với 1 6 authoritative name server: dns.umass.edu (nếu cần) requesting host gaia.cs.umass.edu surf.eurecom.fr 24/8-25/10/2009 Chapter 2. The Application Layer 36
  19. DNS example 2 Root name server có thể: root name server 2 6 n Không biết authoritative 3 7 name server (ans). n Biết intermediate name server (ins) local name server intermediate name server ¤ Từ ins có thể tìm ra ans dns.eurecom.fr dns.umass.edu 4 5 1 8 authoritative name server dns.cs.umass.edu requesting host surf.eurecom.fr gaia.cs.umass.edu 24/8-25/10/2009 Chapter 2. The Application Layer 37 DNS example 3 root name server recursive query: iterated query n A hỏi B, B hỏi C, C hỏi 2 3 D,… rồi trả lời ngược lại. 4 n Server được hỏi chịu tải 7 nặng gấp đôi? local name server intermediate name server dns.eurecom.fr dns.umass.edu iterative query: 5 6 1 8 n DNS server được hỏi gợi ý hỏi một server khác. authoritative name server dns.cs.umass.edu requesting host n “I don’t know this name, surf.eurecom.fr but ask this server” gaia.cs.umass.edu 24/8-25/10/2009 Chapter 2. The Application Layer 38
  20. DNS: caching & updating n Mỗi khi DNS server nhận được yêu cầu tra cứu IP, IP mà nó tìm được sẽ được lưu lại phục vụ cho những lần tra cứu tiếp theo. ¤ Timeout: thời gian hết hạn (sau một khoảng thời gian, bản ghi cache tương ứng bị xoá). ¤ TLD servers thường được cache tại local name servers. n Cơ chế cập nhật/thông báo được đưa ra bởi IETF: ¤ RFC 2136 ¤ http://www.ietf.org/html.charters/dnsind-charter.html 24/8-25/10/2009 Chapter 2. The Application Layer 39 DNS records DNS: distributed db storing resource records (RR) RR format: (name, value, type, ttl) n Type=A n Type=CNAME ¤ name = hostname ¤ name = “bí danh” (alias). ¤ value = IP address www.ibm.com ¤ value = tên thật. n Type=NS servereast.backup2.ibm.com ¤ name = domain name ¤ value = IP address của n Type=MX authoritative name ¤ name = domain name server cho domain này ¤ value = tên của mail server 24/8-25/10/2009 Chapter 2. The Application Layer 40
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2