The present invention relates to synchronous networks, and to the carrying of frame based data over synchronous networks.
In the applicant's co-pending patent application entitled “Frame Based Data Transmission over Synchronous Digital Hierarchy Network” filed contemporaneously with the present application, and a copy of which is filed herewith, there is disclosed a method of carrying frame based data over a synchronous digital network. Such disclosed system may provide OSI layer 2 switching functionality which was only previously available in prior art local area networks, but extended over a geographical coverage area which has been historically considered to have been provided only by prior art wide area networks.
In order to accommodate datacoms frame based data, which is characterized by its own set of data rates and control data characteristics, and to contain such frame based data in conventional synchronous digital networks, there is a problem that the frame based datacoms data rates are not well matched to conventional telecoms data rates, for example E1, E3, T1, STM-1 data rates.
Several prior art attempts have been made to carry datacoms services including frame based data over telecoms networks. Prior art systems for incorporating frame based data over synchronous networks include schemes which contain Ethernet data frames in asynchronous transfer mode (ATM) cells which are then transported in a plesiochronous mode and which may then be transported according to ITU-T recommendation G.708 in a synchronous digital hierarchy (SDH) network. In this scheme, known as Inverse Multiplexing of ATM (IMA), conceived by the ATM Forum, an ATM circuit is divided by multiplexing individual ATM cells, which are input into a plurality of E1 circuits. This enables an ATM signal to be carried across a legacy network, for example a plesiochronous digital hierarchy (PDH) network. Ethernet frames are included as the payload of the ATM cells, which are then carried via the E1 circuits over a conventional PDH network which can be carried over an SDH network. A protocol stack for an inverse multiplexing of ATM scheme between first and second physical resources A and B carried over a synchronous digital network channel 100 is illustrated in
Other prior art attempts at carrying frame based data over synchronous networks include a system known as media independent interface, produced by CISCO and a similar system produced by Bay Networks. Another prior art system aimed at carrying frame based data over synchronous digital network is the Packet On Site (POS phy) system of PMC Sierra. However, in each of these schemes, a high packetization overhead is present and packaging delays are relatively high, which slows down passage of datacoms data through a network.
One object of the present invention is to provide a means and method for efficiently mapping datacoms type data produced at frame based data rates in packetized format, into a synchronous digital virtual container system for transport of the frame based data over a synchronous digital network.
Ideally, frame based data is incorporated into a synchronous digital network with a minimum packing delay in containing the frame based data in the synchronous digital containers.
A further object of the present invention is to multiplex a plurality of frame based data channels, into a synchronous digital network channel.
A further object of the present invention is to achieve containment of frame based data directly into synchronous digital network containers, with a minimum protocol header overhead.
According to one aspect of the present invention there is provided a method for transporting frame based packet data into a synchronous transmission communications network, said method comprising the steps of:
encoding at least one packet data frame with a code which designates a boundary of said frame;
inputting said encoded packet data frame into a synchronous data channel.
The synchronous communications protocol, for example SDH protocol under ITU-T recommendation G.70X recognizes the code as marking a boundary of a packet data frame.
Said step of encoding at least one packet data frame may comprise:
appending a fixed pointer describing a position of a said boundary within a data stream containing said packet data frame, said fixed pointer appended into said synchronous digital channel.
A said fixed pointer comprises a pointer designating an end of said packet data frame, or a start of said packet data frame.
The pointer preferably designates a position of a said boundary within a synchronous virtual container, of a synchronous network.
The step of encoding at least one packet data frame may alternatively comprise:
partitioning said packet data frame into a plurality of bytes;
for each byte appending an extra bit indicating that said corresponding respective byte comprises part of said packet data frame; and
for a last byte of said packet data frame, appending an extra bit indicating that said byte constitutes a last byte of said data frame.
The step of encoding at least one packet data frame may comprise applying a consistent overhead byte stuffing algorithm to said data frame.
This may have an advantage that an encoding delay incurred by encoding the packet data frame with the byte stuffing algorithm is of known and predetermined duration.
Said step of encoding at least one packet data frame may comprise:
applying a coding algorithm to said packet data frame which identifies a boundary of said data frame by appending a fixed number of bits to said data frame, irrespective of a size of said data frame.
Said step of encoding at least one packet data frame may comprise:
applying a coding algorithm to said data frame which identifies a boundary of said data frame by appending a fixed number of bits to said data frame, irrespective of a data content of said data frame.
Preferably said step of inputting said encoded packet data frame into a synchronous data channel comprises inputting said data frame into at least one virtual container.
According to a second aspect of the present invention there is provided a method of receiving frame based data carried in a synchronous transmission communications network comprising the steps of:
recovering a stream of encoded data from a synchronous digital channel;
identifying in said recovered data stream at least one marker designating a boundary of a data frame; and
using said marker to recover said data frame from said data stream.
According to a third aspect of the present invention there is provided a method of carrying packet data frames over a synchronous digital hierarchy network, said method comprising the steps of:
delineating a plurality of said data frames from a received packet data frame bit sequence;
marking at least one boundary of each said packet data frame; and
incorporating each said encoded, marked packet data frame into at least one synchronous virtual container.
According to a fourth aspect of the present invention there is provided a method of decoding encoded packet frame data.
According to a fifth aspect of the present invention there is provided apparatus for incorporating frame based data into a synchronous transmission communications network, said apparatus comprising:
means for encoding a plurality of data frames with a plurality of markers designating boundaries of said data frames; and
means for multiplexing said encoded data frames into a synchronous virtual container.
The invention includes a method of encoding frame based data into a format suitable for inclusion into a virtual container of a synchronous digital network, said method comprising the steps of:
dividing said packet data frame into a plurality of data blocks, each having a predetermined number of bits;
for each said data block, appending an extra bit to said data block, said extra bit designating that said data block comprises said packet data frame; and
for a last data block of a said packet data frame, appending a second bit, said second bit designating said last data block as an end of said packet data frame.
The invention includes a method of decoding an encoded digital bitstream to recover a plurality of packet data frames, said method comprising the steps of:
receiving a digital bitstream comprising a plurality of data blocks, each said data block having an additional appended bit designating whether said data block belongs to a packet data frame or not;
for each said data block, checking said extra bit to determine whether said corresponding respective data block belongs to a packet data frame or not; for each said data block, removing said appended extra bit; and
for each of a plurality of data blocks having a bit designating said data block belongs to a packet data frame, assembling said data blocks into a said data frame.
For a better understanding of the invention and to show how the same may be carried into effect, there will now be described by way of example only, specific embodiments, methods and processes according to the present invention with reference to the accompanying drawings in which:
There will now be described by way of example the best mode contemplated by the inventors for carrying out the invention. In the following description numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent however, to one skilled in the art, that the present invention may be practiced without limitation to these specific details. In other instances, well known methods and structures have not been described in detail so as not to unnecessarily obscure the present invention.
Referring to
The embodiment of
Whilst the specific embodiment herein illustrates an Ethernet over synchronous digital hierarchy implementation, in general, the invention is not limited to an Ethernet implementation but encompasses any frame based data protocol. Examples of frame based data protocols include IEEE standard 802.3 frame based data carrier systems, Ethernet IEEE 802.1 systems, OSI layer 2 frame based data carrier systems in general, conventional token ring systems, conventional token bus systems, fiber distributed data interface (FDDI) systems, and dual queue dual bus (DQDB) systems. Similarly, the term synchronous digital hierarchy encompasses the known North American Synchronous Optical Network (SONET) based systems.
The term “packet” as used herein includes but is not restricted to bit and byte sequences of indeterminate length, and includes cells. The term synchronous digital network and synchronous digital channel includes plesiochronous networks and channels carried over synchronous networks.
Hereinafter, specific embodiments and methods according to the present invention will be described in relation to the Ethernet system, being representative of OSI layer 2 frame based data systems, and being the actual best mode contemplated by the inventors.
Referring to
Internet protocol packets in Internet protocol layer 300 are entered into Ethernet data frames in Ethernet layer 301, as is conventionally known in the art. Ethernet carried IP packets are incorporated into SDH virtual containers in SDH protocol layer 302.
By incorporating Ethernet directly into synchronous digital hierarchy ITU-T recommendation G.701 channels, the high data rates available using Ethernet can be provided in a geographically widespread system, which is unlimited by the conventional distance limitations imposed on prior art Ethernet local area network systems. Further, traffic can be switched at line speeds, rather than incurring an encapsulation delay as in the prior art intermediate multiplexing of ATM system. Compared to the prior art IMA system, specific implementations according to the present invention may have an advantage on line speed alone, of the order of 20% lower delay. However, additionally, the prior art IMA system has a greater number of layers of protocol, each of which adds a significant delay to traffic data, compared to the specific implementations of the present invention.
In the present disclosure, since the SDH virtual container payload data rates are relatively flexible compared to conventional telecoms interface data rates, a more efficient match between Ethernet frame based data, operating at Ethernet data rates, and telecoms data rates in the synchronous domain can be achieved compared with prior art solutions which match Ethernet data with telecoms E1, E3, STM-1 and STM-4 data rates. Prior art telecoms interfaces which can be purchased for carrying frame based data over a wide area network operate at 2 MBits/s (E1), 34 MBits/s (E3), 155 MBits/s (STM-1) or 622 MBits/s (STM-4). These data rates are not well matched to the prior art Ethernet data rates of 10 MBits/s, 100 MBits/s and 1 GBits/s. Table 1 herein illustrates a comparison of Ethernet data rates (in a central column of Table 1) with telecoms interface rates (in the left hand column of
A further feature of the specific embodiments and methods described herein is the provision of quality of service. By using the Ethernet IEEE 802.1 PQ priority field, different packets can be given different priorities for transmission. Thus, quality of service levels which are achievable in prior art local area networks, may be extended over greater geographical distances carried over a synchronous digital hierarchy transport network as provided by the specific embodiments and methods of the present invention.
Referring to
The Ethernet port card of
Rate adaption means 401 comprises a first plurality of Ethernet ports operating at 10 MBits/s and 100 MBits/s in accordance with IEEE standard 802.3; and a second plurality of synchronous ports operating at 2 MBits/s, 50 MBits/s and 100 MBits/s communicating with SDH payload mapper 400. Rate adaption means 401 comprises a plurality of through channels for adapting IEEE standard 802.3 data frames into bitstreams having data rates of 2 MBits/s, 50 MBits/s and 100 MBits/s. Rate adaption means 401 comprises a plurality of multiple channels each adapting an IEEE standard 802.3 rate data frame channel to a 2 MBits/s, 50 MBits/s or 100 MBits/s bitstream channel.
In a further embodiment, rate adaption means 401 may be replaced by prior art commercially available POS phy chips available from PMC Sierra.
SDH payload mapper 400 maps Ethernet data frames directly into SDH data frames, and operates a form of mapping which does not increase the size of the Ethernet frames.
Further details of construction and operation of payload mapper 400 will now be described.
Fundamentally, prior art SDH multiplexers operate to time division multiplex bit oriented data. A plurality of lower data rate telecoms tributaries are multiplexed into a set of virtual containers operating at higher data rates. The SDH multiplexing structure according to ITU-T recommendation G.70X is illustrated schematically in
For example, a 10 MBits/s Ethernet channel may be mapped onto 5 VC12 containers, each VC12 container having a rate of 2.048 MBits/s. The 5 VC12 containers are concatenated together to carry the 10 MBits/s Ethernet channel. For entry of a 100 MBits/s Ethernet channel into the synchronous network, a single 100 MBits/s Ethernet channel may be mapped into 2 concatenated VC3 containers each having a capacity of 51.84 MBits/s. To carry an Ethernet 1 GBits/s channel over a synchronous network, the Ethernet channel is mapped into 7 VC4 containers, each having a capacity of 139 MBits/s.
SDH payload mapper 400 communicates with the plurality of bitstream channels of rate adaption means 401. SDH payload mapper maps the plurality of bitstream channels of rate adaption means 401 into a plurality of SDH payloads, for example VC3, VC4 or VC12 thereby accessing the synchronous digital hierarchy network.
Referring to
Referring to
Two problems can occur in mapping the Ethernet data frames into SDH frame payloads:
Increasing the size of the Ethernet frame is a disadvantage, because it reduces the efficiency of packing the Ethernet frames into the SDH frames. Secondly and more importantly, Ethernet devices are prone to generating Ethernet frames at a relatively constant rate, without there being an ability to slow down or speed up the rate at which the frames are generated, or to enforce spaces between the frames. Therefore, a form of mapping which does not result in packet expansion and which avoids breaking the gap between Ethernet frames, is ideally required.
The inventors have identified four mapping schemes which may be used:
In a first specific implementation, there is provided a segmentation and reassembly scheme running over the payload of virtual container frames. A potential problem with this approach is that it is necessary to create virtual containers on a 125 μs or 500 μs cycle. However, an Ethernet frame may be ready to transmit at any time during a virtual container frame, therefore the Ethernet frame may need to be delayed for a maximum of 125 μs before entering into the next VC frame. Whilst a simple segmentation scheme is feasible, it could introduce a serial delay in data transfer from an Ethernet frame to a virtual container frame of multiples of 125 μs.
Secondly, a pointer based scheme may be used for transferring Ethernet data frames to virtual container frames. A first pointer is provided in a known location of a VC payload, which points to the start of an Ethernet data frame. Another pointer, or a length field, points to the end of the Ethernet data frame. Ethernet frames may start and end inside one payload frame. However, in this approach a potential problem is that multiple Ethernet frames may be fitted inside a VC-3 payload, or for example a pair of minimum Ethernet frames may fit into a single VC-12 multiframe, so the number of pointers could be large and incur added complexity. Since the pointer value cannot be filled in until an Ethernet frame begins to transfer to the VC payload, in order to avoid delay, pointers must be provided at the end of the VC frame, and point backwards to Ethernet frames contained within the VC frame. This then incurs delay and storage at the destination whilst waiting for the pointer to arrive (the Ethernet data frame cannot be processed until the complete VC frame has been received.
Referring to
where the bits fb denote whether the pointer points to a start or finish position of the Ethernet data frame, or whether the pointer is unused; xx is a spare bit, nn denotes which of a plurality of virtual containers a first or last byte of the Ethernet data frame is in, and the string of bits p denote the position of the start or finish within the VC3 user data portion 903.
In the example of
Since a SONET or SDH frame has a constant time duration of 125 μs, as the data rate of Ethernet frames increases, the greater of number of bytes per SONET or SDH frame, and the greater the number of Ethernet packets per SDH/SONET frame. As the data rate increases and the number of packets increase, then the number of pointers contained in the SDH/SONET frame must increase. By including the pointers in a VC-3 or other virtual container, the system shown in
In a third specific implementation, a bit stuffing scheme may be employed to designate the start and ends of Ethernet data frames in virtual containers. In such a bit stuffing scheme, the intent is to be able to recognize a string of ones or zeros as an interval between Ethernet data frames within the virtual container. This is achieved by ensuring that the string of ones or zeros denoting the interval does not occur as part of the Ethernet data in the date frame. In bit stuffing schemes, a framing protocol software transforms any Ethernet data it is given into a form that does not contain reserved character values denoting start or end of Ethernet data frames. This leaves predetermined bit sequences, eg a string of ones or a string of zeros available to unambiguously designate a start or end of an Ethernet data frame. A known bit stuffing algorithm is the prior art HDLC (BCMA 40) system in which a binary sequence 01111110 called a “flag sequence” is used to mark boundaries between packets. To eliminate this data pattern from the user data contained in the Ethernet data frames, the transmitter, whenever it observes five ones in a row in the Ethernet data frame, inserts a zero immediately following the string of five ones. This eliminates the possibility of six ones ever occurring inadvertently in the data and therefore eliminates the sequence 0111110 ever occurring in the user data. The receiver performs the reverse process: after observing five ones in a row, if the next binary digit is a zero the receive algorithm deletes the next binary digit, and if it is a one, then the receive algorithm recognizes it as one of the special framing patterns. However, there is a problem with this scheme jn that the HDLC scheme for inserting extra zeros (bit stuffing) increases the size of the transmitted packet. In the HDLC bit stuffing scheme, packet expansion of the order of 20% may occur. In a second version of HDLC, byte stuffing is used. HDLC byte stuffing may be well suited to a SONET system since SONET is a byte oriented synchronous scheme. However, in the HDLC byte stuffing system, statistically, since the forbidden string 7E occurs only one in every 255 bytes, the average packet extension should be of the order of 0.4%. However, in a worst case, for data that consists entirely of binary ones, HDLC framing can add up to 50% to the transmitted size of the data. Since in the worst case 50% extra data is transmitted, this can incur a maximum 50% additional delay due to HDLC framing. Thus, using the HDLC system, variable delays may occur and in the worst case, a 50% extra delay may be incurred in sending and Ethernet data frame within a VC payload. Further, the size by which the Ethernet data frame expands due to HDLC bit or byte stuffing is not fixed, but depends upon the data content of the Ethernet frame.
Bit stuffing schemes appear less efficient in use of frame capacity than pointer or segmentation type schemes as mentioned above. However, pointers and segmentation schemes carry a penalty in bytes used, and incur delay due to waiting for receipt of the pointers before decoding the Ethernet data frames. With bit stuffing schemes, both transmission and reception can occur as soon as a first data byte arrives at a transmitting or receiving entity. Delay is minimized.
In a fourth specific implementation and subject of the best mode herein, a nine bit encoding scheme may be used to map the Ethernet data frames into synchronous digital frame payloads. For every 8 bits of Ethernet data frame which are transmitted, 9 bits of SDH payload are occupied. An extra bit accompanies every byte of user data. The extra bit is used to determine whether the accompanying byte of data belongs to an Ethernet data frame.
An advantage of this scheme is that a known and constant frame data transfer rate is achieved between the Ethernet data frames and the SONET payloads. Further, the scheme is relatively simple to implement by algorithm, incurring low delays due to operation of the encoding algorithm used to implement the encoding scheme.
Referring to
A resultant example data rate achieved with a nine bit stuffing scheme may be as follows: a VC3 payload comprises 6040 bits, occupying a duration of 125 μs. Dividing 6040 into a plurality of 9 bit sections gives 671 units, each of 9 bits, over the 125 μs payload duration. This gives an Ethernet frame data rate of 671 bytes in 125 μs, which is equivalent to 42.951 MBits/s. In other words, four 10 MBits/s data frames may fit neatly into a single VC3 container. Interleaving an Ethernet frame between two VC3 frames gives an Ethernet frame data rate of 85.9 MBits/s.
Referring to
Referring to
Referring to
In a fifth specific implementation according to the present invention, an encoding scheme known as Consistent Overhead Byte Stuffing (COBS) may be applied to map Ethernet frames into an SDH payload. The COBS technique is a known prior art technique published by Stuart Cheshire and Mary Baker, of the Computer Science Department, Stanford University, Stanford, Calif., USA in 1997 by the Association for Computing. Machinery.
The known COBS scheme comprises a byte stuffing scheme. That is to say an extra byte of data is added to a pre-determined amount of frame data to indicate a start or end of data frame. COBS encoders are known in the prior art, and COBS encoding algorithms are disclosed in an appendix to “Consistent Overhead Byte Stuffing” by Stuart Cheshire and Mary Baker as mentioned hereinabove. In the best mode herein, application of the COBS algorithm for encoding Ethernet data frames prior to input into an SDH payload is novel. Steps for applying the COBS scheme are as illustrated schematically with reference to
In the fifth implementation herein, encoding an Ethernet data frame using the COBS scheme has an advantage that at most, only one byte per 255 bytes is added, so irrespective of the data content of the Ethernet data frame, the coding overhead of 1 byte is always known. The total expansion of an Ethernet packet encoded using the COBS scheme is always less than the Ethernet inter-packet gap, which is of the order 12 bytes. As the Ethernet data frame has a bounded expansion of only one byte, whatever the data content of the Ethernet data frame, and an extra transmission delay due to addition of the extra byte is constant.
Number | Date | Country | |
---|---|---|---|
Parent | 10803130 | Mar 2004 | US |
Child | 12053223 | US | |
Parent | 10230050 | Aug 2002 | US |
Child | 10803130 | US | |
Parent | 09143465 | Aug 1998 | US |
Child | 10230050 | US |