计算机网络 自顶向下方法-第8版-Chapter2-Problems_计算机网络自顶向下方法第八版答案

F

d

m

i

n

}

D_{cs} \ge max{\frac{NF}{u_s}, \frac{F}{d_{min}}} \

Dcs​≥max{us​NF​,dmin​F​}

a

分发方案:

服务器并行地以速率

u

s

/

N

u_s/N

us​/N发送文件, 因为

u

s

/

N

d

m

i

n

u_s/N \le d_{min}

us​/N≤dmin​, 所以客户端可以以速率

u

s

/

N

u_s/N

us​/N接受文件, 接受整个文件的时间是

F

/

(

u

s

/

N

)

=

N

F

/

u

s

F/(u_s/ N) = NF / u_s

F/(us​/N)=NF/us​, 因为是并行的, 所以总的时间也是

N

F

/

u

s

NF / u_s

NF/us​

随着

u

s

/

N

u_s/ N

us​/N越来越小于

d

m

i

n

d_{min}

dmin​,

D

C

S

D_{CS}

DCS​越来越大于

N

F

/

u

s

NF/u_s

NF/us​

所以

D

C

S

N

F

/

u

S

D_{CS} \ge NF/ u_S

DCS​≥NF/uS​

b

服务器并行地以速率

u

s

/

N

u_s/N

us​/N发送文件, 因为服务器传输速率大于客户端接收速率:

u

s

/

N

d

m

i

n

u_s/N \ge d_{min}

us​/N≥dmin​, 所以最后一个客户端只能以速率

d

m

i

n

d_{min}

dmin​接受文件, 所以总的花费时间等于N个并行传输链路中最慢的费时:

F

/

m

i

n

{

d

i

}

=

F

/

d

m

i

n

F / min{d_i} = F / d_{min}

F/min{di​}=F/dmin​

c

我们已知

D

c

s

m

a

x

{

N

F

u

s

,

F

d

m

i

n

}

D_{cs} \ge max{\frac{NF}{u_s}, \frac{F}{d_{min}}} \

Dcs​≥max{us​NF​,dmin​F​}
可以得到

D

C

S

N

F

/

u

s

D_{CS} \ge NF / u_s

DCS​≥NF/us​

又由(a)可知

D

C

S

N

F

/

u

s

D_{CS} \le NF/u_s

DCS​≤NF/us​, 所以, 当

u

s

/

N

d

m

i

n

u_s/ N \le d_{min}

us​/N≤dmin​, 有

D

C

S

=

N

F

/

u

s

D_{CS} = NF / u_s

DCS​=NF/us​

由(b)可知

D

C

S

F

/

d

m

i

n

D_{CS} \ge F / d_{min}

DCS​≥F/dmin​, 所以, 当

u

s

/

N

d

m

i

n

u_s/ N \ge d_{min}

us​/N≥dmin​, 有

D

C

S

=

F

/

d

m

i

n

D_{CS} = F / d_{min}

DCS​=F/dmin​

综上, 在N个并行发送情况下, 总的最小分发时延可以取到

D

c

s

=

m

a

x

{

N

F

u

s

,

F

d

m

i

n

}

D_{cs} = max{\frac{NF}{u_s}, \frac{F}{d_{min}}} \

Dcs​=max{us​NF​,dmin​F​}

P24

考虑虑使用 P2P 体系结构向 N 个用户分发 F 比特的一个文件。假定一种流体模型。为了简化起见,假定

d

m

i

n

d_{min}

dmin​ 很大,因此对等方下载带宽不会成为瓶颈。

a. 假定

u

s

(

u

s

u

1

.

.

.

u

n

)

/

N

u_s \le (u_s + u_1 + … + u_n)/N

us​≤(us​+u1​+…+un​)/N。定义一个具有

F

/

u

s

F/u_s

F/us​ 分发时间的分发方案。

b. 假定

u

s

(

u

s

u

1

.

.

.

u

n

)

/

N

u_s \ge (u_s + u_1 + … + u_n)/N

