Performance of Bundle Protocol for Deep-Space ... - IEEE Xplore

0 downloads 0 Views 883KB Size Report
RUHAI WANG. Lamar University. Beaumont, TX, USA. SCOTT C. BURLEIGH. Jet Propulsion Laboratory. California Institute of Technology. Pasadena, CA, USA.
Performance of Bundle Protocol for Deep-Space Communications KANGLIAN ZHAO Nanjing University Nanjing, China RUHAI WANG Lamar University Beaumont, TX, USA SCOTT C. BURLEIGH Jet Propulsion Laboratory California Institute of Technology Pasadena, CA, USA ALAA SABBAGH Lamar University Beaumont, TX, USA WENWEI WU Soochow University Suzhou, China MAURO DE SANCTIS University of Rome Tor Vergata Rome, Italy

Manuscript received July 2, 2015; revised January 25, 2016, April 5, 2016; released for publication May 20, 2016. DOI. No. 10.1109/TAES.2016.150462. Refereeing of this contribution was handled by T. Robertazzi. The research described in this paper was performed, in part, at the Jet Propulsion Laboratory, California Institute of Technology, under a contract with NASA. Government sponsorship is acknowledged. This work was supported, in part, by the Future Networks Innovation Institute of Jiangsu Province, China, for a Prospective Research Project on Future Networks under Grant BY2013039-3-10 and by the National Natural Science Foundation of China under Grant 61401194. This work was also supported, in part, by the Satellite Communication and Navigation Collaborative Innovation Center of Jiangsu Province, China, under Grants SatCN-201410 and SatCN-201407. Authors’ addresses: K. Zhao, School of Electronic Science and Engineering, Nanjing University, Nanjing, Jiangsu Province 210093, P. R. China; R. Wang, A. Sabbagh, Lamar University, Electrical Engineering, P.O. Box 10029, Beaumont, Texas 77710, USA; S. C. Burleigh, Jet Propulsion Laboratory, California Institute of Technology, Pasadena, CA 91109, USA; W. Wu, School of Electronics and Information Engineering, Soochow University, No. 1 Shizi Street, Suzhou, Jiangsu Province 215006, P. R. China; M. De Sanctis, Department of Electronics Engineering, University of Rome Tor Vergata, Via del Politecnico 1, Roma 00175 Italy. Corresponding author is R. Wang, E-mail: ([email protected]). C 2016 IEEE 0018-9251/16/$26.00 

Delay/disruption tolerant networking (DTN) was developed to enable automated network communications despite frequent and lengthy link disruptions and long link delay. DTN communications rely heavily on a bundle protocol (BP) that uses the well-known approach of store and forward with optional custody transfer for which a node agrees to hold BP data units, bundles, in memory (or storage) until its successful reception is acknowledged by the next node. However, in the presence of long link disruptions, little work has been done regarding performance modeling of BP for reliable data transfer in deep-space communications. In this paper, we present a study of BP over a relay-based deep-space communications system, characterized by lengthy link disruptions accompanied by an extremely long propagation delay, lossy data links, and asymmetric channel rates. An analytical model is built to estimate the total delivery time of a file (message) that is transmitted as the contents of one or more BP bundles over a deep-space channel. A model is also built to characterize the dynamics of memory occupancy and release when BP is used for reliable data delivery in the presence of link disruptions. The constructed models are validated by running experiments using a test bed.

I. INTRODUCTION A. Background

