P2P 0010135
Server Client Hybrid P2P Pure P2P Pure P2P Single Point of Failure Pure P2P Sever Client Hybrid P2P Pure P2P (Single Point of Failure ) Client Server Hybrid P2P Single Point of Failure PureP2P Hybrid P2P
2 1 5 1.1................................. 5 1.2................................. 8 1.3................................. 9 2 10 2.1................................... 10 2.2........................ 19 3 20 3.1................................... 20 3.2............................... 24 3.3............................... 25 4 26 4.1............................... 26 4.2............................. 27 4.3........................... 28 4.4............................... 31 4.5.............................. 31 4.6........................... 33 5 34 5.1..................................... 34 5.2..................................... 34 5.3.................................. 34 6 36 6.1........................... 36 38
3 39 40
4 1............................ 6 2 LimeChat(IRC).............................. 10 3 Yahoo..................... 11 4 Yahoo...................... 12 5 Yahoo................. 12 6 Yahoo................ 12 7 MSN..................... 13 8 MSN....................... 14 9 MSN.................. 14 10 Gnutella...................... 15 11 Gnutella ping pong................. 16 12 Gnutella query queryhit.............. 17 13 Gnutella push..................... 18 14...................... 21 15.................... 21 16 Main Window...................... 23 17....................... 23 18 Info Window................................ 26 19............................. 30 20 Main Window............................... 32 21 IM Window................................ 32
1 5 1 1.1 PC DSL(Digital Subscriber Line) E-MAIL E-MAIL E-MAIL E MAIL [1] 1.1.1 ( 1)[2] Client Server www Hybrid P2P P2P
1 6 NAPSTER MSN IM Pure P2P P2P Gnutella[3] WINNY[4] FREENET[5] 1 1.1.2 IRC Internet Relay Chat [6] 1988 1990 IRC talk phone UNIX UNIX, Windows, Macintosh ( ) IRC IRC
1 7 1 IRC 1 1 Yahoo [7] MSN [8] Hybrid P2P IM Yahoo OS Windows Macintosh (OS 8.6 ) Java i ( ) EZweb ( ) WEB Yahoo Yahoo MSN OS Windows Hotmail Hotmail WEB Peer to peer P2P P2P
1 8 1.1.3 Single Point of Failure Client Server Hybrid P2P Single Point of Failure Pure P2P Single Point of Failure + (Servents) Pure P2P Gnutella winny Freenet Pure P2P 1 Pure P2P 1.2 Server Client Hybrid P2P Pure P2P Pure P2P Single Point of Failure Pure P2P 1.3 2 Pure P2P
1 9 3 4 5 Pure P2P 6
2 10 2 2.1 2.1.1 GUI(Graphical User Interface) LimeChat(IRC Client )[9] Client Server Lime Chat #( ) ( 2) @( ) 2 LimeChat(IRC)
2 11 Yahoo Hybrid P2P YAHOO WEB [7] ( 3) ID ( 3) ( )( 3) ( 4) ( 4) ( 4) ( 5)( 6) 3 Yahoo
2 12 4 Yahoo 5 Yahoo 6 Yahoo
2 13 MSN Hybrid P2P MSN WEB [8] ( )( 7) ( 8) ( 8) ( 8) ( 9) 7 MSN
2 14 8 MSN 9 MSN
2 15 2.1.2 Pure P2P Gnutella winny Freenet Pure P2P Gnutella Gnutella [2] Pure P2P Descriptor TCP/IP Ping,Query ( ) QueryHit HTTP ( 10) 10 Gnutella
2 16 5 Descriptor Descriptor Gnutella Descriptor ping pong Descriptor ping ping ping broadcast pong sendback pong ping Gnutella 11 Gnutella ping pong ping pong sendback ping ( 11)
2 17 query queryhit Descriptor query queryhit sendback 12 Gnutella query queryhit broadcast query query Hit query broadcast query Hit query queryhit ( 12)
2 18 push HTTP GET Push push queryhit Firewall push sendback ( 13) 13 Gnutella push query sendback queryhit queryhit push sendback push File
2 19 2.2 2.2.1 Single Point of Failure 2003 9 Yahoo CHAT MSN Pure P2P 2.2.2 Pure P2P IM Pure P2P Pure P2P Server Client Hybrid P2P Pure P2P (IP) Pure P2P (GUI )
3 20 3 3.1 Pure P2P Server Client IM Hybrid P2P 3.1.1 IM 1 1, IP, 1 1, JAVA Server 200 Client 160 Single Point of Failure 1 1
3 21 14 15
3 22 3.1.2 Hybrid P2P IM 1 1 1, ID IP port, ID port (ID IP port) P2P JAVA Server 250 Client 700 Single Point of Failure
3 23 16 Main Window 17 Main Window( 16) ID IM Window ID Main Window IM Window( 17)
3 24 3.2 Pure P2P Pure P2P ID ( ) ID ( ) ID ( ) Hybrid P2P
3 25 3.3
4 26 4 4.1 myid (myport) ( 18) ID ID ( ) ID mydate.txt 2 OK 18 Info Window
4 27 4.2 (nodelist.txt) IP port connect,(myid),(myport),( IP) (connectport),(myip) ( ) (ConnectionRefused) NG 2 nodelist.txt
4 28 (nodeid),(ip),(port) (nodeid),(ip),(port) (nodeid),(ip),(port), + nodelist.txt nodelist.txt 4.3 (connectport),(myip) ( IP) (connectport) getlist,(myid),(myip),(myport) getlist
4 29 addmember,( ID),( IP),( port) addmember addmember,( ID),( IP),( port) getlist 1. A 2. A B A 3. B A B B 1 ( 19)
4 30 B C A D 19 1. A D 2. B C (addmember) 3. B addmembera C C D 4. B addmembera C 5. D addmembera D
4 31 4.4 onlinfriend offlinefriend online ( 20) onlin friend offline friend online ID offline friend ID MainWindow myfriend.txt Main Window sound on off 4.5 Main Window onlinefriendid onlineid IMwindow( 21)
4 32 20 Main Window 21 IM Window
4 33 IMwindow TextArea TextField TextField Enter TextArea (myid) (TextField ) IMwindow TextArea ( ID) ( TextField ) Main Window IM Window IMwindow Main Window onlinefriend online ID 4.6 deletemember,( ID) ID 4.1 nodelist.txt (myfriend.txt)
5 34 5 Pure P2P 5.1 NAT NAT 5.2 (A ) IP,port A 5.3 ID passward ID ID ID ID ID@( ) Single Point of Failure 1 Single Point of Failure
5 35 TextArea URL IM Window IM Window
6 36 6 6.1 Client Server Hybrid P2P Single Point of Failure PureP2P ID Hybrid P2P Pure P2P Pure P2P 10 Hybrid P2P, Info Window password * ID
6 37 JAVA JAVA IP Pure P2P NAT Pure P2P 10
6 38
39 [1] Mark Handel and James D.Herbsleb: What Is Chat Doing in the Workplace?, In CSCW 02,pp.1-10, New Orleans, Louisiana, USA November 16-20, 2002. [2] :, http://www.soi.wide.ad.jp/class/20020022/materials for student/10/na-10- done.pdf [3] The Gnutella Protocol Specification v0.4, http://www.jnutella.org/docs/gnutellang/gnutella protocolv4.shtml [4] Winny Tips, http://www.nan.sakura.ne.jp/winny/ [5] Freenet: A Distributed Anonymous Information Storage and Retrieval System, http://de-co.info/freenet/icsi.html [6] IRC users in Japan Home Page, http://irc.kyoto-u.ac.jp/ [7] Yahoo, http://messenger.yahoo.co.jp/ [8] MSN, http://messenger.msn.co.jp/ [9] Lime Chat, http://www.dive-in.to/ mb-arts/
40 connect,(myid),(myport),( IP) IP IP (connectport),(myip) connect sendback NG connect sendback getlist,(myid),(myip),(myport) addmember,(addid),(addip),(addport) (addid) deletemember,(deleteid) (deleteid) msg,(windowname),( ) IM Window ( ) changeim,(windowname),(addid) IM Window (addid)