Method and apparatus for policing a flow in a network

Information

  • Patent Grant
  • 8942220
  • Patent Number
    8,942,220
  • Date Filed
    Tuesday, November 5, 2013
    11 years ago
  • Date Issued
    Tuesday, January 27, 2015
    10 years ago
Abstract
An example of a method of policing a flow in a home network such as a MoCA network may include calculating a policing period, calculating a first credit parameter, initializing a first usage variable at a beginning of the policing period, receiving a packet at an ingress node, calculating the first usage variable based on a first formula, determining whether the first usage variable is less than or equal to the first credit parameter, and making a reservation request when the first usage variable is less than or equal to the first credit parameter. The reservation request is different from an opportunistic reservation request. Examples of a system and a computer program product having instructions stored in a tangible computer-readable storage medium are also provided.
Description
FIELD

In one or more implementations, the disclosure relates generally to managing bandwidth of a network.


BACKGROUND

Home network technologies using coax are known generally. The Multimedia over Coax Alliance (MoCAT™), at its website mocalliance.org, provides an example of a suitable specification (MoCA 2.0) for networking of digital video and entertainment through existing coaxial cable in the home which has been distributed to an open membership. The MoCA 2.0 specification is incorporated by reference herein in its entirety.


Home networking over coax taps into the vast amounts of unused bandwidth available on the in-home coax. More than 70% of homes in the United States have coax already installed in the home infrastructure. Many have existing coax in one or more primary entertainment consumption locations such as family rooms, media rooms and master bedrooms—ideal for deploying networks. Home networking technology allows homeowners to utilize this infrastructure as a networking system and to deliver other entertainment and information programming, organized as data flows, with high Quality of Service. A Quality of Service (QoS) flow may have parameters governing the network that must be met to obtain the required QoS. Therefore the MoCA specification gives priority to requests by a QoS flow for network resources. The priority given to a QoS flow permits abuse of the network by the QoS flow.





BRIEF DESCRIPTION OF THE DRAWINGS

The objects and advantages of the disclosure will be apparent upon consideration of the following detailed description, taken in conjunction with the accompanying drawings, in which like reference characters refer to like parts throughout, and in which:



FIG. 1A shows a schematic diagram of an exemplary implementation of messages exchanged during a request for the allocation of a QoS flow;



FIG. 1B shows a schematic diagram of an exemplary implementation of messages exchanged during a request for bandwidth;



FIG. 2 is an example of a flow chart for calculating a policing window size; and



FIG. 3 is an example of a flow chart for the policing of a QoS flow.





DETAILED DESCRIPTION

In the following description of the various embodiments, reference is made to the accompanying drawings, which form a part hereof, and in which is shown by way of illustration various embodiments in which the subject technology may be practiced. It is to be understood that other embodiments may be utilized and structural and functional modifications may be made without departing from the scope and spirit of the present disclosure.


As will be appreciated by one of skill in the art upon reading the following disclosure, various aspects described herein may be embodied as a method, a data processing system, or a computer program product. Accordingly, those aspects may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, such aspects may take the form of a computer program product stored by one or more computer-readable storage media having computer-readable program code, or instructions, embodied in or on the storage media. Any suitable computer readable storage media may be utilized, including hard disks, CD-ROMs, optical storage devices, magnetic storage devices, flash technology and/or any combination thereof.


In addition, various signals representing data or events as described herein may be transferred between a source and a destination in the form of electromagnetic waves traveling through signal-conducting media such as metal wires, optical fibers, and/or wireless transmission media (e.g., air and/or space).


Certain services implemented over the MoCA network may require the MoCA network to provide a data flow that has reserved bandwidth and special access to bandwidth. Such a flow may more specifically be termed a Parameterized QoS (“PQoS”) flow. A PQoS flow will receive guaranteed bandwidth from a network, preferably from a network controller—i.e., an RR on behalf of a QoS flow will have priority over some other flows.


Nodes in a MoCA network acquire bandwidth by making a Reservation Request (RR). Multiple Reservation Requests may be made by a single node depending on bandwidth needs of a flow sourced by that node. The reservation requests may be made by a node to a network controller which may grant the request. An RR is granted when it has sufficient priority over other requests. In the alternative a node may reserve bandwidth by making an Opportunistic Reservation Request (ORR). An ORR for a PQoS is granted by the network controller when bandwidth is readily available—e.g., the bandwidth would be unused if not consumed by the ORR, and all PQoS related RRs have already been granted. An ORR may have lower priority than some other requests.