Delay/disruption tolerant networking (DTN) [1, 2] is a network architecture developed to accommodate the frequent link disruptions and long link delay that are typical of the deep-space communication environment. Core DTN protocols include bundle protocol (BP) [3, 4] and Licklider transmission protocol (LTP) [5, 6, 7]. Although much DTN research has focused on deployment of DTN over the Internet, the Consultative Committee for Space Data Systems (CCSDS) [2] has begun adoption of DTN for space flight mission communications, as described in the CCSDS Solar System Internetwork (SSI) architecture [8], integrating DTN with other protocols for flight operations, such as CCSDS Encapsulation Service [9]. As the main protocol of DTN, BP is developed to run at a subapplication layer for establishing an “overlay” network that is able to achieve interoperation across highly heterogeneous networks, such as Internet Protocol (IP) does. DTN communications rely heavily on BP, which uses the well-known approach of store and forward with optional custody transfer mechanism to construct an overlay network. In other words, by employing custody-based, message-oriented transmission mechanisms, BP provides reliable data delivery hop by hop across heterogeneous networks in DTN, ultimately resulting in reliable delivery to the final destination. A bundle node or simply, a DTN node, is any entity that sends or receives or both sends and receives, DTN protocol data units (PDUs), which are called bundles in DTN. A BP agent (BPA) of a bundle node is a core component of BP; it offers the BP services and executes the procedures of BP [3]. A convergence layer adapter (CLA) of a bundle node sends and receives bundles on behalf of the BPA. It enables the BPA to interact with an underlying network within which the node is functionally located so that the BPA is able to use the services of that “native” network protocol to which the specific CLA functionally interfaces. Therefore, the BPA may use CLAs

IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. 52, NO. 5 OCTOBER 2016

2347

from a number of different networks determined by the routing of traffic. At present, the broadly supported CLAs under BP are the Transmission Control Protocol-based CLA (or simply TCPCL) [10], user datagram protocol (UDP)-based CLA (or simply, UDPCL) [11], and LTP [5, 7] CLA (or simply LTPCL [6]). UDPCL is mainly designed for use over dedicated private links, based on a presumption that a bundle will always fit into a single UDP datagram around 64 KB long. UDP uses a simple transmission model with minimum protocol mechanisms. Because UDP does not establish a connection prior to communication, it has no handshaking dialogues and no capability to recover data if error occurs. However, if UDP works with BP that enables store-and-forward services and custody transfer (i.e., under the architecture of BP/UDPCL/UDP), each DTN node keeps a copy of every sent bundle until it receives a custody acknowledgment (CA) message. The CA message confirms that the next node in the end-to-end path has successfully received the bundle. As noted, deep-space communications are characterized by lengthy link disruptions and extremely long link propagation delay. Link disruptions in deep-space communications occur either periodically or randomly. They are generally due to such factors as orbital movement and limited relay transit duration [12]. DTN employs persistent memory storage to store bundles. In the presence of link disruptions, BP is expected to suspend data transfer and store data bundles in its entirety during intervals of disconnection and resume transmission when connectivity is restored [13], ensuring no bundles are lost in the presence of link disruptions. In comparison to the terrestrial Internet, memory consumption for data storage is a particularly important issue in deep-space communications because of the high cost of space resources. Available memory may be less than ample and is in demand for a wide variety of purposes beyond ensuring message delivery. It is critical that the memory for data storage is occupied by a data unit no longer than necessary and no longer than expected. Given the manner in which BP bundles are released from memory storage and their high reliance on persistent memory, it is crucial to accurately characterize the dynamics of BP memory occupancy and release in data transmission over a wide range of operational scenarios envisioned for future deep-space missions. Little work has been done in investigating the performance of BP in deep-space communications, especially in the presence of long link disruptions. In this paper, we present a study of BP in a relay-based deep-space communication architecture. B. Contributions

The main contributions of this paper are the development of two analytical models for the performance of DTN’s main protocol, BP, in a relay-based deep-space communication architecture and the experimental 2348

