ARQ Protocol for Infrared Wireless LANs: Packet-Level ACK or No-Packet-Level ACK? Timucin Ozugury, Mahmoud Naghshinehz, Parviz Kermaniz, C. Michael Olsenz, Babak Rezvaniz and John A. Copelandy y
(Corresponding author) 334156 Ga Tech Station Georgia Institute of Technology Atlanta, GA, USA 30332 Oce: 404-894-2085, Home: 404-315-7292, Fax: 404-894-0035 z
IBM Thomas J. Watson Research Center Yorktown Heights, NY, USA 10598
fozugur,
[email protected] z fmahmoud, kermani, cmolsen,
[email protected] y
Abstract In this paper, the use of packet-level acknowledgements in the infrared medium access control layer is discussed. The infrared link access control protocols use Go-Back-N automatic repeat request (ARQ) scheme currently, and any ARQ scheme is optional in the medium access control layer. The advantages and disadvantages of using Stop-and-Wait ARQ scheme in medium access control layer are compared to those, which do not use any ARQ scheme in medium access layer where both systems use Go-Back-N ARQ scheme in link access control protocols. The performances of both systems are investigated in the presence of adaptive data rate mechanism. Subject Area: Infrared Wireless LANs.
1
1 Introduction The introduction of wireless local-area networks (LANs) in oce environment is accelerating. Significant advantages of infrared radiation over radio has motivated recent interest into infrared wireless communication as a medium for indoor communication. Besides the advantages of indoor infrared communication, such as use of baseband technology, virtually unlimited bandwidth, lower cost and physical size, infrared systems are aected by severe noise and disturbance, such as diuse propagation paths, background ambient light, sunlight and physical obstructions of the line-of-sight. Since infrared systems are subject to large dynamic variations of signal-to-noise ratio, systems suer from unacceptably high error rates or loss of connections. In order to achieve a high aggregate infrared wireless LAN capacity, a reliable retransmission design should be implemented either in media access control (MAC) protocol, or link access control (LC) protocol, or both. Currently, infrared wireless system architecture consists of three main components, as shown in Figure 1. The Physical layer (IrPHY), the Link Access Protocol (IrLAP) consisting of the infrared link access control (IrLC) and infrared media access control (IrMAC) sublayers and the Link Management Protocol (IrMP) consisting of Multiplexor and the Information Access Service. In recent years, the Infrared Data Association (IrDA) has established standards for shortrange half-duplex links. The IrDA Serial Infrared Physical Layer (IrPHY) de nes the physical layer standards for half-duplex links at several bit rates. The IrDA Infrared Link Management Protocol (IrMP) provides the means for multiple software applications running in each node to operate independently, which involves the discovery of services, multiplexing of the communications of several applications, and the management of the link. The IrDA Infrared Link Access Protocol (IrLAP) is derived from existing asynchronous data communication standard, the high-level datalink control protocol (HDLC). IrLAP de nes the procedures for link initialization, address discovery, connection start-up (bit rate negogiation), data exchange, disconnection, device address con ict 1
Applications Link Mgt. Information Access
Transport Entities
Service (LM-IAS)
Infrared Link Management Protocol (IrMP)
Link Mgt. Multiplexor (LM-MUX) Go-Back-N ARQ
Infrared Link Control (IrLC) Infrared Link Access Control (IrLC)
Stop-and-Wait ARQ (optional)
Infrared Medium Access Control (IrMAC) SAP IrDA IrPHY
IrDA IrPHY
Physical Layer
Figure 1: The infrared system architecture. resolution, and automatic-repeat request (ARQ) for retransmission. Currently, Go-Back-N (GBN) ARQ scheme is used in IrLC layer, and it is optional to have an ARQ scheme in IrMAC layer. This paper only addresses the comparison of retransmission techniques in link access protocols. Based on the existing protocols, we discuss the issue of having an ARQ scheme in IrMAC layer under GBN ARQ scheme in IrLC. We analyze the system analytically and investigate the need of having an ARQ protocol in MAC layer. Since adaptive data rate will be implemented in future's infrared systems, we also compare the performance of the retransmission schemes under repetition rate coding, which is a way of implementing adaptive data rate systems.
2 System Description The current wireless MAC protocols use the standard IEEE 802.11 protocol, [2]. According to this protocol, primary station sends a Request-to-Send (RTS) packet to secondary station. If secondary station hears the RTS, it replies with a Clear-to-Send (CTS) packet. Upon receiving the CTS, pri2
mary station sends its data immediately. Any station overhearing an RTS and/or CTS exchange, defers all transmissions until some time after the associated transmission can be nished. In our system, if a station captures the channel successfully, it transmits multiple data packets, which is called burst transmission. After the transmission of multiple data and their ACK packets, the source station sends an End-of-Burst (EOB) packet, and and starts waiting for an End-of-Burst-Con rmation (EOBC) packet from the intended receiver. In this system, dierent than IEEE 802.11 protocol, other stations overhearing the RTS/CTS exchange and/or transmission, defer their own transmission until EOB/EOBC exchange or certain time of period including burst transmission. Currently, infrared link control protocols use GBN ARQ schemes to establish a reliable communication, and any ARQ scheme is optional in medium access control layer. An important question is that \do we really need an ARQ protocol in MAC layer under GBN ARQ scheme in link access control layer?" In this paper, we discuss two dierent protocols: Packet-level acknowledgment which covers an ARQ scheme in MAC layer and no-packet-level acknowledgment which does not. The packet-level acknowledgment (PLACK) protocol is a way of using Stop-and-Wait ARQ in MAC layer under GBN scheme in link control layer. In this protocol, the transmitter waits for the receiver to acknowledge each transmission, and if the transmission is successful, it sends the next packet, otherwise it disconnects without releasing the poll. Then, it contends again for the channel to retransmit the rest of the packets within link control layer time-out period. This procedure complicates the MAC protocol since the MAC protocol should check each packet for bit errors before delivering it to upper layer, namely, link control layer. In the no-packet-level acknowledgment (No-PLACK) protocol, no ARQ scheme is used in the MAC layer, therefore the MAC layer doesn't check the packets for their errors, it delivers all the received packets destinated to itself, to the upper layer, which makes the protocol very simple. The advantages of PLACK protocol is that the system can quickly adapt itself to the changes in the channel if adaptive-rate infrared system, which is an emerging technology, [3, 6, 7], is used, and PLACK protocol can increase the system performance by changing the user data 3
rate. However, PLACK protocol is not without drawbacks. We are not able to use sliding window mechanism in PLACK protocol. Therefore, stations sometimes transmit one or two packets for one contention period, which is a waste of bandwidth. No-PLACK protocol can take the advantage of sliding window mechanism, but the performance mostly depends on the successful transmission of the last packet in the transmitting window. In other words, No-PLACK protocol suers from time-outs if the last packet is lost. Figure 2 and 3 portrait how PLACK and No-PLACK protocols work, respectively. In the gures, the contention period is an average period of time covering the backo periods, collisions and the listening period, in which another sender captures the channel, so that the indended sender defers its transmission until the channel is idle again. In Figure 2, TX-IrMAC layer of the primary station sends the rst packet to RC-IrMAC layer of the secondary station. The secondary station checks the packet for its errors and gives it to RC-IrLC layer if it's correct. RC-IrMAC sends an acknowledgment (ACK) packet to TX-IrMAC. Then, TX-IrMAC puts the second packet onto the channel which is assumed to be corrupted during transmission. RC-IrMAC sends a negative ACK (NAK) to TX-IrMAC, so that the primary station ends up the transmission by EOB/EOBC exchange, and it starts contending for the channel in order to transmit the rest of packets of the transmitting window. In this scenario, we assume that the transmitting window consists of 4 packets. After second contention period, the primary station achieves to send the rest of the packets successfully, and it releases the poll by the last packet, namely, packet 4. Figure 3 portrays the no-packet-level ACK protocol. In this protocol, Tx-IrMAC layer sends all the packets of the transmitting window after it captures the channel successfully. As seen in the gure, an error is detected in packet 2 (or, it is lost), all subsequent packets are retransmitted again, starting with packet 2. Since packet 1 is transmitted successfully, the transmitter slides the window for the next contention period, and sends packet 5 as well as the retransmitted packets. In Section 3, we investigate the performance of PLACK and No-PLACK protocols analytically.
4
TX-IrLC 1
2
2
CP
3
4
CP
TX-IrMAC RTS
RTS
EOB
EOB
EOBC
EOBC CTS
EOBC
CTS
RTS
CTS
EOB
RC-IrMAC CP
RC-IrLC
ID
IA
Data packet
Contention period
IrLC-IrMAC primary station indication
Data packet in error
IrLC ACK packet
IrLc-IrMAC secondary station indication
IrMAC ACK packet
Figure 2: PLACK protocol where the system uses stop-and-wait ARQ scheme in MAC layer where Go-Back-N ARQ scheme is used in the link control layer. TX-IrLC 1
2
3
4
2
CP
3
4
5
CP
TX-IrMAC RTS
EOB
RTS
EOBC
RTS
EOB
RTS CTS
CTS CTS
EOBC
EOB
CTS
EOBC
EOBC
EOB
RC-IrMAC CP
CP
RC-IrLC
R Data packet
Contention period
IrLC-IrMAC primary station indication
Data packet in error
IrLC ACK packet
IrLC-IrMAC secondary station indication
Figure 3: No-PLACK protocol where the system uses no ARQ scheme in MAC layer where Go-BackN ARQ scheme is used in the link control layer. 5
3 System Analysis In this section, we introduce the performance analysis of PLACK and No-PLACK protocols from link control layer point of view. Firstly, we start investigating PLACK protocol. As we discuss in Section 2, PLACK protocol stops transmitting when there is an error detected or the packet is lost, and the transmitter contends again to capture the channel without releasing the poll. Figure 4 shows how we calculate the probability of successful transmission of all packets after certain number of attempts (or contention periods). In this gure, the transmitting window is 4 and pe is the packet error rate. \1" represents that the packet is transmitted successfully. \0" represents that the packet is corrupted or lost during transmission, so that it needs retransmission. According to the gure, there is only one combination if the transmission is succeeded with a probability of (1 ? pe )4 in only one attempt. If the transmission is succeeded in two attempts, then we have 4 dierent combinations, and the probability becomes 4(1 ? pe )4pe . Hence, we can de ne the number of combinations
1 0 w+i?2 A @ i?1
(1)
where w is the window size, and i is the number of attempts needed to succeed. The transmission time of all data packets of the transmitting window is denoted by ID and can be derived as
0 1 1 w+i?2 X @ A (1 ? pe )w pie?1TD (i) ID = i?1 i=1
(2)
TD (i) = [i(C + D) + (w + i ? 1)(t + 2d + E )]
(3)
and
where t is the transmission time for a data packet, pe is the packet error rate, C is an average contention period, D is the total transmission time for RTS, CTS, EOB and EOBC packets, d is one-way propagation delay, w is the link control layer window size, E is the sum of the transmission time for the MAC layer-ACK packets and the processing time of the received packets, and i is the 6
!st Attempt Successful in 1st attempt
Successful in 2st attempt
Successful in 3st attempt
2nd 3rd Attempt Attempt
Probability ( 1- p ) e
1111 1110
1___
110_
11__
10__
111_
0___
1111
1110
0___
1___
110_
10__
1___
110_
0___
11__
10__
110_
1___
10__
10__
11__
10__
0___
111_
0___
1110
1___
0___
110_
11__
0___
10__
111_
0___
0___
1111
4
4 4 ( 1- p ) p e e
Successful
4 2 10 ( 1- p ) p e e
4+ i-2
in i’th attempt
i-1
4 i-1 ( 1- p ) p e e
Figure 4: Illustration and probabilities of successful transmission for window size, w = 4, for PLACK protocol. number of attempts in MAC layer until all packets are transmitted successfully. For each attempt, we have a contention period, a RTS/CTS and EOB/EOBC exchange. That is the reason why we multiple i by (C + D) in Equation 3. According to the Figure 4, we have (w + i ? 1) number of packets when we succeed in transmission in the i'th attempt. For example, if i = 2, we exactly send 5 data packets to succeed, or if i = 3, we send 6 data packets. That is the reason why we multiple (w + i ? 1) by (t + 2d + E ) in Equation 3. After successful data transmission, the secondary station sends the IrLC ACK packet to the primary station. Therefore, we can de ne the period of time needed to transmit the IrLC ACK packet from secondary station to primary station, which is 7
denoted by IA , as IA =
1 X i=1
?1TA (i) (1 ? pack )piack
(4)
and TA (i) = [i(C + D) + i(tack + 2d + E )]
(5)
where tack is the transmission time of the link control layer-ACK packet, and pack is the packet error rate for the link control layer-ACK packet. ID + IA represents the total time spent for successful transmission of all packets including the link control ACK packet. In other words, it takes ID + IA sec. for the link control layer of the primary station to realize that the transmission is successful since it has a packet to send. Then, we can de ne the utilization for the link control layer as UPLACK =
wt ID + IA
(6)
The performance analysis of SREJ and GBN ARQ schemes have been derived in [1, 8]. By the help of these derivations, we can calculate the utilization of No-PLACK protocol as UNo-PLACK =
w X
(k ? 1)t (1 ? pe )k?1 (1 ? pack )pe (1 ? p ) R + p time-out e e k=1 wt + (1 ? p )R + (1 ? pe )w (1 ? pack ) pe time-out e
(7)
and R = 2(C + D) + w(t + F ) + tack + 8d;
(8)
where R is the window generation time, F is the processing time for the received packets, and the other parameters are same as it is described above. According to the equation, k is the rst erroneous packet, in other words, (k ? 1) packets are delivered correctly, and the rest needs to be retransmitted. Then, we de ne a utilization ratio which can be written as U Uratio = No-PLACK UPLACK
8
(9)
1.1
cp=2
1.1
t=5
cp=1 1
t=7
cp=0.5
1
0.9
t=10
cp=0.2
Utilization Ratio
Utilization Ratio
0.9
0.8 cp=0.1 0.7
t=15
0.8
0.7
0.6 0.6 t = time−out (sec)
0.5
0.4
0.3 −3 10
0.5
cp = contention period (sec)
−2
10 Packet Error Rate
contention period = 0.5 sec
0.4 −3 10
−1
10
(a)
−2
10 Packet Error Rate
(b)
Figure 5: Utilization Ratio (No-PLACK/PLACK) versus the packet error rate (a) for various contention periods, time-out = 5 sec, window size = 8 packets, (b) for various time-out values, contention period = 0.5 sec, window size = 8 packets, packet length = 2K bytes. The utilization ratio gives a good comparison between PLACK and No-PLACK protocols. If Uratio = 1, the performaces of these two protocols are same. If Uratio > 1, No-PLACK protocol gives a better performance, or if Uratio < 1, PLACK protocol gives a better performance. We plot the utilization ratio for various contention periods, time-out values, window sizes, and packet lengths in Figure 5 and 6. The processor speed used in simulation is 100 MHz, and we calculate the parameters, related with the processing time and the transmission time of RTS/CTS/EOB/EOBC packets as 1.984 msec., 872 sec., 944 sec. for D, E , and F , respectively (see [3] for packet formats). The packet length used in Figure 5(a), (b) and 6(a) is 2K bytes. One-way propagation delay, d, is 0.33 sec. As seen in Figure 5(a), when the average contention period is higher than approximately 0.5 sec., the utilization ratio makes a peak for high packet error rates, which results in that No-PLACK protocol performs better than PLACK protocol. The reason is that when the channel quality decreases, PLACK protocol starts contending more frequently. Moreover, if the average contention period is 9
−1
10
1
1
window=16 0.9
0.7
−−−−
window=2 −−−−−
window=4
t=8k
0.8
window=8
Utilization Ratio
Utilization Ratio
0.8
t=16k
0.9
−−−−−
0.6
−−−−−−
t=4k
0.7 t=2k
−−−−
0.6 t=1k
0.5
0.5
0.4
0.4
0.3 −3 10
−2
10 Packet Error Rate
t = transmission time
0.3 −3 10
−1
10
(a)
−2
10 Packet Error Rate
(b)
Figure 6: Utilization Ratio (No-PLACK/PLACK) versus the packet error rate (a) for various window sizes, time-out = 5 sec, contention period = 0.1 sec, (b) for various packet lengths, time-out = 5 sec, contention period = 0.1 sec, window size = 8 packets. long as well (for example, more active stations means longer contention periods), PLACK protocol suers more. However, we can say that PLACK protocol performs better over all. Figure 5(b) shows that the performance of No-PLACK protocol mostly depends on the time-out value of the link control layer. If the time-out value increases, the utilization of No-PLACK decrases, so does utilization ratio. The reason is that the performance of No-PLACK protocol mostly depends on the success of the last packet in the transmitting window because the last packet carries the poll. Let's think about a scenario where the last packet is lost while using No-PLACK protocol. While transmitting the last data packet, primary station also releases the poll. Since the packet is lost, the secondary station doesn't receive the last packet, and has no idea whether the poll is released or not, so that it can't respond back to the primary station. The primary station waits for the IrLC ACK packet from the secondary station until the end of time-out period. Then, it restarts transmitting all the packets again. If we have long time-out periods for the link control layer as well as high 10
−1
10
packet error rates, the performance of No-PLACK protocol decreases rapidly. But, if the last packet is lost while using PLACK protocol, the primary station waits for an ACK from the MAC layer of the secondary station for a short time of period (because the MAC layer time-outs are very small in compare to the link control layer time-outs). The primary station retransmits the last packet until it gets through correctly. Moreover, we can not choose short time-out periods in the link control layer, since there is a chance that contention period can be long in some cases. Figure 6(a) shows a very interesting phenomenon. The utilization ratio is not necessarily an increasing function of the transmitting window, (see [1]). As seen in the gure, an increase in the transmitting window size increases the utilization ratio for lower packet error rates. But after a certain packet error rate, an increase in window size makes the utilization ratio decrease rapidly. For example, if the window size is 16, we can see this phenomenon after the packet error rate raises approximately above 5x10?2. The transmitting window size has a huge impact over Go-Back-N ARQ protocols for high packet error rates, since the use of large window sizes increases the waste of time if any packet is in error or lost. We compansate this impact in PLACK protocol by using stop-and-wait ARQ protocol in MAC layer as well as using Go-Back-N ARQ in the link control later. In Figure 6(b), we show that longer packet sizes increase the utilization ratio. If we increase the packet length and keep the packet error rate as same as before, it results in better channel quality. And, better channel quality with longer packet lengths improves the performance of No-PLACK protocol more than PLACK protocol. In Section 4, we discuss the eects of adaptive data rate over PLACK and No-PLACK protocols.
4 Performance Comparison of RR-fold PLACK and No-PLACK Protocols The repetition rate coding is an adaptive way of changing the data rate on channel depending on quality of service parameters. The receiver adapts its data rate by monitoring the channel, and it 11
1
0
0
0
0
1
0
0
0
0
0
(a)
1
(b)
Figure 7: Illustration of repetition rate coding, (a) 4-PPM code word, (b) RR=2-fold repetition rate coding for 4-PPM code word. informs the transmitter to use the updated data rate. In repetition rate coding, according to the received information, the transmitter reduces the user data rate by repeating the symbols RR times, which increases the symbol capture probability at the receiver, [6, 7]. Reducing the users data rate by a factor of RR (rate reduction) results in an RR-fold signal-to-noise (SNR) improvement. We can say that repetition rate coding is a simple way of implementing an adaptive data rate system that can reduce the eects of noise while maintaining the nominal users data rate. It can be devised by introducing redundancy in the channel symbol stream. This redundancy is introduced as the repeated transmission of each symbol. In other words, the symbol has been repeated RR times to get RR-fold repetition rate. This type of symbol repetition coding is very suitable for pulse position modulation (PPM), which is used in our IR system. According to the IEEE 802.11 standard, the basic infrared access rate is based on 1 Mbps 16-PPM modulation, and enhanced access rate is based on 2 Mbps 4-PPM modulation. An example of repetition rate coding for 4-PPM symbols is given in Figure 7. Figure 7(a) shows the original 4-PPM code words which can be named as RR=1, and we illustrate RR=2-fold repetition rate coding for 4-PPM symbols in Figure 7(b) by repeating each 4-PPM symbol twice. The performance of repetition rate coding has been derived for L-PPM infrared wireless links in [7], where doubling RR achieves the SNR gain of approximately 3 dB for the packet error rate (the real implementation of the system also gives the same results, see [6]). According to the derivation 12
0.16 1
PLACK .
0.14
RR=1
No−PLACK .
0.12
0.8
0.1
RR=4 Utilization ratio
Utilization
RR=2
0.08 RR=8 0.06
0.6
0.4 RR=16
0.04 0.2 0.02
0
0
5
10
15 20 signal−to−noise ratio (SNR) (dB)
25
0
30
0
(a)
5
10
15 20 signal−to−noise ratio (SNR) (dB)
25
30
(b)
Figure 8: (a) Utilization of RR-fold PLACK and RR-fold No-PLACK protocols versus SNR, (b) Utilization Ratio (RR-fold No-PLACK/RR-fold PLACK) versus SNR where the packet length is 2K bytes, the window size is 8, and the contention period is 0.1 sec. in [7], the packet error rate, pe , for L-PPM links using repetition rate coding can be written as
0 0 1 3L?11l=log2L 1 2 k 0 RR ?1 RR X X B @ ?j 5 C A (1 ? pe1 )RR?k pke1 41 ? @ RR A (1 ? pe0 )j peRR (10) pe = 1 ? @ A 0 j k j =0
k=0
where l is the packet length, L represents the number of slots in a PPM symbol, RR is the RR-fold repetition rate. pe1 and pe0 are the conditional error probabilities, conditioned on a \1" and \0" being present in the corresponding L-PPM slot, respectively. The derivation of the conditional error probabilities has been given in [7] for the infrared wireless system that uses L-PPM modulation. In order to simulate RR-fold PLACK and RR-fold No-PLACK protocols for dierent repetition rates, we use Equation 10 to nd the packet error rate, and then, the calculated packet error rate is plugged into Equation 2 and 7. The infrared system parameters given in Section 3 is used to simulate RRfold PLACK and RR-fold No-PLACK protocols. The results are given in Figure 8. The solid curves 13
and dashed curves in Figure 8(a) show the utilization of RR-fold PLACK and RR-fold No-PLACK protocol, respectively, for repetition rate RR = 2k , k = 0; 1; : : :; 4, as a function of SNR, where the packet length is 2K Bytes, the window size is 8, the contention period is 0.1 sec., and the time-out value of the link control layer is 5 sec. We nd that RR-fold PLACK protocol achieves the SNR gain of approximately 1 dB over RR-fold No-PLACK protocol for each RR rate. For example, RR-fold PLACK protocol switches from RR = 1 to RR = 2 approximately at SNR=25.16 dB; however, RRfold No-PLACK protocol switches to RR = 2 approximately at SNR=25.84 dB. Figure 8(b) shows the utilization ratio, Uratio, of RR-fold PLACK and RR-fold No-PLACK protocol as a function of SNR. Since RR-fold No-PLACK protocol decreases more rapidly than RR-fold PLACK protocol, the utilization ratio deteriorates to a certain SNR where a doubling of RR occurs for RR-fold No-PLACK protocol. Then, the utilization ratio starts increasing until RR-fold PLACK protocol doubles the RR value, and the same behavior persists for each RR rate. Brie y, a doubling of RR rate helps RR-fold No-PLACK protocol to be stable, and prevents the utilization ratio not to deteriorate to very low values.
5 Conclusions In this paper, we evaluate the performance of packet-level acknowledgment and no-packet-level acknowledgment protocols which are used in infrared wireless networks in order to provide reliable communication. We compare those protocols in terms of utilization, for dierent network parameters, such as the contention period, the time-out period, the transmitting window size and the packet length. We show that the contention period has a impact on performance of packet-level acknowledment protocol, and the time-out period has a huge impact on no-packet-level acknowledgment protocol. In overall picture, packet-level acknowlegdment performs better than no-packet-level acknowledgment protocol. Moreover, packet-level acknowledgment has an advantage that the system can adapt itself more quickly to the changes in the channel, so that the protocol can increase 14
the system performance by changing the user data rate in the middle of the transmitting window, (see [6, 7]). No-packet-level acknowledgment protocol can take the advantage of sliding window mechanism, but the performance mostly depends on the successful transmission of the last packet in the transmitting window, so that the protocol suers from time-outs if the last packet is lost, or corrupted. No-packet level acknowledgment protocol can not adapt the user data rate in the middle of the transmitting window. It should wait until the next transmitting window starts. While using repetition rate coding, RR-fold PLACK protocol achieves the SNR gain of approximately 1 dB over RR-fold No-PLACK protocol, for each RR rate. On the other hand, repetition rate coding helps RR-fold No-PLACK protocol to be stable, and prevents the utilization ratio not to deteriorate below
a certain point.
References [1] T. Ozugur, P. Kermani and M. Naghshineh, \Comparison of ARQ and SREJ Modes of HDLC over Half-duplex and Full-duplex Links and the Eect of Window Size and Processor Speed in Utilization", Technical Report, IBM Thomas J. Watson Research Center, Yorktown Heights, NY, Sept. 1996. [2] P802.11, D3-Unapproved Draft 3: Wireless LAN Medium Access control (MAC) and Physical Speci cations, IEEE, January 1996. [3] M. Naghshineh, P. Kermani, C. M. Olsen and B. Rezvani, \IBM Ir-NG Prototype Controller Design Document", internal report, IBM TJ Watson Research Center, Yorktown Heights, NY, August 1996. [4] ISO 3309 High Level Data Link Control (HDLC) Procedures - Frame Structure 1991-06-01. [5] ISO 4335 High Level Data Link Control (HDLC) Procedures - Elements of Procedures 1991-09. [6] F. Gfeller, W. Hirt, M. de Lange and B. Weiss, \Wireless Infrared Trasmission: How to Reach All Oce Spaces", Internal Research Report, IBM Zurich, Oct. 10 1995. [7] T. Ozugur, M. Naghshineh, P. Kermani, C. M. Olsen, B. Rezvani and J. A. Copeland, \Performance Evaluation of L-PPM Links Using Repetition Rate Coding", submitted to PIMRC'98. [8] Lin et al., \Automatic-Repeat Request Error Control Schemes", IEEE Comm. Mag., Vol. 22, No. 12, pp.5-17, Dec. 1984.
15