mirror of
https://github.com/varun-r-mallya/py-libp2p.git
synced 2026-02-12 16:10:57 +00:00
chore(kad_dht): centralize shared values in common.py
This commit is contained in:
10
libp2p/kad_dht/common.py
Normal file
10
libp2p/kad_dht/common.py
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
from libp2p.custom_types import (
|
||||||
|
TProtocol,
|
||||||
|
)
|
||||||
|
|
||||||
|
# Constants for the Kademlia algorithm
|
||||||
|
ALPHA = 3 # Concurrency parameter
|
||||||
|
PROTOCOL_ID = TProtocol("/ipfs/kad/1.0.0")
|
||||||
|
QUERY_TIMEOUT = 10
|
||||||
|
|
||||||
|
TTL = DEFAULT_TTL = 24 * 60 * 60 # 24 hours in seconds
|
||||||
@ -49,16 +49,16 @@ from .routing_table import (
|
|||||||
from .value_store import (
|
from .value_store import (
|
||||||
ValueStore,
|
ValueStore,
|
||||||
)
|
)
|
||||||
|
from .common import (
|
||||||
|
PROTOCOL_ID,
|
||||||
|
ALPHA,
|
||||||
|
QUERY_TIMEOUT
|
||||||
|
)
|
||||||
|
|
||||||
logger = logging.getLogger("kademlia-example.kad_dht")
|
logger = logging.getLogger("kademlia-example.kad_dht")
|
||||||
# logger = logging.getLogger("libp2p.kademlia")
|
# logger = logging.getLogger("libp2p.kademlia")
|
||||||
# Default parameters
|
# Default parameters
|
||||||
PROTOCOL_ID = TProtocol("/ipfs/kad/1.0.0")
|
ROUTING_TABLE_REFRESH_INTERVAL = 60 # 1 min in seconds for testing
|
||||||
ROUTING_TABLE_REFRESH_INTERVAL = 1 * 60 # 1 min in seconds for testing
|
|
||||||
TTL = 24 * 60 * 60 # 24 hours in seconds
|
|
||||||
ALPHA = 3
|
|
||||||
QUERY_TIMEOUT = 10 # seconds
|
|
||||||
|
|
||||||
|
|
||||||
class DHTMode(Enum):
|
class DHTMode(Enum):
|
||||||
"""DHT operation modes."""
|
"""DHT operation modes."""
|
||||||
|
|||||||
@ -25,12 +25,17 @@ from libp2p.peer.peerinfo import (
|
|||||||
PeerInfo,
|
PeerInfo,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
from .pb.kademlia_pb2 import (
|
from .pb.kademlia_pb2 import (
|
||||||
Message,
|
Message,
|
||||||
)
|
)
|
||||||
from .routing_table import (
|
from .routing_table import (
|
||||||
RoutingTable,
|
RoutingTable,
|
||||||
)
|
)
|
||||||
|
from .common import (
|
||||||
|
PROTOCOL_ID,
|
||||||
|
ALPHA
|
||||||
|
)
|
||||||
from .utils import (
|
from .utils import (
|
||||||
sort_peer_ids_by_distance,
|
sort_peer_ids_by_distance,
|
||||||
)
|
)
|
||||||
@ -38,10 +43,7 @@ from .utils import (
|
|||||||
# logger = logging.getLogger("libp2p.kademlia.peer_routing")
|
# logger = logging.getLogger("libp2p.kademlia.peer_routing")
|
||||||
logger = logging.getLogger("kademlia-example.peer_routing")
|
logger = logging.getLogger("kademlia-example.peer_routing")
|
||||||
|
|
||||||
# Constants for the Kademlia algorithm
|
|
||||||
ALPHA = 3 # Concurrency parameter
|
|
||||||
MAX_PEER_LOOKUP_ROUNDS = 20 # Maximum number of rounds in peer lookup
|
MAX_PEER_LOOKUP_ROUNDS = 20 # Maximum number of rounds in peer lookup
|
||||||
PROTOCOL_ID = TProtocol("/ipfs/kad/1.0.0")
|
|
||||||
|
|
||||||
|
|
||||||
class PeerRouting(IPeerRouting):
|
class PeerRouting(IPeerRouting):
|
||||||
|
|||||||
@ -33,6 +33,12 @@ from .pb.kademlia_pb2 import (
|
|||||||
Message,
|
Message,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
from .common import (
|
||||||
|
PROTOCOL_ID,
|
||||||
|
ALPHA,
|
||||||
|
QUERY_TIMEOUT
|
||||||
|
)
|
||||||
|
|
||||||
# logger = logging.getLogger("libp2p.kademlia.provider_store")
|
# logger = logging.getLogger("libp2p.kademlia.provider_store")
|
||||||
logger = logging.getLogger("kademlia-example.provider_store")
|
logger = logging.getLogger("kademlia-example.provider_store")
|
||||||
|
|
||||||
@ -40,9 +46,6 @@ logger = logging.getLogger("kademlia-example.provider_store")
|
|||||||
PROVIDER_RECORD_REPUBLISH_INTERVAL = 22 * 60 * 60 # 22 hours in seconds
|
PROVIDER_RECORD_REPUBLISH_INTERVAL = 22 * 60 * 60 # 22 hours in seconds
|
||||||
PROVIDER_RECORD_EXPIRATION_INTERVAL = 48 * 60 * 60 # 48 hours in seconds
|
PROVIDER_RECORD_EXPIRATION_INTERVAL = 48 * 60 * 60 # 48 hours in seconds
|
||||||
PROVIDER_ADDRESS_TTL = 30 * 60 # 30 minutes in seconds
|
PROVIDER_ADDRESS_TTL = 30 * 60 # 30 minutes in seconds
|
||||||
PROTOCOL_ID = TProtocol("/ipfs/kad/1.0.0")
|
|
||||||
ALPHA = 3 # Number of parallel queries/advertisements
|
|
||||||
QUERY_TIMEOUT = 10 # Timeout for each query in seconds
|
|
||||||
|
|
||||||
|
|
||||||
class ProviderRecord:
|
class ProviderRecord:
|
||||||
|
|||||||
@ -23,14 +23,14 @@ from .pb.kademlia_pb2 import (
|
|||||||
Message,
|
Message,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
from .common import (
|
||||||
|
PROTOCOL_ID,
|
||||||
|
DEFAULT_TTL
|
||||||
|
)
|
||||||
|
|
||||||
# logger = logging.getLogger("libp2p.kademlia.value_store")
|
# logger = logging.getLogger("libp2p.kademlia.value_store")
|
||||||
logger = logging.getLogger("kademlia-example.value_store")
|
logger = logging.getLogger("kademlia-example.value_store")
|
||||||
|
|
||||||
# Default time to live for values in seconds (24 hours)
|
|
||||||
DEFAULT_TTL = 24 * 60 * 60
|
|
||||||
PROTOCOL_ID = TProtocol("/ipfs/kad/1.0.0")
|
|
||||||
|
|
||||||
|
|
||||||
class ValueStore:
|
class ValueStore:
|
||||||
"""
|
"""
|
||||||
Store for key-value pairs in a Kademlia DHT.
|
Store for key-value pairs in a Kademlia DHT.
|
||||||
|
|||||||
Reference in New Issue
Block a user