哈工大计算机网络第二章作业

发布时间 : 星期三 文章哈工大计算机网络第二章作业更新完毕开始阅读

1. Problem 6:

考虑一个HTTP客户机要以给定的URL获取一个web页面。开始时并不知道该HTTP服务器的IP地址,在这种情况下除了HTTP外,还需要什么运输层和应用层协议?

应用层协议:DNS和HTTP

运输层协议:UDP——DNS;TCP——HTTP;

2. Problem 7:

题目概述:假定访问一个超链接界面,假定URL和IP地址没有缓存的本地主机上,因此必须进行DNS查询从而获取IP地址,如果主机从DNS得到IP地址,已经访问了n个服务器,相继产生的RTT依次为RTT1, RTT2,…,RTTn。进一步假定与链路相关的WEB页面只包含一个对象。令RTT0表示本地主机和包含对象的服务器之间的RTT值。假定该传输对象时间为0,从客户机点击该链接到它接收到该对象需要多长时间? 解:获得IP地址的总时间为

RTT1?RTT2??RTTn

另外,由题意的我们需要RTT0时间来建立TCP连接,另外RTT0时间来接收对象?总的时间为:2RTT0?RTT1?RTT2??RTTn

3. 上网查阅资料,概述Skype原理和工作过程

Skype主要运用的是P2P技术,就更广泛的意义而言,P2P技术是指网络中的所有节点都动态参与到路由、信息处理和带宽增强等工作中,而不是单纯依靠服务器来完成这些工作。Skype是P2P技术演进到混合模式后的典型应用,它结合了集中式和分布式的特点,在网络的边缘节点采用集中式的网络结构,而在超级节点之间采用分布式的网络结构,混合模式的P2P网络模型如图1所示。

我们以通信流程为例简单叙述一下它的工作流程:

Skype的通信流程分为:启动、注册(认证)、查找用户、呼叫和释放的过程

(1)启动流程

Skype的用户终端启动时,采用HTTP协议连接到注册服务器。 (2)注册(认证)流程

注册(认证)流程可能是Skype所有流程中最复杂的一个,用户启动Skype后,首先需要连接到超级节点,通过超级节点向注册服务器发送身份认证信息,注册服务器验证用户名和密码的合法性,然后向其他对等节点及其好友发送在线信息,同时还需要判断该终端所在私网的NAT和防火墙类型。如果该终端先前默认的超级节点已不可用,则还要查找具有公网地址的Skype节点来作为该终端的超级节点,从而维持该终端与Skype网络的连接。一旦超级节点都不可用,Skype的客户端采用了尽力而为的方式进行注册,即先用UDP包试注册,不成功超时则用TCP(80端口),再不成功则用TCP(443端口)。通常为防止其超级节点不可用,客户端必须建立一个可选连接节点列表,并定期维护该列表。

(3)查找用户

Skype采用了一种称做全球索引(GlobalIndex)的技术来查找用户,该技术结合前面所述的分层网络,超级节点之间采用全分布式的连接,每个超级节点具有最小时延前提下所有可用的用户和资源的全部信息。具体来说,Skype采用了下面两种机制来保证顺利完成用户的查找。

● 启动后向所有列表中的用户发送其上线信息,其他用户响应各自的信息; ● 在中间节点缓存查找到的用户信息

对于有公网地址的客户端,其查找用户的过程如下:点击发送要查找的用户信息->;通过SN获取四个节点地址->;不成功->;报告SN->;获取八个节点地址->;……->;成功(或失败返回)。

对于那些位于私网内的受限客户端,其查找用户的过程则是首先客户端将需要查找的用户信息发送给其SN,然后由SN完成查找后返回给私网内的客户端。

(4)呼叫建立和释放

查找到希望连接的用户后,可以将其加入好友列表,Skype用户可以随时与在线的好友进行呼叫。经过了稍微复杂的认证过程和用户查找过程,呼叫建立和释放的过程就变得简单了。用户位于公网和位于私网内部的情况会有所不同,两种情况下的呼叫建立和释放流程分别见图5和图6所示。

联系合同范文客服:xxxxx#qq.com(#替换为@)