Forward error correction coding in ethernet networks
First Claim
1. A method for sending data packets from a transmitter to a receiver through a shared-medium digital transmission network, each packet ending in a stop symbols field delimiting the end of said each packet, the method comprising the steps of:
- dividing data of at least a portion of said each packet into one or more frames;
applying a systematic FEC block code to each frame of said each packet, said systematic FEC block code keeping the data symbols of the frames visible and adding parity-check symbols;
gathering together the parity-check symbols of the frames of said each packet in a parity-check field of said each packet;
modifying said each packet by adding, after the stop symbols field delimiting the end of said each packet, the parity-check field of said each packet, and adding, after the parity-check field of said each packet, a delimiter of the parity-check field of said each packet, thereby creating a plurality of modified packets; and
transmitting the modified packets from the transmitter to the receiver through the Ethernet network.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for improving the bit error rate of Ethernet packets applies forward error correction (FEC) coding to transmitted packets. The FEC coding is systematic block coding, and is applied so that the coded packets can be interpreted by legacy network devices that are not capable of FEC decoding. The transmit and receive state machines of FEC-capable Ethernet nodes are modified to enable the nodes to encode and/or decode the packets with the FEC code, and to adapt the nodes'"'"' respective medium access layer (MAC) and physical layer (PHY) data rates.
-
Citations
56 Claims
-
1. A method for sending data packets from a transmitter to a receiver through a shared-medium digital transmission network, each packet ending in a stop symbols field delimiting the end of said each packet, the method comprising the steps of:
-
dividing data of at least a portion of said each packet into one or more frames;
applying a systematic FEC block code to each frame of said each packet, said systematic FEC block code keeping the data symbols of the frames visible and adding parity-check symbols;
gathering together the parity-check symbols of the frames of said each packet in a parity-check field of said each packet;
modifying said each packet by adding, after the stop symbols field delimiting the end of said each packet, the parity-check field of said each packet, and adding, after the parity-check field of said each packet, a delimiter of the parity-check field of said each packet, thereby creating a plurality of modified packets; and
transmitting the modified packets from the transmitter to the receiver through the Ethernet network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A method for receiving data packets sent from a transmitter to a receiver through an Ethernet network, the receiver comprising a MAC layer and a PHY layer, each packet ending in a second stop symbols field delimiting the end of said each packet, said each packet followed by an interpacket gap interval, said each packet comprising a parity-check field at the end of said each packet and before the second stop symbols field, said each packet comprising a first stop symbols field before the parity check field, said each packet comprising data in a data field preceding the first stop symbols field, the parity-check field of said each packet comprising parity-check symbols resulting from encoding frames of at least a portion of the data of said each packet with a systematic FEC block code, the method comprising the steps of:
-
receiving the packets at the receiver;
FEC decoding each received packet; and
adapting reception rate of the MAC layer to the reception rate of the PHY layer. - View Dependent Claims (24, 25)
-
-
26. A method of improving bit error rate of data packet transmission between a transmitter and a receiver coupled together by an Ethernet network, the method comprising the steps of:
-
(a) obtaining a bit error rate for non-FEC-encoded packet transmission from the transmitter to the receiver;
(b) comparing the bit error rate obtained to a predefined bit error rate limit;
(c) if the bit error rate obtained exceeds the predefined bit error rate limit, performing the following steps (d) through (h);
(d) dividing the data of at least a portion of each packet intended for transmission from the transmitter to the receiver through the network into one or more frames;
(e) applying a systematic FEC block code to each frame of said each packet, said systematic FEC block code keeping the data symbols of the frames visible and adding parity-check symbols;
(f) gathering together the parity-check symbols of the frames of said each packet in a parity-check field of said each packet;
(g) modifying said each packet by adding, after stop symbols field delimiting the end of said each packet, the parity-check field of said each packet, and adding, after the parity-check field of said each packet, a delimiter of the parity-check field of said each packet, thereby creating a plurality of modified packets; and
(h) transmitting the modified packets from the transmitter to the receiver through the Ethernet network. - View Dependent Claims (27, 28, 29)
-
-
30. A method of improving bit error rate of data packet transmission between a first network element and a second network element that is not capable of FEC decoding, the first and the second network elements being coupled by an Ethernet network, the method comprising the step of providing an adaptation device, between the Ethernet network and the second network element, the adaptation device being capable of performing the following steps:
-
receiving, from the Ethernet network, FEC encoded packets sent from the first network element to the second network element, the packets received from the Ethernet network being FEC encoded so as not to cause MAC layer errors when received at Ethernet-compliant network elements that are not capable of FEC decoding;
detecting boundaries of the packets received from the Ethernet network;
FEC decoding the packets received from the Ethernet network, thereby creating a plurality of FEC decoded packets;
adapting the FEC decoded packets by inserting idle symbols in place of FEC parity-check symbols of the FEC decoded packets, thereby creating a plurality of adapted packets;
transmitting the adapted packets to the second network element;
receiving, from the second network element, packets sent from the second network element to the first network element;
detecting boundaries of each packet received from the second network element;
dividing data of at least a portion of said each packet received from the second network element into one or more frames;
applying a systematic FEC block code to each frame of said each packet, said systematic FEC block code keeping the data symbols of the frames visible and adding parity-check symbols;
gathering together the parity-check symbols of the frames of said each packet in a parity-check field of said each packet;
modifying said each packet by adding, after the stop symbols field delimiting the end of said each packet, the parity-check field of said each packet, and adding, after the parity-check field of said each packet, a delimiter of the parity-check field of said each packet, thereby creating a plurality of modified packets;
transmitting the modified packets from the transmitter to the receiver through the Ethernet network; and
adapting transmission rate of the second network element to the Ethernet network. - View Dependent Claims (31)
-
-
32. A method for sending data packets from a transmitter to a receiver through an Ethernet network, the method comprising:
-
a step for applying at least one systematic FEC block code to data of the data packets to encode the data packets so that the encoded data packets do not cause MAC layer errors when the encoded data packets are received at non-FEC-capable Ethernet-compliant network elements, thereby creating a plurality of encoded packets; and
sending the encoded packets from the transmitter to the receiver through the Ethernet network. - View Dependent Claims (33)
-
-
34. A network element for sending data packets to a receiver through an Ethernet network, each packet ending in a stop symbols field delimiting the end of said each packet and followed by an interpacket gap interval, the network element comprising:
-
a framer that divides at least a portion of said each packet into one or more frames;
an FEC encoder that applies at least one systematic FEC block code to the frames, said at least one systematic FEC block code keeping data symbols of the frames visible and calculating parity-check symbols;
a packet modifier that modifies said each packet by adding, after the stop symbols field delimiting the end of said each packet, the calculated parity-check symbols of the frames of said each packet, and by adding, after the calculated parity-check symbols of the frames of said each packet, a delimiter of the parity-check field of said each packet, thereby creating aof modified packets; and
a transmitter that transmits the modified packets to the receiver. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45)
-
-
46. A component of a physical coding sublayer of an Ethernet transmitter sending data packets to a receiver through an Ethernet network, each packet ending in a stop symbols field delimiting the end of said each packet, the component comprising:
-
an FEC encoder that divides at least a portion of said each packet into one or more frames and applies at least one systematic FEC block code to the frames, said at least one systematic FEC block code keeping data symbols of the frames visible and calculating parity-check symbols;
a packet modifier that modifies said each packet by adding, after the stop symbols field delimiting the end of said each packet, the parity-check symbols of the frames of said each packet, and by adding, after the parity-check symbols of the frames of said each packet, a delimiter of the parity-check field of said each packet, thereby creating a plurality of modified packets; and
a data wrapper that adds packet boundary symbols to the modified packets. - View Dependent Claims (47, 48, 49, 50, 51, 52, 53, 54)
-
-
55. A component of a physical coding sublayer of an Ethernet receiver that receives data packets from a transmitter through an Ethernet network, each packet being encoded with at least one systematic FEC block code, the network element comprising:
-
a line code decoder that applies line code decoding to the data packets, thereby creating line code decoded packets;
a boundary detector that determines the boundaries of the line code decoded packets;
a selector that separates FEC parity-check symbols of the line code decoded packets;
a buffer that replaces the FEC parity-check symbols in each line code decoded packet with idle symbols, and buffers said each line code decoded packet, thereby creating buffered packets; and
an FEC decoder that receives the buffered packets and the FEC parity-check symbols and FEC decodes each buffered packet. - View Dependent Claims (56)
-
Specification