USPatent applicationPatented

Link attributes display

Granted 29 Nov 2016 · 2 office actions

Application· this page
14/073,033
filed 6 Nov 2013
Publication
Not published
not published
Patent
US 9,509,579
granted 29 Nov 2016

Life of the application

15 dated events
⤢ drag to zoom201220142016201820202022202420262028203020322034ProsecutionOwnershipTerm & fees
ProsecutionOwnershipTerm & feeshover for detail · click to open

Abstract

A method for providing Layer 2 link attributes to a user includes transmitting a query using a Layer 3 network protocol to at least a first network element to determine a link attribute for a Layer 2 link between the first network element and a second network element in a network, receiving a response indicative of the link attribute for the Layer 2 link, determining based on the received response a graphical line attribute corresponding to the link attribute according to a predetermined mapping of link attributes to graphical line attributes, and updating a line element at a graphical user interface according to the graphical line attribute, the line element connecting at the graphical user interface a first graphical element corresponding to the first network element and a second graphical element corresponding to the second network element.

Description

8 parts
›INCORPORATION BY REFERENCE

This present disclosure claims the benefit of U.S. Provisional Application No. 61/725,170, “LINK ATTRIBUTES DISPLAY” filed on Nov. 12, 2012, which is incorporated herein by reference in its entirety.

›BACKGROUND

The background description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent the work is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure.

A local area network (LAN) is a computer network that interconnects computers in a limited area such as a home, school, computer laboratory, or office building. Further, in a LAN, computers can be grouped into domains, such as virtual LANs (VLANs) and the like. In an example, computers in the same VLAN communicate using Layer 2 or Layer 3 communication, while computers typically communicate with computers in different VLANs only using higher layers, such as Layer 3 communication, and the like.

›SUMMARY

Aspects of the disclosure provide a method for providing attributes of a Layer 2 link to a user. The method includes transmitting a query using a Layer 3 network protocol, by a processor, to at least a first network element to determine a link attribute for a Layer 2 link between the first network element and a second network element in a network, receiving, by the processor, a response indicative of the link attribute for the Layer 2 link, determining based on the received response a graphical line attribute corresponding to the link attribute according to a predetermined mapping of link attributes to graphical line attributes, and updating a line element at a graphical user interface according to the graphical line attribute, the line element connecting at the graphical user interface a first graphical element corresponding to the first network element and a second graphical element corresponding to the second network element.

To receive the response indicative of the link attribute for the Layer 2 link, in an example, the method includes receiving the response indicative of at least one of an up/down state of the Layer 2 link, a speed of the Layer 2 link and a throughput of the Layer 2 link. In another example, the method includes receiving an indication of an operational status of one or more of the first network element and the second network element.

According to an aspect of the disclosure, the method includes determining the first network element to transmit the query based on a network topology stored in a database associated with the processor. In an embodiment, the method includes determining a link attribute based a present response and a stored response.

In an example, the method includes selecting a switch element from the first network element and the second network element, and querying the switch element for the link attribute of the Layer 2 link connecting the first network element and the second network element. To query the switch element for the link attribute of the Layer 2 link, the method includes querying a value of a counter. The counter is configured to count a number of data units transmitted over the Layer 2 link. The method then includes determining the link attribute based on a change of the value over time.

Aspects of the disclosure provide an apparatus that includes a controller. The controller is configured to transmit a query using a Layer 3 network protocol to at least a first network element to determine a link attribute for a Layer 2 link between the first network element and a second network element in a network, receive a response indicative of the link attribute for the Layer 2 link, determine based on the received response a graphical line attribute corresponding to the link attribute according to a predetermined mapping of graphical line attributes to link attributes, and update a line element at a graphical user interface according to the graphical line attribute, the line element connecting at the graphical user interface a first graphical element corresponding to the first network element and a second graphical element corresponding to the second network element.

Aspects of the disclosure provide a non-transitory computer readable medium storing program instructions for causing a processor to execute operations for providing Layer 2 link attributes to a user. The operations include transmitting a query using a Layer 3 network protocol, by a processor, to at least a first network element to determine a link attribute for a Layer 2 link between the first network element and a second network element in a network, receiving, by the processor, a response indicative of the link attribute for the Layer 2 link, determining based on the received response a graphical line attribute corresponding to the link attribute according to a predetermined mapping of graphical line attributes to link attributes, and updating a line element at a graphical user interface according to the graphical line attribute, the line element connecting at the graphical user interface a first graphical element corresponding to the first network element and a second graphical element corresponding to the second network element.

›BRIEF DESCRIPTION OF THE DRAWINGS

Various embodiments of this disclosure that are proposed as examples will be described in detail with reference to the following figures, wherein like numerals reference like elements, and wherein:

FIG. 1 shows a block diagram of a network example 100 according to an embodiment of the disclosure;

FIG. 2 shows a screenshot at a graphical user interface (GUI) 261 according to an embodiment of the disclosure; and

FIG. 3 shows a flow chart outlining a process example 300 according to an embodiment of the disclosure.

›DETAILED DESCRIPTION OF EMBODIMENTS · 1 of 4

FIG. 1 shows a block diagram of a network example 100 according to an embodiment of the disclosure. In an example, the network 100 includes a plurality of devices coupled together to form a plurality of nodes in the network 100 . For example, the network 100 includes host devices, such as host devices H 1 -H 17 and the like, that form host nodes. Further, the network 100 includes switch devices, such as switch devices S 1 -S 4 and the like, that form the switch nodes. It is noted that the network 100 includes other switch devices and host devices that are not shown. In an example, the non-shown portion is coupled to the switch device S 3 in FIG. 1 .

Among the devices, at least one device, such as the host device H 5 , is configured to enable queries of Layer 2 link attributes in the network 100 using higher levels of communication protocol, such as Layer 3 communication, and inform the Layer 2 link attributes to a user via a user interface.

The network 100 can be any suitable network. In an example, the network 100 is a local area network (LAN) 100 . The LAN 100 is a Layer 2 network that uses a data link protocol, such as Ethernet protocol, and the like, for communication between hosts in the LAN. In the FIG. 1 example, the LAN 100 is coupled to Internet 101 via a router 102 for example. In an example, communication to the Internet 101 crosses the border of the LAN 100 and continues using a higher level protocol, such as Layer 3 protocol, and the like.

The host devices H 1 -H 17 can be any suitable devices, such as voice over IP (VoIP) phones, computers, laptops, TVs, servers, and the like that are configured to be a source of network traffic and/or a destination of network traffic. Generally, a host device includes one or more network interface controllers (NICs) connected to the switch devices via wired or wireless connection media. It is noted that when the host device includes multiple NICs connected to the switch devices, the host device is considered as a set of devices and each connection has its own MAC address. The host devices communicate with each other via the switch devices.

The switch devices S 1 -S 4 can be any suitable switch devices. Generally, a switch device includes a plurality of ports connected to host devices and/or other switch devices. The switch device is configured to receive a network traffic unit (e.g., a data link frame) from a port (e.g., ingress port) and forward the received network traffic unit to one or more ports (e.g., egress ports) based on network configuration information. In an embodiment, a switch device includes a plurality of tables storing network configuration information. The network configuration information includes, for example, port connectivity information of the switch device, port connectivity information of other switch devices in the LAN 100 , virtual LAN (VLAN) configuration, and the like. In an example, the network configuration information is changed via a software program application by a network administrator.

Generally, a large amount of multicast and/or broadcast traffic is transmitted in a LAN. When the LAN has a large number of devices, such as hundreds of devices, some traffic ends up being sent to unnecessary destinations. According to an aspect of the disclosure, the LAN 100 is configured to include multiple sub-networks that use Layer 2 protocols for communication within a sub-network and use higher Layer protocols, such as a Layer 3 network protocol, and the like, for communication across borders of the sub-networks.

In an embodiment, computers and other devices operated by people in a workgroup tend to multicast or broadcast more messages to devices in the same workgroup than devices in the different workgroups. The computers are virtually grouped according to a workgroup to form a VLAN that uses multicast or broadcast for communication within the VLAN. Network traffic can be reduced by not broadcasting network traffic to devices in other workgroups (e.g., other VLANs). In an example, multiple workgroups or VLANs are configured in the LAN 100 . Within a VLAN, data link frames are broadcasted using a Layer 2 protocol, in an embodiment. The VLANs are mutually isolated so that data link frames pass between the different VLANs using higher level protocols, such as network protocol and the like.

According to an aspect of the disclosure, a network administrator needs to be aware of present link status and link status changes in a network in real time, in order to quickly detect abnormality, and perform trouble shooting, for example. In an example, generally, a Layer 2 link is a physical link that uses a conductive media connecting two devices. In a Layer 2 network, according to Layer 2 protocol, Layer 2 links regularly transmit multicast or broadcast data units. Thus, in an example, when a network administrator is aware that a Layer 2 link has no traffic for a time duration, or the Layer 2 link changes from having a regular traffic to having no traffic, the network administrator can take further actions to diagnose issues with the Layer 2 link.

According to an embodiment of the disclosure, various parameters can be used to indicate link status. In an example, a link has an up/down state. Further, the link has a speed value that indicates a maximum transmission capability, such as 10 Mbps, 100 Mbps, 1 Gbps, 10 Gbps, and the like. In another example, the link has a throughput value that indicates a transmission rate, such as transmitted bits per second, transmitted bytes per second, frames transmitted per second, and the like.

According to an aspect of the disclosure, a management application is implemented in the LAN 100 . The management application is configured to query selected devices, such as switch devices in the network, to determine attributes of links in the network, and provide the link attributes to a user, such as a network administrator, via a user interface. In the FIG. 1 example, the management application is implemented in a computer H 5 , labeled with reference numeral 110 . The computer H 5 is used for network administration and is coupled to port 5 (P 5 ) of the switch device S 1 in the FIG. 1 example.

›DETAILED DESCRIPTION OF EMBODIMENTS · 2 of 4

In the FIG. 1 example, the computer H 5 includes a processor 120 , a memory module 130 and a user interface module 160 coupled together by a bus 119 . The processor 120 executes system and application codes to perform system functions and application functions. The memory module 130 stores the system and application codes, such as codes 140 for the management application. In addition, the memory module 130 stores data processed or to be processed by the processor 120 .

In an example, the memory module 130 stores network configuration information, such as a network topology for the LAN 100 . The network topology includes, for example, coupling information of hosts to ports of the switches, coupling pairs of ports of different switches, relationship of workgroups to VLANs, VLAN membership, and the like. In an example, the memory module 130 stores a database (not shown) holding the network topology information, such as disclosed in Assignee's co-pending application Ser. No. 14/056,237, filed Oct. 17, 2013, which is incorporated herein by reference in its entirety. The memory module 130 can include any suitable memory, such as a hard disk drive, an optical storage medium, a solid-state drive, and the like.

In an embodiment, the processor 120 executes the codes 140 for the management application to access the network topology, and to provide the network topology to a user. It is noted that the network topology can be stored in another device in the LAN 100 , such as in the switch devices S 1 , S 2 , S 3 , S 4 and the like, and can be accessed by the processor 120 .

The user interface module 160 enables communication between the computer 110 and a user. The user interface module 160 can include any suitable component, such as a touch screen, a display, a keyboard, a mouse, a printer, and the like. In the FIG. 1 example, the user interface module 160 includes a graphical user interface 161 to interact with a user, such as a network administrator in a graphical manner. For example, the GUI presents to the user a graphical network topology on a display screen. Specifically, the GUI uses suitable graphical elements, such as picture icons, to represent devices, such as the host devises, the switch devices and the like. In an example, the GUI includes laptop icons, desktop icons, phone icons, switch icons and the like to respectively represent the devices in the network 100 based on the types of devices.

Further, the GUI uses graphical line elements to represent links connecting the devices in the network 100 . In addition, the GUI applies different line attributes to the graphical line elements to indicate different link attributes.

According to an aspect of the disclosure, the GUI can use any suitable graphical line attributes, such as color, thickness, animation parameters, and the like to indicate the different link attributes. In an example, the GUI uses a red line to indicate a down-state of a link, a green line to indicate an up-state of a link. In another example, the GUI uses a line thickness to indicate a speed of a link. For example, a thicker line indicates a higher transmission capability. In another example, the GUI uses animated elements, such as animated lines and the like, to illustrate network traffic in real-time. For example, the moving speed of an animated line is indicative of a throughput on a Layer 2 link represented by the animated line element.

Further, according to an aspect of the disclosure, each Layer 2 link in a network is connected with least one switch device. Generally, a switch device is configured to monitor network traffic coming into the switch device and/or going out of the switch device. In an example, a switch device includes counters associated with ports. A counter associated with an egress port counts a number of data units going out of the egress port, and a counter associated with an ingress port counts a number of data units coming into the ingress port. The counted value by a counter associated with a port is indicative of the network traffic on a Layer 2 link connected with the port.

