Looking for networking solution.

2005-06-16 Thread Marcin Jessa
Hi guys.

I am looking for solution I could implement on a link with a huge latency when 
ping replies can go up to a few hundred miliseconds, e.g sateliete links.
What I was thinking about is some kind of virtual interface which could 
translate tcp to udp in one of the pears of the link and push the data it 
received from a 'normal' interface through the virtual interface without 
bothering about ack-timing.
The receiving end would have a similar interface which would translate the udp 
data stream to tcp and then route it out to the internet.
(normal network)tcp<-->virtual udp interface<>virtual udp 
interface<-->tcp(normal network)

Is there something avaliable on FreeBSD that can be used for that purpose? 
Maybe someone is working on such a thing in CURRENT ?
Any thoughts about that? Any sugestions for a solution?


Regards,
Marcin Jessa.

___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Looking for networking solution.

2005-06-16 Thread ray
Marcin,

  What is it you are trying to accomplish and/or solve here?  Switching between
UDP and TCP isn't going to have much impact on your problem if it is a function
of a lower network layer.  

  In a case where you have a questionable connection, TCP is really what you
want, because UDP has a habit of saying "oh, can't get this packet to ya, sorry,
see ya later, drop packet".  In other words, UDP is more a hope for the best
sort of situation, whereas TCP has built in retranmission, error checking, etc.

  Again, I'm not sure what exactly you are trying to accomplish with this idea?

Ray



At 11:45 AM 6/15/2005 +0200, Marcin Jessa wrote:
| Hi guys.
| 
| I am looking for solution I could implement on a link with a huge latency when
ping replies can go up to a few hundred miliseconds, e.g sateliete links.
| What I was thinking about is some kind of virtual interface which could
translate tcp to udp in one of the pears of the link and push the data it
received from a 'normal' interface through the virtual interface without
bothering about ack-timing.
| The receiving end would have a similar interface which would translate the udp
data stream to tcp and then route it out to the internet.
| (normal network)tcp<-->virtual udp interface<>virtual udp
interface<-->tcp(normal network)
| 
| Is there something avaliable on FreeBSD that can be used for that purpose? 
| Maybe someone is working on such a thing in CURRENT ?
| Any thoughts about that? Any sugestions for a solution?
| 
| 
| Regards,
| Marcin Jessa.
| 
| ___
| freebsd-net@freebsd.org mailing list
| http://lists.freebsd.org/mailman/listinfo/freebsd-net
| To unsubscribe, send any mail to "[EMAIL PROTECTED]"
| 
| 
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Looking for networking solution.

2005-06-16 Thread Marcin Jessa
On Thu, 16 Jun 2005 02:35:27 -0700
[EMAIL PROTECTED] wrote:

> Marcin,
> 
>   What is it you are trying to accomplish and/or solve here?  Switching 
> between
> UDP and TCP isn't going to have much impact on your problem if it is a 
> function
> of a lower network layer.  
> 
>   In a case where you have a questionable connection, TCP is really what you
> want, because UDP has a habit of saying "oh, can't get this packet to ya, 
> sorry,
> see ya later, drop packet".  In other words, UDP is more a hope for the best
> sort of situation, whereas TCP has built in retranmission, error checking, 
> etc.
> 
>   Again, I'm not sure what exactly you are trying to accomplish with this 
> idea?


I want to just dump all the packets between two satelite links without checking 
for ack back and forth which creates latency and long ping times.
For that I want both the peers between satelite links to take care of that and 
be able to deal with routing the traffic flow out again.
I am not sure what solution would be appropriate for that problem and I am very 
open for suggestions.
What I want is a solution which does not requires 3.rd party software/hardware 
(I am aware of the existing ones). I want it to be able to run on FreeBSD.



> 
> 
> At 11:45 AM 6/15/2005 +0200, Marcin Jessa wrote:
> | Hi guys.
> | 
> | I am looking for solution I could implement on a link with a huge latency 
> when
> ping replies can go up to a few hundred miliseconds, e.g sateliete links.
> | What I was thinking about is some kind of virtual interface which could
> translate tcp to udp in one of the pears of the link and push the data it
> received from a 'normal' interface through the virtual interface without
> bothering about ack-timing.
> | The receiving end would have a similar interface which would translate the 
> udp
> data stream to tcp and then route it out to the internet.
> | (normal network)tcp<-->virtual udp interface<>virtual udp
> interface<-->tcp(normal network)
> | 
> | Is there something avaliable on FreeBSD that can be used for that purpose? 
> | Maybe someone is working on such a thing in CURRENT ?
> | Any thoughts about that? Any sugestions for a solution?
> | 
> | 
> | Regards,
> | Marcin Jessa.
> | 
> | ___
> | freebsd-net@freebsd.org mailing list
> | http://lists.freebsd.org/mailman/listinfo/freebsd-net
> | To unsubscribe, send any mail to "[EMAIL PROTECTED]"
> | 
> | 
> ___
> freebsd-net@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "[EMAIL PROTECTED]"
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: IPC between vimage instances?

2005-06-16 Thread Ragnar Lonn

Julian Elischer wrote:


Being able to remove interfaces would be really great. Then I could
create extra logging interfaces in each vimage and not worry about
the cleanup nightmare afterwards. Right now, I have a lot of script
code just to find and reuse old ngeth interfaces sitting around in the
default vimage and if I'm to have two types of those interfaces
(one for logging, that has one underlying netgraph tree structure, and
one for test traffic, using another netgraph tree structure) it would
likely be at least twice as much trouble. That's why I was looking for
some other way of communicating between different vimages.