us​≥(us​+u1​+…+un​)/N。定义一个具有

N

F

/

(

u

s

u

1

.

.

.

u

n

)

NF/(u_s + u_1 + … + u_n)

NF/(us​+u1​+…+un​) 分发时间的分发方案。

c. 得出最小分发时间通常是由

max

{

F

/

u

s

,

N

F

/

(

u

s

u

1

.

.

.

u

n

)

}

\max{F/u_s, NF/(u_s + u_1 + … + u_n)}

max{F/us​,NF/(us​+u1​+…+un​)} 所决定的结论。

由于假定

d

m

i

n

d_{min}

dmin​ 很大, 所以

D

P

2

P

m

a

x

{

N

F

u

s

i

=

1

N

u

i

,

F

u

s

}

D_{P2P} \ge max{\frac{NF}{u_s + \sum\limits_{i = 1}^{N}u_i}, \frac{F}{u_s}} \

DP2P​≥max{us​+i=1∑N​ui​NF​,us​F​}

u

=

i

=

1

N

u

i

u = \sum\limits_{i = 1}^{N}u_i

u=i=1∑N​ui​

a

分发方案:

由假设:

u

s

(

u

u

s

)

/

N

u

s

u

/

N

u

s

/

N

u

s

(

1

1

/

N

)

u

/

N

u

s

(

N

1

)

u

u

s

u

/

(

N

1

)

u_s \le (u + u_s) / N \ u_s \le u / N + u_s/ N \ u_s(1-1/N) \le u /N \ u_s(N -1) \le u \ u_s \le u / (N - 1)

us​≤(u+us​)/Nus​≤u/N+us​/Nus​(1−1/N)≤u/Nus​(N−1)≤uus​≤u/(N−1)

分发方案:

将文件分为N块, 每块大小为

(

u

i

/

u

)

F

(u_i/u)F

(ui​/u)F, (容易看出

i

=

1

N

u

i

u

F

=

F

/

u

i

=

1

N

u

i

=

F

\sum\limits_{i = 1}^{N} \frac{u_i}{u}F = F/u\sum\limits_{i=1}^{N}u_i = F

i=1∑N​uui​​F=F/ui=1∑N​ui​=F)服务器并行地以速率

r

i

=

u

i

u

u

s

r_i = \frac{u_i}{u}u_s

ri​=uui​​us​将第i块分发给第i个对等方, 第i个对等方要并行地给其它N-1个对等方以速率

r

i

r_i

ri​发送块。所以第i个对等方的总发送速率为

(

N

1

)

r

i

(N -1)r_i

(N−1)ri​

(

N

1

)

r

i

=

(

N

1

)

(

u

s

u

i

)

/

u

u

i

(N - 1)r_i = (N - 1)(u_su_i)/u \le u_i

(N−1)ri​=(N−1)(us​ui​)/u≤ui​
上式满足假设, 所以每个对等方的发送速率可取

(

N

1

)

r

i

(N -1)r_i

(N−1)ri​

i个对等方总接收速率(接收服务器的加接收其它N-1个对等方的比特速率)

r

i

j

i

r

j

=

u

s

r_i + \sum\limits_{j \ne i}r_j = u_s

ri​+j=i∑​rj​=us​
所以每个对等方在

F

/

u

s

F/u_s

F/us​时刻接收到该文件的所有块

b

由假设

u

s

(

u

u

s

)

/

N

u_s \ge (u + u_s) / N \

us​≥(u+us​)/N

r

i

=

u

i

/

(

N

1

)

,

r

N

1

=

u

s

u

/

(

N

1

)

N

r_i = u_i/(N - 1), r_{N + 1} = \frac{u_s - u/(N-1)}{N}

ri​=ui​/(N−1),rN+1​=Nus​−u/(N−1)​

分发方案:

将文件分成N+1块, 服务器先并行地将N块中的第i块分发给第i个对等方, 然后每个对等方以速率

r

i

r_i

ri​将所持有的块分发给其余N-1个对等方, 同时服务器将第N+1块以速率

