School of Computing Science - PowerPoint PPT Presentation

Loading...

PPT – School of Computing Science PowerPoint presentation | free to download - id: 6a7c32-MTg0M



Loading


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation
Title:

School of Computing Science

Description:

CMPT 765/408: Computer Networks Networking Basics I Instructor: Dr. Mohamed Hefeeda ... – PowerPoint PPT presentation

Number of Views:29
Avg rating:3.0/5.0
Date added: 18 June 2020
Slides: 84
Provided by: Mohamed108
Learn more at: http://nsl.cs.sfu.ca
Category:

less

Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: School of Computing Science


1
  • School of Computing Science
  • Simon Fraser University
  • CMPT 765/408 Computer Networks
  • Networking Basics I
  • Instructor Dr. Mohamed Hefeeda

2
Course Objectives
  • Understand
  • principles of designing and operating computer
    networks
  • structure and protocols of the Internet
  • services that can/cannot be offered by the
    Internet
  • Know how to
  • analytically analyze performance of a
    system/protocol
  • implement network protocols and applications
  • And, more importantly,
  • Have fun!

3
Course Info
  • Most of the course will be lectures given by the
    instructor
  • Last 2-3 weeks, each student presents a paper on
    one of the current hot topics
  • Course web page
  • http//nsl.cs.surrey.sfu.ca/teaching/06/765/
  • Or access it from my web page
  • http//www.cs.sfu.ca/mhefeeda

4
Course Info Textbooks and References
  • All are on reserve in SFU Surrey Library
  • Kurose and Rose, Computer Networking  A top-down
    Approach Featuring the Internet, 2005
  • Background materials
  • Chapters 6 and 7 Wireless and Multimedia
    Networking
  • Hassan and Jain, High Performance TCP/IP
    Networking, 2004 
  • Several chapters on analyzing TCP/IP in different
    environments
  • Stallings, High-speed Networks and Internets
    Performance and Quality of Service, 2002
  • Three chapters on (basics of) probability and
    queuing
  • Papers will be posted on the course web page

5
Course Info Grading
  • Homework 20
  • 3 4 problem sets
  • Projects 35
  • 4 projects group of two students
  • Class participation 10
  • Ask and answer questions
  • Present one chapter/paper
  • Final exam 35
  • Comprehensive

6
Course Info Topics
  • Internet Architecture and Services
  • TCP/IP Protocol Suit
  • Inter- and Intra-domain Routing Protocols
  • Introduction to Performance Modeling and
    Evaluation
  • Introduction to Simulation and Measurement of
    Networked Systems
  • TCP/IP Performance Modeling in Different
    Environments
  • Quality of Service Support in the Internet
  • Wireless Networks
  • Multimedia Networking
  • Overlays and Peer-to-Peer Computing
  • Hot Topics
  • Mesh networks, sensor networks, P2P, denial of
    service attacks, security in wireless networks,
    , you choose/propose

7
  • Basic Networking Concepts

8
Review of Basic Networking Concepts
  • Internet structure
  • Protocol layering and encapsulation
  • Internet services and socket programming
  • Network Layer
  • Network types Circuit switching, Packet
    switching
  • Addressing, Forwarding, Routing
  • Transport layer
  • Reliability and congestion control
  • TCP, UDP
  • Link Layer
  • Multiple Access Protocols
  • Ethernet

9
The Internet
  • Millions of hosts (end systems)
  • Inter-connected, running network apps
  • Diverse communication links
  • fiber, copper, radio, satellite
  • Routers
  • forward packets
  • Internet network of networks
  • loosely hierarchical
  • Public, versus private intranet

10
Internet structure network of networks
  • roughly hierarchical
  • at center tier-1 ISPs (e.g., MCI, Sprint,
    ATT, Cable and Wireless), national/international
    coverage
  • treat each other as equals

Tier 1 ISP
Tier 1 ISP
Tier 1 ISP
11
Tier-1 ISP e.g., Sprint
Sprint US backbone network
12
Internet structure Tier-2 ISPs
  • Tier-2 ISPs smaller (often regional) ISPs
  • Connect to one or more tier-1 ISPs, possibly
    other tier-2 ISPs

