From 7d3fc9b25ff81629db9cb5fe53ffa904c14ee83d Mon Sep 17 00:00:00 2001 From: Akilan Date: Tue, 3 Jun 2025 15:02:14 +0100 Subject: [PATCH] added generated docs html --- Docs/index.html | 188 ++++++++++++++++++++++++------------------------ 1 file changed, 94 insertions(+), 94 deletions(-) diff --git a/Docs/index.html b/Docs/index.html index 624be17..a91ef87 100644 --- a/Docs/index.html +++ b/Docs/index.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + @@ -26,12 +26,12 @@

Table of Contents

@@ -109,8 +109,8 @@
  • 6.3. Current languages supported
  • @@ -127,28 +127,28 @@
  • 10. Client mode
  • -
  • 11. Simulation +
  • 11. Simulation
  • -
  • 12. Blog posts +
  • 12. Blog posts
  • -
  • 13. Ideas for future potencial features +
  • 13. Ideas for future potencial features @@ -157,26 +157,26 @@
  • -
    +

    Colored-On-Light-Image.png

    -
    -

    1. Guide through video

    +
    +

    1. Guide through video

    -
    -

    1.0.1. The video below shows the setup and usage of P2PRC.

    +
    +

    1.0.1. The video below shows the setup and usage of P2PRC.

    -
    +

    maxresdefault.jpg

    -
    @@ -265,7 +265,7 @@ Go API to create and interact with the containers. to install docker GPU

    -
    +
     // Do ensure that the docker command does not need sudo to run
     sudo chmod 666 /var/run/docker.sock
     
    @@ -279,7 +279,7 @@ To set up the internal dependencies and build the entire go code into a single binary

    -
    +
     make
     
    @@ -291,7 +291,7 @@ To set up P2PRC on Windows, simply run this batch file. Make sure you are not in admin mode when running this.

    -
    +
     .\install.bat
     
    @@ -301,7 +301,7 @@ are not in admin mode when running this.

    3.2.4. Add appropriate paths to .bashrc

    -
    +
     export P2PRC=/<PATH>/p2p-rendering-computation
     export PATH=/<PATH>/p2p-rendering-computation:${PATH}
     
    @@ -310,14 +310,14 @@ export PATH=/<PATH>/p2p-rendering-computation:${PATH}

    3.2.5. Test if binary works

    -
    +
     p2prc --help
     
    1. Output:
      -
      +
       NAME:
          p2p-rendering-computation - p2p cli application to create and access VMs in other servers
       
      @@ -379,7 +379,7 @@ GLOBAL OPTIONS:
       

      4.0.1. Start as a server

      -
      +
       p2prc -s 
       
      @@ -387,7 +387,7 @@ p2prc -s

      4.0.2. View server Specification

      -
      +
       p2prc --specs=<ip address>
       
      @@ -399,7 +399,7 @@ p2prc --specs=<ip address> use the --gpu if you know the other machine has a gpu.

      -
      +
       p2prc --touch=<server ip address> -p <number of ports> --gpu
       
      @@ -411,7 +411,7 @@ p2prc --touch=<server ip address> -p <number of ports> --gpu The docker id is present in the output where you create a container

      -
      +
       p2prc --rm=<server ip address> --id=<docker container id> 
       
      @@ -419,7 +419,7 @@ p2prc --rm=<server ip address> --id=<docker container id>

      4.0.5. Adding servers to ip table

      -
      +
       p2prc --as=<server ip address you want to add> 
       
      @@ -427,7 +427,7 @@ p2prc --as=<server ip address you want to add>

      4.0.6. Update ip table

      -
      +
       p2prc --us 
       
      @@ -435,7 +435,7 @@ p2prc --us

      4.0.7. List Servers

      -
      +
       p2prc --ls 
       
      @@ -443,7 +443,7 @@ p2prc --ls

      4.0.8. View Network interfaces

      -
      +
       p2prc --ni
       
      @@ -451,7 +451,7 @@ p2prc --ni

      4.0.9. Viewing Containers created Client side

      -
      +
       p2prc --tc
       
      @@ -459,7 +459,7 @@ p2prc --tc

      4.0.10. Running plugin

      -
      +
       p2prc --plugin <plugin name> --id <container id or group id>
       
      @@ -467,7 +467,7 @@ p2prc --plugin <plugin name> --id <container id or group id>

      4.0.11. Create group

      -
      +
       p2prc --cgroup
       
      @@ -475,7 +475,7 @@ p2prc --cgroup

      4.0.12. Add container to group

      -
      +
       p2prc --group <group id> --id <container id>
       
      @@ -483,7 +483,7 @@ p2prc --group <group id> --id <container id>

      4.0.13. View groups

      -
      +
       p2prc --groups
       
      @@ -491,7 +491,7 @@ p2prc --groups

      4.0.14. View specific group

      -
      +
       p2prc --group <group id>
       
      @@ -499,7 +499,7 @@ p2prc --group <group id>

      4.0.15. Delete container from group

      -
      +
       p2prc --rmcgroup --group <group id> --id <container id> 
       
      @@ -507,7 +507,7 @@ p2prc --rmcgroup --group <group id> --id <container id>

      4.0.16. Delete entire group

      -
      +
       p2prc --rmgroup <group id>
       
      @@ -515,7 +515,7 @@ p2prc --rmgroup <group id>

      4.0.17. Pulling plugin from a remote repo

      -
      +
       p2prc --pp <repo link>
       
      @@ -523,7 +523,7 @@ p2prc --pp <repo link>

      4.0.18. Deleting plugin from the plugin directory

      -
      +
       p2prc --rp <plugin name> 
       
      @@ -531,28 +531,28 @@ p2prc --rp <plugin name>

      4.0.19. Added custom metadata about the current node

      -
      +
       p2prc --amd "custom metadata"
       
      -
      -

      4.0.20. MapPort and link to domain name

      +
      +

      4.0.20. MapPort and link to domain name

      Allows to expose remote ports from a machine in the P2P network.

      -
      +
       p2prc --mp <port no to map> --dn <domain name to link Mapped port against>
       
        -
      1. MapPort in remote machine
        +
      2. MapPort in remote machine

        This is to ensure ports on remote machines on the P2PRC can be easily opened.

        -
        +
         p2prc --mp <port no to map> --dn <domain name to link Mapped port against> --ra <remote server address>
         
        @@ -561,15 +561,15 @@ p2prc --mp <port no to map> --dn <domain name to link Mapped port again
      -
      -

      4.0.21. Add root node

      +
      +

      4.0.21. Add root node

      Adds a root node to P2RRC and overwrites all other nodes in the ip table. To be only added before the network is started and with the intention of a fresh instance.

      -
      +
       p2prc --arn --ip <root node ip address> -p <root node port no>
       
      @@ -680,7 +680,7 @@ from the TURN server. The flow below describes the workflow.
    2. Call /FRPPort
    3. -
      +
       http://<turn server ip>:<server port no>/FRPport
       
      @@ -769,7 +769,7 @@ p2prc.h p2prc.so Below are a sample set of commands to open the bindings implementation.

      -
      +
       # run
       cd Bindings/
       # list files
      @@ -857,7 +857,7 @@ that convert a go object to JSON string initially and converts it to
       
    4. A Pseudo code to refer to the common function implementation shape could be represented as:
      -
      +
       func <Function name> (output *C.char) {
             <response>,<error> := <P2PRC function name>(<parameters if needed>)
             if <error> != nil {
      @@ -875,8 +875,8 @@ func <Function name> (output *C.char) {
       

      6.3. Current languages supported

      -
      -

      6.3.1. Python

      +
      +

      6.3.1. Python

        @@ -913,8 +913,8 @@ called from other programming languages.
      -
      -

      6.3.2. Haskell

      +
      +

      6.3.2. Haskell

      P2PRC officially supports Haskell bindings and will further support @@ -1036,7 +1036,7 @@ from the TURN server. The flow below describes the workflow.

    5. Call /FRPPort
    6. -
      +
       http://<turn server ip>:<server port no>/FRPport
       
      @@ -1067,8 +1067,8 @@ func main() {
      -
      -

      11. Simulation

      +
      +

      11. Simulation

      The simulation library is a really simple library to locally @@ -1078,8 +1078,8 @@ the Node discovery mechanism. There are current 5 commands which can be used as shown below:

      -
      -

      11.1. Command

      +
      +

      11.1. Command

      • P2PRC instances "number of instances" : Starts p2prc processes @@ -1097,8 +1097,8 @@ testing the generated P2PRC instances.
      -
      -

      11.2. Sample bash instructions

      +
      +

      11.2. Sample bash instructions

      # Unset default P2PRC env path
      @@ -1126,12 +1126,12 @@ Source code: 
      -

      12. Blog posts

      +
      +

      12. Blog posts

      -
      -

      12.1. Self host within 5 minutes any program

      +
      +

      12.1. Self host within 5 minutes any program

      • Author: Akilan Selvacoumar
      • @@ -1143,7 +1143,7 @@ Source code: + @@ -1153,8 +1153,8 @@ This is a fun expirement for anyone to try to quickly run a server and quickly do a map port and domain name mapping in a single command.

      -
      -

      12.1.1. 1. Find a program you want to run

      +
      +

      12.1.1. 1. Find a program you want to run

      Let's try to setup a really easy program (Let's do with Linkwarden @@ -1163,7 +1163,7 @@ compose installed on your local machine.

        -
      1. Let's run Linkwarden using docker compose and P2PRC
        +
      2. Let's run Linkwarden using docker compose and P2PRC
      -
      -

      13. Ideas for future potencial features

      +
      +

      13. Ideas for future potencial features

      Consists of personal loideas for the future of P2PRC. At moment only has main contributors writiing to this.

      -
      -

      13.1. To support hetrogenous set of Nodes that cannot run P2PRC

      +
      +

      13.1. To support hetrogenous set of Nodes that cannot run P2PRC

      This stems from a personal issue I have when doing research @@ -1277,8 +1277,8 @@ and would introduce a new layer fault tolerance within a local network nodes.

      -
      -

      13.1.1. Assumptions:

      +
      +

      13.1.1. Assumptions:

      • I have a Morello board that cannot run P2PRC
      • @@ -1291,8 +1291,8 @@ as well look into custom tasks into the hetrogenous hardware.
      -
      -

      13.1.2. Set of interesting possible:

      +
      +

      13.1.2. Set of interesting possible:

      We build a cool set possibilities before and use this to build up the implementation @@ -1309,8 +1309,8 @@ weight hypervisors.

    -
    -

    13.1.3. Implementation

    +
    +

    13.1.3. Implementation

    • To use implementations similar to socat to ensure we can bind address of local @@ -1324,7 +1324,7 @@ other nodes can access the Morello board who have permission access.
    -
    +

    P2PRCRemoteNodes.png

    Figure 1: Implementation idea (To be improved upon)

    @@ -1336,7 +1336,7 @@ other nodes can access the Morello board who have permission access.

    Author: Akilan

    -

    Created: 2025-05-30 Fri 18:05

    +

    Created: 2025-06-03 Tue 15:01

    Validate