r

N

1

r_{N+1}

rN+1​并行分发给N个对等方, 此时这些对等方不用分发块

所以服务器的总发送速率为

r

1

.

.

.

r

N

N

r

N

1

=

u

/

(

N

1

)

u

s

u

/

(

N

1

)

=

u

s

r_1 + … + r_N + Nr_{N+1} = u / (N - 1) + u_s - u /(N-1) = u_s

r1​+…+rN​+NrN+1​=u/(N−1)+us​−u/(N−1)=us​

每个对等方地发送速率依然是:

(

N

1

)

r

i

=

u

i

(N-1)r_i = u_i

(N−1)ri​=ui​
因此, 每个对等方要同时接收服务器地2个块, 其余N-1个服务器地N-1个块, 所以每个对等方接收bit的总速率为:

r

i

r

N

1

j

i

r

j

=

u

/

(

N

1

)

(

u

s

u

(

N

1

)

)

/

N

=

(

u

s

u

)

/

N

r_i + r_{N + 1} + \sum\limits_{j \ne i}r_j\ = u / (N - 1) + (u_s - u(N- 1)) / N \ = (u_s + u) / N

ri​+rN+1​+j=i∑​rj​=u/(N−1)+(us​−u(N−1))/N=(us​+u)/N
因此每个对等方接收到文件的所有N+1个块耗费的时间为

F

(

u

s

u

)

/

N

=

N

F

(

u

s

u

)

\frac{F}{(u_s + u) / N} \ = \frac{NF}{(u_s + u)} \

(us​+u)/NF​=(us​+u)NF​

c

u

s

(

u

u

s

)

/

N

u_s \le (u + u_s) / N \

us​≤(u+us​)/N

D

P

2

P

=

F

/

u

s

D_{P2P} = F / u_s

DP2P​=F/us​

u

s

(

u

u

s

)

/

N

u_s \ge (u + u_s) / N \

us​≥(u+us​)/N

D

P

2

P

=

N

F

(

u

s

u

)

D_{P2P} = \frac{NF}{(u_s + u)}

DP2P​=(us​+u)NF​
综上, 按此种流体模式可以取到最小值

D

P

2

P

=

m

a

x

{

N

F

u

s

i

=

1

N

u

i

,

F

u

s

}

D_{P2P} = max{\frac{NF}{u_s + \sum\limits_{i = 1}^{N}u_i}, \frac{F}{u_s}} \

DP2P​=max{us​+i=1∑N​ui​NF​,us​F​}

P25

考虑在一个有 N 个活跃对等方的覆盖网络中,每对对等方有一条活跃的 TCP 连接。此外,假定该 TCP 连接通过总共 M 台路由器。在对应的覆盖网络中,有多少结点和边?

结点只包括对等方结点, 边描述的是对等方地文件传输关系

由图论知识, 无向完全图有

N

(

N

1

)

/

2

N(N-1)/2

N(N−1)/2条边,

所以, 在该覆盖网络中总共有

N

N

N个结点,

N

(

N

1

)

/

2

N(N-1)/2

N(N−1)/2条边

P26

假定 Bob 加入 BitTorrent,但他不希望向任何其他对等方上载任何数据(因此称为搭便车)。

a. Bob 声称他能够收到由该社区共享的某文件的完整副本。Bob 所言是可能的吗?为什么?

b. Bob 进一步声称他还能够更有效地进行他的 “搭便车”,方法是利用所在系的计算机实验室中的多台计算机(具有不同的 IP 地址)。他怎样才能做到这些呢?

a

可能,因为持有块的用户不仅仅以上载速率的前 4 位作为发送块的对象,它还会每隔30s随机选取另外一位用户给他发送块,所以只要在洪流中待的时间足够长,就有可能收集到足够的块, 以至于这些块构成一个完整的文件。

b

因为每台计算机有不同的IP地址, 所在让这些主机都加入到洪流中"搭便车", 只要各个主机收集到的块能够组成他想要的文件, 他甚至可以些程序让每个不同的主机请求该文件的不同的块, 以便更快地完成文件地下载。

