掌桥专利:专业的专利平台
掌桥专利
首页

点对点组网方法及装置

文献发布时间:2024-04-18 19:58:26


点对点组网方法及装置

技术领域

本说明书实施例涉及计算机网络技术领域,特别涉及点对点组网方法。

背景技术

在公司内部,协同办公成为了越来越多部门的需求,在协同办公中,不可避免的需要进行数据传输,在进行数据传输的过程中,可能存在较大的数据量。

目前,对于不属于同一局域网下的终端,可以通过一台中心服务器承接中介的作用,不同的局域网中的终端均在该中心服务器注册,并通过该中心服务器进行数据传输,然而,在多个终端同时进行发送数据,并且发送的数据量较大的情况下,服务器的带宽会影响所有正在传输数据的终端,在达到服务器带宽上限的情况下,就会限制数据传输的速度。

由此,亟需一种更好的方案。

发明内容

有鉴于此,本说明书实施例提供了点对点组网方法。本说明书一个或者多个实施例同时涉及点对点组网装置,一种计算设备,一种计算机可读存储介质以及一种计算机程序,以解决现有技术中存在的技术缺陷。

根据本说明书实施例的第一方面,提供了一种点对点组网方法,包括:

从中心服务器获取目标机器的连接信息;

基于连接信息确定初始端口,并基于初始端口确定端口碰撞范围;

基于初始端口和端口碰撞范围确定目标端口;

基于目标端口与目标机器建立目标网络连接。

在一种可能的实现方式中,从中心服务器获取目标机器的连接信息,包括:

确定目标网络的标识和目标机器标识;其中,目标网络为目标机器所在的网络;

基于目标网络的标识从中心服务器的网络注册表中确定目标网络注册表;

基于目标机器标识在目标网络注册表中获取目标机器的连接信息。

在一种可能的实现方式中,基于连接信息确定初始端口,并基于初始端口确定端口碰撞范围,包括:

从连接信息中确定初始端口,并确定碰撞阈值;

基于初始端口和碰撞阈值确定端口碰撞范围。

在一种可能的实现方式中,基于初始端口和端口碰撞范围确定目标端口,包括:

基于初始端口,从碰撞范围中确定至少一个碰撞端口;

基于至少一个碰撞端口进行连通性检测,确定至少一个检测结果;

在至少一个检测结果为可以连通的情况下,从至少一个检测结果对应的碰撞端口中确定目标端口。

在一种可能的实现方式中,还包括:

在至少一个检测结果均为不能连通的情况下,确定中间节点数量阈值,并基于中间节点数量阈值从中心服务器获取至少一个中间机器的地址信息;

基于至少一个中间机器的地址信息,与至少一个中间机器建立至少一个中间网络连接;

基于至少一个中间网络连接,向至少一个中间机器发送碰撞检测任务,以使至少一个中间机器基于碰撞检测任务与目标机器建立网络连接。

在一种可能的实现方式中,还包括:

在至少一个中间机器均不能与目标机器建立网络连接,或不能与至少一个中间机器建立至少一个中间网络连接的情况下,通过中心服务器与目标机器进行数据传输。

在一种可能的实现方式中,在至少一个中间机器与目标机器建立网络连接之后,还包括:

通过至少一个中间机器与目标机器进行数据传输。

根据本说明书实施例的第二方面,提供了一种点对点组网装置,包括:

信息获取模块,被配置为从中心服务器获取目标机器的连接信息;

范围确定模块,被配置为基于连接信息确定初始端口,并基于初始端口确定端口碰撞范围;

端口碰撞模块,被配置为基于初始端口和端口碰撞范围确定目标端口;

网络建立模块,被配置为基于目标端口与目标机器建立网络连接。

根据本说明书实施例的第三方面,提供了一种计算设备,包括:

存储器和处理器;

所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现上述点对点组网方法的步骤。

根据本说明书实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现上述点对点组网方法的步骤。

根据本说明书实施例的第五方面,提供了一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述点对点组网方法的步骤。

本说明书实施例提供点对点组网方法及装置,其中点对点组网方法包括:从中心服务器获取目标机器的连接信息;基于连接信息确定初始端口,并基于初始端口确定端口碰撞范围;基于初始端口和端口碰撞范围确定目标端口;基于目标端口与目标机器建立目标网络连接。通过从中心服务器获取目标机器的连接信息;基于连接信息确定初始端口,并基于初始端口确定端口碰撞范围;基于初始端口和端口碰撞范围确定目标端口;基于目标端口与目标机器建立目标网络连接,由此,可以直接在两个终端之间建立网络连接,从而避免服务器带宽的影响,提高了数据传输速度,提高了稳定性。

