The present invention relates to the telecommunication field and more in particular to the transport of Ethernet frames over a SDH/SONET/OTN network. Still more in particular, the invention concerns to a method for optimizing the transport of Ethernet frames carried between two network elements over several connections having different delays.
This application is based on, and claims the benefit of, European Patent Application No. 04291464.8 filed on Jun. 10, 2004, which is incorporated by reference herein.
Ethernet frames are carried in a telecommunication network according to encapsulation into GFP (Generic Frame Procedure ) frames, as defined by International Telecommunication Union (ITU) in ITU-T G.7041/Y.1303 (December 2001). Referring to
EP1339198 discloses a method, defined “packet concatenation”, for optimizing transport of Ethernet frames over different connections in an SDH network mapping the GFP frames into VCs; the advantages of this method are a better bandwidth utilization and a better protection from the failure of a connection. According to this solution, the Ethernet frames are carried from a first network element to a second network element over several connections following different routes; each connection carries VCs, also of different type (for example a VC4 over a first connection and a VC12 over a second connection). One GFP frame is mapped into one VC and each VC can include more than one GFP frame, depending on the size of the GFP frame (which in turn depends on the size of the Ethernet frame) and of the VC (VC4, VC3, VC12). The VC selected for carrying a GFP frame is frame by frame based, i.e. it is not related neither to the last selection nor to the status of the received frames. The diverse routing is required for protecting the traffic and for delivering the maximum bandwidth. Referring to
A possible solution to avoid queues overflow is to perform flow control, as described in EP1339185: when the filling of the queues reaches a danger level, the receiving side assigns a bit in the GFP frame in order to advise the transmitting side to stop the transmission of the frames. According to this solution, data is not lost but there is a degradation of the quality of the service because bandwidth is drammatically reduced in case the transmission is stopped for many connections having big delays.
In view of the drawbacks and deficiencies of the known and standardized solutions, as described above, the main object of the present invention is to provide a method for avoiding overflow of the receiving queues storing frames carried over different connections having different values of delays; this is achieved by the steps of measuring of the delays of at least two forward connections from a first network element to a second network element following different routes, collecting the values of the delays, comparing the values respect to a defined range of valid values and carrying second frames including header fields and payload fields with encapsulated first frames over the forward connections having the values of the delays within the range and the second frames including only header fields over the forward connections having the values of the delays out of the range, the header fields carrying information for performing the measuring of the delays of the forward connections. The basic idea is to measure the delays of the connections, to collect the values of the measured delays, to define a range of valid values of delays and to transmit the frames over the connections having the delays within the defined range. This solution allows to avoid overflow of the queues because it prevents the filling above the danger value.
A correlated advantage is the automatic restoring of the maximum bandwidth available from the connections; this is achieved by carrying the frames over those connections where actual delays previously out of the range are within the range. A further object is to define a range of valid values of delays according to delay optimization or bandwidth optimization; this is achieved by assigning to the lower bound of the range the smallest value of the measured delays of the connections and to the upper bound of the range as a predefined maximum value or by assigning to the upper bound of the range the sum of the lower bound and a predefined value, wherein the lower bound is calculated from the measured delays in order to have the maximum number of connections having the values of the delays within the range.
The GFP frame including only the header field over a connection having the delay out of the range is required for continually monitoring the delay of the connection, in order to automatically restore the transmission of Ethernet frames over this connection when the value of the actual delay previously out of the range is within the range. In this case, NEA restores the transmission of GFP frames including Ethernet frames over this connection and transmits STATUS_A=“0”, in order to advise NEB of the change of the status of the forward connection. When NE receives this indication, it restores the transmission of GFP frames including Ethernet frames also over the correspondent backward connection.
NEB is also allowed to send a request to NEA to remove the transmission of Ethernet frames from a backward connection and consequently NEA will remove the transmission of Ethernet frames over the correspondent forward connection. In this case NEB sends the request to NEA assigning a first bit (indicated in
The range of valid values of delays can be defined according to delay optimization or bandwidth optimization. In the first case, the smallest value of the delays is taken as the lower bound and a predefined maximum value is taken as the upper bound. The maximum value depends on the size of the queues at the receving side: a big queue can store many frames and consequently a big maximum value can be accepted. The maximum value depends also on the bit rate of the connections. For example, the maximum value is 41 ms for a connection carrying VC12 and 3.6 ms for VC3: in case of VC12 a connection having a delay of 50 ms will carry GFP frames including only the header field; when this delay becomes smaller or equal 41 ms, the connection will carry GFP frames including also the payload field. This solution is simple but is not optimized for bandwidth: in the second case the range is calculated in order to have the maximum bandwidth available for carrying the Ethernet frames. The width of the range is calculated according to the same considerations as the maximum value of the first case. As an example, suppose to have 6 connections carrying VC12 having the following values of delays: 5 ms, 30 ms, 40 ms, 45 ms, 50 ms, 55 ms. According to delay optimization, the range is comprised between 5 ms (the minimum value of the delays) and 41 ms (the predefined maximum value for VC12): the range includes 3 connections, having values 5 ms, 30 ms and 40 ms, and the bandwidth available for transmission of Ethernet frames is 3 VC12. In bandwidth optimization, comparing in the same condition of a range wide 36 ms (41−5=36), this range is shifted (like a window) in order to comprise the maximum number of connections. A simple algorithm can be in the first step to assign to the lower bound the smallest value of the delays (5 ms) and to the upper bound the sum of the lower bound and a predefined value (the width of the range, 36 ms in the example): this range, comprised between 5 ms and 41 ms, includes 3 connections having values of the delays of 5, 30 and 40 ms. In the second step the first value of the delay bigger than the smallest one is assigned to the lower bound, i.e. 30 ms is assigned to the lower bound, and the sum of the lower bound and the width of the range is assigned to the upper bound: this range, comprised between 30 ms and 66 ms, includes 5 connections having values of the delays of 30, 40, 45, 50 and 55 ms. This algorithm can be iterated for each value of the measured delays. The range comprised between 30 ms and 66 ms includes the maximum number of connections (5) and the bandwidth is 5 VC12, greater than 3 VC12 according to delay optimization. The same method is used in bandwidth optimization when the connections carry different VCs, for example VC4 and VC12. The bandwidth of a VC4 is 63 times the bandwidth of a VC12 and a connection carrying VC4 is preferred to one or more connections carrying VC12.
In the first preferred embodiment the first frame is Ethernet, the second is GFP and GFP frames are mapped into VCs of a SDH network. The same method can be used for different types of the first frame and different types of the second frame. Moreover, the second frame can be carried in a network different from SDH. For example, GFP mapping is used for encapsulating frames having variable length, like Fast Ethernet, Gigabit Ethernet, 10 Gigabit Ethernet and IP, or fixed length, like Fibre Channel, Escon and Ficon, and a GFP frame can also be mapped into one Virtual Tributary of a SONET network or into one Optical Channel of an OTN network.
In a second preferred embodiment the delay of a forward connection can be calculated using a timestamp label in the header field of the GFP frame over the forward connection. In this solution, NEA and NEB are synchronized to a common time reference; this common time reference can be a clock distributed in the network by a master network element or by a network management system. NEA sends the timestamp label which includes for example the date and the time of the transmission of the GFP frame. NEB has the information, synchronized with NEA, of the actual date and time and can compare this information to the label in the header field of the GFP frame received from NEA: the difference is an indication of the delay of the forward connection. In this second embodiment NEB assigns the status bit (STATUS_B) for advising NEA that the connection has the value of the delay out of the range and at the same time NEB removes the transmission of Ethernet frames over this connection. When NEA receives the indication of the third bit, it also remove the transmission of Ethernet frames over the connection in the correspondent opposite direction.
The method can be advantageously implemented on a network element, for example an Add-Drop Multiplexer (ADM), including hardware devices like an Application Specific Integrated Circuit (ASIC), Field Programmable Gate Array (FPGA), microprocessor or memories.
Ethernet frames are received from at least one Ethernet interface, for example from an Ethernet switch, and are stored in a memory, required because the Ethernet traffic is bursty. The memory can be a FIFO (First In First Out), having one input and one output. The output of the memory is connected to the input of a switching device able to forward a stored Ethernet frame to one of the outputs, having one output for each forward connection. The switching device has a second input CTRL controlled by the microprocessor: depending on the value of the delays of the forward connections, the microprocessor is responsible for the choice of the output for the transmission of the stored Ethernet frame. The stored Ethernet frames are forwarded only to the outputs of the switching device related to the connections having value of delays within the range. Each output of the switching device is connected to a first input of a GFP mapper, which is responsible to build the GFP frame, adding the header field and transmitting to the output (OUT) the GFP frame including the header field and the Ethernet frame in the payload field or transmitting to the output the GFP frame including only the header field: the first case is for the GFP mapper related to the connections having the delays within the range and the second is for the GFP mapper related to the connections having the delays out of the range. Each GFP mapper has a second input (SEL) controlled by the microprocessor, for the choice of the GFP frame to transmit, and a third input (STATUS) controlled by the microprocessor for setting the bit STATUS_A for indicating the status of the forward connection (within or out of the range). The output of the GFP mapper is connected to the input of a SDH mapper, performing the mapping of the GFP frame into the VC4 according to packet concatenation. In case the calculation of the delays is performed using two bits (REQ_A, ANSW_A) in the header fields, the network element includes counting means, like timers t1 . . . tN, to perform the measurement of the delays of the forward connections; the timers are connected to the microprocessor, which is responsible to activate a timer when the request (REQ_A) of the related connection is transmitted, to stop the timer when the answer (ANSW_A) of the correspondent backward connection is received, to collect the values of the timers of the forward connections and to compare the values to the defined range. Finally a memory is required for storing the lower and upper bound of the range.
The method can be implemented in a preferred embodiment through or together with a software program like Very high speed integrated circuit Hardware Description Language (VHDL) mapped into an ASIC (Application Specific Integrated Circuit) or FPGA (Field Programmable Gate Array) or C language running on a microprocessor, by one or more VHDL processes or C routines/tasks. The software program running on a microprocessor thus includes for example a first task for collecting the values of the measured delays according to a first polling mechanism, comparing the values of the measured delays respect to the defined range and selecting the forward connections having the values of the measured delays within the range and the forward connections having the values of the measured delays out of the range and includes a second task for measuring the delays of the forward connections according to a second polling mechanism.
Number | Date | Country | Kind |
---|---|---|---|
04 291 464.8 | Jun 2004 | EP | regional |