Juniper Networks Patent Applications

LOGICAL SEPARATION AND ACCESSING OF DESCRIPTOR MEMORIES

Granted: August 26, 2010
Application Number: 20100215046
A packet header processing engine includes a memory having a number of distinct portions for respectively storing different types of descriptor information for a header of a packet. A packet header processing unit includes a number of pointers corresponding to the number of distinct memory portions. The packet header processing unit is configured to retrieve the different types of descriptor information from the number of distinct memory portions and to generate header information from…

SHARED SHAPING OF NETWORK TRAFFIC

Granted: August 19, 2010
Application Number: 20100208588
A method for sharing an aggregate bandwidth among a group of traffic classes may include allocating a portion of the aggregate bandwidth to one of the group of traffic classes having a first priority associated therewith, where the allocated portion is referred to as a first bandwidth. The method may include allocating an unused portion of the aggregate bandwidth to a second one of the group of traffic classes having a second priority associated therewith in conjunction with a parameter…

RETENTION-EXTRACTION DEVICE FOR REMOVABLE CARDS IN A CHASSIS

Granted: August 12, 2010
Application Number: 20100203750
A retention-extraction device is provided for a removable card in a chassis. The device includes an actuation rod having a cam slot, the actuation rod configured to provide linear movement along the length of the actuation rod, and an extraction lever operatively connected to a proximal end of the actuation rod and pivotally secured to the chassis. The device also includes a bell crank with a cam follower that is configured to ride in the cam slot and a latch hook that pivots between an…

DYNAMIC SERVICE ACTIVATION USING COPS-PR TO SUPPORT OUTSOURCING AND CONFIGURATION MODELS FOR POLICY CONTROL

Granted: August 12, 2010
Application Number: 20100205288
A device may include a service activation engine (SAE) including: a policy information base (PIB) file that defines a plurality of attachments that correspond to a plurality of network policies; and a server. The server may receive a request, using common open policy service for policy provisioning (COPS-PR), for a network service related to an interface handle associated with a subscriber device; determine which ones of the network policies correspond to the network service; and send,…

DYNAMIC QUEUE MANAGEMENT

Granted: August 12, 2010
Application Number: 20100205382
A method may include receiving a data unit and identifying a state of a memory storing data units. The method may include selecting a threshold value having a first threshold unit or a second threshold unit based on the state of the memory. The method may include comparing the threshold value to a queue state using the first threshold unit if the memory is in a first state. The method may include comparing the threshold value to the queue state using the second threshold unit if the…

ENFORCING ACCESS CONTROL ON MULTICAST TRANSMISSIONS

Granted: August 5, 2010
Application Number: 20100195529
Systems, apparatus, methods, and computer program products for multicast access control are provided to analyze incoming data based on a source zone and a destination zone of the incoming data. Appropriate access control rules are applied to incoming data based on the results of the analysis. Additional implementations of a multicast access control include using a proxy rendezvous point operable to function as a rendezvous point in place of a physical rendezvous point.

SYNCHRONIZING RESOURCE BINDINGS WITHIN COMPUTER NETWORK

Granted: July 29, 2010
Application Number: 20100191839
In general, techniques are described for synchronizing resource bindings within computer networks. An intermediate network device comprising an interface card and a control unit may implement these techniques. The interface card receives a message from a server that allocates a network address for use by a client device identified by a unique identifier. The control unit stores data defining a binding between the unique identifier and the network address. The control unit includes a…

SYSTEMS AND METHODS FOR INITIALIZING CABLE MODEMS

Granted: July 29, 2010
Application Number: 20100191840
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…

EFFICIENT APPLICATION IDENTIFICATION WITH NETWORK DEVICES

Granted: July 29, 2010
Application Number: 20100192225
In general, techniques are described for efficiently implementing application identification within network devices. In particular, a network device includes a control unit that stores data defining a group Deterministic Finite Automata (DFA) and an individual DFA. The group DFA is formed by merging non-explosive DFAs generated from corresponding non-explosive regular expressions (regexs) and fingerprint DFAs (f-DFAs) generated from signature fingerprints extracted from explosive regexs.…

IDENTIFICATION FRAGMENT HANDLING

Granted: July 22, 2010
Application Number: 20100183023
A device stores forwarding information associated with fragments of a first data unit, stores information common to the fragments of the first data unit, receives fragments of a second data unit, and forwards the fragments of the second data unit based on the forwarding information of the first data unit and the information common to the first data unit.

MULTI-READER MULTI-WRITER CIRCULAR BUFFER MEMORY

Granted: July 22, 2010
Application Number: 20100185822
A system for managing a circular buffer memory includes a number of data writers, a number of data readers, a circular buffer memory; and logic configured to form a number of counters, form a number of temporary variables from the counters, and allow the data writers and the data readers to simultaneously access locations in the circular buffer memory determined by the temporary variables.

