Patents by Inventor David M. Koster

David M. Koster has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 10740457
    Abstract: In preventing malicious operator placement in a streaming application, a stream computing management system receives a submission of an operator graph for the streaming application. A scheduler of the stream computing management system places the operators across a plurality of computing nodes. A threat detector of the stream computing management system monitors placements of the operators during the submission of the operator graph and a runtime of the streaming application. The threat detector further monitors runtime activities of the operators of the streaming application. The threat detector compares the runtime activities of the operators of the streaming application with stored activities patterns. The threat detector determines whether any anomalies identified based on the comparing exceeds a risk tolerance threshold. In response to an anomaly exceeding the risk tolerance threshold, the scheduler changes a placement of at least one of the operators.
    Type: Grant
    Filed: June 20, 2018
    Date of Patent: August 11, 2020
    Assignee: International Business Machines Corporation
    Inventors: Jason A. Nikolai, John M. Santosuosso, David M. Koster, Alexander Cook
  • Publication number: 20200177516
    Abstract: A method comprises establishing a packet size limit. The packet size limit may govern the maximum permitted size of packets that are transmitted between a first node and a second node of a network. The method also comprises monitoring a buffer of the second node in the network. The method also comprises determining, based on the monitoring, that the buffer of the second node is filled above an upper capacity threshold. The method also comprises increasing, based on the determining, the first packet size limit.
    Type: Application
    Filed: November 30, 2018
    Publication date: June 4, 2020
    Inventors: Andrew Thorstensen, Adam D. Reznechek, David M. Koster, Jason A. Nikolai
  • Patent number: 10671432
    Abstract: A method, system and computer program product for optimizing memory management. An analytics engine receives from a computing device an execution sequence that led to the detected execution of an operation to create a new process, which involves copying of the parent process. The analytics engine searches profiles stored in a repository for patterns of execution sequences that match the received execution sequence. Upon identifying a stored pattern with an execution sequence within a threshold degree of similarity as the received execution sequence, the analytics engine instructs the computing device to handle the operation to create the new process in a certain manner based on the contents of the profile containing the matching stored pattern. For example, the computing device may be instructed to preemptively fail the operation in response to the profile indicating that the execution of the operation resulted in an out of memory error.
    Type: Grant
    Filed: May 8, 2018
    Date of Patent: June 2, 2020
    Assignee: International Business Machines Corporation
    Inventors: Daniel M. Hursh, Jonathan L. Kaus, David M. Koster, Jason A. Nikolai
  • Publication number: 20200153709
    Abstract: System resource usage by a streaming application processing workloads can be monitored, the streaming application comprising at least one parallelizable operator, at least a first instance of the parallelizable operator being initialized to execute. Based on the monitoring, at least one performance metric for the streaming application in processing the workloads can be determined. Based on the at least one performance metric, whether hosting of the streaming application is, or is near to, violating at least one criteria can be determined. If so, at least one additional instance of at least one parallelizable operator of the streaming application that is currently executing can be initialized. Responsive to initializing the at least one additional instance of at least one of the parallelizable operators, a portion of the workloads can be directed to the at least one additional instance of at least one of the parallelizable operators.
    Type: Application
    Filed: January 20, 2020
    Publication date: May 14, 2020
    Inventors: Alexander Cook, David M. Koster, Jason A. Nikolai, John M. Santosuosso
  • Patent number: 10652396
    Abstract: A stream server manages connections by multiple clients. The stream server receives, sends and manages streams for each client. The stream server analyzes incoming streams and maintains a database of device signatures and a database of user profiles based on the analyzed data. The stream server receives a stream from a client, analyzes the stream to identify an applicable device signature, user profile, or both, and modifies the stream. Modification of the stream may include filtering noise, placing the user in receive-only mode, ending a session for a user, adjusting metadata, etc. In addition, modification of the stream may vary based on the role or authorization of the user, or based on commands from one or more of the users.
    Type: Grant
    Filed: September 27, 2018
    Date of Patent: May 12, 2020
    Assignee: International Business Machines Corporation
    Inventors: David M. Koster, Andrew Thorstensen, Adam D. Reznechek, Jason A. Nikolai
  • Patent number: 10649752
    Abstract: Sharing data among computing systems can include receiving, using a processor, a data transfer event indicating a transfer of a data file from a source system to a target system, querying, using the processor, the source system for an operating system executed by the source system and a file type of the data file, and querying, using the processor, the target system for an operating system executed by the target system. A target application can be determined using the processor. The target application is adapted for execution on the operating system executed by the target system and is adapted for operating on the file type. Installation of the target application on the target system can be initiated. Further, transfer of the data file from the source system to the target system can be initiated using the processor.
    Type: Grant
    Filed: September 28, 2016
    Date of Patent: May 12, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Alexander Cook, David M. Koster, Jason A. Nikolai, Joseph C. Schmidt
  • Patent number: 10628287
    Abstract: Provided are techniques for identification and handling of nested breakpoints during debug session. In a visualization, program code having functions, nested breakpoints, and an indication of whether each of the breakpoints is likely to be reached is displayed. In response to receiving input that selects a function from the functions, a call graph is displayed for the functions in the program code to enable viewing where each of the nested breakpoints is located in the program code with reference to the functions. An option to disable a nested breakpoint of the nested breakpoints for a current execution of the program code is provided. In response to receiving input that selects the option, the nested breakpoint is disabled.
    Type: Grant
    Filed: July 24, 2018
    Date of Patent: April 21, 2020
    Assignee: International Business Machines Corporation
    Inventors: Alexander Cook, David M. Koster, Alexander J. Pogue, John M. Santosuosso
  • Publication number: 20200104527
    Abstract: Provided are techniques for operator isolation based on data security requirements. At a cloud node, a graph is received that includes ingest portions of data and operators. For each of the operators, it is determined whether the operator processes protected data. In response to determining that the operator is tagged with an indication that the operator processes protected data, the operator is forwarded to a tenant secure node for processing. In response to determining that the operator is not tagged with an indication that the operator processes protected data, the operator is forwarded to a tenant general node for processing. Then, while the tenant general node is processing the operator, in response to determining that the operator is processing protected data a tag is associated with the operator to indicate that the operator processes protected data and the operator is forwarded to the tenant secure node for processing.
    Type: Application
    Filed: September 27, 2018
    Publication date: April 2, 2020
    Inventors: David M. Koster, Jason A. Nikolai, John M. Santosuosso, Michael J. Branson
  • Publication number: 20200106885
    Abstract: A stream server manages connections by multiple clients. The stream server receives, sends and manages streams for each client. The stream server analyzes incoming streams and maintains a database of device signatures and a database of user profiles based on the analyzed data. The stream server receives a stream from a client, analyzes the stream to identify an applicable device signature, user profile, or both, and modifies the stream. Modification of the stream may include filtering noise, placing the user in receive-only mode, ending a session for a user, adjusting metadata, etc. In addition, modification of the stream may vary based on the role or authorization of the user, or based on commands from one or more of the users.
    Type: Application
    Filed: September 27, 2018
    Publication date: April 2, 2020
    Inventors: David M. Koster, Andrew Thorstensen, Adam D. Reznechek, Jason A. Nikolai
  • Patent number: 10601681
    Abstract: System resource usage by a streaming application processing workloads can be monitored. Based on the monitoring, at least one performance metric for the streaming application in processing the workloads can be determined. Based on the at least one performance metric, whether hosting of the streaming application is, or is near to, violating at least one criteria specified by a service level agreement for the streaming application can be determined. If so, at least one additional instance of at least one parallelizable operator of the streaming application that is currently executing can be initialized. Responsive to initializing the at least one additional instance of at least one of the parallelizable operators, a portion of the workloads can be directed to the at least one additional instance of at least one of the parallelizable operators.
    Type: Grant
    Filed: March 20, 2017
    Date of Patent: March 24, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Alexander Cook, David M. Koster, Jason A. Nikolai, John M. Santosuosso
  • Patent number: 10587649
    Abstract: A method, apparatus and program product utilize Domain Name Service (DNS) prefetching in a recursive DNS server, e.g., to mitigate Distributed Denial of Service (DDoS) attacks on a DNS service.
    Type: Grant
    Filed: November 27, 2017
    Date of Patent: March 10, 2020
    Assignee: International Business Machines Corporation
    Inventors: David M. Koster, Jason A. Nikolai, Adam D. Reznechek, Andrew T. Thorstensen
  • Patent number: 10587648
    Abstract: A method, apparatus and program product utilize Domain Name Service (DNS) prefetching in a recursive DNS server, e.g., to mitigate Distributed Denial of Service (DDoS) attacks on a DNS service.
    Type: Grant
    Filed: April 13, 2017
    Date of Patent: March 10, 2020
    Assignee: International Business Machines Corporation
    Inventors: David M. Koster, Jason A. Nikolai, Adam D. Reznechek, Andrew T. Thorstensen
  • Patent number: 10574585
    Abstract: Disclosed aspects relate to resource usage management in a stream computing environment that includes a set of hosts having a set of processing elements which has a set of stream operators. A first activity indicator may be detected for a first subset of the set of stream operators. A resource action for performance with respect to the first subset of the set of stream operators may be determined based on the first activity indicator. The resource action may be performed with respect to the first subset of the set of stream operators to benefit resource usage in the stream computing environment.
    Type: Grant
    Filed: January 7, 2017
    Date of Patent: February 25, 2020
    Assignee: International Business Machines Corporation
    Inventors: Alexander Cook, Cory J. Kleinheksel, David M. Koster, Jason A. Nikolai
  • Publication number: 20200053011
    Abstract: A computer-implemented method, in an example, may include calculating a time-to-live value for at least one packet based on a hop count between each of a plurality of processing element containers within an application streaming network; updating at least one processing element container output connection based on the calculated time-to-live value; and monitoring a streams resource metrics service for a change in a packet delivery rate.
    Type: Application
    Filed: October 16, 2019
    Publication date: February 13, 2020
    Inventors: Jason A. Nikolai, Andrew Thorstensen, David M. Koster, Aditi Rajagopal
  • Patent number: 10558697
    Abstract: A mechanism is provided for automated management of a set of media data using a set of social networking data. The set of social networking data related to a media event is collected. The set of social networking data related to the media event is correlated with the set of media data of the media event. Based on the set of social networking data, a determination is made of an inflection point of the media event. An inflection marker for the inflection point of the media event is then established with respect to the set of media data of the media event.
    Type: Grant
    Filed: February 21, 2017
    Date of Patent: February 11, 2020
    Assignee: International Business Machines Corporation
    Inventors: Alexander Cook, David M. Koster, Jason A. Nikolai, John M. Santosuosso
  • Patent number: 10554562
    Abstract: A computer-implemented method, in an example, may include calculating a time-to-live value for at least one packet based on a hop count between each of a plurality of processing element containers within an application streaming network; updating at least one processing element container output connection based on the calculated time-to-live value; and monitoring a streams resource metrics service for a change in a packet delivery rate.
    Type: Grant
    Filed: December 22, 2017
    Date of Patent: February 4, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason A. Nikolai, Andrew Thorstensen, David M. Koster, Aditi Rajagopal
  • Publication number: 20200021631
    Abstract: In using a virtual extensible local area network (VXLAN) for stream processing, a management system allocates resources for a streaming application based on an operator graph of the streaming application. The management system assigns the resources to a group of VXLAN segments based on the operator graph of the streaming application. A first processing element of the streaming application multicasts data on the group of VXLAN segments. A second processing element on a given VXLAN segment of the group of VXLAN segments receives the data. If the second processing element is an intended recipient of the data, then the second processing element processes the data. If the second processing element is not the intended recipient of the data, then the second processing element ignores the data.
    Type: Application
    Filed: July 10, 2018
    Publication date: January 16, 2020
    Inventors: David M. KOSTER, Warren Patrick ACKER, Schuman SHAO, Jason A. NIKOLAI
  • Publication number: 20200019504
    Abstract: A deployment manager deploys processing elements of a streaming application in a non-uniform memory access (NUMA) aware manner to reduce memory coherency overhead in a streaming application. The deployment manager is able to utilize information about an application's operators and the architecture of the NUMA nodes to place whole processing elements on a single NUMA node. Where the operators of a processing element would cross NUMA node boundaries, the deployment manager may consolidate the threads of a processing element to place an application's operators on a single NUMA node to increase efficiency of the system.
    Type: Application
    Filed: July 12, 2018
    Publication date: January 16, 2020
    Inventors: David M. Koster, John M. Santosuosso, Christopher R. Sabotta, Manuel Orozco
  • Publication number: 20200004682
    Abstract: Disclosed aspects relate to cache management in a stream computing environment that uses a set of many-core hardware processors to process a stream of tuples by a plurality of processing elements which operate on the set of many-core hardware processors. The stream of tuples to be processed by the plurality of processing elements which operate on the set of many-core hardware processors may be received. A tuple-processing hardware-route on the set of many-core hardware processors may be determined based on a cache factor associated with the set of many-core hardware processors. The stream of tuples may be routed based on the tuple-processing hardware-route on the set of many-core hardware processors. The stream of tuples may be processed by the plurality of processing elements which operate on the set of many-core hardware processors.
    Type: Application
    Filed: September 12, 2019
    Publication date: January 2, 2020
    Inventors: Alexander Cook, Cory J. Kleinheksel, David M. Koster, Jason A. Nikolai
  • Publication number: 20200004600
    Abstract: A computer system dynamically balances a workload of a distributed computing application at runtime. A distributed computing application is monitored at runtime for the occurrence of one or more conditions, wherein the distributed computing application comprises one or more nodes that include one or more processing elements, and wherein each processing element includes one or more operators. One or more adjustments to the distributed computing application are determined. The one or more adjustments to the distributed computing application are performed at runtime. Embodiments of the present invention further include a method and program product for configuring processing elements within a distributed computing system in substantially the same manner described above.
    Type: Application
    Filed: June 28, 2018
    Publication date: January 2, 2020
    Inventors: Warren P. Acker, David M. Koster, Jason A. Nikolai, Schuman Shao