Tier 1 ISP
Tier 1 ISP
Tier 1 ISP
13
Internet structure Tier-3 ISPs
  • Tier-3 ISPs and local ISPs
  • last hop (access) network (closest to end
    systems)

Tier 1 ISP
Tier 1 ISP
Tier 1 ISP
14
Internet structure packet journey
  • a packet passes through many networks!

Tier 1 ISP
Tier 1 ISP
Tier 1 ISP
15
Review of Basic Networking Concepts
  • Internet structure
  • Protocol layering and encapsulation
  • Internet services and socket programming
  • Network Layer
  • Network types Circuit switching, Packet
    switching
  • Addressing, Forwarding, Routing
  • Transport layer
  • Reliability and congestion control
  • TCP, UDP
  • Link Layer
  • Multiple Access Protocols
  • Ethernet

16
Protocol Layers
  • Networks are complex!
  • many pieces
  • hosts
  • routers
  • links of various media
  • applications
  • protocols
  • hardware, software
  • Question
  • Is there any hope of organizing structure of
    network?
  • Or at least our discussion of networks?

17
Layering of Airline Functionality
  • Layers each layer implements a service
  • via its own internal-layer actions
  • relying on services provided by layer below

18
Why layering?
  • Dealing with complex systems
  • explicit structure allows identification,
    relationship of complex systems pieces
  • modularization eases maintenance, updating of
    system
  • change of implementation of layers service
    transparent to rest of system
  • e.g., change in gate procedure doesnt affect
    rest of system
  • What is the downside of layering?

19
Internet protocol stack
  • application supporting network applications
  • FTP, SMTP, HTTP
  • transport host-host data transfer
  • TCP, UDP
  • network routing of datagrams from source to
    destination
  • IP, routing protocols
  • link data transfer between neighboring network
    elements
  • PPP, Ethernet
  • physical bits on the wire

20
Encapsulation
datagram
frame
21
Review of Basic Networking Concepts
  • Internet structure
  • Protocol layering and encapsulation
  • Internet services and socket programming
  • Network Layer
  • Network types Circuit switching, Packet
    switching
  • Addressing, Forwarding, Routing
  • Transport layer
  • Reliability and congestion control
  • TCP, UDP
  • Link Layer
  • Multiple Access Protocols
  • Ethernet

22
Internet Services
  • View the Internet as a communication
    infrastructure that provides services to apps
  • Web, email, games, e-commerce, file sharing,
  • Two communication services
  • Connectionless unreliable
  • Connection-oriented reliable

23
Internet Services
  • Connectionless
  • No connection set up, simply send
  • Faster, less overhead
  • No reliability, flow control, or congestion
    control
  • UDP User Datagram Protocol
  • Connection-oriented
  • Prepare for data transfer ahead of time
  • establish connection ? set up state in the two
    communicating hosts
  • Usually comes with reliability, flow and
    congestion control
  • TCP Transmission Control Protocol

How can we access these services?
24
Network (Socket) Programming
  • Process sends/receives messages to/from its
    socket
  • Socket analogous to door
  • sending process shoves message out door
  • sending process relies on transport
    infrastructure on other side of door which brings
    message to socket at receiving process

controlled by app developer
Internet
controlled by OS
  • Socket is the interface (API) between application
    and transport layer

25
Review of Basic Networking Concepts
  • Internet structure
  • Protocol layering and encapsulation
  • Internet services and socket programming
  • Network Layer
  • Network types Circuit switching, Packet
    switching
  • Addressing, Forwarding, Routing
  • Transport layer
  • Reliability and congestion control
  • TCP, UDP
  • Link Layer
  • Multiple Access Protocols
  • Ethernet

26
The Network Core
  • Mesh of interconnected routers
  • The fundamental question how is data transferred
    through net?
  • circuit switching dedicated circuit per call
    telephone net
  • packet-switching data sent thru net in discrete
    chunks

