Torrent应用程序中的对等连接速率

2024-06-18 11:37:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经用python开发了一个像爆米花时间这样的torrent应用程序,现在运行得很好。不过,我在与同龄人的交流中遇到了一些问题。在

我从DHT、UDP/httptracker或PeerExchange获得的对等点中有90%是无法访问的。。 我试图连接,但它只是告诉我它拒绝连接。这是预期的行为吗?我知道同龄人可以离线,但90%的人。。 这意味着我需要100个潜在的同龄人在尝试了所有可能的10个连接。例如,uTorrent可能有13个潜在的对等点,并连接到其中的10个。在

以防万一你们认为这可能与我的connect方法或解析响应有关; 连接方法:

def connect(self):
    try:
        self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        self.socket.settimeout(self.con_timeout)
        self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
        self.socket.connect((self.host, self.port))
        return True
    except (socket.timeout, ConnectionRefusedError, ConnectionAbortedError,    ConnectionResetError, OSError):
        return False

Ip/端口解析:

^{2}$

如果任何人有开发torrent客户端的经验,或者只是对可能出现的问题有一个想法,请提供帮助!在


Tags: 方法self应用程序returnconnect时间timeoutsocket