Distributed Internet Geographic Infrastructure Transmission Service (DIGITS)
Simple Playground - Achieving Required Knowledge (S&P-ARK)
Application Layer Protocol, Experimental Setup (ALPES)
Well, every journey starts with the first step.
But before we talk about the first step, let’s rather talk about the goals, and let’s talk about the vision.
The Internet – when it barely provided the TELNET, the E-MAIL and the FTP services – was not more than “just the Internet”. Only a few scientists and technicians knew about the existence of the Internet.
Nowadays, though many of the circumstances changed – financial, organizational, political and lawful circumstances, just to list some of them – the Internet is still based on the “working horse” HTML.
However, nowadays the HTML content of the web pages is accompanied by many new services like streaming services for offline or online real time media (voice, music, video), by services for up- and download of arbitrary files and by peer to peer services for files, voice, music and video, as well as instant messages.
Nearly any information that can be expressed as digital data, can be exchanged via the Internet, so the Internet is actually a "Vast Collaboration Tool for Mankind".
Just one thing is still restricted to the gaming community and has not yet found the broad acceptance by the mainstream of Internet companies and Internet communities:
- This is real time 3D computer graphics and, even better, virtual reality and mixed reality.
With X3D / WebGL and WebXR, all we hope is that the Internet once again changes its face and becomes a kind of “Enternet”, so to “enter” a greater – virtual – universe that helps us to cope with our original – real – universe.
Another possible vision besides the “Enternet” would be the “3D Web”, which provides basic access to a broad variety of 3D resources and free geographic infrastructure.
The “Enternet” and the “3D Web” would be two siblings, which would provide the most important building blocks for Integrated 3D Collaboration Services.
The “Enternet” would provide the basic 3D Multiuser functions (including the UI for the users and the connection to the IoT),
the “3D Web” would provide for efficient download of 3D resources and geographic infrastructure.
Both should be “grown up together”, to be compatible to each other.
In spring 2022, we decided to actually start the S&P-ARK project. The very first step will be ELSA (Wiki Page).
Actually, S&P-ARK is a part of the DIGITS Project (which is rather a Vision than a Project), however, it is managed in a separate repository (this repository).
Recently, an own WIKI page has been introduced to better explain the connection between DIGITS and S&P-ARK.
Following statements are intended to hold true for this repository
S&P-ARK is not a "real" project, but it is used to publish my opinion about a project / or about projects / that should be conducted by the Web3D Community to elaborate the "Community Requirements" for the NSN and to use the NSN, after it will have been standardized
with following TODO List
We make following assumptions:
- Assumption (1) - We will start with implementing an open source conferencing tool for small, closed groups
- Assumption (2) - The tool will use a "tiny" VPN for RTP communication over IP Multicast (voice, video RFC 3551)
- Assumption (4) - The sharing of files will be provided by the ownCloud software
- Assumption (5) - We will modify the ownCloud software, so that it provides the necessary authentication and authorization services for the tool
- Assumption (7) - We will select one of the following approaches (thank you, Sven-Erik, John and Kevin, for all your hints)
Probably, we will follow one of the following approaches
- Approach (A) - https://www.kamailio.org
- Approach (B) - https://freeswitch.com
- Approach (C) - https://peerjs.com
- Approach (D) - openfire server / jingle RTC client
- Approach (E) - pure WebRTC and Node.js
- Approach (F) - Strophe.js
We acknowledge following additional resources of information
- Additional Info (a) - https://coderextreme.net/grasshopper - peer 2 peer
- Additional Info (b) - https://coderextreme.net/BigBuck - video texture
- Additional Info (c) - https://quiet-forest-75069.herokuapp.com - socket.io (text/chat/multiuser app)
Deadline: it's done, when it's done
- Some Preparations (ONGOING)
- Setup the Infrastructure (DONE)
- First Experiments (WebRTC, socket.io, AJAX/fetch(), Node.js) - (ONGOING)
- Design of "Experimental Login Server Application (ELSA)" - (ONGOING)
- Try multicast WebRTC voice conference with HTTP Login and pure Node.js
- Design of "Simple ALP Login Server Application (SALSA)"
- If this works --> try the same with video
- If this works --> try the same with data
- If this simple multicast works with voice + video + data --> finished
- If it fails, try WebRTC + SIP.js with kamailio (or FreeSwitch)
- If multicast does not work at all --> do it with unicast without mixer
- If it does not work without mixer --> look for a mixer
Next step: tinker with X3Dv4
- Develop a Demo Simple Multiuser Scene x) with Working Title "Spaceship Web3D" - tbd.
- SMS-BONES-GPS: Support Standardization of Network Sensor Node (NSN) xx)
- Hence helping to ignite what-I-call SMS Biotope or Extended Universe (Working Title)
A Simple Multiuser Scene is an X3Dv4 xxx) MU Scene, which uses standardized communication protocols to communicate among scene instances and with a server. It uses the X3D Network Sensor Node as one of its nodes to access the network
The Network Sensor Node (NSN) was proposed some time ago. It enables the scene author to define fields with arbitrary names (similar to Script or Prototype nodes). Those fields can be used to send and receive the current value or change requests for some network events and for some network states. Pre-defined calculations can be used on the server side and client side calculations can be autonomously implemented by the scene author to calculate the current value of states and events.
The exact syntax and the protocol for the Network Sensor are still to be defined. S&P-ARK shall help to gain knowledge about the possibilities we have therefore.
X3Dv4 is version 4 of the "Extensible 3D" standard, which is developed at Web3D Consortium.
The acronym SMS-BONES-GPS means, we would like to support the idea of using and/or profiling and/or defining IETF based communication protocols for Mixed Reality multiuser scenes i.e. the goal is to support something we would denote as
- Simple Multiuser Scenes - Based On Network Sensor - Global Protocol Spec
In a first approach, I will bring the documentation of SrrTrains v0.01 project (.odt) to this repository to have it properly licensed
This playground is a GIT repository
The "SMS Biotope" or "Extended Universe" (working titles) has not got a location yet.
- at the directory ALP @ GIT repository
- The Technical Summary: please refer to the Technical Summary @ GIT repository
- The Hobby Reports: please refer to the "Hobby Reports @ GIT repository"
- The ESDP-BS: please refer to the "ESDP-BS @ GIT repository"
- PC.MULTIPLAYER Game and Grasshopper Academy from John C., please refer to "YOTTZUMM @ GIT repository"