27
Network Core Circuit Switching
  • Network resources (e.g., bandwidth) divided into
    pieces using
  • Frequency division multiplexing (FDM)
  • Time division multiplexing (TDM)
  • Pieces allocated to calls (connections)
  • ? guaranteed performance
  • Resource piece idle if not used by owning call
  • no sharing
  • Connection setup is required
  • Examples
  • (Traditional) Telephone network

28
Circuit Switching Dedicated Circuits
29
Network Core Packet Switching
  • each end-end data stream divided into packets
  • packets from different users share network
    resources
  • each packet uses full link bandwidth
  • resources used as needed
  • store and forward packets move one hop at a time
  • Node receives complete packet before forwarding
  • resource contention
  • aggregate resource demand can exceed amount
    available
  • congestion packets queue, wait for link use

30
Packet Switching Statistical Multiplexing
10 Mb/s Ethernet
C
A
statistical multiplexing
1.5 Mb/s
B
queue of packets waiting for output link
  • Sequence of A B packets does not have fixed
    pattern, shared on demand ? statistical
    multiplexing
  • In contrast, in TDM each host gets same slot in
    revolving TDM frame

31
Packet Switching Efficiency
  • Packet switching allows more users to use network!
  • 1 Mb/s link
  • each user
  • 100 kb/s when active
  • active 10 of time
  • circuit-switching
  • 10 users
  • packet switching
  • with 35 users, probability gt 10 active less than
    0 .0004

Q how did we get value 0.0004?
32
Packet Switching
  • Advantages
  • no call setup ? simpler
  • resource sharing (statistical multiplexing) ?
  • better resource utilization
  • more users or faster transfer (a single user can
    use entire bw)
  • Well suited for bursty traffic (typical in data
    networks)
  • Disadvantages
  • Congestion may occur ?
  • packet delay and loss
  • need protocols to control congestion and ensure
    reliable data transfer

33
Packet Switching Two Classes
  • Datagram network
  • Example The Internet
  • Virtual-circuit network
  • Examples ATM (Asynchronous Transfer Mode), frame
    relay, X.25

34
Packet-switched Datagram Networks
  • no call setup at network layer
  • routers no state about end-to-end connections
  • no network-level concept of connection
  • packets forwarded using destination host address
  • packets between same source-dest pair may take
    different paths

35
Packet-switched VC Networks
  • Source-to-dest path behaves much like telephone
    circuit
  • ? performance-wise
  • connection setup, teardown for each call before
    data can flow
  • each packet carries VC identifier (not
    destination address)
  • every router on source-dest path maintains state
    for each passing connection
  • link, router resources (bandwidth, buffers) may
    be allocated to VC
  • Examples
  • ATM (Asynchronous Transfer Mode), frame relay,
    X.25

36
VC Networks Connection Setup
  • Signaling protocols are used to
  • setup, maintain, and teardown VCs
  • Note not widely used in the current Internet

6. Receive data
5. Data flow begins
4. Call connected
3. Accept call
1. Initiate call
2. incoming call
37
Network Taxonomy
38
Review of Basic Networking Concepts
  • Internet structure
  • Protocol layering and encapsulation
  • Internet services and socket programming
  • Network Layer
  • Network types Circuit switching, Packet
    switching
  • Addressing, Forwarding, Routing
  • Transport layer
  • Reliability and congestion control
  • TCP, UDP
  • Link Layer
  • Multiple Access Protocols
  • Ethernet

39
Network Layer
  • Network layer protocols in every host and router
  • Network layers goal
  • transport data from sending host to receiving
    host
  • We focus on datagram networks (Internet)

40
Network Layer in the Internet
  • Host, router network layer functions

Transport layer TCP, UDP
Network layer
Link layer
physical layer
41
Routing vs. Forwarding
  • Routing
  • determine route taken by packets from source to
    destination
  • Routing algorithms, e.g., RIP, OSPF, BGP
  • Forwarding
  • move packets from routers input to appropriate
    output
  • use forwarding table populated by routing
    algorithm
  • E.g., IP forwarding function

