FW: [ixp1200] Regarding to IXP1200 Ethernet Port configuration

Ning Weng nweng at ecs.umass.edu
Fri Nov 22 10:07:48 EST 2002


Joel,

Thanks a lot. It works perfect for me, thank you so much for you so  detail instructions. After run the L3forearder
example, I could ping each ports of the ENP2505 card from my PC.

Attached file(ixsys_count_8_1.config)  is a configuration file for the simple counting application from the SDK CDs.
Would you like to help me to have a look at it? Compared ixsys_count_8_1.config with ixsys.config-l3fwdr, looks like
that they are pretty much same in terms of format. Why I can ping ports after running ./ixstart ixsys.config-l3fwdr;
but I cannot ping after running ./ixstart ixsys_8_1.config? what I mean, the total number of packet doesn't increase
even though I pinged the right port.

Thanks so much for your time and your help. Really appreciate it.

P.S. Should I have to reboot my IXP1200 after running an application and before load another one?

-ning

"Schuetze, Joel D" wrote:

> Greetings,
>
> Attached is a document and two patch files. The document describes the
> process for applying the patch, setting up the L3forwarder example, and
> testing it. Let me know if you have any questions regarding it.
>
> Joel Schuetze
>
> -----Original Message-----
> From: Brandewie, Dirk J
> Sent: Tuesday, November 19, 2002 10:26 AM
> To: Schuetze, Joel D
> Subject: FW: [ixp1200] Regarding to IXP1200 Ethernet Port configuration
>
> -----Original Message-----
> From: Ning Weng [mailto:nweng at ecs.umass.edu]
> Sent: Tuesday, November 19, 2002 6:37 AM
> To: ixp1200 at CS.Princeton.EDU
> Subject: [ixp1200] Regarding to IXP1200 Ethernet Port configuration
>
> Hi,
>
> I have one question here regarding to IXP1200 ENP2505.
>
> My case is I reboot my target(IXP1200) from my host machine through a
> serial cable, and I can ping each other via virtual interface( PCI) as
> well. Now I want the two system(IXP1200 and my host Linux machine)
> communicate by Ethernet port  via a cross over cable. My question is :
> what is the detail steps that I should do, such as network
> configurations or other? That will be a great help for me if you would
> like share your experiences or point me the the documentation that you
> followed.
>
> Thanks a lot.
>
> Ning
>
>   ------------------------------------------------------------------------
>                                                          Name: Setup and Running of Layer 3 Forwarder Example.ZIP
>    Setup and Running of Layer 3 Forwarder Example.ZIP    Type: Zip Compressed Data (application/x-zip-compressed)
>                                                      Encoding: base64
>
>                    Name: config_1.ZIP
>    config_1.ZIP    Type: Zip Compressed Data (application/x-zip-compressed)
>                Encoding: base64
>
>                 Name: board.ZIP
>    board.ZIP    Type: Zip Compressed Data (application/x-zip-compressed)
>             Encoding: base64
-------------- next part --------------
# **********************************************************************
#
#   Sample file for the ixconfig application
#
#   It is run at boot time  and specifies 
#  
#   - the interfaces that are to be started at system boot time
#   - the micro aces that are to be started at system boot time
#   - the regular aces that are to be started at system boot time
#   - bind configuration 
#   - Shell commands to be run 
#
#   For each microace or ace it also lets us specify another 
#   configuration file that can be used to configure that ace
#
#
# **********************************************************************
#
# First we specify the interfaces we want 
#
# For the SI board 
# 	--	0-15 are fast ethernet ports. 16 and 17 are gigabit ports
#
# <port number> <ip addr> <broadcast> <netmask> <mac address> <flags>
#
# Values for flags are 
#
#	0x0     Unicast 
#	0x1	Promiscous Mode
# 	0x2	All Multicast packets are allowed
#	0x3     Multicast packets in set only
#

interface 0 10.1.0.1 10.1.0.255 255.255.255.0 00:01:02:03:04:05 1
interface 1 10.2.0.1 10.2.0.255 255.255.255.0 00:01:02:03:04:06 1
interface 2 10.3.0.1 10.3.0.255 255.255.255.0 00:01:02:03:04:07 1
interface 3 10.4.0.1 10.4.0.255 255.255.255.0 00:01:02:03:04:08 1
interface 4 10.5.0.1 10.5.0.255 255.255.255.0 00:01:02:03:04:09 1
interface 5 10.6.0.1 10.6.0.255 255.255.255.0 00:01:02:03:04:10 1
interface 6 10.7.0.1 10.7.0.255 255.255.255.0 00:01:02:03:04:11 1
interface 7 10.8.0.1 10.8.0.255 255.255.255.0 00:01:02:03:04:12 1
interface 8 10.9.0.1 10.9.0.255 255.255.255.0 00:01:02:03:04:13 1
interface 9 10.10.0.1 10.10.0.255 255.255.255.0 00:01:02:03:04:14 1
interface 10 10.11.0.1 10.11.0.255 255.255.255.0 00:01:02:03:04:15 1
interface 11 10.12.0.1 10.12.0.255 255.255.255.0 00:01:02:03:04:16 1
interface 12 10.13.0.1 10.13.0.255 255.255.255.0 00:01:02:03:04:17 1
interface 13 10.14.0.1 10.14.0.255 255.255.255.0 00:01:02:03:04:18 1
interface 14 10.15.0.1 10.15.0.255 255.255.255.0 00:01:02:03:04:19 1
interface 15 10.16.0.1 10.16.0.255 255.255.255.0 00:01:02:03:04:20 1
interface 16 10.17.0.1 10.17.0.255 255.255.255.0 00:01:02:03:04:21 1
interface 17 10.18.0.1 10.18.0.255 255.255.255.0 00:01:02:03:04:22 1

# *********************************************************************
# Specify if we will be debugging with the workbench and downloading
# code via it 
#
# mode <mode>
#
# Values for mode are 
#
#	0x0	No workbench. 
#	0x1	Download and debug via workbench

#mode 0
mode 1


# *********************************************************************
# Next specify the Microcode files (UOF Files)
#
# <fileType> <fileName>
#
# Values for fileType are
#
#	0x0	Slow Ingress File	
#	0x1	Slow Egress File
#	0x2	Fast Ingress File for Port 1
#	0x3	Fast Ingress File for Port 2
#	0x4	Fast Egress File
#

file 0 ./SlowIngressCount.uof
file 1 ./SlowEgressRR.uof
file 2 ./FastIngressCount-seq1.uof
file 3 ./FastIngressCount-seq2.uof
file 4 ./FastEgressFifo.uof


# **********************************************************************
#
# Now specify the microaces 
#
# <name of ace> <name of executable> <config file name> <runsOn> \
#	<type> <additional parameters>
#
# runsOn can be -- 0 (RUNS_ON_INGRESS_SIDE)
#               -- 1 (RUNS_ON_EGRESS_SIDE)
#
# type can be -- 0 (unknown type)
#		 1 (Ingress)
#		 2 (egress)
#		 3 (L3)
#		 4 (L2)
#		 5 (input nat)
#		 6 (output nat)		 
#
# 
# The first parameter to every microace is the mask of microengines it
# runs on. This is passed automatically by the application. The <additional
# parameters> specify the rest of the command line parameters
#

# no config file for ingress and egress needed and no parameters

microace ifaceInput ./ingressAce none 0 1
microace ifaceOutput ./egressAce none 1 2

# This microace will substitute for L3 for now 
#
# options for CountMicroAce are 
#
# -v : verbose
# -target : send packets over the default target
# -loop : loop back packets to the microblock
# -blockname <name> : name of the microblock
# -port <portNumber>: output port to send to (default is dont change what's in
#                     the ofnum of the packet)
#


 microace CountMicroAce ./CountMicroAce 0 0 none -target -blockname COUNT 


# **********************************************************************
#
# Now specify the regular aces like stack ace, nat control ace, spanning
# tree ace etc
#
# <name of ace> <name of executable> <config file name> <type> <parameters>
#
#
# type can be -- 0 (unknown type)
#		 1 (Spanning Tree)
#		 2 (Nat control)
#		 3 (Stack ace)
#
# <parameters> are any command line (argc/argv) parameters to be passed to
# the ace
#
# **********************************************************************


# **********************************************************************
#
# Now specify the all the bind operations 
# 
# <static/regular> <target name> <ace name>
# 
# Specify static for microace to microace static targets
#

bind static ifaceInput/default CountMicroAce
bind static CountMicroAce/default ifaceOutput

# **********************************************************************

# Now specify any shell commands. These will always be executed last
# no matter where they are specified. Note that these are to be used
# typically for things like adding arp entries to the linux stack.
#
# Below we add arp entries to the linux stack. This is needed because
# the traffic generator we are using does not respond to ARP requests.
# Otherwise this is typically not needed as long as the ARP target of 
# of the interface ace is bound to the stack ace 
#
# Below we add a couple of arp entries 
#
# Syntax is 
#
# sh [command string to be executed]
#

# sh arp -s 10.1.0.2 01:02:03:04:05:06
# sh arp -s 10.2.0.2 02:02:03:04:05:06
# sh arp -s 10.3.0.2 03:02:03:04:05:06
# sh arp -s 10.4.0.2 04:02:03:04:05:06
# sh arp -s 10.5.0.2 05:02:03:04:05:06
# sh arp -s 10.6.0.2 06:02:03:04:05:06
# sh arp -s 10.7.0.2 07:02:03:04:05:06
# sh arp -s 10.8.0.2 08:02:03:04:05:06
# sh arp -s 10.9.0.2 09:02:03:04:05:06

# **********************************************************************


More information about the ixp1200 mailing list