Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 5 Apr 2000 09:28:36 -0400 
From:      "Cambria, Mike" <mcambria@lucent.com>
To:        'Marco Molteni' <molter@sofia.csl.sri.com>, freebsd-net@FreeBSD.ORG
Subject:   RE: MPLS (Multiprotocol Label Switching) on FreeBSD?
Message-ID:  <75ADD7496F0BD211ADC000104B8846CF012CED4C@rerun.lucentctc.com>

next in thread | raw e-mail | index | archive | help

Look at NIST http://www.antd.nist.gov/itg/nistswitch/
<http://www.antd.nist.gov/itg/nistswitch/>;   for MPLS on FreeBSD.  Their
page claims to have version 0.1 of MPLS on FreeBSD.

Good luck,
MikeC

Michael C. Cambria                        Lucent Technologies
Member of Technical Staff                        Bell Labs Innovations
   Voice: (978) 287 - 2807                300 Baker Avenue
     Fax: (978) 287 - 2810                Concord, Massachusetts 01742
Internet:  mcambria@lucent.com <mailto:mcambria@lucent.com> 


		-----Original Message-----
		From:	Marco Molteni [mailto:molter@sofia.csl.sri.com]
		Sent:	Tuesday, April 04, 2000 10:09 PM
		To:	freebsd-net@FreeBSD.ORG
		Subject:	MPLS (Multiprotocol Label Switching) on
FreeBSD?

		Hi all,

		I wanted to learn how to do kernel programming and so I
thought of
		implementing a cooperative routing lookup technique, for
example a
		very simplified version of MPLS (Multiprotocol Label
Switching, see
		[1]), or Cisco's tag switching (see [2]). As always in these
cases, it
		turned out that it is more difficult than it seemed :-)

		So I wanted to know if someone has worked on this stuff on a
FreeBSD
		box or is interested in doing some experiments together.

		If you are wondering what is a cooperative routing lookup
technique,
		here is a simplified introduction:

		Normally routers forward IP packets based on the destination
IP
		address, looking up the interface to use in the kernel
routing table.
		The routing table, at least in BSD kernels, is similar to a
Patricia
		trie (which is a special binary tree). The lookup starts at
the head
		of the trie and walks the trie until it finds a leaf that
matches. If
		no match is found, we go up one level and try again,
eventually
		backtracking till the head, which normally should contain
the default
		route.

		With cooperative routing lookup, the previous-hop router
"knows" the
		structure of my tree, and gives me an "hint" (an integer)
that I can
		use to jump directly to a small subtree that should contain
the
		routing entry I need. Then I will give a similar hint to the
next-hop
		router.

		All this should allow a router to forward a lot more packets
per unit
		of time, because it needs fewer accesses to the routing tree
to find a
		match.

		[1]
http://search.ietf.org/internet-drafts/draft-ietf-mpls-arch-06.txt
		[2] RFC 2105

		Thanks
		Marco



		To Unsubscribe: send mail to majordomo@FreeBSD.org
		with "unsubscribe freebsd-net" in the body of the message


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?75ADD7496F0BD211ADC000104B8846CF012CED4C>