[ixp1200] Re:Evaluation of Vera

Tan Chee Wei eng80386 at nus.edu.sg
Fri Feb 1 08:38:39 EST 2002


Hi Scott and Zuki,
 
Thank You for the prompt reply. The sgo problem has been resolved now. But
may I know under what circumstances does one use "pcireset" ? This program
hangs my machine too.
I still could not figure out the problem with ping.
192.168.133.38--->[Port 1]Vera[Port 0]--->192.168.133.147
My routing cache is as follows:
/* original */
{"192.168.133.38", "192.168.133.147", "00:E0:29:00:8A:57",
"00:E0:29:00:8C:AE", 0x00},
{"192.168.133.147", "192.168.133.38", "00:E0:29:00:8C:AE",
"00:E0:29:00:8A:57", 0x01},
/*mirror*/
{"192.168.133.38", "192.168.133.147", "00:E0:29:00:8A:57",
"00:E0:29:00:8C:AE", 0x01},
{"192.168.133.147", "192.168.133.38", "00:E0:29:00:8C:AE",
"00:E0:29:00:8A:57", 0x00},

Could I confirm that the last parameter ie. "0x00 or 0x01" points to the
port that the microengines is supposed to transmit out ?

a) The ETHsrc and ETHdst entries in the cache refer to the addresses
to be put on the packet. If the ETHdst address does not match the
computer to receive the packet the ping might not be recorded.  
I am still stuck at the point where the microengines can only receive. For
each packet received, the SA repeatedly reads and writes as pointed out.
None of the packet is transmitted.

b) There might not be any microengines servicing the ports. What are
the XMT_UE_BASE, XMT_CTX values in Libixprouter/common/src/config.h
First, I used the original values:
#define RCV_BASE_UE   0
#define RCV_UE_COUNT  2
#define RCV_CTX_COUNT 8
 
#define XMT_BASE_UE   4
#define XMT_UE_COUNT  2
#define XMT_CTX_COUNT 8

Control_BootUEs gives
tid 16, pid 1, ntid 20
tid 20, pid 2, ntid 17
tid 17, pid 3, ntid 21
tid 21, pid 4, ntid 18
tid 18, pid 5, ntid 22
tid 22, pid 6, ntid 19
tid 19, pid 7, ntid 23
tid 23, pid 0, ntid 16
tid 0, pid 1, ntid 4
tid 4, pid 2, ntid 1
tid 1, pid 3, ntid 5
tid 5, pid 4, ntid 2
tid 2, pid 5, ntid 6
tid 6, pid 6, ntid 3
tid 3, pid 7, ntid 7
tid 7, pid 0, ntid 0

Does that mean uengine 0 to 1 are activated for receive and uengine 4 and 5
are activated for transmit ? 
Now if I change it as such and recompile everything:
#define RCV_BASE_UE   0
#define RCV_UE_COUNT  4
#define RCV_CTX_COUNT 16
 
#define XMT_BASE_UE   4
#define XMT_UE_COUNT  2
#define XMT_CTX_COUNT 8
It means  uengine 0 to 3 are utilised for receive and the remaining for
transmit ?
But the Control_BootUEs remains the same as above.

c)I turned on Debugging and recompiled the ue source. But I did not get any
new message other than the SA's messages on the minicom console. Am I
missing something ?

4)I am interested in the layout of the queue in the memory and how this
layout is mapped to the 8 ports.
#define QUEUE_NO_BITS     3
#define XMT_Q_COUNT       (1 << QUEUE_NO_BITS)
This means I have 8 queues per port ?

Thank You once again and kind regards,
cheewei




More information about the ixp1200 mailing list