Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13
-
Upload
austin-cooper -
Category
Documents
-
view
23 -
download
0
description
Transcript of Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13
![Page 1: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/1.jpg)
Internetworking Protocols and ProgrammingInternetworking Protocols and Programming
CSE 5348 / 7348CSE 5348 / 7348
Instructor:Instructor: Anil GurijalaAnil Gurijala
Session 13Session 13
(Ch. 30, RFCs 2702 & 3031)(Ch. 30, RFCs 2702 & 3031)
![Page 2: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/2.jpg)
TopicsTopics
• Internet Management– ISO Management Model– TCP/IP Network Management– SNMP– MIB– SMI – ASN
• IP Tools
![Page 3: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/3.jpg)
ISO Network Management ModelISO Network Management Model
• Fault• Configuration • Accounting• Performance• Security
![Page 4: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/4.jpg)
Typical Management ArchitectureTypical Management Architecture
Mgmt. Database
Agent Agent Agent
Managing Entity
WAN
Mgmt. Database Mgmt. Database
Network Management Protocol
![Page 5: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/5.jpg)
TCP/IP Network MgmtTCP/IP Network Mgmt
• Framework is divided into two parts regarding standardization. – Communication of information.
SNMP– Management of data.
MIB
![Page 6: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/6.jpg)
Simple Network Mgmt. Protocol Simple Network Mgmt. Protocol
• Part of TCP/IP protocol suite. • Runs at application level.• Current version is 3, i.e. SNMPv3.• Defines Message format and transport
protocols. • Defines Set of operations and their
meaning.
![Page 7: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/7.jpg)
Management Information BaseManagement Information Base
• Specifies the data items that a managed item must keep, the operations allowed on it and the meanings.– MIB for IP specifies that software
must keep a count of all octets that arrive over each network interface and that network management software can only read the count.
![Page 8: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/8.jpg)
Examples of MIB CategoriesExamples of MIB CategoriesMIB Category Information aboutSystem The host or Router OSInterfaces Individual Network interfacesAt Address TranslationIp Internet Protocol softwareTcp Transmission Control ProtocolUDP User Datagram ProtocolOspf Open Shortest Path First S/WBgp Border Gateway protocol S/WRmon Remote Network Monitoring
![Page 9: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/9.jpg)
Examples of MIB Variables Examples of MIB Variables MIB Variable Category MeaningsysUpTime System Time since last rebootifNumber Interaces Number of network interfacesifMTU interfaces MTU for a particular
interfaceipDefaultTTL ip Value IP uses in time-to-live
fieldipInReceives ip Number of datagrams
receivedipOutNoRoutes ip Number of routing failurestcpRtoMin tcp Minimum retransmission
time TCP allowstcpMaxConn tcp Maximum TCP connections
allowedtcpInSegs tcp Number of segments TCP has
received
![Page 10: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/10.jpg)
MIB VariablesMIB Variables
• Not only numeric, but more complex such as whole Routing Tables.
• Only Logical definition, actual implementation may vary for different nodes.
![Page 11: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/11.jpg)
The Structure of Management InformationThe Structure of Management Information
• SMI specifies a set of rules used to define and identify MIB variables.
• SMI places restrictions on the types of variables allowed in the MIB, specifies the rules for naming those variables, and creates rules for defining variable types. – IpAddress – 4 octet string– Coutner – integer 0 to 232 – 1.
![Page 12: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/12.jpg)
Formal Definitions Using ASN.1Formal Definitions Using ASN.1
• SMI specifies that all MIB variables must be defined and referenced using ISO’s Abstract Syntax Notation 1 (ASN.1)
• ASN.1 is a formal language that has two main features: – a notation used in documents that humans
read – A compact encoded representation of the
same information used in communication protocols.
![Page 13: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/13.jpg)
Example of ASN.1 NotationExample of ASN.1 NotationipAddrTable ::= SEQUENCE OF
IpAddrEntryIpAddrEntry ::= SEQUENCE {
ipAdEntAddr IpAddress,ipAdEntIfIndex INTEGER,ipAdEntNetMask IpAddress,ipAdEntBcastAddr IpAddress,ipAdEntReasmMaxSizeINTEGER
(0..65535)}
![Page 14: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/14.jpg)
Object Identifier NamespaceObject Identifier Namespace• Names used for MIB variables are
taken from the object identifier Namespace.
• The namespace is not limited to network mgmt. e.g. each IP standard document has a name.
• The namespace is absolute and global.• Hierarchical• Authority is subdivided at each level.
![Page 15: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/15.jpg)
Hierarchical Object Identifier NamespaceHierarchical Object Identifier Namespace
unnamed
Iso1
Itu2
JointIso-itu
3
Org3
Dod6
Internet1
Directory1
Mgmt2
Experimental3
Private4
![Page 16: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/16.jpg)
Object Id. Namespace for MIBObject Id. Namespace for MIB
Internet1
Directory1
Mgmt2
Experimental3
Private4
Mib1
System1
Interfaces2
Addr.Trans.
3
ip icmp tcp
Label from the root to this point is 1.3.6
![Page 17: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/17.jpg)
ExampleExample
• ipInReceives has been assigned number identifies 3 under the ip node in the name space. – Name:
iso.org.dod.internet.mgmt.mib.ip.ipInReceives
– Numeric representation 1.3.6.1.2.1.4.3
![Page 18: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/18.jpg)
Referencing Table EntriesReferencing Table Entries
• ASN.1 does not use integer indices. Instead, appends a suffix onto the name to select a specific element in the table.
1 X
2 Y
3 Z
4 A
5 B
![Page 19: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/19.jpg)
Simple Network Management ProtocolSimple Network Management Protocol• Specifies the communication between
network management client program a manager invokes and a network management server program excuting on a host or router.
• Defines – the form and meaning of messages
exchanged– The representation of names and values
in those messages– Administrative relationships among
routers being managed.
![Page 20: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/20.jpg)
SNMPSNMP• All operations in a fetch-store
paradigm.• Conceptually, only two commands
– Fetch a value from a data item– Store a value into a data item.– (all other operations are side-effects
of the above). • Offers stability, simplicity and
flexibility.
![Page 21: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/21.jpg)
SNMP CommandsSNMP CommandsCommand MeaningGet-request Fetch a value from a specifi
variableGet-next-request Fetch a vlaue without knowing
its exact nameGet-bulk-request Fetch a large volume of dataResponse A response to any of the above
requestsSet-request Store a value in a specific
variableInform-requestReference to third-party dataSnpv2-trap Reply triggered by an eventReport Undefined.
![Page 22: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/22.jpg)
SNMP SNMP
• SNMP operations must be atomic, meaning that if a single SNMP message specifies operations on multiple variables, the server either performs all operations or none of them.
![Page 23: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/23.jpg)
Searching Tables Using NamesSearching Tables Using Names
IP Addresses Network Mask
128.194.76.95 255.255.0.0
128.186.174.89 255.255.255.0
128.192.165.98 255.255.255.0
Name: Iso.org.dod.internet.mgmt.mib.ip.ipAddrTable.ipAddrTable.ipAddrEntry.ipAdEntNetMask
Number:1.3.6.1.2.1.3.20.1.3
![Page 24: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/24.jpg)
MPLSMPLS
![Page 25: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/25.jpg)
Traffic Engineering: MPLSTraffic Engineering: MPLS
• MPLS (Multi Protocol Label Switching)– IP addresses are mapped to simple
fixed-length labels used by different packet forwarding/switching technologies.
– All the packets that are mapped to the same label traverse through the same path.
Bursty Traffic Connection Admission ControlTraffic Engineering
Ref: http://www.iec.org/online/tutorials/acrobat/mpls.pdf
![Page 26: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/26.jpg)
MPLS: IP FORWARDING USED MPLS: IP FORWARDING USED BY HOP-BY-HOP CONTROLBY HOP-BY-HOP CONTROL
47.1
47.247.3
IP 47.1.1.1
Dest Out
47.1 147.2 2
47.3 3
1
23
Dest Out
47.1 147.2 2
47.3 3
1
2
1
2
3
IP 47.1.1.1
IP 47.1.1.1IP 47.1.1.1
Dest Out
47.1 147.2 2
47.3 3
Ref: http://www.nanog.org/mtg-9905/ppt/mpls.ppt
![Page 27: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/27.jpg)
IntfIn
LabelIn
Dest IntfOut
3 0.40 47.1 1
IntfIn
LabelIn
Dest IntfOut
LabelOut
3 0.50 47.1 1 0.40
MPLS Label DistributionMPLS Label Distribution
47.1
47.247.3
1
2
31
2
1
2
3
3IntfIn
Dest IntfOut
LabelOut
3 47.1 1 0.50 Mapping: 0.40
Request: 47.1
Mapping: 0.50
Request: 47.1
![Page 28: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/28.jpg)
MPLS: Label Switched Path (LSP)MPLS: Label Switched Path (LSP)
IntfIn
LabelIn
Dest IntfOut
3 0.40 47.1 1
IntfIn
LabelIn
Dest IntfOut
LabelOut
3 0.50 47.1 1 0.40
47.1
47.247.3
1
2
31
2
1
2
3
3IntfIn
Dest IntfOut
LabelOut
3 47.1 1 0.50
IP 47.1.1.1
IP 47.1.1.1
![Page 29: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/29.jpg)
Advantages Advantages
• MPLS forwarding can be done by Layer-2 switches.
• Additional information than that available in the header can be used in assigning to a FEC.
• Traffic engineering can be done easily. • Supports Class of Service.
![Page 30: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/30.jpg)
MPLS Basics: LabelsMPLS Basics: Labels• A label is a short, fixed length, locally significant
identifier which is used to identify a FEC. The label which is put on a particular packet represents the Forwarding Equivalence Class to which that packet is assigned.
• Forwarding Equivalence Class (FEC) is a group of IP packets which are forwarded in the same manner (e.g., over the same path, with the same forwarding treatment)
• Label Switching Router (LSR) is an MPLS node which is capable of forwarding native L3 packets.
![Page 31: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/31.jpg)
BasicsBasics
RuRd
L3-L7 L=3
Label L=3 is for the traffic FEC F from Ru to Rd only.Ru is upstream Router for F and Rd Downstream Router for F. Rd decides the mapping of F to L and sends to Ru.
L2
![Page 32: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/32.jpg)
Label Distribution ProtocolLabel Distribution Protocol• A label distribution protocol is a set of
procedures by which one LSR informs another of the label/FEC bindings it has made.
• Two LSRs which use a label distribution protocol to exchange label/FEC binding information are known as "label distribution peers" with respect to the binding information they exchange.
• The architecture does not assume that there is only a single label distribution protocol.
![Page 33: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/33.jpg)
Unsolicited Downstream vs. Downstream-on-Unsolicited Downstream vs. Downstream-on-Demand Demand
• Downstream-on-demand: an LSR explicitly requests, from its next hop for a particular FEC, a label binding for that FEC.
• Unsolicited downstream: an LSR to distribute bindings to LSRs that have not explicitly requested them.
• Both of these label distribution techniques may be used in the same network at the same time.
• On any given label distribution adjacency, the upstream LSR and the downstream LSR must agree on which technique is to be used.
![Page 34: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/34.jpg)
Label Retention ModesLabel Retention Modes• An LSR Ru may receive (or have received) a label
binding for a particular FEC from an LSR Rd, even though Rd is not Ru's next hop (or is no longer Ru's next hop) for that FEC.
• Liberal Label Retention Mode: maintains the bindings between a label and a FEC which are received from LSRs which are not its next hop for that FEC.
• Conservative Label Retention Mode: discards such bindings. – Liberal label retention mode allows for quicker
adaptation to routing changes– Conservative label retention mode though
requires an LSR to maintain many fewer labels.
![Page 35: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/35.jpg)
Label StackLabel Stack• A labeled packet carries a number of labels,
organized as a last-in, first-out stack. • If a packet's label stack is of depth m, we
refer to the label at the bottom of the stack as the level 1 label, to the label above it (if such exists) as the level 2 label, and to the label at the top of the stack as the level m label.
L1 L2 L3 Lm
![Page 36: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/36.jpg)
The Next Hop Label Forwarding Entry The Next Hop Label Forwarding Entry (NHLFE)(NHLFE)
• NHLFE contains– the packet's next hop– One of the following operations to
perform on the packet's label stackreplace the label at the top of the label stack with a specified new labelpop the label stack replace the label at the top of the label stack with a specified new label, and then push one or more specified new labels onto the label stack.
![Page 37: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/37.jpg)
NHLFENHLFE
• NHLFE may also contain– the data link encapsulation to use
when transmitting the packet– the way to encode the label stack
when transmitting the packet– any other information needed in
order to properly dispose of the packet
![Page 38: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/38.jpg)
Incoming Label MapIncoming Label Map• The "Incoming Label Map" (ILM) maps
each incoming label to a set of NHLFEs. • It is used when forwarding packets that
arrive as labeled packets. • If the ILM maps a particular label to a set of
NHLFEs that contains more than one element, exactly one element of the set must be chosen before the packet is forwarded. – Having the ILM map a label to a set
containing more than one NHLFE may be useful if, e.g., it is desired to do load balancing over multiple equal-cost paths.
![Page 39: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/39.jpg)
FEC-to-NHLFE Map (FTN) FEC-to-NHLFE Map (FTN) • Maps each FEC to a set of NHLFEs. • It is used when forwarding packets that
arrive unlabeled, but which are to be labeled before being forwarded.
• If the FTN maps a particular label to a set of NHLFEs that contains more than one element, exactly one element of the set must be chosen before the packet is forwarded. – Having the FTN map a label to a set
containing more than one NHLFE may be useful if, e.g., it is desired to do load balancing over multiple equal-cost paths.
![Page 40: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/40.jpg)
Label SwappingLabel Swapping• Forwarding a labeled packet
– a LSR examines the label at the top of the label stack.
– It uses the ILM to map this label to an NHLFE.
– Using the information in the NHLFE, it determines where to forward the packet, and performs an operation on the packet's label stack. It then encodes the new label stack into the packet, and forwards the result.
![Page 41: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/41.jpg)
Label SwappingLabel Swapping• Forwarding an unlabeled packet
– a LSR analyzes the network layer header, to determine the packet's FEC.
– It then uses the FTN to map this to an NHLFE.
– Using the information in the NHLFE, it determines where to forward the packet, and performs an operation on the packet's label stack.
– It then encodes the new label stack into the packet, and forwards the result
![Page 42: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/42.jpg)
Label Switched PathLabel Switched Path• A "Label Switched Path (LSP) of level m" for a
particular packet P is a sequence of routers, <R1, ..., Rn> with the following properties: – which begins with an LSR (an "LSP Ingress")
that pushes on a level m label, – all of whose intermediate LSRs make their
forwarding decision by label Switching on a level m label,
– which ends (at an "LSP Egress") when a forwarding decision is made by label Switching on a level m-k label, where k>0, or when a forwarding decision is made by "ordinary", non-MPLS forwarding procedures.
![Page 43: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/43.jpg)
Invalid Incoming Labels Invalid Incoming Labels
• What should an LSR do if it receives a labeled packet with a particular incoming label, but has no binding for that label? – when a labeled packet is received with an
invalid incoming label, it MUST be discarded, UNLESS it is determined by some means (not within the scope of the current document) that forwarding it unlabeled cannot cause any harm.
![Page 44: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/44.jpg)
Route Selection Route Selection
• Method used for selecting the LSP for a particular FEC. – hop by hop routing
allows each node to independently choose the next hop for each FEC.
– explicit routing
a single LSR, generally the LSP ingress or the LSP egress, specifies several (or all) of the LSRs in the LSP.
![Page 45: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/45.jpg)
Time-to-Live (TTL) Time-to-Live (TTL)
• When a packet travels along an LSP, it SHOULD emerge with the same TTL value that it would have had if it had traversed the same sequence of routers without having been label switched. – MPLS-specific "shim" header – MPLS labels are carried in an L2
header like ATM
![Page 46: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/46.jpg)
MPLS Label HeaderMPLS Label Header
• Called MPL SHIM Header• 32 Bits Length
LabelTTL S Exp
8 1 3 20
![Page 47: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/47.jpg)
TunnelsTunnels
Ru R1 R2 Rd
• Hop-by-Hop Routed Tunnel • Explicitly Routed Tunnel
LSP can be used for tunneling.
![Page 48: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/48.jpg)
Label Distribution ProtocolLabel Distribution Protocol
• A label distribution protocol as a set of procedures by which one Label Switched Router (LSR) informs another of the meaning of labels used to forward traffic between and through them.
• A number of different label distribution protocols are being standardized.
![Page 49: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/49.jpg)
List of Label Distribution ProtocolsList of Label Distribution Protocols
Protocol Name Traffic Engineering
LDP No
BGP No
IS-IS No
CR-LDP Yes
RSVP-TE Yes
OSPF-TE Yes
![Page 50: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/50.jpg)
LDP Message Exchange LDP Message Exchange • Discovery messages
– used to announce and maintain the presence of an LSR in a network.
– provide a mechanism whereby LSRs indicate their presence in a network by sending a Hello message periodically.
– This is transmitted as a UDP packet to the LDP port at the `all routers on this subnet' group multicast address.
![Page 51: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/51.jpg)
LDP Message ExchangeLDP Message Exchange
• Session messages– used to establish, maintain, and
terminate sessions between LDP peers.
– When an LSR chooses to establish a session with another LSR learned via the Hello message, it uses the LDP initialization procedure over TCP transport.
![Page 52: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/52.jpg)
LDP Message ExchangeLDP Message Exchange• Advertisement messages
– used to create, change, and delete label mappings for FECs.
– Upon successful completion of the initialization procedure, the two LSRs are LDP peers, and may exchange advertisement messages.
– Uses TCP Transport.• Notification messages
– used to provide advisory information and to signal error information.
– Uses TCP Transport.
![Page 53: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/53.jpg)
Requirements for Traffic Engineering Requirements for Traffic Engineering over MPLS (RFC 2702)over MPLS (RFC 2702)
![Page 54: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/54.jpg)
IntroductionIntroduction
• Traffic Engineering (TE) is concerned with performance optimization of operational networks.
• It compasses the application of technology and scientific principles to the measurement, modeling, characterization, and control of Internet traffic and the application of such knowledge and techniques to achieve specific performance objectives.
![Page 55: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/55.jpg)
TE performance objectivesTE performance objectives• Traffic Oriented
– Aspects that enhance the QoS of traffic. E.g. minimization of packet loss, minimization of delay, maximization of throughput, etc.
• Resource Oriented– Aspects pertaining to the optimization of
resource utilization. E.g. efficient bandwidth management.
• Congestion applies to both of the above.
![Page 56: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/56.jpg)
Congestion CausesCongestion Causes• Insufficient network resources to
accommodate offered traffic.• Inefficient traffic mapping to available
resources, causing subsets of network resource to become over-utilized while others are under utilized.
Second type of congestion is addressed through TE.
![Page 57: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/57.jpg)
Limitations of current IGPsLimitations of current IGPs
• IGPs based on SPF algorithms optimize based on a simple additive metric.
• Congestion occurs– The shortest paths of multiple traffic
streams converge on specific linsk or router interfaces, or
– A given traffic stream is routed through a link or router interface which does not have enough bandwidth to accommodate it.
![Page 58: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/58.jpg)
Traffic TrunkTraffic Trunk
• A traffic trunk is an aggregation of traffic flows of the same class which are placed inside a Label Switched Path.
• A traffic trunk is an abstract representation of traffic to which specific characteristics can be associated.
![Page 59: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/59.jpg)
MPLS and TEMPLS and TE• Explicit label switched paths which are not constrained by the
destination based forwarding paradigm can be easily created through manual administrative action or through automated action by the underlying protocols.
• LSPs can potentially be efficiently maintained,• Traffic trunks can be instantiated and mapped onto LSPs,• A set of attributes can be associated with traffic trunks which
modulate their behavioral characteristics• A set of attributes can be associated with resources which constrain
the placement of LSPs and traffic trunks across them,• MPLS allows for both traffic aggregation and dis-aggregation,
whereas classical destination only based on IP forwarding permits only aggregation.
• It is relatively easy to integrate a constraint-based routing framework with MPLS
• A good implementation of MPLS can offer significantly lower overhead than competing alternatives for Traffic Engineering.
![Page 60: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/60.jpg)
The Fundamental Problem of Traffic The Fundamental Problem of Traffic Engineering Over MPLS Engineering Over MPLS
• how to map packets onto forwarding equivalence classes.
• how to map forwarding equivalence classes onto traffic trunks.
• how to map traffic trunks onto the physical network topology through label switched paths.
![Page 61: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/61.jpg)
capabilities required to support TE capabilities required to support TE • A set of attributes associated with traffic trunks
which collectively specify their behavioral characteristics.
• A set of attributes associated with resources which constrain the placement of traffic trunks through them. These can also be viewed as topology attribute constraints.
• A "constraint-based routing" framework which is used to select paths for traffic trunks subject to constraints imposed by items 1) and 2) above. The constraint-based routing framework does not have to be part of MPLS. However, the two need to be tightly integrated together.
![Page 62: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/62.jpg)
Traffic Trunk Attributes and Characteristics Traffic Trunk Attributes and Characteristics • Basic Properties
– A traffic trunk is an *aggregate* of traffic flows belonging to the same class. In some contexts, it may be desirable to relax this definition and allow traffic trunks to include multi-class traffic aggregates.
– In a single class service model, such as the current Internet, a traffic trunk could encapsulate all of the traffic between an ingress LSR and an egress LSR, or subsets thereof.
– Traffic trunks are routable objects (similar to ATM VCs).
– A traffic trunk is distinct from the LSP through which it traverses. In operational contexts, a traffic trunk can be moved from one path onto another.
– A traffic trunk is unidirectional.
![Page 63: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/63.jpg)
Basic Operations of TTBasic Operations of TT• Establish: To create an instance of a traffic trunk.• Activate: To cause a traffic trunk to start passing traffic.
The establishment and activation of a traffic trunk are logically separate events. They may, however, be implemented or invoked as one atomic action.
• Deactivate: To cause a traffic trunk to stop passing traffic.• Modify Attributes: To cause the attributes of a traffic trunk
to be modified. • Reroute: To cause a traffic trunk to change its route. This
can be done through administrative action or automatically by the underlying protocols.
• Destroy: To remove an instance of a traffic trunk from the network and reclaim all resources allocated to it. Such resources include label space and possibly available bandwidth
![Page 64: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/64.jpg)
Basic TT AttributesBasic TT Attributes• Traffic parameter attributes
– Peak, Average, Burst Size, etc.• Generic Path selection and maintenance attributes
– define the rules for selecting the route taken by a traffic trunk as well as the rules for maintenance of paths that are already established.
– If there are no resource requirements or restrictions associated with a traffic trunk, then a topology driven protocol can be used to select its path. However, if resource requirements or policy restrictions exist, then a constraint-based routing scheme should be used for path selection.
– Administratively Specified Explicit Paths – Hierarchy of Preference Rules For Multi-Paths – Resource Class Affinity Attributes – Adaptivity Attribute – Load Distribution Across Parallel Traffic Trunks
![Page 65: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/65.jpg)
TT AttributesTT Attributes• Priority attribute
– The priority attribute defines the relative importance of traffic trunks.
• Preemption attribute– The preemption attribute determines whether a traffic
trunk can preempt another traffic trunk from a given path, and whether another traffic trunk can preempt a specific traffic trunk.
• Resilience attribute– The resilience attribute determines the behavior of a
traffic trunk under fault conditions. • Policing attribute
– The policing attribute determines the actions that should be taken by the underlying protocols when a traffic trunk becomes non-compliant.
![Page 66: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/66.jpg)
Resource AttributesResource Attributes• Maximum Allocation Multiplier
– The maximum allocation multiplier (MAM) of a resource is an administratively configurable attribute which determines the proportion of the resource that is available for allocation to traffic trunks. E.g. Bandwidth
• Resource Class Attribute – The key resources of interest here are
links. When applied to links, the resource class attribute effectively becomes an aspect of the "link state" parameters.
![Page 67: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/67.jpg)
Constraint-Based Routing Constraint-Based Routing • Constraint-based routing enables a demand
driven, resource reservation aware, routing paradigm to co-exist with current topology driven hop by hop Internet interior gateway protocols.
• A constraint-based routing framework uses the following as input– The attributes associated with traffic
trunks. – The attributes associated with resources.– Other topology state information.
![Page 68: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/68.jpg)
Basic Features of Constraint-Based Routing Basic Features of Constraint-Based Routing
• Should at least have the capability to automatically obtain a basic feasible solution to the traffic trunk path placement problem.
![Page 69: Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13](https://reader038.fdocuments.us/reader038/viewer/2022110402/56812a9b550346895d8e5197/html5/thumbnails/69.jpg)
Thank YouThank You