The guaranteed treatment of the PQoS may be abused leading to difficulties for other flows in the network. An example of abuse may be shown when a first QoS flow is established and a second QoS flow is then established. The second flow may actually request more bandwidth then guaranteed to it by the network controller. In such circumstances, a suitable QoS for the first flow, which was also previously guaranteed bandwidth, cannot be maintained.


Control or policing of QoS flow requests may be performed by the network controller, but this method has disadvantages—the network controller must be able to balance potentially abusive requests from one node against requests from another node. Another approach relies on each node policing its own ingress flows. An ingress flow is defined as a flow that is an ingress or an input to the network—i.e., a flow from a node that is the source of data.


It should be noted that the term packet is used throughout the description. In one or more implementations, packets may be understood to refer to a MoCA term, MAC Service Data Units (MSDU).


In one or more implementations, bandwidth of a network may be understood to refer to the amount of information sent over data flows in the network. In one or more implementations, managing relates to policing—i.e., controlling—the use of at least one QoS flow in a network where the at least one QoS flow may have priority over other flows. In one or more implementations, it would be desirable to provide a policing mechanism to police the use of bandwidth in a MoCA network by a QoS flow.


In one or more implementations, a system and/or method provides a policing mechanism. In one or more implementations, a system and/or method provides a policing mechanism to control the use of bandwidth in a MoCA network by a QoS flow.



FIG. 1A shows an exemplary network 100 comprising a sending node 110, a receiving node 120 and a network controller 130. The sending node 110 may also be called an ingress node. The sending node 110 may seek to establish a QoS flow through the connection 150 between itself and receiving node 120. The sending node 110 may send a request for allocation 140 to network controller 130. The request for allocation 140 may comprise a list of requirements for a QoS flow. Network controller 130 sends a response 141 to the sending node. The response may be positive—i.e., the allocation is reserved—or the response may be negative.


Although the example network 100 shows a single sending node and a single receiving node, other configurations are contemplated and included within the scope of the disclosure. Alternative embodiments may include multiple sending nodes, multiple receiving nodes and multiple nodes that can both send and receive. Any of these configurations may share network resources. Although a single network controller is shown other configurations—e.g., multiple network controllers—are contemplated and included within the scope of the disclosure. Any suitable combination of sending nodes, receiving nodes, transceiving nodes and network controllers are contemplated and included within the scope of the disclosure.



FIG. 1B shows an exemplary network 100 comprising a sending node 110, a receiving node 120 and a network controller 130. The QoS flow 151 is established between sending node 110 and receiving node 130. The QoS flow may be the result of a positive response 141 to an allocation request 140.


Each time bandwidth is required for QoS flow 151, the sending node 110 sends a RR 143 to the network controller 130. Priority will be given to these requests over some other requests. In an embodiment of the disclosure described below, the sending node 110 is self-policing and limits the number of RRs sent in a particular time period. If additional bandwidth is required, the sending node 110 will make an ORR 144 to network controller 130. As described above, the network controller will give less priority to an ORR than a RR thereby maintaining a suitable level of service for all flows in the network.


Although only a single RR and a single ORR are shown, the diagram merely illustrates exemplary requests. Multiple RR and multiple ORR are contemplated and included within the scope of the disclosure.


Policing of the output of a sending node 110 is performed by regulating both the number of packets and the number of bits in a particular time window. FIG. 2 shows an illustrative policing window algorithm 200 for computing a suitable policing time period (Tpp).


At step 201 an allocation request 140 is made for a QoS flow. At step 202 the allocation response 141 is received; if the response is not accepted, then a QoS flow is not allocated at step 210. If the allocation is accepted, then a calculation is made for the policing parameters according to the Traffic SPECification (TSPEC) of the QoS flow 151.


If the MAXIMUM_LATENCY is specified at step 203 (i.e., max latency is equal to the time of a beginning of a burst arriving at the Ethernet Convergence Layer (“ECL”) to a beginning of the next burst arriving at the ECL), then Tpp may be computed via a first formula at step 204 as shown here.


P=floor[MAXIMUM_LATENCY*(T_PEAK_DATA_RATE/(T_PACKET_SIZE*8))], where floor is made with respect to the minimum duration to transmit an integer number of packets.


P=max (P,1), P cannot be smaller than 1 millisecond

