William Stallings Data and Computer Communications William Stallings Data and Computer Communications

Document Sample
William Stallings Data and Computer Communications William Stallings Data and Computer Communications Powered By Docstoc
					William Stallings
Data and Computer

   Chapter 16
   Internetwork Operation
Review of Chapter 15
•   Principles of Internetworking
•   Connectionless Internetworking
•   Internet Protocol
•   IPv6
•   IP Multicasting


               客户机       data link

                                                 data link

路由器                                                    服务器
            移动终端                                                 3
Contents in This Chapter
•   Routing Protocols
•   Integrated Services Architecture
•   Resource Reservation: RSVP
•   Differentiated Services

Internetworking Protocols in Context

  Routing Protocols

• Routing (fixed or dynamic)
• Exchange network information

• Routing Information
  • About topology, delays, cost, etc.
• Routing Algorithm
  • Make routing decisions based on information

  Autonomous Systems (AS)
• Group of routers
• Exchange information using common routing
• Set of routers and networks managed by single
• A connected network (There is at least one route
  between any pair of nodes)

Interior Router Protocol (IRP)

• Passes routing information between routers within
• Flexibility (custom-tailored to specific applications
  and needs)
• E.g. a university, a company

• Also called interior gateway protocol (IGP)

    Exterior Router Protocol (ERP)
• Problem:
   • May be more than one AS in internet
   • Routing algorithms and tables may differ between different AS
   • Routers need some info about networks outside their AS
• Use exterior router protocol (ERP)
   • Also called exterior gateway protocol (EGP)

• IRP needs detailed model
• ERP supports summary information on reachability, simpler
  & more efficient

Application of IRP and ERP

      Border Gateway Protocol (BGP)
•   A kind of ERP
•   For use with TCP/IP internets
•   Preferred ERP of the Internet
•   Exchange routing information among ASs
•   Messages sent over TCP connections (table. 16.1)
•   Current version BGP-4

     BGP-4 Messages
•Neighbor: connected to a same network

Open           Used to open a neighbor relationship with another router.

Update         (1) transmit information about a single route
               (2) list multiple routes to be withdrawn.

Keepalive      (1) acknowledge an Open message
               (2) periodically confirm the neighbor relationship.

Notification   Send when an error condition is detected.
Border Gateway Protocol (BGP)

• Neighbor acquisition
   • Open, keepalive
• Neighbor reachability
   • Keepalive
• Network reachability
   • Database (network and route)
   • Update, broadcast to all other BGP router
BGP Messages

  BGP Procedure
• Open TCP connection
• Send Open message
   • AS
   • IP
   • proposed hold time
• Receiver selects minimum of its hold time and
  the received one
   • Max time between Keepalive and/or update
   Message Types
• Keep Alive
  • To tell other routers that this router is still here
• Update
  • Info about single routes through internet
  • List of routes being withdrawn

Info about Single Routes Through Internet
 • Network Layer Reachability Information (NLRI)
    • List of networks that can be reached by the route
 • Total Path Attributes Length
 • Path Attributes
    •   Origin (IGP or EGP)
    •   AS_Path (list of AS traversed)
    •   Next_hop (IP address of boarder router)
    •   Multi_Exit_Disc (Info about routers internal to AS)
    •   Local_pref (Inform other routers within AS)
    •   Atomic_Aggregate, Aggregator (Uses address tree structure to
        reduce amount of info needed)
  Uses of AS_Path and Next_Hop
• AS_Path
  • Enables routing policy
     • Security
     • Performance
     • Avoid a particular AS
  • Number of AS crossed
• Next_Hop
  • Only a few routers implement BGP
     • Responsible for informing outside routers of routes to other
       networks in AS
Notification Message
• Message header error
   • Authentication and syntax
• Open message error
   • Syntax and option not recognized
   • Unacceptable hold time
• Update message error
   • Syntax and validity errors
• Hold time expired
   • Can’t receive keepalive, update or notification
   • Connection is closed
• Finite state machine error
• Cease
   • Used to close a connection when there is other error
  BGP Routing Information Exchange (1)
• Within AS, router builds topology picture using
  IRP (Fig. 16.1, R1 uses IRP & ERP)
• Router issues Update message to other routers
  outside AS using BGP (update)
   • AS_Path: AS1
   • Next_Hop: IP address of R1
   • NLRIL: List of all networks in AS1
• R9 (R5->R9)
   • AS_Path: {AS2, AS1}
   • Next_Hop: IP address of R5
   • NLRI : List of all networks in AS1             20
BGP Routing Information Exchange (2)

• These routers exchange info with other routers
  in other AS
