DCCP? TFRC? - TCP-IP

This is a discussion on DCCP? TFRC? - TCP-IP ; Dear *, hope this is not a FAQ... I searched the FAQ and old posts and I did not find an answer, so... I have two (related) questions 1) I need to transmit data between two computers. I do not ...

+ Reply to Thread
Results 1 to 4 of 4

Thread: DCCP? TFRC?

  1. DCCP? TFRC?

    Dear *,
    hope this is not a FAQ... I searched the FAQ and old posts and I did
    not find an answer, so...

    I have two (related) questions

    1) I need to transmit data between two computers. I do not need
    stricti reliability, but I need rate control. I discovered the
    existence of DCCP (Datagram Congestion Control Protocol, RFC 4340,
    March 2006) which would suite my needs, but it is not clear to me how
    much is adopted. I was only able to find out that htere is an
    implementation in Linux kernel 2.6.x. What about other OS?

    2) As a backup solution, I thought implementing TFRC (TCP Friendly
    Rate Control, RFC 3448) [employed by DCCP (RFC 4342)] on top of UDP.
    (I am not really in a rush and since I do this as a hobby, it could
    also be fun...) However, I am wondering how to test it. More
    precisely, I do not know how to construct a "test suit" for my code.
    Any idea?

  2. Re: DCCP? TFRC?

    On 2008-04-18 12:58:56 -0400, mockturtle said:

    > 1) I need to transmit data between two computers. I do not need
    > stricti reliability, but I need rate control. I discovered the
    > existence of DCCP (Datagram Congestion Control Protocol, RFC 4340,
    > March 2006) which would suite my needs, but it is not clear to me how
    > much is adopted. I was only able to find out that htere is an
    > implementation in Linux kernel 2.6.x. What about other OS?


    Warning - I don't possess a direct answer to your query, sorry.

    I'm curious though, are you looking at DCCP for rate control to police
    your own application set, or another reason?

    /dmfh

    --
    _ __ _
    __| |_ __ / _| |_ 01100100 01101101
    / _` | ' \| _| ' \ 01100110 01101000
    \__,_|_|_|_|_| |_||_| dmfh(-2)dmfh.cx


  3. Re: DCCP? TFRC?

    On Apr 22, 7:54*pm, Digital Mercenary For Honor
    wrote:
    > On 2008-04-18 12:58:56 -0400, mockturtle said:
    >
    > > 1) I need to transmit data between two computers. *I do not need
    > > stricti reliability, but I need rate control. *I discovered the
    > > existence of DCCP (Datagram Congestion Control Protocol, RFC 4340,
    > > March 2006) which would suite my needs, but it is not clear to me how
    > > much is adopted. *I was only able to find out that htere is an
    > > implementation in Linux kernel 2.6.x. *What about other OS?

    >
    > Warning - I don't possess a direct answer to your query, sorry.
    >
    > I'm curious though, are you looking at DCCP for rate control to police
    > your own application set, or another reason?
    >


    Hmmm... both I would say. Everything is still in a embryonic stage,
    but if
    we manage to complete our application and it becomes popular (what an
    "if"...), I would be disappointed if it takes down the whole Internet
    by drowing it in
    UPD packets... ;-)

    Another reason is that I suspect (I did not chek it, though)
    that the remote end will experience a better quality if I do rate
    control (maybe
    by dropping the least important packets) rather than gushing out
    packets
    and let some router drop them at random. Finally, there is some
    intellectual
    curiosity.. :-)

    > /dmfh
    >
    > --
    > * * _ * * * *__ _
    > *__| |_ __ */ _| |_ * * * * * * 01100100 01101101
    > / _` | ' *\| *_| ' \ * * * * * *01100110 01101000
    > \__,_|_|_|_|_| |_||_| * * * * * *dmfh(-2)dmfh.cx



  4. Re: DCCP? TFRC?

    On 2008-04-22 16:19:17 -0400, mockturtle said:

    > we manage to complete our application and it becomes popular (what an
    > "if"...), I would be disappointed if it takes down the whole Internet
    > by drowing it in
    > UPD packets... ;-)


    I was very curious as to the "why" of your project as I asked because
    it's the first time in a while I've seen a developer / programmer come
    out and say "Hey, I want to rate limit myself." - the de facto position
    I hear most commonly is the assumption that the network is an "infinite
    pipe" and routers "do things" to take care of congestion. (*ugh*)

    A lot of my experience comes from the investment banking industry,
    where we do high-rate multicast transmission (in UDP or other custom
    protocols layered inside of UDP or a totally other IP protocol) to
    disseminate market data, which is now approaching rates up to 10Gbps.
    Some of the UDP protocols and layers inside them don't feature any flow
    control, so a retransmission on the application layer causes a series
    of cascading failures as the retransmits (not TCP, mind you) flood the
    multicast groups and consume more bandwidth than actual live data.
    Router-based QoS and anything on the "network side" I could do to
    prevent this doesn't help, as, like you said, I'm dropping packets
    there insensitive to their importance to the application.

    I applaud your approach! Let us know how it goes, please!

    /dmfh

    --
    _ __ _
    __| |_ __ / _| |_ 01100100 01101101
    / _` | ' \| _| ' \ 01100110 01101000
    \__,_|_|_|_|_| |_||_| dmfh(-2)dmfh.cx


+ Reply to Thread