Your SlideShare is downloading. ×
0
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
F6COM: A Case Study in Extending Container Services through Connectors
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

F6COM: A Case Study in Extending Container Services through Connectors

688

Published on

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
688
On Slideshare
0
From Embeds
0
Number of Embeds
13
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. F6COM: A Case Study inExtending Container Servicesthrough ConnectorsAbhishek Dubey, Andy Gokhale, Gabor Karsai, William R. Otte;Vanderbilt University/ISISJohnny Willemsen, Marcel Smit; Remedy ITPaul Calabrese, Adam Mitz; OCIThis work was supported by the DARPA System F6 Program undercontract NNA11AC08C.
  • 2. What is F6?Future, Fast, Flexible, Fractionated, Free FlyingSpacecraftA cluster of small satellites replaces one largemonolithic satelliteAdvantages:• Flexible related to designand acquisition• Less expensive indeveloping and launch• Highly adaptable andsurvivable in orbitCopyright © 20132
  • 3. Objectives F6 ProgramKey objective: define open interface standards forhardware and softwareObjective: develop an API definition as an abstractionlayer on top of a partitioned OSObjective: demonstrate that the F6 architecture issuitable to develop and deploy a cluster of wirelesslyconnected satellitesCopyright © 20133
  • 4. TechniquesPartitioned OS with an F6 OS API appliedSecure TransportCORBA and DDS as middlewareLightweight CCM as Component framework• DDS4CCM/AMI4CCM• Container Service ConnectorsD&C as Deployment and Configuration frameworkCopyright © 20134
  • 5. F6 ChallengesDistributed systems with addressable networkHighly variable network quality and availability• satellite internal• satellite ↔ satellite• satellite ↔ ground (via 0..* hops)DynamismResource sharing/slicingFault toleranceMulti-level securityCopyright © 20135
  • 6. F6 OSAll send/receive operations are time boundedDifferent security levels for each type of actor• Application actors• Platform (service) actorsMessaging• Interaction between components based onmessages only• Messages contain security labels• Messages are facilitated by a Secure TransportCopyright © 20136
  • 7. F6 OSResource management functions• CPU time: temporal partitioning for actors• Memory: spatial partitioning• Network bandwidth: bandwidth budget,differentiated routingPart of the Trusted Computing Base (TCB)Copyright © 20137
  • 8. F6 MiddlewareSubset of CORBA• Synchronous and asynchronous call/responsesemantics• TAO is used as implementationSubset of DDS• Anonymous publish/subscribe semanticsOne-to-manyMany-to-many• Data Centric Publish/Subscribe (DCPS)• Static discovery• openDDS is used as implementationCopyright © 20138
  • 9. F6 Component Model(F6COM)(A)synchronous communication via portsConfiguration parameters set at deployment timeHistory of component state via State VariablesFixed resource allocation(A)periodic invocationsF6COM is based onLwCCMCopyright © 20139COMPONENTParametersStateResourcesCallbacks(Periodic)callbacksResourceneedsObservablestate(A)Synchronouscall/returnReceptacleFacetAnonymouspublish/subscribePublishSubscribeConfiguration
  • 10. F6COM challengesThe component developer must rely on a single-threaded, non re-entrant runtimeLeverage the CORBA RMI paradigm to a connector• LwCCM becomes middleware agnostic => UCMStandardized way of using timers which dontcompromise the single threaded, non re-entrantrequirementUse of IO within a component frameworkCopyright © 201310
  • 11. Service ConnectorsSingleton connector fragment in a containerDeployable entityProvides services to all components andconnectors in a containerExamples:• Timer connector• Container-level fault managementCopyright © 201311Component Executor(Business Logic)ContainerServiceConnectorServiceConnectorServiceConnectorServiceConnectorComponent
  • 12. Component MessagingFrameworkSeparation between the incoming triggers and theComponent Executor (business) codeTwo Container Service Connectors:• Component Message Queue Manager• Component Message Dispatcher ManagerVarious queuing and threading policies supported• F6COM: one thread (queue) per componentFully generated by the RIDLC compilerHidden from the component developerCopyright © 201312
  • 13. Component MessagingFrameworkCopyright © 201313Framework OperationsComponent FrameworkDispatch Component Message Object(subject to component scheduling policy)Component Executor(Business Logic)en-queue ComponentMessage ObjectCall Path (forward)Call Return PathFrameworkOperationTimeout (sec)ComponentOperationDeadline (sec)Priority [0..99]ComponentComponentMessageQueue
  • 14. The Component MessageQueueProvided by the Component Message QueueManager Connector fragmentThe Service Connector makes sure that everycomponent is assigned a Component MessageQueueOperation-specific objects are queuedPriorities and deadlines per operation specific object• Can be controlled using the deployment plan• Can be set at component, connector, port, andoperation levelCopyright © 201314
  • 15. The Component MessageDispatcherStarted by the Component Message DispatcherManager Connector fragmentThe Service Connector makes sure that everycomponent is assigned a Component MessageDispatcherVarious dispatching policies supported• F6COM: one dispatch thread per componentDispatches operation-specific objects from the CMQExecutes the operation specific object in the context ofthe component executorBasic deadline monitoring is available• Extended to a Deadline Monitoring Service ConnectorCopyright © 201315
  • 16. The RMI connector(RMI4CCM)Deployable entityHidden from the component developerFully generated by the RIDLC compilerRespects the single-threaded, non re-entrantrequirementMakes LwCCM middleware agnosticCORBA is currently supportedCopyright © 201316CORBACOMPONENT RMI4CCM
  • 17. Timer Service Connector(Timer4CCM)A Timer Service Connector fragmentSporadic (one-shot) and periodic timers aresupportedComponent developer implements predefinedcallbacksTimer callbacks are scheduled within the CMQ afterexpirationCopyright © 201317
  • 18. IO-connector (IO4CCM)Standardized interaction with other systems• Socket/stream based (TCP)• Socket/datagram based (UDP)• Device drivers (ioctl)No need to implement low-level interaction codeRespects the single-thread, non re-entrantrequirementBlocking IO does not block component business logic• IO connector notifies components of available dataCopyright © 201318
  • 19. SummaryService connectors provide a powerful mechanism toextend container services in a standardized way:• Threading• Operation scheduling• Timers• IO handling• Error detection and mitigationThe RMI4CCM connector makes the ComponentFramework middleware agnosticF6COM is a big step towards aUnified Component ModelCopyright © 201319
  • 20. QUESTIONS ?Copyright © 201320
  • 21. Referenceshttp://en.wikipedia.org/wiki/Fractionated_spacecrafthttp://www.darpa.mil/Our_Work/TTO/Programs/System_F6.aspxhttp://www.isis.vanderbilt.edu/projects/F6http://www.remedy.nl/en/portfolio/87-darpa-system-f6-programCopyright © 201321

×