Abstract:
A traffic engineering process seeks to optimize network utilization and creating paths in the network such that the network is used efficiently. The exemplary embodiments seek to maintain fairness across allocation of flows while honoring constraints on the number of paths used per flow and the granularity of splits allowed. Exemplary embodiments provide a solution in a speedy manner and get close to optimal solutions for allocation of the network traffic.
Abstract:
Systems and methods are described herein for validating operation of a centrally managed network. A central controller is configured to manage a network, and an emulator configured to emulate one or more nodes in the network is connected to the central controller. The emulator determines a state value for one or more nodes in the network, and the state value represents whether the respective node is in error. The emulator receives a first plurality of policies including instructions for the nodes in the network, and whether the policies are consistent with one another is identified.
Abstract:
Systems and methods for achieving high utilization of a network link are provided. A first communication protocol can be selected for transmitting network flows of a first type. A first quality of service can be assigned to network flows of the first type. A second communication protocol can be selected for transmitting network flows of a second type. A second quality of service, lower than the first quality of service, can be assigned to network flows of the second type. A first percentage of available bandwidth can be allocated to the network flows of both the first and second types. The remaining bandwidth, plus a second percentage of available bandwidth, can be allocated to the network flows of the second type, such that the total allocated bandwidth exceeds the available bandwidth of the network link.
Abstract:
Exemplary traffic engineering solutions are described herein. According to exemplary embodiments, multiple tiered thresholds representing allocatable capacities of links in the network may be provided. The tiered thresholds may effectively limit the amount of data that a traffic engineering system is permitted to allocate on links in the network. The traffic engineering system may attempt to allocate data flows in the network according to the smallest threshold. If the network cannot accommodate the data flows according to the smallest threshold, then the next-smallest threshold may be attempted. The thresholds may be sequentially tested in increasing order until the largest threshold is attempted. If a workable threshold is found, then the data flow may be allocated to a path in the network. If the traffic engineering system is unable to accommodate the data flows at any of the tiered thresholds, then the traffic engineering system may report a failure.
Abstract:
Systems and methods are disclosed herein for measuring the traffic flow on a link. The system includes a processor that is configured to generate aggregate egress data for multiple origin endpoints by aggregating amounts of egress traffic detected by servers processing the egress traffic at the origin endpoints. The processor is also configured to obtain the proportions of traffic flows that traverse each path between each endpoint pair, which includes an origin endpoint and a destination endpoint. Each path includes multiple network links such that a single network link may be shared across multiple paths. Finally, the processor computes an amount of traffic flow on a shared link based on the aggregate egress data and the obtained proportions.
Abstract:
Scalable systems and methods for delivering ordered data updates from a plurality of data sources are provided. A described method includes receiving, a data update from a data source and assigning a global sequence identifier and a previous global sequence identifier to the data update. The global sequence identifier indicates a position of the data update in a sequence of data updates received from a plurality of data sources. The previous global sequence identifier is a global sequence identifier assigned to a preceding data update received from the same data source. The method further includes determining whether the preceding data update from the same data source has been delivered by comparing the previous global sequence identifier with a low water mark. The low water mark is an upper bound on a range of global sequence identifiers associated with data updates that have been delivered.
Abstract:
The present invention pertains to the allocation of bandwidth on a global large scale network. Systems and methods are provided to base bandwidth allocation on the predicted bandwidth demands of the network users. In allocating bandwidth, each user is assigned a user weight value, and is to be allocated bandwidth in proportion to that value. In addition, the bandwidth allocation is enforced so as to ensure that bandwidth allocation policies are maintained.
Abstract:
A number of requests for an alternative network location are identified, where the requests for the alternative network location are generated after failure of one or more previous requests to reach a first, previous network location as a result of a network brownout. It is determined if the number of requests for the alternative network location exceed a threshold value for a period of time, and if so, an alarm is generated.