"use the source Luke"
I know it seems like a lot but the netgraph code and the networking 
interface code are

relatively simple..



Well, I'm tempted to do that but I'm a bit scared it will turn out to be 
a major task -
I mean, being able to remove network interfaces is a pretty useful 
feature so why
hasn't it been implemented?  Or has it really just not been high enough 
priority for

anyone to bother with?

>interface removal in 4.x was nt quite "finished"
>there are several viewpoints from which th einterface is not quite 
removed.

>(as you have found)
>I can not remember the details as It all changed in 5.x

Anyone else who can fill me in on the basic problem with interface 
removal under 4.x?
What is it that doesn't work, what code (files) should I look at if I 
want to try and

fix it?

Regards,

 /Ragnar
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: ia64/81284: Unaligned Reference with pf on 5.4/IA64

2005-06-16 Thread Bruce Evans

On Wed, 15 Jun 2005, Marcel Moolenaar wrote:


On Jun 15, 2005, at 1:42 PM, Daniel Hartmeier wrote:

If I understand the problem correctly, there is an underlying
network-generic question I'd like to ask here.

When a function in the kernel gets passed a struct ip pointer, can it
assume that the struct ip object pointed to is properly aligned? Or
should it assume that this is not the case, and extract members more
carefully?


Yes.  A struct ip pointer points, by definition, to a struct ip.  All
structs are sufficiently aligned in C.


That entirely depends. If a struct ip pointer is constructed without
any form of casting, then one can assume that alignment is guaranteed.
The compiler guarantees to do so, except of course in this case:
the structure is defined as a packed structure. We, as the developers,
have told the compiler to *NOT* guarantee alignment of fields. We're
on our own and we miserably fail being on our own.


This case is not really different.  Packed structs are, by definition,
still structs.  All structs are sufficiently aligned in C.  "Sufficiently"
just means that valid accesses to the struct are sufficiently aligned.
For arches with strict alignment requirements like ia64, this means
laboriously accessing the struct 1 byte at a time and combining the
results.  So declaring a struct as packed when it doesn't need to be,
is mostly just a pessimization.  For struct ip, this pessimization was
implemented in rev.1.20 of netinet/ip.h.


We can fix the access in pf of course, but if other functions rightfully
count on struct ip objects being properly aligned, this might simply
crash outside of pf, too.


I suppose the problems are that:
- pf makes invalid accesses like:
void foo(struct in_addr *iap);  /* use *iap */
struct ip *ip;
foo(&ip->ip_src);
- the compiler doesn't diagnose the invalid access in the above.  Since
  *ip is packed, ip->ip_src in it isn't actually a struct in_addr -- it
  is a packed struct in_addr, so it might not have sufficent alignment
  to be a struct in_addr.


True. But since struct ip is defined as packed, nobody can assume proper
alignment of multi-byte fields and all code needs to be fixed if such
assumptions are being made.


This is a reason why packed structs should never be used.  Programming is
too hard if &ip->ip_src doesn't work, and even if it did work it would
export the pessimal packing.


 If ia64 is different from other 64-bit
architectures (of which I only know amd64, sparc64 and alpha), please
explain what alignment rules there are for u_int32_t.


ia64 is not different in this respect. That's why the bug is not
specific to ia64. Note that amd64 may not be a perfect reference
in this case because it's too much like i386, which does unaligned
loads and stores.


ia64 is different in that it actually traps misaligned accesses.

i486+'s can trap all misaligned accesses too, at least in user mode, but 
alignment checking is rarely turned on and gcc has never supported it.

E.g., gcc has always copying structs like "struct foo { short x[16]; };".
This struct is only guaranteed to be 16-bit aligned, but gcc now uses
only 32-bit accesses to copy it.  So it is an ABI requirement in practice
at least for alignment checking to not be enabled.  gcc also exploits
this to not generate different code to access struct ip's when struct ip is
bogusly packed.

Bruce
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Looking for networking solution.

2005-06-16 Thread Frank Mayhar
On Wed, 2005-06-15 at 11:45 +0200, Marcin Jessa wrote:
> I am looking for solution I could implement on a link with a huge latency 
> when ping replies can go up to a few hundred miliseconds, e.g sateliete links.
> What I was thinking about is some kind of virtual interface which could 
> translate tcp to udp in one of the pears of the link and push the data it 
> received from a 'normal' interface through the virtual interface without 
> bothering about ack-timing.
> The receiving end would have a similar interface which would translate the 
> udp data stream to tcp and then route it out to the internet.
> (normal network)tcp<-->virtual udp interface<>virtual udp 
> interface<-->tcp(normal network)
> 
> Is there something avaliable on FreeBSD that can be used for that purpose? 
> Maybe someone is working on such a thing in CURRENT ?
> Any thoughts about that? Any sugestions for a solution?

You want SCPS (the Space Communications Protocols Specification)
software.  Briefly, it fakes local TCP on either end while talking its
own protocol over the high-latency link.  I don't know if there is any
open-source package available but there are certainly commercial
solutions out there.
-- 
Frank Mayhar [EMAIL PROTECTED] http://www.exit.com/
Exit Consulting http://www.gpsclock.com/
http://www.exit.com/blog/frank/

___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: ia64/81284: Unaligned Reference with pf on 5.4/IA64

2005-06-16 Thread Bruce Evans

On Thu, 16 Jun 2005, Daniel Hartmeier wrote:


'packed', as I understand it, prohibits the compiler from inserting any
padding anywhere in the struct. That is, it guarantees that the total
size of a struct object equals the sum of the sizes of its members.


It also requires the complier to generate specially pessimized code to
access the struct.  Otherwise even direct references like ip->ip_src
might trap.


As a consequence, individual members can't be aligned properly if that
would require padding in front of them. The compiler can (and must?)
still align the first member, i.e. the beginning of the struct object,
though, no?


No.  This wouldn't be very useful, and wouldn't work right for things
like arrays of packed structs -- the individual structs would have to
be padded at the end since there can be no space between array elements,
but packed structs are supposed to be unpadded at the end too.  You can
see that there is no alignment requirement for packed structs as a whole
by looking at assembler output -- for a packed struct ip there is a
.comm..,1 where the 1 says 1-byte alignment.


The IP header and the struct that represents it are defined very

  ^^^ were ...

carefully. It's no coincidence that ip_src/dst are placed where they
are:

struct ip {
   u_int   ip_hl:4,/* header length */
   ip_v:4; /* version */
   u_char  ip_tos; /* type of service */
   u_short ip_len; /* total length */
   u_short ip_id;  /* identification */
   u_short ip_off; /* fragment offset field */
   u_char  ip_ttl; /* time to live */
   u_char  ip_p;   /* protocol */
   u_short ip_sum; /* checksum */
   struct  in_addr ip_src,ip_dst;  /* source and dest address */
} __packed;

   ^^ ... before this bug


This guarantees that

 struct ip h;
 &h.ip_src == (char *)&h + 12
 &h.ip_dst == (char *)&h + 16

i.e. they are both on 32-bit aligned if h itself is 32-bit aligned.

If you look at any example in sys/netinet where struct ip members are
accessed, you see direct access to both u_short and uint32_t members.
Nowhere does anyone memcpy, bcopy or char-wise-copy ip_src/dst, for
instance.


Except the compiler does this.


The issue also involves how the IP header is aligned within mbufs.
Functions usually get passed an mbuf pointer, and do

 struct mbuf *m;
 struct ip *ip = mtod(m, struct ip *);

and then happily access ip_src/dst without further alignment checks.


