+ All Categories
Home > Documents > A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into...

A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into...

Date post: 19-Apr-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
24
BBN Technologies a part of A Plug-in Transport with Dissimilar ORBs and a Connectionless Network Nathan Scandella OMG Embedded Object-Based Workshop 19 January, 2001 Santa Clara, CA
Transcript
Page 1: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

A Plug-in Transport with Dissimilar ORBs and a Connectionless Network

Nathan Scandella

OMG Embedded Object-Based Workshop

19 January, 2001Santa Clara, CA

Page 2: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

Plug-in Transports for CORBA

• Introduction to DARPA/Air Force Project

• Design Motivators– system architecture

– description of our transport

• CORBA Solution

• How to Plug In a Transport

• Lessons Learned– recommendations for RT CORBA

Page 3: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

Commercial Satellite / GBS

Virtual Data Archive• IPL Provides Target Imagery• Generates Mission Preview• Injects Time Critical Tactical

Data into Broadcast

Airborne C2 Node• Collaborates for Target

Validation• Retasks Enroute Strike• Net Meeting with

Warrior to replan route

Warrior•“Browser” Requests for Target and

Imagery data• Net Meeting with C2 Node for Target

Review and Mission Replan•“Browser” Requests for Mission

Rehearsal• Pulls Imagery and Rehearsal Data• Previews Updated Mission Enroute

JTIDS RF Net• Browser Requests• Low Volume Imagery• Backbone for Tactical “Net Meeting”

• Broadcast of Time Critical Data

WSOA Project Concept

C2 = Command & Control (e.g. AWACS)

Page 4: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

WSOA Introduction

• Case Study - DARPA/Air Force sponsored flight demonstration project

• Weapons System Open Architecture (WSOA)• Standards-based middleware desired• Secure tactical datalink available between aircraft

• TAO and ORBexpress real-time ORBs chosen• Datalink transport plugged-in to ORBs

punch line:

Page 5: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

F-15C2

Server-sidedelegate

IDL

CollaborationClient

IDL

Client-sidedelegate

CollaborationMgmt Task

Shared Display Task

Shared DisplayData

Collaboration Server

ORBexpress RT CORBA BUS TAO

VTF

ATO Server

IPL

VTF ServerDisplay

ATOData

WSOA Software Architecture

IPL Server

VTF“Server”“Client”

Page 6: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

F-15C2

Server-sidedelegate

IDL

CollaborationClient

IDL

Client-sidedelegate

CollaborationMgmt Task

Shared Display Task

Shared DisplayData

Collaboration Server

ORBexpress RT CORBA BUS TAO

VTF

ATO Server

IPL

VTF ServerDisplay

ATOData

WSOA Software Architecture

IPL Server

VTF

Page 7: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

Link 16 Transport

• Time Division Multiple Access (TDMA)

• Nodeless• Message and Transmission

Encryption• Frequency Hopping• UHF, LX Band• Line of Sight

Mil-Std-6016 Tactical Digital Information Link -Joint Tactical Information Distribution System (JTIDS)

Page 8: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

Link 16 Transport

• Secure RF broadcast network– no connections!

• Reliable delivery, error detection and correction

• Most messages are content specific, except JTIDS free text message– this message used to transmit secure digital voice data

– compressed imagery not tolerant of transmission errors

• Free text (~byte stream) effective data rate < 16kbps

• “Transport” is really a network application– GIOP could be tunneled thru JTIDS messages, though

Page 9: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

• message sequence number• subaddress

– ala TCP “port”– currently, no host identifier

• message status – start, during, end

• message byte count• overhead

– approx. 4 bytes per GIOP message + 2 bytes for each 54 bytes of GIOP message length

• compatible with other free text data applications

Free Text Message Transport Layer

headerGIOP ...

1

2

3

“link16://00041:12”

Page 10: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

Aside: Why Else to Replace TCP/IP?

