The Simplified Futuristic Connectivity Protocol is a networking protocol reusing the
core concepts of the FCP/cjdns
,
but stripping as much complexity as possible from the protocol, to make
it easier to implement -- and entirely documented.
The address space is left unspecified rather than enforced to be fc00::/8 at the protocol level.
The CryptoAuth specification is reuse as-is. I believe it to already be the minimalist design to fulfill its goals.
The Switch Header is changed from this layout:
1 2 3
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0 | |
- Route Label -
4 | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
8 | Congest |S| V |labelShift | Penalty |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
to this one:
1 2 3
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0 | |
- -
4 | |
- Route Label -
8 | |
- +
12 | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
16 | Reserved |S| labelShift | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The Route Label expansion is to deal with horizon limits observed in cjdns/Hyperboria. As a consequence, the labelShift is one bit longer.
Congest and Penalty are removed because they were unused by cjdns. The Reserved bytes must be set to 0x00.
The concept of Encoding Scheme is removed from the protocol, because it was used as a way to deal with horizon limits.