A Study of the Suitability of IrOBEX for High- Speed Exchange of Large Data Objects

Similar documents
OBEX and high speed IrDA links

Modelling OBEX over IrDA Protocol Stack

A study of link processing time and propagation delay for IrDA links at Gbit/s data rate

An Efficient Selective-Repeat ARQ Scheme for Half-duplex Infrared Links under High Bit Error Rate Conditions

Session Capabilities in OBEX

OPTIMUM WINDOW AND FRAME SIZE FOR IrDA LINKS

- - BER = 10-8 BER = Figure 10: throughput Vs maximum turn-around time for 16 Mbps

An Information Broadcasting System with Infrared Data. Communication Protocol

NETWORK PROBLEM SET Solution

Inverse Multiplexing in Short-Range Multi- Transport Wireless Communications

CHAPTER 5 PROPAGATION DELAY

Version 1.0.1

Optimization of IrDA IrLAP Link Access Protocol

Rapid Heterogeneous Ad Hoc Connection Establishment: Accelerating Bluetooth Inquiry Using IrDA

Chapter 6 Addressing the Network- IPv4

Dynamic Autonomous Transport Selection in Heterogeneous Wireless Environments

IrDA INTEROPERABILITY

The Wireless Connectivity Expert

Chapter 3 Packet Switching

Solutions for Homework #2

EECS 122: Introduction to Communication Networks Final Exam Solutions

EXAM TCP/IP NETWORKING Duration: 3 hours With Solutions

Exercises TCP/IP Networking With Solutions

Homework 1. Question 1 - Layering. CSCI 1680 Computer Networks Fonseca

Title: Using low-power dual-port for inter processor communication in next generation mobile handsets

Optical Communications

Performance Evaluation of WiFiRe using OPNET

BEx Front end Performance

Data Link Layer (cont.) ( h h h ) (Sicherungsschicht) HDLC - 1.

Final Exam for ECE374 05/03/12 Solution!!

Problem Session Encode:

(Sicherungsschicht) Chapter 5 (part 2) [Wa0001] HDLC - 1.

UNIVERSITY OF TORONTO ELECTRICAL AND COMPUTER ENGINEERING ECE 361 Test February 2, 2012

Fragmenting and Interleaving Real-Time and Nonreal-Time Packets

To see the details of TCP (Transmission Control Protocol). TCP is the main transport layer protocol used in the Internet.

Performance of UMTS Radio Link Control

Advantages and disadvantages

AN exam March

A Time-To-Live Based Reservation Algorithm on Fully Decentralized Resource Discovery in Grid Computing

Transport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections

Appendix B. Standards-Track TCP Evaluation

EXAM TCP/IP NETWORKING Duration: 3 hours With Solutions

An Empirical Study of Reliable Multicast Protocols over Ethernet Connected Networks

Reduction of Periodic Broadcast Resource Requirements with Proxy Caching

Expected Time: 90 min PART-A Max Marks: 42

Asynchronous Transfer Mode (ATM) ATM concepts

Performance Characteristics of a Packet-Based Leaky-Bucket Algorithm for ATM Networks

Extending the Corporate IT network to the D-Eng Van

Scalability Considerations

Module 10 MULTIMEDIA SYNCHRONIZATION

NETWORK PROBLEM SET Due Date 6/28/2014

TCP Throughput Testing

Introductions. Computer Networking Lecture 01. January 16, HKU SPACE Community College. HKU SPACE CC CN Lecture 01 1/36

Switching and Forwarding - continued

Switching and Forwarding - continued

Packet Switching - Asynchronous Transfer Mode. Introduction. Areas for Discussion. 3.3 Cell Switching (ATM) ATM - Introduction

Worst-case Ethernet Network Latency for Shaped Sources

Hexahedral Mesh Refinement Using an Error Sizing Function

Introduction. Executive Summary. Test Highlights

6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP

IP Mobility vs. Session Mobility

Introduction to Protocols

RealMedia Streaming Performance on an IEEE b Wireless LAN

Managing Caching Performance and Differentiated Services

Data and Computer Communications. Chapter 2 Protocol Architecture, TCP/IP, and Internet-Based Applications

Overview. Performance metrics - Section 1.5 Direct link networks Hardware building blocks - Section 2.1 Encoding - Section 2.2 Framing - Section 2.

Number Systems (2.1.1)

TCP Over SoNIC. Xuke Fang Cornell University. XingXiang Lao Cornell University

Bridging and Switching Basics

Messaging & Directory Servers. XMPP over HF Radio: CEO Isode Ltd. HFIA San Diego, January

InfiniBand SDR, DDR, and QDR Technology Guide

Telematics. 5th Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments

An Evaluation of Shared Multicast Trees with Multiple Active Cores

CS 421: COMPUTER NETWORKS SPRING FINAL May 24, minutes. Name: Student No: TOT

PLEASE READ CAREFULLY BEFORE YOU START

Reminder: Datalink Functions Computer Networking. Datalink Architectures

16.682: Communication Systems Engineering. Lecture 17. ARQ Protocols

Process model formulation and solution, 3E4 Computer software tutorial - Tutorial 3

cs/ee 143 Fall

Low-Power FIR Digital Filters Using Residue Arithmetic

CSC 4900 Computer Networks: End-to-End Design

Interlaken Look-Aside Protocol Definition

Master Course Computer Networks IN2097

Performance of Multihop Communications Using Logical Topologies on Optical Torus Networks

PLEASE READ CAREFULLY BEFORE YOU START

Advanced Modulation and Coding Challenges

Congestion Control in TCP

Report on Transport Protocols over Mismatched-rate Layer-1 Circuits with 802.3x Flow Control

A Simulation: Improving Throughput and Reducing PCI Bus Traffic by. Caching Server Requests using a Network Processor with Memory

November 1998 doc.: IEEE /378 IEEE P Wireless LANs Extension of Bluetooth and Direct Sequence Interference Model.

Chapter 4. Routers with Tiny Buffers: Experiments. 4.1 Testbed experiments Setup

Delay Constrained ARQ Mechanism for MPEG Media Transport Protocol Based Video Streaming over Internet

FDDI-M: A SCHEME TO DOUBLE FDDI S ABILITY OF SUPPORTING SYNCHRONOUS TRAFFIC

Kernel Korner. Analysis of the HTB Queuing Discipline. Yaron Benita. Abstract

CS 344/444 Computer Network Fundamentals Final Exam Solutions Spring 2007

Duke University CompSci 356 Midterm Spring 2016

WITH the evolution and popularity of wireless devices,

UNIT IV -- TRANSPORT LAYER

Transport Protocol (IEX-TP)

Transcription:

Brigham Young University BYU ScholarsArchive All Faculty Publications 2003-12-05 A Study of the Suitability of Ir for High- Speed Exchange of Large Data Objects Casey T. Deccio casey@byu.net Joseph Ekstrom See next page for additional authors Follow this and additional works at: https://scholarsarchive.byu.edu/facpub Part of the Computer Sciences Commons Original Publication Citation Casey T. Deccio, Joseph Ekstrom, D. Ryan Partridge, Kevin B. Tew, and Charles D. Knutson. "A Study of the Suitability of Ir for High-Speed Exchange of Large Data Objects." Proceedings of the IEEE Global Communications Conference 23. BYU ScholarsArchive Citation Deccio, Casey T.; Ekstrom, Joseph; Knutson, Charles D.; Partridge, D. Ryan; and Tew, Kevin B., "A Study of the Suitability of Ir for High-Speed Exchange of Large Data Objects" (2003). All Faculty Publications. 1051. https://scholarsarchive.byu.edu/facpub/1051 This Peer-Reviewed Article is brought to you for free and open access by BYU ScholarsArchive. It has been accepted for inclusion in All Faculty Publications by an authorized administrator of BYU ScholarsArchive. For more information, please contact scholarsarchive@byu.edu, ellen_amatangelo@byu.edu.

Authors Casey T. Deccio, Joseph Ekstrom, Charles D. Knutson, D. Ryan Partridge, and Kevin B. Tew This peer-reviewed article is available at BYU ScholarsArchive: https://scholarsarchive.byu.edu/facpub/1051

A Study of the Suitability of Ir for High-Speed Exchange of Large Data Objects Casey T. Deccio, Joseph Ekstrom, D. Ryan Partridge, Kevin B. Tew, and Charles D. Knutson {cdeccio, jce, rpartrid, tewk, knutson}@cs.byu.edu Abstract This paper demonstrates that careful tuning of the and IrLAP negotiated parameters allows to scale well for use with large data objects and high transmission rates. Due to the substantial time overhead inherent in link turnarounds, minimizing turnarounds during the transmission of a large object helps to maximimize link efficiency. The IrLAP window size and packet size significantly impact the number of required turnarounds during the transmission of a large object. When these parameters are properly tuned, maximum throughput can be achieved, and performs efficiently at high data rates. Index Terms Object Exchange,, IrDA, IrLAP I. INTRODUCTION OBJECT EXCHANGE () [1] is a binary session layer protocol designed to transmit data objects between resource-limited devices. It is based on HTTP, which has become a worldwide standard for object exchange across the Internet. Since it is binary rather than text-based, is an attractive option for resource-constrained wireless devices because processing overhead is much lower than for traditional text-based protocols. was originally developed by the Infrared Data Association (IrDA) for infrared wireless devices, and has since been adopted by the Bluetooth SIG as a standard for object exchange. The wireless technology market has experienced tremendous growth. Users today expect to be able to communicate and access data anytime, anywhere, using almost any device. Traditional mobile devices such as cell phones and PDAs must now handle complex jobs involving large files, such as MP3 audio and MPEG video. The demand for efficient transmission of large data and media objects between wireless devices at increasingly higher speeds calls into question the scalability of the protocol. In [2] it was shown that the IrDA Link Access Protocol (Ir- LAP) [3] scales to a data rate of 100 Mbps without modification. Building on that work, this paper shows that careful tuning of the and IrLAP negotiated parameters allows to scale well for use with large data objects and high transmission rates. The rest of the paper is organized as follows: In section II we discuss the IrLAP and protocols and their key parameters. In section III we introduce the mathematical model on which we have based our study. Section IV presents our experimental results. In Section V we present our conclusions. TinyTP IrLMP MUX IrLAP IrPhysical IrLMP IAS Figure 1. and the IrDA protocol stack. [1] [3] [4] [5]. Figure 2. Primary IrLAP Frames Secondary IrLAP Frames Poll/Final Bit IrLAP Connection Example IrLAP windows. [4] and TinyTP [5] add a constant 3 byte overhead but do not influence the IrLap or parameters in any other way. This section is a brief overview of the IrLAP and protocols, and highlights key parameters that impact performance. A. IrLAP The Link Access Protocol (IrLAP) layer [3] establishes and manages the link between a primary and a secondary infrared device (see Figure 1). Because point-to-point infrared communication is inherently half-duplex, the receiving device may not transmit until it receives a clear to send from the transmitting device. A clear to send is signaled when the poll/final bit of an IrLAP frame is set, forcing a link turnaround. A device 1 byte 1 byte 2 bytes 1 byte Maximum Negotiated Data Size (2k - 3 bytes) A Address C Control IrLMP TinyTP Payload II. BACKGROUND In order to properly tune for maximum performance, it is necessary to understand the underlying link layer. IrLMP Figure 3. IrLAP Frame. I Information Field GLOBECOM 2003-2664 - 0-7803-7974-8/03/$17.00 2003 IEEE

