Menu [hide]

Forum: DCCP-TP

Forums->DCCP-TP->Units

ckoliver
Units


Hi Tom,
what unit are using for representing bit rates (for xBps, xAllowed and so on)? Megabits, Megabytes?
Thanks in advance,
Cristian

 
on: Thu 13 of Aug, 2009 [18:15 UTC] reads: 1486

Posted messages

author message
trphelan
Re: Units
on: Thu 13 of Aug, 2009 [19:40 UTC]
Hi Cristian,

The code uses 64-bit fixed point math and can represent numbers between + or minus 9 billion with 9 decimal places (actual range is 9,223,372,036.854775807 to -9,223,372,036.854775807), so bit rates are in bits/second, without scaling.

See http://www.phelan-4.com/dccp-tp/dccp-tp-r0.10/core/ccid3/fixedPointMath.c.

Tom P.

> Hi Tom,
> what unit are using for representing bit rates (for xBps, xAllowed and so on)? Megabits, Megabytes?
> Thanks in advance,
> Cristian


author message
ckoliver
Re: Units
on: Tue 25 of Aug, 2009 [01:41 UTC]
Hi Tom,
sorry if the answers for my questions are too trivial.
I coded a video server and client using DCCP/CCID3. The videoserver sends about 53,000 packets to the videoclient.
The video is transmitted perfectly... but I have doubts about the rate control mechanism.
I changed ccid3SenderRcvAckblePacket function (ccid3Sender.c) to dumpInfo in the end:

static int ccid3SenderRcvAckblePacket(dctpSocket *sock, dctpPacket *pkt) {
ccid3SenderInfo *info = sock->ccidSenderInfo;
fixedp now, wInit;
...
checkForXmits(sock);
dumpInfo(info,now, "from");
return(0);
}
However, the values were printed just once, as soon I started the videoserver. Then, ccid3SenderRcvAckblePacket is called just once, isn't? The function shouldn't be called several times during the transmission?
ckoliver@polentao lprocess$ ./dccp-tp &
1 10349
ckoliver@polentao lprocess$ dccp-tp: -1208968480: main: dccp-tp running attached
videoclient -a 200.233.27.213 1>>trash2 2>>trash1
dccp-tp: -1240441968: addFeatures: changing local 1:CCID
dccp-tp: -1240441968: addFeatures: changing local 6:Send Ack Vector
dccp-tp: -1240441968: addFeatures: changing remote 1:CCID
dccp-tp: -1240441968: addFeatures: changing remote 6:Send Ack Vector
dccp-tp: -1219462256: ccid3SenderOpen: opening CCID3 for client
dccp-tp: -1219462256: ccid3RcvrOpen: opening CCID3 for client
dccp-tp: -1219462256: addFeatures: confirming local 1:CCID
dccp-tp: -1219462256: addFeatures: confirming local 6:Send Ack Vector
dccp-tp: -1219462256: addFeatures: confirming remote 1:CCID
dccp-tp: -1219462256: addFeatures: confirming remote 6:Send Ack Vector
dccp-tp: -1219462256: from: server = 0
dccp-tp: -1219462256: from: tIpi = 0.5
dccp-tp: -1219462256: from: segSize = 1422.0
dccp-tp: -1219462256: from: xInst = 0.0
dccp-tp: -1219462256: from: rttSamp = 0.0
dccp-tp: -1219462256: from: rtt = 0.5
dccp-tp: -1219462256: from: p = 0.0
dccp-tp: -1219462256: from: xBps = 0.0
dccp-tp: -1219462256: from: xAllowed = 2844.0
dccp-tp: -1219462256: from: int 0, start 0, end 0, dataLen 0
dccp-tp: -1219462256: from: int 1, start 0, end 0, dataLen 0
dccp-tp: -1219462256: from: int 2, start 0, end 0, dataLen 0
dccp-tp: -1219462256: from: int 3, start 0, end 0, dataLen 0
dccp-tp: -1219462256: from: int 4, start 0, end 0, dataLen 0
dccp-tp: -1219462256: from: int 5, start 0, end 0, dataLen 0
dccp-tp: -1219462256: from: int 6, start 0, end 0, dataLen 0
dccp-tp: -1219462256: from: int 7, start 0, end 0, dataLen 0
dccp-tp: -1208972400: dispatchTimer: new timer worker 0x8e907f0
ckoliver@polentao lprocess$

Besides, note that xAllowed is just around 2kbps (that's the reazon for asking about its unit)...
By the way, who does really adjust the sender rate to xAllowed? And how (delaying the sender by sleeping?)?
Thanks in advance,
Cristian




author message
trphelan
Re: Units
on: Tue 25 of Aug, 2009 [15:33 UTC]
Hi Cristian,

I'm traveling this week so it'll be difficult for me to look at this right now. It does look a little weird. I'll take a closer look next week and get back to you.

Tom P.

> Hi Tom,
> what unit are using for representing bit rates (for xBps, xAllowed and so on)? Megabits, Megabytes?
> Thanks in advance,
> Cristian


author message
ckoliver
Re: Units
on: Tue 25 of Aug, 2009 [16:42 UTC]
OK Tom!
Thank you very much!
Cristian


author message
ckoliver
Re: Units
on: Fri 11 of Sep, 2009 [15:28 UTC]
Hi Tom,
Sorry for my mistake!
In fact, the initial rate is 2844.0 bps. It is halfed until reaching the minimum rate of 21.875 bps, maintaining that value.
I believe CCID-2 is more appropriate for my application.
Thank you very much!
Cristian
ckoliver@polentao lprocess$ more trash1
xAllowed = 2844.0
ccid3: got slow receiver
ccid3: got slow receiver
xAllowed = 2844.0
ccid3: got slow receiver
ccid3: got slow receiver
xAllowed = 2844.0
ccid3: got slow receiver
ccid3: got slow receiver
xAllowed = 2844.0
ccid3: got slow receiver
ccid3: got slow receiver
xAllowed = 2844.0
ccid3: got slow receiver
ccid3: got slow receiver
xAllowed = 1422.0
ccid3: got slow receiver
ccid3: got slow receiver
xAllowed = 711.0
ccid3: got slow receiver
ccid3: got slow receiver
xAllowed = 355.5
ccid3: got slow receiver
ccid3: got slow receiver
xAllowed = 177.75
ccid3: got slow receiver
ccid3: got slow receiver
xAllowed = 88.875
ccid3: got slow receiver
ccid3: got slow receiver
xAllowed = 44.4375
ccid3: got slow receiver
ccid3: got slow receiver
xAllowed = 22.21875
ccid3: got slow receiver
ccid3: got slow receiver
xAllowed = 21.875
ccid3: got slow receiver
ccid3: got slow receiver
xAllowed = 21.875
...




Show posts: