/[gzz]/gzz/Documentation/misc/hemppah-progradu/masterthesis.tex
ViewVC logotype

Diff of /gzz/Documentation/misc/hemppah-progradu/masterthesis.tex

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.45 by hemppah, Mon Feb 17 14:41:05 2003 UTC revision 1.46 by hemppah, Tue Feb 18 14:14:53 2003 UTC
# Line 359  practical and high performance approach, Line 359  practical and high performance approach,
359    
360  \scriptsize  \scriptsize
361  \begin{longtable}{|l|l|l|l|}  \begin{longtable}{|l|l|l|l|}
362  \caption[Open problems in P2P]{Open problems in P2P} \label{table_problems_p2p} \\  \caption[Security problems in P2P]{Security problems in P2P} \label{table_security_problems_p2p} \\
363    
364    
365    
# Line 403  practical and high performance approach, Line 403  practical and high performance approach,
403  \parbox{110pt}{Identify all nodes simultaneously across the system, collect pool of nodes which are validated, distributed node ID creation} &  \parbox{110pt}{Identify all nodes simultaneously across the system, collect pool of nodes which are validated, distributed node ID creation} &
404  \parbox{110pt}{Not practically realizable, research focused on persistence, not on identity distinction}  \parbox{110pt}{Not practically realizable, research focused on persistence, not on identity distinction}
405  \\ \hline  \\ \hline
406            
407    
408  \parbox{90pt}{Spam attack} &  \parbox{90pt}{Spam attack} &
409  \parbox{110pt}{Hostile entity creates false versions of data} &  \parbox{110pt}{Hostile entity creates false versions of data} &
# Line 417  practical and high performance approach, Line 417  practical and high performance approach,
417  \parbox{110pt}{Do not trust to single entity, get information from multiple entities, trust on majority's opinion} &  \parbox{110pt}{Do not trust to single entity, get information from multiple entities, trust on majority's opinion} &
418  \parbox{110pt}{Easy to implement, creates more network traffic}  \parbox{110pt}{Easy to implement, creates more network traffic}
419  \\ \hline  \\ \hline
                   
   
 \parbox{90pt}{Sudden network partition} &  
 \parbox{110pt}{Sub network is isolated from other network because of network disconnection} &  
 \parbox{110pt}{Self-tuning, environment observatorion, localized network connection for minimun latency (backup connections)} &  
 \parbox{110pt}{Creates more overhead/space requirements per node}  
 \\ \hline  
                   
   
 \parbox{90pt}{Searching} &  
 \parbox{110pt}{Efficient searching requires exploiting of previous queries} &  
 \parbox{110pt}{View trees, bloom filters and its variations} &  
 \parbox{110pt}{Effective, but not flexible}  
 \\ \hline  
   
