CR-LSP Setup Procedure THE CONSTRAINED-BASED ROUTING LABEL DISTRIBUTION

THE CONSTRAINED-BASED ROUTING LABEL DISTRIBUTION PROTOCOL 163 T P PBS Packet 1 Packet 2 Time Figure 7.16 An example of the peak rate token buck operation. PBS Packet 1 Packet 2 Packet 3 Time T P Figure 7.17 The transmission rate exceeds PDR. a packet. The slope of all of the lines is equal to PDR. At time t = 0, the token bucket contains PBS tokens. Packet 1 begins to arrive at the rate of PDR bytessec. When it has completely arrived, the size of the packet expressed in bytes is deducted from the current token count T P , the packet is allowed to go through, and the replenishment of the token bucket begins at the rate of PDR bytessec. Packet 2 begins to arrive immediately after packet 1. Since the size of packet 2 is less that the current token count, it is allowed to go through. In general, all of the packets will go through, as long as the user transmits at a rate which is less or equal to PDR. Consider the case where the user’s transmission rate temporarily exceeds PDR see Figure 7.17. The dashed lines indicate the transmission rate of a packet if the source transmitted at the rate of PDR. The thin continuous lines above the dashed lines indicate the rate at which the packets are transmitted, and the thick line in the top of the diagram shows the current token count. Note that packet 1, although it arrives faster than it should, goes through. The token count is reduced appropriately, and the replenishment of the token bucket at the PDR rate begins. Packet 2 is not as lucky, and it will be either marked and let into the network or dropped. Packet 3 goes through. Therefore, if the transmission rate temporarily exceeds PDR, it is possible that some of the packets will go through, as in the case of the GCRA scheme in ATM. On the other hand, if the user attempts to transmit a packet whose size is larger than MBS, this packet will immediately be classified as violating, since the token bucket can never contain more than PBS tokens. 164 LABEL DISTRIBUTION PROTOCOLS Committed data rate CDR, committed burst size CBS, and excess burst size The traffic that is sent to the network, which is the output of the token bucket P, is policed using the token bucket C, referred to as the committed token bucket. The maximum size of token bucket C is set equal to the committed burst size CBS, expressed in bytes, and the token bucket is replenished at the committed data rate CDR, expressed in bytessec. The output of this token bucket is referred to as the committed rate which is the amount of bandwidth the network should allocate for the CR-LSP. In addition to C, it is possible to use a second policing token bucket E, referred to as the excess token bucket. The maximum size of this token bucket is equal to the excess burst size EBS , expressed in bytes, and the token bucket is replenished at the committed data rate CDR , expressed in bytessec. As will be seen below, this token bucket can be used to decide whether a violating packet should be marked and let into the network, or it should be dropped. The operation of the committed and excess token buckets is as follows: • Initially, the token count in the committed token bucket T C = CBS , and the token count in the excess token bucket T E = EBS . • Thereafter, T C and T E are updated every second as follows: ◦ If T C CBS , then T C is incremented by M bytes it should not exceed CBS . ◦ If T E EBS , then T E is incremented by M bytes it should not exceed EBS where CDR = M bytessec. • The following action is taken when a packet of size B arrives: ◦ If T C − B ≥ 0, then there are enough tokens in the committed token bucket for the packet, and T C = T C − B . ◦ If T C − B 0 and T E − B ≥ 0, then there not enough tokens in the committed token bucket, but there are enough tokens in the excess token bucket, and T E = T E − B . ◦ If T C − B 0 and T E − B 0, then there not enough tokens in the committed token bucket or in the excess token bucket, and T C or T E are not decremented. Note that if CDR is positive infinity, then an arriving packet will never be in excess of either token bucket counts. The action taken when the size of a packet exceeds the token count in the token bucket either committed or excess is implementation dependent. For instance, if the packet size is larger than the token count in the committed token bucket, but less than the token count in the excess token bucket, then we might chose to mark it and let into the network. If the packet size is larger than both of the token counts, then we might choose to drop it. An example of how these two policing schemes are used is shown in Figure 7.18. The top diagram refers to the excess token bucket, and the bottom one to the committed token bucket. The rules described in the above paragraph for marking and dropping apply. All four packets arrive at rates higher than CDR. As we can see, packets 1 and 3 go through. Packet 2 arrives at a time when the committed token bucket does not have enough tokens, but there are enough tokens in the excess token bucket. As a result, the token count T C is left unchanged, the token count T E is reduced by the size of packet 2, and packet 2 is marked and let into the network. Packets 4 and 5 are dropped, since they arrive at a time when neither token buckets have enough tokens. In both cases the token counts T C and T E are unchanged. The five traffic parameters – PDR, PBS, CDR, CBS, and EBS – can be set to different values so as to create different classes of service, such as a delay sensitive service and a