validation of those models by using a personal computer (PC)-based test bed. One model is built to estimate the expected total delivery time of a file (message) conveyed as the contents of one or more BP bundles that are transmitted in the presence of link disruptions accompanied by an extremely long propagation delay typical of deep-space communications. Another model is built to characterize the dynamics of memory occupancy and release when BP is used for reliable data delivery. This paper provides an analytical framework for the transmission efficiency and performance of the DTN architecture and protocol in targeted data delivery over a long-haul deep-space link. The remainder of the paper is organized as follows. In Section II, related work is discussed. The adopted cis-Martian communication reference scenario is presented in Section III. We present performance modeling for BP transmission in Section IV. In Section V, we present the experimental results and model validations. The conclusions are drawn in Section VI. II. RELATED WORK

Some studies have been done in routing protocols and techniques for DTN targeting its application in sensor and wireless networks. A comprehensive overview of these studies is presented and discussed by Zhang in [14]. Some studies have recently been done based on experimental work to evaluate the feasibility and performance of the DTN architecture and protocols in satellite and space (including deep-space) communications [15–18]. In [15, 16], Caini et al. introduced DTN as an alternative solution to Earth-orbit satellite communications. In [17], Caini’s team also conducted an experimental performance analysis of DTN technology for Mars to Earth communications through orbiters. A series of Deep Impact Network Experiments [18] performed by the Jet Propulsion Laboratory (JPL) proved the feasibility of exercising DTN protocols in deep-space environment. However, all of the aforementioned work focuses on an experimental investigation of use of DTN technologies for space but without a solid theoretical analysis. Wang et al. have conducted a series of studies [19, 20] in space networking protocol development and evaluation for their application to Earth-orbit and cislunar communications. Wang’s team also did some experimental work on DTN protocols, mainly on LTPCL, in space communications [21-23]. However, these studies target cislunar communications. Because the propagation delays of Earth-orbit and cislunar communications are orders of magnitude shorter than the propagation delays in deep-space communications, the findings from these studies may not be applicable to deep-space communications. Recently, the team also did a study of BP with respect to its memory variation dynamics when used for file transmissions in deep-space communications [24]. However, the effect of link disruptions is not considered in the analysis.

IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. 52, NO. 5 OCTOBER 2016

In [25], Bezirgiannidis et al. presented a useful method of estimating data bundle delivery time in space internetworking using the contact graph routing computation algorithm. Similar to the work [21–23] done by Wang’s team, the analysis and experimental verification in [25] are done for space communication scenarios with quite short signal propagation delay (up to 100 s). In addition, it is done without the effect of link disruption considered. Therefore, these research findings are not directly applicable to the very deep space communications which we target. In [26], Cello et al. presented a theoretical evaluation of the average packet delivery time of DTN and IP-like protocols in intermittently connected networks (ICNs). Although an analytical model is developed for DTN, the analysis targets the operation of DTN in ICN instead of deep-space communications. As a result, the extremely long propagation delay characterizing the deep-space channel was not considered in the analysis. Therefore, the analysis is likely inapplicable for deep-space communications. In [27], a theoretical analysis of the CCSDS File Delivery Protocol (CFDP) in deferred negative acknowledgment (NAK) mode over a single hop is presented. As in [25], link disruption and channel-rate asymmetry are not considered in [27]. In addition, unlike our work, the analysis in [27] is not validated by file delivery experiments based on an experimental infrastructure or a test bed. Some work has also been done in studying a spacecraft’s buffer and its occupancy. In [28], Shambayati presented a general discussion on the selection of the spacecraft’s buffer size with respect to link capacity and its impact on the data loss rate. In comparison, in this work, we intend to provide an analytical understanding of the data transmission efficiency of a specific DTN protocol, BP, given the availability of a fixed memory storage in the presence of lengthy link disruptions. The work in [29] done by the same team as of [26], provides an analytical framework to model the ICN nodes’ behavior. However, as in [26], the analysis specifically targets the operation of ICN instead of deep-space communications, and therefore, the extremely long propagation delay is ignored. As noted in [26], the model is likely not applicable for deep-space communications. In addition, both [26] and [29] focus on an understanding of a general volatile buffer that is different from this paper in which we study the dynamics of nonvolatile memory for persistent storage of data for delay and disruption tolerance.