P27

考虑一个具有N个视频版本(具有N个不同地速率和质量)和N个音频版本(具有N个不同地速率和质量)的DASH系统。假设我们向允许播放者在任何时间选择N个版本和N个音频版本之一:

a. 如果我们生成音频和视频混合的文件, 因此服务器在任何时间仅发送一个媒体流, 该服务器将需要存储多少个文件(每个文件有一个不同的URL)?

b. 如果该服务器分别发送音频流和视频流并且与客户同步这些流, 该服务器将需要存储多少个文件?

a

N个文件, 我们根据媒体质量从高到低地将视频与音频一对一匹配(质量高的对质量高的),并存储在一个文件地址。

b

因为客户端会同步音频流和视频流, 所以服务器端不需要将二者一起存储到一个文件, 所以在服务器端会存储2N个文件

P28

一台主机上安装编译 TCPClient 和 UDPClient Python 程序,在另一台主机上安装编译 TCPServer 和 UDPServer 程序。

a. 如果你在运行 TCPServer 之前运行 TCPClient,将发生什么现象?为什么?

b. 如果你在运行 UDPServer 之前运行 UDPClient,将发生什么现象?为什么?

c. 如果你对客户端和服务器使用了不同的端口,将发生什么现象?

本题使用本书实例python程序分别在windows端和Linux端验证

a

先在客户端允许客户端程序

$ python3 ./TCPClient.py 

结果表明, 连接被拒绝, 与不存在的服务器进程不会建立TCP连接

Traceback (most recent call last):
  File "./TcpClient.py", line 8, in <module>
    clientSocket.connect((serverName, serverPort))
ConnectionRefusedError: [Errno 111] Connection refused

b

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Linux运维工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Linux运维知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)
img

最全的Linux教程,Linux从入门到精通

======================

  1. linux从入门到精通(第2版)

  2. Linux系统移植

  3. Linux驱动开发入门与实战

  4. LINUX 系统移植 第2版

  5. Linux开源网络全栈详解 从DPDK到OpenFlow

华为18级工程师呕心沥血撰写3000页Linux学习笔记教程

第一份《Linux从入门到精通》466页

====================

内容简介

====

本书是获得了很多读者好评的Linux经典畅销书**《Linux从入门到精通》的第2版**。本书第1版出版后曾经多次印刷,并被51CTO读书频道评为“最受读者喜爱的原创IT技术图书奖”。本书第﹖版以最新的Ubuntu 12.04为版本,循序渐进地向读者介绍了Linux 的基础应用、系统管理、网络应用、娱乐和办公、程序开发、服务器配置、系统安全等。本书附带1张光盘,内容为本书配套多媒体教学视频。另外,本书还为读者提供了大量的Linux学习资料和Ubuntu安装镜像文件,供读者免费下载。

华为18级工程师呕心沥血撰写3000页Linux学习笔记教程

本书适合广大Linux初中级用户、开源软件爱好者和大专院校的学生阅读,同时也非常适合准备从事Linux平台开发的各类人员。

需要《Linux入门到精通》、《linux系统移植》、《Linux驱动开发入门实战》、《Linux开源网络全栈》电子书籍及教程的工程师朋友们劳烦您转发+评论

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
img

N(N-1)/2

N(N−1)/2条边

P26

假定 Bob 加入 BitTorrent,但他不希望向任何其他对等方上载任何数据(因此称为搭便车)。

a. Bob 声称他能够收到由该社区共享的某文件的完整副本。Bob 所言是可能的吗?为什么?

b. Bob 进一步声称他还能够更有效地进行他的 “搭便车”,方法是利用所在系的计算机实验室中的多台计算机(具有不同的 IP 地址)。他怎样才能做到这些呢?

a

可能,因为持有块的用户不仅仅以上载速率的前 4 位作为发送块的对象,它还会每隔30s随机选取另外一位用户给他发送块,所以只要在洪流中待的时间足够长,就有可能收集到足够的块, 以至于这些块构成一个完整的文件。