附图说明

图1是本说明书一个实施例提供的一种点对点组网方法的场景示意图;

图2是本说明书一个实施例提供的一种点对点组网方法的流程图;

图3是本说明书一个实施例提供的一种点对点组网装置的结构示意图;

图4是本说明书一个实施例提供的一种计算设备的结构框图。

具体实施方式

在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。

在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

在本说明书中,提供了点对点组网方法,本说明书同时涉及点对点组网装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。

参见图1,图1示出了根据本说明书一个实施例提供的一种点对点组网方法的场景示意图。

在图1的应用场景中,计算设备101可以从中心服务器获取目标机器的连接信息102。然后,计算设备101可以基于连接信息102确定初始端口,并基于初始端口确定端口碰撞范围103。之后,计算设备101可以基于初始端口和端口碰撞范围103确定目标端口104。最后,计算设备101可以基于目标端口104与目标机器建立目标网络连接,如附图标记105所示。

需要说明的是,上述计算设备101可以是硬件,也可以是软件。当计算设备101为硬件时,可以实现成多个服务器或终端设备组成的分布式集群,也可以实现成单个服务器或单个终端设备。当计算设备101体现为软件时,可以安装在上述所列举的硬件设备中。其可以实现成例如用来提供分布式服务的多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。

参见图2,图2示出了根据本说明书一个实施例提供的一种点对点组网方法的流程图,具体包括以下步骤。

步骤201:从中心服务器获取目标机器的连接信息。

在一种可能的实现方式中,从中心服务器获取目标机器的连接信息,包括:确定目标网络的标识和目标机器标识;其中,目标网络为目标机器所在的网络;基于目标网络的标识从中心服务器的网络注册表中确定目标网络注册表;基于目标机器标识在目标网络注册表中获取目标机器的连接信息。

在实际应用中,中心服务器可以为连接各终端的服务器,也可以为连接不同局域网的服务器,客户端在连接到中心服务器的情况下,中心服务器需要获取客户端的地址信息以及端口信息,并进行记录,形成网络注册表。也可以每个局域网对应一个网络注册表。

例如,要与客户端A进行网络连接,首先确定客户端A的标识:“A”,并确定客户端A所在的局域网的标识“N1”,则从服务器的网络注册表中根据“N1”确定目标网络注册表,从目标网络注册表中根据客户端A的标识“A”确定客户端A的连接信息:192.168.1.55,端口4450。

步骤202:基于连接信息确定初始端口,并基于初始端口确定端口碰撞范围。

在一种可能的实现方式中,基于连接信息确定初始端口,并基于初始端口确定端口碰撞范围,包括:从连接信息中确定初始端口,并确定碰撞阈值;基于初始端口和碰撞阈值确定端口碰撞范围。

在实际应用中,确定了客户端的连接信息,并不知道可以通过那个端口连接成功,则需要进行端口碰撞,从而确定可以连接的端口。在端口碰撞的过程中,可能会存在碰撞次数过多而被防火墙禁止,所以需要确定端口碰撞范围。

沿用上例,要与客户端A进行网络连接,首先确定客户端A的标识:“A”,并确定客户端A所在的局域网的标识“N1”,则从服务器的网络注册表中根据“N1”确定目标网络注册表,从目标网络注册表中根据客户端A的标识“A”确定客户端A的连接信息:192.168.1.55,端口4450。碰撞阈值为50,则基于端口4450,可以确定端口碰撞范围为4400至4500之间。

步骤203:基于初始端口和端口碰撞范围确定目标端口。

在一种可能的实现方式中,基于初始端口和端口碰撞范围确定目标端口,包括:基于初始端口,从碰撞范围中确定至少一个碰撞端口;基于至少一个碰撞端口进行连通性检测,确定至少一个检测结果;在至少一个检测结果为可以连通的情况下,从至少一个检测结果对应的碰撞端口中确定目标端口。

沿用上例,要与客户端A进行网络连接,首先确定客户端A的标识:“A”,并确定客户端A所在的局域网的标识“N1”,则从服务器的网络注册表中根据“N1”确定目标网络注册表,从目标网络注册表中根据客户端A的标识“A”确定客户端A的连接信息:192.168.1.55,端口4450。碰撞阈值为50,则基于端口4450,可以确定端口碰撞范围为4400至4500之间。则依次在4400至4500之间进行尝试,也可以同时向多个端口进行连接尝试,从而提高连接速度。若发现多个端口可用,则从多个端口中随机确定一个作为目标端口。

