Escolar Documentos
Profissional Documentos
Cultura Documentos
cô baûn.
Ñeà Taøi: Internet Relay Chat Protocol tìm hieåu vaø öùng duïng do thaày Mai Vaên
Cöôøng höôùng daãn, luaän vaên sau ñaây giôùi thieäu moät öùng duïng hay noùi ñuùng hôn laø
moät chöông trình cho pheùp ngöôøi söû duïng chat vôùi nhau treân Internet. Chöông trình
hoaït ñoäng theo ñuùng giao thöùc chuaån do uûy ban IAB veà caùc giao thöùc chuaån (IAB
Official Protocol Standards) quy ñònh, quy ñònh naøy ñöôïc ñònh nghóa trong boä RFC
1459, 2810, 2811, 2812, 2813.
Luaän vaên goàm 3 phaàn chính
Ø Phaàn I trong luaän vaên laø tìm hieåu Internet Relay Chat Protocol (IRC
protocol)
Internet Relay Chat Protocol laø giao thöùc chuaån cho caùc chöông trình chat
hieän taïi, caùc chöông trình muoán thöïc hieän ñöôïc treân Internet phaûi tuaân theo giao
thöùc naøy. Noäi dung chính cuûa giao thöùc naøy laø caùc message ñöôïc gôûi vaø nhaän giöõa
client vaø server.
Ø Phaàn II caùc khaùi nieäm veà maïng vaø moâ hình socket ñeå taïo giao tieáp phuïc vuï
cho vieäc truyeàn nhaän döõ lieäu, chöông trình chat application chuû yeáu söû duïng nhöõng
phöông thöùc cuûa socket ñeå hoaït ñoäng.
Ø Phaàn III moät soá vaán ñeà ña xöû lyù vaø ña luoàng giuùp cho chöông trình hoaït
ñoäng hieäu quaû hôn.
Ø Phaàn IV caùc yeâu caàu chöùc naêng, phi chöùc naêng vaø kieán truùc cuûa chöông
trình
Ø Phaàn cuoái laø höôùng phaùt trieån ñeà taøi vaø taøi lieäu tham khaûo, phaàn phuï luïc
daønh ñeå tham khaûo giaù trò traû veà trong boä giao thöùc
www.diachiweb.com - Trang 6
Luaän vaên: Internet Relay Chat Protocol tìm hieåu vaø öùng duïngChöông I: Moät soá khaùi nieäm cô baûn.
Muïc Luïc
--0O0--
Giôùi thieäu ñeà taøi ............................................................................................................... 6
Phaàn 1 Tìm hieåu Internet Relay Chat Protocol ......................................................... 7
Giôùi thieäu toång quan veà IRC...................................................................................... 8
Chöông I: Moät soá khaùi nieäm cô baûn ......................................................................... 9
1. Servers.............................................................................................................. 9
2. Clients .............................................................................................................. 9
2.1. Operators................................................................................................ 9
3. Channels:.......................................................................................................... 10
3.1.Channels operation : ............................................................................... 11
4. Caùc khaùi nieäm veà truyeàn thoâng........................................................................ 11
4.1. Truyeàn thoâng moät – moät (one – to – one communication) .................... 11
4.2. Truyeàn thoâng moät – nhieàu (one – to – many communication) ............. 11
4.2.1. Döïa treân danh saùch (one – to – List communication) .................... 11
4.2.2.Döïa vaøo channel (one – to – group communication)....................... 12
4.2.3.Truyeàn thoâng ñeán - host /server mask ............................................. 12
4.3. Truyeàn thoâng moät - taát caû(one to all Communication )........................ 13
4.3.1.Client to Client ................................................................................ 13
4.3.2.Client to Server ............................................................................... 13
Chöông II: Nhöõng quy ñònh trong IRC...................................................................... 13
1. Quy ñònh veà code ............................................................................................. 13
2. Message ........................................................................................................... 13
2.1 Ñònh daïng moät message........................................................................14
3. Giaù trò soá traû veà (numeric replies).................................................................... 15
Chöông III: Chi tieát cho töøng message ..................................................................... 15
1. Nhoùm message ñaêng kyù keát noái ....................................................................... 15
1.1 Server Message....................................................................................... 20
1.2 Server Quit Message............................................................................... 21
www.diachiweb.com - Trang 1
Luaän vaên: Internet Relay Chat Protocol tìm hieåu vaø öùng duïngChöông I: Moät soá khaùi nieäm cô baûn.
1.3 Operator message ................................................................................... 21
1.4 Quit message........................................................................................... 21
1.5 Pass message........................................................................................... 22
1.6 NickMessage........................................................................................... 22
1.7 User Message.......................................................................................... 24
2. Nhoùm message duøng cho vieäc ñieàu khieån Channel ........................................ 24
2.1 Join message.......................................................................................... 24
2.2 part message .......................................................................................... 25
2.3 Mode message ....................................................................................... 26
2.3.1 Channel mode .................................................................................. 26
2.3.2 User mode........................................................................................ 26
2.4 Topic message ....................................................................................... 27
2.5 Names message ..................................................................................... 28
2.6 List message .......................................................................................... 28
2.7 Invite message ....................................................................................... 29
2.8 Kick command ...................................................................................... 29
3. Nhoùm message truy vaán ñeán server(server query and command)................... 30
3.1 Version message ..................................................................................... 30
3.2 Stats Message.......................................................................................... 30
3.3 Link Message.......................................................................................... 31
3.4 Time Message......................................................................................... 31
3.5 Connect message .................................................................................... 32
3.6 Trace Message ........................................................................................ 32
3.7 Admin Message ...................................................................................... 33
3.8 Info Message........................................................................................... 33
4. Nhoùm message gôûi text (sending message) ..................................................... 33
4.1 Private Message...................................................................................... 34
4.2Notice Message........................................................................................ 34
5. Nhoùm message do client truy vaán ñeán server (user-based query) ................... 35
www.diachiweb.com - Trang 2
Luaän vaên: Internet Relay Chat Protocol tìm hieåu vaø öùng duïngChöông I: Moät soá khaùi nieäm cô baûn.
5.1 Who Query .............................................................................................. 35
5.2 Who is Query .......................................................................................... 35
5.3 Whowas Message.................................................................................... 36
6. Nhoùm message khaùc (miscellaneous message) ............................................... 37
6.1 Kill Message ........................................................................................... 37
6.2 Ping Message .......................................................................................... 37
6.3 Pong Message ......................................................................................... 37
6.4 Error Message ......................................................................................... 38
7. Nhoùm message tuøy choïn(option message) ..................................................... 38
7.1 Away Message........................................................................................ 38
7.2 Rehast Message ..................................................................................... 38
7.3 Restart Message...................................................................................... 39
7.4 Summon Message ................................................................................... 39
7.5 Users Message ........................................................................................ 39
7.6 Operwall Message .................................................................................. 40
7.7 Userhost Message ................................................................................... 40
7.8 Ison Message........................................................................................... 40
Phaàn II: Tìm Hieåu Kyõ Thuaät Laäp Trình Socket............................................................... 41
Chöông I: Caùc Khaùi Nieäm Cô Baûn Veà Heä Thoáng Maïng ........................................... 42
1. Moâ hình maïng, moâ hình OSI, moâ hình TCP..................................................... 42
1.1 Moâ Hình Maïng ......................................................................................... 42
1.2 Moâ hình OSI ............................................................................................. 43
1.3 Moâ hìnhTCP/IP......................................................................................... 44
2. Giao Thöùc TCP vaø UDP ................................................................................... 44
2.1 Giao Thöùc UDP ........................................................................................ 46
2.2 Giao thöùc TCP .......................................................................................... 48
3. Ñòa Chæ IP ......................................................................................................... 49
3.1 Giôùi thieäu ñòa chæ IP.................................................................................. 49
3.2 Phaân Loaïi Ñòa Chæ IP................................................................................ 49
www.diachiweb.com - Trang 3
Luaän vaên: Internet Relay Chat Protocol tìm hieåu vaø öùng duïngChöông I: Moät soá khaùi nieäm cô baûn.
3.3. Subnet Mask (maët naï con)....................................................................... 50
Chöông II: Moät Soá Haøm Socket................................................................................. 50
1. Khaùi nieäm veà socket ........................................................................................ 50
2. Thö vieän caùc haøm socket (API) trong Java. ..................................................... 51
2.1 Lôùp InetAddress ....................................................................................... 51
2.2 Lôùp Socket................................................................................................ 52
2.3 Lôùp ServerSocket ..................................................................................... 53
2.4 Lôùp DatagramSocket................................................................................ 53
2.5 Lôùp DatagramPackage ............................................................................. 54
3. Chöông trình minh hoïa cho vieäc söû duïng socket trong Java ............................ 54
3.1 Chöông trình hoaït ñoäng theo giao thöùc TCP............................................. 54
3.1.1 Chöông trình client chaïy treân maùy khaùch ........................................ 54
3.1.2 Chöông trình server chaïy treân maùy chuû ........................................... 55
3.2 Chöông trình hoaït ñoäng theo giao thöùc UDP ............................................ 56
3.2.1 Chöông trình client chaïy treân maùy khaùch ........................................ 56
3.2.2 Chöông trình server chaïy treân maùy chuû ........................................... 59
Phaàn III: Xöû Lyù Ña Tieán Trình (multitasking) vaø Ña Luoàng (multithreading) ............... 62
Chöông I: Ña Tieán Trình (multitasking) ................................................................... 62
Chöông II: Ña Luoàng (multithreading) .................................................................... 64
1. Khaùi nieäm luoàng .............................................................................................. 64
2. Nhöõng tieän ích khi duøng thread (Advantages of multithreading)..................... 64
3. Caùc khoù khaên khi duøng thread ......................................................................... 65
4. Moâ hình hieåu trình (thread) trong JAVA .......................................................... 66
5. Tính chaát thread. .............................................................................................. 67
6. Ñoàng boä hoùa caùc thread ................................................................................... 68
7. Caùc phöông thöùc ñoàng boä (synchronized) ........................................................ 68
8. Caùc traïng thaùi cuûa thread ................................................................................ 70
Phaàn IV:Yeâu caàu & Kieán truùc chöông trình: .................................................................. 72
Chöông I: Yeâu caàu chöùc naêng vaø phi chöùc naêng: ........................................................ 73
www.diachiweb.com - Trang 4
Luaän vaên: Internet Relay Chat Protocol tìm hieåu vaø öùng duïngChöông I: Moät soá khaùi nieäm cô baûn.
A. ChatClient:....................................................................................................... 73
B. ChatServer:...................................................................................................... 74
Chöông II: Kieán truùc chöông trình: .............................................................................. 75
A. ChatClient:...................................................................................................... 77
B.ChatServer:...................................................................................................... 78
Keát luaän ........................................................................................................................... 79
Höôùng phaùt trieån ñeà taøi .................................................................................................... 79
Taøi lieäu tham khaûo ........................................................................................................... 80
Phuï Luïc ............................................................................................................................ 81
www.diachiweb.com - Trang 5