Đề tài Xây dựng dịch vụ Chat trên mạng

pdf 112 trang phuongnguyen 6370
Bạn đang xem 20 trang mẫu của tài liệu "Đề tài Xây dựng dịch vụ Chat trên mạng", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfde_tai_xay_dung_dich_vu_chat_tren_mang.pdf

Nội dung text: Đề tài Xây dựng dịch vụ Chat trên mạng

  1. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng TRƢỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI TRƢỜNG ĐẠI HỌC THUỶ SẢN KHOA CƠNG NGHỆ THƠNG TIN BÁO CÁO TỐT NGHIỆP Đề tài: Xây dựng dịch vụ Chat trên mạng . Giáo viên hướng dẫn: Hồ Sỹ Bàng. Sinh viên thực hiện : Bùi Thị Thu Hiền Nha Trang_ 22/ 5/2003. SVTH: Bùi Thi Thu Hiền Trang 1
  2. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng MỤC LỤC Trang CHƢƠNG I: TỔNG QUAN VỀ INTERNET I- Kiến trúc mạng máy tính. 7 1. Kiến trúc mạng: 7 2. Mơ hình mạng ISO 7 II- Tổng quan về Internet. 9 1. Internet bắt nguồn từ đâu? 10 2. Giao thức là gì? 10 3. Giao thức TCP/IP. 11 Bộ protocol TCP/IP. 12 Mơ hình kết nối theo giao thức TCP/IP 13 Phân loại địa chỉ IP 14 4. Các dịch vụ kết nối đến Internet. 15 Dịch vụ trực tuyến(online service). 15 Nhà cung cấp dịch vụ Internet(ISP). 15 Truy nhập trực tuyến(direct access) 15 III- Tổng quan một số dịch vụ thơng dụng trên mạng. 15 1. Dịch vụ Chat. 15 2. Đăng nhập từ xa Telnet 15 3. Archie (tìm kiếm tập tin) 16 4. Tìm kiếm thơng tin theo chỉ số WAIS. 16 5. Gopher. 16 6. Dịch vụ Thư Điện Tử (E-mail). 16 7. Dịch vụ World Wide Web hay cịn gọi là Web. 18 8. Dịch vụ tên miền (Domain Name System - DNS) 20 9. Dịch vụ nhĩm tin (Use Net News Groups) 21 10. Dịch vụ FTP (File Transfer Protocol) 22 11. Internet Phone. 22 Tĩm tắt chương I. 23 CHƢƠNG II: TÌM HIỂU VỀ INTERNET RELAY CHAT Giới thiệu tổng quan về IRC 25 I. Một số khái niệm cơ bản 26 1 Servers 26 2 Clients 26 3 Channels 27 II. Những quy định trong IRC 27 1 Dạng chung của thơng điệp 27 2 Message 28 3.Giá trị số trả về (numeric replies) 29 III. Chi tiết từng message (message detail) 29 1.Nhĩm message đăng ký kết nối. 30 Message do server sử dụng 32 1.1 Server Message 32 SVTH: Bùi Thi Thu Hiền Trang 2
  3. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng 1.2 Server Quit Message 32 Message do client sử dụng 32 1.3 Operator message 32 1.4 Quit message 32 Nhĩm message dùng chung 32 1.5 Pass message 32 1.6.Nick Message 33 1.7 User Message. 33 2.Nhĩm message dùng cho việc điều khiển Channel. 33 2 .1 Join message 33 2.2 Part message 33 2.3.Mode message 33 2.3.1 Channel mode 33 2.3.2 User mode 33 2.4 Topic message 34 2.5 Names message 34 2.6 List message 34 2.7.Invite message 34 2.8. Kick message 34 3.Nhĩm message truy vấn đến server (server query and command) 34 3.1 Version message 34 3.2 Stats message 34 3.3 Link message 34 3.4 Time message 34 3.5 Connect message 34 3.6 Trace message 34 3.7 Admin message 35 3.8 Info message 35 4.Nhĩm message gởi text (sending message) 35 4.1 Private message 35 4.2 Notice message 35 5.Nhĩm message do client truy vấn đến server (user –based query) 35 5.1 Who Query 35 5.2 Who is Query 35 5.3 Who was message 35 6 Nhĩm message khác 35 6.1.Kill message 35 6.2.Ping message. 36 6.3.Pong message 36 6.4 Error message 36 7 Nhĩm message tuỳ chọn (option message) 36 7.1 Away message. 36 7.2.Rehast message 36 7.3 Restart message 36 7.4 Summon message 36 7.5. Users message 36 7.6 Operwall message 36 SVTH: Bùi Thi Thu Hiền Trang 3
  4. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng 7.7. Userhost message 36 7.8 Ison message 36 CHƢƠNG III: MỘT SỐ DỊCH VỤ CHAT TRÊN MẠNG I- Chat-Tán gẫu trên mạng 39 II- Dịch vụ Chat IRC(Internet Relay Chat) 39 1. Giới thiệu về hoạt động của IRC 39 2. Cách sử dụng. 39 IRC server 40 Port 40 3. Một số cơng cụ khi thực hiện Chat Mirc 40 Chat chốn đơng người 40 Tìm hiểu về người bạn cùng chat 41 Chat riêng tư 41 Kết nối trực tiếp 41 III- Dịch vụ Yahoo!Messenger. 41 1. Giới thiệu. 41 2. Chat trong Yahoo!Messenger. 43 IV- Dịch vụ AOL INSTANT MESSENGER(AIM) 44 1. Giới thiệu về AIM. 44 2. Cách sử dụng. 45 3. Một số tính năng của AOL Instant Messenger 47 Tìm hiểu về tính năng Instant Message. 47 Tính năng Buddy List. 47 Thơng báo Away và Idle 47 Trao đổi tập tin 47 Đặc tính Image 48 Chat trong AOL Instant Messenger 48 V- MobiChat- Chat qua điện thoại di động 48 VI- Một số dịch vụ chat thơng dụng khác 49 Tĩm tắt chương III. 50 CHƢƠNG IV- GIỚI THIỆU VỀ NGƠN NGỮ LẬP TRÌNH JAVA I- Giới thiệu ngơn ngữ Java. 52 II- Ưu điểm và nhược điểm của Java 53 1. Ưu điểm của Java. 53 2. Nhược điểm của Java 55 3. Hoạt động của Java 55 III- Cơ chế truyền nhận trong Java. 56 1. Các kiến thức cơ bản về Networking. 56 TCP. 57 UDP 57 Port. 59 2. Networking: 59 SVTH: Bùi Thi Thu Hiền Trang 4
  5. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng 2.1. Giao tiếp giữa phần hiện thực client và Browser ở máy local: 60 a. URLs 60 2.2. Sockets 62 b. Sử dụng Socket ở Client 62 c. Sử dụng Socket ở Server 64 d. Lớp Socket. 65 e. Java Security 67 2.3. Threads, Synchronization và Exceptions. 67 a. Multithread 67 b. Synchronization (xử lý crictical section) 69 c. Exceptions 70 3. Cơ Sở Dữ Liệu 70 3.1. JDBC 70 a. JDBC là gì ? 70 b. Cấu trúc JDBC 71 3.2. ODBC và JDBC 72 3.3. Sử dụng JDBC driver 72 3.4. Sử dụng JDBC để truy xuất Cơ sở dữ liệu. 73 a. Kết Nối Tới Cơ sở dữ liệu: 73 b.Truy xuất Cơ sở dữ liệu trong java 73 c. Ðối Tượng ResultSet 74 d. Ðối Tượng ResultSetMetaData: 75 e. Ðối Tượng DatabaseMetaData: 75 f. Lấy Thơng Tin Trên Table 75 Tĩm tắt chương IV. 77 Tài liệu tham khảo. 82 SVTH: Bùi Thi Thu Hiền Trang 5
  6. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng CHƯƠNG 1 TTỔỔNNGG QQUUAANN VVỀỀ MMẠẠNNGG IINNTTEERRNNEETT SVTH: Bùi Thi Thu Hiền Trang 6
  7. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng I- Kiến trúc mạng máy tính. Để hiểu chi tiết hơn về Internet một phần quan trọng của kiến trúc mạng máy tính(Network architecture), tơi xin trình bày sơ lược về kiểu kiến trúc này và mơ hình mạng chuẩn ISO. 1. Kiến trúc mạng: Yếu tố quan trọng của mạng máy tính là tập hợp các máy tính được nối với nhau bởi các đường truyền và theo kiến trúc của một mạng máy tính, chúng cĩ thể kết nối các máy tính với nhau ra sao, tập hợp các quy tắc, quy ước, cách truyền thơng trên mạng phải tuân theo như thế nào để cho mạng hoạt động tốt. Cách nối các máy tính được gọi là hình trạng(Topology)của mạng. Cịn tập hợp tất cả những qui tắc, qui ước truyền thơng thì được gọi là giao thức(protocol)của mạng. Topology và Protocol là hai khái niệm cơ bản nhất của mạng máy tính. - Topology cĩ hai kiểu mạng chủ yếu là: +Kiểu điểm-điểm: các đường truyền nối từng cặp nút với nhau và mỗi nút đều cĩ trách nhiệm lưu trữ tạm thời sau đĩ chuyển dữ liệu đi cho tới đích. +Kiểu truyền bá: Tất cả các nút phân chia chung một đường truyền vật lý. Nghĩa là dữ liệu được gởi đi từ một nút nào đĩ sẽ cĩ thể được tiếp nhận bởi tất cả các nút cịn lại - Giao thức mạng: thơng dụng nhất hiện nay là giao thức TCP/IP sẽ đuợc trình bày chi tiết ở phần sau. Mơ hình mạng máy tính thì nhiều nhưng ở đây em chỉ trình bày mơ hình mạng ISO. 2. Mơ hình mạng ISO: Trước tiên chúng ta cần tìm hiểu vấn đề : tại sao cĩ sự phân tầng của các protocol, ích lợi của sự phân tầng. Để cĩ thể chuyển một thơng điệp(message) từ máy này sang máy khác(các máy phải trong cùng hệ thống mạng) nĩ phải trải qua nhiều giai đoạn khác nhau,các giai đoạn này rất phức tạp như là:chia nhỏ thơng điệp (message) thành nhiều gĩi nhỏ(package),mã hố các gĩi này ra dạng bit,các bit được chuyển qua đường truyền vật lý đến máy nhận.Sau đĩ quá trình nhận sẽ thực hiện ngược lại như bên gởi,nếu quá trình lắp ghép gặp phải lỗi thì phải thơng báo để truyền lại v.v. Các giai đoạn này rất phức tạp, địi hỏi người lập trình ứng dụng phải hiểu rõ tất cả các cơ chế hoạt động bên dưới của hệ thống.Vì vậy người ta đưa ra ý tưởng phân tầng,mỗi tầng phải chịu trách nhiệm cung cấp dịch vụ cho tầng bên trên và đồng thời nĩ cũng sử dụng dịch vụ của tầng bên dưới cung cấp cho nĩ.Như thế một người làm việc ở tầng nào họ chỉ quan tâm đến các tầng cĩ quan hệ trực tiếp với mình. Mơ hình ISO gồm 7 tầng được coi là mơ hình chuẩn vì các mơ hình khác cũng dựa theo mơ hình này để tạo ra một mơ hình phù hợp cho riêng mình, mà ngày nay thơng dụng nhất là mơ hình TCP/IP. SVTH: Bùi Thi Thu Hiền Trang 7
  8. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Receiver Sending Application Application Application Layer Application Layer Presentation Layer Presentation Layer SESSION LAYER SESSION LAYER TRANSPORT TRANSPORT LAYER LAYER NETWORK LAYER NETWORK LAYER DATALINK LAYER DATALINK LAYER PHYSICAL LAYER PHYSICAL LAYER Hình1: Mơ hình ISO gồm 7 tầng. Ý nghĩa các tầng như sau: - Physical: liên quan đến nhiệm vụ truyền dịng bit khơng cĩ cấu trúc qua đường truyền vật lý, truy nhập đường truyền vật lý như các phương tiện cơ, điện, hàm, thủ tục. - Datalink:cung cấp phương tiện để truyền thơng tin qua liên kết vật lý đảm bảo tin cậy: gởi các khối dữ liệu(frame) với các cơ chế đồng bộ hĩa, kiểm sốt lỗi và kiểm sốt luồng dữ liệu cần thiết. - Network: thực hiện việc chọn đường và chuyển tiếp thơng tin với cơng nghệ chuyển mạch thích hợp, thực hiện kiểm sốt luồng dữ liệu và cắt/hợp dữ liệu nếu cần. - Transport: Thực hiện việc truyền dữ liệu giữa hai đầu mút(end-to-end), thực hiện việc kiểm sốt luồng dữ liệu giữa hai đầu mút. - Session: Cung cấp phương tiện quản lý truyền thơng giữa các ứng dụng, thiết lập duy trì đồng bộ hĩa và hủy bỏ các phiên truyền thơng giữa các ứng dụng. - Presentation: Chuyển đổi cú pháp dữ liệu để đáp ứng yêu cầu truyền dữ liệu của các ứng dụng qua mơi trường ISO. - Application: Cung cấp các phương tiện để người sử dụng cĩ thể truy nhập được vào mơi trường OSI, đồng thời cung cấp các dịch vụ thơng tin phân tán. SVTH: Bùi Thi Thu Hiền Trang 8
  9. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng II- Tổng quan về Internet: Internet là cơng nghệ thơng tin liên lạc mới, và hiện đại, nĩ tác động sâu sắc vào xã hội cuộc sống chúng ta, là một phương tiện cần thiết như điện thoại hay tivi, nhưng ở mức độ bao quát hơn. Internet đưa chúng ta vào thế giới cĩ tầm nhìn rộng hơn và bạn cĩ thể làm mọi thứ: viết thư, đọc báo, xem bản tin, giải trí, tra cứu và thậm chí cịn thực hiện những phi vụ làm ăn, .Vì Internet là mạng của các mạng, tức là bao gồm nhiều mạng máy tính kết nối lại với nhau, số lượng máy tính nối mạng và số lượng người truy cập vào mạng Internet trên tồn thế giới đang ngày càng tăng lên nhanh chĩng. Đặc biệt từ năm 1993 trở đi, mạng Internet khơng chỉ cho phép chuyển tải thơng tin nhanh chĩng mà cịn giúp cung cấp thơng tin, nĩ cũng là diễn đàn và là thư viện tồn cầu đầu tiên. Các thơng tin được đặt rải rác trên tồn cầu,cĩ thể truyền thơng được với nhau như một thiết bị Modem và đường dây điện thoại. Hệ điều hành UNIX là hệ phát triển mạnh với rất nhiều cơng cụ hỗ trợ và đảm bảo các phần mềm ứng dụng cĩ thể chuyển qua lại trên các họ máy khác nhau (máy mini, máy tính lớn và hiện nay là máy vi tính). Bên cạnh là hệ điều hành UNIX BSD cịn cung cấp nhiều thủ tục Internet cơ bản, đưa ra khái niệm Socket và cho phép chương trình ứng dụng thâm nhập vào Internet một cách dễ dàng. Internet cĩ thể tạm hiểu là liên mạng gồm các máy tính nối với nhau theo một nghi thức và một số thủ tục chung gọi là TCP/IP (Transmission Control Protocol/Internet Protocol).Thủ tục và nghi thức này trước kia đã được thiết lập và phát triển là cho một đề án nghiên cứu của Bộ Quốc Phịng Mỹ với mục đích liên lạc giữa các máy tính nối đơn lẻ và các mạng máy tính với nhau mà khơng phụ thuộc vào các hãng cung cấp máy tính. Sự liên lạc này vẫn được bảo đảm liên tục ngay cả trong trường hợp cĩ nút trong mạng khơng hoạt động. Ngày nay, Internet là một mạng máy tính cĩ phạm vi tồn cầu bao gồm nhiều mạng nhỏ cũng như các máy tính riêng lẻ được kết nối với nhau để cĩ thể liên lạc và trao đổi thơng tin. Trên quan điểm Client / Server thì cĩ thể xem Internet như là mạng của các mạng của các Server, cĩ thể truy xuất bởi hàng triệu Client. IP cắt nhỏ và đĩng gĩi thơng tin chuyển qua mạng, khi đến máy nhận, thì thơng tin đĩ sẽ được ráp nối lại. TCP bảo đảm cho sự chính xác của thơng tin được truyền đi cũng như của thơng tin được ráp nối lại đồng thời TCP cũng sẽ yêu cầu truyền lại tin thất lạc hay hư hỏng .Tùy theo thơng tin lưu trữ và mục đích phục vụ mà các server trên Internet sẽ được phân chia thành các loại khác nhau như Web Server, email Server hay FTP Server. Mỗi loại server sẽ được tối ưu hĩa theo mục đích sử dụng. Hầu hết người sử dụng truy cập Internet thực hiện cơng việc đơn giản là chạy các chương trình ứng dụng trên một máy tính nào đĩ gọi là máy client mà khơng cần hiểu loại máy tính(Server) đang được truy xuất, kỹ thuật TCP/IP, cấu trúc hạ tầng mạng hay Internet ngay cả con đường truyền dữ liệu đi qua để đến được đích của nĩ.Chỉ cĩ những người lập trình mạng cần xem TCP/IP như là một mạng và cần hiểu một vài chi tiết kỹ thuật. SVTH: Bùi Thi Thu Hiền Trang 9
  10. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Hình 1.4 : Liên lạc trên Internet 1. Internet bắt nguồn từ đâu? Internet bắt đầu từ đầu năm 1969 dưới cái tên là ARPANET(Advanced Research Projects Agency) cịn gọi là ARPA. Nĩ thuộc bộ quốc phịng Mỹ (DoD). Đầu tiên nĩ chỉ cĩ 4 máy được thiết kế để minh hoạ khả năng xây dựng mạng bằng cách dùng máy tính nằm rải rác trong một vùng rộng. Vào năm 1972, khi ARPANET được trình bày cơng khai, đã được 50 trường đại học và các viện nghiên cứu nối kết vào. Mục tiêu của ARPANET là nghiên cứu hệ thống máy tính cho các mục đích quân sự, chính phủ và quân đội tìm kiếm những phương cách để làm cho mạng tránh được các lỗi, mạng này thiết kế chỉ cho phép các văn thư lưu hành từ máy tính này đến máy tính khác, đối với chính phủ và quân đội, máy tính đã cĩ những cơng dụng rõ ràng và sâu rộng. Tuy nhiên, một trong những mối bận tâm chính yếu là tính đáng tin cậy vì nĩ cĩ liên quan đến vấn đề sinh tử. Kế hoạch ARPANET đã đưa ra nhiều đường nối giữa các máy tính. Điều quan trọng nhất là bạn cĩ thể gởi các văn thư bởi bất kỳ con đường khả dụng nào, thay vì chỉ qua một con đường cố định. Đây chính là nơi mà vấn đề về giao thức đã xuất hiện. 2. Giao thức là gì? - Giao thức hay cịn gọi là nghi thức là các phương tiện để làm cho sự thơng tin trở nên khả hữu. Một quyết định phải được thực hiện khi hai hay nhiều máy tính muốn gởi và nhận dữ liệu. Đầu tiên ARPANET đã đưa ra giao thức Host-to-Host Protocol, nhưng giao thức này khơng đáng tin cậy và nĩ chỉ giới hạn trong một số các máy. Vào cuối năm 1970 các mạng khác cũng bung ra trong thực tế, mạng UUCP gồm một nhĩm rồi cũng đã nối được hàng trăm máy rồi hàng ngàn máy. Vào cuối năm 1980 mạng NSFNET mạng của National Science Foundation được phát triển để nối 5 trung tâm siêu máy tính của nĩ, nĩ là mạng hấp dẫn cho tất cả các nhà nghiên cứu và các viện đại học cũng như các viện nghiên cứu. Năm 1972, bắt đầu thế hệ thứ hai của giao thức mạng, SVTH: Bùi Thi Thu Hiền Trang 10
  11. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng đã làm phát sinh ra một nhĩm giao thức được gọi là Transmission Control Protocol/ Internet Protocol viết tắt là TCP/IP. Năm 1983, TCP/IP là bộ giao thức cho ARPANET, TCP/IP đã trở thành một trong những giao thức mạng được dùng rộng rãi nhất. Sau cùng tất cả các mạng được tài trợ bởi cá nhân hay xã hội -mạng ARPANET, MILNET, UUCP, BITNET, CSNET và NASA Science Internet đã liên kết trong một mạng khu vực NSFNET và ARPANET giải tán và ngày càng cĩ nhiều mạng khác thêm vào - Ngày nay để thực hiện việc truyền thơng qua mạng thơng qua trình duyệt Web, và ta cũng cần một giao thức để thực hiện cơng việc này. Mặc dù hiện nay cũng đang cĩ rất nhiều giao thức để truyền thơng tin nhưng nhìn chung cĩ hai giao thức thường được các lập trình viên sử dụng đĩ là: TCP/IP(IP: là giao thức Internet, TCP: giao thức truyền tải) và giao thức UDP(giao thức gĩi dữ liệu người dùng). Vì chương trình của em sử dụng giao thức TCP/IP nên sau đây em sẽ trình bày chi tiết giao thức này. 3. Giao thức TCP/IP. Mơ hình mạng TCP/IP. Application Layer HTTP,FTP,Telnet, SMTP Transport Layer Data Receiving TCP/IP,UDP Network Layer IP Data Sending Physical Layer EthernetX.25, Token Ring Hình 1.2 :Mơ hình mạng ISO. - TCP/IP là một giao thức hướng kết nối(connection) thiết lập một kết nối truyền thơng giữa địa chỉ cổng IP. Liên kết này đảm bảo việc truyền dữ liệu trên mạng là khơng mất thơng tin từ máy nguồn đến máy đích, các gĩi dữ liệu đến đích phải tuân theo đúng thứ tự đã được gởi và các máy tính chạy trên mạng Internet truyền thơng với nhau dùng các Protocol TCP, UDP. Do đĩ ta sử dụng mơ hình mạng TCP/IP gồm bốn lớp được mơ tả bằng hình 1.2.  Application layer: chứa các ứng dụng mạng. Lớp này tương ứng với hai lớp trên cùng(application và presentation layer)của mơ hình OSI.  Transport layer: cung cấp các dịch vụ truyền nhận dữ liệu giữa các quá trình với nhau. Các quá trình này cĩ thể trao đổi thơng tin với nhau thơng qua địa chỉ của SVTH: Bùi Thi Thu Hiền Trang 11
  12. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng máy tính gửi/nhận và cổng thơng tin. Cấp này tương ứng với hai cấp kế tiếp(session và transport layer)của mơ hình OSI.  Network layer: đảm nhận việc xác định, tìm đường và phân phối các gĩi thơng tin với địa chỉ đích. Network layer trong mơ hình TCP/IP tương ứng với hai lớp network và datalink của mơ hình OSI.  Physical layer: sử dụng các giao tiếp chuẩn hiện cĩ như Enthernet, Tokenring, để phục vụ cho việc gởi và nhận dữ liệu. - Để gởi gĩi dữ liệu từ máy nguồn tới máy đích, nĩ phải cĩ một số cách nhận diện những máy này. Trên mạng được nhận dạng bằng cách dùng một hay nhiều địa chỉ IP. Một máy tính cĩ thể cĩ nhiều hơn một địa chỉ IP nếu nĩ cĩ nhiều hơn một Card mạng. Các địa chỉ IP là một số 32 bit rất khĩ nhớ để giải quyết việc này các nhà quản lý mạng đã chọn một hệ thống tên vùng (DNS) để quản lý. Các địa chỉ IP được duy trì bởi một hệ thống máy phục vụ tên vùng. Các máy phục vụ này cĩ khả năng tìm kiếm địa chỉ IP tương ứng với tên vùng. Tuy nhiên liên lạc qua lại giữa các máy tính chỉ là một vấn đề truyền thơng tin trên mạng. Để một chương trình ứng dụng như Mail, Chat, E-mail liên lạc với một ứng dụng khác như máy Server phục vụ, máy Server này phải cĩ cách gởi dữ liệu đến các chương trình riêng bên trong một máy tính. Địa chỉ cổng là địa chỉ 16 bit nằm bên trong một máy tính thường kết hợp với một giao thức đặc biệt như TCP/IP, UDP. Một máy Server (máy phục vụ) phải cài đặt chương trình ứng dụng phục vụ lắng nghe các yêu cầu đến. Trong việc truyền nhận thơng tin dựa trên TCP/IP, một ứng dụng thiết lập một connection với một ứng dụng khác bằng cách gắn một socket cho mỗi port number. Do đĩ sẽ khơng thể cĩ hai ứng dụng dùng chung một port. Bộ giao thức TCP/IP bao gồm:  TCP(Transmission Control Protocol): đây là loại protocol cĩ cầu nối (connection oriented) cung cấp khả năng truyền dịng dữ liệu khơng lỗi, 2 chiều (full duplex)cho các quá trình cho người sử dụng.  UDP(User Datagram Protocol): loại protocol khơng thiết lập cầu nối (connectionless) cho các quá trình của user. Khơng giống như TCP, nĩ khơng đảm bảo dữ liệu khi truyền đi cĩ đến nơi chính xác hay khơng.  ICMP (Internet Control Message Protocol): protocol xử lý lỗi và điều khiển thơng tin giữa các gateway và các host.  IP(Internet Protocol): IP là protocol cung cấp dịch vụ phân phối các package cho TCP, UDP và ICMP. ARP (Address Resolution Protocol): Protocol ánh xạ 1 địa chỉ internet thành địa chỉ phần cứng(MAC address). RAPR(Address Resolution Protocol): Protocol ánh xạ một địa chỉ phần cứng thành địa chỉ IP. - Mạng Internet sử dụng giao thức TCP/IP: TCP/IP được thiết kế để cĩ thể kết nối các thiết bị máy tính khác nhau, là ngơn ngữ chung để các hệ máy tính khác nhau cĩ thể trao đổi, liên lạc, chuẩn này được sử dụng rộng rãi trong hầu hết các hệ thống máy tính bởi những đặc điểm ưu việt của nĩ và chức năng phụ trợ cĩ thể cài đặt thêm vào. Mạng Internet bao gồm rất nhiều kênh kết nối khác nhau mà các gĩi dữ liệu sẽ được lưu chuyển trên đĩ, các kênh được giao tiếp với nhau bằng chuẩn TCP/IP. Nhờ đĩ tất cả các máy tính trên mạng Internet cĩ thể kết nối với nhau. Ngồi ra TCP cung cấp khả năng truyền khơng lỗi từng gĩi dữ liệu gởi đi đến máy nhận, giao thức này SVTH: Bùi Thi Thu Hiền Trang 12
  13. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng phải cĩ trách nhiệm thơng báo và kiểm tra xem dữ liệu cĩ đến đủ hay chưa, cĩ lỗi hay khơng cĩ lỗi. Trước khi chuyển dữ liệu bao giờ cũng cĩ việc thiết lập kênh truyền giữa hai máy. Do phải duy trì mối kết nối và kiểm tra dữ liệu nên sử dụng TCP phải địi hỏi chiếm thêm một số tài nguyên và cách lập trình cho giao thức này hơi khĩ (phải thực hiện các bước kiểm tra dữ liệu theo yêu cầu của TCP). Truyền dữ liệu theo giao thức TCP thường áp dụng cho các dịch vụ như truyền tập tin, các dịch vụ trực tuyến trên Internet địi hỏi cĩ độ chính xác cao. Mơ Hình Kết Nối Theo Giao Thức TCP/IP Client Server Start App Create the server socket Connect attempt Create the socket Accept New Connection Acquire Stream and Acquire Stream and Conduct Conversation Exchange data Conduct Conversation Disconnect Close Stream and Socket Close Stream and Socket no yes Start App Continue? - Địa chỉ IP: Để cĩ thể thực hiện truyền tin giữa các máy tính trên mạng, mỗi máy trên mạng Internet đều cĩ một tên riêng và một địa chỉ dạng số tương ứng gọi là địa chỉ IP. Tên được thiết kế để giúp cho việc truy cập được dễ dàng cho người sử dụng. Địa chỉ IP dùng cho các máy tính và các thiết bị mạng liên lạc với nhau. Tất cả các máy trong hệ thống mạng(LAN, WAN, Internet) đều cĩ ít nhất 2 địa chỉ: địa chỉ vật lý và địa chỉ Internet. Ðịa chỉ vật lý cịn được gọi là Ethernet address là một dãy bit gồm 48 bit được gán bởi các nhà sản xuất, địa chỉ này được biểu diễn dưới dạng số thập lục phân (hecxa). SVTH: Bùi Thi Thu Hiền Trang 13
  14. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Như thế mỗi card mạng (interface card) cĩ một địa chỉ duy nhất địa chỉ này được quy định từ nhà sản xuất card mạng, tuy nhiên địa chỉ vật lý khơng thể hiện khả năng xác định vị trí của hệ thống trên mạng. Ðể giải quyết vấn đề đĩ người ta đưa ra địa chỉ IP(IP Address). Ðịa chỉ IP phải là duy nhất trên mạng và cĩ một dạng thống nhất, mỗi địa chỉ IP gồm cĩ 4 byte và cĩ 2 thành phần: địa chỉ đường mạng (Network ID) và địa chỉ host(Host ID). Class ID Network Host ID ID 32 bits(4 byte) Địa chỉ IP Nếu máy tính được nối mạng với Internet thì địa chỉ IP phải do NIC(Network Information Center) cấp. Phân loại địa chỉ IP Cĩ tất cả 5 lớp địa chỉ IP nhưng hiện nay cĩ 3 lớp được sử dụng là lớp A, B, và C.  Lớp A: Dùng cho hệ thống mạng cĩ số lượng địa chỉ host rất lớn, số lượng này cĩ thể lên đến 16 triệu địa chỉ host. Ðể cĩ thể nhận biết địa chỉ thuộc lớp nào người ta căn cứ vào bit đầu tiên trong phần network ID, trong trường hợp lớp A: bit đầu tiên trong phần ID network bằng 0. 8 bits đầu dùng cho phần Network ID cịn lại 24 bits dành cho phần Host ID. Như vậy cĩ 126(27) địa chỉ đường mạng và 16.777.214 (224)địa chỉ Host ID. 31 30 24 23 0 0 Network ID Host ID  Lớp B: Dùng cho hệ thống mạng trung bình số lượng HostID lên đến khoảng 65 ngàn. Ðịa chỉ lớp B được nhận biết qua bit đầu tiên trong phần Network ID , bit đầu tiên cĩ giá trị 1. Phần Network ID cĩ 16 bit(2 byte) và phần Host ID cĩ 16 bit như vậy số địa chỉ đường mạng trong lớp B này là 16.382(214 -2)và số địa chỉ host 65.534(216 -2).  Lớp C: Ðịa chỉ lớp C dùng cho mạng nhỏ cĩ số lượng máy khơng vượt quá 254 máy. Cĩ thể nhận biết địa chỉ lớp C thơng qua 2 bit đầu tiên trong phần Network ID, hai bit này được bật lên 1. Phần NetWork ID cĩ 2,097,150(221-2) địa chỉ đường mạng và phần Host ID cĩ 254(28-2) địa chỉ host. Chúng ta cĩ thể xem số địa chỉ Host ID và Network ID qua bảng sau: Lớp Số địa chỉ đường Số host trên một địa chỉ Mạng mạng mạng A 126 16,777,214 B 16,382 65,534 C 2,097,150 254 SVTH: Bùi Thi Thu Hiền Trang 14
  15. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Subnet Mask(mặt nạ con) Subnet mask là một dãy 32 bit giống như địa chỉ IP được dùng kèm với địa chỉ IP để xác định mạng con. Khi cĩ một địa chỉ IP và kèm theo là một subnet mask chúng ta cĩ thể xác định địa chỉ đường mạng con của địa chỉ IP đĩ bằng cách thực hiện tốn tử AND giữa IP và subnet đây là cách mà router xác định cho gĩi dữ liệu đi theo đường mạng nào để đến máy nhận. Ví dụ : địa chỉ IP:192.125.125.3 Subnet mask :255.255.255.0 4. Các dịch vụ kết nối đến Internet: Muốn truy nhập Internet, bạn phải đăng ký kết nối. Cĩ nhiều phương pháp để cĩ thể đăng ký kết nối, và luơn cĩ phương pháp mới trong quá trình thiết kế. ba phương pháp phổ biến nhất hiện nay là: Dịch vụ trực tuyến, nhà cung cấp dịch vụ Internet(ISP), và truy cập trực tuyến. - Dịch vụ trực tuyến(online service) là một doanh nghiệp: như AOL, CompuServe, Microsoft Network(MSN), cung cấp nhiều dịch vụ truyền thơng, trong đĩ cĩ truy cập Internet. Khi sử dụng dịch vụ trực tuyến, bạn chạy chương trình kết nối của họ để đăng nhập dịch vụ do họ cung cấp, đến lúc kết nối để chạy Internet Explorer. Dịch vụ trực tuyến thu cước phí hàng tháng(Khơng áp dụng cho người ở Việt Nam). - Nhà cung cấp dịch vụ Internet(ISP): là một cơng ty nhỏ hơn, chuyên dụng hơn, cung cấp tùy chọn khơng nhiều bằng dịch vụ trực tuyến . ISP cho phép truy nhập Internet theo giờ với cước phí thấp, hoặc truy cập khơng giới hạn với cước phí cao hơn. Họ cịn cấp cho khách một tài khoản E-mail. Ở Việt Nam hiện cĩ ba dịch vụ ISP đang hoạt động: VNN, FTP, và NetNam. - Truy nhập trực tuyến(direct access) khả dụng ở nhiều học viện giáo dục hoặc cơng ty lớn. Thay vì sử dụng Modem, những tổ chức này thuê bao một đường truyền chuyên dụng để cung cấp truy nhập Internet 24/24 giờ. III- Tổng quan một số dịch vụ thơng dụng trên mạng. 1. Dịch vụ Chat: Chat là tài nguyên được mọi người sử dụng trên Internet ưa chuộng nhất. Đây là tài nguyên rất lý thú, nĩ cho phép bạn thiết lập các cuộc đối thoại thơng qua máy vi tính với người dùng khác trên Internet. Sau khi bạn đã thiết lập được hệ thống này, những gì bạn gõ trên máy tính của bạn gần như tức thời trên máy tính kia và ngược lại. Những cuộc trao đổi thơng qua chương trình Chat là sự đối mặt trực tiếp giữa hai người đối thoại với nhau thơng qua ngơn ngữ viết nên sẽ chậm hơn so với đối thoại bằng miệng nhưng cĩ lợi nhất là với những người khơng cùng ngơn ngữ vì gõ-đọc dễ hơn nghe-nĩi và trong một số trường hợp khác thì gõ(viết) dễ hơn là nĩi. 2. Đăng nhập từ xa Telnet - TELNET là một chương trình dùng giao thức Telnet, nĩ là một phần của bộ giao thức TCP/IP. Nĩ cho phép người sử dụng từ một trạm làm việc của mình cĩ thể đăng nhập vào một mạng ở xa qua mạng và làm việc với hệ thống y như một trạm cuối, nối trực tiếp với trạm ở xa đĩ. telnet là một giao thức tương đối đơn giản so với các chương trình phỏng tạo của trạm cuối phức tạp hiện nay - Máy tính ở xa, cịn được gọi là telnet, sẽ chấp nhận nối kết telnet từ một máy tính trên một hệ thống TCP/IP. bởi vì Internet là một mạng TCP/IP, telnet sẽ làm việc SVTH: Bùi Thi Thu Hiền Trang 15
  16. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng một cách hài hồ giữa các máy tính nối đến nĩ nếu như dịch vụ telnet được cài đặt trên máy tính của bạn., mặc dù các hệ thống khơng cùng loại chúng vẫn tìm thấy một ngơn ngữ chung. Telnet cũng cĩ những giới hạn của nĩ, nếu lưu thơng trên mạng kết nối từ xa cĩ thể khiến cho sự cập nhật từ màn hình trở nên chậm hơn. Telnet thường dùng cho các mục đích cơng cộng và thương mại, cho phép những người dùng ở xa tìm kiếm các cơ sở dữ liệu lớn, phức tạp, và nĩ cũng là nguồn tài nguyên cĩ giá trị trong giáo dục giúp cho việc nghiên cứu của bạn trở nên hấp dẫn hơn. Ðể khởi động Telnet, từ trạm làm việc của mình người sử dụng chỉ việc gõ: telnet 3. Archie (tìm kiếm tập tin) Phát triển tại đại học McGill ở Canada, Archie là một loại thư viện khổng lồ sẽ tự động và đều đặn tạo ra một số lớn các thơng tin gởi đến máy chủ trên Internet và lập chỉ mục các tập tin của chúng để tạo ra một cơ sở dữ liệu duy nhất cĩ thể tìm kiếm được. CSDL này cịn là mục lục của dữ liệu danh mục, một sự biên dịch các tập tin cĩ sẵn trên mọi máy chủ, Archie quét qua các máy chủ Internet một cách thường xuyên, và CSDL này thường xuyên được cập nhật., thực sự thì Archie khơng phải là một hệ thống độc lập, nĩ là một nhĩm các máy chủ, mỗi máy chủ archie đáp ứng cho sự tra hỏi các máy chủ Internet của chính nĩ để tạo nên cơ sở dữ liệu cho chính nĩ 4. Tìm kiếm thơng tin theo chỉ số WAIS. WAIS - Wide Area Information Server: nĩ là một trong những chương trình đầu tiên dựa vào tiêu chuẩn Z39.50( tiêu chuẩn của American National Standard), nĩ là hệ thống đầu tiên dùng tiêu chuẩn này, nĩ trở thành một dạng thức tìm kiếm phổ biến, WAIS cĩ thể nối đến bất kỳ CSDL hoặc máy Client cĩ dùng Z39.50. WAIS cho phép tìm kiếm và truy nhập thơng tin trên mạng mà khơng cần biết chúng đang thực sự nằm ở đâu. WAIS cũng hoạt động theo mơ hình client/server, ngồi ra cịn cĩ WAIS indexer thực hiện việc cập nhật dữ liệu mới, sắp xếp theo chỉ số để tiện tìm kiếm, nĩ khơng chỉ cho phép hiển thị tập tin văn bản mà cịn những tập tin đồ họa. Nĩ là nguồn quan trọng giúp cho các nguồn thơng tin trên Internet cĩ thể truy xuất được 5. Gopher. Hệ thống Gopher phát triển bởi đại học Minnesota và được miễn phí cho các hoạt động phi lợi nhuận, Gopher cĩ thể được dùng trên một số hệ thống máy tính như: UNIX, DOS, Microsoft Windows, Macintosh, OS/2 Phần mềm Client chạy trên máy tính của bạn cĩ thể chạy trên bất kỳ máy nào của Gopher. Với Gopher bạn cĩ thể đi xuyên qua Internet và đi đến những nơi mà khơng cĩ người dùng nào đã từng đi đến, cách mà nĩ thực hiện bởi tổng hợp các cơng cụ Internet như: Telnet, FTP, để khi bạn tìm ra một đề mục tương quan đến những gì bạn đang tìm kiếm, bạn cĩ thể đi trực tiếp đến nĩ mà khơng cần một trình tiện ích, hãy nhập vào địa chỉ của mục tiêu việc tìm kiếm Gopher sẽ lấy tất cả điều này cho bạn 6. Dịch vụ Thƣ Điện Tử (E-mail). Là dịch vụ được sử dụng nhiều nhất cĩ hiệu quả nhất. Người gởi chỉ cần soạn thảo thư(giống như soạn thảo văn bản). Khai báo địa chỉ E-mail của người nhận trên Internet rồi thực hiện một số thao tác theo mẫu hướng dẫn. Bức thư điện được chuyển đi và cuối cùng lưu trữ trong máy của người nhận. Người nhận cũng chỉ thực hiện một SVTH: Bùi Thi Thu Hiền Trang 16
  17. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng số thao tác đơn giản để lấy thư, đọc thư và nếu cần thì cho in ra. Cách liên lạc này thuận tiện hơn nhiều so với gởi thư thơng thường qua bức điện hoặc Fax, lại rẻ và nhanh hơn. Cách thực hiện việc chuyển thư khơng cần phải kết nối trực tiếp với nhau để chuyển thư, thư cĩ thể được chuyển từ máy này đến máy khác cho tới máy đích Giao thức truyền thống sử dụng cho hệ thống thư điện tử của Internet là SMTP(Simple Mail Transfer Protocol). Cơ chế hoạt động của thư điện tử(E-mail): Sơ đồ hoạt động của mạng E-mail Giao thức liên lạc : mặt dù gởi thư trên Internet sử dụng nhiều giao thức khác nhau, nhưng giao thức SMTP (Single Message Transfer Protocol). Giao thức này đặt tả trong hai chuẩn là trong RFC 822 (định nghĩa cấu trúc của thư ) và RFC 821(đặc tả giao thức trao đổi thư giữa hai mạng). Là giao thức cơ bản để chuyển thư giữa các máy Client, SMTP cĩ một bộ gởi thư, một bộ nhận thư, và một tập hợp lệnh dùng để gởi thư từ người gởi đến người nhận. Cứ mỗi trạm e-mail thường bao gồm hai dịch vụ: POP3 (Post Office Protocol Version 3) cĩ nhiệm vụ nhận/trả thư từ/tới e-mail client và dịch vụ SMTP (Simple E- mail Transfer Protocol) cĩ nhiệm vụ nhận/phân phối thư từ/đến POP3 đồng thời trao đổi thư với các trạm e-mail trung gian. Mỗi người dùng (client) đều phải kết nối với một E-mail Server gần nhất (đĩng vai trị bưu cục địa phương) phải cĩ một tên (e-mail account) trên một trạm e-mail và sử dụng chương trình e-mail client (ví dụ như Eudora, Netscape ). Sau khi soạn thảo xong thư và đề rõ địa chỉ đích (người nhận) rồi gửi thư tới E-mail-Server của mình. E- mail Server này cĩ nhiệm vụ sẽ tự động kiểm tra và định hướng chuyển thư tới đích hoặc chuyển thư tới một E-mail-Server trung gian khác. Thư chuyển tới E-mail-Server của người nhận và được lưu ở đĩ. Đến khi người nhận thiết lập tới một cuộc kết nối tới E-mai-Server đĩ thì thư sẽ chuyển về máy người nhận, nếu khơng thì thư vẫn tiếp tục giữ lại ở server đảm bảo khơng bị mất. Phần khác của ứng dụng thư điện tử là cho phép người sử dụng đính kèm (attachments) theo thư một tập tin bất kỳ (cĩ thể dạng nhị phân, chẳng hạn chương trình chạy). E-mail đã và đang hết sức thành cơng đến nỗi những người sử dụng Internet phục vụ dùng nĩ đối với hầu hết các trao đổi của họ. Một lí do làm e-mail Internet phổ biến là vì việc thiết kế nĩ rất cẩn thận: giao thức làm cho việc "phát thư" cĩ độ tin cậy cao.Khơng chỉ hệ thống thư tín trên máy của người gởi tương tác trực SVTH: Bùi Thi Thu Hiền Trang 17
  18. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng tiếp trên máy của người nhận mà giao thức cịn đặc tả một thơng điệp khơng thể bị xố bởi người gởi cho đến khi người nhận đã thật sự cĩ một phiên bản của thơng điệp trên bộ lưu trữ (đĩa cứng chẳng hạn)của họ. Như vậy để gởi/nhận thư người sử dụng chỉ cần quan tâm tới cách sử dụng chương trình e-mail client. Hiện nay cĩ nhiều chương trình e-mail client như Microsoft Outlook Express, Eudora Pro, Peagasus mail, 7. Dịch vụ World Wide Web hay cịn gọi là Web. Là dịch vụ thơng tin mới nhất và hấp dẫn nhất trên Internet, nĩ ra đời năm 1989, và ngày nay nĩ cấu thành phần lớn nhất của Internet hiện nay dựa trên kỹ thuật biểu diễn thơng tin gọi là siêu văn bản, trong đĩ các từ được chọn trong văn bản cĩ thể được mở rộng bất cứ lúc nào để cung cấp đầy đủ hơn thơng tin về từ đĩ. Sự mở rộng ở đây theo nghĩa là chúng cĩ thể liên kết tới các tài liệu khác: văn bản, hình ảnh, âm thanh, hay hỗn hợp các loại .cĩ chứa thơng tin bổ sung. Nĩi cách khác World Wide Web là phần đồ họa của Internet. Ban đầu, Internet là hệ thống truyền thơng dựa trên văn bản; việc liên kết với những site khác cĩ nghĩa là phải gõ những địa chỉ mã hĩa rất dài với độ chính xác 100%. Cơng nghệ World Wide Web xuất hiện như là một vị cứu tinh. Khả năng đặt hình ảnh lên Web Site bất ngờ làm cho thơng tin trên Web trở nên hấp dẫn hơn, lơi cuốn hơn. Ngồi ra HTTP (Hypertext Transfer Protocol) cho phép trang Web kết nối với nhau qua các siêu liên kết (hyperlink), nhờ vậy mà người dùng dễ dàng "nhảy" qua các Web site nằm ở hai đầu trái đất, World Wide Web chỉ là một phần cấu thành nên Internet ngồi ra cịn cĩ rất nhiều thành phần khác như: E- mail, Gopher, Telnet, Usenet - Web site là gì? Web hình thành từ hàng triệu Web Site trên Internet. Web Site là tập hợp trang Web do cá nhân hoặc cơng ty đăng ký hiển thị trên Web. Một Web site tiêu biểu thường gồm nhiều trang Web, bắt đầu bằng trang chủ( home page), liệt kê nội dung của Site. Một Web site tiêu biểu con chứa siêu liên kết dẫn đến những trang Web cịn lại trong phạm vi site và đến các web site khác. Các web site cĩ thể chỉ gồm một trang do cá nhân tạo thành, hoặc là một sản phẩm của cơng ty và chứa vài trăm trang.,mỗi trang Web cĩ một địa chỉ Internet khơng trùng lặp gọi là URL (Uniform Resource Locator). Bạn tạo Web site bằng HTML (DHTML, XML ) (Hypertext Markup Language). HTML là ngơn ngữ lập trình cho phép mọi máy tính kết nối với Web để truy cập và xem trang Web, định hướng di chuyển qua chúng bằng siêu liên kết. Web site được các máy tính - gọi là máy phục vụ Web(Web Server)- gởi lên Web. Máy phục vụ và máy tính cho phép các máy khách truy cập trên mạng. Máy phục vụ thường chia sẻ tập tin với (hoặc cung cấp dịch vụ cho) máy khách nào đăng nhập nĩ. Máy phục vụ Web sử dụng phần mềm máy phục vụ HTTP để cung cấp tài liệu HTML khi nhận được yêu cầu từ chương trình trên máy khách kết nối với Web, chẳng hạn như trình duyệt Web. trình duyệt Web (Web Brower)là chương trình cho phép bạn định vị, yêu cầu, và hiển thị tài liệu trên World Wide Web. - Cơ chế hoạt động của Web server + Máy server Web dùng giao thức HTTP để lấy tài nguyên Web xác định thơng qua URL. HTTP là một giao thức mức ứng dụng được thiết kế sao cho truy cập tài nguyên Web nhanh chĩng và hiệu quả. Giao thức này dựa vào mơ hình request- reponse. Dịch vụ Web xây dựng theo mơ hình client/server, trong đĩ Web browser đĩng vai trị là client gởi các yêu cầu dưới dạng URL đến server. Web server trả lời bằng cách trả về một trang Hypertext Markup Language (HTML). SVTH: Bùi Thi Thu Hiền Trang 18
  19. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng + Trang HTML cĩ thể là một trang tĩnh, tức là nội dung của nĩ đã cĩ dạng xác định và được lưu trên Web site, hoặc một trang Web động (nội dung khơng xác định trước) mà server tạo ra tại thời điểm client yêu cầu để trả lời cho yêu cầu của client, hoặc một trang liệt kê các file và folder trên Web site. Web browser gửi yêu cầu URL đến Web server + Mỗi trang trong một intranet hoặc trên Internet cĩ một URL (Uniform Resource Location) duy nhất định vị chúng. Web browser yêu cầu một trang bằng cách gửi một URL đến một Web server. Web server sẽ dùng các thơng tin trong URL để định vị và tổ chức một trang HTML để gửi về cho Web browser. + Một chuỗi URL nĩi chung cĩ dạng sau: :// / Trong đĩ: Tiền tố chỉ ra giao thức được sử dụng cho dịch vụ, ví dụ giao thức Hypertext Transport Protocol (HTTP) được dùng cho dịch vụ Web, giao thức FTP, gopher, là tên DNS (Domain Name System) của máy Web server. là đường dẫn đến thơng tin được yêu cầu trên server. Bảng sau ví dụ về các địa chỉ URL khác nhau: Protocol Domain name Path http:// www.hcmuns.edu.vn /vanphong/dtao.htm https:// www.company.com /catalog/orders.htm (secure HTTP) gopher:// gopher.college.edu /research/astronomy/index.htm ftp:// orion.bureau.gov /stars/alpha quadrant/startlist.txt Web server trả lời yêu cầu của Web browser SVTH: Bùi Thi Thu Hiền Trang 19
  20. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Web server trả l ời yêu cầu URL đến Web browser + Web server sẽ trả một trang HTML về cho Web browser, các trang HTML thuộc một trong 3 kiểu sau: Trang Web tĩnh (Static webpage) : là những trang HTML được chuẩn bị sẵn, Web server chỉ đơn giản là lấy trang này gởi về cho Web browser mà khơng gọi thi hành một chương trình hay một script nào khác. Người dùng yêu cầu một trang Web tĩnh bằng cách nhập vào một chuỗi URL hoặc click chuột vào một siêu liên kết trỏ tới URL. Trang Web động (Dynamic webpage) : là những trang Web được tạo ra tại thời điểm client gửi yêu cầu để đáp ứng yêu cầu của user. Server cĩ thể sẽ gọi chạy một chương trình khác, sử dụng các API của server, các ngơn ngữ kịch bản CGI script, query cơ sở dữ liệu tùy theo các thơng tin mà web browser cung cấp. Danh sách liệt kê(Directory listing) : Nếu user gửi yêu cầu mà khơng mơ tả một file cụ thể, thì cĩ thể tạo một trang mặc nhiên cho Web site hay cho một thư mục, hoặc cấu hình server cho phép duyệt thư mục. Nếu sử dụng trang HTML mặc nhiên cho thư mục, thì trang này sẽ được gửi cho Web browser, cịn nếu khơng cĩ thì một directory listing (phiên bản HTML của Windows Explorer hay File Manager chạy trên trình duyệt) được trả về cho user dưới dạng một trang HTML, trong đĩ mỗi file và thư mục thể hiện như một siêu liên kết. Sau đĩ user cĩ thể nhảy đến một file bất kỳ bằng cách click vào siêu liên kết tương ứng trong directory-listing. 8. Dịch vụ tên miền (Domain Name System - DNS) Việc định danh các phần tử của liên mạng bằng các con số như trong địa chỉ IP, rõ ràng là khơng làm cho người sử dụng hài lịng, bởi chúng khĩ nhớ, dễ nhầm lẫn. Vì thế người ta đã xây dựng hệ thống đặt tên (name) cho các phần tử của Internet, cho phép người sử dụng chỉ cần nhớ đến các tên chứ khơng cần nhớ đến các địa chỉ IP nữa. Ta cĩ thể biết thêm thơng tin cách hoạt động của dịch vụ này thơng qua RFC 1035. SVTH: Bùi Thi Thu Hiền Trang 20
  21. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Hệ thống này được gọi là DNS (Domain Name System). Ðây là một phương pháp quản lý các tên bằng cách giao trách nhiệm phân cấp cho các nhĩm tên. Mỗi cấp trong hệ thống được gọi là một miền (domain), các miền được tách nhau bởi dấu chấm. Số lượng domain trong một tên cĩ thể thay đổi nhưng thường cĩ nhiều nhất là 5 domain. Domain cĩ dạng tổng quát là local-part@domain-name. trong đĩ : + Local-part thường là tên của một người sử dụng hay nhĩm người sử dụng do người quản lý mạng nội bộ qui định. + Cịn domain-name được gán bởi các Trung tâm thơng tin mạng (NIC) các cấp. Domain cấp cao nhất là cấp quốc gia, mỗi quốc gia được gán một tên miền riêng biệt gồm hai chữ cái. Ví dụ vn (Việt Nam), us (Mỹ), ca (Canada), fr (Pháp), v.v Trong từng quốc gia lại được chia thành 6 domain cao nhất và tiếp tục đi xuống các cấp thấp hơn. Domain Phạm vi sử dụng gov các tổ chức chính phủ (phi quân Quốc gia VN sự) edu các cơ sở giáo dục com các tổ chức kinh doanh, thương gov edu com mil org net mại mil các tổ chức quân sự hut org các tổ chức khác net các tài nguyên mạng fit 9. Dịch vụ nhĩm tin (Use Net News Groups) Là dịch vụ cho phép nhiều người ở nhiều nơi khác nhau cĩ thể tham gia cơng tác hay trao đổi về một chủ đề riêng nào đĩ hoặc những người cĩ cùng mối quan tâm giống nhau cĩ thể tham gia vào một nhĩm tin để trao đổi về vấn đề đĩ. Mỗi chủ đề được thảo luận trong một nhĩm riêng biệt. Chủ đề của một nhĩm tin thì vơ cùng phong phú ví dụ như: nhĩm tin thuộc nhạc cổ điển, nhĩm tin về thể thao, nhĩm tin khoa học Khi bạn gởi một bản tin đến một nhĩm tin chủ thì chủ đĩ sẽ tiếp tục gởi bản tin đến một nhĩm chủ cùng cộng tác trên Internet, và thơng tin cĩ thể lấy từ các Server (máy chủ) khác nhau. Vì vậy những người khác cĩ thể lấy về và đọc bản tin đĩ từ News Server mà họ nối tới. Việc gởi bản tin tới nhĩm tin cũng tương tự như E-mail chỉ khác ở chỗ là địa chỉ gởi là địa chỉ của nhĩm tin và việc lấy các văn bản về đọc cũng tương tự như lấy và đọc E-mail. Và người sử dụng cũng chỉ cần biết đến một server tin duy nhất, đĩ là server tin mà mình kết nối vào. Mọi sự trao đổi, tương tác giữa các server tin và các nhĩm tin là hồn tồn trong suốt đối với người sử dụng. Với dịch vụ này, người sử dụng cĩ thể nhận được thơng tin cần thiết từ nhiều người từ khắp thế giới. SVTH: Bùi Thi Thu Hiền Trang 21
  22. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng 10. Dịch vụ FTP (File Transfer Protocol) - Là dịch vụ truyền tập tin(tệp) trên Internet. FTP cho phép dịch chuyển tập tin từ trạm này sang trạm khác, bất kể trạm đĩ ở đâu và sử dụng hệ điều hành gì, chỉ cần chúng đều được nối với Internet và cĩ cài đặt FTP. FTP là một chương trình phức tạp vì cĩ nhiều cách khác nhau để xử lý tập tin và cấu trúc tập tin, và cũng cĩ nhiều cách lưu trữ tập tin khác nhau. Để khởi tạo FTP từ trạm làm việc của mình người sử dụng chỉ gõ : FTP - FTP sẽ thiết lập liên kết các trạm xa và bạn sẽ đăng nhập vào hệ thống(login/password). Vì FTP cho phép truyền tập tin theo cả hai chiều. Để chuyển tập tin của mình đến trạm ở xa dùng lệnh put, và ngược lại dùng lệnh get để lấy thơng tin về. Ngồi ra trong một số trường hợp nĩ cĩ thể đổi tên, tạo, xố thư mục .FTP Client sử dụng dịch vụ để lấy(get) các tập tin từ FTP Server về máy của mình (download) hoặc gởi(put) các tập tin lên FTP server (upload). ftp>put source-file destination-file ftp>get source-file destination-file - FTP theo nghĩa tiếng việt là nghi thức truyền file giữa các máy tính này đến máy tính khác thơng qua mạng. Nếu như nghi thức TCP/IP gồm cĩ các lớp Application, lớp TCP, lớp IP, lớp Network, lớp Datalink và lớp Physical thì FTP thuộc lớp ứng dụng (Application). - WWW là một dịch vụ hấp dẫn, nĩ thay thế hầu hết những chức năng của FTP. Tuy nhiên chỉ cĩ FTP mới cho phép copy file từ máy tính Client đến Server. Nếu một người dùng từ xa muốn làm điều này thì chắc chắn họ phải dùng FTP. Những loại file cĩ thể truyền được bằng FTP rất phong phú, từ các file tư liệu(document) cho đến các file Multimedia như file hình ảnh, âm thanh. Mơ hình truyền nhận File 11. Internet Phone. Hệ thống điện thoại Internet cho phép bạn hội đàm điện thoại dùng Internet như đường truyền, sử dụng microphone và card âm thanh, nĩi chuyện với người thân và bạn bè ở bên kia bán cầu. SVTH: Bùi Thi Thu Hiền Trang 22
  23. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng TĨM TẮT CHƢƠNG I:  Mạng Internet là một tập hợp gồm hàng vạn hệ mạng trên khắp thế giới. Chương này em chỉ đưa ra những thành tựu, những tiêu chuẩn, những dịch vụ đã được các tổ chức của thế giới cơng nhận. - Kiển trúc mạng: là yếu tố quan trọng mở màn cho cuộc cách mạng về những khái niệm về mạng, một bước tiến khơng thể thiếu được khi mạng Internet đang trở thành đỉnh điểm như ngày nay. Kiến trúc mạng gồm tập hợp tất cả những qui tắc, qui ước truyền thơng thì được gọi là giao thức(protocol)của mạng. Topology và Protocol là hai khái niệm cơ bản nhất của mạng máy tính. - Topology cĩ hai kiểu mạng chính đĩ là: Kiểu điểm-điểm và kiểu truyền bá Protocol(giao thức) mạng: ở đây em trình bày giao thức thơng dụng nhất hiện nay là giao thức TCP/IP. Mơ hình mạng máy tính thì nhiều nhưng em chỉ trình bày mơ hình mạng chuẩn ISO. Theo mơ hình này, thơng tin muốn gởi và nhận qua mạng phải đi qua 7 lớp, mỗi lớp cĩ một chức năng khác nhau. - Tổng quan về Internet: Là thành phần chính của chương này. Internet là cơng nghệ thơng tin liên lạc mới, và hiện đại, nĩ tác động sâu sắc vào xã hội cuộc sống chúng ta. Nĩ xuất hiện năm 1969 dưới cái tên là ARPANET, thuộc bộ quốc phịng Mỹ. - Giao thức mạng: Xuất hiện đầu tiên năm 1970 là giao thức Host-to-Host Protocol. Giao thức hay cịn gọi là nghi thức là các phương tiện để làm cho sự thơng tin trở nên khả hữu. Một quyết định phải đuợc thực hiện khi hai hay nhiều máy tính muốn gởi và nhận dữ liệu. - Giao thức TCP/IP: là một giao thức huớng kết nối(connection) thiết lập một kết nối truyền thơng giữa địa chỉ cổng IP. Liên kết này đảm bảo việc truyền dữ liệu trên mạng là khơng mất thơng tin. -Bộ giao thức TCP/IP bao gồm: TCP, UDP, ICMP, IP, ARP, RAPR Phân loại các địa chỉ IP: thơng qua các lớp A, B, C và mặt nạ con(Subnet Mask). - Các dịch vụ kết nối đến Internet: dịch vụ trực tuyến, nhà cung cấp dịch vụ, truy nhập trực tuyến. - Tổng quan một số dịch vụ trên mạng: Chat, đăng nhập từ xa(Telnet), Archie (tìm kiếm tập tin), Tìm kiếm thơng tin theo chỉ số WAIS, Gopher, E-mail, Dịch vụ World Wide Web hay cịn gọi là Web, Dịch vụ tên miền (Domain Name System - DNS), Dịch vụ nhĩm tin (Use Net News Groups), Dịch vụ FTP, Internet Phone. SVTH: Bùi Thi Thu Hiền Trang 23
  24. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng CHƯƠNG 2 TTÌÌMM HHIIỂỂUU VVỀỀ INTERNET RELAY CHAT (IRC) SVTH: Bùi Thi Thu Hiền Trang 24
  25. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Giới thiệu tổng quan về IRC Hiện nay trên Internet cĩ nhiều loại dịch vụ ,mỗi dịch vụ cung cấp cho ta một tiện ích khác nhau,trong đĩ cĩ dịch vụ chat. Đây là một loại dịch vụ cho phép mọi người trên khắp hành tinh cĩ thể gặp gỡ,trao đổi thơng tin với nhau mà khơng cần gặp nhau trực tiếp.Dịch vụ rất phát triển, cĩ đến hàng triệu người trên thế giới sử dụng dịch vụ này.Vì vậy vấn đề đặt ra là phải cĩ một quy định chung cho hệ thống mạng.Uỷ ban IAB về các giao thức chuẩn(IAB Official Protocol Standards) đã đưa ra một giao thức chuẩn(Standard protocol) dùng cho tất cả các chương trình chat đang tồn tại. Đĩ là IRC(Internet Relay Chat) protocol được định nghĩa trong RFC(Request For Comment) 1459, 2810, 1324, 2811, 2813. IRC protocol được đưa ra vào năm 1980 tiền thân của nĩ dùng cho các thành viên trong mạng BBS trao đổi thơng tin với nhau,dần dần được cải tiến và trở thành giao thức chuẩn cho các chương trình IRC.Quy mơ của IRC protocol là trên tồn cầu , gồm 2 thành phần Client và Server. Hiện nay IRC protocol được xây dựng trên họ giao thức mạng phổ biến nhất là TCP/IP lý do việc sử dụng họ giao thức này là tính chính xác, tin cậy,phổ biến,rất thích hợp cho các cuộc thảo luận từ xa . IRC protocol dùng mơ hình client-server,vì thế chúng ta cĩ thể chạy nhiều máy trên mơi trường phân tán.Trong đĩ máy đĩng vai trị là server cung cấp một điểm tập trung(central point)cho các client kết nối đến,và đồng thời thực hiện quá trình truyền nhận message từ các client này đến các client khác. SVTH: Bùi Thi Thu Hiền Trang 25
  26. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng I. Một số khái niệm cơ bản . 1 Servers.  Server1  Server2   Server3 Server4    Client2 Server5 Server6  Client4   Client3 Client1 Hình 1.Mơ hình hệ thống mạng IRC. Server được xem là xương sống của mạng IRC, mỗi server là một tâm điểm trong hệ thống các server,chúng cho phép các server và các client khác kết nối vào.Những server này được kết nối theo biểu đồ hình cây (spanning tree). Ví dụ .client1 muốn trao đổi thơng tin với client3 chúng phải thơng qua server5 Server6, server3 . 2.Clients. Client là một máy tính mà nĩ được kết nối đến server và máy tính đĩ khơng phải là server. Client là thiết bị đầu cuối nĩ khơng chuyển tiếp message cho bất cứ máy tính nào khác. Mỗi client phân biệt với nhau thơng qua nickname(nickname là chuỗi cĩ tối đa 9 ký tự).Server dùng nickname để quản lý client. Khi cĩ sự tham gia một client vào hệ thống,tất cả các server phải cĩ thơng tin về client đĩ như là tên client,tên server mà nĩ kết nối đến SVTH: Bùi Thi Thu Hiền Trang 26
  27. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Operators. Để cĩ thể quản lý số lượng các user tham gia trên mạng (IRC network) người ta xây dựng một nhĩm user gọi là “client operator”nhĩm này cĩ đầy đủ quyền hạn trên mạng.Mặc dù quyền hạn (cấp cho client operator) này cĩ thể được xem là “nguy hiểm”, nhĩm “client operator”cĩ thể thực hiện các tác vụ như huỷ bỏ kết nối của một client nào đĩ hoặc tái kết nối đến server nào đĩ.Những tác vụ này cĩ thể thực hiện khi cĩ một server bị hỏng hay khi cĩ sự cố đường truyền và nhiều nguyên nhân khác. Chính vì khả năng đĩ nên người ta cho rằng nhĩm “ client operators” cĩ thể nguy hiểm vì cĩ thể nhĩm client này huỷ bỏ kết nối của một client khác mà khơng cĩ lý do hợp lý hay một đích chính đáng. 3 Channels. Channel là tên nhĩm một hay nhiều client ,mà những client sẽ cùng được nhận các message gởi đến channel đĩ.Những client trong cùng một channel mới cĩ thể nhận thấy nhau. Một channel được ngầm tạo ra khi cĩ client đầu tiên tham gia và kết thúc khi client cuối cùng ngưng kết nối.Trong khi channel đang tồn tại thì client cĩ thể tham gia vào channel đĩ bằng cách dùng tên channel. Tên của channel cĩ thể lên đến 200 ký tự,bắt đầu bằng ký tự “&”hay”#” và khơng cĩ ký tự khoảng trắng. Để cĩ thể tạo ra một channel hay là tham gia vào một channel cĩ sẵn,client phải gởi JOIN message . Channels operators. Channels operation cịn được gọi là “chop” hoặc “chanop” .Khi cĩ một user tạo ra channel thì mặc nhiên user đĩ trở thành channel operator,là người sở hữu channel user cĩ đầy đủ quyền hạn trên channel đĩ như:  KICH - đẩy một client ra khỏi channel  MODE - thay đổi mode của channel  INVITE - gọi một client tham gia vào channel mà nĩ đang ở trạng thái invite-only (mode i+)  TOPIC - thay đổi topic channel, channel này đang ở trạng thái +t(mode +t). Channel operator cĩ thể cấp quyền cho client khác hay nhường quyền lại. Một channel operator thì được nhận dạng bởi ký tự bắt đầu “@” ,tiếp theo là nickname (nickname của user tạo ra channel đĩ). II Những quy định trong IRC. 1 Dạng chung của thơng điệp. Thơng điệp cĩ hai dạng: Các thơng điệp xuất phát từ lệnh(thơng điệp được phát sinh từ một lệnh): là thơng điệp được client gởi đến server để yêu cầu một mục đích nào đĩ.Các thơng điệp này cĩ thể khơng cịn nguyên thuỷ như khi user gõ vào mà chúng được gắn thêm prefix (địa chỉ host, nickname của user gởi ) . SVTH: Bùi Thi Thu Hiền Trang 27
  28. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Thơng điệp trả về là thơng điệp được server gởi về client để trả lời lại các yêu cầu của client. Thơng điệp cĩ thể bằng chữ hay bằng số. 2 Message. Message là thơng điệp từ client gởi cho server hay ngược lại,nếu trong message chứa lệnh thì những lệnh này sẽ được đáp lại bằng thơng điệp phản hồi (reply message). Mỗi message gồm cĩ 3 phần chính:phần đầu gọi là tiếp đầu ngữ(prefix),tiếp theo đĩ là phần lệnh (command) và cuối cùng là danh sách đối số (parameters list),mỗi phần cách nhau bởi ký tự khoảng trắng(ASCII 0x20).Bắt đầu prefix là ký tự “:” (ASCII 0x3b),chính nhờ vào ký tự này mà server nhận biết chính xác phần lệnh, những cú pháp lệnh sẽ được mơ tả chi tiết trong phần định dạng message (format message). Nếu message từ client gởi đến mà khơng nhận thấy phần đầu(prefix) thì server xem như message đĩ được gởi từ client mà nĩ kết nối trực tiếp vì thế các client muốn gởi message đến server mà nĩ kết nối trực tiếp khơng nên dùng phần prefix,nếu sử dụng cần phải sử dụng chính xác vì nếu prefix khơng đúng thì server khơng đáp lại mà nĩ im lặng. Phần lệnh là những thành phần thuộc về IRC (được mơ tả chi tiết trong phần message detail ),chiều dài lệnh và danh sách đối số cho phép là 510 ký tự,cuối mỗi message cĩ ký tự kết thúc(CR-LF) như thế tổng chiều dài chúng là 512 ký tự. Định dạng một message. Vấn đề đặt ra là làm sao cĩ thể nhận dạng và phân tích ra từ những luồng tuần tự các message gởi đến., để giải quyết vấn đề này người ta lập ra quy định cho message. Một message luơn cĩ ký tự kết thúc, nhờ vào ký tự này mà server cĩ thể tách message ra khỏi luồng(stream).Sau khi tách ra chúng được phân tích thành 3 thành phần chính ,ta sẽ khảo sát sau.Cấu trúc tổng quát cho một message: [„:‟ ] Phần đầu(prefix) Lệnh Dsách đối số Ký tự kết thúc Giải thích cú pháp * Đối tượng nằm trong dấu [] cĩ thể cĩ hoặc khơng. * Đối tượng nằm trong dấu ::= | [„!‟ ][„@‟ ] SVTH: Bùi Thi Thu Hiền Trang 28
  29. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Ở đây chúng ta cĩ thể thấy prefix cĩ thể là servername hoặc nickname ngồi ra cịn cĩ thể cĩ thêm username hay hostname hoặc cả hai.Nhưng đối với username phải cĩ ký tự „!‟ đứng trước,tương tự hostname là ký tự ‟@‟ đứng đầu. 2/Phần lệnh(command) . Phần lệnh cĩ thể ở dạng chuỗi hay số: ::= | | | dễ dàng chúng ta cĩ thể nhận thấy lệnh cĩ thể do một hay nhiều ký tự hoặc giá trị số gồm 3 chữ số. 3/Phần danh sách đối số(parameters list). ::= [„:‟ | ] Chúng ta cĩ thể thấy đối số khơng xuất hiện. là chuỗi ký tự đại diện trong đĩ khơng cĩ ký tự NULL hoặc CR,LF. Chuỗi này được đặt giữa hai ký tự ” ”. là chuỗi đại diện nhưng cĩ sự phân biệt,ký tự đầu chuỗi khơng được là ký tự ‟:‟ (ASCII 0x3b). 3 Giá trị số trả về (numeric replies). Sau khi khảo sát về cấu trúc của một message ,chúng ta được biết một message được nhận dạng như thể nào.Sau khi nhận được message ,server sẽ phát ra message phản hồi (reply message).Reply message được hiểu tương tự như là message,nĩ gồm 3 phần: sender prefix,giá trị số gồm 3 chữ số và target. - sender prefix là nickname của client gởi. - giá trị số được mơ tả phần sau. ::= | „@‟ | | [ “,” ] để nhận biết reply message đến client nào chúng dựa vào . Ta cĩ 2 loại message phản hồi: error reply normal reply Lưu ý : chỉ cĩ server mới cĩ khả năng phát ra reply message III Chi tiết từng message (message detail). Đây là phần mơ tả chính cho mỗi loại message , để server và client cĩ thể nhận biết chúng.Server sẽ nhận message và phân tích chúng,sau đĩ trả lại thơng báo thích hợp.Nếu phân tích message mà gặp phải lỗi ,thì khi đĩ server phải cĩ cơ chế thơng báo cho client. Một lỗi sinh ra thường do những nguyên nhân sau: - Sai đối số (incorrect parameter). - Sai lệnh (incorrect command.) - Sai địa chỉ đích Tên server Nickname Channel name. - Sai vì vi phạm quyền hạn v v. Cú pháp cho một command message: :Name COMMAND parameter list SVTH: Bùi Thi Thu Hiền Trang 29
  30. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng “Name” đĩ là tên của client gởi. Một server được client gởi message đến thì server sẽ căn cứ vào “Name” để cĩ thể đáp lại yêu cầu. 1 Nhĩm message đăng ký kết nối. Nhĩm message đăng ký kết nối chịu trách nhiệm kết nối với IRC server,giao thức kết nối được mơ tả trong lưu đồ sau: MƠ HÌNH KẾT NỐI GIỮA CHATCLIENT VÀ CHATSERVER Client Server Start Start Listen on port PASS message Recieve Detect no Time yes error? out ? yes no Receive reply error NICK Recieve message no Detect Time yes error? out ? yes no Receive reply error SVTH: Bùi Thi ThuMơ Hiền hình kết nối giữa chatclient và chatserver(cịn tiếp) Trang 30
  31. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng MƠ HÌNH KẾT NỐI GIỮA CHATCLIENT VÀ CHATSERVER(TT) USER Recieve message Detect no Time yes error? out ? yes no Receive reply error Receive PING message Detect no error? yes reply Recieve error Detect yes error? no PONG message Recieve no Detect error? yes Receive reply error yes SVTH: BùiDetect Thi Thu Hiền Trang 31 error? Mơ hình kết nối giữa chatclient và chatserver no
  32. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Trong nhĩm message này cĩ 3 loại message: - Message do server sử dụng . - Message do client sử dụng. - Message dùng chung. Message do server sử dụng 1.1 Server Message. Cú pháp : SERVER Server message dùng để thơng báo cho các server khác trên tồn hệ thống biết cĩ thêm một server kết nối vào hệ thống mạng(IRC network.).Những thơng tin về server này được chuyển cho các server khác trên mạng chứa trong đối số .Sự kiện này xảy ra khi cĩ một server mới kết nối vào hệ thống mạng.Lúc đĩ server mới phát ra server message,message này được phát quảng bá lên mạng để các server khác phải cĩ thơng tin về server mới để chúng cập nhật lại cấu hình mạng.Khi xảy ra lỗi server dùng error message thơng báo thay vì dùng giá trị trả về. 1.2 Server Quit Message. Cú pháp: SQUIT Được dùng khi server muốn thốt khỏi hệ thống mạng. :lý do việc tách khỏi hệ thống. Giá trị trả về: ERR_NOPRIVILEGES ERR_NODUCHSERVER Message do client sử dụng 1.3 Operator message. Cú pháp : OPER Người dùng thơng thường dùng dịng lệnh này để tranh quyền làm operator. Khi lệnh OPER thành cơng ,server sẽ trả về cho user đĩ một thơng điệp như khi sử dụng lệnh MODE đặt trạng thái operator cho người dùng. Giá trị trả về: ERR_NEEDMOREPARAMS ERR_NOOPERHOST RPL_YOUROPER ERR_PASSWDMISMATCH 1.4 Quit message. Cú pháp :QUIT [ ] Một client muốn thốt ra hệ thống mạng nĩ phát ra QUIT message đến server mà nĩ kết nối trực tiếp,và server này sẽ đĩng kết nối với client đĩ. Đồng thời thơng báo cho server khác để các server này thơng báo cho các client trong cùng channel. Khơng cĩ giá trị trả về. Nhĩm message dùng chung 1.5 Pass message Cú pháp: PASS Đối với server : Server dùng password message để thiết lập password cho mình. Đối với client: SVTH: Bùi Thi Thu Hiền Trang 32
  33. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Client dùng pass message để thiết lập password cho nickname mà nĩ muốn đăng ký ,hay nĩi cách khác ,dùng để khơng cho người khác sử dụng nickname của mình Giá trị trả về: ERR_NEEDMOREPARAMS ERR_ALREADYREGISTRED 1.6.Nick Message. Cú pháp : NICK [ ] Đối với server: Dùng để thơng báo vị trí của cho các server khác,với đối số là số server phải đi qua để đến được đích. Đối với client: Dùng để xác định nickname hoặc thay đổi nickname cho mình và khơng cần đối số.Nếu nickname khơng thích hợp thì khơng thể kết nối đến server. Giá trị trả về : ERR_NONICKNAMEGIVEN ERR_NICKNAMEINUSE ERR_ERRONEUSNICKNAME ERR_NICKCOLLISION 1.7 User Message. Cú pháp : USER Đối với server : Dùng để thơng báo cho các server khác cĩ user mới tham gia vào mạng(IRC netword).Khi gởi user message cho các server khác thì client sẽ gắn nickname vào trước message đĩ.Căn cứ vào nickname này,server sẽ nhận biết được thơng tin thuộc về nickname nào.Client gởi nick message thành cơng ,tiếp đĩ là user message đựơc gởi đến server ,khi đĩ server sẽ phát ra user message. Đối với client: Sau khi đăng ký nickname thành cơng,client phát ra user message để cung cấp thơng tin cho server đĩ là : , , . Giá trị trả về: ERR_NEEDMOREPARAMS ERR_ALREADYREGYSTRED 2 Nhĩm message dùng cho việc điều khiển Channel. 2.1 Join message. Cú pháp : JOIN |, |[ ][ ] Để cĩ thể tham gia vào channel client phát ra JOIN message. 2.2 Part message. Cú pháp: PART |, | Client dùng để thốt ra channel. 2.3. Mode message. Cú pháp chung : MODE MODE message phục vụ 2 mục đích trong IRC ,nĩ cho phép user và channel thay đổi mode của mình. 2.3.1 Channel mode Cú pháp : MODE {[ + | - ]| o | p | s | i | t | n | b | v } [ ][ ][ ] Dùng thay đổi trạng thái channel, chỉ cĩ nhĩm channel operator mới cĩ quyền sử dụng command này. 2.3.2 User mode Cú pháp : MODE {[+ | - ]| i | w | s | o |} SVTH: Bùi Thi Thu Hiền Trang 33
  34. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Dùng cho user .Một user MODE chỉ cĩ thể được chấp nhận nếu nickname người gởi và đối số phải giống nhau. 2.4 Topic message. Cú pháp : TOPIC [ ] Topic message dùng thay đổi hoặc xem chủ đề của channel. 2.5 Names message. Cú pháp : NAME [ ]|, |. Dùng Name message User cĩ thể xem danh sách tất cả nickname cĩ thể thấy được trên channel. 2.6 List message. Cú pháp : LIST [ ]|, |[ ]| Client dùng để liệt kê danh sách các channel và topic của chúng. 2.7 Invite message. Cú pháp : INVITE Dùng để mời hay gọi user tham gia vào channel, đối số là nickname của user được mời / gọi. 2.8. Kick message Cú pháp : KICK [ ] Dùng để loại bỏ user ra khỏi channel.Chỉ cĩ channel operator mới cĩ quyền dùng lệnh này. 3 Nhĩm message truy vấn đến server (server query and command). Là nhĩm message được thiết kế để trả về thơng tin của tất cả những server mà chúng đang tham gia trong mạng ,server được truy vấn phải trả lời chính xác các truy vấn.nếu khơng sẽ bị loại ra khỏi mạng cho đến khi nĩ được phục hồi. 3.1 Version message. Cú pháp : VERSION [ ] Dùng để xem version chương trình của server , đối số là server name của server từ xa mà client khơng trực tiếp kết nối đến,nếu khơng cĩ đối số thì mặc định là server hiện hành. 3.2 Stats message . Cú pháp : STATS [ [ ]] Client dùng để truy vấn thơng tin từ server ,thơng tin nhận được cĩ thể là con số thống kê nào đĩ. 3.3 Link message. Cú pháp : LINKS[[ ] ] User cĩ thể liệt kê tất cả những server mà biết. Danh sách trả về là các server. 3.4 Time message. Cú pháp : TIME [ ] Dùng cho client truy vấn về thời gian từ một server nào đĩ. 3.5 Connect message. Cú pháp : CONNECT [ [ ]] Dùng để buộc server thiết lập một kết nối đến server khác ngay lập tức.Lệnh này chỉ cho người quản trị sử dụng. 3.6 Trace message. Cú pháp : TRACE [ ] Lệnh này dùng để tìm đường đi đến server nào đĩ. SVTH: Bùi Thi Thu Hiền Trang 34
  35. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng 3.7 Admin message . Cú pháp : ADMIN [ ] Server dùng lệnh này để tìm tên người quản lý của dùng làm đối số.Mỗi server cĩ khả năng chuyển ADMIN message đến server khác,sao cho message đến được server cần đến.Như thế một client cĩ thể yêu cầu một server khác gởi thơng tin về người quản lý cho mình. 3.8 Info message. Cú pháp : INFO [ ]. Do client yêu cầu khác trả về thơng tin cho mình. 4 Nhĩm message gởi text (sending message). Mục đích chính IRC protocol là cung cấp cho các client cĩ thể giao tiếp với nhau, để thực hiện việc trao đổi text ta cần cĩ Private message và Notice message để chuyển text từ client này sang client khác.Sau khi thực hiện quá trình kết nối với server và gia nhập channel thành cơng ,sending message sẽ hoạt động để thực hiện mục đích chính cho chat protocol. 4.1 Private message. Cú pháp : PRIVMSG |, | Message này dùng cho client , user cĩ thể gởi private message đến user khác, và chỉ cĩ user nhận mới được nhận PRIVMSG message. Đối số là nickname của client nhận. 4.2 Notice message. Cú pháp : NOTICE Tương tự như PRIVMSG message chỉ khác nhau là khơng cần phải cĩ sự đáp lại từ client mục đích là để tránh sự tự động trả lời lặp đi lặp lại giữa server và client. 5 Nhĩm message do client truy vấn đến server (user –based query) Đây là nhĩm command mà user cĩ thể dùng để tạo truy vấn.Khi dùng nhĩm lệnh này user cĩ thể xem được thơng tin chi tiết về các user khác với điều kiện các user cĩ thể nhận biết nhau trên mạng.Việc cĩ thể nhận biết nhau tuỳ thuộc vào mode user đĩ và trạng thái channel đang dùng. 5.1 Who Query. Cú pháp : WHO [ [ ]] Dùng cho client để tạo ra truy vấn ,kết quả truy vấn đĩ là danh sách các user phù hợp với đối số .Nhận được danh dách các operator nếu sử dụng đối số [ ]. cĩ thể là hostname ,server ,realname,nickname. 5.2 Who is Query. Cú pháp : WHOIS [ ] [, [, ]] Dùng để yêu cầu thơng tin cụ thể về một user nào đĩ. 5.3 Who was message. Cú pháp : WHOWAS [ [ ]] Dùng để yêu cầu thơng tin những user trong quá khứ mà hiện giờ khơng cịn cĩ mặt trong danh sách user active. là số nguyên duơng ,cho biết lấy bao nhiêu lần thơng tin về nickname đĩ. 6 Nhĩm message khác . 6.1 Kill message. Cú pháp : KILL SVTH: Bùi Thi Thu Hiền Trang 35
  36. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Dùng khi cần kết thúc kết nối giữa client và server như khi gặp phải hiện tượng cĩ sự trùng lắp của 2 mẫu tin trong danh sách nickname.Nĩ cũng được channel operator sử dụng là lý do cho KILL message do server đưa ra để giải thích cho hành động của mình. 6.2 .Ping message. Cú pháp : PING [ ] Dùng để kiểm tra một client cịn hoạt động trong hệ thống mạng hay khơng,khi nhận được message này client phải đáp lại ngay bằng PONG message nếu cịn hoạt động. Hai đối số sau nghĩa là PING message gởi đến cả hai server,tuy nhiên server nhận được message nĩ khơng đáp lại mà dựa vào client kết nối với nĩ để thơng báo kết nối vẫn cịn liên thơng.Ta cĩ thể kết luận :server khơng đáp lại PING message mà nĩ nhờ client đáp lại. 6.3.Pong message. Cú pháp : PONG [ ] Được client dùng để đáp lại PING message , là đối số cho biết client nào đáp lại PING message 6.4 Error message. Cú pháp : ERROR Dùng cho server thơng báo lỗi cho operator. 7 Nhĩm message tuỳ chọn (option message). 7.1 Away message. Cú pháp : AWAY [message] User cĩ thể thiết lập cơ chể trả lời tự động cho mỗi PRIVMSG message, nội dung trả lời được lưu trữ trong chuỗi [message]. 7.2.Rehast message. Cú pháp : REHASH Lệnh này do operator thi hành bắt buộc server phải đọc lại và xử lý lại tập tin cấu hình của server đĩ. 7.3 Restart message. Cú pháp : RESTART Đây là message dùng cho channel operator buộc server phải khởi động lại hệ thống. 7.4 Summon message. Cú pháp : SUMMON [ ] Mời một client cĩ chương trình server hiện đã cĩ cài đặt trên host gia nhập hệ thống IRC. 7.5. Users message. Cú pháp : USER[ ] Dùng để trả về danh sách các user đã login vào . 7.6 Operwall message. Cú pháp : WALLOPS Khi WALLOPS hoạt động nĩ sẽ gởi đến tất cả các operator hiện cĩ trên mạng. 7.7. Userhost message . Cú pháp : USERHOST | | Yêu cầu trả về thơng tin của client cĩ làm đối số. 7.8 Ison message. SVTH: Bùi Thi Thu Hiền Trang 36
  37. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Cú pháp : ISON | Được thiết lập để trả về thơng tin về hiện thời trên IRC một cách hiệu quả nhất. SVTH: Bùi Thi Thu Hiền Trang 37
  38. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng CHƯƠNG 3 MMỘỘTT SSỐỐ DDỊỊCCHH VVỤỤ CCHHAATT TTRRÊÊNN MMẠẠNNGG IINNTTEERRNNEETT I- Chat-Tán gẫu trên mạng: SVTH: Bùi Thi Thu Hiền Trang 38
  39. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Mời bạn cùng đến với Chat (tán gẫu trên mạng), một trong những dịch vụ thơng dụng nhất hiện nay, và cũng đang cĩ rất nhiều người truy cập mỗi ngày. Dịch vụ chat cịn đi vào lĩnh vực khác là ứng dụng trong một mạng của cơng ty cĩ thể là mạng riêng của cơng ty đĩ hay mạng Internet. Nĩ giúp cho các quý giám đốc, những người quản lý khơng phải tốn nhiều cơng sức, thời gian khi cần thơng báo việc gì đến nhân viên, việc đĩ cĩ thể là quan trọng, khơng quan trọng, những vấn đề bí mật, cả đến những vấn đề riêng tư mà khơng sợ các đồng nghiệp khác hoặc cấp dưới biết Mời bạn tìm đến “Chat” trên Internet, một bước tiến vượt lên cả e-mail, newgroup, tất nhiên cả hai loại này đều rất tuyệt. Vì bạn cĩ thể gởi thư đi và chưa hẳn là bạn được hồi đáp ngay. Cịn Chat bạn sẽ được hồi đáp ngay nếu người thân của bạn cũng đang cùng chat trên mạng. Thật ra Chat cĩ hai loại: - Text Chat: Ở đây bạn cĩ thể gõ một lời nhắn đến ai đĩ trong chương trình rồi nhấn Enter. Lời nhắn này lập tức chuyển đến máy người bạn chat, và sau đĩ bạn cĩ thể nhận lại được lời nhắn của bạn đĩ. - Voice Chat: Dịch vụ này cho phép bạn chat thành tiếng nĩi - gần như điện thoại vậy, nhưng lại rẻ hơn điện thoại rất nhiều. Hiện nay voice chat trên mạng cĩ Yahoo chat. Sau đây là một số dịch vụ chat thơng dụng : II- Dịch vụ Chat IRC(Internet Relay Chat) 1. Giới thiệu về hoạt động của IRC Hiện nay text chat trên mạng rất nhiều nhưng phổ biến nhất là IRC (Internet Relay Chat) loại này cho phép ta chat thơng qua nhiều kênh(Channel).Nếu bạn tham gia kênh cụ thể bạn sẽ thấy Nickname, nội dung của những người đang tham gia trên kênh đĩ đang gõ từ bàn phím của họ. Ngược lại, mọi người trên kênh cũng nhìn thấy những điều mà bạn gõ từ bàn phím của mình. Bạn cũng cĩ quyền Chat riêng với một ai đĩ. Các kênh diễn ra trực tiếp trên các Server khác nhau trên tồn thế giới. Cĩ server chỉ cĩ vài kênh nhưng cĩ server khác lại cĩ rất nhiều kênh. IRC theo mơ hình client/server, tức là phải cài đặt phần mềm cho máy server và máy client sử dụng IRC. Hiện cĩ rất nhiều phần mềm client dành cho các máy tính khác nhau. Do vậy với phần mềm IRC bạn đều cĩ thể sử dụng cho máy tính PC, Macintosh hay UNIX đều được chấp nhận phần mềm IRC trên máy client sẽ liên lạc với máy server và tự chọn kênh để trị chuyện. Khi người dùng ở máy client gõ từ bàn phím của mình các ký tự và các ký tự này đầu tiên được gởi đến máy server, máy server này sẽ gởi message đến các máy server khác, lần lượt chuyển đến mọi người đang ở chung kênh với người đĩ. Nhờ vậy mà mọi người cĩ thể xem và trả lời thơng điệp(message) cho nhau. 2. Cách sử dụng. - Đăng nhập Internet, truy nhập vào địa chỉ www.mirc.com, vào hộp Address của trình duyệt, rồi nhấp liên kết đến một trang mIRC, sau đĩ download chương trình và cài đặt chương trình. - Đăng nhập với chat server và chọn kênh: Để chat được trước hết phải kết nối với một máy server chat . Và máy này kết nối với một máy khác để thành lập mạng, cho phép chúng ta cĩ thể trị chuyện với hàng ngàn người trên khắp thế giới SVTH: Bùi Thi Thu Hiền Trang 39
  40. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Hộp thoại của khung chat mIRC. + Điền đầy đủ các thơng số của chat server IRC server: Bạn phải nắm được địa chỉ IP hay domain name của chat server. Ví dụ: mạng VNN (www.vnn.vn) cĩ địa chỉ IP là: 203.162.5.33; chat server của Vietchat (www.vietchat.com) ;cĩ nhiều chat server với domain name: (irc.vietinternet.com ) ; mạng FTP (www.FTP.vn) cĩ địa chỉ IP là 203.162.7.140 của SaiGonNet (www.saigonnet.vn) cĩ địa chỉ IP là 203.162.6.124 hoặc irc2.vietinternet.com port: cổng dịch vụ chat, thường là 6667 (hoặc cổng chat của FTP là 23 ). Sau khi thực hiện xong rồi nhấn Add để lưu lại những thơng số vừa điền vào, rồi tiếp tục gõ vào các thơng tin để thực hiện chat như: full name, nickname, E-mail address cuối cùng là nhấp nút Connect to IRC Server. Nếu kết nối thành cơng thì hộp thoại mIRC Channels Folders tự động xuất hiện, tại đây chọn kênh mà mình muốn thực hiện nhấp đúp tên kênh từ một số kênh cĩ trên danh sách, rồi nhấp join. 3. Một số cơng cụ khi thực hiện Chat mIRC - Chat chốn đơng ngƣời: Sau khi kết nối với Chat server và chọn kênh theo ý muốn. Lúc này bạn dễ dàng gởi thơng điệp đến tất cả mọi người đang cùng chat trên kênh đĩ; chỉ cần gõ thơng điệp vào hộp thoại nhập ngay bên dưới rồi nhấp Enter. Cũng trong khung hội thoại này (là một kênh hoặc phịng), tên bạn và các chatter khác xuất hiện trên danh sách của các thành viên tham gia Chat và tên channel bạn đã chọn, liệt kê bên dưới tên cửa sổ status. Tuy vậy bạn cũng cĩ thể mở nhiều kênh cùng lúc, muốn chat kênh nào chỉ cần nhấp vào kênh đĩ. Khung thoại lớn ở giữa là để mọi người trao đổi với nhau, đồng thời thơng báo đến mọi người: vào/ra khỏi phịng, thay đổi Nickname Khi trong phịng cĩ người chọn mình để chat thì thơng điệp của họ sẽ hiện ra trên khung thoại, muốn chat chỉ cần nhập vào khung chat bên đuới rồi nhấp SVTH: Bùi Thi Thu Hiền Trang 40
  41. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Enter, thơng điệp vừa gõ xuất hiện ngay trên khung thoại trên màn hình của tất cả các thành viên đã gia nhập vào kênh này. Hộp thoại Chat của mIRC. - Tìm hiểu về ngƣời bạn cùng chat: khi trị chuyện muốn biết người ấy là ai, nhấp phải chuột chọn Users, rồi Whois, sau đĩ nhấp cửa sổ Status để xem thơng tin của cá nhân đĩ hiện ra. - Chat riêng tƣ: bạn cảm thấy khĩ chịu vì ồn ào lộn xộn ở kênh chat chung, bạn cĩ thể kết bạn với một ai đĩ để dễ dàng tâm sự mà khơng sợ bị người ngồi phát hiện, hãy click đơi vào tên mà bạn muốn trị chuyện riêng. Một khung thoại chat xuất hiện, đồng thời nickname này cũng hiện ra trong danh sách kênh, gõ thơng điệp rồi nhấn Enter. Khi người kia hồi âm, thơng điệp của họ cũng hiện ra trong cửa sổ trị chuyện riêng. Tuy thơng điệp riêng khơng hiển thị trên màn hình người khác, nhưng thơng điệp vẫn được truyền qua máy Server, vì thế vẫn cĩ nguy cơ bị lộ tẩy. - Kết nối trực tiếp: Để tăng cường tính bảo mật, bạn cĩ thể kết nối với người kia thơng qua DDC(Direct Client to Client). DDC cho phép hai chương trình Chat bỏ qua máy Server và kết nối trực tiếp với nhau. Nhấp phải chuột chọn DDC Chat. - Bạn cũng cĩ thể gởi tập tin bằng đường DDC, nhấp biểu tượng DDC Send, mở hộp thoại và điền các thơng số cần thiết cũng như chọn đường dẫn đến tập tin đĩ rồi nhấp Send. - Ngồi ra bạn cũng cĩ thể thay đổi Nickname, chọn màu hiện chữ, màu background III- Dịch vụ Yahoo!Messenger. 1. Giới thiệu. Yahoo! Messenger cho phép bạn trao đổi nhanh chĩng thơng điệp tức thời với bạn bè trên Net, sử dụng dịch vụ Chat và truyền tập tin, nhận bảng thị giá chứng khốn, tin tức thời tiết, thể thao, .bước đầu tiên cho phép bạn download chương trình miễn phí. SVTH: Bùi Thi Thu Hiền Trang 41
  42. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng - Kết nối vào Internet và mở trang chủ Yahoo!( www.yahoo.com). - Nhấp Messenger để hiển thị hộp thoại thơng tin dowload chương trình. - Cài đặt chương trình. Hộp thoại Login của Yahoo!Messenger. - Lúc mới đăng nhập, hộp Yahoo!mail hiển thị, cho bạn biết bạn đang cĩ bao thư chưa đọc, bạn cĩ thể đọc thư bằng cách chọn nút Go to mail. - Bạn cĩ thể đưa tên bạn bè, đồng nghiệp, vào danh sách Friend, bạn sẽ nhận được thơng báo mỗi khi người đĩ lên Net, bằng cách chọn biểu tượng Add để mở hộp thoại Add a Friend, điền những thơng tin cần thiết vào các khung yêu cầu. - Gởi thơng điệp tức thời: là hình thức chat giữa hai người, với điều kiện là người đĩ cùng cĩ mặt trên mạng, rất tiện lợi cho những ai ở cách xa nhau và muốn trị chuyện với nhau bằng cách hẹn trước. Nếu người nhận đang ở trên mạng và cùng chạy Yahoo!Messenger, thơng điệp của bạn gởi sẽ mở ra trên màn hình của họ. Bằng khơng thì Yahoo! sẽ lưu lại thơng điệp cho đến khi người nhận mở Messenger. SVTH: Bùi Thi Thu Hiền Trang 42
  43. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Hộp thoại Chat Yahoo!Messenger . Bạn chỉ cần gõ thơng điệp vào khung nhập bên dưới và click nút send để gởi thơng điệp đến người nhận. Người nhận sẽ Reply cho bạn bằng cách gõ nội dung hồi đáp vào khung nhập và click nút Send để trả lời đến bạn. - Gởi nhận thơng báo ngoại tuyến: Khi bạn chọn tên người bạn muốn Chat, nhưng người đĩ hiện thời chưa đăng nhập vào Chat, bạn gõ gởi thơng điệp và Click Send. Khi nào người bạn đĩ đăng nhập, sau khi kết thúc tiến trình kết nối sẽ nhận được một cửa sổ Offline Messages, liệt kê những thơng điệp do bạn bè gởi đến trong thời gian khơng trực tuyến. nếu muốn trả lời, chỉ việc chọn thơng điệp và click nút Reply. - Thiết lập cuộc trị chuyện chốn đơng người: bạn muốn trị chuyện với một số người nào đĩ, ID của họ sẽ xuất hiện trong khung Invitation List. Tuy nhiên bạn cũng cĩ thể xĩa tên bằng cách nhấp Remove. Chọn tên mà bạn muốn mời tham gia chat, sau đĩ Click Add để chat(bạn cĩ thêm nhiều người cùng lúc). - Cho phép bạn tìm kiếm tên một cách nhanh chĩng, bằng cách click nút Search. - Gởi và nhận tập tin: khi đang làm việc với Yahoo!Messenger trên Net, bạn cĩ thể gởi/nhận tập tin từ bạn bè. Tập tingởi đến được lưu trên máy Server Yahoo, cho đến khi người nhận load về máy của họ. - Chia sẻ tập tin: Đây là tính năng mới của Yahoo, cho phép bạn chia sẻ tập tin với bạn bè. 2. Chat trong Yahoo!Messenger. Yahoo!Messenger, ngồi tính năng trị chuyện hai người hoặc đơng người quen biết nhau trên net, cịn cĩ một tính năng tuyệt vời khác: Chat, giống chat trong chương trình mIRC, nhưng ở đây chỉ chat bằng tiếng Anh. SVTH: Bùi Thi Thu Hiền Trang 43
  44. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Trong cửa sổ chính của Yahoo!Messenger là: Yahoo!Messenger gồm cĩ 3 khung ở trên: Khung bên trái là liệt kê các Cool Links- gồm những liên kết thú vị hoặc mang đậm những tin tức đang được nhiều người quan tâm, nhấp vào một liên kết sẽ đưa bạn đến ngay nơi mong muốn. Khung giữa sẽ cho phép bạn chọn chủ đề để chat ví dụ như Entertament, Music, Family & Parent .chọn một chủ đề sẽ tương ứng ở phịng chat thứ ba. Ở đây cĩ hai loại chat: một là của Yahoo! Rooms- nghĩa là phịng chat cơng cộng, loại thứ hai là User Rooms- chỉ người nào được mời mới cĩ thể bước vào. Với phịng chat cơng cộng cũng như các loại chat khác danh sách những người tham gia chat ở bên phải khung hiển thị những thơng tin về chat ở bên trái và khung text ở bên dưới bạn gõ vào đây khi cần gởi thơng điệp. Bạn khơng thích phịng bạn đang chat bạn cĩ thể chọn nút Change Rooms để thay đổi phịng chat, cịn nếu khơng thích chat chốn đơng người bạn cĩ thể chọn cho mình một chatter để chat với người đĩ. - Bạn cũng cĩ thể chèn biểu tượng vui bằng hình ảnh mặt người cĩ sẵn trên khung thoại chat của Yahoo. - Trong Yahoo!Messenger cịn cĩ voice chat: nĩ gần như nĩi chuyện qua điện thoại, qua điện đàm, khi bạn vào phịng chat chọn biểu tượng người đeo microphone để chat bằng tiếng nĩi với người đĩ. Đương nhiên là bạn phải cĩ Microphone dành cho máy tính, và được cập nhật vào trong chương trình. IV- Dịch vụ AOL INSTANT MESSENGER(AIM) 1. Giới thiệu về AIM. AIM hiện nay cịn gọi là Nestcape Instant Messenger (NIM) đang là dịch vụ trao đổi thơng điệp tức thời và chat phổ biến nhất, bên cạnh Yahoo! Messenger. Đây là dịch vụ cho phép bạn giao tiếp, liên lạc với bạn bè theo cách giản tiện nhất. Những tính năng AIM gồm cĩ: - Thiết lập danh sách bạn bè, gia đình, đồng nghiệp. - Gởi thơng điệp tức thời. SVTH: Bùi Thi Thu Hiền Trang 44
  45. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng - Chat với bạn bè hoặc thành viên gia đình trong phịng chat riêng. - Gởi tập tin(văn bản, hình ảnh, âm thanh, ). - Chi phối số người được phép giao tiếp với bạn thơng qua tính năng bảo vệ sự riêng tư. Bạn cĩ thể cho phép bất cứ ai gởi thơng điệp đến bạn, hoặc chặn thơng điệp từ một người cụ thể. - Tìm kiếm bạn bè theo địa chỉ E-mail, 2. Cách sử dụng. - Đăng ký Account, download về và cài đặt chương trình: trước khi cài đặt và sử dụng dịch vụ AOL Instant Messenger, bạn phải đăng ký và chọn cho mình một screen name. Vào trang chủ của AOL Instant Messenger: Nhấp Sign Up và điền các thơng tin thích hợp vào các khung yêu cầu chú ý là +. Screen name(tên đăng nhập AOL Instant Messenger và mọi dịch vụ khác của Netscape) tên này phải dài từ 3-16 ký tự bắt đầu bằng chữ. +. Password và confirm password phải dài từ 4-16 ký tự. +.E-mail Address phải là e-mail thực để Nestcape gởi yêu cầu thơng điệp, . Nếu đăng ký thành cơng, Netscape hiển thị trên màn hình E-mail Confirmation, thơng báo bạn đã cĩ một screen name để sử dụng AIM đồng thời được tặng một account thư với địa chỉ screenname@netscape.net. Lúc này Netscape sẽ gởi thơng báo đến địa chỉ e-mail do bạn cung cấp, và yêu cầu bạn hồi đáp trong vịng 72 giờ tới, nhằm đảm bảo khả năng truy cập Netscape của bạn khơng bị gián đoạn. Sau đĩ trên màn hình cĩ hiển thị Download, ở đây cĩ hai hệ Windows và Macintosh, bạn chọn một trong hai hệ này, một hộp thoại download được mở ra rồi bạn Download chương trình về và cài đặt nĩ. - Muốn liên lạc với mọi người qua AOL bạn cũng phải đăng nhập như các chương trình chat khác, với điều kiện người đĩ cũng nối Internet và cũng đang chạy chương trình. Hộp thoại đăng nhập của AOL. SVTH: Bùi Thi Thu Hiền Trang 45
  46. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Sau đĩ đăng ký Password và Screen name rồi nhấn nút sign on. - Bạn cũng cĩ thể định dạng lại hoặc thay đổi Sceen name và Password nếu bạn muốn. Từ menu chương trình chọn My AIM, chọn Edit Option. Nếu muốn thay đổi Screen name chọn Format Screen Name để thay theo ý muốn, và chọn password nếu như bạn muốn thay đổi password. - Cập nhật lại địa chỉ E-mail: thơng qua địa chỉ E-mail mà người khác cĩ thể tìm thấy bạn và đưa bạn vào danh sách bạn bè. Nếu bạn thay đổi địa chỉ E-mail bạn cĩ thể Update lại bằng cách chọn My AIM, chọn Edit Option, chọn Update E-mail Address, rồi bạn gõ địa chỉ mới vào. - Sau khi nhấn sign on bạn sẽ thấy xuất hiện cửa sổ Buddy list, gồm hai trang: Online và List setup. Cĩ bốn nhĩm tự động cài sẵn trên trang Online: Buddies, Family, Co-Works, và Office. Ở đây bạn cĩ thể bổ sung tên vào các nhĩm này hoặc thiết lập thêm nhĩm mới. Từ trang List Setup bạn cũng cĩ thể bổ sung screen name của bạn bè vào danh sách, tạo thêm nhĩm mới, đổi tên nhĩm, sắp xếp theo từng sở thích, hoặc loại bỏ, thêm bớt tên người, . Hộp thoại của Buddy list SVTH: Bùi Thi Thu Hiền Trang 46
  47. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng 3. Một số tính năng của AOL Instant Messenger - Tìm hiểu về tính năng Instant Message. +. Gởi thơng điệp tức thời: Từ Online trên cửa sổ Buddy List chọn người bạn muốn gởi thơng điệp(chú ý khơng được chọn từ Offline), chọn Instant Message gõ thơng điệp vào hộp thoại, Enter. +.Tạo siêu liên kết trong thơng điệp tức thời, cũng trong cửa sổ Instant Message, chọn chuỗi mà bạn muốn biến thành siêu liên kết(hyperlink). Chọn nút Link trên thanh cơng cụ mở cửa sổ Edit Hyperlink. Định rõ địa chỉ URL của site muốn liên kết đến, chọn OK. +.Chèn biểu tượng vào thơng điệp:trên cửa sổ Instant Message, chọn Insert Smile trên thanh cơng cụ, ở đây cĩ rất nhiều biểu tượng gương mặt, chọn cái mà bạn muốn, nhấn Enter. +. Hiện/giấu biểu tượng: thỉnh thoảng bạn lấy biểu tượng để gởi nhưng lại muốn thay đổi, chọn menu My AIM, chọn Edit Options, chọn Edit Preferences, chọn IM/Chat nhấn chọn Disable graphical smileys để giấu biểu tượng này hoặc xĩa đi nhờ chọn Disable. +. Lưu thơng điệp: chọn File, chọn Save (Save Text to File). - Tính năng Buddy List. +. Thiết lập chế độ thơng báo: Mỗi thành viên, bạn cĩ thể thiết lập một cách thơng báo khác nhau và một âm thanh khác nhau, để bạn cĩ thể dễ dàng nhận ra ai đang trực tuyến, cách thực hiện click phải chuột chọn Screen name, chọn Buddy List trong Alert me when screen name, chọn tên bạn muốn chọn để tạo chế độ này, quy định hình thức âm thanh hay hình ảnh, chọn save lưu thơng báo. +. Hiệu chỉnh hình thức thơng báo: Tương tự như trên, chọn Change Alert +. Hủy bỏ thơng báo: chọn Don’t alert me when “screen name” sign on. - Thơng báo Away và Idle: Khi bạn đang bận muốn tạm thời khơng giao tiếp, bạn kích hoạt thơng báo Away nhằm cho biết bạn sẽ vắng mặt trong bao lâu. AOL Instant Messenger hiển thị thơng báo này mỗi khi cĩ người truy cập thơng tin về bạn và tự động hồi đáp bằng thơng báo này cho bất kỳ ai gởi thơng điệp đến lúc bạn rời máy. Trường hợp bạn vắng mặt khơng chủ đích, chương trình sẽ hiển thị thơng báo Idle sau 10 phút bạn khơng sử dụng máy, và tự động hồi đáp bằng thơng báo này cho người nào gởi thơng điệp đến lúc họ rời máy. Để thiết lập thơng báo này bạn chọn My AIM, chọn Edit Options, chọn Edit Preferences, chọn Idle Message (dành cho thơng báo với Idle), và chọn Away Message(nếu bạn chọn cho thơng báo Away). Ngồi ra bạn cũng cĩ thể vơ hiệu hĩa thơng báo này khơng cho người khác gởi thơng điệp này đến mình khi rời máy, hoặc bạn cĩ thể xĩa thơng điệp này. - Trao đổi tập tin:  Gởi tập tin cho bạn bè.  Cho phép mọi người nhận được tập tin bạn gởi  Chỉ cho phép những người cĩ tên trong Buddy List nhận được tập tin bạn gởi.  Giám sát người nhận tin, chỉ cho phép người nào đĩ nhận tập tin này.  Phong tỏa, khơng cho phép mọi tập tin gởi đến. SVTH: Bùi Thi Thu Hiền Trang 47
  48. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng  Chỉ Nhận tập tin từ bạn bè.  Tự động chấp nhận tập tin gởi đến  Tự động quét Virus của tập tin.  Hiển thị hộp thoại Receive File  Khơng cho hiển thị trạng thái tiến trình gởi tập tin  Thay đổi thư mục download mặc định. - Đặc tính Image:  Cho phép bạn gởi tập tin và hình ảnh đến bạn bè  Tìm kiếm bạn bè:  Tìm bạn cùng sở thích.  Tìm bạn theo địa chỉ E-mail.  Tìm bạn theo tên và địa chỉ. - Chat trong AOL Instant Messenger Chương trình này cho phép người cĩ đăng ký Netscape và AOL Instant Messenger mới được phép chat trong các phịng Buddy chat. Ở đây bạn cĩ thể chọn screen name của người nào đĩ cĩ trong Buddy chat của mình để thực hiện chat, hoặc bạn cĩ thể mời thêm bạn cùng tham gia chat với mình.  Hộp thoại chat được mở ra và bạn gởi thơng điệp chat này đến người bạn muốn chat.  Tạo siêu liên kết trong thơng điệp chat bằng cách nhấn nút Link, trên thanh cơng cụ mở cửa sổ Edit Hyperlink.  Chọn và ghi địa chỉ URL của site mà bạn muốn liên kết đến.  Lưu thơng điệp lại nếu bạn cần lưu.  Khi đăng xuất, chương trình sẽ đưa bạn ra khỏi chương trình, đĩng chương trình lại, giữ biểu tượng AIM trên hệ thống, giúp bạn đăng nhập dịch vụ một cách nhanh chĩng. V-MobiChat- Chat qua điện thoại di động - Ngày nay ngồi hình thức chat trên Internet cịn phổ biến thêm một loại chat khác cũng khơng kém phần hấp dẫn đĩ là chat qua điện thoại di động. - Dịch vụ Mobichat cho phép thuê bao MobiFone/MobiCard cĩ thể gởi tin nhắn thơng qua hệ thống MobiChat của MobiFone. - Để thực hiện được điều này, bạn phải làm thủ tục đăng ký đơn giản tại các trung tâm dịch vụ khách hàng của VMS-MobiFone, hoặc bạn cĩ thể gởi tin nhắn đến MobiChat để đăng ký. - Giá cả hợp lý: khơng cĩ cước phí, nhưng bù lại là 500đ/tin nhắn. - Tiện lợi: Bạn khơng cần phải nối với Internet, khơng cần phải ngồi hàng giờ trước máy tính, vấn đề chỉ là một chiếc điện thoại di động MobiFone/MobiCard cĩ chức năng nhắn tin ngắn. - Năng động: MobiChat hoạt động 24h/ngày, bạn cĩ thể thực hiện chat ở bất cứ đâu, vào bất cứ lúc nào. - Trước khi sử dụng bạn phải cài đặt dịch vụ nhắn tin ngắn của SMS vào điện thoại di động SVTH: Bùi Thi Thu Hiền Trang 48
  49. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng VI- Một số dịch vụ chat thơng dụng khác: Ngồi những dịch vụ trên, cịn cĩ những dịch vụ chat rất thơng dụng, và mỗi loại chat cĩ một tính năng riêng nhưng đều cĩ mục đích phục vụ giúp người sử dụng dễ sử dụng, tiện lợi, tinh tế .Các bạn cĩ thể tham khảo địa chỉ của những trang web sau: Http:// www.Infoseek.com Http:// www.alamak.com Http:// www.vietchat.com Http:// www.vietfun.com SVTH: Bùi Thi Thu Hiền Trang 49
  50. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng TĨM TẮT CHƢƠNG III  Chat là tài nguyên được mọi người sử dụng trên Internet ưa chuộng nhất. Đây là tài nguyên rất lý thú, nĩ cho phép bạn thiết lập các cuộc đối thoại thơng qua máy vi tính với người dùng khác trên Internet, hoặc trong một mạng Lan . Ở chương này em tìm hiểu một số dịch vụ Chat thơng dụng hiện nay, cùng một số cơng cụ khác khi tham gia vào dịch vụ trên mạng Internet: - Hiện nay cĩ hai loại Chat thơng dụng là: Text Chat và Voice Chat. - Dịch vụ Chat mIRC (Internet Relay Chat): loại này cho phép ta chat thơng qua nhiều kênh(Channel). nếu bạn tham gia kênh cụ thể bạn sẽ thấy Nickname, nội dung của những người đang tham gia trên kênh đĩ đang gõ từ bàn phím của họ và ngược lại. - Dịch vụ Yahoo!Messenger:Yahoo! Messenger cho phép bạn trao đổi nhanh chĩng thơng điệp tức thời với bạn bè trên Net, sử dụng dịch vụ Chat và truyền tập tin, nhận bảng thị giá chứng khốn, tin tức thời tiết, thể thao, .bước đầu tiên cho phép bạn download chương trình miễn phí. - Dịch vụ AOL INSTANT MESSENGER(AIM): AIM hiện nay cịn gọi là Netscape Instant Messenger (NIM) đang là dịch vụ trao đổi thơng điệp tức thời và chat phổ biến nhất, bên cạnh Yahoo! Messenger. Đây là dịch vụ cho phép bạn giao tiếp, liên lạc với bạn bè theo cách giản tiện nhất. Những tính năng AIM gồm cĩ: + Thiết lập danh sách bạn bè, gia đình, đồng nghiệp. + Gởi thơng điệp tức thời. + Chat với bạn bè hoặc thành viên gia đình trong phịng chat riêng. + Gởi tập tin(văn bản, hình ảnh, âm thanh, ). + Chi phối số người được phép giao tiếp với bạn thơng qua tính năng bảo vệ sự riêng tư. Bạn cĩ thể cho phép bất cứ ai gởi thơng điệp đến bạn, hoặc nhận thơng điệp từ người cụ thể. + Tìm kiếm bạn bè theo địa chỉ E-mail, - Một số dịch vụ chat thơng dụng khác: Ngồi những dịch vụ trên, cịn cĩ những dịch vụ chat rất thơng dụng, và mỗi loại chat cĩ một tính năng riêng nhưng đều cĩ mục đích phục vụ giúp người sử dụng dễ sử dụng, tiện lợi, tinh tế .Các bạn cĩ thể tham khảo thêm địa chỉ của những trang web sau: Http:// www.alamak.com Http:// www.vietchat.com Http:// www.vietfun.com Http:// www.Infoseek.com - Xây dựng dịch vụ Chat của chương trình: Company Phoenix_Chat dùng cho một mạng lưới của một cơng ty hay một tổ chức nào đĩ. Ở đây chỉ dành cho những người trực thuộc cơng ty hay tổ chức đĩ đang sử dụng chương trình. SVTH: Bùi Thi Thu Hiền Trang 50
  51. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng CHƯƠNG 4 GGIIỚỚII TTHHIIỆỆUU NNGGƠƠNN NNGGỮỮ LLẬẬPP TTRRÌÌNNHH JJAAVVAA SVTH: Bùi Thi Thu Hiền Trang 51
  52. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng I- Giới thiệu ngơn ngữ Java. Java ngơn ngữ lập trình của Sun Microsystems, cĩ một sức mạnh đầy ấn tượng và là chủ đề đang được tranh luận nhiều nhất hiện nay, Logo của Java- một tách cafe bốc khĩi, cùng các Applet Java đang tràn ngập khắp World Wide Web, và được các ngành cơng nghiệp chấp nhận với một tốc độ chưa từng cĩ. Vậy thực ra Java là gì? Uy lực của chúng ra sao? Đĩ là tất cả những gì mình muốn nĩi cùng các bạn, trong quá trình làm thực tập tơi đã lượm lặt được. Java được phát triển vào thập kỷ 1990, do nhà thiết kế là James Gosling, nhà lập trình triển khai phiên bản chương trình dịch là ơng Arthur van Hoff Thoạt đầu người ta đặt tên cho ngơn ngữ này là "Oak", Java xuất phát từ một dự án nghiên cứu chứ khơng phải là một sản phẩm nhằm mục đích sinh lời, cơng ty Sun đã đồng ý đưa Java Development Kit (bộ cơng cụ phát triển Java, bao gồm chương trình dịch và hệ thống đáp ứng chạy chương trình) lên Internet miễn phí vào khoảng giữa năm 1995, chỉ trong vịng hai năm sau chúng đã gặt hái được nhiều thành tích lớn. Hệ thống Java bao gồm một số cấu phần như sau: Ngơn ngữ lập trình Java, Java Virtual Machine (Máy ảo Java, bộ thơng dịch) Các thư viện phần mềm đi kèm hệ thống. Chương trình duyệt web HotJava hoặc chương trình duyệt web khác thích ứng với Java. Với Java, bạn sẽ cĩ dịp tiếp cận với một trong những sự phát triển kỳ thú nhất của ngành cơng nghiệp phần mềm. Java phát triển nhanh chĩng là nhờ Web. Nhưng trên thực tế, sức mạnh vốn cĩ của Java khơng phải là ngơn ngữ lập trình cho Web. Những kỹ sư phần mềm tài năng của hãng Sun đã mang Java vào Web, đã giải quyết một cách tế nhị nhiều vấn đề quan trọng - phương pháp phát triển phần mềm mạng trên hầu hết các máy tính và hệ điều hành 32 bit. SVTH: Bùi Thi Thu Hiền Trang 52
  53. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Ngơn ngữ lập trình java Những chương trình nguồn của java Trình biên dịch và những cơng cụ khác của Java Java Mã byte đã được biên dịch Java API Hệ thống thực thi Java Máy ảo Java Hệ Hệ điều hành (Solaris, Linux, Windows95/NT, MacOS, OS/2) nền chủ Phần cứng máy tính (Sparc, Pentium, X86, Power PS, ) Bức màn bí mật về Java II- Ƣu điểm, nhƣợc điểm và hoạt động của Java. 1- Ƣu điểm của java là: được Sun mơ tả như là một ngơn ngữ lập trình đơn giản, hướng đối tượng, kiểu - mạng, cĩ thể biên dịch, mạnh, an tồn, độc lập với cấu trúc, dễ di chuyển, hiệu suất cao, đa luồng, và cĩ tính động. Những điều đĩ khơng dễ giải thích. Vậy thì, cụ thể Java làm được gì? Về cơ bản, nĩ giúp các nhà phát triển phần mềm thực hiện được những việc sau: Thứ nhất: họ cĩ thể xây dựng nên các applet Java, đĩ là những trình ứng dụng mini được phân phối qua Internet và chạy trong một trình duyệt Web hiểu Java. Các applet Java tăng cường cho trang Web khả năng tương tác phong phú hơn và tính đa phương tiện tốt hơn so với khi dùng HTML bình thường. Applet hoạt động giống như cung cách bạn đặt một trang web với các siêu văn bản trên một server và một máy khách (client) cĩ thể tải trang đĩ xuống theo yêu cầu để xem các văn bản đã sắp đặt theo khuơn dạng. Tương tự, bạn viết và biên dịch một chương trình applet Java và đặt một tham chiếu URL hoặc HTML tới nĩ trong trang web. Khi một client duyệt qua trang web này, mã nhị phân của applet Java được tải xuống client đĩ cùng các tệp văn bản và đồ hoạ. chương trình duyệt chứa một JVM và nĩ sẽ thực hiện applet trên máy tính của client. SVTH: Bùi Thi Thu Hiền Trang 53
  54. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Thứ hai: các nhà phát triển phần mềm cĩ thể xây dựng các trình ứng dụng hồn chỉnh bằng Java, như bộ xử lý văn bản, bảng tính, hoặc bộ chương trình văn phịng tổng hợp (như Corel đang làm chẳng hạn). Ưu điểm của cách làm này là các trình ứng dụng chỉ cần viết một lần mà chạy được trên hầu hết mọi loại máy tính. Thứ ba: Java đáp ứng khơng những tính dễ chuyển mang mà cịn cả cách xử lý đồng nhất của chương trình trên các hệ thống khác nhau. Đầu tiên mã nguồn Java được biên dịch để sinh ra mã đối tượng gọi là bytecode, bytecode khơng phải là mã nhị phân của bất kỳ máy tính đang tồn tại thực tế nào mà đĩ là một loại mã máy kiến tạo, Bạn sẽ thực hiện một chương trình Java bằng cách chạy một chương trình khác gọi là Java Virtual Machine hay là JVM, JVM đọc chương trình bằng bytecode và thơng dịch hoặc biên dịch nĩ ra theo hệ lệnh thực tế, JVM biến tất cả mọi nền phần cứng và phần mềm trở nên giống nhau dưới con mắt của chương trình Java. Chạy bytecode trên một JVM là lý do vì sao các phần mềm Java là "viết một lần, chạy khắp nơi" Thứ tư: Việc quản lý bộ nhớ: So với ngơn ngữ C và C++, các chương trình Java được quản lý về bộ nhớ ở mức hệ thống và người lập trình khơng bao giờ phải lo lắng về chuyện đĩ. Thư viện thời gian chạy của Java sẽ giám sát các cấu trúc dữ liệu. Khi khơng cịn một tham chiếu nào tới một cấu trúc dữ liệu thì nĩ khơng thể là đang được sử dụng vì chương trình khơng cĩ cách gì để đọc hoặc ghi nĩ. Lúc đĩ nĩ sẽ là đối tượng của việc dọn dẹp bộ nhớ. Java hướng tới việc dọn dẹp bộ nhớ tự động. Việc dọn dẹp bộ nhớ tự động ảnh hưởng tới tính năng vì nĩ liên quan đến các quá trình khác chạy trong nền sau để giám sát việc sử dụng bộ nhớ. Tuy nhiên thực tế đã chỉ ra rằng, ở đây cũng cĩ một sự cân nhắc đáng giá. Một hệ thống nhỏ thực hiện dọn dẹp bộ nhớ tự động đã dẫn tới sự cải thiện rất lớn thơng qua việc gỡ bỏ một loạt các lỗi của các chương trình Java. Cĩ thể so sánh, các chương trình C++ chịu trách nhiệm quản lý các đống (heap) bộ nhớ của riêng chúng do vậy chúng phải cĩ mã dài hơn, mất nhiều thời gian gỡ rối hơn và các chương trình lớn thường dẫn tới các lỗi rất khĩ phát hiện và xử lý về việc dọn dẹp bộ nhớ. - Java là một mơi trường độc lập, đĩ là một lợi thế quan trọng cho phép Java hơn hẳn những ngơn ngữ khác, đặc biệt là cho những hệ thống cần làm việc trên nhiều mơi trường khác nhau, Java là một mơi trường độc lập ở cả trên nền hệ thống lẫn dưới mức thấp như hệ xử lý nhị phân. Nĩ cĩ khả năng chuyển từ hệ thống máy tính này sang hệ thống máy tính khác khơng phụ thuộc vào cấu trúc của máy hay hệ điều hành hoạt động trên máy. Binary File (Pentium) Compiler (Pentium) Binary File (PowerPC) Compiler (PowerPC) Binary File (SPARC) Compiler (SPARC) 2- Nhƣợc điểm của Java là: Java cĩ tốc độ thực thi chương trình phải thơng qua JVM nên tốc độ rất chậm so với các ngơn ngữ khác. SVTH: Bùi Thi Thu Hiền Trang 54
  55. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng Nhưng Java vẫn nổi trội hơn tất cả những ngơn ngữ khác. Xem sơ đồ bên dưới. Ứng dụng đa hệ nền Ứng dụng Web Ứng dụng bảo mật Ứng dụng dựa vào GUI Java Ứng dụng mạng phân tán Ứng dụng hướng đối tượng Ứng dụng chuyên luồng Ứng dụng đa luồng Java vẫn trội hơn tất cả 3- Hoạt động của một ứng dụng viết bằng Java. - Chương trình xây dựng bằng Java được chia làm hai loại: Java Applet và Java Application.  Hoạt động của Java Applet: Java Applet là các đối tượng được thực hiện trên các trình duyệt Web, Java Applet cũng tạo ra hiệu ứng như là một ứng dụng thơng thường. Tuy nhiên các thơng tin cho phép Java thực hiện lại đưa từ trang Web. Khi trình duyệt Web truy cập đến trang thơng tin này, Java Applet sẽ được tải về trình duyệt web và được thực hiện thơng qua cơ cấu gọi là JVM.  Hoạt động của Java Application: Là những ứng dụng độc lập, tương tự như những chương trình cĩ đuơi .EXE hoặc .COM thơng thường, việc thực hiện này dễ hơn việc thực hiện của Java Applet vì chúng khơng phải thơng qua trình duyệt Web. - Khi ứng dụng Java thực hiện(sau khi dịch Java cĩ phần đuơi mở rộng là .class), JVM tiến hành phân mã trong *.class đĩ thành bộ lệnh của JVM rồi thực hiện giống như máy PC thao tác với các ứng dụng thơng thường. Do đĩ các *.class sau khi dịch, cĩ thể thực hiện trên bất kỳ hệ điều hành nào thơng qua máy tính ảo JVM, JVM đã được xây dựng trên hầu hết các hệ điều hành và hệ xử lý hiện cĩ, điều này cĩ nghĩa là các ứng dụng viết bằng Java cĩ đầy đủ điều kiện để phát triển. - Giống như hầu hết những ngơn ngữ lập trình hướng đối tượng khác, Java bao gồm: một mơi trường, một ngơn ngữ, một giao diện ứng dụng Java và nhiều lớp thư viện. Những lớp riêng này cĩ đặc tính riêng là tái sử dụng lại, đây cũng là điểm mạnh mà Java khác với ngơn ngữ khác. Ngồi những tính năng trên Java cịn cĩ khả năng xử lý đa luồng. Ngơn ngữ này thực sự cơ động nên nĩ rất thích hợp cho các ứng dụng trên mạng. Ngồi ra nĩ cịn cĩ các đặc tính cần thiết như: hỗ trợ chuỗi, đồ họa, kiểm sốt lỗi, hỗ trợ đa luồng, đa phương tiện, làm việc theo mơ hình client/server, linh động và SVTH: Bùi Thi Thu Hiền Trang 55
  56. GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng hiệu quả, Các tính năng trên thực sự là những gì mà các doanh nghiệp và tổ chức hiện nay đang cần, để đáp ứng chính xác các yêu cầu xử lý thơng tin của họ Mơ hình hoạt động của ứng dụng viết bằng Java: Java thông dịch (Pentium) Mã CT Mã (*.Java) Java biên Bytecode Java thông dịch dịch(Javax) Java (Power PC) (*.class) Java thông dịch (SPARC) Hình 1.1 - Các trình duyệt Web(Browser) hỗ trợ cho cơng việc của Java để thơng dịch như: Máy ảo Java(JVM)  Internet Explorer(IE) của hãng Microsoft.  Netscape Navigator của hãng AOL.  HotJava Browser của hãng Sun.  Ngồi ra cịn cĩ một số cơng cụ hỗ trợ Java thơng qua mơi trường làm việc là: Java Workshop của hãng Sun. Jbuilder của nhĩm Inprise-Borland.  Mơi trường phát triển Java gồm hai phần: Java Compiler (chương trình biên dịch Java – Javax: Lớp này sẽ dịch chương trình thành lớp .class) và Java Interpreter(Chương trình thơng dịch Java-java, javax, trình duyệt appletviewer, jview, trình tài liệu javadoc, trình tạo hồ sơ jar .dùng để đưa lên trang Applet). - Java mang cuộc sống đến cho WWW khi mà Web đã cho tiền thân của nĩ là Oak một viễn cảnh cuộc sống tốt đẹp hơn. Java đã được thấm sâu vào trong sự hiểu biết của nền cơng nghiệp này, cịn nhanh hơn cả DOS hoặc Windows trong thời hồng kim của chúng trước đây. Nhưng sự thành cơng lâu dài của Java khơng cĩ gì đảm bảo - giống như một thần đồng nhỏ tuổi, phải trưởng thành nhanh chĩng trong khi khơng được phép đốt cháy giai đoạn. Nếu vượt qua được, nĩ sẽ chứng minh rằng mạng là máy tính. Các bạn quan tâm cĩ thể tìm hiểu thêm về Java thơng qua website III- Cơ chế truyền nhận trong Java. 1. Các kiến thức cơ bản về Networking. Các máy tính chạy trên mạng Internet truyền thơng với nhau dùng các Protocol TCP, UDP. Mơ hình mạng 4 lớp được mơ tả bằng hình vẽ dưới đây : SVTH: Bùi Thi Thu Hiền Trang 56