需要说明的是,还可以基于设置的梯度阈值进行寻找,例如,设置多个碰撞阈值,第一碰撞阈值为20,则基于端口4450,可以确定端口碰撞范围为4430至4470之间。若未找到可以使用的端口,则确定第二碰撞阈值为50,则基于端口4450,可以确定端口碰撞范围为4400至4500之间。

在一种可能的实现方式中,还包括:在至少一个检测结果均为不能连通的情况下,确定中间节点数量阈值,并基于中间节点数量阈值从中心服务器获取至少一个中间机器的地址信息;基于至少一个中间机器的地址信息,与至少一个中间机器建立至少一个中间网络连接;基于至少一个中间网络连接,向至少一个中间机器发送碰撞检测任务,以使至少一个中间机器基于碰撞检测任务与目标机器建立网络连接。

沿用上例,要与客户端A进行网络连接,首先确定客户端A的标识:“A”,并确定客户端A所在的局域网的标识“N1”,则从服务器的网络注册表中根据“N1”确定目标网络注册表,从目标网络注册表中根据客户端A的标识“A”确定客户端A的连接信息:192.168.1.55,端口4450。碰撞阈值为50,则基于端口4450,可以确定端口碰撞范围为4400至4500之间。则依次在4400至4500之间进行尝试,若发现4400至4500之间的端口均无法连接,则确定中间节点数量阈值:2,随机确定2个中间机器:客户端B和客户端C,可以依次对客户端B和客户端C进行端口碰撞,从而与客户端B和客户端C建立网络连接,也可以同时对客户端B和客户端C进行端口碰撞。在与客户端B或客户端C建立网络连接之后,控制客户端B或客户端C对目标机器进行端口碰撞,从而建立户端B或客户端C与目标机器的网络连接。

需要说明的是,对中间机器进行端口碰撞网络连接的方法,以及中间机器对目标机器进行端口碰撞网络连接的方法,与上述对目标机器进行碰撞网络连接的方法相同,本说明书实施例不再进行赘述。

步骤204:基于目标端口与目标机器建立目标网络连接。

在一种可能的实现方式中,在至少一个中间机器与目标机器建立网络连接之后,还包括:通过至少一个中间机器与目标机器进行数据传输。

在实际应用中,如果与目标机器建立网络连接之后,即可直接与目标数据进行数据传输,而不需要通过中心服务器。如果通过中间机器与目标机器建立网络连接之后,即可通过中间机器与目标数据进行数据传输,由此,不被中心服务器的数据处理量和带宽影响,提高了数据传输速度。

在一种可能的实现方式中,还包括:在至少一个中间机器均不能与目标机器建立网络连接,或不能与至少一个中间机器建立至少一个中间网络连接的情况下,通过中心服务器与目标机器进行数据传输。

在实际应用中,若发现既无法直接与目标机器建立网络连接,也无法通过中间机器与目标机器建立网络连接,则可以使用中心服务器进行数据传输,保证数据传输功能。

本说明书实施例提供点对点组网方法及装置,其中点对点组网方法包括:从中心服务器获取目标机器的连接信息;基于连接信息确定初始端口,并基于初始端口确定端口碰撞范围;基于初始端口和端口碰撞范围确定目标端口;基于目标端口与目标机器建立目标网络连接。通过从中心服务器获取目标机器的连接信息;基于连接信息确定初始端口,并基于初始端口确定端口碰撞范围;基于初始端口和端口碰撞范围确定目标端口;基于目标端口与目标机器建立目标网络连接,由此,可以直接在两个终端之间建立网络连接,从而避免服务器带宽的影响,提高了数据传输速度,提高了稳定性。

与上述方法实施例相对应,本说明书还提供了点对点组网装置实施例,图3示出了本说明书一个实施例提供的一种点对点组网装置的结构示意图。如图3所示,该装置包括:

信息获取模块301,被配置为从中心服务器获取目标机器的连接信息;

范围确定模块302,被配置为基于连接信息确定初始端口,并基于初始端口确定端口碰撞范围;

端口碰撞模块303,被配置为基于初始端口和端口碰撞范围确定目标端口;

网络建立模块304,被配置为基于目标端口与目标机器建立网络连接。

在一种可能的实现方式中,信息获取模块301,还被配置为:

确定目标网络的标识和目标机器标识;其中,目标网络为目标机器所在的网络;

基于目标网络的标识从中心服务器的网络注册表中确定目标网络注册表;

基于目标机器标识在目标网络注册表中获取目标机器的连接信息。

在一种可能的实现方式中,范围确定模块302,还被配置为:

从连接信息中确定初始端口,并确定碰撞阈值;

