English:
[0001] Networks may allow devices to communicate and to exchange data. The quality of networks can vary based on the type of network. For example, a wired network may be faster and more consistent than a wireless network that can experience more interference. Similarly, a wireless Wi-Fi network may have a better network connection than a cellular network used by the phone.
[0002] The quality of networks can also vary based on location. For example, how wireless access points are located within an office building may affect the network quality depending on a location. Some locations may have better coverage than other locations within the building. This may be due to strength of a particular wireless access point, interference due to many walls or barriers, and the like.
[0004] FIG. 2 is a block diagram of components of the example computer of the present disclosure that automatically selects a network connection for paired devices;
[0005] FIG. 3 is a block diagram of an example method for selecting a network connection for a computer and a mobile endpoint device that is paired; and
[0006] FIG. 4 is an example non-transitory computer readable medium storing instructions executed by a processor for selecting a network connection for paired devices of the present disclosure.
[0007] The present disclosure relates to an approach for selecting a network connection for paired devices and an apparatus for performing the same. As discussed above, the quality of network connections can vary due to the type of connection or a location. One of the paired devices may have a better network connection than the network connection of the other paired device. The difference in the network connections may be due to a variety of reasons.
[0008] Examples of the present disclosure automatically select the best network connection for the paired devices based on a comparison of the respective network connections of the paired devices. For example, one device may have a wireless connection to a wireless network and the other device may have a wired connection to a broadband network. The present disclosure may objectively compare the wireless network and the broadband network to determine the better network connection and direct the paired device with the lower quality network connection to connect to the higher quality network connection through a local connection of the paired devices.
[0009] FIG. 1 illustrates a block diagram of a communication network 100 of the present disclosure. The communication network 100 may include a computer 102 and a mobile endpoint device 104. The computer 102 may be any type of computing system such as a desktop computer, a laptop computer, a tablet computer, and the like. The computer 102 may establish a connection 1 12 to a communication network 108. The connection 1 12 may be a wired or wireless connection. The communication network 108 may be an Internet protocol (IP) network such as a broadband network, a Wi-Fi network and the like.
[0010] The mobile endpoint device 104 may be a device that is capable of wireless communications. For example, the mobile endpoint device 104 may be a smart phone, a tablet computer, and the like. The mobile endpoint device 104 may establish a wireless connection 1 14 to a wireless network 1 10. The wireless network 1 10 may be a Wi-Fi network, a cellular network, and the like.
[0011] It should be noted that FIG. 1 has been simplified for ease of explanation. For example, the communication network 108 and the wireless network 1 10 may include additional network elements not shown (e.g., a gateway, a router, an access point, a border element, a firewall, and the like).
[0012] In one implementation, the computer 102 and the mobile endpoint device 104 may be paired via a local connection 106. In some examples, the local connection 106 may be a short range communication protocol, such as Bluetooth®, that allows the computer 102 and mobile endpoint device 104 to communicate when close (e.g., in the same room) to one another. In some examples, the local connection 106 may be a wireless connection, such as Institute of Electrical Electronics Engineering (IEEE) 802.1 1 . In some examples, the local connection 106 may be a wired connection such as a universal serial bus (USB) connection, an Ethernet connection, and the like.
[0013] In some implementations, the computer 102 and the mobile endpoint device 104 may be connected to different networks (e.g., the communication network 108 and the wireless network 1 10, respectively). This may be due to different capabilities. For example, the computer 102 may not have wireless capabilities and use an Ethernet connection to connect to the communication network 108.
[0014] In another example, the different network connections may be due to different security permissions of the computer 102 and the mobile endpoint device 104. For example, the communication network 108 may be a secured Wi-Fi network of an enterprise and the computer 102 may be a work computer that has permission to access the communication network 108. The mobile endpoint device 104 may be a personal device of the user and may not have permission to access the communication network 108. As a result, the mobile endpoint device 104 may use a cellular service of the wireless network 1 10. Thus, the computer 102 may not be able to directly connect to the wireless network 1 10, or the mobile endpoint device 104 may not be able to directly connect to the communications network 108.
[0015] However, in some instances, the performance of the communication network 108 may be superior to the performance of the wireless network 1 10, or vice versa. Thus, the user may want to leverage the superior performance of the communication network 108 or the wireless network 1 10 for both the computer 102 and the mobile endpoint device 104. The computer 102 may automatically monitor the performance of the communication network 108 and the wireless network 1 10 (e.g., via data sent to the computer 102 from the mobile endpoint device over the local connection106), calculate a quality score of the communication network 108 and the wireless network 1 10, and automatically select the best network connection based on the respective quality scores of the communication network 108 and the wireless network 1 10.
[0016] In one implementation, the computer 102 may collect parameters associated with the communication network 108 and collect parameters associated with the wireless network 1 10. The parameters may be measured based on data transmitted over the communication network 108 or the wireless network 1 10. For example, the computer 102 may transmit test data packets, or pinging data packets, periodically. In one example, the parameters may be collected based on information exchanged between the computer 102 and the mobile endpoint device 104 over the local connection 106.
[0017] The computer 102 may calculate a quality score for the communication network 108 and the wireless network 1 10 based on the parameters that are collected. The respective quality scores may be compared by the computer 102. If the quality score of the communication network 108 is higher than the quality of score of the wireless network 1 10, then the computer 102 may maintain a connection to the communication network 108. The computer 102 may also instruct the mobile endpoint device 104 to connect to the communication network 108 via the local connection 106.
[0018] If the quality score of the wireless network 1 10 is higher than the quality of score of the communication network 108, then the computer 102 may connect to the wireless network 1 10 via the local connection 106. In one implementation, the computer 102 may ask permission from the mobile endpoint device 104 to access the wireless network 1 10 as the user may have to pay for data or have a limited amount of data if the wireless network 1 10 is a cellular network of the user. For example, a confirmation message may be generated and sent from the computer 102 to the mobile endpoint device 104.
[0019] In one example, the quality score may be a numerical score that is based on the parameters of the respective network connection. The parameters may include a throughput value, a latency value, a packet loss value, a network signal strength value, a number of network drops value, a goodput percentage, or a combination thereof. The parameters may be assigned a numerical value (e.g., a value between 1 -5, 1 being the worst and 5 being the best, a scaled value between 0-100 based on measurements of a respective parameter, a letter grade, and the like). To illustrate, when no packet loss is measured for the communication network 108 a value of 5 may be assigned for the packet loss parameter, when packet losses above a first threshold are measured for the communication network 108, a value of 4 may be assigned for the packet loss parameter, and so forth. Values may be similarly assigned to each parameter that is used to calculate the quality score of communication network 108 or the wireless network 1 10.
[0020] In one implementation, when multiple parameters are used to calculate the quality score, a sum of the values for each respective parameter may be calculated for the quality score. For example, the wireless network 1 10 may have a values of 5, 4, 4, and 3 for the latency value, the packet loss value, the network signal strength value and the number of network drops value.
[0021] In another implementation, when multiple parameters are used to calculate the quality score, an average of the values for each respective parameter may be calculated for the quality score. For example, the communication network 108 may have a values of 80, 75, 95, and 90 for the latency value, the packet loss value, the network signal strength value and the number of network drops value. Thus, the quality score for the wireless network 1 10 may be the average of 80, 75, 95, and 90, or 85.
[0023] In one implementation, the values of parameters may be weighted. For example, certain parameters may be more important to the quality score than others. For example, throughput and the latency of the network connection may be more important than the signal strength. As a result, the throughput value and the latency value may be multiplied by a weighting factor, whether the quality score is a sum or an average.
[0024] In one example, the parameters that are used to calculate the quality score may be user defined. For example, certain parameters may be important to a user and other parameters may be irrelevant to the user. For example, one user may feel that the best user experience is when packet loss is minimized and not care about the speed or throughput of the network. Another user may want minimum latency and high throughput and not care about packet loss or signal strength. Thus, the quality score may be based on parameters that are defined by the user.
[0025] FIG. 2 illustrates a block diagram of components of the computer 102 of the present disclosure that automatically selects a network connection for paired devices. In one implementation, the computer 102 may include a processor 202, a network selection application 204, a first communication device 206 and a second communication device 208. The processor 202 may be in communication with the network selection application 204, the first communication device 206 and the second communication device 208. The processor 202 may execute instructions associated with the network selection application to perform the functions described herein.
[0026] In one example, the first communication device 206 may be a component to establish the connection 1 12 to the communication network 108. The first communication device 206 may be a network adapter. The network adapter may be a wired network adapter that uses an Ethernet connection or a wireless network adapter that uses a Wi-Fi connection.
[0027] In one example, the second communication device 208 may be a component to establish the local connection 106 to the mobile endpoint device
[0028] In one implementation, the processor 202 may receive data from the communication network 108 via the first communication device 206. The data from the communication network 108 may be used by the network selection application 204 to measure, or to collect, various parameters and assign values for the parameters, as described above. The network selection application 204 may then calculate a quality score for the communication network 108.
[0029] The processor 202 may also receive data from the wireless network 1 10, or parameters from the mobile endpoint device 104, via the second communication device 208. For example, the data may be received by the mobile endpoint device 104 and continuously, or periodically, transmitted to the processor 202 over the local connection 106. The data from the wireless network 1 10 may be used by the network selection application 204 to measure, or to collect, various parameters and assign values for the parameters, as described above. The network selection application 204 may then calculate a quality score for the wireless network 1 10.
[0030] The network selection application 204 may then compare the quality score of the communication network 108 and the quality score of the wireless network 1 10. The network selection application 204 may select the network connection with the higher quality score. For example, if the communication network 108 has the higher quality score, the network selection application 204 may maintain the connection to the communication network 108. In addition, the network selection application 204 may generate an instruction that is transmitted to the mobile endpoint device 104 via the local connection 106. The instruction may instruct the mobile endpoint device to connect to the communication network 108 via the local connection 106 to the computer 102.
[0031] On the other hand, if the wireless network 1 10 has the higher quality score, the network selection application 204 may instruct the processor 202 to disconnect the connection between the first communication device 206 and the communications network 108. In addition, the network selection application 204 may instruct the processor 202 communicate over the wireless network 1 10 via the local connection 106 to the mobile endpoint device 104.
[0032] In some instances, the wireless network 1 10 may be a cellular network. The user may have a limited data plan or pay for data transmitted over the cellular network. As a result, in some implementations, the network selection application 204 may generate a confirmation message that is transmitted to the mobile endpoint device 104. The confirmation message may request a confirmation (e.g., pressing a continue button on a graphical user interface of the mobile endpoint device 104 that causes a confirmation signal to be transmitted over the local connection 106 to the computer 102) from the mobile endpoint device 104 that the computer 102 may have permission to connect to, and to transmit data over, the wireless network 1 10.
[0033] The network selection application 204 may collect the data, calculate the quality scores, and select the network connection periodically (e.g., every 15 minutes, every hour, every 5 hours, every day, and the like). In another example, the network selection application 204 may collect the data, calculate the quality scores, and select the network connection continuously.
[0034] In some implementations, a threshold or a pre-defined value may be used to prevent constant switching between the communications network 108 and the wireless network 1 10. In other words, the threshold or the pre-defined value may be used to ensure that the difference is significant to prevent constant switching between the communications network 108 and the wireless network 1 10.
[0035] For example, the performance of the communications network 108 and the wireless network 1 10 can vary over time due to various different factors (e.g., number of users, interference, downed equipment, and the like). Thus, in some implementations, the network selection application 204 may select a different network connection based on a comparison of the quality score and when an absolute value of the difference of the quality scores is greater than the pre-defined value, or threshold.
[0037] In another example, the pre-defined value may be a percentage. For example, the pre-defined value may be set to be 5 per cent. Thus, the network selection application 204 may not change the selection of the network connection unless the difference in the quality scores is greater than 5 per cent of one another.
[0038] In one implementation, the network selection application 204 may apply a delay before making a network selection. The network selection application 204 may then calculate the quality score of the communication network 108 and the quality score of the wireless network 1 10 and perform the comparison of the quality scores again. The delay may ensure that the quality scores were not a result of a temporary downgrade in performance as the performance of a network can vary from time to time. In one example, the delay may be a few seconds (e.g., 5 seconds, 30 seconds, and the like).
[0039] In one example, the network selection application 204 may apply a maximum number of changes for a certain time period. For example, the network selection application 204 may limit the number of changes to the network connection that can be made to one every one minute. Limiting the number of changes per a certain time period may limit the processing overhead caused by mapping operations that can be performed in response to changing the network selection.
[0040] In one example, the network selection application 204 may generate a message to be displayed on the device that is changing the network connection. For example, if the computer 102 is changing the network connection from the communication network 108 to the wireless network 1 10, a message may be displayed on the computer 102. Similarly, if the mobile endpoint device 104 is changing the network connection from the wireless network 1 10 to the communication network 108, a message may be displayed on the mobile endpoint device 104. The network selection application 204 may wait to receive a confirmation before making a change in selection of the network connection.
[0041] FIG. 3 illustrates a flow diagram of an example method 300 for selecting a network connection for a phone and a computer that is paired with the phone. In one example, the method 300 may be performed by the computer 102 or an apparatus 400 described below and illustrated in FIG. 4.
[0042] At block 302, the method 300 begins. At block 304, the method 300 establishes a local connection to a mobile endpoint device. For example, a computer may be paired with the mobile endpoint device via the local connection. When paired, the computer and the mobile endpoint device may work together to improve productivity. However, as noted above, the computer and the mobile endpoint device may not have access to the same network connection individually.
[0043] At block 306, the method 300 calculates a first quality score associated with a wireless connection of the mobile endpoint device based on a parameter associated with the wireless connection between the mobile endpoint device and a wireless network. For example, data transmitted over the wireless connection may be transmitted to the computer via the local connection by the mobile endpoint device. The data may contain information (e.g., packet data, transmission times, delay times, round trip times, and the like) that can be used to measure parameters associated with the performance of the wireless network. In addition, the mobile endpoint device may provide additional data to the computer over the local connection such as signal strength.
[0044] The computer may assign values to the parameters associated with the wireless network. The values may be used by the computer to calculate the first quality score. For example, the first quality score may be a sum, an average, or a weighted average of the values of the parameters, as described above.
[0045] At block 308, the method 300 selects a network connection based on a comparison of the first quality score and a second quality score associated with a connection between the computer and a communication network. In one implementation, the computer may also calculate the second quality score associated with the connection between the computer and the communication network using data transmitted over the communication network.
[0046] The computer may measure parameters based on the information contained in the data, as described above. The computer may assign values to the parameters and the values may be used to calculate the second quality score. Based on the comparison of the first quality score and the second quality score, the computer may select a network connection to the network with the higher quality score. For example, if the first quality score is higher than the second quality score, the computer may select the wireless network and connect to the wireless network via the local connection to the mobile endpoint device. If the second quality score is higher than the first quality score, the computer may maintain the connection to the communication network and instruct the mobile endpoint device to connect to the communication network via the local connection to the computer. At block 312, the method 300 ends.
[0047] FIG. 4 illustrates an example of an apparatus 400. In one example, the apparatus 400 may be the computer 102. In one example, the apparatus 400 may include a processor 402 and a non-transitory computer readable storage medium 404. The non-transitory computer readable storage medium 404 may include instructions 406, 408, 410, 412 and 414 that when executed by the processor 402, cause the processor 402 to perform various functions.
[0048] In one example, the instructions 406 may include instructions toestablish a local connection to a mobile endpoint device and receive data that is transmitted over a wireless connection between the mobile endpoint device and a wireless network via the local connection. The instructions 408 may include instructions to measure a parameter based on the data that is received. The instructions 410 may include instructions to calculate a first quality score associated with the wireless connection based on the parameter. The instructions 412 may include instructions to compare the first quality score to a second quality score associated with a connection between the computer and a communication network. The instructions 414 may include instructions to select between maintaining the network connection to the communication network or changing to the wireless network via the local connection to the mobile endpoint device based on a comparison of the first quality score and the second quality score.
[0049] It will be appreciated that variants of the above-disclosed and other features and functions, or alternatives thereof, may be combined into many other different systems or applications. Various presently unforeseen or unanticipated alternatives, modifications, variations, or improvements therein may be subsequently made by those skilled in the art which are also intended to be encompassed by the following claims.

