亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mpls-forwarding-basics-00.txt

?? 基于linux內核2.6.9的mpls補丁
?? TXT
字號:
PUBLIC DOCUMENT                                                 James R. LeuMay 24 2000                          MPLS Forwarding Basics1. MPLS SummaryThe goal of Multi-Protocol Label Switching (MPLS) is to remove the process oflayer three lookups at each hop of a network.  This has many direct affects.MPLS forwarding makes traffic engineering a more viable solution for networkcongestion.  MPLS forwarding _may_ enable wire speed routing (switching).MPLS forward _could_ allow network hardware vendors to make cheaper trunkcards that ONLY understand labeled packets.  MPLS abstracts the media specificqualities away from more complex network engineering (QoS, CoS, DiffServ).MPLS forwarding can be used to make VPN service more flexible and deployablewithout compromising the performance of your edge routers (switches).  Inaddition to the above, the concepts used to to setup MPLS forwarding arethe first step towards creating completely optical networks.As a packet traverses an MPLS enabled network it must make three transitions.First, is that it must go from it's native layer 3 forwarding intolabeled MPLS forwarding.  This process entails the adding of a label to thehead of the packet.  Second, a (now labeled) packet much be able to traversean MPLS path.  This path consist of all the devices that know how thisparticular packet (and packets like it) need to traverse a network.  Thispath is called a Label Switch Path (LSP).  It is a connection oriented paththat is setup ahead of the forwarding of any packets.  Finally a packet mustmake its way back into layer 3 forwarding.  This process consists of removingthe label from the head of the packet and then sending it to the appropriatelayer 3 protocol for additional handling.  In an MPLS enabled network, layer3 forwarding is used by the edges of the network, and MPLS forwarding is usedin the core of the network.A network device that acts as the boundary between layer 3 forwarding andMPLS forwarding is called a Label Edge Router (LER).  An LER has the abilityto add a label to a unlabeled packet, and remove the labels from a labeledpacket. An LER that adds a label to a packet, is called an ingress LER andan LER that removes the label from a packet is a egress LER.  A network devicethat can forward a labeled packet (still labeled with possibly a differentlabel) is called a Label Switch Router.  The process of forwarding a labeledpacket is commonly referred to a Label Switching, because it mimics the ideasof Ethernet or ATM switching.  Sometimes this is also called Label Swappingbecause the value of the label may change at each hop in a LSP.  So the LSRis "swapping" the labels in the packet.2. MPLS LabelsWhen a label is added to a packet this means that at minimum a 4 byte "shim"has been added to the packet.  This shim is added between the layer 3 headerand layer 2 header.  Therefore an IP packet on Ethernet would add the shimbefore the IP header but after the Ethernet header.  MPLS forwarding iscurrently defined for the following layer 2 implementation:  Ethernet, packetover SONET, ATM, frame-relay.  MPLS has also been defined for any medium thatPPP runs on top of.  On _most_ of these layer 2 implementation a label consistsof a 20 bit number.The shim that is added to the packet contains more then just a label.  Hereis a diagram of a MPLS shim:  0                     1                   2                   3  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |                Label                  | Exp |S|       TTL     | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+As you can see the label is 20 bits.  This value is used to determine how apacket will be label switched.  The next 3 bits are called the EXP bits.  Theyare currently reserved for experimental purposes.  (although DiffServ overMPLS has claimed these 3 bits for its use).  The next bit is referred to as the"bottom of stack bit" (S bit).  Due to the fact that MPLS _adds_ a shim tothe packet a LSR needs to know if what follows this top shim is the layer3 header or another shim (Multiple shims are called a label stack.  The purposeof a label stack will be explained later).  The S bit signifies that whatfollows this shim is the layer 3 header.  For typical single shim MPLS forwarding the S bit is on.  Finally the shim contains the Time To Live (TTL)counter.  This is used to allow current layer 3 functions to occur even thoughan LSR cannot use the layer 3 header.  Some examples of these are traceroute,loop detection, and multicast domains.2.1 MPLS Label StackingWhen an LER adds a shim to a packet, it is feasible that is can add more thenone shim.  This concept is called Label Stacking.  The _stack_ of shims istreated just as it's name sake data structure.  A POP means that the top shimis removed, exposing either another shim or the layer 3 header (determinedby the S bit).  A PUSH adds a new shim to the top of the stack or on topof the layer 3 header. So standard label swapping is defined as a POPfollowed by a PUSH.  In some cases a labeled packet may need to be tunneledacross another MPLS network.  In the case the labeled packet gets anothershim pushed on top without POPing the original shim off.  This results in alabel stack of size 2.  This operation can occur multiple time by separateLSRs or a single LSR could add more then one shim. In general any labeledpacket has a label stack, although most have a label stack of size 1. As onemay expect a packet with a label stack greater then 1 may _shrink_ in sizeas well.  This operation would be defined by a POP without a PUSH.  The exactdetails of how this occurs will be explained later.3 MPLS Data StructuresFor MPLS forwarding to occur correctly some data structures need to existto assist in the interpretation of labels and the processing of them.In general there exists three data structure. One data structure to helpinterpret incoming labels (labels from packets that are entering an LSR oregress LER).  A second data structure to assist in adding out going labels(labels on packets that are leaving a LSR or ingress LER).  A third datastructure is used by ingress LERs to figure out what label to add to a packet.The common name for the data structure used to interpret incominglabels is called the Incoming Label Map (ILM).  The ILM table consistsof all the incoming labels that an LSR or egress LER will recognize.The contents of each ILM entry are: label, opcode, FEC, and an optional link toan outgoing data structure.  The general order of operation for incoming labelprocessing is:-extract label from top shim-lookup the label in the ILM table-further processing on the packet based on the opcode stored with the labelDetail ILM processing will be explained later.As stated earlier there also exists a data structure to assist with outgoinglabeling.  The common name for this data structure is the Next Hop LabelEntry (NHLFE).  The NHLFE table consists of all the labels which can be pushonto packets.  Each NHLFE entry contains: label, outgoing interface, and nexthopinformation.  The general processing that occurs when a packet reaches theNHLFE table is:-form new shim that contains the label-push the shim onto the packet-forward the packet to the nexthop via the outgoing interfaceDetails of NHLFE processing will be explained later.A third data structure exists for the sole purpose of helping ingress LERs decidewhat labels to add to a packet.  For the explanation of this data structure weneed to take one step back and introduce the term Forwarding Equivalence Class(FEC).  Up until now we have referred to individual packet in terms of addingand removing labels.  How do we know what label to add to a packet?  How do weknow what type of packet I have after removing a label?In general packets are labeled according to which FEC they belong to.  Forexample I am defined FEC A to be the class of packet that are heading tothe host with IP address 1.1.1.1.  Therefore all packets that have a destinationIP address 1.1.1.1 belong to FEC A.  In MPLS we assign each FEC a label andeach label refers to a FEC (1:1 mapping).  The definitions of FECs may changebut the 1:1 mapping should always stay constant.  The data structure used tomap FECs to labels is called a FEC To NHLFE (FTN).  An FTN table consists ofall FECs which we know how to add labels too.  An FTN entry consists of:FEC, NHLFE entry.  The general order of operation for FTN processing is:-decide what FEC a packet belongs to-find the FEC in the FTN table-forward the packet to he NHLFE entry that corresponds to the FTNDetail FTN processing will be explained later.4. MPLS over ATMEarlier the statement was made that labels are 20 bits values for _most_layer 2 implementations.  ATM is one of the exceptions (Frame relay is theother).  Since ATM is already built upon switching technology it can takeadvantage of this.  If the definition of a label is changed to a VPI,VCI pair,we now would do label switching based on VPI,VCI which is what ATM alreadydoes.  This provides a nice optimization, but introduces problems andcomplexity.  In "normal" MPLS forwarding we look inside to the top shimto get the label, on ATM we do not need to look in the shim, nor CAN we.But what about the other fields in the shim?  Do we just loose the functionalitythey provide when running MPLS over ATM?  To retain the functionality we needto make a couple of compromises.  First, even though we can do MPLS forwardvia VPI,VCI pairs and we do not need the shim to store the label, we will stillkeep a place holder shim at the top of the stack.  This is called the NULL shim.The NULL shim is added after the ATM header in the first cell of a AAL5 frame.The NULL shim will hold the EXP, TTL and S bit that would have been added ifwe doing "normal" MPLS forwarding.  Due to the nature of ATM switching, thesevalues will pass through the ATM network untouched.  When the packet leavesthe ATM network and either goes back to layer 3, or move on to "normal" MPLSforwarding these values will be available for use at that time.  MPLS forwardingover ATM has 5 transition it can go through:-Layer 3 forwarding to MPLS over ATM forwarding (ingress LER)-MPLS forwarding to MPLS over ATM forwarding (LSR)-MPLS over ATM forwarding to MPLS over ATM forwarding (LSR)-MPLS over ATM forwarding to MPLS forwarding (LSR)-MPLS over ATM forwarding to Layer 3 forwarding (egress LER)5. MPLS Detailsstruct mpls_label {  u32 label_res:1,      label_value:28,      label_type:3:#define MPLS_LABEL_VPI		((label_value>>16)&0xFFF)#define MPLS_LABEL_VCI		(label_value&0xFFFF)#define MPLS_LABEL_GEN		(label_value&0xFFFFF)#define MPLS_LABEL_DLCI_10	(label_value&0x3FF)#define MPLS_LABEL_DLCI_17	(label_value&0x1FFFF)#define MPLS_LABEL_DLCI_23	(label_value&0x7FFFFF)};#define MPLS_GEN_LABEL		0x01#define MPLS_VPIVCI_LABEL	0x02#define MPLS_VPI_LABEL		0x03#define MPLS_VCI_LABEL		0x04#define MPLS_FR10_LABEL		0x05#define MPLS_FR17_LABEL		0x06#define MPLS_FR23_LABEL		0x075.1 MPLS ILM Details-ILM structure:struct ilm_ent {  struct mpls_label label;  struct route_ent* outgoing_rt;  u16 protocol;  u8 opcode;}; (more detailed processing can be found in the MPLS reference code)-Each logical interface needs to stores it's own ILM table.  MPLS packets that arrive via that interface will do label lookups into that interfaces ILM table.-The full list of opcodes that can be stored in a ILM entry: POP_AND_LOOKUP   If the top shim has the S bit on:     Extract the protocol type from the ILM     POP the top shim     Copy the TTL to the layer 3 header     Using the protocol type, do a lookup on       the layer 3 header that is exposed   Else     POP the top shim     Extract the label from the shim that is       exposed     Extract the S bit     Extract the EXP     Extract label and create ILM Index     Using the ILM Index Lookup the ILM Entry     Execute the opcode in the ILM Entry   End POP_AND_FORWARD   Extract the outgoing route entry from the ILM   POP the top shim   If the outgoing route entry is a layer 3 route entry     copy TTL to layer 3 header   Using the outgoing route entry forward the     packet to the outgoing interface                   NO_POP_AND_FORWARD   Extract the outgoing route entry from the ILM   Using the outgoing route entry forward the     packet to the outgoing interface SEND_TO_RP   Send the entire packet to the Route Processor5.2 MPLS Receive Processing If interface is of type ATM and VCC is of type MPLS_ENC     Use VPI,VCI to create ILM Index Else   Extract generic label from shim and create ILM Index End Extract TTL from top shim Extract EXP from top shim Extract S bit from top shim Decrement TTL If TTL <= 0 Execute opcode SEND_RP Using ILM Index to lookup ILM Entry Execute opcode from ILM Entry5.3 MPLS FTN Detailsstruct mpls_ftn {  struct mpls_nhlfe *nhlfe;  };5.4 MPLS NHLFE Details-The NHLFE is located on the tx interface.  Therefor the NHLFE Entry doesn't need to store the outgoing interface. struct mpls_nhlfe {  struct mpls_label **label;  u8 number_of_label;  struct sockaddr_un next_hop;  u8 exp;};5.5 MPLS Transmit Processing If the route entry that the FTN point to is a NHLFE or the ILM refers to a NHLFE then the following processing pertains.  If the shim with an S bit on was POPed on ingress then    make sure to add an S bit to the bottom shim  For each label in the NHLFE    If more labels can be added      If the label is of type ATM then        create a NULL shim and add it to the packet        make sure the shim with the S bit is on the bottom of the stack        extract VCC info from the ATM label        mark this packet will leave via this ATM VCC        mark that no more labels can be added.      Else        create a shim from the generic label and add it to the packet        make sure the shim with the S bit is on the bottom of the stack      End    End  End  Forward the packet to the next hop stored in the NHLFE

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲综合免费观看高清完整版| 亚洲欧洲精品天堂一级| 91麻豆蜜桃一区二区三区| 国产精品99久久久久久宅男| 麻豆精品一区二区| 日韩专区中文字幕一区二区| 日本午夜精品视频在线观看 | 久久精工是国产品牌吗| 日韩国产高清影视| 国产在线不卡一卡二卡三卡四卡| 亚洲精品乱码久久久久| 一区二区三区在线观看视频| 亚洲精品伦理在线| 亚洲成av人在线观看| 亚洲成av人在线观看| 日韩电影免费在线看| 另类小说视频一区二区| 国产黑丝在线一区二区三区| 北岛玲一区二区三区四区| 色综合久久久久综合体| 欧美日韩美少妇| 欧美v日韩v国产v| 欧美激情综合五月色丁香小说| 亚洲视频在线一区观看| 亚洲成av人片一区二区| 麻豆精品久久久| 国产福利不卡视频| 在线免费观看日本一区| 日韩一区二区三区高清免费看看| 久久久久97国产精华液好用吗| 国产精品国产自产拍高清av王其| 午夜影院久久久| 国产·精品毛片| 欧美日韩1234| 中文字幕av不卡| 日本亚洲三级在线| www.av亚洲| 欧美mv日韩mv亚洲| 亚洲美女视频在线| 精品一区二区久久久| 色婷婷综合中文久久一本| 日韩亚洲欧美在线| 中文字幕亚洲区| 久久超级碰视频| 欧美在线不卡一区| 久久久91精品国产一区二区三区| 午夜av电影一区| 成人精品高清在线| 日韩小视频在线观看专区| 国产精品久久久久久久久快鸭| 水蜜桃久久夜色精品一区的特点| 国产91高潮流白浆在线麻豆| 欧美一级欧美三级| 一区二区三区在线视频观看 | 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 久久综合一区二区| 亚洲一二三区在线观看| 成人精品一区二区三区中文字幕| 欧美肥大bbwbbw高潮| 亚洲色图另类专区| 国产麻豆视频精品| 欧美成人官网二区| 午夜久久福利影院| 欧美中文字幕亚洲一区二区va在线| 国产丝袜在线精品| 久色婷婷小香蕉久久| 欧美理论在线播放| 一区二区三区四区av| 97久久人人超碰| 亚洲国产经典视频| 成人免费视频播放| 国产视频视频一区| 国产乱码精品一区二区三| 日韩一区二区电影在线| 人妖欧美一区二区| 欧美一区二区精品在线| 日日嗨av一区二区三区四区| 欧美色图激情小说| 亚洲一区二区在线观看视频 | 一区二区三区精品在线| 99精品国产视频| 日韩一区在线免费观看| 91免费版在线看| 亚洲精品中文在线观看| 在线观看日产精品| 日韩精品免费专区| 欧美成人性战久久| 国产精品亚洲一区二区三区在线| 精品国产乱码久久久久久1区2区| 久久国产精品区| 久久人人97超碰com| 国产a级毛片一区| 国产精品白丝在线| 色噜噜狠狠成人网p站| 亚洲综合清纯丝袜自拍| 欧美日韩国产首页| 麻豆91在线播放| 国产日韩欧美在线一区| 99久久精品国产导航| 一区二区三区av电影| 91精品国产一区二区| 韩国精品免费视频| 综合欧美亚洲日本| 欧美日韩国产大片| 国产乱人伦精品一区二区在线观看 | 久久综合丝袜日本网| a在线播放不卡| 亚洲超碰精品一区二区| 精品国产乱码久久久久久免费| 国产精品一级黄| 一区二区成人在线观看| 欧美一级片免费看| 91在线精品秘密一区二区| 偷偷要91色婷婷| 欧美国产综合色视频| 欧美日本精品一区二区三区| 国产福利一区在线| 亚洲成年人影院| 亚洲国产精品高清| 日韩视频123| 91免费精品国自产拍在线不卡 | 久久久五月婷婷| 欧美系列在线观看| 国产电影精品久久禁18| 亚洲一区精品在线| 国产日韩精品一区二区浪潮av| 欧美日韩精品久久久| 99在线精品观看| 精品午夜久久福利影院| 亚洲国产视频一区二区| 国产精品女同一区二区三区| 欧美日韩成人在线一区| 色综合天天综合色综合av| 韩国欧美一区二区| 午夜久久福利影院| 亚洲精品va在线观看| 国产日产欧美一区二区视频| 日韩一区二区电影| 欧美久久久久久久久久| 日本道免费精品一区二区三区| 国产米奇在线777精品观看| 日韩精品成人一区二区三区| 一区二区三区久久久| 亚洲特黄一级片| 国产精品大尺度| 最近中文字幕一区二区三区| 欧美激情综合网| 欧美国产日韩精品免费观看| 欧美sm极限捆绑bd| 久久五月婷婷丁香社区| 日韩欧美国产一区在线观看| 欧美日韩在线观看一区二区 | 中文字幕一区二区三区色视频| 国产欧美日韩综合精品一区二区| 精品国精品国产| 91麻豆精品久久久久蜜臀| 欧美日韩在线播放| 在线欧美小视频| 欧美日韩日日骚| 4438x亚洲最大成人网| 欧美一区二区在线播放| 欧美一区二区视频免费观看| 欧美一区二区网站| 日韩精品一区在线| 久久综合久久久久88| 国产亚洲一区二区在线观看| 久久精品人人做人人综合| 国产欧美精品一区二区色综合| 国产精品网站在线观看| 亚洲天堂成人在线观看| 一区二区三区欧美亚洲| 亚洲成a人v欧美综合天堂下载| 午夜精品福利视频网站| 奇米精品一区二区三区在线观看一| 蜜桃一区二区三区在线| 国内成+人亚洲+欧美+综合在线| 国产99一区视频免费| 91污在线观看| 欧美一区二区视频在线观看| 久久综合九色综合欧美就去吻| 国产精品久久毛片| 亚洲高清视频在线| 国产一区欧美二区| 色综合天天天天做夜夜夜夜做| 欧美人狂配大交3d怪物一区| 26uuuu精品一区二区| 国产精品久久久久影院| 亚洲成人资源网| 国产成人在线视频网站| 在线观看日韩国产| 精品久久久久久最新网址| 亚洲欧洲精品天堂一级| 日韩激情av在线| 国产伦精一区二区三区| 色婷婷久久久久swag精品| 日韩久久精品一区| 亚洲丝袜美腿综合| 久久疯狂做爰流白浆xx| 色拍拍在线精品视频8848| 精品国产一区久久|