Skip to content

The project demonstrates node creation, network connectivity, and file transfer using Helia. Explore different network architectures to connect nodes A, B, and C and facilitate file access across the network.

L1ZLe/IPFS-nodes-behavior

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IPFS Nodes Behavior Project

Introduction

IPFS Nodes Behavior Project is a comprehensive demonstration of networking capabilities using the Helia library. Helia provides a powerful networking layer that facilitates peer-to-peer communication and file transfer. This project showcases the creation of nodes, establishment of connections, addition of files, and data transfer between nodes in a distributed network.

Installation

To use the IPFS Nodes Behavior Project, follow these installation steps:

  1. Ensure you have Node.js installed on your system.
  2. Clone the repository from GitHub:
git clone https://github.com/L1ZLe/IPFS-nodes-behavior.git
  1. Navigate to the project directory:
cd IPFS-nodes-behavior
  1. Install the required dependencies using npm:
npm install

Usage

To utilize the IPFS Nodes Behavior Project for creating and managing a distributed network, follow these steps:

  1. Run the provided code in index.js using Node.js:
node index.js
  1. Upon execution, the code will create three nodes (A, B, and C) in the network.

  2. The nodes will establish connections with each other, allowing for seamless communication.

  3. Files can be added to any node using the provided UnixFS instance.

  4. Data transfer between nodes can be initiated to share files and information across the network.

Connecting Nodes

Nodes can be connected using various network architectures:

  1. Star Topology: Connect all nodes to a central node (Node A) forming a star-like structure.
  2. Mesh Topology: Connect each node to every other node, creating a fully interconnected network.
  3. Ring Topology: Connect nodes in a circular manner, where each node is connected to exactly two other nodes.
  4. Hybrid Topology: Combine multiple network architectures to suit the requirements.

Accessing Files on Other Nodes

After establishing connections between nodes, you can access files stored on other nodes. Here's how it works:

  1. Node A to Node B File Access: Node A can access files stored on Node B by initiating a request through the established connection.
  2. Node B to Node C File Access: Similarly, Node B can access files stored on Node C by utilizing the existing network connection.
  3. Node C to Node A File Access: Node C can access files stored on Node A by traversing through the network topology, leveraging the interconnected nodes.

Examples

Star Topology

In a star topology, Node A acts as the central hub, connecting to Nodes B and C. This architecture facilitates centralized file access and management.

Mesh Topology

In a mesh topology, all nodes (A, B, and C) are interconnected, allowing for direct communication and file sharing between any pair of nodes.

Ring Topology

In a ring topology, Node A is connected to Node B, Node B is connected to Node C, and Node C is connected back to Node A, forming a closed loop. This architecture ensures redundancy and fault tolerance.

Hybrid Topology

A combination of various topologies can be employed based on specific requirements. For example, combining a star and mesh topology can provide centralized control along with decentralized communication channels.

Contributing

Contributions are welcome. If you have any suggestions, improvements, or bug fixes, feel free to open an issue or submit a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for details.

This README provides a detailed overview of the project, including explanations on network architectures and file access between nodes.

Support

For any questions, issues, or assistance contact me at oundel.store@gmail.com or open an issue on GitHub.

Resources

About

The project demonstrates node creation, network connectivity, and file transfer using Helia. Explore different network architectures to connect nodes A, B, and C and facilitate file access across the network.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published