Tpp=P*T_PACKET_SIZE*8/T_PEAK_DATA_RATE


If the MAXIMUM_LATENCY is not specified at step 203, then Tpp may be computed via a second formula at step 206 shown here. A latency of a packet is understood to refer to a period of time that begins at the time an Ethernet packet arrives at an Ingress Node until the time that it arrives at the Ethernet port of the Egress node. An ingress node is the MoCA node that transmits the packet; the Egress node is the MoCA node that receives the packet. The maximum latency of the flow is the largest allowed latency of packets of that flow. Accordingly, for the purposes of this application, MAXIMUM_LATENCY may be understood to refer to the maximum allowable latency of a flow of data with regard to a packet.

T_BURST_SIZE*T_PACKET_SIZE*8/T_PEAK_DATA_RATE.


Each of the parameters in the formulas is established by the TSPEC for the QoS flow 151. The TSPEC is set by the allocation request 140. T_BURST_SIZE may be the maximum number of consecutive packets. T_PACKET_SIZE—e.g., the standard size of a packet—may be characterized in bytes. T_PEAK_DATA_RATE may be the maximum data rate for the network in bits per second. Multiplying the packet size in by 8 converts from bytes to bits and yields a time for Tpp. Typical times are in milliseconds as shown in the table below.




















PEAK_DATA_RATE
PACKET_SIZE
Tpp
Packet
Bit


MAX_LATENCY
T_BURST_SIZE
(Mbps)
(Bytes)
(mSec)
Credit
Credit





















0
10
10
1518
12.14
10
121440


12
4
10
1518
10.93
9
109296


0
1
5
1518
2.43
1
12144


25
1
5
1518
2.43
1
12144


0
8
20
1518
4.86
8
97152


5
8
20
1518
4.86
8
97152









After the first formula is computed at step 204, a check is made for the T_BURST_SIZE value at step 205. If the T_BURST_SIZE is greater than 1, then Tpp may be computed again via the second formula at step 206. The larger of the two Tpp computations may be used as the final Tpp.


An adjustment for Tpp can be made at step 207. At step 207 Tpp is adjusted so that it is preferably equal to or larger than 2 milliseconds and rounds to the time of an integer number of packets arriving at the ECL.


Once a Tpp is established, a bound for the usage of the network 100 is established. An allocation, or credit, may be set for credit parameters. The credit parameters may include the number of packets and the number of bits that can be sent in one Tpp and may be computed as follows.

PacketCredit=T_BURST_SIZE
BitCredit=PacketCredit*T_PACKET_SIZE*8



FIG. 3 shows an illustrative policing algorithm 300 for regulating the amount of data sent in one Tpp. The policing algorithm 300 is preferably executed for each Tpp so long as the QoS flow 151 is operational. At step 301 usage parameters may be initialized. The usage parameters may include PacketUsage and BitUsage. The variables PacketUsage and BitUsage may be initialized to zero. Also in step 301, the variables PacketCredit and BitCredit may be initialized according to the formula shown above. The variables PacketCredit and BitCredit may be initialized prior to the execution of policing algorithm 300.


At step 302 the policing algorithm 300 waits for a packet to be available for sending by the sending node 110. If a packet is not available then a check is made at step 309 to see if the Tpp has expired. If Tpp has not expired that the policing algorithm 300 returns to step 302. If the Tpp has expired than the policing algorithm 300 begins again at step 301. If a packet arrives then step 303 accumulates the usage by the QoS flow in the variables PacketUsage and BitUsage as follows.

PacketUsage=PacketUsage+1
BitUsage=BitUsage+(packet_size*8)


At step 304 a check is made to see if the allocation for PacketUsage has been exceeded. At step 305 a check is made to see if the allocation for BitUsage has been exceeded. If either allocation has been exceeded, an ORR 144 is sent to the network controller 130 by the sending node 110 to reserve bandwidth opportunistically at step 307. If neither allocation has been exceeded, an RR is sent to the network controller 130 by the sending node 110 to reserve bandwidth with QoS priority at step 306.


After the execution of step 306 or step 307, a check is made at step 308 to see if the Tpp has expired. If the Tpp has not expired, then the policing algorithm 300 returns to step 302. If the Tpp has expired, then the policing algorithm 300 begins again at step 301.


Although the network and methods of the disclosure are shown with regards to a MoCA 2.0 network, the same system and methods could be applied to other suitable networks. Some modification may be required to match the essential methods to the new network but these will be obvious to those of normal skill in the art.