From OIS, CORBA Programming with ORBexpress in Ada 95

Page 11: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

CORBA Implementation - Inline Bridge

Client Application

TAO

Transport interface

Connectionlessdatalink

messaging

ORBexpress

“Server”

Transport interface

Connectionlessdatalink

messaging

Socket simulation or

ORB API (pluggable protocols)

Which API?

Which API?

Page 12: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

CORBA Implementation - Inline Bridge

Client Application

TAO

Transport interface

Connectionlessdatalink

messaging

ORBexpress

Delegateor

Proxy Server

Transport interface

Connectionlessdatalink

messaging

IIOP/TCP(sockets)

ServerApplication

Java ORB

IIOP/TCP(sockets)

Socket simulation or

ORB API (pluggable protocols)

Which API?

Which API?

the delegate sits on a “firewall” and uses two transports concurrently!

Page 13: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

CORBA Implementation - Transport

IIOP

Native ORB transport

Plug-intransport

From OIS, CORBA Programming with ORBexpress in Ada 95

• Pluggable transport protocol between TAO andORBexpress RT

• Each ORB has unique transport interface• Future CORBA specification should standardize this

Page 14: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

CORBA Implementation - Inline Bridge

• ORB Pluggable Protocol– CORBA recommended method

for inline bridging– in CORBA spec in the future?– uses GIOP– clean integration into ORB– multiple transports OK

– simple high level API for ORBexpressRT

– experience with this method

• Socket API– standard network interface for

other network apps

– uses IIOP (GIOP over ~TCP)– requires namespace resolution for

using real IPC sockets AND socket emulation

– may have complex system calls to emulate true POSIX sockets

– experience with this method

Which Network API?

Page 15: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

Client-SideDelegate

TAOORB

Network Transport Interface

Link-16 s/w

JTIDS h/w

ApplicationClient

1: getImage(ref )

2: getImage(ref )

OIS ORB

Network Transport Interface

Link-16 s/w

JTIDS h/w

Server-side Delegate

ImageryServer

8: callbackFreeText(GIOPmsg)4: sendMsg(GIOPmsg )

3: write(address, GIOPmsg)

18: listen(address, GIOPmsg)

5: sendFreeText (GIOPmsg)7: recvFreeText(data) 6: xmitFreeText (bits)

15: xmitFreeText (bits)

9: listen(address, GIOPmsg)

10: getImage(ref )

11: getImage(ref )

12: write(address, GIOPmsg)

13: sendMsg(GIOPmsg )

14: sendFreeText (GIOPmsg) 16: recvFreeText(data)

17: callbackFreeText(GIOPmsg)

CORBA ImplementationC2 F-15EClient-Server Request

for Imagery

* AMI not shown

Page 16: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

GIOP Transport Requirements

• Connection-oriented

• Reliable

• Stream-based

• Notification of connection-loss

• Connection-initiation model

• Wrap Link-16 addressing info into transport messages.

• Transport includes orderly delivery.

• Implemented by free text transport layer.

• Asynchronous messaging used to avoid timeouts.

• Dummy connect() call implemented. IOR strings used.

Requirement Comments

From OIS, CORBA Programming with ORBexpress in Ada 95

Page 17: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

Plug-in Transport Framework

classes to implement

TAOClientClass

Diagram

from Kuhns et al., The Design and Performance of a PluggableProtocols Framework for Real-time Distributed Object ComputingMiddleware

Page 18: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

Plug-in Transport Framework

classes to implement

TAOServerClass

Diagram

from Kuhns et al., The Design and Performance of a Pluggable Protocols Framework for Real-time Distributed Object ComputingMiddleware

Page 19: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

WSOA Server Side Architecture

Program LayerL

ink

11

Lin

k 16

Lin

k 4

Wea

pons

Tra

cker

ATO

s

Etc

.

Tactical Services (datalink interface)

Human Machine Interface (HMI)Executive Services

