Job reservation and service protocols in .NET

Making Code-128 in .NET Job reservation and service protocols
Job reservation and service protocols
Recognize Code 128B In VS .NET
Using Barcode Control SDK for Visual Studio .NET Control to generate, create, read, scan barcode image in .NET framework applications.
jobs probe packets and; (2) the arrive order of the jobs themselves The service order of the jobs does not necessarily comply with the First-In-First-Out (FIFO) order
Code 128A Printer In Visual Studio .NET
Using Barcode generator for .NET Control to generate, create ANSI/AIM Code 128 image in .NET framework applications.
63 JOB RESERVATION AND SERVICE IN SI-RSVP
Code 128 Scanner In .NET
Using Barcode reader for Visual Studio .NET Control to read, scan read, scan image in VS .NET applications.
In addition to the job reservation, SI-RSVP also considers service stability at each router by incorporating the BSAC method described in 4 Figure 63 shows the architecture of a router in SI-RSVP For jobs of high priority, the router has two buffers: the processing buffer and the waiting buffer The processing buffer holds the batch of jobs that are being served for data transmission The waiting buffer holds batches of jobs that are waiting for their turn of service The batch size de nes the maximum amount of data (eg, in unit of bytes) that the batch can hold The batch size is xed for every batch to make the service start time of each batch xed instead of variable and thus allow the accurate computation of JobDelayTime in SI-RSVP SI-RSVP takes the following steps to make a reservation for an instantaneous job, eg, Jobn , and then sends out the job after making the reservation: 1 When Jobn is generated at its source node, a probe packet containing information as shown in Table 61 is created for the job, and is sent by the source node to the next router on the end-to-end path of the job 2 When a router receives the probe packet for Jobn , the reservation function of the router checks the rst waiting batch whose service starts after the arrival time of Jobn If the available data space in this batch is large enough to accommodate the size of the job as shown in Figure 64, the job is scheduled right after the last reserved job in this batch and the available data space of this batch is reduced by subtracting the data space temporarily reserved for Jobn That is, the reserved jobs in any given batch are scheduled in the FIFO order If this batch does not have enough data space available for Jobn , the next waiting batch is checked and the search continues until a waiting batch with enough data space available for Jobn is found and the data space is temporarily reserved for Jobn in that waiting batch Note that the reservation of the data space is equivalent to the reservation of the corresponding service time slot The router takes the following xed amount of time to process each batch: BatchServiceTime =
Bar Code Maker In VS .NET
Using Barcode generation for .NET framework Control to generate, create bar code image in Visual Studio .NET applications.
Router
Bar Code Decoder In .NET Framework
Using Barcode reader for .NET Control to read, scan read, scan image in Visual Studio .NET applications.
BatchSize Bandwidth
Code 128 Creator In Visual C#
Using Barcode encoder for VS .NET Control to generate, create Code-128 image in Visual Studio .NET applications.
Incoming probe packets Outgoing probe reply packets
Code 128 Generation In .NET Framework
Using Barcode creation for ASP.NET Control to generate, create Code 128 Code Set B image in ASP.NET applications.
Reservation
Creating Code-128 In VB.NET
Using Barcode encoder for .NET Control to generate, create Code 128B image in .NET applications.
Outgoing probe packets Incoming probe reply packets Output port
Make Code 39 Extended In Visual Studio .NET
Using Barcode creator for Visual Studio .NET Control to generate, create Code 39 Full ASCII image in .NET applications.
Input port Forwarding
Printing Barcode In .NET Framework
Using Barcode creator for Visual Studio .NET Control to generate, create barcode image in Visual Studio .NET applications.
BSAC for admission control & FIFO for job scheduling
EAN13 Generator In Visual Studio .NET
Using Barcode encoder for VS .NET Control to generate, create European Article Number 13 image in Visual Studio .NET applications.
High priority waiting buffer
USPS OneCode Solution Barcode Generator In .NET
Using Barcode creation for Visual Studio .NET Control to generate, create 4-State Customer Barcode image in .NET applications.
High priority processing buffer
Create ANSI/AIM Code 39 In C#
Using Barcode maker for .NET framework Control to generate, create Code 3/9 image in VS .NET applications.
Incoming jobs
EAN 13 Generator In Visual Basic .NET
Using Barcode generation for VS .NET Control to generate, create European Article Number 13 image in Visual Studio .NET applications.
Outgoing jobs Low priority queuing buffer
Code-39 Generator In VB.NET
Using Barcode encoder for VS .NET Control to generate, create Code 39 Extended image in Visual Studio .NET applications.
Figure 63 The architecture of a router in SI-RSVP
Create Barcode In VS .NET
Using Barcode printer for ASP.NET Control to generate, create bar code image in ASP.NET applications.
Job reservation and service in SI-RSVP
GS1 - 12 Creation In Visual C#
Using Barcode creation for .NET framework Control to generate, create GS1 - 12 image in .NET framework applications.
Job1 The first batch of jobs in the waiting buffer Job2 Arrival time of Jobn Job3
UPC-A Supplement 5 Drawer In .NET
Using Barcode printer for ASP.NET Control to generate, create UPC-A Supplement 5 image in ASP.NET applications.
The second batch of jobs in the waiting buffer
Code 128C Reader In .NET Framework
Using Barcode recognizer for VS .NET Control to read, scan read, scan image in .NET framework applications.
Jobn
Creating Barcode In .NET Framework
Using Barcode generator for ASP.NET Control to generate, create barcode image in ASP.NET applications.
Jobn-1
The third batch of jobs in the waiting buffer
Figure 64 The reservation of a service time slot for an incoming job in SI-RSVP
The service start time of a given batch, eg, Batch i or Bi , can be determined as follows: ServiceStartTime(Bi) = ServiceStartTime(Bi 1) + BatchServiceTime The data space of the batch may not be fully taken by the jobs As a result, there may be some data space available in the batch when the batch is moved from the waiting buffer to the processing buffer to start the service of the jobs in the batch When the service of all the jobs in the batch is completed but it is not yet the start time of the next batch, the router may take the jobs from the low priority queuing buffer to serve After the temporary reservation, JobDelayTime in the probe packet of Jobn is updated as follows: JobDelayTime = JobDelayTime + JobServiceTime + JobWaitingTime where JobWaitingTime is computed by subtracting the arrival time of the job from the service start time of Jobn The service start time of Jobn is the service start time of the batch holding the job plus the sum of service times of the reserved jobs in that batch that
Job reservation and service protocols
are scheduled to receive service before Jobn since the reserved jobs in a given batch are scheduled in the FIFO order The probe packet carrying the updated information is then sent to the next router 3 When the destination node receives the probe packet of Jobn , JobDelayTime in the probe packet is compared with JobMaxDelay If JobDelayTime is not greater than JobMaxDelay, a probe reply packet is constructed with ReservationStatus set to con rm as shown in Table 62; otherwise, ReservationStatus is set to cancel The probe reply packet with the job information as shown in Table 62 is sent by the destination node to the next router on the same end-to-end path back to the source node 4 When a router receives the probe reply packet of Jobn , the router con rms the reservation made for the job if ReservationStatus in the probe reply packet is con rm If ReservationStatus in the probe reply packet is cancel , the router cancels the reservation of the job at the router and releases the data space temporarily reserved for the job The cancellation of the reservation for a data space in a given batch makes more data space available in that batch, and moves the service position of the jobs scheduled after that cancelled job in that batch earlier This means that those jobs will take less time than their estimated JobDelayTime to reach their destination nodes and thus still meet their delay requirements 5 When the source node receives the probe reply packet of Jobn with ReservationStatus of con rm , the job is sent out to the next router on the end-to-end path to the destination node If the probe reply packet has cancel in ReservationStatus, the source node has several options One option is to inform the application of the job for not being unable to meet the job s delay requirement and let the application determine the action to take next, eg, postpone the job at a later time, cancel the job, downgrade the job to the low priority and then send it out, and so on Another option is for the source node to try another route to the destination node 6 When a router receives Jobn , the router places the job in its reserved data space of a given batch in the waiting buffer, and serves the job for data transmission when the batch containing the job is moved to the processing buffer and it is the time to serve the job in the batch according to the FIFO schedule of the jobs in the batch 7 When the destination node receives Jobn , the job is passed to the corresponding application for processing As indicated in Step 2, the jobs in a given batch are scheduled to receive service in order of FIFO The job scheduling methods described in 5 for service stability, including WSPT-A, VS and BS, are not used to schedule the reserved jobs in a given batch because those scheduling methods involve possibly the scheduling of an incoming job before the service times of the reserved jobs The dynamic insertion of this job ahead of those reserved jobs in the service schedule moves those reserved jobs to start their service at later times than their initial service start times that guarantee their arrival at their destination nodes with their JobMaxDelay requirements That is, those jobs may possibly arrive at their destination nodes failing to meet their JobMayDelay requirements Hence, any job scheduling method involving the dynamic insertion of an incoming job before the reserved jobs in the service schedule can possibly break the end-to-end delay guarantee of those reserved jobs Using FIFO to schedule jobs in a given batch ensures that such a dynamic insertion does not occur