Thus, in an embodiment, the management application can query the switch devices in the network 100 to request the counted values in the counters in order to determine the link attributes of the Layer 2 links in the network 100 . In an example, the computer 110 regularly sends queries using a higher level protocol, such as Layer 3 protocol, and the like, to all the switch devices in the network. In response to the queries, the switch devices report the counted values of counters associated with ports to the computer 110 . Based on the counted values, the computer 110 determines the link attributes for the Layer 2 links in the network 100 .

In another example, the computer 110 identifies the Layer 2 Links in the network based on the network topology. Then, for each Layer 2 link, the computer 110 determines a switch device and one of its ports connected with the Layer 2 link. Further, the computer 110 sends a query using Layer 3 protocol to the determined switch device to request a counted value of a counter associated with the determined port. In response to the query, the switch device reports the counted value of the counter.

Further, the computer 110 includes a mapping of link attributes to graphical line attributes. In an example, the mapping is predetermined and stored in the computer 110 , such as in the memory module 130 . In another example, the computer 110 is configured to enable the user to select a graphical line attribute for each link attribute.

Based on the mapping, the computer 110 determines the graphical line attributes corresponding to the link attributes, and updates, according to the graphical line attributes, the line elements corresponding to the Layer 2 links at the GUI 161 .

In addition, in an embodiment, the computer 110 stores a history of the Layer 2 link attributes. When the computer 110 receives a present Layer 2 link attribute for a Layer 2 link, the computer 110 determines a link attribute change for the Layer 2 link based on the present Layer 2 link attribute and the history. Further, the computer 110 determines a suitable graphical line attribute for the line element at the GUI 161 to indicate the link attribute change.

›DETAILED DESCRIPTION OF EMBODIMENTS · 3 of 4

FIG. 2 shows a screenshot example of a graphical user interface (GUI) 261 for the network 100 according to an embodiment of the disclosure. In the FIG. 2 example, the GUI 261 includes graphical selection elements VLAN- 1 and VLAN- 2 for view selections. In an example, the network 100 is configured to have a first VLAN (VLAN- 1 ) and a second VLAN (VLAN- 2 ). When the graphical selection element VLAN- 1 is selected, the GUI 261 displays pictures icons for device members of the first VLAN and graphical line elements for links of the first VLAN. When the graphical selection element VLAN- 2 is selected, the GUI 261 displays picture icons for device members of the second VLAN and graphical line elements for links of the second VLAN.

In an example, depicted in FIG. 1 , the host devices H 1 -H 5 , and H 15 -H 17 are members of the first VLAN, and the host devices H 6 -H 14 are members of the second VLAN. Thus, in FIG. 2 , because the graphical selection element VLAN- 1 is selected, the GUI 261 displays the topology for the second VLAN, and link attributes for Layer 2 links in the second.

In the FIG. 2 example, the GUI 261 includes picture icons S 1 -S 10 representing switch devices, and includes picture icons H 1 -H 5 and H 15 -H 19 representing host devices. Further, the GUI 261 uses graphical line elements to represent Layer 2 links. The graphical line elements have respective graphical line attributes that are indicative of respective link attributes for the corresponding Layer 2 links. In the FIG. 2 example, solid lines are used to represent links between switch devices, and dash lines are used to represent links between host devices and switch devices. Further, thicker lines represent higher speed for the Layer 2 links. In an example, the line element between the picture icons S 1 and S 2 is indicative of a 10 Mbps link capacity, the line element between the picture icons S 2 and S 3 is indicative of a 100 Mbps link capacity, the line element between the picture icons S 8 and S 10 is indicative of a 1 Gbps link capacity.

It is noted that the GUI 261 can be suitably modified to show other suitable views, such as throughput view, and the like. Further, the GUI 261 can include text information for the host devices and the switch devices. For example, the GUI 261 can display corresponding MAC address with a picture icon for a host device, and display a corresponding IP address with a picture icon for a switch device.

It is also noted that the GUI 261 can use animation techniques to illustrate the dynamics in the network. In an example, the dash lines between the host devices and the switch devices are configured with animation based on the volume of network traffic generated by the host devices or the volume of network traffic with destination at the host devices.