420    
 \parbox{90pt}{Efficient data discovery} &  
 \parbox{110pt}{Find resources efficiently, if resource exists (broadcasting)} &  
 \parbox{110pt}{Super nodes, node clusters, caching techiques} &  
 \parbox{110pt}{More efficient, less network traffic, not comparable to DHT's efficiency}  
 \\ \hline  
           
421    
422  \parbox{90pt}{Entity identification} &  \parbox{90pt}{Entity identification} &
423  \parbox{110pt}{Identify participating entities reliably and efficiently } &  \parbox{110pt}{Identify participating entities reliably and efficiently } &
424  \parbox{110pt}{Digital signatures, key infrastructure} &  \parbox{110pt}{Digital signatures, key infrastructure} &
425  \parbox{110pt}{Not practically realizable}  \parbox{110pt}{Not practically realizable}
426  \\ \hline  \\ \hline
                   
427    
428  \parbox{90pt}{Fail Stop} &  
429  \parbox{110pt}{A faulty node stops working} &  \parbox{90pt}{Data integrity/authenticity} &
430  \parbox{110pt}{Failure detectors, informing protocols} &  \parbox{110pt}{Integrity/originality of data is unknown} &
431  \parbox{110pt}{Creates more network traffics, node's information can be outdated, failure detectors not reliable}  \parbox{110pt}{Cryptographic content hashes, key architectures} &
432    \parbox{110pt}{For data integrity, there are working solutions, but for data authenticity, some of the solutions are partial, which may be practically realizable}
433  \\ \hline  \\ \hline
434    
435    
436  \parbox{90pt}{Byzantine faults} &  \parbox{90pt}{Anonymity} &
437  \parbox{110pt}{Faulty nodes may behave arbitrarily} &  \parbox{110pt}{Anonymity cannot be provided in all cases} &
438  \parbox{110pt}{Byzantine replication protocols -> get information from multiple entities, trust majority's opinion} &  \parbox{110pt}{Remailers, pre-routing} &
439  \parbox{110pt}{Much research has been done on this field, practical solutions, decreases system's, performance slighly}  \parbox{110pt}{Total anonymity cannot be provided yet}
440  \\ \hline  \\ \hline
441    
442    
443  \parbox{90pt}{Richness of queries} &  \parbox{90pt}{Malicious nodes} &
444  \parbox{110pt}{Query languages should be more powerful} &  \parbox{110pt}{How to identify malicious nodes in the system} &
445  \parbox{110pt}{SQL-like queries} &  \parbox{110pt}{Create invariants for node behaviour, verify invariants, self-certifying data} &
446  \parbox{110pt}{Hard to implement, increases system complexity, not much research has been done}  \parbox{110pt}{Partial solutions, self-certifying data most realiable}
447  \\ \hline  \\ \hline
448    
449    
450  \parbox{90pt}{Robustness} &  \parbox{90pt}{Access Control} &
451  \parbox{110pt}{How well system performs under hostile attacks/in the case of severe failure ?} &  \parbox{110pt}{Can we define access control levels in peer-to-peer network ?} &
452  \parbox{110pt}{Self-tuning, backup links, use diverse routing paths, power-law networks/properties} &  \parbox{110pt}{Schema-based rules} &
453  \parbox{110pt}{Working solutions}  \parbox{110pt}{Some initial experiences, need more research}
454  \\ \hline  \\ \hline
455    
456    
457  \parbox{90pt}{Quality of Service} &  \parbox{90pt}{Inconsistent behaviour} &
458  \parbox{110pt}{The system can only provide (at most) best effort services)} &  \parbox{110pt}{Hostile node could act correctly with its neighbors, but incorrectly with others} &
459  \parbox{110pt}{Use network proximity for better network performance (bandwidth, latency, jitter, packet loss)} &  \parbox{110pt}{Public keys, digital signatures} &
460  \parbox{110pt}{Increases system complexity, some initial experiences, need more research}  \parbox{110pt}{Not practical approach/working proposal created yet}
461  \\ \hline  \\ \hline
462    
463    
464  \parbox{90pt}{Data availability/persistency} &  \parbox{90pt}{Hostile groups} &
465  \parbox{110pt}{Data might be temporarily unavailable, or lost permanently} &  \parbox{110pt}{Joining node may join parallel network, formed a group of hostile nodes, hostile node(s) controls the construction of the network} &
466  \parbox{110pt}{Data caching, data replication} &  \parbox{110pt}{Use trusted nodes, based on history information, Cryptography, key infrastructure} &
467  \parbox{110pt}{Working solutions, but creates more traffic and overhead per node}  \parbox{110pt}{Not 100\% sure if Centreal Authority (CA) is missing, not practical approach/working proposal created yet}
468  \\ \hline  \\ \hline
469    
470    
471  \parbox{90pt}{Data integrity/authenticity} &  \parbox{90pt}{External security threats} &
472  \parbox{110pt}{Integrity/originality of data is unknown} &  \parbox{110pt}{Viruses, trojans, sniffers} &
473  \parbox{110pt}{Cryptographic content hashes, key architectures} &  \parbox{110pt}{Data integrity/authenticity, distributed antivirus software} &
474  \parbox{110pt}{For data integrity, there are working solutions, but for data authenticity, some of the solutions are partial, which may be practically realizable}  \parbox{110pt}{Not much research has been done on this}
475  \\ \hline  \\ \hline
476    
477    
478  \parbox{90pt}{Anonymity} &  \end{longtable}
479  \parbox{110pt}{Anonymity cannot be provided in all cases} &  
480  \parbox{110pt}{Remailers, pre-routing} &                  
481  \parbox{110pt}{Total anonymity cannot be provided yet}  \begin{longtable}{|l|l|l|l|}
482    \caption[Performance and usability problems in P2P]{Performance/usabaility problems in P2P} \label{table_performanceusability_problems_p2p} \\
483    
484    
485    \hline
486    \multicolumn{1}{|c|}{\textbf{Problem}} &
487    \multicolumn{1}{c|}{\textbf{Problem description}} &
488    \multicolumn{1}{c|}{\textbf{Solutions}} &
489    \multicolumn{1}{c|}{\textbf{Comments/Status}}
490    \\ \hline
491    \endfirsthead
492    
493    \multicolumn{4}{c}%
494    {{\tablename\ \thetable{} -- continued from previous page}} \\
495    \hline \multicolumn{1}{|c|}{\textbf{Problem}} &
496    \multicolumn{1}{c|}{\textbf{Problem description}} &
497    \multicolumn{1}{c|}{\textbf{Solutions}} &
498    \multicolumn{1}{c|}{\textbf{Comments/Status}}
499    \\ \hline
500    \endhead
501    
502    \endfoot
503                    
504    \parbox{90pt}{Searching} &
505    \parbox{110pt}{Efficient searching requires exploiting of previous queries} &
506    \parbox{110pt}{View trees, bloom filters and its variations} &
507    \parbox{110pt}{Effective, but not flexible}
508  \\ \hline  \\ \hline
509    
510    
511  \parbox{90pt}{Malicious nodes} &  \parbox{90pt}{Efficient data discovery} &
512  \parbox{110pt}{How to identify malicious nodes in the system} &  \parbox{110pt}{Find resources efficiently, if resource exists (broadcasting)} &
513  \parbox{110pt}{Create invariants for node behaviour, verify invariants, self-certifying data} &  \parbox{110pt}{Super nodes, node clusters, caching techiques} &
514  \parbox{110pt}{Partial solutions, self-certifying data most realiable}  \parbox{110pt}{More efficient, less network traffic, not comparable to DHT's efficiency}
515  \\ \hline  \\ \hline
516    
517    
518    \parbox{90pt}{Richness of queries} &
519    \parbox{110pt}{Query languages should be more powerful} &
520    \parbox{110pt}{SQL-like queries} &
521    \parbox{110pt}{Hard to implement, increases system complexity, not much research has been done}
522    \\ \hline
523    
524  \parbox{90pt}{Mutual distrust} &  
525  \parbox{110pt}{Nobody trusts anybody} &  \parbox{90pt}{Robustness} &
526  \parbox{110pt}{Reputation methods, key infrastructures} &  \parbox{110pt}{How well system performs under hostile attacks/in the case of severe failure ?} &
527  \parbox{110pt}{Resource demanding, not practical to implement/not working solutions, no real world experience in a wide scale}  \parbox{110pt}{Self-tuning, backup links, use diverse routing paths, power-law networks/properties} &
528    \parbox{110pt}{Working solutions}
529  \\ \hline  \\ \hline
530    
531    
532  \parbox{90pt}{Lack of motivation to cooperate} &  \parbox{90pt}{Quality of Service} &
533  \parbox{110pt}{All participants do not behave like they should be, instead they go for own profit} &  \parbox{110pt}{The system can only provide (at most) best effort services)} &
534  \parbox{110pt}{Different reputation methods} &  \parbox{110pt}{Use network proximity for better network performance (bandwidth, latency, jitter, packet loss)} &
535  \parbox{110pt}{No real world experience in a wide scale}  \parbox{110pt}{Increases system complexity, some initial experiences, need more research}
536  \\ \hline  \\ \hline
537    
538    
539  \parbox{90pt}{Heterogeneity} &  \parbox{90pt}{Data availability/persistency} &
540  \parbox{110pt}{There are different kind of nodes in the system, in light of bandwidth and computing power} &  \parbox{110pt}{Data might be temporarily unavailable, or lost permanently} &
541  \parbox{110pt}{Super peers (broadcasting), cluster (broadcasting) additional layer upon DHTs, structural simplicity (DHTs)} &  \parbox{110pt}{Data caching, data replication} &
542  \parbox{110pt}{Working solutions, increases system complexity (additional layer)}  \parbox{110pt}{Working solutions, but creates more traffic and overhead per node}
543  \\ \hline  \\ \hline
544    
545    
# Line 560  practical and high performance approach, Line 571  practical and high performance approach,
571  \\ \hline  \\ \hline
572    
573    
574  \parbox{90pt}{Programming guidelines} &  \parbox{90pt}{System in flux} &
575  \parbox{110pt}{Set of programming guidelines/frameworks is needed for better interoperability between different systems} &  \parbox{110pt}{Nodes join and leave system constantly: load balancing, efficiency ?} &
576  \parbox{110pt}{Common frameworks and APIs} &  \parbox{110pt}{Half-life phenomenon (for analysis), simple overlay maintenance and construction protocol} &
577  \parbox{110pt}{Common framework/API is still missing, a lot of proposals have been made}  \parbox{110pt}{Initial theoretical analysis have been created, but not comprehensive model for analysing different system states and its variations (e.g. complex usage patterns)}
578  \\ \hline  \\ \hline
579    
580    
581  \parbox{90pt}{Access Control} &  \end{longtable}
582  \parbox{110pt}{Can we define access control levels in peer-to-peer network ?} &  
583  \parbox{110pt}{Schema-based rules} &  
584  \parbox{110pt}{Some initial experiences, need more research}  \begin{longtable}{|l|l|l|l|}
585    \caption[Miscellaneous problems in P2P]{Miscellaneous problems in P2P} \label{table_Miscellaneous_problems_p2p} \\
586    
587    
588    \hline
589    \multicolumn{1}{|c|}{\textbf{Problem}} &
590    \multicolumn{1}{c|}{\textbf{Problem description}} &
591    \multicolumn{1}{c|}{\textbf{Solutions}} &
592    \multicolumn{1}{c|}{\textbf{Comments/Status}}
593    \\ \hline
594    \endfirsthead
595    
596    \multicolumn{4}{c}%
597    {{\tablename\ \thetable{} -- continued from previous page}} \\
598    \hline \multicolumn{1}{|c|}{\textbf{Problem}} &
599    \multicolumn{1}{c|}{\textbf{Problem description}} &
600    \multicolumn{1}{c|}{\textbf{Solutions}} &
601    \multicolumn{1}{c|}{\textbf{Comments/Status}}
602    \\ \hline
603    \endhead
604    
605    \endfoot
606    
607    
608    \parbox{90pt}{Sudden network partition} &
609    \parbox{110pt}{Sub network is isolated from other network because of network disconnection} &
610    \parbox{110pt}{Self-tuning, environment observatorion, localized network connection for minimun latency (backup connections)} &
611    \parbox{110pt}{Creates more overhead/space requirements per node}
612    \\ \hline              
613    
614    \parbox{90pt}{Fail Stop} &
615    \parbox{110pt}{A faulty node stops working} &
616    \parbox{110pt}{Failure detectors, informing protocols} &
617    \parbox{110pt}{Creates more network traffics, node's information can be outdated, failure detectors not reliable}
618  \\ \hline  \\ \hline
619    
620    
621  \parbox{90pt}{System in flux} &  \parbox{90pt}{Byzantine faults} &
622  \parbox{110pt}{Nodes join and leave system constantly: load balancing, efficiency ?} &  \parbox{110pt}{Faulty nodes may behave arbitrarily} &
623  \parbox{110pt}{Half-life phenomenon (for analysis), simple overlay maintenance and construction protocol} &  \parbox{110pt}{Byzantine replication protocols -> get information from multiple entities, trust majority's opinion} &
624  \parbox{110pt}{Initial theoretical analysis have been created, but not comprehensive model for analysing different system states and its variations (e.g. complex usage patterns)}  \parbox{110pt}{Much research has been done on this field, practical solutions, decreases system's, performance slighly}
625  \\ \hline  \\ \hline
626    
627    
628  \parbox{90pt}{Inconsistent behaviour} &  \parbox{90pt}{Mutual distrust} &
629  \parbox{110pt}{Hostile node could act correctly with its neighbors, but incorrectly with others} &  \parbox{110pt}{Nobody trusts anybody} &
630  \parbox{110pt}{Public keys, digital signatures} &  \parbox{110pt}{Reputation methods, key infrastructures} &
631  \parbox{110pt}{Not practical approach/working proposal created yet}  \parbox{110pt}{Resource demanding, not practical to implement/not working solutions, no real world experience in a wide scale}
632  \\ \hline  \\ \hline
633    
634    
635  \parbox{90pt}{Hostile groups} &  \parbox{90pt}{Lack of motivation to cooperate} &
636  \parbox{110pt}{Joining node may join parallel network, formed a group of hostile nodes, hostile node(s) controls the construction of the network} &  \parbox{110pt}{All participants do not behave like they should be, instead they go for own profit} &
637  \parbox{110pt}{Use trusted nodes, based on history information, Cryptography, key infrastructure} &  \parbox{110pt}{Different reputation methods} &
638  \parbox{110pt}{Not 100\% sure if Centreal Authority (CA) is missing, not practical approach/working proposal created yet}  \parbox{110pt}{No real world experience in a wide scale}
639  \\ \hline  \\ \hline
640    
641    
642  \parbox{90pt}{External threats} &  \parbox{90pt}{Heterogeneity} &
643  \parbox{110pt}{Viruses, trojans, sniffers} &  \parbox{110pt}{There are different kind of nodes in the system, in light of bandwidth and computing power} &
644  \parbox{110pt}{Data integrity/authenticity, distributed antivirus software} &  \parbox{110pt}{Super peers (broadcasting), cluster (broadcasting) additional layer upon DHTs, structural simplicity (DHTs)} &
645  \parbox{110pt}{Not much research has been done on this}  \parbox{110pt}{Working solutions, increases system complexity (additional layer)}
646    \\ \hline
647    
648    
649    \parbox{90pt}{Programming guidelines} &
650    \parbox{110pt}{Set of programming guidelines/frameworks is needed for better interoperability between different systems} &
651    \parbox{110pt}{Common frameworks and APIs} &
652    \parbox{110pt}{Common framework/API is still missing, a lot of proposals have been made}
653  \\ \hline  \\ \hline
654    
655    
# Line 608  practical and high performance approach, Line 659  practical and high performance approach,
659  \parbox{110pt}{Only small subset of peer-to-peer networks has been able to analyse, because of ad hoc properties of network, more poweful solutions needed}  \parbox{110pt}{Only small subset of peer-to-peer networks has been able to analyse, because of ad hoc properties of network, more poweful solutions needed}
660  \\ \hline  \\ \hline
661    
662    
663  \parbox{90pt}{How to locate existing network} &  \parbox{90pt}{How to locate existing network} &
664  \parbox{110pt}{Ability to simulate whole p2p network's usage patterns, network traffics, flux state etc} &  \parbox{110pt}{Ability to simulate whole p2p network's usage patterns, network traffics, flux state etc} &
665  \parbox{110pt}{gnutellahosts.com} &  \parbox{110pt}{gnutellahosts.com} &
666  \parbox{110pt}{Only small subset of peer-to-peer networks has been able to analyse, because of ad hoc properties of network, more poweful solutions needed}  \parbox{110pt}{Only small subset of peer-to-peer networks has been able to analyse, because of ad hoc properties of network, more poweful solutions needed}
667  \\ \hline  \\ \hline
668    
669    
670  \parbox{90pt}{Overlay management} &  \parbox{90pt}{Overlay management} &
671  \parbox{110pt}{Ability to simulate whole p2p network's usage patterns, network traffics, flux state etc} &  \parbox{110pt}{Ability to simulate whole p2p network's usage patterns, network traffics, flux state etc} &
672  \parbox{110pt}{gnutellahosts.com} &  \parbox{110pt}{gnutellahosts.com} &
# Line 621  practical and high performance approach, Line 674  practical and high performance approach,
674  \\ \hline  \\ \hline
675    
676    
   
   
677  \end{longtable}  \end{longtable}
678    
679    

Legend:
Removed from v.1.45  
changed lines
  Added in v.1.46

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26