Difference between revisions of "Mesh/Diagrams"

From Sudo Room
Jump to navigation Jump to search
(→‎Network Topology Diagram: reorganizes images)
m
 
(21 intermediate revisions by 4 users not shown)
Line 1: Line 1:
On this page are various diagrams to explain the network. At the top are technical diagrams, which can be used as diagrams of reference and record, hopefully improved to always be reflective of the network's essential elements and their relations.
On this page are various diagrams to explain the network. At the top are technical diagrams, which can be used as diagrams of reference and record, hopefully improved to always be reflective of the network's essential elements and their relations.
==Outreach Diagrams==
*[https://github.com/sudomesh/propaganda/tree/master/infographics/2018_Network_Goals_Roadmap 2018 Network Goals Roadmap]
* [https://github.com/sudomesh/propaganda/blob/master/infographics/cow_chicken_mesh.png Cow & Chicken]
We need more outreach diagrams! Please help! You can base outreach-focused diagrams on elements of the technical reference diagrams below:


==Reference Diagrams==
==Reference Diagrams==
Reference diagrams are for documentation and technical reference purposes, which can hopefully be helpful to provide a basis for creating easily understandable, accurate, and engaging [[Mesh/Diagrams#Outreach_Diagrams|outreach diagrams]].


===Network Topology Diagram===
===Network Topology Diagram===
Line 7: Line 15:


<gallery mode="nolines">
<gallery mode="nolines">
File:Network topology diagram-lo.png|png (lo)
File:Network_topology_diagram-2018-06-lo.png|png (lo)
File:Network topology diagram-hi.png|png (hi)
File:Network_topology_diagram-2018-06-hi.png|png (hi)
File:Network topology diagram.pdf|pdf
File:Network_topology_diagram-2018-06.pdf|pdf
File:Network topology diagram svg.svg|svg
File:Network_topology_diagram-2018-06.svg|svg
File:Network topology diagram plain.svg|plain svg
</gallery>
</gallery>


The diagram's '''key''' includes the following types of items, which are also described in relation to one another below.
The diagram's '''key''' includes the following types of items, which are also described in relation to one another below.


* '''2.4ghz Node'''
* '''Home Node'''
** Typical router running mesh firmware used in a node operator's home, office, public space, etc.
** Typical router running mesh firmware used in a node operator's home, office, public space, etc.
* '''5ghz "Backbone" Point-to-Point Node'''
* '''Extender Node'''
** Special router running mesh firmware as well, but broadcasting and receiving on the 5ghz frequency that can travel longer distances than 2.4ghz, and is regulated by the [http://en.wikipedia.org/wiki/Federal_Communications_Commission FCC] for use in point-to-point connections only. These are therefore helpful to create a "backbone" on the network that can both:
** Special router running mesh firmware as well, but broadcasting and receiving on the 5ghz frequency that can travel longer distances than 2.4ghz, and is regulated by the [http://en.wikipedia.org/wiki/Federal_Communications_Commission FCC] for use in point-to-point connections only. These are therefore helpful to create a "backbone" via rooftop-to-rooftop connections on the network that can both:
**# connect neighborhoods to one another when reasonable connections with '''2.4ghz Nodes''' are not possible
**# connect neighborhoods to one another when reasonable connections with '''Home Nodes''' are not possible
**# ensure users of '''2.4ghz Nodes''' are within a few hops (through other nodes on a path) to strong and stable connections to the rest of the local network (peoplesopen.net) and substantive internet lines (e.g. a small ISP or donated line from the Internet Archive, etc).
**# ensure users of '''Home Nodes''' are within a few hops (through other nodes on a path) to strong and stable connections to the rest of the local network (peoplesopen.net) and substantive internet lines (e.g. a small ISP or donated bandwidth from the Internet Archive, etc).
* '''Relay Node''' "Virtual Public Network" (VPuN) Tunnel Server & Client
* '''Exit Node''' "Virtual Public Network" (VPuN) Tunnel Server & Client
** Server running linux and the TunnelDigger server and client software to create Virtual Public Network (VPuN) connections over generic internet connections. This tunnel software creates a connection using the internet underneath it, so at this point, traffic to '''Relay Nodes''' is considered public in the same way it is on the public global internet. Simply, the distinction is between passing purely local traffic, and traffic that is virtually local, but must use an internet connection to reach the necessary destinations.
** Server running linux and the TunnelDigger server and client software to create Virtual Public Network (VPuN) connections over generic internet connections. This tunnel software creates a connection using the internet underneath it, so at this point, traffic to '''Exit Nodes''' is considered public in the same way it is on the public global internet. Simply, the distinction is between passing purely local traffic, and traffic that is virtually local, but must use an internet connection to reach the necessary destinations.
**The term "Virtual Public Network" or VPuN has roots in GNUnet https://gnunet.org/gnunet-vpn and is situated in this historical piece http://www.isaca.org/Journal/Past-Issues/2001/Volume-3/Pages/Virtual-Private-Networking-Confidentiality-on-Public-Networks.aspx. TunnelDigger technically qualifies as "Virtual Private Network" software (with a major lapse in not actually providing access control mechanisms as is the point of most VPN software), but this "private" term is more generic than we can be (see https://en.wikipedia.org/wiki/VPN#Unencrypted_tunnels). Instead, we have opted for a socially and historically situated alternative that is both more descriptive and mission-consistent with sudo mesh's work and the values behind the People's Open Network: ''Virtual Public Network (VPuN)''.
**The term "Virtual Public Network" or VPuN has roots in GNUnet https://gnunet.org/gnunet-vpn and is situated in this historical piece http://www.isaca.org/Journal/Past-Issues/2001/Volume-3/Pages/Virtual-Private-Networking-Confidentiality-on-Public-Networks.aspx. TunnelDigger technically qualifies as "Virtual Private Network" software (with a major lapse in not actually providing access control mechanisms as is the point of most VPN software), but this "private" term is more generic than we can be (see https://en.wikipedia.org/wiki/VPN#Unencrypted_tunnels). Instead, we have opted for a socially and historically situated alternative that is both more descriptive and mission-consistent with sudo mesh's work and the values behind the People's Open Network: ''Virtual Public Network (VPuN)''.
** Note: if, for instance, the '''5ghz Backbone Nodes''' in the diagram above are disconnected (maybe interference one day), then requests across the network (say from one neighborhood to another) can still pass virtually using the internet, out to '''Relay Nodes''' and back down.
** Note: if, for instance, the '''Extender Nodes''' in the diagram above are disconnected (maybe interference one day), then requests across the network (say from one neighborhood to another) can still pass virtually using the internet, out to '''Exit Nodes''' and back down.
* '''Exit Gateway'''
* '''VPuN Tunnel'''
** Same as '''Relay Node''' but designated as a ''gateway'' or the final stop between users on the ''peoplesopen.net'' network and out to the public internet (leaving the Virtual Public Network). The gateway is likely to communicate through '''Relay Nodes''' rather than directly with '''2.4ghz Nodes''' and '''Backbone Nodes'''.
** The pathway between users on the ''peoplesopen.net'' network connecting to the public internet (leaving the Virtual Public Network). The tunnel connects directly to '''Exit Nodes''' rather than directly with '''Home''' and '''Extender Nodes'''.


===Node Traffic Diagram===
===Node Traffic Diagram===
<gallery mode="nolines">
File:Node traffic diagram-lo_2018.png|png (lo)
File:Node traffic diagram-hi_2018.png|png (hi)
File:Node traffic diagram_2018.pdf|pdf
File:Node traffic diagram_2018.svg|svg
</gallery>


==Outreach Diagrams==
The diagram's '''key''' includes the following types of items:
 
* '''Home Node'''
** Based on same object as [[Mesh/Diagrams#Network Topology Diagram|Network Topology Diagram]]
* '''Power-over-ethernet (POE) power injector (supply)'''
* '''wifi-capable user devices (e.g. laptop, smartphone)'''
* '''network interface to internet (e.g. ISP modem)'''
* '''power''' sources
 
====Animation====
* Seeking to create something like this: https://commons.wikimedia.org/wiki/File:Torrentcomp_small.gif
* Limited success with this <code>svgani</code> python script: http://www.mbeckler.org/inkscape/svgani/
** Could still make multiple semi-crappy, basic animations this way. Limitations on the string replacement aspect.
* Best bet may actually be to animate by hand using this: http://edutechwiki.unige.ch/en/Using_Inkscape_for_web_animation
** May even be able to convert svg to png frames with this: http://littlesvr.ca/apng/svg2png/
* Sozi may work too: http://sozi.baierouge.fr/
 
===Network Development===
 
'''Animation:''' check out this svg animation of the [http://sudomesh.github.io/svg-animations/node_traffic_diagram_animate.svg Network Development Diagram (svg + js, probably only works in modern web browsers)].
 
This diagram depicts how the network itself and the network's supporting community of active volunteers and '''node-operators''' can grow over time. The final stage of the diagram shows some disconnected nodes in the network, to symbolize how a real network does not remain neatly tied together as it expands.
 
<gallery mode="nolines">
File:Network development diagram-lo.png|png (lo)
File:Network development diagram-hi.png|png (hi)
File:Network development diagram_pdf.pdf|pdf
File:Network development diagram.svg|svg
File:Network development diagram plain.svg|plain svg
</gallery>
 
==Animated SVG Diagrams==
Using the [http://sozi.baierouge.fr/ Sozi] extension for [http://inkscape.org/ Inkscape], which more seamlessly implements aspects of [http://sozi.baierouge.fr/pages/tutorial-first.html svg-based animation] visible in a web browser as [http://edutechwiki.unige.ch/en/Using_Inkscape_for_web_animation documented here] with some additional Sozi-based javascript included. The results are quite good and will be posted in [https://github.com/sudomesh/svg-animations this github repository] and listed below:


* [http://sudomesh.github.io/svg-animations/node_traffic_diagram_animate.svg node_traffic_diagram_animate.svg]
* [http://sudomesh.github.io/svg-animations/all_diagrams_animate.svg all_diagrams_animate.svg]


==Draft Diagrams==
==Draft Diagrams==
* [[Rooftop Dish Antenna Mount]]
==Inspirational Diagrams==
===Wikimedia Commons===
* [https://commons.wikimedia.org/wiki/Topology_(Network) Topology (Network)]
* [https://commons.wikimedia.org/wiki/File:Wireless_mesh_network_diagram.jpg Wireless mesh network diagram.jpg] low-resolution
* [https://commons.wikimedia.org/wiki/Category:Mesh_network Category:Mesh Network]
* [https://commons.wikimedia.org/wiki/File:Internet_map_1024.jpg Internet map 1024.jpg]
* Animations
** From "Mesh Network Basics" in [https://en.wikibooks.org/wiki/Wireless_Mesh_Networks/Mesh_network_basics ''Wireless Mesh Networks''] on WikiBooks:
*** [https://commons.wikimedia.org/wiki/File:Mesh_network_self_healing.gif Mesh network self healing.gif]
*** [https://commons.wikimedia.org/wiki/File:Mesh_network_self_forming.gif Mesh network self forming.gif]
*** [https://commons.wikimedia.org/wiki/File:Mesh_network_multi_hop.gif Mesh network multi hop.gif]
===Wikipedia===
* [https://en.wikipedia.org/wiki/File:NetworkTopologies.svg NetworkTopologies.svg] displays various types of network topologies together
* Animations
** [https://en.wikipedia.org/wiki/File:Torrentcomp_small.gif Torrentcomp small.gif] peer-to-peer algorithm animation (deep)
===WikiBooks===
* [https://en.wikibooks.org/wiki/Wireless_Mesh_Networks Wireless Mesh Networks]

Latest revision as of 22:33, 1 July 2018

On this page are various diagrams to explain the network. At the top are technical diagrams, which can be used as diagrams of reference and record, hopefully improved to always be reflective of the network's essential elements and their relations.

Outreach Diagrams

We need more outreach diagrams! Please help! You can base outreach-focused diagrams on elements of the technical reference diagrams below:

Reference Diagrams

Reference diagrams are for documentation and technical reference purposes, which can hopefully be helpful to provide a basis for creating easily understandable, accurate, and engaging outreach diagrams.

Network Topology Diagram

The following diagram describes the essential technical elements of The People's Open Network. Uses the peoplesopen.net font and color scheme.

The diagram's key includes the following types of items, which are also described in relation to one another below.

  • Home Node
    • Typical router running mesh firmware used in a node operator's home, office, public space, etc.
  • Extender Node
    • Special router running mesh firmware as well, but broadcasting and receiving on the 5ghz frequency that can travel longer distances than 2.4ghz, and is regulated by the FCC for use in point-to-point connections only. These are therefore helpful to create a "backbone" via rooftop-to-rooftop connections on the network that can both:
      1. connect neighborhoods to one another when reasonable connections with Home Nodes are not possible
      2. ensure users of Home Nodes are within a few hops (through other nodes on a path) to strong and stable connections to the rest of the local network (peoplesopen.net) and substantive internet lines (e.g. a small ISP or donated bandwidth from the Internet Archive, etc).
  • Exit Node "Virtual Public Network" (VPuN) Tunnel Server & Client
    • Server running linux and the TunnelDigger server and client software to create Virtual Public Network (VPuN) connections over generic internet connections. This tunnel software creates a connection using the internet underneath it, so at this point, traffic to Exit Nodes is considered public in the same way it is on the public global internet. Simply, the distinction is between passing purely local traffic, and traffic that is virtually local, but must use an internet connection to reach the necessary destinations.
    • The term "Virtual Public Network" or VPuN has roots in GNUnet https://gnunet.org/gnunet-vpn and is situated in this historical piece http://www.isaca.org/Journal/Past-Issues/2001/Volume-3/Pages/Virtual-Private-Networking-Confidentiality-on-Public-Networks.aspx. TunnelDigger technically qualifies as "Virtual Private Network" software (with a major lapse in not actually providing access control mechanisms as is the point of most VPN software), but this "private" term is more generic than we can be (see https://en.wikipedia.org/wiki/VPN#Unencrypted_tunnels). Instead, we have opted for a socially and historically situated alternative that is both more descriptive and mission-consistent with sudo mesh's work and the values behind the People's Open Network: Virtual Public Network (VPuN).
    • Note: if, for instance, the Extender Nodes in the diagram above are disconnected (maybe interference one day), then requests across the network (say from one neighborhood to another) can still pass virtually using the internet, out to Exit Nodes and back down.
  • VPuN Tunnel
    • The pathway between users on the peoplesopen.net network connecting to the public internet (leaving the Virtual Public Network). The tunnel connects directly to Exit Nodes rather than directly with Home and Extender Nodes.

Node Traffic Diagram

The diagram's key includes the following types of items:

  • Home Node
  • Power-over-ethernet (POE) power injector (supply)
  • wifi-capable user devices (e.g. laptop, smartphone)
  • network interface to internet (e.g. ISP modem)
  • power sources

Animation

Network Development

Animation: check out this svg animation of the Network Development Diagram (svg + js, probably only works in modern web browsers).

This diagram depicts how the network itself and the network's supporting community of active volunteers and node-operators can grow over time. The final stage of the diagram shows some disconnected nodes in the network, to symbolize how a real network does not remain neatly tied together as it expands.

Animated SVG Diagrams

Using the Sozi extension for Inkscape, which more seamlessly implements aspects of svg-based animation visible in a web browser as documented here with some additional Sozi-based javascript included. The results are quite good and will be posted in this github repository and listed below:

Draft Diagrams

Inspirational Diagrams

Wikimedia Commons

Wikipedia

WikiBooks