Report Concerning Space Data System Standards CCSDS FILE DELIVERY PROTOCOL (CFDP) PART 1: INTRODUCTION AND OVERVIEW INFORMATIONAL REPORT
|
|
|
- Shona Warner
- 10 years ago
- Views:
Transcription
1 Report Concerning Space Data System Standards CCSDS FILE DELIVERY PROTOCOL (CFDP) PART 1 INTRODUCTION AND OVERVIEW INFORMATIONAL REPORT CCSDS G-3 GREEN BOOK April 2007
2 AUTHORITY Issue Informational Report, Issue 3 Date April 2007 Location Washington, DC, USA This document has been approved for publication by the Management Council of the Consultative Committee for Space Data Systems (CCSDS) and reflects the consensus of technical panel experts from CCSDS Member Agencies. The procedure for review and authorization of CCSDS Reports is detailed in the Procedures Manual for the Consultative Committee for Space Data Systems. This document is published and maintained by CCSDS Secretariat Office of Space Communication (Code M-3) National Aeronautics and Space Administration Washington, DC 20546, USA CCSDS G-3 Page i April 2007
3 FOREWORD This document is a CCSDS Report, which contains background and explanatory material to support the CCSDS Recommended Standard, CCSDS File Delivery Protocol (reference [1]). Through the process of normal evolution, it is expected that expansion, deletion, or modification to this Report may occur. This Report is therefore subject to CCSDS document management and change control procedures, which are defined in reference [2]. Current versions of CCSDS documents are maintained at the CCSDS Web site http// Questions relating to the contents or status of this report should be addressed to the CCSDS Secretariat at the address on page i. CCSDS G-3 Page ii April 2007
4 At time of publication, the active Member and Observer Agencies of the CCSDS were Member Agencies Agenzia Spaziale Italiana (ASI)/Italy. British National Space Centre (BNSC)/United Kingdom. Canadian Space Agency (CSA)/Canada. Centre National d Etudes Spatiales (CNES)/France. Deutsches Zentrum für Luft- und Raumfahrt e.v. (DLR)/Germany. European Space Agency (ESA)/Europe. Federal Space Agency (Roskosmos)/Russian Federation. Instituto Nacional de Pesquisas Espaciais (INPE)/Brazil. Japan Aerospace Exploration Agency (JAXA)/Japan. National Aeronautics and Space Administration (NASA)/USA. Observer Agencies Austrian Space Agency (ASA)/Austria. Belgian Federal Science Policy Office (BFSPO)/Belgium. Central Research Institute of Machine Building (TsNIIMash)/Russian Federation. Centro Tecnico Aeroespacial (CTA)/Brazil. Chinese Academy of Space Technology (CAST)/China. Commonwealth Scientific and Industrial Research Organization (CSIRO)/Australia. Danish Space Research Institute (DSRI)/Denmark. European Organization for the Exploitation of Meteorological Satellites (EUMETSAT)/Europe. European Telecommunications Satellite Organization (EUTELSAT)/Europe. Hellenic National Space Committee (HNSC)/Greece. Indian Space Research Organization (ISRO)/India. Institute of Space Research (IKI)/Russian Federation. KFKI Research Institute for Particle & Nuclear Physics (KFKI)/Hungary. Korea Aerospace Research Institute (KARI)/Korea. MIKOMTEK CSIR (CSIR)/Republic of South Africa. Ministry of Communications (MOC)/Israel. National Institute of Information and Communications Technology (NICT)/Japan. National Oceanic & Atmospheric Administration (NOAA)/USA. National Space Organization (NSPO)/Taipei. Space and Upper Atmosphere Research Commission (SUPARCO)/Pakistan. Swedish Space Corporation (SSC)/Sweden. United States Geological Survey (USGS)/USA. CCSDS G-3 Page iii April 2007
5 DOCUMENT CONTROL Document Title Date Status CCSDS G-1 CCSDS File Delivery Protocol (CFDP) Part 1 Introduction and Overview January 2002 Original issue, superseded CCSDS G-2 CCSDS File Delivery Protocol (CFDP) Part 1 Introduction and Overview September 2003 Issue 2, superseded CCSDS G-3 CCSDS File Delivery Protocol (CFDP) Part 1 Introduction and Overview, Informational Report, Issue 3 April 2007 Current issue CCSDS G-3 Page iv April 2007
6 CONTENTS Section Page 1 INTRODUCTION PURPOSE SCOPE ORGANIZATION OF THIS REPORT CONVENTIONS AND DEFINITIONS REFERENCES SUMMARY AND OVERVIEW BACKGROUND OPERATIONAL CONTEXT DESIGN CONCEPT ARCHITECTURE ELEMENTS PROTOCOL OPERATIONS PROTOCOL RELIABILITY OPTIONS PRIMITIVES, PDUS, AND PIPES EXAMPLE CONFIGURATIONS OVERVIEW FILE DELIVERIES ANNEX A THE CFDP INTER-AGENCY TEST PROGRAM... A-1 ANNEX B ABBREVIATIONS AND ACRONYMS...B-1 Figure 1-1 Bit Numbering Convention Octet Convention Core and Extended Capabilities The CFDP Operates over a Wide Range of Underlying Protocols Core and Extended Interactions The CFDP Operates Over a Wide Range of Underlying Protocols Architectural Elements of the File Delivery Protocol Possible Virtual Filestore Structure Pipe Diagram Extended Procedure Unreliable Service Mode CCSDS G-3 Page v April 2007
7 CONTENTS (continued) Figure Page 2-8 Deferred NAK Mode Immediate NAK Mode Prompted NAK Mode Asynchronous NAK Mode Time-out Triggered NAK Retransmission Time-out Triggered EOF and Finished Retransmissions Request Primitives, PDUs, and Primitives Operational View CFDP Pipe Diagram Pipe Diagram Example of Relay Example Configuration Example Configuration 1a Unreliable Download Reliable Download Reliable Upload Two Party Proxy (Get) Example Mission Configuration 2 (Three Party Proxy) Three Party Proxy Example Mission Configuration Unreliable Download via One Waypoint Reliable Download via One Waypoint Reliable Upload via One Waypoint Table 2-1 CFDP Service Primitives Abbreviations CCSDS G-3 Page vi April 2007
8 1 INTRODUCTION 1.1 PURPOSE This Report is an adjunct document to the Consultative Committee for Space Data Systems (CCSDS) Recommended Standard for File Delivery Protocol (reference [1]), and it contains material that will be helpful in understanding the primary document. This Report will assist decision-makers and implementers with evaluating the applicability of the protocol to mission needs, as well as with making implementation, option selection, and configuration decisions related to the protocol. 1.2 SCOPE This Report provides supporting descriptive and tutorial material. This document is not part of the Recommended Standard. In the event of conflicts between this Report and the Recommended Standard, the Recommended Standard shall prevail. 1.3 ORGANIZATION OF THIS REPORT This Report is divided into two parts. The first part (this document) provides an introduction to the concepts, features, and characteristics of the CCSDS File Delivery Protocol (CFDP). It is intended for an audience of persons unfamiliar with the CFDP or related protocols. This Report contains three sections and three annexes, as follows a) section 1, Introduction; b) section 2, Summary and Overview (of the CFDP); c) section 3, Example Configurations (i.e., possible configurations using the protocol); d) annex A, The CFDP Inter-Agency Test Program, which proved to be a valuable tool in the development of the CFDP; e) annex B, Abbreviations and Acronyms. The second part of this Report (reference [3]) is an implementers guide. It provides information to assist implementers in understanding the details of the protocol and in the selection of appropriate options, and contains suggestions and recommendations about implementation-specific subjects. The second part also contains implementation reports from various member Agencies, and the requirements upon which the CFDP is based. CCSDS G-3 Page 1-1 April 2007
9 1.4 CONVENTIONS AND DEFINITIONS BIT NUMBERING CONVENTION AND NOMENCLATURE In this document, the following convention is used to identify each bit in an N-bit field. The first bit in the field to be transmitted (i.e., the most left-justified when drawing a figure) is defined to be Bit 0 ; the following bit is defined to be Bit 1 and so on, up to Bit N-1. When the field is used to express a binary value (such as a counter), the Most Significant Bit (MSB) shall be the first transmitted bit of the field, i.e., Bit 0, as shown in figure 1-1. BIT 0 BIT N-1 N-BIT DATA FIELD FIRST BIT TRANSMITTED = MSB Figure 1-1 Bit Numbering Convention In accordance with modern data communications practice, spacecraft data fields are often grouped into 8-bit words that conform to the above convention. Throughout this Report, the nomenclature shown in figure 1-2 is used to describe this grouping. 8-BIT WORD = OCTET Figure 1-2 Octet Convention By CCSDS convention, all spare bits shall be permanently set to value zero DEFINITIONS Within the context of this document the following definitions apply A file is a bounded or unbounded named string of octets that resides on a storage medium. A filestore is a system used to store files; CFDP defines a standard virtual filestore interface through which CFDP accesses a filestore and its contents. A CFDP protocol entity (or CFDP entity) is a functioning instance of an implementation of the CFDP protocol, roughly analogous to an Internet protocol host. Each CFDP entity has CCSDS G-3 Page 1-2 April 2007
10 access to exactly one filestore. Each entity also maintains a Management Information Base (MIB), which contains such information as default values for user communications requirements, e.g., for address mapping, and for communication timer settings. The functional concatenation of a file and related metadata is termed a File Delivery Unit (FDU); in this context the term metadata is used to refer to any data exchanged between CFDP protocol entities in addition to file content, typically either additional application data (such as a message to user ) or data that aid the recipient entity in effectively utilizing the file (such as file name). Note that an FDU may consist of metadata only. Note also that the term file is frequently used in this document as an abbreviation for file delivery unit ; only when the context clearly indicates that only actual files are being discussed should the term file not be read as file delivery unit. The individual, bounded, self-identifying items of CFDP data transmitted between CFDP entities are termed CFDP Protocol Data Units or CFDP PDUs. Unless otherwise noted, in this document the term PDU always means CFDP PDU. CFDP PDUs are of two general types File Data PDUs convey the contents of the files being delivered, while File Directive PDUs convey only metadata and other non-file information that advances the operation of the protocol. A transaction is the end-to-end transmission of a single FDU between two CFDP entities. A single transaction normally entails the transmission and reception of multiple PDUs. Any single end-to-end file transmission task has two associated entities the entity that has the file at the beginning of the task (the source), and the entity that has a copy of the file when the task is completed (the destination). Each end-to-end file transmission task includes a point-to-point file copy operation. Any single file copy operation has two associated entities the entity that has a copy of the file at the beginning of the operation (the sender) and the entity that has a copy of the file when the operation is completed (the receiver). Each end-to-end file transmission task includes one or more point-to-point file copy operations. Any single point-to-point file copy operation has two associated entities the sender and the receiver. The sender is the entity that has a (possibly temporary) copy of the file at the beginning of the operation. The receiver is the entity that has a (possibly temporary) copy of the file when the operation is completed. In the simplest case, the only sender of the file is the source, and the only receiver is the destination. In more complex cases (the general case), there are additional waypoint entities that receive and send copies of the file; the source is the first sender and the destination is the last receiver. The term CFDP user is used to refer to the software task that causes the local entity to initiate a transaction or the software task that is notified by the local entity of the progress or completion of a transaction. The CFDP user local to the source entity is referred to as the source CFDP user. The CFDP user local to the destination entity is referred to as the destination CFDP user. The CFDP user may be operated by a human or by another software process. Unless otherwise noted, the term user always refers to the CFDP user. CCSDS G-3 Page 1-3 April 2007
11 A message to user (or user message) allows information related to a transaction to be delivered to the destination user, in synchronization with the transaction. A filestore request is a request to the remote filestore for service (such as creating a directory, deleting a file, etc.) at the successful completion of a transaction. Service primitives form the software interface between the CFDP user and its local entity. The user issues request service primitives to the local entity to request protocol services, and the local entity issues indication service primitives to the user to notify it of the occurrence of significant protocol events. 1.5 REFERENCES The following documents are referenced in the text of this Report. At the time of publication, the editions indicated were valid. All documents are subject to revision, and users of this Report are encouraged to investigate the possibility of applying the most recent editions of the documents indicated below. The CCSDS Secretariat maintains a register of currently valid CCSDS Recommended Standards. [1] CCSDS File Delivery Protocol (CFDP). Recommendation for Space Data System Standards, CCSDS B-3. Blue Book. Issue 3. Washington, D.C. CCSDS, June [2] Procedures Manual for the Consultative Committee for Space Data Systems. CCSDS A00.0-Y-9. Yellow Book. Issue 9. Washington, D.C. CCSDS, November [3] CCSDS File Delivery Protocol (CFDP) Part 2 Implementers Guide. Report Concerning Space Data System Standards, CCSDS G-3. Green Book. Issue 3. Washington, D.C. CCSDS, January CCSDS G-3 Page 1-4 April 2007
12 2 SUMMARY AND OVERVIEW 2.1 BACKGROUND In recent years, CCSDS has concentrated on providing flexible and efficient transfer protocols for various data over space links. The basic CCSDS suite solves the data transfer problems for current missions in which the manipulation of onboard storage tends to be handled manually, or by ad hoc protocols developed privately. While this is an acceptable way of managing a limited amount of memory, with the rapid development and take-up of solid state mass memory this is no longer the case. The availability of gigabytes of solid state memory leads to a new era of spacecraft operation, where much of the routine traffic to and from the spacecraft will be in the form of files. Furthermore, because of the random access nature of the onboard storage medium, it becomes possible to repeat transmission of data lost on the link and thus guarantee delivery of critical information. Drivers Toward CFDP Spacecraft now use mass memory with very large data files. For cost reasons, the trend is toward more autonomous operation whereby the spacecraft decides (for example) when it should download stored data and when it should upload new operational plans. Interoperability within and among Agencies, and between space-ground networks (e.g., toward interoperability with the ground-based Internet) is becoming increasingly important as economic considerations require consolidation of networks. Some of the new deep space missions do not have direct line of sight between Earth and final destination; rather, data must be relayed between a series of spacecraft, each providing a store-and-forward capability, until the final destination is reached. Spacecraft constellations (e.g., fixed or formation-flying) require efficient and reliable data file transfer, possibly through multi-paths. The increasing onboard use of real-time operating systems (such as VxWorks and RTEM), which assume the presence of a file system, make onboard data handling increasingly file-oriented. CCSDS G-3 Page 2-1 April 2007
13 While the onboard storage medium has rapidly evolved, the essential constraints of space missions remain. Mission Constraints Systems resources that may be restricted in one or both of the entities involved in an endto-end data transfer may include computational power and memory capacities, driven by the need for expensive parts qualification, as well as the need to limit power, weight, and volume in the remote end system. Environmental restrictions may include noisy, bandwidth-limited, asymmetrical, and interrupted communications links with very long propagation delays. User needs often include a requirement for early access to transferred data regardless of its quality, as well as a method of providing data of progressively increased quality. In response to these factors, the CFDP has been developed to complement the existing CCSDS packet standards. What is CFDP? CFDP provides the capability to transfer files to and from a spacecraft mass memory. The content of the files may be anything from a conventional timeline update to an unbounded SAR image. Files can be transferred reliably, where it is guaranteed that all data will be delivered without error, or unreliably, where a best effort delivery capability is provided. Files can be transmitted with a unidirectional link, a half-duplex link, or a full-duplex link, with near-earth and deep space delays. File transfer can be triggered automatically or manually. NOTE CFDP was designed to support the transfer of true files stored in a true file system. However, because CFDP is based on the concept of an abstract virtual filestore (which in practice might be implemented in ways that are wholly unlike conventional file systems ), and because the CFDP specification does not define exactly what a file is, the protocol can in practice be used to convey blocks of data between repositories that may not look like file systems. Such use, however, is a private matter within the using organization and should be defined by a local technical note or agreement among the using parties. CCSDS G-3 Page 2-2 April 2007
14 The CFDP has many unique characteristics compared to terrestrial file transfer protocols. Distinctive Features of CFDP Compared to Terrestrial File Transfer Protocols Efficient operation over simplex, half-duplex, and full-duplex links. Transfers that can span ground station contacts (time disjoint connectivity). Transfers that can span multiple ground stations. Effectiveness over highly unbalanced link bandwidths. Minimization of link traffic. Data availability to the user as the file is received. Minimization of onboard memory requirements through buffer sharing. Operation through multiple intermediaries (multiple hops). End-to-end accountability even through multiple store-and-forward intermediaries. Automatic store-and-forward operation. Store-and-forward initiation before the file is completely received at the forwarding entity. Effectiveness spanning low Earth orbit and deep space. 2.2 OPERATIONAL CONTEXT The CFDP enables the moving of a file from one filestore to another, where the two filestores are in general resident in separate data systems and often with an intervening space link. In addition to the purely file delivery-related functions, the protocol also includes file management services to allow control over the storage medium. In its simplest form, the protocol provides a Core file delivery capability operating across a single link. For more complex mission scenarios, the protocol offers Extended operation providing store-and-forward functionality across an arbitrary network, containing multiple links with disparate availability, as well as subnetworks with heterogeneous protocols. See figure 2-1. CCSDS G-3 Page 2-3 April 2007
15 Core (Point-to-Point) Functionality Extended (Store and Forward) Functionality Figure 2-1 Core and Extended Capabilities The protocol is independent of the technology used to implement data storage and requires only a few fundamental filestore capabilities in order to operate. It assumes a minimum of two filestores, typically one within the spacecraft and one on the ground, and operates by copying data between the two adjacent filestore locations. The protocol makes no assumptions about the information being transferred and can be utilized for a wide range of applications involving the loading, dumping, and control of spacecraft storage. The protocol has been specifically designed to minimize the resources required for operation. It is also scaleable, so that only those elements required to fulfill the selected options need be implemented. The protocol can operate over a wide range of underlying communication services, specifically including CCSDS packet services. See figure 2-2. CCSDS G-3 Page 2-4 April 2007
16 Proximity-1 Proximity-1 CCSDS AOS VCDU Service CFDP Procedures CCSDS Packet Service CCSDS TM/TC Frames Physical Channel SCPS Transport Protocol SCPS Network Protocol TCP Ethernet IP UDP PPP Figure 2-2 The CFDP Operates over a Wide Range of Underlying Protocols 2.3 DESIGN CONCEPT As depicted in figure 2-3, the protocol consists of Core procedures and Extended procedures. The Core procedures constitute the interaction between two protocol entities with a direct network path between them. The sending entity is the entity from which the file is copied in a file copy operation. The receiving entity is the entity to which the file is copied in a file copy operation. CFDP User Extended (Store and Forward) Procedures CFDP User Protocol Entity Core Copy Procedures Protocol Entity Core Copy Procedures Protocol Entity Network Figure 2-3 Core and Extended Interactions Where direct network connectivity between the source and destination is impossible, the Extended procedures automatically build an end-to-end file copy transaction by executing multiple file copy operations, as follows one file copy operation between the source and the first waypoint; others between successive waypoints as necessary; and a final file copy operation between the last waypoint and the destination. Each of these is simply another instance of the Core file copy operation. The reliability of a transaction is determined by whether the transaction is chosen to operate in unacknowledged mode or in one of the CCSDS G-3 Page 2-5 April 2007
17 acknowledged modes. In unacknowledged mode data delivery failures are not reported to the sender and, therefore, cannot be repaired, although errors will be detected and erroneous data discarded. Reception of the complete file is therefore not guaranteed. In acknowledged mode, the receiver informs the sender of any undelivered file segments or ancillary data. These are then retransmitted, guaranteeing complete file delivery. Each transaction results in the copying of a single file from source to destination. When the Extended procedures are operating, the sender or receiver of a given PDU may be a waypoint CFDP entity. Extended procedures are used when the original source of the PDU has no direct connectivity to the PDU s final destination, but only to some intermediate entity. The waypoint entity in turn may have direct connectivity either to the PDU s final destination or only to some further intermediate entity; the last waypoint entity in such a chain must have direct connectivity to the final destination of the PDU. All such scenarios as described above force each end-to-end transmission to entail a series of two or more point-to-point exchanges of data. For this purpose, the CFDP architecture is extended as follows A Store-and-Forward Overlay (SFO) system is added to user applications as a standard user operation. The user application at each relay point examines each incoming file and, if the accompanying metadata indicates that the file s final destination is elsewhere, initiates another point-to-point file transmission either to the final destination or to another relay point that is farther along the route. Extended procedures are added to CFDP itself. The CFDP entity at each relay point checks the final destination of each incoming file and, if necessary, initiates another point-to-point transmission toward that destination; the file is never delivered to the user application at any relay point. The Extended Procedures and the store-and-forward overlay are alternatives, and it is not necessary that both be implemented, although such implementation is acceptable. Extended Procedures might be selected, for example, if it is desirable that portions of a file be forwarded by a waypoint immediately upon receipt, rather than only upon receipt of the entire file. This can get the initial parts of a file delivered to the final destination sooner than under SFO, even though final reception of the entire file at the final destination should take about the same length of time either way. Conversely, if detailed reporting on transaction status is required and there is more than one waypoint in the transaction path, then the storeand-forward overlay system might be preferred. It is expected that in deep space use, a pair of CFDP entities that have files to exchange may at any given moment be unable to communicate; for example, a spacecraft orbiting Mars may be on the far side of the planet, unable to transmit to Earth. For this reason CFDP, when using store-and-forward overlay or Extended procedures, is built entirely on a store and forward communication model. If transmission of a file from Earth to a Mars-orbiting spacecraft is interrupted when the spacecraft passes behind the planet, the CFDP entities at both ends of the transmission simply store their outbound Protocol Data Units (PDUs) possibly in non-volatile memory, to assure continued service even in the event of an unplanned system reset until the spacecraft re-emerges and transmission can resume. A CCSDS G-3 Page 2-6 April 2007
18 collateral benefit of this model is that it largely insulates user applications from the state of the communication system an instrument can record an observation in a file and transmit it (that is, submit it to CFDP for transmission) to Earth immediately without considering whether or not physical transmission is currently possible. By sequestering outbound data management and transmission planning functions within CFDP, this deferred transmission can simplify flight and ground software and thereby reduce mission costs. Using powerful forward error correction coding can minimize data loss in communication across deep space but cannot eliminate it altogether. Consequently CFDP supports optional acknowledged modes of operation in which data loss is automatically detected and retransmission of the lost data is automatically requested. However, the large signal propagation delays that characterize interplanetary transmission limit the usefulness of the retransmission strategies commonly used in terrestrial protocols. For example, delaying the transmission of PDU N until an acknowledgment that PDU N - 1 (or even PDU N - 100) has been received would significantly retard data flow if the round trip time on the link exceeded the time required to radiate the PDU(s) for which acknowledgment is required. For this reason, CFDP s retransmission model is one of concurrent transmission data PDUs for multiple files may be transmitted as rapidly as possible, one after another, without waiting for acknowledgment, and requests for retransmission are handled asynchronously as they are received. As a result, portions of multiple files may be in transit concurrently. The determination of how and when a waypoint entity forwards a PDU toward its target entity is an implementation matter. In general it is desirable to forward each PDU as soon as possible, rather than wait until custody of an entire FDU has been taken before forwarding any part of it; this approach minimizes the time required for complete end-to-end transmission of the data. In practice, however, immediate forwarding will frequently be impossible, because radio contact among CFDP entities is typically discontinuous. The waypoint entity in such cases must store PDUs in some persistent medium, such as an intermediate copy of the transmitted file, until forwarding is practical. CCSDS G-3 Page 2-7 April 2007
19 2.4 ARCHITECTURE ELEMENTS GENERAL The architectural elements involved in the file delivery protocol are depicted in figure 2-4 and described in subsections through User Filestore Protocol Entity MIB Communication System Figure 2-4 Architectural Elements of the File Delivery Protocol As the figure indicates, each protocol entity has access to exactly one filestore and is accessed by exactly one user USER The protocol operates at the request of the CFDP user. The user interacts with the protocol using the service primitives. A CFDP user is always a software task, which may or may not be operated by a human. Each CFDP protocol entity has at most one user. In some instances a user may not be present; in particular, any entity that always functions solely as an Extended procedures waypoint (performing store-and-forward operations) need not have a user PROTOCOL ENTITY The protocol entity consists of implementations of the Core delivery procedures, which allow immediate file delivery and manipulation over a single network hop, and optionally the Extended procedures, which allow for time-disjunct or immediate delivery over a number of network hops with appropriate facilities for onward routing. A single service interface is presented to the user; the addition of the Extended procedures is evident in the quality of service and the multi-hop capability. CCSDS G-3 Page 2-8 April 2007
20 2.4.4 FILESTORE The protocol operates by copying files from storage medium to storage medium, and it is therefore assumed that all CFDP entities have access to a local storage capability. As the ways in which the storage capability is provided will vary, the protocol is built on the premise that any file or organized set of files (i.e., a filestore) can be described in terms of a single standard representation. This representation, called a Virtual Filestore, is assigned a standard set of attributes with which the protocol manages the file delivery process. This approach allows complete independence from the technology used to implement the filestore. In an implementation, the virtual filestore must be mapped to and from the actual hardware and software that constitute the real filestore. The virtual filestore has been defined to be as universal as possible while still resembling the interface provided to most real filestores. Therefore, the convergence function required to adapt real filestores to this model is easily realizable. Figure 2-5 shows an example of such a possible implementation structure. DRAM Array Filestore P h y s i c a l I n t e r f a c e Local File System Mapper Filestore Interface CFDP File Commands CFDP Entity Figure 2-5 Possible Virtual Filestore Structure To enable interoperability, the protocol assumes a minimum set of capabilities from the Virtual Filestore, but also provides an extensibility mechanism to support use of additional capabilities. The minimum required filestore capabilities are create file; delete file; deny file; rename file; append file; replace file; CCSDS G-3 Page 2-9 April 2007
21 create directory; remove directory; deny directory; list directory. In some circumstances, it is advantageous for the CFDP protocol to be able to recognize record boundaries within the file. If this option is to be used, the filestore must have the capability to make the distinction between such files and those that are to be treated as a stream of octets MANAGEMENT INFORMATION BASE To perform a file delivery, a significant amount of information must be passed by the local user to its local CFDP entity, and by the local CFDP entity to the remote CFDP entity. Typically, this data is static and is maintained by the CFDP entities as system tables, referred to as the Management Information Base (MIB). The MIB contains such information as default values for user communications requirements, e.g., for address mapping, and for communication timer settings. The MIB is formally defined as part of the protocol specification UNDERLYING COMMUNICATION SYSTEM The protocol assumes the availability of an underlying communication system to which all CFDP entities in a given CFDP addressing domain have access. In order that the protocol may operate over a wide range of implementations including CCSDS, Internet and Open Systems Interconnection (OSI) networks, the services required by the protocol have intentionally been kept as simple as possible. This underlying conceptual communication system is referred to as the Unitdata Transfer (UT) layer. Since only minimal network capabilities are assumed, services sometimes provided by the UT layer (such as transaction multiplexing, sequence auditing, and error detection) are provided by CFDP. It should be noted that although the CFDP protocol can operate over a service where data errors, data loss, and out-of-sequence delivery occur, it is not intended to compensate for networks where these effects are prevalent. Severe performance reductions will result if such an approach is taken. CCSDS G-3 Page 2-10 April 2007
22 2.5 PROTOCOL OPERATIONS SERVICE INTERFACE Service Primitives The software interface between the CFDP user and its local entity consists of two types of service primitives request primitives and indication primitives. The user issues request service primitives to the local entity to request protocol services, and the local entity issues indication service primitives to the user to notify it of the occurrence of significant protocol events. Each primitive has parameters that convey related information. Table 2-1 lists the five request primitives and twelve indication primitives that make up the CFDP user interface. Table 2-1 CFDP Service Primitives Request Primitives Put Cancel Suspend Resume Report Primitives Transaction Metadata-Recv File-Segment-Recv Suspended Resumed EOF-Sent Transaction-Finished Transfer-Consigned Report Fault Abandoned EOF-Recv When the Extended procedures are implemented, the sender and/or receiver of a given PDU may be a waypoint CFDP entity. Extended procedures are used when the original source of the PDU has no direct connectivity to the PDU s final destination, but only to some intermediate entity. That waypoint entity in turn may have direct connectivity either to the PDU s final destination, or only to some further intermediate entity; the last waypoint entity in such a chain must have direct connectivity to the final destination of the PDU. The end-to-end execution of a transaction may therefore comprise multiple successive executions of Core procedures between adjacent entities, some of which may be initiated by the Extended procedures themselves rather than by a CFDP user s invocation of services; when this is the case, the Extended procedures essentially take on the role of the CFDP user. However, this variation is invisible to the Core procedures, which operate in the same way at all times. When the sender for a Copy File procedure is the file s source entity, but the receiver is a waypoint rather than the file s destination entity, the sender issues a Transfer- Consigned.indication primitive when the file has been successfully copied to the adjacent CCSDS G-3 Page 2-11 April 2007
23 waypoint s filestore. This notifies the sending application that custody of the file has been transferred to the first waypoint; if the original file itself is being used as the sender s retransmission buffer, and is therefore protected from deletion or modification, it is now safe to end that protection. The Sender will then issue a Transaction-Finished.indication primitive as it receives notification of the entire end-to-end file transfer from the final destination entity. When the receiver of a Copy File procedure is a waypoint, it may or may not wait until the entire procedure is complete before beginning to copy the file to the destination (or next waypoint). Immediate (incremental) forwarding of the file has the desirable effect of minimizing delay in getting at least part of the file to the destination. The protocol specification contained in reference [1] formally defines the service primitives in detail; the remainder of this subsection gives a brief overview of the operation of the request primitives and their relation to the indication primitives that the protocol entities generate as a result The CFDP Transaction The transaction is the fundamental operation that the protocol performs to transfer user data between CFDP entities. Each transaction is the end-to-end transmission of a single FDU from a single source CFDP entity to a single destination CFDP entity. The entities communicate with each other using the PDU messages and procedures defined in the protocol specification. Each CFDP entity is identified by a unique entity ID. Each transaction is identified by a unique transaction ID that consists of the ID of the transaction s source entity and a transaction sequence number that the source entity assigns when it initiates the transaction. A transaction may transfer a file from the local filestore, and/or one or more user messages, and/or one or more filestore requests to the destination entity. User messages allow delivery of information related to a transaction in synchronization with the transaction; they are not intended for general-purpose messaging. CFDP defines a small number of reserved user messages to implement user operations transactions. Except for these reserved messages, the contents and meanings of user messages are not defined or constrained by the CFDP. There is an inactivity timer that, if there is a cessation of PDU reception for a given Transaction for the specified time period, causes the issuance of a Fault.indication to the local user. It takes no other action. That is, any further resulting action is not specified by the protocol, but is taken by the user in an implementation-specific manner. The user might try to restart or otherwise salvage the Transaction, abandon it, or take some other action appropriate to the implementation and operational configuration. The basic purpose of the timer is to handle situations that are outside of the protocol itself. Examples might be the crashing of the operating system in the other entity party to the ongoing Transaction, the extended failure of an intermediate communication link, etc. CCSDS G-3 Page 2-12 April 2007
24 Put Request The Put request is issued by the source entity to initiate a CFDP transaction; in fact, every transaction is the result of a Put request. The parameters of the request may contain all the information needed to specify the transaction, including destination entity ID, source and destination file names, messages to user and filestore requests to accompany the file transfer operation, and protocol options. If optional parameters are omitted, the entity supplies default values from the MIB. As a pure file delivery request, Put only allows the source user to send a file from its local filestore to a remote filestore. However, the ability to include user messages and filestore requests in a Put request enables the requesting user to initiate more complex operations, such as getting a file from the destination entity and then deleting it from the remote filestore. These capabilities are described in more detail in subsection When the source user issues a Put request, the local entity uses the request s parameters to build a metadata PDU that describes the transaction, and it assigns a unique transaction ID to be used in later service requests and indications related to the transaction. Since concurrent transactions may be active, the entity issues a Transaction indication to pass the ID back to the user. It then initiates transmission procedures to the destination entity Put Operations In CFDP procedures, the source entity sends the metadata (which contains any user messages and filestore requests) followed by any file data to the destination entity. Upon receipt of the metadata PDU, the destination entity creates and initializes the data structures it will use to track and control the transaction, retains any filestore requests for later use, and issues the Metadata-Recv indication to its user. The user then retrieves any user messages contained in the metadata, including Proxy and List Directory messages, acts on any of these two message types, and passes on any others in an implementation-specific manner. Upon receipt of each PDU containing file data, the destination entity optionally issues the File-Segment-Recv indication to its user. (When the source entity sends the EOF PDU for the file, it may optionally notify its user via an EOF-Sent indication. Likewise, when the destination entity receives the EOF PDU for the file, it may optionally notify its user via an EOF-Recv indication). If transfer of the entire FDU completes successfully, the destination entity then executes any filestore requests it originally saved from the metadata. Upon successful completion of the FDU transfer or, if there were any filestore requests, at the completion of any filestore requests, the destination entity sends a Finished PDU to the source entity, and may optionally issue a Transaction-Finished indication to its user. Upon receipt of the Finished PDU, the source entity issues a Transaction-Finished indication to its user. In both cases, the Transaction-Finished indication contains a condition code indicating completion status successful transfer of the complete FDU; CCSDS G-3 Page 2-13 April 2007
25 cancellation by the source or destination CFDP user; fault, including protocol error, filestore error, or inactivity. The Transaction-Finished indication also contains a completion status for each of the transaction s filestore requests, if any. NOTE It is possible for the source and destination CFDP entities of a transaction to be unable to communicate directly; in this case the transaction may entail a series of point-to-point (sender-to-receiver) PDU exchange sessions between the source and destination CFDP entities and one or more waypoint CFDP entities Cancel Request A cancel request may be issued at any time by either the source or destination entity of an ongoing transaction, or by any waypoint if extended procedures are in effect. The request propagates throughout all CFDP entities participating in the designated transaction, causing the immediate and unconditional cessation of all activities involved in the designated transaction, and eliminating it as an activity. The source and destination entities notify their users of the cancellation by issuing the Transaction-Finished indication with a condition code indicating cancellation Suspend Request A suspend request may be issued at any time by either the source or destination entity of an ongoing transaction, or by any waypoint if extended procedures are in effect. The suspend originating entity, if it is the FDU source entity, notifies its user of the suspension by issuing the Suspended indication Resume Request A resume request may be issued at any time by the entity that suspended the transaction, or by any waypoint if extended procedures are in effect. The resume originating entity, if it is the FDU source entity, notifies its user of the resumption by issuing the Resumed indication. When the resume responding entity is the FDU destination entity, it may optionally notify its user of the resumption by issuing the Resumed indication Report Request A report request about an ongoing transaction may be issued at any time by either the source or destination entity user; it causes the local CFDP entity to return a status report about the designated transaction in a report indication. CCSDS G-3 Page 2-14 April 2007
26 2.5.2 USER OPERATIONS Definition The term user operations refers to the use of the CFDP services offered by the local CFDP entity to cause the CFDP user of a remote CFDP entity to initiate additional CFDP transactions. User operations are implemented using the Message to User capability of the protocol to forward an order to the remote CFDP user, which will in turn initiate a transaction with its local CFDP entity. Six standard user operations are defined a) proxy operations; b) remote status report operations; c) remote suspend operations; d) remote resume operations; e) directory operations; f) store-and-forward overlay operations Proxy Operations Proxy operations are used to initiate the delivery of a file from a remote CFDP entity to some other user, either to the local user itself (in which case the proxy operation functions as a Get ) or to the user of some third CFDP entity. The FDU transmitted in a proxy operation normally contains a file but may contain only metadata, such as filestore directives or a Message to User containing an order to another remote CFDP user Remote Status Report Operations Remote status report operations are used to request a report of the status of a specified CFDP transaction at the remote entity Remote Suspend Operations Remote suspend operations are used to request the suspension of a specified transaction at the remote entity Remote Resume Operations Remote resume operations are used to request the resumption of a specified transaction at the remote entity. CCSDS G-3 Page 2-15 April 2007
27 Directory Operations Directory operations are used to request a listing of the contents of a specified directory in the remote user s local filestore Store-and-Forward Overlay Operations Store-and forward operations provide an alternative mechanism for transmitting files between users of CFDP entities that may never be in direct communication; this mechanism does not rely on implementation of the Extended Procedures. Each transmitted file is received, stored, and forwarded in a hop-by-hop manner by intermediate waypoint users (rather than intermediate waypoint CFDP entities, as in the Extended Procedures) until it finally reaches a user termed the agent, whose CFDP entity can directly communicate with that of the destination user. 2.6 PROTOCOL RELIABILITY OPTIONS GENERAL The quality of service offered by the protocol is selectable, according to mission requirements and transmission capability, and ranges from an unacknowledged option, whereby a file is transmitted with no attempt at completeness should errors occur (errors will be detected and data discarded), to a fully acknowledged option providing error recovery through retransmission. For the acknowledged mode of operation, several sub-options may be selected by the receiver. These sub-options relate to release time of any Negative Acknowledgments (NAK) and range from immediate release to deferred release (whereby any NAKs are stored until the assumed end of the transmission). The unacknowledged option is appropriate where two-way communication is not possible, where incomplete transmission is acceptable, or where the underlying communication mechanism already ensures reliable data transfer. The acknowledged sub-options share a common acknowledgment mechanism but use different strategies in making retransmission requests to optimize for different scenarios. For the acknowledged mode of operation, in the Extended Procedures, only the Deferred mode is allowed, whereby any necessary NAKs are transmitted only after the assumed end of the initial reception. See figure 2-6. CCSDS G-3 Page 2-16 April 2007
28 File Directory Proxy Applications Listing Requests Requests Messages File Store File Delivery Requests Requests File Data Reserved User Messages Messages to User Metadata PDU File Data PDU CFDP Extended Procedures CFDP Extended Procedures CFDP Extended Procedures CFDP Core Procedures CFDP Core Procedures CFDP Core Procedures UDP UDP CCSDS Path Service CCSDS Path Service CCSDS Path Service IP IP CCSDS VCDU Service CCSDS VCDU Service CCSDS VCDU Service Physical Channel Physical Channel Physical Channel Physical Channel Physical Channel Control Center Earth Ground Station Planetary Orbiter File Data File Delivery File Store Requests Requests Applications Proxy File Directory Messages Requests Listing Requests Reserved User Messages Messages to User File Data PDU Metadata PDU CFDP Extended Procedures CFDP Extended Procedures CFDP Core Procedures CFDP Core Procedures CCSDS Path Service CCSDS VCDU Service Physical Channel CCSDS Packet Service Proximity-1 Physical Channel CCSDS Packet Service Proximity-1 Physical Channel Planetary Lander Planetary Rover Figure 2-6 Pipe Diagram Extended Procedure This subsection contains sequence diagrams that illustrate how the protocol uses data transmission and protocol control PDUs to implement the various options available in the unreliable and reliable services. Table 2-2 defines the abbreviations used in the figures for various PDU types; the protocol definition in reference [1] defines the meaning and format of these PDUs in detail. In each file delivery operation, the sequence of events between the file sender and the file receiver is as shown. CCSDS G-3 Page 2-17 April 2007
29 Table 2-2 Abbreviations Abbr. M FD(n) NAK EOF FIN ACK PRMPT PDU Type metadata file data segment retransmission request end of file (sender to receiver) finished (receiver to sender) acknowledgment prompt UNRELIABLE SERVICE When unreliable service has been selected, the receiving entity makes no attempt to improve the quality (completeness) of the received file by transmitting information about missing data to the sending entity. That is, the file is sent in what amounts to a simplex mode in that there is only one-way communication, from the sender to the receiver. Figure 2-7 illustrates this mode. A file completion map identifying any missing portions of the file can optionally be delivered to the receiving user. If a CFDP implementation includes this option, it will provide the file completion map as part of the status message returned with the Transaction- Finished indication. Sender M FD(1) FD(2) Receiver FD(n) EOF) (close) (close) Figure 2-7 Unreliable Service Mode RELIABLE SERVICE Negative Acknowledgments and Acknowledgments When reliable service has been selected, the CFDP uses both Negative Acknowledgments (NAK) and Acknowledgments (ACK). NAKs are used to request retransmission of lost data. ACKs are used to ensure the receipt of EOF and Finished PDUs. Since lost data may still be outstanding after the EOF sequence, a Finished PDU is sent by the receiving entity when all file data has been successfully assembled. Delivery is ensured by requiring an ACK for the Finished PDU. CCSDS G-3 Page 2-18 April 2007
30 NAK procedures are utilized throughout the transmission. There are four user selectable options associated with the issuance of NAKs Deferred; Immediate; Prompted; Asynchronous. In the Deferred NAK mode, the receiving entity saves all information about missing data until the EOF is received. It then issues a NAK to request the missing data. An example is shown in figure 2-8. The deferred NAK mode may be appropriate where communicating entities are very loosely coupled, such as when interplanetary distances introduce very long light time delays. M FD(1) Sender X Receiver FD(2) FD(i) FD(last) X EOF ACK(EOF) NAK(M,FD(i)) M FD(i) FIN ACK(FIN) (close) (close) Figure 2-8 Deferred NAK Mode In the Immediate NAK mode, each discontinuity in the data detected at the receiving entity results in the immediate transmission of a NAK to the sending entity. Examples of this mode are shown in figure 2-9. The Immediate NAK mode is useful, for example, where the communicating entities are tightly coupled; it makes no attempt to control the number of NAK messages it uses, in return for maximizing completeness of the received portion of a file as the transfer progresses. CCSDS G-3 Page 2-19 April 2007
31 Sender Receiver Sender Receiver Sender Receiver M FD(1) M FD(1) X M FD(1) X FD(2) FD(3) FD(4) FD(2) X NAK(FD(2)) FD(2) M FD(last) NAK(M) FD(2) FD(last) EOF X NAK(M) NAK(M) FD(last) EOF ACK(FIN) (close) ACK(EOF) FIN (close) EOF ACK(FIN) (close) ACK(EOF) FIN (close) TM ACK(FIN) (close) ACK(EOF) FIN (close) Figure 2-9 Immediate NAK Mode In the Prompted NAK mode, the sending entity transmits a Prompt (NAK) message to the receiving entity telling it to send its NAK. When the receiving entity receives the Prompt (NAK), it sends any outstanding NAK. In response to a Prompt (NAK) when no data is missing, a CFDP NAK may be empty (that is, request the retransmission of no data). The EOF is treated as an inherent prompt and results in the receiving entity s sending a NAK if any data is missing. This mode is illustrated in figure The Prompted NAK mode allows the sending entity to control the frequency of NAK messages, which may be useful, for example, when the return link for sending NAKs is only occasionally available, or is very bandwidth-limited. CCSDS G-3 Page 2-20 April 2007
32 Sender Receiver M FD(1) X External event trigger FD(2) FD(i) FD(i+1) X PRMPT FD(i+2) NAK(M, FD(i)) M FD(i) FD(i+3) FD(last) EOF ACK(EOF) FIN ACK(FIN) (close) (close) Figure 2-10 Prompted NAK Mode In the Asynchronous NAK mode the receiving entity issues a NAK (if any data is missing) in response to some outside event; that is, the receiving entity is triggered by something outside of the CFDP to send any necessary NAK. Such an external event might for instance be the impending loss of the space-to-ground link. An example of this mode is shown in figure Like the Prompted NAK mode, the Asynchronous NAK mode also limits the frequency of NAK messages, but in this case the receiving entity has control. CCSDS G-3 Page 2-21 April 2007
33 Sender Receiver M FD(1) X FD(2) FD(i) FD(i+1) X external event trigger NAK(M, FD(i)) M FD(i) FD(i+m) FD(last) EOF ACK(EOF) FIN ACK(FIN) (close) (close) Figure 2-11 Asynchronous NAK Mode Timers Several timers are used in the reliable service processes. In each case in which a time-out capability is required, a timer is started upon issuance of the item. Upon receipt of the required response, the timer is disabled. If the required response is not received before the timer expires, the item is reissued. A count of the number of retransmissions is kept. If the preset limit of retransmissions is exceeded, a fault is declared. In reliable service, within the file copying process timers are invoked for the EOF, the EOFtriggered NAK, and finished (FIN) transmissions. The operation of the NAK time-out is illustrated in figure A NAK timer is started upon the issuance of the EOF-triggered NAK (which requests (re)transmission of all file data not yet received). Note that previous individual NAKs are not acknowledged. When the timer expires, the receiving entity again determines whether or not any of the transaction s file data or metadata have yet to be received. If any file data gaps or missing metadata remain, normally a NAK is issued and the timer is reset. The operation of the end-of-file and finished time-outs is shown in figure 2-13, parts (a) and (b), respectively. CCSDS G-3 Page 2-22 April 2007
34 Sender Receiver M FD(1) FD(2) X FD(3) FD(4) FD(5) X NAK(FD(1)) FD(last) EOF ACK(EOF) NAK(FD(1)) FD(1) timeout X NAK(FD(1)) FD(1) FIN ACK(FIN) (close) (close) Figure 2-12 Time-out Triggered NAK Retransmission Sender Receiver Sender Receiver M M FD(1) FD(1) FD(2) FD(2) FD (last) FD(last) timeout EOF X EOF ACK(EOF) EOF FIN ACK(EOF) X timeout FIN FIN ACK(FIN) (close) (close) ACK(FIN) (close) (close) (a) (b) Figure 2-13 Time-out Triggered EOF and Finished Retransmissions CCSDS G-3 Page 2-23 April 2007
35 In addition to the time-outs just described, there is an overall inactivity timer. If there is a cessation of PDU reception for a given Transaction for the specified time period, this timer causes the issuance of a Fault indication, with a condition code identifying the condition Inactivity to the local user. It takes no other action. That is, any further resulting action is not specified by the protocol, but is taken by the user in an implementation-specific manner. The user might try to restart or otherwise salvage the Transaction, abandon it, or take some other action appropriate to the implementation and operational configuration. The basic purpose of the timer is to handle situations that are outside the protocol itself. Examples might be the crashing of the operating system in the other entity party to the ongoing Transaction, the extended failure of an intermediate communication link, etc. This timer is mandatory, except that it is not used at the Source end of an unacknowledged mode transfer. 2.7 PRIMITIVES, PDUS, AND PIPES The spawning relationships between Request Primitives and PDUs, and between PDUs and Primitives in the operational process from initiation through termination, is shown in figure Figure 2-15 is a pipe diagram of the CFDP showing several of the possible lower layers. The examples of lower layers shown in the figure are just that, examples, and are not intended to be all-inclusive. Figure 2-16 shows a possible example implementation involving a spacecraft, a ground station and a control center. (Refer also to and ) CCSDS G-3 Page 2-24 April 2007
36 CCSDS G-3 Page 2-25 April 2007 Optional = Proxy Request Request Primitives PDUs Primitives Msg to User File Store Requests Initiation File Directory Listing Request Put.request Transaction.indication destination addressing File Delivery Control Transfer Operation Control Metadata-receive.indication Management Information Base (MIB) Operation Metadata PDU File Data PDU NAK PDU NOTE Fault.indication and Abandoned.indication are triggered by the Fault Handler. Report.request Suspend.request Prompt (NAK) Suspend PDU Prompt PDU Prompt (Keep Alive) Report.indication File-segment-recv.indication Monitor and Control Resume.request Resume PDU Keep Alive PDU Suspended.indication Resumed.indication EOF (no error) EOF PDU EOF (cancelled) EOF-Sent.indication EOF-Recv.indication Figure 2-14 Request Primitives, PDUs, and Primitives Operational View Termination ACK (EOF) ACK PDU Cancel.request Finished (completed) ACK (Finished) Finished (cancelled) Finished PDU Transaction-Finished.indication Transfer-Consigned.indication CCSDS REPORT CONCERNING THE CCSDS FILE DELIVERY PROTOCOL (CFDP)
37 File Directory Proxy Applications Listing Requests Requests Messages File Store File Delivery Requests Requests File Data Reserved User Messages Messages to User Metadata PDU File Data PDU CFDP Procedures Proximity-1 Proximity-1 CCSDS Packet Service CCSDS AOS VCDU Service SCPS Transport Protocol SCPS Network Protocol CCSDS TM/TC Frames TCP Ethernet IP UDP PPP Physical Channel Figure 2-15 CFDP Pipe Diagram File Directory Proxy Applications Listing Requests Requests Messages File Store File Delivery Requests Requests File Data File Data File Delivery File Store Requests Requests Applications Proxy File Directory Messages Requests Listing Requests Reserved User Messages Reserved User Messages Messages to User Messages to User Metadata PDU File Data PDU File Data PDU Metadata PDU CFDP Core Procedures CFDP Core Procedures CCSDS Packet Service CCSDSAOS VCDU Service CCSDS VCDU Service CCSDS Packet Service CCSDSAOS VCDU Service Physical Channel Physical Channel Physical Channel Physical Channel Control Center Ground Station Spacecraft Figure 2-16 Pipe Diagram Example of Relay CCSDS G-3 Page 2-26 April 2007
38 3 EXAMPLE CONFIGURATIONS 3.1 OVERVIEW This section provides examples that illustrate some of the widely varying network topologies over which the CFDP will operate, and the use of some of the CFDP options. The entire purpose of the CFDP is to perform a file transfer between two end points. These end points may be located in Earth-orbiting spacecraft, mission control centers, or interplanetary spacecraft. The end points may often not have direct connection to one another. The CFDP overcomes such blocking conditions by utilizing intermediate entities (waypoints) and/or with multi-pass connections in time, either disjoint or with overlap. The following example mission configurations are included file deliveries using no waypoints; file deliveries using three party proxy; file deliveries using one waypoint. NOTE Annex B contains the following example mission configurations file deliveries via waypoints in parallel; file deliveries via waypoints in series and parallel. It is important to note that a facility located between CFDP end points does not necessarily constitute a waypoint. If such a facility (often a ground station or relaying spacecraft) does not contain a CFDP entity and provides only lower layer services, it is simply a relay ; in the context of the CFDP, a point-to-point connection exists through such a relay between two CFDP entities. Example Mission Configurations 1, 2, and 3 include ground stations configured as relays rather than waypoints. Ground station handover management is required any time a file transfer cannot be completed within a single pass and must be resumed later over the same or a different ground station. CFDP contains basic concepts (transaction ID) and services (Suspend/Resume and Link Lost/Link Acquired) to meet handover requirements in many situations. Although handover management is not a part of the protocol, and no specific handover management signaling takes place between CFDP entities, CFDP is well adapted to the automation of this process and, therefore, it strongly supports station operations automation. System functions outside the CFDP may be used to implement fully autonomous handover operations. CCSDS G-3 Page 3-1 April 2007
39 3.2 FILE DELIVERIES EXAMPLE CONFIGURATION 1 FILE DELIVERIES WITH NO WAYPOINTS General In Example Configuration 1, a file transfer takes place between two CFDP entities, a spacecraft and an NCC. One or more ground stations handle frames and route data between the spacecraft and NCC. The ground stations do not contain CFDP entities and therefore are relays, and there is a (functional) point-to-point connection between the two CFDP entities. Examples are given for unreliable space-to-ground, reliable space-to-ground, reliable ground-to-space, and two party proxy (Get). Three party proxy file deliveries are shown in Example Configuration 2. When only one ground station is used (figure 3-1) and the file being delivered is large, multiple space-to-ground contacts (passes) with the ground station may be required in order to complete the delivery of the subject file. If more than one ground station is used (figure 3-2) there may be redundant data (if multiple space-to-ground contacts are required, the ground station contacts may overlap in time.) The CFDP service at each endpoint deletes any duplicate data that it received because of overlapping contacts. Network Control Center X CFDP Entity Packet Service Ground Station Frame/CLTU Service Spacecraft X CFDP Entity Packet Service Frame Service Figure 3-1 Example Configuration 1 CCSDS G-3 Page 3-2 April 2007
40 Network Control Center CFDP Service Packet Service Ground Station Frame/CLTU Service Spacecraft Ground Station Frame/CLTU Service CFDP Service Packet Service Frame Service Figure 3-2 Example Configuration 1a Unreliable Download Example 1 of Configuration 1 is of an unreliable file delivery from a spacecraft to an NCC. The network configuration is directly from the spacecraft through ground stations to the NCC, as shown in figures 3-1 and 3-2. The file size may be large enough to require more than one ground/spacecraft contact period. The ground station contacts may overlap in time, or may be time disjoint. A user (human or automated) on the spacecraft initiates the transaction by causing a Put request to be sent to the local spacecraft CFDP entity. Upon receipt of the Put request, the spacecraft CFDP entity initiates the transaction. It configures the protocol options (e.g., quality of service) according to the information contained in the MIB, unless overridden by information in the Put request. The CFDP entity places the required information in the file metadata and begins the file delivery operation. Each item that the CFDP entity wishes transmitted is placed in a PDU and passed to the lower layer network. In this example the interface is to CCSDS Path Service. The Path Service places the PDUs within CCSDS packets, virtual channels, and frames and transmits them to the ground station(s). The ground station(s) synchronizes on the frames, optionally performs error correction, and routes them to the NCC. At the NCC, the NCC CCSDS packet service extracts the packets from the frames, the PDUs from the packets, and passes the PDUs to the NCC CFDP service for action and file assembly. (Alternatively, the packet extraction process could be accomplished by CCSDS services at the ground stations, with the extracted packets being sent to the NCC CFDP entity via CCSDS Path Service.) Any duplicate PDUs caused by overlapping ground station contacts are removed by the CFDP entity. Because unreliable service has been selected, there is no CFDP traffic from the NCC CCSDS G-3 Page 3-3 April 2007
41 to the spacecraft. Details of the CFDP PDUs, their contents and formats, and the manner in which they operate are detailed in reference [1]. The sequence of events is shown in figure 3-3. Note that since this example is for unreliable quality of service, the loss of File Data PDU N+1 is irrecoverable. Also note that an optional File Completion Map, which shows the size and exact location within the file of the missing data, is available to the NCC User. (In all the sequence diagrams, optional items are shown in red.) This mode may be particularly useful for the transmission of image data, etc., where file sizes tend to be large and absolute completeness may not be necessary. NCC User NCC CFDP S/C CFDP S/C User Transaction Start Notification CRC procedure Put.request Options Unreliable Transaction Copy File Procedure Tx Metadata PDU Metadata-Rcv Rx Metadata PDU CRC procedure Copy File Procedure Tx File Data PDU (1) File-Segment-Rcv File-Segment-Rcv Rx File Data PDU (1) Rx File Data PDU (2) Rx File Data PDU (3) Tx File Data PDU (2) Tx File Data PDU (3) Rx File Data PDU (N) X Tx File Data PDU (N) Tx File Data PDU (N+1) Tx File Data PDU (N+2) Rx File Data PDU (N+2) Tx File Data PDU (M) EOF-Recv Rx File Data PDU (M) Rx EOF (no error) PDU Checksum verify Tx EOF (no error) PDU (checksum) Notice of Completion EOF-Sent Transaction-Finished Transaction-Finished (File Completion Map) Notice of Completion Figure 3-3 Unreliable Download CCSDS G-3 Page 3-4 April 2007
42 Reliable Download Example 2 of Configuration 1 is of a reliable delivery of a file from a spacecraft to an NCC. The network configuration is directly from the spacecraft through ground stations to the NCC, as shown in figures 3-1 and 3-2. The spacecraft is in low Earth orbit, and the contact will have simultaneous uplink and downlink. The file size may be large enough to require more than one ground/spacecraft contact period. The ground station contacts may overlap in time or may be time disjoint. The following options could be selected to meet the requirements quality of service reliable; NAK mode immediate. A user (human or automated) on the spacecraft initiates the transaction by causing a Put request to be sent to the local spacecraft CFDP entity. Upon receipt of the Put request, the spacecraft CFDP entity initiates the transaction. It configures the protocol options (e.g., quality of service, NAK mode) according to the information contained in the MIB, unless overridden by information in the Put request. It places the required information in the file metadata and begins the file delivery operation. Each item that the spacecraft entity wishes transmitted is placed in a PDU and passed to the lower layer network. In this case, the interface is to CCSDS Path Service. The operation through the Path Service has been described previously ( ). The sequence of events is shown in figure 3-4. Note that since this example is for reliable quality of service, the lost File Data PDU N+1 is recovered. Also note that as the NAK mode is Immediate, when File Data PDU N+2 is received and it is therefore known that N+1 was missed, the NAK requesting retransmission of N+1 is sent immediately. Finally, note that an optional File Completion Map, which shows the size and exact location within the file of any missing data, is still available to the NCC User even though, since this is a reliable transfer, there should be no missing data. This is because in the event of a protocol error that causes cancellation of the remaining file delivery operation, it may be desirable to retain that portion of the file that has been received. In that situation the file completion map can be important. If a CFDP implementation includes this option, it will provide the file completion map as part of the status message returned with the Transaction-Finished indication. CCSDS G-3 Page 3-5 April 2007
43 NCC User NCC CFDP S/C CFDP S/C User Transaction Start Notification CRC procedure Copy File Procedure Put.request Options Reliable Immediate NAK Transaction Tx Metadata PDU Metadata-Rcv Rx Metadata PDU CRC procedure Copy File Procedure Tx File Data PDU (1) File-Segment-Rcv File-Segment-Rcv Rx File Data PDU (1) Rx File Data PDU (2) Rx File Data PDU (3) Tx File Data PDU (2) Tx File Data PDU (3) Rx File Data PDU (N) Rx File Data PDU (N+2) X Tx File Data PDU (N) Tx File Data PDU (N+1) Tx File Data PDU (N+2) Tx NAK PDU (N+1) Rx NAK PDU (N+1) Re-Tx File Data PDU (N+1) EOF-Recv Rx File Data PDU (N+1) Rx File Data PDU (M) Rx EOF (no error) PDU Tx ACK (EOF) PDU Tx File Data PDU (M) Tx EOF (no error) PDU (checksum) EOF-Sent Checksum verify Rx ACK (EOF) PDU Notice of Completion Transaction-Finished (File Completion Map) Tx Finished (no error) PDU Rx Finished (no error) PDU Tx ACK (Finished) PDU Rx ACK (Finished) PDU Notice of Completion Transaction-Finished Figure 3-4 Reliable Download CCSDS G-3 Page 3-6 April 2007
44 Reliable Upload The third example of Configuration 1 is of an NCC-initiated reliable delivery, from the control center to a spacecraft, of a file constituting a new star catalogue for use by star trackers of the onboard navigation system. The network configuration is directly from the NCC through ground stations to the spacecraft as shown in figures 3-1 and 3-2. The spacecraft is in cruise configuration in an interplanetary transfer trajectory and, because of power restrictions in cruise mode, the downlink transmitter will not be turned on until late in the contact period. The file size is small enough to require only a single ground/spacecraft contact period. It is desired to include a message to the onboard navigation system to switch from the old to the new star catalogue during the first slew maneuver, after successful receipt of the new star catalogue. NOTE The main purpose of the CFDP s including the ability to carry a message to user in the metadata of the file being transferred is to synchronize utilization of that message with delivery of the file. In this example, if the command to switch to the new star catalogue was sent in a separate transmission, it might arrive either before or long after the map itself, depending on packet loss and retransmission effects. However, if the message is attached to the file itself, then synchronized receipt of the message is implicit. Also, the CFDP has the capability of carrying file store directives in specially marked versions of message to users, thus assuring that the file store directives will be synchronized with the file to which they are related, if so desired. The following options could be selected to meet the requirements message to user transmitted in the Put request; quality of service reliable; NAK mode asynchronous. The asynchronous NAK mode is selected, since a downlink will not be available until late in the contact period. By using the asynchronous mode, the bulk of the file can be delivered before the downlink is available. Then when the downlink transmitter is turned on, only the transmission of any necessary NAK and the resulting data retransmissions, as well as the transaction close-out actions, remain to be accomplished. (The deferred NAK mode might be a better solution, but this example is used to illustrate the function of the Asynchronous NAK mode.) A user (human or automated) in the NCC initiates the transaction by causing a Put request to be sent to the local NCC CFDP entity. The message to user to be sent with the file is contained within the request. Upon receipt of the Put request, the NCC CFDP entity initiates the transaction. It configures the protocol options (e.g., quality of service, NAK mode) according to the information contained in the MIB, unless overridden by information in the Put request. It places the message to user described above in the file metadata and begins the file delivery operation. CCSDS G-3 Page 3-7 April 2007
45 Each item that the CFDP entity wishes transmitted is placed in a PDU and passed to the lower layer network. In this case, the interface is to CCSDS Path Service. The operation through the Path Service has been described previously ( ). The sequence of events is shown in figure 3-5. Note that since this example is for reliable quality of service, the lost File Data PDU N+1 is recovered. Also note that as the NAK mode is Asynchronous, when File Data PDU N+2 is received and it is therefore known that N+1 was missed, the NAK requesting retransmission of N+1 is not sent immediately, but is held until an external event (establishment of downlink connectivity) triggers its transmission. Finally, note that an optional File Completion Map, which shows the size and exact location within the file of any missing data, is available to the Spacecraft User even though, since this is a reliable transfer, there should be no missing data. This is because in the event of a protocol error that causes cancellation of the remaining file delivery operation, it may be desirable to retain that portion of the file that has been received. In that situation the file completion map can be important. If a CFDP implementation includes this option, it will provide the file completion map as part of the status message returned with the Transaction-Finished indication. CCSDS G-3 Page 3-8 April 2007
46 NCC User NCC CFDP S/C CFDP S/C User Put.request Options Reliable Asynchronous NAK Transaction Start Notification CRC procedure Transaction Copy File Procedure Tx Metadata PDU Rx Metadata PDU CRC procedure Metadata-Rcv Copy File Procedure Tx File Data PDU (1) Tx File Data PDU (2) Tx File Data PDU (3) Rx File Data PDU (1) Rx File Data PDU (2) Rx File Data PDU (3) File-Segment-Rcv File-Segment-Rcv Tx File Data PDU (N) Tx File Data PDU (N+1) Rx File Data PDU (N) EOF-Sent Tx File Data PDU (N+2) Tx File Data PDU (M) Tx EOF (no error) PDU (checksum) Rx File Data PDU (N+2) Rx File Data PDU (M) Rx EOF (no error) PDU Tx ACK (EOF) PDU EOF-Recv Rx ACK (EOF) PDU Checksum verify Rx NAK PDU (N+1) Tx NAK PDU (N+1) External Event - Downlink transmitter on Re-Tx File Data PDU (N+1) Rx File Data PDU (N+1) Notice of Completion Rx Finished (no error) PDU Tx ACK (Finished) PDU Tx Finished (no error) PDU Transaction-Finished (File Completion Map) Transaction-Finished Notice of Completion Rx ACK (Finished) PDU Figure 3-5 Reliable Upload CCSDS G-3 Page 3-9 April 2007
47 Two Party Proxy (Get) The CFDP provides a functional Get capability through the use of a proxy operation. It effects this through the use of a Proxy Put Request. This example is that of an NCC initiating a reliable delivery of a file from a spacecraft to the NCC (a functional Get ). The network configuration is directly from the spacecraft through ground stations to the NCC, as shown in figures 3-1 and 3-2. The spacecraft is in low Earth orbit, and the contact will have simultaneous uplink and downlink. The following options could be selected to meet the requirements transaction type Proxy Put; quality of service reliable; NAK mode immediate. The sequence of events is shown in figure 3-6. The user at the NCC initiates the transaction by inputting a Put.request primitive to the local NCC CFDP entity. The Put.request primitive contains a Proxy Put Request message, and the options selection shown above. The resulting Put.request PDU is sent to the spacecraft CFDP entity as a single transaction, called Transaction X in figure 3-6. This transaction contains only metadata (containing the specially marked message to user that in turn contains the Proxy Put Request), and no file data. Upon receipt of the Proxy Put Request, the spacecraft CFDP entity user initiates a Put file delivery transaction from itself to the NCC (Transaction Y ), using the parameters sent by the NCC. The spacecraft/ncc transaction is a normal Put transaction, except that when the Transaction-Finished indication for Transaction Y is received by the spacecraft user, it causes a completion notification to be sent (as Transaction Z ) back to the NCC CFDP entity, informing it that the proxy file delivery it requested in Transaction X has been completed. CCSDS G-3 Page 3-10 April 2007
48 NCCUser NCC CFDP S/C CFDP S/C User Put.request Options Remote Put Order Message (specifies file) Remote Transmission Mode Message (reliable mode, Immediate NAK mode) Transaction Start Notification (Transaction ID X ) CRC procedure Transaction (Transaction ID X ) EOF-Sent Tx Metadata PDU Tx EOF (no error) PDU (checksum) Rx ACK (EOF) PDU (Transaction ID X ) Rx Metadata PDU CRC procedure Rx EOF (no error) PDU Tx ACK (EOF) PDU (Transaction ID X ) Checksum verify Metadata-rcv containing CFDP Remote Put Order Messages Notice of Completion Rx Finished (no error) PDU Tx Finished (no error) PDU (Transaction ID X ) Transaction-Finished (Transaction ID X ) Tx ACK (Finished) PDU Transaction-Finished (Transaction ID X ) Notice of Completion (Transaction ID X ) Rx ACK (Finished) PDU (Transaction ID X ) Transaction Start Notification (Transaction ID Y ) CRC procedure Put.request Options Reliable Immediate NAK Copy File Procedure Transaction (Transaction ID Y ) Metadata-Rcv (Transaction ID Y ) Rx Metadata PDU (Transaction ID Y ) CRC procedure Copy File Procedure Tx Metadata PDU Normal Put file transfer from S/C CFDP to G/S CFDP (Transaction ID Y ) Transaction-Finished (Transaction ID Y ) (File Completion Map) Rx ACK (Finished) PDU (transaction ID Y ) Rx Finished (no error) PDU Tx ACK (Finished) PDU Notice of Completion (Transaction ID Y ) Transaction-Finished (Transaction ID Y ) Transaction Start Notification (Transaction ID Z ) Put.request containing Remote Put Finished message (Transaction ID Z ) Metadata-rcv (Transaction ID Z ) containing Remote Put Finished message referring to Transaction X EOF-Recv Rx Metadata PDU (Transaction ID Z ) CRC procedure Rx EOF (no error) PDU Tx ACK (EOF) PDU (Transaction ID Z ) Checksum verify Notice of Completion CRC procedure Tx Metadata PDU Tx EOF (no error) PDU (checksum) Rx ACK (EOF) PDU (Transaction ID Z ) Transaction (Transaction ID Z ) EOF-Sent Transaction-Finished (Transaction ID Z ) Tx Finished (no error) PDU Rx Finished (no error) PDU Tx ACK (Finished) PDU Rx ACK (Finished) PDU (Transaction ID Z ) Notice of Completion (Transaction ID Z ) Transaction-Finished (Transaction ID Z ) Figure 3-6 Two Party Proxy (Get) CCSDS G-3 Page 3-11 April 2007
49 3.2.2 EXAMPLE CONFIGURATION 2 THREE PARTY PROXY The next example is that of a user (perhaps notified by telephone of a spacecraft emergency) requesting an NCC to initiate reliable delivery of an instrument contingency operations file resident at the NCC to a spacecraft. The user is remote from his/her home facility and uses a laptop computer, which contains a CFDP entity. The network configuration is from the user s laptop (via the Internet), to the NCC, to a ground station, to the spacecraft, as shown in figure 3-7. The spacecraft is in low Earth orbit and the NCC/spacecraft contact will have simultaneous uplink and downlink. The file size is small enough that it can be completely delivered within one ground/spacecraft contact period. The following options could be selected to meet the requirements transaction type Proxy Put; quality of service reliable; NAK mode immediate. The sequence of events is shown in figure 3-8. The remote user initiates the transaction by inputting a Put.request primitive to his/her local laptop CFDP entity. The Put.request primitive contains the address of the NCC CFDP entity, a Proxy Put Request message, and the options selection shown above. The resulting Put.request PDU is sent to the NCC CFDP entity, via the Internet, as a single transaction, called Transaction X in figure 3-8. This transaction contains only metadata (containing the specially marked message to user that in turn contains the Proxy Put Request), and no file data. Upon receipt of the Proxy Put Request, the NCC CFDP entity user initiates a Put file delivery transaction from itself to the spacecraft (Transaction Y ), using the parameters sent by the remote User. The NCC/spacecraft transaction is a normal Put transaction, except that when the Transaction- Finished indication for Transaction Y is received by the NCC user, it causes a completion notification to be sent (as Transaction Z ) back to the Remote User s CFDP entity, informing it that the proxy file delivery it requested in Transaction X has been completed. CCSDS G-3 Page 3-12 April 2007
50 Network Control Center TCP X CFDP Entity Packet Service Ground Station Frame/CLTU Service Spacecraft X CFDP Entity Packet Service Frame Service Remote User CFDP Entity TCP Figure 3-7 Example Mission Configuration 2 (Three Party Proxy) CCSDS G-3 Page 3-13 April 2007
51 Remote User Remote User CFDP NCC User NCC CFDP S/C CFDP CCSDS G-3 Page 3-14 April 2007 Put.request Options Remote Put Order Message (specifies file) Remote Transmission Mode Message (reliable mode, Immediate NAK mode) Transaction (Transaction ID X ) EOF-Sent Transaction Start Notification (Transaction ID X ) CRC procedure Tx Metadata PDU Tx EOF (no error) PDU (checksum) Rx ACK (EOF) PDU (Transaction ID X ) Transaction-Finished (Transaction ID X ) Rx Finished (no error) PDU Tx ACK (Finished) PDU Notice of Completion (Transaction ID X ) Metadata-rcv containing CFDP Remote Put Order Message Put.request Options Reliable Immediate NAK Transaction (Transaction ID Y ) Figure 3-8 Three Party Proxy (Part 1) Rx Metadata PDU CRC procedure Rx EOF (no error) PDU Tx ACK (EOF) PDU (Transaction ID X ) Checksum verify Notice of Completion Tx Finished (no error) PDU (Transaction ID X ) Rx ACK (Finished) PDU (Transaction ID X ) Transaction Start Notification (Transaction ID Y ) CRC procedure Copy File Procedure Tx Metadata PDU Transaction-Finished (Transaction ID X ) To Part 2 EOF-Recv CCSDS REPORT CONCERNING THE CCSDS FILE DELIVERY PROTOCOL (CFDP)
52 Remote User Remote User CFDP NCC User NCC CFDP S/C CFDP S/C User CCSDS G-3 Page 3-15 April 2007 Metadata-rcv (Transaction ID Z ) containing Remote Put Finished message referring to Transaction X EOF-Recv Transaction-Finished (Transaction ID Z ) Rx Metadata PDU (Transaction ID Z ) CRC procedure Rx EOF (no error) PDU Tx ACK (EOF) PDU (Transaction ID Z ) Checksum verify Notice of Completion Tx Finished (no error) PDU Rx ACK (Finished) PDU (Transaction ID Z ) Transaction-Finished (Transaction ID Y ) Put.request (Remote Put Finished message) (Transaction ID Z ) Transaction (Transaction ID Z ) EOF-Sent Transaction-Finished (Transaction ID Z ) From Part 1 Rx Metadata PDU CRC procedure Copy File Procedure Normal Put file transfer from NCC CFDP to S/C CFDP Rx Finished (no error) PDU Tx ACK (Finished) PDU Notice of Completion (Transaction ID Y ) Transaction Start Notification (Transaction ID Z ) CRC procedure Tx Metadata PDU (checksum) Tx EOF (no error) PDU Rx ACK (EOF) PDU (Transaction ID Z ) Rx Finished (no error) PDU Tx ACK (Finished) PDU Notice of Completion (Transaction ID Z ) Figure 3-8 Three Party Proxy (Part 2) Rx ACK (Finished) PDU (transaction ID Y ) Metadata-Rcv Transaction-Finished (transaction ID Y ) (File Completion Map) CCSDS REPORT CONCERNING THE CCSDS FILE DELIVERY PROTOCOL (CFDP)
53 3.2.3 EXAMPLE CONFIGURATION 3 FILE DELIVERIES VIA ONE WAYPOINT General In Example Mission Configuration 3, a file transfer takes place involving three CFDP entities, one of which acts as a waypoint. In figure 3-9 the CFDP entities are shown contained in a spacecraft, an NCC, and a remote science laboratory, but they could as easily be a spacecraft, a communications spacecraft, and a ground station, or any other mix of facilities. In the figure, a ground station handles frames and routes data between the spacecraft and an NCC. The ground station does not contain a CFDP entity and, therefore, is a relay. Within this configuration examples are given for unreliable space-to-ground, reliable space-to-ground, and reliable ground-to-space file deliveries. X Laboratory CFDP Entity TCP Network Control TCP Center X CFDP Entity Packet Service Ground Station Frame/CLTU Service Spacecraft X CFDP Entity Packet Service Frame Service Figure 3-9 Example Mission Configuration Unreliable Download via One Waypoint This example begins with an intelligent spacecraft that, having detected an anomaly in a science instrument, wishes to deliver telemetry data to a user located in a science facility (laboratory) remote from an NCC. As this is real-time telemetry data, the file size is unbounded. Since the telemetry data inherently contains a great deal of information redundancy, it is not necessary that every bit of it be received by the science facility. The spacecraft therefore selects unreliable mode. The remote user has a local CFDP entity, but does not have direct communication with the spacecraft, and thus requires the use of the NCC as an intermediary. Also, the laboratory does not operate 24 hours per day, so store- CCSDS G-3 Page 3-16 April 2007
54 and-forward service is needed from the NCC. The NCC contains a CFDP entity. The ground station does not contain a CFDP entity and provides only lower layer services. This configuration is shown in figure 3-9. The following options could be selected to meet the requirements implementation extended procedures; transaction type Put; quality of service unreliable. The anomaly detection system on the spacecraft initiates the transaction by causing a Put request to be sent to the local spacecraft CFDP entity. Upon receipt of the Put request, the spacecraft CFDP entity initiates the transaction. It configures the protocol options (e.g., quality of service) according to the information contained in the MIB, unless overridden by information in the Put request. The CFDP entity places the required information in the file metadata and begins the file delivery operation. Each item that the CFDP entity wishes transmitted is placed in a PDU and passed to the lower layer network. In this case, the interface is to CCSDS Path Service. The operation through the Path Service has been described previously ( ). A TCP/IP network service is used between the NCC and the user. Upon receipt of the complete file, and when the laboratory is online, the NCC forwards it to the user over the TCP/IP network. The sequence of events is shown in figure Note that since the file size is unbounded (the data is real-time telemetry), file closing is triggered by an external event, in this example a trigger from the onboard spacecraft sequencer. CCSDS G-3 Page 3-17 April 2007
55 Lab User Lab CFDP Waypoint (NCC) S/C CFDP S/C User Transaction Start Notification CRC procedure Put.request Options Unreliable Transaction Copy File Procedure Tx Metadata PDU Rx Metadata PDU CRC procedure Copy File Procedure Rx File Data PDU (1) Rx File Data PDU (2) Tx File Data PDU (1) Tx File Data PDU (2) Tx File Data PDU (3) Rx File Data PDU (3) Rx File Data PDU (N) Tx File Data PDU (N) Tx File Data PDU (N+1) Rx File Data PDU (N+2) Rx File Data PDU (M) Rx EOF (no error) PDU Lab comes on-line Tx File Data PDU (N+2) Tx File Data PDU (M) Tx EOF (no error) PDU (checksum) Notice of Completion External Event - On-board sequencer causes end of telemetry transfer and transmission of EOF. EOF-Sent Transaction-Finished Copy File Procedure Metadata-Rcv Rx Metadata PDU CRC procedure Tx Metadata PDU Copy File Procedure Tx File Data PDU (1) File-Segment-Rcv File-Segment-Rcv Rx File Data PDU (1) Rx File Data PDU (2) Rx File Data PDU (3) Tx File Data PDU (2) Tx File Data PDU (3) Rx File Data PDU (N) Rx File Data PDU (N+2) Rx File Data PDU (M) Tx File Data PDU (N) Tx File Data PDU (N+2) Tx File Data PDU (M) Tx EOF (no error) PDU Rx EOF (no error) PDU EOF-Recv Transaction-Finished (File Completion Map) Checksum verify Notice of Completion Figure 3-10 Unreliable Download via One Waypoint CCSDS G-3 Page 3-18 April 2007
56 Reliable Download via One Waypoint This example begins with an intelligent spacecraft that, having detected a special event (e.g., volcanic activity on a planetary surface), wishes to deliver telemetry data to a user located in a science facility (laboratory) remote from an NCC. Since this is real-time telemetry data, the file size is unbounded. The spacecraft is at a very long interplanetary distance. Since completeness of data is important (i.e., it is irreplaceable science data, with very little information redundancy), the spacecraft selects reliable mode. For operational reasons it is desirable to minimize uplink traffic until the end of the science operation, indicating the deferred NAK mode. The laboratory has a local CFDP entity, but does not have direct communication with the spacecraft and, therefore, requires the use of the NCC as an intermediary. The laboratory is online 24 hours per day. Since this event-triggered data may in turn indicate other targets of opportunity, it is important that the data be delivered from the NCC to the science facility as soon as it is received, without waiting for the retransmissions that will make the data complete. The NCC contains a CFDP entity, and its immediate delivery option is therefore enabled. The ground stations do not contain CFDP entities and provide only lower layer services. This configuration is shown in figure The following options could be selected to meet the requirements implementation extended procedures; transaction type Put; quality of service reliable; NAK mode deferred. The sequence of events is shown in figure The events detection system on the spacecraft initiates the transaction by causing a Put request to be sent to the local spacecraft CFDP entity. Upon receipt of the Put request, the spacecraft CFDP entity initiates the transaction. The CFDP entity places the required information in the file metadata and begins the file delivery operation. Each item that the CFDP entity wishes transmitted is placed in a PDU and passed to the lower layer network. In this case, the interface is to CCSDS Path Service. The operation through the Path Service has been described previously ( ). A TCP/IP network service is used between the NCC and the user. Because the immediate delivery option was enabled, as soon as the file transfer transaction from the spacecraft to the NCC begins, the NCC initiates the forwarding of the file to the laboratory over the TCP/IP network. Thus the CFDP entity at the NCC begins forwarding the file to the user before it is completely received from the spacecraft, thereby greatly decreasing the time before data (though perhaps incomplete) is available to the user. CCSDS G-3 Page 3-19 April 2007
57 Note that as soon as the file is completely received by the NCC it sends a Finished (completed) PDU to the spacecraft, allowing it to release any buffers it has assigned to the file transmission process. The Finished (completed) PDU contains a flag that signifies that the PDU is from the waypoint and not the final destination. When the file is completely received by the laboratory, the laboratory sends a Finished (completed) PDU to the NCC, allowing it to release any buffers it has assigned to the file transmission process. The laboratory Finished (completed) PDU contains a flag that signifies that the PDU is from the final destination. This causes the NCC to forward the PDU to the spacecraft, notifying it that the file has been successfully delivered to its final destination. CCSDS G-3 Page 3-20 April 2007
58 CCSDS G-3 Page 3-21 April 2007 Lab User Metadata-Rcv File-Segment-Rcv File-Segment-Rcv Transaction-Finished (FileCompletion Map) EOF-Recv Lab CFDP RxMetadata PDU CRC procedure Copy FileProcedure Rx File Data PDU (1) Rx File Data PDU (2) Rx File Data PDU (3) Rx File Dat a PDU (N) Rx File Dat a PDU (N+2) Rx File Dat a PDU (N+1) Rx File Data PDU (M) Rx EOF (no error) PDU Tx ACK (EOF) PDU Checksum verify Notice of Complet ion Tx Finished (no error) PDU (End System St at us Flag=1) Rx ACK (Finished) PDU Copy FileProcedure Tx Metadata PDU Tx File Data PDU (1) Tx File Data PDU (2) Tx File Data PDU (3) Tx File Data PDU (N) Tx File Data PDU (N+2) Tx File Data PDU (N+1) Tx File Data PDU (M) Tx EOF (no error) PDU (checksum) Rx ACK (EOF) PDU Waypoint (NCC) Rx Metadata PDU CRC procedure Copy FileProcedure Rx File Data PDU (1) Rx File Dat a PDU (2) Rx File Dat a PDU (3) Rx File Dat a PDU (N) X Rx File Data PDU (N+2) Rx File Data PDU (M) Rx EOF (no error) PDU Tx ACK (EOF) PDU Tx NAK PDU (N+1) Rx File Data PDU (N+1) Tx Finished (no error PDU (End System St at us Flag=0) Rx ACK (Finished) PDU Rx Finished (no error) PDU (End System St at us Flag=1) Tx ACK (Finished) PDU Tx Finished (no error) PDU (End System St at us Flag=1) Rx ACK (Finished) PDU Figure 3-11 Reliable Download via One Waypoint S/C CFDP Transaction Start Notification CRC procedure Copy FileProcedure TxMetadata PDU Tx File Data PDU (1) Tx File Data PDU (2) Tx File Data PDU (3) Tx File Data PDU (N) Tx File Data PDU (N+1) Tx File Data PDU (N+2) Tx File Data PDU (M) Tx EOF (no error) PDU (checksum) Rx ACK (EOF) PDU Rx NAK PDU (N+1) Re-Tx File Data PDU (N+1) Rx Finished (no error) PDU Tx ACK (Finished) PDU Notice of Consignment Rx Finished (no error) PDU (End System St at us Flag=1) Tx ACK (Finished) PDU Notice of Complet ion S/ CUser Put.request Options Reliable Deferred NAK Transaction EOF-Sent Transfer-Consigned Transaction-Finished CCSDS REPORT CONCERNING THE CCSDS FILE DELIVERY PROTOCOL (CFDP)
59 Reliable Upload via One Waypoint This example is of a file transfer from a science laboratory to a spacecraft, via an NCC. For operational convenience, the file delivery from the laboratory to the NCC takes place before the beginning of the space-to-ground contact with the spacecraft. The NCC is a reliable entity and, therefore, the file in the laboratory is deleted after the transfer to the NCC is completed. When contact with the spacecraft is established, the forwarding of the file from the NCC to the spacecraft begins. The following options could be selected to meet the requirements implementation extended procedures; transaction type Put; quality of service reliable; NAK mode deferred. The sequence of events is shown in figure As previously described in , as each transfer between one entity and the next is completed, that fact is signaled to the sending entity and any buffers it has reserved for the transfer can be released. When the final destination has completely received the file, its notification of completion is carried all the way back to the original sending entity, notifying it that the file has successfully reached its final destination. CCSDS G-3 Page 3-22 April 2007
60 Lab User Lab CFDP Waypoint (NCC) S/C CFDP S/C User CCSDS G-3 Page 3-23 April 2007 Put.request Options Reliable Deferred NAK Transaction EOF-Sent Transfer-Consigned Transaction Start Notification CRC procedure Copy File Procedure Tx Metadata PDU Tx File Data PDU (1) Tx File Data PDU (2) Tx File Data PDU (3) Tx File Data PDU (N) Tx File Data PDU (N+1) Tx File Data PDU (N+2) Tx File Data PDU (M) Tx EOF (no error) PDU (checksum) Rx ACK (EOF) PDU Rx NAK PDU (N+1) Re-Tx File Data PDU (N+1) Rx Finished (no error) PDU (End System Status Flag=0) Tx ACK (Finished) PDU Notice of Consignment Rx Metadata PDU CRC procedure Copy File Procedure Rx File Data PDU (1) Rx File Data PDU (2) Rx File Data PDU (3) Rx File Data PDU (N) Rx File Data PDU (N+2) Rx File Data PDU (M) Rx EOF (no error) PDU Tx ACK (EOF) PDU Tx NAK PDU (N+1) Rx File Data PDU (N+1) Tx Finished (no error) PDU (End System Status Flag=0) Rx ACK (Finished) PDU Acquisition of Link to Spacecraft To Part 2 CCSDS REPORT CONCERNING THE CCSDS FILE DELIVERY PROTOCOL (CFDP) Figure 3-12 Reliable Upload via One Waypoint (Part 1)
61 Lab User Lab CFDP Waypoint (NCC) S/C CFDP S/C User CCSDS G-3 Page 3-24 April 2007 Transaction-Finished Rx Finished (no error) PDU (End System Status Flag=1) Tx ACK (Finished) PDU Notice of Completion From Part 1 Copy File Procedure Tx Metadata PDU Tx File Data PDU (1) Tx File Data PDU (2) Tx File Data PDU (3) Tx File Data PDU (N) Tx File Data PDU (N+2) Tx File Data PDU (N+1) Tx File Data PDU (M) Tx EOF (no error) PDU (checksum) Rx ACK (EOF) PDU Rx Finished (no error) PDU (End System Status Flag=1) Tx ACK (Finished) PDU Tx Finished (no error) PDU (End System Status Flag=1) Rx ACK (Finished) PDU Rx Metadata PDU CRC procedure Copy File Procedure Rx File Data PDU (1) Rx File Data PDU (2) Rx File Data PDU (3) Rx File Data PDU (N) Rx File Data PDU (N+2) Rx File R Data PDU (N+1) Rx File Data PDU (M) Rx EOF (no error) PDU Tx ACK (EOF) PDU Checksum verify Notice of Completion Tx Finished (no error) PDU (End System Status Flag=1) Rx ACK (Finished) PDU Metadata-Rcv File-Segment-Rcv File-Segment-Rcv EOF-Recv Transaction-Finished (File Completion Map) CCSDS REPORT CONCERNING THE CCSDS FILE DELIVERY PROTOCOL (CFDP) Figure 3-12 Reliable Upload via One Waypoint (Part 2)
62 ANNEX A THE CFDP INTER-AGENCY TEST PROGRAM A1 HISTORY Development of the CCSDS File Delivery Protocol (CFDP) has benefited greatly from an inter-agency protocol testing program. The program began with a face-to-face mutual testing workshop and, over time, developed into a world-wide distributed configuration utilizing the Internet, and finally utilized a specialized Protocol Testing Laboratory at NASA/JPL. Testing tools and test procedure documents were developed, and a great deal was learned not only about the CFDP, but also about the processes of such inter-agency testing. The program may well serve as a model for similar testing in other areas of the CCSDS domain. The CFDP Inter-Agency Testing Program was begun through the initiative of Eric Bornschlagel of ESA ESTEC. As a result of that initiative, the first Testing Workshop was hosted in May of 2000 by Ben Ballard at the Applied Physics Laboratory (APL) of the Johns Hopkins University in Columbia, Maryland. A2 OVERALL CFDP TESTING As with any protocol development, there are several parts to a comprehensive and effective testing philosophy. In general, for CCSDS space/ground and space/space communications protocols, testing steps as shown in the figure below are needed. The interoperability testing that is the subject of this paper is only one part of such a testing program, specifically the third block from the top in the diagram. Internal Testing Conformance Tests Interoperability (Functional) Tests Mission Configuration Tests Performance Tests Flight Tests CCSDS G-3 Page A-1 April 2007
63 A3 INTEROPERABILITY TESTING The purpose of interoperability testing is to provide a high level of confidence that independent, separately developed implementations operate correctly with one another. This not only increases confidence in the ability to provide cross support among the implementations, but is a very powerful method of evaluating and improving the readability and precision of the protocol specification document. Interoperability testing among independent implementations quickly pinpoints in the protocol definition statements that are subject to different interpretations, that are unclear, that are or appear to be in conflict with another part of the specification, or that are simply incorrect. It also finds areas that need to be but are not in the specification. Of all these, perhaps the most important, and most difficult to achieve by any other kind of testing, is identifying in the protocol definition statements that are subject to different interpretations. It is of particular importance for international standards, where the nuances of language can be and often are a serious problem. The tests in the interoperability testing are not totally comprehensive and are not Conformance Tests. However they do thoroughly exercise the procedures and options of the CFDP and provide a high level of confidence in interoperability for follow-on testing specifically oriented toward the planned application. Testing aids available to implementers include the document CCSDS File Delivery Protocol (CFDP) - Notebook Of Common Inter-Agency Tests, the document CCSDS File Delivery Protocol (CFDP) - Notebook Of Common Inter-Agency Tests For Extended Procedures, and the document CCSDS File Delivery Protocol (CFDP) - Notebook Of Common Inter-Agency Tests For Store And Forward Overlay (SFO), In addition, a Conformance Tester and associated test scripts has been contributed by NASDA/NEC, and testing software, called a Relay Module, was contributed by ESA/ESTEC. The latter is a general purpose CFDP testing item that is especially useful in executing the tests through its ability to create many different types of specific error conditions on the intermediate links. These items are all available on the Internet to interested parties, as are reference implementations of the CFDP by ESA and NASA/JPL. The CFDP Inter-Agency interoperability testing program had four distinct purposes. These were to verify the correctness of the protocol specification by creating multiple implementations according to that specification and thoroughly testing those implementations; to provide measurements of the resources required by the protocol from its hosting system, including the size of the software implementations; to demonstrate the interoperability of independent implementations by interimplementation testing; and to make available the tested implementations as reference implementations for the use of projects and programs that wish to use the CFDP. CCSDS G-3 Page A-2 April 2007
64 A4 CORE PROCEDURES TESTING The first Workshop for interoperability testing of the CFDP Core Procedures was held in May, 2000, at the Applied Physics Laboratory (APL) of the Johns Hopkins University, and was so productive that it resulted in a series of Workshops. Workshops were held at DERA, Farnborough, UK, in November 2000, and then at JPL, Pasadena, California, USA, in May, Although the face-to-face workshops were very beneficial, they involved extensive travel and therefore were necessarily infrequent; they required that the host organization provide a significant amount of equipment, working space, and technical and administrative support, and thus were expensive. These were strong motives for developing an arrangement in which the various implementers could test with one another while remaining at their home sites. The Internet was the obvious technology to use to create such a distributed testing capability. It is free, available 24 hours per day, 365 days per year, provides almost unlimited connectivity (i.e., no limit on number of parties involved in tests), and all of the implementers were already connected. Following the Pasadena Workshop the testing configuration migrated to what became a worldwide Distributed Inter-Agency Testbed, operating over the Internet. The resulting configuration is shown below. It is especially interesting that the implementers were distributed in a truly worldwide manner, from the Netherlands to the United Kingdom, to the East Coast of the U.S., to the West Coast of the U.S., to Japan, and back to the Netherlands. As the culmination of the testing of the CFDP Core Procedures, a series of proctored tests were held as a Final Exam Week before requesting that the CFDP go from Red (draft) to Blue (final) status. In most (but not all) cases, the proctor was not one of the implementers, and was located separately from the implementers. Fifteen Test Sessions of approximately four hours each were held with implementers and a proctor. Four hundred ninety tests were conducted, of which four hundred sixty-two were successful. Of the unsuccessful tests, areas of the specification that were subject to different interpretations were found, but no true CCSDS G-3 Page A-3 April 2007
65 errors in the protocol. While all of the tests were functional, four (all successful) simulated an inter-entity range of 2.7 million miles (mission configuration tests). The interoperability testing approach was so successful with the CFDP Core Procedures that it was determined such testing should extend to the Extended Procedures and to the Store and Forward Overlay Procedures. A5 EXTENDED PROCEDURES AND STORE AND FORWARD OVERLAY TESTING SFO testing was begun in May of 2004, at a workshop held during the Spring CCSDS meeting in Montreal, Canada. At this meeting, it was decided to complete both the SFO and Extended Procedures testing within the Protocol Testing Laboratory (PTL) at NASA/JPL. Therefore, after the Montreal meeting, testing of the SFO and EP took place in the PTL. The testing between then and the Fall of 2005 was accomplished almost entirely by PTL personnel with minimal assistance from the ESA and JPL software implementers. This proved to be a very slow, difficult process, and therefore a face-to-face workshop was arranged to take place in September 2005 between the PTL personnel and the ESA and JPL implementers. This workshop had the desired result of enabling the testing laboratory personnel to proceed with and complete testing of both the SFO and the Extended Procedures in the fall of A6 PRODUCTS OF TESTING The results of the CFDP Interoperability Testing effort have been clarified, verified, specifications of the protocols; verified reference model implementations from ESA and NASA JPL, available to interested users; A verified set of Interoperability Testing Notebooks, one each for the Core Procedures, Extended Procedures, and Store and Forward Overlay, available to implementers and projects wishing to perform interoperability testing of their implementations; the ESA Relay Module tester, a software device developed and contributed by ESA/ESTEC, which provides for the insertion of known errors into the protocol stream (either inbound or outbound), including dropping of specific PDU types, insertion of duplicate PDUs, insertion of random noise type errors, insertion of link delays for simulation of deep space environment, etc.; the National Space Development Agency of Japan (NASDA) Conformance Tester, developed and contributed by NASDA/NEC, which provides both the software system and the attendant (software) scripts that allow an implementer to perform true CFDP Conformance tests on his/her implementation. CCSDS G-3 Page A-4 April 2007
66 ANNEX B ABBREVIATIONS AND ACRONYMS ACK CCSDS CFDP EOF FD(n) FIN FDU M MIB MSB NAK NCC OSI PDU PRMPT TCP TM Positive Acknowledgment Consultative Committee for Space Data Systems CCSDS File Delivery Protocol End of File File Data Segment Finished (receiver to sender) File Delivery Unit Metadata Management Information Base Most Significant Bit Negative Acknowledgment Network Control Center Open Systems Interconnection Protocol Data Unit Prompt Transmission Control Protocol Telemetry CCSDS G-3 Page B-1 April 2007
SPACE ASSIGNED NUMBERS AUTHORITY (SANA) ROLE, RESPONSIBILITIES, POLICIES, AND PROCEDURES
SPACE ASSIGNED NUMBERS AUTHORITY (SANA) ROLE, RESPONSIBILITIES, POLICIES, AND PROCEDURES CCSDS RECORD CCSDS 313.0-Y-1 YELLOW BOOK July 2011 SPACE ASSIGNED NUMBERS AUTHORITY (SANA) ROLE, RESPONSIBILITIES,
SPACE PACKET PROTOCOL
Consultative Committee for Space Data Systems RECOMMENDATION FOR SPACE DATA SYSTEM STANDARDS SPACE PACKET PROTOCOL CCSDS 133.0-Pink 0.B to Blue-1 BLUE BOOK September 2003 AUTHORITY Issue: Blue Book, Issue
SPACECRAFT ONBOARD INTERFACE SERVICES FILE AND PACKET STORE SERVICES
Recommendation for Space Data System Practices SPACECRAFT ONBOARD INTERFACE SERVICES FILE AND PACKET STORE SERVICES RECOMMENDED PRACTICE CCSDS 873.0-M-1 MAGENTA BOOK September 2012 Recommendation for Space
SPACE LINK EXTENSION APPLICATION PROGRAM INTERFACE FOR RETURN OPERATIONAL CONTROL FIELDS SERVICE
Recommendation for Space Data System Practices SPACE LINK EXTENSION APPLICATION PROGRAM INTERFACE FOR RETURN OPERATIONAL CONTROL FIELDS SERVICE RECOMMENDED PRACTICE CCSDS 915.5-M-2 MAGENTA BOOK September
SPACE DATA LINK SECURITY PROTOCOL
Draft Recommendation for Space Data System Standards SPACE DATA LINK SECURITY PROTOCOL DRAFT RECOMMENDED STANDARD CCSDS 355.0-R-3 RED BOOK October 2013 Draft Recommendation for Space Data System Standards
OVERVIEW OF SPACE COMMUNICATIONS PROTOCOLS
Report Concerning Space Data System Standards OVERVIEW OF SPACE COMMUNICATIONS PROTOCOLS INFORMATIONAL REPORT CCSDS 130.0-G-3 GREEN BOOK July 2014 Report Concerning Space Data System Standards OVERVIEW
SPACE DATA LINK SECURITY PROTOCOL
Recommendation for Space Data System Standards SPACE DATA LINK SECURITY PROTOCOL RECOMMENDED STANDARD CCSDS 355.0-B-1 BLUE BOOK September 2015 Recommendation for Space Data System Standards SPACE DATA
Computer Network. Interconnected collection of autonomous computers that are able to exchange information
Introduction Computer Network. Interconnected collection of autonomous computers that are able to exchange information No master/slave relationship between the computers in the network Data Communications.
THE APPLICATION OF CCSDS PROTOCOLS TO SECURE SYSTEMS
Report Concerning Space Data System Standards THE APPLICATION OF CCSDS PROTOCOLS TO SECURE SYSTEMS Informational Report CCSDS 350.0-G-2 Green Book January 2006 AUTHORITY Issue: Green Book, Issue 2 Date:
TM SYNCHRONIZATION AND CHANNEL CODING
Recommendation for Space Data System Standards TM SYNCHRONIZATION AND CHANNEL CODING RECOMMENDED STANDARD CCSDS 3.-B-2 BLUE BOOK August 2 Recommendation for Space Data System Standards TM SYNCHRONIZATION
Interplanetary Internet (IPN): An Architectural Definition
Interplanetary Internet (IPN): An Architectural Definition 1. Introduction 2. Inter-Internet Dialogs 3. Building a stable Backbone for the IPN 4. IPN Nodes 5. Security in the IPN 6. Deployed Internets
CCSDS GUIDE FOR SECURE SYSTEM INTERCONNECTION
Report Concerning Space Data System Standards CCSDS GUIDE FOR SECURE SYSTEM INTERCONNECTION INFORMATIONAL REPORT CCSDS 350.4-G-1 GREEN BOOK November 2007 Report Concerning Space Data System Standards CCSDS
Computer Networks. Chapter 5 Transport Protocols
Computer Networks Chapter 5 Transport Protocols Transport Protocol Provides end-to-end transport Hides the network details Transport protocol or service (TS) offers: Different types of services QoS Data
REFERENCE MODEL FOR AN OPEN ARCHIVAL INFORMATION SYSTEM (OAIS)
Recommendation for Space Data System Practices REFERENCE MODEL FOR AN OPEN ARCHIVAL INFORMATION SYSTEM (OAIS) RECOMMENDED PRACTICE CCSDS 650.0-M-2 MAGENTA BOOK June 2012 Recommendation for Space Data System
INFORMATION SECURITY GLOSSARY OF TERMS
Report Concerning Space Data System Standards INFORMATION SECURITY GLOSSARY OF TERMS INFORMATIONAL REPORT CCSDS 350.8-G-1 GREEN BOOK November 2012 Report Concerning Space Data System Standards INFORMATION
A brief story of a success The CCSDS
A brief story of a success The CCSDS Adrian Hooke NASA/JPL Nestor Peccia ESA/ESOC CCSDS Engineering Steering Group Chairs 2013 by CCSDS. Published by The Aerospace Corporation with permission. CCSDS Overview
Communication Networks. MAP-TELE 2011/12 José Ruela
Communication Networks MAP-TELE 2011/12 José Ruela Network basic mechanisms Network Architectures Protocol Layering Network architecture concept A network architecture is an abstract model used to describe
AUDIT AND CERTIFICATION OF TRUSTWORTHY DIGITAL REPOSITORIES
Recommendation for Space Data System Practices AUDIT AND CERTIFICATION OF TRUSTWORTHY DIGITAL REPOSITORIES RECOMMENDED PRACTICE CCSDS 652.0-M-1 MAGENTA BOOK September 2011 Recommendation for Space Data
Protocols and Architecture. Protocol Architecture.
Protocols and Architecture Protocol Architecture. Layered structure of hardware and software to support exchange of data between systems/distributed applications Set of rules for transmission of data between
Communications and Computer Networks
SFWR 4C03: Computer Networks and Computer Security January 5-8 2004 Lecturer: Kartik Krishnan Lectures 1-3 Communications and Computer Networks The fundamental purpose of a communication system is the
Ethernet. Ethernet. Network Devices
Ethernet Babak Kia Adjunct Professor Boston University College of Engineering ENG SC757 - Advanced Microprocessor Design Ethernet Ethernet is a term used to refer to a diverse set of frame based networking
A Transport Protocol for Multimedia Wireless Sensor Networks
A Transport Protocol for Multimedia Wireless Sensor Networks Duarte Meneses, António Grilo, Paulo Rogério Pereira 1 NGI'2011: A Transport Protocol for Multimedia Wireless Sensor Networks Introduction Wireless
Transport Layer Protocols
Transport Layer Protocols Version. Transport layer performs two main tasks for the application layer by using the network layer. It provides end to end communication between two applications, and implements
How To Understand The Layered Architecture Of A Network
COMPUTER NETWORKS NETWORK ARCHITECTURE AND PROTOCOLS The Need for Standards Computers have different architectures, store data in different formats and communicate at different rates Agreeing on a particular
Data Link Layer(1) Principal service: Transferring data from the network layer of the source machine to the one of the destination machine
Data Link Layer(1) Principal service: Transferring data from the network layer of the source machine to the one of the destination machine Virtual communication versus actual communication: Specific functions
CCNA R&S: Introduction to Networks. Chapter 5: Ethernet
CCNA R&S: Introduction to Networks Chapter 5: Ethernet 5.0.1.1 Introduction The OSI physical layer provides the means to transport the bits that make up a data link layer frame across the network media.
Chapter 2 - The TCP/IP and OSI Networking Models
Chapter 2 - The TCP/IP and OSI Networking Models TCP/IP : Transmission Control Protocol/Internet Protocol OSI : Open System Interconnection RFC Request for Comments TCP/IP Architecture Layers Application
ESTRACK Management System Support for the CCSDS Space Communication Cross Support Service Management
ESTRACK Management System Support for the CCSDS Space Communication Cross Support Service Management Alexander Hoffmann 1 VEGA Space GmbH, Europaplatz 5, D-64293 Darmstadt, Germany Holger Dreihahn 2 and
Communication Networks. MAP-TELE 2011/12 José Ruela
Communication Networks MAP-TELE 2011/12 José Ruela Network basic mechanisms Introduction to Communications Networks Communications networks Communications networks are used to transport information (data)
Consultative Committee for Space Data Systems REPORT CONCERNING SPACE DATA SYSTEM STANDARDS TELECOMMAND SUMMARY OF CONCEPT AND RATIONALE
Consultative Committee for Space Data Systems REPORT CONCERNING SPACE DATA SYSTEM STANDARDS TELECOMMAND SUMMARY OF CONCEPT AND RATIONALE CCSDS 200.0-G-6 GREEN BOOK JANUARY 1987 AUTHORITY * * * * * * *
Objectives of Lecture. Network Architecture. Protocols. Contents
Objectives of Lecture Network Architecture Show how network architecture can be understood using a layered approach. Introduce the OSI seven layer reference model. Introduce the concepts of internetworking
Networking Test 4 Study Guide
Networking Test 4 Study Guide True/False Indicate whether the statement is true or false. 1. IPX/SPX is considered the protocol suite of the Internet, and it is the most widely used protocol suite in LANs.
File Transfer And Access (FTP, TFTP, NFS) Chapter 25 By: Sang Oh Spencer Kam Atsuya Takagi
File Transfer And Access (FTP, TFTP, NFS) Chapter 25 By: Sang Oh Spencer Kam Atsuya Takagi History of FTP The first proposed file transfer mechanisms were developed for implementation on hosts at M.I.T.
TREK CCSDS FILE DELIVERY PROTOCOL (CFDP) CONSOLE USER GUIDE
TREK CCSDS FILE DELIVERY PROTOCOL (CFDP) CONSOLE USER GUIDE April 2016 Approved for Public Release; Distribution is Unlimited. 1 TABLE OF CONTENTS PARAGRAPH PAGE 1 Welcome... 1 1.1 Getting Started... 1
5.2 Telemetry System Concept
126 Chapter 5 Traditionally, telemetry transmitted from spacecraft was formatted with a time-division multiplexing (TDM) scheme, where data items were multiplexed into a continuous stream of fixed-length
QoS issues in Voice over IP
COMP9333 Advance Computer Networks Mini Conference QoS issues in Voice over IP Student ID: 3058224 Student ID: 3043237 Student ID: 3036281 Student ID: 3025715 QoS issues in Voice over IP Abstract: This
Frequently Asked Questions
Frequently Asked Questions 1. Q: What is the Network Data Tunnel? A: Network Data Tunnel (NDT) is a software-based solution that accelerates data transfer in point-to-point or point-to-multipoint network
CONTROL MICROSYSTEMS DNP3. User and Reference Manual
DNP3 User and Reference Manual CONTROL MICROSYSTEMS SCADA products... for the distance 48 Steacie Drive Telephone: 613-591-1943 Kanata, Ontario Facsimile: 613-591-1022 K2K 2A9 Technical Support: 888-226-6876
Space data and information transfer systems Open archival information system (OAIS) Reference model
DRAFT INTERNATIONAL STANDARD ISO/DIS 14721 ISO/TC 20/SC 13 Voting begins on: 2010-09-13 Secretariat: ANSI Voting terminates on: 2011-02-13 INTERNATIONAL ORGANIZATION FOR STANDARDIZATION МЕЖДУНАРОДНАЯ ОРГАНИЗАЦИЯ
Token-ring local area network management
Token-ring local area network management by BARBARA J. DON CARLOS IBM Corporation Research Triangle Park, North Carolina ABSTRACT This paper describes an architecture for managing a token-ring local area
COMMUNICATION NETWORKS WITH LAYERED ARCHITECTURES. Gene Robinson E.A.Robinsson Consulting 972 529-6395 [email protected]
COMMUNICATION NETWORKS WITH LAYERED ARCHITECTURES Gene Robinson E.A.Robinsson Consulting 972 529-6395 [email protected] 9 March 1999 IEEE802 N-WEST STANDARDS MEETING FOR BROADBAND WIRELESS ACCESS SYSTEMS
The Problem with TCP. Overcoming TCP s Drawbacks
White Paper on managed file transfers How to Optimize File Transfers Increase file transfer speeds in poor performing networks FileCatalyst Page 1 of 6 Introduction With the proliferation of the Internet,
Appendix B RCS11 Remote Communications
Appendix B RCS11 Remote Communications B.1 Host Computer Remote Communications Control and status messages are conveyed between the RCS11 and the host computer using packetized message blocks in accordance
Local Area Networks transmission system private speedy and secure kilometres shared transmission medium hardware & software
Local Area What s a LAN? A transmission system, usually private owned, very speedy and secure, covering a geographical area in the range of kilometres, comprising a shared transmission medium and a set
DSL Forum Technical Report TR-054
DSL Forum Technical Report TR-054 (Formerly WT-074v1) Updates and supercedes TR-038 DSL Service Flow-Through Fulfillment Management Overview Abstract: August 2002 This Working Text defines the first set
Use of CCSDS File Delivery Protocol (CFDP) in NASA/GSFC s Flight Software Architecture: core Flight Executive (cfe) and Core Flight System (CFS)
Use of CCSDS File Delivery Protocol (CFDP) in NASA/GSFC s Flight Software Architecture: core Flight Executive (cfe) and Core Flight System () Jonathan Wilmot Software Engineering Division NASA/Goddard
SFWR 4C03: Computer Networks & Computer Security Jan 3-7, 2005. Lecturer: Kartik Krishnan Lecture 1-3
SFWR 4C03: Computer Networks & Computer Security Jan 3-7, 2005 Lecturer: Kartik Krishnan Lecture 1-3 Communications and Computer Networks The fundamental purpose of a communication network is the exchange
CSE 3461 / 5461: Computer Networking & Internet Technologies
Autumn Semester 2014 CSE 3461 / 5461: Computer Networking & Internet Technologies Instructor: Prof. Kannan Srinivasan 08/28/2014 Announcement Drop before Friday evening! k. srinivasan Presentation A 2
2. IP Networks, IP Hosts and IP Ports
1. Introduction to IP... 1 2. IP Networks, IP Hosts and IP Ports... 1 3. IP Packet Structure... 2 4. IP Address Structure... 2 Network Portion... 2 Host Portion... 3 Global vs. Private IP Addresses...3
Note! The problem set consists of two parts: Part I: The problem specifications pages Part II: The answer pages
Part I: The problem specifications NTNU The Norwegian University of Science and Technology Department of Telematics Note! The problem set consists of two parts: Part I: The problem specifications pages
Simple Network Management Protocol
CHAPTER 32 Simple Network Management Protocol Background Simple Network Management Protocol (SNMP) is an application-layer protocol designed to facilitate the exchange of management information between
DATA COMMUNICATION AND NETWORKS
DATA COMMUNICATION AND NETWORKS 1. Define the term Computer Networks. A Computer network is a number if computers interconnected by one or more transmission paths. The transmission path often is the telephone
DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks
DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz Josh Broch Computer Science Department Carnegie Mellon University Pittsburgh, PA 15213-3891
PART OF THE PICTURE: The TCP/IP Communications Architecture
PART OF THE PICTURE: The / Communications Architecture 1 PART OF THE PICTURE: The / Communications Architecture BY WILLIAM STALLINGS The key to the success of distributed applications is that all the terminals
DATA TRANSMISSION AND PN RANGING FOR 2 GHZ CDMA LINK VIA DATA RELAY SATELLITE
Report Concerning Space Data System Standards DATA TRANSMISSION AND PN RANGING FOR 2 GHZ CDMA LINK VIA DATA RELAY SATELLITE INFORMATIONAL REPORT CCSDS 415.0-G-1 GREEN BOOK April 2013 Report Concerning
Configuring an efficient QoS Map
Configuring an efficient QoS Map This document assumes the reader has experience configuring quality of service (QoS) maps and working with traffic prioritization. Before reading this document, it is advisable
(Refer Slide Time: 02:17)
Internet Technology Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No #06 IP Subnetting and Addressing (Not audible: (00:46)) Now,
TD 271 Rev.1 (PLEN/15)
INTERNATIONAL TELECOMMUNICATION UNION STUDY GROUP 15 TELECOMMUNICATION STANDARDIZATION SECTOR STUDY PERIOD 2009-2012 English only Original: English Question(s): 12/15 Geneva, 31 May - 11 June 2010 Source:
Security (II) ISO 7498-2: Security Architecture of OSI Reference Model. Outline. Course Outline: Fundamental Topics. EE5723/EE4723 Spring 2012
Course Outline: Fundamental Topics System View of Network Security Network Security Model Security Threat Model & Security Services Model Overview of Network Security Security Basis: Cryptography Secret
5. Security in the IPN
1. Introduction 2. Inter-Internet Dialogs 3. Building a stable Backbone for the IPN 4. IPN Nodes 5. Security in the IPN 6. Deployed Internets in the IPN 7. Working conclusions 5. Security 5.1. Introduction
KNX IP using IP networks as KNX medium
KNX IP using IP networks as KNX medium Dipl.-Ing. Hans-Joachim Langels Siemens AG Industry Sector Building Technologies Control Products and Systems Regensburg [email protected] Overview
TSX ETY 110 Module 8
Module 8 Introduction Subject of this chapter What s in this Chapter? This chapter describes the implementation of a TSX ETY 110 module. This chapter contains the following sections: Section Topic Page
ICOM 5026-090: Computer Networks Chapter 6: The Transport Layer. By Dr Yi Qian Department of Electronic and Computer Engineering Fall 2006 UPRM
ICOM 5026-090: Computer Networks Chapter 6: The Transport Layer By Dr Yi Qian Department of Electronic and Computer Engineering Fall 2006 Outline The transport service Elements of transport protocols A
The OSI and TCP/IP Models. Lesson 2
The OSI and TCP/IP Models Lesson 2 Objectives Exam Objective Matrix Technology Skill Covered Exam Objective Exam Objective Number Introduction to the OSI Model Compare the layers of the OSI and TCP/IP
Chapter 5. Data Communication And Internet Technology
Chapter 5 Data Communication And Internet Technology Purpose Understand the fundamental networking concepts Agenda Network Concepts Communication Protocol TCP/IP-OSI Architecture Network Types LAN WAN
Ring Local Area Network. Ring LANs
Ring Local Area Network Ring interface (1-bit buffer) Ring interface To station From station Ring LANs The ring is a series of bit repeaters, each connected by a unidirectional transmission link All arriving
Module 1. Introduction. Version 2 CSE IIT, Kharagpur
Module 1 Introduction Lesson 2 Layered Network Architecture Specific Functional Objectives On Completion of this lesson, the students will be able to: State the requirement for layered approach Explain
TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) Internet Protocol (IP)
TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) *Slides adapted from a talk given by Nitin Vaidya. Wireless Computing and Network Systems Page
CTS2134 Introduction to Networking. Module 07: Wide Area Networks
CTS2134 Introduction to Networking Module 07: Wide Area Networks WAN cloud Central Office (CO) Local loop WAN components Demarcation point (demarc) Consumer Premises Equipment (CPE) Channel Service Unit/Data
Stop And Wait. ACK received; transmit frame 2 CS 455 3
Data Link Layer, Part 5 Sliding Window Protocols These slides are created by Dr. Yih Huang of George Mason University. Students registered in Dr. Huang's courses at GMU can make a single machine-readable
A DNP3 Protocol Primer
A Protocol Primer Introduction This is a primer for people who want a quick understanding of without having to comb through the tedious details of a complex specification. The writing style is meant to
REMOTE MONITORING MATRIX
802.1ag/Y.1731 BASIC ADVANCED 802.3ah Link 802.1ag/Y.1731 RFC 2544 REMOTE MONITORING MATRIX Featuring a matrix of different features that will help you identify and select which Transition products best
Computer Networks CS321
Computer Networks CS321 Dr. Ramana I.I.T Jodhpur Dr. Ramana ( I.I.T Jodhpur ) Computer Networks CS321 1 / 22 Outline of the Lectures 1 Introduction OSI Reference Model Internet Protocol Performance Metrics
SmartPTT File Transfer User's Guide. Version 2.0
SmartPTT File Transfer User's Guide Version 2.0 Introduction 2 Introduction SmartPTT File Transfer was designed to transfer files over-the-air by means of MOTOTRBO radios. It is an easy-to-use and very
Simple Network Management Protocol
56 CHAPTER Chapter Goals Discuss the SNMP Management Information Base. Describe SNMP version 1. Describe SNMP version 2. Background The (SNMP) is an application layer protocol that facilitates the exchange
Mobile Computing/ Mobile Networks
Mobile Computing/ Mobile Networks TCP in Mobile Networks Prof. Chansu Yu Contents Physical layer issues Communication frequency Signal propagation Modulation and Demodulation Channel access issues Multiple
High-Level Data Link Control
High-Level Data Link Control This class of data link layer protocols includes High-level Data Link Control (HDLC), Link Access Procedure Balanced (LAPB) for X.25, Link Access Procedure for D-channel (LAPD)
RFC 2544 Testing of Ethernet Services in Telecom Networks
RFC 2544 Testing of Ethernet Services in Telecom Networks White Paper Nigel Burgess Agilent Technologies Introduction The object of this paper is to discuss the use and testing of Ethernet services in
Protocol Architecture
Protocol Architecture ed Protocol Architectures OSI Reference Model TCP/IP Protocol Stack Need for Protocols The task of exchanging information between devices requires a high degree of cooperation between
TCP and Wireless Networks Classical Approaches Optimizations TCP for 2.5G/3G Systems. Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme
Chapter 2 Technical Basics: Layer 1 Methods for Medium Access: Layer 2 Chapter 3 Wireless Networks: Bluetooth, WLAN, WirelessMAN, WirelessWAN Mobile Networks: GSM, GPRS, UMTS Chapter 4 Mobility on the
It is the thinnest layer in the OSI model. At the time the model was formulated, it was not clear that a session layer was needed.
Session Layer The session layer resides above the transport layer, and provides value added services to the underlying transport layer services. The session layer (along with the presentation layer) add
Management Software. Web Browser User s Guide AT-S106. For the AT-GS950/48 Gigabit Ethernet Smart Switch. Version 1.0.0. 613-001339 Rev.
Management Software AT-S106 Web Browser User s Guide For the AT-GS950/48 Gigabit Ethernet Smart Switch Version 1.0.0 613-001339 Rev. A Copyright 2010 Allied Telesis, Inc. All rights reserved. No part of
OPNET Network Simulator
Simulations and Tools for Telecommunications 521365S: OPNET Network Simulator Jarmo Prokkola Research team leader, M. Sc. (Tech.) VTT Technical Research Centre of Finland Kaitoväylä 1, Oulu P.O. Box 1100,
Protocol Architecture. ATM architecture
Asynchronous Transfer Mode (ATM) Asynchronous Transfer Mode: ATM 1990 s/00 standard for high-speed (155Mbps to 622 Mbps and higher) Broadband Integrated Service Digital Network architecture Goal: integrated,
ORBIT DATA MESSAGES V2.0 TEST PLAN/REPORT
ORBIT DATA MESSAGES V2.0 TEST PLAN/REPORT CCSDS RECORD CCSDS 502.1-Y-1 YELLOW BOOK May 2010 FOREWORD This document records the plans for prototype testing and results of that testing for the Orbit Data
Frame Relay and Frame-Based ATM: A Comparison of Technologies
White Paper and -Based : A Comparison of Technologies Larry Greenstein Nuera Communications VP, Technology, Forum June 1995 June 27, 1995 i TABLE OF CONTENTS 1. PREFACE...1 2. INTRODUCTION...1 3. INTERWORKING
Written examination in Computer Networks
Written examination in Computer Networks February 14th 2014 Last name: First name: Student number: Provide on all sheets (including the cover sheet) your last name, rst name and student number. Use the
Protocol Data Units and Encapsulation
Chapter 2: Communicating over the 51 Protocol Units and Encapsulation For application data to travel uncorrupted from one host to another, header (or control data), which contains control and addressing
IP Addressing A Simplified Tutorial
Application Note IP Addressing A Simplified Tutorial July 2002 COMPAS ID 92962 Avaya Labs 1 All information in this document is subject to change without notice. Although the information is believed to
VPN over Satellite A comparison of approaches by Richard McKinney and Russell Lambert
Sales & Engineering 3500 Virginia Beach Blvd Virginia Beach, VA 23452 800.853.0434 Ground Operations 1520 S. Arlington Road Akron, OH 44306 800.268.8653 VPN over Satellite A comparison of approaches by
RARP: Reverse Address Resolution Protocol
SFWR 4C03: Computer Networks and Computer Security January 19-22 2004 Lecturer: Kartik Krishnan Lectures 7-9 RARP: Reverse Address Resolution Protocol When a system with a local disk is bootstrapped it
Transport Layer. Chapter 3.4. Think about
Chapter 3.4 La 4 Transport La 1 Think about 2 How do MAC addresses differ from that of the network la? What is flat and what is hierarchical addressing? Who defines the IP Address of a device? What is