mtod() just does a dubious cast.  It depends on the data already being
sufficiently aligned.  For non-bogusly-packed IP headers this means 
32-bit alignment (for the in_addr's).


It's not clear where the misaligned headers come from.  At least with
gcc-3.3.3, I couldn't get a non-32-bit-aligned struct ip as a local
variable by putting a char variable or char array before or after it.
gcc has obscure rules for reordering local variables to pack them
better, and this helps here.  Padded structs withing (even unpadded)
structs can easily be misaligned depending on what is before them, but
struct ip's within structs seem to be rare.  The one in ip_icmp.h is OK.

Bruce
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Looking for networking solution.

2005-06-16 Thread Marcin Jessa
On Thu, 16 Jun 2005 05:37:18 -0700
Frank Mayhar <[EMAIL PROTECTED]> wrote:

> On Wed, 2005-06-15 at 11:45 +0200, Marcin Jessa wrote:
> > I am looking for solution I could implement on a link with a huge latency 
> > when ping replies can go up to a few hundred miliseconds, e.g sateliete 
> > links.
> > What I was thinking about is some kind of virtual interface which could 
> > translate tcp to udp in one of the pears of the link and push the data it 
> > received from a 'normal' interface through the virtual interface without 
> > bothering about ack-timing.
> > The receiving end would have a similar interface which would translate the 
> > udp data stream to tcp and then route it out to the internet.
> > (normal network)tcp<-->virtual udp interface<>virtual udp 
> > interface<-->tcp(normal network)
> > 
> > Is there something avaliable on FreeBSD that can be used for that purpose? 
> > Maybe someone is working on such a thing in CURRENT ?
> > Any thoughts about that? Any sugestions for a solution?
> 
> You want SCPS (the Space Communications Protocols Specification)
> software.  Briefly, it fakes local TCP on either end while talking its
> own protocol over the high-latency link.  I don't know if there is any
> open-source package available but there are certainly commercial
> solutions out there.
> -- 

Correct. That's why I asked about this problem here.
I was in doubt something like that existed for FreeBSD.
We are willing to pay someone to develop such a solution for FreeBSD.
I'd love to get in touch with someone willing to pick up that challenge.



___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


port 80 listening than root user

2005-06-16 Thread Mrad James Deane
Hello i want to know how can the www user listen on the port 80 rather than 
root or what is the the step or commade to take that allow the www user 
listen on port 80
i'm tryin to run my webserver (aolserver)for www from root but i keep the 
message cannot listen to port 80 permission denied.

Please help ,
Thanks

_
MSN Hotmail : antivirus et antispam intégrés 
http://www.msn.fr/newhotmail/Default.asp?Ath=f


___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Looking for networking solution.

2005-06-16 Thread jeffm
> On Thu, 16 Jun 2005 05:37:18 -0700
> Frank Mayhar <[EMAIL PROTECTED]> wrote:
>
>> On Wed, 2005-06-15 at 11:45 +0200, Marcin Jessa wrote:
>> > I am looking for solution I could implement on a link with a huge
>> latency when ping replies can go up to a few hundred miliseconds, e.g
>> sateliete links.
>> > What I was thinking about is some kind of virtual interface which
>> could translate tcp to udp in one of the pears of the link and push
>> the data it received from a 'normal' interface through the virtual
>> interface without bothering about ack-timing.
>> > The receiving end would have a similar interface which would translate
>> the udp data stream to tcp and then route it out to the internet.
>> > (normal network)tcp<-->virtual udp interface<>virtual udp
>> interface<-->tcp(normal network)
>> >
>> > Is there something avaliable on FreeBSD that can be used for that
>> purpose?
>> > Maybe someone is working on such a thing in CURRENT ?
>> > Any thoughts about that? Any sugestions for a solution?
>>
>> You want SCPS (the Space Communications Protocols Specification)
>> software.  Briefly, it fakes local TCP on either end while talking its
>> own protocol over the high-latency link.  I don't know if there is any
>> open-source package available but there are certainly commercial
>> solutions out there.
>> --
>
> Correct. That's why I asked about this problem here.
> I was in doubt something like that existed for FreeBSD.
> We are willing to pay someone to develop such a solution for FreeBSD.
> I'd love to get in touch with someone willing to pick up that challenge.
>
>

someone forwarded me this link (offlist) and said they have a fbsd
implementation of SCPS.  I have no other details.

http://www.xiplink.com/

jeff

>
> ___
> freebsd-net@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "[EMAIL PROTECTED]"
>

___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Carp Suppression

2005-06-16 Thread Yar Tikhiy
On Wed, Jun 15, 2005 at 02:32:19PM -0400, Josh Kayse wrote:
> On 6/15/05, Gleb Smirnoff <[EMAIL PROTECTED]> wrote:
>  
> > AFAIU, you use PLIP line as some flag that triggers suppression. If
> > slave "sees" master via PLIP, it keeps itself in slave mode. May be
> > I don't understand you right.
> > 
> > Although the idea is not officially supported, it is interesting. Can you
> > please draw your setup, since I don't understand it clearly?
> > 
> __
> em0  ||em1
> | FW1|---
> |_|
>xl0(carp0)| | plip0(carp1)
> ___|___|___
> em0 | | em1
> ---| FW2 |--
>|__|
> 
> 
> Bridging is done through em0/em1 which are both monitored by ifstated
> for link state only (backported patch from HEAD).
> 
> When one of the bridging ports is disconnected, ifstaded changes the
> advskew of carp0 and carp1 to 254 so that the carp interfaces
> failover.
> 
> When ifstated see the carp interfaces as BOTH master, the slave
> firewall takes over bridging.
> 
> This gives us redundant firewalls, with redundant heartbeat connections.

In fact, not all network failures lead to detectable link loss.  I
can imagine a situation when the switch port FW1-em0 is connected
to just hangs and so FW1 is unable to notice the event.  If CARP
ran on the em0 side of FW1 and FW2, they would notice such an event
though due to CARP packets unable to flow between FW1-em0 and FW2-em0
any longer.  The advantage of CARP used customarily and not on a
separate "heartbeat" interface is that it provides active detection
of failures on the very network that should be made fail-safe.

-- 
Yar
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re[2]: (panic) Lots of network memory needed

2005-06-16 Thread dima
> 
> I'm fairly sure that you are out of kernel virtual memory.
> Look at kern/kern_malloc.c kmeminit (); you can play w/ VM_KMEM_SIZE_MAX
> or  TUNABLE_INT_FETCH("kern.vm.kmem.size", &vm_kmem_size);
> 
>   /*
>   * Try to auto-tune the kernel memory size, so that it is
>   * more applicable for a wider range of machine sizes.
>   * On an X86, a VM_KMEM_SIZE_SCALE value of 4 is good, while
>   * a VM_KMEM_SIZE of 12MB is a fair compromise.  The
>   * VM_KMEM_SIZE_MAX is dependent on the maximum KVA space
>   * available, and on an X86 with a total KVA space of 256MB,
>   * try to keep VM_KMEM_SIZE_MAX at 80MB or below.
>   *
>   * Note that the kmem_map is also used by the zone allocator,
>   * so make sure that there is enough space.
>   */
>  vm_kmem_size = VM_KMEM_SIZE;
>  mem_size = cnt.v_page_count * PAGE_SIZE;
Which version do you use? I see the following in my /sys/kern/kern_malloc.c:
vm_kmem_size = VM_KMEM_SIZE + nmbclusters * PAGE_SIZE;

/*
 * Limit kmem virtual size to twice the physical memory.
 * This allows for kmem map sparseness, but limits the size
 * to something sane. Be careful to not overflow the 32bit
 * ints while doing the check.
 */
if (((vm_kmem_size / 2) / PAGE_SIZE) > cnt.v_page_count)
vm_kmem_size = 2 * cnt.v_page_count * PAGE_SIZE;
It's 5.4-p2



> 
> #if defined(VM_KMEM_SIZE_SCALE)
>  if ((mem_size / VM_KMEM_SIZE_SCALE) > vm_kmem_size)
>  vm_kmem_size = mem_size / VM_KMEM_SIZE_SCALE;
> #endif
> 
> #if defined(VM_KMEM_SIZE_MAX)
>  if (vm_kmem_size >= VM_KMEM_SIZE_MAX)
>  vm_kmem_size = VM_KMEM_SIZE_MAX;
> #endif
> 
>  /* Allow final override from the kernel environment */
>  TUNABLE_INT_FETCH("kern.vm.kmem.size", &vm_kmem_size);
> 
> 
> Karim Fodil-Lemelin wrote:
> > Thanks but the system still crashes (FreeBSD 4.9) with 131072. Here is a 
> > backtrace showing just that:
> > 
> > Debugger (msg=0xc02b6cdb "panic") at ../../i386/i386/db_interface.c:321
> > 321 }
> > (kgdb) bt
> > #0  Debugger (msg=0xc02b6cdb "panic") at ../../i386/i386/db_interface.c:321
> > #1  0xc016a230 in panic (
> >fmt=0xc02ea380 "pmap_enter: invalid page directory pdir=%#llx, 
> > va=%#x\n")
> >at ../../kern/kern_shutdown.c:593
> > #2  0xc0283594 in pmap_enter (pmap=0xc0340460, va=4292141056, m=0xc24b2848,
> >prot=7 '\a', wired=1) at ../../i386/i386/pmap.c:1943
> > #3  0xc023ddd0 in vm_fault (map=0xc033322c, vaddr=4292141056,
> >fault_type=7 '\a', fault_flags=1) at ../../vm/vm_fault.c:841
> > #4  0xc023df0a in vm_fault_wire (map=0xc033322c, start=4292141056,
> >end=4292149248) at ../../vm/vm_fault.c:915
> > #5  0xc0240831 in vm_map_pageable (map=0xc033322c, start=4292141056,
> >real_end=4292149248, new_pageable=0) at ../../vm/vm_map.c:1817
> > #6  0xc023ea25 in kmem_alloc (map=0xc033322c, size=8192)
> >at ../../vm/vm_kern.c:213
> > #7  0xc024a46f in _zget (z=0xdb5c6e80) at ../../vm/vm_zone.c:425
> > #8  0xc024a269 in zalloc (z=0xdb5c6e80) at ../../vm/vm_zone.c:60
> > #9  0xc0196106 in namei (ndp=0xfa489ef4) at ../../kern/vfs_lookup.c:104
> > #10 0xc01614ca in execve (p=0xfa482e00, uap=0xfa489f90)
> >at ../../kern/kern_exec.c:165
> > #11 0xc01590a1 in start_init (dummy=0x0) at ../../kern/init_main.c:543
> > (kgdb) p nmbclusters
> > $1 = 131072
> > (kgdb)
> > 
> > Goran Spirovski - MorEl On.net wrote:
> > 
> >> AFAIK the number of mbufs (and consequently nmbclusters) has to be a 
> >> power
> >> of 2, so you should set it to 131072
> >>
> >> MorEl
> >>
> >> - Original Message - From: "Karim Fodil-Lemelin" <[EMAIL 
> >> PROTECTED]>
> >> To: 
> >> Sent: Wednesday, June 15, 2005 6:08 PM
> >> Subject: (panic) Lots of network memory needed
> >>
> >>
> >>  
> >>
> >>> Hello,
> >>>
> >>> From kernel tuning page
> >>>   
> >>
> >> (http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/configtuning-kern
> >>  
> >>
> >> el-limits.html)
> >>  
> >>
> >>> Some sentence about nmbclusters says:
> >>>
> >>> "Under no circumstances should you specify an arbitrarily high value for
> >>>   
> >>
> >> this parameter as it could lead to a boot time crash."
> >>  
> >>
> >>> Now I want to push the limits where I need 4KB buffer for each of the
> >>>   
> >>
> >> 32000 connections I want this server to handle. If I do the math:
> >>  
> >>
> >>> (32000 (conns) * 4 (KB/buffer) * 2 (buffer/conn)) / 2048 (KB/cluster)
> >>>
> >>> = 128000 clusters
> >>>
> >>> So I set this arbitrary high value in loader.conf under
> >>>   
> >>
> >> (kern.ipc.nmbclusters) and no surprises I get panic: pmap_enter 
> >> invalid page
> >> directory pdir=0x3cb063, va=0xfff800
> >>  
> >>
> >>> (va has a weird address here)
> >>>
> >>> I know I am pushing the limits here but I have plenty of memory (2GB) on
> >>>   
> >>
> >> this system (after all its jus

Re: port 80 listening than root user

2005-06-16 Thread Abu Khaled
On 6/16/05, Mrad James Deane <[EMAIL PROTECTED]> wrote:
> Hello i want to know how can the www user listen on the port 80 rather than
> root or what is the the step or commade to take that allow the www user
> listen on port 80
> i'm tryin to run my webserver (aolserver)for www from root but i keep the
> message cannot listen to port 80 permission denied.
> Please help ,
> Thanks
> 

Does not AOLserver run as user nobody and group nobody by default on freebsd?

Check the script /usr/local/etc/rc.d/aolserver.sh

-- 
Kind regards
Abu Khaled
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Looking for networking solution.

2005-06-16 Thread Bob Bishop

Hi,

At 13:47 16/06/2005, Marcin Jessa wrote:

On Thu, 16 Jun 2005 05:37:18 -0700
Frank Mayhar <[EMAIL PROTECTED]> wrote:

>
> You want SCPS (the Space Communications Protocols Specification)
> software.  Briefly, it fakes local TCP on either end while talking its
> own protocol over the high-latency link.  I don't know if there is any
> open-source package available but there are certainly commercial
> solutions out there.
> --

Correct. That's why I asked about this problem here.
I was in doubt something like that existed for FreeBSD.
We are willing to pay someone to develop such a solution for FreeBSD.
I'd love to get in touch with someone willing to pick up that challenge.


If you haven't done so, you might want to look at 
http://www.scps.org/scps/Reference_S_W/reference_s_w.html
and see whether the reference implementation would be available for porting 
to FreeBSD.


--
Bob Bishop  +44 (0)118 940 1243
[EMAIL PROTECTED]   fax +44 (0)118 940 1295

___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


PPPoE on virtual interfaces inside vimages?

2005-06-16 Thread Ragnar Lonn

Yet another complex question regarding vimage/netgraph :-)

