If I deploy my Network Function on Oracle Virtualbox mean I am following NFV standards - virtual-machine

I am working on a project related to Network Function Virtualization. To virtualize my Network Function, I am planning to deploy the Network Function on an Oracle Virtualbox. If I deploy my Network Function on the Oracle Virtualbox, does that mean I am complying with the standards of NFV architecture according to ETSI.
If yes, how Oracle Virtualbox is implementing the NFV architecture. Any source documentation would be useful.
If no, how much is Oracle Virtualbox implementation different from ETSI standards and what opensource architecture is better for implementing my project. Any source documentation on how much Oracle Virtualbox deviating from ETSI standard is useful.

Yes. The ETSI NFV Standards do not mandate a specific hypervisor.
As you may see in the Architectural Framework specification the MANO (Management and Orchestration) component interacts with the virtualization layer by means of a Virtual Infrastructure Manager (VIM), which decouples from the specific hypervisors.
The requirements for the MANO - VIM interface are specified here.
If you are starting from scratch, you may want to check out Openstack as a VIM and OSM as the MANO. Others open source implementation for both components are also available.
Have a look at the OpenStack VirtualBox drivers to get more information.
Installation information for OSM Release 5 are available here.

Related

What is Xpenology? Is it Linux related thing?

I'm a newbie about Xpenology. Is there anyone can help me answer some questions below:
What is Xpenology? Is it Linus-based OS? What is the main purpose of
it?
Can I install Git server in Xpenology? Could you please give me
the guide?
How does Xpenology compare to pure Linux OS (Ubuntu, Fedora,
Mint)? Any shortcoming on Xpenology?
Thanks.
Xpenology isn't a linux OS like Ubuntu or other common distribution. It's a bootloader for synologys operating system DSM, which they use on their NAS devices. DSM is running on a custom linux version developed by Synology, so it's also not real compareable to desktop/server distributions in a direct way. Its optimized for running on a NAS with all of the features they provide.
Sometimes Xpenology is used as a synonym for the full stack of the bootloader and the DSM. It creates the possibility to run DSM on any x86 device like any pc or self-builded NAS. So you can benefit from the powerful multimedia- and cloud-features of DSM without buying a hardware NAS from them.
This will save money and make you more flexible. For example, you can run it on a powerful homeserver, which has much more power than a Synology NAS, so you can also run other things on it (like dev-servers, when you're a developer).
But its also possible to natively install and run apps on DSM using their package manager. This includes some usefull tools and packages like git, other version-control systems, cms like wordpress, ldap-servers and more. The underlaying OS can be customized, as you can connect over SSH. It should be clear that this should only be done with caution, cause changes on the linux-system could potentically break DSM if you spin on the wrong screws.
And as a person interested using Xpenology you should keep in mind, that his is not a officially Synology release. Although its based on the official Synology DSM which is the same like on a bought hardware NAS from this company. But its not officially supported by them. You could get support from the community for this software, but not from the company itself.
I think this is an important thing because Synology offers really great support. They're smart using linux and would fix strange bugs remote over ssh. You shoud device if its worth from you to buy a stock-NAS to benefit from them. If you're a do-it-yourselfer, then Xpenology would be a good and cheap alternative.
Especially for end-users which less or none experience in IT/linux, it would be a better deal for them to buy a Synology NAS, switch it on and have fun without caring about the backend technology.

Networking in Mono

All,
I'm attempting to estimate the effort to port an app developed on Windows (.NET) to Linux (Mono). I came across the MoMA tool, which attempts to look through my .exe and find potential areas of incompatibility. Most of my issues appear to be centered around get/set of network settings, getting network info, etc. (Object ManagementBaseObject.get_Item and set_Item. etc).
In almost all of the cases, the Mono functionality is listed as "ToDo". For estimation purposes, is it safe to assume most/all of these have some kind of workaround? I would imagine this type of basic networking support must be included in the latest version of Mono. Or should I assume none of this is currently available and I would be stuck waiting for it to be implemented (or be forced to implement it myself)?
Thanks,
Dan
First,see Mono Compatible Networking/Socket Library. Also,take a look on Cross-Platform Network Applications with Mono. You can start with C# Network Library.

Using virtual machines for OS compatibility testing of software

I need to test a software across different operating systems for compatibility. Is using a virtual machine with different OSs installed a good way to test for compatibility? Is there a repository somewhere where I can use pre-built virtual machines for this?
This question is probably better suited for https://sqa.stackexchange.com/
But yes, using VMs is a good way to scale tests out to multiple platforms and configurations. Unfortunately you won't find a library of images you can just grab and use as you will need licenses for any commercial operating systems and applications installed on the image.

What are the advantages of using OSGi at target side in a Remote Software Provisioning System?

I am developing a Remote Software Provisioning system that should be able to handle all deployment, installation, un-installation and upgrades of software components. Software can be in any language (java, .net, c/c++ etc) and target side can be PC, embedded systems and smart phones.
I have found Apache ACE as good candidate for developing this system.
I want to know if there is any advantage/necessity of using OSGi at target side as Apache ACE can do software provisioning to non-OSGi targets as well.
Having a modular framework like OSGi at the client side is a huge advantage when doing remote management, because it gives you much insight into what's happening inside - installed bundles, dependencies, states of the bundles, available services etc. This helps a lot when you have to solve a problem remotely. Another advantage is that OSGi basically forces programmers to develop proper modular and dynamic systems, which makes (remote) updating much easier.
So, if you have to decide now what language and framework to use for the client side, I strongly recommend OSGi for the embedded and mobile clients. For the PCs (I guess you mean desktop PCs?) this is probably not the best choice - it depends a lot what you want to achieve there. If you want to install MS Office remotely OSGi won't bring you forward ;)
However, if you already have existing programs at the client side and are discussing whether to convert them to OSGi, I would recommend to investigate some time first to see whether they can be converted easily. Some software packages could give you a lot of trouble converting to OSGi, not because OSGi is complex, but because the program itself is not modular and has a lot of assumptions about the static nature of the environment (e.g. nothing ever disappears, parts of the system never get updated etc.). The irony in the matter is that these are exactly the programs which will give you most trouble later anyway no matter which remote provisioning system you chose.
If you have OSGi at some of the targets be sure to use a remote provisioning system which gives you access to the full OSGi functionality and not only the most basic and simple install and update functions. I haven't yet used Apache ACE, but I have experience with another provisioning system - mPower Remote Manager. Here are some snapshots from the documentation which can give you a feeling what is possible with OSGi as a base - you can draw your own conclusions whether it will be useful for your case or not.
I've given some examples in the other question you asked:
What are the non-osgi targets with which Apache ACE can work
You can write your own management agent that talks to the ACE server and installs artifacts. There actually are a couple of places where you could hook in your own code and protocol. Is there a concrete language/environment you're thinking of using, or are you just exploring the possibilities right now?
Well, the advantages of OSGi haven't changed, so for that I can refer you to the standard page.
To be a bit more constructive, I'll read the question as 'Should I bother converting my application to OSGi, as it is not necessary for ACE?'
I think that depends on what 'kind' of updating mechanism you're after. If you have a monolithical application (at least from the provisioning perspective) which you deploy and update only as a whole (Like an iOS app) then there isn't much to gain for provisioning purposes by using OSGi.
For the rest I can tell you the same as I tell anybody else: Converting an application to OSGi isn't hard, but modularizing code can be a nightmare, but something you'll need to face at some point, OSGi or not. If your code is modularized already, using OSGi should be a piece of cake.

board with webserver, email, snmp

I am looking for board, module, kit for our new project.
requierments:
necessary:
IP interface IPv4/IPv6
DHCP, StaticIp, ICMP(Ping)
SNMP V2, V3
HTTP, Webserver
Email
good to have:
Telnet
SSH
SysLog
There are two ways:
complete controlled modul + master(some 8-bit with rs232, spi, ..)
I've found this http://www.connectone.com/products.asp?did=73&pid=92
But there is probably problem with SMTP, it isnt direct supported. Only UDP.
some board with linux
Thanks for your advices and recommendation.
with such heavy requirements, i would definitely go for an embedded computer running linux or a lighter unix based kernel. it will give you some flexibility over the software package, and you will easily find some support.
(there are plenty of embedded computers on the market, i can't chose one...)
I've found this XPORT PRO from LANTRONIX.
http://www.lantronix.com/device-networking/embedded-device-servers/xport-pro.html
There is Linux, so all 'net' stuffs should be supported.
8MB SDRAM/16MB Flash
small, cheap
Do you have some experience with that?
The second tip is http://www.rabbit.com/
Very powerfull modules with C libraries.