DIGITS / S&P-ARK / ALPES
Distributed Internet Geographic Infrastructure Transmission Service (DIGITS)
Simple Playground - Achieving Required Knowledge (S&P-ARK)
Application Layer Protocol, Experimental Setup (ALPES)
The Vision
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.
This should change with the invention of HTML (and its extensions CSS and JavaScript), when the Internet became to be the “World Wide Web (WWW)”.
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.
Metaphoric speech:
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.
Latest Achievements
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.
Puchberg, 2022-06-11
Statements
Following statements are intended to hold true for this repository
1. S&P-ARK, The Project
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
1.1. Now (2022-03-24) the "Template" Project is actually started
with following TODO List
Phase 0 - Telling Stories / Collecting Information (DONE)
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 (3) - The tool will have browser based clients, implemented in HTML and JavaScript
- 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 (6) - Using HTML and JavaScript will be a preparation for tinkering with X3Dv4
- 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)
Phase 1 - Open Source Conferencing Tool (ONGOING)
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
2. Everlasting Statements (last modified on 2019-07-23)
2.1. The GOALs of this project can be described as follows
- 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)
x)
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
xx)
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.
xxx)
X3Dv4 is version 4 of the "Extensible 3D" standard, which is developed at
Web3D Consortium.
xxxx)
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
2.2. The content of this repository is licensed by a GPL
3. Other Statements
Statement on 2017-12-02 by Christoph Valentin
In a first approach, I will bring the documentation of SrrTrains v0.01 project (.odt) to this repository to have it properly licensed
4. Links
This playground is a GIT repository
The "SMS Biotope" or "Extended Universe" (working titles) has not got a location yet.
Write an E-MAIL to SrrTrains Core Team - LINK BROKEN!!!
4.1. OUTPUT of the Playground
4.1.1. Your Output Missing Here
4.1.2. DRAFT for the Application Layer Protocol (ALP) over RTP
- at the directory ALP @ GIT repository
4.2. INPUT
4.2.1. Your Input Missing Here
4.2.2. Input from SrrTrains v0.01
- The Technical Summary: please refer to the Technical Summary @ GIT repository
- The Hobby Reports: please refer to the "Hobby Reports @ GIT repository"
4.2.3. Input from Protocol Brainstorming
- The ESDP-BS: please refer to the "ESDP-BS @ GIT repository"
4.2.4. Input from John C.
- PC.MULTIPLAYER Game and Grasshopper Academy from John C., please refer to "YOTTZUMM @ GIT repository"