• Routers must then decide best routes
• AS_Path makes no circle exist
• Exchange BGP in the same AS
• Multi-Exit-Disc (Fig. 16.2)

    Open Shortest Path First (1)
•   OSPF
•   IRP of Internet
•   Replaced Routing Information Protocol (RIP)
•   Uses Link State Routing Algorithm
    •   Each router keeps list of state of local links to network
    •   Transmits update state info
    •   Little traffic as messages are small and not sent often
    •   RFC 2328
• Route computed on least cost based on user cost
• Balance load

Open Shortest Path First (2)
• Topology stored as directed graph
• Vertices or nodes
   • Router
   • Network
       • Transit
       • Stub
• Edges
   • Connect two router (point to point)
   • Connect router to network

Sample AS

• Dijkstra’s algorithm (Appendix 10A) used to find
  least cost path to all other networks
• Next hop used in routing packets


Integrates Services Architecture
• Best-effort delivery
• Changes in traffic demands require variety of
  quality of service
   • E.g. Internet phone, multimedia, multicast
• New functionality required in routers
• New means of requesting QoS
• ISA, RFC 1633

   Internet Traffic
• Elastic
   • Can cope with wide changes in delay and/or throughput
   • UDP: use as much capacity as is available
   • TCP: according to the receiver, use as much capacity as is
     available (with congestion control)
       •   Online file transmission sensitive to throughput
       •   E-Mail insensitive to delay
       •   Network Management sensitive to delay in times of heavy congestion
       •   Telnet, Web sensitive to delay
   • QoS is useful even when using elastic traffic
• Inelastic
   • Does not easily adapt to variations
   • e.g. real time traffic
    Requirements for Inelastic Traffic

•   Throughput, require a minimum given throughput
•   Delay
•   Jitter
•   Packet loss

• Requirement:
    • Preferential treatment for certain types of traffic
    • Elastic traffic to be supported as well (avoid crowding off
      elastic traffic)
   ISA Approach
• Congestion control in IP (not fit for inelastic traffic)
   • Routing algorithms (minimum delay)
   • Packet discard (the most recent one)

• Associate each packet with a flow (same QoS)
   • Unidirectional
   • Can be multicast
• ISA:
   •   Admission Control (RSVP)
   •   Routing Algorithm (various QoS parameters)
   •   Queuing discipline
   •   Discard policy                                        30
ISA Components (in Router)

   ISA Services
• Guaranteed
   • Assured data rate
   • Upper bound on queuing delay
   • No queuing loss
• Controlled load
   • Approximates behavior to best efforts on unloaded network
   • No specific upper bound on queuing delay
   • Very high delivery success
• Best Effort

Token Bucket Traffic Specification

• Token replenishment rate R
  • Continually sustainable data rate
• Bucket size B
  • Amount that data rate can exceed R for short period
  • During time period T amount of data sent can not
    exceed RT + B

Token Bucket Scheme

   Queuing Discipline
• Traditionally FIFO
   • No special treatment for high priority flow packets
   • Large packet can hold up smaller packets
   • Greedy connection can crowd out less greedy connection
• Fair queuing
   •   Queue maintained at each output port
   •   Packet placed in queue for its flow
   •   Round robin servicing
   •   Skip empty queues
   •   Can have weighted fair queuing

FIFO and Fair Queue

   Resource Reservation: RSVP
• Unicast applications can reserve resources in routers to
  meet QoS
• If router can not meet request, application informed
• Multicast is more demanding
• May be reduced
   • Some members of group may not require delivery from
     particular source over given time
       • e.g. selection of one from a number of “channels”
   • Some group members may only be able to handle a portion of
     the transmission

Soft State
• Set of state info in router that expires unless
• Applications must periodically renew requests
  during transmission
• Resource ReSerVation Protocol (RSVP), RFC

   RSVP Goals
• Ability for different receivers to make various reservations
• Deal gracefully with changes in multicast group
• Specify resource requirements such that aggregate
  resources reflect requirements
• Enable receivers to select one source
• Deal gracefully with changes in routes
• Control protocol overhead
• Independent of routing protocol

     RSVP Characteristics

•   Unicast and Multicast
•   Simplex
•   Receiver initiated reservation
•   Maintain soft state in the internet
•   Provide different reservation styles
•   Transparent operation through non-RSVP routers
•   Support for IPv4 (ToS) and IPv6 (flow)

Data Flow Concepts
• Session
  • Data flow identified by its destination
• Flow descriptor
  •   Reservation request issued by destination
  •   Made up of flowspec and filterspec
  •   Flowspec gives required QoS
  •   Filterspec defines set of packets for which
      reservation is required

Treatment of Packets

RSVP Operation

