⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gnutella协议中文版.htm

📁 gnutella协议中文版
💻 HTM
📖 第 1 页 / 共 5 页
字号:
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<font size="3"><span lang="EN-US">GET /get/&lt;File Index&gt;/&lt;File Name&gt;/ 
HTTP/1.0\r\n<br>
Connection: Keep-Alive\r\n<br>
Range: bytes=0-\r\n<br>
User-Agent: Gnutella\r\n3<br>
\r\n<br>
</span><span style="font-family: 宋体">余下的下载过程和上面所述的“文件下载”内容一致。</span></font></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<font size="3"><span style="font-family: 宋体">可允许的用户-代理字符串由</span><span lang="EN-US">HTTP</span><span style="font-family: 宋体">标准定义。客户机开发者不能对这里使用的值做自己的假定。其中的值“</span><span lang="EN-US">Gnutella</span><span style="font-family: 宋体">”只是用来演示举例而已。</span></font></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<span lang="EN-US"><font size="3">&nbsp;</font></span></p>
<pre><b><span style="font-size: 10.5pt; font-family: 宋体">附录<span lang="EN-US">1: Gnutella 协议扩展</span></span></b></pre>
<pre><span style="font-size: 10.5pt; font-family: 宋体">扩展的<span lang="EN-US">Query Hit( 描述更新03/15/2001) 首先以BearShare v1.3.0 为例,扩展的QueryHit 描述符通过在原先的Gnutella QueryHit 描述符的Servent ID标识符和双null结尾的文件名之间放置额外的数据进行扩展。 一个扩展的QueryHit 描述符将有以下的结构: </span></span></pre>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">&nbsp;</span></pre>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<b><span lang="EN-US"><font size="3">QueryHit (0x81)</font></span></b></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<span lang="EN-US"><font size="3">&nbsp;</font></span></p>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">BearShare的Trailer区的机构如下:</span></pre>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<b><span lang="EN-US"><font size="3">Trailer</font></span></b></p>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">&nbsp;</span></pre>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<b><span lang="EN-US"><font size="3">Vendor Code </font></span></b></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<span style="font-family: 宋体"><font size="3">四个大小写敏感的字母代表一个供应商代号。已经确认的代号如下:</font></span></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<b><span lang="EN-US"><font size="3">Open Data Size </font></span></b></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<font size="3"><span style="font-family: 宋体">包含</span><span lang="EN-US">Open 
Data </span><span style="font-family: 宋体">域的长度(以字节计算)</span></font></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<b><span lang="EN-US"><font size="3">Open Data</font></span></b></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<font size="3"><span style="font-family: 宋体">包含</span><span lang="EN-US">2</span><span style="font-family: 宋体">个单字节的标志域</span><span lang="EN-US">,,</span><span style="font-family: 宋体">具有以下的数据分布和次序</span></font></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<b><span lang="EN-US"><font size="3">flags</font></span></b></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<font size="3"><span lang="EN-US">flagUploadSpeed=1 </span>
<span style="font-family: 宋体">当且仅当</span><span lang="EN-US">flags2</span><span style="font-family: 宋体">中的</span><span lang="EN-US">flagUploadSpeed</span><span style="font-family: 宋体">标志有意义时</span></font></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<font size="3"><span lang="EN-US">flagHaveUploaded=1 </span>
<span style="font-family: 宋体">当且仅当</span><span lang="EN-US">flags2</span><span style="font-family: 宋体">中的</span><span lang="EN-US">flagHaveUploaded</span><span style="font-family: 宋体">标志有意义时</span></font></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<font size="3"><span lang="EN-US">flagBusy=1 </span>
<span style="font-family: 宋体">当且仅当</span><span lang="EN-US">flags2</span><span style="font-family: 宋体">中的</span><span lang="EN-US">flagBusy</span><span style="font-family: 宋体">标志有意义时</span></font></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<font size="3"><span lang="EN-US">flagPush=1 </span>
<span style="font-family: 宋体">当且仅当客户机处于防火墙后或者未接受进入的连接时</span></font></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<font size="3"><span lang="EN-US">r=</span><span style="font-family: 宋体">保留字</span><span lang="EN-US">,</span><span style="font-family: 宋体">将来使用</span></font></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<b><span lang="EN-US"><font size="3">flags2</font></span></b></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<font size="3"><span lang="EN-US">flagUploadSpeed=1 </span>
<span style="font-family: 宋体">当且仅当</span><span lang="EN-US">QueryHit</span><span style="font-family: 宋体">描述符中的</span><span lang="EN-US">Speed</span><span style="font-family: 宋体">域包含上</span><span lang="EN-US">10</span><span style="font-family: 宋体">次上传的最高平均速率时</span></font></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<font size="3"><span lang="EN-US">flagHaveUploaded=1 </span>
<span style="font-family: 宋体">当且仅当客户机成功上传至少一次文件时</span></font></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<font size="3"><span lang="EN-US">flagBusy=1 </span>
<span style="font-family: 宋体">当且仅当客户机的上传插槽满时</span></font></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<font size="3"><span lang="EN-US">flagPush=1</span><span style="font-family: 宋体">当且仅当</span><span lang="EN-US">flags</span><span style="font-family: 宋体">中的</span><span lang="EN-US">flagPush</span><span style="font-family: 宋体">标志有意义时</span></font></p>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<font size="3"><span lang="EN-US">r=</span><span style="font-family: 宋体">保留字</span><span lang="EN-US">,</span><span style="font-family: 宋体">将来使用</span></font></p>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">&nbsp;</span></pre>
<p class="MsoNormal" style="margin-left: 0cm; margin-right: 0cm; margin-top: 0cm; margin-bottom: 0pt">
<b><span lang="EN-US"><font size="3">Private Data</font></span></b></p>
<pre><span style="font-size: 10.5pt; font-family: 宋体">未作正式文档说明的<span lang="EN-US">BearShare的数据,这个区域的数据长度可以根据以下决定</span></span></pre>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">Query Hit Descriptor Payload Size-(Open Data Size+4+1)</span></pre>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">&nbsp;</span></pre>
<pre><span style="font-size: 10.5pt; font-family: 宋体">开发者处理扩展的一种方式为<span lang="EN-US"> </span></span></pre>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">( 1 )&nbsp; 意识到一进来的QueryHit 可以或者可能不包含附加数据,在结果下落之后,和在Servent 标识符以前。 没有完整说明适合是可能在场的字节的数量存在,或者他们内容。 </span></pre>
<pre><span style="font-size: 10.5pt; font-family: 宋体">使用负载长度领域并且算字节,当他们被从这条溪读确定是否扩展字节在场。<span lang="EN-US"> </span></span></pre>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">( 2)如果他们是,从排除16 字节Servent 标识符的输入流中读取数据。 </span></pre>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">( 3) 象往常一样处理QueryHit。 </span></pre>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">&nbsp;</span></pre>
<pre><b><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">Gnotella </span></b></pre>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">Gnotella客户端软件的版本至早在0.73(2000年7月30发布)时把额外的数据放置在</span></pre>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">QueryHit 描述符中。 根据Gnutella 0.4 协议说明,每一个QueryHit 描述符中的</span></pre>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">结果集要用双nul结尾。 Gnotella 可以把额外的数据安置在两nuls 之间。 虽然</span></pre>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">它的精确的数据格式未知,但是这些数据代表比特率,采样率,和MP3 文件的播放</span></pre>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋体">时间,通过结果集的入口处来描述。 如果结果集入口处所描述的不是一个MP3文件</span></pre>
<pre><span lang="EN-US" style="font-size: 10.5pt; font-family: 宋

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -