/[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.29 by hemppah, Wed Feb 5 12:32:50 2003 UTC revision 1.30 by hemppah, Tue Feb 11 12:29:59 2003 UTC
# Line 10  Line 10 
10  \usepackage{amsfonts}    %  AmS-LaTeX fontit  \usepackage{amsfonts}    %  AmS-LaTeX fontit
11  \usepackage{graphicx}    %  EPS-tiedostojen ottaminen mukaan, PS-temput,...  \usepackage{graphicx}    %  EPS-tiedostojen ottaminen mukaan, PS-temput,...
12  \usepackage{url}  \usepackage{url}
13    \usepackage{booktabs}
14    \usepackage{longtable}
15    
16  %***********************  %***********************
17  %   Tyyliluokan pakolliset määritykset  %   Tyyliluokan pakolliset määritykset
# Line 351  Furthermore, the majority of these syste Line 353  Furthermore, the majority of these syste
353  there are few projects that analyse systems' different approaches. However, the most important question is that how existing approaches can be combined into one  there are few projects that analyse systems' different approaches. However, the most important question is that how existing approaches can be combined into one
354  practical and high performance approach, currently known as ``Gnutella++''.    practical and high performance approach, currently known as ``Gnutella++''.  
355    
356    \chapter{Open Problems in P2P}
357    \scriptsize
358    
359    %\begin{tabular*}{|llll|}
360    %\begin{longtable}{\columnwidth}{@{\extracolsep{\fill}}|lllr|}
361    \begin{longtable}{|l|l|l|l|}
362    \caption[Open problems in P2P]{Open problems in P2P} \label{table_problems_p2p} \\
363    
364    \multicolumn{4}{c}{} \\ \cmidrule(l){1-4}
365    \textbf{Problem} & \textbf{Problem description} & \textbf{Solutions} & \textbf{Comments/Status}
366    \\ \midrule
367    
368    \parbox{90pt}{Routing} &                        
369    \parbox{110pt}{Incorrect forwarding (hostile), incorrect routing (hostile)} &
370    \parbox{110pt}{Query monitoring, cross check routing tables, verify routing tables, create routing table invariants} &
371    Increases system complexity
372    \\ \hline
373    
374    
375    \parbox{90pt}{DoS attack} &
376    \parbox{110pt}{Distributed, controlled burden againts specific computer(s)} &
377    \parbox{110pt}{Client puzzles, load balancing, traffic measurements, traffic models, replication} &
378    \parbox{110pt}{Only partial solutions, traffic models most effective}
379    \\ \hline
380    
381    
382    \parbox{90pt}{Sybil attack} &
383    \parbox{110pt}{Single hostile entity present multiple entities} &
384    \parbox{110pt}{Identify all nodes simultaneously across the system, collect pool of nodes which are validated, distributed node ID creation} &
385    \parbox{110pt}{Not practically realizable, research focused on persistence, not on identity distinction}
386    \\ \hline
387            
388    
389    \parbox{90pt}{Spam attack} &
390    \parbox{110pt}{Hostile entity creates false versions of data} &
391    \parbox{110pt}{Do not trust to single entity, get information from multiple entities, trust on majority's opinion} &
392    \parbox{110pt}{Easy to implement, creates more network traffic}
393    \\ \hline
394    
395    
396    \parbox{90pt}{Resource spoofing} &
397    \parbox{110pt}{Hostile entity gives wrong information about the data which entity is responsible for/knows about} &
398    \parbox{110pt}{Do not trust to single entity, get information from multiple entities, trust on majority's opinion} &
399    \parbox{110pt}{Easy to implement, creates more network traffic}
400    \\ \hline
401                    
402    
403    \parbox{90pt}{Sudden network partition} &
404    \parbox{110pt}{Sub network is isolated from other network because of network disconnection} &
405    \parbox{110pt}{Self-tuning, environment observatorion, backup connections} &
406    \parbox{110pt}{Creates more overhead/space requirements per node}
407    \\ \hline
408                    
409    
410    \parbox{90pt}{Searching} &
411    \parbox{110pt}{Efficient searching requires exploiting of previous queries} &
412    \parbox{110pt}{View trees, bloom filters its variations} &
413    \parbox{110pt}{Effective, but not flexible}
414    \\ \hline
415    
416    
417    \parbox{90pt}{Efficient data discovery} &
418    \parbox{110pt}{Find resources efficiently, if resource exists (broadcasting)} &
419    \parbox{110pt}{Super nodes, node clusters, caching techiques} &
420    \parbox{110pt}{More effiecient, less network traffic, not comparable to DHT's efficiency}
421    \\ \hline
422            
423    
424    \parbox{90pt}{Entity identification} &
425    \parbox{110pt}{Identify participating entities reliably and efficiently } &
426    \parbox{110pt}{Digital signatures, key infrastrucure} &
427    \parbox{110pt}{Not practically realizable}
428    \\ \hline
429                    
430    
431    \parbox{90pt}{Fail Stop} &
432    \parbox{110pt}{A faulty node stops working} &
433    \parbox{110pt}{Environment observatorion, informing protocols} &
434    \parbox{110pt}{Creates more network traffics, node's information can be outdated}
435    \\ \hline
436    
437    
438    \parbox{90pt}{Byzantine faults} &
439    \parbox{110pt}{Faulty nodes may behave arbitrarily} &
440    \parbox{110pt}{Byzantine replication protocols  } &
441    \parbox{110pt}{Much research has been done on this field, practical solutions, decreases system's, performance slighly}
442    \\ \hline
443    
444    
445    \parbox{90pt}{Richness of queries} &
446    \parbox{110pt}{Query languages should be more powerful} &
447    \parbox{110pt}{SQL-like queries} &
448    \parbox{110pt}{Hard to implement, increases system complexity, not much research has been done}
449    \\ \hline
450    
451    
452    \parbox{90pt}{Robustness} &
453    \parbox{110pt}{How well system performs under hostile attacks/in the case of severe failure ?   } &
454    \parbox{110pt}{Self-tuning, backup links, use diverse routing paths} &
455    \parbox{110pt}{Working solutions}
456    \\ \hline
457    
458    
459    \parbox{90pt}{Quality of Service} &
460    \parbox{110pt}{The system cannot promise the quality of service in all cases} &
461    \parbox{110pt}{Use Network proximity for better network performance (bandwidth, latency, jitter, packet loss)} &
462    \parbox{110pt}{Increases system complexity, no real world experiences}
463    \\ \hline
464    
465    
466    \parbox{90pt}{Data availability} &
467    \parbox{110pt}{Data might be temporary unavailable, or lost permanently} &
468    \parbox{110pt}{Data caching, data replication} &
469    \parbox{110pt}{Working solutions, but creates more traffic and overhead per node}
470    \\ \hline
471    
472    
473    \parbox{90pt}{Data integrity/authenticity} &
474    \parbox{110pt}{Integrity/originality of data is unknown} &
475    \parbox{110pt}{Cryptographic content hashes, key architectures} &
476    \parbox{110pt}{For data integrity, there are working solutions, for data authenticity, there are not working solutions/there are partial solutions, which are not practically realizable}
477    \\ \hline
478    
479    
480    \parbox{90pt}{Anonymity} &
481    \parbox{110pt}{Anonymity cannot be provided in all cases} &
482    \parbox{110pt}{Remailers, pre-routing} &
483    \parbox{110pt}{Total anonymity cannot be provided yet}
484    \\ \hline
485    
486    
487    \parbox{90pt}{Malicious nodes} &
488    \parbox{110pt}{There are malicious nodes in the system how we are able to discover them ?} &
489    \parbox{110pt}{Create invariants for node behaviour, verify invariants, self-certifying data} &
490    \parbox{110pt}{Partial solutions, self-certifying data most realiable}
491    \\ \hline
492    
493    
494    \parbox{90pt}{Mutual distrust} &
495    \parbox{110pt}{Nobody trust anybody} &
496    \parbox{110pt}{Different reputation methods, key infrastructures} &
497    \parbox{110pt}{Resource demanding, not practical to implement/not working solutions, no real world experience in a wide scale}
498    \\ \hline
499    
500    
501    \parbox{90pt}{Lack of motivation to cooperate} &
502    \parbox{110pt}{All participants do not behave like they should be, instead they go for own profit} &
503    \parbox{110pt}{Different reputation methods} &
504    \parbox{110pt}{No real world experience in a wide scale}
505    \\ \hline
506    
507    
508    \parbox{90pt}{Heterogeneity} &
509    \parbox{110pt}{There are different kind of nodes in the system, in light of bandwidth and computing power} &
510    \parbox{110pt}{Super peers (broadcasting), cluster (broadcasting) additional layer upn DHT, structural simplicity (DHTs)} &
511    \parbox{110pt}{Working solutions, increases system complexity (additional layer)}
512    \\ \hline
513    
514    
515    \parbox{90pt}{Network proximity} &
516    \parbox{110pt}{Can we take account the underlying network's properties better when forming overlay network (network-awareness for performance) ?} &
517    \parbox{110pt}{Global Network Positioning, Lighthouse technique, trianqulated heuristics} &
518    \parbox{110pt}{Increases system complexity, no real world experience in a wide scale}
519    \\ \hline
520    
521    
522    \parbox{90pt}{Locality} &
523    \parbox{110pt}{In the case on DHTs, can we take account locality ?} &
524    \parbox{110pt}{Constrained Load Balancing, using network properties for nearest neighbor selection} &
525    \parbox{110pt}{Working solutions}
526    \\ \hline
527    
528    
529    \parbox{90pt}{Hotspots} &
530    \parbox{110pt}{What will happen if some resource is extremely popular and only one node is hosting it ?} &
531    \parbox{110pt}{Caching, multisource downloads, replication, load balancing} &
532    \parbox{110pt}{For query hotspots, caching and multisource downloads efficiently reduces hotspots, for routing hotspots, benefits are smaller}
533    \\ \hline
534    
535    
536    \parbox{90pt}{Scalability} &
537    \parbox{110pt}{Broadcasting doesn't scale when performing searches} &
538    \parbox{110pt}{Super peers, peer clusters, mutual index caching} &
539    \parbox{110pt}{Better scalability, but not comparable to DHTs}
540    \\ \hline
541    
542    
543    \parbox{90pt}{Programming guidelines} &
544    \parbox{110pt}{Set of programming guidelines/frameworks is needed for better interoperability between different systems} &
545    \parbox{110pt}{Common frameworks and APIs} &
546    \parbox{110pt}{Common framework/API is still missing, a lot of proposals has been made}
547    \\ \hline
548    
549    
550    \parbox{90pt}{Access Control} &
551    \parbox{110pt}{Can we define access control levels in peer-to-peer network ?} &
552    \parbox{110pt}{-} &
553    \parbox{110pt}{Working solutions are missing, mainly because they are hard/not practically realizable}
554    \\ \hline
555    
556    
557    \parbox{90pt}{System in flux} &
558    \parbox{110pt}{Nodes join and leave system constantly: load balancing, efficiency ?} &
559    \parbox{110pt}{Half-life phenomenon (for analysis), simple overlay maintenance and construction protocol} &
560    \parbox{110pt}{Initial theoretical anasysis has been created, but not comprehensive model for analysing different system states}
561    \\ \hline
562    
563    
564    \parbox{90pt}{Inconsistent behaviour} &
565    \parbox{110pt}{Hostile node could act correctly with its neighbors, but incorrectly with other} &
566    \parbox{110pt}{Public keys, digital signatures} &
567    \parbox{110pt}{Not practical approach/working proposal created yet}
568    \\ \hline
569    
570    
571    \parbox{90pt}{Hostile groups} &
572    \parbox{110pt}{Joining node may join parallel network, formed a group of hostile nodes} &
573    \parbox{110pt}{Use trusted nodes, based on history information} &
574    \parbox{110pt}{Not 100\% sure if Centreal Authority is missing}
575    \\ \hline
576    
577    
578    \parbox{90pt}{External threats} &
579    \parbox{110pt}{Viruses, troijans, sniffers} &
580    \parbox{110pt}{Data integrity/authenticity, distributed antivirus software} &
581    \parbox{110pt}{Not much research has been done on this}
582    \\ \hline
583    
584    
585    \parbox{90pt}{Illegal overlay construction} &
586    \parbox{110pt}{Hostile node(s) controls the construction of the network} &
587    \parbox{110pt}{Cryptography, key infrastructure} &
588    \parbox{110pt}{Not practical approach/working proposal created yet}
589    \\ \hline
590    
591    
592    \parbox{90pt}{Comprehensive simulations/analysis of peer-to-peer network} &
593    \parbox{110pt}{Ability to simulate whole p2p network's usage patterns, network traffics, flux state etc} &
594    \parbox{110pt}{Use same techniques as simulating/analysing the Internet} &
595    \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}
596    \\ \hline
597    
598                                                            
599    
600    \end{longtable}
601    
602  \chapter{Gzz System}  \chapter{Gzz System}
603    
604  \section{Overview of Gzz}  \section{Overview of Gzz}

Legend:
Removed from v.1.29  
changed lines
  Added in v.1.30

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