Towards a Portable
Networking Library


N. Bouraqadi and L. Fabresse
     ESUG 13 sept 2010
Pharo/Squeak Networking Support

   Image     Network
             Library



   VM         Socket
              plugin


...
TCP+            IPv4
     UDP+…            +IPv6
VM




             Socket
             plugin
TCP+           IPv4
     UDP+…           +IPv6


              H ard
VM




                  p
             toplugin
    ...
ByteArray
         TCP+              IPv4
        UDP+…              +IPv6
Image




                  Socket            S...
ByteArray
         TCP+              IPv4
        UDP+…              +IPv6
Image




                      Dir
           ...
Network Kernel
        Test Coverage
Image




           0%
Let's redo it!
                           Wrap
 Hard                       OS
to port                     Lib.


     Dirt...
OCEAN idea

Image       Ocean      Alien
            Library   Library




        Wrap
VM                    Alien
      ...
Image
              OCEAN Library




        OOP
              100%
              tested
Lat es t
              OCEAN Library
                            version
Image




        OOP
              100%
        ...
Hard time writing tests!
                            Socket
             Data           closed?
             sent?
  Socke...
OSProcess for tests

Image    OSProcess   Ocean      Alien
          Library    Library   Library



VM      OSProcess    ...
OCEAN early evaluation

     350
     300
     250
     200                              Ocean
ms




     150            ...
Por table
            OOP

    100%
   tested
Por table
                             OOP

                     100%
                    tested
   To do

Clean up Pharo
...
Por table
                             OOP

                     100%
                    tested
   To do

Clean up Pharo
...
Por table
                             OOP

                     100%
                    tested
   To do

Clean up Pharo
...
Upcoming SlideShare
Loading in...5
×

Ocean

896

Published on

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

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

  • Be the first to like this

No Downloads
Views
Total Views
896
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Ocean

  1. 1. Towards a Portable Networking Library N. Bouraqadi and L. Fabresse ESUG 13 sept 2010
  2. 2. Pharo/Squeak Networking Support Image Network Library VM Socket plugin OS Network API
  3. 3. TCP+ IPv4 UDP+… +IPv6 VM Socket plugin
  4. 4. TCP+ IPv4 UDP+… +IPv6 H ard VM p toplugin Socket ort
  5. 5. ByteArray TCP+ IPv4 UDP+… +IPv6 Image Socket SocketAdress HTTPSocket SocksSocket
  6. 6. ByteArray TCP+ IPv4 UDP+… +IPv6 Image Dir Socket ty! SocketAdress HTTPSocket SocksSocket
  7. 7. Network Kernel Test Coverage Image 0%
  8. 8. Let's redo it! Wrap Hard OS to port Lib. Dirty! OOP 100% 0% ested t tested
  9. 9. OCEAN idea Image Ocean Alien Library Library Wrap VM Alien plugin OS Lib. OS Network API
  10. 10. Image OCEAN Library OOP 100% tested
  11. 11. Lat es t OCEAN Library version Image OOP 100% tested
  12. 12. Hard time writing tests! Socket Data closed? sent? Socket connected? Data received? renc y!!! Co n cu r
  13. 13. OSProcess for tests Image OSProcess Ocean Alien Library Library Library VM OSProcess Alien plugin plugin OS System Network API? API
  14. 14. OCEAN early evaluation 350 300 250 200 Ocean ms 150 OldSocket 100 50 0 Receive 10MB Send 10MB
  15. 15. Por table OOP 100% tested
  16. 16. Por table OOP 100% tested To do Clean up Pharo Ocean-based OO Middleware Smaller VM
  17. 17. Por table OOP 100% tested To do Clean up Pharo Ocean-based OO Middleware Smaller VM
  18. 18. Por table OOP 100% tested To do Clean up Pharo Ocean-based OO Middleware Smaller VM
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×