Abstract:
Embodiments of the disclosure are directed to implementing a router Media Access Control (MAC) Ethernet switch in a network. An embodiment receives, from a first Multiprotocol Label Switching (MPLS) router, at least one data packet with a router MAC address identifying a second MPLS router; automatically learns the router MAC address identifying the second MPLS router; accesses information to determine the Internet Protocol (IP) address of the second MPLS router based on the learned router MAC address; and transmits the at least one data packet to the second MPLS router.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    The present Application for Patent claims the benefit of U.S. Provisional Application No. 61/840,790, entitled “METHOD AND SYSTEM FOR TRAFFIC ENGINEERED MPLS ETHERNET SWITCH,” filed Jun. 28, 2013, assigned to the assignee hereof, and expressly incorporated herein by reference in its entirety. 
     
    
     FIELD OF THE INVENTION 
       [0002]    Embodiments of the disclosure are directed to switching data packets with minimal packet modification. 
       DESCRIPTION OF THE RELATED ART 
       [0003]    Typically, packet networks use the data plane and insert control packets to manage the data plane. In some instances, the ingress data packets may be modified. Likewise, the client and transport packet network can interact. Switching packets can involve a control protocol to control per packet path of each packet. End-point discovery and dissemination of addressing details can then occur via the control protocol. 
         [0004]    Resilient Packet Ring (RPR) is a protocol standard designed for the optimized transport of data traffic over optical fiber ring networks. RPR works on a concept of dual counter rotating rings called ringlets. These ringlets can be set up by creating RPR stations at nodes where traffic is supposed to drop, per flow. RPR can use Media Access Control protocol (MAC) messages to direct the traffic, which can use either ringlet of the ring. The nodes can also negotiate for bandwidth among themselves using fairness algorithms, avoiding congestion and failed spans. The avoidance of failed spans can be accomplished by using one of two techniques known as steering and wrapping. Under steering, if a node or span is broken, all nodes can be notified of a topology change and they reroute their traffic. In wrapping, the traffic can be looped back at the last node prior to the break and routed to the destination station. RPR can guarantee bandwidth and switching. In RPR, the packets can be modified from the data plan. 
         [0005]    Multiprotocol Label Switching (MPLS) is a mechanism in high-performance telecommunications networks that directs data from one network node to the next based on short path labels rather than long network addresses, avoiding complex lookups in a routing table. The labels can identify paths between distant nodes rather than endpoints. MPLS can encapsulate packets of various network protocols. MPLS can operate at a layer that is generally considered to lie between traditional definitions of data link layer (Layer  2 ) and network layer (Layer  3 ). MPLS can provide a unified data-carrying service for both circuit-based clients and packet-switching clients which provide a datagram service model. In all cases, the flow from the client may be considered to be altered in some way. 
         [0006]    An MPLS Label Switch Router (LSR) interacts with the packet stream and the client can be aware of the intermediate LSR equipment. Interoperation testing can be required to validate the complete solution. 
       SUMMARY 
       [0007]    Embodiments of the disclosure are directed to methods, apparatuses, and non-transitory computer readable media for optical dark section conditioning, including: generating at least one of a broadband noise or signal at the head end of a section for a first module of the section; and operating all other modules of the section in gain control mode. 
         [0008]    Some embodiments may include implementing a Media Access Control (MAC) Ethernet switch in a network. Some embodiments may include receiving, from a first Multiprotocol Label Switching (MPLS) router, at least one data packet with a router MAC address identifying a second MPLS router. Some embodiments may provide for automatically learning the router MAC address identifying the second MPLS router. Embodiments may also include accessing information to determine the Internet Protocol (IP) address of the second MPLS router based on the learned router MAC address. Likewise, some embodiments may include transmitting the at least one data packet to the second MPLS router. 
         [0009]    In some embodiments, the router MAC address of the first MPLS router may be learned from the at least one data packet. The IP address of the first MPLS router can also be automatically learned from the at least one data packet. Some embodiments may include storing the first router MAC address and the IP address in a forwarding database. Some embodiments may include automatically attempting to configure transport capacity to the requested address the interface is attempting to connect to with a default amount of capacity. Likewise, some embodiments may include monitoring a data plane in the network for other messages to determine appropriate desired capacity. Some embodiments may include analyzing the at least one data packet to determine a request for additional capacity. These embodiments may also include reporting the analyzed request for additional capacity. These embodiments may additionally include automatically reconfiguring the network based on the reported request for additional capacity. 
         [0010]    In some embodiments, the Ethernet switch can be distributed. Some embodiments may include adding jitter to the at least one data packet. In some embodiments, a separate packet switch operation can be implemented on at least one of the at least one data packet as a quality control measure. 
         [0011]    Some embodiments may include generating a forwarding database for a MAC Ethernet switch in a network. Some embodiments may include receiving, from an MPLS router, at least one data packet with a router MAC address identifying the MPLS router. Some embodiments may include automatically learning the router MAC address of the MPLS router from the at least one data packet. Some embodiments may also include automatically learning the IP address of the MPLS router from the at least one data packet. In some embodiments, the router MAC address and the IP address may be stored in a forwarding database. 
         [0012]    Some embodiments may include implementing a MAC Ethernet switch in a network. Some embodiments may include receiving, from a first MPLS router, at least one data packet with a first router MAC address identifying the first MPLS router. Some embodiments may include automatically learning the first router MAC address of the first MPLS router from the at least one data packet. Some embodiments may include automatically learning the IP address of the first MPLS router from the at least one data packet. Some embodiments may also include storing the first router MAC address and the IP address in a forwarding database. Some embodiments may include receiving, from a second MPLS router, at least one data packet with the first router MAC address identifying the first MPLS router. Some embodiments may include automatically learning the first router MAC address identifying the first MPLS router. Some embodiments may include accessing information from the forwarding database to determine the IP address of the first MPLS router based on the learned router MAC address. Some embodiments may include transmitting the at least one data packet from the second MPLS router to the first MPLS router. 
         [0013]    Some advantages of the embodiments described may include using the addresses when routers perform address resolution protocols so that data plane packets are not modified. Lack of modification may lead to lower hardware costs. Some embodiments may also remove or diminish the need for MPLS Label Switch Routers (LSR). Some embodiments may allow for auto configuration of external Transport Network Addresses (TNA) based on the binding of router MAC addresses and IP addresses by the ARP protocol or other means such as, for example, the use of OSPF or IS_IS Hello packets. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0014]    A more complete appreciation of aspects of the disclosure and many of the attendant advantages thereof will be readily obtained as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings which are presented solely for illustration and not limitation of the disclosure, and in which: 
           [0015]      FIG. 1  illustrates exemplary PacketWave network architecture. 
           [0016]      FIG. 2  illustrates an exemplary network layer. 
           [0017]      FIG. 3  illustrates an exemplary flow for implementing a router Media Access Control (MAC) Ethernet switch in a network. 
           [0018]      FIG. 4  illustrates an exemplary forwarding database table for implementing a MAC Ethernet switch in a network. 
           [0019]      FIG. 5  illustrates a second exemplary flow for implementing a MAC Ethernet switch in a network. 
           [0020]      FIG. 6  illustrates a third exemplary flow for implementing a MAC Ethernet switch in a network. 
       
    
    
     DETAILED DESCRIPTION 
       [0021]    Various aspects are disclosed in the following description and related drawings. Alternate aspects may be devised without departing from the scope of the disclosure. Additionally, well-known elements of the disclosure will not be described in detail or will be omitted so as not to obscure the relevant details of the disclosure. 
         [0022]    The words “exemplary” and/or “example” are used herein to mean “serving as an example, instance, or illustration.” Any aspect described herein as “exemplary” and/or “example” is not necessarily to be construed as preferred or advantageous over other aspects. Likewise, the term “aspects of the disclosure” does not require that all aspects of the disclosure include the discussed feature, advantage or mode of operation. 
         [0023]    Further, many aspects are described in terms of sequences of actions to be performed by, for example, elements of a computing device. It will be recognized that various actions described herein can be performed by specific circuits (e.g., application specific integrated circuits (ASICs)), by program instructions being executed by one or more processors, or by a combination of both. Additionally, these sequence of actions described herein can be considered to be embodied entirely within any form of computer readable storage medium having stored therein a corresponding set of computer instructions that upon execution would cause an associated processor to perform the functionality described herein. Thus, the various aspects of the disclosure may be embodied in a number of different forms, all of which have been contemplated to be within the scope of the claimed subject matter. In addition, for each of the aspects described herein, the corresponding form of any such aspects may be described herein as, for example, “logic configured to” perform the described action. 
         [0024]    Data communication networks may include various computers, servers, nodes, routers, switches, bridges, hubs, proxies, and other network devices coupled to and configured to pass data to one another. These devices are referred to herein as “network elements” or “network devices.” Data is communicated through the data communication network by passing protocol data units, such as Internet Protocol (IP) packets, Ethernet Frames, data cells, segments, or other logical associations of bits/bytes of data, between the network elements by utilizing one or more communication links between the network elements. A particular protocol data unit may be handled by multiple network elements and cross multiple communication links as it travels between its source and its destination over the network. 
         [0025]      FIG. 1  illustrates exemplary PacketWave network architecture  100 . PacketWave describes an architecture to realize an IP/MPLS network, in which the Edge Routers (PEs) are implemented “as is”, but their mutual connectivity across the network core may be provided using an underlay comprising distributed Layer  2  switches collectively offering an Ethernet LAN services to all attached PEs. In  FIG. 1 , the clients (PE) can attach to a packet optical network element with Ethernet Interfaces  108 . The packet wave can aggregate packets onto an optical interface  110  in the network  102 . Next, the packet wave can adjust network capacity and topology (e.g., wavelengths) to match service demands. Under failure scenarios, the packet wave can maintain a desired network topology. The packet wave can provide hitless network defragmentation. This can allow for capacity and topology maintenance/re-optimization. 
         [0026]    In some embodiments, the flows can be on optical interfaces  110  and capacity can be adjusted between any edge devices, e.g., the clients  104 . With different interfaces, aggregation may be desired, such as linked aggregation groups. Capacity can be determined through monitoring traffic between routers  106 . Likewise, the network  102  can react to faults so that the losses are in milliseconds. Packet flows between the routers  106  can be adjusted on a per-adjacency basis (e.g., 15 Gbps). The adjustments can be policed. In another example, the adjustments can be shaped within this flow with a point-to-point flow. The flow can be an MPLS pseudo wire (PW), a label switched path (LSP), or other packet tagging mechanism (e.g., MAC in MAC, also known as MiM). 
         [0027]    Carrier Ethernet control technology can be used, specifically Provider Backbone Bridge Traffic Engineering (PBB-TE). Other technologies can be implemented, including Shortest Path Bridging MAC (SPBM) and G.8032, but packet modification may not be required. The system can be implemented on both a distributed Ethernet switch connected with transport technology and a single device. Likewise, transport technology can be anything that provides Ethernet capacity. Some examples include Optical Transport Network (OTN), and Synchronous Optical Networking (SONET). While the data plane may be manipulated, no packet modification can be required to be performed, and control packets may not be found in the data plane. In some embodiments, a pseudowire (PW), a Label Switched Path (LSP), or the aggregated adjacency can be used. A Dense Wave Division Multiplexing (DWDM) can switch wavelengths. 
         [0028]    Three examples of packet wave service delivery models are transport networks, dynamic networks, and Software Defined Networking (SDN). With a transport network, there can be static connections. The transport network can use a subset of dynamic case from a packet control software that uses a combination of hardware and software to manage and forward packets. A dynamic network can be packet centric. An interface between packet and optical domains can be used to dynamically set up the network and to reconfigure the network. An SDN can discover the network and can control flows within the network. 
         [0029]      FIG. 2  illustrates a packet wave control plane/network layer  200 . As shown in  FIG. 2 , there is a client router layer  202 , an Ethernet/transport layer  204 , and photonic switching layer  206 . The client router layer  202  includes in-skin control plane instances  208  (shown as hexagons on  FIG. 2 ) and routers  210  (shown as rectangles). The Ethernet/transport layer  204  includes in-skin control plane instances  208  and transport switching elements  212  (shown as rounded rectangles). The photonic switching layer  206  includes optical amplifier sites  214  (shown as stars), in-skin control plane instances  208 , and wavelength switching elements  216  (shown as diamonds). Data packets between the client router layer  202  and the Ethernet/transport layer  204  can use Ethernet  218  for transport. Wavelengths  220  can be used to transfer data packets between the Ethernet/transport layer  204  to the photonic switching layer  206 . 
         [0030]    In some embodiments, the control plane can be used as a transport layer to implement a MAC Ethernet switch, similar to Ethernet on SONET. The router MAC and router IP address can be flooded in the transport layer topology. The router MAC and router IP addresses can be flooded in the transport layer control plane as transport network addresses (TNA). The transport control plane can have optimization (e.g., with regard to administration weight, latency), protection attributers (e.g., dedicated protection scheme for 50 ms, control plane redial) or reversion applied. Flooding can be used by control planes to disseminate learned end-point addressing so that service-based addressing can be resolved by the transport layer. In some embodiments, the transport/DWDM can use the learned TNA and the value that drives the TNA. For example, service addressing can distributed in the lower layer control planes and allow the devices to use service addressing (e.g., IP/MAC) instead of typical transport addressing. 
         [0031]    The client layer in  FIG. 2  can be a service layer. The client layer can address traffic demands and service processing. The Ethernet/transport layer can provide protection to the network. For example, the Ethernet/transport layer can have Shared Link Risk Group (SLRG) awareness. The Ethernet/transport layer can provide quality control measures. For example, the Ethernet/transport layer can also provide monitored paths and capacity protection sharing. There can be a switching and transponder mix and photonic protection triggers. 
         [0032]    The photonic switching layer can provide restoration for full and partial failure events. This layer can provide fiber topology awareness, including path computation, and link budget computation, wavelength assignment. The photonic switching layer can also have SRLG awareness. Both the Ethernet/transport layer and the photonic switching layer can be used as planning tools to determine capacity, provide logical address assignments, and conduct failure simulations. 
         [0033]      FIG. 3  illustrates an exemplary flow for implementing a MAC Ethernet switch in a network. At least one data packet can be received from an MPLS router, the data packet including a router MAC address identifying the MPLS router ( 302 ). The router MAC address of the MPLS router can be automatically learned from the at least one data packet ( 304 ). An IP address of the MPLS router can be automatically learned from the data packet ( 306 ). The router MAC address and the IP address can be stored in a database ( 308 ). 
         [0034]      FIG. 4  illustrates an exemplary forwarding database table for implementing a MAC Ethernet switch in a network. In  FIG. 4 , the MPLS routers are designated with their router IP loopback address. Each MPLS router in  FIG. 4  has a router interface MAC address associated with it, along with a Network Service Access Point (NSAP) address and an Interface Number. For example, in  FIG. 4 , MPLS router 10.1.1.1 is associated with router interface MAC address 00:08:5C:00:00:01, NSAP address 49.0001.1111.1111.1111.00, and Interface Number NSAP Interface Number  1 . Likewise, MPLS router 10.1.1.2 is shown in  FIG. 4  as being associated with router interface MAC address 00:0F:EA:91:04:07, NSAP address 49.0001.1234.AAAA.AAAA.AAAA.00, and Interface Number NSAP Interface Number  2 . MPLS router 10.1.1.3 is associated with router interface MAC address BC:AE:C5:C3:16:93, NSAP address 49.0001.AAAA.BBBB.CCCC.00, and Interface Number NSAP Interface Number  3 . MPLS router 10.1.1.4 associated with router interface MAC address BC:A2:33:91:00:16, NSAP address 49.0001.ABCD.ABCD.ABCD.00, and Interface Number NSAP Interface Number  4 . 
         [0035]    In some embodiments, each MPLS router may be associated with an IPv4 and/or IPv6 address. The IP addresses and NSAP addresses can provide addressing, whereas the Ethernet can be used to flow the data packets. In some embodiments, table  400  information can be used with an out-of-band control plane to provide desired connectivity. For example, the media of that layer can be used (e.g. packet underlay technology using private addressing space, such as MPLS-TP or PBB). In another example, a different media can be used (e.g., OTN, SONET, or DWDM). In some embodiments, if underlay is used in a stable environment, it can eliminate the use of dataplane multicast, and with that, it can eliminate the possibility of looping of multicast packets. 
         [0036]    In some embodiments, link aggregation (LAG) can affect implementing a MAC Ethernet switch. Multiple matches per router and router MAC (not shown) may be required. For example, an interface number can have NSAP unique interface numbers for each of the routers. 
         [0037]      FIG. 5  illustrates a second exemplary flow for implementing a MAC Ethernet switch in a network. At least one data packet can be received from a first MPLS router ( 302 ). The at least one data packet can include a router MAC address identifying a second MPLS router. The router MAC address of the second MPLS router can be automatically learned from the at least one data packet ( 304 ). Information can be accessed to determine the IP address based on the learned router MAC address ( 506 ). The at least one data packet can be transmitted to the second MPLS router based on the learned router MAC address ( 508 ). 
         [0038]    In some embodiments a forwarding database can be provided by a user. For instance, a table can be uploaded to a system so that the system need not learn which router MAC addresses are linked to certain IP addresses. 
         [0039]      FIG. 6  illustrates an exemplary flow for generating a MAC Ethernet switch in a network. At least one data packet can be received from a first MPLS router, the data packet including a router MAC address identifying the first MPLS router ( 602 ). The router MAC address of the first MPLS router can be automatically learned from the at least one data packet ( 604 ). An IP address of the MPLS router can be automatically learned from the data packet ( 606 ). The router MAC address and the IP address can be stored in a database ( 608 ). 
         [0040]    At least one data packet can be received from a second MPLS router ( 610 ). The at least one data packet from the second MPLS router can include a router MAC address identifying the first MPLS router. The network location of the router interface MAC address of the first MPLS router can be automatically learned from their appearance as source addresses in a frame and used for forwarding when a previously learned address is seen as a destination. Information can be accessed to determine the IP address based on the learned router interface MAC address ( 614 ). The at least one data packet can be transmitted to the first MPLS router based on the learned router interface MAC address from the first MPLS router ( 616 ). 
         [0041]    Generally, unless stated otherwise explicitly, the phrase “logic configured to” as used throughout this disclosure is intended to invoke an aspect that is at least partially implemented with hardware, and is not intended to map to software-only implementations that are independent of hardware. Also, it will be appreciated that the configured logic or “logic configured to” in the various blocks are not limited to specific logic gates or elements, but generally refer to the ability to perform the functionality described herein (either via hardware or a combination of hardware and software). Thus, the configured logics or “logic configured to” as illustrated in the various blocks are not necessarily implemented as logic gates or logic elements despite sharing the word “logic.” Other interactions or cooperation between the logic in the various blocks will become clear to one of ordinary skill in the art from a review of the aspects described below in more detail. 
         [0042]    Those of skill in the art will appreciate that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof. 
         [0043]    Further, those of skill in the art will appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the aspects disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure. 
         [0044]    The various illustrative logical blocks, modules, and circuits described in connection with the aspects disclosed herein may be implemented or performed with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. 
         [0045]    The methods, sequences and/or algorithms described in connection with the aspects disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM, flash memory, ROM, EPROM, EEPROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal (e.g., UE). In the alternative, the processor and the storage medium may reside as discrete components in a user terminal. 
         [0046]    In one or more exemplary aspects, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media. 
         [0047]    While the foregoing disclosure shows illustrative aspects of the disclosure, it should be noted that various changes and modifications could be made herein without departing from the scope of the disclosure as defined by the appended claims. The functions, steps and/or actions of the method claims in accordance with the aspects of the disclosure described herein need not be performed in any particular order. Furthermore, although elements of the disclosure may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated.