You are on page 1of 12

c 


    
 
 
    
In a variety of computer networks,  
     or
 
 
 
     refers to an algorithm used to space out repeated retransmissions of the
same block of data, often as part of network congestion avoidance.

Examples are the retransmission of frames in carrier sense multiple access with collision
avoidance (CSMA/CA) and carrier sense multiple access with collision detection (CSMA/CD)
networks, where this algorithm is part of the channel access method used to send data on these
network. In Ethernet networks, the algorithm is commonly used to schedule retransmissions after
collisions. The retransmission is delayed by an amount of time derived from the slot time and the
number of attempts to retransmit.

After ÷ collisions, a random number of slot times between 0 and 2c - 1 is chosen. For the first
collision, each sender will wait 0 or 1 slot times. After the second collision, the senders will wait
anywhere from 0 to 3 slot times (inclusive). After the third collision, the senders will wait
anywhere from 0 to 7 slot times (inclusive), and so forth. As the number of retransmission
attempts increases, the number of possibilities for delay increases exponentially.

The 'truncated' simply means that after a certain number of increases, the exponentiation stops;
i.e. the retransmission timeout reaches a ceiling, and thereafter does not increase any further. For
example, if the ceiling is set at = 10 (as it is in the IEEE 802.3 CSMA/CD standard[1]), then the
maximum delay is 1023 slot times.

r   


      

This example is from the Ethernetprotocol[2], where a sending host is able to know when a
collision has occurred (that is, another host has tried to transmit), when it is sending a frame. If
both hosts attempted to retransmit as soon as a collision occurred, there would be yet another
collision ² and the pattern would continue forever. The hosts must choose a random value
within an acceptable range to ensure that this situation doesn't happen. An exponential backoff
algorithm is therefore used. The figure 51.2ȝs has been given here as an example. However,
51.2ȝs could be replaced by any positive value, in practice.

ÔY 


  

     
  
Y     
    Ô     
Y  
     
  Ô  Ô !  Ô " 
!Y  
 #$ %     %&Ô  $ a
  
$'Ô 
 Y     ÷ 
     %&Ô  $ a
 
 $÷'Ô 

O
   
Aiven a uniform distribution of backoff times, the expectedbackoff time is the mean of the
possibilities. That is, after ÷ collisions, the number of backoff slots is in [0, 1, ...,] where  = 2÷
- 1 and the expected backoff time (in slots) is

For example, the expected backoff time for the third (÷ = 3) collision, one could first calculate
the maximum backoff time, :

X(÷'Ô

X('Ô()'Ô

X(*

... and then calculate the mean of the backoff time possibilities:

... obtaining 3.5 as the expected number of back off slots after 3 collisions.

The above derivation is largely unnecessary when you realize that the mean of consecutive
integers is equal to the mean of the largest and smallest numbers in the set. That is, the mean of a
set r of consecutive integers Ê0, Ê1, Ê2, ...Êm is simply the mean of Ê0 and Êm or (Ê0 + Êm) / 2.

When applied to the above problem of finding the expected backoff time, the formula becomes
simply:

... or otherwise interpreted as half of the maximum backoff time


ë  +   

]Y ë    
   ,
   ,
-   
  ./

]Y +    ,
   


]Y +    ,
 .   



]Y +
0 1ë


$$

2   

3   



/Y 4   

/Y +    ,




/Y +    ,




5
ë  +   

]Y 

      .


6Y 2   


 

]Y A


 .   
 

6Y 2  


 

]Y A 


]Y °
  , . 
 

]Y °$  


 

6Y 6 %$ 

6Y + 
 
ë  +
ë 
 

]Y ë    
 

6Y ë 
    


6Y ë 
    


]Y +
  
 

6Y 4  
 6 

6Y 2 $.  
 6 

6Y 1 . 
 6 
%$  


6Y 1 . 

 
  


]Y +
 %$ , 6   

]Y ë   
   7+  .

 

8

. 
  9$
 

 :
-/ $  
  . 
.
  

  
-/ $  
 
   $
  .  
 .

  

  
-/   
$
 
    $
  
   ,



  
;ë

8

.<
 
 
;°$  
 °Ô°  


 
Ô °Ô
 ° 
=   
 
$
 °

 3

$
 
   

  $
    23
 



$$$
 
>  
6 . 
 ,
?
>3
:°   
°Ô$  
 .-
. / 
+
 -@  /
>° $
 $°Ô  
> °Ô  


$
  
$?
A, $
$ B°
 9 ,  
>2
6
  
 ,
 
+
 -1 $

@
C/
>° $
 $°Ô$  A, :  
 
 %6 
>@  . 
=
$
 
 
2 °  
 :2 
     
  
> 
   
   

°$37 D%
-7D/
ë
7D:
> °$  =

 ë % 
> °$ 
.=

 E % 
>5   % 
   
 
>A   

8

.     ? 
    ?
7D:
>ë

  
7D
>  
     %   -
  /
BF    
. %
6
$ % >A   

8

.
2$3  %
-7D/ 
 %
 
$
  
 6 $ %
    
 % °$  %
   
  $  :
>A $
7 -D%
7 /3 %  6
    
>ë
%
7 -@ %
7 /3 %     6
 
° 
 $3  

   $
  $3 
%
 
 $.    

8    °

 



   

8

.
 

  . 
ë
$3  %
-ë
7D/
 $
 .  %
     $
$
  :
>   
$  -  
 .
./=

 6    -  
 .
, 
/ %= 
>2  %  .  
    $  

 
  %
   $  .G  0
 
    
 
H/°   
 2F+


 62F+ °  
  
  .  +$ 
$   $ 
7D
 B
>4$
$   
$
 
   7D  


6
  °7D   6
 .   $

, 
    :
2F+2+FF2+F+2+2F+F2 
;°$37 D%
-7D/
°  
  $ 7D  
  %
 
  
 % 


  
 
;°$      
:
>A $
 36
   %    . % 
>ë
%
 3     % 6
.$ % 
;7 
D @7  
7DA

 
;7 
@
C.7  
7D

The refresh rate on a computer is used to describe how often a monitor draws the current data to
the screen. Refresh rate effects visual quality for CRT, LCD and even HD TVs as they are
commonly connected to computers for high definition playback. Refresh rate is not to be
confused with frame rate. Refresh rate is a measure of how often a frame is written to the screen
repeated or not, and frame rate refers to how often a new frame is sent from the graphics source.

= 
Resolution is the term used to describe the number of dots, or pixels, used to display
an image.

Higher resolutions mean that more pixels are used to create the image, resulting in a crisper,
cleaner image.

The display, or   on a monitor, is composed of thousands of pixels or dots. This display
is indicated by a number combination, such as 800 x 600. This indicates that there are 800 dots
horizontally across the monitor, by 600 lines of dots vertically, equaling 480,000 dots that make
up the image you see on the screen.

r 

âML (eâtensible Markup Language) provides a set of rules for defining semantic tags that can
describe virtually any type of data in a text file. Data stored in âML-format files is both human-
and machine-readable, and is often relatively easy to interpret either visually or
programmatically. The structure of data stored in an âML file is described by either a Document
Type Definition (DTD) or an âML schema, which can either be included in the file itself or
referenced from an external network location.

r 



There are two basic types of parsers for âML data:

|Y ° 3   

|Y A3   

°   

Tree-based parsers map an âML document into a tree structure in memory, allowing you to
select elements by navigating through the tree. This type of parser is generally based on the
Document Object Model (DOM) and the tree is often referred to as a DOM tree. The
IDLffâMLDOM object classes implement a tree-based parser; for more information, see Using
the âML DOM Object Classes.

Tree-based parsers are especially useful when the âML data file being parsed is relatively small.
Having access to the entire data set at one time can be convenient and makes processing data
based on multiple data values stored in the tree easy. However, if the tree structure is larger than
will fit in physical memory or if the data must be converted into a new (local) data structure
before use, then tree-based parsers can be slow and cumbersome.

