用以进行点对点连接的方法、服务器与装置制造方法

文档序号:7815628阅读:233来源:国知局
用以进行点对点连接的方法、服务器与装置制造方法
【专利摘要】本发明涉及用以进行点对点连接的方法、服务器与装置。当第一装置要跟第二装置建立点对点连接的时候,一个服务器协助并且提供连接指令。连接指令定义多个连接流程。当接收连接指令,第一装置根据一个优先顺序,尝试第一个连接流程,如果在预定的时间失败再尝试另一个连接流程。服务器监控连接状态,并且根据统计资料跟不同的情况调整连接指令。
【专利说明】用以进行点对点连接的方法、服务器与装置

【技术领域】
[0001]本发明关于一种点对点连接的方法、服务器与装置,且特别关于一种点对点连接动态设定的方法、服务器与装置。

【背景技术】
[0002]各式各样的电子装置被开发出来,用来改善人们的生活。然而,仍然有许多有待解决的技术问题,以提供更方便与更多的应用可能性。目前的常见的网络环境通常由多个性质相同或不同的次网络(sub-network)组成。例如因特网作为主体,透过各种网关、路由器,可以连接各个家用的局域网络、电信网络提供商后端的私有网络等次网络。举例来说,在现今的网络架构下,使用者如果想要将两个终端装置进行点对点连接,特别是当这两个终端装置在不同的次网络中的时候,其实还是相当的复杂。例如终端装置位在不同的网络地址翻译(Network Address Translat1n)装置后的次网络,可能有各自的私有网络地址。此外,如何快速的建立有效率的网络连接,也是一件非常有挑战性的工作。


【发明内容】

[0003]本发明要解决的技术问题在于,提供一种改进的点对点连接动态设定的方法、月艮务器与装置。
[0004]本发明解决其技术问题所采用的技术方案是:根据本发明第一实施例,提供一个点对点的连接方法,透过一服务器,以协助第一装置以点对点方式连接到第二装置。点对点连接方法包括在服务器接收来自第一装置的联机请求,并且在服务器取得要点对点连接到第二装置的连接参数。除了服务器提供给第一装置连接参数,点对点连接方法也包括提供第一装置连接指令。连接指令对应到一操作方法,而操作方法对应到至少一个的连接流程。第一装置动态决定如何使用每个的连接流程,根据连接指令与连接参数,以跟第二装置进行点对点连接。除了第一装置,第二装置也可以从服务器取得第一装置的连接参数,以及/或对应的连接指令。
[0005]在一个实施例中,操作方法包括定义上述每个连接流程的优先顺序。操作方法也可包括指出每一连接流程对应的超时(time-out)时间。当尝试一个连接流程但无法在对应超时时间完成第一装置与第二装置的点对点连接,则第一装置尝试另一个连接流程。
[0006]此外,连接指令可包括对应到关联连接流程的定义。此定义可包括用来在第一装置执行,以执行对应连接流程的程序代码。另一种做法中,定义包含伪码,用来转换成在第一装置执行连接流程对应的执行逻辑。
[0007]服务器也可监看第一装置与第二装置间点对点连接之联机状态,并且服务器据以调整后续连接指令。服务器也可接收来自第一装置的连接报告,藉以调整后续的连接指令。
[0008]连接指令可包括指定点对点服务器,以协助第一装置与第二装置建立点对点连接。当第一装置与第二装置进行的点对点连接暂时中断时,点对点服务器可以代转(relay)第一装置与第二装置的传输数据,直到第一装置与第二装置的点对点连接恢复正常为止。
[0009]此外,连接流程也可包括第一连接流程与第二连接流程。第一连接流程指出第一装置与第二装置的点对点数据传输,透过服务器协助代转。第二连接流程则指出第一装置与第二装置的点对点数据传输,不是透过服务器协助代转。第一连接流程在第一装置与第二装置的点对点连接建立的初期使用。并且,在第一装置与第二装置建立点对点连接后,第一连接流程替换成第二连接流程。
[0010]此外,本发明的实施例也包括服务器与电子装置,用来改进点对点连接便利性与效率。