FIG. 3 shows a flow chart outlining a process example 300 according to an embodiment of the disclosure. In an example, in the computer 110 , the processor 120 executes the codes 140 for the management application to perform the process 300 . In an embodiment, the management application causes the computer 110 to present Layer 2 links in conjunction with a network topology to the network administrator via a GUI. At the GUI, the host devices and the switch devices are respectively represented by suitable picture icons, and the Layer 2 links are respectively represented by graphical line elements. The graphical line attributes for the line elements at the GUI are indicative of the Layer 2 link attributes. The process starts at S 301 , and proceeds to S 310 .

At S 310 , Layer 2 link attributes are queried using higher level protocols, such as Layer 3 protocols or other suitable higher level protocols, for example. In the FIG. 1 example, the memory 130 suitably stores a network topology of the network 100 . Based on the network topology, the computer 110 identifies Layer 2 links, and sends queries to request link attributes, for example, regularly. In an example, the computer 110 identifies a Layer 2 link between the host device H 15 and the switch device S 4 . Then, the computer 110 sends a query to the switch device S 4 using a Layer 3 protocol. In an example, the query requests a value in a counter associated with the port P 2 in the switch device S 4 . The counter counts, for example, transmitted bytes by the port P 2 .

At S 320 , responses indicative of the Layer 2 link attributes are received. In the FIG. 1 example, in response to the queries, the computer 110 receives responses. In an example, the computer 110 receives values in various counters associated with ports in the switch devices. In another example, the computer 110 receives operational status of the various switch devices and operational status of the various ports in the switch devices. The responses are indicative of the Layer 2 link attributes. For example, an operational status of a port is indicative of an up/down state of a link connected to the port. Further, the operational status can include a speed of the port. In addition, in an example, the computer 110 stores a history of the responses, and based on the history and currently received response, the computer 110 detects link attributes and link attribute changes. In an example, the computer 110 compares a stored value of a counter associated with a port and a currently received value of the counter, and based on a time duration between the two queries, the computer 110 calculates a throughput of the port. In another example, the computer 110 compares a previous throughput and a current throughput, and detects that a link attribute has changed from a regular throughput to no throughput, and then link abnormality is detected.

At S 330 , graphical line attributes corresponding to the Layer 2 link attributes are determined. In an embodiment, the computer 110 stores a predetermined mapping of Layer 2 link attributes to graphical line attributes. For example, an up-state maps to green line, a down state maps to a red line, a change from the up-state to the down state maps to a yellow line. In another example, different speeds map to different line thickness. In another example, different throughputs map to different animation parameters. In another embodiment, the computer 110 is configured to enable the user to define graphical line attribute for each Layer 2 link attribute, for example.

›DETAILED DESCRIPTION OF EMBODIMENTS · 4 of 4

At S 340 , graphical line elements at the GUI are updated according to the determined graphical line attributes. Then, the process proceeds to S 399 and terminates.

While aspects of the present disclosure have been described in conjunction with the specific embodiments thereof that are proposed as examples, alternatives, modifications, and variations to the examples may be made. Accordingly, embodiments as set forth herein are intended to be illustrative and not limiting. There are changes that may be made without departing from the scope of the claims set forth below.

Claims as granted

20 claims

Log in to read the claims of this application.

Log in to unlock

Classifications

2 codes
IPC · International Patent Classification
Section G — Physics
  • G06F3/048
Section H — Electricity
  • H04L41/12

Claim changes

Soon
Coming soonHow the claims changed between publication and grant

See which claims were amended, added or cancelled during examination, with every added and removed word marked.

AmendedAddedCancelledUnchanged

The published claims of this application are not paired with the granted ones in what we hold.

File wrapper

⤢ drag to zoomJan 2014Jul 2014Jan 2015Jul 2015Jan 2016Jul 2016Jan 2017USPTOApplicantNon-final rejectionResponse after non-finalNon-final rejectionNotice of allowance
USPTOApplicanthover for detail · click to open
Pendency
3.1 y
1,119 days filing → grant
Office actions
2
non-final + final
Responses
2
no RCE
Examiner
William Trapanese
art unit 2171 · TC 2100
Citations: 6 back · 0 forward

See the full prosecution history — every USPTO and applicant action on this file, in order.

Log in to unlock

Documents

Log in to open the documents of this file: the application as filed, every office action and response, the notice of allowance.

Log in to unlock

Chain of title

⤢ drag to zoom2016201820202022202420262028203020322034Owner 4Owner 6
Titlehover for detail · click to open

See the full assignment history — every owner this patent has passed through, with recordation dates and reel/frame numbers.

Log in to unlock