Accelerators

Accelerators

HSC has developed several Solutions (ready to run/white-label) & Accelerators (stable software components that can be integrated into customer products) in different domains and verticals that help our customers reduce time to market

HSC offers the following Accelerators today:

Publish-Subscribe Framework and SDK


The Pub-Sub Framework and SDK is used to share live data among independent network entities or service endpoints in near-Realtime. This accelerator is well-suited for sharing internal state, counters and similar monitoring points among virtual network functions running in context of VMs or containers. Using an optional SDN controlled, OVS or OVS-DPDK based virtual data bus, this solution promises real-time data sharing in a distributed deployment. Inter-VM Data is shared over OVS bridge or DPDK compliant OVS bridge using the OVS-DPDK provided para-virtualized virtio PMD.

The SDK provides a publish-subscribe mechanism to distributed applications or network functions, using which they can expose their internal states or variables to peering entities. This information can then be used for any kind of monitoring or decision making. 

Description

The SDK is based on a library offering APIs for the following:

  1. Publish a desired info from a service endpoint. The subscription scales to any number of subscribers and the publisher does not need to know about the subscribers before hand.
  2. Subscribe for the published info in a service endpoint and get near-realtime updates, whenever the subscribed variable changes in any publishing agent.
  3. Register/deregister/retrieve service endpoints

The SDK provides easy integration of these APIs with any proprietary application code base under test. The “publish” APIs can be used to publish the internal states or variables of an application. The user can also associate context information with the published info. The consumer of the information can be another application which can call “subscribe” APIs. The “subscriber” application can subscribe for a particular state or variable – retrieving information from all instances of the publishing application. It can subscribe for all states/variables published from a specific instance or all instances of the publishing application.

Features 

  • Language binding in Python, C/C++ and Java
  • Multiple types of Publishing - state/variable/tag based, context based
  • Multiple types of subscription – state/variable/tag based, logical Id based, context based
  • Sequence independent publisher-subscribers
  • Leverages OVS-DPDK based networking for real-time data sharing
  • SDN controlled virtual bus for distributed deployment – Pairing publisher subscribers for unicast/multicast data sharing
  • Compatible with multiple VIMs

Desired target environment

The SDK can handle diverse underlying networking mechanism. But it can give tangible benefits in a virtualized environment. Using OpenStack as VIM and VMs/containers to deploy the network functions or s/w components, the SDK provides a robust infrastructure to share data/states among the VMs/containers.

The SDK APIs are integrated in the application code and packaged along with the applications. Thus, the publishing and subscribing of data is triggered automatically from the functional flow of the applications from the VMs/containers running them.

The diagram below shows one deployment scenario where the SDK has been used to share data among applications running in context of OpenStack VIM based network.

Dependencies

Though the SDK itself is modular enough to run over any networking infrastructure, but to attain real-time data sharing in a virtualized environment (as depicted in the figure above), following requirements exist:

  • OpenVswitch
  • DPDK vhost user interfaces
  • High speed DPDK NIC cards

Practical Applications

The aforesaid accelerator solution can be applied in the following use-cases:

  1. Data sharing between instances of stateful MEC applications
  2. Data sharing in chained micro-services based applications
  3. Data relaying (sensor updates, alarms etc.) from sensors in Industrial IoT

We use cookies (including third party cookies) to ensure you get the best experience while visiting our website. Click "Accept Cookies" to accept the cookie usage. Click "Cookie Settings" to adjust cookie settings.

Mandatory Cookies

These cookies cannot be disabled

These cookies are necessary for the website to function and cannot be switched off.

Cookies:
  • .ASPXANONYMOUS
  • .DOTNETNUKE
  • __RequestVerificationToken
  • authentication
  • dnn_IsMobile
  • language
  • LastPageId
  • NADevGDPRCookieConsent_portal_0
  • userBrowsingCookie

Analytics Cookies

These cookies allow us to monitor traffic to our website so we can improve the performance and content of our site. They help us to know which pages are the most and least popular and see how visitors move around the site. All information these cookies collect is aggregated and therefore anonymous. If you do not allow these cookies we will not know when you have visited or how you navigated around our website.

Cookies:
  • _ga
  • _gat
  • _gid

Functional Cookies

These cookies enable the website to provide enhanced functionality and content. They may be set by the website or by third party providers whose services we have added to our pages. If you do not allow these cookies then some or all of these services may not function properly.

Cookies:
  • __atuvc
  • euconsent

Targeting Cookies

These cookies may be set through our site by our advertising partners. They may be used by those companies to build a profile of your interests and show you relevant adverts on other sites. They do not store directly personal information, but are based on uniquely identifying your browser and internet device. If you do not allow these cookies, you will experience less targeted advertising.

Cookies:

Not used.