EP2132905B1 - Frame concatenation with drop precedence assignment - Google Patents
Frame concatenation with drop precedence assignment Download PDFInfo
- Publication number
- EP2132905B1 EP2132905B1 EP07849561.1A EP07849561A EP2132905B1 EP 2132905 B1 EP2132905 B1 EP 2132905B1 EP 07849561 A EP07849561 A EP 07849561A EP 2132905 B1 EP2132905 B1 EP 2132905B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- cdp
- value
- data packets
- pseudo
- concatenated frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 claims description 48
- 238000004891 communication Methods 0.000 claims description 30
- 239000002131 composite material Substances 0.000 claims description 11
- 238000012546 transfer Methods 0.000 claims description 4
- 210000004027 cell Anatomy 0.000 description 19
- 238000005538 encapsulation Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 4
- 238000004088 simulation Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- PEDCQBHIVMGVHV-UHFFFAOYSA-N Glycerine Chemical compound OCC(O)CO PEDCQBHIVMGVHV-UHFFFAOYSA-N 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000001912 transporting cell Anatomy 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
- H04L12/437—Ring fault isolation or reconfiguration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/36—Flow control; Congestion control by determining packet size, e.g. maximum transfer unit [MTU]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5638—Services, e.g. multimedia, GOS, QOS
- H04L2012/5665—Interaction of ATM with other protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2212/00—Encapsulation of packets
Definitions
- the present invention relates generally to communication networks, and particularly to methods and systems for transporting concatenated frames over data communication networks.
- Some communication networks use concatenation and encapsulation methods for transporting cells or other data frames.
- multiple cells or frames are encapsulated and transported over the network using a transport protocol.
- the concatenation process reduces the overhead associated with adding headers to the individual data packets, relieves the network nodes of the task of individually processing each data packet and provides functions such as end-to-end connectivity, Quality-of-Service (QoS) and protection.
- QoS Quality-of-Service
- ATM Asynchronous Transfer Mode
- MPLS Multiprotocol Label Switching
- the encapsulated packets are transported over ring networks, such as Resilient Packet Ring (RPR) networks, as defined by the IEEE 802.17 working group. Applicable standards and additional details regarding RPR networks are available at www.ieee802.org/17.
- RPR Resilient Packet Ring
- EP 1 322 080 A2 describes a system and a method for mapping quality of service levels between Multi-Protocol Label Switching (MPLS) and Asynchronous Transfer Mode(ATM) connections in a network element.
- MPLS Multi-Protocol Label Switching
- ATM Asynchronous Transfer Mode
- IP Internet Protocol
- US 6 646 988 B1 relates generally to communication systems and more particularly to allocating excess bandwidth in a differentiated services communication network.
- a method for communication comprising:
- the transport protocol comprises a Multiprotocol Label Switching (MPLS) protocol.
- the data packets comprise Asynchronous Transfer Mode (ATM) cells. Additionally or alternatively, the data packets comprise Ethernet frames.
- the communication network comprises a ring network.
- the pseudo-random assignment function is defined such that a likelihood of assigning a certain CDP value from the range is proportional to a relative amount of the data in the concatenated frame, which is carried by the data packets whose DP value equals the certain CDP value.
- assigning the CDP value comprises generating a pseudo-random number that is greater than zero and is distributed between zero and unity, assigning the concatenated frame a first CDP value when the pseudo-random number is no greater than the relative amount of the data, and assigning the concatenated frame a second CDP value, which indicates a higher drop precedence with respect to the first CDP value, when the pseudo-random number is greater than the relative amount of the data.
- Assigning the CDP value may comprise reading the relative amount of the data from a Look-Up Table (LUT). Additionally or alternatively, assigning the CDP value may include generating the pseudo-random assignment function using a Linear Feedback Shift Register (hFSR).
- hFSR Linear Feedback Shift Register
- the pseudo-random assignment function is defined such that a likelihood of assigning a certain CDP value from the range depends on a number of the data packets, which are encapsulated in the concatenated frame and whose DP value equals the certain CDP value.
- a network node comprising:
- a computer software product used in a network node comprising a computer-readable medium, in which program instructions are stored, which instructions, when read by a processor, cause the processor to encapsulate multiple data packets; which carry data and have respective drop precedence (DP) values selected from a range of possible DP values, so as to produce a concatenated frame of a transport protocol, to assign a composite drop precedence (CDP) value from the range to the concatenated frame using a pseudo-random assignment function that depends on a distribution of the DP values of the data packets in the concatenated frame, and to send the concatenated frame to a communication network, so as to transport the concatenated frame through the communication network using the transport protocol, in accordance with the pseudo-randomly assigned CDP value.
- DP drop precedence
- CDP composite drop precedence
- data packets are assigned different drop precedence (DP) values, which define priorities among the packets when the packets compete for network resources, such as bandwidth.
- DP drop precedence
- a certain network connection may have QoS specifications, which define certain Committed Information Rate (CIR) and Peak Information Rate (PIR) values.
- CIR Committed Information Rate
- PIR Peak Information Rate
- EIR Excess Information Rate
- network nodes that serve the connection should guarantee bandwidth that is at least equal to the CIR to the connection. When excess bandwidth is available, additional bandwidth can be allocated for transporting EIR-rated traffic.
- a possible method for implementing this QoS policy is to assign a low DP value to the data packets transmitted over the connection, up to the CIR. When the CIR is exceeded, subsequent data packets are assigned a high DP value. When network congestion occurs, such as when bandwidth is "overbooked" by different connections or services, packets assigned a high DP value may be dropped.
- a connection may use a transport protocol, such as MPLS, that encapsulates the data packets at the ingress of the connection to produce concatenated frames.
- a transport protocol such as MPLS
- Each concatenated frame which comprises multiple data packets, is regarded by the network nodes along the connection as a single unit.
- the connection is expected to comply with the CIR and PIR specifications. This requirement is often problematic, since although the individual data packets encapsulated within the concatenated frame may have different DP values, the concatenated frame must be either forwarded or discarded as a whole.
- Embodiments of the present invention provide methods and systems for processing concatenated frames, which comprise data packets having different DP assignments, while meeting the QoS specifications of the connection.
- the network node via which the data packets enter the network which is referred to as the ingress node, encapsulates the data packets to form concatenated frames of the transport protocol.
- the ingress node assigns each concatenated frame a composite DP (CDP) value, which is subsequently used by the network nodes along the connection in order to determine whether to forward or drop the concatenated frame.
- CDP value is selected from the range of possible values using a pseudo-random assignment function, which depends on the statistical distribution of the DP values of the data packets in the concatenated frame.
- An exemplary pseudo-random assignment process that provides these likelihoods is described below.
- the likelihood of assigning a particular CDP value to the concatenated frame may depend on the number of data packets that have their individual DP set to this value.
- the network nodes along the connection determine whether to forward or drop the concatenated frames based on their respective CDP values.
- the node via which the data packets leave the network referred to as the egress node, accepts the concatenated frames that were not dropped along the connection, extracts the individual data packets and forwards them to their destinations.
- the methods and systems described herein determine whether to drop or forward packets based on the current statistics of the actual traffic transported over the network. As a result, the connection is able to closely meet its QoS specification, thus improving the efficiency of allocating network resources.
- Fig. 1 is a block diagram that schematically illustrates a communication network 20, in accordance with an embodiment of the present invention.
- network 20 comprises an Internet Protocol (IP) network.
- IP Internet Protocol
- network 20 comprises two RPR networks 24 and 28, which are connected by an MPLS network 32.
- the configuration of network 20 may comprise a single RPR network, or any other suitable local-area, metropolitan-area and/or wide-area network configuration known in the art.
- Ring network 24 comprises ring nodes 36A...36D, and ring network 28 comprises ring nodes 36E...36H.
- Network 32 typically comprises multiple nodes, which are not shown in the figure for the sake of clarity.
- Each node comprises a network interface 38, which connects the node to the network, and a network processor (NP) 40, which carries out the different packet processing functions of the node.
- NP 40 carries out the packet concatenation, encapsulation and de-capsulation described herein.
- NP 40 may be implemented in hardware, such as using an application-specific integrated circuit (ASIC) or field-programmable gate array (FPGA), using software, or using a combination of hardware and software elements.
- ASIC application-specific integrated circuit
- FPGA field-programmable gate array
- NP 40 comprises a general-purpose processor, which is programmed in software to carry out the functions described herein.
- the software may be downloaded to the processor in electronic form, such as over a network.
- connection 42 is defined over network 20.
- connection 42 carries data packets, which enter network 20 at node 36A of ring 24 and exit network 20 at node 36H of ring 28.
- Node 36A is referred to as the ingress node
- node 36H is referred to as the egress node of the connection.
- the ingress and egress nodes reside in different ring networks, these nodes may alternatively reside in the same ring network or in network 32.
- the ingress node accepts data packets belonging to connection 42, in order to transport the packets over the connection to the egress node.
- the data packets may comprise ATM cells, EthernetTM frames and/or any other packet type.
- the data packets may originate from any number of sources and may be associated with any number of communication services.
- the frames may all have the same size and carry the same amount of data, or may alternatively have different sizes and carry different amounts of data.
- Connection 42 uses a certain transport protocol for encapsulating the data packets and transporting them via network 20 from the ingress node to the egress node.
- the transport protocol typically reduces the overhead associated with adding headers to the individual data packets, relieves the nodes along the connection of the task of individually processing each data packet, and provides functions such as end-to-end connectivity, QoS and protection.
- connection 42 is used to transport ATM traffic over an MPLS network.
- connection 42 comprises an MPLS Label-Switched Path (LSP), also referred to as an MPLS tunnel, and the data packets comprise ATM cells.
- LSP MPLS Label-Switched Path
- the data packet may comprise Ethernet frames and the transport protocol may comprise the Internet Protocol (IP).
- IP Internet Protocol
- Fig. 2 is a diagram that schematically illustrates concatenation and de-concatenation of data packets, in accordance with an embodiment of the present invention.
- three data packets 44A...44C are encapsulated by the ingress node.
- Each data packet accepted by the ingress node is pre-assigned a drop precedence (DP) value, which defines its relative importance with respect to the other data packets, as is known in the art.
- Data packets 44A...44C comprise respective DP header fields 48A...48C, which hold the pre-assigned DP values.
- the ingress node encapsulates data packets 44A...44C, to produce a concatenated frame 52 of the transport protocol.
- the ingress node determines a composite drop precedence (CDP) value for the concatenated frame in a pseudo-random manner, as will be explained in detail further below.
- Concatenated frame 52 comprises a CDP header field 56, which holds the CDP value assigned to the frame by the ingress node.
- Concatenated frame 52 is transported using the transport protocol over connection 42.
- the network nodes along the connection process the concatenated frame in accordance with the transport protocol. In particular, when congestion occurs and different concatenated frames compete for network bandwidth, the nodes determine whether to forward or drop each concatenated frame based on its CDP value.
- the network nodes usually have no visibility or access to the DP values of the individual data packets within the concatenated frame.
- the egress node accepts the frame, extracts data packets 44A...44C and forwards each data packet to its destination.
- Fig. 3 is a flow chart that schematically illustrates a method for transporting concatenated frames using drop precedence assignment, in accordance with an embodiment of the present invention.
- the method begins with the ingress node accepting data packets, which belong to a particular connection, at a packet acceptance step 60.
- Each data packet is pre-assigned a DP value, which is selected from a range of possible values.
- any other number of possible values such as a range of low, medium and high drop precedence values, can also be used.
- the ingress node encapsulates the data packets and produces concatenated frames, at a concatenation step 64.
- the ingress node can encapsulate any desired number of data packets in each concatenated frame and use any desired policy or logic in order to determine how to divide the data packets into the concatenated frames.
- each concatenated frame comprises a fixed, predetermined number of data packets.
- the maximum latency introduced by the encapsulation process may be bounded.
- the ingress node may accumulate the arriving data packets up to a certain latency time-out. When the time out expires, all pending data packets are encapsulated.
- the concatenated frames have a varying number of data packets.
- the ingress node may have an upper bound on the allowed latency, as well as an upper bound on the maximum number of data packets in each concatenated frames.
- the ingress node determines and assigns a composite drop precedence (CDP) value to each concatenated frame.
- CDP composite drop precedence
- the ingress node selects the CDP value from the range of the possible values using a pseudo-random assignment function, such that the likelihood of selecting and assigning a certain CDP value depends on the distribution of the DP values of the data packets in the concatenated frame.
- the likelihood of selecting and assigning a certain CDP value is proportional to the relative amount of data, which is carried by the data packets in the concatenated frame, whose DP values is equal to this value.
- the ingress node calculates the relative amount of data in the concatenated frame, which is carried by low-DP data packets, at a data ratio calculation step 68.
- the ingress node calculates the ratio between the amount of data in the concatenated frame that is carried by low-DP data packets and between the total amount of data carried by the concatenated frame. This ratio is denoted P.
- P the ratio between the amount of data in the concatenated frame that is carried by low-DP data packets and between the total amount of data carried by the concatenated frame. This ratio is denoted P.
- P the ingress node typically considers only the payload data, or user data, of the packets and ignores header fields and other control information. In some cases, such as when transporting ATM cells, all data packets carry the same amount of data. In these cases, the ingress node may determine P by calculating the ratio between the number of low-DP data packets and the total number of data packets in the concatenated frame, without explicitly measuring the
- the ingress node For each concatenated frame, the ingress node generates a pseudo-random number, which is distributed uniformly between zero and unity, excluding zero, at a pseudo-random generation step 72.
- the generated number is denoted X.
- the ingress node generates X using a Linear Feedback Shift Register (ZFSR), as is known in the art.
- ZFSR Linear Feedback Shift Register
- An exemplary LFSR configuration is described in Fig. 4 below.
- steps 68-84 above can be generalized and used when the pre-assigned DP values can take a higher number of possible values. For example, consider a range of four possible DP values denoted 0, 1, 2 and 3. The relative occurrences of these four DP values in a particular concatenated frame are denoted P0, P1, P2 and P3, respectively. Possible decision logic for assigning the CDP to this frame can be the following:
- any other suitable method for pseudo-randomly selecting the CDP values with the appropriate likelihoods can also be used.
- the ingress node forwards the concatenated frame over connection 42, at a transporting step 88.
- the network nodes along the connection extract the CDP value from the concatenated frame, and determine whether to drop or forward the frame based on the CDP value.
- the node checks whether excess bandwidth is available for forwarding the concatenated frame, at an excess bandwidth checking step 100. If excess bandwidth is available, the node forwards the concatenated frame at forwarding step 96. Otherwise, the node discards the frame, at a discarding step 104.
- WRED Weighted Random Early Detection
- the effectiveness of the pseudo-random CDP assignment method described above can be demonstrated by comparing this method to a deterministic (i.e., non-pseudo-random) assignment method that is based on majority voting.
- the ingress node determines the most frequently-occurring DP value among the data packets in the concatenated frame, and assigns this value as the CDP of the frame.
- the distribution of CDP values of the concatenated frames may deviate considerably from the DP distribution of the data packets.
- the likelihood of assigning each CDP value to a concatenated frame depends on the actual distribution of DP values among the data packets in the frame. Consequently, the distribution of CDP values closely follows the distribution of DP values.
- the performance of the pseudo-random CDP assignment method described above was evaluated by the inventors using a computer simulation.
- the simulation tested a scenario in which 52-byte ATM cells are encapsulated in concatenated frames.
- ATM cells arrive at the ingress node randomly over time.
- Each cell is pre-assigned with a DP value of 1 or 0, in accordance with pre-set probabilities.
- the maximum number of cells in each concatenated frame, as well as the maximum delay caused by the encapsulation, are bounded by user-definable bounds.
- the concatenated frames are assigned CDP values in accordance with the pseudo-random assignment method of Fig. 3 above. Multiple concatenated frames and CDP assignments were simulated in this manner, and the distribution of CDP values of the frames was compared with the distribution of DP values of the cells.
- the ingress node can determine P, the ratio of low-DP data to the total data, using a Look-Up Table (LUT) instead of performing an explicit division operation.
- LUT Look-Up Table
- P is equal to the number of low-DP data packets in the concatenated frame (denoted L), divided by the total number of data packets in the frame (denoted N).
- L the number of low-DP data packets in the concatenated frame
- N the total number of data packets in the frame
- the following look-up table gives the possible values of P (expressed as 16-bit fractions in Hexadecimal notation) as a function of L and N:
- Fig. 4 is a block diagram that schematically illustrates a pseudo-random number generator, in accordance with an embodiment of the present invention.
- LFSRs of this sort can be used to generate the pseudo-random number X used in the CDP value assignment methods described above.
- the exemplary LFSR shown in Fig. 4 comprises sixteen taps 110. Each tap holds a single bit, which may be set to "1" or to "0". At each clock cycle, the LFSR taps are shifted to the left. For example, the content of the tap labeled 9 moves to the tap labeled 10. The contents of some of the taps, in the present example the taps labeled 1, 2, 4 and 15, are summed using adders 114 and are fed back to the right-most tap labeled 0.
- the sixteen-bit binary word represented by the sixteen LFSR taps changes pseudo-randomly with each clock cycle.
- the pseudo-random numbers generated by this LFSR are in the range 0x0001 to 0xFFFF.
- the LFSR configuration of Fig. 4 is an exemplary configuration, which is chosen purely for the sake of conceptual clarity. Any other suitable mechanism can also be used for generating pseudo-random numbers in the CDP assignment methods described herein.
- the principles of the present invention can also be used with other packet and cell types and/or other transport protocols.
- the methods and systems described herein can be used for transporting Ethernet frames over MPLS networks.
- the data packets may comprise packets of a Wireless Local Area Network (WLAN) protocol, such as the protocols defined in the IEEE 802.11 standard.
- WLAN Wireless Local Area Network
- PPP Point-to-Point Protocol
- PPP encapsulation is described, for example, by Pazhyannur et al., in IETF RFC 3153 entitled "PPP Encapsulation," August, 2001 .
- IPsec Internet Protocol Security
- LNCS Computer Science
- Packet concatenation in accordance with the methods and systems described herein can also be applied to cable communication systems, such as systems that operate in accordance with the Data Over Cable Service Interface Specification (DOCSIS).
- DOCSIS Data Over Cable Service Interface Specification
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
- The present invention relates generally to communication networks, and particularly to methods and systems for transporting concatenated frames over data communication networks.
- Some communication networks use concatenation and encapsulation methods for transporting cells or other data frames. In these methods, multiple cells or frames are encapsulated and transported over the network using a transport protocol. The concatenation process reduces the overhead associated with adding headers to the individual data packets, relieves the network nodes of the task of individually processing each data packet and provides functions such as end-to-end connectivity, Quality-of-Service (QoS) and protection.
- For example, Asynchronous Transfer Mode (ATM) cells are sometimes encapsulated and transported using the Multiprotocol Label Switching (MPLS) protocol. MPLS is described in detail by Rosen et al., in Request for Comments (RFC) 3031 of the Internet Engineering Task Force (IETF), entitled "Multiprotocol Label Switching Architecture" (January, 2001).
- This reference is available at www.ietf.org/rfc. Methods for encapsulating ATM cells in MPLS packets are described by Martini et al., in an IETF Internet Draft entitled "Encapsulation Methods for Transport of ATM Over MPLS Networks," May, 2006.
- This document is available at www.ietf.org/internet-drafts/draft-ietf-pwe3-atm-encap-11.txt.
- In some cases, the encapsulated packets are transported over ring networks, such as Resilient Packet Ring (RPR) networks, as defined by the IEEE 802.17 working group. Applicable standards and additional details regarding RPR networks are available at www.ieee802.org/17.
-
EP 1 322 080 A2 - Method for maintaining quality of service parameters for transmissions as a native Ethernet service between a first network having a first communication protocol and a second network having a second communication protocol that is different from the first communication protocol is described in
WO 2005/104467 A1 . - Models for the interaction of differentiated services with Internet Protocol (IP) tunnels are described by D. Black EMC Corporation in the memo entitled "Differentiated Services and Tunnels", October, 2000.
- Internet standards track protocol for the internet community are described by Le Faucher F. et al. in the memo entitled "Multi-Protocol Label Switching (MPLS): Support of Differentiated Services", May, 2002. A flexible solution for support of differentiated services over Multi-Protocol Label Switching networks is defined in this document.
-
US 6 646 988 B1 relates generally to communication systems and more particularly to allocating excess bandwidth in a differentiated services communication network. - There is therefore provided, in accordance with an embodiment of the present invention, a method for communication, comprising:
- encapsulating multiple data packets, which carry data and have respective drop precedence (DP) values selected from a range of possible DP values, to produce a concatenated frame of a transport protocol;
- assigning a composite drop precedence (CDP) value from the range to the concatenated frame using a pseudo-random assignment function that depends on a distribution of the DP values of the data packets in the concatenated frame; and
- transporting the concatenated frame through a communication network using the transport protocol, in accordance with the pseudo-randomly assigned CDP value.
- In some embodiments, the transport protocol comprises a Multiprotocol Label Switching (MPLS) protocol. In another embodiment, the data packets comprise Asynchronous Transfer Mode (ATM) cells. Additionally or alternatively, the data packets comprise Ethernet frames. In some embodiments, the communication network comprises a ring network.
- In a disclosed embodiment, the pseudo-random assignment function is defined such that a likelihood of assigning a certain CDP value from the range is proportional to a relative amount of the data in the concatenated frame, which is carried by the data packets whose DP value equals the certain CDP value.
- In another embodiment, assigning the CDP value comprises generating a pseudo-random number that is greater than zero and is distributed between zero and unity, assigning the concatenated frame a first CDP value when the pseudo-random number is no greater than the relative amount of the data, and assigning the concatenated frame a second CDP value, which indicates a higher drop precedence with respect to the first CDP value, when the pseudo-random number is greater than the relative amount of the data. Assigning the CDP value may comprise reading the relative amount of the data from a Look-Up Table (LUT). Additionally or alternatively, assigning the CDP value may include generating the pseudo-random assignment function using a Linear Feedback Shift Register (hFSR).
- In yet another embodiment, the pseudo-random assignment function is defined such that a likelihood of assigning a certain CDP value from the range depends on a number of the data packets, which are encapsulated in the concatenated frame and whose DP value equals the certain CDP value.
- There is additionally provided, in accordance with an embodiment of the present invention, a network node, comprising:
- a network interface, which is arranged to communicate with a communication network; and
- a processor, which is arranged to encapsulate multiple data packets, which carry data and have respective drop precedence (DP) values selected from a range of possible DP values, so as to produce a concatenated frame of a transport protocol, to assign a composite drop precedence (CDP) value from the range to the concatenated frame using a pseudo-random assignment function that depends on a distribution of the DP values of the data packets in the concatenated frame, and to send the concatenated frame to the communication network using the network interface, so as to transport the concatenated frame through the communication network using the transport protocol, in accordance with the pseudo-randomly assigned CDP value.
- There is further provided, in accordance with an embodiment of the present invention, a computer software product used in a network node, the product comprising a computer-readable medium, in which program instructions are stored, which instructions, when read by a processor, cause the processor to encapsulate multiple data packets; which carry data and have respective drop precedence (DP) values selected from a range of possible DP values, so as to produce a concatenated frame of a transport protocol, to assign a composite drop precedence (CDP) value from the range to the concatenated frame using a pseudo-random assignment function that depends on a distribution of the DP values of the data packets in the concatenated frame, and to send the concatenated frame to a communication network, so as to transport the concatenated frame through the communication network using the transport protocol, in accordance with the pseudo-randomly assigned CDP value.
- The present invention will be more fully understood from the following detailed description of the embodiments thereof, taken together with the drawings in which:
-
-
Fig. 1 is a block diagram that schematically illustrates a communication network, in accordance with an embodiment of the present invention; -
Fig. 2 is a diagram that schematically illustrates concatenation and de-concatenation of data packets, in accordance with an embodiment of the present invention; -
Fig. 3 is a flow chart that schematically illustrates a method for transporting concatenated frames using drop precedence assignment, in accordance with an embodiment of the present invention; and -
Fig. 4 is a block diagram that schematically illustrates a pseudo-random number generator, in accordance with an embodiment of the present invention. - In some communication networks, data packets are assigned different drop precedence (DP) values, which define priorities among the packets when the packets compete for network resources, such as bandwidth. For example, a certain network connection may have QoS specifications, which define certain Committed Information Rate (CIR) and Peak Information Rate (PIR) values. The difference between the peak and committed rates is referred to as an Excess Information Rate (EIR). In order to comply with these QoS specifications, network nodes that serve the connection should guarantee bandwidth that is at least equal to the CIR to the connection. When excess bandwidth is available, additional bandwidth can be allocated for transporting EIR-rated traffic.
- A possible method for implementing this QoS policy is to assign a low DP value to the data packets transmitted over the connection, up to the CIR. When the CIR is exceeded, subsequent data packets are assigned a high DP value. When network congestion occurs, such as when bandwidth is "overbooked" by different connections or services, packets assigned a high DP value may be dropped.
- In some cases, a connection may use a transport protocol, such as MPLS, that encapsulates the data packets at the ingress of the connection to produce concatenated frames. Each concatenated frame, which comprises multiple data packets, is regarded by the network nodes along the connection as a single unit. Regardless of the encapsulation applied by the transport protocol, the connection is expected to comply with the CIR and PIR specifications. This requirement is often problematic, since although the individual data packets encapsulated within the concatenated frame may have different DP values, the concatenated frame must be either forwarded or discarded as a whole.
- Embodiments of the present invention provide methods and systems for processing concatenated frames, which comprise data packets having different DP assignments, while meeting the QoS specifications of the connection.
- In some embodiments, the network node via which the data packets enter the network, which is referred to as the ingress node, encapsulates the data packets to form concatenated frames of the transport protocol. The data packets arriving at the ingress node are pre-assigned respective DP values, which are selected from a range of possible DP values. In many cases the range comprises two values, i.e., a low DP value (denoted DP=0) and a high DP value (denoted DP=1), although a higher number of DP values can also be used.
- The ingress node assigns each concatenated frame a composite DP (CDP) value, which is subsequently used by the network nodes along the connection in order to determine whether to forward or drop the concatenated frame. The CDP value is selected from the range of possible values using a pseudo-random assignment function, which depends on the statistical distribution of the DP values of the data packets in the concatenated frame.
- In some embodiments, the pseudo-random assignment function is defined such that the likelihood of selecting and assigning a certain value is proportional to the relative amount of data that is carried by the data packets in the concatenated frame with individual DP set to this value. For example, assume that all data packets in the concatenated frame carry the same amount of data, and that 30% of the data packets are assigned DP=0 and 70% are assigned DP=1. In this case, the ingress node pseudo-randomly selects a composite DP value for the concatenated frame, such that the selection process has a 30% likelihood of assigning CDP=0 and a 70% likelihood of assigning CDP=1. An exemplary pseudo-random assignment process that provides these likelihoods is described below.
- Alternatively, other suitable pseudo-random functions can also be used. For example, the likelihood of assigning a particular CDP value to the concatenated frame may depend on the number of data packets that have their individual DP set to this value.
- The network nodes along the connection determine whether to forward or drop the concatenated frames based on their respective CDP values. The node via which the data packets leave the network, referred to as the egress node, accepts the concatenated frames that were not dropped along the connection, extracts the individual data packets and forwards them to their destinations.
- Since the likelihood of assigning a particular CDP value to a concatenated frame depends on the statistical distribution of the DP values of the data packets in the frame, the rates of forwarded and dropped data packets closely follow the specified QoS specifications of the connection, when averaged over a large number of concatenated frames.
- Unlike some known QoS methods, which determine whether to drop or forward packets based on externally-provided a-priori information (such as an a-priori definition of the CIR and PIR values and the expected numbers of DP=0 and DP=1 data packets), which may be inaccurate or obsolete, the methods and systems described herein determine whether to drop or forward packets based on the current statistics of the actual traffic transported over the network. As a result, the connection is able to closely meet its QoS specification, thus improving the efficiency of allocating network resources.
-
Fig. 1 is a block diagram that schematically illustrates acommunication network 20, in accordance with an embodiment of the present invention. Typically,network 20 comprises an Internet Protocol (IP) network. In the exemplary embodiment ofFig. 1 ,network 20 comprises twoRPR networks MPLS network 32. Alternatively, the configuration ofnetwork 20 may comprise a single RPR network, or any other suitable local-area, metropolitan-area and/or wide-area network configuration known in the art. -
Ring network 24 comprisesring nodes 36A...36D, andring network 28 comprisesring nodes 36E...36H.Network 32 typically comprises multiple nodes, which are not shown in the figure for the sake of clarity. Each node comprises anetwork interface 38, which connects the node to the network, and a network processor (NP) 40, which carries out the different packet processing functions of the node. In particular,NP 40 carries out the packet concatenation, encapsulation and de-capsulation described herein. - The functions of
NP 40 may be implemented in hardware, such as using an application-specific integrated circuit (ASIC) or field-programmable gate array (FPGA), using software, or using a combination of hardware and software elements. In some embodiments,NP 40 comprises a general-purpose processor, which is programmed in software to carry out the functions described herein. The software may be downloaded to the processor in electronic form, such as over a network. - A
connection 42 is defined overnetwork 20. In the present example,connection 42 carries data packets, which enternetwork 20 atnode 36A ofring 24 andexit network 20 atnode 36H ofring 28.Node 36A is referred to as the ingress node, andnode 36H is referred to as the egress node of the connection. Although in the present example the ingress and egress nodes reside in different ring networks, these nodes may alternatively reside in the same ring network or innetwork 32. - The ingress node accepts data packets belonging to
connection 42, in order to transport the packets over the connection to the egress node. The data packets may comprise ATM cells, Ethernet™ frames and/or any other packet type. The data packets may originate from any number of sources and may be associated with any number of communication services. The frames may all have the same size and carry the same amount of data, or may alternatively have different sizes and carry different amounts of data. -
Connection 42 uses a certain transport protocol for encapsulating the data packets and transporting them vianetwork 20 from the ingress node to the egress node. The transport protocol typically reduces the overhead associated with adding headers to the individual data packets, relieves the nodes along the connection of the task of individually processing each data packet, and provides functions such as end-to-end connectivity, QoS and protection. - The ingress node produces concatenated frames of the transport protocol, with each concatenated frame comprising one or more data packets. For example, in some
embodiments connection 42 is used to transport ATM traffic over an MPLS network. In these embodiments,connection 42 comprises an MPLS Label-Switched Path (LSP), also referred to as an MPLS tunnel, and the data packets comprise ATM cells. Alternatively, any other suitable connection type, transport protocol and type of data packets can be used. For example, the data packet may comprise Ethernet frames and the transport protocol may comprise the Internet Protocol (IP). -
Fig. 2 is a diagram that schematically illustrates concatenation and de-concatenation of data packets, in accordance with an embodiment of the present invention. In the example ofFig. 2 , threedata packets 44A...44C are encapsulated by the ingress node. Each data packet accepted by the ingress node is pre-assigned a drop precedence (DP) value, which defines its relative importance with respect to the other data packets, as is known in the art.Data packets 44A...44C comprise respective DP header fields 48A...48C, which hold the pre-assigned DP values. - The ingress node encapsulates
data packets 44A...44C, to produce a concatenatedframe 52 of the transport protocol. The ingress node determines a composite drop precedence (CDP) value for the concatenated frame in a pseudo-random manner, as will be explained in detail further below.Concatenated frame 52 comprises aCDP header field 56, which holds the CDP value assigned to the frame by the ingress node. -
Concatenated frame 52 is transported using the transport protocol overconnection 42. The network nodes along the connection process the concatenated frame in accordance with the transport protocol. In particular, when congestion occurs and different concatenated frames compete for network bandwidth, the nodes determine whether to forward or drop each concatenated frame based on its CDP value. The network nodes usually have no visibility or access to the DP values of the individual data packets within the concatenated frame. - Assuming concatenated
frame 52 is not dropped, the egress node accepts the frame, extractsdata packets 44A...44C and forwards each data packet to its destination. -
Fig. 3 is a flow chart that schematically illustrates a method for transporting concatenated frames using drop precedence assignment, in accordance with an embodiment of the present invention. The method begins with the ingress node accepting data packets, which belong to a particular connection, at apacket acceptance step 60. Each data packet is pre-assigned a DP value, which is selected from a range of possible values. In the description that follows, the range comprises two values: a low DP value (DP=0) and a high DP value (DP=1). Alternatively, any other number of possible values, such as a range of low, medium and high drop precedence values, can also be used. - The ingress node encapsulates the data packets and produces concatenated frames, at a
concatenation step 64. The ingress node can encapsulate any desired number of data packets in each concatenated frame and use any desired policy or logic in order to determine how to divide the data packets into the concatenated frames. For example, in some embodiments, each concatenated frame comprises a fixed, predetermined number of data packets. In alternative embodiments, the maximum latency introduced by the encapsulation process may be bounded. In these embodiments, the ingress node may accumulate the arriving data packets up to a certain latency time-out. When the time out expires, all pending data packets are encapsulated. As a result, the concatenated frames have a varying number of data packets. Further alternatively, the ingress node may have an upper bound on the allowed latency, as well as an upper bound on the maximum number of data packets in each concatenated frames. - The ingress node determines and assigns a composite drop precedence (CDP) value to each concatenated frame. The ingress node selects the CDP value from the range of the possible values using a pseudo-random assignment function, such that the likelihood of selecting and assigning a certain CDP value depends on the distribution of the DP values of the data packets in the concatenated frame. In the present example, the likelihood of selecting and assigning a certain CDP value is proportional to the relative amount of data, which is carried by the data packets in the concatenated frame, whose DP values is equal to this value.
- Steps 68-84 that follow describe an exemplary process for pseudo-randomly selecting the CDP value of a concatenated frame when the pre-assigned DP values of the individual data packets comprise two values, i.e., DP=0 and DP=1.
- The ingress node calculates the relative amount of data in the concatenated frame, which is carried by low-DP data packets, at a data
ratio calculation step 68. The ingress node calculates the ratio between the amount of data in the concatenated frame that is carried by low-DP data packets and between the total amount of data carried by the concatenated frame. This ratio is denoted P. When calculating P, the ingress node typically considers only the payload data, or user data, of the packets and ignores header fields and other control information. In some cases, such as when transporting ATM cells, all data packets carry the same amount of data. In these cases, the ingress node may determine P by calculating the ratio between the number of low-DP data packets and the total number of data packets in the concatenated frame, without explicitly measuring the amounts of data. - For each concatenated frame, the ingress node generates a pseudo-random number, which is distributed uniformly between zero and unity, excluding zero, at a
pseudo-random generation step 72. The generated number is denoted X. In some embodiments, the ingress node generates X using a Linear Feedback Shift Register (ZFSR), as is known in the art. An exemplary LFSR configuration is described inFig. 4 below. - The ingress node compares ratio P to the pseudo-random number X, at a
comparison step 76. If X≤P, the ingress node assigns a CDP=0 value to the concatenated frame, at a lowCDP assignment step 80. Otherwise, i.e., is X>P, the ingress node assigns a CDP=1 value to the concatenated frame, at a high CDP assignment step 84. - As can be appreciated, in the process of steps 68-84 above, the likelihood of assigning CDP=0 to a concatenated frame is proportional to the relative amount of data carried by low-DP data packets in the frame. Similarly, the likelihood of assigning CDP=1 to a concatenated frame is proportional to the relative amount of data carried by high-DP data packets in the frame.
- The process of steps 68-84 above can be generalized and used when the pre-assigned DP values can take a higher number of possible values. For example, consider a range of four possible DP values denoted 0, 1, 2 and 3. The relative occurrences of these four DP values in a particular concatenated frame are denoted P0, P1, P2 and P3, respectively. Possible decision logic for assigning the CDP to this frame can be the following:
- if X≤P0, assign CDP=0, else
- if X≤(P0+P1), assign CDP=1, else
- if X≤(P0+P1+P2), assign CDP=2, else assign CDP=3.
- Alternatively, any other suitable method for pseudo-randomly selecting the CDP values with the appropriate likelihoods can also be used.
- Having assigned the CDP value, the ingress node forwards the concatenated frame over
connection 42, at a transportingstep 88. The network nodes along the connection extract the CDP value from the concatenated frame, and determine whether to drop or forward the frame based on the CDP value. - When such a network node accepts the concatenated frame, the node checks whether CDP=0, at a
CDP checking step 92. If CDP=0, the node forwards the frame, at a forwardingstep 96. In particular, when the node processing the frame is the egress node, the node de-concatenates the frame, extracts the individual data packets and forwards each data packet to its destination. - If the node concludes that CDP=1 at
CDP checking step 92 above, the node checks whether excess bandwidth is available for forwarding the concatenated frame, at an excessbandwidth checking step 100. If excess bandwidth is available, the node forwards the concatenated frame at forwardingstep 96. Otherwise, the node discards the frame, at a discardingstep 104. - In alternative embodiments, the node can use other types of policies or decision logic to determine whether to forward or discard the concatenated frame based on its CDP and on the available bandwidth. For example, nodes that use Weighted Random Early Detection (WRED) sometimes gradually increase the probability of discarding frames having CDP=1, proportionally to the level of network congestion. As a result, the TCP/IP flow control mechanism of the node is able to adapt to the actual currently-available excess bandwidth.
- The effectiveness of the pseudo-random CDP assignment method described above can be demonstrated by comparing this method to a deterministic (i.e., non-pseudo-random) assignment method that is based on majority voting. In the deterministic method, the ingress node determines the most frequently-occurring DP value among the data packets in the concatenated frame, and assigns this value as the CDP of the frame. When using such a deterministic assignment, however, the distribution of CDP values of the concatenated frames may deviate considerably from the DP distribution of the data packets.
- For example, assume that 60% of the data packets in each concatenated frame are CIR packets, which are assigned DP=0, and that 40% of the data packets are EIR packets that are assigned DP=1. If the ingress node were to use majority voting CDP assignment, all concatenated frames would be assigned CDP=0 and none would be assigned CDP=1. As another example, assume the opposite scenario, in which 60% of the data packets in each concatenated frame are assigned DP=1 and 40% are assigned DP=0. In this case, CDP assignment based on majority-voting would cause all concatenated frames to be have CDP=1 and to be regarded as EIR frames. In both scenarios, the distribution of CDP values is considerably different from the distribution of DP values, thus causing significant deviation from the specified QoS of the connection.
- When using the pseudo-random CDP assignment methods described herein, on the other hand, the likelihood of assigning each CDP value to a concatenated frame depends on the actual distribution of DP values among the data packets in the frame. Consequently, the distribution of CDP values closely follows the distribution of DP values.
- The performance of the pseudo-random CDP assignment method described above was evaluated by the inventors using a computer simulation. The simulation tested a scenario in which 52-byte ATM cells are encapsulated in concatenated frames. In the simulation, ATM cells arrive at the ingress node randomly over time. Each cell is pre-assigned with a DP value of 1 or 0, in accordance with pre-set probabilities. The maximum number of cells in each concatenated frame, as well as the maximum delay caused by the encapsulation, are bounded by user-definable bounds. The concatenated frames are assigned CDP values in accordance with the pseudo-random assignment method of
Fig. 3 above. Multiple concatenated frames and CDP assignments were simulated in this manner, and the distribution of CDP values of the frames was compared with the distribution of DP values of the cells. - The results of the simulation show that the distribution of CDP values closely follows the distribution of DP values. For example, when 40% of the cells had DP=0, 38.4% of the concatenated frames had CDP=0. In this particular scenario, the upper bound on the number of cells in a frame was set to nine cells, and the maximum encapsulation delay was set to twelve time units. (The basic time unit is typically defined as the minimal time interval between the potential arrival of cells on the simulated physical interface. For example, when simulating an OC-3 ATM interface, each time unit is 2.8 µS long.)
- In some embodiments, the ingress node can determine P, the ratio of low-DP data to the total data, using a Look-Up Table (LUT) instead of performing an explicit division operation. For example, when transporting ATM cells over an MPLS connection, all data packets carry the same amount of data (fifty-two bytes, excluding the ATM HEC field). Thus, P is equal to the number of low-DP data packets in the concatenated frame (denoted L), divided by the total number of data packets in the frame (denoted N). Assuming that each concatenated frame may contain up to nine data packets, the following look-up table gives the possible values of P (expressed as 16-bit fractions in Hexadecimal notation) as a function of L and N:
-
Fig. 4 is a block diagram that schematically illustrates a pseudo-random number generator, in accordance with an embodiment of the present invention. LFSRs of this sort can be used to generate the pseudo-random number X used in the CDP value assignment methods described above. The exemplary LFSR shown inFig. 4 comprises sixteen taps 110. Each tap holds a single bit, which may be set to "1" or to "0". At each clock cycle, the LFSR taps are shifted to the left. For example, the content of the tap labeled 9 moves to the tap labeled 10. The contents of some of the taps, in the present example the taps labeled 1, 2, 4 and 15, are summed usingadders 114 and are fed back to the right-most tap labeled 0. - As a result, the sixteen-bit binary word represented by the sixteen LFSR taps changes pseudo-randomly with each clock cycle. The pseudo-random numbers generated by this LFSR are in the range 0x0001 to 0xFFFF. The LFSR configuration of
Fig. 4 is an exemplary configuration, which is chosen purely for the sake of conceptual clarity. Any other suitable mechanism can also be used for generating pseudo-random numbers in the CDP assignment methods described herein. - Although the embodiments described herein mainly address concatenation and transport of ATM cells using the MPLS protocol, the principles of the present invention can also be used with other packet and cell types and/or other transport protocols. For example, the methods and systems described herein can be used for transporting Ethernet frames over MPLS networks. As another example, the data packets may comprise packets of a Wireless Local Area Network (WLAN) protocol, such as the protocols defined in the IEEE 802.11 standard. In alternative embodiments, multiple Point-to-Point Protocol (PPP) packets can be encapsulated into concatenated PPP frames using the methods and systems described herein. PPP encapsulation is described, for example, by Pazhyannur et al., in IETF RFC 3153 entitled "PPP Encapsulation," August, 2001.
- Further alternatively, the principles of the present invention can be used to concatenate Internet Protocol Security (IPsec) data packets. IPsec encapsulation is described, for example, by Moon and Yeom in "IP Concatenation: The Method for Enhancement of IPsec Performance," Lecture Notes in Computer Science (LNCS) - High-Speed Networks and Multimedia communications, volume 2720/2003, March ,2004, pages 365-374. Packet concatenation in accordance with the methods and systems described herein can also be applied to cable communication systems, such as systems that operate in accordance with the Data Over Cable Service Interface Specification (DOCSIS).
- It will thus be appreciated that the embodiments described above are cited by way of example, and that the present invention is not limited to what has been particularly shown and described hereinabove. Rather, the scope of the present invention includes both combinations and sub-combinations of the various features described hereinabove, as well as variations and modifications thereof, within the scope of the appended claims, which would occur to persons skilled in the art upon reading the foregoing description.
Claims (15)
- A method for communication, comprising:- encapsulating multiple data packets (44A, 44B, 44C), which carry data and have respective drop precedence, DP, values selected from a range of possible DP values, to produce a concatenated frame (52) of a transport protocol;
characterized by:- assigning a composite drop precedence, CDP, value from the range to the concatenated frame using a pseudo-random assignment function that depends on a distribution of the DP values of the data packets in the concatenated frame; and- transporting the concatenated frame through a communication network using the transport protocol, in accordance with the pseudo-randomly assigned CDP value. - The method according to claim 1, wherein the transport protocol comprises a Multiprotocol Label Switching protocol.
- The method according to claim 1, wherein the data packets comprise Asynchronous Transfer Mode cells.
- The method according to claim 1, wherein the data packets comprise Ethernet frames.
- The method according to claim 1, wherein the communication network comprises a ring network (24, 28).
- The method according to any of claims 1-5, wherein the pseudo-random assignment function is defined such that a likelihood of assigning a certain CDP value from the range is proportional to a relative amount of the data in the concatenated frame, which is carried by the data packets whose DP value equals the certain CDP value.
- The method according to claim 6, wherein assigning the CDP value comprises generating a pseudo-random number that is greater than zero and is distributed between zero and unity, assigning the concatenated frame a first CDP value when the pseudo-random number is not greater than the relative amount of the data, and assigning the concatenated frame a second CDP value, which indicates a higher drop precedence with respect to the first CDP value, when the pseudo-random number is greater than the relative amount of the data.
- The method according to claim 6, wherein assigning the CDP value comprises reading the relative amount of the data from a Look-Up Table.
- The method according to any of claims 1-5, wherein the pseudo-random assignment function is defined such that a likelihood of assigning a certain CDP value from the range depends on a number of the data packets, which are encapsulated in the concatenated frame and whose DP value equals the certain CDP value.
- The method according to any of claims 1-5, wherein assigning the CDP value comprises generating the pseudo-random assignment function using a Linear Feedback Shift Register.
- A network node, comprising:- a network interface (38), which is arranged to communicate with a communication network; and- a processor (40), which is arranged to encapsulate multiple data packets (44A, 44B, 44C), which carry data and have respective drop precedence, DP, values selected from a range of possible DP values, so as to produce a concatenated frame (52) of a transport protocol, the network node characterized by being adapted: to assign a composite drop precedence, CDP, value from the range to the concatenated frame using a pseudo-random assignment function that depends on a distribution of the DP values of the data packets in the concatenated frame, and to send the concatenated frame to the communication network using the network interface, so as to transport the concatenated frame through the communication network using the transport protocol, in accordance with the pseudo-randomly assigned CDP value.
- The node according to claim 11, wherein the pseudo-random assignment function is defined such that a likelihood of assigning a certain CDP value from the range is proportional to a relative amount of the data in the concatenated frame, which is carried by the data packets whose DP value equals the certain CDP value.
- The node according to claim 11, wherein the pseudo-random assignment function is defined such that a likelihood of assigning a certain CDP value from the range depends on a number of the data packets, which are encapsulated in the concatenated frame and whose DP value equals the certain CDP value.
- The node according to claim 11, wherein the processor is arranged to generate the pseudo-random assignment function using a Linear Feedback Shift Register.
- A computer software product used in a network node, the product comprising a computer-readable medium, in which program instructions are stored, which instructions, when read by a processor (40), cause the processor to encapsulate multiple data packets (44A, 44B, 44C), which carry data and have respective drop precedence, DP, values selected from range of possible DP values, so as to produce a concatenated frame (52) of a transport protocol, characterized by being adapted: to assign a composite drop precedence, CDP, value from the range to the concatenated frame using a pseudo-random assignment function that depends on a distribution of the DP values of the data packets in the concatenated frame, and to send the concatenated frame to a communication network, so as to transport the concatenated frame through the communication network using the transport protocol, in accordance with the pseudo-randomly assigned CDP value.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/704,615 US7697532B2 (en) | 2007-02-08 | 2007-02-08 | Frame concatenation with drop precedence assignment |
PCT/IL2007/001534 WO2008096338A2 (en) | 2007-02-08 | 2007-12-11 | Frame concatenation with drop precedence assignment |
Publications (3)
Publication Number | Publication Date |
---|---|
EP2132905A2 EP2132905A2 (en) | 2009-12-16 |
EP2132905A4 EP2132905A4 (en) | 2013-06-26 |
EP2132905B1 true EP2132905B1 (en) | 2014-07-09 |
Family
ID=39682180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP07849561.1A Active EP2132905B1 (en) | 2007-02-08 | 2007-12-11 | Frame concatenation with drop precedence assignment |
Country Status (3)
Country | Link |
---|---|
US (1) | US7697532B2 (en) |
EP (1) | EP2132905B1 (en) |
WO (1) | WO2008096338A2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5550261B2 (en) * | 2009-05-29 | 2014-07-16 | キヤノン株式会社 | Data processing apparatus, data processing method and program using ring bus |
US9600429B2 (en) * | 2010-12-09 | 2017-03-21 | Solarflare Communications, Inc. | Encapsulated accelerator |
US10505747B2 (en) | 2012-10-16 | 2019-12-10 | Solarflare Communications, Inc. | Feed processing |
US9306863B2 (en) * | 2013-12-06 | 2016-04-05 | Intel Corporation | Link transfer, bit error detection and link retry using flit bundles asynchronous to link fabric packets |
US9325449B2 (en) | 2013-12-06 | 2016-04-26 | Intel Corporation | Lane error detection and lane removal mechanism to reduce the probability of data corruption |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5481542A (en) * | 1993-11-10 | 1996-01-02 | Scientific-Atlanta, Inc. | Interactive information services control system |
SE514313C2 (en) * | 1999-04-07 | 2001-02-12 | Telia Ab | Improvements to, or with respect to, data packet switching |
US6646988B1 (en) * | 2000-01-31 | 2003-11-11 | Nortel Networks Limited | System, device, and method for allocating excess bandwidth in a differentiated services communication network |
US7257121B2 (en) * | 2001-12-21 | 2007-08-14 | Alcatel Canada Inc. | System and method for mapping quality of service levels between MPLS and ATM connections in a network element |
CN1934837A (en) * | 2004-04-20 | 2007-03-21 | 北电网络有限公司 | Method and system for quality of service support for Ethernet multiservice interworking over multiprotocol label switching |
US7586848B1 (en) * | 2004-06-07 | 2009-09-08 | Nortel Networks Limited | Elastic traffic marking for multi-priority packet streams in a communications network |
KR100969731B1 (en) * | 2005-12-16 | 2010-07-13 | 돌비 스웨덴 에이비 | Apparatus for generating and interpreting a data stream modified in accordance with the importance of the data |
-
2007
- 2007-02-08 US US11/704,615 patent/US7697532B2/en active Active
- 2007-12-11 EP EP07849561.1A patent/EP2132905B1/en active Active
- 2007-12-11 WO PCT/IL2007/001534 patent/WO2008096338A2/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2008096338A2 (en) | 2008-08-14 |
EP2132905A2 (en) | 2009-12-16 |
WO2008096338A3 (en) | 2009-05-07 |
EP2132905A4 (en) | 2013-06-26 |
US20080192747A1 (en) | 2008-08-14 |
US7697532B2 (en) | 2010-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Clark et al. | Explicit allocation of best-effort packet delivery service | |
US7447204B2 (en) | Method and device for the classification and redirection of data packets in a heterogeneous network | |
Bennett et al. | Delay jitter bounds and packet scale rate guarantee for expedited forwarding | |
US11374858B2 (en) | Methods and systems for directing traffic flows based on traffic flow classifications | |
US6643292B2 (en) | Efficient packet data transport mechanism and an interface therefor | |
USRE40684E1 (en) | Fast cyclic redundancy check (CRC) generation | |
EP1458166B1 (en) | Apparatus and method for increasing throughput of transmission of QOS driven packets | |
US20080159150A1 (en) | Method and Apparatus for Preventing IP Datagram Fragmentation and Reassembly | |
US6977896B1 (en) | IP communications network system and QoS guaranteeing apparatus | |
Jiang | Delay bounds for a network of guaranteed rate servers with FIFO aggregation | |
US20020012348A1 (en) | Router device and priority control method for use in the same | |
US11818022B2 (en) | Methods and systems for classifying traffic flows based on packet processing metadata | |
EP2132905B1 (en) | Frame concatenation with drop precedence assignment | |
US7397762B1 (en) | System, device and method for scheduling information processing with load-balancing | |
JP6055553B2 (en) | Queue scheduling method, apparatus and system | |
CN1973503A (en) | Flow processing | |
Benacer et al. | A high-speed traffic manager architecture for flow-based networking | |
CN100544320C (en) | The method of the network equipment and deal with data | |
Tounsi et al. | Small packets aggregation in an IP domain | |
US20030202515A1 (en) | Method of and an apparatus for releasing a cut-through connection | |
Chakka et al. | The MM/spl Sigma//sub k= 1//sup K/CPP/sub k//GE/c/L G-queue and its application to the analysis of the load balancing in MPLS networks | |
Raza et al. | CCIE Professional Development: Large Scale IP Network Solutions | |
Salomon et al. | Rapid evolution of time-efficient packet classifiers | |
CN101150445B (en) | A stream statistics and convergence method and device | |
Nabeshima | Improving the performance of active buffer management with per-flow information |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20091109 |
|
AK | Designated contracting states |
Kind code of ref document: A2 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC MT NL PL PT RO SE SI SK TR |
|
DAX | Request for extension of the european patent (deleted) | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1139531 Country of ref document: HK |
|
A4 | Supplementary search report drawn up and despatched |
Effective date: 20130527 |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: H04L 12/28 20060101AFI20130521BHEP |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: ORCKIT - CORRIGENT LTD. |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R079 Ref document number: 602007037592 Country of ref document: DE Free format text: PREVIOUS MAIN CLASS: H04L0012280000 Ipc: H04L0012700000 |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: H04L 12/70 20130101AFI20140113BHEP |
|
INTG | Intention to grant announced |
Effective date: 20140130 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC MT NL PL PT RO SE SI SK TR |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: REF Ref document number: 676900 Country of ref document: AT Kind code of ref document: T Effective date: 20140715 Ref country code: CH Ref legal event code: EP |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602007037592 Country of ref document: DE Effective date: 20140814 |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: MK05 Ref document number: 676900 Country of ref document: AT Kind code of ref document: T Effective date: 20140709 |
|
REG | Reference to a national code |
Ref country code: NL Ref legal event code: VDEP Effective date: 20140709 |
|
REG | Reference to a national code |
Ref country code: LT Ref legal event code: MG4D |
|
REG | Reference to a national code |
Ref country code: HK Ref legal event code: GR Ref document number: 1139531 Country of ref document: HK |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20141110 Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20141009 Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: ES Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20141010 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: AT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20141109 Ref country code: NL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 602007037592 Country of ref document: DE |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: IT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
26N | No opposition filed |
Effective date: 20150410 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20141231 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R119 Ref document number: 602007037592 Country of ref document: DE |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LU Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20141211 |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: MM4A |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: ST Effective date: 20150831 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20141211 Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20141231 Ref country code: DE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20150701 Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20141231 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20141231 Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MC Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: 732E Free format text: REGISTERED BETWEEN 20160616 AND 20160622 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: BE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: MT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: TR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140709 Ref country code: HU Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO Effective date: 20071211 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: GB Payment date: 20231220 Year of fee payment: 17 |