Thus, systems and methods for policing a MoCA QoS flow have been provided.


Aspects of the disclosure have been described in terms of illustrative embodiments thereof. A person having ordinary skill in the art will appreciate that numerous additional embodiments, modifications, and variations may exist that remain within the scope and spirit of the appended claims. For example, one of ordinary skill in the art will appreciate that the steps illustrated in the figures may be performed in other than the recited order and that one or more steps illustrated may be optional. The methods and systems of the above-referenced embodiments may also include other additional elements, steps, computer-executable instructions, or computer-readable data structures. In this regard, other embodiments are disclosed herein as well that can be partially or wholly implemented on a computer-readable medium, for example, by storing computer-executable instructions or modules or by utilizing computer-readable data structures.

Claims
  • 1. A method of policing a flow in a home network, the method comprising: calculating a policing period;calculating a first credit parameter;initializing a first usage variable at a beginning of the policing period;receiving, at an ingress node, a packet;for the packet received during the policing period, calculating the first usage variable based on a first formula;determining whether the first usage variable is less than or equal to the first credit parameter;making a reservation request, by the ingress node, when the first usage variable is less than or equal to the first credit parameter,wherein the reservation request is different from an opportunistic reservation request.
  • 2. The method of claim 1, comprising: calculating a second credit parameter; andinitializing a second usage variable at the beginning of the policing period.
  • 3. The method of claim 2, comprising: for the packet received during the policing period, calculating the second usage variable based on a second formula; anddetermining whether the second usage variable is less than or equal to the second credit parameter,wherein the making a reservation request comprises making the reservation request when the first usage variable is less than or equal to the first credit parameter and when the second usage variable is less than or equal to the second credit parameter.
  • 4. The method of claim 3, wherein the policing period is represented as Tpp,one policing period represents one Tpp,the first credit parameter represents a packet credit,the second credit parameter represents a bit credit,the first usage variable represents a packet usage, andthe second usage variable represents a bit usage.
  • 5. The method of claim 3, wherein the calculating a first credit parameter comprises calculating a packet credit based on a burst size, andthe calculating a second credit parameter comprises calculating a bit credit based on a packet size.
  • 6. The method of claim 3, wherein the calculating the first usage variable based on a first formula is represented as: PacketUsage=PacketUsage+1,where the first usage variable is PacketUsage, andwherein the calculating the second usage variable based on a second formula is represented as: BitUsage=BitUsage+PacketSize,where the second usage variable is BitUsage, and PacketSize is a size of the received packet in bits.
  • 7. The method of claim 3, comprising: determining whether an end of the policing period is reached,wherein the initializing a first usage variable and the initializing a second usage variable are performed at a beginning of each policing period, andwherein the calculating the first usage variable, the calculating the second usage variable, the determining whether the first usage variable is less than or equal to the first credit parameter, the determining whether the second usage variable is less than or equal to the second credit parameter, and the making the reservation request when the first usage variable is less than or equal to the first credit parameter and when the second usage variable is less than or equal to the second credit parameter are performed for each packet received during a respective policing period.
  • 8. The method of claim 3, comprising: making the opportunistic reservation request, by the ingress node, when the first usage variable is greater than the first credit parameter or when the second usage variable is greater than the second credit parameter.
  • 9. A system, comprising: a computer-readable storage medium; anda processing system for policing a flow, the processing system configured to facilitate: calculating a policing period;calculating a first credit parameter;initializing a first usage variable at a beginning of the policing period;calculating the first usage variable based on a first formula;determining whether the first usage variable is less than or equal to the first credit parameter; andusing a request representing a reservation request when the first usage variable is less than or equal to the first credit parameter,wherein the reservation request is different from an opportunistic reservation request.
  • 10. The system of claim 9, wherein the processing system is configured to facilitate: calculating a second credit parameter;initializing a second usage variable at the beginning of the policing period;calculating the second usage variable based on a second formula; anddetermining whether the second usage variable is less than or equal to the second credit parameter,wherein the using a request comprises using the request representing the reservation request when the first usage variable is less than or equal to the first credit parameter and when the second usage variable is less than or equal to the second credit parameter.
  • 11. The system of claim 10, wherein the policing period is represented as Tpp, one policing period represents one Tpp, the first credit parameter represents a packet credit, the second credit parameter represents a bit credit, the first usage variable represents a packet usage, and the second usage variable represents a bit usage,wherein the calculating a first credit parameter comprises calculating the packet credit based on a burst size, andwherein the calculating a second credit parameter comprises calculating the bit credit based on a packet size.
  • 12. The system of claim 10, wherein the calculating the first usage variable based on a first formula is represented as: PacketUsage=PacketUsage+1,where the first usage variable is PacketUsage, andwherein the calculating the second usage variable based on a second formula is represented as: BitUsage=BitUsage+PacketSize,where the second usage variable is BitUsage, and PacketSize is a size of a received packet in bits.
  • 13. The system of claim 10, wherein the processing system is configured to facilitate: determining whether an end of the policing period is reached,at a beginning of each policing period, initializing a first usage variable and initializing a second usage variable, andfor each packet received during a respective policing period, calculating the first usage variable, calculating the second usage variable, determining whether the first usage variable is less than or equal to the first credit parameter, determining whether the second usage variable is less than or equal to the second credit parameter, and using the request representing the reservation request when the first usage variable is less than or equal to the first credit parameter and when the second usage variable is less than or equal to the second credit parameter.
  • 14. The system of claim 10, wherein the processing system is configured to facilitate: using the opportunistic reservation request when the first usage variable is greater than the first credit parameter or when the second usage variable is greater than the second credit parameter.
  • 15. A computer program product comprising instructions stored in a tangible computer-readable storage medium, the instructions comprising: instructions for calculating a policing period;instructions for calculating a first credit parameter;instructions for initializing a first usage variable;instructions for calculating the first usage variable based on a first formula;instructions for determining whether the first usage variable is less than or equal to the first credit parameter; andinstructions for using a request representing a reservation request when the first usage variable is less than or equal to the first credit parameter,wherein the reservation request is different from an opportunistic reservation request.
  • 16. The computer program product of claim 15, wherein the instructions comprise: instructions for calculating a second credit parameter;instructions for initializing a second usage variable;instructions for calculating the second usage variable based on a second formula; andinstructions for determining whether the second usage variable is less than or equal to the second credit parameter,wherein the instructions for using a request comprise instructions for using the request representing the reservation request when the first usage variable is less than or equal to the first credit parameter and when the second usage variable is less than or equal to the second credit parameter.
  • 17. The computer program product of claim 16, wherein the policing period is represented as Tpp, one policing period represents one Tpp, the first credit parameter represents a packet credit, the second credit parameter represents a bit credit, the first usage variable represents a packet usage, and the second usage variable represents a bit usage,wherein the instructions for calculating a first credit parameter comprise instructions for calculating the packet credit based on a burst size, andwherein the instructions for calculating a second credit parameter comprise instructions for calculating the bit credit based on a packet size.
  • 18. The computer program product of claim 16, wherein the instructions for calculating the first usage variable based on a first formula are represented as: PacketUsage=PacketUsage+1,where the first usage variable is PacketUsage, andwherein the instructions for calculating the second usage variable based on a second formula are represented as: BitUsage=BitUsage+PacketSize,where the second usage variable is BitUsage, and PacketSize is a size of a received packet in bits.
  • 19. The computer program product of claim 16, wherein the instructions comprise: instructions for determining whether an end of the policing period is reached,at a beginning of each policing period, instructions for initializing a first usage variable and initializing a second usage variable, andfor each packet received during a respective policing period, instructions for calculating the first usage variable, calculating the second usage variable, determining whether the first usage variable is less than or equal to the first credit parameter, determining whether the second usage variable is less than or equal to the second credit parameter, and using the request representing the reservation request when the first usage variable is less than or equal to the first credit parameter and when the second usage variable is less than or equal to the second credit parameter.
  • 20. The computer program product of claim 16, wherein the instructions comprise: instructions for using the opportunistic reservation request when the first usage variable is greater than the first credit parameter or when the second usage variable is greater than the second credit parameter.