III. CIS-MARTIAN COMMUNICATIONS REFERENCE SCENARIO AND SYSTEM MODEL

To study the performance of the DTN protocol in deep-space communications scenario, we referred to the NASA’s Mars Science Laboratory mission, Curiosity [30], and architectural planning for future interplanetary internetworking, as published by CCSDS [2, 8].

The Curiosity mission started full operation in 2012. In comparison to the earlier Mars missions of NASA, Curiosity is considered to be more advanced with respect to communications systems and data transmission efficiency. Curiosity is equipped with significant telecommunication redundancy by several means that can communicate directly with Earth and can communicate with Mars orbiters by using ultrahigh frequency software-defined radios. Earth and Mars are both rotating on their own axes. Thus, Mars periodically “turns its back” to Earth, taking the rover on its surface with it. Therefore, the rover and the Mars orbiters are only periodically visible from Earth and to each other, limiting the direct-to-Earth communication opportunities. In addition, communicating directly between Mars rovers and Earth requires large amounts of power for reliable data delivery. Because the orbiters have both more power and larger antennas than the rovers on the Martian surface, allowing for higher transmission speeds, relay-based communication through the orbiters serves as the main path for data return to Earth. Most of the data (around 95%) transmitted by the Curiosity mission are relayed through the 2005 Mars Reconnaissance Orbiter (MRO) and 2001 Mars Odyssey orbiter. The maximum transmission rate of the MRO over its deep-space link is 5.4 Mb/s. The data rate from the rovers to the MRO over the proximate link is selected automatically and continuously during communication and can reach 2 Mb/s [30]. The data rate to the Odyssey orbiter is much lower, up to 256 kb/s. However, proximity link data rates far in excess of 2 Mb/s are anticipated for future Mars missions [31]. Each orbiter flies over the Curiosity rover on the Martian surface for a short time and is only able to communicate with the rover for about 8 min/d (0.56% of the time). A typical relay-based cis-Martian communication architecture/model was presented in [32, Fig. 2a]. The data delivery using the primary relay path in Fig. 2a, i.e., from Mars surface to Earth ground station through the Mars relay orbiter, is analogous to the Mars-Earth communication scenarios of the Curiosity mission for which the MRO and Odyssey orbiter function as the relay orbiter. An average propagation delay between Earth and Mars for the Curiosity is slightly longer than 14 min. With the relay-based architecture, the rover only needs to communicate with an orbiter that is a short distance away in Mars orbit and thus with very short propagation delay, generally around a few milliseconds. This delay is considered negligible with respect to the deep-space propagation delay over the long-haul link between the orbiter and Earth. Therefore, the propagation delay over the proximate link is assumed negligible in our study. For most of the time of the data delivery via the relay orbiter, the contact windows of rover to orbiter and of orbiter to Earth ground station are not aligned, i.e., the orbiter either cannot see the rover or cannot see Earth. In this case, the data delivery has to employ a store-and-forward model for which the application data

ZHAO ET AL.: BUNDLE PROTOCOL FOR DEEP-SPACE COMMUNICATIONS

2349