【专利附图】

【附图说明】
[0011]下面将结合附图及实施例对本发明作进一步说明,附图中:
[0012]图1例示根据本发明实施例的一种运用环境;
[0013]图2例示根据本发明的实施例的架构图;
[0014]图3A例示根据本发明实施例中,一种服务器、客户端与装置之间的互动方式;
[0015]图3B例示根据本发明实施例的服务器、客户端与装置以及点对点服务器之间的互动方式;
[0016]图4A例示多个连接流程间的优先顺序;
[0017]图4B例示多个连接流程间的另一优先顺序;
[0018]图4C例示多个连接流程的另一优先顺序;
[0019]图5A例示一个指令,用以定义多个连接流程的逻辑排序;
[0020]图5B例示另一个指令,用以定义多个连接流程的逻辑排序;
[0021]图6例示根据本发明实施例的终端装置;
[0022]图7例示根据本发明实施例终端装置的软件观点;
[0023]图8例示根据本发明实施例,用来动态调整点对点连接的行为;
[0024]图9例示当点对点连接中断的时候,暂时透过代转数据传输的做法;以及
[0025]图10例示在建立点对点连接的初期,对于数据传输进行代转的方法。
[0026]符号说明:
[0027]111 因特网520步骤
[0028]113私有网络531步骤
[0029]115家庭网络533步骤
[0030]117家庭网络535步骤
[0031]121网络地址翻译551步骤
[0032]123网络地址翻译553点对点连接
[0033]125网络地址翻译61 电子装置
[0034]127网络地址翻译63 处理器
[0035]131服务器65 内存
[0036]133计算机67 总线
[0037]135手机69 输出入界面
[0038]137计算机71 操作系统
[0039]139 IP摄影机73 应用程序
[0040]141服务器75解释器
[0041]20网络801步骤
[0042]21服务器803步骤
[0043]22手机805步骤
[0044]23IP摄影机807步骤
[0045]24点对点服务器809步骤
[0046]501联机流程901步骤
[0047]503联机流程903步骤
[0048]505联机流程905步骤
[0049]507联机流程907步骤
[0050]509联机流程1002步骤
[0051]510选择联机流程1004步骤
[0052]511联机流程1006步骤
[0053]1008 步骤