COTS/GOTSUNIX

CompatibleApplications

Ada Run Time System

Operating System (UNIX)Hardware (Compaq Alpha)

COTS LAN

IJM

S

ESM

Existing Command and Control Architecture

Mission Computer Program

Page 20: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

WSOA Server Delegate Architecture

WSOA Server Application

Java Run Time

Operating System (UNIX)

COTS LAN

Hardware (Compaq Alpha)

Java Class Libraries

ORB

Database (VTF, ATO, IPL) Mgmt

Collaboration Server

C2 Display

Program Layer

SharedDisplay

Task

Detailed WSOA CORBA Architecture

Mission Computer Program

ORBLin

k 11

Lin

k 16

Lin

k 4

Wea

pons

Tra

cker

ATO

s

Human Machine Interface (HMI)Executive Services

Ada Run Time System

Operating System (UNIX)

COTS LAN

IJM

S

ESM

Etc

.Del

egat

e

Program Layer

Hardware (Compaq Alpha)

Etc

.

Tactical Services (DI xport)

COTS/GOTSUNIX

CompatibleApplications

Page 21: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

Concurrency Model - C2 (Server)

Process

Data, Events

intRA-process communication

IIOP NFS

Data,Events

Mission Computer Program (Ada)Mission Computer Program (Ada)

Library orsubroutines

Tactical CoreTactical Core

Thread

Link 16 ProcessingLink 16 Processing

Delegate (Ada) Delegate (Ada)

Transport(DatalinkInterface)

Transport(DatalinkInterface)

ORBexpressORBexpress

Free textxmit/recvFree textxmit/recv

WSOA Server(Java)

WSOA Server(Java)

Collab &ImageryServer

Collab &ImageryServer

imagerydb

databasemanagerdatabasemanager

Serverside

delegate

Serverside

delegate

Page 22: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

Concurrency Model - Client/Server

Asynchronous Callback AMI Programming Model

OISORB

ImageryServer

BOA-1: getImage (in imageName,out image)

BOA-2: getImage(in imageName,out image)

Server Interface

Request Interface

Server-SideDelegate

Client-SideDelegate

ApplicationClient

ImageManager

ECS-3: sendc_getImage (ImageManager *, in imageName,out image)

ECS-4: getTile (in imageName, out image)

Server Interface

Server Interface

Notify Interface

POA-1: getImage (in image)

ECS-1: getImage (in imageName, out image)

ECS-2: getImage (in imageName)

C2

F-15E

client’s local version of imagery server

async return keepsclient middleware

from blockingwith our Link 16

transport

TAOORB

Page 23: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

Integration Issues and Lessons Learned• Full performance data and results

available late 2001º two way interoperability verified

• Separate transport mapping for each ORB

° my OE mapping layer:~ 500 SLOC so far

• _IOP Profiles not standardº TAO flexible enough to match

º recommend standardizing on OE’s UIOP profile

module IIOP{ // IDLstruct Version{char major;char minor;

};struct ProfileBody{Version iiop_version;string host;unsigned short port;sequence object_key;

};};

standard profile for

IIOP

Page 24: A Plug-in Transport with Dissimilar ORBs and a ......• Injects Time Critical Tactical Data into Broadcast Airborne C2 Node ... ORBexpress RT CORBA BUS TAO VTF ATO Server IPL VTF

BBN Technologiesa part of

Integration Issues and Lessons Learned

• Simple IDL interfaces work well– don’t push on all sides of the

envelope at once!

• A RT CORBA standard for plug-in transports would be extremely valuable

• Pluggable Protocol Services, too?– we built our own COS Name

Service wrapper

module WSOA{

typedef string token;typedef sequence <octet> rawImageData;

exception INVALID_TOKEN{

string explanation;};

interface ClientImage{

rawImageData getImage (in token imageID)raises (INVALID_TOKEN);

};};


Recommended