Abstract:
A Cable Modem Termination System (CMTS) comprising a receiver configured to receive a plurality of upstream transmission request messages from a plurality of coaxial units via an electro-optical network, wherein the upstream transmission request messages each request permission to transmit a specified amount of data, a processor coupled to the receiver and configured to allocate Orthogonal Frequency-Division Multiplexing (OFDM) minislots to each coaxial unit based on the amount of data requested in the associated upstream transmission request message, and a transmitter coupled to the processor and configured to transmit at least one Uplink Allocation Map (UL-MAP) message to indicate minislot allocations to the coaxial units.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    Not applicable. 
       STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT 
       [0002]    Not applicable. 
       REFERENCE TO A MICROFICHE APPENDIX 
       [0003]    Not applicable. 
       BACKGROUND 
       [0004]    A passive optical network (PON) is one system for providing network access over “the last mile.” The PON is a point-to-multi-point (P2MP) network comprised of an optical line terminal (OLT) at the central office, an optical distribution network (ODN), and a plurality of optical network units (ONUs) at the customer premises. Ethernet passive optical network (EPON) is a PON standard developed by the Institute of Electrical and Electronics Engineers (IEEE) and specified in IEEE 802.3ah, incorporated herein by reference. In EPON, a single fiber can be used for both the upstream and the downstream transmission with different wavelengths. The OLT implements an EPON Media Access Control (MAC) layer for transmission of Ethernet Frames. The Multi-Point Control Protocol (MPCP) performs the bandwidth assignment, bandwidth polling, auto-discovery, and ranging. Ethernet frames are broadcast downstream based on the Logical Link Identifier (LLID) embedded in the preamble frame. Upstream bandwidth is assigned based on the exchange of Gate and Report messages between an OLT and an ONU. 
         [0005]    Ethernet over Coaxial (EoC) is a generic name used to describe all technologies which can be used for transmission of Ethernet frames over a unified optical-coaxial network. The name comes from the fact that, except for Data Over Cable Service Interface Specification (DOCSIS), all these technologies have in common that the Ethernet Frames are transmitted in the MAC layer. Different EoC technologies exist, including Multimedia over Coax Alliance (MoCA), G.hn (a common name for a home network technology family of standards developed under the International Telecommunication Union (ITU) and promoted by the HomeGrid Forum), HomePNA Alliance (HPNA), and Home Plug Audio/Visual (A/V), and they have been adapted to run the outdoor coaxial access from an ONU to an EoC Head End with connected Customer Premises Equipment (CPEs) located in the subscriber homes 
         [0006]    There is a rising demand which requires the use of EPON as an access system to interconnect with multiple coaxial cables to terminate the Coaxial Network Units (CNUs) located in the subscriber&#39;s home with an Ethernet PON over Coaxial (EPoC) architecture. 
     
    
     DETAILED DESCRIPTION 
       [0007]    Ethernet Passive Optical Network (EPON) Time Quanta (TQ) number carried in GATE/REPORT message has to be translated to the resource number when scheduling the resource allocation from the EPON Optical domain to the EPoC Coax Domain. 
         [0008]    EPON TQ carried in the EPON GATE/REPORT message in the EPON Fiber Optical Network can be translated to one of the 3 or any combination of the 3 in the EPoC Coax network: Number of bytes to be allocated or N×TQ number of bytes N is N times of TQ in the optical and multiplied by N numbers for the EPoC in the coax network Time duration of the OFDM subcarriers/blocks/slots/groups/symbols allocation Number or N×numbers of OFDM subcarriers/blocks/groups/symbols to be allocated The translation of TQ to one or combination of the above items can either be fixed, configurable or dynamic changed among EPON OLT, EPoC FCU and EPOC CNUs. 

 
         [0009]      FIG. 1  illustrates an embodiment of a unified optical-coaxial network  100  comprising an optical portion  150  and a coaxial (electrical) portion  152 . The unified optical-coaxial network  100  may include an OLT  110 , at least one CNU  130  coupled to a plurality of subscriber devices  140 , and a CLT  120  positioned between the OLT  110  and the CNU  130 , e.g., between the optical portion  150  and the coaxial portion  152 . The OLT  110  may be coupled via an Optical Distribution Network (ODN)  115  to the CLTs  120 , and optionally to one or more ONUs (not shown) in the optical portion  150 . The ODN  115  may comprise fiber optics and an optical splitter  117  that couples OLT  110  to the CLT  120  and any ONUs. The CLT  120  may be coupled to the CNUs  130  via an electrical distribution network (EDN)  135 , which may comprise a cable splitter  137 . Although  FIG. 1  shows one CLT  120  and one CNU  130 , the unified optical-coaxial network  100  may comprise any number of CLTs  120  and corresponding CNUs  130 . The components of unified optical-coaxial network  100  may be arranged as shown in  FIG. 1  or any other suitable arrangement. 
         [0010]    The optical portion  150  of the unified optical-coaxial network  100  may be similar to a PON in that it may be a communications network that does not require any active components to distribute data between the OLT  110  and the CLT  120 . Instead, the optical portion  150  may use the passive optical components in the ODN  115  to distribute data between the OLT  110  and the CLT  120 . Examples of suitable protocols that may be implemented in the optical portion  150  include the asynchronous transfer mode PON (APON) and the broadband PON (BPON) defined by the ITU Telecommunication Standardization Sector (ITU-T) G.983 standard, Gigabit PON (GPON) defined by the ITU-T G.984 standard, the EPON defined by the IEEE 802.3ah standard, and the wavelength division multiplexing (WDM) PON (WDM-PON), all of which are incorporated by reference as if reproduced in their entirety. 
         [0011]    The OLT  110  may be any device configured to communicate with the CNUs  130  via the CLT  120 . The OLT  110  may act as an intermediary between the CLTs  120  or CNUs  130  and another network (not shown). The OLT  110  may forward data received from the other network to the CLTs  120  or CNUs  130  and forward data received from the CLTs  120  or CNUs  130  onto the other network. Although the specific configuration of the OLT  110  may vary depending on the type of optical protocol implemented in the optical portion  150 , in an embodiment, OLT  110  may comprise an optical transmitter and an optical receiver. When the other network is using a network protocol that is different from the protocol used in the optical portion  150 , OLT  110  may comprise a converter that converts the other network protocol into the optical portion  150  protocol. The OLT converter may also convert the optical portion  150  protocol into the other network protocol. 
         [0012]    The ODN  115  may be a data distribution system that may comprise optical fiber cables, couplers, splitters, distributors, and/or other equipment. In an embodiment, the optical fiber cables, couplers, splitters, distributors, and/or other equipment are passive optical components. Specifically, the optical fiber cables, couplers, splitters, distributors, and/or other equipment may be components that do not require any power to distribute data signals between the OLT  110  and the CLT  120 . It should be noted that the optical fiber cables may be replaced by any optical transmission media in some embodiments. In some embodiments, the ODN  115  may comprise one or more optical amplifiers. The ODN  115  typically extends from the OLT  110  to the CLT  120  and any optional ONUs (not shown) in a branching configuration as shown in  FIG. 1 , but may be alternatively configured as determined by a person of ordinary skill in the art. 
         [0013]    The CLT  120  may be any device or component configured to forward downstream data from the OLT  110  to the corresponding CNUs  130  and forward upstream data from the CNUs  130  to the OLT  110 . The CLT  120  may convert the downstream and upstream data appropriately to transfer the data between the optical portion  150  and the coaxial portion  152 . The data transferred over the ODN  115  may be transmitted or received in the form of optical signals, and the data transferred over the EDN  135  may be transmitted or received in the form of electrical signals that may have the same or different logical structure as compared with the optical signals. As such, the CLT  120  may encapsulate or frame the data in the optical portion  150  and the coaxial portion  152  differently. In an embodiment, the CLT  120  includes a media access control (MAC) layer  125  and PHY layers, corresponding to the type of signals carried over the respective media. The MAC layer  125  may provide addressing and channel access control services to the PHY layers. As such, the PHY may comprise an optical PHY  127  and a coaxial PHY  129 . In many embodiments, the CLT  120  is transparent to the CNU  130  and OLT  110  in that the frames sent from the OLT  110  to the CNU  130  may be directly addressed to the CNU  130  (e.g. in the destination address), and vice-versa. As such, the CLT  120  intermediates between network portions, namely an optical portion  150  and a coaxial portion  152  in the example of  FIG. 1 . As discussed further below, an identifier may be associated with each CLT  120 , and the identifier may uniquely identify the each CLT  120 . 
         [0014]    The electrical portion  152  of the unified electrical and coaxial network  100  may be similar to any known electrical communication system. The electrical portion  152  may not require any active components to distribute data between the CLT  120  and the CNU  130 . Instead, the electrical portion  152  may use the passive electrical components in the electrical portion  152  to distribute data between the CLT  120  and the CNUs  130 . Alternatively, the electrical portion  152  could use some active components, such as amplifiers. Examples of suitable protocols that may be implemented in the electrical portion  152  include MoCA, G.hn, HPNA, and Home Plug A/V. 
         [0015]    The EDN  135  may be a data distribution system that may comprise electrical cables (e.g. coaxial cable, twisted wires, etc.), couplers, splitters, distributors, and/or other equipment. In an embodiment, the electrical cables, couplers, splitters, distributors, and/or other equipment are passive electrical components. Specifically, the electrical cables, couplers, splitters, distributors, and/or other equipment may be components that do not require any power to distribute data signals between the CLT  120  and the CNU  130 . It should be noted that the electrical cables may be replaced by any electrical transmission media in some embodiments. In some embodiments, the EDN  135  may comprise one or more electrical amplifiers. The EDN  135  typically extends from the CLT  120  to the CNU  130  in a branching configuration as shown in  FIG. 1 , but may be alternatively configured as determined by a person of ordinary skill in the art. 
         [0016]    In an embodiment, the CNUs  130  may be any devices that are configured to communicate with the OLT  110 , the CLT  120 , and any subscriber devices  140 . Specifically, the CNUs  130  may act as an intermediary between the CLT  120  and the subscriber devices  140 . For instance, the CNUs  130  may forward data received from the CLT  120  to the subscriber devices  140 , and forward data received from the subscriber devices  140  onto the OLT  110 . Although the specific configuration of the CNUs  130  may vary depending on the type of unified optical-coaxial network  100 , in an embodiment the CNUs  130  may comprise an electrical transmitter configured to send electrical signals to the CLT  120  and an electrical receiver configured to receive electrical signals from the CLT  120 . Additionally, the CNUs  130  may comprise a converter that converts the electrical signal into electrical signals for the subscriber devices  140 , such as signals in the asynchronous transfer mode (ATM) protocol, and a second transmitter and/or receiver that may send and/or receive the electrical signals to the subscriber devices  140 . In some embodiments, CNUs  130  and coaxial network terminals (CNTs) are similar, and thus the terms are used interchangeably herein. The CNUs  130  may be typically located at distributed locations, such as the customer premises, but may be located at other locations as well. 
         [0017]    This disclosure explains the proposed method of allocating orthogonal frequency-division multiple access resource blocks in the context of a hybrid fiber/copper access network for illustration purposes only. The disclosed method of allocating orthogonal frequency-division multiple access resource blocks may apply to any orthogonal frequency-division multiple access or coaxial based access technology. 
         [0018]    This disclosure proposes a method that may translate a 1-Dimentional based EPON TQ allocation to a 2-Dimentional EPoC OFDM resource block allocation in Frequency and Time domain without carrying OFDM MAP information in the OFDM symbol with key Disclosure Advantages:
       1) Complete an end to end network operation from the EPON to EPoC for a seamless translation of optical resource to the coax resource allocation   2) No Change in EPON MPCP GATE/REPORT messages which carry the TQ information for the optical resource allocation.       
 
         [0021]    An EPON architecture may provide a fiber connection between OLT and ONU connected network where EPON fiber is terminated from an OLT to ONU or ONUs on a point or multi-point connection. 
         [0022]    To support a seamless network operation from the EPON to EPoC, we may translate the EPON resource allocation specified for the EPON Optical Network to the resource allocation specified for the EPoC Coax Network. 
         [0023]    This resource translation from EPON to EPoC may come with a fixed or configurable definition of TQs carried in the EPON GATE/REPORT messages to and from the OFDM subcarriers defined for the coax network in the EPoC. 
         [0024]    EPON TQ carried in the EPON GATE/REPORT message in the EPON Fiber Optical Network may be translated to one of the 3 or any combination of the 3 in the EPoC Coax network:
       1. Number of bytes to be allocated or N×TQ number of bytes N is N times of TQ in the optical and multiplied by N numbers for the EPoC in the coax network   2. Time duration of the OFDM subcarriers/blocks/slots/groups/symbols allocation   3. Number or N×numbers of OFDM subcarriers/blocks/groups/symbols to be allocated       
 
         [0028]    The translation of TQ to one or combination of the above items may either be fixed, configurable or dynamic changed among EPON OLT, EPoC FCU and EPOC CNUs 

 
         [0029]    An EPoC network may run across two network domains from EPON optical domain to the EPoC coax domain. In optical domain, the EPON resource allocation is based on TQ and in coax domain, the OFDM based EPoC may be based on the OFDM resource blocks or subcarriers available for the communications between CNUs and FCU. 
         [0030]    As described, the EPON TQ number may be translated to the resource number when scheduling the resource allocation from the EPON Optical domain to the EPoC Coax Domain. The translation may take different forms or methods. However, the ultimate goal may be to use the TQ information stored in the EPON MPCP message and translate it to the OFDM resource allocation in the EPoC. The format of translation may come with different formats. This disclosure may describe both formats and the methods for this translation. Based on the TQ measured in the EPON Gate message, EPoC may translate a TQ unit to the corresponding Resource Block size for the EPoC upstream transmission:
       1 TQ=16 ns or 2 bytes in 1 Gbps or 20 bytes in 10 Gbps EPON. However, EPoC can translate the time duration differently from EPON, for example, 1 TQ in EPON can be, say, 2 bytes or N×2 bytes.   A configurable translation of TQ for EPoC shall be made available across the EPOC devices, OLT, FCU or CNU.   The allocated number of TQs in the EPON GATE message needs to be translated by the EPoC CNU when making the upstream transmission   i.e. the proper corresponding of the OFDM resource block needs to be allocated based on the assigned TQ units specified in the EPON GATE/REPORT message.   For example, if OFDM symbol size is 20 us then 20 us/16 ns=1250 TQs meaning 1250 TQ=1 OFDM symbol       
 
         [0036]    General Parameters of this Disclosure:
       1. A configurable translation of TQ for EPoC may be made available across the EPON to EPoC devices, can be in OLT, FCU or CNU; for example: 1 EPON Optical TQ=64 OFDM subcarriers ie a constant value for translating TQ to the resource block may be made available among OLT, FCUs and CNUs   2. The translation of TQ can be accommodated with the size of the queues in CNUs or the 2D width of OFDM symbol size and subcarrier width/length which may be compliant with the EPON TQ size   3. A number of profile pointers (may be service related, such as voice or data) may be made available for the CNUs to separate its own allocated OFDM symbol or subcarrier spaces from other CNUs for transmitting   4. These profile pointers may be generated by the random sequence numbers as long as the profile pointers can be made to separate one LLID/CNU to another LLID/CNU within an OFDM burst block where an OFDM burst block may contain the data from multiple CNUs across multiple OFDM symbols. A given CNU can have one or multiple profile pointer types/patterns which can be related to the cable plant condition or SNR for a specific CNU to select a specific (CNU PHY ID or Profile ID carried in Profile Pointer), modulation order, FEC scheme, CP or codeword length which describe the resource allocation capacity from these OFDM symbols   5. The profile pointers may be carried in the vertical or horizontal position within an OFDM symbol/block/slot/group/frame and can use portion or entire OFDM subcarrier or symbol, as long as the information carried in the profile pointer can be used to indicate required Modulation Order, FEC Scheme and can separate the data stream one LLID or CNU from another LLID or CNU.   6. These profile pointers may be either different or the same for each CNU or different/same for each LLID within a CNU       
 
         [0043]    There may be 2 methods of partitioning the EPoC OFDM resource blocks (RBs) or group of subcarriers:
       1 st -Method: based on the OFDM subcarrier capacity where a group of subcarriers has the same bit loading capacity   2 nd -Method: based on the number of subcarriers or tones where each subcarrier may have different bit loading capacity, but, the RB or group of subcarriers have the same number of tones in each of the RB or group of subcarriers       
 
         [0046]    TQ number (TQ number prefer to be power(n) of 2, and the 1 st  one in 2̂n TQs corresponds to the 1 st  RB in symbols group) can be mapped into the resource of M symbols group. A TQ may be translated to the OFDM RB number or multiple RBs in N×RBs or 1/N of RBs. 
         [0047]    Using the 1 st  method, the total OFDM subcarrier capacity may be similar within a group of subcarriers in the EPoC OFDM upstream burst. Different CNUs may have different profiles dues to different SNR, but they may use the same sub-carrier number, (e.g. a similar subcarrier may load with different bit loading depending on which CNU is using it (the CNU bit loading information can be assigned as a CNU profile). 
         [0048]    Using the 2 nd  method, RB has a similar number of tones for every RB in the burst block, but has different carrying capacity or modulation order dues to different SNR., (e.g. Different profile pointer may be assigned and selected by the CNUs based on its own cable plant condition and adapt different bit loading to the number of allocated subcarriers. 
         [0049]    The core proposal of this disclosure may be to translate 1-Dimentional based EPON TQ allocation to a 2-Dimentional EPoC OFDM resource block allocation in Frequency and Time domain. Both 2-D resource number and 1-D TQ number can be a power of two (i.e., 2̂n) during a certain cycle duration. The data carrying capacity or subcarrier number of 2-D resource (frequency and time) is equally divided by 2̂n, and mapped into 1-D resource(TQ). The certain number, 1 st  one or more numbers in 2̂n may be used to carry the profile pointer to indicate the resource boundary (or profile information for a specific CNU) to separate resource allocation from one LLID or one CNU from another LLID or another CNU within a bursted OFDM frame/group/block/slot. 

 
         [0050]    Prefer TQ number to be power of 2. Translation of EPON TQ to EPoC OFDM Resource Allocation with 1 to 3 options or any of the option combinations:
       1. Translate EPON TQ Number to EPoC Resource Block Number   2. Translate EPON TQ Number to EPoC OFDM subcarriers in Byte or Bit Counts   3. Translate EPON TQ Number to EPoC OFDM Symbol duration       
 
         [0054]    For example: TQ=OFDM duration=bit counts or=number of OFDM subcarrier allocation. In any of 3 translations, there are 2 methods to implement these translations:
       1 st  method, keeping total number of bit loads within a group of subcarriers be a constant   2 nd  method, keeping the subcarriers or tone numbers be a constant       
 
         [0057]    In any of the methods, the N×constant (16 bits in CNU2×2=32 bits for CNU1) may be made for assigning the bit load capacity or tone numbers. 
         [0058]    For the 1 st  Method, each RB may have a similar carrying capacity to a CNU and each RB may have a similar sub-carrier numbers with different CNUs assigned with different profiles. 

 
         [0059]    In the 2 nd  Method, each RB may have similar tone numbers to different CNUs/profiles and each RB may have different carrying capacity to a CNU. 

 
         [0060]    In this case, there may be M×N tones in M symbols group, and they may correspond to K number of TQs. So the M×N resource may be equally divided into K number with certain carrying capacity in symbols group, and the carrying capacity of RB may be the same in the same burst. It may be good for burst boundary if K is a power of two. Or total number of bit loading in one RB=M×N carrying capacity/K number of RBs and K may be power of 2. 

 
         [0061]    In this case, there may be M×N 2-D resource in M symbols group, and they may correspond to K TQs. So the M×N resource may be equally divided into I×K RBs with tone number in symbols group, and the tone numbers of RBs may be similar in all bursts. But the bitload in each subcarrier may be different. It may good for burst boundary if K is a power of two. Number of tones in each RB=Total number of tones in a burst frame/number of TQs in power of 2 
         [0062]    Some Disclosure Advantages:
       1) Complete an end to end network operation from the EPON to EPoC for a seamless translation of optical resource to the coax resource allocation   2) No Change in EPON MPCP GATE/REPORT messages which may carry the TQ information for the optical resource allocation 

       
 
         [0065]    For example, 4K FFT (4096 subcarriers in one symbol duration) with 21.25 us=39424 bits or 20 us=total bits of symbol is 37632 bits;
       Per TQ unit translated to the bit capacity=37632/1328.125 TQ=28.335 bits;   Subcarrier allocation may be due to this capacity of TQ, procedure is   1. Find the start carrier index, due to start time of this symbol and capacity;   2. From the start subcarrier, search enough subcarriers which loading capacity is the amount of TQ allocated to this EPoC CNU 

       
 
         [0070]    Translation of EPON TQ to EPoC OFDM Resource Allocation with 1 to 3 options or any of the option combinations:
       1. Translate EPON TQ Number to EPoC Resource Block Number   2. Translate EPON TQ Number to EPoC OFDM subcarriers in Byte or Bit Counts   3. Translate EPON TQ Number to EPoC OFDM Symbol duration       
 
         [0074]    For example: TQ=OFDM duration=bit counts or=number of OFDM subcarrier allocation. In any of 3 translations, there may be 2 methods to implement these translations:
       1 st  method, keeping total number of bit loads within a group of subcarriers be a constant   2 nd  method, keeping the subcarriers or tone numbers be a constant       
 
         [0077]    In any of the methods, the N×constant (12 bits in CNU2×2=24 bits for CNU1) has to be made for assigning the bit load capacity or tone numbers. 

 
         [0078]    Assuming there are 8×11=88 tones 2-D resource in 8 symbols group, and these total carrying bits may be 16×64 bits. If there is 2̂6 or 64 TQs during this cycle duration, the average carrying capacity of RB may equal to 16×64 bits are divided by 64. Each RB may have 16 bits in this case or Average number of bit loading in RB=Total Carrying Capacity/2 power of 6 from TQ number. 

 
         [0079]    Assuming there are 8×8 2-D resource in 8 symbols group. If there may be 2̂5 TQs during this cycle duration, the average carrier number of RB equals to 64 tones are divided by 32. Each RB has 2 tones in this case. Total number of tones/number of TQs in power of 2=Average Number of tones in each RB 

 
         [0080]    In this case, there are M×N 2-D resource in M symbols group, and they may correspond to K 1-D resource TQs. So the M×N resource may be equally divided into K RBs with certain carrying capacity in symbols group, and the carrying capacity of RB may be similar in the same burst. 

 
         [0081]    In this case, there may be M×N 2-D resource in M symbols group, and they may correspond to K 1-D resource TQs. So the M×N resource may be equally divided into K RBs with certain carrying capacity in symbols group, and the carrying capacity of RB may be similar in the same burst. 

 
         [0082]    In this case, there may be M×N 2-D resource in M symbols group, and they may correspond to K 1-D resource TQs. So the M×N resource may be equally divided into K RBs with certain carrying capacity in symbols group, and the carrying capacity of RB may be similar in the same burst. 

 
         [0083]    In this case, there may be M×N 2-D resource in M symbols group, and they may correspond to K 1-D resource TQs. So the MxN resource may be equally divided into K RBs with certain carrying capacity in symbols group, and the carrying capacity of RB may be similar in the same burst.
       Inventive point:   A method of mapping resource allocation in EPOC systems   Core idea disclosed herein: Set correspondence between one-dimensional bandwidth resource(s) of a certain length and two-dimensional time and frequency resource(s) in a symbols group, and map each one-dimensional bandwidth resource of a certain length to two-dimensional resource according to a certain mapping rule. The mapping rule is: The one-dimensional bandwidth resource is indicated by a data length of the symbols group or a size of time and frequency resource, wherein the length of the one-dimensional bandwidth resource is an integer power of two.       
 
         [0087]    At least some of the features/methods described in the disclosure may be implemented in a network element. For instance, the features/methods of the disclosure may be implemented using hardware, firmware, and /or software installed to run on hardware. For example, the network element may be any device that transports data through a network, e.g., a switch, router, bridge, server, client, etc.  FIG. 2  illustrates an embodiment of a network element  200 , which may be any device that transports and processes data through a network. For instance, the network element  200  may be a content router or any apparatus or router in the orthogonal frequency-division multiple access resource blocks allocation method described above. 
         [0088]    The network element  200  may comprise one or more ingress ports or faces  210  coupled to a transceiver (Tx/Rx)  212 , which may be transmitters, receivers, or combinations thereof. A Tx/Rx  212  may be coupled to plurality of downstream ports  210  for transmitting and/or receiving frames from other nodes, a Tx/Rx  212  coupled to plurality of upstream ports  230  for transmitting and/or receiving frames from other nodes. A processor  225  may be coupled to the Tx/Rxs  212  to process the frames and/or determine the nodes to which to send frames. The processor  225  may comprise one or more multi-core processors and/or memory modules  222 , which may function as data stores, buffers, etc. Processor  225  may be implemented as a general processor or may be part of one or more application specific integrated circuits (ASICs) and/or digital signal processors (DSPs). The downstream ports  210  and/or upstream ports  230  may contain electrical and/or optical transmitting and/or receiving components. Network element  200  may or may not be a routing component that makes routing decisions. The network element  200  may also comprise a programmable content forwarding plane block  228 . The programmable content forwarding plane block  228  may be configured to implement content forwarding and processing functions, such as at an application layer or layer 3 (L3) in the Open Systems Interconnection (OSI) model, where the content may be forwarded based on content name or prefix and possibly other content related information that maps the content to network traffic. Such mapping information may be maintained in a content table at the memory module  222 . The programmable content forwarding plane block  228  may interpret user requests for content and accordingly fetch content, e.g., based on metadata and/or content name, from the network or other content routers and may store the content, e.g., temporarily, in the memory module  222 . The programmable content forwarding plane block  228  may then forward the cached content to the user. The programmable content forwarding plane block  228  may be implemented using software, hardware, or both and may operate above the IP layer or layer 2 (L2) in the OSI model. The memory module  222  may comprise a cache  224  for temporarily storing content, e.g., a Random Access Memory (RAM). Additionally, the memory module  222  may comprise a long-term storage  226  for storing content relatively longer, e.g., a Read Only Memory (ROM). For instance, the cache  224  and the long-term storage  226  may include Dynamic random-access memories (DRAMs), solid-state drives (SSDs), hard disks, or combinations thereof. Notably, the storage blocks  222  may be used to house the instructions for carrying out the system and methods described herein. 
         [0089]    It is understood that by programming and/or loading executable instructions onto the network element  200 , at least one of the processor  220 , the cache  224 , and the long-term storage  226  are changed, transforming the network element  200  in part into a particular machine or apparatus, e.g., a multi-core forwarding architecture, having the novel functionality taught by the present disclosure. It is fundamental to the electrical engineering and software engineering arts that functionality that can be implemented by loading executable software into a computer can be converted to a hardware implementation by well-known design rules. Decisions between implementing a concept in software versus hardware typically hinge on considerations of stability of the design and numbers of units to be produced rather than any issues involved in translating from the software domain to the hardware domain. Generally, a design that is still subject to frequent change may be preferred to be implemented in software, because re-spinning a hardware implementation is more expensive than re-spinning a software design. Generally, a design that is stable that will be produced in large volume may be preferred to be implemented in hardware, for example in an ASIC, because for large production runs the hardware implementation may be less expensive than the software implementation. Often a design may be developed and tested in a software form and later transformed, by well-known design rules, to an equivalent hardware implementation in an application specific integrated circuit that hardwires the instructions of the software. In the same manner as a machine controlled by a new ASIC is a particular machine or apparatus, likewise a computer that has been programmed and/or loaded with executable instructions may be viewed as a particular machine or apparatus. 

 
         [0090]    At least one embodiment is disclosed and variations, combinations, and/or modifications of the embodiment(s) and/or features of the embodiment(s) made by a person having ordinary skill in the art are within the scope of the disclosure. Alternative embodiments that result from combining, integrating, and/or omitting features of the embodiment(s) are also within the scope of the disclosure. Where numerical ranges or limitations are expressly stated, such express ranges or limitations should be understood to include iterative ranges or limitations of like magnitude falling within the expressly stated ranges or limitations (e.g., from about 1 to about 10 includes, 2, 3, 4, etc.; greater than 0.10 includes 0.11, 0.12, 0.13, etc.). For example, whenever a numerical range with a lower limit, R 1 , and an upper limit, R u , is disclosed, any number falling within the range is specifically disclosed. In particular, the following numbers within the range are specifically disclosed: R=R 1 +k*(R u −R 1 ), wherein k is a variable ranging from 1 percent to 100 percent with a 1 percent increment, i.e., k is 1 percent, 2 percent, 3 percent, 4 percent, 5 percent, . . . 50 percent, 51 percent, 52 percent, . . . , 95 percent, 96 percent, 97 percent, 98 percent, 99 percent, or 100 percent. Moreover, any numerical range defined by two R numbers as defined in the above is also specifically disclosed. Use of broader terms such as comprises, includes, and having should be understood to provide support for narrower terms such as consisting of, consisting essentially of, and comprised substantially of. All documents described herein are incorporated herein by reference.