42
IP Datagram Format
IP protocol version number
32 bits
total datagram length (bytes)
header length (bytes)
head. len
type of service
ver
length
for fragmentation/ reassembly
fragment offset
Provides some QoS
flgs
16-bit identifier
max number remaining hops (decremented at each
router)
time to live
upper layer
Internet checksum
32 bit source IP address
32 bit destination IP address
upper layer protocol to deliver payload to
E.g. timestamp, record route taken, specify list
of routers to visit.
Options (if any)
data (variable length, typically a TCP or UDP
segment)
IP ver 4.0
43
IP Addressing Introduction
  • IP address
  • 32-bit identifier for each host, router network
    interface
  • Represented in Dotted-decimal notation

11011111 00000001 00000001 00000001
223.1.1.1
44
IP Addressing
  • Network interface
  • connection between host/router and physical link
  • routers typically have multiple interfaces
  • host typically has one interface
  • Unique IP addresses associated with each interface

223.1.1.1
How do we assign IPs?
223.1.1.4
223.1.2.9
223.1.1.3
Divide network into subnets, each has a common ID
45
Subnets
  • Subnet is
  • a group of devices that can reach each other
    without intervening router
  • identified by high order bits of IP addresses

11011111 00000001 00000001 00000001
Host ID
Subnet ID
223.1.1.0/24
/24 bits in subnet portion of address, subnet
mask
46
Subnets
  • How many subnets?
  • 6 subnets
  • Recipe
  • detach each interface from its host or router,
    creating isolated networks
  • Each isolated network is a subnet

47
IP Addressing CIDR
  • CIDR Classless InterDomain Routing
  • subnet portion of address of arbitrary length
  • address format a.b.c.d/x, where x is bits in
    subnet portion of address
  • Old Classful Addressing
  • Subnet length had to be /8 (class A), /16 (class
    B), /24 (class C)
  • Why CIDR?
  • Finer control over address allocation ? reduce
    waste of addresses
  • Ex company with 2000 machines would have to get
    class B, wasting 63,000 addresses

48
IP Addresses How to Get One?
  • Q How does host get IP address?
  • hard-coded by system admin in a file
  • WIN control-panel-gtnetwork-gtconfiguration-gttcp/ip
    -gtproperties
  • UNIX /etc/rc.config
  • DHCP Dynamic Host Configuration Protocol
    dynamically get address from as server
  • plug-and-play

49
IP Addresses How to Get One?
  • Q How does network get subnet part of IP addr?
  • A gets allocated portion of its provider ISPs
    address space

ISP's block 11001000 00010111 00010000
00000000 200.23.16.0/20 Organization 0
11001000 00010111 00010000 00000000
200.23.16.0/23 Organization 1 11001000
00010111 00010010 00000000 200.23.18.0/23
Organization 2 11001000 00010111 00010100
00000000 200.23.20.0/23 ...
..
. . Organization 7
11001000 00010111 00011110 00000000
200.23.30.0/23
ISPs get their address space from ICANN ICANN
Internet Corporation for Assigned Names and
Numbers allocates addresses,
manages DNS and assigns domain names
50
Hierarchical Addressing Route Aggregation
Hierarchical addressing allows efficient
advertisement of routing information
51
Review of Basic Networking Concepts
  • Internet structure
  • Protocol layering and encapsulation
  • Internet services and socket programming
  • Network Layer
  • Network types Circuit switching, Packet
    switching
  • Addressing, Forwarding, Routing
  • Transport layer
  • Reliability and congestion control
  • TCP, UDP
  • Link Layer
  • Multiple Access Protocols
  • Ethernet

52
Graph Abstraction
  • Graph G (N,E)
  • N set of routers u, v, w, x, y, z
  • E set of links (u,v), (u,x), (v,x), (v,w),
    (x,w), (x,y), (w,y), (w,z), (y,z)
  • cost of link (x1, x2)
  • Metric value, e.g., c(w,z) 5
  • could be
  • 1 (typical), or
  • inversely related to bandwidth, or
  • inversely related to congestion

