Upload
austin-cooper
View
26
Download
0
Embed Size (px)
DESCRIPTION
Internetworking Protocols and Programming CSE 5348 / 7348 Instructor: Anil Gurijala Session 13 (Ch. 30, RFCs 2702 & 3031). Topics. Internet Management ISO Management Model TCP/IP Network Management SNMP MIB SMI ASN IP Tools. ISO Network Management Model. F ault C onfiguration - PowerPoint PPT Presentation
Citation preview
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)
TopicsTopics
• Internet Management– ISO Management Model– TCP/IP Network Management– SNMP– MIB– SMI – ASN
• IP Tools
ISO Network Management ModelISO Network Management Model
• Fault• Configuration • Accounting• Performance• Security
Typical Management ArchitectureTypical Management Architecture
Mgmt. Database
Agent Agent Agent
Managing Entity
WAN
Mgmt. Database Mgmt. Database
Network Management Protocol
TCP/IP Network MgmtTCP/IP Network Mgmt
• Framework is divided into two parts regarding standardization. – Communication of information.
SNMP– Management of data.
MIB
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.
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.
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
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
MIB VariablesMIB Variables
• Not only numeric, but more complex such as whole Routing Tables.
• Only Logical definition, actual implementation may vary for different nodes.
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.
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.
Example of ASN.1 NotationExample of ASN.1 NotationipAddrTable ::= SEQUENCE OF
IpAddrEntryIpAddrEntry ::= SEQUENCE {
ipAdEntAddr IpAddress,ipAdEntIfIndex INTEGER,ipAdEntNetMask IpAddress,ipAdEntBcastAddr IpAddress,ipAdEntReasmMaxSizeINTEGER
(0..65535)}
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.
Hierarchical Object Identifier NamespaceHierarchical Object Identifier Namespace
unnamed
Iso1
Itu2
JointIso-itu
3
Org3
Dod6
Internet1
Directory1
Mgmt2
Experimental3
Private4
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
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
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
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.
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.
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.
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.
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
MPLSMPLS
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
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
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
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
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.
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.
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
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.
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.
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.
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
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.
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
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.
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.
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.
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
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.
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.
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.
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
MPLS Label HeaderMPLS Label Header
• Called MPL SHIM Header• 32 Bits Length
LabelTTL S Exp
8 1 3 20
TunnelsTunnels
Ru R1 R2 Rd
• Hop-by-Hop Routed Tunnel • Explicitly Routed Tunnel
LSP can be used for tunneling.
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.
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
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.
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.
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.
Requirements for Traffic Engineering Requirements for Traffic Engineering over MPLS (RFC 2702)over MPLS (RFC 2702)
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.
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.
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.
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.
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.
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.
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.
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.
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.
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
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
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.
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.
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.
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.
Thank YouThank You