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

一种数据的发送方法、装置、电子设备及存储介质

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


一种数据的发送方法、装置、电子设备及存储介质

技术领域

本申请涉及通讯技术领域,具体而言,涉及一种数据的发送方法、装置、电子设备及存储介质。

背景技术

两端进行网络通讯时,需要两端的IP地址处于同一网段下,两端的网卡处于活跃状态,通过网线连接后,绑定可以连接到服务端的网卡IP地址,当存在数据发送到同网段的服务器时,由系统根据网卡的IP地址进行转发数据。当存在多个有效并且与服务器网段相同的网卡时,系统容易选择错误的网卡,无法与服务器连接,导致数据丢失的情况。

发明内容

有鉴于此,本申请的目的在于提供一种数据的发送方法、装置、电子设备及存储介质,以提高两端通讯过程中,数据传输的稳定性和完整性。

第一方面,本申请提供了一种数据的发送方法,方法包括:确定出处于活跃状态且与服务器对应的多个预设网段处于相同网段的多个待选网卡;确定多个待选网卡中是否存在满足服务器连接条件的目标网卡;若存在,则通过目标网卡向服务器发送本轮数据;若不存在,则通过历史待选网卡向服务器发送本轮数据,历史待选网卡为向服务器发送上一轮数据的网卡。

优选的,服务器对应的预设网段包括第一预设网段、第二预设网段,确定多个待选网卡中是否存在满足服务器连接条件的目标网卡的步骤,具体包括:确定多个待选网卡中是否存在至少一个与第一预设网段相同网段的第一待选网卡;若是,则在所有第一待选网卡中确定出目标网卡;若否,则确定多个待选网卡中是否存在至少一个与第二预设网段相同网段的第二待选网卡,若是,则在所有第二待选网卡中确定出目标网卡,若否,则执行所述不存在满足服务器连接调节的目标网卡的步骤。

优选的,在所有第一待选网卡中确定出目标网卡的步骤,具体包括:针对每一第一待选网卡,确定该第一待选网卡与服务器之间的Ping通测试是否通过;当只有一第一待选网卡通过时,则确定该第一待选网卡为目标网卡,当有多个第一待选网卡通过时,则执行IP地址重置的步骤;当没有第一待选网卡通过时,则执行在所有第二待选网卡中确定出目标网卡的步骤。

优选的,还包括:针对每一第一待选网卡,当该第一待选网卡与服务器之间的Ping通测试不通过时,则将该第二待选网卡标记为禁用状态。

优选的,执行IP地址重置的步骤,具体包括:在多个第一待选网卡中,随机确定出一第一待选网卡;针对随机出的第一待选网卡,将该第一待选网卡的IP地址修改为与第二预设网段对应的IP地址,并确定修改IP地址后的该第一待选网卡与服务器之间的Ping通测试是否通过,若通过,则将该第一待选网卡作为目标网卡向服务器发送本轮数据,其中,服务器的IP地址也修改为与第二预设网段对应的IP地址,若不通过,则执行通过历史待选网卡向服务器发送本轮数据,历史待选网卡为向服务器发送上一轮数据的网卡的步骤。

优选的,还包括:若不通过,则将该第一待选网卡的IP地址恢复为修改前的IP地址。

优选的,确定出处于活跃状态且与服务器对应的多个预设网段处于相同网段的多个待选网卡的步骤,具体包括:获取用户端扫描到的所有已绑定网卡;针对获取到的每一已绑定网卡,确定该已绑定网卡是否为活跃状态;若是,则确定该已绑定网卡的是否与服务器对应的一预设网段处于相同网段,若是,则将已绑定网卡确定为一待选网卡,若否,则将该已绑定网卡标记为禁用状态。

第二方面,本申请提供了一种数据的发送装置,装置包括:

第一确定模块,用于确定出处于活跃状态且与服务器对应的多个预设网段处于相同网段的多个待选网卡;

第二确定模块,用于确定多个待选网卡中是否存在满足服务器连接条件的目标网卡;若存在,则通过目标网卡向服务器发送本轮数据;若不存在,则通过历史待选网卡向服务器发送本轮数据,历史待选网卡为向服务器发送上一轮数据的网卡。

第三方面,本申请还提供一种电子设备,包括:处理器、存储器和总线,存储器存储有处理器可执行的机器可读指令,当电子设备运行时,处理器与存储器之间通过总线通信,机器可读指令被处理器执行时执行如上述的一种数据的发送方法的步骤。

第四方面,本申请还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上述的一种数据的发送方法的步骤。

本申请提供的一种数据的发送方法、装置、电子设备及存储介质,其中,方法包括确定出处于活跃状态且与服务器对应的多个预设网段处于相同网段的多个待选网卡;确定多个待选网卡中是否存在满足服务器连接条件的目标网卡;若存在,则通过目标网卡向服务器发送本轮数据;若不存在,则通过历史待选网卡向服务器发送本轮数据,历史待选网卡为向服务器发送上一轮数据的网卡,通过对与服务器相同网段的网卡进行筛选,若确定出满足服务器连接条件的目标网卡,则通过目标网卡向服务器发送数据,若未确定出目标网卡,则使用历史网卡向服务器发送数据,保证与服务器之间通信过程中不发生丢包的情况,提高了两端数据传输的稳定性和完整性。

为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例所提供的一种数据的发送方法的流程图;

图2为本申请实施例所提供的一种待选网卡的筛选步骤的流程图;

图3为本申请实施例所提供的一种第二待选网卡的筛选步骤的流程图;

图4为本申请实施例所提供的一种数据的发送装置的结构示意图;

图5为本申请实施例所提供的一种电子设备的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的每个其他实施例,都属于本申请保护的范围。

首先,对本申请可适用的应用场景进行介绍。本申请可应用于用户端向服务器端发送数据。

基于此,本申请实施例提供了一种数据的发送方法、装置、电子设备及存储介质,以提高两端通讯过程中,数据传输的稳定性和完整性。

请参阅图1,图1为本申请实施例所提供的一种数据的发送方法的流程图。所如图1中所示,本申请实施例提供的一种数据的发送方法,适用于与控制卡配合使用的电子设备,例如电脑等,控制卡可以设置在服务器中,方法包括:

S101、确定出处于活跃状态且与服务器对应的多个预设网段处于相同网段的多个待选网卡。

这里的待选网卡为电子设备的系统可以扫描到的本地网卡,用于与其他电子设备如服务器等进行通讯。

具体的,电子设备的操作系统检测本地的所有网卡,并记录为动态IP地址的网卡的信息,这里的信息可以包括网卡的IP地址、子掩码等等。

针对每个网卡,通过将该网卡的IP地址以及子掩码转换为二进制格式,分布获取的二进制IP地址和二进制子掩码,二进制IP地址和二进制子掩码进行与运算,计算出的结果作为二进制网络号,二进制网络号可以转换为十进制的第一网络号。

服务器可以用同样的方式计算出第二网络号,将第一网络号和第二网络号进行对比,若第一网络号和第二网络号相同,则说明对应的网卡与服务器为一个网段,则该网卡即为一待选网卡。其中,第二网络号与预设网段的数量是相同的。

具体的,确定出处于活跃状态且与服务器对应的多个预设网段处于相同网段的多个待选网卡的步骤,具体包括:

获取用户端扫描到的所有已绑定网卡;针对获取到的每一已绑定网卡,确定该已绑定网卡是否为活跃状态;若是,则确定该已绑定网卡的是否与服务器对应的一预设网段处于相同网段,若是,则将已绑定网卡确定为一待选网卡,若否,则将该已绑定网卡标记为禁用状态。

需要说明的是,这里待选网卡是以太网类型的网卡,若是蓝牙、虚拟机、无线网、网络驱动程序、npcap类型的网卡则需要标记为禁用状态,这是因为电子设备与服务器之间的连接类型是以太网类型。

S102、确定多个待选网卡中是否存在满足服务器连接条件的目标网卡;若存在,则通过目标网卡向服务器发送本轮数据。

在步骤S102中,从多个待选网卡中筛选出一目标网卡,目标网卡需要是与服务器可以连接并传输数据的,例如目标网卡需要与服务器之间成功建立连接。

S103、若不存在,则通过历史待选网卡向服务器发送本轮数据,历史待选网卡为向服务器发送上一轮数据的网卡。

如果筛选出了满足服务器连接条件的目标网卡,则利用目标网卡进行数据发送,如果没筛选出目标网卡,则默认使用上一轮与服务器通讯的网卡进行数据发送。其中,这里对数据的类型并不进行限制。

本申请实施例提供的数据的发送方法,通过对与服务器相同网段的网卡进行筛选,若确定出满足服务器连接条件的目标网卡,则通过目标网卡向服务器发送数据,若未确定出目标网卡,则使用历史网卡向服务器发送数据,与现有技术中只对网段进行筛选相比,能够保证与服务器之间通信过程中不发生丢包的情况,提高了两端数据传输的稳定性和完整性。

在本申请的一个实施例中,可以通过以下方式确定出目标网卡:

请参阅图2,图2为本申请一实施例提供的一种待选网卡的筛选步骤的流程图。这里的控制器一般可以配置有多个常用的网段,例如1网段和30网段,如图2中所示,本申请实施例提供的待选网卡的筛选步骤方法,包括:

S201、确定多个待选网卡中是否存在至少一个与第一预设网段相同网段的第一待选网卡;

其中,这里的第一预设网段为1网段。第一待选网卡为同属1网段的待选网卡。

S202、若是,则在所有第一待选网卡中确定出目标网卡;

这里的控制器的常用网段可以为1网段,当待选网卡的数量为多个时,则优先从1网段的第一待选网卡中选择目标网卡,以与控制卡通讯,这样可以提高数据发送成功的机率。

S203、若否,则确定多个待选网卡中是否存在至少一个与第二预设网段相同网段的第二待选网卡,若是,则在所有第二待选网卡中确定出目标网卡,若否,则执行所述不存在满足服务器连接调节的目标网卡的步骤。

其中,第二预设网段为30网段。

请参阅图3,图3为本申请一实施例提供的一种第一待选网卡的筛选步骤的流程图。在第一待选网卡中确定出目标网卡的步骤,具体包括:

S301、针对每一第一待选网卡,确定该第一待选网卡与服务器之间的Ping通测试是否通过;

在步骤S301中,在同属1网段的第一待选网卡与服务器192.168.1.101地址进行Ping测试。

S302、当只有一第一待选网卡通过时,则确定该第一待选网卡为目标网卡;

当有多个第一待选网卡通过时,则执行IP地址重置的步骤;

当没有第一待选网卡通过时,则执行在所有第二待选网卡中确定出目标网卡的步骤。

在步骤S302中,在执行在所有第二待选网卡中确定出目标网卡的步骤时,可以参考在第一待选网卡中确定出目标网卡的步骤,区别在于,在Ping测试时,需要将30网段的第二待选网卡以及服务器都修改为1网段,再进行Ping测试。当只有一第二待选网卡通过时,则确定该第二网卡为目标网卡,当有多个第二待选网卡通过时,则随机选一第二待选网卡,并再次修改该第二待选网卡IP地址以及服务器IP地址为30网段对应的IP地址,进行Ping测试,若测试成功,则将该第二待选网卡作为目标网卡,若测试失败,则通过历史待选网卡向服务器发送本轮数据。

针对每一第一待选网卡,当该第一待选网卡与服务器之间的Ping通测试不通过时,则将该第一待选网卡标记为禁用状态。

对于禁用状态的网卡,将不参与本轮数据发送的网卡筛选。

具体的,在步骤S302中,执行IP地址重置的步骤,具体包括:

在多个第一待选网卡中,随机确定出一第一待选网卡。针对随机出的第一待选网卡,将该第一待选网卡的IP地址修改为与第二预设网段对应的IP地址,并确定修改IP地址后的该第一待选网卡与服务器之间的Ping通测试是否通过,若通过,则将该第一待选网卡作为目标网卡向服务器发送本轮数据,其中,服务器的IP地址也修改为与第二预设网段对应的IP地址,若不通过,则执行所述通过历史待选网卡向服务器发送本轮数据,所述历史待选网卡为向服务器发送上一轮数据的网卡的步骤。

若不通过,则将该第一待选网卡的IP地址恢复为修改前的IP地址。在其他网卡Ping测试通过时,还需要将已经修改过的IP地址恢复回去。这样可以避免影响网卡的其他工作任务。

在本申请的一个实施例中,还提供一种网卡选择的方法,适用于电子设备,还电子设备与服务器通讯连接,具体包括:

1、检测所有网卡,记录为动态IP地址的网卡信息。确定出可能与服务器处于同一网段的所有网卡信息。检测以太网类型并且为活跃状态的网卡,过滤蓝牙、虚拟机、无线网、网络驱动程序、npcap类型的网卡,以确定出至少一个待选网卡。检测与服务器IPV4协议的IP地址为同一网段的网卡,通过绑定一网卡与服务器进行连接。

2、若与服务器连接成功,当存在其他同网段的待选网卡时,则将其他同网段的待选网卡禁用,并向服务器发送修改服务器网卡IP地址的指令。

完成后,检测并创建同网段中不存在的IP地址,将该网卡的IP地址改为与服务器修改后的同网段新创建的IP地址。修改完成后,检测网卡与服务器的连接状态,若连接失败或修改本地IP失败,恢复已禁用的同网段网卡信息。若连接成功,则直接使用新修改后的IP地址与服务器进行连接。若网卡IP地址未进行修改并已与服务器新的IP地址相同,则通过绑定该网卡与服务器进行连接。若连接成功则恢复所有禁用网卡后使用该网卡进行连接。

3、若与服务器连接失败,则记录网卡信息后,禁用该网卡。处理当前与服务器处于不同网段的网卡。同时检测以太网类型并且为活跃状态的网卡,过滤蓝牙、虚拟机、无线网、网络驱动程序、npcap类型的网卡。将符合要求的网卡的IP地址改为与服务器同一网段后,绑定修改后的IP地址进行连接服务器。若能连通服务器,则向服务器发送修改新的IP地址指令,检测并创建同网段中不存在的IP地址,修改本地网卡的IP地址为新创建的IP地址。若连接成功则恢复所有禁用网卡后使用该网卡进行连接。若不能连通服务器或修改IP失败,则恢复本地IP所有信息。使用配置文件中上次正确连接服务器的IP地址连接服务器。

以上步骤可以由电子设备后台运行,当电子设备开机后,自动检测本地网卡中存在多个与服务器的IP地址同网段情况时,将能够连接服务器网卡的IP地址和服务器的IP地址改为新网段的IP地址。本地网卡中只有一个与服务器处于同一网段的网卡情况,并可以成功连接控制卡时,则直接使用该网卡连接服务器。本地未配置与服务器的IP地址为同一网段时,自动检测到能够与服务器成功连接的网卡,并将网卡信息和服务器的网卡信息修改为新网段的IP地址。当恢复禁用网卡和连接失败恢复网卡信息时,将网卡信息恢复到未修改前,不影响本地不符合要求的网卡初始状态。减少人为修改本地网卡内容,以及解决存在同网段多网卡导致传输数据丢包情况。

基于同一发明构思,本申请实施例中还提供了与数据的发送方法对应的数据的发送装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述数据的发送方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

请参阅图4,图4为本申请实施例所提供的一种数据的发送装置的结构示意图。如图4中所示,所述发送装置300包括:

第一确定模块410,用于确定出处于活跃状态且与服务器对应的多个预设网段处于相同网段的多个待选网卡;

第二确定模块420,用于确定多个待选网卡中是否存在满足服务器连接条件的目标网卡;若存在,则通过目标网卡向服务器发送本轮数据;若不存在,则通过历史待选网卡向服务器发送本轮数据,历史待选网卡为向服务器发送上一轮数据的网卡。

在一优选实施例中,服务器对应的预设网段包括第一预设网段、第二预设网段,第二确定模块420具体用于:确定多个待选网卡中是否存在至少一个与第一预设网段相同网段的第一待选网卡;若是,则在所有第一待选网卡中确定出目标网卡;若否,则确定多个待选网卡中是否存在至少一个与第二预设网段相同网段的第二待选网卡,若是,则在所有第二待选网卡中确定出目标网卡,若否,则执行不存在满足服务器连接调节的目标网卡的步骤。

在一优选实施例中,第二确定模块420具体用于:针对每一第一待选网卡,确定该第一待选网卡与服务器之间的Ping通测试是否通过;当只有一第一待选网卡通过时,则确定该第一待选网卡为目标网卡,当有多个第一待选网卡通过时,则执行IP地址重置的步骤;当没有第一待选网卡通过时,则执行所述在所有第二待选网卡中确定出目标网卡的步骤。

在一优选实施例中,还包括标记模块(图中未示出),用于针对每一第一待选网卡,当该第一待选网卡与服务器之间的Ping通测试不通过时,则将该第一待选网卡标记为禁用状态。

在一优选实施例中,第二确定模块420还用于:在多个第一待选网卡中,随机确定出一第一待选网卡;针对随机出的第一待选网卡,将该第一待选网卡的IP地址修改为与第二预设网段对应的IP地址,并确定修改IP地址后的该第一待选网卡与服务器之间的Ping通测试是否通过,若通过,则将该第一待选网卡作为目标网卡向服务器发送本轮数据,其中,服务器的IP地址也修改为与第二预设网段对应的IP地址,若不通过,则执行所述通过历史待选网卡向服务器发送本轮数据,所述历史待选网卡为向服务器发送上一轮数据的网卡的步骤。

在一优选实施例中,还包括修改模块(图中未示出):若不通过,则将该第一待选网卡的IP地址恢复为修改前的IP地址。

在一优选实施例中,第一确定模块410:获取用户端扫描到的所有已绑定网卡;针对获取到的每一已绑定网卡,确定该已绑定网卡是否为活跃状态;若是,则确定该已绑定网卡的是否与服务器对应的一预设网段处于相同网段,若是,则将已绑定网卡确定为一待选网卡,若否,则将该已绑定网卡标记为禁用状态。

请参阅图5,图5为本申请实施例所提供的一种电子设备的结构示意图。如图5中所示,所述电子设备500包括处理器510、存储器520和总线530。

所述存储器520存储有所述处理器510可执行的机器可读指令,当电子设备500运行时,所述处理器510与所述存储器520之间通过总线530通信,所述机器可读指令被所述处理器510执行时,可以执行如上述图1所示方法实施例中的数据的发送方法的步骤,具体实现方式可参见方法实施例,在此不再赘述。

本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时可以执行如上述图1所示方法实施例中的数据的发送方法的步骤,具体实现方式可参见方法实施例,在此不再赘述。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

相关技术
  • 一种内容项的曝光数据的发送方法、装置及存储介质
  • 一种数据查询方法、装置、电子设备及存储介质
  • 一种即时通信的数据存储方法、装置、电子设备和介质
  • 一种数据查询方法、装置、电子设备及存储介质
  • 一种数据显示方法、装置、电子设备及存储介质
  • 数据发送方法、数据发送装置、电子设备和计算机可读存储介质
  • 数据发送方法、数据发送装置、电子设备和计算机可读存储介质
技术分类

06120116485970