Abstract:
There is disclosed a network communication system that includes data sources and of switches. Each of the data sources and switches is interconnected by a packet-switched network, and is synchronized to a common clock. The system also includes a network controller that maintains records of network characteristics including a transmission delay for each of the data sources and switches, and a transmission delay for links in the packet-switched network. The network controller processes the network characteristics to generate, for each of a plurality of packets of a given type of traffic: a path from a particular data source, and through at least one particular switch, and a schedule of departure times at each of the particular data source and the at least one particular switch. The path and the schedule are optimized to meet jitter requirements for the given type of traffic.
Abstract:
A data traffic scheduling method that includes selecting, using a network controller, plurality of flows that traverses a network node, generating an augmented graph based on a flow rate of the plurality of flows and link capacities of the network node, computing a flow schedule for the flow using the augmented graph to minimize delay or delay variance of the flows, and outputting the flow schedule. A data traffic scheduling method that includes obtaining, using a network controller, a network topology for a network, generating an augmented graph based on the network topology, converting the augmented graph to a mixed-integer linear program, scheduling a flow in the network using the mixed-integer linear program to minimize delay or delay variance of the flow, and outputting a flow schedule.
Abstract:
The method for forwarding a data packet in a network generally has the steps of: forming at least two transit data packets including replicating at least payload data, sequence data and destination data of the data packet; and forwarding the at least two transit data packets along different network paths. The different network paths can lead to an egress node based on the destination data. At the egress node, the received data packets can be compared to stored data to determine whether the transit data packets having the same sequence data have both been received. The received data packets can then be transmitted to the data destination only when it is determined that they are the first one of the pair of transit data packets to be received.
Abstract:
A data traffic scheduling method that includes selecting, using a network controller, plurality of flows that traverses a network node, generating an augmented graph based on a flow rate of the plurality of flows and link capacities of the network node, computing a flow schedule for the flow using the augmented graph to minimize delay or delay variance of the flows, and outputting the flow schedule. A data traffic scheduling method that includes obtaining, using a network controller, a network topology for a network, generating an augmented graph based on the network topology, converting the augmented graph to a mixed-integer linear program, scheduling a flow in the network using the mixed-integer linear program to minimize delay or delay variance of the flow, and outputting a flow schedule.
Abstract:
The method for forwarding a data packet in a network generally has the steps of: forming at least two transit data packets including replicating at least payload data, sequence data and destination data of the data packet; and forwarding the at least two transit data packets along different network paths. The different network paths can lead to an egress node based on the destination data. At the egress node, the received data packets can be compared to stored data to determine whether the transit data packets having the same sequence data have both been received. The received data packets can then be transmitted to the data destination only when it is determined that they are the first one of the pair of transit data packets to be received.