Juniper Networks Patent Applications

PROCESSING PACKETS BY A NETWORK DEVICE

Granted: November 1, 2012
Application Number: 20120275459
A method and apparatus for performing a lookup in a switching device of a packet switched network where the lookup includes a plurality of distinct operations each of which returns a result that includes a pointer to a next operation in a sequence of operations for the lookup. The method includes determining a first lookup operation to be executed, executing the first lookup operation including returning a result and determining if the result includes a pointer to another lookup…

METHODS AND APPARATUS FOR FLOW-CONTROLLABLE MULTI-STAGED QUEUES

Granted: November 1, 2012
Application Number: 20120275307
In one embodiment, a method includes sending a first flow control signal to a first stage of transmit queues when a receive queue is in a congestion state. The method also includes sending a second flow control signal to a second stage of transmit queues different from the first stage of transmit queues when the receive queue is in the congestion state.

METHODS AND APPARATUS FOR DEFINING A FLOW CONTROL SIGNAL RELATED TO A TRANSMIT QUEUE

Granted: October 25, 2012
Application Number: 20120269065
In one embodiment, a processor-readable medium can store code representing instructions that when executed by a processor cause the processor to receive a value representing a congestion level of a receive queue and a value representing a state of a transmit queue. At least a portion of the transmit queue can be defined by a plurality of packets addressed to the receive queue. A rate value for the transmit queue can be defined based on the value representing the congestion level of the…

MULTICAST LOAD BALANCING

Granted: October 25, 2012
Application Number: 20120269197
A method may include receiving a packet; identifying the packet as a multicast packet for sending to a plurality of destination nodes; selecting a first forwarding table or a second forwarding table for sending the packet to each of the plurality of destination nodes, wherein the first forwarding table includes first port information associated with a first destination and second port information associated with a second destination, and wherein the second forwarding table includes third…

SYSTEMS AND METHODS FOR EFFICIENT MULTICAST HANDLING

Granted: October 18, 2012
Application Number: 20120263178
A network device constructs a notification corresponding to a received multicast data unit, where the notification includes administrative data associated with the multicast data unit that does not include a payload of the multicast data unit. The network device replicates the notification at at least three different processing elements at different locations in a processing path of the network device to produce multiple replicated data items and produces a copy of the multicast data…

AUTOMATED CREATION OF MULTIPLE PROVIDER SERVICES

Granted: October 18, 2012
Application Number: 20120265642
A method may include receiving, at a service server, a request for services from a requesting device. The service server may identify one or more service options responsive to the request and send a list of the identified service options to the requesting device. The service server may receive a selected service option from the requesting device. The service server may collect payment information for the selected service option from the requesting device and providing accounting…

SCALABLE PACKET PROCESSING SYSTEMS AND METHODS

Granted: October 18, 2012
Application Number: 20120266181
A data processing architecture includes multiple processors connected in series between a load balancer and reorder logic. The load balancer is configured to receive data and distribute the data across the processors. Appropriate ones of the processors are configured to process the data. The reorder logic is configured to receive the data processed by the processors, reorder the data, and output the reordered data.

DYNAMIC RESOURCE ALLOCATION

Granted: October 11, 2012
Application Number: 20120259977
A computer-implemented method includes detecting an actual workload representative of a pattern of access of a plurality of items of content; comparing the actual workload against a prescriptive workload to determine an occurrence of a substantial deviation from the prescriptive workload; and upon determining the occurrence of the substantial deviation, revising the prescriptive workload based at least in part on the actual workload. The plurality of items is stored on resources of a…

MEDIA FILE STORAGE FORMAT AND ADAPTIVE DELIVERY SYSTEM

Granted: October 4, 2012
Application Number: 20120254456
A method and apparatus for creating universal adaptive bit rate streams using a generic container format to store audio, video, and supplemental data that allows seamless trans-containerization from one adaptive streaming format to another.

QUALITY OF SERVICE (QOS) CONFIGURATION FOR NETWORK DEVICES WITH MULTIPLE QUEUES

Granted: September 27, 2012
Application Number: 20120243412
A network device implements automatic configuration of Quality of Service (QoS) parameters in response to operator specification of a relatively few and easily understandable “high level” parameters such as, for example, latency requirements or an acceptable rate of packet drops. In one implementation, a network device may receive user preference information that relates to a Quality of Service (QoS) for network traffic passing through the network device and may measure traffic…

COMMUNICATION NETWORK DESIGN

