并行接口选择的制作方法_2

文档序号:9476553阅读:来源:国知局
其包括移动电话、音乐播放器、游戏设备等。计算设备102也可以采取设备的计算机204类,其包括个人计算机、膝上型计算机、上网本等。电视206配置包括涉及放松环境中的显示的设备配置,例如电视、机顶盒、游戏控制台等。因而,本文描述的技术可以由计算设备102的这些各种配置支持,并且不限于以下部分中描述的具体示例。如此处所图示的,计算设备102可以包括如下文和上文所描述的(一个或者多个)网络发现模块104和(一个或者多个)并行探测模块106。
[0023]在一些实施例中,(一个或者多个)服务器208包括“云”功能性。此处,云210被图示为包括用于web服务214的平台212。平台212对云210的硬件(例如服务器)和软件资源的底层功能性进行抽象,并且因而可以充当“云操作系统”。例如,平台212可以对资源进行抽象以将计算设备102与其它计算设备连接。平台212也可以用于对资源的缩放进行抽象以提供经由平台212实现的web服务214所遭遇的需求的对应水平缩放。还预期到各种各样的其它示例,诸如服务器群组中的服务器的负载均衡、抵抗恶意方(例如垃圾邮件、病毒和其它恶意软件)的保护等。因而,作为涉及经由互联网或其它网络对计算设备102可用的软件和硬件资源的策略的一部分而包括云210。
[0024]一般地,本文描述的功能中的任何功能可以使用软件、固件、硬件(例如固定逻辑电路)、手动处理或这些实现方案的组合来实现。如本文中使用的术语“模块”、“功能性”和“逻辑”一般表示软件、固件、硬件或其组合。在软件实现方案的情况下,模块、功能性或逻辑表示在处理器(例如一个或多个CPU)上或通过处理器运行时执行特定任务的程序代码。程序代码可以存储在一个或多个计算机可读存储器设备中。下文描述的手势技术的特征是独立于平台的,这意味着技术可以在具有各种各样的处理器的各种各样的商用计算平台上实现。
[0025]已经描述可以利用各种实施例的示例操作环境,现在考虑依照一个或多个实施例的并行和动态网络接口选择的讨论。
[0026]并行和动杰网络接口诜择
动态网络和/或设备发现是计算设备可以通过网络自动地发现其它计算设备、外围设备等和/或与其它计算设备、外围设备等连接的过程。在一些情况下,计算设备与另一设备直接连接,而在其它情况下,其可以间接地(诸如通过代理)连接。确定间接连接也可以是动态和/或自动化过程。例如,考虑WPAD。计算设备可以使用WPAD方法作为定位一个或多个配置文件的方式,所述配置文件包括涉及计算设备应当使用哪个(或者哪些)代理来访问特定域和/或服务器的信息。定位(一个或者多个)配置文件有时可能需要使用诸如DHCP和/或DNS发现方法之类的各种协议。
[0027]偶尔,远程计算设备可以具有用于使计算设备从中选择以便建立特定连接的若干网络接口选项。在这些情况下,计算设备不仅试图自动地配置与远程计算设备的连接,而且附加地确定要连接哪个网络接口。确定要使用哪个网络接口的一个方式是串行地查询多个接口(例如一次一个)。开始时,计算设备将针对通信配置和/或连接信息来查询和/或探测第一网络接口。计算设备然后等待直到第一网络接口对查询做出响应和/或查询超时/过期。如果第一网络接口以通信配置和/或连接信息做出响应,则计算设备可以使用所检索的信息来建立连接,并且随后放弃查询任何其它网络接口。假设第一网络接口做出响应,并且以及时方式做出响应,则该串行查询方法可以产生稳定且有响应的连接过程。然而,如果第一网络接口没有做出响应,并且代替地,查询过期,则这可能引入由计算设备的终端用户感知到的附加延迟。考虑存在以串行方式查询的四个网络接口的情况。如果计算设备串行地查询前三个网络接口,并且所有三个网络接口各自在30秒超时,则在计算设备继续查询最终以积极方式做出响应的第四网络接口之前将花费90秒。因而,尽管串行方法可以产生相当无缝的连接过程,但是其也可能向终端用户引入附加延迟。
[0028]各种实施例使得能够针对通信配置信息而并行查询多个网络接口。代替一次一个地查询每一个网络接口(并且在查询第二网络接口之前等待第一网络接口做出响应和/或超时),并行地发送多个查询并且不需要等待查询响应。此处,查询响应暗示着网络接口是否具有通信配置信息的肯定和/或否定响应(包括针对查询的超时响应),并且不暗示着任何较低水平的协议握手响应。因而,此处的响应暗示着与请求处于相同处理层的响应。所返回的通信配置信息然后可以由第一计算设备使用,以使得能够与另一计算设备通信,诸如通过包括引导第一计算设备更换连接路径和/或更换连接参数的连接参数和/或信息。在一些实施例中,接收到对并行查询的多个响应,而不管是直接在消息中接收还是间接地通过超时而接收。
[0029]考虑图3,其图示了并行网络接口探测的示例。此处,在图1和2的计算设备102的上下文中描述功能性。然而,要领会和理解的是,本文描述的方法和/或功能性可以适用于任何适当类型的计算设备,而不脱离所要求保护的主题的范围。在该示例中,计算设备102已经确定存在与其尝试访问的远程计算设备相关联的四个网络接口:网络接口 302a、302b、302c和302d。尽管该示例图示出四个网络接口,但是所描述的功能性可以适用于任何适当数目的接口。可替换地或附加地,计算设备102可以确定相关联的网络接口是否是以供使用的潜在候选者。计算设备102可以通过查询所有可能的网络接口而开始。在确定存在多少个可用网络接口之后,计算设备102接下来可以做出可用网络接口中的一些网络接口不适合的确定。例如,网络接口可以至少部分地基于网络接口的性质而被确定为不适合的和/或没有资格的,诸如没有启用DHCP、没有公共单播地址、没有相关联的DHCP服务器的地址、没有启用特定版本的互联网协议(IP)(诸如IPv4)等。因而,在一些实施例中,网络接口不仅被标识,而且还针对期望的特性和/或适用性而被附加地分析。
[0030]在某一时间点处,计算设备102并行地发送出四个网络接口查询消息,此处在指示304处图示。第一查询消息被发送给网络接口 302a,第二查询消息被发送给网络接口302b等。在该示例中,每一个消息被图示为在时间“O”秒处(或在其附近)发送。这意味着指示每一个消息基本上同时发送。例如,在一些实施例中,发送多个查询消息可能作为循环在软件中实现,其中每一个消息彼此快速连续地发送,其中在消息之间执行很少的其它功能性或者不执行其它功能性。可替换地或附加地,可以存在介于之间的附加时间,以向每一个消息添加涉及其要发送到的接口的寻址和/或自定义。尽管该实现方案将不会在时间上相同的精确瞬间发送每一个消息,但是其将实际上在相同时间发送每一个消息。为了进一步图示,并且使用串行地发送消息的以上示例的上下文,并行地发送查询消息与串行地发送消息的不同在于,将查询消息发送给每一个网络接口而不需要等待来自其它网络接口的响应或超时。尽管其它处理可能发生在发送查询消息之间,但是向网络接口发送查询消息不依赖于首先从其它未解决的查询接收查询响应消息。因而,并行探测消息实际上是同时发送的,在此表示为时间“O秒”。
[0031]当接收到查询和/或请求时,网络接口 302d以积极方式做出响应,此处被示为指示306。在对于时间轴并未绘制成按比例的该示例中,在查询消息被发送的4秒内向计算设备102返回指示306。尽管该图显示了 4秒的返回时间,但是要领会的是,这仅仅是用于讨论目的,并且任何适合的时间段和/或时间单位(例如毫秒、纳秒等)等同地适用,而不脱离所要求保护的主题的范围。在该时间点处,计算设备102尚未接收到任何其它指示和/或响应,不管是积极响应还是消极响应。在一些实施例中,一旦接收到由网络接口 302d返回的信息,则计算设备102可以使用该信息来配置与远程计算设备的连接(不管是直接还是间接)。例如,在时间的益处方面,计算设备102可以利用首先返回的响应而不等待任何其它响应,在该情况下首先返回的响应为指示306。可替换地或附加地,计算设备102可以在配置连接之前首先等待来自所有查询的响应和/或超时,如下文进一步描述的。
[0032]在一些实施例中,网络接口 302d返回与上文和下文描述的通信配置信息类似的信息和/或数据。例如,从计算设备102到网络接口 302d的查询可以以与DHCP和/或DNS协议相关联的“选项252”方法的形式来实现。例如,计算设备102可以首先针对“选项252”向DHCP服务器发送查询。如果DHCP服务器已经配置“选项252”,则其可以利用配置信息(诸如URL)答复计算设备102,该配置信息然后可以用于确定直接和/或代理连接。如果DHCP没有“选项252”,则其可以要么忽略查询(并且随后超时)要么答复不支持该选项。可替换地或附加地,可以以类似方式使用DNS名称解析。
[0033]尽管接口 302d积极地响应于计算设备102,但是网络接口 302a_c全部都消极地做出响应,此处通过指示308图示。虚线用于表示指示308,而实线用于指示304和306。该虚线指定来自网络接口 302a-c的消极响应可以通过每一个相应网络接口发送,和/或可以由计算设备102本
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1