RE: [PATCH 00/16] OSv IPv6 support

2018-10-02 Thread Myers, Charles
We have automated tests for our application running on OSv which uses TCP and 
UDP, but not separately for OSv.
I tested with iperf as well but this wasn’t automated.

Yeah, TCP/IP stack issues like the one you referenced are very difficult to 
track down.  Something like that would take me a long time too.
The OSv network code is a fairly direct port from the FreeBSD network code 
aside from net channel and route table caching.
So probably best reference would be documentation for FreeBSD, but I do not 
know of any good freely available FreeBSD network documentation.

My patch set already has #ifdefs for IPv6 with it enabled by default.
The FreeBSD stack originally also had #ifdefs for IPv4, but it looked like some 
of them were removed with the port to OSv
so they would need to get added back.  Probably should not be too difficult, 
but might make the code more complicated.
FreeBSD doesn’t have #ifdefs for TCP and UDP but it would not be too hard to 
add them.   But I guess you would
probably want to consider what type of small footprint apps would not want TCP 
and/or UDP and if it is worth modifying the
OSv tooling to work without TCP.  UDP is a pretty simple protocol so shouldn’t 
take too much space and most apps would want TCP,
so not sure if those would be worth doing those.

Might be other network stuff which could be #ifdef out, but to be honest the 
OSv memory footprint has been fine for our application usage
so I haven’t really looked at this.

-Charles


From: osv-dev@googlegroups.com  On Behalf Of Waldek 
Kozaczuk
Sent: Tuesday, October 2, 2018 12:08 PM
To: OSv Development 
Subject: Re: [PATCH 00/16] OSv IPv6 support

Charles,

I hate to jump in so late in the game but I was wondering about 2 things that 
relate to this patches:

  1.  Do you happen to have any automated tests that test OSv networking stack 
beyond what the unit tests do? Have you by any chance created any documentation 
about OSv networking implementation? I myself have very little understanding of 
it and it took me a while for example to fix this issue - 
https://github.com/cloudius-systems/osv/issues/859#issuecomment-384636059.
  2.  I am thinking of improvements to OSv that might be part of next 0.53 
release (I am planning to cut 0.52 soon). The overall theme, I was going to 
propose, would be make OSv lighter in terms of memory usage that is also 
heavily influenced by kernel size (right now around 10MB). Therefore I was 
wondering what your thoughts are about possibly modularizing networking stack 
in OSv into tcp, udp, IPV4, IPV6, etc using #ifdef-s (I know that some of these 
would overlap so what I am proposing may not make much sense especially given 
how little I know about networking). I am guessing that data structures would 
be difficult to break like this but code might be easier. Anyway just food for 
thought.
Thanks in advance for your answers,
Waldek

On Monday, September 10, 2018 at 7:19:11 PM UTC-4, Charles Myers wrote:
Sorry for delay.  A lot of things came up and I finally have some time now to 
work on addressing the comments in your review.

The IPv6 patch set is kind of large and posting it multiple times will be a bit 
painful for everyone, so I will provide a link to a github branch with the 
changes as you suggested in a day or so.

Thanks,
Charles
--
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
osv-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to osv-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [PATCH 00/16] OSv IPv6 support

2018-10-02 Thread Waldek Kozaczuk
Charles,

I hate to jump in so late in the game but I was wondering about 2 things 
that relate to this patches:

   1. Do you happen to have any automated tests that test OSv networking 
   stack beyond what the unit tests do? Have you by any chance created any 
   documentation about OSv networking implementation? I myself have very 
   little understanding of it and it took me a while for example to fix this 
   issue 
   - https://github.com/cloudius-systems/osv/issues/859#issuecomment-384636059.
   2. I am thinking of improvements to OSv that might be part of next 0.53 
   release (I am planning to cut 0.52 soon). The overall theme, I was going to 
   propose, would be make OSv lighter in terms of memory usage that is also 
   heavily influenced by kernel size (right now around 10MB). Therefore I was 
   wondering what your thoughts are about possibly modularizing networking 
   stack in OSv into tcp, udp, IPV4, IPV6, etc using #ifdef-s (I know that 
   some of these would overlap so what I am proposing may not make much sense 
   especially given how little I know about networking). I am guessing that 
   data structures would be difficult to break like this but code might be 
   easier. Anyway just food for thought.

Thanks in advance for your answers,
Waldek

On Monday, September 10, 2018 at 7:19:11 PM UTC-4, Charles Myers wrote:
>
> Sorry for delay.  A lot of things came up and I finally have some time now 
> to work on addressing the comments in your review.
>
> The IPv6 patch set is kind of large and posting it multiple times will be 
> a bit painful for everyone, so I will provide a link to a github branch 
> with the changes as you suggested in a day or so.
>
> Thanks,
> Charles
>

-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to osv-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Did anybody use OSv in the production ?

2018-10-02 Thread Waldek Kozaczuk
Hi,

Honestly I do not know for certain who uses OSv in production. Based on 
what I saw on this emailing list there are some people running Erlang apps 
on OSv. I also think that Spirent might be using it as part of their 
CloudStress platform.

In any case if you are planning to deploy apps on OSv I would suggest to 
use MikelAngelo capstan 
- https://github.com/mikelangelo-project/capstan, 
https://www.mikelangelo-project.eu/2017/08/the-art-of-preparing-osv-packages/ 
- which allows creating OSv images ala Docker-compose-style.

Additionally you can run OSv on Kubernetes cluster (which I have not tried 
myself) - 
https://www.mikelangelo-project.eu/2017/08/the-art-of-preparing-osv-packages/ 
- using virtlet (https://github.com/Mirantis/virtlet) or kubevirt 
(https://github.com/kubevirt/kubevirt). I believe the mikelangelo demo uses 
virtlet but OSv should run on kubevirt in theory as well. 

Waldek

On Thursday, September 27, 2018 at 8:46:25 PM UTC-4, Qixuan Wu wrote:
>
> Hi All,
>
> We are trying to look for the scenario in which OSv can be used. 
>
> Is anybody using or preparing to use OSv ? We can discuss and share some 
> experiences.  
>
> Anything is welcome. 
>
> Thanks & Regards
> Qixuan. 
>

-- 
You received this message because you are subscribed to the Google Groups "OSv 
Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to osv-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.