ocean

Post on 03-Sep-2014

1.088 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Ocean: Towards a Portable Networking Library. N. Bouraqadi and L. Fabresse. ESUG 2010, Barcelona, Spain

TRANSCRIPT

Towards a Portable Networking Library

N. Bouraqadi and L. Fabresse ESUG 13 sept 2010

Pharo/Squeak Networking Support

VM

Image

OS Network API

Network Library

Socket plugin

VM

Socket plugin

TCP+ UDP+…

IPv4 +IPv6

VM

Socket plugin

TCP+ UDP+…

IPv4 +IPv6

Hard to port

Socket

HTTPSocket SocksSocket

SocketAdress

ByteArray

Imag

e

TCP+ UDP+…

IPv4 +IPv6 IPv4

+IPv6

Socket

HTTPSocket SocksSocket

SocketAdress

ByteArray

Imag

e

TCP+ UDP+…

IPv4 +IPv6 IPv4

+IPv6

Dirty!

Network Kernel Test Coverage

Imag

e

0%

100% tested

OOP

Let's redo it!

0% tested

Dirty!

Hard to port

Wrap OS Lib.

VM

Image

OS

OCEAN idea

Network API

Ocean Library

Alien plugin

Alien Library

Wrap OS Lib.

OCEAN Library Im

age

OOP

100% tested

OOP

OCEAN Library Latest

version

Imag

e

100% tested

Hard time writing tests!

Socket connected?

Data received?

Data sent?

Socket closed?

Concurrency!!!

VM

Image

OS

OSProcess for tests

Network API

Ocean Library

Alien plugin

Alien Library

OSProcess Library

OSProcess plugin

SystemAPI?

OCEAN early evaluation

0

50

100

150

200

250

300

350

Receive 10MB Send 10MB

ms Ocean

OldSocket

100% tested

OOP Portab

le

100% tested

OOP Portab

le

To do

Smaller VM

Ocean-based OO Middleware

Clean up Pharo

100% tested

OOP Portab

le

To do

Smaller VM

Ocean-based OO Middleware

Clean up Pharo

100% tested

OOP Portab

le

To do

Smaller VM

Ocean-based OO Middleware

Clean up Pharo

top related