60 likes | 210 Views
Extended Class of Service for Bundle Protocol. Scott Burleigh Jet Propulsion Laboratory, California Institute of Technology 23 April 2009. Rationale. Standard BP class of service markings: Priority. 3 levels: expedited, standard, bulk. Perceived need for additional markings:
E N D
Extended Class of Servicefor Bundle Protocol Scott Burleigh Jet Propulsion Laboratory, California Institute of Technology 23 April 2009
Rationale • Standard BP class of service markings: • Priority. 3 levels: expedited, standard, bulk. • Perceived need for additional markings: • More priority levels, for fine-grained order control. • “Minimum-latency” flag for emergency data. • “Best-efforts” flag for data that should not be retransmitted if lost. • Opaque flow label, for passing transmission-control parameters to the convergence layer.
Design (1 of 3) • Extended Class of Service (ECOS) data are provided in a BP “extension block”: • 1 octet of type code. (Using type code value 9.) • SDNV for block processing flags. Only the BLK_MUST_BE_COPIED flag is set; no EID references. • SDNV for block data length. • Block body data is ECOS-specific.
Design (2 of 3) • Block-type-specific data fields: • 1 octet of extended-class-of-service flags: • 00000001 indicates “emergency traffic”, transmit with minimum latency regardless of other routing considerations. • 00000010 indicates “best effort”, use convergence-layer protocols that do not retransmit lost data. • 00000100 indicates “flow label is present”. • Other flag bits are reserved for future use.
Design (3 of 3) • 1 octet of “ordinal”: value from 0 to 254 indicating ordering within BP priority level 2 (expedited). • N/A if BP priority level is 0 or 1. • Value 0 indicates least urgency, 254 is most urgent. • Ordinal value 255 is reserved for custody signals. • SDNV for flow label, if and only if the flow label flag in the flags byte is set to 1. • Opaque to BP; provided for pass-through to convergence layer. • Omitted if flow label flag in the flags byte is set to 0.
Status • ECOS has been implemented in ION. • Test case for ION’s generic extension-blocks API. • No testing of specific features yet, but doesn’t seem to impede normal processing. • Working on Internet Draft that will document ECOS in more detail.