【具体实施方式】
[0054]为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的【具体实施方式】。
[0055]请参考图1,图1例示连接到网络的多个不同类别装置。在这个例子中,网络包括数个不同的次网络。举例来说,因特网(Internet) 111上的服务器131或计算机133被给定IPv4或IPv6的地址。每个装置可以直接透过其唯一的IP地址,提供其它装置对这些装置进行连接跟存取。此外,还有各种路由器(router)与网关(gateway)以及各种有线以及/或无线传输信道,用来连接装置,并且处理名称服务(naming service)、路由(routing)服务以及数据传输。
[0056]除了因特网111,有些装置透过因特网提供者(ISP)连接到因特网111。通常,因特网提供者使用因特网提供者的网络地址翻译(NetworkAddress Translat1n, NAT)装置,将有限的IPv4或IPv6的IP地址,对应到因特网提供者的私有网络中的私有地址,让因特网提供者私有网络113中的装置可以分享这些网络资源。根据RFC1918文件,有三种私有地址各自对应不同数目的私有地址。举例来说,10.0.0.0-10.255.255.255可提供 16,777,216 个私有地址,172.16.0.0-17.31.255.255 可提供 I, 048,576 个私有地址,192.168.0.0-192.168.255.255 可提供 65,536 个私有地址。
[0057]同一个私有地址可能在不同的网络被指定给不同的装置。因此,如果只依赖这些私有地址,因特网111的路由器无法直接确定到底数据是要传送给哪个装置。假如计算机133要存取位于因特网提供者私有网络113的装置,首先,关联于因特网提供者(ISP)网络地址翻译(NAT)的公有IP地址会被提供给计算机133。然后,因特网提供者的网络地址翻译,需要找出到底哪个对应的私有地址对应到数据应该要被传送的私有地址。
[0058]网络地址翻译有许多不同的实作方法。此外,在架构网络环境的时候,网络地址翻译还可能发生巢状的组合。举例来说,有两个家庭网络地址翻译123与125位于因特网提供者的私有网络113。家庭网络地址翻译123与家庭网络地址翻译125具有各自的私有家庭网络115与家庭网络117,并且在这些家庭网络上连接各式的终端装置,例如手机135、计算机137与服务器141。
[0059]由于家庭网络地址翻译123与家庭网络地址翻译125位于因特网地址提供者的私有网络113,它们对外的IP地址是类似192.168.1.131这样的私有IP地址,由因特网提供者的网络地址翻译121提供。假如计算机133需要传送数据给手机135,路由器或对应的装置需要找出因特网提供者的网络地址翻译121的公用IP地址,家庭网络地址翻译123的私有IP地址,甚至手机135的私有IP地址。
[0060]对于私有网络中的装置是如何连接到因特网111,例如连接到网站服务器,可以参考RFC1918文件。然而,由于网络环境的复杂性以及各种不同的网络地址翻译设计,对于两个任意装置要达成点对点连接,则是一件相当复杂的事情。
[0061]举例来说,假如手机135希望建立一个点对点连接,以连接到由另一个家庭网络地址翻译127控制的家庭网络119上的IP摄影机139,由于手机135与IP摄影机139位于不同的私有网络,手机135无法直接透过IP摄影机139的私有地址来存取IP摄影机139,再者,由于有网络转换地址(NAT) 127的关系,手机135也无法直接透过网络地址翻译(NAT) 127的公有IP地址去存取IP摄影机139。此外,在一些其他的网络环境中,有不同的防火墙或其他的网络装置让点对点联机更加复杂。在下列的图示与说明中,提供多个实施例来进一步说明本发明。
[0062]请参考图2,其例示在一个作为第一装置的手机装置22,与作为第二装置的IP摄影机23之间的联机建立过程。手机22与IP摄影机23所在的网络还有一个服务器21。这里提到的网络20可以是因特网111、私有网络,或由多个次网络组成的网络,包括透过对应的路由器、网关、交换机(Switch)、卫星或其他装置构成的虚拟私有网络(virtual privatenetwork)、有线或无线、电信网络等。
[0063]在一些情况中,为了建立手机22与IP摄影机23之间的点对点连接,只要知道对方的IP地址,手机22与IP摄影机23只需要直接传送数据到对方的IP地址即可。然而,如图1所示,在一些其他的状况,手机22可能在网络地址翻译装置控制的私有网络里头。此夕卜,IP摄影机23可能存在于另一个网络地址翻译装置控制的私有网络里头。
[0064]尽管如此,当手机22与IP摄影机23连接到一个网络时,假如这些装置被赋予联机能力,手机22与IP摄影机23通常可以连接到一个服务器,例如图2中标示在因特网的服务器21。服务器21通常具有固定IP地址,或是透过动态名称服务(Dynamic NamingService)提供的动态IP地址,用以标定其在网络被存取的地址。
[0065]请参考图3A,其例示一种在手机22与IP摄影机23间建立点对点连接的实施例。首先,手机22传送一个点对点的联机请求给服务器21。服务器21尝试取得IP摄影机23的一个或多个连接参数,以供手机22建立跟IP摄影机23之间的点对点连接。连接参数可包括IP地址或其他可识别其位置之方式,但不限于,IP摄影机23上次回报给服务器21的IP地址。有些时候,当IP摄影机23位于私有网络里头,并且被网络地址翻译装置指定一个IP地址的时候,服务器21会记录网络地址翻译装置的外接IP地址等连接参数。如上所述,由于私有网络内可能有比网络地址翻译装置的IP地址还多的装置数目。因此,端口(port)号码与其他跟网络地址翻译的IP地址有关的信息也会被搜集,以连接回私有网络内的装置。
[0066]在实际的应用中,服务器21除了将IP摄影机23的IP地址等连接参数传给手机22,也可以将手机22的IP地址等连接参数传给IP摄影机23,以便手机22与IP摄影机23间进行打洞(hole punching)等点对点联机的机制,以建立手机22与摄影机23之间的点对点连接。换言之,第一装置与第二装置可以透过服务器取得彼此的连接参数,进而透过各种打洞技巧进行点对点的连接。
[0067]当许多装置依赖服务器21建立点对点连接时,服务器21可能因为过多的负担成为瓶颈(bottleneck)。因此,图3B例示一个点对点服务器24,提供给手机22以协助建立手机22与IP摄影机23之间的点对点连接。在实际的设计中,可以有超过一个的服务器21与点对点服务器24协同运作,以提供上述的服务。此外,为了达成优化的连接效率,服务器21也可以从多个点对点服务器24挑选其中一个最适合的点对点服务器,以协助完成不同装置间的点对点连接,例如处理联机请求、提供连接参数以及/或连接指令。
[0068]由于手机22与IP摄影机23之间可能有各种不同的连接情形,除了上述的连接参数,服务器21也可提供连接指令(connect1n instruct1n)。连接指令指出一个或多个连接流程,供手机22利用连接参数相对于IP摄影机23进行点对点连接。当手机22接收这样的连接指令以及连接参数,手机22开始循序或同步尝试一个或多个连接流程,以建立跟IP摄影机23之间的点对点连接。
[0069]连接流程可代表由手机22加以执行的一连串步骤的方法,用以建立跟IP摄影机23之间的连接。由于有各种不同的网络连接可能性,通常手机22会准备多种候选的连接流程。有些连接流程可能比其他连接流程更慢或是更不稳定,并且有些连接流程可能因为特定的网络情况而无法运作。
[0070]举例来说,在一些最糟的情况下,手机22需要服务器21协助代转(relay)所有手机22跟IP摄影机23之间的点对点数据传输,假如手机22或IP摄影机23在严格的防火墙后方,且其只容许一般的网页浏览。在一些情况下,手机22与IP摄影机23都在同一个私有网络,这时候它们只需要对方的私有地址,便能顺利建立点对点连接。在一些其他的情况下,手机22要达成点对点连接到IP摄影机23,需要知道提供IP摄影机23服务的网络地址翻译的IP地址以及IP摄影机23存取服务器21的端口(Port)。
[0071]更多关于突破网络地址翻译等问题的连接流程可以在打洞(hole punching)的相关文件找到,例如Μ)Ρ打洞、TCP打洞、ICMP打洞、网络地址翻译的任务搜索装置(Sess1n Traversal Utilities for NAT)、使用代转网络地址翻译的搜索(TraversalUsing Relay NAT)、IKE 环境中的 NAT 搜索的交谈(NAT-T Negotiat1n of NAT-Traversalin the IKE)、使用 NAT 搜索的特雷多隧道(Teredo tunneling using NAT traversal)、任务边际控制(Sess1n Border Controller)、边际特定 IP(RSIP)、中间盒通讯(MiddleboxCommunicat1n, MID0CM)、插槽(SOCKS)、网络地址翻译对应协定(NAT PMP)、由即插即用(UPnP)网际网网关装置(I⑶)以及应用层网关(Applicat1n Gateway)等技术。
[0072]除了以预定顺序、静态执行预存在手机22的程序,手机22也可以根据服务器21提供的连接参数与连接指令,动态决定如何使用多个连接流程,用来建立跟IP摄影机23的点对点连接。
[0073]图4A、图4B与图4C例示三种不同的连接指令。在图4A中,有A,B,C,D,E,F六种连接流程,每一种对应到建立点对点连接的一序列流程步骤。这些连接流程透过连接指令定义的操作方法来加以排序并排定优先顺序。举例来说,为了建立点对点连接,会先尝试使用某些连接流程,然后才尝试使用其他连接流程,并且/或有些连接流程即使也能建立点对点连接,但是优先顺序比较后位。在这个连接指令的例子中,连接流程A首先被测试,例如去试试看IP摄影机23是否跟手机22位在同一个私有网络中,并且如果发现就是这样的情形,直接用私有地址来进行手机22与IP摄影机23之间的点对点连接。其他的连接流程B, C,D, E, F可以分别代表其他为了达成手机22与IP摄影机23之间点对点连接的方法。
[0074]连接指令也可以包括每个连接流程的超时(time-out)参数。具体来说,当一个连接流程尝试超过超时时间,例如1.5秒,仍然无法建立点对点连接的时候,就使用另一个连接流程进行尝试。
[0075]在图4B中,连接流程根据不同的优先顺序进行排序。这样的优先顺序可以动态由服务器21进行调整。在一些实施例中,服务器21监控连接状态,以掌握在不同的环境配置下,到底哪一个连接流程比其他连接流程更稳定以及/或更有效率。在某些情况下的优先顺序可能比其他的优先顺序好,但是在其他的情况下,这样的优先顺序可能需要进行调整才能达到比较好的效果。可能影响效率与稳定性的因素包括,但不限于,装置所在的网络环境,装置的处理效能以及/或连接流程本身的效率。有些时候,当有多种点对点连接方法连接两个装置时,然而有些方法因为使用到电信网络需要花更多的费用的时候,用来执行点对点连接的成本也可以作为服务器21考虑是否以及优先采用对应连接流程因素的重要比例。
[0076]在图4C中,除了对于连接流程的顺序进行更换,连接流程本身也可被进一步修改。具体来说,服务器21可以提供手机22 —个修改的连接流程B’来替换原先的连接流程B,并且用修改过的连接流程C’替换原本的连接流程C。如上所述,这样的替换可以是基于算法或编码本身的进一步效率化,但也可能是根据手机22、IP摄影机23的不同环境参数、网络环境或其他因素,而做对应的修改。
[0077]连接指令可以在手机22与IP摄影机23的连接任务(connect1n sess1n)过程保持相同。当然,连接指令也可以在连接任务过程进行改变。连接指令可包括完整的程序代码或是伪码,以便在手机22或IP摄影机23上执行。另一种替代做法也可以是,连接指令可只包括对应的连接流程的指针号码,假如程序代码或对应的逻辑已经存在手机22以及/或IP摄影机23。
[0078]此外,如图4A,4B,4C所示,连接流程可以以序列方式一个接着一个尝试,也可以全部同步尝试或部份同步进行尝试。此外,也可以在连接指令设定一些条件判断,以决定在特定情况下直接跳过某些或是直接采用某些连接流程。
[0079]图5A与图5B例示两种不同的连接指令。在图5A中,连接流程A 501,B503与D507被同步尝试(步骤551)以找出到底哪一个比较适合用来建立点对点连接。假如都无法达成目标,连接流程C 505,E509与F 511再被尝试看看,是否能够建立点对点连接(步骤553)。然后,决定一个连接策略(步骤520)并且建立点对点连接。有些时候,连接状态由服务器21或是点对点服务器24进行搜集。可能有多种候选连接流程可以用来建立点对点连接,但是只有一个或数个在不同的情况下被选用。
[0080]图5B例示不同的连接流程。连接流程A501与连接流程B503首先被尝试。在步骤531,连接状态被决定。在某些条件满足下,连接流程D 507被尝试,并且在其他条件下,连接流程C 505与连接流程E509被尝试。在步骤553,另一个条件被测试是否满足,并且连接流程F511被采用。连接流程D507的连接状态与连接流程F511被连接状态在步骤535被比较,并且选用比较适合的连接流程(步骤510)。
[0081]请注意手机22与IP摄影机23在上面的说明只是当做例子,并非用来限制本发明。在越来越流行的物联网世界中,有各种不同的装置被研发出来,而需要进行彼此间点对点的连接以达成不同的应用。举例来说,手机22可以透过点对点连接,来观看由IP摄影机23截取的视讯内容。其他装置例如手表、平板计算机、可穿戴装置、可戴的眼镜、搜集各种类别信号的传感器、机器人等等,也可以在相同的发明概念下加以设计,达成上述的发明效果O
[0082]图6例示电子装置61的一种架构,可用在上述的点对点连接。电子装置61具有处理器63、内存65、总线67与网络输出入界面69。处理器63从内存65加载程序代码加以执行,以达成预定的功能,例如提供手机功能、提供IP摄影机功能等等。处理器63透过总线67将联机请求传送到网络输出入界面69,并且网络输出入界面69将联机请求传送到上述的网络。如上述服务器21的服务器接收联机请求,并且回复电子装置61连接参数以及连接指令,供电子装置61与另一个装置建立点对点连接。
[0083]在一些情况中,连接指令包括存在内存65供处理器63执行的程序代码。在一些情况中,连接指令包括伪码,可被转换成对应的处理逻辑,以便由处理器63加以执行。存在内存65的连接流程也可以替换成存于连接指令中的新连接流程。除了直接传送程序代码给电子装置61,另一种做法也包括对于不同的连接流程定义不同的超时时间,或是重新安排尝试各个连接流程的优先顺序。
[0084]处理器63可以是一般的处理器,例如ARM或Intel的处理器,也可以是微控制器,应用基础的芯片(Applicat1n Specific Integrated Chip),或是其他能提供上述逻辑功能的电路。网络输出入界面69可以是有线或无线的网络协议,例如但不限于,蓝芽、W1-F1、RJ-45等网络传输标准。内存65可以是随机读取内存(DRAM)、缓存器、非挥发性内存、磁盘、或其他一种或多种内存装置的组合。总线67可以是包含控制电路的信号传输线、电子或光学传输网络或任何其他的信号传输机制。
[0085]图7例示图6电子装置61的软件观点。如上所述,服务器21可以透过连接指令传送程序代码给手机22这类的电子装置。替代做法也包括,服务器21可传送伪码,再进一步转换成对应的可执行逻辑,以便在电子装置上执行。手机22可以具有操作系统71,例如Android, 1S, Blackberry, Firefox等,以提供特定的应用程序界面,供应用程序73例如点对点摄影机监看应用程序来存取。应用程序73透过操作系统71的应用程序界面向服务器21发出联机请求。服务器21响应连接指令,其内包括伪码。连接指令首先被操作系统71接受,然后传给应用程序73进行处理。应用程序73可以把这个伪码传给一个解释器75进行解译并执行对应的逻辑,以建立上述的点对点连接,连接到一个IP摄影机。请注意,这里所举的例子,只是为了说明各种实作的方法并不是用来限制本发明的范围。
[0086]图8例示点对点连接方法,使用服务器来协助第一装置连接到第二装置。服务器首先接受联机请求(步骤801)。联机请求支出第一装置希望跟第二装置建立点对点的连接。服务器取得关于要跟第二装置建立点对点连接的连接参数(步骤803)。举例来说,连接参数可能包括对应到第二装置的网络地址翻译装置对外IP地址(outgoing IP address)以及端口。除了提供第一装置第二装置的连接参数,服务器也提供第一装置连接指令(步骤805)。连接指令可指示对于多个连接流程的操作方法(步骤805)。每一个连接流程包括用来建立点对点连接的一序列步骤。操作方法指出这些连接流程在第一装置被执行的方式,并且也可包括这些连接流程彼此间的优先顺序。服务器也可监测第一装置与第二装置的连接状态(步骤807),并且调整后续的连接指令(步骤809),以通知第一装置改变操作连接流程的方法(步骤807)。
[0087]图9例示点对点连接流程的实施例。在这个实施例中,第一装置跟第二装置透过上述或上面没有提到的点对点方法进行点对点连接(步骤901)。在点对点连接以及数据传输中,假如点对点连接暂时无法连接而中断(步骤903),点对点服务器可以用来作为代传第一装置与第二装置间数据。同时,第一装置会尝试重新以同样的连接流程或是不同的连接流程的点对点方式连接到第二装置。假如点对点连接恢复,数据会再度透过点对点传输方式进行(步骤905)。在这样的设计下,即使点对点连接暂时中断,第一装置与第二装置间的数据传输仍然可以保持继续。因此便能提供更稳定的数据传输。
[0088]图10是点对点连接的初始阶段的改进方案。首先,第一装置尝试跟第二装置建立点对点的连接(步骤1002)。具有不同策略的一个或多个的连接流程可以被尝试使用,以在第一装置与第二装置间建立点对点连接。第一装置可以检查是否这样的点对点连接可以建立(步骤1004)。不管如何,在点对点连接建立之前,数据可以透过点对点服务器进行代转(步骤1008)。在点对点连接建立后,数据便可以透过点对点直接连接来进行传输。这样的方法可以省略等待建立点对点连接的时间而可先行透过代转做数据传输。在一些应用情况下,例如IP摄影机的串流影像传输,透过上述的做法可以提供使用者更好的使用体验,因为光是要进行点对点连接可能就需要数秒的等待时间。
[0089]在一个实施例中,除了公用地址或私用地址,第一装置与第二装置各自具有唯一标识符(Unique Identificat1n, UID)。UID可以透过一个点对点服务器指定,例如上述的服务器21,或是透过制作每个装置的厂商加以设定,以用来进行点对点连接。这些WD可以进一步整合到用户信息,并且服务器维护并且管理数据库,以维护UID信息跟对应的用户信息。透过这样的做法,第一装置可以跟服务器查询所有注册在同一个用户的WD的对应装置,或是用户被授权存取的装置列表。这样的机制可以被整合到上述的一个或多个实施例。
[0090]此外,服务器21可以透过在一个机器上安装对应的软件来实作,以提供上述协助终端装置间进行点对点连接的服务。服务器21也可以用软件模块实作,而执行于多个机器上,或是实作成一个应用程序,在另一个云端运算提供商的云端运算环境执行。
[0091]虽然本发明以前述之较佳实施例揭露如上,然其并非用以限定本发明,任何熟习相像技艺者,在不脱离本发明之精神和范围内,当可作些许之更动与润饰,因此本发明之专利保护范围须视本说明书所附之申请专利范围所界定者为准。
【权利要求】
1.一种点对点联机方法,其特征在于,透过一服务器协助一第一装置以一点对点连接,连接到一第二装置,包含: 接收来自该第一装置的点对点联机请求; 提供进行该点对点连接到该第二装置所需的一连接参数;以及 提供该第一装置一连接指令,该连接指令对应到一操作方法,该操作方法对应到至少一连接流程; 根据该连接指令与该连接参数,该第一装置动态决定如何使用该连接流程以跟该第二装置建立该点对点连接。
2.根据权利要求1所述的方法,其特征在于,其中该操作方法包含使用该连接流程之优先顺序。
3.根据权利要求1所述的方法,其特征在于,其中该操作方法包含同步尝试复数个该连接流程。
4.根据权利要求1所述的方法,其特征在于,其中该操作方法包含指出每一对应该连接流程的一超时时间,当尝试该连接流程无法在对应该超时时间完成该第一装置与该第二装置的该点对点连接,则该第一装置尝试另一个该连接流程。
5.根据权利要求1所述的方法,其特征在于,其中该连接指令包含用以在该第一装置执行的程序代码,以执行对应的该连接流程。
6.根据权利要求1所述的方法,其特征在于,其中该连接指令包含一伪码,用以转换成对应的执行逻辑,以操作该第一装置,用以执行对应的该连接流程。
7.根据权利要求1所述的方法,其特征在于,更包含下列步骤: 监控该第一装置与该第二装置的该点对点连接的联机状态,并且根据联机状态,该服务器调整后续的该连接指令。
8.根据权利要求1所述的方法,其特征在于,更包含下列步骤: 接收来自该第一装置之连接报告,以调整后续之该连接指令。
9.根据权利要求1所述的方法,其特征在于,其中该连接指令包含指定一点对点服务器,用以协助该第一装置与该第二装置,用以建立该点对点连接。
10.根据权利要求9所述的方法,其特征在于,其中当该第一装置与该第二装置间之该点对点连接暂时中断,直到该第一装置与该第二装置间之该点对点连接恢复前,由该点对点服务器代转该第一装置与该第二装置间进行该点对点连接之数据传输。
11.根据权利要求9所述的方法,其特征在于,其中该连接流程包含一第一连接流程与一第二连接流程,该第一连接流程指示透过该点对点服务器代转该第一装置与该第二装置间的数据传输,该第二连接流程指示不透过该点对点服务器代转该第一装置与该第二装置的数据传输,在该第一装置与该第二装置进行该点对点连接的早期阶段采用该第一连接流程,并且在该第一装置与该第二装置建立该点对点连接后,替换该第一连接流程为该第二连接流程。
12.一种服务器系统,其特征在于,用以在一第一装置与一第二装置间透过一网络建立一点对点连接,包含: 一网络界面,用以接收来自该第一装置发出的点对点联机请求,以连接到该第二装置; 一储存器,用以储存用以进行该点对点连接到该第二装置的一连接参数;以及 一处理器,提供该第一装置该连接参数,也提供该第一装置一连接指令,该连接指令对应到一操作方法,该操作方法对应到至少一连接流程,该第一装置动态决定如何使用该连接流程,根据该连接参数与该连接指令,以进行对于该第二装置的该点对点连接。
13.根据权利要求12所述的服务器系统,其特征在于,其中该操作方法包含使用该连接流程之优先顺序。
14.根据权利要求12所述的服务器系统,其特征在于,其中该操作方法包含同步尝试复数个该连接流程。
15.根据权利要求12所述的服务器系统,其特征在于,其中该操作方法包含指出每一对应该连接流程的一超时时间,当尝试该连接流程无法在对应该超时时间完成该第一装置与该第二装置的该点对点连接,则该第一装置尝试另一个该连接流程。
16.根据权利要求12所述的服务器系统,其特征在于,其中该连接指令包含用以在该第一装置执行的程序代码,以执行对应的该连接流程。
17.根据权利要求12所述的服务器系统,其特征在于,其中该连接指令包含一伪码,用以转换成对应的执行逻辑,以操作该第一装置,用以执行对应的该连接流程。
18.—电子装置,其特征在于,用于一点对点连接,包含: 一网络界面,用以连接到一网络;以及 一处理器,用以透过该网络界面传送联机请求到一服务器以该点对点连接到一第二装置,该处理器接收来自该服务器之一连接指令与一连接参数,该连接指令对应到一操作方法,该操作方法对应到至少一连接流程,该处理器动态决定如何使用该连接流程,根据该连接参数与该连接指令,建立该点对点连接到该第二装置,该操作方法包含指出每一对应该连接流程的一超时时间,当尝试一个该连接流程无法在对应该超时时间完成该电子装置与该第二装置的该点对点连接,则该电子装置尝试另一个该连接流程。
19.根据权利要求18所述的电子装置,其特征在于,其中该连接指令包含用以在该处理器执行的程序代码,以执行对应的该连接流程。
20.根据权利要求18所述的电子装置,其特征在于,其中该连接指令包含一伪码,用以转换成对应的执行逻辑,以操作该处理器,用以执行对应的该连接流程。
【文档编号】H04L29/08GK104468696SQ201410506048
【公开日】2015年3月25日 申请日期:2014年9月28日 优先权日:2014年6月13日
【发明者】高于立, 何文凯, 简国栋 申请人:物联智慧股份有限公司, 物联智慧科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1