<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ouroboros/src/ipcpd/normal/CMakeLists.txt, branch 0.7</title>
<subtitle>Ouroboros main repository</subtitle>
<id>http://www.ouroboros.rocks/cgit/ouroboros/atom?h=0.7</id>
<link rel='self' href='http://www.ouroboros.rocks/cgit/ouroboros/atom?h=0.7'/>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/'/>
<updated>2017-10-14T11:19:10Z</updated>
<entry>
<title>lib: Deprecate ouroboros_init and ourboros_fini</title>
<updated>2017-10-14T11:19:10Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@ugent.be</email>
</author>
<published>2017-10-12T00:15:39Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=bedd1d4eadde9ab64f924c69eba716b015599e67'/>
<id>urn:sha1:bedd1d4eadde9ab64f924c69eba716b015599e67</id>
<content type='text'>
This commit deprecates ouroboros_init and ouroboros_fini and adds them
as a constructor or destructor, causing these function to be run
automatically when a program that links to the library calls and exits
main(). For this to fully work, the library had to be split so that we
can avoid the irmd calling these functions (the IRMd has to create the
shm structures on which these calls depend).

The library is split in 3 parts: libouroboros-dev, libouroboros-irm
and libouroboros-common. The latter is linked to the other two so that
including libouroboros-dev or libouroboros-irm will also link
libouroboros-common.
</content>
</entry>
<entry>
<title>ipcpd: normal: Add alternate hop PFF</title>
<updated>2017-09-21T14:55:31Z</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@ugent.be</email>
</author>
<published>2017-09-21T12:26:51Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=f6071ecf0cd3768eaed9a847f676433c120ea89e'/>
<id>urn:sha1:f6071ecf0cd3768eaed9a847f676433c120ea89e</id>
<content type='text'>
This adds a PFF that returns an alternate hop as next hop in case the
hop that would have been returned is down.
</content>
</entry>
<entry>
<title>ipcpd: normal: Make PFF policy-based</title>
<updated>2017-09-20T12:16:34Z</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@ugent.be</email>
</author>
<published>2017-09-20T11:56:17Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=2c7e3030edb84abae14042f7a1a22b44255324be'/>
<id>urn:sha1:2c7e3030edb84abae14042f7a1a22b44255324be</id>
<content type='text'>
This turns the PDU Forwarding Function of the IPCP into a policy. For
now only the simple PFF policy is available.
</content>
</entry>
<entry>
<title>ipcpd: Revise internals of normal IPCP</title>
<updated>2017-09-12T14:33:26Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@ugent.be</email>
</author>
<published>2017-09-09T11:50:47Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=45c6615484ffe347654c34decb72ff1ef9bde0f3'/>
<id>urn:sha1:45c6615484ffe347654c34decb72ff1ef9bde0f3</id>
<content type='text'>
This removes the RIB as a datastructure and CDAP as the protocol
between IPCPs. CDAP, the rib and related sources are deprecated. The
link-state protocol policy is udpated to use its own protocol based on
a simple broadcast strategy along a tree. The neighbors struct is
deprecated and moved to the library as a generic notifier component.
</content>
</entry>
<entry>
<title>ipcpd: Deprecate gam as autonomous component</title>
<updated>2017-08-28T13:24:16Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@ugent.be</email>
</author>
<published>2017-08-25T15:19:17Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=176698e8c2fd7ab8007b8074515d6144e7177d8e'/>
<id>urn:sha1:176698e8c2fd7ab8007b8074515d6144e7177d8e</id>
<content type='text'>
The graph adjacency manager has been deprecated in favor of providing
an external interface into the connectivity manager so that
adjacencies can be controlled from the command line, user scripts or
user applications.

The gam and its associated policies were removed from the normal IPCP
and the IRM configuration tools. The "/members" part of the RIB was
deprecated. Removal of the gam means that initial connectivity based
on changes in the RIB can't be provided, so some changes were
required throughout the normal IPCP.

The enrollment procedure was revised to establish its own
connectivity. First, it gets boot information from a peer by
establishing a connection to the remote enrollment component and
downloading the IPCP configuratoin. This is now done using its own
protocol buffers message in anticipation of deprecation of the RIB and
CDAP for communication within a DIF.

After the boot information is downloaded, it establishes a data
transfer flow for enrolling the directory (DHT). After the DHT has
enrolled, it signals the peer to that enrollment is done, and the data
transfer connection is torn down.

Signaling connections is done via the nbs struct, which is now passed
to the connmgr, which enables control of the connectivity graph from
external sources.
</content>
</entry>
<entry>
<title>build: Revise the build system</title>
<updated>2017-08-21T08:25:19Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@ugent.be</email>
</author>
<published>2017-08-18T13:56:55Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=8f58e5a3ec0e4a15fc8ae0911cc864f5dbf86c6e'/>
<id>urn:sha1:8f58e5a3ec0e4a15fc8ae0911cc864f5dbf86c6e</id>
<content type='text'>
This revises the build system to have configuration per system
component. System settings can now be set using cmake.

The standard compliance defines were removed from configuration header
and are set in the sources where needed. Also some small code
refactors, such as moving the data for shims out of the ipcp structure
to the respective shims were performed.
</content>
</entry>
<entry>
<title>ipcpd: Add DHT as directory in normal IPCP</title>
<updated>2017-07-18T11:03:05Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@ugent.be</email>
</author>
<published>2017-07-13T07:43:09Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=6e739b09bef860a4830328630ea07622bdd79d79'/>
<id>urn:sha1:6e739b09bef860a4830328630ea07622bdd79d79</id>
<content type='text'>
This implements a Distributed Hash Table (DHT) based on the Kademlia
protocol, with default parameters set as used in the BitTorrent
Mainline DHT. This initial implementation is almost feature complete,
except for some things to be done after a testing period: caching and
stale peer bumping, and setting the expiration timeout via the IRM
tool.
</content>
</entry>
<entry>
<title>ipcpd: normal: Make routing a policy</title>
<updated>2017-05-15T16:21:45Z</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@ugent.be</email>
</author>
<published>2017-05-15T16:08:53Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=5d87cec1757c4e1c23ae778f2814363c1e39b43c'/>
<id>urn:sha1:5d87cec1757c4e1c23ae778f2814363c1e39b43c</id>
<content type='text'>
This makes the routing component into a policy since different
approaches may exist to do this, depending on how high the rank of the
DIF is.
</content>
</entry>
<entry>
<title>ipcpd: Remove FRCT from normal IPCP</title>
<updated>2017-05-10T15:03:08Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@ugent.be</email>
</author>
<published>2017-05-10T14:39:58Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=c75f20d2ef73b0193e75fa59c4679be713a342c7'/>
<id>urn:sha1:c75f20d2ef73b0193e75fa59c4679be713a342c7</id>
<content type='text'>
In order to ensure 100% reliable transfer, the protocol state machine
that takes care of retransmission and SDU ordering has to be in the
application. Flow allocation in the normal now uses fds. The PDU_type
field was deprecated and AE's within the DIF can use reserved fds.
</content>
</entry>
<entry>
<title>ipcpd: normal: Split connection establishment</title>
<updated>2017-04-28T11:08:17Z</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@ugent.be</email>
</author>
<published>2017-04-27T17:13:29Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=9177b0f3f72203cb6e18ee59c98b531a698d7f19'/>
<id>urn:sha1:9177b0f3f72203cb6e18ee59c98b531a698d7f19</id>
<content type='text'>
Connection establishment was done at the same time as flow
allocation. This splits it more cleanly, and allows to re-use the DT
AE for other purposes.
</content>
</entry>
</feed>
