Tải bản đầy đủ (.doc) (112 trang)

Xây dựng dịch vụ chat trên mạng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (921.59 KB, 112 trang )

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
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

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
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
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
GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng




C
C
HƯƠNG
HƯƠNG
1
1


TỔNG QUAN VỀ MẠNG
TỔNG QUAN VỀ MẠNG


INTERNET
INTERNET
SVTH: Bùi Thi Thu Hiền Trang 6
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ã hoá 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
GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng
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 soát lỗi và kiểm
soá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 soá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 soá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
Session Layer
Presentation Layer
Application Layer
Transport Layer
Network Layer
Datalink Layer
Physical Layer
Application Layer

Presentation Layer
Session Layer
Transport Layer
Network Layer
Datalink Layer
Physical Layer
Sending
Application
Receiver
Applicatio
n
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 toà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 toàn cầu đầu tiên.
Các thông tin được đặt rải rác trên toà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 toà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
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, đã làm phát sinh ra
SVTH: Bùi Thi Thu Hiền Trang 10
GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng
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.
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 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.
SVTH: Bùi Thi Thu Hiền Trang 11
Application Layer
HTTP,FTP,Telnet, SMTP
Transport Layer
TCP/IP,UDP
Physical Layer
EthernetX.25, Token Ring
Network Layer
IP
Receiving Data

Sending Data
GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng
♦ 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. Ngoà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 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
SVTH: Bùi Thi Thu Hiền Trang 12
GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng
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.
- Đị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).
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).
SVTH: Bùi Thi Thu Hiền Trang 13
Start
App
ServerClient
Create the socket
Create the server
socket
Accept New Connection
Acquire Stream and
Conduct Conversation
Acquire Stream and
Conduct Conversation
Close Stream and Socket Close Stream and Socket
Start
App
Continue?
yesno
Disconnect
Connect attempt
Exchange data
Mô Hình Kết Nối Theo Giao Thức TCP/IP
GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng
Ðị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).
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(2
7
) địa chỉ đường mạng và 16.777.214 (2
24
)địa chỉ 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(2
14
-2)và số địa chỉ host 65.534(2
16
-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(2
21
-2) địa chỉ đường mạng và

phần Host ID có 254(2
8
-2) địa chỉ host.
Chúng ta có thể xem số địa chỉ Host ID và Network ID qua bảng sau:
Lớp
Mạng
Số địa chỉ đường
mạng
Số host trên một địa chỉ
mạng
A 126 16,777,214
B 16,382 65,534
C 2,097,150 254
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 toá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.
SVTH: Bùi Thi Thu Hiền Trang 14
Network Host ID
32 bits(4 byte)
Địa chỉ IP
Class ID
0 Network ID Host ID
31 30 24 23
0
GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng
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
một cách hài hoà 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ơ
SVTH: Bùi Thi Thu Hiền Trang 15
GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng
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õ:
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, ngoà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 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
SVTH: Bùi Thi Thu Hiền Trang 16
telnet <domain-name or IP-address>
GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng
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 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ị xoá 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ọ.
SVTH: Bùi Thi Thu Hiền Trang 17
GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng

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. Ngoà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 ngoà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).
+ 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
SVTH: Bùi Thi Thu Hiền Trang 18
GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng
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:
<protocol>://<domain_name of Server>/<path>
Trong đó:
• Tiền tố <protocol> 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,.....

• <domain_name of Server> là tên DNS (Domain Name System) của máy Web
server.
• <path> 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://
(secure HTTP)
www.company.com /catalog/orders.htm
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
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
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
sự)
edu các cơ sở giáo dục
com các tổ chức kinh doanh, thương
mại

mil các tổ chức quân sự
org các tổ chức khác
net các tài nguyên mạng
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à
hoàn toà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.


10. Dịch vụ FTP (File Transfer Protocol)
SVTH: Bùi Thi Thu Hiền Trang 21
VN
gov edu com mil org net
Quốc gia
hut
fit
GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng
- 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<domain name or IP address>
- 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ề. Ngoài ra trong một số trường hợp nó có thể đổi tên, tạo, xoá 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 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
ftp>put source-file destination-file
ftp>get source-file destination-file
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.


CHƯƠNG
CHƯƠNG
2
2
SVTH: Bùi Thi Thu Hiền Trang 23
GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng




TÌM HIỂU VỀ
TÌM HIỂU VỀ


INTERNET RELAY CHAT (IRC)
INTERNET RELAY CHAT (IRC)








Giới thiệu tổng quan về IRC

SVTH: Bùi Thi Thu Hiền Trang 24
GVHD : Hồ Sỹ Bàng Xây Dựng Dịch Vụ Chat Trên Mạng
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 toà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.
I. Một số khái niệm cơ bản .
SVTH: Bùi Thi Thu Hiền Trang 25

×