Routing algorithm find the least-cost path
53
Classification of Routing Algorithms
  • Global or local information?
  • Global
  • all routers have complete topology, link cost
    info
  • link state algorithms
  • Local
  • each router knows physically-connected neighbors,
    link costs to neighbors
  • distance vector algorithms

54
A Link-State Routing Algorithm
  • Dijkstras algorithm
  • net topology, link costs known to all nodes
  • accomplished via link state broadcast
  • all nodes have same info
  • computes least cost paths from one node (source)
    to all other nodes
  • gives forwarding table for that node

55
A Link-State Routing Algorithm
  • Notation
  • c(x,y) link cost from node x to y
  • c(x,y) 8 if not direct neighbors
  • D(v) current value of cost of path from source
    to dest. v
  • p(v) predecessor node along path from source to
    v
  • N' set of nodes whose least cost path
    definitively known

56
Dijsktras Algorithm
1 Initialization 2 N' u 3 for all
nodes v 4 if v adjacent to u 5
then D(v) c(u,v) 6 else D(v) 8 7 8
Loop 9 find w not in N' such that D(w) is a
minimum 10 add w to N' 11 update D(v) for
all v adjacent to w and not in N' 12
D(v) min D(v), D(w) c(w,v) 13 / new
cost to v is either old cost to v or known 14
shortest path cost to w plus cost from w to v /
15 until all nodes in N'
57
Dijkstras algorithm example
D(v),p(v) 2,u 2,u 2,u
D(x),p(x) 1,u
Step 0 1 2 3 4 5
D(w),p(w) 5,u 4,x 3,y 3,y
D(y),p(y) 8 2,x
N' u ux uxy uxyv uxyvw uxyvwz
D(z),p(z) 8 8 4,y 4,y 4,y
58
Dijkstras algorithm example (2)
Resulting shortest-path tree from u
Resulting forwarding table in u
59
Distance Vector Algorithm
  • Bellman-Ford Equation (dynamic programming)
  • Define
  • dx(y) cost of least-cost path from x to y
  • Then
  • dx(y) min c(x,v) dv(y)
  • where min is taken over all neighbors v of x

v
60
Bellman-Ford example
Determine du(z)
u has 3 neighbors v, x, w and dv(z) 5, dx(z)
3, dw(z) 3
B-F equation says du(z) min c(u,v) dv(z),
c(u,x) dx(z),
c(u,w) dw(z) min 2 5,
1 3, 5 3
4
How would you use BF equation to construct
shortest paths?
61
Distance Vector Algorithm Idea
  • Basic idea
  • Each node periodically sends its own distance
    vector estimate to neighbors
  • When a node x receives new DV estimate from
    neighbor, it updates its own DV using B-F
    equation

Dx(y) ? minvc(x,v) Dv(y) for each node y ?
N
  • Under minor, natural conditions, the estimate
    Dx(y) converge to the actual least cost dx(y)

62
Distance Vector Algorithm Notes
  • Dx(y) estimate of least cost from x to y
  • Distance vector Dx Dx(y) y ? N
  • Node x knows cost to each neighbor v c(x,v)
  • Node x maintains Dx Dx(y) y ? N
  • Node x also maintains its neighbors distance
    vectors, that is
  • x maintains Dv Dv(y) y ? N for every
    neighbor v

63
Distance Vector Algorithm
Each node
  • Iterative
  • Continues until no more info is exchanged
  • Each iteration caused by
  • local link cost change
  • DV update message from neighbor
  • Asynchronous
  • Nodes do not operate in lockstep
  • Distributed
  • Each node receives info only from its directly
    attached neighbors
  • NO Global info

