A LFB Library for ForCES (to be submitted) Ligang Dong, [email protected] Fengen Jia,...

17
A LFB Library for ForCES <draft-dong-forces-lfblib-00.txt> (to be submitted) Ligang Dong, [email protected] Fengen Jia, [email protected] Weiming Wang,[email protected] IETF 68 th Meeting Mar. 20, 2007, Prague Czech

Transcript of A LFB Library for ForCES (to be submitted) Ligang Dong, [email protected] Fengen Jia,...

Page 1: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

A LFB Library for ForCES

<draft-dong-forces-lfblib-00.txt> (to be submitted)

Ligang Dong, [email protected] Fengen Jia, [email protected]

Weiming Wang,[email protected]

IETF 68th MeetingMar. 20, 2007, Prague Czech

Page 2: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

Draft Content

• Defined 22 LFBs by use of XML schema proposed in FE Model– compliant with ForCES FE model specifications

• Attributes, capabilities, events, etc

• Defined relative frame types, data types, and metadata types used in proposed LFBs

Page 3: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

LFB Designs - Port LFBs

• EtherPort– a description of a general Ethernet port function

• EtherEncap – for ethernet encapsulation

• EtherDecap– for Ethernet de-encapsulation and Ethernet filtering

functions

Page 4: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

LFB Designs - IPv4 unicast forwarding LFBs

• IPv4Validator– for validates IPv4 packets

• IPv4UcastLPM– IPv4 Longest Prefix Match Lookup LFB

• IPv4NextHopApplicator– for applying next hop action to IPv4 packets

• ARP– provides the function of address resolution.

• ICMPProc– provides basic ICMP function.

• OptionProc– processes IPv4 packet options, – currently defined option: Router-alert option.

Page 5: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

LFB Designs – IPv6 unicast forwarding LFBs

• IPv6Validator– for validating correctness of IPv6 packets

• IPv6UcastLPM– for IPv6 longest prefix lookup function

• IPv6UcastNexthopApplicator– for applying next hop action to IPv6 packets

• IPv6AddrResolution– provides the function of IPv6 address resolution part of Neighbor

Discovery protocol

• ICMPv6Proc– provides basic ICMPv6 function.

• ExtendHeaderProc– processes IPv6 packet extended header.

Page 6: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

LFB Designs – Queue manager & scheduler LFBs

• Scheduler – Basic scheduler LFB

• Queue– Basic queue LFB

• InterFECommEncap– for encapsulating data that needs to be sent over switch

fabric to other FEs

• InterFECommDecap– for decapsulating data that comes from switch fabric

Page 7: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

LFB Designs – Common Function LFBs

• RedirectSink– provides the function for data packets to be redirected to

CE.

• RedirectSource– provides the function for receiving data packets redirected

from CE

• MetaClassifier– provides the function of classifying packets according to

meta data.

– currently defined to work with one meta data

Page 8: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

Example - IPv4UcastLPM (1)

<LFBClassDef LFBClassID="0x00011004"><name>IPv4UcastLPM</name><synopsis>IPv4 Longest Prefix Match Lookup LFB</synopsis><version>1.0</version><inputPorts>

<inputPort><name>PktIn</name><synopsis>The port to receive IPv4 packets from other LFBs</synopsis><expectation>

<frameExpected><ref>IPv4</ref></frameExpected>

</expectation></inputPort>

</inputPorts>

Page 9: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

<outputPorts><outputPort>

<name>SuccessOut</name><synopsis>Successful output when all is fine</synopsis><product>

<frameProduced><ref>IPv4</ref>

</frameProduced><metadataProduced>

<ref>NextHopID</ref></metadataProduced>

</product></outputPort>

Example - IPv4UcastLPM (2)

Page 10: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

<outputPort>

<name>ExceptionOut</name>

<synopsis>Exception output</synopsis>

<product>

<frameProduced><ref>IPv4</ref></frameProduced>

<metadataProduced>

<ref>InputPortID </ref>

<ref>ExceptionID</ref>

</metadataProduced>

</product>

</outputPort>

<outputPort>

<name>FailOutput</name>

<synopsis>Drop output</synopsis>

<product>

<frameProduced><ref> IPv4 </ref></frameProduced>

</product>

</outputPort>

</outputPorts>

Example - IPv4UcastLPM (3)

Page 11: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

<attributes>

<attribute elementID="1">

<name> PrefixTable </name>

<synopsis>IPv4 prefix table</synopsis>

<array type="variable-size">

<typeRef>IPv4PrefixTableEntry</typeRef>

<contentKey contentKeyID="1">

<contentKeyField>

IPv4PrefixTableEntry.prefix

</contentKeyField>

</contentKey>

</array>

</attribute>

Example - IPv4UcastLPM (4)

Page 12: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

<attribute elementID="2"> <name>LocalIpAddrTable</name> <synopsis>Table of interfaces' ip address info. on the local device

</synopsis><typeRef>LocalIpAddrType</typeRef>

</attribute><attribute elementID="3">

<name>StatsEnable</name><synopsis>Whether enable the statistics in this LFB</synopsis><typeRef>BooleanType</typeRef>

</attribute><attribute elementID="4">

<name>IPv4Stats</name><synopsis>The IPv4 associated statistics</synopsis><typeRef> IPv4UcastLPMStatisticsType </typeRef>

</attribute></attributes>

Example - IPv4UcastLPM (5)

Page 13: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

<capabilities>

<capability elementID="1">

<name>PrefixTableLimit</name>

<synopsis>Maximum number of prefix supported by this LFB

</synopsis>

<typeRef>uint32</typeRef>

</capability>

<capability elementID="2">

<name>LocalIpAddrTableLimit</name>

<synopsis>Maxnum of IP address entries supported by this LFB

</synopsis>

<typeRef>uint32</typeRef>

</capability>

</capabilities>

<description>This LFB represents the IPv4 longest prefix match lookup operation.

</description>

</LFBClassDef>

Example - IPv4UcastLPM (6)

Page 14: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

Implementation status• Proposed LFBs all have been implemented in terms of their forwarding functions• Most of the proposed LFB attributes have been implemented and tested, examples are as:

• Some LFB attributes, capabilities, and events are to be implemented

LFB Names LFB attributes

IPv4UcastLPM PrefixTable, LocalIpAddrTable

IPv4NextHopApplicator NextHopTable

IPv6UcastLPM PrefixTable, LocalIpv6AddrTable

IPv6UcastNexthopApplicator NextHopTable

EtherEncap ArpTable, NbrTable

Page 15: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

Conclusion

• Earlier version of LFB definitions was posted on ForCES email list in Feb. 2006.

• This draft is basically an improvement to the version– Based on implementation responses

• Works on LFB definitions highly depends upon implementations, and just consume time and other resources. Our current work is still far from perfect.– Comments on the draft are really appreciated!

Page 16: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

Acknowledges:

• Research is funded by:

– NSF China (60573116, 60603072)– Zhejiang Provincial NSF China (No. Z106829)– Zhejiang Sci & Tech Project (2006C11215)

Page 17: A LFB Library for ForCES (to be submitted) Ligang Dong, donglg@mail.zjgsu.edu.cn Fengen Jia, jfg@mail.ndsc.com.cn Weiming Wang,wmwang@mail.zjgsu.edu.cn.

Thank You!