Ganther wrote:
YG. Μου κανει εντυπωση ομως το απο το port test μtorrent παιρνω αυτη την απαντηση
Code: Select all
Checking port 63784 on 62.ΧΧ.1Χ8.ΧΧΧ...
Error! Port 63784 does not appear to be open.
Ναι αυτό το παίρνεις γιατί πολύ απλά προσπαθεί να γίνει ένα connection στο 62.ΧΧ.1Χ8.ΧΧΧ:63784 (
δηλαδή στον router σου) αλλά εκεί δεν
ακούει κάποιο service. Το service αυτό κάνει listen στο 10.x.x.x:63784 ή στο 192.168.x.x:63784 (η τέλοσπάντον σε όποια private IP έχεις στο host PC που τρέχεις το μTorrent). Άρα είναι φυσιολογικό, εάν ήθελες να το λύσεις θα έπρεπε να βάλεις ένα port forwarding rule στον router: ότι χτυπάει στο 62.ΧΧ.1Χ8.ΧΧΧ:63784 να πηγαίνει στο 10.x.x.x:63784 (όπου 10.x.x.x η IP του host που τρέχεις τον torrent client)
Ganther wrote:
Τελικα δηλαδη εφοσον το ταλαιπωρο μου router δουλευει με το μtorrent, αυτο σημαινει οτι δεν θα δω διαφορα στην ταχυτητα με ενα αλλο που θα κανει port forwarding ε?? Δηλαδη εδω το προβλημα μας ειναι απλο! Η δουλευει το μtorrent η οχι. Ειμαι σωστος??
...
Αλλα παρολαυτα μπορω και κατεβαζω!
Σχεδόν σωστός, βασικά έχει να κάνει με το πως δουλεύει το torrent protocol. Κοίτα όταν παίρνεις ένα .torrent file και το βάζεις σε έναν torrent client (βλέπε μTorrent) τότε πολύ απλά ο client επικοινωνεί με μια οντότητα που λέγετε
tracker και ενημερώνεται για τις IPs των node(s) απο τους οποίους μπορείς να κατεβάσεις το file(s) που θέλεις. Το σύνολο των συμμετεχόντων είναι αυτό που λέμε
swarm (σμήνος). Λοιπόν, μόλις ανοίξεις λοιπόν το .torrent, το μTorrent πηγαίνει στον κατάλληλο tracker (σε ποιόν θα πάει το λέει μέσα το .torrent file) και:
1)Παίρνει μια λίστα με IPs απο τις οποίες μπορείς να κατεβάσεις κομμάτια ή ολόκληρο το περιεχόμενο που θέλεις.
2)Κάνει register και την δική σου IP στον tracker ώστε ομοίως να μπορεί να βρεθεί απο άλλους και να συνεδεθούν άλλοι σε εσένα ώστε καθώς εσύ κατεβάζεις αυτό που θέλεις να δίνεις και τα ήδη κατεβασμένα κομμάτια σε άλλους.
Μετά απο αυτήν την διαδικασία ο tracker είναι στην ουσία άχρηστος (στην πραγματικότητα χρησιμεύει, αλλά το προτόκολλο θα έπαιζε και χωρίς αυτόν εάν μετά απο αυτό το σημείο χανόταν). Γιατί κάθε node (πχ εσύ, το μTorrent σου) ξεκινάει να συνδέεται σε άλλους nodes (αφού έχει τις IPs τους - της πήρε απο τον tracker) με ξεχωριστές TCP connections στον καθέναν και ξεκινάει να κάνει download parts.
Τώρα τι γίνεται στην πραγματικότητα; Η IP που εσύ κάνεις register είναι η public IP σου, οπότε εάν έρθει κάποιος άλλος πχ εγώ και συνδεθώ στον tracker θα πάρω μετά μια λίστα με IPs κλπ κλπ (βλ βήμα 1 παραπάνω). Μέσα εκεί θα είναι και η δικιά σου και θα δοκιμάσω να συνδεθώ σε εσένα (στην public IP σου - γιατί αυτή είχες κάνει register) και να σου ζητήσω κομμάτια κλπ κλπ (παίζει το torrent protocol εδώ κανονικά κοινώς). Η σύνδεση αυτή όμως δεν θα γίνει ποτέ, αφού στην πραγματικότητα θα προσπαθώ να συνδεθώ στον router

, αφού εσύ βρίσκεσαι πίσω απο το NAT. Οπότε δεν επηρεάζονται τα downloads αλλά τα uploads (δεν μπορούν άλλοι να συνδεθούν σε εσένα).
Τώρα αν και κάποιος θα πεί μα αυτό είναι καλό κατεβάζω χωρίς να δίνω... όλα τα P2P networks χρησιμοποιούν κάποιον μηχανισμό για να κάνουν stimulate το participation. Το torrent χρησιμοποιεί την στρατηγική
tit for tat*. Κοινώς όταν εσύ συνδέεσαι κάπου για να πάρεις δεν θα σου δώσουν εάν και εσύ δεν δίνεις σε άλλους. Στην πραγματικότητα πάντα θα δίνεις κάτι γιατί ακόμη και εάν μπλοκάρεις τα incomming connections, θα δίνεις parts σε αυτούς απο τους οποίους κατεβάζεις. Οπότε τελικά θα φαίνεται ότι κάτι ψιλά έχεις δώσει και εσύ

και γι' αυτό και δεν θα σε πετάνει όλοι έξω απο το swarm.
Τι θα κέρδιζες εάν άνοιγες το port forwarding; Εξαρτάται απο τι κατεβάζεις. Εάν κατεβάζεις κάτι που έχει πολυ μεγάλη ζήτηση τότε αναγκαστικά θα το έχει ένας, δυο και θα το κατεβάζουν 100. Τα νούμερα δεν έχουν σχέση αλλά το σχετικό ratio απο seeders και leechers. Οπότε σε μια τέτοια κατάσταση ότι και να κάνεις δεν έχει πολύ μεγάλο νόημα αφού το contect το έχουν σχετικά λίγοι, δυνητικά δεν θα ήθελαν πολλοί να σε βρούν για να πάρουν απο εσένα (και με το μικρό upload που έχεις καθώς κάνεις download είσαι οκ). Οπότε έχει να κάνει με το τι κατεβάζεις, τι ζήτηση έχει εκείνη την στιγμή αυτό που κατεβάζεις και εάν τελικά στο swarm μπαίνουν άτομα που κατεβάζεις απο αυτούς και ταυτόχρονα τους δίνεις και κάτι (εάν δεν υπήρχε αυτό τότε οι seeders δεν θα σου έδειναν τπτ).
*υπάρχει τρομερή βιβλιογραφία για το πως συμπεριφέρεται αυτή η στρατηγική κάτω απο διαφορετικά μείγματα seeders και leechers, demand patterns κλπ κλπ.
xrokos wrote:
Στο δικό μου router αν δεν κάνω port forward πολύ απλά δε δουλεύει ούτε μtorrent, ούτε dc++...
Eξαρτάται απο το τι κατεβάζεις και το πως δουλεύει ο tracker σου. Το μTorrent θα έπαιζε μια χαρά απλά θα ξεκίναγε μετά απο καμιά ώρα και να έπιανες 1kb/s

.
Για το DC++ είναι άλλο P2P protocοl εντελώς διαφορετικό.