64
Dx(z) minc(x,y) Dy(z),
c(x,z) Dz(z) min21 , 70 3
Dx(y) minc(x,y) Dy(y), c(x,z) Dz(y)
min20 , 71 2
node x table
cost to
cost to
x y z
x y z
x
0 2 3
x
0 2 3
y
from
2 0 1
y
from
2 0 1
z
7 1 0
z
3 1 0
node y table
cost to
cost to
cost to
x y z
x y z
x y z
x
8
8
x
0 2 7
x
0 2 3
8 2 0 1
y
y
from
y
2 0 1
from
from
2 0 1
z
z
8
8
8
z
7 1 0
3 1 0
cost to
cost to
Example
node z table
cost to
x y z
x y z
x y z
x
0 2 3
x
0 2 7
x
8 8 8
y
y
2 0 1
from
from
y
2 0 1
from
8
8
8
z
z
z
3 1 0
3 1 0
7
1
0
time
65
Distance Vector link cost changes
  • Link cost decreased
  • node detects local link cost change
  • updates routing info, recalculates distance
    vector
  • if DV changes, notify neighbors

1
4
50
At time t0, y detects the link-cost change,
updates its DV, and informs its neighbors. At
time t1, z receives the update from y and updates
its table. It computes a new least cost to x
and sends its neighbors its DV. At time t2, y
receives zs update and updates its distance
table. ys least costs do not change and hence y
does not send any message to z.
good news travels fast
66
Distance Vector link cost changes
  • Link cost increased
  • t0 y detects change, updates its cost to x to
    be 6. Why?
  • Because z previously told y that I can reach x
    with cost of 5.
  • 6 min 600, 15
  • Now we have a routing loop!
  • Pkts destined to x from y go back and forth
    between y and z forever (or until loop is broken)
  • t1 z gets the update from y. z updates its cost
    to x to be??
  • 7 min 500, 16
  • Algorithm will take 44 iterations to stabilize
  • This is called count to infinity problem!
  • Solutions?

1
4
50
Bad news travels slow
67
Distance Vector link cost changes
  • Poisoned reverse
  • If z routes through y to get to x
  • Then z tells y that its (zs) distance to x is
    infinity (so y wont route to x via z)
  • Will this completely solve count to infinity
    problem?
  • No! Loops involving three or more nodes will not
    be detected

68
Comparison of LS and DV algorithms
  • Message complexity
  • LS with n nodes, E links, O(nE) msgs sent
  • DV exchange between neighbors only
  • But send entire table
  • Speed of Convergence
  • LS O(n2) algorithm requires O(nE) msgs
  • may have oscillations
  • DV convergence time varies
  • may be routing loops
  • count-to-infinity problem
  • Robustness what happens if router malfunctions?
  • LS node can advertise incorrect link cost
  • each node computes only its own table ? some
    degree of robustness
  • DV node can advertise incorrect path cost
  • each nodes table used by others ?error
    propagates thru network
  • In The Internet
  • LS OSPF (recent, more features)
  • DV RIP (old, small nets)

69
Hierarchical Routing
  • Our routing study thus far - idealization
  • all routers identical
  • network flat not true in practice
  • scale with 200 million destinations
  • cant store all dests in routing tables!
  • routing table exchange would swamp links!
  • administrative autonomy
  • internet network of networks
  • each network admin may want to control routing in
    its own network

70
Hierarchical Routing
  • aggregate routers into regions, autonomous
    systems (AS)
  • routers in same AS run same routing protocol
  • intra-AS routing protocol
  • routers in different AS can run different
    intra-AS routing protocol
  • Gateway router
  • Direct link to router in another AS

71
Interconnected ASes
  • Forwarding table is configured by both intra- and
    inter-AS routing algorithm
  • Intra-AS sets entries for internal dests
  • Inter-AS Intra-As sets entries for external
    dests

72
Inter-AS tasks
  • AS1 needs
  • to learn which dests are reachable through AS2
    and which through AS3
  • to propagate this reachability info to all
    routers in AS1
  • Job of inter-AS routing!
  • Suppose router in AS1 receives datagram for which
    dest is outside of AS1
  • Router should forward packet towards one of the
    gateway routers, but which one?

