System and method for reconfiguring a network using network traffic comparison
By comparing the average packet counts of each client type in the first and second networks, determining the difference and reconfiguring the network to use unicast query response messages, the problem of mDNS query flooding is solved, and bandwidth saving and user experience improvement is achieved.
Patent Information
- Application Number
- CN202110432504.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-06-17
- Filing Date
- 2021-04-21
- Publication Date
- 2025-04-04
- Estimated Expiration
- 2041-04-21
AI Technical Summary
In the prior art, mDNS query and mDNS query response messages are prone to network flooding, resulting in high bandwidth utilization and degradation of user experience, especially in large-scale networks.
By determining the average packet count of each client type in the first and second networks, the difference between the two is calculated and based on the difference being above a predefined threshold, the first network is reconfigured to respond to the mDNS query with a unicast query response message.
Effectively prevent the flooding of mDNS queries and mDNS queries response messages, reduce bandwidth utilization, improve user experience, and provide economic benefits through bandwidth savings.
Smart Images

Figure CN113810509B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to systems and methods for reconfiguring a network using network traffic comparison. Background Art
[0002] Domain Name System Service Discovery (DNS-SD) is a zero-configuration (Zeroconf) network protocol that allows client devices (e.g., mobile devices, tablet computers, smartphones, etc.) to browse a network using standard DNS messages to find available services. For example, DNS-SD allows a client device to use DNS query and query response messages to discover a named list of services available on hosts (e.g., client devices, servers, etc.) in a network and resolve these services to host names.
[0003] In addition, the client device can use the multicast DNS (mDNS) protocol in conjunction with DNS-SD to send DNS query messages to multiple hosts in the network. The mDNS protocol can be used to resolve a host name to an IP address in a network that does not include a local name server (eg, a DNS server). Summary of the invention
[0004] The purpose of the present disclosure is to provide a method and a network coordinator to at least partially solve the above-mentioned problems existing in the prior art.
[0005] One aspect of the present disclosure provides a method, including: determining, by a processing resource, a client type of each client device among a plurality of client devices connected to a first network; determining, by the processing resource, a first average packet count of each client type connected to the first network, wherein the first network is configured to respond to a multicast domain name service (mDNS) query with a multicast query response message; receiving, by the processing resource, a second average packet count of each client type of a plurality of client devices connected to a second network, wherein the second network is configured to respond to the mDNS query with a unicast query response message; calculating, by the processing resource, a difference between the first average packet count of the client type and the second average packet count of the corresponding client type in the second network for each client type in the first network; and reconfiguring the first network to respond to the mDNS query with a unicast query response message based on determining that the difference between the first average packet count and the second average packet count of at least one client type of the first network is higher than a first predefined threshold.
[0006] According to one or more embodiments, reconfiguring the first network to respond to the mDNS query with a unicast query response message also includes: transmitting the difference to a network device associated with an administrator of the first network; receiving an instruction from the network device associated with the administrator to reconfigure the first network to respond to the mDNS query with a unicast query response message; and in response to receiving the instruction, reconfiguring the first network to respond to the mDNS query with a unicast query response message.
[0007] According to one or more embodiments, the method further comprises displaying the difference on a user interface of a network device associated with an administrator of the first network.
[0008] According to one or more embodiments, reconfiguring the first network further includes: calculating, by a processing resource, a first bandwidth consumption of the first network based on an average packet count of each client type connected to the first network, wherein the bandwidth consumption of each client type connected to the first network is calculated based on a first average packet count of each client type in the first network, a count of each client type in the first network, and a number of network devices that share a VLAN with multiple client devices; calculating, by a processing resource, a second bandwidth consumption of the second network based on a second average packet count of each client type connected to the second network and a count of each client type in the second network; generating, by the processing resource, a bandwidth difference between the first network and the second network by comparing the first bandwidth consumption with the second bandwidth consumption; and reconfiguring the first network to respond to the mDNS query with a unicast query response message based on determining that the bandwidth difference is higher than a second predefined threshold.
[0009] According to one or more embodiments, the method further comprises displaying the bandwidth difference on a user interface of the network device.
[0010] According to one or more embodiments, the method further comprises displaying the bandwidth difference on a user interface of an external server configured to manage the first network.
[0011] According to one or more embodiments, the method further includes the following steps: calculating bandwidth savings for the first network based on the bandwidth difference between the first network and the second network; transmitting the bandwidth savings as a recommendation to a network device associated with an administrator of the first network; and displaying the recommendation on a user interface of the network device.
[0012] According to one or more embodiments, the first network and the second network are client broadcast networks.
[0013] Another aspect of the present disclosure provides a network coordinator, comprising: at least one hardware processor; and a non-transitory computer-readable storage medium storing instructions, which, when executed by the hardware processor, cause the hardware processor to: determine a client type of each client device among a plurality of client devices in a first network; determine a first average packet count for each client type connected to the first network, wherein the first network is configured to respond to a multicast domain name service (mDNS) query with a multicast query response message; receive a second average packet count for each client type of a plurality of client devices connected to a second network, wherein the second network is configured to respond to the mDNS query with a unicast query response message; calculate, for each client type in the first network, a difference between the first average packet count of the client type and the second average packet count of the corresponding client type in the second network; and based on determining that the difference between the first average packet count and the second average packet count of at least one client type of the first network is higher than a first predefined threshold, reconfigure the first network to respond to the mDNS query with a unicast query response message.
[0014] According to one or more embodiments, the instructions, when executed by a hardware processor, cause the hardware processor to: transmit a difference to a network device associated with an administrator of a first network; receive instructions from the network device to reconfigure the first network to respond to mDNS queries with unicast query response messages; and in response to receiving the instructions, reconfigure the first network to respond to mDNS queries with unicast query response messages.
[0015] According to one or more embodiments, the instructions, when executed by a hardware processor, cause the hardware processor to: calculate a first bandwidth consumption of the first network based on a first average packet count of each client type connected to the first network, wherein the bandwidth consumption of each client type connected to the first network is calculated based on the first average packet count of each client type in the first network, the count of each client type in the first network, and the number of network devices that share a VLAN with multiple client devices; calculate a second bandwidth consumption of the second network based on a second average packet count of each client type connected to the second network and the count of each client type in the second network; generate a bandwidth difference between the first network and the second network by comparing the first bandwidth consumption with the second bandwidth consumption; and based on determining that the bandwidth difference is above a second predefined threshold, reconfigure the first network to respond to the mDNS query with a unicast query response message.
[0016] According to one or more embodiments, the instructions, when executed by a hardware processor, cause the hardware processor to display the bandwidth difference on a user interface of a network device.
[0017] According to one or more embodiments, the first network and the second network are client broadcast networks.
[0018] According to one or more embodiments, the instructions, when executed by a hardware processor, cause the hardware processor to: calculate bandwidth savings for the first network based on a bandwidth difference between the first network and the second network; transmit the bandwidth savings as a recommendation to a network device associated with an administrator of the first network; and display the recommendation on a user interface of the network device.
[0019] According to one or more embodiments, the predefined threshold is set based on a percentage of bandwidth saving of the first network.
[0020] Another aspect of the present disclosure provides a method, including: determining, by a processing resource, a client type of each of a plurality of client devices in a first network and a count of network devices that share the first network with the plurality of client devices; determining, by the processing resource, a first average packet count of each client type connected to the first network, wherein the first network is configured to respond to a multicast domain name service (mDNS) query with a multicast query response message; receiving, by the processing resource, a second average packet count of each client type of a plurality of client devices connected to a second network, wherein the second network is configured to respond to the mDNS query with a unicast query response message; calculating, by the processing resource, a first bandwidth consumption of the client type for each client type connected to the first network, wherein the first bandwidth consumption of the client type is calculated based on the first average packet count of the client type, a count of a plurality of client devices of the client type, and a number of network devices that share a VLAN with the plurality of client devices of the client type; calculating, by the processing resource, a second bandwidth consumption of the second network based on the second average packet count of each client type connected to the second network and a count of each client type in the second network; generating, by the device, a bandwidth difference between the first network and the second network by comparing the first bandwidth consumption with the second bandwidth consumption; and reconfiguring, by the device, the first network to respond to the mDNS query with a unicast query response message based on the bandwidth difference.
[0021] According to one or more embodiments, reconfiguring the first network to respond to the mDNS query with a unicast query response message based on the bandwidth difference includes: transmitting the bandwidth difference to an external server managed by an administrator of the first network; displaying the bandwidth difference on a user interface of the external server; receiving an instruction from the administrator at a processing resource to reconfigure the first network to respond to the mDNS query with a unicast query response message; and in response to receiving the instruction, reconfiguring the first network to respond to the mDNS query with a unicast query response message.
[0022] According to one or more embodiments, the first network and the second network are client broadcast networks.
[0023] According to one or more embodiments, wherein based on a percentage difference between the first bandwidth consumption and the second bandwidth consumption, a bandwidth difference is highlighted on a user interface device of the external server.
[0024] According to one or more embodiments, reconfiguring the first network to respond to mDNS queries with unicast query response messages based on the bandwidth difference includes: calculating a bandwidth saving for the first network based on the bandwidth difference between the first network and the second network; transmitting the bandwidth saving as a recommendation to a network device associated with an administrator of the first network; and displaying the recommendation on a user interface of the network device.
[0025] By using the embodiments of the present disclosure, the flooding of mDNS query and mDNS query response messages can be advantageously prevented. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] Various examples will be described below with reference to the accompanying drawings.
[0027] Figure 1 is an exemplary network environment for reconfiguring a network using network traffic comparison;
[0028] Figure 2 is an example first network according to an embodiment of the present disclosure;
[0029] Figure 3 is an example second network according to an embodiment of the present disclosure;
[0030] Figure 4 is a flow chart depicting a first method of reconfiguring a network using network traffic comparison according to an embodiment of the present disclosure;
[0031] Figure 5 is a flow chart depicting a second method of reconfiguring a network using network traffic comparison according to an embodiment of the present disclosure; and
[0032] Figure 6 is a flow chart depicting a third method of reconfiguring a network using network traffic comparison according to an embodiment of the present disclosure.
[0033] The drawings provide examples and / or implementations consistent with the description; however, the description is not limited to the examples and / or implementations provided in the drawings. DETAILED DESCRIPTION
[0034] The following detailed description refers to the accompanying drawings. Where possible, similar reference numerals are used in the drawings and the following description to refer to the same or similar parts. However, it should be clearly understood that the drawings are for illustration and description purposes only. Although several examples are described in this document, modifications, adaptations and other implementations are possible. Therefore, the following detailed description does not limit the disclosed examples. On the contrary, the proper scope of the disclosed examples may be defined by the appended claims.
[0035] The terms used herein are only for the purpose of describing example embodiments, and are not intended to be restrictive. As used herein, the singular forms "a", "an" and "the" are also intended to include plural forms, unless the context clearly indicates otherwise. As used herein, the term "multiple" is defined as two or more than two. It should also be understood that although the terms first, second, etc. can be used to describe various elements herein, these elements should not be limited by these terms, because unless otherwise specified or the context indicates otherwise, these terms are only used to distinguish one element from another element. As used herein, the term "includes" refers to including but not limited to, and the term "including" refers to including but not limited to. The term "based on" refers to at least partly based on.
[0036] As described above, a client device may use DNS-SD in conjunction with mDNS to discover available services on a network. For example, a client device may send an mDNS query message with a specific service name to all hosts in the network. When a host with a service identified by a specific service name receives an mDNS query message, the host responds by sending an mDNS query response message that resolves its host name to one or more IP addresses. However, since the mDNS query message is also sent to each other host in the network, each host responds with an mDNS query response message even if it does not provide a service identified by a specific service name. This results in flooding of mDNS query response messages across the network and high bandwidth utilization, which in turn may cause users to be unable to discover network services (e.g., services provided by printers, displays, media servers, etc.), cause network outages, and / or cause a reduction in the overall user experience when accessing network services. This flooding is particularly problematic for large-scale networks (e.g., campus or enterprise networks) with a large number of client devices. Furthermore, with the proliferation of BYOD (Bring Your Own Device) policies for many large-scale networks, each user may add multiple client devices to the network, resulting in additional load of mDNS query messages and mDNS query response messages and high bandwidth utilization. The additional load of mDNS query response messages may degrade the overall user experience. For example, a user may need to send multiple mDNS query messages to connect to a specific service provider host, which in turn increases the time it takes for the user to connect to the desired network service.
[0037] In general, embodiments disclosed herein describe a method and system for reconfiguring a network using network traffic comparison. Embodiments disclosed herein may include determining a client type for each of a plurality of client devices in a first network. Examples disclosed herein may include determining a first average packet count for each client type connected to a first network, wherein the first network is configured to respond to mDNS queries with a multicast query response message; and receiving a second average packet count for each client type of a plurality of client devices connected to a second network, wherein the second network is configured to respond to mDNS queries with a unicast query response message. Embodiments disclosed herein may include calculating, for each client type in the first network, a difference between a first average packet count for the client type and a second average packet count for the corresponding client type in the second network. Embodiments described herein may include reconfiguring the first network to respond to mDNS queries with a unicast query response message based on the difference between the first average packet count and the second average packet count being above a predefined threshold for at least one client type of the first network.
[0038] In this way, the embodiments described herein use network traffic comparison to reconfigure the network. For example, the embodiments disclosed herein determine a first average packet count for each client type in a first network that is configured to respond to mDNS queries with a multicast query response message, receive a second average packet count for each corresponding client type connected to a second network that is configured to respond to mDNS queries with a unicast query response message, and calculate the difference between the first average packet count of the client type and the second average packet count of the corresponding client type in the second network for each client type in the first network, thereby determining that the first network is configured in a manner that may cause flooding of mDNS query messages and mDNS query response messages (i.e., configured to respond to mDNS queries with multicast query response messages). In addition, the embodiments disclosed herein may include reconfiguring the first network to respond to mDNS queries with unicast query response messages based on the difference between the first average packet count and the second average packet count for at least one client type of the first network being higher than a predefined threshold, thereby reconfiguring the first network to prevent flooding of mDNS queries and mDNS query response messages.
[0039] In embodiments disclosed herein, the compared networks (e.g., a first network and a second network) may have (one or more) similar numbers and types of client devices. These networks may be customer broadcast networks deployed by the same cloud service provider. The client devices on each network may include both client devices requesting services and client devices providing specific services. In order to compare the networks, the network coordinator maintains a list of connected client devices and network devices in each network to be compared. The network coordinator may include an external server or any suitable network device. Each client device is classified as a specific client type. In addition, the network coordinator receives network traffic from the networks to be compared in the form of an average packet count for each client type. The device compares a first average packet count for each client type in a first network configured to respond with a conventional mDNS query response message with a second average packet count for a similar client type in a second network configured to respond with a unicast query response message. Compared to a first network implementing a standard mDNS query / response mechanism, a second network implementing a unicast query response message may have a lower average packet count and an overall lower bandwidth utilization because the mDNS query message and the mDNS query response message are not flooded across all network devices. The comparison results may be provided by the network coordinator to a network administrator of the first network. In one embodiment, based on the result of the network traffic comparison, the network coordinator may provide a recommendation to the network administrator of the first network to reconfigure the first network with a unicast query response mechanism. In another embodiment, based on the result of the network traffic comparison, the network coordinator may be configured to reconfigure the first network to respond to the mDNS query message with a unicast query response message instead of a traditional mDNS query response message.
[0040] Exemplary Network Environment
[0041] Figure 1 is an exemplary network environment in which embodiments of the present disclosure may be implemented. Figure 1 An exemplary network environment 100 is shown, which includes a network coordinator 101, a switch 103, an access point 107 (ad), and connected client devices 105 (aj). The client devices include service-seeking devices and service-providing devices, such as TV-1 105g, TV-2 105j, printer 105c and printer 105e.
[0042] The network coordinator 101 configures and manages client devices (105a-j) and network devices (e.g., access points 107a-d, switches 103, etc.) connected to the network 100. The network coordinator 101 includes at least one processing resource and at least one machine-readable storage medium containing (e.g., encoded with) instructions, which are executable by at least one processing resource of the network coordinator 101 to implement the functions described herein. In addition, the network coordinator 101 can participate in any network data transmission operation, including but not limited to switching, routing, bridging, or a combination thereof. In addition, the network coordinator 101 can collect network operation information from various nodes of one or more networks, including network traffic load information, network topology information, network usage information, etc. In addition, the network coordinator 101 can transmit commands to various nodes of one or more networks to change the network topology and routing to achieve various network efficiency and efficacy goals. In addition, the network coordinator 101 may include one or more cloud-based resources (e.g., cloud servers). Moreover, the network coordinator 101 may include any necessary hardware components to perform the invention disclosed herein, including but not limited to: processors, memories, display devices, input devices, communication devices, etc.
[0043] The switch 103 is configured to create virtual LANs (Local Area Networks), where each VLAN defines a broadcast domain for a group of connected client devices 105 (aj). Figure 1 In , each access point 107 (ad) is part of a single VLAN. Figure 1 The network environment depicted in FIG. 1 shows ten client devices 105 (aj) connected to the network 100 in a VLAN, but it should be understood that any suitable number of client devices (one or more) may be connected to the network 100. For example, in a campus or enterprise environment implementing a BYOD policy, the number of client devices in a VLAN may be greater (e.g., hundreds, thousands, etc.). Similarly, although only a single access point is shown in each VLAN, it should be understood that multiple access points may exist in one or more VLANs of the network. In addition, although only access point 107 (ad) is shown in FIG. Figure 1 103 , but it should be understood that any suitable type and number of network devices (e.g., switches, controllers, access points, routers, etc.) may be connected to the switch 103 .
[0044] exist Figure 1In the example of , client device 105b sends across an mDNS query message to access a printer service provided by printer device 105c connected to network 100. The mDNS query message is transmitted to all connected client devices 105(aj). Printer device 105c receives the mDNS query message and responds with an mDNS query response message. In addition to printer 105c intended for the query message, all other client devices 105 also receive the mDNS query message and respond with an mDNS query response message. This may cause a large number of mDNS query response messages to be flooded across network devices in the first network, thereby increasing overall bandwidth consumption. Although Figure 1 The client device 105(aj) is shown using an mDNS-based query response message, but it should be understood that other protocols may be used. For example, the client device 105(aj) may use the Digital Living Network Alliance (DLNA) to discover network services.
[0045] Figure 2 is an example first network 200 according to an embodiment of the present disclosure. Figure 2 A first network 200 configured to support conventional mDNS query response messages is shown. The first network 200 includes a network coordinator 201, a switch 205, a controller 207 (a, b), an access point 209 (ad), and four client devices 211 (ad) connected via respective access points (209a-209d). In one embodiment, the network coordinator 201 includes an external server. In another embodiment, the network coordinator 201 may be any network device configured to manage multiple networks for a single service provider. The network coordinator 201 maintains a list of all connected client devices on the first network 200. Each client device 211 (ad) in the first network 200 includes client device information registered with the network coordinator 201. The client devices include four client devices 211 (ad). The switch 205 creates a VLAN on the first network 200. The controller 207a and the controller 207b are used to define VLANs for the connected client devices. The network coordinator 201 determines the client type of each connected client device 211(ad) based on the vendor-specific attributes present in the mDNS query received from each client device in the first network 200. The vendor-specific attributes may include the vendor name, model, version number, and any other unique vendor attributes. For example, the type of the client device 211(ad) may be iPhone, MacBook, telephone, media server, printer, scanner, camera, or any other such device. The network coordinator 201 determines an average packet count for each client type in the first network (100) (i.e., a first average packet count). The network coordinator 201 can be configured to monitor each type of client device 211 (ad) and monitor the packets sent by each client type over a period of time to determine the first average packet count for each client type in the first network 200. The monitoring of network devices, client devices 211 (ad), and packets sent by each client device in the first network 200 can be performed over a day, a month, or even a year. It should be understood that the monitoring of network devices and client devices in the network 200 can be performed over any suitable time period (one or more). Although Figure 2 The network coordinator 201 is shown to manage only the client devices 211 (ad) and network devices in the first network 200, but it should be understood that the network coordinator 201 can manage multiple networks ( Figure 2 not shown).
[0046] Figure 2 A conventional mDNS query / response mechanism in the first network 200 is depicted. The client device 211a sends an mDNS query message to all connected client devices 211(ad) in the first network 200, and receives mDNS query response messages from all connected client devices in the first network 200.
[0047] Table 1 below shows exemplary information collected by the network coordinator 201 for each client type. Figure 2 Four client devices connected to four access points are shown, but it will be appreciated that any suitable number of client devices and access points may be present in first network 200 .
[0048]
[0049]
[0050] Table 1: List of client devices in network 200
[0051] Figure 3 is an example second network 300 according to an embodiment of the present disclosure. Figure 3A second network 300 is shown that is configured to support a modified mDNS query / response mechanism with unicast query and query response messages. The second network 300 includes a network coordinator 301, a switch 305, a controller 307 (a, b), an access point 309 (ad), and four client devices 311 (ad) connected via respective access points (309a-309d). In one embodiment, the network coordinator 301 includes an external server. The network coordinator 301 maintains a list of all connected client devices on the second network 300. Each client device 311 (ad) in the second network 300 includes client device information registered with the network coordinator 301. The switch 305 creates a VLAN on the second network 300. The controller 307a and the controller 307b are used to define VLANS for the connected client devices. For example, the type of the client device 311 (ad) may be iPhone, MacBook, A telephone, a media server, a printer, a scanner, a camera, or any other such device. The network coordinator 301 determines the client type of each connected client device 311 (ad) based on the vendor-specific attributes present in the mDNS query received from each client device in the second network 300. The vendor-specific attributes may include a vendor name, a model, a version number, and any other unique vendor attributes. The network coordinator 301 determines the average packet count (i.e., the second average packet count) for each client type in the second network 300. In an embodiment, a single network coordinator is configured to manage client devices and network devices of both the first network 200 and the second network 300. In an embodiment, the network coordinator 201 may be an external server configured to support the operation of the first network 200 and the second network 300. In one embodiment, the external server may be managed by the service provider of the first network 200 and the second network 300.
[0052] Figure 3 Components and Figure 2 Similarly, in the first network 200 ( Figure 2 ) and the second network 300( Figure 3) is the modified mDNS query / response mechanism in the second network 300. The client device 311a sends an mDNS query message, which is unicasted to the network coordinator 301 via the controller 307a. The network coordinator 301 communicates with a proxy device (not shown) that maintains all services provided by the client devices 311 (ad) in the second network 300. In one embodiment, the controller 307a can be configured to provide a unicast query response message. The network coordinator 301 can configure a network device (e.g., the controller 307a) to convert the mDNS query message into a unicast query message. The controller 307a receives the mDNS query message and unicasts the query response message to the proxy device in communication with the network coordinator 301. Based on the information of the service providing device at the proxy device, the unicast query response message is sent back to the client device 311a via the controller 307a. Since all query response messages are unicast query response messages, no flooding of mDNS query response messages occurs at all network devices in the second network 300. The network coordinator 301 determines a second average packet count for each client type and sends the second average packet count for each client type to the network coordinator 301 .
[0053] Table 2 below shows exemplary information collected by the network coordinator 301 for each client type.
[0054] Device Type Average packet count per minute Average packet size (in bytes) Client Type 1 50 1080 Client Type 2 40 900 Client Type 3 120 1020 Client Type 4 14 890
[0055] Table 2: List of client devices in network 300
[0056] Figure 4 is a flow chart depicting a first method 400 for reconfiguring a first network 200 using network traffic comparison according to an embodiment of the present disclosure. The first method 400 is performed by a network coordinator 201 .
[0057] The first method 400 may start in box 405 and proceed to box 410, in which the network coordinator 201 determines the client type of each connected client device 211 (ad) in the first network 200. The mDNS query message received from the client device contains a vendor-specific attribute, and the network coordinator 201 may determine the client type of each connected client device 211 (ad) in the first network 200 based on the vendor-specific attribute. The vendor-specific attribute may include a vendor name, model, version number, and any other unique attribute vendor attribute. In box 415, the network coordinator 201 determines a first average packet count for each client type 211 in the first network 200. The network coordinator 201 monitors each type in the first network 200 and the packets sent by each client type over a period of time, and determines a first average packet count for each client type.
[0058] In block 420, the network coordinator 201 receives a second average packet count for each client type connected to the second network 300. The network coordinator 301 of the second network 300 may be configured to determine a second average packet count for each client type in the second network 300 and send the second average packet count for the client type(s) to the network coordinator 201 of the first network 200. The network coordinator 301 maintains a list of client types from the connected client devices 311 (ad) and monitors packets sent by each client type in the second network 300. The network coordinator 301 determines a second average packet count for each client type in the second network 300 based on the information and sends the second average packet count for the client type(s) to the network coordinator 201 of the first network 200.
[0059] In block 425, network coordinator 201 calculates a difference between a first average packet count and a second average packet count for at least one client type in second network 300. The difference is calculated for each of first network 200. In some examples, the client types used to calculate the difference between the first average packet count in first network 200 and the second average packet count in second network 300 may be the same client types. For example, the client types in first network 200 and the corresponding client types in second network 300 may both be iPhone 11. Alternatively, in some examples, the client types used to calculate the difference between the first average packet count in the first network 200 and the second average packet count in the second network 300 may be similar client types, but not the same client types. For example, assuming that the client type in the first network 200 is Fire TV Stick first generation device, and the client type in the second network 300 is Fire TV Stick 2nd Generation device. In such an example, although the client type in the first network 200 is not the same as the client type of the second network 300, since both devices are streaming devices, these client types can be considered to be similar client types (and therefore corresponding client types). In one embodiment, the two client types can be determined to be corresponding client types based on a predefined mapping of client device models, version numbers, functions, etc.
[0060] In box 430, the difference is transmitted to a client device 211 associated with a network administrator of the first network 200, and in box 435, the difference is displayed on a user interface of the client device 211. The difference includes a difference between a first average packet count of a client type in the first network 200 and a second average packet count of each corresponding client type in the second network 300 for each client type connected to the first network 200. Therefore, the network administrator can see the difference between the first average packet count and the second average packet count for different client types. Based on the difference between the first average packet count and the second average packet count for each client type in the first network 200, the network administrator can decide whether the first network 200 should be reconfigured to respond with a unicast query response message. In one embodiment, the network coordinator 201 determines whether the difference between the first average packet count and the second average packet count for each client type in the first network 200 is above a first predefined threshold. Based on (e.g., in response to) determining that the difference between the first average packet count and the second average packet count of at least one client type in the first network 200 is above the first predefined threshold, the network coordinator 201 may send an indication to indicate to a network administrator (e.g., displayed on a user interface of the client device 211) that the difference between the first average packet count and the second average packet count of at least one client type is above the first predefined threshold. In addition, the network coordinator 201 may send an instruction to indicate to a network administrator (e.g., displayed on a user interface of the client device 211) the difference between the first average packet count and the second average packet count of at least one client type in the first network 100 and the first predefined threshold. In one embodiment, the first predefined threshold may be based on the difference between the first average packet count of a single client type in the first network 200 and the second average packet count of the corresponding client type in the second network 300. In another embodiment, the first predefined threshold may be based on the difference between the first average packet count of a plurality of client devices in the first network 200 and the second average packet count of the corresponding client type in the second network 300.
[0061] At block 440, the network coordinator 201 receives (e.g., from an administrator) an instruction to reconfigure the first network 200 to respond to the mDNS query message with a unicast query response message. In one embodiment, the network coordinator 201 may receive an instruction to reconfigure the first network 200 to respond to the mDNS query message with a unicast query response message when a difference between a first average packet count and a second average packet count of at least one client type in the first network 200 is above a first predefined threshold.
[0062] At block 445, based on the received instruction, the network coordinator 201 reconfigures the first network 200 to respond to the mDNS query with a unicast query response message. In one embodiment, when the difference between the first average packet count of at least one client type in the first network 200 and the second average packet count of each corresponding client type in the second network 300 calculated at block 425 is higher than a first predefined threshold, the network coordinator 201 reconfigures the first network 200 to respond to the mDNS query with a unicast query response message. Although the execution of the first method 400 above is described below with reference to the network coordinator 201, other devices such as an external server may perform the functions of the network coordinator 201. The external server may be managed by a service provider of the first network 200 and the second network 300.
[0063] Consider the example of client type 1 shown in Tables 1 and 2. Client type 1 is a client in both the first network 200 and the second network 300. MacBook. As shown in Table 1 associated with the first network 200, each The first average packet count for the MacBook (client type 1) is 500. As shown in Table 2 associated with the second network 300, each The second average packet count of the MacBook (client type 1) is 50. The difference between the first average packet count and the second average packet count is 450 average packet counts per minute. Therefore, the network coordinator 210 determines that there is a large difference between the first network 200 and the second network 300. There is a 90% difference between the first average packet count and the second average packet count for the MacBook. When the difference between the first average packet count and the second average packet count of the MacBook (client type 1) is greater than 60%, the network coordinator 201 can be configured to reconfigure the first network 200 to support unicast query response messages. When the difference between the first average packet count and the second average packet count is greater than 60%, the network coordinator 201 can be reconfigured to support unicast query response messages.
[0064] In one embodiment, the first predefined threshold is based on a difference between a first average packet count of a single client type in the first network 200 and a second average packet count of a single corresponding client type in the second network 300, and a percentage difference between the first average packet count and the second average packet count can be used to set the first predefined threshold. For example, the first threshold percentage can be set to 50%. In such an example, when the difference between the first average packet count and the second average packet count is greater than 50%, the network coordinator 201 can be configured to reconfigure the first network 200 to support unicast query messages.
[0065] In another embodiment, the first predefined threshold is based on a difference between a first average packet count of a plurality of client types in the first network 200 and a second average packet count of a corresponding plurality of client types in the second network 200, and a percentage difference between the first average packet count and the second average packet count can be used to determine the first predefined threshold. For example, the first threshold percentage can be set to 50%. In such an example, when the difference between the first average packet count of a plurality of client types in the first network 200 and the second average packet count of the corresponding client type in the second network 300 is greater than 50%, the network coordinator 201 can reconfigure the first network 200 to support unicast query messages.
[0066] Figure 5 is a flow chart depicting a second method 500 of reconfiguring the first network 200 according to an embodiment of the present disclosure. The second method 500 is performed by the network coordinator 201. The second method 500 may start in box 505 and proceed to box 510, in which the network coordinator 201 determines the client type of each client device 211 in the first network 200. The network coordinator 201 maintains a list of all connected client devices on the first network 200. The mDNS query message received from the client device contains a vendor specific attribute. Based on the vendor specific attributes present in the mDNS query message from each client device in the first network 200, the network coordinator 201 may determine the client type of each connected client device 211 (ad) in the first network 200. The vendor specific attributes may include the vendor name, model, version number, and any other unique attributes of the client type.
[0067] In block 515, the network coordinator 201 determines a first average packet count for each client type 211 connected to the first network 200. The network coordinator 201 monitors each type of client devices in the first network 200 and packets sent by each client type over a period of time, and calculates a first average packet count for each client type in the first network 200.
[0068] In block 520, the network coordinator 201 receives a second average packet count for each client type connected to the second network 300. The network coordinator 301 of the second network 300 may be configured to send the second average packet count for each client type to the network coordinator 201. The network coordinator 301 maintains a list of client types from connected client devices and monitors packets sent by each client type. The network coordinator 301 determines the second average packet count for each client type in the second network 300 based on the information and sends it to the network coordinator 201 of the first network 200.
[0069] In block 525, the network coordinator 201 calculates a first bandwidth consumption of the first network 200 based on a first average packet count for each client type connected to the first network 200. To calculate the first bandwidth consumption of the first network 200, the network coordinator 201 determines the first average packet count for each client type, a count of client devices 211 for each client type, and a count of network devices 209 that share the same VLAN as the client devices 211.
[0070] Bandwidth consumption in the first network 200
[0071] In the examples disclosed herein, bandwidth consumption in the first network 200 may correspond to the bandwidth used by each client type in the first network 200 and may be calculated according to the following Equation 1:
[0072] Equation 1: Bandwidth used by each client type = client type count * client type packet count * client type packet length * count of network devices sharing the same VLAN.
[0073] In some examples, the bandwidth consumption of each client type is calculated to calculate the overall bandwidth consumption of the first network 200. When the first network 200 implements a conventional mDNS query response message, the mDNS query response message is multicast, which may cause the mDNS query response message to be flooded on network devices in the first network 200.
[0074] Bandwidth consumption in the second network 300
[0075] In block 530, the network coordinator 201 calculates a second bandwidth consumption of the second network 300 based on the received second average packet count for each client type in the second network 300. In one embodiment, the network coordinator 201 receives the second bandwidth consumption of the second network 300 from the network coordinator 301.
[0076] In the examples disclosed herein, the second bandwidth consumption of the second network 300 may correspond to the bandwidth used by each client type in the second network 300 and may be calculated according to the following Equation 2:
[0077] Equation 2: Bandwidth used by each client type = client type count * client type packet count * packet length of client type.
[0078] The bandwidth of each client type is calculated to calculate the overall bandwidth consumption of the second network 300. Network devices are not considered when calculating the bandwidth of the second network 300 because the mDNS query response message is not multicast. In one embodiment, the network coordinator 301 can be configured to calculate the overall second bandwidth consumption and transmit it to the network coordinator 201.
[0079] Bandwidth savings:
[0080] In block 535, the device calculates a bandwidth difference between the first network 200 and the second network 300 by comparing the first bandwidth consumption and the second bandwidth consumption. In one embodiment, the bandwidth difference highlights the additional bandwidth utilized by the first network 200 due to the implementation of a conventional mDNS query response message. Therefore, if the first network 200 is reconfigured to respond to the mDNS query message with a unicast query response message, the first network 200 can save this additional bandwidth. Examples of bandwidth comparison and bandwidth savings are shown below.
[0081] The bandwidth comparison and difference determines the overall bandwidth savings that can be achieved in the first network 200 when the first network 200 is reconfigured for unicast query response messages. In one embodiment, the bandwidth difference is calculated as a percentage of bandwidth savings of the second network 300 relative to the first network 200 according to Equation 3 below:
[0082] Equation 3: in
[0083] X = bandwidth used by the connected client type in the first network 200;
[0084] X1, X2.....Xn=the bandwidth of different client types connected in the first network 200;
[0085] Y = bandwidth used by the connected client type in the second network 300;
[0086] Y1, Y2.....Yn = bandwidth of different client types connected in the second network 300; and
[0087] n = the number of network devices sharing the same VLAN.
[0088] In block 540, the network coordinator 201 transmits the bandwidth difference to an external server managed by an administrator responsible for the management and configuration of the first network 200. In one embodiment, the bandwidth savings that can be achieved when the first network 200 is reconfigured to respond to mDNS queries with unicast query response messages can be provided to the network administrator in the form of a recommendation.
[0089] In block 545, the bandwidth difference is displayed on a user interface of an external server managed by an administrator responsible for management and configuration of the first network 200. In another embodiment, the bandwidth difference may be transmitted and displayed on a client device associated with the administrator of the first network 200.
[0090] In another embodiment, the bandwidth savings percentage may be displayed on the user interface. The network administrator may decide whether to reconfigure the first network 200 to respond to mDNS queries with unicast query response messages. In one embodiment, the recommendation may be highlighted based on the savings percentage. For example, if the bandwidth savings are less than 25%, the bandwidth savings will be displayed on the user interface with orange highlighting as a recommendation. If the bandwidth savings are 25% to 50%, the bandwidth recommendation will be displayed on the user interface with red highlighting as a recommendation. If the bandwidth savings are greater than 50%, the bandwidth recommendation will be displayed on the user interface with red bold highlighting as a recommendation. Those skilled in the art will appreciate that recommendations based on bandwidth savings may be displayed on the user interface using any suitable graphical element(s) (e.g., highlighting, color, etc.) and based on any suitable bandwidth savings percentage(s).
[0091] In one embodiment, the first network 200 and the second network 300 are customer broadcast networks deployed by the same service provider.
[0092] The network coordinator 201 may be a server that receives network traffic information from the first network 200 and the second network 300. The server may compare network traffic of networks of similar size. Since the second network 300 is configured to respond to the mDNS query with a unicast query response message, the client devices in the second network 300 are considered to have an ideal average packet count. In one embodiment, when the count of at least one client type in the first network 200 is the same as the count of each corresponding client type in the second network 300, the server may be configured to compare the network traffic of the first network 200 with the second network 300. Based on determining that there is a difference between the count of at least one client type in the first network 200 and the count of each corresponding client type in the second network 300, the server may be configured to increase / decrease the count of each corresponding client in the second network 300 based on the count of at least one client type in the first network 200. This may be performed before calculating the second average packet count of at least one corresponding client type. In addition, in the case where there is a client type in the first network 200 that does not have a corresponding client type in the second network 300, the server may be configured to determine the second average packet count of the corresponding client type in the other network.
[0093] In addition, the server can calculate the first bandwidth consumption and the second bandwidth consumption based on the first average packet count and the second average packet count of each client type in the first network 200. In addition, the network coordinator 201 can calculate the bandwidth difference between the first bandwidth consumption and the second bandwidth consumption. The bandwidth difference reflects the bandwidth savings that can be achieved by the first network 200 when the first network 200 is reconfigured to support unicast query response messages. In addition, the bandwidth savings can be transmitted to the network administrator of the first network 200.
[0094] In one embodiment, if the first network 200 is a new network deployed by a service provider, the provided service may calculate bandwidth savings by comparing the bandwidth consumption of the first network 200 with the bandwidth consumption of the second network 300, and transmit the bandwidth savings as a recommendation to a network administrator of the first network 200. Based on the range of bandwidth savings, different recommendations may be provided to the administrator of the first network 200. The network administrator may attempt to reconfigure the first network 200 based on the recommendations received from the service provider, and determine whether bandwidth savings are needed / whether bandwidth savings are beneficial to the first network 200. In one embodiment, based on the bandwidth savings, the administrator may set a predefined threshold for bandwidth savings, above which the network 200 may be reconfigured to support unicast query response messages.
[0095] In block 550, the network coordinator 201 determines whether an instruction to reconfigure the first network 200 is received. If an instruction to reconfigure the first network 200 is received, then in block 555, the network coordinator 201 reconfigures the first network 200 to respond to the mDNS query message with a unicast query response message. In one embodiment, the network coordinator 201 may transmit an instruction to implement the unicast query response message to a network device in the first network 200. For example, the controller 207a in the first network 200 may be reconfigured to support the unicast query response message. If no instruction is received, the second method 500 may stop.
[0096] Although the execution of the above-mentioned second method 500 is described above with reference to the network coordinator 201 , other devices such as an external server managed by a service provider of the network 200 may be used for the execution of the second method 500 .
[0097] Figure 6 6 is a flow chart depicting a third method 600 of reconfiguring the first network 200 according to an embodiment of the present disclosure. The third method 600 follows the same steps as method 500 until the bandwidth difference is calculated in box 635. In box 640, the network coordinator 201 can be configured to determine whether the bandwidth difference is greater than a second predefined threshold. The network administrator of the first network 200 can determine the second predefined threshold and send it to the network coordinator 201. The network administrator may want to reconfigure the first network only when the bandwidth difference is large. For example, the bandwidth difference percentage can be provided to the network coordinator 201 as the second predefined threshold. In one embodiment, the second predefined threshold can be 40%. In such an example, the network administrator may want to reconfigure the first network 200 only when the bandwidth difference between the first network 200 and the second network 300 is 40%.
[0098] In block 645, when the bandwidth difference is above a second predefined threshold, the first network 200 is reconfigured. In one embodiment, the second predefined threshold is set by an administrator of the first network 200 based on a desired percentage of bandwidth savings.
[0099] In the foregoing description, many details are set forth to provide an understanding of the subject matter disclosed herein. However, implementations may be practiced without some or all of these details. Other implementations may include modifications, combinations, and variations of the above details. The appended claims are intended to cover such modifications and variations.
Claims
1. A method for reconfiguring a network, comprising: determining, by a processing resource, a client type for each of a plurality of client devices connected to a first network, wherein the first network includes the plurality of client devices connected to the first network via a first network controller, the first network controller being connected to the processing resource; determining, by the processing resource, a first average packet count for each client type connected to the first network, wherein the first network is configured to send a first multicast domain name service (mDNS) query to all client devices in the plurality of client devices connected to the first network, wherein each client device in the plurality of client devices responds to the first mDNS query using a multicast query response message; determining, by the processing resource, a second client type for each second client device of a plurality of second client devices connected to a second network, wherein the second network includes the plurality of second client devices connected to the second network via a second network controller, the second network controller being coupled to the processing resource; receiving, by the processing resource, a second average packet count per client type for the plurality of second client devices connected to the second network, wherein the second network is configured to unicast a second mDNS query to the second network controller, the second network controller being configured to respond to the second mDNS query with a corresponding unicast query response message; calculating, by the processing resource, for each client type in the first network, a difference between the first average packet count for the client type in the first network and the second average packet count for the corresponding client type in the second network; as well as reconfiguring the first network based on determining that a difference between the first average packet count and the second average packet count for at least one client type of the first network and at least one corresponding client type of the second network is above a first predefined threshold, and based on instructions sent by a network administrator of the first network, wherein reconfiguring the first network so that the first network unicasts the first mDNS query to the first network controller and configuring the first network controller to respond to the first mDNS query using a corresponding unicast query response message; wherein upon receiving the instruction to reconfigure the first network, reconfiguring the first network controller in the first network to support unicast query and response messages; Wherein the processing resource monitors the first network, the second network and maintains a list of all connected client devices in the first network and the second network.
2. The method of claim 1, wherein reconfiguring the first network further comprises: transmitting the difference to a network device associated with the network administrator of the first network; receiving, from the network device associated with the network administrator, the instruction to reconfigure the first network to unicast the first mDNS query to the first network controller; as well as In response to receiving the instruction, the first network is reconfigured to unicast the first mDNS query to the first network controller. 3 . The method of claim 2 , wherein the method further comprises displaying the difference on a user interface of the network device associated with the administrator of the first network.
4. The method of claim 1, wherein reconfiguring the first network further comprises: calculating, by the processing resource, a first bandwidth consumption of the first network based on the average packet count for each client type connected to the first network, wherein the bandwidth consumption for each client type connected to the first network is calculated based on the first average packet count for each client type in the first network, a count for each client type in the first network, and a number of network devices that share a VLAN with the plurality of client devices; calculating, by the processing resource, a second bandwidth consumption of the second network based on the second average packet count for each client type connected to the second network and a count for each client type in the second network; generating, by the processing resource, a bandwidth difference between the first network and the second network by comparing the first bandwidth consumption and the second bandwidth consumption; and Based on determining that the bandwidth difference is above a second predefined threshold, the first network is reconfigured.
5. The method of claim 4, wherein the method further comprises displaying the bandwidth difference on a user interface of a network device associated with the network administrator of the first network. 6 . The method of claim 4 , further comprising displaying the bandwidth difference on a user interface of an external server configured to manage the first network.
7. The method according to claim 4, wherein the method further comprises the following steps: calculating a bandwidth savings of the first network based on the bandwidth difference between the first network and the second network; transmitting the bandwidth savings as a recommendation to the network device associated with the network administrator of the first network; as well as The recommendation is displayed on a user interface of the network device.
8. The method of claim 1, wherein the first network and the second network are client broadcast networks.
9. A network coordinator, comprising: at least one hardware processor; as well as A non-transitory computer-readable storage medium storing instructions that, when executed by a hardware processor, cause the hardware processor to: determining a client type for each of a plurality of client devices in a first network, wherein the first network includes the plurality of client devices connected to the first network via a first network controller, the first network controller being connected to the processing resource; determining a first average packet count for each client type connected to the first network, wherein the first network is configured to send a first multicast domain name service (mDNS) query to all client devices in the plurality of client devices connected to the first network, wherein each client device in the plurality of client devices responds to the first mDNS query using a multicast query response message; determining a second client type for each second client device of a plurality of second client devices connected to a second network, wherein the second network includes the plurality of second client devices connected to the second network via a second network controller coupled to the processing resource receiving a second average packet count per client type for the plurality of second client devices connected to the second network, wherein the second network is configured to unicast a second mDNS query to the second network controller, the second network controller being configured to respond to the second mDNS query with a corresponding unicast query response message; calculating, for each client type in the first network, a difference between the first average packet count for the client type in the first network and the second average packet count for the corresponding client type in the second network; as well as reconfiguring the first network based on determining that a difference between the first average packet count and the second average packet count for at least one client type of the first network and at least one corresponding client type of the second network is above a first predefined threshold, and based on instructions sent by a network administrator of the first network, wherein reconfiguring the first network so that the first network unicasts the first mDNS query to the first network controller and configuring the first network controller, the first network controller being configured to respond to the first mDNS query using a corresponding unicast query response message; wherein upon receiving the instruction to reconfigure the first network, reconfiguring the first network controller in the first network to support unicast query and response messages; Wherein the hardware processor monitors the first network, the second network and maintains a list of all connected client devices in the first network and the second network.
10. The network coordinator of claim 9, wherein the instructions, when executed by the hardware processor, cause the hardware processor to: transmitting the difference to a network device associated with the network administrator of the first network; receiving, from the network device, the instruction to reconfigure the first network to unicast the first mDNS query to the first network controller; and In response to receiving the instruction, the first network is reconfigured to unicast the first mDNS query to the first network controller.
11. The network coordinator of claim 9, wherein the instructions, when executed by the hardware processor, cause the hardware processor to: calculating a first bandwidth consumption of the first network based on the first average packet count for each client type connected to the first network, wherein the bandwidth consumption for each client type connected to the first network is calculated based on the first average packet count for each client type in the first network, a count for each client type in the first network, and a number of network devices that share a VLAN with the plurality of client devices; calculating a second bandwidth consumption of the second network based on the second average packet count for each client type connected to the second network and a count for each client type in the second network; generating a bandwidth difference between the first network and the second network by comparing the first bandwidth consumption and the second bandwidth consumption; and Based on determining that the bandwidth difference is above a second predefined threshold, the first network is reconfigured to unicast the first mDNS query to the first network controller.
12. The network coordinator of claim 11, wherein the instructions, when executed by the hardware processor, cause the hardware processor to display the bandwidth difference on a user interface of a network device of an administrator associated with the first network.
13. The network coordinator of claim 9, wherein the first network and the second network are client broadcast networks.
14. The network coordinator of claim 11, wherein the instructions, when executed by the hardware processor, cause the hardware processor to: calculating a bandwidth savings of the first network based on the bandwidth difference between the first network and the second network; transmitting the bandwidth savings as a recommendation to a network device associated with the network administrator of the first network; and The recommendation is displayed on a user interface of the network device.
15. The network coordinator of claim 14, wherein the second predefined threshold is set based on a percentage of the bandwidth savings of the first network.
16. A method for reconfiguring a network, comprising: determining, by a processing resource, a client type for each of a plurality of client devices in a first network and a count of network devices that share the first network with the plurality of client devices, wherein the first network includes the plurality of client devices connected to the first network via a first network controller, the first network controller being connected to the processing resource; determining, by the processing resource, a first average packet count for each client type connected to the first network, wherein the first network is configured to send a first multicast domain name service (mDNS) query to all client devices in the plurality of client devices connected to the first network, wherein each client device in the plurality of client devices responds to the first mDNS query using a multicast query response message; determining, by the processing resource, a second client type for each second client device of a plurality of second client devices connected to a second network, wherein the second network includes the plurality of second client devices connected to the second network via a second network controller, the second network controller being coupled to the processing resource; receiving, by the processing resource, a second average packet count per client type for the plurality of second client devices connected to the second network, wherein the second network is configured to unicast a second mDNS query to the second network controller, the second network controller being configured to respond to the second mDNS query with a corresponding unicast query response message; calculating, by the processing resource, for each client type connected to the first network, a first bandwidth consumption of the client type in the first network, wherein the first bandwidth consumption of the client type is calculated based on the first average packet count of the client type, a count of the plurality of client devices of the client type, and a number of network devices that share a VLAN with the plurality of client devices of the client type; calculating, by the processing resource, a second bandwidth consumption of the second network based on a second average packet count for each client type connected to the second network and a count for each client type in the second network; generating, by the processing resource, a bandwidth difference between the first network and the second network by comparing the first bandwidth consumption with the second bandwidth consumption; and reconfiguring, by the processing resource, the first network based on the bandwidth difference and instructions sent by a network administrator of the first network, wherein reconfiguring the first network so that the first network unicasts the first mDNS query to the first network controller and configuring the first network controller, the first network controller being configured to respond to the first mDNS query using a corresponding unicast query response message; wherein upon receiving the instruction to reconfigure the first network, reconfiguring the first network controller in the first network to support unicast query and response messages; Wherein the processing resource monitors the first network, the second network and maintains a list of all connected client devices in the first network and the second network.
17. The method of claim 16, wherein reconfiguring the first network based on the bandwidth difference comprises: transmitting the bandwidth difference to an external server managed by the network administrator of the first network; displaying the bandwidth difference on a user interface of the external server; receiving, at the processing resource, from the network administrator, the instruction to reconfigure the first network to unicast the first mDNS query to the first network controller; as well as In response to receiving the instruction, the first network is reconfigured to unicast the first mDNS query to the first network controller.
18. The method of claim 16, wherein the first network and the second network are client broadcast networks.
19. The method of claim 17, wherein based on a percentage difference between the first bandwidth consumption and the second bandwidth consumption, the bandwidth difference is highlighted on the user interface device of the external server.
20. The method of claim 16, wherein reconfiguring the first network based on the bandwidth difference comprises: calculating a bandwidth savings of the first network based on the bandwidth difference between the first network and the second network; transmitting the bandwidth savings as a recommendation to a network device associated with the network administrator of the first network; as well as The recommendation is displayed on a user interface of the network device.
Citation Information
Patent Citations
Hybrid unicast / multicast DNS-based service discovery
CN103973830A
Efficient communication for devices of a home network
CN105684356A