I'm trying to use the ppp program to do PPPoE on an ngeth interface 
without much

luck. I'm using the following Netgraph tree setup:

   upper---link0
[fxp0]  [ng_bridge] link2---ds [ng_vlan] vlan101--- ether 
[EMAIL PROTECTED]

   lower---link1

The physical ethernet interface fxp0 has setautosrc=0 configured and the 
ngeth interface
has its own unique MAC address set. Packets sent out are thus tagged 
with VLAN id
101 and gets a certain MAC address. All of this behaviour is a necessity 
for the
application we run (client simulations - The VLAN node actually has 
hundreds of
upstream VLAN hooks connected to hundreds of ngeth interfaces in 
hundreds of

vimages).

Now, the ppp program uses Netgraph to connect to the "orphan" hook of a 
real
ethernet interface, so when I try to run it in a vimage on the ngeth0 
interface there it
complains that the interface type is wrong (I have patched the kernel so 
it is possible
to create ng_sockets inside any vimage so that's not a problem at 
least). It wants

an ng_ether interface, with an "orphans" hook.

Is it possible to have ppp connect to the ng_eiface (ngeth) interface 
instead of
a real physical interface, and how should I do that?  Or if not, what 
would be

the best way to be able to do PPPoE inside a vimage, while simultaneously
forcing VLAN-tagging and MAC address overwriting?

