Intel® IXP400 Software

Access-Layer Components: ATM Transmit Scheduler (IxAtmSch) API

6.5Scheduling and Traffic Shaping

Figure 25. Multiple VCs for Each Port, Multiplexed onto Single Line by the ATM Scheduler

VCs submit demand for transmit of ATM cells.

VC 1

Port 1

VC 2

Port 2

VC 3

Port 1

VC 4

Port 3

VC 5

Port 1

VC 6

Port 2

IxAtmSch component determines when to schedule each cell on the physical port.

Cells are queued for transmission on each port based on this schedule table, such that all traffic contracts are fulfilled.

IxAtmSch Component

Schedule Table for

 

Schedule Table for

 

Schedule Table for

PORT 1

 

PORT 2

 

PORT 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

B2298-01

6.5.1Schedule Table

Once an ATM port is modeled and VCs are admitted on it, the client can request IxAtmSch to publish the schedule table that indicates how the cells — on all modeled VCs over the port — will be interleaved and transmitted.

IxAtmSch publishes a scheduling table each time its scheduling function is called by a client for a particular port. The schedule table data structure returned specifies an ordering on which cells should be transmitted from each VCs on the port for a forthcoming period. The client is expected to requests a table for a port when the transmit queue is low on that port.

The number of cells that are scheduled by each call to the scheduling function will vary depending on the traffic conditions. The schedule table contains an element, totalCellSlots, which specifies how many cell slots are scheduled in this table returned, including idle cells.

When the client calls the schedule function, the scheduler assumes that all previously scheduled cells on this port have been transmitted and that it may overwrite the previous schedule table with the new table. The client, therefore, must not be dependent on the integrity of the previous table when a request is made for a new schedule table. Additionally, the client should ensure that the current schedule table has been processed by the transmit mechanism before it requests for a new table.

April 2005

IXP400 Software Version 2.0

Programmer’s Guide

82

Document Number: 252539, Revision: 007

 

Page 82
Image 82
Intel IXP400 manual Scheduling and Traffic Shaping, Schedule Table