Patents by Inventor Hann-Hwan Ju

Hann-Hwan Ju 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: 9912590
    Abstract: A method and apparatus for in-line processing a data packet while routing the packet through a router in a system transmitting data packets between a source and a destination over a network including the router. The method includes receiving the data packet and pre-processing layer header data for the data packet as the data packet is received and prior to transferring any portion of the data packet to packet memory. The data packet is thereafter stored in the packet memory. A routing through the router is determined including a next hop index describing the next connection in the network. The data packet is retrieved from the packet memory and a new layer header for the data packet is constructed from the next hop index while the data packet is being retrieved from memory. The new layer header is coupled to the data packet prior to transfer from the router.
    Type: Grant
    Filed: October 24, 2016
    Date of Patent: March 6, 2018
    Assignee: Juniper Networks, Inc.
    Inventors: Rasoul Mirzazadeh Oskouy, Dennis C. Ferguson, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Pradeep S. Sindhu, Sreeram Veeragandham, Jeff Zimmer, Michael M. Y. Hui
  • Publication number: 20170041228
    Abstract: A method and apparatus for in-line processing a data packet while routing the packet through a router in a system transmitting data packets between a source and a destination over a network including the router. The method includes receiving the data packet and pre-processing layer header data for the data packet as the data packet is received and prior to transferring any portion of the data packet to packet memory. The data packet is thereafter stored in the packet memory. A routing through the router is determined including a next hop index describing the next connection in the network. The data packet is retrieved from the packet memory and a new layer header for the data packet is constructed from the next hop index while the data packet is being retrieved from memory. The new layer header is coupled to the data packet prior to transfer from the router.
    Type: Application
    Filed: October 24, 2016
    Publication date: February 9, 2017
    Inventors: Rasoul Mirzazadeh OSKOUY, Dennis C. FERGUSON, Hann-Hwan JU, Raymond Marcelino Manese LIM, Pradeep S. SINDHU, Sreeram VEERAGANDHAM, Jeff ZIMMER, Michael M.Y. HUI
  • Patent number: 9479436
    Abstract: A method and apparatus for in-line processing a data packet while routing the packet through a router in a system transmitting data packets between a source and a destination over a network including the router. The method includes receiving the data packet and pre-processing layer header data for the data packet as the data packet is received and prior to transferring any portion of the data packet to packet memory. The data packet is thereafter stored in the packet memory. A routing through the router is determined including a next hop index describing the next connection in the network. The data packet is retrieved from the packet memory and a new layer header for the data packet is constructed from the next hop index while the data packet is being retrieved from memory. The new layer header is coupled to the data packet prior to transfer from the router.
    Type: Grant
    Filed: September 30, 2014
    Date of Patent: October 25, 2016
    Assignee: Juniper Networks Inc.
    Inventors: Rasoul Mirzazadeh Oskouy, Dennis C. Ferguson, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Pradeep S. Sindhu, Sreeram Veeragandham, Jeff Zimmer, Michael M. Y. Hui
  • Patent number: 9411776
    Abstract: A method and apparatus for switching a data packet between a source and destination in a network. The data packet includes a header portion and a data portion. The header portion includes routing information for the data packet. The method includes defining a data path in the router comprising a path through the router along which the data portion of the data packet travels and defining a control path comprising a path through the router along which routing information from the header portion travels. The method includes separating the data path and control path in the router such that the routing information can be separated from the data portion allowing for the separate processing of each in the router. The data portion can be stored in a global memory while routing decisions are made on the routing information in the control path.
    Type: Grant
    Filed: February 27, 2014
    Date of Patent: August 9, 2016
    Assignee: Juniper Networks, Inc.
    Inventors: Pradeep S. Sindhu, Kireeti Kompella, Dennis C. Ferguson, Bjorn O. Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Rasoul Mirzazadeh Oskouy, Sreeram Veeragandham
  • Publication number: 20150019938
    Abstract: A method and apparatus for in-line processing a data packet while routing the packet through a router in a system transmitting data packets between a source and a destination over a network including the router. The method includes receiving the data packet and pre-processing layer header data for the data packet as the data packet is received and prior to transferring any portion of the data packet to packet memory. The data packet is thereafter stored in the packet memory. A routing through the router is determined including a next hop index describing the next connection in the network. The data packet is retrieved from the packet memory and a new layer header for the data packet is constructed from the next hop index while the data packet is being retrieved from memory. The new layer header is coupled to the data packet prior to transfer from the router.
    Type: Application
    Filed: September 30, 2014
    Publication date: January 15, 2015
    Inventors: Rasoul Mirzazadeh OSKOUY, Dennis C. FERGUSON, Hann-Hwan Ju, Raymond Marcelino Manese LIM, Pradeep S. SINDHU, Sreeram VEERAGANDHAM, Jeff ZIMMER, Michael M.Y. HUI
  • Patent number: 8867543
    Abstract: A method and apparatus for in-line processing a data packet while routing the packet through a router in a system transmitting data packets between a source and a destination over a network including the router. The method includes receiving the data packet and pre-processing layer header data for the data packet as the data packet is received and prior to transferring any portion of the data packet to packet memory. The data packet is thereafter stored in the packet memory. A routing through the router is determined including a next hop index describing the next connection in the network. The data packet is retrieved from the packet memory and a new layer header for the data packet is constructed from the next hop index while the data packet is being retrieved from memory. The new layer header is coupled to the data packet prior to transfer from the router.
    Type: Grant
    Filed: November 11, 2011
    Date of Patent: October 21, 2014
    Assignee: Juniper Networks, Inc.
    Inventors: Rasoul Mirzazadeh Oskouy, Dennis C. Ferguson, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Pradeep S. Sindhu, Sreeram Veeragandham, Jeff Zimmer, Michael M. Y. Hui
  • Publication number: 20140181235
    Abstract: A method and apparatus for switching a data packet between a source and destination in a network. The data packet includes a header portion and a data portion. The header portion includes routing information for the data packet. The method includes defining a data path in the router comprising a path through the router along which the data portion of the data packet travels and defining a control path comprising a path through the router along which routing information from the header portion travels. The method includes separating the data path and control path in the router such that the routing information can be separated from the data portion allowing for the separate processing of each in the router. The data portion can be stored in a global memory while routing decisions are made on the routing information in the control path.
    Type: Application
    Filed: February 27, 2014
    Publication date: June 26, 2014
    Applicant: Juniper Networks, Inc.
    Inventors: Pradeep S. SINDHU, Kireeti Kompella, Dennis C. Ferguson, Bjorn O. Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Rasoul Mirzazadeh Oskouy, Sreeram Veeragandham
  • Patent number: 8761180
    Abstract: A router for switching data packets from a source to a destination in a network in which the router includes a distributed memory. The distributed memory includes two or more memory banks. Each memory bank is used for storing uniform portions of a data packet received from a source and linking information for each data packet to allow for the extraction of the uniform portions of a data packet from distributed locations in memory in proper order after a routing determination has been made by the router.
    Type: Grant
    Filed: March 20, 2013
    Date of Patent: June 24, 2014
    Assignee: Juniper Networks, Inc.
    Inventors: Pradeep Sindhu, Dennis Ferguson, Bjorn Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Rasoul Mirzazadeh Oskouy, Sreeram Veeragandham
  • Patent number: 8681796
    Abstract: A method and apparatus for switching a data packet between a source and destination in a network. The data packet includes a header portion and a data portion. The header portion includes routing information for the data packet. The method includes defining a data path in the router comprising a path through the router along which the data portion of the data packet travels and defining a control path comprising a path through the router along which routing information from the header portion travels. The method includes separating the data path and control path in the router such that the routing information can be separated from the data portion allowing for the separate processing of each in the router. The data portion can be stored in a global memory while routing decisions are made on the routing information in the control path.
    Type: Grant
    Filed: May 7, 2012
    Date of Patent: March 25, 2014
    Assignee: Juniper Networks, Inc.
    Inventors: Pradeep S. Sindhu, Kireeti Kompella, Dennis C. Ferguson, Bjorn O. Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Rasoul Mirzazadeh Oskouy, Sreeram Veeragandham
  • Patent number: 8477784
    Abstract: A router for switching data packets from a source to a destination in a network in which the router includes a distributed memory. The distributed memory includes two or more memory banks. Each memory bank is used for storing uniform portions of a data packet received from a source and linking information for each data packet to allow for the extraction of the uniform portions of a data packet from distributed locations in memory in proper order after a routing determination has been made by the router.
    Type: Grant
    Filed: January 7, 2011
    Date of Patent: July 2, 2013
    Assignee: Juniper Networks, Inc.
    Inventors: Pradeep S. Sindhu, Dennis C. Ferguson, Bjorn O. Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Rasoul Mirzazadeh Oskouy, Sreeram Veeragandham
  • Publication number: 20120219001
    Abstract: A method and apparatus for switching a data packet between a source and destination in a network. The data packet includes a header portion and a data portion. The header portion includes routing information for the data packet. The method includes defining a data path in the router comprising a path through the router along which the data portion of the data packet travels and defining a control path comprising a path through the router along which routing information from the header portion travels. The method includes separating the data path and control path in the router such that the routing information can be separated from the data portion allowing for the separate processing of each in the router. The data portion can be stored in a global memory while routing decisions are made on the routing information in the control path.
    Type: Application
    Filed: May 7, 2012
    Publication date: August 30, 2012
    Applicant: Juniper Networks, Inc.
    Inventors: Pradeep S. SINDHU, Kireeti Kompella, Dennis C. Ferguson, Bjorn O. Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Rasoul Mirzazadeh Oskouy, Sreeram Veeragandham
  • Patent number: 8189605
    Abstract: A method and apparatus for switching a data packet between a source and destination in a network. The data packet includes a header portion and a data portion. The header portion includes routing information for the data packet. The method includes defining a data path in the router comprising a path through the router along which the data portion of the data packet travels and defining a control path comprising a path through the router along which routing information from the header portion travels. The method includes separating the data path and control path in the router such that the routing information can be separated from the data portion allowing for the separate processing of each in the router. The data portion can be stored in a global memory while routing decisions are made on the routing information in the control path.
    Type: Grant
    Filed: December 31, 2008
    Date of Patent: May 29, 2012
    Assignee: Juniper Networks, Inc.
    Inventors: Pradeep S. Sindhu, Kireeti Kompella, Dennis C. Ferguson, Bjorn O Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Rasoul Mirzazadeh Oskouy, Sreeram Veeragandham
  • Patent number: 8170028
    Abstract: A network device includes an input interface, at least one processing path and an output interface. The input interface receives data units on a plurality of streams and assigns a first sequence number to each of the received data units. The at least one processing path performs a route look-up for each of the data units, where the route look-up determines a routing destination for a respective data unit. The output interface assigns a second sequence number to each of the processed data units based on a number of memory references associated with the route look-up for each of the data units and re-orders the processed data units based on the second sequence number assigned to each of the processed data units.
    Type: Grant
    Filed: July 29, 2009
    Date of Patent: May 1, 2012
    Assignee: Juniper Networks, Inc.
    Inventors: Dennis C Ferguson, Hann-Hwan Ju, Atsushi Kasuya, Gerald Cheung, Devereaux C Chen
  • Publication number: 20120057597
    Abstract: A method and apparatus for in-line processing a data packet while routing the packet through a router in a system transmitting data packets between a source and a destination over a network including the router. The method includes receiving the data packet and pre-processing layer header data for the data packet as the data packet is received and prior to transferring any portion of the data packet to packet memory. The data packet is thereafter stored in the packet memory. A routing through the router is determined including a next hop index describing the next connection in the network. The data packet is retrieved from the packet memory and a new layer header for the data packet is constructed from the next hop index while the data packet is being retrieved from memory. The new layer header is coupled to the data packet prior to transfer from the router.
    Type: Application
    Filed: November 11, 2011
    Publication date: March 8, 2012
    Applicant: JUNIPER NETWORKS, INC.
    Inventors: Rasoul Mirzazadeh OSKOUY, Dennis C. FERGUSON, Hann-Hwan JU, Raymond Marcelino Manese LIM, Pradeep S. SINDHU, Sreeram VEERAGANDHAM, Jeff ZIMMER, Michael M.Y. HUI
  • Patent number: 8081654
    Abstract: A bandwidth divider and method for allocating bandwidth between a plurality of packet processors. The bandwidth divider includes a plurality of counters for measuring the bandwidth of data packets transferred from the bandwidth divider to a respective packet processor; and a controller for analyzing the plurality of counters and transferring a data packet to a selected packet processor based on the contents of the counters. The method monitors the bandwidth consumed by the packet processors; determines, based on the bandwidth consumed by the packet processors, which packet processor has consumed the least amount of bandwidth; and allocates a next data packet to the packet processor which has consumed the least amount of bandwidth.
    Type: Grant
    Filed: March 12, 2010
    Date of Patent: December 20, 2011
    Assignee: Juniper Networks, Inc.
    Inventors: Stefan Dyckerhoff, Pankaj Patel, Pradeep Sindhu, Ashok Krishnamurthi, Hann-Hwan Ju, Ramalingam Krishnamurthi Anand
  • Patent number: 8077724
    Abstract: A method and apparatus for in-line processing a data packet while routing the packet through a router in a system transmitting data packets between a source and a destination over a network including the router. The method includes receiving the data packet and pre-processing layer header data for the data packet as the data packet is received and prior to transferring any portion of the data packet to packet memory. The data packet is thereafter stored in the packet memory. A routing through the router is determined including a next hop index describing the next connection in the network. The data packet is retrieved from the packet memory and a new layer header for the data packet is constructed from the next hop index while the data packet is being retrieved from memory. The new layer header is coupled to the data packet prior to transfer from the router.
    Type: Grant
    Filed: August 13, 2010
    Date of Patent: December 13, 2011
    Assignee: Juniper Networks, Inc.
    Inventors: Rasoul Mirzazadeh Oskouy, Dennis C Ferguson, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Pradeep S Sindhu, Sreeram Veeragandham, Jeff Zimmer, Michael M. Y. Hui
  • Publication number: 20110235642
    Abstract: 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 the processed packets from the packet processors and transmit the packets on at least one outgoing packet stream based on the routing information.
    Type: Application
    Filed: June 6, 2011
    Publication date: September 29, 2011
    Applicant: JUNIPER NETWORKS, INC.
    Inventors: Stefan DYCKERHOFF, Pankaj Patel, Pradeep Sindhu, Ashok Krishnamurthi, Hann-Hwan Ju, Ramalingam K. Anand, Dennis C. Ferguson, Chang-Hong Wu
  • Patent number: 7983290
    Abstract: 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 the processed packets from the packet processors and transmit the packets on at least one outgoing packet stream based on the routing information.
    Type: Grant
    Filed: March 25, 2010
    Date of Patent: July 19, 2011
    Assignee: Juniper Networks, Inc.
    Inventors: Stefan Dyckerhoff, Pankaj Patel, Pradeep Sindhu, Ashok Krishnamurthi, Hann-Hwan Ju, Ramalingam K Anand, Dennis C Ferguson, Chang-Hong Wu
  • Publication number: 20110164618
    Abstract: A router for switching data packets from a source to a destination in a network in which the router includes a distributed memory. The distributed memory includes two or more memory banks. Each memory bank is used for storing uniform portions of a data packet received from a source and linking information for each data packet to allow for the extraction of the uniform portions of a data packet from distributed locations in memory in proper order after a routing determination has been made by the router.
    Type: Application
    Filed: January 7, 2011
    Publication date: July 7, 2011
    Applicant: JUNIPER NETWORKS, INC.
    Inventors: Pradeep S. SINDHU, Dennis C. FERGUSON, Bjorn O. LIENCRES, Nalini AGARWAL, Hann-Hwan JU, Raymond Marcelino Manese LIM, Rasoul Mirzazadeh OSKOUY, Sreeram VEERAGANDHAM
  • Patent number: 7903659
    Abstract: A network device switches variable length data units from a source to a destination in a network. An input port receives the variable length data unit and a divider divides the variable length data unit into uniform length data units for temporary storage in the network device. A distributed memory includes a plurality of physically separated memory banks addressable using a single virtual address space and an input switch streams the uniform length data units across the memory banks based on the virtual address space. The network device further includes an output switch for extracting the uniform length data units from the distributed memory by using addresses of the uniform length data units within the virtual address space. The output switch reassembles the uniform length data units to reconstruct the variable length data unit. An output port receives the variable length data unit and transfers the variable length data unit to the destination.
    Type: Grant
    Filed: May 4, 2009
    Date of Patent: March 8, 2011
    Assignee: Juniper Networks, Inc.
    Inventors: Pradeep S. Sindhu, Dennis C. Ferguson, Bjorn O. Liencres, Nalini Agarwal, Hann-Hwan Ju, Raymond Marcelino Manese Lim, Rasoul Mirzazadeh Oskouy, Sreeram Veeragandham