From owner-freebsd-net Fri May 26 6: 0: 7 2000 Delivered-To: freebsd-net@freebsd.org Received: from ns.unet.ru (ns.unet.ru [195.9.254.3]) by hub.freebsd.org (Postfix) with ESMTP id 90DA837B57C for ; Fri, 26 May 2000 05:59:59 -0700 (PDT) (envelope-from vick@unet.ru) Received: from unet.ru (localhost [127.0.0.1]) by ns.unet.ru (8.9.3/Unet) with ESMTP id QAA82027 for ; Fri, 26 May 2000 16:59:56 +0400 (MSD) (envelope-from vick@unet.ru) Message-ID: <392E754B.BCF8AC96@unet.ru> Date: Fri, 26 May 2000 16:59:56 +0400 From: Victor Ponomarev Organization: LPI X-Mailer: Mozilla 4.61 [en] (X11; I; FreeBSD 3.4-STABLE i386) X-Accept-Language: en MIME-Version: 1.0 To: Net Subject: VLAN improvement needed... Content-Type: text/plain; charset=koi8-r Content-Transfer-Encoding: 7bit Sender: owner-freebsd-net@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Hi All! Now VLAN support in stable is bad. Suppose you would like to really route two VLAN using a FreeBSD box as router. host---vlan port---trunk port---vlan port---host | | | router Usually in that config router port configured as a trunk also, this mean that it can received large packet. When host send a packet about 1514 byte switch trunk port add 4 byte and router trunk port substitute vlan tag to another and send it back to switch. The latter remove vlan header and send packet to appropriate vlan ports. Currently FreeBSD router simply drop large packet on it's interface. That's very bad... Second, standard ethernet MTU size is 1500, now we have vlan interface with MTU 1496, so large packet will be fragmented in BSD router on large and small packet. It's also bad because it's a) stupid resource consumed work for a router in that ethernet environment, b) small packet have large overhead and at last c) we should transmit two packet to medium instead one... The existing solution on these problem for Intel card may be found at http://www.euitt.upm.es/~pjlobo/ But there's another problem with small ip packet. When BSD router strip ethernet header for payload < 46 it strip padding bytes also. But when it reinserted data with another vlan header it don't add padding bytes and we have runts packets on interface... Sorry but I'm not a kernel programming expert so I can't change this things myself :( Bye, Vick. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message