RSVP Message Types
• Resv
  •   Originate at multicast receivers
  •   Propagate upstream through distribution tree
  •   Create soft states within routers
  •   Reach sending host enabling it to set up traffic
      control for first hop
• Path
  • Provide upstream routing information

    Operation From Host Perspective
• Receiver joins multicast group (IGMP)
• Potential sender issues Path message
• Receiver gets message identifying sender
• Receiver has reverse path info and may start
  sending Resv messages
• Resv messages propagate through internet and
  is delivered to sender
• Sender starts transmitting data packets
• Receiver starts receiving data packets
    Differentiated Services
• Problems of ISA & RSVP
• Provide simple, easy to implement, low overhead tool to
  support range of network services differentiated on basis of
   • IP Packets labeled for differing QoS using existing IPv4 Type of
     Service or IPv6 Traffic calss
   • Service level agreement established between provider and
     customer prior to use of DS
   • Built in aggregation. Good scaling to larger networks and loads
   • Implemented by queuing and forwarding based on DS octet. No
     state info on packet flows stored

    Terminology (1)
• Behavior Aggregate: A set of packets with the same DS codepoint
  crossing a link in a particular direction.
• Classifier: Selects packets based on the DS field (BA classifier) or
  on multiple fields within the packet header (MF classifier).
• DS Boundary Node: A DS node that connects one DS domain to a
  node in another domain
• DS Codepoint: A specified value of the 6-bit DSCP portion of the 8-
  bit DS field in the IP header.
• DS Domain: A contiguous (connected) set of nodes, capable of
  implementing differentiated services, that operate with a common
  set of service provisioning policies and per-hop behavior definitions.

      Terminology (2)
• DS Interior Node: A DS node that is not a DS boundary node.
• DS Node: A node that supports differentiated services. Typically, a DS
  node is a router. A host system that provides differentiated services for
  applications in the host is also a DS node.
• Dropping: The process of discarding packets based on specified rules;
  also called policing.
• Marking: The process of setting the DS codepoint in a packet. Packets
  may be marked on initiation and may be re-marked by an en route DS
• Metering: The process of measuring the temporal properties (e.g., rate)
  of a packet stream selected by a classifier. The instantaneous state of
  that process may affect marking, shaping, and dropping functions.
• Per-Hop Behavior (PHB) : The externally observable forwarding
  behavior applied at a node to a behavior aggregate.

     Terminology (3)
• Service Level (SLA) : A service contract between a customer and a
  service provider that Agreement specifies the forwarding service a
  customer should receive.
• Shaping: The process of delaying packets within a packet stream to
  cause it to conform to some defined traffic profile.
• Traffic Conditioning: Control functions performed to enforce rules
  specified in a TCA, including metering, marking, shaping, and
• Traffic Conditioning: An agreement specifying classifying rules and
  traffic conditioning
• Agreement (TCA): rules that are to apply to packets selected by the

DS Services
• Defined within DS domain
   • Contiguous portion of Internet over which consistent
     set of DS policies are administered
   • Typically under control of one organization
   • Defined by service level agreements (SLA)
   • Configured in every router
• Within a domain, or across different domains

  SLA Parameters

• Detailed service performance, e.g. expected
  throughput, drop probability & latency
• Constraints on ingress and egress points
• Traffic profiles, e.g. token bucket parameters
• Disposition of traffic in excess of profile

Example Services
• Level A - low latency
• Level B - low loss
• Level C - 90% of traffic < 50ms latency
• Level D - 95% in profile traffic delivered
• Level E - allotted twice bandwidth of level F
• Level F - Traffic with drop precedence X higher
  probability of delivery than that of Y

    DS Octet - Code Pools
• IPv4 (ToS), IPv6 (TC)
• Leftmost 6 bits used (Codepoint), 64
• 3 pools of code points:
   • xxxxx0, assignment as standards
      • 000000, best effort
   • xxxx11, experimental or local use
   • xxxx01, experimental or local but may be allocated for
     standards in future

DS Octet - Precedence Field
xxx000, backward compatibility with IPv4
• Routing selection
• Network service
• Queuing discipline (P. 597)
   • Queue service
   • Congestion control

DS Domains

  DS Configuration and Operation
• Within domain, interpretation of DS code points is
• Routers in domain are boundary nodes or interior nodes
• Traffic conditioning functions
   •   Classifier
   •   Meter
   •   Marker
   •   Shaper
   •   Dropper

DS Traffic Conditioner

Review & Key Points
•   Routing Protocols
•   Integrated Services Architecture
•   Resource Reservation: RSVP
•   Differentiated Services

Exercise & Preparation
• Preparation
  • Chapter 17