基于初始端口和碰撞阈值确定端口碰撞范围。

在一种可能的实现方式中,端口碰撞模块303,还被配置为:

基于初始端口,从碰撞范围中确定至少一个碰撞端口;

基于至少一个碰撞端口进行连通性检测,确定至少一个检测结果;

在至少一个检测结果为可以连通的情况下,从至少一个检测结果对应的碰撞端口中确定目标端口。

在一种可能的实现方式中,网络建立模块304,还被配置为:

在至少一个检测结果均为不能连通的情况下,确定中间节点数量阈值,并基于中间节点数量阈值从中心服务器获取至少一个中间机器的地址信息;

基于至少一个中间机器的地址信息,与至少一个中间机器建立至少一个中间网络连接;

基于至少一个中间网络连接,向至少一个中间机器发送碰撞检测任务,以使至少一个中间机器基于碰撞检测任务与目标机器建立网络连接。

在一种可能的实现方式中,网络建立模块304,还被配置为:

在至少一个中间机器均不能与目标机器建立网络连接,或不能与至少一个中间机器建立至少一个中间网络连接的情况下,通过中心服务器与目标机器进行数据传输。

在一种可能的实现方式中,网络建立模块304,还被配置为:

在至少一个中间机器与目标机器建立网络连接之后,还包括:

通过至少一个中间机器与目标机器进行数据传输。

本说明书实施例提供点对点组网方法及装置,其中点对点组网装置包括:从中心服务器获取目标机器的连接信息;基于连接信息确定初始端口,并基于初始端口确定端口碰撞范围;基于初始端口和端口碰撞范围确定目标端口;基于目标端口与目标机器建立目标网络连接。通过从中心服务器获取目标机器的连接信息;基于连接信息确定初始端口,并基于初始端口确定端口碰撞范围;基于初始端口和端口碰撞范围确定目标端口;基于目标端口与目标机器建立目标网络连接,由此,可以直接在两个终端之间建立网络连接,从而避免服务器带宽的影响,提高了数据传输速度,提高了稳定性。

上述为本实施例的一种点对点组网装置的示意性方案。需要说明的是,该点对点组网装置的技术方案与上述的点对点组网方法的技术方案属于同一构思,点对点组网装置的技术方案未详细描述的细节内容,均可以参见上述点对点组网方法的技术方案的描述。

图4示出了根据本说明书一个实施例提供的一种计算设备400的结构框图。该计算设备400的部件包括但不限于存储器410和处理器420。处理器420与存储器410通过总线430相连接,数据库450用于保存数据。

计算设备400还包括接入设备440,接入设备440使得计算设备400能够经由一个或多个网络460通信。这些网络的示例包括公用交换电话网(PSTN,Public SwitchedTelephone Network)、局域网(LAN,Local Area Network)、广域网(WAN,Wide AreaNetwork)、个域网(PAN,Personal Area Network)或诸如因特网的通信网络的组合。接入设备440可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC,networkinterface controller))中的一个或多个,诸如IEEE802.11无线局域网(WLAN,WirelessLocal Area Network)无线接口、全球微波互联接入(Wi-MAX,WorldwideInteroperability for Microwave Access)接口、以太网接口、通用串行总线(USB,Universal Serial Bus)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC,Near FieldCommunication)。

在本说明书的一个实施例中,计算设备400的上述部件以及图4中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图4所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。

计算设备400可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或个人计算机(PC,Personal Computer)的静止计算设备。计算设备400还可以是移动式或静止式的服务器。

其中,处理器420用于执行如下计算机可执行指令,该计算机可执行指令被处理器执行时实现上述点对点组网方法的步骤。上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的点对点组网方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述点对点组网方法的技术方案的描述。

本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现上述点对点组网方法的步骤。

上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的点对点组网方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述点对点组网方法的技术方案的描述。

本说明书一实施例还提供一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述点对点组网方法的步骤。

上述为本实施例的一种计算机程序的示意性方案。需要说明的是,该计算机程序的技术方案与上述的点对点组网方法的技术方案属于同一构思,计算机程序的技术方案未详细描述的细节内容,均可以参见上述点对点组网方法的技术方案的描述。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。

需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。

以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。

相关技术
  • 基于物联网异构设备的自组网通信方法、装置及自组网
  • 基于区块链的点对点风险自治保险方法及装置
  • 一种可穿戴设备的自组网通信方法及装置
  • 一种通信设备组网的调测方法及装置
  • 自组网中点对点物理层通信方法、装置、发送UE和接收UE
  • 自组网中点对点物理层通信方法、装置、发送UE和接收UE
技术分类

06120116492497