Ivyware Logo Services
   
 

Products

 

 

P2PmsgKERNEL

The P2PmsgKERNEL consists of a proprietary suite of P2P network tools that form a simple and concise pattern for building, testing and maintaining message-based distributed systems using various message delivery mediums.  The use of this tool set can significantly reduce the code base and focus effort on the application.

Click here to select beta release download for the P2Pmsg virtual networking software kernel.

Feature summary:

  • Developed in Visual C++ using a full-duplex connection and message map architecture the virtual network development tools may be used from Windows Service, Console and MFC applications.
     
  • Based on a hierarchical network of P2PeerHub's messages are pumped between hubs in buffered real-time.  Hubs may exist within a single application, across multiple applications on the same machine, across multiple machines or combinations of any of the above.
     
  • Connection state changes are pumped through thread safe P2PeerCon_MAP's.  Such state changes are intercepted via connection handlers.

    BEGIN_P2PeerCon_MAP (class, base)
      ON_P2PeerCon_STARTUP ( nID, mFxn )
      ON_P2PeerCon_ACCEPT ( nID, mFxn )
      ON_P2PeerCon_CONNECT ( nID, mFxn )
      ON_P2PeerCon_LOGIN ( nID, mFxn )
      ON_P2PeerCon_LOGINACK ( nID, mFxn )
      ON_P2PeerCon_CLOSE ( nID, mFxn )
      ON_P2PeerCon_SHUTDOWN ( nID, mFxn )
    END_P2PeerCon_MAP ( )


    The pumped P2PeerCon object is/becomes its own state machine.
     
  • P2PeerCon_MAP's are primarily supported by P2PeerHub's and subsequently by any object derived from P2PeerTarget and either directly or indirectly registered with the P2PeerHub.

    P2PeerCon state changes are pumped in buffered real-time.  Processing may occur in the context of the main P2PeerHub pump or subordinate pumps created for such purpose.
     
  • Messages are pumped through thread safe full-duplex message maps.  Messages are posted, reflected, broadcasted and thrown as system requirements dictate.  Such messages are intercepted via message handlers

     BEGIN_P2PeerMsg_MAP (class, base)
      ON_P2PeerMsg ( nMsgID, mFxn )
      ON_P2PeerMsg_CATCH ( nMsgID, mFxn )
      ON_P2PeerMsg_REFLECT ( nMsgID, mFxn )
      ON_P2PeerMsg_REFLECT_CATCH ( nMsgID, mFxn )
      ON_P2PeerMsg_PEEK ( mFxn )
    END_P2PeerMsg_MAP ( )

    The pumped P2PeerMsg is/becomes its own state machine.
     
  • P2PeerMsg_MAP's are primarily supported by P2PeerHub's and subsequently by any object derived from P2PeerTarget and either directly or indirectly registered with the P2PeerHub.

    P2PeerMsg's are pumped in buffered real-time.  Processing may occur in the context of the main P2PeerHub pump or subordinate pumps created for such purpose.
     
  • Message exchange between P2PeerHub's is facilitated via IO completion ports and as such any sensible IOCP delivery medium can be supported.  Currently WSA and Named Pipe delivery mediums exist.  RS-232 has been added for legacy interfaces.
     
  • Legacy message protocols are easily accommodated and integrated by deriving from the protocol base class P2Peerio.
     
  • Maximizes the resources and opportunities presented by the evolving multi-core architectures.  Minimizes the thread scheduling and CriticalSection problems associated with traditional message based frameworks.
     
  • Simplifies load balancing in multi-core and distributed systems.
     

P2PmsgKERNEL Downloads

Select your VC++ implementation of P2PmsgKERNEL from the list below.

Back to top

Return to top of page

Copyright © 2004-2011 Ivyware Pty Ltd
Melbourne, Victoria, Australia www.ivyware.com.au. All rights reserved.
Web site comments: webmaster@ivyware.com.au Last modified on:


Home  | Services | Products | About Us | Contact Us | Disclaimer | Sitemap