ĐỀ TÀI
!"
!"#$!%&'!"()! * #$%$&'($)
Sinh viên thực hiện : Nguyễn Hải Minh
'+ **+,-.*/
,-!"!",./01%2!"30!4563/6
01""23&345&4 675895# #'8: #$%$&;'<5$=5
78
5-->?@ABCDEF
G-GHIJDEKLM%5HN-CGOC
DE(-PQRHIBSGOTJUGOCV(+
?MBOTH>NWX>GYZTH>[P+
,+H>MX)JDE\TR%$+G@N
]\+BP\.GMJDEOSH]
->MHIN\%
^@T[-D?CDE,[CT[-D?
PQCDE+,[MC,%
$NGHI,“Hệ tin học phân tán”“Lập trình mạng
máy tính”DH>?\D-P- #$%$&'($)BG_M
GHINMC,-%??[P-+B
G_+T[-D?@X“Mô phỏng quá trình làm việc của 2 server ngang
hàng trên mạng TCP/IP”
^HI?H>D`P-+&'($)BG_+GHIa
E)L\GQ%bDcG_SdMCHdd`eQ
NMN-MBR+XGHI]U[P-+L%
fT[\)%
Đà Nẵng ngày 15 tháng 5 năm 2012
*"9.:! !%
$'85#3gh58i""58
01""23&345&4 675895# #'8: #$%$&;'<5$=5
&j"5k"^l3%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
"%5-U+GO+C !" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%m
""%gPL+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%n
"""%\S%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%o
"'%&?,PQG@T[-D?H)%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%o
"'%m%#>p+N%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%o
"'%%&?,+C%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%q
"'%r%#>a)L\GQN@p+N%%%%%%%%%%%%%%%%%%%%%%%q
'%MNMH)%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%s
'%m%$)GtNMSS%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%s
'"%%u[-D?)vDa%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%s
'"%MNM+DH)%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%mw
'"%m%H)$m%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%mm
'"%%H)$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%mm
'""%\+GOH)$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%m
'"""%8H>D`GbH)%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%m
'"""%m%O-.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%m
'"""%%-.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%mr
"u%'.DE:L%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%mr
1"&"x38y*8iz%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%mo
$'85#3gh58i""58
01""23&345 #'8: #$%$&;'<5$=5
;"9.$!<=%>?1@A!"BCD"D>1%EBF
-.--G_vOP,+
-Q%M>BLGP{]-.GHIGH+JDEv
CEE+Se%c>YBN+,
@B-\B-.G_]bvNd)B|HY,B-GM
,%^bL?LcK+P"G_GHN\
(JDEGM|HYD[%8-LD+)"BH>
pLB]L+YL?M++HY]GHIN\(
-XAIGMHX-}
G%H!%1I!"J921BCD5?!"!1KL!K1
5H+8mBNMRXU"t].C
RD~E+BL+tJDE
D~ED+"R%•^[-"•C.B
L++M>%^@OSCHX-+GO)
\GQN-M,-.+BDcNQNM
€BGQ\+M>+cO-X%^]+C !"
$'85#3gh58i""58
m
01""23&345 #'8: #$%$&;'<5$=5
M921LH!%1L9.N!(O<P9J9D5?!"!1KL!K1
5MG_|XBL•LM‚OH)+{GHI+
|Q+D>C(ENHNMbA
>%ƒ-QDaVHX-%^@]@-Q"B
Da\GHITJUQP%O+„z$"HY]
L\-PH"{]LSPTJUDa
…P+
…P+e,P †+++ +++‡
…Pˆ+Ne,P" †" +++‡
…P:N! -
#\JLGv-ySJOG>-0%0DcO
+\+(L\G@+HBG]R€$D%.|YG@G]Da
GHITJUPHIH+%
^PBDaGHITJULvP+%P-]EKCDa
+NDX?RG~G@P+v-0]@@
$'85#3gh58i""58
01""23&345 #'8: #$%$&;'<5$=5
GHI%^Q-SHNLMOH)[\[
+C?€RG~H)>-GHI%P+J
DaTSPDH>+DeL-SL-%c>DaBP+
VJTSGQN@N€TG~G~{GMBGDa%
*TS>P BDeDaAGHIG]]]N.H>
NRML‚H\)o/*0%R€]Da
tOPDCGQN@G]Da%$NG]]
T+vP BDaGHI-@TS+P" %
#]DaTS>P" AMEL~G]]]Da"
)++]N.H>cI>-@]]DcG@-Q
Da%+NG]]B" V‰PD]+]Dat
-@TS+P:N! -%
*]Da" >P:NAGHIdODN
-@>P-G+%#]Da€-,Š%*.H>
OŠ++EO+-yNMS%
+NGHI-Q"BŠGHI+{D`G@]@
>G€G.P>%6+?O+D{]P5ˆ+N
:N! -%Š>+AGHIP:N! -,LD
P-+-@P5ˆ+N†" ‡%P" D?+
GQN@+D]+G@-MG~GHYGM++]" %
$G]]" -GHI-@TSP:N! -G@G+%ƒ
CMME+GMNDa>G.-0%
*>-0]DaGHITJU+-HI>-y%+
QVBGPDaPDN!-%G[-ŠL~LGP
D-@P" %P" BDaGHIL]" BG]P
ScP+G@@~%
$'85#3gh58i""58
r
01""23&345 #'8: #$%$&;'<5$=5
P1%Q!"@RDB%S#,BTB%U1L9.N!(O<P91L>!"5?!"!1KL!K1
^@O]Da]@G|t>G.B"G_DcOS
GG~{R\-.S+Hr%
5aG~{-GHIJ+-.XDa%
TB%UVU1!Q"OD%D52.1L>!"5?!"!1KL!K1
bSc++GO")MNMSa-%
^@+LO+GO-Qa-+]@D‹\
N-ONMSa€%ƒG]D‹H
†q‡
$'85#3gh58i""58
/
01""23&345 #'8: #$%$&;'<5$=5
m3& 0\JOH)vW%:+€+]
VYGI?NMS%
3& yH)XHGJL%^@NMSBLJ-PNM
STS+P %
r „L~O]Da >Y$g5Œm-P]?GtLO+B$fƒ
]@R-LRN~+BvG[-ŒmwwJ+ 0%
/$NX]Da]$g5ŒmB 0J\OL+]$g5ŒmB
y*ŒmwmB$fƒ]@R-LRN~+BvG[-Œmqq%
n yXGHI]Da| 0AJMO]Da]y*Œmq•%
o y-@RXNMSH)y%
q$NXS]Da]y*Œmq•B 0-@RXNMS
H)0%
$?NMSa+D vLH>rB/Bn,)MLd-rLH>†
ˆ-DN‡%
ƒG]ONMSV?H)?
;W$9BX9BCDY,1>2!
&X&y5]$%
*JDECDEZ$]Ž%
u[-D?S+GKGa$%
$'85#3gh58i""58
n
01""23&345 #'8: #$%$&;'<5$=5
;G1 %P1%Q!"
•$]mG~{" %
$>L‚G†‡%
*•$S?O.V\J
SOG%
GGHITG~H>†QOD‡D+HYX+%
•$AJG+P?-H>H>%ƒ-H>•€{
]OGGHIJ%
*O$JOG-PO+bQ$?O
+G]G-AGHIJGMR\$S%•
$AN@GBMServer phi thc hinA?%
R\$GQXGHIGBH{]$+]" vServer
phi thc hin>?ODGG]%
•$]@TGHI†++‡ODG_?
$NBCTGHIN&$N%
^~DG†‡
D $G " $J " $\?
$GA$M++&%
;ZDB%[!+%X!5N5@\]^.(Z!"B%&T!"1LH!%
,PQX++Š'0o%wPQ$:&
++Šywwr%
;/;'1%P9_!`>BV
^QN@p+N+•NMSGMO-.|T+GKDaJ
DEO++C3: †3: +++‡+b †+
++ +++‡
]@GHIJDEG@+CDE%
$'85#3gh58i""58
o
01""23&345 #'8: #$%$&;'<5$=5
F +CDEG@R-HYDcH>NJ€GM
[%
F +CDEC(]HOG@[
XDa|OSHYDc%
F +CDE‘’%
;6;ZDB%[!"D>1%EB
*JDEp+NBGQ[GP,+C3: - %
^@N.a+C-‚v†‡NMS
€
F +CD?NMS†++FLD‡BH)?HG+B
HYDc\MXNMSH>NM+GKGHI
?%*ONMSG_GHI+B+C AaNMSL\+
G\.+“Da%
-PONMS”H>NJXDa%
F 3: +CNMS†++‡%$?+a-.
SHOMOGGHIJ|O-GMO
-NN]ONMS”a€%
'>L+-B,+C cI%
;a;'1%P9!%O!"<P!%BTY !BCD@N9V%\!_!`>BV
P!% G1
/;L$!KL#KL/
tcpServer1.RemoteHost =
“IP Addr”
*L+G~{" $NMS
>$m%
tcpServer1.RemotePort =
1001
*L+G~{K$NM
S>$m%
tcpServer1.Connect
$m?NMS+%
tcpServer1.SendData
Message
$m?JDa†Hv
LM‡%
$'85#3gh58i""58
q
01""23&345 #'8: #$%$&;'<5$=5
tcpServer1.GetData strData
$m?XDaH+
LM:%
tcpServer1.LocalIP
CG~{" $m%
P!% G1
6;L$!KL#KL6
tcpServer2.LocalPort =
1001
*L+G~{K$NM
S>$m%
tcpServer2.Listen
$?d
tcpServer2.Accept
requestID
$?RXNMS%
tcpServer2.SendData
Message
$?JDa†Hv
LM‡%
tcpServer2.GetData strData
$?XDaH+
LM:%
$'85#3gh58i""58
•
01""23&345 #'8: #$%$&;'<5$=5
;%U1VUB%&T!"1LH!%
;/;T@bVU1!Q%P1%Q!"
;6;c^.(Z!"BT`d(O<P9
•$]O:LStL
m%$+HD%$GQ]cOS
DGD+HYDcG~•%
% &HR\GD+$+JB
GGHIH+C?JS%
r% ON&H.]G]
†G_?!G?‡%
$'85#3gh58i""58
s
01""23&345 #'8: #$%$&;'<5$=5
e91LfBBCDB2BDY<K
L$+
D 5OD
L&
D N $$ fT$
NDRD+SR†L‚+L‡
LN&
D ^_? Y+
T@b1%ZB1%\J9D!%P
;%U1VU"D>(P!B%&T!"1LH!%
$'85#3gh58i""58
mw
01""23&345 #'8: #$%$&;'<5$=5
;/;%&T!"1LH!%BCDKL#KL/
5€“Start”^@LdGP?JGGM$%
5€“Monitor”
#JG-PGM$%
8@~OD?$m$%
5€“Clear my task list”?T]ODG_?
$m%
5€“Exit”^@+H)%
;6;%&T!"1LH!%BCDKL#KL6
5€“Start”^@LdGP?JGGM$m%
5€“Monitor”
#JG-PGM$m%
8@~OD?$m$%
5€“Clear my task list”?T]ODG_?
$%
5€“Exit”^@+H)%
$'85#3gh58i""58
mm
01""23&345 #'8: #$%$&;'<5$=5
;G1 %>?1@A!"BCDB%&T!"1LH!%BCDB2BKL#KL
- *MS+BJGGtLO%
- #JvGI+†$+‡%
- 5XGJGMH+GI†&‡%
- ?+C?vGI†&‡M
%
- &H++N&%
- 5MG-P†++‡J+LON&
+$-P%
- 5MXGHIGDN&$NJGMA?
@~ODG-ODN&
%
;&'!"()!B,@g1B%&T!"1LH!%
;/;,1L$!5A152.1h!%
*NvGOH)BŠ+GD++D@
~%
–*Š+@~H)?GO?NMS+%
$'85#3gh58i""58
m
01""23&345 #'8: #$%$&;'<5$=5
–N€StartG@?JG+%
–N€MonitorG@@~N$%
–N€Clear my task listG@T]NG]%
;6;,1L$!%D52.1h!%
MX
$m
–,Š+Š$m%
–$m%6+8+Œ^~{" $%
–$m%6+ +ŒK$%
$
–,Š+Š$%
–fT$Œ" $m%
c;h(iD1DYD`K
K``D"K1>LK
(K``D"K >!1K!1
w$DyN†m‡
mfTNm†m‡
fTN†m‡
rfTNr†m‡
/fTN/†m‡
$'85#3gh58i""58
mr
01""23&345 #'8: #$%$&;'<5$=5
K``D"K`1
(K``D"K DLV K!1KL#KL j]KB91KKL#KL
rmw%m/s%/s%mmr mw%m/s%/s%mms
m /mw%m/s%/s%mmr mw%m/s%/s%mms
m nmw%m/s%/s%mmr mw%m/s%/s%mms
r omw%m/s%/s%mms mw%m/s%/s%mmr
w qmw%m/s%/s%mms mw%m/s%/s%mmr
w •mw%m/s%/s%mms mw%m/s%/s%mmr
w smw%m/s%/s%mmr mw%m/s%/s%mmr
w mwmw%m/s%/s%mmr mw%m/s%/s%mmr
w mmmw%m/s%/s%mmr mw%m/s%/s%mmr
w mmw%m/s%/s%mmr mw%m/s%/s%mmr
w mrmw%m/s%/s%mmr mw%m/s%/s%mmr
$'85#3gh58i""58
m/
01""23&345 #'8: #$%$&;'<5$=5
D`V`1
( (K``D"K 1D19` >!K5K
ms m:+ o!o!ww•n•ro
mrw :+ o!o!ww•n•rq
mrm r:+ o!o!ww•n•r•
mr r:+ o!o!ww•n•rs
mrr :+ o!o!ww•n•/w
mr/ w:+ o!o!ww•n•nw
$'85#3gh58i""58
mn
01""23&345 #'8: #$%$&;'<5$=5
klm
—m˜%$%&'($)BH tin học phân tánB5u0^,S %8t.B
ww%
—˜%Các tài liu trên internet.
—r˜ 8a*BKỹ xo lập trình VB6, 5u0&+GOT_OB5(ww/%
—/˜'5F#3":fBGỡ rỗi cho người lập trình Visual BasicB5u0SNB5(www%
$'85#3gh58i""58
mo