Daniel Willmann
9c623892f5
llc: Calculate the average queuing delay of the LLC queues
...
Use a formula like it is used with TCP. This can help to make
decisions about if frames should be dropped or not at the time
we enqueue them.
This code will store two timeval structs in fron the of the
actual data and compute the average at the time of the dequeue.
2013-12-25 14:55:04 +01:00
Holger Hans Peter Freyther
a42b2ad5ed
llc: Initialize the LLC frame with garbage to detect wrong usage
2013-12-25 14:27:07 +01:00
Holger Hans Peter Freyther
550bb88a9e
llc: Count the number of frames queued inside the LLC queue
2013-12-18 12:11:27 +01:00
Holger Hans Peter Freyther
5a7f636ce4
llc: FIx a typo in the message
2013-11-21 21:59:32 +01:00
Holger Hans Peter Freyther
6058220d2a
types: Add a simple testcase for basic types and fix the LLC code
...
* Make append_data, remaining_space and fits_in_current.. work
on m_length and not the index. This ways things can't overflow.
* The current API consumer was moving the m_index so it should have
worked okay.
2013-11-21 21:30:23 +01:00
Holger Hans Peter Freyther
b1302b083e
llc: Move the decision if a frame has expired into the LLC
...
This way the generation of the expiry information and the check
is at the same place. This should make reading the code more easy.
2013-11-13 17:16:28 +01:00
Holger Hans Peter Freyther
32f9a59ab4
llc: Make the index 'private' by appending a m_ to it.
...
At some point in the future we can start using the private/protected
keywords in this struct.
2013-11-13 17:14:42 +01:00
Holger Hans Peter Freyther
e23102602c
llc: Move some more secrets from the TBF into the LLC
...
Introduce a method to append data to a TBF and then reset the
read pointer when the frame has been sent.
2013-11-13 17:08:07 +01:00
Holger Hans Peter Freyther
b3d5ee2934
bts: Count the number of llc frames that were "scheduled" to be sent
...
This does not mean that they have been successfully transferred
to the SGSN/MS but at least that they have reached a certain point
in the message flow.
2013-11-13 16:43:26 +01:00
Holger Hans Peter Freyther
51e093bd1c
llc: Use timeradd and timercmp and fix for < 1s PDU llc timeouts
2013-11-13 15:35:45 +01:00
Holger Hans Peter Freyther
985fd114f2
llc: Change the flow. Exit early for the special case and initialize the tv
2013-11-13 15:19:39 +01:00
Holger Hans Peter Freyther
fce431cf3a
llc: Move the timeout calculation into the TBF
2013-11-13 15:17:12 +01:00
Holger Hans Peter Freyther
857281f7ff
llc: Remove one of the two variants to put data into the frame
2013-11-13 14:58:19 +01:00
Holger Hans Peter Freyther
acb5427bda
llc: Move all direct accesses to the frame into the llc structure
...
Add some todo items where we could add assertions now that I see
the constraints and invariants of this code.
2013-11-07 08:15:58 +01:00
Holger Hans Peter Freyther
096f6f9f39
llc: Move the llc code out of the tbf.cpp into a new dedicated one
2013-11-07 07:21:06 +01:00