Abstract:
An efficient, flexible P2P file transmission management technology for limiting and directing of P2P file transmission mainly by replacing an original tracker server with a setting controllable tracker server, and modifying node list based on predetermined rule in the controllable tracker server. With the present invention, a network operator can strengthen function of the controllable tracker server in P2P communication gradually by weakening function of the original tracker server in P2P communication gradually, and utilize various rules or policies established in advance to manage file transfer of P2P nodes.

Description:
TECHNICAL FIELD 
       [0001]    The present invention relates generally to data transmission management method and system, in particular, to a method and system for managing P2P file transmission. 
       BACKGROUND ART 
       [0002]    Peer-to-peer technology (P2P for short) is referred as ad-hoc network technology, which depends on computer capability and bandwidth of participants in the network, rather than depends on a few servers. In a P2P structure, every node (peer) simultaneously has functions in such three aspects as information consumer, information provider and information communication etc. In a P2P network, rights and duties possessed by every node are all equal. 
         [0003]      FIG. 1  shows a schematic view of typical P2P file transmission. Regional network  101  contains node A and node B, and node A and node B are in contact with other nodes outside through edge router  102 . Regional network  103  contains node C and node D. Node C and node D are in contact with other nodes outside through edge router  104 . Assuming a user in node A wants to acquire a P2P file, node A first needs to acquire a seed file (a.torrent for example) corresponding to the P2P file from a seed server  105 . According to BitTorrent protocol, a file issuer will generate and provide a .torrent file (i.e. seed file, also referred as “seed”) according to the file to be issued. The .torrent file is substantially a text file, which contains two parts: tracker server information and file information. Tracker information is mainly address of the tracker server that needs to be used during BT downloading and settings for the tracker server, and file information is generated according to calculation on object file, the result of calculation is encoded according to B encoding rule (Bencode encoding) in BitTorrent protocol. Its main principal is to virtually divide the file provided for downloading into blocks with equal size, and write index information and Hash verification code of each block into .torrent file; thus .torrent file is an “index” of the downloaded file. If user node A wants to download file content, it first needs to acquire corresponding .torrent file, and then uses BT client software to perform download. 
         [0004]      FIG. 4A  shows a schematic view of a.torrent. Table 1 gives a detailed explanation for content contained in a.torrent. 
         [0000]    
       
         
               
               
             
           
               
                 TABLE 1 
               
               
                   
               
               
                 content in a.torrent file 
                 meaning 
               
               
                   
               
             
             
               
                 D 
                 Structure of seed file is 
               
               
                   
                 “dictionary” type. 
               
               
                 8:announce37:http://tracker.ex- 
                 Specifying information of 
               
               
                 am.com:8077/announce 
                 corresponding original tracker 
               
               
                   
                 server 106 
               
               
                 13:announce-list 
                 Start symbol of backup original 
               
               
                   
                 tracker server information 
               
               
                 1137:http://tracke2.exam.com:8077/an- 
                 First backup original tracker 
               
               
                 nouncee 
                 server 
               
               
                 136:http://track3.exam.org:8000/an- 
                 Other backup tracker server 
               
               
                 nouncee 
               
               
                 136:http://track4.exam.org:6969/an- 
               
               
                 nouncee 
               
               
                 136:http://track5.exam.org:8080/an- 
               
               
                 nouncee 
               
               
                 134:http://tr6.exa.n1.n2:2710/an- 
               
               
                 nouncee 
               
               
                 140:http://track07.examp.com:2710/an- 
               
               
                 nounceee 
               
               
                 10:created by13:Creator1/0.70 
                 Creator software 
               
               
                 13:creation datei1226980360e 
                 Creation date 
               
               
                 8:encoding3:GBK 
                 Encoding format 
               
               
                 4:infod5:files1d6:lengthi183e4:path 
                 Start portion of file information 
               
               
                 110:3FFile.urle10:path.utf-8112:3EF 
               
               
                 ile.urleed6:lengthi2707e4:path146:3 
               
               
                 E... 
               
               
                 &lt;Other content&gt; 
                 Content portion of file 
               
               
                   
                 information 
               
               
                   
               
             
          
         
       
     
         [0005]    Downloadable node list corresponding to the seed file is stored in the original tracker server  106 , as shown in table 2 below. Actually, seed server  105  and original tracker server  106  may be hosted in a same physical server. In table 2, assuming that a P2P file is divided into 4 portions, nodes B, C, D possess several blocks of the P2P file respectively. By acquiring the node list, user node A knows it will connects to which nodes to acquire corresponding file blocks. Since node list may change continuously during operation, for example, new node will be added in continuously and original node will exit continuously, user node A may need to communicate with original tracker server  106  periodically during downloading to query the latest node list. 
         [0000]    
       
         
               
               
               
               
             
           
               
                   
                 TABLE 2 
               
               
                   
                   
               
               
                   
                 Node 
                 IP address 
                 File block identifier 
               
               
                   
                   
               
             
             
               
                   
                 B 
                 10.1.1.1 
                 1, 2, 3, 4 
               
               
                   
                 C 
                 20.1.1.2 
                 1, 2 
               
               
                   
                 D 
                 20.1.1.3 
                 3, 4 
               
               
                   
                   
               
             
          
         
       
     
       SUMMARY OF INVENTION 
     Technical Problem 
       [0006]    Currently, P2P file transmission takes a significant portion in overall traffic of network transmission bandwidth. P2P communication can lead to abnormal traffic, cause accidental damage to network resource, and such problems as network jam, performance degradation and user dissatisfaction due to P2P communication may affect normal network application, such as WWW, E-mail etc, and normal user is further dissatisfied with slow speed of webpage browsing as well as receiving/sending email. For P2P communication, currently, there is no effective rate-limiting and directing scheme. 
       Solution to Problem 
       [0007]    In order to solve the problems in the art, the present invention provides an efficient, flexible P2P file transmission management technology. The invention realizes rate-limiting and directing of P2P file transmission mainly by replacing an original tracker server with a setting controllable tracker server, and modifying node list based on predetermined rule in the controllable tracker server. 
       Advantageous Effects of Invention 
       [0008]    With the present invention, a network operator can strengthen the controllable tracker server in P2P communication gradually by weakening the original tracker server in P2P communication gradually, and utilize various rules or policies established in advance to manage file transfer of P2P nodes. 
         [0009]    Specifically, the invention provides a controllable tracker server for modifying node list of a peer-to-peer P2P file, including: an acquiring means for acquiring a node list in an original tracker server corresponding to a P2P file; a judging means for judging whether the node list needs to be modified according to a predetermined rule; a node list modifying means for modifying the node list in case that the node list needs to be modified; and a returning means for returning the modified node list to a user. 
         [0010]    The invention also provides a system for managing transmission of peer-to-peer P2P file, the system including a server processing means, the server processing means further including: a receiving means for receiving P2P seed file requested by a user; a parsing means for parsing the P2P seed file to acquire original tracker server information therein; and a seed file modifying means for modifying the P2P seed file to replace the original tracker server therein with a controllable tracker server. 
         [0011]    The invention also provides a method for modifying node list of a peer-to-peer P2P file, including: acquiring a node list in an original tracker server corresponding to a P2P file; judging whether the node list needs to be modified according to a predetermined rule; modifying the node list in case that the node list needs to be modified; and returning the modified node list to a user. 
         [0012]    The invention also provides a method for managing transmission of peer-to-peer P2P file, including: acquiring a P2P seed file requested by a user; parsing the P2P seed file to acquire original tracker server information therein; and modifying the P2P seed file to replace the original tracker server therein with a controllable tracker server. 
         [0013]    The above description illustrates some advantages of the invention on the whole, and these and other advantages will become more apparent by combining drawings and detailed description of the preferred embodiments of the invention. The drawings referred in the description are only used to illustrate typical embodiments of the invention, and should not be considered as a limitation to the scope of the invention. 
     
    
     
       BRIEF DESCRIPTION OF DRAWINGS 
         [0014]      FIG. 1  is a schematic view of typical P2P file transmission. 
           [0015]      FIG. 2A  is a schematic view of limiting P2P file transmission according to an embodiment of the invention. 
           [0016]      FIG. 2B  is a structural block diagram of the controllable tracker server according to an embodiment of the invention. 
           [0017]      FIG. 2C  is a structural block diagram of the server processing means according to an embodiment of the invention. 
           [0018]      FIG. 3  is a schematic view of directing P2P file transmission according to an embodiment of the invention. 
           [0019]      FIG. 4A  is a schematic view of a typical P2P seed file. 
           [0020]      FIG. 4B  is a schematic view of a P2P seed file modified according to an embodiment of the invention. 
           [0021]      FIG. 5  is a schematic view of dividing regions according an embodiment of the invention. 
           [0022]      FIG. 6A  is a flow diagram of managing P2P file transmission according to an embodiment of the invention. 
           [0023]      FIG. 6B  is a flow diagram of modifying node list of a P2P file according to an embodiment of the invention. 
           [0024]      FIG. 7  is a flow diagram of monitoring P2P seed file according to an embodiment of the invention. 
           [0025]      FIG. 8  is a flow diagram of canceling modification to the node list according to an embodiment of the invention. 
           [0026]      FIG. 9  is a flow diagram of directing P2P file transmission according to an embodiment of the invention. 
       
    
    
     DESCRIPTION OF EMBODIMENTS 
       [0027]    In the following discussion, a large amount of specific details are provided to facilitate thoroughly understand the invention. However, for those skilled in the art, it is evident that it will not affect the understanding of the invention even without these specific details. It should be recognized that, the usage of any of following specific terms is merely for ease of description, thus the invention should not be limited to any specific application that is identified and/or implied by such terms. 
         [0028]    Unless otherwise stated, the function described in the invention may be implemented by software or hardware or combination thereof. However, in an embodiment, unless otherwise stated, these functions are performed by processors (such as computers or electronic data processors) based on encoded integrated circuits (such as encoded by computer programs). Generally, the method performed for implementing embodiments of the invention may be a part of operation system or specific application programs, program, module, object or instruction sequence. The software of the invention generally includes various instructions that will be presented as machine readable format by local computers, thus are executable instructions. Further, program includes variables and data structures that are resident in local with respect to the program or that are found in memory. Moreover, various programs described below can be identified by application methods for implementing them in specific embodiment of the invention. Such signal bearing media, when carrying thereon computer readable instructions pointing to the function of the invention, represents embodiments of the invention. 
         [0029]      FIG. 2A  is a schematic view of limiting P2P file transmission according to an embodiment of the invention. Cell  201  includes nodes A, B, E, cell  203  includes C, D. Nodes A, B, E are in contact with outside through an edge router  202 . Nodes C, D are in contact with outside through an edge router  204 . If node A requests to acquire a seed file a.torrent on seed server  108 , when the request passes through the edge router  202 , the edge router  202  detects via a request sent by node A (such as HTTP request, FTP request and the like) that the request is a request to acquire P2P seed file, the edge router sends the request to a server processing means (tracker processor)  25 . Server processing means  205  forwards the request to seed server  208 , and acquires corresponding a.torrent file from seed server  208 .  FIG. 4A  is a schematic view of typical P2P seed file. 
         [0030]    Next, the server processing means  205  parses a.torrent file, detects tracker server information therein, and when it finds that tracker server in the seed file is a non-controllable tracker server, i.e., original tracker server  209 , it modifies a.torrent file and replaces the original tracker server  209  therein with the controllable tracker server  206 . The controllable tracker server  206  is used to remove dependence of node A on original tracker server  209 , such that node A does not need to communicate with original tracker server  209  during subsequent downloading of P2P seed file, but only with the controllable tracker server  206 . 
         [0031]    The IP address of the controllable tracker server may be stored in the server processing means  205 , or may be stored in a predetermined rule library  207 . When IP address of the controllable tracker server is stored in the predetermined rule library  207 , the server processing means  205  needs to communicate with the predetermined rule library  207  to acquire the IP address of the controllable tracker server. 
         [0032]      FIG. 4B  is a schematic view of a P2P seed file modified according to an embodiment of the invention. Table 3 below lists detailed explanation of modified a.torrent file item by item. 
         [0000]    
       
         
               
               
             
           
               
                 TABLE 3 
               
               
                   
               
               
                 content in modified a.torrent file 
                 meaning 
               
               
                   
               
             
             
               
                 D 
                 Structure of seed file is 
               
               
                   
                 “dictionary” type. 
               
               
                 8:announce47:http://managedtracker. 
                 Tracker server has been replaced 
               
               
                 example.com:8066/announce 
                 from original tracker server to 
               
               
                   
                 controllable tracker server. 
               
               
                   
                 Backup original tracker server 
               
               
                   
                 information is deleted. Server 
               
               
                   
                 processing means 205 may also 
               
               
                   
                 set backup controllable tracker 
               
               
                   
                 server (not shown in figure). 
               
               
                 10:created by13:Creator1/0.70 
                 Creator software. Although in an 
               
               
                   
                 embodiment of the invention, 
               
               
                   
                 creator software is not modified, 
               
               
                   
                 server processing means 205 may 
               
               
                   
                 modify original creator software. 
               
               
                 13:creation datei1226980360e 
                 Creation date. Although in an 
               
               
                   
                 embodiment of the invention, 
               
               
                   
                 creation date is not modified, 
               
               
                   
                 server processing means 205 may 
               
               
                   
                 modify original creation date 
               
               
                   
                 information. 
               
               
                 8:encoding3:GBK 
                 Encoding format of file 
               
               
                   
                 information. Although in an 
               
               
                   
                 embodiment of the invention, 
               
               
                   
                 encoding format of file 
               
               
                   
                 information is not modified, 
               
               
                   
                 server processing means 205 may 
               
               
                   
                 modify original encoding format, 
               
               
                   
                 and needs to re-encode subsequent 
               
               
                   
                 file information after the 
               
               
                   
                 encoding format is modified. 
               
               
                 4:infod5:files1d6:lengthi183e4:path 
                 Start portion of file information 
               
               
                 110:3FFile.urle10:path.utf-8112:3EF 
               
               
                 ile.urleed6:lengthi2707e4:path146:3 
               
               
                 E... 
               
               
                 &lt;Other content&gt; 
                 Content portion of file information 
               
               
                   
               
             
          
         
       
     
         [0033]    It should be particularly noted that, although the invention is described with one controllable tracker server  206 , it can use a plurality of controllable tracker servers in practice. When a plurality of controllable tracker servers is used, one main controllable tracker server and several backup controllable tracker servers may be set in a.torrent file. 
         [0034]    The modified seed file will be returned to node A, and node A will further communicate with controllable tracker server  206  according to index of the seed file to acquire node list. 
         [0035]    The controllable tracker server  206  will acquire node list corresponding to the seed file from the original tracker server  209 , and judge whether the node list needs to be modified according to predetermined rule acquired from the predetermined rule library  207 . 
         [0036]    The predetermined rule may be that a node that is not in a same region as the user is filtered out from the node list. According to an embodiment of the invention, node A is not in a same cell as nodes C, D, thus the controllable tracker server  206  will delete nodes C, D from node list. The deleted node list is shown as table 4 below. 
         [0000]    
       
         
               
               
               
               
             
           
               
                   
                 TABLE 4 
               
               
                   
                   
               
               
                   
                 Node 
                 IP address 
                 File block identifier 
               
               
                   
                   
               
             
             
               
                   
                 B 
                 10.1.1.1 
                 1, 2, 3, 4 
               
               
                   
                   
               
             
          
         
       
     
         [0037]    A method for judging whether node A is in a same region as other node via subnet mask is described in detail below. 
         [0038]    Assuming that subnet mask is 24 bits, i.e., subnet mask is 255.255.255.0, there are 255 IP addresses available for such subnet mask, thus it can be easily judged whether two IP addresses are in a same region by AND operation between subnet mask and IP address. For example, IP address 10.1.1.1 and IP address 10.1.1.2 are nodes in a same region. For subnet mask having 16 bits, i.e., subnet mask is 255.255.0.0, IP address 10.1.1.1 and IP address 10.1.2.13 belong to a same region. As can be appreciated by those skilled in the art, although the invention makes description by taking subnet mask having 16 bits and 24 bits as examples, subnet mask having other number of bits may also be used, such as 22 bits, 25 bits and the like, to judge whether two IP addresses are in a same region. 
         [0039]    According to an embodiment of the invention, only node within a regional network is allowed to transmit P2P file, as can be appreciated by those skilled in the art, the range of regional network can be expanded to multi-level access network, i.e., all nodes within an access network with same level are allowed to transmit P2P file.  FIG. 5  is a schematic view of dividing regions according an embodiment of the invention. In the embodiment of  FIG. 5 , node A may communicate with nodes C and D, because nodes C and D belong to a same access network  505  as node A. 
         [0040]    According to another embodiment of the invention, in case that current network transmission load exceeds a predetermined threshold, for example, it is above a percent value, node that is not in a same region as the user is filtered out from the node list. 
         [0041]    According to still another embodiment of the invention, during network transmission peak time, for example, from 9 a.m. to 5 p.m., node that is not in a same region as the user is filtered out from the node list. 
         [0042]    According to still another embodiment of the invention, if user&#39;s subscription state meets a predetermined condition, for example, for users who pay monthly, node that is not in a same region as the user is filtered out from the node list, or for non-VIP users, node that is not in a same region as the user is filtered out from the node list. 
         [0043]    According to still another embodiment of the invention, at least one specific node is filtered out from the node list, for example, a node that is known to specially propagate illegal works is filtered out. 
         [0044]    As can be appreciated by those skilled in the art, other predetermined rule can be established according to the demand of network operator to achieve limitation on P2P communication node. 
         [0045]    The controllable tracker server  206  can further determine whether the deleted node contains file block of the P2P file that is not contained in un-deleted node. For example, assuming node B does not store all of the file blocks of the P2P file, and node B only stores file blocks  1 ,  2 ,  3  but not file block  4 , then node A can not acquire file block  4  from node B according to the above modified node list (table 4), and then the controllable tracker server  206  may cancel the modification to the node list. The un-modified node list can still be returned to user. 
         [0046]    In case that node list may be modified, the modified node list is sent to an edge router  302 , and in turn is returned to node A. After node A acquires the modified node list, it communicates with node in node list, e.g. node B, to acquire the desired P2P file block. This not only can increase downloading efficiency of node A, but also can reduce communication load of the entire network. 
         [0047]    Since the modified seed file can be cached at the predetermined rule library  207  or server processing means  205 , what needs to be cached are modified seed file and seed file before modification. Caching of seed file before modification can facilitate to judge whether subsequent user requests the same seed file. The seed file before modification can be stored in form of seed file, or the verification code thereof can be stored. Caching of the verification code of seed file can further save storage space, but it needs to consume more computation resource to calculate the verification code of requested seed file. When node E also issues a request for the same seed file a.torrent through edge router  202 , the server processing means  205  may send the modified seed file to node E, such that node E communicates with the controllable tracker server  206 . The controllable tracker server  206  modifies node list according to predetermined rule, and returns it to node E. 
         [0048]      FIG. 2B  is a structural block diagram of the controllable tracker server according to an embodiment of the invention. The controllable tracker server includes: an acquiring means for acquiring a node list in an original tracker server corresponding to a P2P file; a judging means for judging whether the node list needs to be modified according to a predetermined rule; a node list modifying means for modifying the node list in case that the node list needs to be modified; and a returning means for returning the modified node list to a user. 
         [0049]      FIG. 2C  is a structural block diagram of the server processing means according to an embodiment of the invention. The server processing means includes: a receiving means for receiving a P2P seed file requested by a user; a parsing means for parsing the P2P seed file to acquire tracker server information therein; and a seed file modifying means for modifying the P2P seed file to replace an original tracker server therein with the controllable tracker server. 
         [0050]      FIG. 3  is a schematic view of directing P2P file transmission according to an embodiment of the invention. The functions of elements in  FIG. 3  are substantially the same as that of the elements that have same names in  FIG. 2A . Server processing means  305  is used to modify P2P seed file, such that node A can communicate with the controllable tracker server  306 , and the controllable tracker server  306  modifies the node list according to the rule in a predetermined rule library. According to the embodiment in  FIG. 3 , when the controllable tracker server  306  determines that the modified node list does not have sufficient nodes for node A to acquire the P2P file, for example, only file blocks  1 ,  2 ,  3  are stored in node B, the controllable tracker server  306  initiates node D′ in region  301  as a mapping node of node D in region  303 . P2P file blocks, i.e., blocks  3  and  4 , that are the same as node D are stored in node D′. The controllable tracker server  306  further adds node D′ into the node list to form a node list as shown in the following table 5, and the node list is returned to user. 
         [0000]    
       
         
               
               
               
               
             
           
               
                   
                 TABLE 5 
               
               
                   
                   
               
               
                   
                 Node 
                 IP address 
                 File block identifier 
               
               
                   
                   
               
             
             
               
                   
                 B 
                 10.1.1.1 
                 1, 2, 3 
               
               
                   
                 D′ 
                 20.1.1.3 
                 3, 4 
               
               
                   
                   
               
             
          
         
       
     
         [0051]    Node A may communicate with node B and node D′ in its own region according to the information in table 5. 
         [0052]    As can be appreciated by those skilled in the art, the node D′ may also optionally store a portion of file blocks in node D, for example, it only stores file block  4  but not file block  3 . This can further save storage space in mapping node, and will not prevent node A from acquiring the P2P file. 
         [0053]    In the above embodiment, node D′ is initiated and P2P file segments in node D are copied to node D′, this may consume some network resource, however, once node D′ is initiated in region  301 , when other node in region  301  hereafter requests the same P2P file, corresponding resource can be quickly acquired from local node. In order to enhance storage efficiency, the P2P file can be stored in node D′ for a predetermined period of time, for example, one week, or one month etc. 
         [0054]    As can be appreciated by those skilled in the art, node D′ can further meet additional rules besides the predetermined rules. For example, not only node D′ is in the same region network as node A, but also node D′ is only initiated during a period that is not network transmission peak time. 
         [0055]    According to an embodiment of the invention, although the controllable tracker server modifies node list, the controllable tracker server may still communicate with the original tracker server periodically to acquire updated node list corresponding to the P2P seed file, and modify the updated node list again according predetermined rule. This is because, if the controllable tracker server is notified of addition and deletion of a node that communicates with original tracker server, an updated node list can be maintained in the controllable tracker server, the controllable tracker server may modify the updated node list, and send the modified updated node list to user node A. 
         [0056]      FIG. 6A  is a flow diagram of managing P2P file transmission according to an embodiment of the invention. P2P seed file requested by a user is acquired in step  601 . The P2P seed file is parsed to acquire original tracker server information therein in step  602 , and the parsed P2P seed file is shown in above table 1. The P2P seed file is modified to replace the original tracker server therein with the controllable tracker server in step  603 , and the modified P2P seed file is shown in  FIG. 4B . The P2P seed file is modified to replace the original tracker server therein with the controllable tracker server in step  603 . 
         [0057]      FIG. 6B  is a flow diagram of modifying node list of a P2P file according to an embodiment of the invention. Node list in original tracker server corresponding to a P2P file is acquired in step  611 . It is judged whether the node list needs to be modified according to a predetermined rule in step  612 . According to an embodiment of the invention, the predetermined rule may be that node that is not in a same region as the user is filtered out from the node list. Thus, if all of the nodes in the node list are in a same region as the user, the node list needs not to be modified (not shown in figure). If there is node in the node list that is not in a same region as the user, then the node list is modified in step  613 . 
         [0058]    The modified node list is shown in above table 4. The modified node list is returned to user in step  614 . 
         [0059]    As can be appreciated by those skilled in the art, the predetermined rule is not limit to the above mentioned embodiments, instead, it can have various variations, including: node that is not in a same region as the user is filtered out from the node list in case that current network transmission load exceeds a predetermined threshold, node that is not in a same region as the user is filtered out from the node list during network transmission peak time, node that is not in a same region as the user is filtered out from the node list if user&#39;s subscription state meets a predetermined condition, or at least one specific node is filtered out from the node list. 
         [0060]      FIG. 6A  and  FIG. 6B  specify some additional steps in the invention through nodes I, II, III that are connected by dashed lines. They will be explained below. 
         [0061]      FIG. 7  is a flow diagram of monitoring P2P seed file according to an embodiment of the invention. A request, e.g. a HTTP request, sent by user is received in step  701 . The characteristic values of seed file are carried in HTTP request message. By monitoring these characteristic values, it is judged whether the request issued by user is a request for P2P seed file in step  702 . If the request is a request for P2P seed file, the process returns to node I and proceeds to steps in  FIG. 6A  in step  703 . If the request is not a request for P2P seed file, then process exits in step  704  and does not return to node I. 
         [0062]      FIG. 8  and  FIG. 9  describe two embodiments of further processing the modified node list.  FIG. 8  is a flow diagram of canceling the modification to the node list according to an embodiment of the invention. In  FIG. 8 , it is first determined whether the node deleted from the node list contains file block of the P2P file that is not contained in un-deleted node in step  801 . If the determination result is no, i.e., all the file blocks contained in the deleted node can be found in un-deleted node, then process returns to node II and proceeds to corresponding steps in  FIG. 6B  in step  802 . If the determination result is yes, i.e., at least one file block contained in the deleted node can not be found in un-deleted node, then modification to the node list is canceled in step  803 , and the un-modified node list is returned to user in step  804 , and the process exits in step  805  and does not return to node II. 
         [0063]      FIG. 9  is a flow diagram of directing P2P file transmission according to an embodiment of the invention. It is determined whether the node deleted from the node list contains P2P file block that is not contained in un-deleted node in step  901 . If the determination result is yes, i.e., at least one file block contained in the deleted node can not be found in the un-deleted node, then sufficient mapping nodes that comply with predetermined rule are initiated in step  902 , the mapping nodes store therein P2P file blocks that are the same as that of nodes deleted from the node list. The mapping nodes are added into the node list in step  903 , and the node list into which the mapping nodes are added is returned to user in step  904 . Then, the process exits node III in step  906  and does not proceed to corresponding steps in  FIG. 6B . 
         [0064]    If the determination result is no, i.e., all the file blocks contained in the deleted node can be found in the un-deleted node, then process returns to node III and proceeds to corresponding steps in  FIG. 6B  in step  905 . 
         [0065]    As can be appreciated by those skilled in the art, each of the above operation process can be implemented by executable program that is stored in a computer program product. The program product defines functions of various embodiments, and carries various signals including (but not limit to): 1) information permanently stored on non-erasable storage media; 2) information stored on erasable storage media; or 3) information transferred to a computer via communication media including wireless communication (such as via computer network or telephone network), specifically, including information downloaded from Internet and other network. 
         [0066]    Various embodiments of the invention can provide many advantages, including those that are illustrated in summary of the invention and that can be derived from technical solution itself. However, whether one embodiment can gain all advantages, and whether such advantages are considered as substantial improvement, they are not limitation to the invention. Meanwhile, various implementations mentioned above are merely for illustration purpose, those skilled in the art can make various modifications and alternations to the above implementations without departing from the substance of the invention. The scope of the invention is entirely defined by the appended claims. 
       REFERENCE SIGNS LIST 
       [0000]    
       
         
           
               102  edge router 
               104  edge router 
               105  seed router 
               106  original tracker server 
               208  seed server 
               209  original tracker server 
               206  controllable tracker server 
               207  predetermined rule library 
               205  server processing means 
               202  edge router 
               204  edge router 
               502  edge router 
               504  edge router 
               506  edge router