Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #36515

Re: ANN: PyDTLS

Path csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!news.albasani.net!newsfeed.freenet.ag!news2.euro.net!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail
Return-Path <ray@liquibits.com>
X-Original-To python-list@python.org
Delivered-To python-list@mail.python.org
X-Spam-Status OK 0.013
X-Spam-Evidence '*H*': 0.97; '*S*': 0.00; 'algorithm': 0.03; 'level,': 0.07; 'subject:ANN': 0.07; 'behavior,': 0.09; 'machines.': 0.09; 'rfc': 0.09; 'cc:addr:python-list': 0.10; 'received:74.125.82.44': 0.15; '(like': 0.15; 'cases': 0.15; 'arrived': 0.16; 'consciously': 0.16; 'frames': 0.16; 'handshake': 0.16; 'helps.': 0.16; 'margin': 0.16; 'prioritizing': 0.16; 'tcp': 0.16; 'vpn': 0.16; '\xa0what': 0.16; 'wed,': 0.16; 'wrote:': 0.17; 'certainly': 0.17; 'duplicate': 0.17; 'implementing': 0.17; 'jan': 0.18; 'solution.': 0.18; 'email addr:gmail.com&gt;': 0.20; 'sort': 0.21; 'bit': 0.21; 'dropped': 0.22; 'http': 0.22; 'cc:2**0': 0.23; 'work.': 0.23; '(i.e.,': 0.23; 'user.': 0.23; 'cc:addr:python.org': 0.25; 'header:In-Reply-To:1': 0.25; 'common': 0.26; 'am,': 0.27; 'wonder': 0.27; 'message- id:@mail.gmail.com': 0.27; 'falls': 0.29; 'protocols': 0.29; 'ray': 0.29; 'use?': 0.29; 'url:mailman': 0.29; 'case,': 0.29; 'connection': 0.30; 'usually': 0.30; 'error': 0.30; 'sense': 0.31; '(and': 0.32; 'implement': 0.32; 'url:python': 0.32; 'could': 0.32; 'url:listinfo': 0.32; 'received:74.125.82': 0.33; 'real- time': 0.33; 'likely': 0.33; 'received:google.com': 0.34; 'done': 0.34; 'platforms,': 0.35; 'protocol': 0.35; 'said,': 0.35; 'especially': 0.35; "won't": 0.35; 'really': 0.36; 'but': 0.36; 'received:74.125': 0.36; 'url:org': 0.36; 'anything': 0.36; 'should': 0.36; 'uses': 0.37; 'being': 0.37; 'why': 0.37; 'virtual': 0.37; 'data': 0.37; 'subject:: ': 0.38; 'some': 0.38; 'header:Received:5': 0.40; 'url:mail': 0.40; 'your': 0.60; 'high': 0.61; 'kind': 0.61; 'relatively': 0.62; 'situation': 0.62; 'town': 0.62; 'different': 0.63; 'within': 0.64; 'strategy': 0.64; 'video': 0.65; 'sit': 0.65; 'due': 0.66; 'yourself': 0.77; 'introduce': 0.80; '2013': 0.84; 'about,': 0.84; 'burdensome': 0.84; 'category.': 0.84; 'common,': 0.84; 'congestion': 0.84; 'overhead,': 0.84; 'transmitting': 0.84; '\xa0\xa0\xa0\xa0\xa0': 0.84; 'forgotten': 0.91; 'widespread': 0.91
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=liquibits.com; s=google; h=mime-version:sender:x-originating-ip:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=Na1sICH9TPbcPskQgeUKtTNe1J+aSFnyHcwpUDGdTIg=; b=e7amujqCz4ygP/TUb/3ZMMTGL+Y3b45S0LxKblxy2cu+igaleubEfXEnsGC4DRSLrv 3CaSu46rjz3FEotIsGSeyQl5gE1aBUGQGXNd5F7Y2h3yFf/gA4K+8kctDawf2U+WytOO vnAxQ10TyNRZzYsKvdVJrrG5pIRxIwOOfmIfQ=
X-Google-DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:sender:x-originating-ip:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :x-gm-message-state; bh=Na1sICH9TPbcPskQgeUKtTNe1J+aSFnyHcwpUDGdTIg=; b=k3HUZNESY/JE8yxHa9Ce6jF1xNdPZ/pea2Q/3IUO8yFhXTQdh+awpi2rBaY8+p8GIw ppIllmOtNyxLuzOxQlGKUDfqJXEeWl4lrJ1up3TsDKdBMjLMB4BL2bFgG8WL10wyv49C swZKxBt4BmB5n3N4gOEVJwAES/7Pl8P9/jmM8Iu8UMVW8iyOT9awZLfxvBUfaOz8JEL2 ID0Dy91uoQV0GQAhuU+jQYgt7gq9Yp+6BXaJGwt7pDDmLMR0FVeHOxocsMzQPhoCpGos BZOUR0Sses2BrkPNHtGco2ujtKnKeCrnR4OsLyoGxhmZiWyalR1ps98abilVyf9F6VmP 7dkw==
MIME-Version 1.0
Sender ray@liquibits.com
X-Originating-IP [76.104.190.126]
In-Reply-To <kck14q$mjl$1@ger.gmane.org>
References <CAAvW-fYH_n732uH4xEdQo_9RjHJM3Z4EiY-Bnu=_Drq37RgB8A@mail.gmail.com> <CAP7+vJ+Wop13D3qZ2Un6p1F-Oecjahc7dE2SgndtmcoOc1m5mg@mail.gmail.com> <kck14q$mjl$1@ger.gmane.org>
Date Wed, 9 Jan 2013 12:04:41 -0800
X-Google-Sender-Auth Ga9QYoVYCXIqRWw8HSHKhXIL6G0
Subject Re: ANN: PyDTLS
From rbit <py@liquibits.com>
To Neal Becker <ndbecker2@gmail.com>
Content-Type multipart/alternative; boundary=f46d044306acabf0b304d2e0920e
X-Gm-Message-State ALoCoQnjhgHJjFik1zNTXMb2gTBaLfoU43EFimrZnwXZnepHMWVSQeqchK91b4xsbb4TTcOymtbf
Cc "python-list@python.org" <python-list@python.org>
X-BeenThere python-list@python.org
X-Mailman-Version 2.1.15
Precedence list
List-Id General discussion list for the Python programming language <python-list.python.org>
List-Unsubscribe <http://mail.python.org/mailman/options/python-list>, <mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-list/>
List-Post <mailto:python-list@python.org>
List-Help <mailto:python-list-request@python.org?subject=help>
List-Subscribe <http://mail.python.org/mailman/listinfo/python-list>, <mailto:python-list-request@python.org?subject=subscribe>
Newsgroups comp.lang.python
Message-ID <mailman.336.1357761889.2939.python-list@python.org> (permalink)
Lines 126
NNTP-Posting-Host 2001:888:2000:d::a6
X-Trace 1357761889 news.xs4all.nl 6879 [2001:888:2000:d::a6]:54173
X-Complaints-To abuse@xs4all.nl
Xref csiph.com comp.lang.python:36515

Show key headers only | View raw


[Multipart message — attachments visible in raw view] - view raw

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 <ndbecker2@gmail.com> 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
>

Back to comp.lang.python | Previous | Next | Find similar | Unroll thread


Thread

Re: ANN: PyDTLS rbit <py@liquibits.com> - 2013-01-09 12:04 -0800

csiph-web