CN112068784A - 一种云打印设备多网卡自动切换的方法及云打印设备 - Google Patents

一种云打印设备多网卡自动切换的方法及云打印设备 Download PDF

Info

Publication number
CN112068784A
CN112068784A CN202010963209.3A CN202010963209A CN112068784A CN 112068784 A CN112068784 A CN 112068784A CN 202010963209 A CN202010963209 A CN 202010963209A CN 112068784 A CN112068784 A CN 112068784A
Authority
CN
China
Prior art keywords
network card
network
current
packet loss
card
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010963209.3A
Other languages
English (en)
Other versions
CN112068784B (zh
Inventor
崔建平
林喆
高之翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Sunmi Technology Group Co Ltd
Shenzhen Michelangelo Technology Co Ltd
Original Assignee
Shanghai Sunmi Technology Group Co Ltd
Shenzhen Michelangelo Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Sunmi Technology Group Co Ltd, Shenzhen Michelangelo Technology Co Ltd filed Critical Shanghai Sunmi Technology Group Co Ltd
Priority to CN202010963209.3A priority Critical patent/CN112068784B/zh
Publication of CN112068784A publication Critical patent/CN112068784A/zh
Application granted granted Critical
Publication of CN112068784B publication Critical patent/CN112068784B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1211Improving printing performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1236Connection management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1287Remote printer device, e.g. being remote from client or server via internet
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5018Thread allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种云打印设备多网卡自动切换的方法,所述云打印设备配置有多个网卡,所述方法包括以下步骤:云打印设备创建主工作进程启用多个网卡;主工作进程创建第一子线程;第一子线程检测所述多个网卡中的任一者或多者是否获得有效IP地址;第一子线程判断多个网卡中的一个或多个高优先级网卡是否已获得有效的IP地址,并根据判断结果决定是否启动对应的网络质量的检查与控制策略;当无高优先级网卡获得有效的IP地址,或者所有特定高优先级网卡的网络质量的检查与控制策略的结果为不将特定高优先级网卡作为当前网卡时,第一子线程启动对当前网卡的控制策略;以及当前网卡的控制策略运行结束后,主工作进程休眠一设定时间。

Description

一种云打印设备多网卡自动切换的方法及云打印设备
技术领域
本发明主要涉及电子信息领域,尤其涉及一种云打印设备多网卡自动切换的方法及云打印设备。
背景技术
目前,市场上常见的云打印设备多数通过无线网络接入因特网再与后台云服务器建立起连接最终开展各项数据交互工作。随着市场的发展和各种应用场景的出现,出现越来越多的云打印设备需要内置多块网卡,允许多种网络并存便于用户在各种应用场景下顺利展开业务。多种网络并存情况下,使用场景和使用环境上的差异可能会导致当前网络质量没有备用网络的质量好的情况,这既浪费了网络资源,又对用户业务的开展造成了困扰。
发明内容
本发明要解决的技术问题是提供一种云打印设备多网卡自动切换的方法及设备,使设备运行时可根据网络状况和实际需要进行网卡的切换,实现网络资源优化利用,利于用户业务的有效开展。
为解决上述技术问题,本发明提供了一种云打印设备多网卡自动切换的方法,所述云打印设备配置有多个网卡,所述方法包括以下步骤:云打印设备创建主工作进程启用所述多个网卡;所述主工作进程创建第一子线程;所述第一子线程检测所述多个网卡中的任一者或多者是否获得有效IP地址;当所述第一子线程检测到所述多个网卡中的至少一者获得有效IP地址时,解析所述云打印设备存储的云服务器域名地址;当域名地址解析失败时,继续检测所述多个网卡中的至少一者是否获得有效IP地址;当所述第一子线程检测到所述多个网卡中的至少两者获得有效的IP地址时,查询系统的当前网卡,所述当前网卡为所述多个网卡中的一者;所述第一子线程判断所述多个网卡中的一个或多个高优先级网卡是否已获得有效的IP地址,并根据判断结果决定是否启动所述对应的网络质量的检查与控制策略;其中当判断特定高优先级网卡已获得有效的IP地址时,启动所述特定高优先级网卡的网络质量的检查与控制策略,所述特定高优先级网卡的网络质量的检查与控制策略的结果包括将所述特定高优先级网卡作为当前网卡和不将所述特定高优先级网卡作为当前网卡,当所述特定高优先级网卡的网络质量的检查与控制策略的结果为将特定高优先级网卡作为当前网卡时,所述主工作进程休眠一设定时间;当无高优先级网卡获得有效的IP地址,或者所有特定高优先级网卡的网络质量的检查与控制策略的结果为不将所述特定高优先级网卡作为当前网卡时,所述第一子线程启动对所述当前网卡的控制策略;以及所述当前网卡的控制策略运行结束后,所述主工作进程休眠一设定时间。
在本发明的一实施例中,所述方法还包括,所述主工作进程休眠一设定时间后重新创建第一子线程;所述第一子线程检测所述多个网卡中的任一者或多者是否获得IP地址。
本发明还提供一种云打印设备,所述云打印设备配置有多个网卡,所述云打印设备包括:
存储器,存储计算机可读指令;处理器,执行所述计算机可读指令以实现如下多网卡自动切换过程:创建主工作进程启用所述多个网卡;所述主工作进程创建第一子线程;所述第一子线程检测所述多个网卡中的任一者或多者是否获得IP地址;当所述第一子线程检测到所述多个网卡中的至少一者获得有效IP地址时,解析所述云打印设备存储的云服务器域名地址;当域名地址解析失败时,继续检测所述多个网卡中的至少一者获得有效IP地址;当所述第一子线程检测到所述多个网卡中的至少两者获得有效的IP地址时,查询系统的当前网卡,所述当前网卡为所述多个网卡中的一者;所述第一子线程判断所述多个网卡中的一个或多个高优先级网卡是否已获得有效的IP地址,并根据判断结果决定是否启动所述对应的网络质量的检查与控制策略;其中当判断特定高优先级网卡已获得有效的IP地址时,启动所述特定高优先级网卡的网络质量的检查与控制策略,所述特定高优先级网卡的网络质量的检查与控制策略的结果包括将所述特定高优先级网卡作为当前网卡和不将所述特定高优先级网卡作为当前网卡,当所述特定高优先级网卡的网络质量的检查与控制策略的结果为将特定高优先级网卡作为当前网卡时,所述主工作进程休眠一设定时间;当无高优先级网卡获得有效的IP地址,或者所有特定高优先级网卡的网络质量的检查与控制策略的结果为不将所述特定高优先级网卡作为当前网卡时,所述第一子线程启动对所述当前网卡的控制策略;以及所述当前网卡的控制策略运行结束后,所述主工作进程休眠一设定时间。
与现有技术相比,本发明具有以下优点:本发明实施例提供的云打印机多网卡弱网自动切换的一种方法,可根据网络状况的测试与判断对多个网卡进行切换,实现网络资源的有效利用和系统的稳定正常运行。
附图说明
附图是为提供对本申请进一步的理解,它们被收录并构成本申请的一部分,附图示出了本申请的实施例,并与本说明书一起起到解释本发明原理的作用。附图中:
图1是本申请一实施例的云打印设备多网卡自动切换的方法流程图。
图2是本申请一实施例的一个或多个高优先级网卡的网络质量检查与控制策略的流程图。
图3是本申请一实施例的网卡的网络质量检查与控制策略中发送和接收测试数据包并查询和记录参数值的步骤流程图。
图4是本申请一实施例的网卡的网络质量检查与控制策略中根据影响因子的数值与设定的判定条件的比较得出控制策略的运行结果的步骤流程图。
图5是本申请一实施例的第一网卡为当前网卡时的控制策略的流程图。
图6是本申请一实施例的第一网卡为当前网卡时的控制策略中第三网卡的网络质量检查与控制策略的流程图。
图7是本申请一实施例的第一网卡为当前网卡时的控制策略中根据所述第一网卡和第三网卡的影响因子与设定的判定条件的比较得出控制策略的运行结果的步骤流程图。
图8是本申请一实施例的第二网卡为当前网卡时的控制策略的流程图。
图9是本申请一实施例的第二网卡为当前网卡时的控制策略中第三网卡的网络质量检查与控制策略的流程图。
图10是本申请一实施例的第二网卡为当前网卡时的控制策略中根据所述第一网卡和第三网卡的影响因子与设定的判定条件的比较得出控制策略的运行结果的步骤流程图。
图11本申请一实施例的第三网卡为当前网卡时的控制策略的流程图。
图12是本申请一实施例的打印设备的系统实施环境示意图。
具体实施方式
为让本发明的上述目的、特征和优点能更明显易懂,以下结合附图对本发明的具体实施方式作详细说明。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其它不同于在此描述的其它方式来实施,因此本发明不受下面公开的具体实施例的限制。
本申请中使用了流程图用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或下面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各种步骤。同时,或将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
本申请的实施例描述一种云打印设备多网卡自动切换的方法及云打印设备。
图1是本申请一实施例的云打印设备多网卡自动切换的方法流程图。云打印设备配置有多个网卡。如图1所示,云打印设备多网卡自动切换的方法包括,步骤101,云打印设备创建主工作进程启用多个网卡。步骤102,主工作进程创建第一子线程;第一子线程检测多个网卡中的任一者或多者是否获得有效IP地址。步骤103,当第一子线程检测到多个网卡中的至少一者获得有效IP地址时,解析云打印设备存储的云服务器域名地址。步骤104,当第一子线程检测到多个网卡中的至少两者获得有效的IP地址时,查询系统的当前网卡。步骤106,当无高优先级网卡获得有效的IP地址,或者所有特定高优先级网卡的网络质量的检查与控制策略的结果为不将特定高优先级网卡作为当前网卡时,第一子线程启动对当前网卡的控制策略。步骤107,当前网卡的控制策略运行结束后,主工作进程休眠一设定时间。
具体地,在步骤101,云打印设备创建主工作进程启用多个网卡。云打印设备配置的多个网卡,例如有线网网卡、无线网网卡以及移动网络网卡等。每一种类的网卡也可配置一块或多块。
在步骤102,主工作进程创建第一子线程,该第一子线程检测多个网卡中的任一者或多者是否获得IP地址。
在步骤103,当第一子线程检测到多个网卡中的至少一者获得有效IP地址时,解析云打印设备存储的云服务器域名地址。解析域名地址成功则说明存在可用的网络。
在一些实施例中,当域名解析失败时,则说明尽管已获得有效IP地址,但网络并不可用。故当域名解析失败时,返回前述的步骤,继续检测多个网卡中的至少一者是否获得有效IP地址。
在步骤104,在解析域名成功地址后,当第一子线程检测到多个网卡中的至少两者获得有效的IP地址时,查询系统的当前网卡。该当前网卡为多个网卡的其中一者。
根据云打印设备的实际安装与使用情景的网络情况,可设定若干个高优先级网卡。例如,当多个网卡包括有线网网卡、无线网网卡以及移动网络网卡等不同种类及不同的运营服务商时,可设定其中的一者或多者为高优先级网卡。当设定多个高优先级网卡时,亦可再对其进一步进行优先级的顺序设定。例如,可设置为第一高优先级网卡、第二高优先级网卡和第三高优先级网卡等。
在步骤105,第一子线程判断多个网卡中的一个或多个高优先级网卡是否已获得有效的IP地址,并根据判断结果决定是否启动对应的网络质量的检查与控制策略。
在一些实施例中,当判断特定高优先级网卡已获得有效的IP地址时,启动特定高优先级网卡的网络质量的检查与控制策略。该特定高优先级网卡的网络质量的检查与控制策略的结果可包括将特定高优先级网卡作为当前网卡和不将特定高优先级网卡作为当前网卡。
当特定高优先级网卡的网络质量的检查与控制策略的结果为将特定高优先级网卡作为当前网卡时,主工作进程休眠一设定时间。例如设定一休眠时间为10秒。
图2是本申请一实施例的一个或多个高优先级网卡的网络质量检查与控制策略的流程图。
在一些实施例中,如图2所示,第一子线程启动一个或多个高优先级网卡的网络质量检查与控制策略的步骤包括,步骤201,发送和接收测试数据包并查询和记录参数值。步骤202,根据参数值计算得到一个或多个高优先级网卡的网络质量检查与控制策略的影响因子;所述影响因子包括丢包数、数据接收速率、延时值和当前弱网容忍度;所述弱网容忍度初始值为零。步骤203,根据影响因子与设定的判定条件的比较得出控制策略的运行结果;所述设定的判定条件包括最大丢包数、最小接收速率、最大延时值和最大弱网容忍度。
图3是本申请一实施例的网卡的网络质量检查与控制策略中发送和接收测试数据包并查询和记录参数值的步骤流程图。
在一些实施例中,如图3所示,发送和接收测试数据包并查询和记录参数值的步骤包括,步骤301,查询一个或多个高优先级网卡的属性节点统计文件中当前接收的第一数据量rx_byte0值与当前的系统时间戳t0。步骤302,创建套接字;该套接字定义有通过一个或多个高优先级网卡发送和接收数据的协议类型、IP地址和端口号。步骤303,第一子线程创建第一次级子线程,第一次级子线程基于套接字依次发出M个顺序编号的ICMP数据包并记录开始发出数据的初始时间戳Ts;M为正整数;第一子线程将每一ICMP数据包标明发送的编号i及发送时的系统时间戳STi;i=1,2,…,M。步骤304,第一次级子线程基于套接字接收一个或多个先前发送的所述ICMP数据包;每接收一个所述ICMP数据包记录其编号i和当时的系统时间戳RTi;i=1,2,…,M。步骤305,第一次级子线程经过一以所述初始时间戳Ts为基点的阈值时间Tth后,统计接收到的ICMP数据包的个数N;N为正整数;N≤M。步骤306,查询所述一个或多个高优先级网卡的属性节点统计文件中当前接收的第二数据量rx_byte1值与当前的系统时间戳t1。
具体地,在步骤301,查询一个或多个高优先级网卡的属性节点统计文件中当前接收的第一数据量rx_byte0值与当前的系统时间戳t0。例如,当存在多个高优先级网卡时,先进行第一高优先级网卡的网络质量检查与控制策略。则将查询第一高优先级网卡,例如根据具体的网络环境确定为第一有线网卡的属性节点统计文件中当前接收的第一数据量rx_byte0值与当前的系统时间戳t0。
在步骤302,创建套接字;所述套接字定义有通过第一高优先级网卡发送和接收数据的协议类型、IP地址和端口号等信息。
在步骤303,第一子线程创建第一次级子线程,第一次级子线程基于所述套接字依次发出M个顺序编号的ICMP数据包并记录开始发出数据的初始时间戳Ts;M为正整数;所述第一子线程将每一ICMP数据包标明发送的编号i及发送时的系统时间戳STi;i=1,2,…,M。
ICMP(Internet Control Message Protocol网络控制报文协议)是TCP/IP协议簇的一个子协议,其用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。
在步骤304,第一次级子线程基于所述套接字接收一个或多个先前发送的所述ICMP数据包;每接收一个所述ICMP数据包记录其编号i当时的系统时间戳RTi;i=1,2,…,M。
在步骤305,第一次级子线程经过一以所述初始时间戳Ts为基点的阈值时间Tth后,统计接收到的ICMP数据包的个数N;N为正整数;N≤M。例如,第一次级子线程在一初始时间戳Ts为基点,经过20秒后,统计接收到的ICMP数据包的个数。
在步骤306,查询一个或多个高优先级网卡的属性节点统计文件中当前接收的第二数据量rx_byte1值与当前的系统时间戳t1。
在一实施例中,例如,在之前的步骤中,发送10个ICMP数据包,经过20秒后,接收到8个ICMP数据包。
在一些实施例中,计算得到一个或多个高优先级网卡,例如第一高优先级网卡的网络质量检查与控制策略的影响因子中的丢包数、数据接收速率和延时值的方式包括,丢包数l=M-N。数据接收速率
Figure BDA0002681324850000081
延时值
Figure BDA0002681324850000082
例如。当发送10个ICMP数据包,经过20秒后,接收到8个ICMP数据包时,丢包数=10-8=2。数据接收速率的单位为KB/s。延时值的单位为ms。
关于延时值的计算,
Figure BDA0002681324850000083
为接收到的ICMP数据包的延时值的和。(M-N)*Tth为未接收到的数据包,即丢包的数据包的推定延时时间,即经过阈值时间Tth后未接收到发出的数据包,则因经过阈值时间后已停止接收并开始统计参数,故将未接收到的数据包的延时值推定为Tth。相应地,在计算平均延时值时,则将丢包的数据包的延时值统计为(M-N)*Tth。接收到的数据包的延时值的和为
Figure BDA0002681324850000084
故ICMP数据包的接收平均延时值为
Figure BDA0002681324850000085
数据接收速率则为数据接收量除以接收时间,即
Figure BDA0002681324850000086
图4是本申请一实施例的网卡的网络质量检查与控制策略中根据影响因子的数值与设定的判定条件的比较得出控制策略的运行结果的步骤流程图。
在一些实施例中,如图4所示,根据影响因子的数值与设定的判定条件的比较得出控制策略的运行结果包括,步骤401,当丢包数大于最大丢包数且当前弱网容忍度小于等于最大弱网容忍度时,则将当前弱网容忍度叠加一第一步进值,并得到控制策略的运行结果为不将所述特定高优先级网卡切换为当前网卡。步骤402,当所述丢包数小于等于最大丢包数且数据接收速率小于最小接收速率且延时值大于最大延时值时,则将当前弱网容忍度叠加一第二步进值,并得到控制策略的运行结果为不将所述特定高优先级网卡切换为当前网卡。步骤403,当所述丢包数大于最大丢包数且当前弱网容忍度大于最大弱网容忍度且所述数据接收速率小于最小接收速率且延时值大于最大延时值时,则将当前弱网容忍度叠加一第二步进值,并得到控制策略的运行结果为不将所述特定高优先级网卡切换为当前网卡。步骤404,当所述丢包数小于等于最大丢包数且数据接收速率大于等于最小接收速率时,则将当前弱网容忍度清零,并得到控制策略的运行结果为将特定高优先级网卡切换为当前网卡。步骤405,当所述丢包数小于等于最大丢包数且数据接收速率小于最小接收速率且延时值小于等于最大延时值时,则将当前弱网容忍度清零,并得到控制策略的运行结果为将特定高优先级网卡切换为当前网卡。
具体的,判定条件例如设置为,最大丢包数为6。最小接收速率为30KB/s。最大延时值为500ms。最大弱网容忍度设为3。当前弱网容忍度的第一步进值设为2。当前弱网容忍度的第二步进值设为1。不同的特定高优先级网卡的判定条件可进一步进行区别设置,以满足实际的控制策略需要。
接下来,在步骤106,当无高优先级网卡获得有效的IP地址,或者所有特定高优先级网卡的网络质量的检查与控制策略的结果为不将特定高优先级网卡作为当前网卡时,第一子线程启动对当前网卡的控制策略。
在一非限制性实施例中,多个网卡可包括第一网卡、第二网卡和第三网卡。例如,第一网卡和第二网卡为高优先级网卡。更具体地,第一网卡为第一高优先级网卡,第二网卡为第二高优先级网卡。
当所述当前网卡为第一网卡或第二网卡或第三网卡中的一者时,执行对应的当前网卡控制策略。
图5是本申请一实施例的第一网卡为当前网卡时的控制策略的流程图。
在一些实施例中,如图5所示,第一网卡为当前网卡时的控制策略的步骤包括,步骤501,当所述第一网卡的当前弱网容忍度小于最大弱网容忍度时,将第一网卡继续作为当前网卡并结束当前网卡控制策略的运行。步骤502,当所述第一网卡的当前弱网容忍度大于等于最大弱网容忍度且第二网卡未获得有效IP地址且第三网卡未获得有效IP地址时,将第一网卡继续作为当前网卡并结束当前网卡控制策略的运行。步骤503,当所述第一网卡的当前弱网容忍度大于等于最大弱网容忍度且第二网卡获得有效IP地址且第二网卡的丢包数大于等于最大丢包数且第三网卡未获得有效IP地址时,将第一网卡继续作为当前网卡并结束当前网卡控制策略的运行。步骤504,当所述第一网卡的当前弱网容忍度大于等于最大弱网容忍度且第二网卡获得有效IP地址且第二网卡的丢包数小于最大丢包数时,将第二网卡切换为当前网卡并结束当前网卡控制策略的运行。步骤505,当所述第一网卡的当前弱网容忍度大于等于最大弱网容忍度且第二网卡未获得有效IP地址且第三网卡获得有效IP地址时,启动所述第三网卡的网络质量检查与控制策略,得到所述第三网卡的网络质量检查与控制策略的运行结果并结束当前网卡控制策略的运行;所述第三网卡的网络质量检查与控制策略的运行结果包括将第三网卡切换为当前网卡或将第一网卡继续作为当前网卡。步骤506,当所述第一网卡的当前弱网容忍度大于等于最大弱网容忍度且第二网卡获得有效IP地址且第二网卡的丢包数大于等于最大丢包数且第三网卡获得有效IP地址时,启动所述第三网卡的网络质量检查与控制策略,得到所述第三网卡的网络质量检查与控制策略的运行结果并结束当前网卡控制策略的运行;所述第三网卡的网络质量检查与控制策略的运行结果包括将第三网卡切换为当前网卡或将第一网卡继续作为当前网卡。
图6是本申请一实施例的第三网卡的网络质量检查与控制策略的流程图。
在一些实施例中,如图6所示,第三网卡的网络质量检查与控制策略的步骤包括,步骤601,发送和接收测试数据包并查询和记录参数值。步骤602,根据所述参数值计算得到所述第三网卡的网络质量检查与控制策略的影响因子;所述影响因子包括丢包数、数据接收速率和延时值。步骤603,根据所述第一网卡和第三网卡的影响因子与设定的判定条件的比较得出控制策略的运行结果;所述设定的判定条件包括最大丢包数、最小接收速率和最大延时值。
在一非限制性实施例中,所述第三网卡的判定条件中的最大丢包数、最小接收速率和最大延时值的值与高优先级网卡第一网卡或第二网卡的判定条件中的最大丢包数、最小接收速率和最大延时值的值相等,亦可根据实际需求设定差异。
在一些实施例中,步骤601包括,查询所述第三网卡的属性节点统计文件中当前接收的第一数据量rx_byte0值与当前的系统时间戳t0;创建套接字;所述套接字定义有通过所述第三网卡发送和接收数据的协议类型、IP地址和端口号;所述第一子线程创建第一次级子线程,所述第一次级子线程基于所述套接字依次发出M个顺序编号的ICMP数据包并记录开始发出数据的初始时间戳Ts;M为正整数;所述第一子线程将每一ICMP数据包标明发送的编号i及发送时的系统时间戳STi;i=1,2,…,M;所述第一次级子线程基于所述套接字接收一个或多个先前发送的所述ICMP数据包;每接收一个所述ICMP数据包记录其编号i当时的系统时间戳RTi;i=1,2,…,M;所述第一次级子线程经过一以所述初始时间戳Ts为基点的阈值时间Tth后,统计接收到的ICMP数据包的个数N;N为正整数;N≤M;查询所述第三网卡的属性节点统计文件中当前接收的第二数据量rx_byte1值与当前的系统时间戳t1。
在一些实施例中,步骤602计算得到第三网卡的网络质量检查与控制策略的影响因子中的丢包数、数据接收速率和延时值的方式包括,丢包数l=M-N。数据接收速率
Figure BDA0002681324850000111
延时值
Figure BDA0002681324850000112
在一些实施例中,步骤603,根据所述第一网卡和第三网卡的影响因子与设定的判定条件的比较得出控制策略的运行结果的流程,如图7所例示。具体地,该流程包括步骤701,当所述第一网卡的丢包数小于等于最大丢包数且所述第三网卡的丢包数大于最大丢包数的k倍时,则将第一网卡继续作为当前网卡;0<k<1。例如,k=0.5。
步骤702,当所述第一网卡的丢包数大于最大丢包数且第三网卡的丢包数小于最大丢包数时,则将第三网卡切换为当前网卡。
步骤703,当所述第一网卡的丢包数大于最大丢包数且第三网卡的丢包数大于等于最大丢包数时,则将第一网卡继续作为当前网卡。
步骤704,当所述第一网卡的丢包数小于等于最大丢包数且所述第三网卡的丢包数小于等于最大丢包数的k倍且所述第三网卡的延时值小于所述第一网卡的延时值时,则将第三网卡切换为当前网卡。
步骤705,当所述第一网卡的丢包数小于等于最大丢包数且所述第三网卡的丢包数小于等于最大丢包数的k倍且所述第三网卡的延时值大于等于所述第一网卡的延时值时,则将第一网卡继续作为当前网卡。
图8是本申请一实施例的第二网卡为当前网卡时的控制策略的流程图。
在一些实施例中,如图8所示,第二网卡为当前网卡时的控制策略的步骤包括,步骤801,当所述第二网卡的当前弱网容忍度小于最大弱网容忍度时,将第二网卡继续作为当前网卡并结束当前网卡控制策略的运行。步骤802,当所述第二网卡的当前弱网容忍度大于等于最大弱网容忍度且第一网卡未获得有效IP地址且第三网卡未获得有效IP地址时,将第二网卡继续作为当前网卡并结束当前网卡控制策略的运行。步骤803,当所述第二网卡的当前弱网容忍度大于等于最大弱网容忍度且第一网卡获得有效IP地址且第一网卡的丢包数大于等于最大丢包数且第三网卡未获得有效IP地址时,将第二网卡继续作为当前网卡并结束当前网卡控制策略的运行。步骤804,当所述第二网卡的当前弱网容忍度大于等于最大弱网容忍度且第一网卡获得有效IP地址且第一网卡的丢包数小于最大丢包数时,将第一网卡切换为当前网卡并结束当前网卡控制策略的运行。步骤805,当所述第二网卡的当前弱网容忍度大于等于最大弱网容忍度且第一网卡未获得有效IP地址且第三网卡获得有效IP地址时,启动所述第三网卡的网络质量检查与控制策略,得到所述第三网卡的网络质量检查与控制策略的运行结果并结束当前网卡控制策略的运行;所述第三网卡的网络质量检查与控制策略的运行结果包括将第三网卡切换为当前网卡或将第二网卡继续作为当前网卡。步骤806,当所述第二网卡的当前弱网容忍度大于等于最大弱网容忍度且第一网卡获得有效IP地址且第一网卡的丢包数大于等于最大丢包数且第三网卡获得有效IP地址时,启动所述第三网卡的网络质量检查与控制策略,得到所述第三网卡的网络质量检查与控制策略的运行结果并结束当前网卡控制策略的运行;所述第三网卡的网络质量检查与控制策略的运行结果包括将第三网卡切换为当前网卡或将第二网卡继续作为当前网卡。
图9是本申请一实施例的第二网卡为当前网卡时的控制策略中第三网卡的网络质量检查与控制策略的流程图。
在一些实施例中,如图9所示,第三网卡的网络质量检查与控制策略的步骤包括,步骤901,发送和接收测试数据包并查询和记录参数值。步骤902,根据所述参数值计算得到所述第三网卡的网络质量检查与控制策略的影响因子;所述影响因子包括丢包数、数据接收速率和延时值。步骤903,根据所述第二网卡和第三网卡的影响因子与设定的判定条件的比较得出控制策略的运行结果;所述设定的判定条件包括最大丢包数、最小接收速率和最大延时值。
在一非限制性实施例中,所述第三网卡的判定条件中的最大丢包数、最小接收速率和最大延时值的值与高优先级网卡第一网卡或第二网卡的判定条件中的最大丢包数、最小接收速率和最大延时值的值相等,亦可根据实际需求设置为不同的数值。
在一些实施例中,步骤901和步骤902例如与前述步骤601和步骤602的过程类似,在此不再赘述。
在步骤903,根据所述第二网卡和第三网卡的影响因子与设定的判定条件的比较得出控制策略的运行结果的流程,如图10所例示。具体地,该流程包括步骤1001,当所述丢包数小于等于最大丢包数且所述第三网卡的丢包数大于最大丢包数的k倍时,则将第二网卡继续作为当前网卡;0<k<1。例如,k=0.5。
步骤1002,当所述第二网卡的丢包数大于最大丢包数且第三网卡的丢包数小于最大丢包数时,则将第三网卡切换为当前网卡。
步骤1003,当所述第二网卡的丢包数大于最大丢包数且第三网卡的丢包数大于等于最大丢包数时,则将第二网卡继续作为当前网卡。
步骤1004,当所述第二网卡的丢包数小于等于最大丢包数且所述第三网卡的丢包数小于等于最大丢包数的k倍且所述第三网卡的延时值小于所述第二网卡的延时值时,则将第三网卡切换为当前网卡。
步骤1005,当所述第二网卡的丢包数小于等于最大丢包数且所述第三网卡的丢包数小于等于最大丢包数的k倍且所述第三网卡的延时值大于等于所述第二网卡的延时值时,则将第二网卡继续作为当前网卡。
在一些实施例中,第三网卡为当前网卡时的控制策略的步骤包括,步骤1101,当所述第一网卡已获得有效的IP地址且所述第一网卡的当前弱网容忍度为零时,则将第一网卡切换为当前网卡,。步骤1102,当所述第一网卡未获得有效的IP地址且所述第二网卡已获得有效的IP地址且所述第二网卡的当前弱网容忍度为零时,则将第二网卡切换为当前网卡。步骤1103,当所述第一网卡已获得有效的IP地址且所述第一网卡的当前弱网容忍度大于零且所述第二网卡已获得有效的IP地址且所述第二网卡的当前弱网容忍度为零时,则将第二网卡切换为当前网卡。步骤1104,当所述第一网卡未获得有效的IP地址且所述第二网卡已获得有效的IP地址且所述第二网卡的当前弱网容忍度大于零时,则将第三网卡继续作为当前网卡。步骤1105,当所述第一网卡未获得有效的IP地址且所述第二网卡未获得有效的IP地址时,则将第三网卡继续作为当前网卡。
在步骤107,当前网卡的控制策略运行结束后,主工作进程休眠一设定时间。例如设定一休眠时间为5秒或10秒。
在一实施例中,主工作进程休眠一设定时间后重新创建第一子线程,该第一子线程检测多个网卡中的任一者或多者是否获得IP地址。
本发明的云打印设备多网卡自动切换的方法,可以根据预设的网络置信度(例如不同网卡的当前弱网容忍度)以及通过计算获得的网络延时、网络丢包率、网络传输速率等多个关键影响因子进行虚弱网络自动切换动作,具有高效、灵活调控、稳定安全运行的优点。
本申请还提供一种打印设备,所述云打印设备配置有多个网卡,所述云打印设备包括存储器和处理器。
其中,存储器存储有计算机可读指令。处理器执行该计算机可读指令以实现如下多网卡自动切换过程:创建主工作进程启用所述多个网卡。主工作进程创建第一子线程;第一子线程检测多个网卡中的任一者或多者是否获得IP地址。当第一子线程检测到所述多个网卡中的至少一者获得有效IP地址时,解析所述云打印设备存储的云服务器域名地址;当域名地址解析失败时,继续检测所述多个网卡中的至少一者获得有效IP地址。当所述第一子线程检测到所述多个网卡中的至少两者获得有效的IP地址时,查询系统的当前网卡,所述当前网卡为所述多个网卡中的一者。所述第一子线程判断所述多个网卡中的一个或多个高优先级网卡是否已获得有效的IP地址,并根据判断结果决定是否启动所述对应的网络质量的检查与控制策略;其中当判断特定高优先级网卡已获得有效的IP地址时,启动所述特定高优先级网卡的网络质量的检查与控制策略,所述特定高优先级网卡的网络质量的检查与控制策略的结果包括将所述特定高优先级网卡作为当前网卡和不将所述特定高优先级网卡作为当前网卡,当所述特定高优先级网卡的网络质量的检查与控制策略的结果为将特定高优先级网卡作为当前网卡时,所述主工作进程休眠一设定时间。当无高优先级网卡获得有效的IP地址,或者所有特定高优先级网卡的网络质量的检查与控制策略的结果为不将所述特定高优先级网卡作为当前网卡时,所述第一子线程启动对所述当前网卡的控制策略。以及所述当前网卡的控制策略运行结束后,所述主工作进程休眠一设定时间。
图12是本申请一实施例的云打印设备的系统实施环境示意图。
云打印设备系统1200包括内部通信总线1201、打印设备1202、上位机1204、通信端口1205和多个网卡(未示出),系统1200通过通信端口连接网络,并与服务器连接。在图12中,通信端口1205可通过网络与服务器端的服务器A 1206、服务器数据存储B 1207、服务器B 1208、服务器存储B 1209连接,以实现打印数据的传输和处理。
云打印设备系统1200还可以包括处理器和不同形式的程序储存单元以及数据储存单元,例如只读存储器(ROM)和随机存取存储器(RAM),能够存储计算机处理和/或通信使用的各种数据文件,以及处理器所执行的可能的程序指令。处理器执行这些指令以实现多网卡自动切换方法。处理器处理的结果可通过通信端口传输至上位机的用户界面上显示。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述发明披露仅仅作为示例,而并不构成对本申请的限定。虽然此处并没有明确说明,本领域技术人员可能会对本申请进行各种修改、改进和修正。该类修改、改进和修正在本申请中被建议,所以该类修改、改进、修正仍属于本申请示范实施例的精神和范围。
同时,本申请使用了特定词语来描述本申请的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一替代性实施例”并不一定是指同一实施例。此外,本申请的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
本申请的一些方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。处理器可以是一个或多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理器件(DAPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器或者其组合。此外,本申请的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。例如,计算机可读介质可包括,但不限于,磁性存储设备(例如,硬盘、软盘、磁带……)、光盘(例如,压缩盘CD、数字多功能盘DVD……)、智能卡以及闪存设备(例如,卡、棒、键驱动器……)。
计算机可读介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等等、或合适的组合形式。计算机可读介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机可读介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、射频信号、或类似介质、或任何上述介质的组合。
同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本申请实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本申请对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
虽然本申请已参照当前的具体实施例来描述,但是本技术领域中的普通技术人员应当认识到,以上的实施例仅是用来说明本申请,在没有脱离本申请精神的情况下还可作出各种等效的变化或替换,因此,只要在本申请的实质精神范围内对上述实施例的变化、变型都将落在本申请的权利要求书的范围内。

Claims (19)

1.一种云打印设备多网卡自动切换的方法,所述云打印设备配置有多个网卡,所述方法包括以下步骤:
云打印设备创建主工作进程启用所述多个网卡;
所述主工作进程创建第一子线程;所述第一子线程检测所述多个网卡中的任一者或多者是否获得有效IP地址;
当所述第一子线程检测到所述多个网卡中的至少一者获得有效IP地址时,解析所述云打印设备存储的云服务器域名地址;当域名地址解析失败时,继续检测所述多个网卡中的至少一者是否获得有效IP地址;
当所述第一子线程检测到所述多个网卡中的至少两者获得有效的IP地址时,查询系统的当前网卡,所述当前网卡为所述多个网卡中的一者;
所述第一子线程判断所述多个网卡中的一个或多个高优先级网卡是否已获得有效的IP地址,并根据判断结果决定是否启动所述对应的网络质量的检查与控制策略;其中当判断特定高优先级网卡已获得有效的IP地址时,启动所述特定高优先级网卡的网络质量的检查与控制策略,所述特定高优先级网卡的网络质量的检查与控制策略的结果包括将所述特定高优先级网卡作为当前网卡和不将所述特定高优先级网卡作为当前网卡,当所述特定高优先级网卡的网络质量的检查与控制策略的结果为将特定高优先级网卡作为当前网卡时,所述主工作进程休眠一设定时间;
当无高优先级网卡获得有效的IP地址,或者所有特定高优先级网卡的网络质量的检查与控制策略的结果为不将所述特定高优先级网卡作为当前网卡时,所述第一子线程启动对所述当前网卡的控制策略;以及
所述当前网卡的控制策略运行结束后,所述主工作进程休眠一设定时间。
2.根据权利要求1所述的云打印设备多网卡自动切换的方法,其特征在于,所述方法还包括,所述主工作进程休眠一设定时间后重新创建第一子线程;所述第一子线程检测所述多个网卡中的任一者或多者是否获得IP地址。
3.根据权利要求1所述的云打印设备多网卡自动切换的方法,其特征在于,所述第一子线程启动所述一个或多个高优先级网卡的网络质量检查与控制策略的步骤包括:
发送和接收测试数据包并查询和记录参数值;
根据所述参数值计算得到所述一个或多个高优先级网卡的网络质量检查与控制策略的影响因子;所述影响因子包括丢包数、数据接收速率、延时值和当前弱网容忍度;所述弱网容忍度初始值为零;
根据所述影响因子与设定的判定条件的比较得出控制策略的运行结果;所述设定的判定条件包括最大丢包数、最小接收速率、最大延时值和最大弱网容忍度。
4.根据权利要求3所述的云打印设备多网卡自动切换的方法,其特征在于,发送和接收测试数据包并查询和记录参数值的步骤包括:
查询所述一个或多个高优先级网卡的属性节点统计文件中当前接收的第一数据量rx_byte0值与当前的系统时间戳t0;
创建套接字;所述套接字定义有通过所述一个或多个高优先级网卡发送和接收数据的协议类型、IP地址和端口号;
所述第一子线程创建第一次级子线程,所述第一次级子线程基于所述套接字依次发出M个顺序编号的ICMP数据包并记录开始发出数据的初始时间戳Ts;M为正整数;所述第一子线程将每一ICMP数据包标明发送的编号i及发送时的系统时间戳STi;i=1,2,…,M;
所述第一次级子线程基于所述套接字接收一个或多个先前发送的所述ICMP数据包;每接收一个所述ICMP数据包记录其编号i和当时的系统时间戳RTi;i=1,2,…,M;
所述第一次级子线程经过一以所述初始时间戳Ts为基点的阈值时间Tth后,统计接收到的ICMP数据包的个数N;N为正整数;N≤M;
查询所述一个或多个高优先级网卡的属性节点统计文件中当前接收的第二数据量rx_byte1值与当前的系统时间戳t1。
5.根据权利要求4所述的云打印设备多网卡自动切换的方法,其特征在于,计算得到所述一个或多个高优先级网卡的网络质量检查与控制策略的影响因子中的丢包数、数据接收速率和延时值的方式包括:
计算丢包数l=M-N;
计算数据接收速率
Figure FDA0002681324840000031
计算延时值
Figure FDA0002681324840000032
6.根据权利要求3-5中任一项所述的云打印设备多网卡自动切换的方法,其特征在于,根据所述影响因子与设定的判定条件的比较得出控制策略的运行结果包括:
当所述丢包数大于最大丢包数且当前弱网容忍度小于等于最大弱网容忍度时,则将当前弱网容忍度叠加一第一步进值,并得到控制策略的运行结果为不将所述特定高优先级网卡切换为当前网卡;
当所述丢包数小于等于最大丢包数且数据接收速率小于最小接收速率且延时值大于最大延时值时,则将当前弱网容忍度叠加一第二步进值,并得到控制策略的运行结果为不将所述特定高优先级网卡切换为当前网卡;
当所述丢包数大于最大丢包数且当前弱网容忍度大于最大弱网容忍度且所述数据接收速率小于最小接收速率且延时值大于最大延时值时,则将当前弱网容忍度叠加一第二步进值,并得到控制策略的运行结果为不将所述特定高优先级网卡切换为当前网卡;
当所述丢包数小于等于最大丢包数且数据接收速率大于等于最小接收速率时,则将当前弱网容忍度清零,并得到控制策略的运行结果为将特定高优先级网卡切换为当前网卡;
当所述丢包数小于等于最大丢包数且数据接收速率小于最小接收速率且延时值小于等于最大延时值时,则将当前弱网容忍度清零,并得到控制策略的运行结果为将特定高优先级网卡切换为当前网卡。
7.根据权利要求3-5中任一项所述的云打印设备多网卡自动切换的方法,其特征在于,所述多个网卡包括第一网卡、第二网卡和第三网卡,所述当前网卡的控制策略包括:
当所述当前网卡为所述第一网卡或第二网卡或第三网卡中的一者时,执行对应的当前网卡控制策略。
8.根据权利要求7所述的云打印设备多网卡自动切换的方法,其特征在于,
所述第一网卡为当前网卡时的控制策略的步骤包括:
当所述第一网卡的当前弱网容忍度小于最大弱网容忍度时,将第一网卡继续作为当前网卡并结束当前网卡控制策略的运行;
当所述第一网卡的当前弱网容忍度大于等于最大弱网容忍度且第二网卡未获得有效IP地址且第三网卡未获得有效IP地址时,将第一网卡继续作为当前网卡并结束当前网卡控制策略的运行;
当所述第一网卡的当前弱网容忍度大于等于最大弱网容忍度且第二网卡获得有效IP地址且第二网卡的丢包数大于等于最大丢包数且第三网卡未获得有效IP地址时,将第一网卡继续作为当前网卡并结束当前网卡控制策略的运行;
当所述第一网卡的当前弱网容忍度大于等于最大弱网容忍度且第二网卡获得有效IP地址且第二网卡的丢包数小于最大丢包数时,将第二网卡切换为当前网卡并结束当前网卡控制策略的运行;
当所述第一网卡的当前弱网容忍度大于等于最大弱网容忍度且第二网卡未获得有效IP地址且第三网卡获得有效IP地址时,启动所述第三网卡的网络质量检查与控制策略,得到所述第三网卡的网络质量检查与控制策略的运行结果并结束当前网卡控制策略的运行;所述第三网卡的网络质量检查与控制策略的运行结果包括将第三网卡切换为当前网卡或将第一网卡继续作为当前网卡;
当所述第一网卡的当前弱网容忍度大于等于最大弱网容忍度且第二网卡获得有效IP地址且第二网卡的丢包数大于等于最大丢包数且第三网卡获得有效IP地址时,启动所述第三网卡的网络质量检查与控制策略,得到所述第三网卡的网络质量检查与控制策略的运行结果并结束当前网卡控制策略的运行;所述第三网卡的网络质量检查与控制策略的运行结果包括将第三网卡切换为当前网卡或将第一网卡继续作为当前网卡。
9.根据权利要求8所述的云打印设备多网卡自动切换的方法,其特征在于,
所述第三网卡的网络质量检查与控制策略的步骤包括:
发送和接收测试数据包并查询和记录参数值;
根据所述参数值计算得到所述第三网卡的网络质量检查与控制策略的影响因子;所述影响因子包括丢包数、数据接收速率和延时值;
根据所述第一网卡和第三网卡的影响因子与设定的判定条件的比较得出控制策略的运行结果;所述设定的判定条件包括最大丢包数、最小接收速率和最大延时值。
10.根据权利要求9所述的云打印设备多网卡自动切换的方法,其特征在于,发送和接收测试数据包并查询和记录参数值的步骤包括:
查询所述第三网卡的属性节点统计文件中当前接收的第一数据量rx_byte0值与当前的系统时间戳t0;
创建套接字;所述套接字定义有通过所述第三网卡发送和接收数据的协议类型、IP地址和端口号;
所述第一子线程创建第一次级子线程,所述第一次级子线程基于所述套接字依次发出M个顺序编号的ICMP数据包并记录开始发出数据的初始时间戳Ts;M为正整数;
所述第一子线程将每一ICMP数据包标明发送的编号i及发送时的系统时间戳STi;i=1,2,…,M;
所述第一次级子线程基于所述套接字接收一个或多个先前发送的所述ICMP数据包;每接收一个所述ICMP数据包记录其编号i和当时的系统时间戳RTi;i=1,2,…,M;
所述第一次级子线程经过一以所述初始时间戳Ts为基点的阈值时间Tth后,统计接收到的ICMP数据包的个数N;N为正整数;N≤M;
查询所述第三网卡的属性节点统计文件中当前接收的第二数据量rx_byte1值与当前的系统时间戳t1。
11.根据权利要求10所述的云打印设备多网卡自动切换的方法,其特征在于,计算得到所述第三网卡的网络质量检查与控制策略的影响因子中的丢包数、数据接收速率和延时值的方式包括:
计算丢包数l=M-N;
计算数据接收速率
Figure FDA0002681324840000061
计算延时值
Figure FDA0002681324840000062
12.根据权利要求9中任一项所述的云打印设备多网卡自动切换的方法,其特征在于,根据所述第一网卡和第三网卡的影响因子与设定的判定条件的比较得出控制策略的运行结果包括:
当所述第一网卡的丢包数小于等于最大丢包数且所述第三网卡的丢包数大于最大丢包数的k倍时,则将第一网卡继续作为当前网卡;0<k<1;
当所述第一网卡的丢包数大于最大丢包数且第三网卡的丢包数小于最大丢包数时,则将第三网卡切换为当前网卡;
当所述第一网卡的丢包数大于最大丢包数且第三网卡的丢包数大于等于最大丢包数时,则将第一网卡继续作为当前网卡;
当所述第一网卡的丢包数小于等于最大丢包数且所述第三网卡的丢包数小于等于最大丢包数的k倍且所述第三网卡的延时值小于所述第一网卡的延时值时,则将第三网卡切换为当前网卡;
当所述第一网卡的丢包数小于等于最大丢包数且所述第三网卡的丢包数小于等于最大丢包数的k倍且所述第三网卡的延时值大于等于所述第一网卡的延时值时,则将第一网卡继续作为当前网卡。
13.根据权利要求7所述的云打印设备多网卡自动切换的方法,其特征在于,所述第二网卡为当前网卡时的控制策略的步骤包括:
当所述第二网卡的当前弱网容忍度小于最大弱网容忍度时,将第二网卡继续作为当前网卡并结束当前网卡控制策略的运行;
当所述第二网卡的当前弱网容忍度大于等于最大弱网容忍度且第一网卡未获得有效IP地址且第三网卡未获得有效IP地址时,将第二网卡继续作为当前网卡并结束当前网卡控制策略的运行;
当所述第二网卡的当前弱网容忍度大于等于最大弱网容忍度且第一网卡获得有效IP地址且第一网卡的丢包数大于等于最大丢包数且第三网卡未获得有效IP地址时,将第二网卡继续作为当前网卡并结束当前网卡控制策略的运行;
当所述第二网卡的当前弱网容忍度大于等于最大弱网容忍度且第一网卡获得有效IP地址且第一网卡的丢包数小于最大丢包数时,将第一网卡切换为当前网卡并结束当前网卡控制策略的运行;
当所述第二网卡的当前弱网容忍度大于等于最大弱网容忍度且第一网卡未获得有效IP地址且第三网卡获得有效IP地址时,启动所述第三网卡的网络质量检查与控制策略,得到所述第三网卡的网络质量检查与控制策略的运行结果并结束当前网卡控制策略的运行;所述第三网卡的网络质量检查与控制策略的运行结果包括将第三网卡切换为当前网卡或将第二网卡继续作为当前网卡;
当所述第二网卡的当前弱网容忍度大于等于最大弱网容忍度且第一网卡获得有效IP地址且第一网卡的丢包数大于等于最大丢包数且第三网卡获得有效IP地址时,启动所述第三网卡的网络质量检查与控制策略,得到所述第三网卡的网络质量检查与控制策略的运行结果并结束当前网卡控制策略的运行;所述第三网卡的网络质量检查与控制策略的运行结果包括将第三网卡切换为当前网卡或将第二网卡继续作为当前网卡。
14.根据权利要求13所述的云打印设备多网卡自动切换的方法,其特征在于,所述第三网卡的网络质量检查与控制策略的步骤包括:
发送和接收测试数据包并查询和记录参数值;
根据所述参数值计算得到所述第三网卡的网络质量检查与控制策略的影响因子;所述影响因子包括丢包数、数据接收速率和延时值;
根据所述第二网卡和第三网卡的影响因子与设定的判定条件的比较得出控制策略的运行结果;所述设定的判定条件包括最大丢包数、最小接收速率和最大延时值。
15.根据权利要求14所述的云打印设备多网卡自动切换的方法,其特征在于,发送和接收测试数据包并查询和记录参数值的步骤包括:
查询所述第三网卡的属性节点统计文件中当前接收的第一数据量rx_byte0值与当前的系统时间戳t0;
创建套接字;所述套接字定义有通过所述第三网卡发送和接收数据的协议类型、IP地址和端口号;
所述第一子线程创建第一次级子线程,所述第一次级子线程基于所述套接字依次发出M个顺序编号的ICMP数据包并记录开始发出数据的初始时间戳Ts;M为正整数;
所述第一子线程将每一ICMP数据包标明发送的编号i及发送时的系统时间戳STi;i=1,2,…,M;
所述第一次级子线程基于所述套接字接收一个或多个先前发送的所述ICMP数据包;每接收一个所述ICMP数据包记录其编号i当时的系统时间戳RTi;i=1,2,…,M;
所述第一次级子线程经过一以所述初始时间戳Ts为基点的阈值时间Tth后,统计接收到的ICMP数据包的个数N;N为正整数;N≤M;
查询所述第三网卡的属性节点统计文件中当前接收的第二数据量rx_byte1值与当前的系统时间戳t1。
16.根据权利要求15所述的云打印设备多网卡自动切换的方法,其特征在于,计算得到所述第三网卡的网络质量检查与控制策略的影响因子中的丢包数、数据接收速率和延时值的步骤包括:
丢包数l=M-N;数据接收速率
Figure FDA0002681324840000081
延时值
Figure FDA0002681324840000082
17.根据权利要求14中任一项所述的云打印设备多网卡自动切换的方法,其特征在于,根据所述第二网卡和第三网卡的影响因子与设定的判定条件的比较得出控制策略的运行结果包括:
当所述第二网卡的丢包数小于等于最大丢包数且所述第三网卡的丢包数大于最大丢包数的k倍时,则将第二网卡继续作为当前网卡;0<k<1;
当所述第二网卡的丢包数大于最大丢包数且第三网卡的丢包数小于最大丢包数时,则将第三网卡切换为当前网卡;
当所述第二网卡的丢包数大于最大丢包数且第三网卡的丢包数大于等于最大丢包数时,则将第二网卡继续作为当前网卡;
当所述第二网卡的丢包数小于等于最大丢包数且所述第三网卡的丢包数小于等于最大丢包数的k倍且所述第三网卡的延时值小于所述第二网卡的延时值时,则将第三网卡切换为当前网卡;
当所述第二网卡的丢包数小于等于最大丢包数且所述第三网卡的丢包数小于等于最大丢包数的k倍且所述第三网卡的延时值大于等于所述第二网卡的延时值时,则将第二网卡继续作为当前网卡。
18.根据权利要求7所述的云打印设备多网卡自动切换的方法,其特征在于,所述第三网卡为当前网卡时的控制策略的步骤包括:
当所述第一网卡已获得有效的IP地址且所述第一网卡的当前弱网容忍度为零时,则将第一网卡切换为当前网卡;
当所述第一网卡未获得有效的IP地址且所述第二网卡已获得有效的IP地址且所述第二网卡的当前弱网容忍度为零时,则将第二网卡切换为当前网卡;
当所述第一网卡已获得有效的IP地址且所述第一网卡的当前弱网容忍度大于零且所述第二网卡已获得有效的IP地址且所述第二网卡的当前弱网容忍度为零时,则将第二网卡切换为当前网卡;
当所述第一网卡未获得有效的IP地址且所述第二网卡已获得有效的IP地址且所述第二网卡的当前弱网容忍度大于零时,则将第三网卡继续作为当前网卡;
当所述第一网卡未获得有效的IP地址且所述第二网卡未获得有效的IP地址时,则将第三网卡继续作为当前网卡。
19.一种云打印设备,所述云打印设备配置有多个网卡,所述云打印设备包括:
存储器,存储计算机可读指令;
处理器,执行所述计算机可读指令以实现如下多网卡自动切换过程:
创建主工作进程启用所述多个网卡;
所述主工作进程创建第一子线程;所述第一子线程检测所述多个网卡中的任一者或多者是否获得IP地址;
当所述第一子线程检测到所述多个网卡中的至少一者获得有效IP地址时,解析所述云打印设备存储的云服务器域名地址;当域名地址解析失败时,继续检测所述多个网卡中的至少一者获得有效IP地址;
当所述第一子线程检测到所述多个网卡中的至少两者获得有效的IP地址时,查询系统的当前网卡,所述当前网卡为所述多个网卡中的一者;
所述第一子线程判断所述多个网卡中的一个或多个高优先级网卡是否已获得有效的IP地址,并根据判断结果决定是否启动所述对应的网络质量的检查与控制策略;其中当判断特定高优先级网卡已获得有效的IP地址时,启动所述特定高优先级网卡的网络质量的检查与控制策略,所述特定高优先级网卡的网络质量的检查与控制策略的结果包括将所述特定高优先级网卡作为当前网卡和不将所述特定高优先级网卡作为当前网卡,当所述特定高优先级网卡的网络质量的检查与控制策略的结果为将特定高优先级网卡作为当前网卡时,所述主工作进程休眠一设定时间;
当无高优先级网卡获得有效的IP地址,或者所有特定高优先级网卡的网络质量的检查与控制策略的结果为不将所述特定高优先级网卡作为当前网卡时,所述第一子线程启动对所述当前网卡的控制策略;以及
所述当前网卡的控制策略运行结束后,所述主工作进程休眠一设定时间。
CN202010963209.3A 2020-09-14 2020-09-14 一种云打印设备多网卡自动切换的方法及云打印设备 Active CN112068784B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010963209.3A CN112068784B (zh) 2020-09-14 2020-09-14 一种云打印设备多网卡自动切换的方法及云打印设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010963209.3A CN112068784B (zh) 2020-09-14 2020-09-14 一种云打印设备多网卡自动切换的方法及云打印设备

Publications (2)

Publication Number Publication Date
CN112068784A true CN112068784A (zh) 2020-12-11
CN112068784B CN112068784B (zh) 2024-03-12

Family

ID=73697036

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010963209.3A Active CN112068784B (zh) 2020-09-14 2020-09-14 一种云打印设备多网卡自动切换的方法及云打印设备

Country Status (1)

Country Link
CN (1) CN112068784B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023045389A1 (zh) * 2021-09-26 2023-03-30 华为技术有限公司 一种网卡适配电路、网卡适配方法以及相关装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040218580A1 (en) * 2003-05-02 2004-11-04 Microsoft Corporation Method to enable simultaneous connections to multiple wireless networks using a single radio
CN103200636A (zh) * 2013-03-08 2013-07-10 东莞宇龙通信科技有限公司 多模移动终端和网络切换方法
US20150271060A1 (en) * 2014-03-24 2015-09-24 Canon Kabushiki Kaisha Communication apparatus including a plurality of network interfaces, method of controlling communication apparatus, and storage medium
CN105763661A (zh) * 2014-12-17 2016-07-13 华为技术有限公司 一种网络协议ip地址的获取方法及通信设备
WO2019091361A1 (zh) * 2017-11-10 2019-05-16 北京金山云网络技术有限公司 一种网卡模式切换方法、装置、电子设备及存储介质
CN109831341A (zh) * 2019-03-19 2019-05-31 中国电子科技集团公司第三十六研究所 一种冗余双网卡的快速切换方法及装置
CN111212451A (zh) * 2019-12-26 2020-05-29 曙光信息产业股份有限公司 一种切换网络传输通道的方法和装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040218580A1 (en) * 2003-05-02 2004-11-04 Microsoft Corporation Method to enable simultaneous connections to multiple wireless networks using a single radio
CN103200636A (zh) * 2013-03-08 2013-07-10 东莞宇龙通信科技有限公司 多模移动终端和网络切换方法
US20150271060A1 (en) * 2014-03-24 2015-09-24 Canon Kabushiki Kaisha Communication apparatus including a plurality of network interfaces, method of controlling communication apparatus, and storage medium
CN105763661A (zh) * 2014-12-17 2016-07-13 华为技术有限公司 一种网络协议ip地址的获取方法及通信设备
WO2019091361A1 (zh) * 2017-11-10 2019-05-16 北京金山云网络技术有限公司 一种网卡模式切换方法、装置、电子设备及存储介质
CN109787777A (zh) * 2017-11-10 2019-05-21 北京金山云网络技术有限公司 一种网卡模式切换方法、装置、电子设备及存储介质
CN109831341A (zh) * 2019-03-19 2019-05-31 中国电子科技集团公司第三十六研究所 一种冗余双网卡的快速切换方法及装置
CN111212451A (zh) * 2019-12-26 2020-05-29 曙光信息产业股份有限公司 一种切换网络传输通道的方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023045389A1 (zh) * 2021-09-26 2023-03-30 华为技术有限公司 一种网卡适配电路、网卡适配方法以及相关装置

Also Published As

Publication number Publication date
CN112068784B (zh) 2024-03-12

Similar Documents

Publication Publication Date Title
CN103249075B (zh) 接入点故障的检测恢复方法及装置
CN106878343B (zh) 一种云计算环境下提供网络安全即服务的系统
WO2014094432A1 (zh) 深度报文检测结果扩散方法及装置
CN113891348A (zh) 一种随机接入信息的传输方法、终端及网络侧设备
WO2020173424A1 (zh) 报文处理的方法和网关设备
CN112068784A (zh) 一种云打印设备多网卡自动切换的方法及云打印设备
CN103414641A (zh) 邻居表项释放方法、装置和网络设备
US10680930B2 (en) Method and apparatus for communication in virtual network
CN112134775B (zh) 一种交换机环路检测方法和装置
CN103199990A (zh) 一种路由协议认证迁移的方法和装置
CN111447091B (zh) 一种网络环路检测方法、装置、设备及存储介质
EP2760178A1 (en) Method, apparatus and system for obtaining object
CN111092956A (zh) 资源同步方法、装置、存储介质及设备
CN106470421A (zh) 一种防止恶意终端非法占用核心网资源的方法和设备
WO2011157111A2 (zh) 确定故障指示状态的方法、节点和系统
EP3258654B1 (en) Method and system for reducing pim protocol dr change
CN111953608B (zh) 一种邻居表项管理方法、装置、电子设备及存储介质
CN111262864B (zh) 直播状态数据的发送方法、装置、系统及存储介质
CN112449366B (zh) 报文转发方法、装置、无线ap设备及存储介质
CN111490989A (zh) 一种网络系统、攻击检测方法、装置及电子设备
CN111641698B (zh) 一种数据统计方法、系统、设备及存储介质
CN112492703B (zh) 网络连接管理方法、装置、设备及存储介质
CN115499385B (zh) 一种vDPA虚机热迁移不丢包的方法
CN114205405B (zh) 一种bfd报文发送方法、装置、电子设备及存储介质
CN110768876B (zh) 自动触发用户上线的方法、装置、服务器及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant