Author

Topic: Datenaustausch zwischen den Clients, Dokumentation? (Read 1034 times)

sr. member
Activity: 308
Merit: 250
Stimmt, hatte ich übersehen. Danke.
legendary
Activity: 2618
Merit: 1007
Das sind die Transaktionen an sich - das Thema dieses Threads ist glaube ich eher, wie diese Transaktionsskripts zwischen Clients ausgetauscht werden und möglichst schnell das gesamte Netzwerk bzw. zumindest viele Miner erreichen.
sr. member
Activity: 308
Merit: 250
Ich finde es einen Hammer, was zumindest theoretisch mit dem Bitcoin-Protokoll möglich sein soll:
https://en.bitcoin.it/wiki/Script

Ich hätte bloss Angst, advanced features mit echtem Geld zu verwenden. Ich hätte kein vertrauen, dass sie richtig implementiert / weitergepflegt / von allen Minern unterstützt werden...
legendary
Activity: 2618
Merit: 1007
Es gibt schon Verfahren, die sind aber teils nicht gern gesehen oder funktionieren nicht zuverlässig. UPnP ist das Protokoll, das für sowas vorgesehen ist.
legendary
Activity: 1882
Merit: 1108
vieleicht hilft dir das weiter

https://en.bitcoin.it/wiki/Current_Network_Status

Dort steht das hinter NAT-Router stehende Clients nicht korrekt gezählt werden können, es sei den sie werden manuel gemapped oder können uPnP benutzen.

Bitcoin lösst das problem indem jeder "Server" 8 Connections macht. Also müssen nur 1/8 durch ihre Firewall kommen. Sobald das aber mehr werden, wird es wohl Probleme für diese Clients geben. Aber das lösen dann einige die ihre Firewall manuell aufmachen und für jeden der dieses Problem so löst können sich 8 neue verbinden.

Ich jedenfalls versteh das so, das es ausser uPnP kein Verfahren gibt, sich durch einen NAT-Router zu tunneln.
newbie
Activity: 2
Merit: 0
Danke für den Link,

den hab ich mir durchgelesen, dort wird leider nicht erklärt wie die Peers miteinander sprechen.

Ich habe dort nur Beschreibungen gefunden, welche Art von Nachrichten es gibt und wie diese aufgebaut sind etc.

ich habe mir ausserdem noch
https://en.bitcoin.it/wiki/Protocol_rules

angesehen und diesen Absatz gefunden:

Quote
Connection

To connect to a peer, you send a version message containing your version number, block count, and current time. The remote peer will send back a verack message and his own version message if he is accepting connections from your version. You will respond with your own verack if you are accepting connections from his version.
The time data from all of your peers is collected, and the median is used by Bitcoin for all network tasks that use the time (except for other version messages).
You then exchange getaddr and addr messages, storing all addresses that you don't know about. addr messages often contain only one address, but sometimes contain up to 1000. This is most common at the beginning of an exchange.

Aber auch hier wird nicht beschrieben wie technisch eine Verbindung zum Peer aufgebaut wird.
hero member
Activity: 602
Merit: 500
Vertrau in Gott
newbie
Activity: 2
Merit: 0
Hallo zusammen,

kann mir Jemand eine Dokumentation verlinken, wie technisch die Datenübertragung im Bitcoin Client gelöst ist?

Ich habe bisher leider nur herausgefunden, dass für die Kontakte ein zentraler IRC Server genutzt wird und die Blöcke sollen ja dezentral verteilt werden.

Mich interessiert, wie dies gelöst ist, da dies ohne Portweiterleitung im Router funktioniert und ich bisher dachte, dass die Daten dann über einen Server mit offenen Ports verteilt werden müssten.

Bei einer P2P Software müssen ja ansonsten die Ports im Router entsprechend konfiguriert werden, da sonst eine Datenübertragung zwischen zwei Peers nicht direkt erfolgen kann.

Wie gesagt, ich habe schon viel gesucht habe aber nur allgemeine Informationen oder Detailinformationen zu der Verschlüsselung gefunden.

beste Grüße
Paul
Jump to: