Loading in 2 Seconds...

Engineering optical buffers with Fiber Delay Lines: Design and Modeling

Loading in 2 Seconds...

- 69 Views
- Uploaded on

Download Presentation
## Engineering optical buffers with Fiber Delay Lines: Design and Modeling

**An Image/Link below is provided (as is) to download presentation**

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

Optical Packet format

- Asynchronous variable length packets (AVLP)
- Slotted – fixed length packets (FLP)
- Slotted – variable length packets (SVLP)

AVLP

FLP

T

SVLP

L

Packet format alternatives

- FLP
- Easy switching node operation
- Optimal queuing performance
- Require synchronization
- Less suitable to carry variable length data
- AVLP
- No synchronization needed
- Can fit easily any format
- More complex node operation
- Worst queuing performance
- SVLP
- In between

Contention resolution in OPS networks

- Congestion is inherent in packet switching
- Contention may be dealt with in
- Time
- Wavelength
- Space
- Electronic packet switching typically rely on the time domain by means of queuing
- Queuing in optics is not feasible
- Queuing may be “emulated” by delaying packet in fiber loops
- Delay line buffers
- The optics way for contention resolution in the time domain

Realized with B Fiber Delay Lines (FDL):

The delay must be chosen at packet arrival

Packets are delayed until the output wavelength is available

The number of available delays is finite (usually consecutive multiples of the delay unit D but different choices are also possible)

Packets are lost when the buffer is full, i.e. the required delay is larger than the maximum delay achievable DM

Optical Buffer0

D

t0

(B -1)D

t0

t0+D

t0+2D

t0+(B -1)D

…

Optical Buffer and Packet Format

- The behavior of the FDL buffer depends on the packet format and synchronization
- Synchronous, fixed length packets:
- the FDL buffer is equivalent to a conventional buffer
- packet loss probability and delay depend on the queue occupancy = number of queued packets
- best choice: D = packet length
- Synch/Asynchronous, variable length packets
- the behavior of the FDL buffer is more complex and not simply related to the number of packets in the queue
- optimum value of D to be found

Synchronous, Fixed Length Packets

- Using synchronous, fixed length optical packets leads to a simpler behavior of the buffer
- D = packet length each time slot corresponds to:
- a single packet
- a specific delay
- Depending on the switching architecture it may not be necessary to choose the delay at packet arrival

t0

D

t0+2D

FDL operation (FLP broadcast and select)

New packet

D7

D6

D5

D4

D3

D2

Delay unit

D1

Pick the

right packet

D0

Time

Asynchronous, Variable Length Packets

- Using asynchronous, variable length optical packets is efficient to carry one or more IP datagrams or packets from heterogeneous legacy networks
- Problem
- Variable length of packets and finite delay granularity
- when packets are queued a time gap (void) between the end of the already queued packet and the beginning of the following one is present (maximum void size < D)

t0

D

t0+3D

VOID

FDL operation (AVLP with void filling)

New packet

D7

D6

D5

D4

D3

D2

Delay unit

D1

D0

Time

Already scheduled packets

FDL operation (SVLP)

New train

of packets

D7

D6

D5

D4

Buffer

Full

D3

D2

GAP

Delay unit

D1

D0

Time

Already scheduled packets

Choosing the Buffer Delay Unit

- D is directly related to
- time resolution of the FDL buffer
- maximum delay achievable (buffer size)
- For a given number of delay lines (B):
- decreasing D
- the time resolution improves and the average void size decreases
- the buffering capacity decreases
- increasing D
- the buffering capacity increases
- the time resolution decreases and the void size increases

Choosing the Buffer Delay Unit

- D is directly related to
- time resolution of the FDL buffer
- maximum delay achievable (buffer size)

Large gaps

Short buffer

Performance Degradation

D

How many packets in a FDL buffer

D7

- The number of packet in the buffer is not related to the number of FDLs

D6

D5

D4

D3

D2

Delay unit

D1

D0

Time

How many packets in a FDL buffer

D7

- Blocking is not related to the number of packets in the buffer

D6

D5

D4

D3

D2

Delay unit

D1

D0

Time

FDL buffer modelling with VL packets

- The FDL buffer is used to simulate a normal queue but has a different behavior
- Conventional queuing models are not applicable
- Modelling based on number of packets in the queue fail to capture:
- Gaps
- FDL occupancy
- Queue access policy
- New models are required
- Exact model based on Markov chains
- Approximate models based on “tailoring” of traditional models to the FDL scenario

Modeling

- Assumptions
- Random (Poisson or Bernoulli) traffic
- Memoryless packet length
- Exact models available for
- AVLP
- Markov based exact model available
- R. C. Almeida Jr., J. U. Pelegrini, H. Waldman, “Optical Buffer Modelling for Performance Evaluation Considering any Packet Inter-Arrival Time Distribution”, Proc. ICC ‘04, pp. 1771-1775, 2004.
- SVLP
- Discrete Markov chain modelling available
- K. Laevens, H. Bruneel, “Analysis of a single-wavelength optical buffer”, Proc. IEEE INFOCOM ’03, pp. 2262-2267, 2003.

Definitions

- Definitions:
- is the packet length (exponential distribution)
- is the average packet length
- average packet arrival rate (Poisson process)
- packet inter-arrival time
- pl is the packet loss probility
- pq is the probability of queuing a packet
- B number of FDLs
- Di delay of FDL #i
- DM delay of FDL #B i.e. maximum available delay
- Usually Di = iD
- D is the FDL buffer delay unit
- D* = D/ is the normalized FDL delay unit

Exact model for AVLP

- Embedded Markov chain
- State changes at packet arrival instants
- tn arrival time of packet n
- sn time instant at which packet n is scheduled
- B+2 states for the Markov chain
- State 0:
- Output is free and packet can be sent through immediately
- sn = tn
- State i, i=1..B
- sn = tn + Di
- Packet is sent to FDL i
- State F
- the buffer is full (tail of last scheduled packet overlaps largest delay)
- The packet is lost

State changes

- Delay for packet n+1
- Dj = max [ j | Dj-1 < Di + - 1/ ≤ Dj ]
- D-1 = -∞
- D0 = 0
- If Dj > DM the packet is lost

Di + -

Packet n

Packet n+1

Dj

0

Di

Di +

Transition probabilities

- The probability that packet n+1 access delay Dj given that packet n accessed delay Di is the transition probability from state i to state j

A closer look (load = 0.8)

Erlang B formula for 1 server

Approximate modeling: the Excess Load

- During the void:
- the server is idle
- the queued packet must wait for the delay to expire
- the result is some waste of the available output bandwidth

The void can be seen as an artificial increase of the length of the previous packet it results in an excess load at the output

Excess length

Real Length

D

Approximate Modelling

- Packet arrival independent of the state of the queue
- The void is random between 0 and D with uniform distribution

Packets lost

Packets not entering the buffer

Packets entering the buffer

Modeling Assumptions

- Random (Poisson) traffic
- Exponential packet length
- Problem: the excess length is not exponentially distributed
- Approximations:
- The probability distribution of the excess length is assumed exponential
- The queuing space is assumed infinite
- The queuing system can be modeled as an M/M/1 queue
- The queuing space is assumed finite
- The queuing system can be modeled as an M/M/1 queue with balking

The infinite queuing model

- The load to the M/M/1 queue is
- For the M/M/1 system
- pl = 0
- pq = re
- Therefore
- The packet loss probability is approximated with the queue length overflow probability

Results

- Comparison between analytical model (continuos line) and simulation (dots) of the overflow probability for an infinite buffer

1.0e+000

Traffic load 0.8

Average packet length 500 bytes

D is normalized to the average packet length

1.0e-001

Estimated Loss Probability

1.0e-002

r = 0.5

r = 0.6

r = 0.7

r = 0.8

1.0e-003

1.0e-004

0

0.2

0.4

0.6

0.8

1

D*

Results

1e+000

1e-001

B-1 = 255

1e-002

Loss Probability

1e-003

1e-004

1e-005

B-1 = 511

1e-006

1e-007

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0.5

D*

- Comparison between analytical model (continuos line) and simulation (dots) of a real buffer

Traffic load 0.8

Average packet length 500 bytes

D is normalized to the average packet length

Results

1e+000

1e-001

1e-002

1e-003

Loss Probability

r = 0.8

1e-004

1e-005

1e-006

r = 0.7

1e-007

1e-008

DM = 255 D

Average packet length 500 bytes

0

0.1

0.2

0.3

0.4

0.5

0.6

D*

Results

- Optimal D slightly depends on the buffer size

0.5

0.45

0.4

r = 0.7

0.35

r = 0.8

0.3

Do

0.25

0.2

0.15

0.1

0.05

0

2

64

128

192

256

320

384

448

512

DM

The finite queuing model

- The queue is finite
- The number of packets in the queue is not bounded in principle
- The delay is bounded
- A packet is lost when the sum of the lengths of the packets queued is longer than the maximum delay
- The system is an M/M/1 queue with balking
- The arrival rate l is not constant but depends on k
- The probability that a packet is lost is a function of the number of packets in the system

Arrival rate

- Calculate the packet loss probability fo a given k
- Calculate lk as
- Finally calculate the steady state probabilities Pk

The finite queuing model

- The queuing system is solved by an iterative procedure
- start with
- calculate Pk, pl and pq
- calculate the new value of
- return to step 1
- The algorithm ends when Pk, pl and pq do reach a stable value
- In all cases tried the convergence was very fast (a few iterations)

Results

- Comparison between analytical model (continuos line) and simulation (dots)
- The approximate model slightly overestimate the packet loss probability

1e+0

1e-1

# of FDL’s=128

Traffic load 0.8

Average packet length 500 bytes

D is normalized to the average packet length

1e-2

1e-3

Loss Probability

1e-4

# of FDL’s=256

1e-5

# of FDL’s=512

1e-6

1e-7

0

0.1

0.2

0.3

0.4

0.5

0.6

D

Results

- The excess length results in an artificial increase of the server utilization
- Large server utilization results in large packet loss and lower throughput

1

Output load - Analysis

Output load - Simulation

0.95

0.9

0.85

0.8

Throughput - Analysis

0.75

Throughput - Simulation

0.7

0

0.1

0.2

0.3

0.4

0.5

0.6

D

Reducing the Buffer Requirements

- Problem: in order to reach low packet loss probabilities, large numbers of fiber delay lines are necessary (e.g. B = 512 to reach 10–6 ) buffer unfeasible due to technological constraints
- Possible solutions:
- building large optical buffer with few FDL using multistage architectures
- multiplexing the packets on w wavelengths per fiber (WDM) using efficient resource allocation algorithms

Exploiting WDM (1)

- Wavelength allocation may be performed by choosing between two techniques:
- Wavelength Circuit
- wavelengths are equivalent to network links
- packets belonging to the same connection can only travel on the same wavelength
- Wavelength Packet
- all wavelengths of a fiber are shared among connections
- packets belonging to the same connection can travel on different wavelengths

We choose the Wavelength Packet technique assuming that the switch architecture realizes an output queuing switching matrix

Congestion resolution

- Wavelength multiplexing
- Load balacing over the set of available wavelengths per output fiber
- Random choice
- Time multiplexing
- Delay packets when all wavelenths are busy
- Which delay?

?

Queuing Model of a WDM Optical Buffer

- For each output fiber:
- w identical servers represented by the w wavelengths
- w logical FDL buffer in parallel, one for each wavelength (realized with a single set of FDLs operated in WDM)
- Wavelength allocation problem:how to assign the best wavelength to the packet ?

l1

l2

Packet

l3

l4

Wavelength and Delay Selection

l1

l2

l3

l4

t0

t0+D

t0+2D

t0+3D

t0+4D

- At packet arrival
- Given the output fiber (from routing table lookup)
- Forwarding algorithm must determine
- the output wavelength
- the required delay if any
- WDS is a scheduling problem:is it important to choose the wavelength and the delay ?

- Example:
- 4 delays
- 4 wavelengths

WDS policies

l1

l2

l3

l4

t0

t0+D

t0+2D

t0+3D

t0+4D

- Gap-filling techniques may be too complex for the optical packet switching time-scale

WDS policies

l1

l2

l3

l4

t0

t0+D

t0+2D

t0+3D

t0+4D

- Gap-filling techniques may be too complex for the optical packet switching time-scale
- Simpler policies based on wavelength availability, with increasing intelligence

- Any attempt of analytical approach seems very complex simulation study

WDS Algorithms

An example:

w = 4

B = 5

l1

l2

l3

l4

t0

t0+D

t0+2D

t0+3D

t0+4D

- Random (RND)
- Round Robin (RR)
- Random if non-empty queues (RNE)
- Random among non-full queues (RNF)
- Minimum length (MINL)
- Minimum gap (MING)

Wavelength Allocation Algorithms: RND

LOST

- Random (RND)
- Round Robin (RR)
- Random if non-empty queues (RNE)
- Random among non-full queues (RNF)
- Minimum length (MINL)
- Minimum gap (MING)

l1

l2

l3

l4

t0

t0+D

t0+2D

t0+3D

t0+4D

Wavelength Allocation Algorithms: RR

LOST

- Random (RND)
- Round Robin (RR)
- Random if non-empty queues (RNE)
- Random among non-full queues (RNF)
- Minimum length (MINL)
- Minimum gap (MING)

l1

l2

l3

l4

t0

t0+D

t0+2D

t0+3D

t0+4D

Wavelength Allocation Algorithms: RNE

LOST

- Random (RND)
- Round Robin (RR)
- Random if non-empty queues (RNE)
- Random among non-full queues (RNF)
- Minimum length (MINL)
- Minimum gap (MING)

l1

l2

l3

l4

t0

t0+D

t0+2D

t0+3D

t0+4D

Wavelength Allocation Algorithms: RNF

- Random (RND)
- Round Robin (RR)
- Random if non-empty queues (RNE)
- Random among non-full queues (RNF)
- Minimum length (MINL)
- Minimum gap (MING)

l1

l2

l3

l4

t0

t0+D

t0+2D

t0+3D

t0+4D

Wavelength Allocation Algorithms: MINL

l1

l2

l3

l4

t0

t0+D

t0+2D

t0+3D

t0+4D

- Random (RND)
- Round Robin (RR)
- Random if non-empty queues (RNE)
- Random among non-full queues (RNF)
- Minimum length (MINL)
- Minimum gap (MING)

Wavelength Allocation Algorithms: MING

l1

l2

l3

l4

t0

t0+D

t0+2D

t0+3D

t0+4D

- Random (RND)
- Round Robin (RR)
- Random if non-empty queues (RNE)
- Random among non-full queues (RNF)
- Minimum length (MINL)
- Minimum gap (MING)

Summarizing

- RND, RR
- queues occupancy is not checked no exploitation of WDM for contention resolution
- simple implementation (RR simpler)
- RNE, RNF
- some control on the queues occupancy (empty or full) a first optimization introduced
- some complexity in the implementation
- MINL, MING
- whole view of the queues status full optimization of the WDM resources
- more complex implementation

RNF, MINL, MING discard a packet only when all queues are full, i.e. in case of unavoidable losses

WDS policies – loss

Input Load per wavelength = 0.8

Uniform random traffic

Exponential packet length distribution

N = 4

n= 16

B = 8

Buffer delay unit normalized to the average packet length

Comparing Performance: Delay

MINL

MING

1

0,8

Input Load per wavelength = 0.8

Random traffic

N = 4

w= 16

B = 8

D = 1

0,6

Probability Function

0,4

0,2

0

0

1

2

3

4

5

6

7

Packet Delay (normalized to the delay unit)

Average delay: MINL = 0.43 MING = 0.33

Wavelength Utilization

1,0

RR

MINL

0,9

MING

Input Load per wavelength = 0.8

Random traffic

N = 4

w= 16

B = 8

D = 1

0,8

0,7

Effective Throughput

0,6

0,5

0,4

0,3

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

Wavelength

Comparison with Void-filling

l1

l2

l3

l4

t0

t0+D

t0+2D

t0+3D

t0+4D

1e-1

6 x 6

Load 0.8

Minlength

1e-2

w = 8

Mingap

1e-3

Voidfill

PLP

1e-4

w = 16

1e-5

w = 32

1e-6

1e-7

1

2

3

4

5

6

7

8

Number of delays

Synchronization and gaps

output fiber

1

1e-1

l1

l2

1e-2

Packet loss probability

l3

Minimums when D is multiple of T

l4

1e-3

t0

t0+D

t0+2D

t0+3D

t0+4D

1e-4

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

D/L

- Slotted network are not “gap free”
- When D>T then gaps are present
- The problem is similar to the AVLP case

Conclusions

- Congestion resolution in OPS is feasible
- Wavelength and time domain should be used as a combined tool
- Two crucial issues
- Scheduling algorithm (WDS)
- Depends on the packet format
- Buffer time granularity (D)
- Depends on the traffic profile
- The solution to the congestion resolution problem is not unique bust must be carefully tailored to the network scenario

References

- F. Callegati, “On the Design of Optical Buffers for Variable Length Packets”, ICCCN 2000, pp. 448-452, Oct. 2000, Las Vegas, USA.
- F. Callegati, “Optical Buffers for Variable Length Packets”, IEEE Communications Letters, Vol. 4, N.9, pp. 292-294, Piscataway N.J., USA, Sep. 2000.
- F. Callegati, W. Cerroni, “Wavelength Selection Algorithms in Optical Buffers”, Proc. of IEEE ICC 2001, Helsinki, June 2001.
- F. Callegati, “Approximate Modeling of Optical Buffers for Variable Length Packets”, Photonic Network Communications, Vol. 3, No. 4, pp. 383-390, 2001.
- F. Callegati, W. Cerroni, G. Corazza, “Optimization of Wavelength Allocation in WDM Optical Buffers”, Optical Networks Magazine, Vol. 2, No. 6, pp. 66-72, 2001.
- F. Callegati, G. Corazza, C. Raffaelli, “Exploitation of DWDM for Optical Packet Switching with Quality of Service Guarantees”, IEEE Journal of Selected Areas in Communications, Vol. 20, No. 1, pp. 190-201, Piscataway N.J., USA, Jan. 2002.
- F. Callegati, W. Cerroni, C. Raffaelli, P. Zaffoni, “Dynamic wavelength assignment in MPLS Optical Packet Switches”, Optical Networks Magazine, Vol. 4, No. 5, pp. 41-51, 2003
- F. Callegati, W. Cerroni, C. Raffaelli, P. Zaffoni, “Wavelength and Time Domains Exploitation for QoS Management in Optical Packet Switches”, Computer Networks, Elsevier Science B.V., Amsterdam, Paesi Bassi, numero speciale su "QoS in Multiservice IP Networks", Vol. 44, No 4 , pp. 569-582, 2004
- F. Callegati, C. Develder, W. Cerroni, M. Pickavet, G. Corazza, P. Demeester, “Scheduling algorithms for a slotted packet switch with either fixed or variable length packets”, Photonic Network Communications, Vol. 8, No. 2, Kluwer Academic Publishers, Norwell, MA, USA, pp. 163-176, Settembre 2004.

The optical packet router architecture

Fiber 1

Delay = d

…

…

…

FiberB

Delay = B × d

kwavelengths

λ conversion

wλs

Buffer = set of delay lines…

M outputs

M inputs

B ports

All Optical

Space Switch

… with variable size packets

kλs

Optical Buffer

t0+3d

t0

d

GAP

The simulation set-up

- Ad-hoc event-driven simulator
- Poisson arrival process with average arrival rate λ, then synchronized
- Exponential packet length with average size L, then slotted with average size L' > L due to padding
- Uniform distribution to the outputs
- incoming net load per wavelength:

ρ = λ L= 0.8

- incoming real load per wavelength due to padding:

ρ' = min {λ L', 1} > ρ

- M = 16
- w = 1 or 32

Buffer design: choosing dandT

1

-1

10

-2

10

-3

Packet Loss Probability

10

-4

10

-5

10

T/L = 0.2

T/L = 0.1

-6

10

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

d/L

- d is a key parameter in buffer design
- d = n×T, n = 1,2,… gives better performance
- when T is small, n = 1 is not the best choice with trains of slots

- w = 1
- B = 256
- k = 4

Mainly time multiplexing

Buffer design: choosing dandT

1

T/L = 0.2

T/L = 0.1

-1

10

-2

10

-3

Packet Loss Probability

10

-4

10

-5

10

-6

10

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

d/L

- w = 32
- B = 8
- k = 128

Mainly wavelength multiplexing

- similar behavior to the case w = 1
- the impact of T on system performance is evident

Buffer design: choosing Bandk

1

-1

10

-2

10

-3

Packet Loss Probability

10

-4

10

-5

10

B = 128

B = 256

-6

10

0

5

10

15

20

25

30

k

- w = 1
- d/L = 0.2
- T/L = 0.2

- losses due to
- lack of buffer wavelengths when k is small (a few λs required)
- lack of buffer fibers when k is large (many delays required)

Buffer design: choosing Bandk

1

-1

10

-2

10

-3

Packet Loss Probability

10

-4

10

-5

10

B = 4

B = 8

-6

10

0

20

40

60

80

100

120

140

160

180

200

k

- w = 32
- d/L = 0.2
- T/L = 0.2

- losses due to
- lack of buffer wavelengths when k is small (many λs required)
- lack of buffer fibers when k is large (a few delays required)

Buffer resources trade-off

-1

10

- w = 32
- d/L = 0.2
- T/L = 0.2
- B×k = 512

-2

10

Packet Loss Probability

-3

10

B

1

2

4

8

16

32

64

128

256

512

k

512

256

128

64

32

16

8

4

2

1

With several I/O wavelengths, short term congestion is more relevant

Net load and real load

ρ' - Analysis

1.4

ρ' - Simulation

ρ - Analysis

ρ - Simulation

1.2

1

0.8

0.6

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

T/L

T should be as small as possible, but as well reasonably larger than switching times

Performance and packet format

- The packet format has an impact on the congestion resolution strategy and performance
- The packet format influence the load
- On the network links
- On the network control logic
- Fair performance comparison
- Same client traffic plus overheads
- Here the aim is to understand the impact on performance
- No comparison of performance
- Results provided for the same network conditions
- same network load and similar complexity of the algorithms

Impact of packet format

- Problems are similar but the requirements of the WDS algorithms are different
- In an AVLP/SVLP scenario the WDS algorithm must consider the packets/trains length
- In a FLP scenario no correlation exists in the switching of packets, there is more freedom and no need to plan packet scheduling in advance
- Different WDS algorithms for different packet formats
- Minimum Gap algorithm for AVLP/SVLP
- Balance algorithm for FLP

An example

1e-1

Bal-FDL

1e-2

1e-3

Balance

1e-4

w = 8

PLP

1e-5

w = 16

1e-6

w = 32

1e-7

1e-8

1

2

3

4

5

6

7

8

B

The WDS algorithm is crucial

regardless the packet format

How large the granularity?

1e-2

6 x 6

B = 2

w = 36

Load 0.8

FLP-Balance

1e-3

SVLP-Mingap

AVLP-Mingap

1e-4

PLP

1e-5

1e-6

1e-7

1e-8

0.2

0.4

0.6

0.8

1

D/L

The delay granularity should be

close to average packet/train/burst size

Buffer places

- Last but not least is the number of buffer “places”
- To save on hardware complexity delay lines can be shared using WDM
- One delay with many wavelength (places)
- How large should be the number of wavelength per delay?

Number of buffer “places”

1e-1

SVLP Mingap

1e-2

FLP Balance

D = T

1e-3

1e-4

From lack of ls to lack of buffer

PLP

1e-5

1e-6

D = L

1e-7

1e-8

1e-9

0

20

40

60

80

100

k

Download Presentation

Connecting to Server..