中文:
[0001]网络可以允许设备进行通信和交换数据。网络的质量可能会基于网络的类型而有所变化。例如,有线网络可以比可能经受更多干扰的无线网络更快并且更始终如一。类似地,无线Wi-Fi网络可以比电话所使用的蜂窝网络具有更好的网络连接。
[0002]网络的质量还可能会基于位置而有所变化。例如,无线接入点如何位于办公大楼内可能会取决于位置而影响网络质量。某些位置可能具有比该建筑物内的其他位置更好的覆盖。这可能是由于特定无线接入点的强度、因许多墙壁或障碍物而引起的干扰等等。
[0004]图2是本公开的示例计算机的组件的框图,该示例计算机自动地为配对设备选择网络连接;
[0005]图3是用于为计算机和配对的移动端点设备选择网络连接的示例方法的框图;以及
[0006]图4是本公开的存储由处理器执行的指令的示例非暂时性计算机可读介质,所述指令用于为配对设备选择网络连接。
[0007]本公开涉及用于为配对设备选择网络连接的方法以及用于执行该方法的装置。如上面讨论的,网络连接的质量可能会由于连接类型或位置而有所变化。配对设备中的一个可能具有比另一配对设备的网络连接更好的网络连接。网络连接的差异可能是由于各种各样的原因。
[0008]本公开的示例基于配对设备的相应的网络连接的比较来自动地为配对设备选择最佳网络连接。例如,一个设备可以具有与无线网络的无线连接,而另一设备可以具有与宽带网络的有线连接。本公开可以客观地比较无线网络和宽带网络以确定更好的网络连接,并引导具有较低质量网络连接的配对设备通过配对设备的本地连接而连接到较高质量的网络连接。
[0009]图1例示了本公开的通信网络100的框图。通信网络100可以包括计算机102和移动端点设备104。计算机102可以是任何类型的计算系统,诸如台式计算机、膝上型计算机、平板计算机等。计算机102可以建立与通信网络108的连接112。连接112可以是有线连接或无线连接。通信网络108可以是诸如宽带网络、Wi-Fi网络等的互联网协议(IP)网络。
[0010]移动端点设备104可以是能够进行无线通信的设备。例如,移动端点设备104可以是智能电话、平板计算机等。移动端点设备104可以建立与无线网络110的无线连接114。无线网络110可以是Wi-Fi网络、蜂窝网络等。
[0011]应当注意,为了易于解说,已经简化了图1。例如,通信网络108和无线网络110可以包括未示出的附加网络元件(例如,网关、路由器、接入点、边缘元件、防火墙等)。
[0012]在一个实施方式中,计算机102和移动端点设备104可以经由本地连接106进行配对。在一些示例中,本地连接106可以是诸如蓝牙之类的短距离通信协议,其允许计算机102和移动端点设备104在彼此靠近(例如,在同一房间中)时进行通信。在一些示例中,本地连接106可以是无线连接,诸如电气电子工程师协会(IEEE)802.11。在一些示例中,本地连接106可以是诸如通用串行总线(USB)连接、以太网连接等的有线连接。
[0013]在一些实施方式中,计算机102和移动端点设备104可以连接到不同的网络(例如,分别连接到通信网络108和无线网络110)。这可能是由于不同的能力。例如,计算机102可能不具有无线能力,并且使用以太网连接来连接到通信网络108。
[0014]在另一示例中,不同的网络连接可能是由于计算机102和移动端点设备104的不同的安全性许可。例如,通信网络108可以是企业的安全Wi-Fi网络,并且计算机102可以是具有接入通信网络108的许可的工作计算机。移动端点设备104可以是用户的个人设备,并且可能不具有接入通信网络108的许可。结果,移动端点设备104可以使用无线网络110的蜂窝服务。因此,计算机102可能无法直接连接到无线网络110,或者移动端点设备104可能无法直接连接到通信网络108。
[0015]然而,在某些情况下,通信网络108的性能可以优于无线网络110的性能,或者反之亦然。因此,用户可能希望利用通信网络108或无线网络110的优越性能用于计算机102和移动端点设备104二者。计算机102可以(例如,经由从移动端点设备通过本地连接106发送给计算机102的数据)自动监控通信网络108和无线网络110的性能、计算通信网络108和无线网络110的质量得分,并基于通信网络108和无线网络110的相应的质量得分来自动选择最佳网络连接。
[0016]在一个实施方式中,计算机102可以收集与通信网络108相关联的参数,并收集与无线网络110相关联的参数。所述参数可以是基于通过通信网络108或无线网络110传输的数据而测量的。例如,计算机102可以周期性地传输测试数据包或脉冲(pinging)数据包。在一个示例中,所述参数可以是基于在计算机102与移动端点设备104之间通过本地连接106交换的信息而收集的。
[0017]计算机102可以基于所收集的参数来计算针对通信网络108和无线网络110的质量得分。可以由计算机102来比较相应的质量得分。如果通信网络108的质量得分高于无线网络110的得分的质量,那么计算机102可以维持与通信网络108的连接。计算机102还可以指示移动端点设备104经由本地连接106连接到通信网络108。
[0018]如果无线网络110的质量得分高于通信网络108的得分的质量,那么计算机102可以经由本地连接106连接到无线网络110。在一个实施方式中,在无线网络110是用户的蜂窝网络的情况下,由于用户可能必须为数据付费或者可能具有有限的数据量,因此计算机102可以从移动端点设备104请求接入无线网络110的许可。例如,可以生成确认消息并将其从计算机102发送给移动端点设备104。
[0019]在一个示例中,质量得分可以是基于相应网络连接的参数的数值得分。所述参数可以包括吞吐量的值、等待时间的值、包丢失的值、网络信号强度的值、网络掉线次数的值、实际吞吐量百分比或它们的组合。可以为参数分配数值值(例如,在1至5之间的值(1是最差的并且5是最好的)、基于相应参数的测量值的在0至100之间的经缩放的值、字母等级等等)。为了例示,当针对通信网络108没有测量到包丢失时,可以为包丢失参数分配值5,当针对通信网络108测量到高于第一阈值的包丢失时,可以为包丢失参数分配值4,依此类推。可以类似地为用于计算通信网络108或无线网络110的质量得分的每个参数分配值。
[0020]在一个实施方式中,当使用多个参数来计算质量得分时,可以计算每个相应参数的值的总和以用于质量得分。例如,无线网络110针对等待时间的值、包丢失的值、网络信号强度的值和网络掉线次数的值可以具有值5、4、4和3。因此,无线网络110的质量得分可以是5、4、4和3之和或者说16。
[0021]在另一实施方式中,当使用多个参数来计算质量得分时,可以计算每个相应参数的值的平均以用于质量得分。例如,通信网络108针对等待时间的值、包丢失的值、网络信号强度的值和网络掉线次数的值可以具有值80、75、95和90。因此,无线网络110的质量得分可以是80、75、95和90的平均或者说85。
[0023]在一个实施方式中,可以对参数的值进行加权。例如,某些参数可能比其他参数对质量得分更重要。例如,网络连接的吞吐量和等待时间可能比信号强度更重要。结果,无论质量得分是总和还是平均,吞吐量的值和等待时间的值都可以乘以加权因子。
[0024]在一个示例中,用于计算质量得分的参数可以是用户定义的。例如,某些参数可能对用户很重要,而其他参数可能与该用户无关。例如,一个用户可能会觉得最佳用户体验是在包丢失最小化的时候,而不在乎网络的速度或吞吐量。另一用户可能想要最小的等待时间和高吞吐量,而不关心包丢失或信号强度。因此,质量得分可以是基于用户所定义的参数。
[0025]图2例示了本公开的计算机102的组件的框图,计算机102自动地为配对设备选择网络连接。在一个实施方式中,计算机102可以包括处理器202、网络选择应用204、第一通信设备206和第二通信设备208。处理器202可以与网络选择应用204、第一通信设备206和第二通信设备208通信。处理器202可以执行与网络选择应用相关联的指令以实行本文描述的功能。
[0026]在一个示例中,第一通信设备206可以是要建立与通信网络108的连接112的组件。第一通信设备206可以是网络适配器。网络适配器可以是使用以太网连接的有线网络适配器,或者是使用Wi-Fi连接的无线网络适配器。
[0027]在一个示例中,第二通信设备208可以是要建立与移动端点设备104的本地连接106的组件。例如,第二通信设备208可以是蓝牙无线电装置。
[0028]在一个实施方式中,处理器202可以经由第一通信设备206从通信网络108接收数据。来自通信网络108的数据可以由网络选择应用204用来测量或收集各种参数并如上文描述的那样为所述参数分配值。网络选择应用204然后可以计算针对通信网络108的质量得分。
[0029]处理器202还可以经由第二通信设备208接收来自无线网络110的数据或来自移动端点设备104的参数。例如,可以由移动端点设备104接收数据,并通过本地连接106连续地或周期性地将其传输给处理器202。来自无线网络110的数据可以由网络选择应用204用来测量或收集各种参数并如上文描述的那样为所述参数分配值。网络选择应用204然后可以计算针对无线网络110的质量得分。
[0030]网络选择应用204然后可以比较通信网络108的质量得分与无线网络110的质量得分。网络选择应用204可以选择具有较高质量得分的网络连接。例如,如果通信网络108具有较高的质量得分,则网络选择应用204可以维持与通信网络108的连接。另外,网络选择应用204可以生成指令,所述指令经由本地连接106传输给移动端点设备104。所述指令可以指示移动端点设备经由与计算机102的本地连接106而连接到通信网络108。
[0031]另一方面,如果无线网络110具有较高的质量得分,则网络选择应用204可以指示处理器202断开第一通信设备206与通信网络108之间的连接。另外,网络选择应用204可以指示处理器202经由与移动端点设备104的本地连接106来通过无线网络110进行通信。
[0032]在某些情况下,无线网络110可能是蜂窝网络。用户可能具有有限的数据计划或可能为通过蜂窝网络传输的数据付费。结果,在一些实施方式中,网络选择应用204可以生成传输给移动端点设备104的确认消息。确认消息可以从移动端点设备104请求确认(例如,按下移动端点设备104的图形用户接口上的继续按钮,此动作使得通过本地连接106将确认信号传输给计算机102),于是计算机102可以具有连接到无线网络110并通过无线网络110传输数据的许可。
[0033]网络选择应用204可以周期性地(例如,每15分钟、每小时、每5小时、每天等等)收集数据、计算质量得分并选择网络连接。在另一示例中,网络选择应用204可以不断地收集数据、计算质量得分并选择网络连接。
[0034]在一些实施方式中,可以使用阈值或预定义的值来防止通信网络108与无线网络110之间的经常切换。换言之,可以使用阈值或预定义的值来确保该差很大,以防止经常在通信网络108与无线网络110之间切换。
[0035]例如,由于各种不同因素(例如,用户数量、干扰、故障设备等),通信网络108和无线网络110的性能可能随时间而变化。因此,在一些实施方式中,网络选择应用204可以基于质量得分的比较并且在质量得分之差的绝对值大于预定义的值或阈值时选择不同的网络连接。
[0037]在另一示例中,预定义的值可以是百分比。例如,预定义的值可以设为5%。因此,除非质量得分之差大于彼此的5%,否则网络选择应用204可能不会改变网络连接的选择。
[0038]在一个实施方式中,网络选择应用204可以在进行网络选择之前应用延迟。网络选择应用204然后可以再次计算通信网络108的质量得分和无线网络110的质量得分并执行质量得分的比较。延迟可以确保质量得分不是性能的暂时性降级的结果,因为网络的性能可能会不时变化。在一个示例中,延迟可以是几秒(例如,5秒、30秒等)。
[0039]在一个示例中,网络选择应用204可以应用特定时间段内的最大改变次数。例如,网络选择应用204可以限制对网络连接的改变次数,使得可以将其限为每分钟一次。限制每特定时间段内的改变次数可以限制由可能响应于改变网络选择而执行的映射操作所引起的处理开销。
[0040]在一个示例中,网络选择应用204可以生成要在正在改变网络连接的设备上显示的消息。例如,如果计算机102正在将网络连接从通信网络108改为无线网络110,则可以在计算机102上显示消息。类似地,如果移动端点设备104正在将网络连接从无线网络110改为通信网络108,则可以在移动端点设备104上显示消息。网络选择应用204可以等候接收到确认才进行网络连接选择的改变。
[0041]图3例示了用于为电话和与电话配对的计算机选择网络连接的示例方法300的流程图。在一个示例中,方法300可以由计算机102或下面描述并在图4中例示的装置400来执行。
[0042]方法300在框302处开始。在框304处,方法300建立与移动端点设备的本地连接。例如,计算机可以经由本地连接与移动端点设备配对。在配对后,计算机和移动端点设备可以一起工作以提高生产率。然而如上文指出的,计算机和移动端点设备可能无法单独接入到同一网络连接。
[0043]在框306处,方法300基于与移动端点设备和无线网络之间的无线连接相关联的参数来计算与移动端点设备的无线连接相关联的第一质量得分。例如,无线端点设备可以经由本地连接将通过无线连接传输的数据传输给计算机。数据可以包含能够用于测量与无线网络的性能相关联的参数的信息(例如,包数据、传输时间、延迟时间、往返时间等)。另外,移动端点设备可以通过本地连接向计算机提供另外的数据,诸如信号强度。
[0044]计算机可以向与无线网络相关联的参数分配值。所述值可以由计算机用来计算第一质量得分。例如,第一质量得分可以是参数的值的总和、平均或加权平均,如上文描述的那样。
[0045]在框308处,方法300基于第一质量得分和与计算机和通信网络之间的连接相关联的第二质量得分的比较来选择网络连接。在一个实施方式中,计算机也可以使用通过通信网络传输的数据来计算与计算机和通信网络之间的连接相关联的第二质量得分。
[0046]计算机可以基于数据中包含的信息来测量参数,如上文描述的那样。计算机可以向所述参数分配值,并使用所述值来计算第二质量得分。基于第一质量得分和第二质量得分的比较,计算机可以选择与具有较高质量得分的网络的网络连接。例如,如果第一质量得分高于第二质量得分,则计算机可以选择无线网络并经由与移动端点设备的本地连接而连接到无线网络。如果第二质量得分高于第一质量得分,则计算机可以维持与通信网络的连接,并指示移动端点设备经由与计算机的本地连接而连接到通信网络。方法300在框312处结束。
[0047]图4例示了装置400的示例。在一个示例中,装置400可以是计算机102。在一个示例中,装置400可以包括处理器402和非暂时性计算机可读存储介质404。非暂时性计算机可读存储介质404可以包括指令406、408、410、412和414,所述指令在由处理器402执行时使处理器402实行各种功能。
[0048]在一个示例中,指令406可以包括要建立与移动端点设备的本地连接并经由本地连接接收在移动端点设备与无线网络之间通过无线连接传输的数据的指令。指令408可以包括要基于接收到的数据来测量参数的指令。指令410可以包括要基于所述参数来计算与无线连接相关联的第一质量得分的指令。指令412可以包括要将第一质量得分与跟计算机和通信网络之间的连接相关联的第二质量得分进行比较的指令。指令414可以包括要基于第一质量得分和第二质量得分的比较来在维持与通信网络的网络连接或经由与移动端点设备的本地连接而改为无线网络之间进行选择的指令。
[0049]将领会到,以上公开的和其他的特征和功能的变型或其替换方案可以组合到许多其他不同的系统或应用中。本领域技术人员后续可以做出各种目前未预见或未意料到的替换、修改、变化或其中的改进,其也意图被以下权利要求所涵盖。