Granted: September 27, 2012
Application Number: 20120243409
A communication network design circuit can derive a path and a necessary link capacity for multiple point communication service permitting arbitrary communication within a predetermined range of communication amount by providing traffic amount of data in-flowing through an ingress node and traffic amount of data flowing out through an egress node. The communication network designing circuit has setting means for setting a mathematical programming problem for deriving the multiple point…

PACKET LOSS MEASUREMENT AT SERVICE ENDPOINTS OF A VIRTUAL PRIVATE LAN SERVICE

Granted: September 20, 2012
Application Number: 20120236734
In general, techniques are described for measuring packet data unit (PDU) loss in a L2 virtual private network (L2VPN) service, such as a VPLS instance. In one example of the techniques, provider edge (PE) routers that participate in the L2VPN measure known unicast and multicast PDU traffic at the service endpoints for the instance to determine unicast PDU loss within the service provider network. As the routers learn the outbound service (i.e., core-facing) interfaces and outbound local…

SYSTEMS AND METHODS FOR INITIALIZING CABLE MODEMS

Granted: September 20, 2012
Application Number: 20120236847
A system includes a first device and a second device. The first device is configured to transmit a discover message on a first upstream channel, where the discover message includes information representing capabilities of the first device. The second device is configured to receive the discover message from the first device and determine whether to switch the first device to a second upstream channel based on the capabilities information in the discover message. The second device makes…

ATOMIC DELETION OF DATABASE DATA CATEGORIES

Granted: September 20, 2012
Application Number: 20120239685
A device maintains, in a database, a plurality of data items, each data item of the plurality of data items being associated with a respective category. The device associates, in the database, a first counter value with each data item, the first counter value indicating a number of times the respective category has been deleted from the database at a time when the data item was stored in the database. The device associates, in the database or another database, a second counter value with…

TRANSPARENT PROXY CACHING OF RESOURCES

Granted: September 20, 2012
Application Number: 20120239775
A device receives, from a client device, a request for a resource available from an origin device, and determines whether the resource is cached in a cache server. When the resource is cached, the device provides a first command instructing the client device to request the resource from the cache server, receives, from the client device, a first new request for the resource, and enables, based on the first new request, the client device to receive the resource from the cache server. When…

MODULAR TRANSPARENT PROXY CACHE

Granted: September 20, 2012
Application Number: 20120239811
A device receives, from a client device, a request for a resource that is available from an origin device, and determines whether the resource is cached in a cache server or not cached in the cache server. The device forwards the request to the cache server regardless of whether or not the resource is cached in the cache server, and receives, when the resource is not cached in the cache server, a redirect command from the cache server based on the request. The device forwards the…

FAILOVER SCHEME WITH SERVICE-BASED SEGREGATION

Granted: September 20, 2012
Application Number: 20120239964
A system provides a set of services. The system includes nodes that are in communication with each other. The system segregates the services into at least first and second groups of services, assigns the first group of services to a first set of the nodes, and assigns the second group of services to a second set of nodes. The first set of nodes provides the first group of services, and the second set of nodes provides the second group of services.

SECURITY ENFORCEMENT IN VIRTUALIZED SYSTEMS

Granted: September 20, 2012
Application Number: 20120240182
A system includes a virtual machine (VM) server and a policy engine server. The VM server includes two or more guest operating systems and an agent. The agent is configured to collect information from the two or more guest operating systems. The policy engine server is configured to: receive the information from the agent; generate access control information for a first guest OS, of the two or more guest operating systems, based on the information; and configure an enforcer based on the…

OPTIMIZED PREFETCHING FOR WIDE AREA NETWORKS

Granted: September 13, 2012
Application Number: 20120233261
A data prefetching technique uses predefined prefetching criteria and prefetching models to identify and retrieve prefetched data. A prefetching model that defines data to be prefetched via a network may be stored. It may be determined whether prefetching initiation criteria have been satisfied. Data for prefetching may be identified based on the prefetching model when the prefetching initiation criteria have been satisfied. The identified data may be prefetched, via the network, based…

METHODS AND APPARATUS FOR PATH SELECTION WITHIN A NETWORK BASED ON FLOW DURATION

Granted: September 13, 2012
Application Number: 20120233349
In some embodiments, an apparatus includes a forwarding module that is configured to receive a group of first data packets. The forwarding module is configured to modify a data flow value in response to receiving each first data packet. The forwarding module is also configured to store each first data packet in a first output queue based on the data flow value not crossing a data flow threshold after being modified. Furthermore, the forwarding module is configured to receive a second…