Re: ANN: PyDTLS

Discussion in 'Python' started by rbit, Jan 9, 2013.

  1. rbit

    rbit Guest

    Neal,

    A network protocol that is unreliable (i.e., lacks retransmission of
    dropped packets) and lacks congestion control will certainly never be a
    common, general purpose protocol, due to the amount of work it imposes on
    its user. Implementing an AIMD congestion control algorithm is burdensome
    to an application, and only some use cases (like DNS) won't need congestion
    control. Use of the Datagram Congestion Control Protocol is a potential way
    out for applications, but DCCP (RFC 4340) isn't available on some common
    platforms, like Windows.

    That being said, if you find yourself in the kind of unique situation that
    requires a network protocol with characteristics different from TCP (namely
    prioritizing availability of data over its reliability), and you need
    network security as well, then RFC 6347 is really the only reasonable game
    in town over rolling your own solution.

    The following are some of the main use cases that force applications into
    datagram protocols:

    * Minimizing protocol overhead. TCP has relatively high overhead,
    for example, its 3-way handshake for connection establishment.
    One can see why DNS uses UDP.
    * Real-time data streaming. With this use case, it makes no sense
    to hold arrived data from the application, because prior packets are
    being recovered through retransmission. Such packets should just
    be forgotten about, especially if they fall within the margin of the
    error
    concealment strategy of the application. Any sort of audio and/or
    video
    transmission falls in this category. RTP is usually done over UDP (and
    is an illustrative use case for RFC 6347).
    * Anything that operates below the transport layer (layer 4 of the OSI
    model). Say you're writing a VPN at a virtual Ethernet level,
    transmitting
    Ethernet frames among machines. In that case, protocols that either
    implement reliability (say, HTTP over TCP) or consciously try to avoid
    it (say, RTP over UDP) sit above you, and you would neither want to
    duplicate their reliability functions, nor introduce this unwanted
    behavior, respectively. But you may want security for your VPN.

    I hope this helps.

    Ray


    On Wed, Jan 9, 2013 at 7:08 AM, Neal Becker <> wrote:

    > A bit OT, but the widespread use of rfc 6347 could have a big impact on my
    > work.
    > I wonder if it's likely to see widespread use? What are likely/possible
    > use
    > cases?
    >
    > Thank.
    >
    > --
    > http://mail.python.org/mailman/listinfo/python-list
    >
    rbit, Jan 9, 2013
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. rbit

    Re: ANN: PyDTLS

    rbit, Jan 9, 2013, in forum: Python
    Replies:
    0
    Views:
    132
  2. Guido van Rossum

    Re: ANN: PyDTLS

    Guido van Rossum, Jan 9, 2013, in forum: Python
    Replies:
    0
    Views:
    154
    Guido van Rossum
    Jan 9, 2013
  3. rbit

    Re: ANN: PyDTLS

    rbit, Jan 9, 2013, in forum: Python
    Replies:
    0
    Views:
    140
  4. Neal Becker

    Re: ANN: PyDTLS

    Neal Becker, Jan 9, 2013, in forum: Python
    Replies:
    0
    Views:
    99
    Neal Becker
    Jan 9, 2013
  5. Guido van Rossum

    Re: ANN: PyDTLS

    Guido van Rossum, Jan 9, 2013, in forum: Python
    Replies:
    0
    Views:
    105
    Guido van Rossum
    Jan 9, 2013
Loading...

Share This Page