US20170070562A1 - Method for denominating move groups of applications - Google Patents
Method for denominating move groups of applications Download PDFInfo
- Publication number
- US20170070562A1 US20170070562A1 US14/846,791 US201514846791A US2017070562A1 US 20170070562 A1 US20170070562 A1 US 20170070562A1 US 201514846791 A US201514846791 A US 201514846791A US 2017070562 A1 US2017070562 A1 US 2017070562A1
- Authority
- US
- United States
- Prior art keywords
- applications
- classification sub
- network
- application
- classification
- 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.)
- Abandoned
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000012544 monitoring process Methods 0.000 claims abstract description 6
- 238000004891 communication Methods 0.000 claims description 8
- 230000002155 anti-virotic effect Effects 0.000 claims description 3
- 238000011156 evaluation Methods 0.000 claims description 2
- 206010011416 Croup infectious Diseases 0.000 abstract description 2
- 201000010549 croup Diseases 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 25
- 238000013508 migration Methods 0.000 description 6
- 230000005012 migration Effects 0.000 description 6
- 238000013459 approach Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 239000004020 conductor Substances 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000000926 separation method Methods 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- 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
-
- 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/04—Processing captured monitoring data, e.g. for logfile generation
Definitions
- cloud services are available and the users of this type of network data processing systems neither own nor manage the physical infrastructure. In this manner, users may avoid capital expenditures, support costs, maintenance costs, labor costs, and other costs associated with more traditional types of networks.
- cloud-based network environments users consume resources as a service and typically pay based on the use of those resources.
- companies and organizations can avoid capital expenditures, such as costs for hardware, software, information technology services, and other associated costs.
- Clouds may include, for example, a public cloud, a private could, and a hybrid cloud.
- a public cloud is a network environment in which users access computing resources over a network, such as the internet.
- a private cloud is an internal loud in which resources are accessed on private networks, such as an intranet.
- a private cloud also may provide additional separation from other users.
- a private cloud may include firewalls and other devices to provide for increased security and separation.
- Computer networks consist of a number of computers in communication with each other. Often, networks are complicated or are built on an as-needed basis. For example, in a school setting, computers may generally be added when they can be afforded and joined into the network one by one. With larger organizations the complexity of the network and the communication between the devices within them can be even greater. Further, since the popularity of the internet, networks are no longer restricted to a single building or organization and instead the computers in the network can be spaced all over the world and across organizations. Since the construction of different parts of the network was by different people in many instances no one person knows the overall infrastructure of the network and how the elements are connected together. Even without the addition of new computers it is quite common for the implementation of real systems to be changed many times during its building operation (server swapped maintenance repair, etc).
- the arrangement of devices in the network and how they communicate with each other is sometimes referred to as network topology.
- the term “physical topology” can be used to refer to the arrangement of hardware and cabling but generally it is at least as important to know the manner of communications and the paths of the signals between the computers (sometimes referred to as a logical or signal topology).
- logical or signal topology There are many applications and circumstances for which it is beneficial to understand the network and how computers are connected to each other, i.e., to acquire a mapping of the topology.
- Trace route is a computer networking tool that is used to determine the route taken by packets across an IP network. Trace route and similar programs work by sending successive batch of packets over the network and calculating the route from this. Trace route relies on ICMP (Internet Control Message Protocol).
- ICMP Internet Control Message Protocol
- One object of the present invention is to provide a method of staging a move group of applications of a network.
- the method includes the step of developing a reference base of applications via monitoring traffic flow between devices of the network on which applications are executed or accessing information about such applications.
- the method further includes the step of classifying each such selected application as a member of one of the classification sub-sets with regard to applications of the reference application base.
- the method includes the step of accessing information about the classification sub-sets of those respective applications executed on each of a target group of devices to thereby form an application classification glossary associated with the device, wherein, within the application glossary associated with each device, each application belonging to a respective classification sub-set is grouped together with all applications that both belong to that same classification sub-set and are hosted on the device.
- the method additionally further includes the step of denominating a move group of applications by: (a) deeming that all respective applications sharing a common membership in a respective classification sub-set are to be considered as a move group or (b) determining that certain applications commonly classed in a respective classification sub-set are also additionally members of a class of applications sharing a common property and deeming that such certain applications are to be considered as a move group.
- Another object of the present invention is to provide computer readable medium containing computer executable instructions which when executed on one or more computers of a network causes the respective computer or computers to perform the method of staging a move group of applications of a network.
- a further object of the present invention is to provide a computer based apparatus operable to provide an evaluation of certain characteristics of a network, the apparatus comprising a processor, a memory, and an input element operable to be in communication with a plurality of computers of a network that is to be evaluated and the computer based apparatus being operable to perform the method of staging a move group of applications of a network.
- FIG. 1 is a schematic view of a portion of a network
- FIG. 2 is an enlarged schematic view of a software program executable to implement the method of the present invention
- FIG. 3 is a schematic view of an exemplary implementation of the move group identifier method of the present invention.
- FIG. 4 is a graphical representation of an exemplary display format for displaying a list of move group choices to a user.
- FIG. 1 is a schematic view of a portion of a network 700 .
- the network 700 comprises a plurality of devices, some in the form of computers, and the respective computers that are schematically shown in FIG. 1 form a part of the network 700 and are operatively connected to other computers and devices of the network (not shown).
- five devices 702 , 704 , 708 , 708 and 710 are illustrated.
- Each device may be a web server, a terminal connected solely to a web server, or other known device typically comprised in a network.
- each of the devices 702 , 704 , 708 , 708 and 710 are similarly equipped and, in this regard, as is shown with respect to the device 710 , each of the devices comprises a processor 712 , a par of network interfaces 714 , 716 , and a software program 720 executable to implement the move group identifier method of the present invention with respect to the network 700 ,
- the pair of network interfaces 714 , 716 are connected to an Ethernet connection 750 and a Wi-Fi connection 752 , respectively.
- the Ethernet and Wi-Fi connections therefore enable the device 710 shown to connect to one or more of the other devices 702 , 704 , 706 , and 705 as well as other devices in the network.
- a remote processor which may be hosted on another computer of the network 700 , for example, or which may be a VM processor, may be operatively connected to one or more of the devices 702 . 704 , 706 , 708 and 710 .
- This remote processor (not shown) may partially or fully execute the software program 720 hosted on the device 710 .
- the software program 720 includes four modules 722 , 724 , 726 , and 728 and a database 730 .
- the module 722 provides a discovery configuration module capability
- the module 724 provides a discovery conductor module capability
- the module 726 provides a communication interface capability
- the module 725 provides a process management capability.
- the software program 720 is executed to configure the five devices 702 , 704 , 706 , 708 and 710 to enable discovery of network traffic transmitted or received via their connected interfaces 714 , 716 .
- the discovery of network traffic is preferably accomplished via a collection of workload data, applications, services, performances as an initial step. This collection effort can make reference to data hosted on a memory within a device, wherein such memory can mean random access memory or any form of data storage device such as a hard drive or flash memory.
- the data can be comprised in a database that is an in-memory or file supported relational database system.
- the data an be already organized in a form, for example, such as a traffic flow table or a network interface table.
- a traffic flow table can include IP addresses and port specific network traffic information.
- the network interface table may include vendor descriptions, interface names, MAC (Media Access Control or Ethernet hardware addresses), and media types.
- the communication interface module 726 configures the device 710 to connect to the remote processor to upload reports.
- the interface of this communication interface module 726 can be a web service or be provided by e-mailing a file report to the remote processor which will typically be the main server.
- FIG. 2 and to FIG. 3 is a schematic view of an exemplary implementation of the move group identifier method of the present invention. As seen in FIG.
- the move group identifier method of the present invention comprises several steps that, when performed with respect to a network, provide a user with a move group of applications hosted on the network.
- the term “move group of applications” is directed to the concept of providing a fully automatic approach, or at least with an approach with some automated aspects, for identifying a suggested or desired grouping of applications currently hosted on a network to a user, whereupon the user can more easily consider or plan a migration of at least some of the network's tasks to a different network such as, for example, a migration of network tasks to an external network in the form of a private or public cloud network.
- the exemplary implementation of the move group identifier method 810 shown in FIG. 3 is conducted on the devices 702 - 710 of the portion of the network 700 shown in FIG. 1 and the implementation of the move group identifier method 810 is managed by the software program 720 .
- the move group identifier method 810 includes several steps that are automatically performed once an initiation command is provided by a user and the method ultimately yields a suggested or desired grouping of applications currently hosted on the network 700 which can be displayed, for example, in a on-screen report to the user.
- the move group identifier method 810 includes the flexibility that a user can command a re-execution of the method with a change in the filters or a change in a process variable, so that a different suggested or desired grouping of applications currently hosted on the network 700 will be displayed to the user. It can be understood that this manner of iteratively changing the inputs that are processed is the move croup identifier method 810 beneficially provides a user with a range of different perspectives in considering network migration scenarios.
- a user can customize implementation of the move group identifier method 810 to provide information about a group of applications hosted at a common location or to provide information about a group of applications that handle a common task (i.e., antivirus applications), whereupon the user can strategically plan a migration to avoid excess redundancies of such applications.
- the move group identifier method 810 includes a reference base development step 810 for developing a reference base of applications.
- This reference base of applications is developed via monitoring of the traffic flow between the devices of the network on which applications are executed or accessing information about such applications.
- the discovery configuration module 722 of the software program 720 configures the discovery conductor module 724 to monitor traffic flow between the devices 702 - 710 (i.e., message traffic transmitted or received via applications hosted on these devices) as well as traffic flow between these devices and other devices of the network 700 .
- the discovery configuration module 722 of the software program 720 configures the discovery conductor module 724 to access information about these applications is reference, for example, to network statistics stored on a memory capacity that is part of the network 700 .
- This reference base development step 810 results in the creation of a reference base of applications that is stored on the memory 730 of the network 700 .
- the applications in the reference base of applications are representatively shown as applications APL-AA, APL-BB, APL-CC, APL-DD, and APL-EE.
- the move group identifier method 810 also includes a classification step 820 that is performed by the process director module 728 of the software program 720 .
- the process director module 728 accesses the memory 730 and, with regard to applications of the reference application base, the process director module 728 classifies each such selected application as a member of one of a collection of classification sub-sets.
- a classification sub-set is to be understood as set of applications sharing a common property such as, for example, the common property that all of the applications are Windows-based applications or Linux-based applications.
- the process director module 728 is configured to automatically allocate each application of the reference application base to a respective classification sub-set based upon pre-set criteria such as, for example, a pre-set criteria to commonly assign to a single classification sub-set all those applications having a Windows-based operating system (as noted during the reference base development step 810 ). Additionally or alternatively, the allocations made by the process director module 728 can be supplemented or adjusted via the intervention of a classification oversight feature. For example, the process director module 728 can be supplemented or adjusted via the intervention of a classification oversight feature wherein the user or an external entity that is implementing the move group identifier method 810 can adjust or override the allocation choices suggested by the process director module 728 .
- pre-set criteria such as, for example, a pre-set criteria to commonly assign to a single classification sub-set all those applications having a Windows-based operating system (as noted during the reference base development step 810 ).
- the allocations made by the process director module 728 can be supplemented or adjusted via
- the classification sub-sets are schematically shown in FIG. 3 as classification sub-sets 822 A-E.
- the applications in the reference base of applications representatively shown as applications APL-AA, APL-BB, APL-CC, APL-DD, and APL-EE, are each a member of a respective one of the classification sub-sets 822 A-E.
- the move group identifier method 810 further includes an information accessing step 830 that is performed by the process director module 728 of the software program 720 ,.
- the process director module 728 accesses the memory 730 and, with regard to each individual device of a target group of devices of the network—namely, the five devices 702 , 704 , 706 , 708 and 710 of the network 700 , the process director module 728 accesses information about the classification sub-sets of those respective applications executed on the respective device to thereby form an application glossary associated with that respective device.
- the process director module 728 of the software program 720 accesses information about the devices 702 - 710 and forms the corresponding set of application glossaries 902 - 910 , schematically shown as residing in the storage 730 .
- each application belonging to a respective classification sub-set is grouped together with all applications that both belong to that same classification sub-set and are hosted on the device.
- the application classification glossary 902 which is associated with the device 702 , may list several applications all belonging to the respective classification sub-set comprised of anti-virus applications and may additionally list an application belonging to the respective classification sub-set comprised of Active Directory applications.
- the move group identifier method 810 additionally includes a denominating step 340 that is performed by the process director module 728 of the software program 720 .
- the process director module 728 accesses the memory 730 and denominates a move group of applications.
- the denominated move group of applications is a suggested or desired grouping of applications currently hosted on the network and this information is communicated to the user, whereupon the user can more easily consider or plan a migration of at least some of the network's tasks to a different network such as, for example, a migration of network tasks to an external network in the form of a private or public cloud network.
- the process director module 728 denominates a move group of applications by: (a) deeming that all respective applications sharing a common membership in a respective classification sub-set are to be considered as a move group or (b) determining that certain applications commonly classed in a respective classification: sub-set are-also additionally members of a class of applications sharing a common property and deeming that such certain applications are to be considered as a move group.
- the process director module 728 can access the memory 730 and denominate a move group of applications that is comprised of all of the applications hosted on the. five devices 702 , 704 , 706 , 708 and 710 of the network 700 —this information is namely the information listed in the application glossaries 902 - 910 .
- a denomination of a move group of applications made by the process director module 728 can be supplemented or adjusted via the intervention of a classification oversight feature.
- the process director module 728 can be supplemented or adjusted via the intervention of a classification oversight feature wherein the user or an external entity that is implementing the move group identifier method 810 can adjust or override the move group choices suggested by the process director module 728 .
- the process director module 728 can access the memory 730 and identify such applications that satisfy both criteria.
- FIG. 4 is a graphical representation of an exemplary display format for displaying a list of move group choices to a user.
- a display screen image 610 shows a total of three rows sub-headed “Sharepoint2”, “Amsterdam”, and “Lync” and each sub-headed row comprises one or more listings of applications, with information about each application being provided under columns denominated as Name, IP Address, Device Type, Operating System, Number of Hard Drives, and Number of Network interfaces.
- the process director module 728 has been tasked to identify all those applications that are commonly classed in the respective classification sub-set that includes all applications that are Linux-based applications (see, e.g., the information listed in the row sub-headed “Amsterdam” under the column “Operating System”) and, additionally, the process director module 728 has been tasked to identify all those applications are also additionally members of a class of applications sharing a common property—namely, identify all those applications are also additionally members of the class of applications that are hosted on devices located in Amsterdam.
- the above-discussed embodiments include software modules that perform certain tasks.
- the software modules discussed herein may include script, batch, or other executable files.
- the software modules may be stored on a machine-readable or computer-readable storage medium such as a disk drive.
- Storage devices used for storing software modules in accordance with an embodiment of the invention may be magnetic floppy disks, hard disks, or optical discs such as CD-ROMs or DVDs, for example.
- a storage device used for storing firmware or hardware modules in accordance with an embodiment of the invention may also include a semiconductor-based memory, which may be permanently, removably or remotely coupled to a microprocessor/memory system.
- the modules may be stored within a computer system memory to configure the computer system to perform the functions of the module.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
A method of staging a move group of applications of a network is provided and includes the step of developing a reference base of applications via monitoring traffic flow between devices of the network on which applications are executed or accessing information about such applications. The method further includes the step of classifying each such selected application as a member of one of the classification sub-sets with regard to applications of the reference application base. Additionally, the method includes the step of accessing information about the classification sub-sets of those respective applications executed on each of a target croup of devices to thereby form an application classification glossary associated with the device.
Description
- US Published Patent Application No. 2011/0246376 to Devakondra et al points out that network data processing systems are used for a variety of different purposes and come in a number of different forms. Several types of network data processing systems are commonly used by companies and other organizations and may include, for example, local area networks, wide area networks, virtual private networks, and other suitable types of networks.
- In addition to such networks that may be maintained by the network operator itself, cloud services are available and the users of this type of network data processing systems neither own nor manage the physical infrastructure. In this manner, users may avoid capital expenditures, support costs, maintenance costs, labor costs, and other costs associated with more traditional types of networks. With cloud-based network environments, users consume resources as a service and typically pay based on the use of those resources. By turning to cloud-based computing resources, companies and organizations can avoid capital expenditures, such as costs for hardware, software, information technology services, and other associated costs.
- Clouds may include, for example, a public cloud, a private could, and a hybrid cloud. A public cloud is a network environment in which users access computing resources over a network, such as the internet. A private cloud is an internal loud in which resources are accessed on private networks, such as an intranet. A private cloud also may provide additional separation from other users. A private cloud may include firewalls and other devices to provide for increased security and separation.
- Organizations that employ more traditional types of network data processing systems may contemplate whether to change over from their more traditional network environment to a cloud network environment. In view of the fact that the particular cloud services offered by each cloud service provider or vendor will have different features, benefits, service operating requirements, and costs, it would be advantageous for a network operator to have access to tools that can help guide a decision to migrate computing tasks to a cloud. Moreover, it would be advantageous if such tools for a guiding a network operator could equip the network operator to have an accurate picture of the computing resources in its own network that will or can be replaced by the cloud computing resources. Furthermore, network operators can make better informed decisions about purchasing cloud services if they can get pricing information about potential cloud service providers and, especially, pricing information about the scope of computing resources that tasks could be taken over in a cloud service arrangement.
- Computer networks consist of a number of computers in communication with each other. Often, networks are complicated or are built on an as-needed basis. For example, in a school setting, computers may generally be added when they can be afforded and joined into the network one by one. With larger organizations the complexity of the network and the communication between the devices within them can be even greater. Further, since the popularity of the internet, networks are no longer restricted to a single building or organization and instead the computers in the network can be spaced all over the world and across organizations. Since the construction of different parts of the network was by different people in many instances no one person knows the overall infrastructure of the network and how the elements are connected together. Even without the addition of new computers it is quite common for the implementation of real systems to be changed many times during its building operation (server swapped maintenance repair, etc).
- The arrangement of devices in the network and how they communicate with each other is sometimes referred to as network topology. The term “physical topology” can be used to refer to the arrangement of hardware and cabling but generally it is at least as important to know the manner of communications and the paths of the signals between the computers (sometimes referred to as a logical or signal topology). There are many applications and circumstances for which it is beneficial to understand the network and how computers are connected to each other, i.e., to acquire a mapping of the topology.
- It is known to attempt to map and then monitor the topology of networks using various systems and methods and one known method is to install a software agent on each computer in the network. Each agent then searches the file system of the computer it is hosted on to determine what software is running on it. Based on what software is running it attempts to deduce whether it is a client (because it has found software to be used by the end user), a server (by having hosting software), or a firewall, etc. Since applications and software that may be loaded on the computer come in many different forms which change frequently, having an agent that can successfully identify all relevant software is difficult, and such agents must constantly be updated to accommodate new software.
- Another approach is to attempt to establish data paths by using software such as ‘trace route’. Trace route is a computer networking tool that is used to determine the route taken by packets across an IP network. Trace route and similar programs work by sending successive batch of packets over the network and calculating the route from this. Trace route relies on ICMP (Internet Control Message Protocol). A number of problems are associated with this approach, such as the problem that it relies on new data being sent through the system, thereby changing the traffic flowing. This in itself may not be a problem where there is sufficient bandwidth, but due to security concerns it is relatively common for firewalls to identify such foreign packets and to stop them from proceeding any further into the network.
- One object of the present invention is to provide a method of staging a move group of applications of a network. The method includes the step of developing a reference base of applications via monitoring traffic flow between devices of the network on which applications are executed or accessing information about such applications. The method further includes the step of classifying each such selected application as a member of one of the classification sub-sets with regard to applications of the reference application base. Additionally, the method includes the step of accessing information about the classification sub-sets of those respective applications executed on each of a target group of devices to thereby form an application classification glossary associated with the device, wherein, within the application glossary associated with each device, each application belonging to a respective classification sub-set is grouped together with all applications that both belong to that same classification sub-set and are hosted on the device. The method additionally further includes the step of denominating a move group of applications by: (a) deeming that all respective applications sharing a common membership in a respective classification sub-set are to be considered as a move group or (b) determining that certain applications commonly classed in a respective classification sub-set are also additionally members of a class of applications sharing a common property and deeming that such certain applications are to be considered as a move group.
- Another object of the present invention is to provide computer readable medium containing computer executable instructions which when executed on one or more computers of a network causes the respective computer or computers to perform the method of staging a move group of applications of a network.
- A further object of the present invention is to provide a computer based apparatus operable to provide an evaluation of certain characteristics of a network, the apparatus comprising a processor, a memory, and an input element operable to be in communication with a plurality of computers of a network that is to be evaluated and the computer based apparatus being operable to perform the method of staging a move group of applications of a network.
- Other aspects, embodiments and advantages of the present invention will become apparent from the following detailed description which, taken in conjunction with the accompanying drawings, illustrate the principles of the invention by way of example.
- The foregoing and other objects, features and advantages of the present invention, as well as the invention itself, will be more fully understood from the following description of various embodiments when read together with the accompanying drawings, in which:
-
FIG. 1 is a schematic view of a portion of a network; -
FIG. 2 is an enlarged schematic view of a software program executable to implement the method of the present invention; -
FIG. 3 is a schematic view of an exemplary implementation of the move group identifier method of the present invention; and -
FIG. 4 is a graphical representation of an exemplary display format for displaying a list of move group choices to a user. - Reference is now had to
FIG. 1 which is a schematic view of a portion of a network 700. The network 700 comprises a plurality of devices, some in the form of computers, and the respective computers that are schematically shown inFIG. 1 form a part of the network 700 and are operatively connected to other computers and devices of the network (not shown). In this example five 702, 704, 708, 708 and 710 are illustrated. Each device may be a web server, a terminal connected solely to a web server, or other known device typically comprised in a network. Solely for the sake of illustration, the fivedevices 702, 704, 708, 708 and 710 are similarly equipped and, in this regard, as is shown with respect to thedevices device 710, each of the devices comprises a processor 712, a par of 714, 716, and anetwork interfaces software program 720 executable to implement the move group identifier method of the present invention with respect to the network 700, - The pair of
714, 716 are connected to an Ethernetnetwork interfaces connection 750 and a Wi-Fi connection 752, respectively. The Ethernet and Wi-Fi connections therefore enable thedevice 710 shown to connect to one or more of the 702, 704, 706, and 705 as well as other devices in the network. A remote processor which may be hosted on another computer of the network 700, for example, or which may be a VM processor, may be operatively connected to one or more of theother devices devices 702. 704, 706, 708 and 710. This remote processor (not shown) may partially or fully execute thesoftware program 720 hosted on thedevice 710. - The
software program 720 includes four 722, 724, 726, and 728 and amodules database 730. As seen in more detail inFIG. 2 , which is an enlarged schematic view of thesoftware program 720, themodule 722 provides a discovery configuration module capability, themodule 724 provides a discovery conductor module capability, themodule 726 provides a communication interface capability, and the module 725 provides a process management capability. - The
software program 720 is executed to configure the five 702, 704, 706, 708 and 710 to enable discovery of network traffic transmitted or received via their connecteddevices 714, 716. The discovery of network traffic is preferably accomplished via a collection of workload data, applications, services, performances as an initial step. This collection effort can make reference to data hosted on a memory within a device, wherein such memory can mean random access memory or any form of data storage device such as a hard drive or flash memory. The data can be comprised in a database that is an in-memory or file supported relational database system.interfaces - The data an be already organized in a form, for example, such as a traffic flow table or a network interface table. Such a traffic flow table can include IP addresses and port specific network traffic information. The network interface table may include vendor descriptions, interface names, MAC (Media Access Control or Ethernet hardware addresses), and media types. The
communication interface module 726 configures thedevice 710 to connect to the remote processor to upload reports. The interface of thiscommunication interface module 726 can be a web service or be provided by e-mailing a file report to the remote processor which will typically be the main server. Reference is now had toFIG. 2 and toFIG. 3 , which is a schematic view of an exemplary implementation of the move group identifier method of the present invention. As seen inFIG. 3 the move group identifier method of the present invention, hereinafter referred to as the movegroup identifier method 810, comprises several steps that, when performed with respect to a network, provide a user with a move group of applications hosted on the network. The term “move group of applications” is directed to the concept of providing a fully automatic approach, or at least with an approach with some automated aspects, for identifying a suggested or desired grouping of applications currently hosted on a network to a user, whereupon the user can more easily consider or plan a migration of at least some of the network's tasks to a different network such as, for example, a migration of network tasks to an external network in the form of a private or public cloud network. - The exemplary implementation of the move
group identifier method 810 shown inFIG. 3 is conducted on the devices 702-710 of the portion of the network 700 shown inFIG. 1 and the implementation of the movegroup identifier method 810 is managed by thesoftware program 720. The movegroup identifier method 810 includes several steps that are automatically performed once an initiation command is provided by a user and the method ultimately yields a suggested or desired grouping of applications currently hosted on the network 700 which can be displayed, for example, in a on-screen report to the user. Moreover, the movegroup identifier method 810 includes the flexibility that a user can command a re-execution of the method with a change in the filters or a change in a process variable, so that a different suggested or desired grouping of applications currently hosted on the network 700 will be displayed to the user. It can be understood that this manner of iteratively changing the inputs that are processed is the movecroup identifier method 810 beneficially provides a user with a range of different perspectives in considering network migration scenarios. For example, a user can customize implementation of the movegroup identifier method 810 to provide information about a group of applications hosted at a common location or to provide information about a group of applications that handle a common task (i.e., antivirus applications), whereupon the user can strategically plan a migration to avoid excess redundancies of such applications. - The move
group identifier method 810 includes a referencebase development step 810 for developing a reference base of applications. This reference base of applications is developed via monitoring of the traffic flow between the devices of the network on which applications are executed or accessing information about such applications. Accordingly, thediscovery configuration module 722 of thesoftware program 720 configures thediscovery conductor module 724 to monitor traffic flow between the devices 702-710 (i.e., message traffic transmitted or received via applications hosted on these devices) as well as traffic flow between these devices and other devices of the network 700. Additionally or alternatively, thediscovery configuration module 722 of thesoftware program 720 configures thediscovery conductor module 724 to access information about these applications is reference, for example, to network statistics stored on a memory capacity that is part of the network 700. This referencebase development step 810 results in the creation of a reference base of applications that is stored on thememory 730 of the network 700. The applications in the reference base of applications are representatively shown as applications APL-AA, APL-BB, APL-CC, APL-DD, and APL-EE. - The move
group identifier method 810 also includes aclassification step 820 that is performed by theprocess director module 728 of thesoftware program 720. Theprocess director module 728 accesses thememory 730 and, with regard to applications of the reference application base, theprocess director module 728 classifies each such selected application as a member of one of a collection of classification sub-sets. A classification sub-set is to be understood as set of applications sharing a common property such as, for example, the common property that all of the applications are Windows-based applications or Linux-based applications. Theprocess director module 728 is configured to automatically allocate each application of the reference application base to a respective classification sub-set based upon pre-set criteria such as, for example, a pre-set criteria to commonly assign to a single classification sub-set all those applications having a Windows-based operating system (as noted during the reference base development step 810). Additionally or alternatively, the allocations made by theprocess director module 728 can be supplemented or adjusted via the intervention of a classification oversight feature. For example, theprocess director module 728 can be supplemented or adjusted via the intervention of a classification oversight feature wherein the user or an external entity that is implementing the movegroup identifier method 810 can adjust or override the allocation choices suggested by theprocess director module 728. - The classification sub-sets are schematically shown in
FIG. 3 asclassification sub-sets 822A-E. Thus, it can be seen that the applications in the reference base of applications, representatively shown as applications APL-AA, APL-BB, APL-CC, APL-DD, and APL-EE, are each a member of a respective one of theclassification sub-sets 822A-E. - The move
group identifier method 810 further includes aninformation accessing step 830 that is performed by theprocess director module 728 of thesoftware program 720,. Theprocess director module 728 accesses thememory 730 and, with regard to each individual device of a target group of devices of the network—namely, the five 702, 704, 706, 708 and 710 of the network 700, thedevices process director module 728 accesses information about the classification sub-sets of those respective applications executed on the respective device to thereby form an application glossary associated with that respective device. Accordingly, theprocess director module 728 of thesoftware program 720 accesses information about the devices 702-710 and forms the corresponding set of application glossaries 902-910, schematically shown as residing in thestorage 730. Within the application glossary associated with each device, each application belonging to a respective classification sub-set is grouped together with all applications that both belong to that same classification sub-set and are hosted on the device. Thus, for example, theapplication classification glossary 902, which is associated with thedevice 702, may list several applications all belonging to the respective classification sub-set comprised of anti-virus applications and may additionally list an application belonging to the respective classification sub-set comprised of Active Directory applications. - The move
group identifier method 810 additionally includes a denominating step 340 that is performed by theprocess director module 728 of thesoftware program 720. Theprocess director module 728 accesses thememory 730 and denominates a move group of applications. The denominated move group of applications is a suggested or desired grouping of applications currently hosted on the network and this information is communicated to the user, whereupon the user can more easily consider or plan a migration of at least some of the network's tasks to a different network such as, for example, a migration of network tasks to an external network in the form of a private or public cloud network. - In accordance with the denominating
step 840, theprocess director module 728 denominates a move group of applications by: (a) deeming that all respective applications sharing a common membership in a respective classification sub-set are to be considered as a move group or (b) determining that certain applications commonly classed in a respective classification: sub-set are-also additionally members of a class of applications sharing a common property and deeming that such certain applications are to be considered as a move group. Thus, for example, if theprocess director module 728 is directed to denominate a move group of applications under option (a) of the denominatingstep 840 by deeming that all respective applications sharing a common membership in a respective classification sub-set are to be considered as a move group, theprocess director module 728 can access thememory 730 and denominate a move group of applications that is comprised of all of the applications hosted on the. five 702, 704, 706, 708 and 710 of the network 700—this information is namely the information listed in the application glossaries 902-910.devices - Additionally, or alternatively, a denomination of a move group of applications made by the
process director module 728 can be supplemented or adjusted via the intervention of a classification oversight feature. For example, theprocess director module 728 can be supplemented or adjusted via the intervention of a classification oversight feature wherein the user or an external entity that is implementing the movegroup identifier method 810 can adjust or override the move group choices suggested by theprocess director module 728. - On the other hand, if the
process director module 728 is directed to denominate a move group of applications under option (b) of the denominatingstep 840 by determining that certain applications commonly classed in a respective classification sub-set are also additionally members of a class of applications sharing a common property and deeming that such certain applications are to be considered as a move group, theprocess director module 728 can access thememory 730 and identify such applications that satisfy both criteria. Reference is had toFIG. 4 , which is a graphical representation of an exemplary display format for displaying a list of move group choices to a user. Adisplay screen image 610 shows a total of three rows sub-headed “Sharepoint2”, “Amsterdam”, and “Lync” and each sub-headed row comprises one or more listings of applications, with information about each application being provided under columns denominated as Name, IP Address, Device Type, Operating System, Number of Hard Drives, and Number of Network interfaces. With particular reference to the manner in which the information in the row sub-headed “Amsterdam” has been yielded as a result of execution of the denominatingstep 840, it can be seen that theprocess director module 728 has been tasked to identify all those applications that are commonly classed in the respective classification sub-set that includes all applications that are Linux-based applications (see, e.g., the information listed in the row sub-headed “Amsterdam” under the column “Operating System”) and, additionally, theprocess director module 728 has been tasked to identify all those applications are also additionally members of a class of applications sharing a common property—namely, identify all those applications are also additionally members of the class of applications that are hosted on devices located in Amsterdam. - While the present invention has been depicted, described, and is defined by reference to particular embodiments of the invention, such references do not imply a limitation on the invention, and no such limitation is to be inferred. The invention is capable of considerable modification, alteration, and equivalents in form and function, as will occur to those ordinarily skilled in the pertinent arts. The depicted and described embodiments are examples only, and are not exhaustive of the scope of the invention.
- Additionally, the above-discussed embodiments include software modules that perform certain tasks. The software modules discussed herein may include script, batch, or other executable files. The software modules may be stored on a machine-readable or computer-readable storage medium such as a disk drive. Storage devices used for storing software modules in accordance with an embodiment of the invention may be magnetic floppy disks, hard disks, or optical discs such as CD-ROMs or DVDs, for example. A storage device used for storing firmware or hardware modules in accordance with an embodiment of the invention may also include a semiconductor-based memory, which may be permanently, removably or remotely coupled to a microprocessor/memory system. Thus, the modules may be stored within a computer system memory to configure the computer system to perform the functions of the module. Other new and various types of computer-readable storage media may be used to store the modules discussed herein. Additionally, those skilled in the art will recognize that the separation of functionality into modules is for illustrative purposes. Alternative embodiments may merge the functionality of multiple modules into a single module or may impose an alternate decomposition of functionality of modules. For example, a software module for calling sub-modules may be decomposed so that each sub-module performs its function and passes control directly to another sub-module.
Claims (6)
1. A method of staging a move group of applications of a network comprising:
developing a reference base of applications via monitoring traffic flow between devices of the network on which applications are executed or accessing information about such applications;
with regard to applications of the reference application base classifying each such selected application as a member of one of the classification sub-sets;
with regard to each device of a target group of devices of the network, accessing information about the classification sub-sets of those respective applications executed on the device to thereby form an application classification glossary associated with the device, wherein, within the application glossary associated with each device, each application belonging to a respect to classification sub-set is grouped together with all applications that both belong to that same classification sub-set and are hosted on the device; and
denominating a move group of applications by: (a) deeming that all respective applications sharing a common membership in a respective classification sub-set are to be considered as a move group or (b) determining that certain applications commonly classed in a respective classification sub-set are also additionally members of a class of applications sharing a common property and deeming that such certain applications are to be considered as a move group.
2. The method according to claim 1 , wherein denominating a move group of applications by determining that certain applications commonly classed in a respective classification sub-set also additionally are members of a class of applications sharing a common property includes determining that certain applications commonly classed in a respective classification sub-set are also additionally members of a class of applications sharing the common property of being in a same location class.
3. The method according to claim 1 , wherein the class of classification sub-sets includes at least one of: a classification sub-set of active directory applications, a classification sub-set of anti-virus applications, or a classification sub-set of back up applications.
4. The method according to claim 1 , wherein developing a reference base of applications includes obtaining network statistics such as, for example, collecting processor identifications and/or processor names.
5. A computer readable medium containing computer executable instructions which when executed on one or more computers of a network causes the respective computer or computers to perform the method of staging a move group of applications of a network, comprising:
developing a reference base of applications via monitoring traffic flow between devices of the network on which applications are executed or accessing information about such applications;
with regard to applications of the reference application base, classifying each such selected application as a member of one of the classification sub-sets, wherein the classification sub-set is one of a class of classification sub-sets each relating to whether the degree of customization of an application;
with regard to applications of the reference application base, classifying each such selected application as a member of one of the classification sub-sets;
with regard to each device of a target group of devices of the network, accessing information about the classification sub-sets of those respective applications executed on the device to thereby form an application classification glossary associated with the device, wherein, within the application classification glossary associated with each device, each application belonging to a respective classification sub-set is grouped together with all applications belonging to that same classification sub-set; and
denominating a move group of applications by: (a) deeming that all respective applications snaring a common membership in a respective classification sub-set are to be considered as a move group or (b) determining that certain applications commonly classed in a respective classification sub-set are also additionally members of a class of applications sharing a common property.
6. A computer based apparatus operable to provide an evaluation of certain characteristics of a network, the apparatus comprising:
a processor;
a memory; and
an input element operable to be in communication with a plurality of computers of a network that is to be evaluated, the computer based apparatus operable to:
develop a reference base of applications via monitoring traffic flow between devices of the network on which applications are executed or accessing information about such applications;
with regard to applications of the reference application base, classify each such selected application as a member of one of the classification sub-sets, wherein the classification sub-set is one of a class of classification sub-sets each relating to whether the degree of customization of an application;
with regard to applications of the reference application base, classify each such selected application as a member of one of the classification sub-sets;
with regard to each device of a target group of devices of the network, access information about the classification sub-sets of those respective applications executed on the device to thereby form an application classification glossary associated with the device, wherein, within the application classification glossary associated with each device, each application belonging to a respective classification sub-set is grouped together with all applications belonging to that same classification sub-set; and
indicate a move group of applications by: (a) communicating information that permits a user to identify all respective applications sharing a common membership in a respective classification sub-set as a move group or (b) determining that certain applications commonly classed in a respective classification sub-set and communicating information that indicates that such certain applications are also additionally members of a class of applications sharing a common property.
Priority Applications (8)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US14/846,791 US20170070562A1 (en) | 2015-09-06 | 2015-09-06 | Method for denominating move groups of applications |
| US15/223,864 US10193824B2 (en) | 2015-09-06 | 2016-07-29 | Systems and methods for intelligent application grouping |
| US15/882,708 US20180176287A1 (en) | 2015-09-06 | 2018-01-29 | Method for denominating move groups of applications |
| US16/167,135 US10673934B2 (en) | 2015-09-06 | 2018-10-22 | Method for denominating move groups of applications |
| US16/239,761 US10680973B2 (en) | 2015-09-06 | 2019-01-04 | Systems and methods for intelligent application grouping |
| US16/889,545 US11240174B2 (en) | 2015-09-06 | 2020-06-01 | Systems and methods for intelligent application grouping |
| US17/586,051 US11743206B2 (en) | 2015-09-06 | 2022-01-27 | Systems and methods for intelligent application grouping |
| US18/456,140 US12363019B2 (en) | 2015-09-06 | 2023-08-25 | Systems and methods for intelligent application grouping |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US14/846,791 US20170070562A1 (en) | 2015-09-06 | 2015-09-06 | Method for denominating move groups of applications |
Related Child Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US15/223,864 Continuation-In-Part US10193824B2 (en) | 2015-09-06 | 2016-07-29 | Systems and methods for intelligent application grouping |
| US15/882,708 Continuation US20180176287A1 (en) | 2015-09-06 | 2018-01-29 | Method for denominating move groups of applications |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| US20170070562A1 true US20170070562A1 (en) | 2017-03-09 |
Family
ID=58190674
Family Applications (3)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US14/846,791 Abandoned US20170070562A1 (en) | 2015-09-06 | 2015-09-06 | Method for denominating move groups of applications |
| US15/882,708 Abandoned US20180176287A1 (en) | 2015-09-06 | 2018-01-29 | Method for denominating move groups of applications |
| US16/167,135 Active US10673934B2 (en) | 2015-09-06 | 2018-10-22 | Method for denominating move groups of applications |
Family Applications After (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US15/882,708 Abandoned US20180176287A1 (en) | 2015-09-06 | 2018-01-29 | Method for denominating move groups of applications |
| US16/167,135 Active US10673934B2 (en) | 2015-09-06 | 2018-10-22 | Method for denominating move groups of applications |
Country Status (1)
| Country | Link |
|---|---|
| US (3) | US20170070562A1 (en) |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20070061495A1 (en) * | 2005-08-05 | 2007-03-15 | Microsoft Corporation | Initiating software responses based on a hardware action |
| US20140172782A1 (en) * | 2012-12-19 | 2014-06-19 | Accenture Global Services Limited | Enterprise migration planning information repository |
| US20150304880A1 (en) * | 2014-04-21 | 2015-10-22 | Verizon Patent And Licensing Inc. | Traffic aggregated at end device |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6044205A (en) | 1996-02-29 | 2000-03-28 | Intermind Corporation | Communications system for transferring information between memories according to processes transferred with the information |
| US8005087B2 (en) | 2008-09-16 | 2011-08-23 | Alcatel Lucent | Application-level processing for default LTE bearer |
| US7925874B1 (en) | 2010-05-18 | 2011-04-12 | Kaspersky Lab Zao | Adaptive configuration of conflicting applications |
| US8656052B2 (en) | 2011-05-16 | 2014-02-18 | Cox Communications, Inc. | Systems and methods of mapped network address translation |
| US9392010B2 (en) | 2011-11-07 | 2016-07-12 | Netflow Logic Corporation | Streaming method and system for processing network metadata |
| US20140068747A1 (en) | 2012-08-31 | 2014-03-06 | International Business Machines Corporation | Automatic Completeness Checks of Network Device Infrastructure Configurations During Enterprise Information Technology Transformation |
| US9569274B2 (en) * | 2012-10-16 | 2017-02-14 | Microsoft Technology Licensing, Llc | Distributed application optimization using service groups |
| US9231833B1 (en) | 2013-12-30 | 2016-01-05 | Symantec Corporation | Detecting deviation of data center connectivity by conditional sub-graph matching |
| SG11201700547WA (en) | 2014-07-24 | 2017-02-27 | Ab Initio Technology Llc | Data lineage summarization |
| US10498652B2 (en) | 2015-04-13 | 2019-12-03 | Nicira, Inc. | Method and system of application-aware routing with crowdsourcing |
| US10193824B2 (en) | 2015-09-06 | 2019-01-29 | RISC Networks, LLC | Systems and methods for intelligent application grouping |
-
2015
- 2015-09-06 US US14/846,791 patent/US20170070562A1/en not_active Abandoned
-
2018
- 2018-01-29 US US15/882,708 patent/US20180176287A1/en not_active Abandoned
- 2018-10-22 US US16/167,135 patent/US10673934B2/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20070061495A1 (en) * | 2005-08-05 | 2007-03-15 | Microsoft Corporation | Initiating software responses based on a hardware action |
| US20140172782A1 (en) * | 2012-12-19 | 2014-06-19 | Accenture Global Services Limited | Enterprise migration planning information repository |
| US20150304880A1 (en) * | 2014-04-21 | 2015-10-22 | Verizon Patent And Licensing Inc. | Traffic aggregated at end device |
Also Published As
| Publication number | Publication date |
|---|---|
| US20190058759A1 (en) | 2019-02-21 |
| US20180176287A1 (en) | 2018-06-21 |
| US10673934B2 (en) | 2020-06-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11700237B2 (en) | Intent-based policy generation for virtual networks | |
| US11658890B1 (en) | System and method for deploying a distributed cloud management system configured for generating interactive user interfaces detailing link latencies | |
| EP3881495B1 (en) | Algorithmic problem identification and resolution in fabric networks by software defined operations, administration, and maintenance | |
| US11336531B2 (en) | Discovery and management of devices | |
| US10931774B2 (en) | Discovery and service mapping of application programming interface proxies | |
| US11100199B2 (en) | Automatically detecting misuse of licensed software | |
| EP3661166B1 (en) | Splitting network discovery payload based on degree of relationships between nodes | |
| KR20220024758A (en) | Discovery and mapping of cloud-based authentication, authorization, and user management services | |
| US11489745B2 (en) | Methods, systems and computer readable media for providing a declarative network monitoring environment | |
| JP2017534109A (en) | Topology-based management of second day operations | |
| KR20220057631A (en) | Codeless specification of software-as-a-service integrations | |
| CN113867885A (en) | Method, computing system, and computer-readable medium for application flow monitoring | |
| US10623474B2 (en) | Topology graph of a network infrastructure and selected services status on selected hubs and nodes | |
| Tudosi et al. | Design and Implementation of a Distributed Firewall Management System for Improved Security | |
| US20240212019A1 (en) | Automated compatibility assessment and migration asset shape generation | |
| US10673934B2 (en) | Method for denominating move groups of applications | |
| US20240154865A1 (en) | Server handling connections between cloud-based network management system and managed datacenters | |
| Caban | Architecting and Operating OpenShift Clusters: OpenShift for Infrastructure and Operations Teams | |
| US20240152375A1 (en) | Configuration of load balancer for connection servers between network management system and managed datacenters | |
| EP4407486A1 (en) | Translation of api requests for connection between network management system and managed datacenters | |
| EP4407487A1 (en) | Server handling connections between cloud-based network managment system and managed datacenters | |
| EP4407484A1 (en) | Deployment of network management services in public cloud | |
| EP4407488A1 (en) | Network management services managing heterogeneous groups of datacenters | |
| EP4407489A1 (en) | Global policy configuration for network management service operating in public cloud | |
| Keeriyattil | NSX Log Insight and Network Insight |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |