Title: CH 9: Internetworking
1- CH 9 Internetworking
- Previously assumed that all hosts were attached
to single LAN or WAN - Internetworking environments comprise sets of
networks - ie university LANs interconnected w/ single WAN
- Intermediate System (IS) Device used to
interconnect networks - Router / Gateway IS that performs routing in an
open systems network - operates at network layer - transparent to
transport layer - Protocol Converter IS that converts between
protocols over entire stack
29.1 Internetwork Architectures
39.1 Internetwork Architectures
4- 9.2 Internetwork Issues
- transport protocol entity is the internet user
- internet provides services
- - enable communication w/ similar entities
- - NSAP (network service access points) interface
to services
- network issues should be transparent to transport
protocol - Network Services
- Addressing
- Routing
- QoS
- Maximum Packet Size
- Flow Congestion Control
- Error Reporting
5Network Services LANs MAC addresses used to
identify hosts - short transmit delay low BER ?
connectionless protocols often used WANs
network layer address used to identify host
route packets - MAC addresses have only local
significance (local PSE) - longer transmit delays
higher BER ? connection oriented protocols
often used Internet integration of selected
services with various services of constituent
subnets (LANs WANs )
6Addressing NSAP address is unique network wide
address used to identify host (i) isolated
LAN/WAN NSAP must only be unique to single
network address domain NSAP address of a
host consists of - NPA (network point of
attachment) - unique within a single network -
LSAP (link SAP) and NSAP interlayer address
selectors within the system
- (ii) Open System Inter-network Environment (OSIE)
- with heterogeneous networks (FDDI, X.25)
- NPA format syntax differ ?cant be used as
basis for NSAP - different NSAP must be used identify network
service users - (NS_user) uniquely
7- 2 different addresses associated with each host
- NPA send/receive over local network (LAN/WAN)
- NSAP unique internet wide identifier
- IS has the NPA to each network that it
interconnects
8- Routing locating nodes in an internetwork
- service request primitive arrives at a source
hosts NSAP - only has specification of required destination
host NSAP - (1) single network NPA subaddress is sufficient
to route - (i) LAN NPDU encapsulated in a frame MAC
address used - for routing
- (ii) X.25 WAN
- NPDU transferred to packet layer protocol (PLP)
in local - DCE/PSE
- destination NSAP used to route NPDU directly to
destination - DCE/PSE
- destination DCE/PSE forwards to DTE
9- internetwork routing
- basic capabilities/limitations
- destination NSAP refers to host located in one
of several networks - destination NSAP cant be used to directly route
NPDU - Router NPAs have similar format to host NPAs
- host can send NPDU directly to local Router if
it knows its NPA - Router can send NPDU to each network it
interconnects
- several paths may be possible raises practical
issues - All hosts must determine NPA addresses of
Router(s) attached to - its network
- Source host must select a Router and forward
NPDU - Routers must
- - determine NPA addresses of hosts attached to
its networks - - determine NPA addresses of other attached ISs
- - select next hop a specific Router to route
NPDU
10- QoS set of parameters associated with each
service request primitive - specify network service user expects from
provider - used to specify optional services to be used in
each request - hosts network layer must build knowledge of
expected internet QoS - - expected transit delay
- - security level (monitoring/changing)
- - cost limits
- - residual error probability
- - relative priority
- Connection Oriented Network peer-peer
negotiation during set-up - source specifies parameters expected
- destination modifies parameters if necessary
- Connectionless Network requesting user must know
expected QoS - QoS can vary between individual networks
11- Maximum Packet Size typically range from
128..8000 Bytes - higher BER ? smaller packets, more packets
arrive uncorrupted - longer maximum packet lengths increases delay of
other packets - longer packets require more buffer space
- Processing Overheads are fixed per packet,
regardless of length
- single network maximum packet size typically
known - - transport protocol can segment messages into
packets/frames - internets varying maximum packet sizes
- i. if known minimum packet size used
- simple and fast
- inefficient use of BW
- ii. network layer in host or IS perform
segmentation reassembly - increases network layer complexity
- more efficient BW use
12- Flow Congestion Control manage rate
differences buffer space - flow control source - to- destination
- congestion control internetwork segments
- (i) connection oriented network (X.25)
- flow control performed on a virtual circuit
across local DCE-DTE - interfaces
- send window is defined to control packet flow
- helps to control congestion
- (ii) connectionless network (IP)
- no flow control applied to packets at network
layer - transport layer entities perform end-end flow
control - data is delayed with network congestion
- source transport layer entities stop sending new
data ? - relieves congestion
- Congestion control still required in both cases
- Error Reporting must be provided over entire
internet
13- 9.3 Network Layer (NL) Structure
- NL located in each host
- provides end-to-end internet-wide network
service to local users - connection or connectionless
- transparent to
- - type/number of individual networks
- - routing of network service data unit (NSDU)
- - to end systems intermediate systems
14- ISO reference model for NL
- sub-network individual network in internet
- NL in each host IS consists of 3 sub-layer
protocols - TPDU transport protocol data unit
- (i) SNICP sub-network independent convergence
protocol - supports services provided at user interface
(transport layer) - convergence functions route relay TPDUs over
internet - independent of sub-network characteristics
- assume standard network services from subnetworks
- (ii) SNDAP sub-network dependent convergence
protocol - access protocol associated with specific subnet
(X.25, LANs,) - services operational characteristics differ
for each sub-net
15- (iii) SNDCP subnetwork dependent access protocol
- intermediate sub-layer between SNDAP SNICP
- performs mapping operation that depends on
subnetwork - network characteristics
16- 9.4 Internet Protocol Stds
- X.25 Internet Protocol widely used packet
switching protocol - X.75 Gateways are used to interconnect X.25 WANs
- specificies X.25 packet layer protocol for use
with LANs - - reduce number of internetworking tasks
- - high switching overhead ? reduced packet
throughput - - connection oriented or pseudo connectionless
with fast select
- fast select reduces call setup overhead still
suffers from switching - overhead
- network connect request mapped directly to X.25
call request - packet
- reset disconnect service mapped similarly
- as advances reduce the BER ?
- frame relay cell (fast packet )switching
preferred over - packet switching
- ISO solution ISOIP, connectionless SNICP ( ISO
8475)
17- 9.5 Internet IP
- open systems connectionless internet protocol
- operates over multiple, different sub-networks
routers - enables 2 remote transport protocol entities to
transparently - exchange NSDUs
189.5.1 Address Structure - each host associated
with 2 network addresses 1. NPA address
specific for each network/sub-network (MAC
address) 2. IP address unique 32 bit
internet-wide address - assigned by central
authority Network Information Center for
Internet - divided into classes to provide
flexibility, determined by position of 1st 0
bit - single internet may use addresses from all
classes
19network class address range
A 1-127.x.x.x
B 128.x.x.x
C 192.x.x.x
D LAN multicasts over internetwork
20(No Transcript)
21- Subnets Interconnecting Multiple LANs
- if MAC bridges are used to interconnect LANs ?
treat combined - LANs as single network
- if LANs are dissimilar ?normally interconnected
using Routers - Different LANs have differences in frame length
format - fragmentation reassembly of packet / frames is
a network layer - function
- Routing Efficiency
- 1. if basic addressing scheme is used ?
inefficient routing - each LAN must have its own network identifier
- all routers related to a site participate in
internet routing function - efficiency of routing depends on number of
routing nodes that - comprise internet
22- 2. subnets used to decouple local routers from
inter-network routing - more efficient routing
- a site is allocated network_id - not individual
LANs - one router attached to local site network
performs internet routing - individual LAN ID forms part of host_id field
23(No Transcript)
24- address masks
- sub-address boundaries are defined for each
particular network - net_id
- can be a many subents within a single site
network? explicit sub- - address boundaries not used
- for routing purposes - presence of subnets
sub-net routers is - transparent to internet routers
- subnets addresses are maintained by internet
routers at a given site - sub nets masks used to mask part of address
not of interest
25- e.g. class B address mask 255.255.255.0
(FF.FF.FF.00) - if net_id 128.0 (1000 0000 0000 0000) ? all
hosts would have - same internet routing part
1 in network address bit positions (net_id
subnet_id) 0 in host address bit positions
26IP protocol data unit
27IP protocol data unit
version IPv4 or IPv6 header length specified in
32 bit words - minimum5 words (20 bytes) with no
options - options add extra words, unused bytes
padded type of service requested - specify route
attributes ? QoS - connection, connectionless,
priority ranges from 0..7 D low delay T high
throughput R high reliability
total length header payload, max
65536 identification identifies message
fragments at destination
28flag bits D informs routers not to fragment IP
Packet - all data received at once or not at
all - more accurately predict transit delay M
(more fragments follow) used during
reassembly fragment offset indicate relative
position of payload segment time to live max
seconds a datagram can be in transit - set by
source IP, decremented at each hop by ?? - at 0 ?
discard datagram protocol field identifies
transport protocol UDP,TCP, etc - used by
destination IP header checksum 16 bit 1s
compliment of header source/destination address
global IP address
29- optional field
- security encryption
- source routing pre-defined route routers
- route recording record route traversed used for
source routing - stream ID type of data (speech, binary,)
- Timestamp used by routers to record processed
time
30- 9.5.3 Protocol Functions core internetworking
functions - Fragmentation Reassembly packets have varying
sizes - - packets can be fragmented must be reassembled
- Routing
- - source host must know local internet routers
address - - local internet router must know routes to
other subnets - Error Reporting report discarded packets to
source host
- 9.5.4 IP Fragmentation Reassembly
- NSDU user data can be up to 64k bytes
- LAN frame sizes WAN packet size range from 128
- 8000bytes - host IP only knows max packet size of local
network - router IP only knows max packet size of
networks it interconnects - ? requires service to fragment reassemble NSDU
for transfer over - specific networks
31- 2 Approaches Intranet Fragmentation Internet
Fragmentation (IP) - (1) intranet (per network) fragmentation
- i. source host IP
- fragments NSDU into frames for local network
- each fragment has IP address
- initiates transmission of frames to 1st IP
router using SNDCP - obtains routers NPA (discussed in 9.5.5)
- ii. router IP
- on receipt reassembles NSDU refragments into
new frame - assembled NSDU for next hop according to next
max_frame_size - iii. destination host IP NSDU reassembled
passed to transport - protocol entity
32 intranet fragmentation
33- (2) internet (end-end internet) Fragmentation
- i. source host IP
- fragments NSDU into frames for local network
- each fragment has IP address
- initiates transmission of frames to 1st IP
router using SNDCP - obtains routers NPA
- ii. router IP
- doesnt reassemble NSDU - modifies appropriate
control fields - of frame for new network
- if possible, transmits received frames directly
onto new network - if new max_frame_size is smaller ? refragment
frames into - smaller frames
- if new max_frame_size is larger ? modify
overhead, directly - retransmit frame
- iii. destination host IP NSDU reassembled
passed to transport - protocol entity
34 internet fragmentation
35- source IP defines time to live in IP header (in
seconds) - time to live decremented at each hop
- current value copied into all fragments
- amount decremented depends on mean transit delay
of associated - network
- intranet fragmentation- each fragment reassembled
by router IP before forwarding - if fragments are missing ?router IP decides
forward or abort - reassembly
- if time to live 0 ? router IP aborts
reassembly discards - NSDU
- internet fragmentation - time to live still
decremented by each router IP - fragment still discarded if time to live 0
- destination IP aborts reassembly if time to
live 0
36- Intranet Internet Fragmentation Trade-off
- Intranet fragmentation (per network)
- - allows max packet size of each network to be
used - - increases BW efficiency
- Internet fragmentation (end-end)
- - doesnt perform reassembly processing at each
gateway - - reduces transit delay
- if missing fragments abort reassembly occur ?
time exceeded - notification message to source host IP
- for both internet and intranet fragmentation
37- IP uses internet fragmentation reassembly
because of lost packets - many networks operate with connectionless
network protocol - fragments (packets/frames) may be lost/corrupt
- let destination host IP decides when to abort
38- ie
- NSDU 1000 bytes
- IP header 20 bytes
- LANs max frame size 256 bytes
- max payload per packet 236 bytes
- ?236/8? 29 8-byte fragments per packet ?
- 29 ? 8 232 bytes of data per packet
- packets size
- 4 packets with 232 bytes
- 1 packet with 72 bytes
39parameter packet 1 packet 2 packet 3 packet 4 packet 5
ID FF FF FF FF FF
Total Length 252 252 252 252 92
Fragment Offset 0 29 58 87 116
More Fragments 1 1 1 1 0
40- 9.5.5 Routing
- networks/subnets use different formats for point
of attachment - address
- host/router can send packets directly to another
host/router only on - same network/subnet
- to route data grams across multiple networks IP
in each router must - know either
- - point of attachment address of destination host
- - point of attachment address of next router
along route to - destination host
- major obstacle discover maintain route from
source IP to - destination IP
41- 2 basic approaches
- 1. centralized central site maintains current
information regarding - hosts routers
- network management messages used to obtain route
information - site must be updated to reflect current
host/link/router status - viable only if individual networks provide their
own network - management system
- each network must provide configuration
management fault - management
- 2. distributed hosts routers collaborate on
routing operation - ensure routing information is current
consistent - routing tables are used to hold routing
information - tables contain NPA address NSAP address used
to forward - message
42- IP routing distributed routing protocols used to
discover maintain - routes
- router reads destination IP (NSAP) in packet
- find corresponding point of attachment address
(NPA)
- Autonomous Systems (AS)
- core backbone network combined Internet
- each inter-network treated as autonomous system
- - each has its own internal routing algorithms
- - separately managed operated
- - attached to core backbone network
- each AS is comprised of
- - subnetworks connected to AS backbone with
subnet routers (e.g. - ethernet LANs)
- - individual networks interconnected with
interior routers
43Routing Heirarchy between and within ASs
- Types of Routers
- interior router (IR) routing within an
autonomous system - exterior router (ER) connect autonomous system
to core network
- Routing Protocols
- exterior routing protocol (ERP) internet wide
standard - interior routing protocol (IRP) specific to
autonomous systems - networks and subnets
- address resolution protocol (ARP) peer-peer
protocol between - host IPs local IR in a subnet
- Routing Tables (RT) contain Routing Information
- NPA network (MAC) address
- host_id host_IP address w.x.y.z
- sub_net_id sub-network IP address w.x.y.0
- net_id network IP address w.x.0.0
44core network
autonomous system
45- total IP routing is organized hierarchically
- hosts Subnet Router use ARP to maintain routing
information for - other local hosts
- local IRs
- IRs use IRP and maintain routing information for
- local hosts
- other IRs in same AS
- ER
- ER maintains routing information for
- IRs in same AS
- other ERs
- not practical to maintain entire routing table in
each host router
46host
47Address Resolution Protocol (ARP) resolves subnet
IP address and MAC addresses
- local IR
- each host sends IP/NPA address pair to local IR
- IR builds local RT of (IP, NPA) address pairs of
all local hosts - stores broadcasts host_IP/ NPAs pairs to all
attached hosts - forwards packets for local hosts to and from
remote destinations
- each host_IP maintains similar RT of local (IP,
NPA) pairs - host can send local packets directly without IR
- host sends remote packet transmissions to local
IR for forwarding
48- Each host and ARP router maintains local RT
- Local RT contains (IP, NPA) pair of each host
router in subnet
49- ARP operation
- source_ARP maintains RT with (IP, NPA) pairs for
local network - source_IP fragments data and creates datagram for
forwarding - passes pointer to datagram buffer to source_ARP
- if dest_IP is located in local RT ? datagram with
(dest_IP, NPA) - address passed to SNDAP protocol
- - net_id field of IP addr 0 (indicates local
network) - - SNDAP initiates transmission
- if dest_IP is not in local RT ? source_ARP
transmits ARP request - message and awaits reply
- - ARP request contains (source IP, NPA) dest IP
- - message is broadcast either to local hosts or
sent direct to known - gateway NPA address
50- ARP Router uses local RT to relay ARP request
message to dest_IP - destination host recovers frame based on its NPA
- frame processed and header/trailer stripped IP
Packet passed to - dest ARP
- dest_ARP recognizes dest_IP and processes message
- if (source IP, NPA) is not in local RT ? local
RT updated (able - to ACK, etc)
- transmits ARP reply message with (dest_IP, NPA)
to source_ARP
51- host normally holds (IP, NPA) pairs in permanent
storage - RARP reverse ARP
- used for diskless host, permanent storage is not
possible - server maintains (IP, NPA) pairs
- diskless host broadcasts RARP request message
with its NPA - server RARP transmits RARP reply message with
hostIP, server - IP, NPA
52- source ARP/ RARP message formats
- updates local RT
- passes datagram pointer destIP/NPA to SNDAP
protocol
53- Interior Router Protocol (IRP)
- IRPs vary between different autonomous systems
- (i) link state open shortest path first (LS-
OSPF) - adopted by ISO CLNP
- based on link state shortest path first
algorithms - (ii) routing information protocol (RIP)
- widely used in IP
- distributed routing protocol based on distance
vector algorithm - (DVA)
- distance routing metric between 2 router
measured as - - hops ? number of intermediate networks
- - delay ? mean transit delay
54DVA Each IR in an AS builds RT with distances
between itself other local networks within the
AS IR tables initialized by network management at
power up (1) remote RT net_id of each network
it is attached to and distance from that
network (2) adjacency table (IP, NPA) pair of
each router attached to the network
55host n, (Net_ID x.x.y1.z1)
56- Remote RT contains Metrics regarding other
routers that are - initialized at start up
- hop metric
- - net_id of each adjacent network with distance
1 - - Routers own IP address with distance 0
- - hops can have variable delays ? can lead to
variable routes
- delay metric
- - IR sends datagram to each adjacent IR
measures response - delay
- - distance ½ delay
- - delay metric often performs better
- - HELLO delay protocol that periodically send
hello messages
57- each IR periodically updates RT (typically 30
seconds) - transmits contents of remote RT to neighbors
- updates its remote RT based on RTs received
from neighbors - - distance computed by adding known distance to
neighbor - - if new distance lt old distance ? update entry
- - RT builds up after each iteration as new
distances are reported - - each IR will have an entry for each network in
the autonomous - system (AS)
58- route propagation delay time for routing
information to propagate over entire AS - elasped time is function of network size
update period - for large networks DVA overhead is costly
- IRs may have dissimilar routes to same
destination - - table entries are made in the order in which
they are received - - equal distance routes are discarded
- - datagrams between certain routes may loop
- - single route is held in RT, alternate routes
arent used - fault management each entry has a timer, must be
confirmed before - it is timed-out
59Exterior Routing Protocol (ERP) AS management
designates which router(s) will function as
ER(s) internal to AS - ER communicates with IRs
using ASs IRP ERs local RT contains -
net_ids for each network/subnetwork - distances
for each IR - built with periodic broadcasts of
local RTs ( IRs RT)
60- external to AS - ER data is initialized at
start-up, - unique identifier for its AS
- reachability table remote RT to communicate
with all other - ERs via core network
- ER contacts other selected ERs to exchange
routing information - net_ids within seperate ASs
- distances routes from each ER
- used by source gateway to select best ER for
routing to a - particular AS
61(No Transcript)
623 main functions of ERP
Function ERP message Meaning
Neighbor Acquisition Acquisition Request Request EG to become neighbor
Acquisition Confirm EG agrees to be neighbor
Acqiusition Refuse EG refuses
Cease Request request termniation of neighbor
Cease Confrim confirm end
Neighbor Reachability Hello request neighbor confirmation
I heard you neighbor confirms
Route Updates Poll Request request network reachability update
Route Update provided network reachability information
Error Response Error Response to incorrect request
63- (1) neighbor acquisition termination procedures
- each AS manager must agree to exchange RTs
between ERs - beforehand
- neighbor ERs are those that have agreed to
exchange RTs - neighbors are requested, confirmed, or refused
(w/ reason code) - ERs can request confirm termination of
neighbor relationship
- (2) neighbor reachability
- periodically confirm relationship
- hello/I heard you exchange
- embedded in header of normal routing information
messages - (3) route updates actual exchange of RTs with
net_ids and distances - of networks reachable from that ER
64- EGP PDU format for IP protocol
- all EGP PDUs are carried in user data field of
IP packet - version defines EGP version
- all EGP PDUs with same fixed header
65- version defines EGP version
- type code define message type
- status message status information
- AS number AS number of source EG
- sequence number synchronize responses to
request messages
- source network IP addr use in poll request
routing update - - used to indicates network linking 2 EGs
- - allows core network to consits of multiple
networks
66(No Transcript)
67neighbor reachability message - type 5
contains only a header code 0 ? hello
code 1 ? I heard you
68poll request message type 2 code piggybacks
reachability information code 0 ? hello
code 1 ?I heard you
69- neighbor acquisition messsage - type 3
- code 0 ? Acquisition request
- code 1 ?Acquisition confirm
- code 2 ? Acquisition refuse
- code 3 ?cease request
- code 4 ?cease confirm
- hello interval frequncy of rechability
messages - poll interval frequency of RT updates
70(No Transcript)
71- routing update message
- contains list of net_ids reachable from each
router within its AS - arranged by distance from responding ER
- enables requesting ER to select best ER for
routing within AS - net_id 24 bits to save space
- most significant 8 bits host_id field
missing - host_id redundant for all class types
72(No Transcript)
73(No Transcript)
74(No Transcript)
759.5.6 Internet Control Message Protocol (ICMP)
used by hosts gateways for network management
function ICMP msg description
Error Reporting Dest Unreachable datagram discarded, reason specified
Time Exceeded datagram discarded, time to live expired
Parameter Error unrecognized parameter in header
Reachability Testing Echo Request /Reply check reachability of specified host/gateway
Congestion Control Source Quench request source reduce transmission rate
Route Exchange Redirect gateway informs host to attach to network as alternative route
Performance Measure Time Stamp Request/ Reply find transit delay between 2 hosts
Submit Addresssing Address Mask Request Reply host uses to determine address mask of subnet
76- IP is best effort datagrams are discarded with
errors corruption, congestion -
- error reporting describes reason why datagrams
discarded - destination unreachable
- - destination network unreachable
- - destination host unreachable
- - specified protocol not present at destination
- - fragmentation required, DF (dont fragment) set
in IP header - - communication with destination network not
allowed - (administrative)
- - communication with destination host not allowed
- (administrative)
- time exceeded
- parameter error
77- reachability testing
- network manager uses to determine why
destination host/gateway - doesnt respond
- if destination not responding report from host
- - initiate echo request to suspect host
- - destination issues echo reply on receipt
- source quench returned to source host if datagram
discarded because buffers full - generated by host/gateway
- on receipt, host reduces sending rate
- new source quench sent w/ each datagram discarded
for full buffers
78- redirect informs source of better route
- with multiple gateways attached to a network,
gateways receive msg from host - gateway may determine better route from routing
table
- time stamp request/reply determine mean transit
time from source host -- dest host - contains
- time PDU was sent by source host
- time PDU was received by destination host,
- time PDU was returned by destination host
- ? on receipt, source host quantifies roundtrip
time
- subnet address mask request used to receive
subnet mask - with subnet addressing, used by host to
determine if specified - destination is on same subnet
79- 9.6 IPv6
- successor to IPv4
- increase IP address to 128 bit
- reduce size of EG routing tables
- improved security
- better multicast support
- fixed header length
80- 2 part header for faster header processing
- i. basic header fewer fields than IPv4
- version allow protocol to coexist with IPv4
- flow label allow source to indicate payload
type - - used to prioritize data (voice, image, )
- payload length up to 64k bytes of payload
- next header identify extension headers
- hop limit prevent packet from looping
- IP addresses 128 bit heirarchical addresses
- - cluster address identify topological region of
network/host - - reduce routing table size
- - net_id, host_id, subnet_id ? IPv4
81- ii. extension headers
- hop-by-hop header carry data that must be
examined by each - gateway on route
- end-end-header carry data that is only examined
by destination - routing header used for source routing
- - contains list of gateway addresses on intended
route - - used to modify packets destination address at
enroute gateways - fragment header used to fragment data at source
- - eliminate intermediate fragmentation
- - used by destination for reassembly
- authentication header authenticate source
- privacy header used for secure transmission
82- 9.6.2 Multicast Support
- multicast generates a copy of all packets by
multicast member to all - others in group
- currently causes network flooding
- multicast backbone (m-bone) experimental overlay
backbone - network
- 1 multicast router (m-router) in each m-bone
interface - interconected by high BW links to form m-bone
network - routing tree established to minimize BW per
multicast session - copies only generated at branch node of tree
- - reduce loading ? 1copy of multicast packet sent
to m-router - - efficiently support multicast of IP packets