Regards,

 /Ragnar







___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: vr0 kernel panic

2005-06-16 Thread Brooks Davis
[DO NOT reply to random messages to post on new topics.  I nearly missed
this message.]

On Thu, Jun 16, 2005 at 10:06:01AM +0400, Andrey Smagin wrote:
> Hi ALL,
> 
>panic: vr0f0: BUG: if_attach called without if_alloc'd input()
> 
>   Kernel panic after load, since about week in current.
>   Bad but solution:
>   load if_vr module and configure interface after all (in rc.d/ script).

Please read /usr/src/UPDATING.  It looks like you updated your kernel,
but not modules.  vr(4)'s attach routing looks correct by inspection and
the interface works here.

-- Brooks

-- 
Any statement of the form "X is the one, true Y" is FALSE.
PGP fingerprint 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4


pgp97alw7Opzs.pgp
Description: PGP signature


Re: LVS FreeBSD port

2005-06-16 Thread Robert Watson


On Thu, 16 Jun 2005, dragonfly dragonfly wrote:

   Recently i did a LVS FreeBSD port, and released 0.4.0 version 
(http://dragon.linux-vs.org/~dragonfly/htm/lvs_freebsd.htm). It supports 
LVS/DR and LVS/TUN with all LVS schedulers. Thanks must go to Clement 
Laforet for committing it to ports/net/ipvs.
   LVS(http://www.linuxvirtualserver.org/) is a widely used server 
cluster schedule system, which is be included in Linux official kernel 
2.4 and 2.6 release.

   Tests, bug report and fix, comments are very welcome.


Li Wang,

This looks like very interesting work.  I'm confused, however, by the need 
for a kernel patch here -- it looks like the changes essentially center on 
allowing kernel modules to register new socket option handlers for 
sockets, and that the socket pointer itself isn't handed into the socket 
option handlers.  I don't have a very complete understanding of the LVS 
kernel code yet, but my impression is that maybe you could simply 
substitute a sysctl for each of the get and set options, and avoid a patch 
entirely?  Or perhaps the goal here is to minimize modifications to the 
userland netfilter admin tool?


Thanks,

Robert N M Watson
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Looking for networking solution.

2005-06-16 Thread Hans Lambermont
Marcin Jessa wrote:

> Frank Mayhar <[EMAIL PROTECTED]> wrote:
...
>> You want SCPS (the Space Communications Protocols Specification)
>> software.  Briefly, it fakes local TCP on either end while talking
>> its own protocol over the high-latency link.  I don't know if there
>> is any open-source package available but there are certainly
>> commercial solutions out there.
> 
> Correct. That's why I asked about this problem here.  I was in doubt
> something like that existed for FreeBSD.

Yesterday I posted a mail about Tellitec. What I forgot to mention is
that it runs on FreeBSD too. I'm sure Tellitec has a native FreeBSD
binary, but the Linux binary I use at work also runs fine on FreeBSD.
However, it is closed source, so :

> We are willing to pay someone to develop such a solution for FreeBSD.
> I'd love to get in touch with someone willing to pick up that challenge.

I'm not sure it is what you're looking for.

-- Hans Lambermont

Disclaimer: I have a business relation to Tellitec.
-- 
http://hans.dse.nl/   () ASCII-ribbon campaign against vCards,
  /\ HTML-mail and proprietary formats.
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: ia64/81284: Unaligned Reference with pf on 5.4/IA64

2005-06-16 Thread John-Mark Gurney
Daniel Hartmeier wrote this message on Thu, Jun 16, 2005 at 00:34 +0200:
> So, are you really sure we should do differently in pf, instead of
> looking for a bridge problem, where bridge constructs an mbuf with the
> IP header not properly aligned?
> 
> I.e. if the IP header is properly aligned within the mbuf (on 32-bit
> boundaries, I presume), wouldn't ip_src/dst have to be properly aligned
> as well, even though __packed is used, because the layout of struct ip
> is chosen like that?

This is a more general problem..  All of our ethernet drivers that run
on aligned platforms have special code to offset by 2 the ethernet
packet specificly so that struct ip and friends are properly aligned..
This is because the ethernet header is 14 bytes long, and if the data
was left unchanged, the struct ip would start at x mod 4 = 2...

of course, this is stupid, and each component that requires alignment
when accepting a packet from another interface (i.e. pf taking in an
mbuf from another system like bridge, or even the if stack) should use
the m_copyup function that I committed a bit back.. This will give you
correct alignment, and at the same time, make it continue to work
if/when we finally decide to not have the ethernet drivers align packets...

-- 
  John-Mark Gurney  Voice: +1 415 225 5579

 "All that I will do, has been done, All that I have, has not."
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: (panic) Lots of network memory needed

2005-06-16 Thread Karim Fodil-Lemelin
I use FreeBSD 4.9. Actually I had to _reduce_ VM_KMEM_SIZE in order to 
be able to create that much mnbclusters ...


Somehow it seems that vm_kmem_size cannot go over 1GB without crashing 
the system so I had to reduce memory map from other subsystems in order 
to get what I needed for network memory. From:


vm_kmem_size = VM_KMEM_SIZE + nmbclusters * PAGE_SIZE;

Assuming vm_kmem_size has some sort of hard limit, if I reduce VM_KMEM_SIZE I 
can get more nmbclusters into the system.


dima wrote:


I'm fairly sure that you are out of kernel virtual memory.
Look at kern/kern_malloc.c kmeminit (); you can play w/ VM_KMEM_SIZE_MAX
or  TUNABLE_INT_FETCH("kern.vm.kmem.size", &vm_kmem_size);

 /*
 * Try to auto-tune the kernel memory size, so that it is
 * more applicable for a wider range of machine sizes.
 * On an X86, a VM_KMEM_SIZE_SCALE value of 4 is good, while
 * a VM_KMEM_SIZE of 12MB is a fair compromise.  The
 * VM_KMEM_SIZE_MAX is dependent on the maximum KVA space
 * available, and on an X86 with a total KVA space of 256MB,
 * try to keep VM_KMEM_SIZE_MAX at 80MB or below.
 *
 * Note that the kmem_map is also used by the zone allocator,
 * so make sure that there is enough space.
 */
vm_kmem_size = VM_KMEM_SIZE;
mem_size = cnt.v_page_count * PAGE_SIZE;
   


Which version do you use? I see the following in my /sys/kern/kern_malloc.c:
   vm_kmem_size = VM_KMEM_SIZE + nmbclusters * PAGE_SIZE;

   /*
* Limit kmem virtual size to twice the physical memory.
* This allows for kmem map sparseness, but limits the size
* to something sane. Be careful to not overflow the 32bit
* ints while doing the check.
*/
   if (((vm_kmem_size / 2) / PAGE_SIZE) > cnt.v_page_count)
   vm_kmem_size = 2 * cnt.v_page_count * PAGE_SIZE;
It's 5.4-p2



 


#if defined(VM_KMEM_SIZE_SCALE)
if ((mem_size / VM_KMEM_SIZE_SCALE) > vm_kmem_size)
vm_kmem_size = mem_size / VM_KMEM_SIZE_SCALE;
#endif

#if defined(VM_KMEM_SIZE_MAX)
if (vm_kmem_size >= VM_KMEM_SIZE_MAX)
vm_kmem_size = VM_KMEM_SIZE_MAX;
#endif

/* Allow final override from the kernel environment */
TUNABLE_INT_FETCH("kern.vm.kmem.size", &vm_kmem_size);


Karim Fodil-Lemelin wrote:
   

Thanks but the system still crashes (FreeBSD 4.9) with 131072. Here is a 
backtrace showing just that:


Debugger (msg=0xc02b6cdb "panic") at ../../i386/i386/db_interface.c:321
321 }
(kgdb) bt
#0  Debugger (msg=0xc02b6cdb "panic") at ../../i386/i386/db_interface.c:321
#1  0xc016a230 in panic (
  fmt=0xc02ea380 "pmap_enter: invalid page directory pdir=%#llx, 
va=%#x\n")

  at ../../kern/kern_shutdown.c:593
#2  0xc0283594 in pmap_enter (pmap=0xc0340460, va=4292141056, m=0xc24b2848,
  prot=7 '\a', wired=1) at ../../i386/i386/pmap.c:1943
#3  0xc023ddd0 in vm_fault (map=0xc033322c, vaddr=4292141056,
  fault_type=7 '\a', fault_flags=1) at ../../vm/vm_fault.c:841
#4  0xc023df0a in vm_fault_wire (map=0xc033322c, start=4292141056,
  end=4292149248) at ../../vm/vm_fault.c:915
#5  0xc0240831 in vm_map_pageable (map=0xc033322c, start=4292141056,
  real_end=4292149248, new_pageable=0) at ../../vm/vm_map.c:1817
#6  0xc023ea25 in kmem_alloc (map=0xc033322c, size=8192)
  at ../../vm/vm_kern.c:213
#7  0xc024a46f in _zget (z=0xdb5c6e80) at ../../vm/vm_zone.c:425
#8  0xc024a269 in zalloc (z=0xdb5c6e80) at ../../vm/vm_zone.c:60
#9  0xc0196106 in namei (ndp=0xfa489ef4) at ../../kern/vfs_lookup.c:104
#10 0xc01614ca in execve (p=0xfa482e00, uap=0xfa489f90)
  at ../../kern/kern_exec.c:165
#11 0xc01590a1 in start_init (dummy=0x0) at ../../kern/init_main.c:543
(kgdb) p nmbclusters
$1 = 131072
(kgdb)

Goran Spirovski - MorEl On.net wrote:

 

AFAIK the number of mbufs (and consequently nmbclusters) has to be a 
power

