I use peth driver with ixp1200, and meet this error message. this error will drop some output packet occasionally, who will tell me what is happend, thanks very much this error is below: $ insmod ue.o $ insmod octmac.o $ insmod giga_drv.o $ rs_udebug $ load $ ping 1.2.1.1 then I meet the error message like that: peth_start_xmit called peth_start_xmit: new descriptor = 0 Bad descriptor 0, dropping outgoing packet pethFreeDescriptor: descriptor = 0 pethFreeDescriptor: Bad descriptor 0 Best Regard
We are using Embedded Linux tools and Peth from Viosoft Corp. We have no problems running PETH and applications utilising the PETH. If you would like more information, you could contact Viosoft or their distributors. 1. Did you start your microengine? 2. If yes, check status, usually it is fault in microengine. Let me know if you need further information. -----Original Message----- From: owner-ixp1200@CS.Princeton.EDU [mailto:owner-ixp1200@CS.Princeton.EDU] On Behalf Of huangtao Sent: Saturday, February 15, 2003 11:34 AM To: ixp1200@CS.Princeton.EDU Subject: [ixp1200] peth driver question, need help I use peth driver with ixp1200, and meet this error message. this error will drop some output packet occasionally, who will tell me what is happend, thanks very much this error is below: $ insmod ue.o $ insmod octmac.o $ insmod giga_drv.o $ rs_udebug $ load $ ping 1.2.1.1 then I meet the error message like that: peth_start_xmit called peth_start_xmit: new descriptor = 0 Bad descriptor 0, dropping outgoing packet pethFreeDescriptor: descriptor = 0 pethFreeDescriptor: Bad descriptor 0 Best Regard
Hi, I am new to IXP programming. I am looking at the Vera software to learn about programming in IXP. I am planning to do some operations at the router on the packets flowing through the IXP router (simple read oprations such as reading the source and destination IP addresses and keeping a table of last "k" such addresses, and possibly altering some fields of interest in the IP packet). Can someone tell me how to go about doing the same ? Thank you very much for your time. Jagan.
On Mon, 17 Feb 2003, Jagannathan Iyer Venkatesan wrote:
I am planning to do some operations at the router on the packets flowing through the IXP router (simple read oprations such as reading the source and destination IP addresses and keeping a table of last "k" such addresses, and possibly altering some fields of interest in the IP packet). Can someone tell me how to go about doing the same ?
Jagan, You might want to start looking at the files in Libixprouter/ue/src, specifically, rcv.uc and vrp.uc. There is a hook in rcv.uc which will be called every time a packet (really a 64 byte chunk of a packet) is processed. You ought to be able to write whatever function you want to fit in this hook. Zuki -- Yitzchak Gottlieb zuki@CS.Princeton.EDU
I have always start the microengine, I can ping to another ip address, but if the speed is a litter high, peth will drop
some packet. this error is occured below:
in the peth_start_xmit function of source file peth.c
....
/* Get a new descriptor where we can write the packet data */
sram_pop(freelist, &descriptor);
descriptor = PETH_DESC_CORETOUENG(descriptor); ------> this descriptor is 0
....
PETH_DESC_POSTPOP(descriptor);
/* Sanity check */
if (!PETH_VALID_DESCRIPTOR(descriptor)) {
logMsg("Bad descriptor %x, dropping outgoing packet\n", descriptor); -----> so have a error message
pethFreeDescriptor(freelist, descriptor);
goto errorAndCleanTXD; ---->xmit packet is droped
}
....
who can help me pls.
Best Regard
----- Original Message -----
From: "Jimmy Brian Christanthio"
We are using Embedded Linux tools and Peth from Viosoft Corp. We have no problems running PETH and applications utilising the PETH. If you would like more information, you could contact Viosoft or their distributors.
1. Did you start your microengine?
2. If yes, check status, usually it is fault in microengine.
Let me know if you need further information.
-----Original Message----- From: owner-ixp1200@CS.Princeton.EDU [mailto:owner-ixp1200@CS.Princeton.EDU] On Behalf Of huangtao Sent: Saturday, February 15, 2003 11:34 AM To: ixp1200@CS.Princeton.EDU Subject: [ixp1200] peth driver question, need help
I use peth driver with ixp1200, and meet this error message. this error will drop some output packet occasionally, who will tell me what is happend, thanks very much
this error is below:
$ insmod ue.o $ insmod octmac.o $ insmod giga_drv.o $ rs_udebug $ load $ ping 1.2.1.1
then I meet the error message like that:
peth_start_xmit called peth_start_xmit: new descriptor = 0 Bad descriptor 0, dropping outgoing packet pethFreeDescriptor: descriptor = 0 pethFreeDescriptor: Bad descriptor 0
Best Regard
Warning: I havent used PETH so I might be totally off on this, but I am taking a guess. ********* Looks like you are generating packets faster than the rate at which xmt code sends them out and returns the descriptor to the SRAM push/pop queue. What is the number of buffers in your freelist? It is around 50 packets/slots for usual ethernet devices. You dont probably want it bigger than that because it can cause long queuing delays for low bandwidth links. What rate are you generating packets at? ********* -- abhijeet On Tue, 18 Feb 2003, huangtao wrote:
I have always start the microengine, I can ping to another ip address, but if the speed is a litter high, peth will drop some packet. this error is occured below:
in the peth_start_xmit function of source file peth.c .... /* Get a new descriptor where we can write the packet data */ sram_pop(freelist, &descriptor); descriptor = PETH_DESC_CORETOUENG(descriptor); ------> this descriptor is 0 .... PETH_DESC_POSTPOP(descriptor);
/* Sanity check */ if (!PETH_VALID_DESCRIPTOR(descriptor)) { logMsg("Bad descriptor %x, dropping outgoing packet\n", descriptor); -----> so have a error message pethFreeDescriptor(freelist, descriptor); goto errorAndCleanTXD; ---->xmit packet is droped } ....
who can help me pls.
Best Regard
thanks for your help
but the packets rate is very slow, I start just two ping windows from windows 2000.
each windows ping the same ip address of the peth. and the total descriptor is 1000,
I think the descriptor would not usr off.
----- Original Message -----
From: "Abhijeet Joglekar"
Warning: I havent used PETH so I might be totally off on this, but I am taking a guess.
********* Looks like you are generating packets faster than the rate at which xmt code sends them out and returns the descriptor to the SRAM push/pop queue. What is the number of buffers in your freelist? It is around 50 packets/slots for usual ethernet devices. You dont probably want it bigger than that because it can cause long queuing delays for low bandwidth links.
What rate are you generating packets at? *********
-- abhijeet
On Tue, 18 Feb 2003, huangtao wrote:
I have always start the microengine, I can ping to another ip address, but if the speed is a litter high, peth will drop some packet. this error is occured below:
in the peth_start_xmit function of source file peth.c .... /* Get a new descriptor where we can write the packet data */ sram_pop(freelist, &descriptor); descriptor = PETH_DESC_CORETOUENG(descriptor); ------> this descriptor is 0 .... PETH_DESC_POSTPOP(descriptor);
/* Sanity check */ if (!PETH_VALID_DESCRIPTOR(descriptor)) { logMsg("Bad descriptor %x, dropping outgoing packet\n", descriptor); -----> so have a error message pethFreeDescriptor(freelist, descriptor); goto errorAndCleanTXD; ---->xmit packet is droped } ....
who can help me pls.
Best Regard
participants (5)
-
Abhijeet Joglekar
-
huangtao
-
Jagannathan Iyer Venkatesan
-
Jimmy Brian Christanthio
-
Yitzchak M. Gottlieb