73
Example Choosing among multiple ASes
  • Now suppose AS1 learns from the inter-AS protocol
    that subnet x is reachable from AS3 and from AS2
  • To configure forwarding table, router 1d must
    determine towards which gateway it should forward
    packets for dest x
  • Hot potato routing send packet towards closest
    of two routers

74
Internet inter-AS routing BGP
  • BGP (Border Gateway Protocol) the de facto
    standard
  • BGP provides each AS a means to
  • Obtain subnet reachability information from
    neighboring ASes
  • Propagate the reachability information to all
    routers internal to the AS
  • Determine good routes to subnets based on
    reachability information and policy
  • BGP allows a subnet to advertise its existence
    to rest of the Internet I am here

75
BGP basics
  • Pairs of routers (BGP peers) exchange routing
    info over semi-permanent TCP connections BGP
    sessions
  • Note BGP sessions do not correspond to physical
    links
  • When AS2 advertises a prefix to AS1, AS2 is
    promising it will forward any datagrams destined
    to that prefix towards the prefix
  • AS2 can aggregate prefixes in its advertisement

76
Distributing reachability info
  • With eBGP session between 3a and 1c, AS3 sends
    prefix reachability info to AS1
  • 1c can then use iBGP to distribute this new
    prefix reach info to all routers in AS1
  • 1b can then re-advertise the new reachability
    info to AS2 over the 1b-to-2a eBGP session
  • When router learns about a new prefix, it creates
    an entry for the prefix in its forwarding table.

77
Path attributes BGP routes
  • When advertising a prefix, advert. includes BGP
    attributes
  • prefix attributes route
  • Two important attributes
  • AS-PATH contains ASes on the path to the prefix
  • NEXT-HOP Indicates the specific internal-AS
    router to next-hop AS. (There may be multiple
    links from current AS to next-hop-AS.)
  • When gateway router receives route advert., uses
    import policy to accept/decline

78
BGP messages
  • BGP messages exchanged using TCP
  • BGP messages
  • OPEN opens TCP connection to peer and
    authenticates sender
  • UPDATE advertises new path (or withdraws old)
  • KEEPALIVE keeps connection alive in absence of
    UPDATES also ACKs OPEN request
  • NOTIFICATION reports errors in previous msg
    also used to close connection

79
BGP Route Selection
  • Router may learn about more than 1 route to some
    prefix. Router must select a route
  • Elimination rules
  • Local preference value policy decision
  • (Routes are assigned values by AS administrator
    based on import policy)
  • Shortest AS-PATH
  • Closest NEXT-HOP router hot potato routing
  • Additional criteria

80
BGP Routing Route Advertising
  • A,B,C are provider networks
  • X,W,Y are customer (of provider networks)
  • X is dual-homed attached to two provider
    networks
  • X does not want to route traffic from B to C
  • so X will not advertise to B its route to C
  • BGP export policy

81
BGP Routing Route Advertising (contd)
  • A advertises to B the path AW
  • B advertises to X (its client) the path BAW
  • Should B advertise to C the path BAW?
  • No way! B gets no revenue for routing CBAW
    since neither W nor C are Bs customers
  • Rule of thumb a provider wants to route only
    to/from its customers! (unless there is a mutual
    peering deal)

82
Why different Intra- and Inter-AS routing ?
  • Policy
  • Inter-AS admin wants control over how its
    traffic routed, who routes through its net.
  • Intra-AS single admin, so no policy decisions
    needed
  • Scale
  • hierarchical routing saves table size, reduced
    update traffic
  • Performance
  • Intra-AS can focus on performance
  • Inter-AS policy may dominate over performance

83
Unicast, multicast, broadcast
  • Unicast one source, one destination
  • E.g., web session
  • Multicast one source, multiple destinations
  • Subset of all possible destinations
  • E.g., streaming a hockey game to interested fans
  • Broadcast one source, all destinations
  • E.g., broadcasting link state info to ALL routers
    in a domain in OSPF protocol
  • Anycast multiple possible sources, one
    destination
  • Sources have same (anycast) address
  • Request is forwarded to appropriate source
  • (Still in research phases)
About PowerShow.com