mpls-linux-general Mailing List for MPLS for Linux (Page 147)
Status: Beta
Brought to you by:
jleu
You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(3) |
Dec
(26) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(22) |
Feb
(19) |
Mar
(19) |
Apr
(45) |
May
(52) |
Jun
(101) |
Jul
(79) |
Aug
(24) |
Sep
(43) |
Oct
(54) |
Nov
(71) |
Dec
(53) |
2002 |
Jan
(111) |
Feb
(123) |
Mar
(67) |
Apr
(61) |
May
(75) |
Jun
(26) |
Jul
(36) |
Aug
(41) |
Sep
(79) |
Oct
(85) |
Nov
(58) |
Dec
(39) |
2003 |
Jan
(26) |
Feb
(61) |
Mar
(80) |
Apr
(56) |
May
(39) |
Jun
(44) |
Jul
(28) |
Aug
(25) |
Sep
(4) |
Oct
(20) |
Nov
(38) |
Dec
(9) |
2004 |
Jan
(14) |
Feb
(14) |
Mar
(68) |
Apr
(17) |
May
(45) |
Jun
(42) |
Jul
(41) |
Aug
(23) |
Sep
(46) |
Oct
(89) |
Nov
(55) |
Dec
(33) |
2005 |
Jan
(74) |
Feb
(39) |
Mar
(105) |
Apr
(96) |
May
(43) |
Jun
(48) |
Jul
(21) |
Aug
(22) |
Sep
(33) |
Oct
(28) |
Nov
(29) |
Dec
(81) |
2006 |
Jan
(37) |
Feb
(32) |
Mar
(147) |
Apr
(37) |
May
(33) |
Jun
(28) |
Jul
(15) |
Aug
(20) |
Sep
(15) |
Oct
(23) |
Nov
(30) |
Dec
(40) |
2007 |
Jan
(20) |
Feb
(24) |
Mar
(65) |
Apr
(69) |
May
(41) |
Jun
(53) |
Jul
(39) |
Aug
(76) |
Sep
(53) |
Oct
(43) |
Nov
(26) |
Dec
(24) |
2008 |
Jan
(19) |
Feb
(67) |
Mar
(91) |
Apr
(75) |
May
(47) |
Jun
(63) |
Jul
(68) |
Aug
(39) |
Sep
(44) |
Oct
(33) |
Nov
(62) |
Dec
(84) |
2009 |
Jan
(14) |
Feb
(39) |
Mar
(55) |
Apr
(63) |
May
(16) |
Jun
(9) |
Jul
(4) |
Aug
(6) |
Sep
(1) |
Oct
(2) |
Nov
(10) |
Dec
(5) |
2010 |
Jan
(3) |
Feb
(1) |
Mar
(5) |
Apr
(13) |
May
(4) |
Jun
(5) |
Jul
(2) |
Aug
(8) |
Sep
(6) |
Oct
(1) |
Nov
(2) |
Dec
(2) |
2011 |
Jan
(1) |
Feb
(21) |
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
(3) |
Aug
(6) |
Sep
|
Oct
|
Nov
(2) |
Dec
(6) |
2012 |
Jan
(5) |
Feb
(3) |
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
(5) |
Aug
(3) |
Sep
(6) |
Oct
|
Nov
|
Dec
|
2013 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2014 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
|
From: James R. L. <jl...@mi...> - 2002-02-21 14:37:44
|
Not only is your engrish poor but the clock on your machine is wrong. This e-mail looks like it came from 2001. Fix your clock. On Wed, Feb 21, 2001 at 03:32:25PM +0800, clz wrote: > Hi,all > I want to know how to establish a lsp with ldp without the "mplsad= m". That is ,I don't know how to use the ldp-portable. For example,how to s= end "hello" message between two mpls peers. >=20 Read: ldp-portable/linux-port/README.cli Jim > I am sorry for my poor English. >=20 > REGARDS >=20 >=20 >=20 > =FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF= =FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=FF=E6=A6[=FF=96)=EE=C7=F8=1E=9D=EA=DA=96f=A2= =96)=E0=96+-=9A=99l=FEX=A7=BB=1F=E0zw=ABj_=E5=8A=CBl=FE=CA.=AD=C7=9F=A2=B8= =1E=FEw=AD=86=DBi=B3=FF=FF=96+-=B3=FB(=BA=B7=1E~=8A=E0{=F9=DE=B7=F9b=B2=DB?= =96+-=8Aw=E8=FEje=B3=F9b=9E=EC=FF=81=E9=DE --=20 James R. Leu |
From: Daniel T. <da...@un...> - 2002-02-21 12:17:59
|
Hi, is it possible to use mpls and netfilter to distinguish streams based also on their TCP/UDP port number? We are using the mpls configuration like the one described in the mini-howto, posted by Anatoly Asviyan and extended later by Radu Dragos (linux 2.4.17, mpls 1.1.2.7, iptables 1.2.4 etc.). In our scenario, the toplogy differs: traffic is not generated at the ingress itself, but at a neighbour mpls-unaware host. Therefore the iptables rules at the ingress do not use the OUTPUT, but the FORWARD chain (e.g. iptables -A FORWARD -p tcp --dport 44 -d 192.168.6.1 -j MPLS --set-key Ox00000002). This is were we encountered some "problems", it was possible to use different MPLS routing schemes as long as IP-address and protocoll were the only rule matches, but when using the port number, the behaviour was not what we expected. From the first time a packet matched the above rule, even other packets, using the same address and protocoll, but with a different port number (which should be routed using normal TCP/IP) were send along the established MPLS path. Besides that the above rule can not be easily deleted, flushing the chain is not sufficient, only deleting the labels has the desired effect. Has anyone experienced similar problems or is mpls+netfilter just not suited for this scenario? Thanks in advance, Daniel and Ulrich |
From: Stefano A. <avi...@li...> - 2002-02-21 11:43:53
|
Hi Paul and all, On Wed, 20 Feb 2002, ncc49a wrote: > Hi James and Stefano, > > On a MPLS edge Linux router, I executed the exp2ds > instruction for an incoming MPLS label with a premarked EXP > field. > > I think I should see a outgoing packet from the non-MPLS > interface with its DSCP field marked accordingly right? But > no further forwarding of the packet occurs, i.e the now non- > mpls packet does not "leave" the outgoing non-mpls > interface. > > Have u guys encountered this problem before? > Try to include pop instruction before exp2ds instruction, e.g. : mplsadm2 -I gen:100:0 -i pop:exp2ds:1:0x2e:peek In this way it works. This is probably due to the fact that the kernel function used to set DS field doesn't work on packets having the MPLS header. > I have tested.. set_exp, ds2exp works fine.. Haven't > tested exp2tc yet though... Anyone knows how to check the > actual value of the tc_index from user space? > Try to use the dsmark queueing discipline (without setting the set_tc_index parameter) combined with the tcindex filter. tcindex filter classifies packets based on skb->tc_index value and dsmark qdisc can set a different DS field value for the packets of each class (i.e. having the same skb->tc_index value). So looking at the output DS field value, you can check the actual value of skb->tc_index. Let me know if I have helped you Stefano > Thanks! > > Regards, > > Paul > > > _______________________________________________ > mpls-linux-general mailing list > mpl...@li... > https://lists.sourceforge.net/lists/listinfo/mpls-linux-general |
From: <seh...@ya...> - 2002-02-21 08:47:43
|
Hi, Can you please help me to fix this problem: i have 2 PC with linux2.4.7 + mpls_linux-1.0 +ldp-portable-0.080 . I install both MPLS and LDP. I am trying to test this 2 LSRs. I start by configure the LDP with "add global" and "add interface" in the 2 PC as it is mentionned in the linux-port/REDME.sample. I notice that i have a "HELLO LDP" message between the 2 LSRs but my /proc/net/mpls-out and /proc/net/mpls_fec are empty. What is missing ? does this insufficent to bind a lebel to the FEC ( 192.168.0.0 ) ? must i use the "mplsadm" commande? Please help me? Thanks in advance. Kind regards. Sehla loussaief. ___________________________________________________________ Do You Yahoo!? -- Une adresse @yahoo.fr gratuite et en français ! Yahoo! Mail : http://fr.mail.yahoo.com |
From: clz <cui...@26...> - 2002-02-21 07:36:07
|
SGksYWxsDQogICAgICAgSSB3YW50IHRvIGtub3cgaG93IHRvIGVzdGFibGlzaCBhIGxzcCB3aXRo IGxkcCB3aXRob3V0IHRoZSAibXBsc2FkbSIuIFRoYXQgaXMgLEkgZG9uJ3Qga25vdyBob3cgdG8g dXNlIHRoZSBsZHAtcG9ydGFibGUuIEZvciBleGFtcGxlLGhvdyB0byBzZW5kICJoZWxsbyIgbWVz c2FnZSBiZXR3ZWVuIHR3byBtcGxzIHBlZXJzLg0KDQogICAgICBJIGFtIHNvcnJ5IGZvciBteSBw b29yIEVuZ2xpc2guDQoNCiAgICAgIFJFR0FSRFMNCg0KDQoNCg== |
From: ncc49a <nc...@si...> - 2002-02-20 04:03:32
|
Hi James and Stefano, On a MPLS edge Linux router, I executed the exp2ds instruction for an incoming MPLS label with a premarked EXP field. I think I should see a outgoing packet from the non-MPLS interface with its DSCP field marked accordingly right? But no further forwarding of the packet occurs, i.e the now non- mpls packet does not "leave" the outgoing non-mpls interface. Have u guys encountered this problem before? I have tested.. set_exp, ds2exp works fine.. Haven't tested exp2tc yet though... Anyone knows how to check the actual value of the tc_index from user space? Thanks! Regards, Paul |
From: Stefano A. <avi...@li...> - 2002-02-19 17:30:06
|
Hi Paul, James and all On Tuesday 19 February 2002 00:08, ncc49a wrote: > Hi James, > > In response to my earlier mail, I did something like this: > > mplsadm -v -I gen:123:0 -i exp2tc:1:2:3:4:peek:dlv:0x800 > > There was still the earlier error and also the error that 0x800 was not > recognised, though mpls_in reflects that the instruction had been executed. > Could u provide a simple example to correctly implement the above? > > Also, for outgoing labels when I execute 2 commands in turn: ds2exp and > exp2tc, only the results of the later command, that is exp2tc are reflected > in mpls_in. But shouldn't they both be relevant i.e for an outgoing pkt, > its DSCP is converted to its EXP for downstream LSRs to make reference to. > And on its way out of the interface, this exp is then converted to a > tc_index for "tc" to police? Or am I wrong somewhere? > > Thanks a lot! > > Regards, > > Paul I executed successfully the following instructions: mplsadm2 -A -O gen:100:eth2:ipv4:192.168.1.18 mplsadm2 -L eth0:0 mplsadm2 -A -I gen:50:0 -i ds2exp:0x3f:0x2e:1:0x0a:2:exp2tc:1:0x2e:2:0x0a:fwd:key:2 for Paul : if you execute a command for ds2exp and then a command for exp2tc, only the latest instructions will be set for James : after executing the last command, it appears on the screen "In Instr: Device not configured" even if the instructions are set correctly. Moreover you should correct in mpls_proc.c (case exp2tc) to avoid that information like exp(5)->tc(ffff) are printed in /proc/net/mpls_* Stefano |
From: James R. L. <jl...@mi...> - 2002-02-19 14:23:16
|
On Tue, Feb 19, 2002 at 07:08:29AM +0800, ncc49a wrote: > Hi James, > > In response to my earlier mail, I did something like this: > > mplsadm -v -I gen:123:0 -i exp2tc:1:2:3:4:peek:dlv:0x800 mplsadm -v -I gen:123:0 -i exp2tc:1:2:3:4:peek _should_ work ... but (see below) > There was still the earlier error and also the error that 0x800 was not recognised, though mpls_in reflects that the instruction had been executed. Could u provide a simple example to correctly implement the above? > > Also, for outgoing labels when I execute 2 commands in turn: ds2exp and exp2tc, only the results of the later command, that is exp2tc are reflected in mpls_in. But shouldn't they both be relevant i.e for an outgoing pkt, its DSCP is converted to its EXP for downstream LSRs to make reference to. And on its way out of the interface, this exp is then converted to a tc_index for "tc" to police? Or am I wrong somewhere? I'm guessing that mplsadm is not parsing any of the 'array' based instructions correctly. I'll look into it. Jim > > Thanks a lot! > > Regards, > > Paul -- James R. Leu |
From: ncc49a <nc...@si...> - 2002-02-19 11:12:32
|
Hi James, In response to my earlier mail, I did something like this: mplsadm -v -I gen:123:0 -i exp2tc:1:2:3:4:peek:dlv:0x800 There was still the earlier error and also the error that 0x800 was = not recognised, though mpls_in reflects that the instruction had been = executed. Could u provide a simple example to correctly implement the = above? Also, for outgoing labels when I execute 2 commands in turn: ds2exp = and exp2tc, only the results of the later command, that is exp2tc are = reflected in mpls_in. But shouldn't they both be relevant i.e for an = outgoing pkt, its DSCP is converted to its EXP for downstream LSRs to = make reference to. And on its way out of the interface, this exp is then = converted to a tc_index for "tc" to police? Or am I wrong somewhere? Thanks a lot! Regards, Paul=20 |
From: James R. L. <jl...@mi...> - 2002-02-18 21:12:47
|
Hello, I hope you don't mind, I've forwarded this to the list as well. On Tue, Feb 19, 2002 at 03:59:31AM +0800, ncc49a wrote: > Hi, > > I was looking at one of your earlier mails.. you mentioned that exp2tc translate EXP value from incoming label shim into a tc-index. Does that mean that it cannot be used for outgoing MPLS packets? Hmm... I am a little confused now... for an MPLS Linux edge router, traffic scheduling should be still based on the DSCP value or from the newly pushed header's EXP bit value (which is anyway derived from the DSCP value... hmm) Looking back at the kernel code in mpls_input.c and mpls_output.c I see that exp2tc is a valid insytuction for input and output packets. Looking at the kernel code in mpls_utils.c we can build and destroy the exp2tc data. Finally, looking at userland code in mplsadm.c I cannot see any reason why exp2tc can not be used for both input and output instructions. So it looks like I was wrong in writting that it cannot be used for out going packets. > Also, I was executing this command: > > mplsadm -v -I gen:21:0 -i exp2tc:1:2:3:4:pop:dlv > > There is an error saying "In Instr: No such device or address." But the mpls_in file seems to reflect the new incoming label as well as the exp to tc mappings... Did I miss out something here? The DLV command has changed. It is now dlv:<proto id>. I think it is a better idea to use 'peek'. 'peek' allows you to stack/fwd/link incoming LSPs without having to work about which one is the bottom. A 'peek' done on the bottom of stack is an equivalent of a dlv:0x0800. A 'peek' done on a non-botom of stack looks at the next label and starts executing the instructions for that label. Ofcourse the internals of it are tad bit more complicated, but you get the idea :-) Jim -- James R. Leu |
From: James R. L. <jl...@mi...> - 2002-02-18 18:48:57
|
On Mon, Feb 18, 2002 at 10:15:01AM -0800, Mrugendra Singhai wrote: > > Hi, > > I am sorry...but I am not able to grab the latest mpls-linux...i mean i get the mpls-linux from cvs...but when i check the mplsadm.c, its not the same as the most recent one in the CVS. Can some one help in this regard. > > I use > > cvs -z3 -d:pserver:ano...@cv...:/cvsroot/mpls-linux co mpls-linux You need to grab a specific revision. ... co -r mpls-linux_1_128 mpls-linux Jim > > Mrugendra > > > > --------------------------------- > Do You Yahoo!? > Yahoo! Sports - Coverage of the 2002 Olympic Games -- James R. Leu |
From: Mrugendra S. <mru...@ya...> - 2002-02-18 18:15:03
|
Hi, I am sorry...but I am not able to grab the latest mpls-linux...i mean i get the mpls-linux from cvs...but when i check the mplsadm.c, its not the same as the most recent one in the CVS. Can some one help in this regard. I use cvs -z3 -d:pserver:ano...@cv...:/cvsroot/mpls-linux co mpls-linux Mrugendra --------------------------------- Do You Yahoo!? Yahoo! Sports - Coverage of the 2002 Olympic Games |
From: James R. L. <jl...@mi...> - 2002-02-18 14:47:39
|
On Mon, Feb 18, 2002 at 12:05:32PM -0000, Radu Dragos wrote: > Hi all. > I'm using mpls-linux-1.128 and linux-2.4.17 > > I'm trying to do multiple pushes and I follow the README.hierarchy doc > But I finish with "Segmentation fault" That readme is out-of-date. The 'set' instruction and the outgoing label key are messing you up. > This is what I did: > > ./mplsadm2 -v -A -O gen:16:eth0:ipv4:192.168.100.2 > ./mplsadm2 -v -O gen:16:eth0 -o push:gen:16:push:gen:20:set ./mplsadm2 -v -A -O gen:16:eth0:ipv4:192.168.100.2 (look for the key for this otutgoing label in /proc/net/mpls_out, I'll use 0x2) ./mplsadm2 -v -O key:0x2 -o push:gen:16:push:gen:20:set:eth0:ipv4:192.168.100.2 Jim > can someone tell me what is wrong, or point me to a previous mail on the > list talking about this? > > Thanks, > Radu > > > > _______________________________________________ > mpls-linux-general mailing list > mpl...@li... > https://lists.sourceforge.net/lists/listinfo/mpls-linux-general -- James R. Leu |
From: James R. L. <jl...@mi...> - 2002-02-18 14:44:14
|
On Mon, Feb 18, 2002 at 10:17:56AM +0530, jagdish Garg wrote: > Hi > I have seen the linux code. In the code ref_count is use for keeping the > reference, but not the _use field. In Mpls 1.0 code to delete a > label(__mpls_del_out_label) and dst_entry, simply release > st_entry( dst_release(moi->moi_dst) is called. The function dst_release is > decrementing the ref_count not the _use field. Then I'm not sure what _use if for, it obvioulsy doesn't have much of an impact on mpls-linux. You have the kernel code figure it out yourself. > Please let me know how to get the latest CVS code. http://sourceforge.net/cvs/?group_id=15443 > > Regards > Jagdish > > ----- Original Message ----- > From: James R. Leu <jl...@mi...> > To: jagdish Garg <jag...@ie...> > Cc: <mpl...@li...> > Sent: Friday, February 15, 2002 9:08 PM > Subject: Re: [mpls-linux-general] Dst_entry in MPLS implementation > > > > > > From: "James R. Leu" <jl...@mi...> on 02/15/2002 09:38 AM CST > > > > Please respond to jl...@mi... > > > > To: jagdish Garg <jag...@ie...> > > cc: mpl...@li... > > Subject: Re: [mpls-linux-general] Dst_entry in MPLS implementation > > > > > > In mpls-linux 1.0 dst_entry is used ineffeciently. Take a look at > > mpls-linux 1.1xx (get it from CVS) to see how it will be used in the > > future. > > > > As for you question. Since MPLS created the dst_entry and holds a > > reference > > (and a reference count) for the dst_entry, it will not be deleted until > > MPLS releases it. The neighbor entry the the dst_entry points to can > > change > > over time, but the neighbor entry deals with this. > > > > _use is the reference count. > > > > Jim > > > > On Fri, Feb 15, 2002 at 02:53:07PM +0530, jagdish Garg wrote: > > > Hi > > > In the mpls code a new dst entry is created for each new nhlfe add > > request. > > > The pointer of which is kept in moi. The dst_entry is further use > depends > > on > > > the mpls LSP configuration. I have one question, suppose dst_entry is > > not > > > used long time and it will go to the garbage list. After that if moi is > > used > > > then what will happen? > > > > > > Further I will be grateful if one can tell me the significance of _use > > field > > > of dst_entry structure. > > > > > > > > > > > > Thanks in advance > > > Jagdish > > > > > > > > > > > > > > > _______________________________________________ > > > mpls-linux-general mailing list > > > mpl...@li... > > > https://lists.sourceforge.net/lists/listinfo/mpls-linux-general > > > > -- > > James R. Leu > > -- James R. Leu |
From: Radu D. <dr...@ee...> - 2002-02-18 12:04:17
|
Hi all. I'm using mpls-linux-1.128 and linux-2.4.17 I'm trying to do multiple pushes and I follow the README.hierarchy doc But I finish with "Segmentation fault" This is what I did: ./mplsadm2 -v -A -O gen:16:eth0:ipv4:192.168.100.2 ./mplsadm2 -v -O gen:16:eth0 -o push:gen:16:push:gen:20:set can someone tell me what is wrong, or point me to a previous mail on the list talking about this? Thanks, Radu |
From: jagdish G. <jag...@ie...> - 2002-02-18 04:54:40
|
Hi I have seen the linux code. In the code ref_count is use for keeping the reference, but not the _use field. In Mpls 1.0 code to delete a label(__mpls_del_out_label) and dst_entry, simply release st_entry( dst_release(moi->moi_dst) is called. The function dst_release is decrementing the ref_count not the _use field. Please let me know how to get the latest CVS code. Regards Jagdish ----- Original Message ----- From: James R. Leu <jl...@mi...> To: jagdish Garg <jag...@ie...> Cc: <mpl...@li...> Sent: Friday, February 15, 2002 9:08 PM Subject: Re: [mpls-linux-general] Dst_entry in MPLS implementation > > From: "James R. Leu" <jl...@mi...> on 02/15/2002 09:38 AM CST > > Please respond to jl...@mi... > > To: jagdish Garg <jag...@ie...> > cc: mpl...@li... > Subject: Re: [mpls-linux-general] Dst_entry in MPLS implementation > > > In mpls-linux 1.0 dst_entry is used ineffeciently. Take a look at > mpls-linux 1.1xx (get it from CVS) to see how it will be used in the > future. > > As for you question. Since MPLS created the dst_entry and holds a > reference > (and a reference count) for the dst_entry, it will not be deleted until > MPLS releases it. The neighbor entry the the dst_entry points to can > change > over time, but the neighbor entry deals with this. > > _use is the reference count. > > Jim > > On Fri, Feb 15, 2002 at 02:53:07PM +0530, jagdish Garg wrote: > > Hi > > In the mpls code a new dst entry is created for each new nhlfe add > request. > > The pointer of which is kept in moi. The dst_entry is further use depends > on > > the mpls LSP configuration. I have one question, suppose dst_entry is > not > > used long time and it will go to the garbage list. After that if moi is > used > > then what will happen? > > > > Further I will be grateful if one can tell me the significance of _use > field > > of dst_entry structure. > > > > > > > > Thanks in advance > > Jagdish > > > > > > > > > > _______________________________________________ > > mpls-linux-general mailing list > > mpl...@li... > > https://lists.sourceforge.net/lists/listinfo/mpls-linux-general > > -- > James R. Leu > |
From: ncc49a <nc...@si...> - 2002-02-17 19:54:47
|
Hi James, I have thought of a scenario and will like to query u abt it. Scenario:=20 An Linux LER is within a Diffserv domain. Thus, it receives non-MPLS = packets with their DSCP marked.=20 For packets flowing into the MPLS domain, the LER has to: a) Convert the DSCP to EXP marked in the shim header via ds2exp b) For its outgoing interface, it has to convert the EXP mark into a = tc_index for the traffic scheduler (tc) to police via exp2tc For packets flowing out of the MPLS domain, the LER has to: a) Convert the EXP of the incoming MPLS packet to DSCP via exp2ds b) Use the DSCP to police the outgoing traffic via the traffic = schedular (tc). Am I right to say that: 1) exp2tc is only for outgoing labels and is executed BEFORE the traffic = scheduler (tc) does its scheduling using the tc_index? 2) ds2exp, exp2ds, set_exp, expfwd will be executed before exp2tc if the = instructions are executed before i.e mplsadm -v -A -O gen:41:eth0 -o ds2exp:0xff:0x1a:0x1 mplsadm -v -O gen:41:eth0 -o exp2tc:0xff:0x1:0x2 mplsadm -v -O gen:41:eth0 -o push:gen:41:set:eth0:ipv4:192.168.0.1 The above will map DSCP(0x1a) to EXP(1) and will then convert EXP(1) to = tc_index(2). I can then use the traffic scheduler tc to police the traffic based on = the tc_index 2. 3) Are the above instructions executed correctly? Thanks. Paul |
From: James R. L. <jl...@mi...> - 2002-02-15 19:37:10
|
On Sat, Feb 16, 2002 at 02:44:20AM +0800, ncc49a wrote: > Hi, > > I have got some queries regarding the Diffserv implementation over MPLS > for Linux. > > 1) For an egress MPLS node, an incoming MPLS packet may have its EXP > values "translated" into DSCP values via the > exp2ds command, right? Is it used in a similiar way as ds2exp? Yes, except there is not a mask. exp2ds:0x1:0x1A:0x2:0x1B EXP 0x1 -> DSCP 0x1A EXP 0x2 -> DSCP 0x1B EXP 0x0,0x3->0x7 -> no action > 2) How are the MPLS LERs and LSRs going to police the traffic based on > the EXP bits of the MPLS pkts passing through them? Is it via the exp2tc > command? Any examples of how to implement that? Correct. Or in the L-LSP case, via a set_tc. I am not familiar with how TC works. I just know that it uses the tc_index on the SKBs to prioritize traffic :-) If you come up with an example, please let me know. I can add it to my default set of tests. > 3) Haven't tried it yet, but can a packet have its DSCP marked by "tc" > and then its EXP bit marked by the ds2exp command on the same ingress node? If you think it would be of value to have a tc2ds command it can be added. Then you could use a setup like this: tc2ds:0x0F:0x01:0x1A:0x02:0x0B:tc2exp:0x0F:0x01:0x01:0x02:0x02 TC 0x1 -> DSCP 0x1A, EXP 0x1 TC 0x2 -> DSCP 0x1B, EXP 0x2 Let me know if you think this is a useful command. > Any further examples of DS over MPLS will be helpful! Hopefully other people who are playing with it can give you more examples. Jim -- James R. Leu |
From: ncc49a <nc...@si...> - 2002-02-15 18:41:44
|
Hi, I have got some queries regarding the Diffserv implementation over MPLS for Linux. 1) For an egress MPLS node, an incoming MPLS packet may have its EXP values "translated" into DSCP values via the exp2ds command, right? Is it used in a similiar way as ds2exp? 2) How are the MPLS LERs and LSRs going to police the traffic based on the EXP bits of the MPLS pkts passing through them? Is it via the exp2tc command? Any examples of how to implement that? 3) Haven't tried it yet, but can a packet have its DSCP marked by "tc" and then its EXP bit marked by the ds2exp command on the same ingress node? Any further examples of DS over MPLS will be helpful! Thanks a lot!! Regards, Paul |
From: James R. L. <jl...@mi...> - 2002-02-15 13:46:19
|
In mpls-linux 1.0 dst_entry is used ineffeciently. Take a look at mpls-linux 1.1xx (get it from CVS) to see how it will be used in the future. As for you question. Since MPLS created the dst_entry and holds a reference (and a reference count) for the dst_entry, it will not be deleted until MPLS releases it. The neighbor entry the the dst_entry points to can change over time, but the neighbor entry deals with this. _use is the reference count. Jim On Fri, Feb 15, 2002 at 02:53:07PM +0530, jagdish Garg wrote: > Hi > In the mpls code a new dst entry is created for each new nhlfe add request. > The pointer of which is kept in moi. The dst_entry is further use depends on > the mpls LSP configuration. I have one question, suppose dst_entry is not > used long time and it will go to the garbage list. After that if moi is used > then what will happen? > > Further I will be grateful if one can tell me the significance of _use field > of dst_entry structure. > > > > Thanks in advance > Jagdish > > > > > _______________________________________________ > mpls-linux-general mailing list > mpl...@li... > https://lists.sourceforge.net/lists/listinfo/mpls-linux-general -- James R. Leu |
From: jagdish G. <jag...@ie...> - 2002-02-15 09:30:13
|
Hi In the mpls code a new dst entry is created for each new nhlfe add request. The pointer of which is kept in moi. The dst_entry is further use depends on the mpls LSP configuration. I have one question, suppose dst_entry is not used long time and it will go to the garbage list. After that if moi is used then what will happen? Further I will be grateful if one can tell me the significance of _use field of dst_entry structure. Thanks in advance Jagdish |
From: James R. L. <jl...@mi...> - 2002-02-14 14:59:35
|
On Thu, Feb 14, 2002 at 09:46:15AM +0530, Abhijit Gadgil wrote: > James R. Leu wrote : > > >Now (in mpls-linux-1.1xx) I've moved back to using ioctl for everything. > >Netlink is nice, it works, but is a little over kill for what I'm doing. > > What you call as overkill I would say flexibility. .. but that flexibility always comes at a cost, complexity. It's not rocket science, but it does take a bit more work. Right now I'd rather spent my time getting everything else to work. Eventually, maybe I'll have the time an williness to re-implement the netlink stuff, and take full advantage of what it has to offer. Until then I'll stick to my trusty ioctl calls. > >If I ever need to send notification back to userland about MPLS changes, then > >I'll consider netlink again. > > One will have to eventually - eg. Stuff like Label Resource Available etc. > Cannot be done so effectively without netlink. Also repeatatively packets > with some label(s) are causing problems, netlink is the way to notify the > userspace abt it. Not to nit pick, but label managment is a userland issue, not the responsibility of the forwarding plane. > I think question here is becoming more _religious_. However I have seen > some draft few days back which was aiming at making netlink a standard > interface between userspace/kernelspace. Donno how and when this will > happen. If/when I get MPLS integrated into the standard kernel I'll worry about that :-) > > -abhijit > -- James R. Leu |
From: Abhijit G. <gab...@ee...> - 2002-02-14 04:10:01
|
James R. Leu wrote : >Now (in mpls-linux-1.1xx) I've moved back to using ioctl for everything. >Netlink is nice, it works, but is a little over kill for what I'm doing. What you call as overkill I would say flexibility. >If I ever need to send notification back to userland about MPLS changes, then >I'll consider netlink again. One will have to eventually - eg. Stuff like Label Resource Available etc. Cannot be done so effectively without netlink. Also repeatatively packets with some label(s) are causing problems, netlink is the way to notify the userspace abt it. I think question here is becoming more _religious_. However I have seen some draft few days back which was aiming at making netlink a standard interface between userspace/kernelspace. Donno how and when this will happen. -abhijit |
From: James R. L. <jl...@mi...> - 2002-02-13 17:09:55
|
On Wed, Feb 13, 2002 at 04:13:34PM +0530, jagdish Garg wrote: > Hi > In the mpls implementation both netlink and ioctls are used for > communication with mpls/kernel code . Is there any specific reason for > using ioctl for some modification and netlink for others. > Can any body guide me which is more efficient? Originally I used ioctl for everything. Then I switch to using netlink for everthing execpt for things related to MPLS tunnels. Now (in mpls-linux-1.1xx) I've moved back to using ioctl for everything. Netlink is nice, it works, but is a little over kill for what I'm doing. If I ever need to send notification back to userland about MPLS changes, then I'll consider netlink again. > Thanks in advance > Jagdish Garg > > > > _______________________________________________ > mpls-linux-general mailing list > mpl...@li... > https://lists.sourceforge.net/lists/listinfo/mpls-linux-general -- James R. Leu |
From: jagdish G. <jag...@ie...> - 2002-02-13 10:50:16
|
Hi In the mpls implementation both netlink and ioctls are used for communication with mpls/kernel code . Is there any specific reason for using ioctl for some modification and netlink for others. Can any body guide me which is more efficient? Thanks in advance Jagdish Garg |