RSS
Логотип
Баннер в шапке 1
Баннер в шапке 2

HP OpenSwitch

Product
Developers: Hewlett-Packard (HP)
Date of the premiere of the system: 2015/10/06
Branches: Information technologies
Technology: OS

2015: Announcement of HP OpenSwitch

In October, 2015 the Hewlett-Packard (HP) corporation provided own network operating system OpenSwitch constructed on technologies open source (Open Source). This project is going to be developed by forces of the whole community which participants were large IT companies.

The OpenSwitch HP platform which is based on Linux kernel is held for use in the equipment installed in data processing centers. Thanks to innovation producers of network devices, software developers and users will be able to optimize more simply work of networks according to quickly changing requirements imposed on data centers and connected with scalability, flexibility and independence of solutions of certain vendors.

The OpenSwitch HP platform which is based on Linux kernel is held for use in the equipment installed in data processing centers

The database of system statuses (system state database similar to SysDB) which is connected to all modules of a user space forms a basis of network operating system of HP and contains configurations, statuses and statistics for all system. For data storage from memory developers selected OVSDB-Server, and for broadcast of a data model from OVSDB in calls of SDK — ops-switchd. Directly system modules do not interact among themselves, only through the appeal to a system DB.

Willingness to support the HP OpenSwitch project was already shown by the companies Arista Networks Broadcom Intel, VMware and Accton Technology. The last is an ODM manufacturing with whom HP within development of a line of the Altoline switches which became the first hardware devices with OpenSwitch support works. As the technical director of division of HP Networking Mark Carroll reported the eWeek edition, in the future the number of the IT vendors which joined community OpenSwitch should grow.[1]

The project code is laid out in a Git-repository. In its structure standard open components: kernel of Linux, Puppet, OpenVswitch, ISC DHCP, lldpd and Quagga. Original developments are distributed under the license Apache 2.0.

  +-----------------------+
 | image.manifest file |                                     +---------------------+
  +-----------------------+     +--------------------------+    |                    |
              ^                |  OpenSwitch database   |   |  hardware daemons  |
             |               |                         |<----+                     |
  +-----------+-----------+    |  system table          |    +---------------------+
 |                     |   |  base subsystem table   |
 |        sysd          +---->|   vrf table             |    +---------------------+
 |                     |   |  interface table       |   |                    |
  +-----------+-----------+    |  daemon table           |<----+   protocol daemons  |
             |               |  bridge table          |   |                    |
              v                |  port table            |    +---------------------+
  +-----------------------+     +--------------------------+
 |hw description files  |
  +-----------------------+

In OpenSwitch own system of initialization ops-sysd is applied, it provides start of components of a system and control of their work taking into account files of the description of the equipment and the database of a configuration. The demon of ops-cfgd is applied to preserving/recovery of a configuration. Setup of network interfaces the demon of ops-intfd, management of VLAN - ops-vland provides, aggregation of links - ops-lacpd. Routing protocols are implemented through the Quagga components (ospfd, bgpd). The additional functionality can be increased via modules.

+------------------------------------------------------------------------+
|                                                          |           |
|  +------------------------+ +---------------+ +-----------v----------+ |-1 XLIFFService: Sequence contains no elements
| |L2/L3 protocol daemons||System daemons||Management/monitoring||
| |bgpd, lldpd, lacpd,...||sysd, intfd,...| |CLI, Rest, Ansible,...| |
|  +--------^--------^------+ +--------^------+ +-----------^----------+ |-1 XLIFFService: Sequence contains no elements
|          |      |               |                  |           |
|          |+------v-----------------v--------------------v----------+ |
|          ||                                                       ||  RFC 7047
|          ||          System state database - OVSDB-Server         ||  protocol
|          ||                                                        <------------->
|          |+----------------------------^------------------------^--+ |
|          |                            |                      |   |
|          |           Hardware support |    ops-switchd       |   |
|          |           daemons          |    +------------------v--+|OpenFlow
|          |           +-----------------v---+|  SDK independent   <------------->
|          |          |      ops-fand     ||        layer       ||
|          |          |- - - - - - - - - -|+---------------------+ |
|          |          |      ops-tempd    ||    SDK specific    ||   sFlow
|          |          |- - - - - - - - - -||        plugin       +------------->
|          |          |      ops-powerd   |+---------------------+ |
|          |          |      ...          ||         SDK        ||
|          |           +----------^----------+ +----------^----------+ |
|    Kernel|                     |                     |           |
|  +-------------------------------------------------------------------+ |-1 XLIFFService: Sequence contains no elements
| |+------v-----------+ +---------v---------+  +----------v--------+||
| ||                 || I2C/other drivers||                 || |
| ||Virtual interfaces| +-------------------+ |    SDK driver   || |
| ||                  <------------------------>                  || |
| |+------------------+                        +-------------------+||
|  +-------------------------------------------------------------------+ |-1 XLIFFService: Sequence contains no elements
|                                                                        |-1 XLIFFService: Sequence contains no elements
+------------------------------------------------------------------------+

Management can be implemented by means of the command line interface (ops-cli), similar to Cisco IOS, based on Quagga project practices via the web interface (ops-webui), through REST API, Puppet, Chef and Ansible. The configuration can locally be stored or be loaded from the external server.

Assemblies of new HP OpenSwitch are available to testing in the systems of virtualization. Porting of OS on different hardware platforms is executed through development of the corresponding plug-ins.

Notes