Server may send a window of multiple unacknowledged frames before setting the poll/final bit (see Figure 2). Several parameters are negotiated when a link is established. Window sizes and minimum turn around time in the VFIR specification are 127 and 100 ms respectively [6]. In [2] the authors base their research parameters on the VFIR specification, but make allowances for the faster 100 Mbit transmission speed. It should be noted that 100 Mbit IrDA is purely theoretical and has no standard specification. Of these parameters, minimum turnaround time, frame length, and window size directly impact link performance. The minimum turnaround time is the latency required by a transmitting device after it sends a packet with the poll/final bit set, and before the other device is permitted to begin transmitting. Some factors that determine the minimum turnaround time are photo receptor energy dissipation time, device interrupt latency, data processing overhead, and memory storage latency. Frame length is the maximum size of the Information field in an IrLAP frame (see Figure 3) [3]. Window size is the maximum number of unacknowledged frames that can be sent before the link must be turned around. Frame length and window size dictate the frequency with which a link must be turned around, and hence are critical to link utilization efficiency. Table I illustrates the impact of these two parameters on aggregate overhead due to link turnaround during transmission of a single (relatively small) data object. In this table, object size is assumed to be 10 MB and turnaround time is assumed to be 2 ms. Client Figure 4. Packet Traffic Cont. Cont. Cont. Cont. Cont. Conversation. Packet Size Server Req. Packet Client Res. Packet TABLE I IMPACT OF FRAME LENGTH AND WINDOW SIZE ON IRLAP TURNAROUNDS Frame Window Number of Total Size Turnarounds Turnaround Time 512 B 1 20480 40.96 s 2KB 1 5120 10.24 s 512 B 7 2926 5.85 s 2KB 7 731 1.46 s 512 B 127 161 322 ms 2KB 127 40 80 ms B. All information carried by is encapsulated in headers, conceptually similar to headers in HTTP. These headers may contain meta-data about the object (such as name, length, MIME-type, etc.) and may include one or more body headers containing the object itself. Each header is either fixed length or length prefixed [1]. transmits objects using GET and PUT methods similar to HTTP. The 1.3 specification defines a 2 byte packet length header field resulting in a maximum packet length of 64 KB [1]. This packet size limitation requires that GET and PUT operations for large objects be segmented into multiple packets. The standard requires that each request packet transmitted in either a GET or PUT operation must be acknowledged by a CONTINUE response packet, resulting in an effective session layer window size of one [1]. Because of the half duplex nature of IrDA and the effective window size of one, subsequent request packets cannot be transmitted until a CONTINUE acknowledgment is received (see Figure 4). Therefore, each request/response pair generates two turnarounds, one after the request, and a second after the CONTINUE response. III. IRDA AND MODEL This section presents a mathematical model of the interactions and behavior of and IrLAP. Variables presented in this section are defined in Table II. The first equation models the number of layer turnarounds. We build on this equation to derive a model for the number of turnarounds at the IrLAP layer. Finally, based on these two equations, we construct a model for the time necessary to transmit an object of arbitrary size using over IrLAP. A. Turnarounds Figure 5 illustrates the way in which packetizes a large object for transmission. The first packet in an PUT operation typically contains object meta-information (such as name, length, etc.), although it is not strictly required to do so. A body header may or may not be included in this first packet, but if included is normally shorter than in subsequent packets, due to the space occupied by headers for meta-information. While no specific requirements are imposed on the order or content of the first packet, for the sake of our model we assume that the first packet includes name and length headers plus a necessarily shortened body header. The value 10 in the following GLOBECOM 2003-2665 - 0-7803-7974-8/03/$17.00 2003 IEEE