bytes are stored in the orbiter’s memory until a data link to the Earth is available. This is the scenario in which we assume DTN (BP) will operate for reliable data delivery, using its store-and-forward mechanism and custody transfer option, as the basis for our evaluation of its performance. With respect to the networking protocol configurations, the CCSDS SSI architecture [8] is predicated on the use of BP in deep-space communications, but a variety of different protocol stack configurations are contemplated. In particular, requirements for reliable data delivery in the SSI may be met by deploying the “red” processes of LTP at the “convergence layer” under BP, but it is suggested that they may also be satisfied by BP custody transfer alone—“reliable BP”—when the protocol at the convergence layer is unreliable, e.g., LTP “green” or simply the CCSDS Encapsulation Service [2, 4, 9]. Because the objective of this work is the performance evaluation of reliable BP in deep space, the file transfer experiment was configured to run reliable BP over an unreliable UDP/IP stack via UDPCL (instead of reliable LTPCL) on the space communication and networking test bed (SCNT), i.e., BP/UDPCL/UDP/IP. UDP/IP is functionally equivalent to the CCSDS Encapsulation Service in this context and is far better supported on the computing equipment available for these experiments. Formal specification of the BP/UDPCL/UDP/IP stack for use in flight mission operations is defined in Annex B (Section B-4) of the CCSDS Recommended Standard for Bundle Protocol [4].) The custody transfer option of BP was enabled to achieve reliable data delivery. Note that a configuration of running reliable BP over reliable LTPCL/LTP stack would result in unnecessary duplicate transmission reliability for data delivery. This would lead to an inaccurate performance evaluation of BP. To characterize the performance of BP, we needed to exercise an application that caused the bundle transmission and reception procedures of BP to be executed. For this purpose, we chose file transfer. Given the configuration of BP/UDPCL/UDP/IP, the UDPCL CLA, when needed, automatically fragmented each original file into multiple fragmentary bundles of the maximum size chosen for the experiment. For notational convenience in our discussion of protocol performance, we herein refer to “the sequence of fragmentary bundles issued in the course of transmitting the file” as “the file.” The detailed experimental setup and protocol configurations for this study are described in Section V.A. IV. PERFORMANCE MODELING FOR BP TRANSMISSION IN DEEP SPACE

In this section, we build an analytical model for the performance of BP/UDPCL over UDP/IP in deep-space communication scenario. The model is built to estimate the delivery time of a file (message) that comprises one or more BP bundles. Notations we use for the derivation of the model are specified in Table I. 2350

TABLE I Notations Symbol p pBundle LBundle LOverhead LUDP-Head LIP-Head LIP-Packet pCA NBith N Bith

r

N Bith

n r

n TFile TProp_total TTrans_bundle TTrans_average

TTrans_total TBreak TOWLT

Definition Probability of channel bit error Probability of error in delivering a data bundle Length of a bundle Total overhead length encapsulated by all the layers underneath BP layer Length of a UDP datagram header Length of an IP packet header Length of an IP packet Probability of error in delivering a CA Number of bundles to send in the ith transmission effort Number of bundles released successfully in the ith transmission effort Number of bundles that are not released in the ith transmission effort because of losses of bundles and CAs Total number of transmission rounds to deliver an entire file Total file delivery time Total propagation time involved for transmission of all the bundles and CAs Transmission time for each bundle Average transmission time elapsed to resend the last bundle (including the time waited until its transmission slot) in the last round Transmission time for all bundles Duration of link disruption One-way light time

A. Modeling Number of Transmission Rounds Needed for Successful Data Delivery

Let p be the bit error rate (BER) of data transmission over a deep-space channel and let the length of a bundle be LBundle bytes. The value of p is a numerical representation of the net overall transmission quality reflecting such factors as signal strength, channel coding, and solar wind. Provided that channel errors are independent, the corruption (or simply, loss) probability of a bundle can be calculated as follows: pBundle = 1 − (1 − p)8×(LBundle +LOverhead )

(1)

in which LOverhead is the total overhead length encapsulated by all the layers underneath BP layer. In other words, (LBundle + LOverhead ) is the average length of a bundle encapsulated down to link layer, ready for transmission. The size of LOverhead varies, depending on whether or not the bundle is fragmented and how the underlying protocols are configured for the data transmission. If no fragmentation is involved, the size of LOverhead is simply equal to the sum of the sizes of all headers of the protocols underneath BP. For example, if no fragmentation occurs and BP is configured to run over reliable LTPCL/Encap-Packets/Data-Link, the overhead size can be approximated as LOverhead = LLTP-Head + LEncap-Head + LLink-Head . If BP runs over unreliable UDPCL/UDP/IP/Data-Link, the overhead size will be LOverhead = LUDP-Head + LIP-Head + LLink-Head . In contrast,

IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. 52, NO. 5 OCTOBER 2016

if bundle fragmentation occurs at IP layer, the effect of multiple headers of all the layers underneath IP (including itself) should be considered in calculating the overhead size, and therefore, LOverhead can be approximated as   LBundle LOverhead = LUDP-Head + LIP-Packet (2) × (LIP-Head + LLink-Head ) in which LIP-Packet is the length of a fragmented IP packet. Similarly, if the length of a CA is LCA bytes, the loss probability of a CA can be formulated as pCA = 1 − (1 − p)8×(LCA +LOverhead ) .

(3)

Under an assumption of independent bit errors, the probability that a given bundle is successfully transmitted is independent from the transmission success probability of all other bundles. Provided that an entire application file is transmitted in NBundle bundles and the number of bundles to send in the first transmission effort is NBFirst , then NBFirst = NBundle

(4)

Considering the effect of CAs and bundles loss, the number of bundles released successfully from the memory in the first transmission effort, defined as NBFirst r , can be formulated as NBFirst r = NBFirst × (1 − pBundle ) × (1 − pCA ) = NBundle × (1 − pBundle ) × (1 − pCA ) .

n r

= NBFirst − NBFirst

r

(6)

As discussed, a bundle is retransmitted if its corresponding CA has not been received when the bundle retransmission timeout (RTO) timer expires. Therefore, in the second transmission effort, the number of bundles to resend is equal to the number of bundles not released in the first transmission effort. If defined as NBSecond , it should be NBSecond = NBFirst n r = NBundle − NBundle × (1 − pBundle ) × (1 − pCA ) = NBundle × [1 − (1 − pBundle ) × (1 − pCA )] . (7) Similarly, in the second transmission effort, the number of bundles that is successfully released can be formulated as NBSecond r = NBSecond × (1 − pBundle ) × (1 − pCA ) = NBundle × [1 − (1 − pBundle ) × (1 − pCA )] (8) × (1 − pBundle ) × (1 − pCA ) . Accordingly, the number of bundles that is not released in the second transmission effort because of losses of bundles and CAs can be written as NBSecond

n r

= NBSecond − NBSecond r .

NBThird = NBSecond n r = NBundle × [1 − (1 − pBundle ) × (1 − pCA )]2 (10) Accordingly, the number of bundles that is released in the third transmission effort, NBThird r , can be derived NBThird r = NBThird × (1 − pBundle ) × (1 − pCA ) = NBundle × [1 − (1 − pBundle ) × (1 − pCA )]2 (11) × (1 − pBundle ) × (1 − pCA ) . Therefore, in the ith transmission effort, the number of bundles to send can be formulated as NBith = NB(i−1)th − NB(i−1)th r = NBundle × [1 − (1 − pBundle ) (1 − pCA )]i−1 . (12) The number of bundles that is released in the ith transmission effort, defined as NBith r , should be NBith r = NBith × (1 − pBundle ) × (1 − pCA ) = NBundle × [1 − (1 − pBundle ) × (1 − pCA )]i−1 (13) × (1 − pBundle ) × (1 − pCA ) . In the (n + 1)th transmission effort, if NB(n+1)th < 1

(5)

Accordingly, the number of bundles that is not released in the first transmission effort because of losses of bundles and CAs, defined as NBFirst n r , can be written as NBFirst

In the third transmission effort, the number of bundles to send, defined asNBThird , can be written as

(9)

(14)

then n is the last transmission effort. In other words, it took n transmission efforts for successful delivery of the entire file. B. Modeling Data Delivery Time

