US20200136950A1 - Server access times - Google Patents
Server access times Download PDFInfo
- Publication number
- US20200136950A1 US20200136950A1 US16/176,033 US201816176033A US2020136950A1 US 20200136950 A1 US20200136950 A1 US 20200136950A1 US 201816176033 A US201816176033 A US 201816176033A US 2020136950 A1 US2020136950 A1 US 2020136950A1
- Authority
- US
- United States
- Prior art keywords
- server
- computing device
- address
- user
- user computing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012545 processing Methods 0.000 claims abstract description 25
- 238000013507 mapping Methods 0.000 claims description 26
- 238000000034 method Methods 0.000 claims description 23
- 230000004044 response Effects 0.000 claims description 8
- 230000009471 action Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000006855 networking Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1025—Dynamic adaptation of the criteria on which the server selection is based
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
Definitions
- Data centers can include computing systems, as well as associated components, power supply infrastructure, and/or data communications connections. Some data centers may include servers for use by users. For example, a data center can include an amount of computing resources that servers are able to allocate to users such that users can utilize the servers' computing technology for various purposes.
- FIG. 1 illustrates an example system consistent with the disclosure.
- FIG. 2 illustrates an example user mapping table consistent with the disclosure.
- FIG. 3 is a block diagram of an example computing device for server access times consistent with the disclosure.
- FIG. 4 is a block diagram of an example system consistent with the disclosure.
- FIG. 5 illustrates an example method consistent with the disclosure.
- Servers in a data center may be allocated to users for indefinite periods of time.
- data center refers to a group of networked computing systems which can be utilized for remote storage, processing, and/or distribution of processing and/or data.
- a user may be allocated a server for research or other purposes. The user may utilize the server to save data, perform data analysis, run software, etc.
- Some data centers may be very large. For example, an administrator of a data center may not have knowledge of all of the server allocations of the servers included in the data center.
- Some allocated servers may be continually used by users. However, in some instances, servers allocated to users may begin to be underutilized. In some cases, a data center administrator may not have knowledge of allocated servers that are being used and allocated servers which are not being used. For example, a user allocated a server may finish tasks utilizing the allocated server and stop using the allocated server. In the case of allocated but unused servers, the data center may experience costs due to the server operating but being unused.
- a data center administrator of a data center may not have knowledge of all server allocations from a data center. Accordingly, the data center administrator may have to manually contact users of allocated servers to determine whether the user is utilizing the server. Manual determination of server use can be time consuming and laborious.
- Server access times can allow for automation of server use determination by determining a time a user computing device last accessed a server.
- server access times can utilize existing data center infrastructure to determine a time a user computing device last accessed a server and monitor an amount of time that has elapsed since the last accessed time. If a sufficient amount of time has elapsed since a user has accessed an allocated server, action may be taken. In some circumstances, a server may be reallocated. Accordingly, server access times according to the disclosure can prevent an administrator from manually determining whether server use is occurring and can reduce idle time of servers in a data center, thereby preserving data center resources and providing potential cost savings to the data center.
- FIG. 1 illustrates an example system 100 consistent with the disclosure.
- the system 100 can include computing device 102 , server 104 , top of rack (TOR) switch 106 , user computing device 108 , predetermined database 109 , server rack 110 , switch 112 , and router 114 .
- TOR top of rack
- TOR switches 106 -M can indicate system 100 can include a plurality of TOR switches
- servers 104 -N/servers 104 -X can indicate system 100 can include a plurality of servers where a plurality of servers 104 -N and a plurality of servers 104 -X can be a same or a different plurality of servers
- server rack 110 -P can indicate system 100 can include a plurality of server racks
- switches 112 -Q can indicate system 100 can include a plurality of switches
- user computing devices 108 -R can indicate system 100 can include a plurality of user computing devices
- routers 114 -S can indicate system 100 can include a plurality of routers.
- the designators can represent the same or different numbers of the particular features.
- the plurality of TOR switches 106 -M, servers 104 -N, server racks 110 -P, switches 112 -Q, user computing devices 108 -R, and routers 114 -S can be referred to generally herein as TOR switch 106 , server 104 , server rack 110 , switch 112 , user computing device 108 , and router 114 , respectively.
- System 100 can include computing device 102 .
- computing device can, for example, refer to a device including a processor, memory, and input/output interfaces for wired and/or wireless communication.
- a computing device may include a laptop computer, a desktop computer, a mobile device, and/or other wireless devices, although examples of the disclosure are not limited to such devices.
- a mobile device may refer to devices that are (or may be) carried and/or worn by a user.
- a mobile device can be a phone (e.g., a smart phone), a tablet, a personal digital assistant (PDA), smart glasses, and/or a wrist-worn device (e.g., a smart watch), among other types of mobile devices.
- PDA personal digital assistant
- smart glasses e.g., a smart watch
- Computing device 102 can be utilized to log a time a user computing device 108 last accessed a server 104 , as is further described herein.
- server refers to a computing program or device that provides functionality for other programs or devices (e.g., clients).
- a server 104 can provide functionality, including providing computing resources such as processing and/or storage functionality, among other types of computing resources, to a user computing device 108 .
- Network relationship can, for example, refer to a local area network (LAN), a wireless local area network (WLAN), a virtual local area network (VLAN), wide area network (WAN), personal area network (PAN), a distributed computing environment (e.g., a cloud computing environment), storage area network (SAN), Metropolitan area network (MAN), a cellular communications network, and/or the Internet, among other types of network relationships.
- LAN local area network
- WLAN wireless local area network
- VLAN virtual local area network
- WAN wide area network
- PAN personal area network
- distributed computing environment e.g., a cloud computing environment
- SAN storage area network
- MAN Metropolitan area network
- cellular communications network e.g., cellular communications network
- Internet e.g., cellular communications network
- computing device 102 can determine a time user computing device 108 last accessed a server 104 .
- user computing device 108 - 1 may be allocated server 104 - 1 .
- User computing device 108 - 1 may utilize server 104 - 1 for various purposes (e.g., computing resources, storage, etc.) It can be beneficial to log a time the user computing device 108 - 1 last accessed server 104 - 1 to determine whether the user computing device 108 - 1 is still utilizing server 104 - 1 , as is further described herein.
- computing device 102 can parse a predetermined server configuration file to locate a server.
- computing device 102 can parse a predetermined server configuration file to locate server 104 - 1 .
- server configuration file refers to a data file including information about servers included in a data center.
- the predetermined server configuration file can include data and/or information about servers 104 -N included in system 100 .
- IP addresses can include internet protocol (IP) addresses, media access control (MAC) addresses, access credentials, among other information.
- IP address refers to a numerical label assigned to a device connected to a computer network that uses the Internet Protocol for communication.
- MAC address refers to a unique device identifier.
- the server configuration file does not include access times, including a last accessed time and/or duration of access by a user computing device 108 . Accordingly, computing device 102 can perform actions as described herein to determine the last accessed time.
- the predetermined server configuration file can be created by an administrator of a data center.
- an administrator of a data center including servers 104 -N can create a predetermined server configuration file.
- a predetermined server configuration file is illustrated below as Table 1.
- Table 1 can include various IP addresses and login credentials of servers 104 , TOR switches 106 , and switches 112 included in system 100 .
- Table 1 can include management IP addresses, usernames, and passwords for TOR switches 106 -M, management IP addresses, usernames, and passwords for switches 112 , and IP addresses, usernames, and passwords for servers 104 -N.
- Table 1 is illustrated as including three server IPs, usernames, and passwords, examples of the disclosure are not so limited.
- Table 1 can include all of the server IPs, usernames, and passwords for servers 104 -N included in system 100 .
- Computing device 102 can parse Table 1 to begin to generate a user mapping table.
- the user mapping table can include various information including IP and MAC addresses of servers 104 , user computing device IP addresses, a last accessed time of the user computing devices of the servers 104 , as well as user identification information of the user computing devices, as is further described in connection with FIG. 2 .
- Computing device 102 can parse the predetermined server configuration file illustrated above in Table 1 to locate a particular server. For example, computing device 102 can parse Table 1 to determine IP address information of server 104 - 1 , MAC address information of server 104 - 1 , and login credentials for server 104 - 1 , as is further described herein.
- server 104 - 1 can be included in a server rack 110 .
- server rack refers to a physical frame/enclosure for mounting multiple electronic equipment modules.
- server rack 110 can be a mounting frame to mount a plurality of servers, as well as other associated components such as power supply infrastructure and/or data communications connections, etc.
- Server 104 - 1 can be allocated to user computing device 108 - 1 .
- user computing device 108 - 1 may have server 104 - 1 allocated to it for running software, saving data, etc.
- Server 104 - 1 can be connected to user computing device 108 - 1 via TOR switch 106 - 1 .
- TOR switch refers to a network switch that can be connected to computing infrastructure located in a server rack.
- the plurality of servers 104 -N located in server rack 110 - 1 can be connected to TOR switch 106 - 1 and can communicate to user computing devices 108 -R through TOR switch 106 - 1 via a network relationship, as is further described herein.
- Computing device 102 can determine a MAC address of server 104 - 1 .
- computing device 102 can log in to server 104 - 1 utilizing the login credentials of server 104 - 1 and TOR switch 106 - 1 .
- computing device 102 can determine the MAC address of server 104 - 1 .
- servers 104 may include more than one MAC address.
- server 104 - 1 may include three MAC addresses.
- Computing device 102 can log in to server 104 - 1 and determine each of the MAC addresses for server 104 - 1 .
- computing device 102 can log in to server 104 - 1 and determine that server 104 - 1 has the following MAC addresses: “02:1b:a8:9c:ab:92”, “0a:e2:b1:d6:9b:f9”, and “de:73:f4:41:31:93”.
- server 104 - 1 is described above as including three MAC addresses, examples of the disclosure are not so limited.
- server 104 - 1 can include less than three MAC addresses or more than three MAC addresses.
- Computing device 102 can poll TOR switch 106 - 1 to capture a packet.
- the term “poll” refers to sampling ports of a network device.
- the term “packet” refers to a formatted unit of data carried by a packet-switched network. For example, computing device 102 can poll TOR switch 106 - 1 to capture a packet being communicated through TOR switch 106 - 1 , where the packet includes various data.
- the various data included in the packet can include a source IP address of the packet as well as timing information.
- the packet can include a destination MAC address of the packet.
- packets are communicated from user computing device 108 - 1 , through switch 112 - 1 , through router 114 - 1 , to TOR switch 106 - 1 , and finally to server 104 - 1 .
- computing device 102 can poll TOR switch 106 - 1 to capture a packet communicated from user computing device 108 - 1 .
- switch refers to a computer networking device that connects devices together on a network by using, for example, packet switching to receive, process and forward data to a destination device.
- router refers to a networking device that forwards data packets between networks.
- Computing device 102 can poll TOR switch 106 - 1 using sampled flow (sFlow).
- sFlow refers to an industry standard packet export at Layer 2 of the Open Systems Interconnection (OSI) model.
- OSI Open Systems Interconnection
- examples of the disclosure are not limited to polling TOR switch 106 - 1 using sFlow.
- computing device 102 can poll TOR switch 106 - 1 using any other mechanism for packet export.
- the captured packet can include various information.
- the packet can include a source IP address, a destination IP address, and a destination MAC address, timing information among other types of information. Since the packet is communicated from user computing device 108 - 1 , the source IP address can correspond to the IP address of user computing device 108 - 1 , and the destination IP address and destination MAC address can correspond to the IP address and MAC address of server 104 - 1 .
- Computing device 102 can determine a source MAC address using the source IP address.
- computing device 102 can poll an address resolution protocol (ARP) table of switch 112 - 1 .
- ARP address resolution protocol
- the term “ARP” refers to a protocol to map an IP address to a physical machine address included in a network.
- computing device 102 can poll the ARP table of switch 112 - 1 to determine the source MAC address of user computing device 108 - 1 by mapping the source IP address (e.g., included in the captured packet) with an IP address included in the ARP table of switch 112 - 1 . Based on the IP addresses matching, computing device 102 can further determine the MAC address corresponding to the matching IP address included in ARP table of switch 112 - 1 .
- computing device 102 can map the source IP address included in the captured packet to a source MAC address (e.g., of user computing device 108 - 1 ) to determine the source MAC address.
- computing device 102 can access the ARP table of switches 112 using the login information included in the predetermined server configuration file (e.g., Table 1).
- Computing device 102 can poll the ARP table of switches 112 due to a source MAC address in a packet being transmitted through switches 112 being changed. For instance, as a packet moves through a router 114 , the router 114 can change the source MAC address of the packet to the router interface MAC address. However, the router does not change the source IP address. Accordingly, computing device 102 can map the source IP address to the MAC address of user computing device 108 using the source IP address of the user computing device 108 .
- computing devices such as a local area network (LAN)
- a MAC address in a packet being transmitted to servers 110 may not change if the servers 110 are in the same LAN.
- computing device 102 can determine a source MAC address using the source IP address by polling an ARP table of a TOR switch 106 .
- computing device 102 can poll an ARP table of TOR switch 106 - 1 to determine the source MAC address of user computing device 108 - 1 by mapping the source IP address (e.g., included in the captured packet) with an IP address included in the ARP table of TOR switch 106 - 1 .
- computing device 102 can further determine the MAC address corresponding to the matching IP address included in ARP table of TOR switch 106 - 1 .
- computing device 102 can map the source IP address included in the captured packet to a source MAC address (e.g., of user computing device 108 - 1 ) to determine the source MAC address.
- Computing device 102 can utilize the source MAC address to determine an identity of user computing device 108 - 1 . Since the destination MAC address corresponds to server 104 - 1 and the source MAC address included in the captured packet corresponds to the user computing device 108 - 1 , computing device 102 can utilize the source MAC address to determine an identity of user computing device 108 - 1 , as is further described herein. For example, the determined MAC address of computing device 102 can be “aa:bb:cc:dd:ee:ff”.
- Computing device 102 can utilize the source MAC address to determine an identity of user computing device 108 - 1 rather than the source IP address. For example, since an IP address can change over time, it may not be as desirable to use to determine an identity of user computing device 108 - 1 . However, a MAC address of user computing device 108 - 1 may not change, and as a result, may be more desirable to use to determine an identity of user computing device 108 - 1 .
- computing device 102 can compare the source MAC address to a predetermined database 109 .
- the predetermined database 109 can include MAC addresses for user computing devices 108 -R in system 100 .
- the predetermined database 109 can be a lightweight directory access protocol (LDAP).
- LDAP lightweight directory access protocol
- the term “LDAP” refers to a standard application protocol to access and maintain distributed directory information services over an IP network.
- An example LDAP entry for user computing device 108 - 1 is shown below:
- the MAC address included in LDAP 109 above for user computing device 108 - 1 can be “aa:bb:cc:dd:ee:ff”.
- computing device 102 can determine an identity of user computing device 108 - 1 . For example, based on the LDAP 109 entry above, computing device 102 can determine the user is “user-1” having the email address “user-1@exampledomain.com”, and can include other various information such as a contact phone number, etc.
- the captured packet can include timing information.
- the timing information of the packet can include date and time information of the packet.
- the date and time of the captured packet can be “Fri June 29, 14:45:40 EST 2018”, indicating the packet was sent from user computing device 108 - 1 to server 104 - 1 on Jun. 29, 2018 at 14:45:40 EST.
- the date and time of the captured packet can indicate when the user computing device 108 - 1 last accessed server 104 - 1 .
- Computing device 102 can log, based on the time included in the captured packet, the time user computing device 108 - 1 last accessed server 104 - 1 . For example, computing device 102 can log the time (e.g., Jun. 29, 2018 at 14:45:40 EST) the user computing device 108 - 1 last accessed server 104 - 1 in the user mapping table.
- time e.g., Jun. 29, 2018 at 14:45:40 EST
- the user mapping table can include the IP and MAC addresses of each of the plurality of servers 104 -N, the IP addresses of users of each of the plurality of servers, a last accessed time of user computing devices 108 -R of each of the plurality of servers 104 -N, and user identification information corresponding to each of the user computing devices 108 -R, as is further described in connection with FIG. 2 .
- system 100 is described above as computing device 102 determining a last accessed time of user computing device 108 - 1 of server 104 - 1 , examples of the disclosure are not so limited.
- Server access times can allow computing device 102 to generally determine a last accessed time of any one of user computing devices 108 -R of any one of servers 104 -N.
- computing device 102 can capture packets and log times user computing devices 108 -R last accessed servers 104 -N at a predetermined interval.
- the predetermined interval can be every hour, every day, every week, among other time intervals. Further, the predetermined time interval can be modified to be any other interval.
- computing device 102 can generate a notification to user computing device 108 .
- computing device 102 in response to an amount of time since user computing device 108 last accessed server 104 exceeding a threshold amount of time, computing device 102 can generate a notification to user computing device 108 .
- computing device 102 in response to 30 days elapsing between the last time a user of user computing device 108 - 1 accessed server 104 - 1 and a present time, computing device 102 can generate and transmit a notification to user computing device 108 - 1 .
- the notification can include a query about whether a user of the user computing device 108 is still utilizing server 104 , is finished using server 104 , etc.
- the threshold amount of time is described above as being 30 days, examples of the disclosure are not so limited.
- the threshold amount of time can be one day, one week, one month, etc.
- the threshold amount of time can be modified to be any amount of time.
- the notification may be transmitted to an email address of a user of user computing device 108 , transmitted via text message to a mobile device of the user of user computing device 108 , transmitted via a phone call to a device of the user of user computing device 108 , among other methods of transmission.
- the contact information utilized for the notification to the user may be included in LDAP 109 .
- computing device 102 can re-allocate server 104 from user computing device 108 .
- computing device 102 can re-allocate server 104 to a different user computing device 108 .
- computing device 102 can re-allocate server 104 - 1 to user computing device 108 - 2 .
- the threshold amount of time is described above as being 30 days, examples of the disclosure are not so limited.
- the threshold amount of time can be one day, one week, one month, etc.
- the threshold amount of time can be modified to be any amount of time.
- Server access times can allow for determination of times a user computing device last accessed a server allocated to the user computing device. Determining a last accessed time can allow for a determination of an amount of time elapsed between a present time and the time the user computing device last accessed the server. If a sufficient amount of time has been passed, it may indicate a user of the user computing device is finished utilizing the server and an action may be taken to prevent the server from being idle. This can prevent an administrator of a data center having many servers from manually determining a last accessed time of servers. Further, an administrator may be able to perform actions on a server without disrupting a user's access to the server.
- server access times can reduce idle times of servers in a data center, which can preserve data center resources and provide cost savings to a data center.
- FIG. 2 illustrates an example user mapping table 216 consistent with the disclosure.
- user mapping table 216 includes server management IP addresses 203 , server management MAC addresses 205 , server MAC addresses 207 , server IP addresses 211 , user IP addresses 213 , last access times 215 , and user identification information 217 .
- a computing device can parse a predetermined server configuration file to obtain various information including management IP addresses, usernames, and passwords for TOR switches and IP addresses, usernames, and passwords for servers.
- the computing device can further determine MAC addresses for the servers and the TOR switches by logging in to the servers using the usernames and passwords determined above.
- Computing device can generate the mapping table having the server management IP addresses of the TOR switches, the server management MAC addresses of the TOR switches, the server MAC addresses, and the server IP addresses.
- the computing device can determine user computing device IP addresses and user computing device MAC addresses by capturing packets being transmitted through TOR switches. As illustrated in FIG. 2 , the determined user computing device IP addresses can be included in the user mapping table 216 . Further, although not illustrated in FIG. 2 for clarity and so as not to obscure examples of the disclosure, the computing device can include the determined user computing device MAC addresses in the user mapping table 216 .
- the computing device can determine a last accessed time of the user computing devices for each of the plurality of servers included in the user mapping table 216 using the captured packets, as previously described in connection with FIG. 1 , as well as user identification information of the user computing devices.
- the last accessed time and user identification information may be included in user mapping table 216 .
- a server having the MAC addresses “02:1b:a8:9c:ab:92”, “0a:e2:b1:d6:9b:f9”, and “de:73:f4:41:31:93” may be allocated to two different users having two different user computing devices.
- the first user may have a user computing device IP address of 15.23.43.32 and user identification information of “user1@domain.com”, and last accessed the server at Friday, Jun. 29, 2018, at 14:45:40 EST.
- the second user may have a user computing device IP address of 18.34.43.55 and user identification information of “user2@domain.com”, and last accessed the server at Thursday, Jul. 13, 2018, at 09:08:34 EST. Similar information can be included in user mapping table 216 for other servers.
- the user having the user computing device IP address of 15.23.43.32 may not have accessed the server in some time. For example, if a present time is Aug. 28, 2018, it can be apparent that the user having the user computing device IP address of 15.23.43.32 has not accessed the server in over one month. Accordingly, action may be taken regarding the server and the user having the user computing device IP address of 15.23.43.32, as previously described in connection with FIG. 1 (e.g., generation of a notification, re-allocating the server to another user, etc.)
- a server included in a server rack may be removed.
- the server may undergo maintenance, be replaced, etc.
- the server may be deleted from the active server list in the predetermined server configuration file and moved to a “Deleted Servers” section of the predetermined server configuration file.
- a server having an IP address of 17.21.32.78 may be moved to the Deleted Servers section of the predetermined server configuration file.
- the computing device can parse the deleted server list for deleted servers. In response to finding deleted servers, the computing device can remove the deleted server from the user mapping table 216 . Removing the deleted server from user mapping table 216 can prevent deleted servers from being monitored according to examples of the disclosure.
- FIG. 3 is a block diagram 318 of an example computing device 302 for server access times consistent with the disclosure.
- the computing device 302 may perform a number of functions related to server access times.
- the computing device 302 may include a processor and a machine-readable storage medium.
- the following descriptions refer to a single processor and a single machine-readable storage medium, the descriptions may also apply to a system with multiple processors and multiple machine-readable storage mediums.
- the computing device 302 may be distributed across multiple machine-readable storage mediums and the computing device 302 may be distributed across multiple processors.
- the instructions executed by the computing device 302 may be stored across multiple machine-readable storage mediums and executed across multiple processors, such as in a distributed or virtual computing environment.
- the computing device 302 may comprise a processing resource 320 , and a memory resource 322 storing machine-readable instructions to cause the processing resource 320 to perform a number of operations relating to server access times. That is, using the processing resource 320 and the memory resource 322 , the computing device 302 may log a time a user computing device last accessed a server, among other operations.
- Processing resource 320 may be a central processing unit (CPU), microprocessor, and/or other hardware device suitable for retrieval and execution of instructions stored in memory resource 322 .
- the computing device 302 may include instructions 324 stored in the memory resource 322 and executable by the processing resource 320 to determine a MAC address of a server.
- the computing device 302 may determine a MAC address of a server by parsing a predetermined server configuration file.
- the computing device 302 can parse the predetermined server configuration file to determine a TOR switch management IP address, username, and password for the TOR switch, as well as an IP address, username, and password for the server.
- the computing device 302 can then login to the server to determine the MAC address of the server utilizing the TOR switch management IP address, username, and password for the TOR switch, as well as the IP address, username, and password for the server.
- the computing device 302 may include instructions 326 stored in the memory resource 322 and executable by the processing resource 320 to poll the TOR switch connected to the server to capture a packet.
- the packet can include a source IP address of the packet, as well as timing information.
- the computing device 302 may include instructions 328 stored in the memory resource 322 and executable by the processing resource 320 to determine a source MAC address using the captured packet. For example, since the captured packet includes a source IP address, computing device 302 can poll a particular switch to access an ARP table. In some examples, the switch is a network switch. In some examples, the switch is a TOR switch. The computing device 302 can utilize the ARP table to compare a source IP address included in the captured packet with IP addresses included in the ARP table. The computing device 302 can match the source IP address included in the captured packet to an IP address and corresponding MAC address included in the ARP table.
- the computing device 302 can determine the MAC address corresponding to the matching IP address in the ARP table is the source MAC address of the user computing device. Since the user computing device communicates the packet when accessing the server, the source IP address can correspond to the user computing device. Accordingly, the computing device 302 can determine the source MAC address of the user computing device.
- the computing device 302 may include instructions 330 stored in the memory resource 322 and executable by the processing resource 320 to determine an identity of the user computing device.
- the computing device 302 can compare the source MAC address to a predetermined database that includes MAC addresses.
- the computing device 302 can compare the source MAC address to an LDAP that includes MAC addresses of all user computing devices on the network. Accordingly, computing device 302 can determine, based on a source MAC address matching a MAC address in the LDAP, the identity of the user computing device sending the captured packet.
- the computing device 302 may include instructions 332 stored in the memory resource 322 and executable by the processing resource 320 to log a time the user computing device last accessed the server.
- the captured packet can include timing information.
- the timing information can include a date and time, which can correspond to the time the user computing device last accessed the server. This time can be logged in a user mapping table.
- the computing device 302 can determine a last accessed time of a server by a user computing device. Accordingly, server access times, according to the disclosure can track an amount of time since a user last accessed a server, which can reduce server idle times.
- FIG. 4 is a block diagram of an example system 434 consistent with the disclosure.
- system 434 includes a processor 436 and a machine-readable storage medium 438 .
- the following descriptions refer to a single processor and a single machine-readable storage medium, the descriptions may also apply to a system with multiple processors and multiple machine-readable storage mediums.
- the instructions may be distributed across multiple machine-readable storage mediums and the instructions may be distributed across multiple processors. Put another way, the instructions may be stored across multiple machine-readable storage mediums and executed across multiple processors, such as in a distributed computing environment.
- Processor 436 may be a central processing unit (CPU), microprocessor, and/or other hardware device suitable for retrieval and execution of instructions stored in machine-readable storage medium 438 .
- processor 436 may receive, determine, and send instructions 440 , 442 , 444 , 446 , and 448 .
- processor 436 may include an electronic circuit comprising a number of electronic components for performing the operations of the instructions in machine-readable storage medium 438 .
- executable instruction representations or boxes described and shown herein it should be understood that part or all of the executable instructions and/or electronic circuits included within one box may be included in a different box shown in the figures or in a different box not shown.
- Machine-readable storage medium 438 may be any electronic, magnetic, optical, or other physical storage device that stores executable instructions.
- machine-readable storage medium 438 may be, for example, Random Access Memory (RAM), an Electrically-Erasable Programmable Read-Only Memory (EEPROM), a storage drive, an optical disc, and the like.
- the executable instructions may be “installed” on the system 434 illustrated in FIG. 4 .
- Machine-readable storage medium 438 may be a portable, external or remote storage medium, for example, that allows the system 434 to download the instructions from the portable/external/remote storage medium. In this situation, the executable instructions may be part of an “installation package”.
- machine-readable storage medium 438 may be encoded with executable instructions for server access times.
- Parse instructions 440 when executed by a processor such as processor 436 , may cause system 434 to parse a predetermined server configuration file to locate a server. For example, system 434 can parse the predetermined server configuration file to determine a TOR switch management IP address, username, and password for the TOR switch, as well as an IP address, username, and password for the server.
- Determine instructions 442 when executed by a processor such as processor 436 , may cause system 434 to determine a MAC address of the server by logging into the server.
- the system 434 can log in to the server utilizing the login credentials of the server and TOR switch connected to the server. For example, the system 434 can log in to the server utilizing the TOR switch management IP address, username, and password for the TOR switch, as well as the IP address, username, and password for the server to determine the MAC address of the server.
- Poll instructions 444 when executed by a processor such as processor 436 , may cause system 434 to poll the TOR switch connected to the server to capture a packet.
- the packet can include a source IP address of the packet, as well as timing information.
- Determine instructions 446 when executed by a processor such as processor 436 , may cause system 434 to determine an identity of a user computing device.
- the system 434 can determine the identity of the user computing device based on the source IP address from the captured packet. For example, since the captured packet includes a source IP address, the system 434 can poll a particular switch to access an ARP table.
- the switch is a network switch. In some examples, the switch is a TOR switch.
- the system 434 can utilize the ARP table to compare the source IP address included in the captured packet with IP addresses included in the ARP table. The system 434 can match the source IP address included in the captured packet to an IP address and corresponding MAC address included in the ARP table. Based on the matching IP addresses, the system 434 can determine the MAC address corresponding to the matching IP address in the ARP table is the source MAC address of the user computing device.
- system 434 can compare the source MAC address to a predetermined database that includes MAC addresses.
- the system 434 can compare the source MAC address to an LDAP that includes MAC addresses of all user computing devices on the network. Accordingly, the system 434 can determine, based on a source MAC address matching a MAC address in the LDAP, the identity of the user computing device sending the captured packet.
- Log instructions 448 when executed by a processor such as processor 436 , may cause system 434 to log a time the user computing device last accessed the server.
- the captured packet can include timing information.
- the timing information can include a date and time, which can correspond to the time the user computing device last accessed the server. This time can be logged in a user mapping table.
- FIG. 5 illustrates an example method 550 consistent with the disclosure.
- Method 550 may be performed, for example, by a computing device (e.g., computing device 102 , 302 , previously described in connection with FIGS. 1 and 3 , respectively).
- a computing device e.g., computing device 102 , 302 , previously described in connection with FIGS. 1 and 3 , respectively.
- the method 550 includes parsing a predetermined server configuration file to locate a server.
- a computing device can parse a predetermined server configuration file to locate a server among a plurality of servers included in a server rack.
- the predetermined server configuration file can include IP addresses and login credentials for each server in the server rack, and an IP address and login credentials for a TOR switch(es) of the server rack.
- the computing device can parse the predetermined server configuration file to determine a TOR switch management IP address, username, and password for the TOR switch, as well as an IP address, username, and password for the server among the plurality of servers.
- the method 550 includes determining a MAC address of the server.
- the computing device can determine the MAC address of the server by logging in to the server utilizing the login credentials of the server and the TOR switch. For example, the computing device can login to the server utilizing the TOR switch management IP address, username, and password for the TOR switch, as well as the IP address, username, and password for the server to determine the MAC address of the server.
- the method 550 includes polling a TOR switch to capture a packet.
- the captured packet can include a source IP address, as well as timing information.
- the method 550 includes determining a source MAC address.
- the computing device can determine the source MAC address using the source IP address included in the captured packet. For example, computing device can poll a particular switch to access an ARP table.
- the switch is a network switch.
- the switch is a TOR switch.
- the computing device can utilize the ARP table to compare the source IP address included in the captured packet with IP addresses included in the ARP table.
- the computing device can match the source IP address included in the captured packet to an IP address and corresponding MAC address included in the ARP table. Based on the matching IP addresses, the computing device can determine the MAC address corresponding to the matching IP address in the ARP table is the source MAC address of the user computing device.
- the method 550 includes determining an identity of a user computing device.
- the computing device can determine the identity of the user computing device by comparing the source MAC address to an LDAP. Accordingly, the computing device can determine, based on the source MAC address matching a MAC address in the LDAP, the identity of the user computing device sending the captured packet.
- the method 550 includes logging a time the user computing device last accessed the server.
- the captured packet can include timing information.
- the timing information can include a date and time, which can correspond to the time the user computing device last accessed the server. This time can be logged in a user mapping table.
- the method 550 can be performed at predetermined intervals. Performing method 550 at predetermined intervals can allow the user mapping table to be periodically updated as user computing devices access various servers.
- the user mapping table can be utilized by an administrator to track an amount of time since a user last accessed a server, which can reduce server idle times.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
- Data centers can include computing systems, as well as associated components, power supply infrastructure, and/or data communications connections. Some data centers may include servers for use by users. For example, a data center can include an amount of computing resources that servers are able to allocate to users such that users can utilize the servers' computing technology for various purposes.
-
FIG. 1 illustrates an example system consistent with the disclosure. -
FIG. 2 illustrates an example user mapping table consistent with the disclosure. -
FIG. 3 is a block diagram of an example computing device for server access times consistent with the disclosure. -
FIG. 4 is a block diagram of an example system consistent with the disclosure. -
FIG. 5 illustrates an example method consistent with the disclosure. - Servers in a data center may be allocated to users for indefinite periods of time. As used herein, the term “data center” refers to a group of networked computing systems which can be utilized for remote storage, processing, and/or distribution of processing and/or data. For example, a user may be allocated a server for research or other purposes. The user may utilize the server to save data, perform data analysis, run software, etc.
- Some data centers may be very large. For example, an administrator of a data center may not have knowledge of all of the server allocations of the servers included in the data center.
- Some allocated servers may be continually used by users. However, in some instances, servers allocated to users may begin to be underutilized. In some cases, a data center administrator may not have knowledge of allocated servers that are being used and allocated servers which are not being used. For example, a user allocated a server may finish tasks utilizing the allocated server and stop using the allocated server. In the case of allocated but unused servers, the data center may experience costs due to the server operating but being unused.
- As described above, a data center administrator of a data center may not have knowledge of all server allocations from a data center. Accordingly, the data center administrator may have to manually contact users of allocated servers to determine whether the user is utilizing the server. Manual determination of server use can be time consuming and laborious.
- Server access times, according to the disclosure, can allow for automation of server use determination by determining a time a user computing device last accessed a server. According to examples of the disclosure, server access times can utilize existing data center infrastructure to determine a time a user computing device last accessed a server and monitor an amount of time that has elapsed since the last accessed time. If a sufficient amount of time has elapsed since a user has accessed an allocated server, action may be taken. In some circumstances, a server may be reallocated. Accordingly, server access times according to the disclosure can prevent an administrator from manually determining whether server use is occurring and can reduce idle time of servers in a data center, thereby preserving data center resources and providing potential cost savings to the data center.
-
FIG. 1 illustrates anexample system 100 consistent with the disclosure. As illustrated inFIG. 1 , thesystem 100 can includecomputing device 102,server 104, top of rack (TOR)switch 106,user computing device 108, predetermineddatabase 109,server rack 110,switch 112, androuter 114. - As used herein, the designators “M”, “N”, “P”, “Q”, “R”, “S”, and/or “X”, particularly with respect to reference numerals in the drawings, indicate that a plurality of the particular feature so designated can be included with examples of the disclosure. For example, TOR switches 106-M can indicate
system 100 can include a plurality of TOR switches, servers 104-N/servers 104-X can indicatesystem 100 can include a plurality of servers where a plurality of servers 104-N and a plurality of servers 104-X can be a same or a different plurality of servers, server rack 110-P can indicatesystem 100 can include a plurality of server racks, switches 112-Q can indicatesystem 100 can include a plurality of switches, user computing devices 108-R can indicatesystem 100 can include a plurality of user computing devices, and/or routers 114-S can indicatesystem 100 can include a plurality of routers. The designators can represent the same or different numbers of the particular features. The plurality of TOR switches 106-M, servers 104-N, server racks 110-P, switches 112-Q, user computing devices 108-R, and routers 114-S can be referred to generally herein asTOR switch 106,server 104,server rack 110,switch 112,user computing device 108, androuter 114, respectively. -
System 100 can includecomputing device 102. As used herein, the term “computing device” can, for example, refer to a device including a processor, memory, and input/output interfaces for wired and/or wireless communication. A computing device may include a laptop computer, a desktop computer, a mobile device, and/or other wireless devices, although examples of the disclosure are not limited to such devices. A mobile device may refer to devices that are (or may be) carried and/or worn by a user. For instance, a mobile device can be a phone (e.g., a smart phone), a tablet, a personal digital assistant (PDA), smart glasses, and/or a wrist-worn device (e.g., a smart watch), among other types of mobile devices. -
Computing device 102 can be utilized to log a time auser computing device 108 last accessed aserver 104, as is further described herein. As used herein, the term “server” refers to a computing program or device that provides functionality for other programs or devices (e.g., clients). For example, aserver 104 can provide functionality, including providing computing resources such as processing and/or storage functionality, among other types of computing resources, to auser computing device 108. -
User computing device 108 andserver 104 can be connected via a network relationship. As used herein, the term “network relationship” can, for example, refer to a local area network (LAN), a wireless local area network (WLAN), a virtual local area network (VLAN), wide area network (WAN), personal area network (PAN), a distributed computing environment (e.g., a cloud computing environment), storage area network (SAN), Metropolitan area network (MAN), a cellular communications network, and/or the Internet, among other types of network relationships. - As described above,
computing device 102 can determine a timeuser computing device 108 last accessed aserver 104. For example, user computing device 108-1 may be allocated server 104-1. User computing device 108-1 may utilize server 104-1 for various purposes (e.g., computing resources, storage, etc.) It can be beneficial to log a time the user computing device 108-1 last accessed server 104-1 to determine whether the user computing device 108-1 is still utilizing server 104-1, as is further described herein. - In order to determine a time the user computing device 108-1 last accessed server 104-1,
computing device 102 can parse a predetermined server configuration file to locate a server. For example,computing device 102 can parse a predetermined server configuration file to locate server 104-1. As used herein, the term “server configuration file” refers to a data file including information about servers included in a data center. For example, the predetermined server configuration file can include data and/or information about servers 104-N included insystem 100. - Information about servers 104-N included in
system 100 can include internet protocol (IP) addresses, media access control (MAC) addresses, access credentials, among other information. As used herein, the term “IP address” refers to a numerical label assigned to a device connected to a computer network that uses the Internet Protocol for communication. As used herein, the term “MAC address” refers to a unique device identifier. - While the information about the servers included in the data center included in the server configuration file may include IP addresses, MAC addresses, access credentials, and/or other information, the server configuration file does not include access times, including a last accessed time and/or duration of access by a
user computing device 108. Accordingly,computing device 102 can perform actions as described herein to determine the last accessed time. - The predetermined server configuration file can be created by an administrator of a data center. For example, an administrator of a data center including servers 104-N can create a predetermined server configuration file. A predetermined server configuration file is illustrated below as Table 1.
-
TABLE 1 Predetermined Server Configuration File User Password Server Management IP 15.212.32.32 User-1 Pass-1 15.212.32.34 User-2 Pass-2 17.21.32.66 User-3 Pass-3 Deleted Servers 17.21.32.78 17.21.32.89 TOR SWITCH Management IP 15.212.32.45 TOR-user-1 Pass-1 15.212.32.56 TOR-user-1 Pass-1 15.212.32.76 TOR-user-1 Pass-1 L2 Switches (Switches 112) Management IP 16.202.32.44 L2-user-1 Pass-1 16.202.32.45 L2-user-1 Pass-1 - As seen above, Table 1 can include various IP addresses and login credentials of
servers 104,TOR switches 106, andswitches 112 included insystem 100. For example, Table 1 can include management IP addresses, usernames, and passwords for TOR switches 106-M, management IP addresses, usernames, and passwords forswitches 112, and IP addresses, usernames, and passwords for servers 104-N. Further, although Table 1 is illustrated as including three server IPs, usernames, and passwords, examples of the disclosure are not so limited. For example, Table 1 can include all of the server IPs, usernames, and passwords for servers 104-N included insystem 100. -
Computing device 102 can parse Table 1 to begin to generate a user mapping table. The user mapping table can include various information including IP and MAC addresses ofservers 104, user computing device IP addresses, a last accessed time of the user computing devices of theservers 104, as well as user identification information of the user computing devices, as is further described in connection withFIG. 2 . -
Computing device 102 can parse the predetermined server configuration file illustrated above in Table 1 to locate a particular server. For example,computing device 102 can parse Table 1 to determine IP address information of server 104-1, MAC address information of server 104-1, and login credentials for server 104-1, as is further described herein. - As illustrated in
FIG. 1 , server 104-1 can be included in aserver rack 110. As used herein, the term “server rack” refers to a physical frame/enclosure for mounting multiple electronic equipment modules. For example,server rack 110 can be a mounting frame to mount a plurality of servers, as well as other associated components such as power supply infrastructure and/or data communications connections, etc. - Server 104-1 can be allocated to user computing device 108-1. For example, user computing device 108-1 may have server 104-1 allocated to it for running software, saving data, etc.
- Server 104-1 can be connected to user computing device 108-1 via TOR switch 106-1. As used herein, the term “TOR switch” refers to a network switch that can be connected to computing infrastructure located in a server rack. For example, the plurality of servers 104-N located in server rack 110-1, as well as other associated components such as power supply infrastructure and/or data communication equipment, can be connected to TOR switch 106-1 and can communicate to user computing devices 108-R through TOR switch 106-1 via a network relationship, as is further described herein.
-
Computing device 102 can determine a MAC address of server 104-1. For example,computing device 102 can log in to server 104-1 utilizing the login credentials of server 104-1 and TOR switch 106-1. For example, utilizing management IP address of TOR switch 106-1 and IP address of server 104-1, usernames of TOR switch 106-1 and server 104-1, and passwords for TOR switch 106-1 and server 104-1,computing device 102 can determine the MAC address of server 104-1. - In some examples,
servers 104 may include more than one MAC address. For example, server 104-1 may include three MAC addresses.Computing device 102 can log in to server 104-1 and determine each of the MAC addresses for server 104-1. For example,computing device 102 can log in to server 104-1 and determine that server 104-1 has the following MAC addresses: “02:1b:a8:9c:ab:92”, “0a:e2:b1:d6:9b:f9”, and “de:73:f4:41:31:93”. - Although server 104-1 is described above as including three MAC addresses, examples of the disclosure are not so limited. For example, server 104-1 can include less than three MAC addresses or more than three MAC addresses.
-
Computing device 102 can poll TOR switch 106-1 to capture a packet. As used herein, the term “poll” refers to sampling ports of a network device. As used herein, the term “packet” refers to a formatted unit of data carried by a packet-switched network. For example,computing device 102 can poll TOR switch 106-1 to capture a packet being communicated through TOR switch 106-1, where the packet includes various data. - The various data included in the packet can include a source IP address of the packet as well as timing information. In some examples, the packet can include a destination MAC address of the packet. For example, as user computing device 108-1 accesses server 104-1, packets are communicated from user computing device 108-1, through switch 112-1, through router 114-1, to TOR switch 106-1, and finally to server 104-1. Accordingly,
computing device 102 can poll TOR switch 106-1 to capture a packet communicated from user computing device 108-1. As used herein, the term “switch” refers to a computer networking device that connects devices together on a network by using, for example, packet switching to receive, process and forward data to a destination device. As used herein, the term “router” refers to a networking device that forwards data packets between networks. -
Computing device 102 can poll TOR switch 106-1 using sampled flow (sFlow). As used herein, the term “sFlow” refers to an industry standard packet export at Layer 2 of the Open Systems Interconnection (OSI) model. However, examples of the disclosure are not limited to polling TOR switch 106-1 using sFlow. For example,computing device 102 can poll TOR switch 106-1 using any other mechanism for packet export. - As described above, the captured packet can include various information. For example, the packet can include a source IP address, a destination IP address, and a destination MAC address, timing information among other types of information. Since the packet is communicated from user computing device 108-1, the source IP address can correspond to the IP address of user computing device 108-1, and the destination IP address and destination MAC address can correspond to the IP address and MAC address of server 104-1.
-
Computing device 102 can determine a source MAC address using the source IP address. For example,computing device 102 can poll an address resolution protocol (ARP) table of switch 112-1. As used herein, the term “ARP” refers to a protocol to map an IP address to a physical machine address included in a network. For example,computing device 102 can poll the ARP table of switch 112-1 to determine the source MAC address of user computing device 108-1 by mapping the source IP address (e.g., included in the captured packet) with an IP address included in the ARP table of switch 112-1. Based on the IP addresses matching,computing device 102 can further determine the MAC address corresponding to the matching IP address included in ARP table of switch 112-1. In other words, by matching the source IP address included in the captured packet from TOR switch 106-1 with an IP address having an associated MAC address included in the ARP table of switch 112-1,computing device 102 can map the source IP address included in the captured packet to a source MAC address (e.g., of user computing device 108-1) to determine the source MAC address.Computing device 102 can access the ARP table ofswitches 112 using the login information included in the predetermined server configuration file (e.g., Table 1). -
Computing device 102 can poll the ARP table ofswitches 112 due to a source MAC address in a packet being transmitted throughswitches 112 being changed. For instance, as a packet moves through arouter 114, therouter 114 can change the source MAC address of the packet to the router interface MAC address. However, the router does not change the source IP address. Accordingly,computing device 102 can map the source IP address to the MAC address ofuser computing device 108 using the source IP address of theuser computing device 108. - In some example computing networks, such as a local area network (LAN), a MAC address in a packet being transmitted to
servers 110 may not change if theservers 110 are in the same LAN. In such an example,computing device 102 can determine a source MAC address using the source IP address by polling an ARP table of aTOR switch 106. For example,computing device 102 can poll an ARP table of TOR switch 106-1 to determine the source MAC address of user computing device 108-1 by mapping the source IP address (e.g., included in the captured packet) with an IP address included in the ARP table of TOR switch 106-1. Based on the IP addresses matching,computing device 102 can further determine the MAC address corresponding to the matching IP address included in ARP table of TOR switch 106-1. In other words, by matching the source IP address included in the captured packet from TOR switch 106-1 with an IP address having an associated MAC address included in the ARP table of TOR switch 106-1,computing device 102 can map the source IP address included in the captured packet to a source MAC address (e.g., of user computing device 108-1) to determine the source MAC address. -
Computing device 102 can utilize the source MAC address to determine an identity of user computing device 108-1. Since the destination MAC address corresponds to server 104-1 and the source MAC address included in the captured packet corresponds to the user computing device 108-1,computing device 102 can utilize the source MAC address to determine an identity of user computing device 108-1, as is further described herein. For example, the determined MAC address ofcomputing device 102 can be “aa:bb:cc:dd:ee:ff”. -
Computing device 102 can utilize the source MAC address to determine an identity of user computing device 108-1 rather than the source IP address. For example, since an IP address can change over time, it may not be as desirable to use to determine an identity of user computing device 108-1. However, a MAC address of user computing device 108-1 may not change, and as a result, may be more desirable to use to determine an identity of user computing device 108-1. - Once
computing device 102 has the source MAC address from the captured packet at TOR switch 106-1,computing device 102 can compare the source MAC address to apredetermined database 109. Thepredetermined database 109 can include MAC addresses for user computing devices 108-R insystem 100. - In some examples, the
predetermined database 109 can be a lightweight directory access protocol (LDAP). As used herein, the term “LDAP” refers to a standard application protocol to access and maintain distributed directory information services over an IP network. An example LDAP entry for user computing device 108-1 is shown below: - dn: cn=test user, dc=example, dc=com
- cn: test user
- givenName: user-1
- sn: test
- telephoneNumber: +1 888 555 5555
- telephoneNumber: +1 888 555 1234
- MAC: aa:bb:cc:dd:ee:ff
- mail: user-1@exampledomain.com
- manager: cn=test manager, dc=example, dc=com
- objectClass: testOrgPerson
- objectClass: testPerson
- objectClass: person
- objectClass: top
- For example, as illustrated above, the MAC address included in
LDAP 109 above for user computing device 108-1 can be “aa:bb:cc:dd:ee:ff”. By comparing the source MAC address included in the packet at TOR switch 106-1 (e.g., “aa:bb:cc:dd:ee:ff”) with the MAC address included in LDAP 109 (e.g., “aa:bb:cc:dd:ee:ff”),computing device 102 can determine an identity of user computing device 108-1. For example, based on theLDAP 109 entry above,computing device 102 can determine the user is “user-1” having the email address “user-1@exampledomain.com”, and can include other various information such as a contact phone number, etc. - As described above, the captured packet can include timing information. For example, the timing information of the packet can include date and time information of the packet. For example, the date and time of the captured packet can be “Fri June 29, 14:45:40
EST 2018”, indicating the packet was sent from user computing device 108-1 to server 104-1 on Jun. 29, 2018 at 14:45:40 EST. Correspondingly, the date and time of the captured packet can indicate when the user computing device 108-1 last accessed server 104-1. -
Computing device 102 can log, based on the time included in the captured packet, the time user computing device 108-1 last accessed server 104-1. For example,computing device 102 can log the time (e.g., Jun. 29, 2018 at 14:45:40 EST) the user computing device 108-1 last accessed server 104-1 in the user mapping table. - In addition to the time user computing device 108-1 last accessed server 104-1, the user mapping table can include the IP and MAC addresses of each of the plurality of servers 104-N, the IP addresses of users of each of the plurality of servers, a last accessed time of user computing devices 108-R of each of the plurality of servers 104-N, and user identification information corresponding to each of the user computing devices 108-R, as is further described in connection with
FIG. 2 . For example, althoughsystem 100 is described above ascomputing device 102 determining a last accessed time of user computing device 108-1 of server 104-1, examples of the disclosure are not so limited. Server access times, according to the disclosure, can allowcomputing device 102 to generally determine a last accessed time of any one of user computing devices 108-R of any one of servers 104-N. - The above described steps can be performed at predetermined intervals. For example,
computing device 102 can capture packets and log times user computing devices 108-R last accessed servers 104-N at a predetermined interval. The predetermined interval can be every hour, every day, every week, among other time intervals. Further, the predetermined time interval can be modified to be any other interval. - In some examples,
computing device 102 can generate a notification touser computing device 108. For example, in response to an amount of time sinceuser computing device 108 last accessedserver 104 exceeding a threshold amount of time,computing device 102 can generate a notification touser computing device 108. For instance, in response to 30 days elapsing between the last time a user of user computing device 108-1 accessed server 104-1 and a present time,computing device 102 can generate and transmit a notification to user computing device 108-1. The notification can include a query about whether a user of theuser computing device 108 is still utilizingserver 104, is finished usingserver 104, etc. Although the threshold amount of time is described above as being 30 days, examples of the disclosure are not so limited. For example, the threshold amount of time can be one day, one week, one month, etc. The threshold amount of time can be modified to be any amount of time. The notification may be transmitted to an email address of a user ofuser computing device 108, transmitted via text message to a mobile device of the user ofuser computing device 108, transmitted via a phone call to a device of the user ofuser computing device 108, among other methods of transmission. The contact information utilized for the notification to the user may be included inLDAP 109. - In some examples,
computing device 102 can re-allocateserver 104 fromuser computing device 108. For example, in response to an amount of time sinceuser computing device 108 last accessedserver 104 exceeding a threshold amount of time,computing device 102 can re-allocateserver 104 to a differentuser computing device 108. For instance, in response to 30 days elapsing between the last time a user of user computing device 108-1 accessed server 104-1 and a present time,computing device 102 can re-allocate server 104-1 to user computing device 108-2. Although the threshold amount of time is described above as being 30 days, examples of the disclosure are not so limited. For example, the threshold amount of time can be one day, one week, one month, etc. The threshold amount of time can be modified to be any amount of time. - Server access times according to the disclosure can allow for determination of times a user computing device last accessed a server allocated to the user computing device. Determining a last accessed time can allow for a determination of an amount of time elapsed between a present time and the time the user computing device last accessed the server. If a sufficient amount of time has been passed, it may indicate a user of the user computing device is finished utilizing the server and an action may be taken to prevent the server from being idle. This can prevent an administrator of a data center having many servers from manually determining a last accessed time of servers. Further, an administrator may be able to perform actions on a server without disrupting a user's access to the server. For example, an administrator may be able to re-image the server and re-install an operating system without disrupting a user's access to the server or having to manually contact the user. Accordingly, server access times can reduce idle times of servers in a data center, which can preserve data center resources and provide cost savings to a data center.
-
FIG. 2 illustrates an example user mapping table 216 consistent with the disclosure. As illustrated inFIG. 2 , user mapping table 216 includes server management IP addresses 203, server management MAC addresses 205, server MAC addresses 207, server IP addresses 211, user IP addresses 213,last access times 215, anduser identification information 217. - As previously described in connection with
FIG. 1 , a computing device can parse a predetermined server configuration file to obtain various information including management IP addresses, usernames, and passwords for TOR switches and IP addresses, usernames, and passwords for servers. The computing device can further determine MAC addresses for the servers and the TOR switches by logging in to the servers using the usernames and passwords determined above. Computing device can generate the mapping table having the server management IP addresses of the TOR switches, the server management MAC addresses of the TOR switches, the server MAC addresses, and the server IP addresses. - Additionally, as previously described in connection with
FIG. 1 , the computing device can determine user computing device IP addresses and user computing device MAC addresses by capturing packets being transmitted through TOR switches. As illustrated inFIG. 2 , the determined user computing device IP addresses can be included in the user mapping table 216. Further, although not illustrated inFIG. 2 for clarity and so as not to obscure examples of the disclosure, the computing device can include the determined user computing device MAC addresses in the user mapping table 216. - The computing device can determine a last accessed time of the user computing devices for each of the plurality of servers included in the user mapping table 216 using the captured packets, as previously described in connection with
FIG. 1 , as well as user identification information of the user computing devices. The last accessed time and user identification information may be included in user mapping table 216. - For example, as illustrated in
FIG. 2 , a server having the MAC addresses “02:1b:a8:9c:ab:92”, “0a:e2:b1:d6:9b:f9”, and “de:73:f4:41:31:93” may be allocated to two different users having two different user computing devices. For example, the first user may have a user computing device IP address of 15.23.43.32 and user identification information of “user1@domain.com”, and last accessed the server at Friday, Jun. 29, 2018, at 14:45:40 EST. Further the second user may have a user computing device IP address of 18.34.43.55 and user identification information of “user2@domain.com”, and last accessed the server at Thursday, Jul. 13, 2018, at 09:08:34 EST. Similar information can be included in user mapping table 216 for other servers. - As illustrated in user mapping table 216, the user having the user computing device IP address of 15.23.43.32 may not have accessed the server in some time. For example, if a present time is Aug. 28, 2018, it can be apparent that the user having the user computing device IP address of 15.23.43.32 has not accessed the server in over one month. Accordingly, action may be taken regarding the server and the user having the user computing device IP address of 15.23.43.32, as previously described in connection with
FIG. 1 (e.g., generation of a notification, re-allocating the server to another user, etc.) - In some examples, a server included in a server rack may be removed. For example, the server may undergo maintenance, be replaced, etc. In such an example, the server may be deleted from the active server list in the predetermined server configuration file and moved to a “Deleted Servers” section of the predetermined server configuration file. For example, as illustrated in Table 1 above, a server having an IP address of 17.21.32.78 may be moved to the Deleted Servers section of the predetermined server configuration file.
- In order to prevent the computing device from trying to determine a last accessed time for a removed server, the computing device can parse the deleted server list for deleted servers. In response to finding deleted servers, the computing device can remove the deleted server from the user mapping table 216. Removing the deleted server from user mapping table 216 can prevent deleted servers from being monitored according to examples of the disclosure.
-
FIG. 3 is a block diagram 318 of anexample computing device 302 for server access times consistent with the disclosure. As described herein, thecomputing device 302 may perform a number of functions related to server access times. Although not illustrated inFIG. 3 , thecomputing device 302 may include a processor and a machine-readable storage medium. Although the following descriptions refer to a single processor and a single machine-readable storage medium, the descriptions may also apply to a system with multiple processors and multiple machine-readable storage mediums. In such examples, thecomputing device 302 may be distributed across multiple machine-readable storage mediums and thecomputing device 302 may be distributed across multiple processors. Put another way, the instructions executed by thecomputing device 302 may be stored across multiple machine-readable storage mediums and executed across multiple processors, such as in a distributed or virtual computing environment. - As illustrated in
FIG. 3 , thecomputing device 302 may comprise aprocessing resource 320, and amemory resource 322 storing machine-readable instructions to cause theprocessing resource 320 to perform a number of operations relating to server access times. That is, using theprocessing resource 320 and thememory resource 322, thecomputing device 302 may log a time a user computing device last accessed a server, among other operations.Processing resource 320 may be a central processing unit (CPU), microprocessor, and/or other hardware device suitable for retrieval and execution of instructions stored inmemory resource 322. - The
computing device 302 may includeinstructions 324 stored in thememory resource 322 and executable by theprocessing resource 320 to determine a MAC address of a server. Thecomputing device 302 may determine a MAC address of a server by parsing a predetermined server configuration file. Thecomputing device 302 can parse the predetermined server configuration file to determine a TOR switch management IP address, username, and password for the TOR switch, as well as an IP address, username, and password for the server. Thecomputing device 302 can then login to the server to determine the MAC address of the server utilizing the TOR switch management IP address, username, and password for the TOR switch, as well as the IP address, username, and password for the server. - The
computing device 302 may includeinstructions 326 stored in thememory resource 322 and executable by theprocessing resource 320 to poll the TOR switch connected to the server to capture a packet. The packet can include a source IP address of the packet, as well as timing information. - The
computing device 302 may includeinstructions 328 stored in thememory resource 322 and executable by theprocessing resource 320 to determine a source MAC address using the captured packet. For example, since the captured packet includes a source IP address,computing device 302 can poll a particular switch to access an ARP table. In some examples, the switch is a network switch. In some examples, the switch is a TOR switch. Thecomputing device 302 can utilize the ARP table to compare a source IP address included in the captured packet with IP addresses included in the ARP table. Thecomputing device 302 can match the source IP address included in the captured packet to an IP address and corresponding MAC address included in the ARP table. Based on the matching IP addresses, thecomputing device 302 can determine the MAC address corresponding to the matching IP address in the ARP table is the source MAC address of the user computing device. Since the user computing device communicates the packet when accessing the server, the source IP address can correspond to the user computing device. Accordingly, thecomputing device 302 can determine the source MAC address of the user computing device. - The
computing device 302 may includeinstructions 330 stored in thememory resource 322 and executable by theprocessing resource 320 to determine an identity of the user computing device. Thecomputing device 302 can compare the source MAC address to a predetermined database that includes MAC addresses. For example, thecomputing device 302 can compare the source MAC address to an LDAP that includes MAC addresses of all user computing devices on the network. Accordingly,computing device 302 can determine, based on a source MAC address matching a MAC address in the LDAP, the identity of the user computing device sending the captured packet. - The
computing device 302 may includeinstructions 332 stored in thememory resource 322 and executable by theprocessing resource 320 to log a time the user computing device last accessed the server. For example, as previously described above, the captured packet can include timing information. The timing information can include a date and time, which can correspond to the time the user computing device last accessed the server. This time can be logged in a user mapping table. - In this manner, the
computing device 302 can determine a last accessed time of a server by a user computing device. Accordingly, server access times, according to the disclosure can track an amount of time since a user last accessed a server, which can reduce server idle times. -
FIG. 4 is a block diagram of anexample system 434 consistent with the disclosure. In the example ofFIG. 4 ,system 434 includes aprocessor 436 and a machine-readable storage medium 438. Although the following descriptions refer to a single processor and a single machine-readable storage medium, the descriptions may also apply to a system with multiple processors and multiple machine-readable storage mediums. In such examples, the instructions may be distributed across multiple machine-readable storage mediums and the instructions may be distributed across multiple processors. Put another way, the instructions may be stored across multiple machine-readable storage mediums and executed across multiple processors, such as in a distributed computing environment. -
Processor 436 may be a central processing unit (CPU), microprocessor, and/or other hardware device suitable for retrieval and execution of instructions stored in machine-readable storage medium 438. In the particular example shown inFIG. 4 ,processor 436 may receive, determine, and sendinstructions processor 436 may include an electronic circuit comprising a number of electronic components for performing the operations of the instructions in machine-readable storage medium 438. With respect to the executable instruction representations or boxes described and shown herein, it should be understood that part or all of the executable instructions and/or electronic circuits included within one box may be included in a different box shown in the figures or in a different box not shown. - Machine-
readable storage medium 438 may be any electronic, magnetic, optical, or other physical storage device that stores executable instructions. Thus, machine-readable storage medium 438 may be, for example, Random Access Memory (RAM), an Electrically-Erasable Programmable Read-Only Memory (EEPROM), a storage drive, an optical disc, and the like. The executable instructions may be “installed” on thesystem 434 illustrated inFIG. 4 . Machine-readable storage medium 438 may be a portable, external or remote storage medium, for example, that allows thesystem 434 to download the instructions from the portable/external/remote storage medium. In this situation, the executable instructions may be part of an “installation package”. As described herein, machine-readable storage medium 438 may be encoded with executable instructions for server access times. - Parse
instructions 440, when executed by a processor such asprocessor 436, may causesystem 434 to parse a predetermined server configuration file to locate a server. For example,system 434 can parse the predetermined server configuration file to determine a TOR switch management IP address, username, and password for the TOR switch, as well as an IP address, username, and password for the server. - Determine
instructions 442, when executed by a processor such asprocessor 436, may causesystem 434 to determine a MAC address of the server by logging into the server. Thesystem 434 can log in to the server utilizing the login credentials of the server and TOR switch connected to the server. For example, thesystem 434 can log in to the server utilizing the TOR switch management IP address, username, and password for the TOR switch, as well as the IP address, username, and password for the server to determine the MAC address of the server. -
Poll instructions 444, when executed by a processor such asprocessor 436, may causesystem 434 to poll the TOR switch connected to the server to capture a packet. The packet can include a source IP address of the packet, as well as timing information. - Determine
instructions 446, when executed by a processor such asprocessor 436, may causesystem 434 to determine an identity of a user computing device. Thesystem 434 can determine the identity of the user computing device based on the source IP address from the captured packet. For example, since the captured packet includes a source IP address, thesystem 434 can poll a particular switch to access an ARP table. In some examples, the switch is a network switch. In some examples, the switch is a TOR switch. Thesystem 434 can utilize the ARP table to compare the source IP address included in the captured packet with IP addresses included in the ARP table. Thesystem 434 can match the source IP address included in the captured packet to an IP address and corresponding MAC address included in the ARP table. Based on the matching IP addresses, thesystem 434 can determine the MAC address corresponding to the matching IP address in the ARP table is the source MAC address of the user computing device. - To determine an identity of the user computing device,
system 434 can compare the source MAC address to a predetermined database that includes MAC addresses. Thesystem 434 can compare the source MAC address to an LDAP that includes MAC addresses of all user computing devices on the network. Accordingly, thesystem 434 can determine, based on a source MAC address matching a MAC address in the LDAP, the identity of the user computing device sending the captured packet. - Log
instructions 448, when executed by a processor such asprocessor 436, may causesystem 434 to log a time the user computing device last accessed the server. For example, as previously described above, the captured packet can include timing information. The timing information can include a date and time, which can correspond to the time the user computing device last accessed the server. This time can be logged in a user mapping table. -
FIG. 5 illustrates anexample method 550 consistent with the disclosure.Method 550 may be performed, for example, by a computing device (e.g.,computing device FIGS. 1 and 3 , respectively). - At 552, the
method 550 includes parsing a predetermined server configuration file to locate a server. A computing device can parse a predetermined server configuration file to locate a server among a plurality of servers included in a server rack. The predetermined server configuration file can include IP addresses and login credentials for each server in the server rack, and an IP address and login credentials for a TOR switch(es) of the server rack. For example, the computing device can parse the predetermined server configuration file to determine a TOR switch management IP address, username, and password for the TOR switch, as well as an IP address, username, and password for the server among the plurality of servers. - At 554, the
method 550 includes determining a MAC address of the server. The computing device can determine the MAC address of the server by logging in to the server utilizing the login credentials of the server and the TOR switch. For example, the computing device can login to the server utilizing the TOR switch management IP address, username, and password for the TOR switch, as well as the IP address, username, and password for the server to determine the MAC address of the server. - At 556, the
method 550 includes polling a TOR switch to capture a packet. The captured packet can include a source IP address, as well as timing information. - At 557, the
method 550 includes determining a source MAC address. The computing device can determine the source MAC address using the source IP address included in the captured packet. For example, computing device can poll a particular switch to access an ARP table. In some examples, the switch is a network switch. In some examples, the switch is a TOR switch. The computing device can utilize the ARP table to compare the source IP address included in the captured packet with IP addresses included in the ARP table. The computing device can match the source IP address included in the captured packet to an IP address and corresponding MAC address included in the ARP table. Based on the matching IP addresses, the computing device can determine the MAC address corresponding to the matching IP address in the ARP table is the source MAC address of the user computing device. - At 558, the
method 550 includes determining an identity of a user computing device. The computing device can determine the identity of the user computing device by comparing the source MAC address to an LDAP. Accordingly, the computing device can determine, based on the source MAC address matching a MAC address in the LDAP, the identity of the user computing device sending the captured packet. - At 560, the
method 550 includes logging a time the user computing device last accessed the server. For example, as previously described above, the captured packet can include timing information. The timing information can include a date and time, which can correspond to the time the user computing device last accessed the server. This time can be logged in a user mapping table. - The
method 550 can be performed at predetermined intervals. Performingmethod 550 at predetermined intervals can allow the user mapping table to be periodically updated as user computing devices access various servers. The user mapping table can be utilized by an administrator to track an amount of time since a user last accessed a server, which can reduce server idle times. - In the foregoing detailed description of the present disclosure, reference is made to the accompanying drawings that form a part hereof, and in which is shown by way of illustration how examples of the disclosure may be practiced. These examples are described in sufficient detail to enable those of ordinary skill in the art to practice the examples of this disclosure, and it is to be understood that other examples may be utilized and that process, electrical, and/or structural changes may be made without departing from the scope of the present disclosure.
- The figures herein follow a numbering convention in which the first digit corresponds to the drawing figure number and the remaining digits identify an element or component in the drawing. Similar elements or components between different figures may be identified by the use of similar digits. For example, 102 may reference element “02” in
FIG. 1 , and a similar element may be referenced as 302 inFIG. 3 . Elements shown in the various figures herein can be added, exchanged, and/or eliminated so as to provide a plurality of additional examples of the present disclosure. In addition, the proportion and the relative scale of the elements provided in the figures are intended to illustrate the examples of the present disclosure and should not be taken in a limiting sense.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/176,033 US10659336B1 (en) | 2018-10-31 | 2018-10-31 | Server access times |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/176,033 US10659336B1 (en) | 2018-10-31 | 2018-10-31 | Server access times |
Publications (2)
Publication Number | Publication Date |
---|---|
US20200136950A1 true US20200136950A1 (en) | 2020-04-30 |
US10659336B1 US10659336B1 (en) | 2020-05-19 |
Family
ID=70326088
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/176,033 Active 2038-11-24 US10659336B1 (en) | 2018-10-31 | 2018-10-31 | Server access times |
Country Status (1)
Country | Link |
---|---|
US (1) | US10659336B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210194785A1 (en) * | 2019-12-20 | 2021-06-24 | Forescout Technologies, Inc. | Increasing data availability |
US20220321501A1 (en) * | 2019-06-17 | 2022-10-06 | Cyxtera Data Centers, Inc. | Network configuration of top-of-rack switches across multiple racks in a data center |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5862338A (en) * | 1996-12-30 | 1999-01-19 | Compaq Computer Corporation | Polling system that determines the status of network ports and that stores values indicative thereof |
US6665733B1 (en) * | 1996-12-30 | 2003-12-16 | Hewlett-Packard Development Company, L.P. | Network communication device including bonded ports for increased bandwidth |
US6564261B1 (en) | 1999-05-10 | 2003-05-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Distributed system to intelligently establish sessions between anonymous users over various networks |
WO2001014989A1 (en) | 1999-08-23 | 2001-03-01 | 3Com Corporation | Architecture for a network management service which identifies and locates users and/or devices within an enterprise network |
US7290046B1 (en) | 2002-11-22 | 2007-10-30 | At&T Corp. | System and method for detecting customer premise equipment behind a router on a data-over-cable system |
DE602007004041D1 (en) * | 2006-08-11 | 2010-02-11 | Brother Ind Ltd | terminal |
US9391843B1 (en) | 2012-12-31 | 2016-07-12 | Juniper Networks, Inc. | Pre-computing effects of modifying components in a data center switch |
US10044795B2 (en) * | 2014-07-11 | 2018-08-07 | Vmware Inc. | Methods and apparatus for rack deployments for virtual computing environments |
US10313479B2 (en) | 2015-11-24 | 2019-06-04 | Vmware, Inc. | Methods and apparatus to manage workload domains in virtual server racks |
WO2018103019A1 (en) | 2016-12-07 | 2018-06-14 | 华为技术有限公司 | Method for managing route in software-defined networking and switch |
US10505816B2 (en) * | 2017-05-31 | 2019-12-10 | Cisco Technology, Inc. | Semantic analysis to detect shadowing of rules in a model of network intents |
US10652102B2 (en) * | 2017-06-19 | 2020-05-12 | Cisco Technology, Inc. | Network node memory utilization analysis |
US10841235B2 (en) * | 2017-07-20 | 2020-11-17 | Vmware, Inc | Methods and apparatus to optimize memory allocation in response to a storage rebalancing event |
-
2018
- 2018-10-31 US US16/176,033 patent/US10659336B1/en active Active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220321501A1 (en) * | 2019-06-17 | 2022-10-06 | Cyxtera Data Centers, Inc. | Network configuration of top-of-rack switches across multiple racks in a data center |
US20210194785A1 (en) * | 2019-12-20 | 2021-06-24 | Forescout Technologies, Inc. | Increasing data availability |
US11683248B2 (en) * | 2019-12-20 | 2023-06-20 | Forescout Technologies, Inc. | Increasing data availability |
Also Published As
Publication number | Publication date |
---|---|
US10659336B1 (en) | 2020-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10110671B2 (en) | Method, system, and device for managing server hardware resources in a cloud scheduling environment | |
CN104364761B (en) | For the system and method for the converting flow in cluster network | |
US9628328B2 (en) | Network controller with integrated resource management capability | |
US9686143B2 (en) | Mechanism for management controllers to learn the control plane hierarchy in a data center environment | |
CN104365067B (en) | System and method for recombinating the grouping distributed across cluster | |
CN112737690B (en) | Optical line terminal OLT equipment virtualization method and related equipment | |
CN104380693B (en) | System and method for dynamic routing in the cluster | |
US9473369B2 (en) | Application topology based on network traffic | |
CN104365058B (en) | For the system and method in multinuclear and group system high speed caching SNMP data | |
CN110366720A (en) | The system and method for user's space network stack while bypassing container Linux network stack in operation Docker container | |
CN108476231A (en) | System and method for maintaining session via intermediate device | |
US10764127B2 (en) | Techniques for virtualized network capacity management | |
CN104620539B (en) | System and method for supporting SNMP requests by cluster | |
US10198338B2 (en) | System and method of generating data center alarms for missing events | |
CN107005547A (en) | For the system and method for the single-sign-on that the remote desktop session for client computer is performed by middle device | |
AU2019344548B2 (en) | Unique identities of endpoints across layer 3 networks | |
CN107079060A (en) | The system and method optimized for carrier-class NAT | |
CN110659109B (en) | System and method for monitoring openstack virtual machine | |
US10530726B2 (en) | Email notifications | |
US10659336B1 (en) | Server access times | |
US20150012625A1 (en) | Assigning location identifiers to nodes in a distributed computer cluster network environment | |
CN107078936A (en) | For the system and method for the fine granularity control for providing the MSS values connected to transport layer | |
CN109474713B (en) | Message forwarding method and device | |
JP7330602B2 (en) | Intelligent load balancer | |
CN110301119A (en) | Improve the system and method for computer network performance for the multiplexing application-level flow for network flow |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
AS | Assignment |
Owner name: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP, TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:D M, VIKAS;ARUNACHALAM, SANTOSH;PEERZADE, SYED AHMED MOHIUDDIN;AND OTHERS;SIGNING DATES FROM 20181030 TO 20181031;REEL/FRAME:047409/0159 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |