Show
Ignore:
Timestamp:
05/27/2008 09:03:51 PM (6 months ago)
Author:
dave
Message:

rebuild html files.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • dotorg/trunk/html/beps/bep_0001.html

    r11103 r11107  
     1<?xml version="1.0" encoding="utf-8" ?> 
     2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
     3<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
     4<head> 
     5<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
     6<meta name="generator" content="Docutils 0.5: http://docutils.sourceforge.net/" /> 
     7<title></title> 
     8<link rel="stylesheet" href="../css/bep.css" type="text/css" /> 
     9</head> 
     10<body> 
     11<div class="document"> 
     12 
     13<div id="upper" class="clear"> 
     14<div id="wrap"> 
     15<div id="header"> 
     16<h1><a href="../index.html">BitTorrent<span>.org</span></a></h1> 
     17</div> 
     18<div id="nav"> 
     19<ul> 
     20<li><a href="../index.html">Home</a></li> 
     21<li><a href="../introduction.html">For Users</a></li> 
     22<li><a href="bep_0000.html"><span>For Developers</span></a></li> 
     23<!-- <li><a href="./blog">Blog</a></li> --> 
     24<li><a href="http://forum.bittorrent.org"> Forums </li> 
     25<li><a href="../donate.html">Donate!</a></li> 
     26</ul> 
     27</div> <!-- nav --> 
     28<!-- ### Begin Content ### --> 
     29<div id="second"> 
     30 
     31 
     32 
     33<table class="rfc2822 docutils field-list" frame="void" rules="none"> 
     34<col class="field-name" /> 
     35<col class="field-body" /> 
     36<tbody valign="top"> 
     37<tr class="field"><th class="field-name">BEP:</th><td class="field-body">1</td> 
     38</tr> 
     39<tr class="field"><th class="field-name">Title:</th><td class="field-body">The BitTorrent Enhancement Proposal Process</td> 
     40</tr> 
     41<tr class="field"><th class="field-name">Version:</th><td class="field-body">11054</td> 
     42</tr> 
     43<tr class="field"><th class="field-name">Last-Modified:</th><td class="field-body"><a class="reference external" href="http://bittorrent.org/trac/browser/dotorg/trunk/html/beps/bep_0001.rst">2008-05-02 20:19:03 -0700 (Fri, 02 May 2008)</a></td> 
     44</tr> 
     45<tr class="field"><th class="field-name">Author:</th><td class="field-body">David Harrison &lt;dave&#32;&#97;t&#32;bittorrent.com&gt;</td> 
     46</tr> 
     47<tr class="field"><th class="field-name">Status:</th><td class="field-body">Active</td> 
     48</tr> 
     49<tr class="field"><th class="field-name">Type:</th><td class="field-body">Process</td> 
     50</tr> 
     51<tr class="field"><th class="field-name">Created:</th><td class="field-body">10-Jan-2008</td> 
     52</tr> 
     53<tr class="field"><th class="field-name">Post-History:</th><td class="field-body"></td> 
     54</tr> 
     55</tbody> 
     56</table> 
     57<hr /> 
     58<div class="contents topic" id="contents"> 
     59<p class="topic-title first">Contents</p> 
     60<ul class="simple"> 
     61<li><a class="reference internal" href="#what-is-a-bep" id="id3">What is a BEP</a></li> 
     62<li><a class="reference internal" href="#bep-types" id="id4">BEP Types</a></li> 
     63<li><a class="reference internal" href="#bep-work-flow" id="id5">BEP Work Flow</a></li> 
     64<li><a class="reference internal" href="#intellectual-property-and-bittorrent-standards" id="id6">Intellectual Property and BitTorrent Standards</a></li> 
     65<li><a class="reference internal" href="#history" id="id7">History</a></li> 
     66<li><a class="reference internal" href="#acknowledgements" id="id8">Acknowledgements</a></li> 
     67<li><a class="reference internal" href="#references-and-footnotes" id="id9">References and Footnotes</a></li> 
     68<li><a class="reference internal" href="#copyright" id="id10">Copyright</a></li> 
     69</ul> 
     70</div> 
     71<div class="section" id="what-is-a-bep"> 
     72<h1>What is a BEP</h1> 
     73<p>BEP stands for BitTorrent Enhancement Proposal.  A BEP is a design 
     74document providing information to the BitTorrent community, or 
     75describing a new feature for the BitTorrent protocols. The BEP should 
     76provide a concise technical specification of the feature and a 
     77rationale for the feature.</p> 
     78<p>We intend BEPs to be the primary mechanisms for proposing new 
     79features, for collecting community input on an issue, and for 
     80documenting the design decisions that have gone into BitTorrent. The BEP 
     81author is responsible for building consensus within the community and 
     82documenting dissenting opinions.</p> 
     83<p>Because the BEPs are maintained as reStructured text files in a versioned 
     84repository, their revision history is the historical record of the 
     85feature proposal <a class="footnote-reference" href="#svn" id="id1">[1]</a>.</p> 
     86</div> 
     87<div class="section" id="bep-types"> 
     88<h1>BEP Types</h1> 
     89<p>There are three kinds of BEP:</p> 
     90<blockquote> 
     91<ol class="arabic simple"> 
     92<li>A Standards Track BEP describes an extension to one of the BitTorrent 
     93protocols or a change in the behavior of one of the actors in these 
     94protocols, where the actors are currently clients, trackers, and web 
     95servers.</li> 
     96<li>An Informational BEP describes a BitTorrent design issue, or 
     97provides general guidelines or information to the BitTorrent 
     98community, but does not propose an extension. Informational BEPs 
     99do not necessarily represent a BitTorrent community consensus or 
     100recommendation, so users and implementors are free to ignore 
     101Informational BEPs or follow their advice.</li> 
     102<li>A Process BEP describes a process surrounding BitTorrent, or 
     103proposes a change to (or an event in) a process. Process BEPs are 
     104like Standards Track BEPs but apply to areas other than the 
     105BitTorrent protocols.  They are more than recommendations, and 
     106users are typically not free to ignore them. Examples include 
     107release schedules, procedures, guidelines, changes to the 
     108decision-making process, and changes to the tools or environment 
     109used in BitTorrent development.</li> 
     110</ol> 
     111</blockquote> 
     112</div> 
     113<div class="section" id="bep-work-flow"> 
     114<h1>BEP Work Flow</h1> 
     115<p>The BEP editors assign BEP numbers and change their status. The 
     116current BEP editors are David Harrison and Arvid Norberg. Please send 
     117all BEP-related email to &lt;<a class="reference external" href="mailto:editor&#37;&#52;&#48;bittorrent&#46;org">editor<span>&#64;</span>bittorrent<span>&#46;</span>org</a>&gt;.  Also see BEP Editor 
     118Responsibilities &amp; Workflow below.</p> 
     119<p>The BEP process begins with a new idea for the BitTorrent 
     120protocols. It is highly recommended that a single BEP contain a single 
     121key proposal. The BEP editor reserves the right to reject BEP 
     122proposals if they appear unfocussed or overly broad. If in doubt, 
     123split your BEP into muliple BEPs.</p> 
     124<p>Each BEP must have a champion -- someone who writes the BEP using the 
     125style and format described below, shepherds the discussions in the 
     126appropriate forums, and attempts to build community consensus around 
     127the idea. The BEP champion should first post a description of the idea 
     128to the BEPs forum at forum.bittorrent.org.</p> 
     129<p>If the champion believes the idea warrants a BEP then the champion 
     130emails the BEP editor &lt;<a class="reference external" href="mailto:editor&#37;&#52;&#48;bittorrent&#46;org">editor<span>&#64;</span>bittorrent<span>&#46;</span>org</a>&gt; with a proposed title 
     131and a draft of the BEP. This draft must be written in BEP style as 
     132described below.</p> 
     133<p>If the BEP editor approves, he assigns the BEP a number, labels it as 
     134Standards Track, Informational, or Process, gives it status &quot;Draft&quot;, 
     135and creates and checks-in the initial draft of the BEP to the 
     136subversion repository. The BEP editor will not unreasonably 
     137deny a BEP. Reasons for denying BEP status include duplication of 
     138effort, being technically unsound, not providing proper motivation or 
     139not addressing backwards compatibility. The BDFL (Benevolent Dictator 
     140for Life, Bram Cohen) can be consulted during the approval phase, and 
     141is the final arbiter of the draft's BEP-ability.</p> 
     142<p>If a pre-BEP is rejected, the author may elect to take the pre-BEP to 
     143the BEP forum seeking feedback and consesnsus from the community at large. 
     144A proposal may be re-submitted after it has been revised.</p> 
     145<p>The champion is then responsible for marshaling community support for 
     146it. As updates are necessary, the BEP author can check in new versions 
     147if they have SVN commit permissions, or can email new BEP versions to 
     148the BEP editor for committing.</p> 
     149<p>Standards Track BEPs consist of two parts, a design document and a 
     150reference implementation. The reference implementation need not be 
     151complete when a BEP is submitted to the editors.  However Standards 
     152Track BEPs must include an implementation in at least one BitTorrent 
     153client with publicy available code before it can be considered Final.</p> 
     154<p>BEP champions are responsible for collecting community feedback on a 
     155BEP before submitting it for review. A BEP that has not been discussed 
     156in the BEPs forum on forum.bittorrent.org will not be 
     157accepted. However, wherever possible, long open-ended discussions in 
     158the BEP forum should be avoided. Strategies to keep the discussions 
     159efficient include: setting up a separate SIG forum for the topic, 
     160having the BEP author accept private comments in the early design 
     161phases, setting up a wiki page, etc. BEP authors should use their 
     162discretion here.</p> 
     163<p>Once the authors have completed a BEP, they must inform the BEP editor 
     164that it is ready for review. BEPs are reviewed by the BDFL and his 
     165chosen consultants, who may accept or reject a BEP or send it back to 
     166the author(s) for revision. For a BEP that is pre-determined to be 
     167acceptable (e.g., it is an obvious win as-is and/or its implementation 
     168already exists in one or more popular BitTorrent clients) the BDFL may 
     169also initiate a BEP review, first notifying the BEP author(s) and 
     170giving them a chance to make revisions.</p> 
     171<p>For a BEP to be accepted it must meet certain minimum criteria. It 
     172must be a clear and complete description of the proposed 
     173enhancement. The enhancement must represent a net improvement. The 
     174proposed implementation, if applicable, must be functional and have 
     175been tested in live BitTorrent swarms.  Supporting results from 
     176analyses, testbed experiments and event-based simulations are also 
     177recommended where appropriate.  A Standards Track document should 
     178include the rationale behind a proposal and may briefly summarize 
     179analytical, simulation, or experimental results where necessary to 
     180illustrate or motivate the enhancement.  However, detailed analytical, 
     181simulation, and experiment results, especially comparing different 
     182approaches to the same problem should be omitted from Standards Track 
     183BEPs and instead cited from a published paper or a separate 
     184Informational BEP.</p> 
     185<p>Once a BEP has been accepted, the reference implementation must be 
     186completed. When the reference implementation is complete and accepted 
     187by the BDFL, the status will be changed to &quot;Final&quot;.</p> 
     188<p>A BEP can also be assigned status &quot;Deferred&quot;. The BEP author or editor 
     189can assign the BEP this status when no progress is being made on the 
     190BEP. Once a BEP is deferred, the BEP editor can re-assign it to draft 
     191status.</p> 
     192<p>A BEP can also be &quot;Rejected&quot;. Perhaps after all is said and done it 
     193was not a good idea. It is still important to have a record of this 
     194fact.</p> 
     195<p>BEPs can also be replaced by a different BEP, rendering the original 
     196obsolete. This is intended for Informational BEPs, where version 2 of 
     197an API can replace version 1.</p> 
     198<p>The possible paths of the status of BEPs are as follows:</p> 
     199<img alt="bep_0001_1.png" src="bep_0001_1.png" /> 
     200</div> 
     201<div class="section" id="intellectual-property-and-bittorrent-standards"> 
     202<h1>Intellectual Property and BitTorrent Standards</h1> 
     203<p>Any idea submitted in a BEP will not be considered for standardization 
     204if the idea is not in the public domain.  Before a BEP can be 
     205considered Final, all people (including the BEP authors) or entities 
     206with a claim on the intellectual property expressed in a BEP must 
     207assign in writing all intellectual property expressed in the BEP to 
     208the public domain.  If the BEP authors lack the power to assign 
     209intellectual property rights then they must disclose this fact before 
     210the BEP can be considered Final.</p> 
     211<p>Furthermore BEP authors should not knowingly propose anything in their 
     212BEPs that infringes on the intellectual property rights of others.</p> 
     213<p>This policy statement should not be construed as meaning that BEP 
     214authors are required to assign software implementations of any 
     215particular idea to the public domain.  BitTorrent implementors may 
     216retain all rights to their implementations.</p> 
     217</div> 
     218<div class="section" id="history"> 
     219<h1>History</h1> 
     220<p>This document was derived heavily from PEP-0001 <a class="footnote-reference" href="#pep-1" id="id2">[2]</a>.  In many places 
     221text was simply copied and modified.  Although the PEP-0001 text 
     222was written by Barry Warsaw, Jeremy Hylton, and David Goodger, they 
     223are not responsible for its use in the BitTorent Enhancement Process, 
     224and should not be bothered with technical questions specific to 
     225BitTorrent or the BEP process.  Please direct all comments to the 
     226BitTorrent editors &lt;<a class="reference external" href="mailto:editor&#37;&#52;&#48;bittorrent&#46;org">editor<span>&#64;</span>bittorrent<span>&#46;</span>org</a>&gt; or the forums at 
     227forum.bittorrent.org.</p> 
     228</div> 
     229<div class="section" id="acknowledgements"> 
     230<h1>Acknowledgements</h1> 
     231<p>Thanks to Barry Warsaw, David Goodger, and Guido van Rossum for their 
     232guidance.</p> 
     233</div> 
     234<div class="section" id="references-and-footnotes"> 
     235<h1>References and Footnotes</h1> 
     236<table class="docutils footnote" frame="void" id="svn" rules="none"> 
     237<colgroup><col class="label" /><col /></colgroup> 
     238<tbody valign="top"> 
     239<tr><td class="label"><a class="fn-backref" href="#id1">[1]</a></td><td>This historical record is available by the normal SVN 
     240commands for retrieving older revisions. For those without direct 
     241access to the SVN tree, you can browse the current and past BEP 
     242revisions here: <a class="reference external" href="http://bittorrent.org/trac/">http://bittorrent.org/trac/</a></td></tr> 
     243</tbody> 
     244</table> 
     245<table class="docutils footnote" frame="void" id="pep-1" rules="none"> 
     246<colgroup><col class="label" /><col /></colgroup> 
     247<tbody valign="top"> 
     248<tr><td class="label"><a class="fn-backref" href="#id2">[2]</a></td><td>PEP-001: PEP Purposes and Guidelines, Warsaw, Hylton, Goodger. 
     249(<a class="reference external" href="http://www.python.org/dev/peps/pep-0001">http://www.python.org/dev/peps/pep-0001</a>)</td></tr> 
     250</tbody> 
     251</table> 
     252</div> 
     253<div class="section" id="copyright"> 
     254<h1>Copyright</h1> 
     255<p>This document has been placed in the public domain.</p> 
     256<!-- Local Variables: 
     257mode: indented-text 
     258indent-tabs-mode: nil 
     259sentence-end-double-space: t 
     260fill-column: 70 
     261coding: utf-8 
     262End: --> 
     263</div> 
     264 
     265 
     266</div> 
     267        <div id="footer"> 
     268<hr/> 
     269</div> 
     270 
     271</div> 
     272</body> 
     273</html>