CROSS-REFERENCED TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 13/031,688 filed Feb. 22, 2011, entitled “METHOD AND APPARATUS FOR POLICING A QoS FLOW IN A MoCA 2.0 NETWORK”, which is a non-provisional of U.S. Provisional Patent No. 61/306,623, filed Feb. 22, 2010, entitled “PQoS Policing Support for MoCA 2.0” both of which are incorporated by reference herein in their entirety.

US Referenced Citations (221)
Number Name Date Kind
3836888 Boenke et al. Sep 1974 A
4413229 Grant Nov 1983 A
4536875 Kume et al. Aug 1985 A
4608685 Jain et al. Aug 1986 A
4893326 Duran et al. Jan 1990 A
5052029 James et al. Sep 1991 A
5170415 Yoshida et al. Dec 1992 A
5343240 Yu Aug 1994 A
5421030 Baran May 1995 A
5440335 Beveridge Aug 1995 A
5570355 Dail et al. Oct 1996 A
5638374 Heath Jun 1997 A
5671220 Tonomura Sep 1997 A
5796739 Kim et al. Aug 1998 A
5802173 Hamilton-Piercy et al. Sep 1998 A
5805591 Naboulsi et al. Sep 1998 A
5805806 McArthur Sep 1998 A
5815662 Ong Sep 1998 A
5822677 Peyrovian Oct 1998 A
5822678 Evanyk Oct 1998 A
5845190 Bushue et al. Dec 1998 A
5850400 Eames et al. Dec 1998 A
5854887 Kindell et al. Dec 1998 A
5856975 Rostoker et al. Jan 1999 A
5877821 Newlin et al. Mar 1999 A
5886732 Humpleman Mar 1999 A
5896556 Moreland et al. Apr 1999 A
5917624 Wagner Jun 1999 A
5930493 Ottesen et al. Jul 1999 A
5963844 Dail Oct 1999 A
5982784 Bell Nov 1999 A
6009465 Decker et al. Dec 1999 A
6028860 Laubach et al. Feb 2000 A
6055242 Doshi et al. Apr 2000 A
6069588 O'Neill, Jr. May 2000 A
6081519 Petler Jun 2000 A
6081533 Laubach et al. Jun 2000 A
6111911 Sanderford, Jr. et al. Aug 2000 A
6118762 Nomura et al. Sep 2000 A
6157645 Shobatake Dec 2000 A
6167120 Kikinis Dec 2000 A
6192070 Poon et al. Feb 2001 B1
6219409 Smith et al. Apr 2001 B1
6229818 Bell May 2001 B1
6243413 Beukema Jun 2001 B1
6304552 Chapman et al. Oct 2001 B1
6307862 Silverman Oct 2001 B1
6434151 Caves et al. Aug 2002 B1
6466651 Dailey Oct 2002 B1
6481013 Dinwiddie et al. Nov 2002 B1
6526070 Bernath et al. Feb 2003 B1
6553568 Fijolek et al. Apr 2003 B1
6563829 Lyles et al. May 2003 B1
6567654 Coronel Arredondo et al. May 2003 B1
6611537 Edens et al. Aug 2003 B1
6622304 Carhart Sep 2003 B1
6637030 Klein Oct 2003 B1
6650624 Quigley et al. Nov 2003 B1
6745392 Basawapatna et al. Jun 2004 B1
6763032 Rabenko et al. Jul 2004 B1
6785296 Bell Aug 2004 B1
6816500 Mannette et al. Nov 2004 B1
6831899 Roy Dec 2004 B1
6836515 Kay et al. Dec 2004 B1
6859899 Shalvi et al. Feb 2005 B2
6862270 Ho Mar 2005 B1
6877043 Mallory et al. Apr 2005 B2
6877166 Roeck et al. Apr 2005 B1
6898210 Cheng et al. May 2005 B1
6930989 Jones, IV et al. Aug 2005 B1
6940833 Jonas et al. Sep 2005 B2
6950399 Bushmitch et al. Sep 2005 B1
6961314 Quigley et al. Nov 2005 B1
6985437 Vogel Jan 2006 B1
6996198 Cvetkovic Feb 2006 B2
7035270 Moore, Jr. et al. Apr 2006 B2
7065779 Crocker et al. Jun 2006 B1
7089580 Vogel et al. Aug 2006 B1
7116685 Brown et al. Oct 2006 B2
7127734 Amit Oct 2006 B1
7133697 Judd et al. Nov 2006 B2
7142553 Ojard et al. Nov 2006 B1
7146632 Miller Dec 2006 B2
7149220 Beukema et al. Dec 2006 B2
7194041 Kadous Mar 2007 B2
7292527 Zhou et al. Nov 2007 B2
7296083 Barham et al. Nov 2007 B2
7327754 Mills et al. Feb 2008 B2
7372853 Sharma et al. May 2008 B2
7460543 Malik et al. Dec 2008 B2
7487532 Robertson et al. Feb 2009 B2
7532642 Peacock May 2009 B1
7532693 Narasimhan May 2009 B1
7555064 Beadle Jun 2009 B2
7574615 Weng et al. Aug 2009 B2
7606256 Vitebsky et al. Oct 2009 B2
7652527 Ido et al. Jan 2010 B2
7653164 Lin et al. Jan 2010 B2
7664065 Lu Feb 2010 B2
7675970 Nemiroff et al. Mar 2010 B2
7697522 Kliger et al. Apr 2010 B2
7742495 Kliger et al. Jun 2010 B2
7782850 Kliger et al. Aug 2010 B2
7783259 Dessert et al. Aug 2010 B2
7817642 Ma et al. Oct 2010 B2
7860092 Yoon et al. Dec 2010 B2
7916756 Atsumi et al. Mar 2011 B2
8090043 Levi et al. Jan 2012 B2
8098770 Shusterman Jan 2012 B2
8184550 Beck et al. May 2012 B2
20010039660 Vasilevsky et al. Nov 2001 A1
20020010562 Schleiss et al. Jan 2002 A1
20020059623 Rodriguez et al. May 2002 A1
20020059634 Terry et al. May 2002 A1
20020069417 Kliger et al. Jun 2002 A1
20020078247 Lu et al. Jun 2002 A1
20020078249 Lu et al. Jun 2002 A1
20020097821 Hebron et al. Jul 2002 A1
20020105970 Shvodian Aug 2002 A1
20020136231 Leatherbury et al. Sep 2002 A1
20020141347 Harp et al. Oct 2002 A1
20020150155 Florentin et al. Oct 2002 A1
20020166124 Gurantz et al. Nov 2002 A1
20020174423 Fifield et al. Nov 2002 A1
20020194605 Cohen et al. Dec 2002 A1
20030013453 Lavaud et al. Jan 2003 A1
20030016751 Vetro et al. Jan 2003 A1
20030022683 Beckmann et al. Jan 2003 A1
20030060207 Sugaya et al. Mar 2003 A1
20030063563 Kowalski Apr 2003 A1
20030066082 Kliger et al. Apr 2003 A1
20030099253 Kim May 2003 A1
20030152059 Odman Aug 2003 A1
20030169769 Ho et al. Sep 2003 A1
20030193619 Farrand Oct 2003 A1
20030198244 Ho et al. Oct 2003 A1
20040004934 Zhu et al. Jan 2004 A1
20040037366 Crawford Feb 2004 A1
20040047284 Eidson Mar 2004 A1
20040107445 Amit Jun 2004 A1
20040163120 Rabenko et al. Aug 2004 A1
20040172658 Rakib et al. Sep 2004 A1
20040177381 Kliger et al. Sep 2004 A1
20040224715 Rosenlof et al. Nov 2004 A1
20040258062 Narvaez Dec 2004 A1
20050015703 Terry et al. Jan 2005 A1
20050097196 Wronski et al. May 2005 A1
20050152350 Sung et al. Jul 2005 A1
20050152359 Giesberts et al. Jul 2005 A1
20050175027 Miller et al. Aug 2005 A1
20050204066 Cohen et al. Sep 2005 A9
20050213405 Stopler Sep 2005 A1
20060059400 Clark et al. Mar 2006 A1
20060062250 Payne Mar 2006 A1
20060078001 Chandra et al. Apr 2006 A1
20060104201 Sundberg et al. May 2006 A1
20060256799 Eng Nov 2006 A1
20060256818 Shvodian et al. Nov 2006 A1
20060268934 Shimizu et al. Nov 2006 A1
20060280194 Jang et al. Dec 2006 A1
20070025317 Bolinth et al. Feb 2007 A1
20070040947 Koga Feb 2007 A1
20070127373 Ho et al. Jun 2007 A1
20070160213 Un et al. Jul 2007 A1
20070171919 Godman et al. Jul 2007 A1
20070183786 Hinosugi et al. Aug 2007 A1
20070206551 Moorti et al. Sep 2007 A1
20070217436 Markley et al. Sep 2007 A1
20070253379 Kumar et al. Nov 2007 A1
20070286121 Kolakowski et al. Dec 2007 A1
20080037487 Li et al. Feb 2008 A1
20080037589 Kliger et al. Feb 2008 A1
20080080369 Sumioka et al. Apr 2008 A1
20080089268 Kinder et al. Apr 2008 A1
20080178229 Kliger et al. Jul 2008 A1
20080189431 Hyslop et al. Aug 2008 A1
20080212591 Wu et al. Sep 2008 A1
20080225832 Kaplan et al. Sep 2008 A1
20080238016 Chen et al. Oct 2008 A1
20080271094 Kliger et al. Oct 2008 A1
20080273591 Brooks et al. Nov 2008 A1
20080279219 Wu et al. Nov 2008 A1
20080298241 Ohana et al. Dec 2008 A1
20090063878 Schmidt et al. Mar 2009 A1
20090092154 Malik et al. Apr 2009 A1
20090106801 Horii Apr 2009 A1
20090122901 Choi et al. May 2009 A1
20090165070 McMullin et al. Jun 2009 A1
20090217325 Kliger et al. Aug 2009 A1
20090252172 Hare Oct 2009 A1
20090254794 Malik et al. Oct 2009 A1
20090257483 French et al. Oct 2009 A1
20090285212 Chu et al. Nov 2009 A1
20090296578 Bernard et al. Dec 2009 A1
20090316589 Shafeeu Dec 2009 A1
20100031297 Klein et al. Feb 2010 A1
20100080312 Moffatt et al. Apr 2010 A1
20100150016 Barr Jun 2010 A1
20100158013 Kliger et al. Jun 2010 A1
20100158015 Wu Jun 2010 A1
20100158021 Kliger et al. Jun 2010 A1
20100158022 Kliger et al. Jun 2010 A1
20100162329 Ford et al. Jun 2010 A1
20100174824 Aloni et al. Jul 2010 A1
20100185731 Wu Jul 2010 A1
20100185759 Wu Jul 2010 A1
20100214916 Wu et al. Aug 2010 A1
20100238932 Kliger et al. Sep 2010 A1
20100246586 Ohana et al. Sep 2010 A1
20100254278 Kliger et al. Oct 2010 A1
20100254402 Kliger et al. Oct 2010 A1
20100281195 Daniel et al. Nov 2010 A1
20100284474 Kliger et al. Nov 2010 A1
20100290461 Kliger et al. Nov 2010 A1
20100322134 Wu Dec 2010 A1
20110001833 Grinkemeyer et al. Jan 2011 A1
20110013633 Klein et al. Jan 2011 A1
20110080850 Klein et al. Apr 2011 A1
20110205891 Kliger et al. Aug 2011 A1
20110206042 Tarrab et al. Aug 2011 A1
20110310907 Klein et al. Dec 2011 A1
Foreign Referenced Citations (14)
Number Date Country
1422043 Jun 2003 CN
1588827 Mar 2005 CN
0385695 Sep 1990 EP
0622926 Nov 1994 EP
1501326 Jan 2005 EP
60160231 Aug 1985 JP
9827748 Jun 1998 WO
9831133 Jul 1998 WO
9935753 Jul 1999 WO
9946734 Sep 1999 WO
0031725 Jun 2000 WO
0055843 Sep 2000 WO
0180030 Oct 2001 WO
0219623 Mar 2002 WO
Non-Patent Literature Citations (6)
Entry
International Search Report for International Application No. PCT/US03/27253 dated Dec. 30, 2003 (4 pgs).
International Search Report for International Application No. PCT/US03/27254 dated Feb. 3, 2004 (5 pgs).
“MoCA: Ubiquitous Multimedia Networking in the Home, Proc of SPIE vol. 6776 67760C-1”, Shlomo Ovadia, SPIE, Bellingham, WA, May 28, 2010.
“MoCA Brewing Up Bigger Bandwidth, CTO Anton Monk Outlines Plans for MoCA 2.0 Home-Networking Specification” (<http://www.multichannel.com/article/160878-MoCa—Brewing—Up—bigger—Bandwidth.php>), Multichannel News, New York, NY, Dec. 15, 2008.
“Home Networking on Coax for Video and Multimedia, Overview for IEEE 802.1AVB”, Shlomo Ovadia, San Ramon, California, May 30, 2007.
“Microtune Introduces Industry's First 1-GHZ Cable Tuners Compatible with MoCA—Home Networking Standard”, Business Wire, San Francisco, California, Mar. 19, 2007.
Related Publications (1)
Number Date Country
20140056138 A1 Feb 2014 US
Provisional Applications (1)
Number Date Country
61306623 Feb 2010 US
Continuations (1)
Number Date Country
Parent 13031688 Feb 2011 US
Child 14072618 US