LTP Discussion

Download Report

Transcript LTP Discussion

SIS-DTN
LTP Protocol Specification
May 2010
SIS_DTN 1
Agenda
• Goals of this activity
• Advance LTP towards Blue Book status
• Overview of LTP
• Goals of the protocol
• How LTP fits in with Internetworking / Bundle Protocol
• LTP Operation
• Comments on the specification
• To Do
• Implementations exist (Burleigh, Farrell, Ramadas)
• Write and execute test plan
May 2010
SIS_DTN 2
LTP Overview
• LTP sits at roughly layer 2.5 in the ISO stack, providing
•
•
optionally-reliable communications across a single data link
‘hop’
In the context of CCSDS, LTP is intended to run primarily over
the CCSS Encapsulation service
For DTN / SSI, LTP serves as a ‘Convergence Layer’ for the
Bundle Protocol, providing reliability for 1-hop communications
BP
App
BP
BPApp
App
BP
BP CLA
LTP
LTPUser
User
LTP
BP
App
BP
BPApp
App
Optionally-reliable multi-hop
space internetworking
BP
BP CLA
LTP
LTPUser
User
Optionally-Reliable 1-HOP
Communications
LTP
CCSDS Encapsulation
CCSDS Encapsulation
CCSDS Data Link (e.g.
TC/TM, Prox-1, AOS)
CCSDS Data Link (e.g.
TC/TM, Prox-1, AOS)
CCSDS RF, coding, and
modulation
CCSDS RF, coding, and
modulation
May 2010
Provides length field and
allows LTP blocks to be
efficiently packed into
underlying frames.
SIS_DTN 3
LTP Overview
• LTP sits at roughly layer 2.5 in the ISO stack, providing
•
•
optionally-reliable communications across a single data link
‘hop’
In the context of CCSDS, LTP is intended to run primarily over
the CCSS Encapsulation service
For DTN / SSI, LTP serves as a ‘Convergence Layer’ for the
Bundle Protocol, providing reliability for 1-hop communications
BP
App
BP
BPApp
App
BP
BP CLA
LTP
LTPUser
User
LTP
BP
App
BP
BPApp
App
Optionally-reliable multi-hop
space internetworking
BP
BP CLA
LTP
LTPUser
User
Optionally-Reliable 1-HOP
Communications
LTP
CCSDS Encapsulation
CCSDS Encapsulation
CCSDS Data Link (e.g.
TC/TM, Prox-1, AOS)
CCSDS Data Link (e.g.
TC/TM, Prox-1, AOS)
CCSDS RF, coding, and
modulation
CCSDS RF, coding, and
modulation
May 2010
Provides length field and
allows LTP blocks to be
efficiently packed into
underlying frames.
SIS_DTN 4
LTP Operation
Portion of block to be transmitted reliably.
LTP Block
Portion of block to be transmitted unreliably.
Transaction.
request
GSArrival.indications
Receiving LTP User
Receiving LTP Entity
InitialTransmission
Complete.indication
Sending LTP Entity
Sending LTP User
SessionStart.indication
RedPartReception.
indication
TransmissionSession
Complete.
indication
May 2010
RS
CP
EORP
Report Segment
Checkpoint
End of Red Part
SIS_DTN 5
The CCSDS LTP Red Book
•
•
•
•
CCSDS Boilerplate
Overview
Service Specification (extracted from the RFC)
RFC5326 (Licklider Transmission Protocol)
• Any comments on the specification?
• http://tools.ietf.org/rfc/rfc5326.txt
•
Some LTP parameters are SDNVs (e.g. LTP session #s, checkpoint #s,
report serial #s) and may be randomly selected integers – could be
really really big (might want to restrict to --- a few bytes)
Note: PICS and MIB sections will cover the normatively referenced RFC
Security Extensions (RFC5327)? [authentication, cookies] – can omit if
running BP over LTP? (use BAB instead)
Informative reference to SDNV RFC (pending)
Mapping LTP onto lower-layers (Link Service Adaptors for LTP – e.g.
for Encap)
• Issues w/ maximum LTP segment size to deal with underlying layer .e.g. TC (TC is
•
•
•
•
•
•
May 2010
10 bits of length with no segmentation unless you use the MAP)
Options for multiple checkpoints when transmitting (prohibit?)
Asynchronously generated report segments (allow or deny these?)
SIS_DTN 6
LTP Segment Format
0
1
2
3
Version Number (0x01)
4
5
7
Segment Type Flags
CTRL
Header
6
EXC
Flag1
Control-Byte
Flag0
Session ID
(Engine ID of source, session number chosen by sender)
Header Extension Count
Trailer Extension Count
Header Extensions
Extensions
Segment Content
Trailer
May 2010
Trailer Extensions
SIS_DTN 7
Flags
CTRL EXC Flag 1 Flag 0 Code
---- --- ------ ------ ---0
0
0
0
0
0
0
0
1
1
0
0
1
0
2
0
0
1
1
3
May 2010
Nature of segment
--------------------------------------Red data, NOT {Checkpoint, EORP or EOB}
Red data, Checkpoint, NOT {EORP or EOB}
Red data, Checkpoint, EORP, NOT EOB
Red data, Checkpoint, EORP, EOB
0
0
0
0
1
1
1
1
0
0
1
1
0
1
0
1
4
5
6
7
Green
Green
Green
Green
data,
data,
data,
data,
NOT EOB
undefined
undefined
EOB
1
1
1
1
0
0
0
0
0
0
1
1
0
1
0
1
8
9
10
11
Report segment
Report-acknowledgment segment
Control segment, undefined
Control segment, undefined
1
1
1
1
0
0
0
1
12
13
Cancel segment from block sender
Cancel-acknowledgment segment to block
sender
1
1
1
1
1
1
0
1
14
15
Cancel segment from block receiver
Cancel-acknowledgment segment to block
receiver
SIS_DTN 8
Backups
May 2010
SIS_DTN 9
Portion of block to be transmitted reliably.
LTP Block
Portion of block to be transmitted unreliably.
Transaction.
request
GSArrival.indications
Receiving LTP User
Receiving LTP Entity
InitialTransmission
Complete.indication
Sending LTP Entity
Sending LTP User
SessionStart.indication
RedPartReception.
indication
TransmissionSession
Complete.
indication
May 2010
RS
CP
EORP
Report Segment
Checkpoint
End of Red Part
SIS_DTN 10