DISTRIBUTED ADMISSION CONTROL

Granted: July 22, 2010
Application Number: 20100182931
A first network client requests initiation of a data transfer with a second network client. An admission control facility (ACF) responds to the initiation request by performing admission analysis to determine whether to initiate the data transfer. The ACF sends one or more packets to the second network client. In response, the second network client sends acknowledgment packets back to the ACF. The ACF performs admission analysis based on the packets sent and the acknowledgment packets,…

HIGH PERFORMANCE PROBABILISTIC RATE POLICER

Granted: July 15, 2010
Application Number: 20100177638
A data flow rate policer enforces data flow policies for a number of data flows using a probabilistic policy enforcement mechanism. The policer includes a memory that stores the state of each data flow in a compact data structure. Additionally, the policer includes one or more policing engines that implement the actual data flow policies based on information derived from the data structures. The policing engines may be implemented in hardware to increase performance.

NETWORK-BASED MACRO MOBILITY IN CELLULAR NETWORKS USING AN EXTENDED ROUTING PROTOCOL

Granted: July 15, 2010
Application Number: 20100177674
A new architecture provides network-based mobility in cellular networks that is built on Internet Protocol (IP)/Multiprotocol Label Switching (MPLS) technologies, such as Virtual Private Local Area Network (LAN) Service (VPLS), the Border Gateway Protocol (BGP) and BGP MPLS Layer 3 Virtual Private Networks (VPNs). The architecture consists of several building blocks that provide functionality for different aspects of cellular network mobility. One building block is network-based macro…

TRANSFER OF MOBILE SUBSCRIBER CONTEXT IN CELLULAR NETWORKS USING EXTENDED ROUTING PROTOCOL

Granted: July 15, 2010
Application Number: 20100177685
A new architecture provides network-based mobility in cellular networks that is built on Internet Protocol (IP)/Multiprotocol Label Switching (MPLS) technologies, such as Virtual Private Local Area Network (LAN) Service (VPLS), the Border Gateway Protocol (BGP) and BGP MPLS Layer 3 Virtual Private Networks (VPNs). The architecture consists of several building blocks that provide functionality for different aspects of cellular network mobility. One building block is network-based macro…

NETWORK-BASED MICRO MOBILITY IN CELLULAR NETWORKS USING EXTENDED VIRTUAL PRIVATE LAN SERVICE

Granted: July 15, 2010
Application Number: 20100177752
A new architecture provides network-based mobility in cellular networks that is built on Internet Protocol (IP)/Multiprotocol Label Switching (MPLS) technologies, such as Virtual Private Local Area Network (LAN) Service (VPLS), the Border Gateway Protocol (BGP) and BGP MPLS Layer 3 Virtual Private Networks (VPNs). The architecture consists of several building blocks that provide functionality for different aspects of cellular network mobility. One building block is network-based macro…

PRESERVING THE ORDER OF PACKETS THROUGH A DEVICE

Granted: July 15, 2010
Application Number: 20100177777
A network device includes one or more sprayers, multiple packet processors, and one or more desprayers. The sprayers receive packets on at least one incoming packet stream and distribute the packets according to a load balancing scheme that balances the number of bytes of packet data that is given to each of the packet processors. The packet processors receive the packets from the sprayers and process the packets to determine routing information for the packets. The desprayers receive…

RECYCLING ITEMS IN A NETWORK DEVICE

Granted: July 15, 2010
Application Number: 20100180026
A network device includes a data structure and an ager. The data structure includes a group of positions. One or more of the positions are associated with at least one item. The ager is configured to sequentially analyze each position of the group of positions, and recycle, at each analyzed position, any item associated with the analyzed position.

BASE STATION MODULATOR/DEMODULATOR AND SEND/RECEIVE METHOD

Granted: July 8, 2010
Application Number: 20100172273
A base station, in a mobile communication network, includes a receive component to receive, from a higher rank station in the network, a particular data unit that includes multiple data units multiplexed together; a master processor to determine that the first portion of the particular data unit is destined for the base station and that the second portion of the particular data unit is not destined for the base station, and discard the second portion of the particular data unit; and a…

SYSTEMS AND METHODS FOR CONGESTION CONTROL USING RANDOM EARLY DROP AT HEAD OF BUFFER

Granted: July 8, 2010
Application Number: 20100172363
A system selectively drops data from a queue. The system includes queues that temporarily store data, a dequeue engine that dequeues data from the queues, and a drop engine that operates independently from the dequeue engine. The drop engine selects one of the queues to examine, determines whether to drop data from a head of the examined queue, and marks the data based on a result of the determination.