With the number of transmission rounds derived, the total data delivery time can be estimated. Denote the total propagation time involved for transmission of all the bundles and CAs as TProp_total , the total transmission time of the bundles as TTrans_total , and the duration of link disruption as TBreak . In the presence of extremely long one-way signal propagation delay and long link disruptions, the processing delay and queue delay can be simply ignored. Then, the expected total file delivery time, TFile , of BP for transmission in deep-space communication can be formulated as TFile = TProp

total

+ TTrans

total

+ TBreak .

(15)

1) Total Propagation Time, TProp total : As discussed, under the assumption of independent bit errors, the probability that a given bundle is successfully transmitted is independent from the transmission success probability of other bundles. Denote the length of retransmission timeout interval for each bundle as RTO and the one-way propagation time as TOWLT . Given that n is the number of transmission efforts experienced for successful delivery of all bundles of the file, the propagation time for all propagation except the last transmission round should be RTO × (n − 1). The propagation time of the bundle(s) transmitted in the last transmission round (generally with

ZHAO ET AL.: BUNDLE PROTOCOL FOR DEEP-SPACE COMMUNICATIONS

2351

the transmission of last acknowledgment excluded) is TOWLT . Then, the total propagation time experienced for successful delivery of all the bundles, TProp total , can be formulated as TProp

total

= RTO × (n − 1) + TOWLT

(16)

2) Total Transmission Time of Bundles, TTrans total : Bundles are transmitted continuously and the relative time between them is unchanged, including retransmission scenarios. Each of them contains time stamp. The RTO in (16) is actually the same time length for all the bundles in practical data transmission. In other words, the RTO for any bundle can be considered as the RTO for the entire source file. For the sake of analysis simplicity, we assume that the RTO in (16) is for the first bundle to be transmitted. Then, the transmission time (or the time slots) for the first bundle in every transmission effort needs to be included in the total transmission time; it is equal to (n × TTrans bundle ) in which TTrans bundle is the transmission time for the first bundle. TTrans bundle is actually the transmission time for any individual bundle because of the constant bundle length. Provided that the bundle length is defined as LBundle with overhead size of LOverhead , the bundle transmission time can be easily calculated as TTrans

bundle

LBundle + LOverhead = RData

(17)

in which RData is the data channel rate. Another part of the transmission time is the time associated with retransmission of the bundle(s) in the last transmission round (with the first bundle excluded). Although more than one bundle can be resent in the last round, this transmission time can be calculated with respect to the last bundle resent in this round. However, the last bundle, which needs to be resent in the last round, can be any bundle of the source file because of randomness of ⎡ TFile = RTO × (n − 1) + TOWLT + ⎣n ×

+

⎧ ⎨

1 ⎩ NBundle

NBundle −1

2352

average

=

1 NBundle

×

i=0

total

= (n × TTrans bundle ) + TTrans average   LBundle + LOverhead = n× RData   NBundle −1 i× (LBundle + LOverhead ) 1 . × + NBundle RData i=0 (19)

Plugging all the time components of (16) and (19) into (15), the expected file delivery time of the protocol over deep-space channel in the presence of link disruptions can be written as TFile = TProp

+ TBreak   LBundle + LOverhead = RTO × (n − 1) + TOWLT + n × RData   NBundle −1  i × (LBundle + LOverhead ) 1 +TBreak . × + NBundle RData i=0 total

+ TTrans

total

(20) For the performance modeling of data delivery with a protocol stack of BP/UDPCL/UDP/IP proposed in this work, if bundle fragmentation is involved at IP layer, the expected bundles delivery time can be formulated as

LBundle LIP-Packet



× (LIP-Head + LLink-Head )

RData

