Documentation ¶
Overview ¶
Package bee is the root package of Ethereum Swarm node implementation.
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( Version = func() string { if commitHash != "" { return version + "-" + commitHash } return version + "-dev" }() // CommitTime returns the time of the commit from which this code was derived. // If it's not set (in the case of running the code directly without compilation) // then the current time will be returned. CommitTime = func() string { if commitTime == "" { commitTime = strconv.Itoa(int(time.Now().Unix())) } return commitTime } )
Functions ¶
This section is empty.
Types ¶
This section is empty.
Directories ¶
Path | Synopsis |
---|---|
cmd
|
|
pkg
|
|
accounting
Package accounting provides functionalities needed to do per-peer accounting.
|
Package accounting provides functionalities needed to do per-peer accounting. |
accounting/mock
Package mock provides a mock implementation for the accounting interface.
|
Package mock provides a mock implementation for the accounting interface. |
addressbook
Package addressbook provides persisted mapping between overlay (topology) address and bzz.Address address, which contains underlay (physical) address.
|
Package addressbook provides persisted mapping between overlay (topology) address and bzz.Address address, which contains underlay (physical) address. |
api
Package api provides the functionality of the Bee client-facing HTTP API.
|
Package api provides the functionality of the Bee client-facing HTTP API. |
bitvector
Package bitvector provides functionality of a simple bit vector implementation.
|
Package bitvector provides functionality of a simple bit vector implementation. |
bmt
Package bmt implements Binary Merkle Tree hash.
|
Package bmt implements Binary Merkle Tree hash. |
bmt/reference
Package reference is a simple nonconcurrent reference implementation for hashsize segment based Binary Merkle tree hash on arbitrary but fixed maximum chunksize n where 0 <= n <= 4096
|
Package reference is a simple nonconcurrent reference implementation for hashsize segment based Binary Merkle tree hash on arbitrary but fixed maximum chunksize n where 0 <= n <= 4096 |
bmtpool
Package bmtpool provides easy access to binary merkle tree hashers managed in as a resource pool.
|
Package bmtpool provides easy access to binary merkle tree hashers managed in as a resource pool. |
bzz
Package bzz exposes the data structure and operations necessary on the bzz.Address type which used in the handshake protocol, address-book and hive protocol.
|
Package bzz exposes the data structure and operations necessary on the bzz.Address type which used in the handshake protocol, address-book and hive protocol. |
chainsync
Package chainsync provides the implementation of the chainsync protocol that verifies peer chain synchronization.
|
Package chainsync provides the implementation of the chainsync protocol that verifies peer chain synchronization. |
chainsync/pb
Package pb holds only Protocol Buffer definitions and generated code.
|
Package pb holds only Protocol Buffer definitions and generated code. |
chainsyncer
Package chainsyncer provides orchestration logic for the chainsync protocol.
|
Package chainsyncer provides orchestration logic for the chainsync protocol. |
discovery
Package discovery exposes the discovery driver interface which is implemented by discovery protocols.
|
Package discovery exposes the discovery driver interface which is implemented by discovery protocols. |
encryption
Package encryption exposes functionalities needed for encryption and decryption operations in Bee.
|
Package encryption exposes functionalities needed for encryption and decryption operations in Bee. |
feeds
Package feeds implements generic interfaces and methods for time-based feeds indexing schemes are implemented in subpackages - epochs - sequence
|
Package feeds implements generic interfaces and methods for time-based feeds indexing schemes are implemented in subpackages - epochs - sequence |
feeds/epochs
Package epochs implements time-based feeds using epochs as index and provide sequential as well as concurrent lookup algorithms
|
Package epochs implements time-based feeds using epochs as index and provide sequential as well as concurrent lookup algorithms |
feeds/sequence
Package sequence provides implementation of sequential indexing for time-based feeds this feed type is best suited for - version updates - followed updates - frequent or regular-interval updates
|
Package sequence provides implementation of sequential indexing for time-based feeds this feed type is best suited for - version updates - followed updates - frequent or regular-interval updates |
feeds/testing
package testing provides tests for update and resolution of time-based feeds
|
package testing provides tests for update and resolution of time-based feeds |
file
Package file provides interfaces for file-oriented operations.
|
Package file provides interfaces for file-oriented operations. |
file/joiner
Package joiner provides implementations of the file.Joiner interface
|
Package joiner provides implementations of the file.Joiner interface |
file/loadsave
Package loadsave provides lightweight persistence abstraction for manifest operations.
|
Package loadsave provides lightweight persistence abstraction for manifest operations. |
file/pipeline
Package pipeline provides functionality for hashing pipelines needed to create different flavors of merkelised representations of arbitrary data.
|
Package pipeline provides functionality for hashing pipelines needed to create different flavors of merkelised representations of arbitrary data. |
file/splitter
Package splitter provides implementations of the file.Splitter interface
|
Package splitter provides implementations of the file.Splitter interface |
flipflop
Package flipflop exposes a buffered input functionality that mimicks the behavior of falling edge detection which is done when doing signal processing on digital or analog electric circuitry.
|
Package flipflop exposes a buffered input functionality that mimicks the behavior of falling edge detection which is done when doing signal processing on digital or analog electric circuitry. |
hive
Package hive exposes the hive protocol implementation which is the discovery protocol used to inform and be informed about other peers in the network.
|
Package hive exposes the hive protocol implementation which is the discovery protocol used to inform and be informed about other peers in the network. |
hive/pb
Package pb holds only Protocol Buffer definitions and generated code.
|
Package pb holds only Protocol Buffer definitions and generated code. |
intervalstore
Package intervalstore provides a persistence layer for intervals relating to a peer.
|
Package intervalstore provides a persistence layer for intervals relating to a peer. |
jsonhttp
Package jsonhttp contains utility functions that make it easier to create JSON-based HTTP APIs.
|
Package jsonhttp contains utility functions that make it easier to create JSON-based HTTP APIs. |
jsonhttp/jsonhttptest
Package jsonhttptest helps with end-to-end testing of JSON-based HTTP APIs.
|
Package jsonhttptest helps with end-to-end testing of JSON-based HTTP APIs. |
manifest
Package manifest contains the abstractions needed for collection representation in Swarm.
|
Package manifest contains the abstractions needed for collection representation in Swarm. |
node
Package node defines the concept of a Bee node by bootstrapping and injecting all necessary dependencies.
|
Package node defines the concept of a Bee node by bootstrapping and injecting all necessary dependencies. |
p2p
Package p2p provides the peer-to-peer abstractions used across different protocols in Bee.
|
Package p2p provides the peer-to-peer abstractions used across different protocols in Bee. |
p2p/libp2p/internal/handshake/pb
Package pb holds only Protocol Buffer definitions and generated code.
|
Package pb holds only Protocol Buffer definitions and generated code. |
p2p/libp2p/internal/headers/pb
Package pb holds only Protocol Buffer definitions and generated code.
|
Package pb holds only Protocol Buffer definitions and generated code. |
p2p/libp2p/internal/reacher
Package reacher runs a background worker that will ping peers from an internal queue and report back the reachability to the notifier.
|
Package reacher runs a background worker that will ping peers from an internal queue and report back the reachability to the notifier. |
p2p/protobuf/internal/pb
Package pb holds only Protocol Buffer definitions and generated code for testing purposes.
|
Package pb holds only Protocol Buffer definitions and generated code for testing purposes. |
pingpong
Package pingpong exposes the simple ping-pong protocol which measures round-trip-time with other peers.
|
Package pingpong exposes the simple ping-pong protocol which measures round-trip-time with other peers. |
pingpong/pb
Package pb holds only Protocol Buffer definitions and generated code.
|
Package pb holds only Protocol Buffer definitions and generated code. |
pss
Package pss exposes functionalities needed to communicate with other peers on the network.
|
Package pss exposes functionalities needed to communicate with other peers on the network. |
puller
Package puller provides protocol-orchestrating functionality over the pullsync protocol.
|
Package puller provides protocol-orchestrating functionality over the pullsync protocol. |
pullsync
Package pullsync contains protocol that is used to ensure that there is correct chunk replication in the neighborhood of the node.
|
Package pullsync contains protocol that is used to ensure that there is correct chunk replication in the neighborhood of the node. |
pusher
Package pusher provides protocol-orchestrating functionality over the pushsync protocol.
|
Package pusher provides protocol-orchestrating functionality over the pushsync protocol. |
pushsync
Package pushsync provides the pushsync protocol implementation.
|
Package pushsync provides the pushsync protocol implementation. |
ratelimit
Package ratelimit provides a mechanism to rate limit requests based on a string key, refill rate and burst amount.
|
Package ratelimit provides a mechanism to rate limit requests based on a string key, refill rate and burst amount. |
resolver
Package resolver handles name resolution for the Swarm bee.
|
Package resolver handles name resolution for the Swarm bee. |
retrieval
Package retrieval provides the retrieval protocol implementation.
|
Package retrieval provides the retrieval protocol implementation. |
salud
Package salud monitors the connected peers, calculates certain thresholds, and marks peers as unhealthy that fall short of the thresholds to maintain network salud (health).
|
Package salud monitors the connected peers, calculates certain thresholds, and marks peers as unhealthy that fall short of the thresholds to maintain network salud (health). |
sctx
Package sctx provides convenience methods for context value injection and extraction.
|
Package sctx provides convenience methods for context value injection and extraction. |
settlement/pseudosettle
Package pseudosettle implements a pretend settlement protocol where nodes send pretend payment messages consisting only of the payment amount.
|
Package pseudosettle implements a pretend settlement protocol where nodes send pretend payment messages consisting only of the payment amount. |
shed
Package shed provides a simple abstraction components to compose more complex operations on storage data organized in fields and indexes.
|
Package shed provides a simple abstraction components to compose more complex operations on storage data organized in fields and indexes. |
soc
Package soc provides the single-owner chunk implementation and validator.
|
Package soc provides the single-owner chunk implementation and validator. |
statestore
Package statestore provides statestore implementation and mock.
|
Package statestore provides statestore implementation and mock. |
steward
Package stewardess provides convenience methods for reseeding content on Swarm.
|
Package stewardess provides convenience methods for reseeding content on Swarm. |
swarm
Package swarm contains most basic and general Swarm concepts.
|
Package swarm contains most basic and general Swarm concepts. |
topology
Package topology exposes abstractions needed in topology-aware components.
|
Package topology exposes abstractions needed in topology-aware components. |
topology/kademlia
Package kademlia provides an implementation of the topology.Driver interface in a way that a kademlia connectivity is actively maintained by the node.
|
Package kademlia provides an implementation of the topology.Driver interface in a way that a kademlia connectivity is actively maintained by the node. |
topology/kademlia/internal/metrics
Package metrics provides service for collecting various metrics about peers.
|
Package metrics provides service for collecting various metrics about peers. |
topology/kademlia/internal/waitnext
Package metrics provides service for collecting various metrics about peers.
|
Package metrics provides service for collecting various metrics about peers. |
tracing
Package tracing helps with the propagation of the tracing span through context in the system.
|
Package tracing helps with the propagation of the tracing span through context in the system. |
traversal
Package traversal provides abstraction and implementation needed to traverse all chunks below a given root hash.
|
Package traversal provides abstraction and implementation needed to traverse all chunks below a given root hash. |
Click to show internal directories.
Click to hide internal directories.