of 2, so you should set it to 131072

MorEl

- Original Message - From: "Karim Fodil-Lemelin" <[EMAIL PROTECTED]>
To: 
Sent: Wednesday, June 15, 2005 6:08 PM
Subject: (panic) Lots of network memory needed




   


Hello,

From kernel tuning page
 
 

(http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/configtuning-kern 


el-limits.html)


   


Some sentence about nmbclusters says:

"Under no circumstances should you specify an arbitrarily high value for
 
 


this parameter as it could lead to a boot time crash."


   


Now I want to push the limits where I need 4KB buffer for each of the
 
 


32000 connections I want this server to handle. If I do the math:


   


(32000 (conns) * 4 (KB/buffer) * 2 (buffer/conn)) / 2048 (KB/cluster)

= 128000 clusters

So I set this arbitrary high value in loader.conf under
 
 

(kern.ipc.nmbclusters) and no surprises I get panic: pmap_enter 
invalid page

directory pdir=0x3cb063, va=0xfff800


   


(va has a weird address here)

I know I am pushi

Problems with latest freevrrpd.

2005-06-16 Thread Andrea Venturoli

Hello.

I have two FreeBSD 4.11 boxes which have been using freevrrpd for a long 
time. Today I upgraded from 0.8.7 to 0.9.3 and since then I started 
having some problems.



Specifically I started to see this messages on both boxes:

freevrrpd[822]: ip ttl of vrrp packet isn't set to 255. Packet is discar
ded !

Strangest thing is that this boxes are both dual-homed, and one side 
(fxp1 below) was working correctly, the other not (fxp0 below), meaning 
that both boxed grabbed all configured address (yes, both master and 
backup).


I googled around and found out that someone was having the same problem, 
but no solution was provided. Since I was in a hurry, I grabbed the 
sources, commented this test out in vrrp_misc_check_vrrp_packet, and 
recompiled. Since then everything seems to work correctly, but I didn't 
have the chance to test failover yet (!!!).


Comments and/or suggestions?



Furthermore, I'm frequently seeing the following messages:

freevrrpd[2188]: all errors are cleared on interface fxp1
freevrrpd[2188]: all errors are cleared on interface fxp0

Is this normal? Or something worth looking at?





Here is my conf:

[VRID]
serverid = 1
interface = fxp1
priority = 255
addr = 192.168.0.4/32
password = x
[VRID]
serverid = 2
interface = fxp1
priority = 254
addr = 192.168.0.5/32
password = x
vridsdep=4
[VRID]
serverid=3
interface=fxp0
priority=255
addr=192.168.101.5/32
password=x
[VRID]
serverid=4
interface=fxp0
priority=254
addr=192.168.101.6/32
password=x
vridsdep=1

The one on the other box is just specular, only one interface is fxp0, 
the other xl0.




P.S. Please remove .diesmapper to reply. Sorry I have to do this :(
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Looking for networking solution.

2005-06-16 Thread Olivier Nicole
> I want to just dump all the packets between two satelite links
> without checking for ack back and forth which creates latency and
> long ping times.

The latency is created by the satellite transmission delay, not by the
ack. ACK suffer from the latency, but do not create it.

> Correct. That's why I asked about this problem here.
> I was in doubt something like that existed for FreeBSD.
> We are willing to pay someone to develop such a solution for FreeBSD.
> I'd love to get in touch with someone willing to pick up that challenge.

I doubt that anyone will be interested in developping a protocol that
do not care about the reliability of transmission. Just saying "drop
the ack" is not the way to go.

If you are talking about a protocole that does dialogue (like email),
suppressing the ack will not help: one end must wait until it receives
one question before it can answer, and then the ack is transmitted in
the same paket as the answer.

If you are talking about a more "one way" protocol (like http for
ex. request one file and then wait for the file to flow), a better a
pproach would be to allow a bigger chunk of data to get through before
the first ack is due (to fill the pipe). That can be done by
increading the window size of TCP, without damaging the retransmission
capabilities.

As the window size change would need to b done in every client and
server, we were once considering to put two reverse NAT at each end of
the satellite link. The NAT being in charge of changing the window
size (I don't remember the full details, but it looked feasible).

Olivier
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: vr0 kernel panic

2005-06-16 Thread Andrey Smagin
Hello Brooks,

Thursday, June 16, 2005, 8:51:14 PM, you wrote:

BD> [DO NOT reply to random messages to post on new topics.  I nearly missed
BD> this message.]

BD> On Thu, Jun 16, 2005 at 10:06:01AM +0400, Andrey Smagin wrote:
>> Hi ALL,
>> 
>>panic: vr0f0: BUG: if_attach called without if_alloc'd input()
>> 
>>   Kernel panic after load, since about week in current.
>>   Bad but solution:
>>   load if_vr module and configure interface after all (in rc.d/ script).

BD> Please read /usr/src/UPDATING.  It looks like you updated your kernel,
BD> but not modules.  vr(4)'s attach routing looks correct by inspection and
BD> the interface works here.

Ok. I am will check it all more complex. But about year i live on current.
By cron every day at 2:30(Moscow) cvsup new sources and automaticaly build and
install it. And i not touched configs last few month. Today new build
also panic reboots at vr0. Bad news for me that i updated my
server, and it also hang's on boot. Server have no vr at all, then because
i think that problem not in vr driver. Server have no monitor i can't look
point of crash now. Now i use kernel.old. Present some incompatibles with world,
but system work anyway.

BD> -- Brooks

-- 
Best regards,
 Andreymailto:[EMAIL PROTECTED]

___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"