<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ouroboros/src/lib/tests/CMakeLists.txt, branch 0.4</title>
<subtitle>Ouroboros main repository</subtitle>
<id>http://www.ouroboros.rocks/cgit/ouroboros/atom?h=0.4</id>
<link rel='self' href='http://www.ouroboros.rocks/cgit/ouroboros/atom?h=0.4'/>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/'/>
<updated>2017-01-21T08:55:10Z</updated>
<entry>
<title>lib: Add new version of Resource Information Base</title>
<updated>2017-01-21T08:55:10Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2017-01-20T11:59:17Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=9c92dd66d5e7fab3a3e243abbad9a20b29891fee'/>
<id>urn:sha1:9c92dd66d5e7fab3a3e243abbad9a20b29891fee</id>
<content type='text'>
The new RIB is implemented as a tree with doubly linked nodes (parents
keep a link to each child, each child keeps a link to its parent). An
index is kept in a btree using CRC32 hashes of the path name in the
RIB. Nodes keep an SHA3-256 hash value that is unique for the entire
subtree. This allows quick checks to see if two RIB subtrees are in
sync. The event system for the RIB is based on the event system for
flows (fqueue), but implemented completely in dynamic memory using
linked lists. An initial test is performed for the RIB. This PR does
not modify existing code to use the new RIB.
</content>
</entry>
<entry>
<title>lib: Add B-tree implementation</title>
<updated>2017-01-16T14:53:17Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2017-01-16T12:40:57Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=fac7ffe8ea9f42ebcf67c011c944d165cbab3e3b'/>
<id>urn:sha1:fac7ffe8ea9f42ebcf67c011c944d165cbab3e3b</id>
<content type='text'>
Adds an implementation of B-trees of order k (k children, min fill is
k/2, max fill k - 1). Useful to implement indexes for faster lookups.
</content>
</entry>
<entry>
<title>lib: Add test for crc32 function</title>
<updated>2017-01-15T11:28:21Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2017-01-15T11:28:21Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=164f943bb8af62c343a55d2b3f97c20d06fd7592'/>
<id>urn:sha1:164f943bb8af62c343a55d2b3f97c20d06fd7592</id>
<content type='text'>
</content>
</entry>
<entry>
<title>lib: Add test for SHA-3 function</title>
<updated>2017-01-13T19:32:26Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2017-01-13T19:18:30Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=3ad7ee0c378e528fab7277daa9427eda562f08b4'/>
<id>urn:sha1:3ad7ee0c378e528fab7277daa9427eda562f08b4</id>
<content type='text'>
Test the SHA3 function with known hashes.
</content>
</entry>
<entry>
<title>lib, ipcpd: Add hashtable and PDU Forwarding Function</title>
<updated>2016-12-21T13:54:29Z</updated>
<author>
<name>Sander Vrijders</name>
<email>sander.vrijders@intec.ugent.be</email>
</author>
<published>2016-12-21T13:29:31Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=b814df8ed2939649284533d61eb26c29ed2ab2c8'/>
<id>urn:sha1:b814df8ed2939649284533d61eb26c29ed2ab2c8</id>
<content type='text'>
This adds a hash table that takes 64-bit integers as key and uses
separate chaining on collision. It also adds the PDU Forwarding
Function, which the Flow Manager can use to lookup the fd towards the
next hop. Routing policies will add/update/remove entries in the PFF.
</content>
</entry>
<entry>
<title>lib, ipcpd: removed du_buff and pci</title>
<updated>2016-06-29T14:04:19Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-06-29T13:54:23Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=d85f211d53a0cb35a756d0c44a2b28807eff4e5d'/>
<id>urn:sha1:d85f211d53a0cb35a756d0c44a2b28807eff4e5d</id>
<content type='text'>
Fixes #3
</content>
</entry>
<entry>
<title>lib/test: removed the test for the shm_du_map</title>
<updated>2016-05-09T14:57:47Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-05-09T14:57:47Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=9f401b25899c84e6d0636d848ba8bf8520e64d47'/>
<id>urn:sha1:9f401b25899c84e6d0636d848ba8bf8520e64d47</id>
<content type='text'>
The test had a synchronisation issue. Due to rebuild of the shm_du_map
for random access, there was also a hack in the shm_du_map
specifically to run this test. Because of this hack, the decision was
made to drop this test.
</content>
</entry>
<entry>
<title>build: Cleanup of tests build</title>
<updated>2016-04-01T13:00:56Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-03-31T22:55:23Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=3d859bb9a75932a6cffdd37466d510b479c9aa71'/>
<id>urn:sha1:3d859bb9a75932a6cffdd37466d510b479c9aa71</id>
<content type='text'>
</content>
</entry>
<entry>
<title>lib: Shared Memory</title>
<updated>2016-03-24T19:51:55Z</updated>
<author>
<name>dimitri staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-03-24T19:51:55Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=0dd4526f5c75f23aba886bee2d9850a70aa67ca8'/>
<id>urn:sha1:0dd4526f5c75f23aba886bee2d9850a70aa67ca8</id>
<content type='text'>
Updated tests. Added code to drop a corner case (packet where the tail
PCI would cross the edge of the ring buffer) because solving this very
rare case is not worth the performance hit on the ringbuffer the extra
code would incur. This means the ringbuffer might drop a very small
percentage of packets.
</content>
</entry>
<entry>
<title>lib: shared memory map</title>
<updated>2016-03-19T12:53:52Z</updated>
<author>
<name>Dimitri Staessens</name>
<email>dimitri.staessens@intec.ugent.be</email>
</author>
<published>2016-03-19T12:40:03Z</published>
<link rel='alternate' type='text/html' href='http://www.ouroboros.rocks/cgit/ouroboros/commit/?id=7712e3ea9fc6772b47f593acbe3088cae01c16d2'/>
<id>urn:sha1:7712e3ea9fc6772b47f593acbe3088cae01c16d2</id>
<content type='text'>
The shared memory map will allow passing SDU's between IPCPs
efficiently. It is a single block of managed memory. SDU's are stored
in a shm_du_buff datastructure, which is a list of blocks inside the
shared memory region. The mechanism for passing SDU's is not yet
implemented and could be either within the region or using another
local IPC mechanism.

The following things are configured at compile time:

SHM_FILE_NAME         : the name. Default is "ouroboros_du_map".
SHM_DU_BUFF_BLOCK_SIZE: size of a block inside the shared memory
                        region. Default is the pagesize of the system.
SHM_DU_MAP_SIZE       : the approximate size in bytes of the shared
                        memory map. The actual filesize may differ by
                        a small margin. Default is 4MB.
</content>
</entry>
</feed>