b

因为每台计算机有不同的IP地址, 所在让这些主机都加入到洪流中"搭便车", 只要各个主机收集到的块能够组成他想要的文件, 他甚至可以些程序让每个不同的主机请求该文件的不同的块, 以便更快地完成文件地下载。

P27

考虑一个具有N个视频版本(具有N个不同地速率和质量)和N个音频版本(具有N个不同地速率和质量)的DASH系统。假设我们向允许播放者在任何时间选择N个版本和N个音频版本之一:

a. 如果我们生成音频和视频混合的文件, 因此服务器在任何时间仅发送一个媒体流, 该服务器将需要存储多少个文件(每个文件有一个不同的URL)?

b. 如果该服务器分别发送音频流和视频流并且与客户同步这些流, 该服务器将需要存储多少个文件?

a

N个文件, 我们根据媒体质量从高到低地将视频与音频一对一匹配(质量高的对质量高的),并存储在一个文件地址。

b

因为客户端会同步音频流和视频流, 所以服务器端不需要将二者一起存储到一个文件, 所以在服务器端会存储2N个文件

P28

一台主机上安装编译 TCPClient 和 UDPClient Python 程序,在另一台主机上安装编译 TCPServer 和 UDPServer 程序。

a. 如果你在运行 TCPServer 之前运行 TCPClient,将发生什么现象?为什么?

b. 如果你在运行 UDPServer 之前运行 UDPClient,将发生什么现象?为什么?

c. 如果你对客户端和服务器使用了不同的端口,将发生什么现象?

本题使用本书实例python程序分别在windows端和Linux端验证

a

先在客户端允许客户端程序

$ python3 ./TCPClient.py 

结果表明, 连接被拒绝, 与不存在的服务器进程不会建立TCP连接

Traceback (most recent call last):
  File "./TcpClient.py", line 8, in <module>
    clientSocket.connect((serverName, serverPort))
ConnectionRefusedError: [Errno 111] Connection refused

b

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Linux运维工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
[外链图片转存中…(img-9eGD2AxK-1712649886069)]
[外链图片转存中…(img-CEpthbVg-1712649886070)]
[外链图片转存中…(img-NnJxaBLU-1712649886070)]
[外链图片转存中…(img-uG2atPGi-1712649886070)]
[外链图片转存中…(img-uPNZcPH5-1712649886071)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Linux运维知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)
[外链图片转存中…(img-NzDhTUOr-1712649886071)]

最全的Linux教程,Linux从入门到精通

======================

  1. linux从入门到精通(第2版)

  2. Linux系统移植

  3. Linux驱动开发入门与实战

  4. LINUX 系统移植 第2版

  5. Linux开源网络全栈详解 从DPDK到OpenFlow

华为18级工程师呕心沥血撰写3000页Linux学习笔记教程

第一份《Linux从入门到精通》466页

====================

内容简介

====

本书是获得了很多读者好评的Linux经典畅销书**《Linux从入门到精通》的第2版**。本书第1版出版后曾经多次印刷,并被51CTO读书频道评为“最受读者喜爱的原创IT技术图书奖”。本书第﹖版以最新的Ubuntu 12.04为版本,循序渐进地向读者介绍了Linux 的基础应用、系统管理、网络应用、娱乐和办公、程序开发、服务器配置、系统安全等。本书附带1张光盘,内容为本书配套多媒体教学视频。另外,本书还为读者提供了大量的Linux学习资料和Ubuntu安装镜像文件,供读者免费下载。

华为18级工程师呕心沥血撰写3000页Linux学习笔记教程

本书适合广大Linux初中级用户、开源软件爱好者和大专院校的学生阅读,同时也非常适合准备从事Linux平台开发的各类人员。

需要《Linux入门到精通》、《linux系统移植》、《Linux驱动开发入门实战》、《Linux开源网络全栈》电子书籍及教程的工程师朋友们劳烦您转发+评论

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-OhvSfTJr-1712649886071)]

  • 11
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值