O 
  

Event-based parsers read the âML document sequentially and report parsing events (such as the
start or end of an element) as they occur, without building an internal representation of the data
structure. The most common examples of event-based âML parsers use the Simple API for
âML (SAâ), and are often referred to as a SAâ parsers.

Event-based parsers allow the programmer to write ÷ÊÊ÷    that perform an appropriate
action in response to an event reported by the parser. Using an event-based parser, you can parse
very large data files and create application-specific data structures. The IDLffâMLSAâ object
class implements an event-based parser based on the SAâ version 2 API.


  B
6Y r    
 
           


6Y °   
 $       
. 


   
  
 


r 
  


 
  

3



6 


8

 
 
 %$ 


$   

3   

  $    
 2
3


 


 
 .  
 

 
. 

 




|Y It requires a polygonal model.


|Y It requires explicitly finding discontinuity edges (e.g. silhouettes), which can be
expensive for dynamic models. Delay streams, a hardware mechanism recently proposed
by Aila et al. [2003], can be used to identify discontinuity edges and reduce the CPU
load.
|Y It requires an extra rendering pass to draw the discontinuity edges. On the plus side, the
number of vertices required is small compared to the entire model. Similarly, the number
of pixels drawn at discontinuity edges is a tiny fraction of the framebuffer (typically
around 1%).
|Y For proper compositing, this method requires a back-to-front sort of the edges. Delay
streams can also be used to accelerate this step in hardware.

ë   r r
  

2
3

 $    
,  
  
     
   . 


 
  


 
, $
   
   

 $
  
      
 

 

2 ,
 .%
 . 

    
 . 



8 I$


 
8   
  = 
 $
   2 

, 

 
%.  

 %. °



  
3


>
 . 

, % 
       .

 

J 

     .6
$



3

   2
3

$
%
.    %   $
  .   6
. . $ 
  
   
 


 $. 
  
    
.  

3


    
 
. 
  $.    

2
3


     .. 
. $
.
.   .0


$
 
   = 
$  

 
 .
3

  
$  3
3   

  6
   

   .
  .   

3

   
 
>.  $
%. 

† cr  

°     
 

   
 



 
      

°   
 
    
   
 
 
 

 

  

°

             
r   

|!
 

|" 
 #
 

|" 
$ %  
  

=    

|°% 
 

|" &

  
 


 


†  r

]Y ë 83   $
   283 
    
, 

]Y A83 




8% 

  °   




8
%   

]Y 7 .   3 


 
  .  

]Y  .
 3 
, 
    
$ 


$      .
  $
0   
    

†  r
 r 

]Y ë


.

]Y 7 .   


.  

]Y °


  . - 
  
, /

]Y °
%.

 3    
 
   
 .   
 ,
.
 BBB

]Y +, +ëA= 

]Y °83   $



    
 = $ 8


†  r
   

]Y 5
 . 6
 

]Y ° 6
83 





    
  ,. 



]Y 2

   -

3 

/

]Y 
  3
   3   . -

  
 /

]Y  

 
   .  .  - 
  .   

/



˜


   

Œ
'°  

The main categories of concurrency control mechanisms are:

|Y  3C .%


 $   
 
 
 

.
  -   

8

.  

./

 $
 %
. 
 - $
/
 
    


    
  
|Y M  3F % 
   


. 
 
    




. 
 

 
|Y ë  3F % 
 
 

 
.. 
 
     
 %
 

 $
 .
   %
  
#  
$



 

Many methods for concurrency control exist. Most of them can be implemented within either
main category above. Major methods, which have each many variants, and in some cases may
overlap or be combined, include:
|Y °$3  %
-7D/3+ 
 . % 

|Y ë

8
-  ë

8

. +
 7 / %
3+%
  
.  
  #   
|Y °
  
-°1/32


    
  
 %

 .
   


M  
   
       
  



    

 
 
     
 


D
 
 
  
   


When a window is repainted by the AWT painting thread, it sets the clipping regions to the area
of the window that requires repainting.

You might also like