31.07.2015 Views

network protocols handbook.pdf

network protocols handbook.pdf

network protocols handbook.pdf

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

92Protocols GuideTCP/IP - Network Layer ProtocolsMPLS ProtocalsProtocol NameMPLS: Multiprotocol LabelSwitchingProtocol DescriptionMultiprotocol Label Switching (MPLS), an architecture for fastpacket switching and routing, provides the designation, routing,forwarding and switching of traffic flows through the <strong>network</strong>.More specifically, it has mechanisms to manage traffic flows ofvarious granularities. It is independent of the layer-2 and layer-3<strong>protocols</strong> such as ATM and IP. It provides a means to map IP addressesto simple, fixed-length labels used by different packetforwardingand packet-switching technologies. It interfaces toexisting routing and switching <strong>protocols</strong>, such as IP, ATM, FrameRelay, Resource ReSerVation Protocol (RSVP) and Open ShortestPathFirst (OSPF), etc.In MPLS, data transmission occurs on Label-Switched Paths(LSPs). LSPs are a sequence of labels at each and every nodealong the path from the source to the destination. There areseveral label distribution <strong>protocols</strong> used today, such as LabelDistribution Protocol (LDP) or RSVP or piggybacking on routing<strong>protocols</strong> like border gateway protocol (BGP) and OSPF. Highspeedswitching of data is possible because the fixed-length labelsare inserted at the very beginning of the packet or cell andcan be used by hardware to switch packets quickly betweenlinks.MPLS is designed to address <strong>network</strong> problems such as <strong>network</strong>s-speed,scalability, quality-of-service (QoS) management,and traffic engineering. MPLS has also become a solution to thebandwidth-management and service requirements for next-generationIP-based backbone <strong>network</strong>s.In this section, we focus on the general MPLS framework. LDP,CR-LDP and RSVP-TE will be discussed in separate documents.Protocol StructureMPLS label structure:20 23 24 32bitLabel Exp S TTL• Label - Label Value carries the actual value of theLabel. When a labeled packet is received, the labelvalue at the top of the stack is looked up and thesystem learns:a) the next hop to which the packet is to beforwarded;b) the operation to be performed on the labelstack before forwarding; this operation maybe to replace the top label stack entry withanother, or to pop an entry off the labelstack, or to replace the top label stack entryand then to push one or more additional entrieson the label stack.• Exp - Experimental Use: Reserved for experimentaluse.• S - Bottom of Stack: This bit is set to one for the lastentry in the label stack, and zero for all other labelstack entries• TTL - Time to Live field is used to encode a time-tolivevalue.The MPLS architecture protocol family includes:• MPLS related Signalling Protocols such as OSPF,BGP, ATM PNNI, etc.• LDP: Label Distribution Protocol.• CR-LDP: Constraint-Based LDP• RSVP-TE: Resource Reservation Protocol – TrafficEngineeringThe following figure depicts the MPLS protocol stack architecture:LDP.CR-LDPRouting SinglingBGP, PNNI, OSPFLIB.TCP.IP Fwd.MPLS FwdPhysical LayerUDP.Figure 2-4: MPLS protocol stack architectureThe structure of each protocol will be discussed in separatedocuments.Related <strong>protocols</strong>LDP, CR-LDP, RSVP-TE, IP, ATM, RSVP, OSPFRSVP-TESponsor SourceMPLS is defined by IETF (http://www.ietf.org) RFC3031 andRFC 3032.Referencehttp://www.javvin.com/protocol/rfc3031.<strong>pdf</strong>Multiprotocol Label Switching Architecturehttp://www.javvin.com/protocol/rfc3032.<strong>pdf</strong>MPLS Label Stack Encodinghttp://www.javvin.com/protocol/rfc3443.<strong>pdf</strong>Time To Live (TTL) Processing in Multi-Protocol Label Switching(MPLS) Networkshttp://www.javvin.com/protocol/rfc3036.<strong>pdf</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!