Abstract:
An interface device includes a first connector to connect to a port of a switch, where the switch sends data packets at a first rate and a second connector to connect to a port of a device, where the device sends data packets at a second rate slower than the first rate. A physical control layer connects to the first connector and the second connector to control a flow of data packets. The physical control layer throttles down the flow of data packets to the second connector when the data packets are travelling from the first connector to the second connector, and matches a speeds of the flow of data packets to the first connector when the data packets are travelling from the second connector to the first connector.

Description:
TECHNICAL FIELD 
     This disclosure relates to sending data packets in a communication network, and to up-converters and throttle control to control the flow of data packets for the Ethernet physical layer. 
     BACKGROUND 
     Advances in electronics and communication technologies can result in communication networks capable of communicating data at different speeds. Consumers may be able to send and receive data across multitudes of sources at higher reliability and communication rates. Technology can continue to advance and communication networks grow in size, frequency of use and capability. Data can be communicated with greater efficiency, reliability and quality. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The systems and methods may be better understood with reference to the following drawings and description. In the figures, like reference numerals designate corresponding parts throughout the different views. 
         FIG. 1  is a block diagram of an exemplary network. 
         FIG. 2  is a block diagram of the exemplary switch connected with the access points via a small form factor module. 
         FIG. 3  is a block diagram of the exemplary small form factor interface for performing up-conversion. 
         FIG. 4  is a flowchart of an exemplary process for connecting a faster data flow rate with a slower data flow rate. 
     
    
    
     DETAILED DESCRIPTION 
     The systems and methods described relate to an up-converter for an Ethernet physical layer device to enable systems to operate a slower line rate with a faster line rate. For purposes of explanation line rates of 2.5 Gbit/s and 10 Gbit/s are used, but the systems and methods can also be used with other differing line rates. The systems and methods can allow the Ethernet physical layer to match speeds between a line and system interface at the physical layer for legacy switch systems without changing legacy switches. The systems and methods can allow new line rates, e.g., 2.5 Gbit/s, to operate with existing switch interfaces having faster speeds, e.g., 10 Gbit/s, while sustaining line throughput. 
       FIG. 1  is a block diagram of an exemplary network  100 . The network  100  can be used for computer data traffic, telecommunication traffic, etc. The system  100  can be used to send information from servers  120 A, B, C, etc. to devices, e.g., an Internet protocol (IP) phone  102 , a laptop  104 , a desktop computer  106 , a printer  108  and a wireless access point  110 A, B, etc. The information can be sent locally or remotely, e.g., over local area networks (LAN) and over wide area networks (WAN)  130  such as the Internet. The servers  120 A, B, C can be connected with the devices through a router  140  and a switch or controller, hereinafter switch  150 . Other devices can also connect to the switch  150 , e.g., a tablet  160 , televisions, phones, personal digital assistants (PDAs), and other devices cable of connecting to a network. 
     Data packets to and from the servers  120 A, B, C can be transmitted to and from the devices, e.g., access points  110 A, B, via a router  140  and the switch  150 , etc. The router  140  and the switch  150  can be implemented as separate devices or together in a single device. Devices, e.g., access points  110 A, B, can also communicate with each other via a local area network, e.g., via the Ethernet. The switch  140  includes a media access control (MAC)  170  to accommodate the Ethernet packet traffic. A small form factor (SFP) module  200  can be connected between the switch  150  and the access points  110 A, B, or other devices. 
       FIG. 2  is a block diagram of the exemplary switch  150  connected with the access points  110 A, B or other devices via SFP module  200 . The other devices can include a home router  201  and any of the devices of  FIG. 1 , etc. The SFP module  200  can connect to an uplink port or other port of the switch  150 . The switch  150  may transmit data at speed A, e.g., 10 Gbit/s, and the access points  110 A, B, or other devices, e.g., IP phone  102 , laptop  104 , etc., may transmit data at a different speed B, e.g., 2.5 Gbit/s. 
     The SFP module  200  includes a buffer  202  in memory, a media access control (MAC) layer/up-converter controller  204  and an inserter  206 . More or less components can be used depending on an implementation. The SFP module  200  including such components can accommodate up converting the speed of the data transmitted at 2.5 Gbit/s to the 10 Gbit/s data rate of the switch  150 . Therefore, instead of redesigning the switch  150  to accommodate 2.5 Gbit/s, the SFP  200  module can plug into a port of the switch  150  or other device to handle up converting. 
     For purposes of explanation, the buffer  202 , MAC layer/up-converter controller  204  and inserter  206  are housed in the SFP module  200 , but other housings can be used that connect, either internally or externally, to the switch  150  or other device. A cable  210 , e.g., a copper twisted pair Ethernet cable having an RJ45 connector, can be used to connect one end of the SFP module  200  to the access point  110 A, B, etc. Connector  220  can be used to connect the SFP module  200  and a port  230  of the switch  150 . Ethernet signals can be sent from the access point  110 A, B, etc. at speed A, e.g., 2.5 Gbit/s or higher, and the connector  220  can up-convert them to speed B, e.g., 10 Gbit/s. The systems and methods are described for 2.5 Gbit/s and 10 Gbit/s, but other speed conversions can be accommodated such as 4 Gbit/s to 10 Gbit/s or 20 Gbit/s, etc. 
       FIG. 3  is a block diagram of the exemplary SFP module  200  for performing a physical layer up-conversion and handling of different line rates for devices connected with the SFP module  200 . The 2.5 Gbit/s devices such as access points  110 A, B, etc. may be used since they can cost less and use less power than the 10 Gbit/s devices. The switch  150  may support a higher line rate than the access points  110 A, B, etc., e.g., 10 Gbit/s speed versus 2.5 Gbit/s speed. To accommodate a 2.5 Gbit/s physical layer to work with 10 Gbit/s interface, the SFP  200  provides for up-conversion. The physical layer system can operate at a 2.5 Gbit/s line rate through a 10 Gbit/s interface for legacy units. By up-converting data traffic from 2.5 Gbit/s to 10 Gbit/s and throttling data traffic from 10 G/bit/s to 2.5 Gbit/s, the existing system with 10 Gbit/s interface can accommodate 2.5 Gbit/s without physically changing the switch  150 . 
     To perform up-conversion from the slower to faster devices and to throttle control from the faster to slower devices, the SFP module  150  can include buffer  202 , MAC layer/up-converter controller  204  and inserter  206 . These components can manage different line rates between the switch  150  and other peripherals such as the access points  110 A, B. The inserter  206  can also provide for multiplexing functionality. The buffer  202 , MAC layer/up-converter controller  204  and inserter  206  can be incorporated into a physical layer PHY  330  of the SFP module  150 . The buffer  202  can include enough memory space to store two or more packets at a time. If packets are 2 KB in size, a 4 KB buffer can be used, and if packets are 10 KB is size, a 20 KB buffer can be used. Other sized buffers can be used depending upon an implementation. 
     The buffer  202  received traffic flow from the 10 Gbit/s device at  340 . The traffic is sent from the buffer to the 2.5 Gbit/s device at  345 . To throttle traffic from faster to slower devices, the MAC layer/up-converter controller  204  can monitor at  348  a status of the buffer  202 . As the buffer  202  fills to capacity the MAC layer/up-converter controller  204  can send notifications the switch  150  that the buffer  202  is filling up. For example, the MAC layer/up-converter controller  204  can generate an Ethernet pause command to instruct the switch  150  to temporarily stop sending packets. The MAC layer  170  of the switch  150  can de-packetize the command packet to read the command sent by the MAC layer/up-converter controller  204  to temporarily stop sending packets. The switch  150  can then notify the sources sending the packets in the system  100 , e.g., the servers  120 A, B, C, to temporarily stop sending data. 
     To send the pause command to the switch  150 , when the MAC layer/up-converter controller  202  detects at  348  that the buffer  202  is full, or has passed a fullness threshold, the MAC layer/up-converter controller  204  can create a pause command packet and at  350  send the pause command packet to the inserter  206 . The inserter  206  can insert the pause command packet into the data stream  360  coming from the access point  310 A, B, etc and output the updated data stream at  365 . The pause command packet can then reach the switch  150  to notify the switch  150  to pause the transmission of data packets. 
     As the buffer  202  empties and a threshold is passed allowing the buffer  202  to store more data, the MAC layer/up-converter controller  204  can generate and send a command to be interpreted by the MAC  170  of the switch  150  to allow more data to be sent. The source, e.g., server  120 A, B, C, etc., receives the command and begins to send more data. Therefore, MAC layer/up-converter controller  204  allows for speed throttling of the flow of data packets from the 10 Gbit/s switch  150  to the 2.5 Gbit/s devices. 
     Since the switch  150  can handle 10 Gbit/s data flow, the inserter  206  can add the pause commands to the 2.5 Gbit/s data stream  360  without affecting a flow of the data stream  360 . The MAC layer/up-converter controller  204  can also up-convert the data flow to match the speed from 2.5 Gbit/s to 10 Gbit/s, e.g., by adding idle codes to the data stream  360 . The MAC layer/up-converter controller  204  can send at  350  the idle codes to the inserter  206  to be inserted into the data stream  360 . The MAC layer/up-converter controller  204  can determine when to add the idle codes and how many idle codes to add by monitoring at  370  the flow of the data stream  360 . For example, the MAC layer/up-converter controller  204  can add 7.5 Gbit/s of data to the 2.5 Gbit/s data stream  360 . The data can include the idle codes and pause/resume commands as described above. Therefore, the MAC layer/up-converter controller  204  up-converts the speed of 2.5 Gbit/s to 10 Gbit/s, e.g., to match the 10 Gbit/s speed of switch  150 . 
       FIG. 4  is a flowchart of an exemplary process for connecting a faster data flow rate with a slower data flow rate. The PHY  330  can detect incoming data packets ( 400 ). The PHY  330  can determine if the data packets are moving from a faster rate device to a slower rate device or from a slower rate device to a faster rate device ( 410 ). If the data packets are moving from the faster rate device to the slower rate device, the PHY  330  can determine if the buffer  202  is full ( 420 ). If the buffer  202  is full, the PHY  330  can throttle down a flow of the data packets when needed, e.g., by having the MAC layer/up-converter controller  204  send a data packet containing a pause command to the switch  150  ( 430 ). If the buffer  202  is not full the flow of data packets can continues to be sent to the slower rate device ( 440 ). 
     When the data packets are moving from the slower rate device to the faster rate device, the MAC layer up-converter controller  204  can up-convert the data packets to the faster rate ( 450 ), e.g., by inserting idle codes. For example, the PHY  330  can match the speed of the flow of the data packets to the rate of the faster device. The faster device knows to ignore the idle codes. 
     While various embodiments have been described, it will be apparent that many more embodiments and implementations are possible. Accordingly, the systems and methods are not to be restricted except in light of the attached claims and their equivalents.