????????
??????????????????????????????????????????????????????????????????????????÷?????? UDP ?? TCP Э?飬????д??????? 1 MB ???????????
???????????
?????????

??????????????????????????????????????
???????
????????????????????н??б???
????javac *.java
???????????????????????????У?

 

Receiver??
# java FileReceiver [protocol] [port]
Sender??
# java FileSender [protocol] [host] [port] [filename]

???????? [protocol] ?????????? "udp" ???? "tcp"???? sender ?? receiver ????????
????????????? receiver ??????????????????????? "Received-[filename]"??
????TCP ???
??????????

?????? TCP ????У?Receiver ??????? ServerSocket???????????????м?????Sender ?????????????? Receiver ??????μ? Socket???????? socket ???? InputStream ?? OutputStream ??????????
?????????????????????????С??????????? Sender ????? Receiver?????? Receiver ????????????????????????洢???????????????????ж?????????????????????????????????????? Receiver ????????????? Sender ??ò??????????
????????????? FileInputstream ??????????????д??????????д????? Socket ????? OutputStream ???????????Ч?????ζ?????м???????? 8 kb?????????????????????檔
????TCP ??t???
????????????TCP ?????????????????????Ч???????????????С????????????????????е?????ж?????????????檔
????UDP ???
??????????
????UDP ??????????????????? Java datagram ??DatagramPacket ?? DatagramSocket??
?????? receiver ??????????????????????? socket ???????????????????????sender ????????????????????????????? socket?????????????????????????????????С?????????? packet??????? package  ?????????? socket ??????????? package??
???????????????? package??receiver ????????? outputStream ??????????????? sender ??????????? "OK" ????? package???????? "OK" ?????sender ??????????????????????? UDP ????????????κ??? 512 ????顣r(shí)eceiver ????Щ?鰴???????????д???????????????????????????????????????????????????????
????UDP ??t???
????UDP ???????????????????????Э?顣????ζ?????????л??ж?????????????????????????????????????????н??????????е???Щ????????ζ?????????????????????(??????????)????????????????????????????????????????????????????????н??????????????
???????????????????????????????????????д???????????????????????????????????????????????????????????????δ??????????????к????????? Receiver ???????????????洢??Щ??????????????????????
????????????????????????Receiver ???????????????????????????????????????У?????? Receiver ???????У??????????????????????????????е??????????receiver ??????????????????δ??????ó?????????????????????????????????????????????????????к??????????????????????????????????????????????????????????
???????????????????????????????????????????????????? sender ?????????????????????????????????????????????????????
????????
????????????????????????????????С???????????? UDP Э???????????????????????????????(???)?????????????????Щ?????????????????????????????????????У?????Щ??????????????????? TCP ??? UDP??