⎫  ⎬ ) (L × i × LBundle + LUDP-Head + LLIPBundle + L IP Head Link Head -Packet RData

i=0

NBundle −1

TTrans

LBundle + LUDP-Head +

bundles and CAs losses. Therefore, an average approach is taken to estimate the transmission time associated with the last transmission round. The average transmission time elapsed to resend the last bundle (including the time waited until its transmission slot) in the last round, defined as TTrans average , can be formulated as TTrans

In (18), NBundle is defined as the total number of bundles that comprises the source file, and (NBundle − 1) refers to the number of the bundles possibly resent in the last round except the first bundle. The transmission time of the first bundle is already included in the first part of the transmission time, i.e., n × TTrans bundle . With both parts of the transmission time derived, the total transmission time involved for all the bundles of the entire file, TTrans_total , can be formulated as

i × (LBundle + LOverhead ) . RData (18)



⎤ ⎦

+ TBreak .

(21)

C. Modeling Memory Occupancy and Release During Data Transmission

In this subsection, we build a model to analyze memory occupancy of BP/UDPCL in transmission of a file over deep-space channel in the presence of link disruptions. For this purpose, we assume that the source of the transmitted file is a rover on a planetary surface, the destination is an Earth ground station, and all data must be relayed to Earth by an orbiting satellite in relatively close proximity to the rover.

IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. 52, NO. 5 OCTOBER 2016

Assume that link disruption occurs during the kth transmission effort from the orbiter (over the deepspace link) and define t as the time length since the relay orbiter starts receiving data from the source node (Mars lander). 1) Prior to Link Disruption, i.e., 0 < t ≤ (k − 1) × RT T : Given that the data channel rate is RData , it will take LFile /RData seconds to transmit the entire file from Mars lander to the orbiter over the Mars proximity data File link. In other words, for 0 ≤ t≤ RLData , the total volume of memory (in bytes) occupied by the file at the orbiter at the time of t should be Mt = RData × t. After each bundle arrives at its destination on Earth, the relay orbiter releases the memory occupied by that bundle following receipt of the corresponding CA (i.e., after one RTT since transmission of the bundle). Given that the number of bundles to be released from the memory in the ith transmission effort is defined as NBith r , the volume of memory released after  RTt T  transmission  RTt T   NBith r × LBundle . Thus, the volume of rounds is i=0

k−1 

NBith r × LBundle . Therefore, the memory occupied at

i=0

time t for (k − 1) × RT T < t ≤ (k − 1) × RT T + TBreak should be

Mt = LFile −

Mt = LFile −

NBith r × LBundle .

(22)

i=0

⎧ RData × t ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ t ⎪  RT ⎪ T  ⎪ ⎪ ⎪ NBith r × LBundle LFile − ⎪ ⎪ ⎪ i=0 ⎪ ⎨ Mt = k−1  ⎪ ⎪ − NBith r × LBundle L File ⎪ ⎪ ⎪ i=0 ⎪ ⎪ ⎪ ⎪   ⎪ t−TBreak ⎪ ⎪ RT T ⎪  ⎪ ⎪ ⎩ LFile − NBith r × LBundle

NBith r × LBundle .

(23)

i=0

3) After Link Disruption, i.e., (k − 1) × RT T + TBreak < t ≤ n × RT T + TBreak : After link disruption ends, data transmission and memory release resume. The memory Break released after  t−T  transmission rounds should be RT T 

t−TBreak RT T





NBith r × LBundle . Similarly, the volume of

i=0

memory occupied by the bundles of the file at time t is the Break remaining part of the memory after  t−T  times of RT T memory release. Therefore, for (k − 1) × RT T + TBreak < t ≤ n × RT T + TBreak , the memory occupied at time t after link disruption should be

memory at the relay orbiter still occupied by data bundles at time t should be the remaining part of the memory after  RTt T  times of memory release. Therefore, for LFile < t ≤ (k − 1) × RT T , the volume of memory RData occupied by the bundles at the relay orbiter at time t should be t  RT T 

k−1 



Mt = LFile −

t−TBreak RT T





NBith r × LBundle .

(24)

i=0

Based on the previous discussion, for k = 2, 3 . . . n, where n is the total transmission efforts experienced for file delivery, the total volume of memory occupied by the bundles of the file at the orbiter at time t can be written in a closed form as

0