Data Files 1 L L 1 2 L n 1 4 1 L L n 1 L L 1 L L n OpCode Packet Name Name Name Object OpCode Packet 10 + L n + 2L L 2 + 2L L Figure 5. object packetization. The first packet has additional headers that specify object length and object name. Subsequent packet headers only need to contain the packet and body lengths. T O T L s o p 0 s p L N L L B rem f i w r t t s t w t r TABLE II MATHEMATICAL MODEL VARIABLES number of turnarounds number of IrLAP turnarounds object size (bytes) payload size of first packet (bytes) payload size of all subsequent packets (bytes) maximum packet size (bytes) length of name field (bytes) length of length field (bytes) bytes that account for an incomplete packet (bytes) IrLAP frame size (bytes) payload size of I field (bytes) IrLAP window size transmission rate (bits/sec) transmission time (sec) time to send data to receiver latency imposed by min turnaround time and processing overhead time for receiver to transmit a response Since the first packet has a different payload capacity than subsequent packets, we subtract p 0 from s o and then divide by to yield the number of packets with payload size required to transmit the object. To this, we add one to account for the first packet (with payload size p 0 ). Because each request packet must be acknowledged with a CON- TINUE response packet, the number of packets sent by the sender and receiver is symmetrical, therefore we multiply by two. Since each packet requires a turnaround, the number of packets is analogous to the number of required turnarounds. This yields the following equation, which models turnarounds as a function of object size. ( ) so p 0 T O =2 +1 (3) B. IrLAP Turnarounds IrLAP turnarounds are dependent upon IrLAP windows, which are calculated with respect to packets. The number of full packets, or packets of size s p, is denoted by so p o +1. The final packet will normally be less than full, and has size B rem which is given by equation reflects the constant overhead of the name and length headers. L N and 2L L reflect the variable length overhead associated with these headers. p 0 = s p (10 + L N +2L L ) (1) For subsequent packets, we assume a common case in which packets consist entirely of body headers, incurring only the overhead of the packet length field and the body header length field. = s p (2 + 2L L ) (2) Although the specification fixes the length field at two bytes, we have chosen to make it a variable in order to allow for experimentation with packet sizes greater than 64 KB. B rem =((s o p 0 )mod ) ( ) (so p 0 )mod + (2 + 2L L ) (4) Each full packet is transmitted in s p i w IrLAP windows. Similarly, B rem requires B rem i w IrLAP windows for transmission. We multiply the number of IrLAP windows for a single packet by the number of packets, and add the number of IrLAP windows for the under-filled packet to produce the total number of windows required to transmit an object of size s o. Each IrLAP window requires an acknowledgment, so the number of windows is identical to the number of turnarounds, and hence must be multiplied by two. GLOBECOM 2003-2666 - 0-7803-7974-8/03/$17.00 2003 IEEE

IrLAP Receiver t IrLAP Sender ts } t w1 Optimal Alignment Packet t r t w2 { Sub-optimal Alignment Packet ts Figure 7. packet alignment with IrLAP windows. t r Figure 6. IrLAP transmission time diagram. t s is sender s transmission time. t r is receivers transmission time. t w1 and t w2 are the turnaround time for the receiver and sender respectively The resulting equation for IrLAP turnarounds is (( sp ) so p 0 T L =2 +1 + i w C. Transmission Time ) Brem i w The general formula for the time required to transmit data, receive a response, and be ready to transmit again is given by (5) t round trip = t s + t w1 + t r + t w2 (6) A single IrDA round trip is illustrated by Figure 6. We have defined t s = (f+2) w r, where 2 is the size of the Address and Control fields of the IrLAP frame (see Figure 3). The time equation is divided into three smaller equations, shown below. t full is the time required to transmit full packets. t partial represents the time for an under-filled packet that is larger than one IrLAP window. t end is the time due to any remaining bytes that do not completely fill one IrLAP window. ( sp ) so p 0 t full = t round trip +1 i w t partial = t round trip ( ) Brem i w t end = B rem mod (i w) + t w1 + t r + t w2 (9) r Equations (7) and (8) are derived directly from the two terms in (5). They represent the time required to send one complete IrLAP window multiplied by the number of IrLAP windows represented by each term. The last equation, (9) is the time to transmit any remaining bytes smaller than one IrLAP window in size. Summing (7), (8), and (9) yields the total amount of time (in seconds) required to transmit an object of a given size. (7) (8) t = t full + t partial + t end (10) T L /T O (Ratio of IrLAP turnarounds to turnarounds) 20 18 16 14 12 10 8 6 Object size 1 MB 5 MB 10 MB 50 MB 100 MB 4 60000 80000 100000 120000 140000 160000 180000 200000 220000 240000 260000 280000 packet size in bytes Figure 8. Ratio of IrLAP turnarounds (T L ) to turnarounds (T O )for packet sizes of 64 KB to 256 KB, showing five object sizes (1, 5, 10, 50, and 100 MB). IV. RESULTS A. - IrLAP Turnaround Ratio In this section we apply our model to a number of scenarios in order to characterize the performance of as data objects increase in size and as transmission speeds increase. Our first experiment compares the ratio of IrLAP turnarounds to turnarounds as maximum packet size increases beyond the specified 64 KB limit. For this experiment, the Ir- LAP frame size is 2 KB and the window size is 7. As packet size increases, the number of turnarounds will obviously decrease. However, of particular interest is the effect that larger packet sizes have on the IrLAP/ turnaround ratio. Figure 7 illustrates the manner in which packets are segmented into underlying IrLAP windows. As maximum packet size increases, it approaches optimal IrLAP window utilization. Immediately beyond this point, each packet requires one more nearly empty IrLAP window. Figure 8 shows the effect of IrLAP window utilization on turnaround ratio. Note the series of gradual ratio decreases, each followed by a sharp increase. The local minima, or sweet spots, occur when packet size achieves optimal alignment with IrLAP window boundaries. The significance of these sweet spots is illustrated when considering total object transmission time. B. Object Transmission Time This section explores the effect of varying the IrLAP window size while holding the packet size constant. This GLOBECOM 2003-2667 - 0-7803-7974-8/03/$17.00 2003 IEEE

Transmission time (s) 18 17 16 15 14 13 12 11 10 9 packet size 64 KB 128 KB 256 KB 512 KB 8 0 20 40 60 80 100 120 140 Window size Figure 9. Transmission time of a 100 MB object for increasing IrLAP window sizes, showing packet sizes from 64 KB to 512 KB. Time seconds 18 17 16 15 14 13 12 11 10 9 8 Figure 10. 550 500 450 400 350 300 250 packet size 200 150 100 50 0 20 40 140 120 100 80 60 IrLAP window size Relationship between window size and packet size. experiment models the transmission of a 100 MB object where i =2KB, r = 100 Mbps, and w varies from 7 to 127. Figure 9 shows that transmission time reaches a (local) maximum for certain IrLAP window sizes, dropping immediately thereafter to a (local) minimum. These local minima and maxima reflect the effect of the sweet spots on transmission time. In other words, transmission time is smallest when packet size falls near IrLAP window boundaries, avoiding unnecessary additional IrLAP turnarounds. Table III summarizes the minimum transmission times for packet sizes 64, 128, 256, and 512 KB. packet size and IrLAP window size parameters. The flat plateau region to the right is where IrLAP window size has met or exceeded the packet size. The valleys correspond to sweet spots as previously described. The ridges depict the worst case combinations of maximum packet size and IrLAP window size which may reduce throughput by as much as 50%. V. CONCLUSION We have shown that the protocol, when tuned to maximize IrLAP performance, scales to handle high data rates and large objects. While packet / IrLAP window alignment is the key to performance tuning, perfect alignment is not necessary. Slightly under-filled IrLAP windows achieve near optimal data throughput. However, slightly overfilled IrLAP frames produce a significantly detrimental effect on throughput, decreasing performance by nearly 50%. Packet sizes that are powers of two (ironically the default specifications for maximum packet sizes and IrLAP window sizes) result in the worst possible performance due to slightly overfilled IrLAP windows. These negative effects can be mitigated by appropriate tuning of packet sizes within the session layer. REFERENCES [1] Irda object exchange protocol obex, Infrared Data Association, Walnut Creek, Calfornia, 2003. [2] A. C. Boucouvalas and V. Vitsas, 100 mb/s irda protocol performance evaluation, in Proceedings of IASTED International Conference on Wireless and Optical Communications (WOC 2001), Banff, Canada, June 2001, pp. 49 57. [3] Serial infrared link access protocol (irlap), Infrared Data Association, Walnut Creek, Calfornia, 1996. [4] Link management protocol, Infrared Data Association, Walnut Creek, Calfornia, 1996. [5] Tiny tp: A flow-control mechanism for use with irlmp, Infrared Data Association, Walnut Creek, Calfornia, 1996. [6] Serial infrared physical layer specification for 16 mb/s addition (vfir), Infrared Data Association, Walnut Creek, Calfornia, 1999. [7] Serial infrared physical layer specification (irphy), Infrared Data Association, Walnut Creek, Calfornia, 1998. TABLE III TRANSMISSION TIME FOR VARIOUS PACKET SIZES Optimal Minimum Link Packet Size Window Size Trans. Time Utilization 64 KB 33 8.73 s 95.99% 128 KB 65 8.57 s 97.83% 256 KB 129 8.49 s 98.70% 512 KB 257 8.40 s 99.76% Theoretical Min. Time 8.38 s s o = 100 MB, i =2KB Figure 10 illustrates the performance surface formed by GLOBECOM 2003-2668 - 0-7803-7974-8/03/$17.00 2003 IEEE