ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs....
Transcript of ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs....
![Page 1: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/1.jpg)
© James P.G. SterbenzITTCCommunication Networks
University of Kansas – EECS 663Lecture N: Network Layer
James P.G. Sterbenz
Department of Electrical Engineering & Computer ScienceInformation Technology & Telecommunications Research Center
The University of Kansas
http://www.ittc.ku.edu/~jpgs/courses/nets
© 2004–2006 James P.G. Sterbenz20 April 2006
![Page 2: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/2.jpg)
20 April 2006 KU EECS 663 – Network Layer N-2
© James P.G. SterbenzITTC
Network LayerN.1 Functions and Services
N.1 Network layer functions and servicesN.2 Network service models and signallingN.3 Switches and packet structureN.4 Examples
N.4.1 PSTN and X.21N.4.2 X.25 CONSN.4.3 ISDN and Frame RelayN.4.4 B-ISDN and ATMN.4.5 MPLSN.4.6 Internet: DNS, IP, ICMP, and IPv6
N.5 Fast datagram routers
![Page 3: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/3.jpg)
20 April 2006 KU EECS 663 – Network Layer N-3
© James P.G. SterbenzITTC
Network LayerLayer/Plane Cube Model
physical
MAC
link
network
transport
session
application
data planecontrol plane
management
network layerin control anddata plane
managementplaneinteractionimportant
L7
L5
L4
L3
L2
L2–
L1
![Page 4: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/4.jpg)
20 April 2006 KU EECS 663 – Network Layer N-4
© James P.G. SterbenzITTC
Network LayerDefinitions
networkCPU
M app
end system
CPU
M app
end systemD = 0
R = ∞
• Forwards packets along a route (or path ) through the network to a destination address : either as individual datagrams, as a flow of datagrams, or on a connection across a circuit or virtual circuit
![Page 5: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/5.jpg)
20 April 2006 KU EECS 663 – Network Layer N-5
© James P.G. SterbenzITTC
Network LayerNetwork Protocols and Devices
• Network protocol– responsible for determining on which link frame transmitted– moves packets on path through the network
network
application
session
transport
network
link
end system
network
link
node
network
link
nodenetwork
link
node
application
session
transport
network
link
end system
![Page 6: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/6.jpg)
20 April 2006 KU EECS 663 – Network Layer N-6
© James P.G. SterbenzITTC
Network LayerService and Interfaces
• Network layer 3 is above link layer 2– addressing : network layer identifier for end systems (hosts)– forwarding : transfers packets hop-by-hop
• using link layer services• network layer responsible for determining which next hop
– routing : determination of path to forward packetsLecture R
– signalling : messages to control network layer behaviour– traffic management : management of traffic and congestion
Lecture Q
![Page 7: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/7.jpg)
20 April 2006 KU EECS 663 – Network Layer N-7
© James P.G. SterbenzITTC
Network LayerService and Interfaces
• Network layer 3 is above link layer 2– addressing : network layer identifier for end systems (hosts)– forwarding : transfers packets hop-by-hop
• using link layer services• network layer responsible for determining which next hop
– routing : determination of path to forward packets– signalling : messages to control network layer behaviour– traffic management : management of traffic and congestion
• Network layer service to transport layer (L4)– deliver TPDUs to destination transport entity
![Page 8: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/8.jpg)
20 April 2006 KU EECS 663 – Network Layer N-8
© James P.G. SterbenzITTC
Network LayerForwarding vs. Routing
• Forwarding transfers packets at each hop– each switch (router) makes decision on which link to send– forwarding table (generally) used to make decision– forwarding is per packet decision
[analogy: determining which exits to take on a drive ]
• Routing determines the path to take– routing algorithm independent of forwarding– forwarding table entries populated by routing– routing is (generally) not done per packet
[analogy: planning trip from source to destination ]
Forwarding and routing are very different
![Page 9: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/9.jpg)
20 April 2006 KU EECS 663 – Network Layer N-9
© James P.G. SterbenzITTC
Network LayerService and Interfaces
• Network layer packet may encapsulates link layer frame
transport layer transport layer
link layer
network layer
link layer
TPDU TPDU
network layer
TPDUH TPDUH
![Page 10: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/10.jpg)
20 April 2006 KU EECS 663 – Network Layer N-10
© James P.G. SterbenzITTC
Network Layer ServiceService Models: Best Effort
• Best effort– network attempts to deliver most packets most of the time– network may attempt to be fair among users– this is the Internet service model– contrast with best-effort applications
• Differentiated service• Guaranteed service
![Page 11: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/11.jpg)
20 April 2006 KU EECS 663 – Network Layer N-11
© James P.G. SterbenzITTC
Network Layer ServiceService Models: Differentiated Service
• Best effort• Differentiated service Lecture Q
– some users or traffic types receive preferential treatment– may provide statistical targets for service performance– this model has been proposed as DiffServ for the Internet
• Guaranteed service
![Page 12: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/12.jpg)
20 April 2006 KU EECS 663 – Network Layer N-12
© James P.G. SterbenzITTC
Network Layer ServiceService Models: Guaranteed Service
• Best effort• Differentiated Service• Guaranteed service Lecture Q
– some (perhaps statistical) guarantees on service• delivery (reliability)• performance (delay, bandwidth, jitter, etc)
– this model is provided by the PSTN and ATM networks– this model has been proposed by IntServ for the Internet
![Page 13: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/13.jpg)
20 April 2006 KU EECS 663 – Network Layer N-13
© James P.G. SterbenzITTC
Network Layer ServiceGranularity
• Granularity of service parameters– per packet: applies to individual packets– per flow: applies to sequence of packets between hosts
![Page 14: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/14.jpg)
20 April 2006 KU EECS 663 – Network Layer N-14
© James P.G. SterbenzITTC
Network Layer ServiceService Models: Reliable Delivery
• Reliable delivery– all packets eventually reach destination
• with high probability
– recall E2E arguments• link vs. network vs. transport vs. app
– recall sources of errors Lecture T
![Page 15: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/15.jpg)
20 April 2006 KU EECS 663 – Network Layer N-15
© James P.G. SterbenzITTC
Network Layer ServiceService Models: Statistical Reliability
• Reliable delivery• Statistical reliability
– packets delivered with probability p
![Page 16: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/16.jpg)
20 April 2006 KU EECS 663 – Network Layer N-16
© James P.G. SterbenzITTC
Network Layer ServiceService Models: Unreliable
• Reliable delivery• Statistical reliability• Unreliable: packet may or may not reach destination
– if necessary, reliability provided by higher layer• end-to-end transport• application-to-application
![Page 17: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/17.jpg)
20 April 2006 KU EECS 663 – Network Layer N-17
© James P.G. SterbenzITTC
Network Layer ServiceService Models: Ordered Delivery
• Ordered: packets delivered in order
![Page 18: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/18.jpg)
20 April 2006 KU EECS 663 – Network Layer N-18
© James P.G. SterbenzITTC
Network Layer ServiceService Models: Unordered Delivery
• Ordered• Unordered: packets may be misordered (why?)
– transport layer will reorder– application will reorder– application doesn’t care about order
![Page 19: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/19.jpg)
20 April 2006 KU EECS 663 – Network Layer N-19
© James P.G. SterbenzITTC
Network Architecture ServiceCharacteristics
• Network establishes paths between end systems– all applications (that need to) must be able to communicate
• Heterogeneity of todo:fig
– underlying links and LAN technologies– overlying applications– service providers
• Requires common addressing mechanism– and compatible routing and signalling
![Page 20: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/20.jpg)
20 April 2006 KU EECS 663 – Network Layer N-20
© James P.G. SterbenzITTC
Network ArchitectureHourglass Principle
• Internet iswaist of the hourglass
• Common addressing (IP)– compatible
routing and signalling
• The network layer is the hardest to replace or evolve– even to new versions (e.g. IPv4 → IPv6)
• IP won over alternatives– e.g. X.25 CONS, CLNP, SNA, XNS, DECNET, ATM, …– but ideas in these architectures still important
IP
4
2
3
TCP UDP RTP • • •
Ethernet SONET 802.11 • • • λ • • •
![Page 21: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/21.jpg)
20 April 2006 KU EECS 663 – Network Layer N-21
© James P.G. SterbenzITTC
Network LayerN.2 Network Service Models and Signalling
N.1 Network layer functions and servicesN.2 Network service models and signallingN.3 Switches and packet structureN.4 ExamplesN.5 Fast datagram routers
![Page 22: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/22.jpg)
20 April 2006 KU EECS 663 – Network Layer N-22
© James P.G. SterbenzITTC
Network-Layer ServiceCircuits: State Management
• Circuits– physical path established– circuit state to establish and maintains path
Examples?
![Page 23: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/23.jpg)
20 April 2006 KU EECS 663 – Network Layer N-23
© James P.G. SterbenzITTC
Network-Layer ServiceCircuits: State Management
• Circuits– physical path established– circuit state to establish and maintains path
• Examples– early PSTN– X.21 circuit switched networks– optical WDM lightpaths Lecture L
![Page 24: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/24.jpg)
20 April 2006 KU EECS 663 – Network Layer N-24
© James P.G. SterbenzITTC
Network-Layer ServiceCircuits: Signalling and Data Transfer
CONNECT
CONNECT
CONNECT
SETUP
SETUP
SETUP
tsetup
RELEASE
RELEASE
RELEASE
trel
txfer
ts ≈ 0
• Circuit Signallingcharacteristics?
![Page 25: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/25.jpg)
20 April 2006 KU EECS 663 – Network Layer N-25
© James P.G. SterbenzITTC
Network-Layer ServiceCircuits: Signalling and Data Transfer
CONNECT
CONNECT
CONNECT
SETUP
SETUP
SETUP
tsetup
RELEASE
RELEASE
RELEASE
trel
txfer
ts ≈ 0
• Circuit Signalling– setup latency:
RTT before data transfer– no multiplexing efficiency+ negligible switch latency
![Page 26: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/26.jpg)
20 April 2006 KU EECS 663 – Network Layer N-26
© James P.G. SterbenzITTC
Network-Layer ServiceConnections: State Management
• Connection-oriented– connection state required– performance optimisations possible to reduce setup latency
• fast reservations• optimistic connection establishment
Examples?
![Page 27: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/27.jpg)
20 April 2006 KU EECS 663 – Network Layer N-27
© James P.G. SterbenzITTC
Network-Layer ServiceConnections: State Management
• Connection-oriented or virtual circuit– connection state required– performance optimisations possible to reduce setup latency
• fast reservations• optimistic connection establishment
• Examples– CONS (connection-oriented network service)
PSPDNs (packet-switched public data networks)[ISO/IEC 8878+8208 / ITU X.25]
– ATM and MPLS– modern PSTN (wired and wireless)
![Page 28: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/28.jpg)
20 April 2006 KU EECS 663 – Network Layer N-28
© James P.G. SterbenzITTC
Network-Layer ServiceConnections: Motivation
• Combine benefits of datagram and circuits– statistical multiplexing gains of datagrams– forwarding performance circuits
• eliminate store-and-forward• high-performance switch design
– provision of QOS Lecture Q• admission control• resource reservation per connection
![Page 29: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/29.jpg)
20 April 2006 KU EECS 663 – Network Layer N-29
© James P.G. SterbenzITTC
Network-Layer ServiceConnections: Virtual Circuit Signalling
• Connections (virtual circuits)characteristics?
SETUP
PROCEEDING
PROCEEDING
CONNECT
CONNECTCONNECT
SETUP
SETUP tsig
ACK
ACK
PROCEEDING
ACK
ts
tp
tsetup
txfer
dn
d1
Dn
tg tb
![Page 30: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/30.jpg)
20 April 2006 KU EECS 663 – Network Layer N-30
© James P.G. SterbenzITTC
Network-Layer ServiceConnections: Virtual Circuit Signalling
• Connections (virtual circuits)– establish state once to
reduce per packet processing+ amortised for long flows– expensive for transactions– RTT delay before data transfer+ high throughput possible+ per hop messages reduce latency
SETUP
PROCEEDING
PROCEEDING
CONNECT
CONNECTCONNECT
SETUP
SETUP tsig
ACK
ACK
PROCEEDING
ACK
ts
tp
tsetup
txfer
dn
d1
Dn
tg tb
![Page 31: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/31.jpg)
20 April 2006 KU EECS 663 – Network Layer N-31
© James P.G. SterbenzITTC
Network-Layer ServiceConnections: Virtual Circuit Forwarding
• Each packet contains a connection identifier• Each hop does a lookup in a connection table
– outgoing port = lookup (connection id)
• Each hop does a label swap– new label = lookup (connection id)– prevents the need for global connection id allocation
• Table lookup very efficient– connection id is index into simple table– can be done in fast hardware at line rate
![Page 32: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/32.jpg)
20 April 2006 KU EECS 663 – Network Layer N-32
© James P.G. SterbenzITTC
Network-Layer ServiceVirtual-Circuit Label Swapping
cin pout cout cstate
=
pout payload cout payload cin
• Connection id is index into table• Table entry gives egress link and next hop id
– port may be prepended for self-routing fabricsexamples: ATM, MPLS
![Page 33: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/33.jpg)
20 April 2006 KU EECS 663 – Network Layer N-33
© James P.G. SterbenzITTC
Network-Layer ServiceVirtual-Circuit Label Swapping Example
p3 p2
p0
3
7 2
2
3 1
5 3
37
5
5 1
p3
p2
p1
3 3
1
233
1
4 0
0
1 6
3
2
25
0
0 0
pout cout
7 21
0 2
3
todo:animate
![Page 34: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/34.jpg)
20 April 2006 KU EECS 663 – Network Layer N-34
© James P.G. SterbenzITTC
Network-Layer ServiceConnectionless: State Management
• Connectionless– no per flow state required to forward information– but there still is state
what?
![Page 35: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/35.jpg)
20 April 2006 KU EECS 663 – Network Layer N-35
© James P.G. SterbenzITTC
Network-Layer ServiceConnectionless: State Management
• Connectionless– no per flow state required to forward information– but there still is state
• forwarding tables
– other state may be used to improve performance• per-flow queueing Lecture Q• soft state flow identification to improve performance
Examples?
![Page 36: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/36.jpg)
20 April 2006 KU EECS 663 – Network Layer N-36
© James P.G. SterbenzITTC
Network-Layer ServiceConnectionless: State Management
• Connectionless– no per flow state required to forward information– but there still is state
• forwarding tables
– other state may be used to improve performance• per-flow queueing Lecture Q• soft state flow identification to improve performance
• Examples– Internet IP– CLNP (connectionless layer network protocol)
[ISO/IEC 8473 / ITU X.223]
![Page 37: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/37.jpg)
20 April 2006 KU EECS 663 – Network Layer N-37
© James P.G. SterbenzITTC
Network-Layer ServiceConnectionless: Data Transfer
• Connectionless signallingcharacteristics?
tp
tf
tb
tb
tg
D1
Dn
tr
![Page 38: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/38.jpg)
20 April 2006 KU EECS 663 – Network Layer N-38
© James P.G. SterbenzITTC
Network-Layer ServiceConnectionless: Data Transfer
• Connectionless signallingo individual datagrams
forwarded+ no setup latency– data rate limited by packet
processing throughput
tp
tf
tb
tb
tg
D1
Dn
tr
![Page 39: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/39.jpg)
20 April 2006 KU EECS 663 – Network Layer N-39
© James P.G. SterbenzITTC
Network-Layer ServiceDatagram Forwarding
• Each datagram contains a destination address• Each hop does a lookup in a forwarding table
– outgoing port = lookup (destination address)
• Table lookup efficiency depends on:– address structure (e.g class-based IP vs. CIDR)– address length– tables length (# destinations per switch/router)
• Example: IP– note: IP lookup could not be done at line rate in 1980s
more later
![Page 40: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/40.jpg)
20 April 2006 KU EECS 663 – Network Layer N-40
© James P.G. SterbenzITTC
Network-Layer ServiceComparison of Characteristics
• Connectionless vs. connection-oriented networks– major debate in 1980s and 1990s
• Comparison of characteristics
Characteristic Connectionless Connection-oriented
Setup latency ? ?
Forwarding latency
Forwarding information
Switch state
Resilience to failure
QOS
![Page 41: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/41.jpg)
20 April 2006 KU EECS 663 – Network Layer N-41
© James P.G. SterbenzITTC
Network-Layer ServiceComparison of Characteristics
• Connectionless vs. connection-oriented networks– major debate in 1980s and 1990s
• Comparison of characteristics
Characteristic Connectionless Connection-oriented
Setup latency ↓ none ↑ round trip
Forwarding latency ? ?
Forwarding information
Switch state
Resilience to failure
QOS
![Page 42: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/42.jpg)
20 April 2006 KU EECS 663 – Network Layer N-42
© James P.G. SterbenzITTC
Network-Layer ServiceComparison of Characteristics
• Connectionless vs. connection-oriented networks– major debate in 1980s and 1990s
• Comparison of characteristics
Characteristic Connectionless Connection-oriented
Setup latency ↓ none ↑ round trip
Forwarding latency ↑ address lookup ↓ VC index
Forwarding information ? ?
Switch state
Resilience to failure
QOS
![Page 43: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/43.jpg)
20 April 2006 KU EECS 663 – Network Layer N-43
© James P.G. SterbenzITTC
Network-Layer ServiceComparison of Characteristics
• Connectionless vs. connection-oriented networks– major debate in 1980s and 1990s
• Comparison of characteristics
Characteristic Connectionless Connection-oriented
Setup latency ↓ none ↑ round trip
Forwarding latency ↑ address lookup ↓ VC index
Forwarding information ↑ address per packet ↓ VC id per packet
Switch state ? ?
Resilience to failure
QOS
![Page 44: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/44.jpg)
20 April 2006 KU EECS 663 – Network Layer N-44
© James P.G. SterbenzITTC
Network-Layer ServiceComparison of Characteristics
• Connectionless vs. connection-oriented networks– major debate in 1980s and 1990s
• Comparison of characteristics
Characteristic Connectionless Connection-oriented
Setup latency ↓ none ↑ round trip
Forwarding latency ↑ address lookup ↓ VC index
Forwarding information ↑ address per packet ↓ VC id per packet
Switch state ↑ forwarding tables ↓ connection id tables
Resilience to failure ? ?
QOS
![Page 45: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/45.jpg)
20 April 2006 KU EECS 663 – Network Layer N-45
© James P.G. SterbenzITTC
Network-Layer ServiceComparison of Characteristics
• Connectionless vs. connection-oriented networks– major debate in 1980s and 1990s
• Comparison of characteristics
Characteristic Connectionless Connection-oriented
Setup latency ↓ none ↑ round trip
Forwarding latency ↑ address lookup ↓ VC index
Forwarding information ↑ address per packet ↓ VC id per packet
Switch state ↑ forwarding tables ↓ connection id tables
Resilience to failure datagrams lost connections terminated
QOS ? ?
![Page 46: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/46.jpg)
20 April 2006 KU EECS 663 – Network Layer N-46
© James P.G. SterbenzITTC
Network-Layer ServiceComparison of Characteristics
• Connectionless vs. connection-oriented networks– major debate in 1980s and 1990s
• Comparison of characteristics
Characteristic Connectionless Connection-oriented
Setup latency ↓ none ↑ round trip
Forwarding latency ↑ address lookup ↓ VC index
Forwarding information ↑ address per packet ↓ VC id per packet
Switch state ↑ forwarding tables ↓ connection id tables
Resilience to failure datagrams lost connections terminated
QOS difficult connection reservation
![Page 47: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/47.jpg)
20 April 2006 KU EECS 663 – Network Layer N-47
© James P.G. SterbenzITTC
Network LayerN.3 Switches and Packet Structure
N.1 Network layer functions and servicesN.2 Network service models and signallingN.3 Switches and packet structureN.4 ExamplesN.6 Fast datagram routers
![Page 48: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/48.jpg)
20 April 2006 KU EECS 663 – Network Layer N-48
© James P.G. SterbenzITTC
SwitchesFunctions: Overview
• Routing / signalling– per flow or longer
• Transfer control– per packet control
• Data manipulation– per byte or packet
routing and signalling
transfer control
routing algorithm
topology link state
traffic management
signalling
input processing switch fabric
output processing
management
data manipulation
link layer decapsulation
link layer framing
packet buffers
forwarding table
link scheduling
congestioncontrol
filter classify
fabric control
![Page 49: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/49.jpg)
20 April 2006 KU EECS 663 – Network Layer N-49
© James P.G. SterbenzITTC
SwitchesFunctions: Routing and Signalling
• Routing / signalling– per flow or longer
• Management• Signalling• Topology database• Routing algorithm• Traffic
management
routing and signalling
transfer control
routing algorithm
topology link state
traffic management
signalling
input processing switch fabric
output processing
management
data manipulation
link layer decapsulation
link layer framing
packet buffers
forwarding table
link scheduling
congestioncontrol
filter classify
fabric control
![Page 50: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/50.jpg)
20 April 2006 KU EECS 663 – Network Layer N-50
© James P.G. SterbenzITTC
SwitchesFunctions: Transfer Control
• Transfer control– per packet control
• Input control– classification tables– forwarding tables
• Congestion control• Fabric control
– e.g. set crosspoints
• Output control– link scheduling
routing and signalling
transfer control
routing algorithm
topology link state
traffic management
signalling
input processing switch fabric
output processing
management
data manipulation
link layer decapsulation
link layer framing
packet buffers
forwarding table
link scheduling
congestioncontrol
filter classify
fabric control
![Page 51: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/51.jpg)
20 April 2006 KU EECS 663 – Network Layer N-51
© James P.G. SterbenzITTC
SwitchesFunctions: Data Manipulation
• Data manipulation– per byte or packet– performance critical
• Input processing– link layer– packet classification– output lookup
• Switch fabric• Packet buffers• Output processing
– packet scheduling– link layer
routing and signalling
transfer control
routing algorithm
topology link state
traffic management
signalling
input processing switch fabric
output processing
management
data manipulation
link layer decapsulation
link layer framing
packet buffers
forwarding table
link scheduling
congestioncontrol
filter classify
fabric control
![Page 52: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/52.jpg)
20 April 2006 KU EECS 663 – Network Layer N-52
© James P.G. SterbenzITTC
Store-and-Forward RoutersSecond Generation
CPU M
network
w
NI
buffers
NI
link link
• Second generation (1980s)– network interfaces share bus– general purpose CPU
1
![Page 53: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/53.jpg)
20 April 2006 KU EECS 663 – Network Layer N-53
© James P.G. SterbenzITTC
Store-and-Forward RoutersSecond Generation
CPU M
network
w
NI
buffers
NI
link link
• Second generation (1980s)– delays
• store-and-forward• contention for CPU• non-trivial header processing
2
![Page 54: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/54.jpg)
20 April 2006 KU EECS 663 – Network Layer N-54
© James P.G. SterbenzITTC
Store-and-Forward RoutersSecond Generation
CPU M
network
w
NI
buffers
NI
link link
• Second generation (1980s)– delays
• store-and-forward• contention for CPU• non-trivial header processing
– buffering• in general purpose memory• contention for memory
3
![Page 55: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/55.jpg)
20 April 2006 KU EECS 663 – Network Layer N-55
© James P.G. SterbenzITTC
Store-and-Forward RoutersSecond Generation
CPU M
network
w
NI
buffers
NI
link link
• Second generation (1980s)– delays
• store-and-forward• contention for CPU• non-trivial header processing
– buffering• in general purpose memory• contention for memory
– shared bus interconnect• packets traverse bus twice• severely limits # of ports• DMA transfers help 4
![Page 56: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/56.jpg)
20 April 2006 KU EECS 663 – Network Layer N-56
© James P.G. SterbenzITTC
Store-and-Forward RoutersThird Generation
CPU M
w
NI
buffers
NIP
NI
buffers
NIP
network
L2 L2
L3 L3
1
• Third generation (1990s)– NI (network interface)
• packet processing• packet buffers
![Page 57: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/57.jpg)
20 April 2006 KU EECS 663 – Network Layer N-57
© James P.G. SterbenzITTC
Store-and-Forward RoutersThird Generation
CPU M
w
NI
buffers
NIP
NI
buffers
NIP
network
L2 L2
L3 L3
2
• Third generation (1990s)– NI (network interface)
• packet processing• packet buffers
– third party bus transfer• bus is switch fabric• single transfer per packet
– still significant bottleneck
![Page 58: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/58.jpg)
20 April 2006 KU EECS 663 – Network Layer N-58
© James P.G. SterbenzITTC
Fast Packet SwitchingMotivation
• Allow network switching at line rate– 155 Mb/s (OC-3) in mid 1980s
• Eliminate store-and-forward processing bottlenecks• Eliminate blocking in switch• Provide support for QOS• Solution:
– virtual connection service
![Page 59: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/59.jpg)
20 April 2006 KU EECS 663 – Network Layer N-59
© James P.G. SterbenzITTC
Fast Packet SwitchArchitecture
• Connection state– simple per packet
processing
• Switch fabric– eliminate contention– no store-and-forward
input processing output processing
routing and signalling
switch fabric
link scheduling
link
link
link
link
label swap
CID table
switch fabric control
![Page 60: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/60.jpg)
20 April 2006 KU EECS 663 – Network Layer N-60
© James P.G. SterbenzITTC
Fast Packet SwitchConnectionless vs. Connection Tradeoff
• Connection-oriented fast packet switching– requires round trip connection setup latency– achieved higher data rate due to simple label swap
• IP lookup was a bottleneck in 1980s
![Page 61: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/61.jpg)
20 April 2006 KU EECS 663 – Network Layer N-61
© James P.G. SterbenzITTC
Packet Size and StructureVariability
• Fixed vs. variable size packetstradeoffs?
![Page 62: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/62.jpg)
20 April 2006 KU EECS 663 – Network Layer N-62
© James P.G. SterbenzITTC
Packet Size and StructureVariability
• Fixed size (cells)+ easier to design switches– difficult to predetermine the best size
• Variable size– more difficult to design switches+ no need for agreement on size+ less need for fragmentation/segmentation
• Discrete sizes: advantages of both fixed and variable• integral multiples, e.g. 64B, 128B, 192B…• power-of-2 scaling with data rate
e.g. 128B @ OC-3, 256B @ OC-12, 512B @ OC-48
![Page 63: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/63.jpg)
20 April 2006 KU EECS 663 – Network Layer N-63
© James P.G. SterbenzITTC
Packet Size and StructureSize
• Small vs. large packetstradeoffs?
![Page 64: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/64.jpg)
20 April 2006 KU EECS 663 – Network Layer N-64
© James P.G. SterbenzITTC
Packet Size and StructureSize
• Small packets+ efficient statistical multiplexing– high header/payload overhead– short interarrival time challenge per packet processing
• note: this is one major reason ATM failed
• Large packets+ significantly easier per packet processing– less efficient statistical multiplexing– larger queueing delays+ efficient transport of large data blocks– inefficient transport of signalling and control messages
e.g. TCP ACKs
![Page 65: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/65.jpg)
20 April 2006 KU EECS 663 – Network Layer N-65
© James P.G. SterbenzITTC
Packet Size and StructureGranularity
• Important to match granularity to packet processingwhy?
![Page 66: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/66.jpg)
20 April 2006 KU EECS 663 – Network Layer N-66
© James P.G. SterbenzITTC
Packet Size and StructureGranularity
• Important to match granularity to packet processing+ byte / octet (8 bits)
• control fields should align to 8-bit boundaries
+ word (typically 32 bits)• most end-system processing at word granularity• payload should align to 32-bit boundaries
+ end system data unit• system buffers and memory structures• power-of-2 size will likely be integral fraction
+ commodity memory components• power-of-2 size
– note: ATM cell was none of these
![Page 67: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/67.jpg)
20 April 2006 KU EECS 663 – Network Layer N-67
© James P.G. SterbenzITTC
Packet Size and StructurePacket Format
• Header– fields that determine
packet processing
• Payload– TPDU transport protocol data unit
• Trailer– fields that are dependent on
packet processing• e.g. cheksum to allow cut-through
header
payload
trailer
QOS
protocol id
header check
packet type
connection id
payload length
authentication
data
check
![Page 68: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/68.jpg)
20 April 2006 KU EECS 663 – Network Layer N-68
© James P.G. SterbenzITTC
Packet Size and StructureControl Fields
• Control field structure and encoding is critical– simple encoding (bit vectors vs. code points)– byte/octet granularity and alignment– field length
• fixed when possible• variable length prepended with length (skip vs. hunt)
![Page 69: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/69.jpg)
20 April 2006 KU EECS 663 – Network Layer N-69
© James P.G. SterbenzITTC
Packet StructureExample: ATM Cells
• ATM cell format– fast packet switching– fine-grained statistical multiplexing
• Size determined by ITU committee compromise– 48B = avg(32, 64)
• 64 from US = min of proposals for data (and voice)• 32 from European PTTs to avoid voice echo cancellers
• Problems:– header tiny to keep overhead low; no room for seq #– nothing a power of 2– 48B + 5B = 53B; not even a multiple of 8
![Page 70: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/70.jpg)
20 April 2006 KU EECS 663 – Network Layer N-70
© James P.G. SterbenzITTC
Switch Fabric ArchitectureIntroduction
routing and signalling
transfer control
routing algorithm
topology link state
traffic management
signalling
input processing switch fabric
output processing
management
data manipulation
link layer decapsulation
link layer framing
packet buffers
forwarding table
link scheduling
congestioncontrol
filter classify
fabric control
• Switch fabric determinesinput → output
• Critical issues– blocking– contention
• Designs– many choices
![Page 71: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/71.jpg)
20 April 2006 KU EECS 663 – Network Layer N-71
© James P.G. SterbenzITTC
Switch Fabric ArchitectureBlocking
• Blocking (among different outputs)• Goal: nonblocking switch fabric
– input–output path ij→om will not block a different path ik→on
• Some switch designs are mostly nonblocking– strictly nonblocking: under all conditions– wide-sense nonblocking: if particular algorithm is used– rearrangeably nonblocking: if existing paths are rearranged– virtually nonblocking: with extremely low probability
![Page 72: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/72.jpg)
20 April 2006 KU EECS 663 – Network Layer N-72
© James P.G. SterbenzITTC
Switch Fabric ArchitectureContention and Buffering
collisions
in1
in2
out delayed
• Contention (burst collisions) in a non-blocking fabric– occurs when traffic destined for same output– requires buffering even for well-behaved traffic
![Page 73: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/73.jpg)
20 April 2006 KU EECS 663 – Network Layer N-73
© James P.G. SterbenzITTC
Switch Fabric ArchitectureContention and Buffering
• Input queueing– suffers from
head-of-line blocking
• Output queueing– requires either:
• internal speedup• internal expansion
![Page 74: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/74.jpg)
20 April 2006 KU EECS 663 – Network Layer N-74
© James P.G. SterbenzITTC
Switch Fabric ArchitectureHead-of-Line Blocking
todo:animate
![Page 75: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/75.jpg)
20 April 2006 KU EECS 663 – Network Layer N-75
© James P.G. SterbenzITTC
Switch Fabric ArchitectureVirtual Output Queueing
• Virtual output queueing– parallel buffers– non-FIFO buffers
todo:animate
![Page 76: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/76.jpg)
20 April 2006 KU EECS 663 – Network Layer N-76
© James P.G. SterbenzITTC
Switch Fabric ArchitectureSingle Stage: Bus as a Switch
• Simple design shared medium bus– point of blocking: only one input active at a time
• 2nd/3rd generation routers
– suitable for small switches
• Multicast– inherent broadcast
i0 i1 i2 i3 i4 i5 i6 i7
o0 o1 o2 o3 o4 o5 o6 o7
w
todo:animate
![Page 77: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/77.jpg)
20 April 2006 KU EECS 663 – Network Layer N-77
© James P.G. SterbenzITTC
Switch Fabric ArchitectureSingle Stage: Shared Memory Switch
• Simple design– packets written by input– packets read by output
• Shared memory– point of contention– speedup necessary
• but access times not scaling with Moore’s
• Multicast– multiple writes or– multicast output demux
i0
i1
i2
i3
i4
i5
i6
i7
o0 o1 o2 o3 o4 o5 o6 o7
output demultiplex
i nput
mul t i pl ex
shared memory
todo:animate
![Page 78: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/78.jpg)
20 April 2006 KU EECS 663 – Network Layer N-78
© James P.G. SterbenzITTC
Switch Fabric ArchitectureSingle Stage: Basic 2×2 Switch Element
• States– point-to-point
• straight• cross
– multicast• Types
– buffered or unbuffered
– self routing orexternally controlled
control headerdecode
header decode
delay
cut-through delay
cut-through
i0
i1 o1
o0
packet buffer
packet buffer
output multiplexor
straight cross duplicate
![Page 79: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/79.jpg)
20 April 2006 KU EECS 663 – Network Layer N-79
© James P.G. SterbenzITTC
Switch Fabric ArchitectureSingle Stage: Crossbar Switch
• Crosspoint switch element– electronic
• multicast possible
– optical MEMS• rotating mirror
column
ii
oj
electronic optical MEMS
ii
oj
column
cross turn duplicate
![Page 80: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/80.jpg)
20 April 2006 KU EECS 663 – Network Layer N-80
© James P.G. SterbenzITTC
Switch Fabric ArchitectureSingle Stage: Crossbar Switch
i0
i1
i2
i3
i4
i5
i6
i7
o0 o1 o2 o3 o4 o5 o6 o7
• Square array of crosspoint elements– O (n 2) growth
complexity– reasonable for
moderate n
• Strictly nonblocking• Multicast
– inherent topology– requires arbitration
todo:animate
![Page 81: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/81.jpg)
20 April 2006 KU EECS 663 – Network Layer N-81
© James P.G. SterbenzITTC
Switch FabricsMultistage Switches
• Large switches built from single stage elements– 2×2 elements or n ×n crossbars– O (n log n) growth complexity
![Page 82: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/82.jpg)
20 April 2006 KU EECS 663 – Network Layer N-82
© James P.G. SterbenzITTC
Switch FabricsMultistage Switches
1010
1010 1010 1010 1010
i0
i2
i4
i6
i8
i10
i12
i14
i1
i3
i5
i7
i9
i11
i13
i15
o0
o2
o4
o6
o8
o10
o12
o14
o1
o3
o5
o7
o9
o11
o13
o15
s0 s1 s2 s3
todo:animate
• Example– self-routing
delta fabric
![Page 83: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/83.jpg)
20 April 2006 KU EECS 663 – Network Layer N-83
© James P.G. SterbenzITTC
Network LayerN.4 Examples
N.1 Network layer functions and servicesN.2 Network service models and signallingN.3 Switches and packet structureN.4 Examples
N.4.1 PSTNN.4.2 X.25 CONSN.4.3 ISDN and Frame RelayN.4.4 B-ISDN and ATMN.4.5 MPLSN.4.6 IP, ICMP, and IPv6
N.5 Fast datagram routers
![Page 84: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/84.jpg)
20 April 2006 KU EECS 663 – Network Layer N-84
© James P.G. SterbenzITTC
PSTNFunctions and Protocols
• PSTN – addressing : telephone number [ITU E.164]– forwarding :
• traditional circuit switch: physical connection• modern virtual circuit: TDM mux/demux Lecture L
and ATM switching• emerging: VoIP
![Page 85: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/85.jpg)
20 April 2006 KU EECS 663 – Network Layer N-85
© James P.G. SterbenzITTC
PSTNFunctions and Protocols2
• PSTN network-layer functions and protocols– signalling :
• traditional: in-band audio• modern: out-of-band (common channel signalling) SS7
– routing and traffic management :• traditional: static hierarchy based on telephone number• network engineering to provide required service
– blocking probability
• modern: dynamic routing (e.g. DNHR) Lecture R
![Page 86: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/86.jpg)
20 April 2006 KU EECS 663 – Network Layer N-86
© James P.G. SterbenzITTC
PSTN AddressingAddressing Notation
• Notation [ITU E.123] symbol & icons [ITU E.121]– country-specific international access denoted by +– followed by grouped digits (no hyphens, dots)
• grouping based on each country's numbering plan , e.g.+1 785 864 7890+44 1524 510302+41 44 632 70 01
![Page 87: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/87.jpg)
20 April 2006 KU EECS 663 – Network Layer N-87
© James P.G. SterbenzITTC
PSTN AddressingAddress Format
• Telephone number format (≤ 15 digits) [ITU E.164]⟨country-code⟩ ⟨national-destination-code⟩ ⟨subscriber-number⟩
– country code (1–3 digits) assigned by ITUList of ITU-T Recommendation E.164 Assigned Country Codeshttp://www.itu.int/pub/T-SP-E.164A-2006/en
– NDC: national destination code (city code or area code)• may be fixed length (e.g. US) or variable length (e.g. UK)• may be structured (e.g.) Germany or unstructured (e.g. US)
– SN: subscriber number• may be structured as in US⟨subscriber number⟩ = ⟨central-office-exch.⟩ ⟨subscriber-line-id⟩
![Page 88: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/88.jpg)
20 April 2006 KU EECS 663 – Network Layer N-88
© James P.G. SterbenzITTC
PSTN: AddressingGlobal Addressing
• Bell System IDDD– international direct distance dialing
• ITU Country codes– early numbering in
1960 ITU Red Book– current scheme defined
1963 ITU Blue Book
• Grouped into 10 zones• 1 – 3 digits
– variable length code
zone area1 US, Canada, Caribbean2 Africa34
Europe
5 Mexico, Cental and S. America6 South Pacific7 Russia (former Soviet Union)8 East Asia and special services9 West and South Asia0 spare
![Page 89: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/89.jpg)
20 April 2006 KU EECS 663 – Network Layer N-89
© James P.G. SterbenzITTC
PSTN: AddressingZone 1 Country Codes (NANP)
Code TLD Country NotesUnited States
Canada
Mexico
.us
.ca
.mx
+1NXX United StatesCanada
now +52part of Mexico was accessible in NANP before 1991 now
Mexico
(Caribbean Nations)
+1NXX
+1706+1905
+1NXX
![Page 90: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/90.jpg)
20 April 2006 KU EECS 663 – Network Layer N-90
© James P.G. SterbenzITTC
PSTN: AddressingZone 2 Country Codes (2-Digit)
Code TLD Country Notesمصر (Misr)
+24X 3-digit codes+25X 3-digit codes+26X 3-digit codes
+27 .zaiNingizimu Afrika
Suid-AfrikaSouth Africa
South Africa
.eg+20 Egypt3-digit codes3-digit codes3-digit codes
unassigned3-digit codes+29X
+21X+22X+23X
+28X
![Page 91: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/91.jpg)
20 April 2006 KU EECS 663 – Network Layer N-91
© James P.G. SterbenzITTC
PSTN: AddressingZone 3 Country Codes
Code TLD Country NotesΕλλάς
NederlandBelgië
BelgiqueBelgienFranceEspañaEspanyaEspainiaEspanha
MagyarországDeutsche Dem. Rep.
Jugoslavija / Југославија
Italia
.gr
.nl
.be
.fr
.es
.hu(dd).yu.it
+30 GreeceNetherlands
3-digit codes
now 3-digit codesnow 3-digit codes
Belgium
France
Spain
HungaryEast Germany
Yugoslavia+39 Italy
+31
+32
+33
+34
+35X+36+37+38
![Page 92: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/92.jpg)
20 April 2006 KU EECS 663 – Network Layer N-92
© James P.G. SterbenzITTC
PSTN: AddressingZone 3 Country Codes
Code TLD Country NotesGibraltarPortugal
LëtzebuergLuxembourgLuxemburg
ÉireIrelandÍsland
ShqipëriaMaltaΚύπροςKıbrısSuomiFinlansБългария
.gi
.pt
.lu
.ie
.is
.al
.mt
.cy
.fi
.bg
+350 GibraltarPortugal
Luxembourg
Ireland
IcelandAlbaniaMalta
Cyprus
Finland
+359 Bulgaria
+351
+352
+353
+354+355+356
+357
+358
![Page 93: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/93.jpg)
20 April 2006 KU EECS 663 – Network Layer N-93
© James P.G. SterbenzITTC
PSTN: AddressingZone 3 Country Codes
Code TLD Country NotesLietuvaLatvijaEesti
MoldovaՀայաստան (Hayastan)
БеларусьBiełaruśAndorraMonacoMunegu
San MarinoCivitatis Vaticanæ
.lt
.lv
.ee
.md
.am
.by
.ad
.mc
.sm
.va
+370 LithuaniaLatviaEstoniaMoldovaArmenia
Belarus
Andorra
Monaco
San Marino+379 Vatican City
+371+372+373+374
+375
+376
+377
+378
![Page 94: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/94.jpg)
20 April 2006 KU EECS 663 – Network Layer N-94
© James P.G. SterbenzITTC
PSTN: AddressingZone 3 Country Codes
Code TLD Country NotesУкраїна
Србија и Црна Гора
HrvatskaSlovenija
Bosna i HercegovinaБосна и Херцеговина
Македонија
.ua
.yu
.hr
.si
.ba
.eu
.mk
+380 UkraineSerbia & Montenegro .cs reserved
unassignedunassignedunassigned
European telephony
CroatiaSlovenia
Bosnia & Hercegovina
Europe +389 Macedonia
+381+382+383+384+385+386
+387
+388
![Page 95: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/95.jpg)
20 April 2006 KU EECS 663 – Network Layer N-95
© James P.G. SterbenzITTC
PSTN: AddressingZone 4 Country Codes
Code TLD Country NotesRomania
Schweiz / SuisseSvizzera / SvizraČeskoslovenskoČeská Republika
SlovenskoLiechtenstein
ÖsterreichUnited Kingdom
DanmarkSverige
+47 .no Norge Norway
+49 .de Deutschland GermanyPolska
.ro
.ch
.cs
.cz
.sk
.li
.at
.uk
.dk
.se
.pl
+40 Romania
Switzerland
before 1998 was +42was +42was +41 75
CzechloslovakiaCzech Republic
SlovakiaLiechtenstein
AustriaUnited Kingdom
Denmark+46 Sweden
+48 Poland
+41
+42+420+421+423+43+44+45
![Page 96: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/96.jpg)
20 April 2006 KU EECS 663 – Network Layer N-96
© James P.G. SterbenzITTC
PSTN: AddressingZone 5 Country Codes (2-Digit)
Code TLD Country Notes
PerúPiruw
MéxicoCuba
+54 .ar Argentina Argentina+55 .br Brasil Brazil+56 .cl Chile Chile+57 .co Colombia Colombia
Venezuela
.pe
.mx
.cu
.ve
+50X 3-digit codes
Peru
3-digit codes
MexicoCuba
Venezuela+59X
+51
+52+53
+58
![Page 97: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/97.jpg)
20 April 2006 KU EECS 663 – Network Layer N-97
© James P.G. SterbenzITTC
PSTN: AddressingZone 6 Country Codes (2-Digit)
Code TLD Country NotesMalaysiaڤرسكوتوانAustraliaIndonesiaPilipinas
Philippines+64 .nz New Zealand New Zealand
+65 .sg
Singapura新加坡 (Xīnjiāpō)சிங்கப்பூர்
Singapore
Singapore
+66 .th ไทย (Thai) Thailand+67X 3-digit codes
.my
.au
.id
.ph
+60 Malaysia
Australia
3-digit codes3-digit codes
Indonesia
Philippines
+69X
+61+62
+63
+68X
![Page 98: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/98.jpg)
20 April 2006 KU EECS 663 – Network Layer N-98
© James P.G. SterbenzITTC
PSTN: AddressingZone 7 Country Codes
Code TLD Country NotesРосси́я
Қазақстан قازاقستان |Казахстан
.ru
.kz
+7 Russia formerly USSR .su
Kazakstan
other formerSoviet republics
now in+37X Baltic states+99X Asian states
+7
![Page 99: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/99.jpg)
20 April 2006 KU EECS 663 – Network Layer N-99
© James P.G. SterbenzITTC
PSTN: AddressingZone 8 Country Codes
Code TLD Country Notes日本 (Nihon)
대한민국 | 大韓民國 (Daehan Minguk)Việt Nam
조선민주주의인민공화국(Chosŏn Minjujuŭi Inmin Konghwaguk)
+852 .hk 香港(Hèung Góng | Xiānggǎng) Hong Kong
+853 .mo 澳門 / Macau (Jyutping / Àomén) Macao+855 .kh កមពជ (Kâmpŭchea) Cambodia+856 .la ນລາວ (Muang Lao) Laos
中国 / 中國 (Zhōngguó)
বাংলােদশ中華民國 (JhōngHuá MínGuó)
.jp
.kr
.vn
.kp
.cn
.bd
.tw
+81 JapanSouth Korea
kp TLD unused
Viet Nam
North Korea
China
Bengladesh+886 Taiwan ROC
+82+84
+850
+86
+880
![Page 100: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/100.jpg)
20 April 2006 KU EECS 663 – Network Layer N-100
© James P.G. SterbenzITTC
PSTN: AddressingZone 8 Service Codes
Code TLD Service Notesinternational free phone
Inmarsat+87 maritime mobile +875 – +877+878 universal personal telecommunications+881 global mobile satellite system+882 .int international networks+888 unavailable+89 unassigned
+800 Internat. free phone+83 unassigned
+870 – +874+87
![Page 101: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/101.jpg)
20 April 2006 KU EECS 663 – Network Layer N-101
© James P.G. SterbenzITTC
PSTN: AddressingZone 9 Country Codes (2-Digit)
Code TLD Country NotesTürkiye
भारत (Bharat)اسالمیPakistanافغانستان
+94 .lk ශර්ී ලංකාවஇலங்ைக Sri Lanka
+95 .mm မန ္မာ Myanmar (Burma) TLD was .bu+96X 3-digit codes+97X 3-digit codes
ايران
.tr
.in
.pk
.af
.ir
+90 TurkeyIndia
3-digit codesdisaster relief
Pakistan
Afghanistan
Iran
+999
+91
+92
+93
+98
+99X
![Page 102: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/102.jpg)
20 April 2006 KU EECS 663 – Network Layer N-102
© James P.G. SterbenzITTC
PSTN AddressingNANP (WZ1) Origins
• Long distance originally required operator assistance• NANP (North American numbering plan) in 1947
– DDD (direct distance dialing) began in 1951
![Page 103: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/103.jpg)
20 April 2006 KU EECS 663 – Network Layer N-103
© James P.G. SterbenzITTC
PSTN AddressingNANP (WZ1) Administration
• NANPA (NANP Administrator) www.nanpa.org
• CNA (Canadian Number Administrator) www.cnac.ca
• Regulation by FCC in US– NANC (North American Numbering Counci)
www.fcc.gov/wcb/tapd/Nanc
• Guidance from– ATIS INC (Industry Numbering Committee)
www.atis.org/inc/docs.asp– CISC CSCN (Canadian Steering Committee on Numbering)
www.crtc.gc.ca/cisc/eng/cisf3f.htm
![Page 104: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/104.jpg)
20 April 2006 KU EECS 663 – Network Layer N-104
© James P.G. SterbenzITTC
PSTN AddressingNANP (WZ1) Traditional Hierarchical Structure
+1
final trunk group(to class 4 long distance switching) 913
local (class 5)switches
local tandem switches
5 5
T
direct trunk group
tandem trunkgroup
5 5
T
local loops
local office897
tandemoffice
direct trunk group
direct trunkgroup
8538
![Page 105: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/105.jpg)
20 April 2006 KU EECS 663 – Network Layer N-105
© James P.G. SterbenzITTC
PSTN AddressingNANP (WZ1) Nomenclature and Format
• Nomenclature: N = {2…9}; X = {0…9}; 0/1 = {0|1}• 1947: 86 NPAs (numbering plan areas or area codes)
– entire state codes of form N0X– split state codes of form N1X– high-population codes generally low N/X
why?
![Page 106: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/106.jpg)
20 April 2006 KU EECS 663 – Network Layer N-106
© James P.G. SterbenzITTC
PSTN AddressingNANP (WZ1) Nomenclature and Format
• Nomenclature: N = {2…9}; X = {0…9}; 0/1 = {0|1}– entire state codes of form N0X– split state codes of form N1X– high-population codes generally low N/X
• reduce pulse delay• reduce dial pullback
![Page 107: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/107.jpg)
20 April 2006 KU EECS 663 – Network Layer N-107
© James P.G. SterbenzITTC
PSTN AddressingNANP (WZ1) Nomenclature and Format
• Nomenclature: N = {2…9}; X = {0…9}; 0/1 = {0|1}– entire state codes of form N0X– split state codes of form N1X– high-population codes generally low N/X
• reduce pulse delay• reduce dial pullback
• NANP is ITU E.164 compliant⟨national-destination-code⟩ = NPA (area code)⟨subscriber number⟩ = ⟨central-office-exch.⟩ ⟨sub.-line-id⟩– e.g. +1 913 897 8538
US KC OP SLID(KU)
![Page 108: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/108.jpg)
20 April 2006 KU EECS 663 – Network Layer N-108
© James P.G. SterbenzITTC
PSTN: AddressingNANP (WZ1) 1947: Original Bell System
• US and Canada– N0X dedicated– N1X spit state
• 86 NPAs assigned– 152 N0/1X poss.– N00 / N11 resv.
913816316
701
605
402
405 501
504
601 205 404
305
303901
704
204 613
715
414
206
503
406
208
702
306403
604
307
303801
602 505213
415
916
915214
713
512
502703
815217
618
312
304
612
314
218
207
902
802
416
419216
513614
812
317
603
515
319
712
203401413617
201302301202
716412
518
315
215
616
717814
514
418
313517 212
![Page 109: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/109.jpg)
20 April 2006 KU EECS 663 – Network Layer N-109
© James P.G. SterbenzITTC
PSTN: AddressingNANP Address Capacity
• Address space fields– each CO code has 10 000 SLIDs (subscriber line ID)– each NPA can have 640 NNX CO codes– 152 N0/1X NPAs
• Total address space– 152 × 640 × 10000 = 972800000 ≈ 1010
isn’t this plenty?
![Page 110: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/110.jpg)
20 April 2006 KU EECS 663 – Network Layer N-110
© James P.G. SterbenzITTC
PSTN: AddressingNANP Address Capacity
• Address space fields– each CO code has 10000 SLIDs (subscriber line ID)– each NPA can have 640 NNX CO codes– 152 N0/1X NPAs
• Total address space– 152 × 640 × 10000 = 972 800 000 ≈ 1010
• order of magnitude less than 1011 possible with 10 digits• NPA and CO geography determines distribution• usable number much smaller
How to accommodate growth?
![Page 111: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/111.jpg)
20 April 2006 KU EECS 663 – Network Layer N-111
© James P.G. SterbenzITTC
PSTN: AddressingNANP Address Capacity
• Options to accommodate growth– add SLIDs to approach 10000 per CO
• some spares needed for churn• reduce redirect period
![Page 112: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/112.jpg)
20 April 2006 KU EECS 663 – Network Layer N-112
© James P.G. SterbenzITTC
PSTN: AddressingNANP Address Capacity
• Options to accommodate growth– add SLIDs– add CO codes until 640 per NPA
• adding SLIDs and CO codes is relatively easy• add and expand CO switches and trunks
![Page 113: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/113.jpg)
20 April 2006 KU EECS 663 – Network Layer N-113
© James P.G. SterbenzITTC
PSTN: AddressingNANP Address Capacity
• Options to accommodate growth– add SLIDs– add CO codes until 640 per NPA– add NPAs to 152 maximum
• more difficultwhy?
![Page 114: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/114.jpg)
20 April 2006 KU EECS 663 – Network Layer N-114
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Growth and Capacity
• NPA capacity process:– NANP forecasts need for new NPAs– balancing act
• too aggressive causes unnecessary number changes• too conservative prevents new number assignments
– jeopardy : demand for new numbers exceed forcasts• new CO code assignments are restricted until relief
![Page 115: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/115.jpg)
20 April 2006 KU EECS 663 – Network Layer N-115
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Growth and Capacity
• Options for relief– NPA split– NPA repartition– NPA overlay
• Geographic partition required for hierarchical routingLecture R
– requires user numbers to change: disruptive and expensive
![Page 116: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/116.jpg)
20 April 2006 KU EECS 663 – Network Layer N-116
© James P.G. SterbenzITTC
PSTN: AddressingNANP (WZ1): 1960s and 1970s
• US and Canada• NPAs
– near capacity
todo:map
![Page 117: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/117.jpg)
20 April 2006 KU EECS 663 – Network Layer N-117
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Growth and Capacity
• Many NPAs near capacity in 1970s– N0/1X NPAs nearly exhausted
Solution?
![Page 118: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/118.jpg)
20 April 2006 KU EECS 663 – Network Layer N-118
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Growth and Capacity
• Many NPAs near capacity in 1970s– N0/1X NPAs nearly exhausted
• Option– underused NPA realignment would cause massive disruption
![Page 119: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/119.jpg)
20 April 2006 KU EECS 663 – Network Layer N-119
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Growth and Capacity
• 1st step solution– adjust NANP addressing within current framework– institute interchangeable NPA/CO codes– CO codes NNX → NXX
• CO address space increases from 640 → 792• 152 × 792 × 10000 = 1 203 840 000 ≈ 1010 total numbers
implication?
![Page 120: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/120.jpg)
20 April 2006 KU EECS 663 – Network Layer N-120
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Growth and Capacity
• 1st step solution– adjust NANP addressing within current framework– institute interchangeable NPA/CO codes– CO codes NNX → NXX
• address space increases from 640 → 792• 152 × 792 × 10000 = 1 203 840 000 ≈ 1010 total numbers
– implication: 10-digit local numbers• NPAs no longer distinguishable from CO codes
![Page 121: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/121.jpg)
20 April 2006 KU EECS 663 – Network Layer N-121
© James P.G. SterbenzITTC
PSTN: AddressingNANP (WZ1)
• Nomenclature: N={2…9}; X={0…9}; Y={0…8} 0/1={0|1}
1947 1974CC N+
IDDD + 011
NPA N0/1X [152] N0/1X [152]
Central office NNX [640] NXX [792]
SLID XXXX [10000] XXXX [10000]
free 800 [1]
Service code N11 [8] N11Toll centerSystem code
0XX0/1XX [200]
0XX0/1XX [200]
![Page 122: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/122.jpg)
20 April 2006 KU EECS 663 – Network Layer N-122
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Growth and Capacity
• 1st step solution– adjust NANP addressing within current framework– institute interchangeable NPA/CO codes– CO codes NNX → NXX– implication: 10-digit local numbers– still insufficient to meet demand explosion in late 1980s
• fax machines• 2nd residential lines for home computer modems• mobile telephones
solution?
![Page 123: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/123.jpg)
20 April 2006 KU EECS 663 – Network Layer N-123
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Growth and Capacity
• 2nd step solution– NPA N0/1X → NYX: NPA space increased from 152 → ~900
• Y={0…8}• usually NYX is still written NXX with a footnote
– address space now ≈ 712 × 792 × 10000 = 6272640 000• note: some NPAs and CO code reserved for special use
issues?
![Page 124: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/124.jpg)
20 April 2006 KU EECS 663 – Network Layer N-124
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Growth and Capacity
• Massive growth in 1980s and 1990s– ~500 new NYX NPAs– but frequent NPA splits very disruptive for users and carriers
Solution?
![Page 125: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/125.jpg)
20 April 2006 KU EECS 663 – Network Layer N-125
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Growth and Capacity
• Massive growth in 1980s and 1990s– ~500 new NYX NPAs– but frequent NPA splits very disruptive for users and carriers
• 3rd step solution– remove restriction that NPAs be geographically unique– enabled by more flexible switch routing software
• nonhierarchical routing Lecture R– overlay NPAs: multiple NPAs shared in a given area– initially resisted by some PUCs (public utility commissions)
![Page 126: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/126.jpg)
20 April 2006 KU EECS 663 – Network Layer N-126
© James P.G. SterbenzITTC
PSTN: AddressingNANP (WZ1)
• Nomenclature: N={2…9}; X={0…9}; Y={0…8} 0/1={0|1}
1947 1974 1995CC N+ N+
NYX [712]
NXX [792]
XXXX [10000]
8xx [8]
IDDD + 011 011N11
NPA N0/1X [152] N0/1X [152]
Central office NNX [640] NXX [792]
SLID XXXX [10000] XXXX [10000]
free 800 [1]
Service code N11 [8] N11Toll centerSystem code
0XX0/1XX [200]
0XX0/1XX [200]
![Page 127: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/127.jpg)
20 April 2006 KU EECS 663 – Network Layer N-127
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Evolution Example: KS + MO
816
Wichita
LawrenceTopeka Kansas City
Overland Park
Springfield
St. Louis
Jefferson City
314
816
913
316
618
217
712 515 319
402
502
901501
405
303
• 1947: original NPAs [proper original MO boundary needed]– KS: two N1X codes split between Kansas City and Wichita – MO: two N1X codes split between St. Louis and Kansas City 1
![Page 128: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/128.jpg)
20 April 2006 KU EECS 663 – Network Layer N-128
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Evolution Example: KS + MO
• 1950: geographic split– MO: Kansas City keeps 816; St. Louis keeps 314 – MO: southwest replaced with 417 including Springfield
816
Wichita
LawrenceTopeka Kansas City
Overland Park
Springfield
St. Louis
Jefferson City
417 314
816
913
316
618
217
712 515 319
502
901501
2
402
405
303
![Page 129: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/129.jpg)
20 April 2006 KU EECS 663 – Network Layer N-129
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Evolution Example: KS + MO
• 1995: geographic split– MO: St. Louis and suburbs keep 314 – MO: rest of east replaced by 573
816
Wichita
LawrenceTopeka Kansas City
Overland Park
Springfield
St. Louis
Jefferson City
417 573
816
913
316
618
217
712 515 319
402308
502
901918
3
314
501
970
719
405
![Page 130: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/130.jpg)
20 April 2006 KU EECS 663 – Network Layer N-130
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Evolution Example: KS + MO
816
Wichita
LawrenceTopeka Kansas City
Overland Park
Springfield
St. Louis
Jefferson City
417 573
816
913
316
618
217
712 515 319
402308
502
901918
314
501
970
719
405
• 1996: jeopardy– MO: 816 NPA in danger of CO code exhaustion before relief
4
![Page 131: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/131.jpg)
20 April 2006 KU EECS 663 – Network Layer N-131
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Evolution Example: KS + MO
• 1997: geographic split– MO: Kansas City suburbs keep 816– MO: rest of northwest replaced by 660
816
Wichita
LawrenceTopeka Kansas City
Overland Park
Springfield
St. Louis
Jefferson City
417 573
660816
913
316
618
217
712 515 319
402308
901
502870501
918580
5
314
970
719
![Page 132: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/132.jpg)
20 April 2006 KU EECS 663 – Network Layer N-132
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Evolution Example: KS + MO
• 1997: jeopardy– KS: KS: Kansas City burbs keep 913– KS: rest of north replaced by 785 including Lawrence
816
Wichita
LawrenceTopeka Kansas City
Overland Park
Springfield
St. Louis
Jefferson City
417 573
660816
913
316
618
217
712 515 319
402308
901
502870501
918580
6
314
970
719
![Page 133: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/133.jpg)
20 April 2006 KU EECS 663 – Network Layer N-133
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Evolution Example: KS + MO
• 1997: geographic split– KS: Kansas City suburbs keep 913– KS: rest of north replaced by 785 including Lawrence
816
Wichita
LawrenceTopeka Kansas City
Overland Park
Springfield
St. Louis
Jefferson City
417 573
660816
785 913
316
618
217
712 515 319
402308
901
502870501
918580
7
314
970
719
![Page 134: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/134.jpg)
20 April 2006 KU EECS 663 – Network Layer N-134
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Evolution Example: KS + MO
• 1998: jeopardy– MO: 314 NPA in danger of CO code exhaustion before relief– MO: St. Louis suburbs code replaced with 636
816
Wichita
LawrenceTopeka Kansas City
Overland Park
Springfield
St. Louis
Jefferson City
417 573
660816
314785 913
316
618
217
712 515 319
402308
901
502870501
918580
8
970
719
![Page 135: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/135.jpg)
20 April 2006 KU EECS 663 – Network Layer N-135
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Evolution Example: KS + MO
• 1999: geographic split– MO: St. Louis city and inner suburbs keeps 314– MO: St. Louis suburbs code replaced with 636
816
Wichita
LawrenceTopeka Kansas City
Overland Park
Springfield
St. Louis
Jefferson City
417 573
660816
636 314785 913
316
618
217
712 515 319
402308
270
502870479
918580
9
970
719
![Page 136: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/136.jpg)
20 April 2006 KU EECS 663 – Network Layer N-136
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Evolution Example: KS + MO
• 1999: interchangable codes– KS: Kansas City 10 digit local 913/816 dialing– KS: note that 913 and 816 are in the same LATA
816
Wichita
LawrenceTopeka Kansas City
Overland Park
Springfield
St. Louis
Jefferson City
417 573
660816
636 314785 913
316
618
217
712 515 319
402308
270
502870479
918580
10
970
719
![Page 137: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/137.jpg)
20 April 2006 KU EECS 663 – Network Layer N-137
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Evolution Example: KS + MO
• 2001: geographic split– KS: Wichita keeps 316– KS: rest of south replaced by 620
816
Wichita
LawrenceTopeka Kansas City
Overland Park
Springfield
St. Louis
Jefferson City
417 573
660816
636 314785 913
316620
618
217
712 641 563
402308
270
731870479
918580
11
970
719
![Page 138: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/138.jpg)
20 April 2006 KU EECS 663 – Network Layer N-138
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Evolution Example: KS + MO
• 2001: first overlays planned– 975 for KC (1.1M metro pop.); 557 for St. Louis (2.0M pop.)– initial plans suspended but codes still reserved
816
Wichita
LawrenceTopeka Kansas City
Overland Park
Springfield
St. Louis
Jefferson City
417 573
660816 | 975
636 314 | 557785 913
316620
618
217
712 641 563
402308
270
731870479
918580
12
970
719
![Page 139: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/139.jpg)
20 April 2006 KU EECS 663 – Network Layer N-139
© James P.G. SterbenzITTC
PSTN: AddressingNANP NPA Growth and Capacity
• NYX NXX XXXX addresses– still in danger of exhaustion within next decade– repartition of existing geographical boundaries impractical
• Expansion requires additional digits– ITU E.164 allows 15
• Options– use reserved N9X for more NPA digits– increase number of SLID digits
• Fixed vs. variable length codes– much of world used variable length– US reluctant to change fixed-length tradition
![Page 140: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/140.jpg)
20 April 2006 KU EECS 663 – Network Layer N-140
© James P.G. SterbenzITTC
PSTN: AddressingNANP (WZ1)
• Nomenclature: N={2…9}; X={0…9}; Y={0…8} 0/1={0|1}
1947 1974 1995 ProposedCC N+ N+
NYX [712]
NXX [792]
XXXX [10000]
8xx [8]
IDDD + 011 011 011N11
NPA N0/1X [152] N0/1X [152] N9XX [7920]
Central office NNX [640] NXX [792]
SLID XXXX [10000] XXXX [10000] XXXX+ [10n]
free 800 [1] ?
Service code N11 [8] N11 ?Toll centerSystem code
0XX0/1XX [200]
0XX0/1XX [200]
![Page 141: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/141.jpg)
20 April 2006 KU EECS 663 – Network Layer N-141
© James P.G. SterbenzITTC
PSTN: AddressingNANP (WZ1) 0/1 Call Type Codes
• Trunk access and operator codes
0/1X Use Notes0 local operator requires digit timeout00 toll operator011 IDDD access1N…1N11
non-local (toll) call8/11 digit number
1+3 digit service codeN…N11
local call7/10 digit number3 digit service code
![Page 142: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/142.jpg)
20 April 2006 KU EECS 663 – Network Layer N-142
© James P.G. SterbenzITTC
PSTN: AddressingNANP (WZ1) Service Codes
• N11 codes administered by FCC
N11 Use Basis211 community information & referral services FCC311 non-emergency police & other government services FCC411 local directory assistance traditional511 traffic and transportation info (US) FCC611 repair service traditional711 TRS (telecommunications relay service) FCC811 N11 [8] FCC911 emergency FCC
![Page 143: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/143.jpg)
20 April 2006 KU EECS 663 – Network Layer N-143
© James P.G. SterbenzITTC
PSTN: AddressingNANP (WZ1) Reserved NPAs
• NPAs reserved for special use
NXX UseNxx ERC: easily recognisable codes (x = 2nd = 3rd digit)37X reserved for future contiguous block use96X reserved for future contiguous block useN9X reserved for future expansion to 4-digit NPA
![Page 144: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/144.jpg)
20 April 2006 KU EECS 663 – Network Layer N-144
© James P.G. SterbenzITTC
PSTN: AddressingNANP (WZ1) Non-Geographic NPAs
• NPAs not tied to geographical region
NXX Use456 inbound international carrier identification5xx personal communication service (“follow-me”)600 Canadian services700 IXC (interexchange) carrier services710 GETS: US government emergency telecom service8xx TRS (telecommunications relay service)900 premium services (additional billing)
![Page 145: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/145.jpg)
20 April 2006 KU EECS 663 – Network Layer N-145
© James P.G. SterbenzITTC
PSTN: AddressingNANP (WZ1) Special CO Codes
• Restricted and special use CO codes
NXX-XXXX Use555-XXXX NANP-wide assignment555-01XX fictitious use (media and advertising)555-1212 directory assistance555-1313 Bell Canada700-4141 intraLATA carrier verification950-XXXX CAC: carrier access code (CIC XXXX)958-XXXX test code959-XXXX test code976-XXXX information delivery services (additional billing)
![Page 146: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/146.jpg)
20 April 2006 KU EECS 663 – Network Layer N-146
© James P.G. SterbenzITTC
PSTN: AddressingNANP (WZ1) Local Number Portability
• Problem: users must change phone number– when they move– when they change providers (ILEC and new CLECs)– when they convert to mobile telephones for home use– when they change mobile providers
Solution?
![Page 147: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/147.jpg)
20 April 2006 KU EECS 663 – Network Layer N-147
© James P.G. SterbenzITTC
PSTN: AddressingNANP (WZ1) Local Number Portability
• Problem: users must change phone number• Solution: local number portability (LNP)
– strongly resisted by providers• ILEC monopolistic customer base• mobile providers want to avoid customer churn
– alternative: signup deals with long contracts and heavy penalties
• Mandated by FCC– 2003
• LNP for wireline providers within an NPA• WLNP (wireless LNP) 100 largest MSAs (metro statistical areas)
– 2004 WLNP in all areas (NPA not required to be portable)
![Page 148: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/148.jpg)
20 April 2006 KU EECS 663 – Network Layer N-148
© James P.G. SterbenzITTC
PSTN AddressingUK NTNP (WZ3) Administration
• National Telephone Numbering Plan Administration– formerly GPO (General Post Office)– 1981: BT (British Telecom) split from GPO in 1981– 1984: Oftel (Office of Telecommunications) created– 2003: Oftel merged into Ofcom (Office of Communications)
www.ofcom.org.uk
![Page 149: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/149.jpg)
20 April 2006 KU EECS 663 – Network Layer N-149
© James P.G. SterbenzITTC
PSTN AddressingUK NTNP (WZ3) Structure
• Overall structure (ITU E.164 compliant)– country code +44– NDC: area code (formerly STD code)
• variable length: 2–5 digits• geographic area code: beginning with 1–3• non-geographic code: beginning with 4–9
– SN: subscriber number (assigned since 1995)• fixed length within each area code• 5–8 digits = 10 digits – NDC• typically begin with N (2–9) but not 99
– SN: subscriber number (assigned before 1995)• SN+SDC variable number of digits
![Page 150: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/150.jpg)
20 April 2006 KU EECS 663 – Network Layer N-150
© James P.G. SterbenzITTC
PSTN: AddressingUK NTNP (WZ3) Structure: Special Codes
• Trunk access, operator, and service codes
Code Use Notes0 STD long distance00 international access100 operator118 directory enquiries European standard195 directory enquires for disabled
14X call features CLID, trace, screen, etc.190X VTN (voice text network) services for disabled
123 speaking clock
999 emergency
![Page 151: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/151.jpg)
20 April 2006 KU EECS 663 – Network Layer N-151
© James P.G. SterbenzITTC
PSTN AddressingUK NTNP (WZ3) Structure: Geographic Codes
• Geographic codes
Code # Digits Subscriber # Digits Use1X1 3
3454
1XXXX 5 4 legacy codes2X 2 8 wide area code
large cities11X
77655
small cities1XXX medium cities1XXXX small cities1XXX legacy codes
3X reserved for expansion
![Page 152: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/152.jpg)
20 April 2006 KU EECS 663 – Network Layer N-152
© James P.G. SterbenzITTC
PSTN AddressingUK NTNP (WZ3) Structure: Nongeo Codes
• Nongeographic codes
Code # Digits Subscriber # Digits Use4 unassigned
26 unassigned
433334
8
677776
5X corporate numbering
7XXX mobile and personal8XX special services800 freephone808 freephone82X Internet for schools9XXX premium rate
![Page 153: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/153.jpg)
20 April 2006 KU EECS 663 – Network Layer N-153
© James P.G. SterbenzITTC
PSTN AddressingUK NTNP (WZ3) Structure: Geographic Codes
• Wide area geographical codes
Code # Digits Subscriber # Digits Use20 2
2345
London23
8888
South Hampshire24 Coventry28 Northern Ireland29 8 Cardiff, planned for Wales
![Page 154: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/154.jpg)
20 April 2006 KU EECS 663 – Network Layer N-154
© James P.G. SterbenzITTC
PSTN AddressingUK NTNP (WZ3) Growth History
• Selected highlights of UK NTNP history– 2000: 2X codes introduced
• London171 XXX XXXX → 20 7XXX XXXX (outer)181 XXX XXXX → 20 8XXX XXXX (inner)
– Oftel publishes new NTNP: NDC+SN = 10 digits– 1994–95: phONE day
• most geographic codes prepended by 1• e.g. London 71 → 171; Lancaster 524 → 1524
– 1990: London splits• inner London: from 1 → 171 XXX XXXX
– 1958: STD (subscriber trunk dialing) direct long distance
![Page 155: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/155.jpg)
20 April 2006 KU EECS 663 – Network Layer N-155
© James P.G. SterbenzITTC
PSTN SignallingOverview
• Signalling needed for?
![Page 156: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/156.jpg)
20 April 2006 KU EECS 663 – Network Layer N-156
© James P.G. SterbenzITTC
PSTN SignallingOverview
• Signalling needed for– call setup and routing– call modification– call release
• Signalling between– telephone and central office (local loop)– inter-office (trunks)
![Page 157: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/157.jpg)
20 April 2006 KU EECS 663 – Network Layer N-157
© James P.G. SterbenzITTC
PSTN SignallingIn-Channel Signalling
• In-channel (per-trunk) signalling– same transmission links for voice and signalling– in-band: uses voice frequencies
• SF (single frequency): 2600 Hz tone• MF (multifrequency): interoffice• DTMF (dual-tone multifrequency)
– row {697|770|852|941} Hz + column {1209|1336|1477} Hz
– out-of-band: non-voice frequencies• DC -48V for off-hook• dial pulses from rotary telephone (10 pulse/sec)• 20Hz ringing voltage from central office
Advantages?
![Page 158: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/158.jpg)
20 April 2006 KU EECS 663 – Network Layer N-158
© James P.G. SterbenzITTC
PSTN SignallingIn-Channel Signalling
• In-channel (per-trunk) signalling– same transmission links for voice and signalling– in-band: uses voice frequencies– out-of-band: non-voice frequencies
• Advantages– does not require distinct infrastructure– compatible with simple POTS telephones
Disadvantages?
![Page 159: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/159.jpg)
20 April 2006 KU EECS 663 – Network Layer N-159
© James P.G. SterbenzITTC
PSTN SignallingIn-Channel Signalling
• In-channel (per-trunk) signalling– same transmission links for voice and signalling– in-band: uses voice frequencies– out-of-band: non-voice frequencies
• Advantages– does not require distinct infrastructure– compatible with simple POTS telephones
• Disadvantages– user can hack into network
• blue boxes, etc.
– security by obscurity
![Page 160: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/160.jpg)
20 April 2006 KU EECS 663 – Network Layer N-160
© James P.G. SterbenzITTC
PSTN SignallingCommon Channel Signalling
• Common channel signalling– distinct data network for signalling– connects control processing of switches– associated signalling
• signalling overlay network matches trunk topology
– dissociated signalling• signalling network topology optimised for signalling
![Page 161: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/161.jpg)
20 April 2006 KU EECS 663 – Network Layer N-161
© James P.G. SterbenzITTC
PSTN SignallingExample: SS7
• SS7: signalling system #7– signalling network architecture– protocols– signalling messages
todo: expand
![Page 162: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/162.jpg)
20 April 2006 KU EECS 663 – Network Layer N-162
© James P.G. SterbenzITTC
Network LayerN.4.2 Examples: X.25 CONS
N.1 Network layer functions and servicesN.2 Network service models and signallingN.3 Switches and packet structureN.4 Examples
N.4.1 PSTNN.4.2 X.25 CONSN.4.3 ISDN and Frame RelayN.4.4 B-ISDN and ATMN.4.5 MPLSN.4.6 IP, ICMP and IPv6
N.5 Fast datagram routers
![Page 163: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/163.jpg)
20 April 2006 KU EECS 663 – Network Layer N-163
© James P.G. SterbenzITTC
X.25 CONS PSPDNFunctions and Protocols1
• Recall: early packet-switched public data networks– many based on CCITT X.25 standard [ITU X.25-1976]
• X.25 CONS PSPDN functions and protocols– addressing : international data number [ITU X.121]
• alternatives: E.164, Telex, private
– forwarding :• interfaces
– DTE (end-system) – DCE (intermediate system)– DCE – DCE
• X.25 packet switch
– routing : standards say nothing about routing• PDN provider dependent
![Page 164: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/164.jpg)
20 April 2006 KU EECS 663 – Network Layer N-164
© James P.G. SterbenzITTC
X.25 CONS PSPDNOverview
• Packet-switched public data networks (PSPDN)– abundant before emergence of global Internet
• Interface specification– DTE (data terminal equipment) end system– DCE (data communication equipment) intermediate system– X.25 DTE–DCE and DTE–DTE– X.75 DCE–DCE and internetworking between X.25 PSPDNs– ISO CONS (connection-oriented network service)
• [ISO/IEC 8878] (also [ITU X.213]) and [ISO/IEC 8208]
• Historical importance– illustrative of how to construct connection-oriented networks
![Page 165: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/165.jpg)
20 April 2006 KU EECS 663 – Network Layer N-165
© James P.G. SterbenzITTC
X.25 CONS PSPDNAddressing
• X.25 addressing needed to determine VC endpoints • Options defined by numbering plan identification
– IDN international data number [ITU X.121]– PSTN number [ITU E.164]– telex number [ITU F.69]– private numbering plan
![Page 166: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/166.jpg)
20 April 2006 KU EECS 663 – Network Layer N-166
© James P.G. SterbenzITTC
X.25 CONS PSPDNRouting
• X.25/X.75 does not specify routing mechanism– each network provider chooses algorithms and protocols
• Examples– TRANSPAC (France):
• centralised least-cost (link utilisation) with local optimisations• similar to delta-routing [Rudin 1976]
![Page 167: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/167.jpg)
20 April 2006 KU EECS 663 – Network Layer N-167
© James P.G. SterbenzITTC
X.25 CONS PSPDNService Models and Transfer Modes
• Permanent virtual circuits– virtual circuits provisioned in advance by network operator– no per VC signalling; packet forwarding required
• Switched virtual circuits– per virtual connection signalling– connection routing and packet forwarding required
• Fast select (transactions added in [X.25-1980])– CALL REQUEST packet can contain 128B of initial data– connection routing and packet forwarding required
• Datagram (added in [X.25-1980] following ANSI work)– datagram routing and forwarding required
![Page 168: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/168.jpg)
20 April 2006 KU EECS 663 – Network Layer N-168
© James P.G. SterbenzITTC
X.25 CONS PSPDNX.25 Signalling Messages
Message Type X.25 Origination X.25 Destination
SETUP Call request Incoming call
CONNECT Call connected Call accepted
RESET Reset request Reset indication
RELEASE Clear request Clear indication
Clear confirmation
todo: expand and diagram
![Page 169: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/169.jpg)
20 April 2006 KU EECS 663 – Network Layer N-169
© James P.G. SterbenzITTC
X.25 CONS PSPDNX.25 Generic Packet Format: Type
• GFI: general format indicator [4b]– describes packet format
• LCN/LCGN [12b]• Control data [8b]
– packet type identifier for control packets– control fields for data packets– C/D: 1 = control / 0 = data
• Additional information– control and datagram: additional header– data packet: user data field (payload)
GFI
C/D
LCGN
control data
LCN
8b
additional information
![Page 170: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/170.jpg)
20 April 2006 KU EECS 663 – Network Layer N-170
© James P.G. SterbenzITTC
logical channel #
X.25 CONS PSPDNX.25 Generic Packet Format: Channels
• GFI• Logical channel number [12b]
– LCGN logical channel group number [4b]– LCN logical channel number [8b]
• Control data• Additional information
GFI
C/Dcontrol data
8b
LCGN
additional information
![Page 171: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/171.jpg)
20 April 2006 KU EECS 663 – Network Layer N-171
© James P.G. SterbenzITTC
X.25 CONS PSPDNX.25 Control Packet Type
• GFI• LCGN/LCN• Packet type identifier
– codepoint for signalling message
• Addressing information• Facilities (options)• User data field (payload)
1
LCGN
LCN
PTI
GFI
SAL DAL
DTE address
Ø Ø facility length
facilities
call user data(0 – 16B)
![Page 172: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/172.jpg)
20 April 2006 KU EECS 663 – Network Layer N-172
© James P.G. SterbenzITTC
X.25 CONS PSPDNX.25 Control Packet Addressing
• GFI + LCGN/LCN• Packet type identifier• Addressing information
– source and destination addr length– destination or source address
• TOA type of address [4b]• NPI numbering plan id [4b]• address: BCD encoding• zero filled to even byte
• Facilities (options)• User data field (payload)
1
LCGN
LCN
PTI
GFI
SAL DAL
DTE address
Ø Ø facility length
facilities
call user data(0 – 16B)
![Page 173: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/173.jpg)
20 April 2006 KU EECS 663 – Network Layer N-173
© James P.G. SterbenzITTC
X.25 CONS PSPDNX.25 Control Packet Options
• GFI + LCGN/LCN• Packet type identifier• Addressing information• Facilities (options)
– facility length [6b]– facilities
• User data field (payload)
1
LCGN
LCN
PTI
GFI
SAL DAL
DTE address
Ø Ø facility length
facilities
call user data(0 – 16B)
![Page 174: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/174.jpg)
20 April 2006 KU EECS 663 – Network Layer N-174
© James P.G. SterbenzITTC
X.25 CONS PSPDNX.25 Data Packet Format
• Header GFI– Q data qualifier bit (user defined)– D delivery confirmation (ACK) requested
• Logical group and channel #• Control data
– P(R) receive sequence no.– M more data 1 = control / 0 = data– P(S) send sequence no.
• User data field (payload)
Ø
group
P(R)
user data field(payload)
logical channel #
P(S)M
1ØDQ
128bmax
![Page 175: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/175.jpg)
20 April 2006 KU EECS 663 – Network Layer N-175
© James P.G. SterbenzITTC
X.25 CONS PSPDNX.25 Datagram Format
• Header GFI• Logical channel #• Control data
– sequence numbers (hop-by-hop)
• Addressing information– source and destination addr length– destination and source address
• Facilities• User data (payload)
– datagram ID (optional)
Ø
LCGN
P(R)
user data (payload)
logical channel #
P(S)Ø
1ØDQ
SAL DAL
dest DTE addr
source DTE addr
Ø Ø facility length
facilities
128bmax
datagram ID
![Page 176: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/176.jpg)
20 April 2006 KU EECS 663 – Network Layer N-176
© James P.G. SterbenzITTC
Network LayerN.4.3 Examples: ISDN and Frame Relay
N.1 Network layer functions and servicesN.2 Network service models and signallingN.3 Switches and packet StructureN.4 Examples
N.4.1 PSTNN.4.2 X.25 CONSN.4.3 ISDN and Frame RelayN.4.4 B-ISDN and ATMN.4.5 MPLSN.4.6 IP, ICMP and IPv6
N.5 Fast datagram routers
![Page 177: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/177.jpg)
20 April 2006 KU EECS 663 – Network Layer N-177
© James P.G. SterbenzITTC
ISDNOverview
• ISDN (integrated services digital network)– evolution of digital network services to end user– intended to support integrated services
• voice• data• eventually video
• Assumed that the PSTN would evolve into the GII– but the the Internet won
todo: expand
![Page 178: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/178.jpg)
20 April 2006 KU EECS 663 – Network Layer N-178
© James P.G. SterbenzITTC
Frame RelayOverview
• Frame relay [ITU I.233]– protocol to relay variable length packets
• Simple and connection-oriented– based on X.25 heritage– generally implemented over PVC (permanent virtual circuits)
• Widely deployed as an Internet service
todo: expand
![Page 179: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/179.jpg)
20 April 2006 KU EECS 663 – Network Layer N-179
© James P.G. SterbenzITTC
Network LayerN.4.4 Examples: B-ISDN and ATM
N.1 Network layer functions and servicesN.2 Network service models and signallingN.3 Switches and packet StructureN.4 Examples
N.4.1 PSTNN.4.2 X.25 CONSN.4.3 ISDN and Frame RelayN.4.4 B-ISDN and ATMN.4.5 MPLSN.4.6 IP, ICMP and IPv6
N.5 Fast datagram routers
![Page 180: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/180.jpg)
20 April 2006 KU EECS 663 – Network Layer N-180
© James P.G. SterbenzITTC
ATMOverview
• Key ideas emerged from fast packet switching– connection-oriented for high-line-speed processing and QOS– needed for 155Mb/s to the desktop
• Standards bodies made some very bad decisions– ITU: 53B cell (5B header + 48B payload)– ATM Forum tried to produce simple quick standards– required replacement of IP-based Internet infrastructure
• Meanwhile:– Ethernet 100b/s standards wars finally ended– IP-based globel Internet became irreplaceable
todo: expand
![Page 181: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/181.jpg)
20 April 2006 KU EECS 663 – Network Layer N-181
© James P.G. SterbenzITTC
Packet StructureExample: ATM Cells
• ATM cell format– fast packet switching– fine-grained statistical multiplexing
• Size determined by ITU committee compromise– 48B = avg(32, 64)
• 64 from US = min of proposals for data (and voice)• 32 from European PTTs to avoid voice echo cancellers
• Problems:– header tiny to keep overhead low; no room for seq #– nothing a power of 2– 48B + 5B = 53B; not even a multiple of 8
![Page 182: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/182.jpg)
20 April 2006 KU EECS 663 – Network Layer N-182
© James P.G. SterbenzITTC
Packet StructureExample: ATM AAL-5 Cells
PTI 0X1
VPI
VCI CLP
HEC
CRC-32 length CPI
CPCS-UU
SAR-SDU ≤ 40B
last cell – SDU type 1 other cells – SDU type 0
PTI 0X0
VPI
VCI CLP
HEC
SAR-SDU = 48B
header5B
payload
trailer
48B
40B
8B
• AAL 3/4 for data– 4B AAL header
• useless seq#
– 44B payload• not div 8
• AAL 5– no header– trailer last frag– forced on ITU
![Page 183: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/183.jpg)
20 April 2006 KU EECS 663 – Network Layer N-183
© James P.G. SterbenzITTC
ATMCurrent State
• ATM is (mostly) dead– some carrier infrastructure remains– some bit are used, e.g. for ADSL
• Fast packet switching technology is thriving– cell-based fast IP routers– MPLS as IP underlay for traffic engineering
![Page 184: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/184.jpg)
20 April 2006 KU EECS 663 – Network Layer N-184
© James P.G. SterbenzITTC
Network LayerN.4.5 Examples: MPLS
N.1 Network layer functions and servicesN.2 Network service models and signallingN.3 Switches and packet StructureN.4 Examples
N.4.1 PSTNN.4.2 X.25 CONSN.4.3 ISDN and Frame RelayN.4.4 B-ISDN and ATMN.4.5 MPLSN.4.6 Internet: DNS, IP, ICMP and IPv6
N.5 Fast datagram routers
![Page 185: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/185.jpg)
20 April 2006 KU EECS 663 – Network Layer N-185
© James P.G. SterbenzITTC
MPLSOverview
• MPLS (multiprotocol label switching) [RFC 3031]– intended as a label-swapping shim underlay to IP– originally intended to enable Internet fast packet switching
• without using ATM under IP
– fast datagram switching made this unnecessary• now used as a traffic engineering underlay by some ISPs
• RSVP-TE (RSVP for traffic engineering) [RFC 3209]– used for signalling label-switched paths– chosen over competing LDP [RFC 3036] proposal
• GMPLS: generalised MPLS [RFC 3741, 4238]– extensions for optical networks
![Page 186: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/186.jpg)
20 April 2006 KU EECS 663 – Network Layer N-186
© James P.G. SterbenzITTC
MPLSPacket Shim Format
network layer packet
stacked labels single label
S=1
label
COS TTL
link layer header
link layer header
label4B
shim
labelstack
link layer trailer link layer trailer
network layer packet
S=1
label
COS TTL
S=0
label
COS TTL
S=0
label
COS TTL
• MPLS label shim– switches swap label– stacked labels
• allows net hierarchy(ala VP/VC)
![Page 187: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/187.jpg)
20 April 2006 KU EECS 663 – Network Layer N-187
© James P.G. SterbenzITTC
Network LayerN.4.6 Examples: Internet
N.1 Network layer functions and servicesN.2 Network service models and signallingN.3 Switches and packet StructureN.4 Examples
N.4.1 PSTNN.4.2 X.25 CONSN.4.3 ISDN and Frame RelayN.4.4 B-ISDN and ATMN.4.5 MPLSN.4.6 Internet: DNS, IP, ICMP and IPv6
N.5 Fast datagram routers
![Page 188: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/188.jpg)
20 April 2006 KU EECS 663 – Network Layer N-188
© James P.G. SterbenzITTC
InternetFunctions and Protocols1
• Internet network-layer protocols– addressing : IP
• IPv4 [RFC 0791 / STD 0005]• subnetting [RFC 0950 / STD 0005]• CIDR [RFC 1519]• MAC layer address resolution: ARP [RFC 0826 / STD 0037]• IPv6 [RFC 2460, 3513]
– forwarding : IP• IP address lookup in routers
![Page 189: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/189.jpg)
20 April 2006 KU EECS 663 – Network Layer N-189
© James P.G. SterbenzITTC
InternetFunctions and Protocols2
• Internet network-layer protocols– routing : Lecture R
• interdomain EGP (exterior gateway protocol): BGP• interdomain IGP (interior gateway protocol): RIP, OSPF, IS-IS…
– signalling : ICMP• ICMPv4 [RFC 0792 / STD 0005]• ICMPv6 [RFC 2463]
– traffic management : Lecture Q• congestion avoidance and control (e.g. RED)• fair queuing• DiffServ• IntServ
![Page 190: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/190.jpg)
20 April 2006 KU EECS 663 – Network Layer N-190
© James P.G. SterbenzITTC
Internet ArchitectureOverview
• Interconnection of service provider network– tier 1 service providers,– lower teir (2 and 3) service provider networks – access networks– enterprise, campus, and home LANS
• No organised structure– since end of NSFNET
• Service model– best effort: no performance guarantees– providers may offer SLAs (service level agreements)
• generally by over-provisioning of network infrastructure
![Page 191: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/191.jpg)
20 April 2006 KU EECS 663 – Network Layer N-191
© James P.G. SterbenzITTC
Internet ArchitectureOverview: Regulation
• Minimal regulation– ICANN [www.icann.org]
internet corporation for assigned names and numbers• administers DNS TLDs (top level domains) & IP address blocks• registrars administer second level domains and subnets
– IANA [www.iana.org]internet assigned numbers authority
• administers various number- and name-spaces
• Repeated attempts to regulate– by government and traditional PSTN carriers– largely unsuccessful so far– ultimately futile due to global scope of Internet
![Page 192: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/192.jpg)
20 April 2006 KU EECS 663 – Network Layer N-192
© James P.G. SterbenzITTC
Internet ArchitectureOverview: Standards
• IAB (Internet Architecture Board) [www.iab.org]– advisory role to ISoc (Internet Society) [www.isoc.org]– committee of Internet Engineering Task Force (IETF)– Internet Research Task Force (IRTF) [www.irtf.org]
• IETF protocol standards [www.ietf.org]– but vendors implement what they wish…
subject to …– service providers offer what they wish…
subject to …– customer demand
![Page 193: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/193.jpg)
20 April 2006 KU EECS 663 – Network Layer N-193
© James P.G. SterbenzITTC
Internet ArchitectureDesign Principles
• ARPANET design principles– simple (relatively) stateless core for resiliency– most functionality at end systems– end-to-end addressing transparency– hourglass model (actually a bit later than original design)
• any transport protocol over IP over any link layer
• End-to-end arguments– what functionality must be located on end systems– what functionality should be in the network for performance
Recall: these two are not the same thing
![Page 194: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/194.jpg)
20 April 2006 KU EECS 663 – Network Layer N-194
© James P.G. SterbenzITTC
Names and AddressesOverview
• Address: identifier of a node– may only be machine readable (binary address)
• e.g. 10000001 11101101 01010111 00010010
– may be represented by human readable number• e.g. 129.237.87.18 or 148.88.3.47
– may be indirection by human friendly form (e.g. DNS name)• e.g. www.eecs.ku.edu or www.comp.lancs.ac.uk
• Name: global persistent identifier of an entity– e.g. James Philip Guenther Sterbenz
• Unfortunately “name” is commonly used for both
![Page 195: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/195.jpg)
20 April 2006 KU EECS 663 – Network Layer N-195
© James P.G. SterbenzITTC
Network LayerN.4.6 Examples: DNS
N.1 Network layer functions and servicesN.2 Network service models and signallingN.3 Switches and packet StructureN.4 Examples
N.4.1 PSTNN.4.2 X.25 CONSN.4.3 ISDN and Frame RelayN.4.4 B-ISDN and ATMN.4.5 MPLSN.4.6 Internet: DNS, IP, ICMP and IPv6
N.5 Fast datagram routers
![Page 196: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/196.jpg)
20 April 2006 KU EECS 663 – Network Layer N-196
© James P.G. SterbenzITTC
Domain Name SystemOverview
• DNS: domain name system [RFC 1034/1035 / STD 0013]– directory service for the Internet– resolves hostnames to IP addresses
• hostname is merely a human friendly address redirection
• DNS is– technically an application layer protocol
• runs over TCP or UDP
– an essential network infrastructurewhy?
![Page 197: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/197.jpg)
20 April 2006 KU EECS 663 – Network Layer N-197
© James P.G. SterbenzITTC
Domain Name SystemOverview
• DNS: domain name system [RFC 1034/1035 / STD 0013]– directory service for the Internet– resolves hostnames to IP addresses
• hostname is merely a human friendly address redirection
• DNS is– technically an application layer protocol
• runs over TCP or UDP
– in reality an essential network infrastructure servicehttp://www.eecs.ku.edu
rather thanhttp://129.237.87.18
![Page 198: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/198.jpg)
20 April 2006 KU EECS 663 – Network Layer N-198
© James P.G. SterbenzITTC
Domain Name SystemServices
• Hostname to IP addresses resolution– e.g. www.eecs.ku.edu to 129.237.87.18
![Page 199: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/199.jpg)
20 April 2006 KU EECS 663 – Network Layer N-199
© James P.G. SterbenzITTC
Domain Name SystemServices
• Hostname to IP addresses resolution• Hostname aliasing to canonical name
– allows stable DNS names for Web and mail servers, e.g.• www.sterbenz.org to abell.lunarpages.com:80
• www.ku.edu to raven.cc.ku.edu:80
• mail.ittc.ku.edu to stephens.ku.edu:25
– allows proper default behavior on incoming port 80• http://example.com to http://www.example.com
• many servers not properly configured to do this
![Page 200: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/200.jpg)
20 April 2006 KU EECS 663 – Network Layer N-200
© James P.G. SterbenzITTC
Domain Name SystemServices
• Hostname to IP addresses resolution• Hostname aliasing to canonical name• Load distribution
– set of IP addresses for one canonical name– typically used for replicated Web servers– e.g. www.cnn.com to 264.236.{16|24}.n
![Page 201: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/201.jpg)
20 April 2006 KU EECS 663 – Network Layer N-201
© James P.G. SterbenzITTC
Domain Name SystemImplementation
• Distributed database implemented in a hierarchy– many name servers– no relationship to IP addressing structure!
• Distributed implementation– improves scalability– decentralises administration
![Page 202: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/202.jpg)
20 April 2006 KU EECS 663 – Network Layer N-202
© James P.G. SterbenzITTC
Domain Name SystemName Structure
• Fully qualified domain name (FQDN): … . ⟨SLD⟩ . ⟨TLD⟩• TLD: top level domain
– originally assigned by IANA– now assigned by ICANN www.icann.org/tlds– gTLD: generic TLD– ccTLD: country-code TLD
• SLD: second level domain– may be defined by TLD policy– may be assigned by TLD registrar to domain owner
• n LD: n th level domain– may be defined by TLD or SLD policy– may be assigned by registrar/sub-registrar to domain owner
![Page 203: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/203.jpg)
20 April 2006 KU EECS 663 – Network Layer N-203
© James P.G. SterbenzITTC
Domain Name SystemName Structure: Generic TLDs
• gTLD: generic top level domain– assigned by ICANN www.icann.org/tlds– gTLD types
• reserved• infrastructure• unrestricted and restricted• unsponsored and sponsored• pseudo
• SLD: second level domain– policy based on each TLD– direct indicates that SLD assigned to domain owner
![Page 204: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/204.jpg)
20 April 2006 KU EECS 663 – Network Layer N-204
© James P.G. SterbenzITTC
Domain Name SystemName Structure: Reserved gTLDs
• DNS names reserved for special use [RFC 2606]
TLD Use.test reserved for DNS code testing.example online and documentation examples for valid DNS name.invalid online and documentation examples for invalid DNS name.localhost resolves to loopback address (typ. 127.0.0.1)
![Page 205: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/205.jpg)
20 April 2006 KU EECS 663 – Network Layer N-205
© James P.G. SterbenzITTC
Domain Name SystemName Structure: Infrastructure gTLDs
TLD Use.arpa reverse IP and service lookup.root used by Verisign root DNS servers
• Special names used for DNS infrastructure• .arpa originally used for transition to DNS
– ARPANET host tables to DNS databases
• Remains in use [RFC 3172]– reverse lookup IP address → DNS: in-addr.arpa ip6.arpa
– service mapping: e.164.arpa uri.arpa urn.arpa
• .root used by Verisign root servers– nonstandard but apparently used for end of zone file
![Page 206: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/206.jpg)
20 April 2006 KU EECS 663 – Network Layer N-206
© James P.G. SterbenzITTC
Domain Name SystemName Structure: Unrestricted gTLDs
• Among original seven 1980 TLDs [RFC 0920]
• Originally partitioned among– commercial entities and businesses– network service providers– non-profit organisations
• NSI mismanaged assignments & ignored IANA intent– registered to anyone willing to pay annual fee– distinction is now almost meaninglessTLD Original Use Registrar
.com commercial many
.net network service provider many
.org non-profit organisation ISOC Public Interest Reg.
![Page 207: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/207.jpg)
20 April 2006 KU EECS 663 – Network Layer N-207
© James P.G. SterbenzITTC
Domain Name SystemName Structure: Restricted gTLDs
• Among original– .edu .gov .edu among seven 1980 TLDs [RFC 0920]
– .nato created in late 1980s but replaced by .int– .int created in late 1080s for international use
• Registrar aets policy and restricts use
TLD Use Registrar.edu higher educational institution EDUCAUSE
.int international IANA
.gov US government US GSA
.mil US DOD (military) US DOD DISA
.nato NATO originally replaced by .int
![Page 208: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/208.jpg)
20 April 2006 KU EECS 663 – Network Layer N-208
© James P.G. SterbenzITTC
Domain Name SystemName Structure: Unsponsored gTLDs
• Among second batch of seven new TLDs in 2000• ICANN responsible for TLD policy
– registry delegated under ICANN contract– .biz and .info use and policies loosely applied, at best
TLD SLD Use Registrar.biz direct.info direct information Afilias
⟨first⟩.⟨last⟩⟨3-letter-prof-code⟩
direct
business Neulevel (Neustar)
.name individuals Global Name Registry
.pro professions RegistryPro
![Page 209: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/209.jpg)
20 April 2006 KU EECS 663 – Network Layer N-209
© James P.G. SterbenzITTC
Domain Name SystemName Structure: Sponsored gTLDs
• Among second batch of seven new TLDs in 2000• Sponsor represents narrow community• Responsible for TLD policy
– who can register– substructure, e.g. SLDs
TLD SLD Use Sponsor
.aeroIATA airport code
IATA airline designatordirectdirectdirect
air travel SITA
.coop co-ops DotCooperation
.museum museums MuseDoma
![Page 210: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/210.jpg)
20 April 2006 KU EECS 663 – Network Layer N-210
© James P.G. SterbenzITTC
Domain Name SystemName Structure: Sponsored gTLDs
• Newly approved TLDs in 2005– expected to come into use in 2006
• Many additional proposals pending to ICANN– .asia .geo .kid .mail .sco .web .xxx
TLD SLD Use Sponsor
.cat
.post yes post offices Universal Postal UnionE.164 digits
direct
Catalan language/culturemay not be used for cats
Fundació puntCAT
.mobi mobile devices Mobi JV corp. consortium
.tel telephony services Telname Ltd.
![Page 211: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/211.jpg)
20 April 2006 KU EECS 663 – Network Layer N-211
© James P.G. SterbenzITTC
Domain Name SystemName Structure: Pseudo-TLDs
• Used in DNS-like names– indicates routing within or to non-DNS networks– BITNET, CSNET, and UUCP
• if they had persisted might have been real DNS root entries
TLD Use.bitnet historic BITNET.csnet historic CSNET.uucp historic UUCP.local Apple Mac OSX bonjour/rendezvous zeroconf LAN protocol.onion Onion anonymous routing
![Page 212: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/212.jpg)
20 April 2006 KU EECS 663 – Network Layer N-212
© James P.G. SterbenzITTC
Domain Name SystemName Structure: Country Code TLD
• ccTLD: country code top level domain– based on [ISO 3166]
http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/index.html
– administered per nation• some with profit potential, e.g. .tv (Tuvalu)• many domain hacks possible e.g. jam.es
– examples.us .ca .uk .de .ch .jp
![Page 213: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/213.jpg)
20 April 2006 KU EECS 663 – Network Layer N-213
© James P.G. SterbenzITTC
Domain Name SystemName Structure: Country Code TLD
• ccTLD exceptions to [ISO 3166] codes– European Union domain .eu– United Kingdom uses .uk (ISO 3166 is gb)– Serbia and Montenegro still uses .yu ; .cs reserved– North Korea has no Internet connectivity; .kp is reserved
![Page 214: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/214.jpg)
20 April 2006 KU EECS 663 – Network Layer N-214
© James P.G. SterbenzITTC
Domain Name SystemName Structure: US ccTLD
• US country code TLD– policy specified in [RFC 1480]– US Dept. of Commerce is sponsor and determines policy– registry is Neustar (also the NANPA)
• SLD– some structured by state, e.g. .state.mn.us
(Kansas is using kansas.gov) .hopkinton.k12.ma.us.ci.cambridge.ms.us
– some reserved e.g. .kids.us
– non-conflicting direct assignments since 2002
![Page 215: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/215.jpg)
20 April 2006 KU EECS 663 – Network Layer N-215
© James P.G. SterbenzITTC
Domain Name SystemName Structure: US SLDs
• US country code SLDs– reserved SLDs– SLDs based on two-character state postal code
SLD.ccTLD Use Notes.fed.us federal government .gov far more common.nsn.us native soverign nations not commonly used.isa.us interstate agencies not commonly used.dni.us distributed national institutes not commonly used.⟨xx⟩.us state government RFC 1480 substructure
.kids.us restricted content deemed appropriate for kids under 13
compliance reviewed by content managers
![Page 216: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/216.jpg)
20 April 2006 KU EECS 663 – Network Layer N-216
© James P.G. SterbenzITTC
Domain Name SystemName Structure: US State 3LDs
• US state 3LDs for state governments and entities
3LD.SLD.ccTLD Use Notes.state.⟨xx⟩.us state government many states use ⟨xx⟩.gov.district.⟨xx⟩.us regional state entity not commonly used.gen.⟨xx⟩.us general use not commonly used
![Page 217: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/217.jpg)
20 April 2006 KU EECS 663 – Network Layer N-217
© James P.G. SterbenzITTC
Domain Name SystemName Structure: US State School 3LDs
• US state 3LD structure for schools and libraries
.4LD.3LD.SLD.ccTLD Use Notes.⟨shcool⟩.k12.⟨xx⟩.us public schools school or district name.⟨shcool⟩.pvt.k12.⟨xx⟩.us private schools.⟨name⟩.cc.⟨xx⟩.us community colleges.⟨name⟩.tec.⟨xx⟩.us vocational/technical.⟨library⟩.lib.⟨xx⟩.us libraries
![Page 218: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/218.jpg)
20 April 2006 KU EECS 663 – Network Layer N-218
© James P.G. SterbenzITTC
Domain Name SystemName Structure: US City and County 3LDs
• US ccTLD structure for cities and counties– city and county governments use .ci and .co– other entities, e.g.
• chambers of commerce, businesses, organisations
• Many states and most cities do not follow RFC 1480– e.g. kansas.gov lawrenceks.org opkansas.org
– chicken-&-egg: uneducated sysadmins serving naïve public
.4LD.3LD.SLD.ccTLD Use Notes. ci.⟨city⟩.⟨xx⟩.us city government hyphenated city name. co.⟨county⟩.⟨xx⟩.us county government hyphenated county name.⟨name⟩.⟨locality⟩.⟨xx⟩.us any other entity locality is city or county
![Page 219: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/219.jpg)
20 April 2006 KU EECS 663 – Network Layer N-219
© James P.G. SterbenzITTC
Domain Name SystemName Structure: UK ccTLD
• UK ccTLD: country code domain structure– most administered by Nominet www.nik.uk– structured SLD equivalent to gTLD (essentially a gSLD)
• All domain registrations must be at the 3rd level– strict rules for assignment in all but .co.uk and .or.uk
![Page 220: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/220.jpg)
20 April 2006 KU EECS 663 – Network Layer N-220
© James P.G. SterbenzITTC
Domain Name SystemName Structure: UK SLDs
SLD.ccTLD Use Restrictions.co.uk commercial.ltd.uk private limited co. algorithm based on co. name.me.uk individual person must be individual person.net.uk ISP with IP block and AS# based on ISP name.org.uk non-profit or public service.plc.uk public limited co. algorithm based on co. name.nic.uk network information centre only for use by UK NIC.sch.uk schools ⟨name⟩.⟨LEA⟩.sch.uk.ac.uk academic institutions JANET UKERA.gov.uk government Cabinet Office GSI.mod.uk military and related Ministry of Defense DINSA.nhs.uk National Health Service NHSIA.police.uk police services & organisations PITO
![Page 221: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/221.jpg)
20 April 2006 KU EECS 663 – Network Layer N-221
© James P.G. SterbenzITTC
Domain Name SystemName Structure: Examples
• Example DNS names• jpgs-laptop . eecs . ku . edu
user 4LD dept 3LD inst SLD gTLD
• wopr . labs . gte . comuser 4LD div 3LD corp SLD gTLD
• www . tik . ee . ethz . chhost 5LD group 4LD dept 3LD inst SLD Swiss ccTLD
• www . comp . lancs . ac . ukhost 5LD dept 4LD inst 3LD UK-SLD UK ccTLD
• jam.es
SLD ccTLC domain hack for name “James”
![Page 222: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/222.jpg)
20 April 2006 KU EECS 663 – Network Layer N-222
© James P.G. SterbenzITTC
Domain Name SystemName Server Structure
root DNS servers
.com DNS servers .org DNS servers .edu DNS servers
google.comDNS servers
amazon.comDNS servers
pbs.orgDNS servers
ku.eduDNS servers
umass.eduDNS servers
• Example: resolve www.amazon.com– client queries a root server to find .com TLD DNS server– client queries .com TLD server to get amazon.com server– client queries amazon.com DNS server to get IP address
![Page 223: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/223.jpg)
20 April 2006 KU EECS 663 – Network Layer N-223
© James P.G. SterbenzITTC
Domain Name SystemName Servers: Root
• Root name servers www.root-servers.org– responsible for resolution to proper TLD server– 13 root servers contracted identified as A – M
• Configuration file named.root– used by other DNS servers to locate root servers– contain list of A–M servers and their IP addresses– ftp://ftp.internic.net/domain/named.root
![Page 224: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/224.jpg)
20 April 2006 KU EECS 663 – Network Layer N-224
© James P.G. SterbenzITTC
Domain Name SystemRoot Name Servers
A VeriSign, Dulles VAB ISI, Marina Del Rey CAC Cogent, Herndon VA + 3D UMd, College Park MDE NASA Ames, Mountain View CAF ISC, 37 sitesG US DOD NICH ARL, Aberdeen MDI Autonomica/NORDUnet, Stockholm + 28 mirrorsJ VeriSign, Dulles VA + 16 mirrorsK RIPE, London + 16 mirrorsL ICANN, Los Angeles CaM WIDE, Tokyo
MK I
ACDBE GHJFL
selected mirrors shown
CI F
FI
FIK
F
F
F
FJMF
FF
FIJ
FK
F
FI
FK
FI
FIJKMFIKFJKM
F
F
FFF
I
I
IIJ
II
I
I
I
IJ
J
J
KK
K
![Page 225: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/225.jpg)
20 April 2006 KU EECS 663 – Network Layer N-225
© James P.G. SterbenzITTC
Domain Name SystemName Servers: TLD
• Root name server• Top-level domain (TLD) server
– responsible for all gTLD and ccTLD resolution– ICANN contracts each gTLD name server– nations responsible for administering or delegating ccTLD
![Page 226: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/226.jpg)
20 April 2006 KU EECS 663 – Network Layer N-226
© James P.G. SterbenzITTC
Domain Name SystemName Servers: Authoritative
• Root name server• Top-level domain (TLD) server• Authoritative DNS server
– DNS servers for organisation or corporate entity– provide authoritative hostname resolution
• hosts within its own domain• e.g. ku.edu Web and mail servers
– can be maintained by• organization itself (e.g. ku.edu)• outsourced to service provider (e.g. sterbenz.org)
![Page 227: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/227.jpg)
20 April 2006 KU EECS 663 – Network Layer N-227
© James P.G. SterbenzITTC
Domain Name SystemName Servers: Local
• Root name server• Top-level domain (TLD) server• Authoritative DNS server• Local name server (default name server)
– maintained by each service provider or enterprise– resolves host DNS queries– acts as a proxy, forwards query into hierarchy
![Page 228: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/228.jpg)
20 April 2006 KU EECS 663 – Network Layer N-228
© James P.G. SterbenzITTC
Domain Name SystemUpdating and Caching Records
• Root name server– contacted by local name server that can not resolve name– contacts authoritative name server if mapping not known– returns mapping to local name server
• When name server learns mapping it is cached– cache entries timeout (disappear) after some time
• TLD servers typically cached in local servers– thus root name servers not often visited
• Update/notify mechanisms [RFC 2136]
![Page 229: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/229.jpg)
20 April 2006 KU EECS 663 – Network Layer N-229
© James P.G. SterbenzITTC
Domain Name SystemEssential Tool: whois
• whois– client–server protocol– server listens to port 43
• uses whois database (attempts underway to standardise)• originally stored information on people (Internet white pages)• now stores domain registry information
• Client usage (CLI)– whois ⟨SLD⟩.⟨TLD⟩– whois ⟨3LD⟩.⟨SLD⟩.⟨ccTLD⟩ some structurd ccTLD e.g. .uk– Web interface: http://www.internic.net/whois
• only for gTLDs (but not .edu .mil .gov) try it whois ku.edu
whois lancs.ac.uk
![Page 230: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/230.jpg)
20 April 2006 KU EECS 663 – Network Layer N-230
© James P.G. SterbenzITTC
Domain Name SystemEssential Tool: dig
• dig (domain information grouper)– client program to query DNS server– more comprehensive information than nslookup– unfortunately not in Cygwin release (nor Windows)
• Usage (CLI)– dig ⟨DNS-name⟩
• returns DNS records and IP address(es) of ⟨DNS-name⟩– dig -x ⟨IP-address⟩
• reverse lookup: returns DNS name and records of ⟨IP-address⟩try it dig www.ku.edu
dig -x 129.237.33.3dig www.cnn.com
![Page 231: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/231.jpg)
20 April 2006 KU EECS 663 – Network Layer N-231
© James P.G. SterbenzITTC
Domain Name SystemEssential Tool: nslookup
• nslookup (name server lookup)– client program to query DNS server– use when dig not available (e.g. Windows boxes)
• Usage (CLI)– nslookup
• returns DNS server of local host and enters interactive mode– nslookup ⟨DNS-name⟩
• returns IP address(es) of ⟨DNS-name⟩– nslookup ⟨IP-address⟩
• reverse lookup: returns DNS name of ⟨IP-address⟩try it nslookup www.ku.edu
nslookup 129.237.33.3nslookup www.cnn.com
![Page 232: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/232.jpg)
20 April 2006 KU EECS 663 – Network Layer N-232
© James P.G. SterbenzITTC
Domain Name SystemWeb-Based Tools
• Many DNS and IP utilities on the Web– http://dnsstuff.com is particularly comprehensive– http://kloth.net/services
• Caveats– services aren’t being invoked locally
implication?
![Page 233: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/233.jpg)
20 April 2006 KU EECS 663 – Network Layer N-233
© James P.G. SterbenzITTC
Domain Name SystemWeb-Based Tools
• Many DNS and IP utilities on the Web– http://dnsstuff.com is particularly comprehensive– http://kloth.net/services
• Caveats– services aren’t being invoked locally
• e.g. ping will still test liveness but delay number is useless• e.g. traceroute will not trace route from local machine• local DNS information will not be obtained
– pages come and go on the Web
![Page 234: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/234.jpg)
20 April 2006 KU EECS 663 – Network Layer N-234
© James P.G. SterbenzITTC
Domain Name SystemDNS Lookup Iterated Query Example
• DNS iterated lookup example– jpgs.ittc.ku.edu
needs IP address ofgaia.cs.umass.edu
– ns1.ittc.ku.eduis local DNS server129.237.125.220obtained via DHCP
jpgs.ittc.ku.edu gaia.cs.umass.edu
0
![Page 235: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/235.jpg)
20 April 2006 KU EECS 663 – Network Layer N-235
© James P.G. SterbenzITTC
Domain Name SystemDNS Lookup Iterated Query Example
• DNS iterated lookup example1Q. A? gaia.cs.umass.edu tolocal DNS serverns1.ittc.ku.edu 129.237.125.220
ns1.ittc.ku.edu129.237.125.220local
gaia.cs.umass.edujpgs.ittc.ku.edu
1
![Page 236: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/236.jpg)
20 April 2006 KU EECS 663 – Network Layer N-236
© James P.G. SterbenzITTC
Domain Name SystemIterated Query Example
root• DNS lookup example1Q. local DNS query2Q. A? gaia.cs.umass.edu toroot namserver in named.rooth.rootservers.net 128.63.2.53
h.rootservers.net128.63.2.53
local
gaia.cs.umass.edujpgs.ittc.ku.edu
2
![Page 237: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/237.jpg)
20 April 2006 KU EECS 663 – Network Layer N-237
© James P.G. SterbenzITTC
Domain Name SystemIterated Query Example
root• DNS lookup example1Q. local DNS query2Q. A? gaia.cs.umass.edu toroot namserver in named.root2R. list of .edu NSs including
NS a3.nstld.comA 192.5.6.32
.edu
a3.nstld.com192.5.6.32
local
gaia.cs.umass.edujpgs.ittc.ku.edu
3
![Page 238: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/238.jpg)
20 April 2006 KU EECS 663 – Network Layer N-238
© James P.G. SterbenzITTC
Domain Name SystemIterated Query Example
root
local
• DNS lookup example1Q. local DNS query2QR. root DNS query/response3Q. A? gaia.cs.umass.edu toTLD a3.nstld.com 192.5.6.32
.edu
a3.nstld.com192.5.6.32
gaia.cs.umass.edujpgs.ittc.ku.edu
4
![Page 239: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/239.jpg)
20 April 2006 KU EECS 663 – Network Layer N-239
© James P.G. SterbenzITTC
Domain Name SystemIterated Query Example
root
local
• DNS lookup example1Q. local DNS query2QR. root DNS query/response3Q. A? gaia.cs.umass.edu toTLD a3.nstld.com 192.5.6.323R. list of .edu NSs including
NS ns1.umass.eduA 128.119.100.21NS unix1.cs.umass.eduA 128.119.40.22note: contains L3 & L4 entriesuse most specific &authorotative entry
.edu
auth
unix1.cs.umass.edu128.119.40.22
gaia.cs.umass.edujpgs.ittc.ku.edu
5
![Page 240: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/240.jpg)
20 April 2006 KU EECS 663 – Network Layer N-240
© James P.G. SterbenzITTC
Domain Name SystemIterated Query Example
root
local
• DNS lookup example1Q. local DNS query2QR. root DNS query/response3QR. TLD DNS query/response4Q. A? gaia.cs.umass.edu toauth unix1.cs.umass.edu
128.119.40.22
.edu
auth
unix1.cs.umass.edu128.119.40.22
gaia.cs.umass.edujpgs.ittc.ku.edu
6
![Page 241: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/241.jpg)
20 April 2006 KU EECS 663 – Network Layer N-241
© James P.G. SterbenzITTC
Domain Name SystemIterated Query Example
root
local
• DNS lookup example1Q. local DNS query2QR. root DNS query/response3QR. TLD DNS query/response4Q. A? gaia.cs.umass.edu toauth unix1.cs.umass.edu
128.119.40.22
4R. A 128.119.245.12
.edu
auth
gaia.cs.umass.edujpgs.ittc.ku.edu
7
![Page 242: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/242.jpg)
20 April 2006 KU EECS 663 – Network Layer N-242
© James P.G. SterbenzITTC
Domain Name SystemIterated Query Example
root
local
• DNS lookup example1Q. local DNS query2QR. root DNS query/response3QR. TLD DNS query/response4QR. auth DNS query/response1R. A 128.119.245.12
.edu
auth
jpgs.ittc.ku.edu gaia.cs.umass.edu128.119.245.12
8
![Page 243: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/243.jpg)
20 April 2006 KU EECS 663 – Network Layer N-243
© James P.G. SterbenzITTC
Domain Name SystemIterated Query Example
root
local
• DNS lookup example1Q. local DNS query2QR. root DNS query/response3QR. TLD DNS query/response4QR. auth DNS query/response1R. A 128.119.245.125Q. ping gaia.cs.umass.edu
.edu
auth
jpgs.ittc.ku.edu gaia.cs.umass.edu128.119.245.12
9
![Page 244: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/244.jpg)
20 April 2006 KU EECS 663 – Network Layer N-244
© James P.G. SterbenzITTC
Domain Name SystemIterated Query Example
• DNS lookup example1Q. local DNS query2QR. root DNS query/response3QR. TLD DNS query/response4QR. auth DNS query/response1R. A 128.119.245.125Q. ping gaia.cs.umass.edu5R. …reply from 128.119.245.12…
root
local
.edu
auth
jpgs.ittc.ku.edu gaia.cs.umass.edu128.119.245.12
10
![Page 245: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/245.jpg)
20 April 2006 KU EECS 663 – Network Layer N-245
© James P.G. SterbenzITTC
Domain Name SystemIterated Query Example
Iterated query performance? root
local
.edu
auth
1
![Page 246: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/246.jpg)
20 April 2006 KU EECS 663 – Network Layer N-246
© James P.G. SterbenzITTC
Domain Name SystemIterated Query Performance
• Iterated query performance problems– multiple round trips per host query– at least 4, perhaps more
Can we do better?
root
local
.edu
auth
1
23
4
2
![Page 247: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/247.jpg)
20 April 2006 KU EECS 663 – Network Layer N-247
© James P.G. SterbenzITTC
Domain Name SystemRecursive Queries
• Iterated query performance problems• Recursive queries
– name server resolves• reduces load on host• doesn’t reduce round trips
– support optional– many servers don’t allow
• load problems• security problems Lecture S
root
local
.edu
auth
1
23
4
![Page 248: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/248.jpg)
20 April 2006 KU EECS 663 – Network Layer N-248
© James P.G. SterbenzITTC
Domain Name SystemCaching
• Iterated query performance problems• Caching
– each name server caches queries– significantly reduces
• load on root and TLD servers• round trip latency
typically 1 or 2
– hosts cache mapping• no resolution for
recent mappings
root
local
.edu
auth
1
23
4
![Page 249: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/249.jpg)
20 April 2006 KU EECS 663 – Network Layer N-249
© James P.G. SterbenzITTC
Domain Name SystemReverse Lookup
• DNS provides mapping function– hostname to IP address
• Problem:– how to get hostname given IP address?
![Page 250: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/250.jpg)
20 April 2006 KU EECS 663 – Network Layer N-250
© James P.G. SterbenzITTC
Domain Name SystemReverse Lookup
• DNS provides mapping function– hostname to IP address
• Reverse lookup:– map IP address to hostname
![Page 251: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/251.jpg)
20 April 2006 KU EECS 663 – Network Layer N-251
© James P.G. SterbenzITTC
Domain Name SystemReverse Lookup Example
• Reverse lookup example– jpgs.ittc.ku.edu
needs hostname of128.119.245.12
jpgs.ittc.ku.edu 128.119.245.12
0
![Page 252: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/252.jpg)
20 April 2006 KU EECS 663 – Network Layer N-252
© James P.G. SterbenzITTC
Domain Name SystemReverse Lookup Example
• DNS iterated lookup example1Q. PNTR? 12.245.119.128.in-addr.arpa tolocal DNS serverns1.ittc.ku.edu 129.237.125.220
ns1.ittc.ku.edu129.237.125.220local
jpgs.ittc.ku.edu 128.119.245.12
1
![Page 253: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/253.jpg)
20 April 2006 KU EECS 663 – Network Layer N-253
© James P.G. SterbenzITTC
Domain Name SystemReverse Lookup Example
• DNS lookup example1Q. local reverse DNS query2Q. PNTR? 12.245.119.128.in-addr.arpa toroot namserver in named.root
root
local
jpgs.ittc.ku.edu 128.119.245.12
2
![Page 254: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/254.jpg)
20 April 2006 KU EECS 663 – Network Layer N-254
© James P.G. SterbenzITTC
Domain Name SystemReverse Lookup Example
root
local
jpgs.ittc.ku.edu
RIR
figwort.arin.net192.42.93.32
• DNS lookup example1Q. local reverse DNS query2Q. PNTR? 12.245.119.128.in-addr.arpa toroot namserver in named.root2R. NS figwort.arin.net
A 192.42.93.32zone 128.in-addr.arpa
128.119.245.12
3
![Page 255: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/255.jpg)
20 April 2006 KU EECS 663 – Network Layer N-255
© James P.G. SterbenzITTC
Domain Name SystemReverse Lookup Example
root
local
jpgs.ittc.ku.edu
RIR
figwort.arin.net192.42.93.32
• DNS lookup example1Q. local reverse DNS query2QR. root reverse DNS query3Q. PNTR? 12.245.119.128.in-addr.arpa to
RIR figwort.arin.net 192.5.6.32
128.119.245.12
4
![Page 256: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/256.jpg)
20 April 2006 KU EECS 663 – Network Layer N-256
© James P.G. SterbenzITTC
Domain Name SystemReverse Lookup Example
root
local
jpgs.ittc.ku.edu
RIR
auth
• DNS lookup example1Q. local reverse DNS query2QR. root reverse DNS query3Q. PNTR? 12.245.119.128.in-addr.arpa to
RIR figwort.arin.net 192.5.6.32
3R. NS ns1.umass.eduA 128.119.100.21zone 119.128.in-addr.arpa
128.119.245.12
ns1.umass.edu128.119.100.21
5
![Page 257: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/257.jpg)
20 April 2006 KU EECS 663 – Network Layer N-257
© James P.G. SterbenzITTC
Domain Name SystemReverse Lookup Example
root
local
jpgs.ittc.ku.edu
RIR
auth
• DNS lookup example1Q. local reverse DNS query2QR. root reverse DNS query3QR. RIR reverse DNS query4Q. PNTR? 12.245.119.128.in-addr.arpa to
ns1.umass.edu 128.119.100.21
ns1.umass.edu128.119.100.21
128.119.245.12
6
![Page 258: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/258.jpg)
20 April 2006 KU EECS 663 – Network Layer N-258
© James P.G. SterbenzITTC
Domain Name SystemReverse Lookup Example
root
local
jpgs.ittc.ku.edu
RIR
auth
• DNS lookup example1Q. local reverse DNS query2QR. root reverse DNS query3QR. RIR reverse DNS query4Q. PNTR? 12.245.119.128.in-addr.arpa to
ns1.umass.edu 128.119.100.21
4R. PTR gaia.cs.umass.eduA 128.119.245.112
128.119.245.12
7
![Page 259: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/259.jpg)
20 April 2006 KU EECS 663 – Network Layer N-259
© James P.G. SterbenzITTC
Domain Name SystemReverse Lookup Example
root
local
• DNS lookup example1Q. local reverse DNS query2QR. root reverse DNS query3QR. RIR reverse DNS query4QR auth reverse DNS query1R. PTR gaia.cs.umass.edu
A 128.119.245.112
RIR
auth
jpgs.ittc.ku.edu gaia.cs.umass.edu128.119.245.12
8
![Page 260: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/260.jpg)
20 April 2006 KU EECS 663 – Network Layer N-260
© James P.G. SterbenzITTC
Domain Name SystemName Structure: Alternative TLDs
• Alternative DNS root servers– generally used to bypass ICANN in providing new TLD
Is this a good thing?
![Page 261: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/261.jpg)
20 April 2006 KU EECS 663 – Network Layer N-261
© James P.G. SterbenzITTC
Domain Name SystemName Structure: Alternative TLDs
• Alternative DNS root servers– generally used to bypass ICANN in providing new TLD
• Strongly opposed by the IAB [RFC 2826]
• Parts of Internet not accessible to all users– DNS names may conflict with one another– poor accessibility from commercial ISPs
• most users don’t know how to configure DNS servers
– poor record of financial stability of providers• many have gone belly-up and abandoned domain holders
• Examples.中国 .shop .love
![Page 262: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/262.jpg)
20 April 2006 KU EECS 663 – Network Layer N-262
© James P.G. SterbenzITTC
Domain Name SystemUDP vs. TCP
• DNS uses UDP or TCP for transport• UDP
– generally used for small queries• name resolution and reverse name lookup
– avoids delay of TCP 3-way handshake– automatically retries with TCP if answer too long
• TCP– generally used for large queries
• e.g. zone tranfers
![Page 263: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/263.jpg)
20 April 2006 KU EECS 663 – Network Layer N-263
© James P.G. SterbenzITTC
Domain Name SystemDNS Message Header Format
• Header [12b]• Query/response fields
flagsID
QDCOUNT
NSCOUNT ARCOUNT
question(variable number, typ=1)
ANCOUNT
answer RRs(variable number)
authority RRs(variable number)
additional RRs(variable number)
12B
32 bits
![Page 264: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/264.jpg)
20 April 2006 KU EECS 663 – Network Layer N-264
© James P.G. SterbenzITTC
Domain Name SystemDNS Message Header Format
• ID– 16-bit identifier matches
query to response• Flags• Count fields
flagsIDQDCOUNT
NSCOUNT ARCOUNT
question(variable number, typ=1)
ANCOUNT
answer RRs(variable number)
authority RRs(variable number)
additional RRs(variable number)
12B
32 bits
![Page 265: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/265.jpg)
20 April 2006 KU EECS 663 – Network Layer N-265
© James P.G. SterbenzITTC
Domain Name SystemDNS Message Header Format
• ID• Flags
QR query/replyopcode [4b] 0=normal
1=inverse 2=stats reqAA reply is authoritativeTC truncated to 512BRD recursion desiredRA recursion availablercode: return code [4b]
1=normal 2=server fail 3=name err 4=not impl5=refused
ID
QDCOUNT
NSCOUNT ARCOUNT
question(variable number, typ=1)
ANCOUNT
answer RRs(variable number)
authority RRs(variable number)
additional RRs(variable number)
12B
32 bitsQR
AA
TC
RD
RA
rcode
opcode
000
![Page 266: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/266.jpg)
20 April 2006 KU EECS 663 – Network Layer N-266
© James P.G. SterbenzITTC
Domain Name SystemDNS Message Header Format
• ID• Flags• Count fields
QDCOUNT: # questionsANCOUNT: # answer RRsNSCOUNT: # authority RRsARCOUNT: # additional RRs
ID
QDCOUNT
NSCOUNT ARCOUNT
question(variable number, typ=1)
ANCOUNT
answer RRs(variable number)
authority RRs(variable number)
additional RRs(variable number)
12B
32 bits
flags
![Page 267: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/267.jpg)
20 April 2006 KU EECS 663 – Network Layer N-267
© James P.G. SterbenzITTC
Domain Name SystemDNS Query Format
• QDCOUNT typically = 1• Questions DNS queries
– QNAME: query DNS name• sequence of⟨count-byte⟩⟨string⟩pairs terminated by 0 byte
• ⟨count-byte⟩ is number ofcharacters in ⟨string⟩
• variable lengthno padding
– QTYPE– QCLASS:
1 = Internet address
flagsID
QDCOUNT = 1
NSCOUNT = 0 ARCOUNT = 0
QNAME
ANCOUNT = 0
QCLASS = 1QTYPE
![Page 268: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/268.jpg)
20 April 2006 KU EECS 663 – Network Layer N-268
© James P.G. SterbenzITTC
Domain Name SystemDNS Query Format
• QDCOUNT typically = 1• Questions: DNS queries
– QNAME– QTYPE [16b]
1=A IP address2=NS name server5=CNAME canonical name12=PTR pointer record13=HINFO host info15=MX mail exch. record
252=AXFR req for zone xfer255=ANY req all records
– QCLASS
flagsID
QDCOUNT = 1 ANCOUNT = 0
QCLASS = 1QTYPE
NSCOUNT = 0 ARCOUNT = 0
QNAME
![Page 269: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/269.jpg)
20 April 2006 KU EECS 663 – Network Layer N-269
© James P.G. SterbenzITTC
Domain Name SystemDNS Records
• DNS records: ⟨name, value, type TTL⟩• A record for DNS resolution
– name: DNS hostname– type: IP address
• NS record for resolution to authoritative name server– name: domain– type: IP address of authoritative name server for domain
• CNAME record for DNS alias resolution– name: alias DNS name, e.g. www.ku.edu– type: canonical (real) name, e.g. raven.cc.ku.edu
![Page 270: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/270.jpg)
20 April 2006 KU EECS 663 – Network Layer N-270
© James P.G. SterbenzITTC
Domain Name SystemDNS Records
• DNS records: ⟨name, value, type TTL⟩• MX record for mail server alias resolution
– name: DNS hostname– type: IP address
• PTR record for pointer queries (reverse lookup)– name: reverse IP DNS name under .in-addr.arpa– type: DNS name
• HINFO record– name: DNS hostname– type: CPU type and operating system
![Page 271: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/271.jpg)
20 April 2006 KU EECS 663 – Network Layer N-271
© James P.G. SterbenzITTC
Domain Name SystemDNS Response Format
• 3 types of responses– multiple per response
• Answers– ANCOUNT: # answer RRs– answer RR(s)
• Authority NS answers– NSCOUNT: # authority RRs– authority RRs
• Additional RRs– ARCOUNT: # additional RR– additional RR(s)
flagsID
QDCOUNT
NSCOUNT ARCOUNT
question(variable number, typ=1)
ANCOUNT
answer RRs(variable number)
authority RRs(variable number)
additional RRs(variable number)
![Page 272: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/272.jpg)
20 April 2006 KU EECS 663 – Network Layer N-272
© James P.G. SterbenzITTC
RDATA
NAME
Domain Name SystemDNS Response Format
• RRs: resource records– NAME: DNS name
• same format as QNAME– TYPE (same as QTYPE)– CLASS 1=Internet– TTL: time to live
• #sec. RR to be cached• 0 = do not cache
– RDLENGTH:• RDATA length in bytes
– RDATA: resource data• response to query• depends on TYPE
flagsID
QDCOUNT = 0
NSCOUNT ARCOUNT
ANCOUNT
CLASS = 1TYPE
TTL
RDLENGTH
![Page 273: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/273.jpg)
20 April 2006 KU EECS 663 – Network Layer N-273
© James P.G. SterbenzITTC
Domain Name SystemRecord Insertion Example
• Example: just created startup “Example Networks, Inc.”– register name example.com at a .com registrar– provide registrar with auth name server information
• primary: ns1.example.com 192.0.2.1
• secondary: ns2.example.com 192.0.2.2
– registrar inserts RRs into the .com TLD server:example.com, ns1.example.com, NSexample.com, ns2.example.com, NSns1.example.com, 192.0.2.1, Ans2.example.com, 192.0.2.2, A
– to get email and Web servers to resolve add:www.example.com, 192.0.2.10, Amail.example.com, 192.0.2.20, MX
![Page 274: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/274.jpg)
20 April 2006 KU EECS 663 – Network Layer N-274
© James P.G. SterbenzITTC
Network LayerN.4.6 Examples: IP, ICMP, and IPv6
N.1 Network layer functions and servicesN.2 Network service models and signallingN.3 Switches and packet StructureN.4 Examples
N.4.1 PSTNN.4.2 X.25 CONSN.4.3 ISDN and Frame RelayN.4.4 B-ISDN and ATMN.4.5 MPLSN.4.6 Internet: DNS, IP, ICMP and IPv6
N.5 Fast datagram routers
![Page 275: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/275.jpg)
20 April 2006 KU EECS 663 – Network Layer N-275
© James P.G. SterbenzITTC
Internet ProtocolOverview
• IP (Internet Protocol)– waist of the global information infrastructure (GII)– addressing and forwarding– version 4 (IPv4) [RFC 0791 / STD 0005]
• ICMP (Internet control message protocol)– signalling for IP– version 4 (ICMPv4) [RFC 0792 / STD 0005]
![Page 276: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/276.jpg)
20 April 2006 KU EECS 663 – Network Layer N-276
© James P.G. SterbenzITTC
Internet ProtocolIP Packet Format
• IP version number– rest of packet
version dependent
• maintained by IANA00 = reserved04 = IPv405 = ST (experimental)06 = IPv607 = TP/IX (proposed IPng)08 = PIP (proposed IPng)09 = TUBA (proposed IPng)15 = reserved
ver
![Page 277: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/277.jpg)
20 April 2006 KU EECS 663 – Network Layer N-277
© James P.G. SterbenzITTC
Internet ProtocolIPv4 Packet Format: Header Control Fields
• IP version number = 04• IHL: header length
– [32-b words]
• TOS: type of service– not generally used Lec Q
• TTL: time to live Lecture R
• Protocol to demux– TCP, UDP, etc.
• Header checksum– 1’s comp of 1’s comp Σ
04 total lengthIHL TOSfragment id
TTL protocol header checksumsource address
destination address
options(= hl – 20B)
payload(= length – hl – 20B)
flag frag offset
20B
![Page 278: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/278.jpg)
20 April 2006 KU EECS 663 – Network Layer N-278
© James P.G. SterbenzITTC
Internet ProtocolIPv4 Packet Format: Payload Related Fields
• Total length of datagram– header and data [B]
• Payload
04 total lengthIHL TOS
fragment id
TTL protocol header checksum
source address
destination address
options(= hl – 20B)
payload(= length – hl – 20B)
flag frag offsettotal
length
![Page 279: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/279.jpg)
20 April 2006 KU EECS 663 – Network Layer N-279
© James P.G. SterbenzITTC
Internet ProtocolIPv4 Packet Format: Addresses
• 32 bit IP addresses– host or router interface
• Destination address– used by forwarding
• Source addressmay be needed for:
• network to record senders• destination to reply
04 total lengthIHL TOS
fragment id
TTL protocol header checksum
source address
destination address
options(= hl – 20B)
payload(= length – hl – 20B)
flag frag offset
![Page 280: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/280.jpg)
20 April 2006 KU EECS 663 – Network Layer N-280
© James P.G. SterbenzITTC
Internet ProtocolIP Addresses
• All interfaces that use IP have an address– host–network interfaces
• many hosts have more than one
– router ports
• 32-bit addresses– e.g. www.eecs.ku.edu to 129.237.87.18
– example: ww.eecs.ku.edu (resolved via DNS to)10000001 111101101 01010111 00010010
• Dotted decimal notation:– b7b6 . b5b4 . b3b2 . b1b0 converted to decimal in 4×8bit chunks– example: 129.237.87.18
![Page 281: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/281.jpg)
20 April 2006 KU EECS 663 – Network Layer N-281
© James P.G. SterbenzITTC
Internet ProtocolIP Special Addresses
• Localhost– 0.0.0.0 during boot– 127/8 (127.x.x.x) ; generally 127.0.0.1
• Link local communication [RFC 3927]– 169.254/16 (169.254.X.X)
• Broadcast– 255.255.255.255 broadcast for this subnet– subnet address followed by all 1s: broadcast on subnet– generally restricted in use why?
• Example for documentation – 192.0.2/24 (192.0.2.X)
![Page 282: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/282.jpg)
20 April 2006 KU EECS 663 – Network Layer N-282
© James P.G. SterbenzITTC
Internet ProtocolIPv4 Address Assignment
• IP addresses not randomly assigned to hostswhy?
![Page 283: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/283.jpg)
20 April 2006 KU EECS 663 – Network Layer N-283
© James P.G. SterbenzITTC
Internet ProtocolIPv4 Address Assignment
• IP addresses not randomly assigned to hosts– every table would have to contain every Internet host
• billions of entries – bill
38.66.126.2 B128.10.26.45 A199.31.0.4 A200.23.16.4 A
38.66.126.2 X128.10.26.45 1199.31.0.4 2200.23.16.4 0
200.23.16.4
199.31.0.4
38.66.126.2
128.10.26.45
Tier1XISPA
ISPB38.66.126.2 1128.10.26.45 X199.31.0.4 X200.23.16.4 X
![Page 284: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/284.jpg)
20 April 2006 KU EECS 663 – Network Layer N-284
© James P.G. SterbenzITTC
Internet ProtocolIPv4 Address Hierarchy
• IP addresses assigned hierarchically– address aggregation dramatically improves scalability
• forwarding table only needs to contain network address• routing advertisements only contain network address prefix
200.23.16 A199.31.0 B
199.31.0 X200.23.16.4 0200.23.16.12 2200.23.16.45 1
200.23.16.4
200.23.16.12
199.31.0.4
200.23.16.45
Tier1XISPA
ISPB38.66.126.2 1200.23.16 X
![Page 285: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/285.jpg)
20 April 2006 KU EECS 663 – Network Layer N-285
© James P.G. SterbenzITTC
IP AddressingClass-Based Addressing Hierarchy
0 net hostA
10 net hostB
110 net hostC
1110 multicast addressD
1111 reservedE
128 networks
16K networks
2M networks
16M hosts
64K hosts
256 hosts
×
×
×
• Divide IP address into 3 level hierarchy– class, network address, host address– byte aligned– simple IP address lookup (3 major cases)– class D for multicast addresses Lecture R
![Page 286: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/286.jpg)
20 April 2006 KU EECS 663 – Network Layer N-286
© James P.G. SterbenzITTC
IP AddressingSubnets
10 net hostB16K networks × 64 subnets × 1024 hosts subnet
• Subnets [RFC 0950 / STD 0005]– originally way to divide address class within organisation– example: 6b subnet to class B– subnet mask
• Hosts in subnet share upper IP address bits– natural to cluster similar IP addresses– efficient IP routing to subnet– switched layer 2 LAN with no layer 3 routing Lecture L
![Page 287: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/287.jpg)
20 April 2006 KU EECS 663 – Network Layer N-287
© James P.G. SterbenzITTC
IP AddressingClass-Based Addressing Problems
• Principle behind division– A: very large network providers– B: large organisations– C: LANs
• Reality: rigid structure– doesn’t match all organisations perfectly– doesn’t match many organisations well
• especially class B: “three bears problem”
• Inefficient partitioning of address space– large fraction of unusable addresses– imminent exhaustion of IP address space led to…
![Page 288: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/288.jpg)
20 April 2006 KU EECS 663 – Network Layer N-288
© James P.G. SterbenzITTC
IP AddressingClassless Addressing (CIDR)
• CIDR: classless interdomain routing [RFC 1519]– eliminate assignment of IP address blocks by class– b7b6 . b5b4 . b3b2 . b1b0 /x
x-bit prefix = arbitrary number of network bits– example: 11001000 00010111 00010000 00000000
200.23.16.0/23
• Service providers get variable IP block– based on need from RIR (or NIR)
• Significant improvement in IP address use– at the cost of significant increase in complexity of IP lookup
![Page 289: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/289.jpg)
20 April 2006 KU EECS 663 – Network Layer N-289
© James P.G. SterbenzITTC
IP Address AssignmentAdministrative Delegation
• IP address blocks originally assigned directly by IANA– as class A, B, or C– later managed by InterNIC operated by NSI
• Address assignment now delegated [RFC 2050]– IANA manages and allocates
• http://www.iana.org/assignments/ipv4-address-space
– regional internet registries (RIR) allocate within their range• ARIN, RIPE, APNIC, LACNIC, AfriNIC• Number Resource Organization www.nro.net
– national internet registries operate within APNIC– local internet registries: typically ISPs
![Page 290: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/290.jpg)
20 April 2006 KU EECS 663 – Network Layer N-290
© James P.G. SterbenzITTC
IP Address AssignmentOrganisational Subnetworks
• Service provider assigns sub-blocks to subscribers– CIDR enables arbitrary subnetting at multiple levels
• Example– ISP assigned by 200.23.16.0/20 RIR (regional Internet registry)– ISP assigned subnets base on each organisation need
ISPA 11001000 00010111 00010000 00000000 200.23.16.0/20
Org0 11001000 00010111 00010000 00000000 200.23.16.0/23
Org1 11001000 00010111 00010010 00000000 200.23.18.0/23
Org2 11001000 00010111 00010100 00000000 200.23.20.0/23
…Org7 11001000 00010111 00011110 00000000 200.23.30.0/23
![Page 291: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/291.jpg)
20 April 2006 KU EECS 663 – Network Layer N-291
© James P.G. SterbenzITTC
IP Address AssignmentHosts
• Static IP address assignment– configuration file (e.g. Unix /etc/rc.config)
• Dynamic IP address assignment– DHCP: dynamic host configuration protocol
[RFC 2131] – DHCPv6 [RFC 3315]• assigns IP address, DNS server
– allows user to “plug into” network and it just works• most of the time
![Page 292: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/292.jpg)
20 April 2006 KU EECS 663 – Network Layer N-292
© James P.G. SterbenzITTC
IP Address AssignmentStrict Hierarchy with CIDR
org0200.23.16.0/23
org1200.23.18.0/23
org2200.23.20.0/23
org7200.23.30.0/23
ISPA200.23.30.0/20
ISPB199.31.0.0/16
org9199.31.0.0/23
199.31.0.0/16 B200.23.30.0/20 A
Tier1X
• Forwarding table entries unique to networksissue?
![Page 293: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/293.jpg)
20 April 2006 KU EECS 663 – Network Layer N-293
© James P.G. SterbenzITTC
IP Address AssignmentStrict Hierarchy
org0200.23.16.0/23
org1200.23.18.0/23
org2200.23.20.0/23
org7200.23.30.0/23
ISPA200.23.30.0/20
ISPB199.31.0.0/16
org9199.31.0.0/23
199.31.0.0/16 B200.23.30.0/20 A
Tier1X
• Forwarding table entries unique to networks– all organisations must change IP address with ISP change
![Page 294: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/294.jpg)
20 April 2006 KU EECS 663 – Network Layer N-294
© James P.G. SterbenzITTC
IP Address AssignmentLoose Hierarchy
org0200.23.16.0/23
org1200.23.18.0/23
org2200.23.20.0/23
org7200.23.30.0/23
ISPA200.23.30.0/20
ISPB199.31.0.0/16200.23.20.0/23
org9199.31.0.0/23
199.31.0.0/16 B200.23.30.0/20 A200.23.20.0/23 B
Tier1X
• Forwarding table entries not unique to networks– longest prefix is used for forwarding (most specific)
![Page 295: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/295.jpg)
20 April 2006 KU EECS 663 – Network Layer N-295
© James P.G. SterbenzITTC
IP AddressingNetwork Address Translation
• NAT: network address translation [RFC 2663, 3022]– translates public Internet address ↔ private addresses
Benefits?
org1200.23.18.0/23
org2172.16/12
org7172.16/12
ISPA200.23.30.0/20 199.31.0.0/16 B
200.23.30.0/20 A
Tier1X
NAT
NAT 200.23.18.0
200.23.20.5
![Page 296: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/296.jpg)
20 April 2006 KU EECS 663 – Network Layer N-296
© James P.G. SterbenzITTC
IP AddressingNetwork Address Translation
• NAT: network address translation [RFC 2663, 3022]– translates public Internet address ↔ private addresses
• Benefits– provide multiple private addresses for one public addresse
• e.g. home networks without buying multiple IP addresses– change private addresses without impacting ISP assignment– change ISP without impacting private addresses– private addresses not explicitly addressable
• helps resist attacks
![Page 297: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/297.jpg)
20 April 2006 KU EECS 663 – Network Layer N-297
© James P.G. SterbenzITTC
IP NATPrivate Address Space
• IP addresses reserved for private Internets [RFC 1918]– reserved by IANA
why?
![Page 298: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/298.jpg)
20 April 2006 KU EECS 663 – Network Layer N-298
© James P.G. SterbenzITTC
IP NATPrivate Address Space
• IP addresses reserved for private Internets [RFC 1918]– reserved by IANA– private addresses must not conflict with public addresses
• would prevent routing toward public Internet if conflict
CIDR Prefix Class Range
10/8 A 10 . 0 .0.0 – 10 .255.255.255
172.16/12 B 172. 16 .0.0 – 172. 31 .255.255
192.168/16 C 192.168.0.0 – 192.168.255.255
![Page 299: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/299.jpg)
20 April 2006 KU EECS 663 – Network Layer N-299
© James P.G. SterbenzITTC
IP NATImplementation
• NAT Implementationhow to translate multiple private addressesto one public Internet address?
![Page 300: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/300.jpg)
20 April 2006 KU EECS 663 – Network Layer N-300
© James P.G. SterbenzITTC
IP NATImplementation
• NAT Implementation– translate multiple private addr. to one public Internet addr.
• Hack using TCP ports– 16-bit port field allows almost 16K flows
• Outgoing translation– choose unused high port number new-portq– ⟨private-addri, portp⟩ → ⟨public-addr, new-portq⟩– store in NAT translation table
• Incoming translation– ⟨public-addr, new-portq⟩ → ⟨private-addri, portp⟩
Disadvantages?
![Page 301: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/301.jpg)
20 April 2006 KU EECS 663 – Network Layer N-301
© James P.G. SterbenzITTC
IP NATDisadvantages
• NAT disadvantages– eliminates end-to-end address transparency
• NATed devices not addressable from outside– difficult to be a server or peer
• ugly out-of-band hacks exist– violates protocol layer semantics
• restricts to transport protocols using TCP/UDP socket semantic
• NATs were controversial– but have been widely deployed– and aren’t likely to disappear
![Page 302: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/302.jpg)
20 April 2006 KU EECS 663 – Network Layer N-302
© James P.G. SterbenzITTC
IP NATExample
138.76.27.9 1128.119.40.186 2
• Private 10.0.0/24 network NATed behind 138.76.27.9
10.0.0.1
10.0.0.2
ISPNAT
138.76.27.9
org Public Private5001 10.0.0.1:33455007 10.0.0.2:33455042 10.0.0.1:21
128.119.40.186
0
![Page 303: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/303.jpg)
20 April 2006 KU EECS 663 – Network Layer N-303
© James P.G. SterbenzITTC
IP NATExample
138.76.27.9 1128.119.40.186 2
• Private 10.0.0/24 network NATed behind 138.76.27.91: 10.0.0.1 generates TCP seg. to server 128.119.40.186:80
10.0.0.1
10.0.0.2
ISPNAT
138.76.27.9
org Public Private
5007 10.0.0.2:33455042 10.0.0.1:21
S: 10.0.0.1:3345D: 128.119.40.186:80
128.119.40.186
1
![Page 304: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/304.jpg)
20 April 2006 KU EECS 663 – Network Layer N-304
© James P.G. SterbenzITTC
IP NATExample
138.76.27.9 1128.119.40.186 2
• Private 10.0.0/24 network NATed behind 138.76.27.91: 10.0.0.1 generates TCP seg. to server 128.119.40.186:802: NAT chooses unused port, translates, adds to table
10.0.0.1
10.0.0.2
ISPNAT
138.76.27.9
org Public Private5001 10.0.0.1:33455007 10.0.0.2:33455042 10.0.0.1:21
S: 10.0.0.1:3345D: 128.119.40.186:80 S: 138.76.27.9:5001
D: 128.119.40.186:80 128.119.40.186
2
![Page 305: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/305.jpg)
20 April 2006 KU EECS 663 – Network Layer N-305
© James P.G. SterbenzITTC
IP NATExample
138.76.27.9 1128.119.40.186 2
• Private 10.0.0/24 network NATed behind 138.76.27.91: 10.0.0.1 generates TCP seg. to server 128.119.40.186:802: NAT chooses unused port, translates, adds to table3: normal interaction with server
10.0.0.1
10.0.0.2
ISPNAT
138.76.27.9org Public Private
5001 10.0.0.1:33455007 10.0.0.2:33455042 10.0.0.1:21
S: 10.0.0.1:3345D: 128.119.40.186:80 S: 138.76.27.9:5001
D: 128.119.40.186:80 128.119.40.186
S: 138.76.27.9:5001D: 128.119.40.186:80
3
![Page 306: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/306.jpg)
20 April 2006 KU EECS 663 – Network Layer N-306
© James P.G. SterbenzITTC
IP NATExample
138.76.27.9 1128.119.40.186 2
• Private 10.0.0/24 network NATed behind 138.76.27.91: 10.0.0.1 generates TCP seg. to server 128.119.40.186:802: NAT chooses unused port, translates, adds to table4: normal interaction with server
10.0.0.1
10.0.0.2
ISPNAT
138.76.27.9org Public Private
5001 10.0.0.1:33455007 10.0.0.2:33455042 10.0.0.1:21
S: 10.0.0.1:3345D: 128.119.40.186:80 S: 138.76.27.9:5001
D: 128.119.40.186:80 128.119.40.186
S: 128.119.40.186:80D: 138.76.27.9:5001
4
![Page 307: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/307.jpg)
20 April 2006 KU EECS 663 – Network Layer N-307
© James P.G. SterbenzITTC
IP NATExample
138.76.27.9 1128.119.40.186 2
• Private 10.0.0/24 network NATed behind 138.76.27.91: 10.0.0.1 generates TCP seg. to server 128.119.40.186:802: NAT chooses unused port, translates, adds to table5: normal interaction with server
10.0.0.1
10.0.0.2
ISPNAT
138.76.27.9org Public Private
5001 10.0.0.1:33455007 10.0.0.2:33455042 10.0.0.1:21
S: 10.0.0.1:3345D: 128.119.40.186:80 S: 128.119.40.186:80
D: 138.76.27.9:5001 128.119.40.186
S: 128.119.40.186:80D: 138.76.27.9:5001
5
![Page 308: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/308.jpg)
20 April 2006 KU EECS 663 – Network Layer N-308
© James P.G. SterbenzITTC
IP NATExample
• Private 10.0.0/24 network NATed behind 138.76.27.91: 10.0.0.1 generates TCP seg. to server 128.119.40.186:802: NAT chooses unused port, translates, adds to table3: normal interaction with server6: NAT does reverse translation
138.76.27.9 1128.119.40.186 210.0.0.1
10.0.0.2
ISPNAT
138.76.27.9org Public Private
5001 10.0.0.1:33455007 10.0.0.2:33455042 10.0.0.1:21
S: 128.119.40.186:80D: 10.0.0.1:3345 S: 128.119.40.186:80
D: 138.76.27.9:5001 128.119.40.186
S: 128.119.40.186:80D: 138.76.27.9:5001
6
![Page 309: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/309.jpg)
20 April 2006 KU EECS 663 – Network Layer N-309
© James P.G. SterbenzITTC
Internet ProtocolIPv4 Packet Format: Option Fields
• Options– optional packet processing– not typically in fast path– many service providers
ignore options
• Examples [IANA]– security– source route– record route taken– router alert– timestamp
04 total lengthIHL TOS
fragment id
TTL protocol header checksum
source address
destination address
options(= hl – 20B)
payload(= length – hl – 20B)
flag frag offset
![Page 310: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/310.jpg)
20 April 2006 KU EECS 663 – Network Layer N-310
© James P.G. SterbenzITTC
Internet ProtocolIPv4 Fragmentation
• Packet too big for (sub)network must be fragmented– generally dictated by link layer MTU (maximum transfer unit)
• e.g. Ethernet MTU = 1500B
Performance issues?
![Page 311: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/311.jpg)
20 April 2006 KU EECS 663 – Network Layer N-311
© James P.G. SterbenzITTC
Internet ProtocolIPv4 Packet Format: Fragmentation Fields
• Fragment id– common ID for fragments
of a particular datagram
• Flags [3b]– 0: reserved– DF: may/don’t fragment– MF: last/more fragment
• Fragmentation offset– byte offset within datagram
04 total lengthIHL TOS
fragment idTTL protocol header checksum
source address
destination address
options(= hl – 20B)
payload(= length – hl – 20B)
frag offsetDF
MF
0
![Page 312: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/312.jpg)
20 April 2006 KU EECS 663 – Network Layer N-312
© James P.G. SterbenzITTC
Internet ProtocolIPv4 Fragmentation: Performance
• Packet too big for (sub)network must be fragmented– generally dictated by link layer MTU (maximum transfer unit)
• e.g. Ethernet MTU = 1500B
• Significant performance penalty– delay in fragmentation and reassembly– buffer space to hold partially fragmented/reassembled
Alternative?
![Page 313: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/313.jpg)
20 April 2006 KU EECS 663 – Network Layer N-313
© James P.G. SterbenzITTC
Internet ProtocolIPv4 Fragmentation: Path MTU Discovery
• Path MTU discovery IPv4 [RFC 1191] IPv6 [RFC 1981]– determine MTU of entire path– transport protocol uses to limit packet size
• Done automatically– sender sets DF flag (don’t fragment)– sender uses local link MTU or min(local-link-MTU,576)
• IP router at each hop– forwards if no fragmentation needed– discards and returns ICMP (3,4) message
• Sender retries with smaller MTU
![Page 314: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/314.jpg)
20 April 2006 KU EECS 663 – Network Layer N-314
© James P.G. SterbenzITTC
Internet ControlICMP
• Control messages for the Internet– carried in IP datagrams– not a well organised control plane
• unlike the PSTN
• ICMP message– type, code plus first 8 bytes of IP datagram causing error– http://www.iana.org/assignments/icmp-parameters– http://www.iana.org/assignments/icmpv6-parameters
• Not a well-organised control plane (unlike the PSTN)– rather a set of messages– used by other protocols and tools
![Page 315: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/315.jpg)
20 April 2006 KU EECS 663 – Network Layer N-315
© James P.G. SterbenzITTC
Internet ControlICMP Selected Message Types
Type Code Description0 0 echo reply (used by ping)3 X destination unreachable4 0 source quench (intended for congestion control)5 X redirect8 0 echo (used by ping)9 X router advertisement [RFC 1256]10 0 router solicitation11 0 TTL exceeded13 0 timestamp14 0 timestamp reply15 0 information request16 0 information reply
![Page 316: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/316.jpg)
20 April 2006 KU EECS 663 – Network Layer N-316
© James P.G. SterbenzITTC
Internet ControlICMP Selected Unreachable Codes
Type Code Description3 0 network unreachable3 1 host unreachable3 2 protocol unreachable3 3 port unreachable3 4 fragmentation needed and don’t fragment was set
![Page 317: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/317.jpg)
20 April 2006 KU EECS 663 – Network Layer N-317
© James P.G. SterbenzITTC
Internet ControlEssential Tool: ping
• ping used to test liveness of remote host– sends ICMP (8,0) echo message– destination replies with ICMP (0,0) echo reply message
• Client usage (CLI)– ping ⟨dnsname⟩
• DNS first resolves hostname to IP address– ping ⟨address⟩
try it ping www.eecs.ku.eduping www.comp.lancs.ac.uk
![Page 318: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/318.jpg)
20 April 2006 KU EECS 663 – Network Layer N-318
© James P.G. SterbenzITTC
Internet ControlEssential Tool: traceroute
• traceroute used map path HBH through network– sends UDP datagrams with increasing TTL and unlikely port– each hop drops and returns ICMP (11,0) TTL exceeded
• many network service provider do not replytraceroute times out and shows “*” for these hops
– done 3 times per hop; source computes and averages RTT– destination replies with ICMP (3,3) port unreachable
• Client usage (CLI)– traceroute ⟨dnsname⟩
• DNS first resolves hostname to IP address– traceroute ⟨address⟩
try it traceroute www.eecs.ku.edutraceroute www.comp.lancs.ac.uk todo: diag
![Page 319: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/319.jpg)
20 April 2006 KU EECS 663 – Network Layer N-319
© James P.G. SterbenzITTC
Internet ProtocolIPv6 Motivation
• IPv4 address space exhaustion– CIDR reduced problem with more efficient allocation– NATs reuse addresses in edge networks
• perhaps eliminating the address-motivation for IPv6 completely
• IPv4 didn’t provide explicit support for QoS– other than TOS field
• IPv4 was not designed for efficient processing– options– variable length header
• IPv6 chosen among a number of proposals
![Page 320: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/320.jpg)
20 April 2006 KU EECS 663 – Network Layer N-320
© James P.G. SterbenzITTC
Internet ProtocolIPv6 Overview
• IPv6 (Internet Protocol version 6)[RFC 2460] draft standard
• ICMPv6 (Internet control message protocol vers. 6)– signalling for IPv6 [RFC 4443]
• Support for QOS with flow label• More efficient structure for high-speed processing
– fixed 40B header– no options
• but next header can contain options rather than L4 header
– fragmentation not allowed
![Page 321: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/321.jpg)
20 April 2006 KU EECS 663 – Network Layer N-321
© James P.G. SterbenzITTC
Internet Protocol: IPv6Packet Format: Header Control Fields
• IP version number = 06• Traffic class [8b]
• Flow label [20b]– flow identifier for soft state
Lecture Q
• Next header– protocol # to demux– extension header
• Hop limit– used as IPv4 TTL
• note: no header checksum
06 flow labelclasspayload length hop limitnext hdr
source address
destination address
payload(= payload length)
![Page 322: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/322.jpg)
20 April 2006 KU EECS 663 – Network Layer N-322
© James P.G. SterbenzITTC
Internet Protocol: IPv6Packet Format: Payload Related Fields
• IP version number = 06• Payload length [B]• Payload
06 flow labelclass
payload length hop limitnext hdrl
source address
destination address
payload(= payload length)
![Page 323: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/323.jpg)
20 April 2006 KU EECS 663 – Network Layer N-323
© James P.G. SterbenzITTC
Internet Protocol: IPv6Packet Format: Addresses
• 128 bit IP addresses2128 = 3×1038 =
7×1023 addr/m2 on earth
• Structure in allocation– reduces usable number– IANA administers
06 flow labelclass
payload length hop limitnext hdrl
source address
destination address
payload(= payload length)
![Page 324: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/324.jpg)
20 April 2006 KU EECS 663 – Network Layer N-324
© James P.G. SterbenzITTC
Internet ProtocolIPv4 → IPv6 Transition
• If IPv6 replaces IPv6, how to transition?– “flag day” (won’t happen)– tunneling:
IPv6 carried in IPv4 datagrams among IPv4 routers– dual stack
• some IP routers now support both IPv4 and IPv6• permits slow transition with dual addressing
![Page 325: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/325.jpg)
20 April 2006 KU EECS 663 – Network Layer N-325
© James P.G. SterbenzITTC
Data Networking: Network LayerN.6 Fast Datagram Routers
N.1 Network layer functions and servicesN.2 Network architectureN.3 Network service models and signallingN.4 Switches and forwardingN.5 IP and ICMPN.6 Fast datagram routers
![Page 326: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/326.jpg)
20 April 2006 KU EECS 663 – Network Layer N-326
© James P.G. SterbenzITTC
Fast Datagram RoutersMotivation
• Connection-oriented fast packet switching– emerged in ATM standards, but ATM failed
• IP became waist of global network infrastructure– increased processing capability enabled fast IP lookups– apply fast packet switching to IP datagram forwarding
![Page 327: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/327.jpg)
20 April 2006 KU EECS 663 – Network Layer N-327
© James P.G. SterbenzITTC
Fast Datagram SwitchesArchitecture
• Fast packetswitch core
• Input processing– IP lookup– packet
classification
• Outputprocessing– packet
scheduling• fair queueing
input processing
management routing and signalling
switch fabric
classify
output processing
output scheduling
link
headerupdate
prefixesinput
processor
link
prefixesinput
processor
link
output scheduling
link
switch fabric
control
![Page 328: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/328.jpg)
20 April 2006 KU EECS 663 – Network Layer N-328
© James P.G. SterbenzITTC
Fast Datagram SwitchesThroughput
• Packet processing rate critical [packets/s]– packet processing must sustain at least average rate– critical path must sustain peak line rate for min size packets
![Page 329: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/329.jpg)
20 April 2006 KU EECS 663 – Network Layer N-329
© James P.G. SterbenzITTC
Fast Datagram SwitchesSoftware IP Lookup
• Longest prefix match• Critical parameters
– worst case lookup time• brute force: O (log2n)• n tens of thousands
– memory required– forwarding table
update time
payload 101 011 01
prefix pout fstate *00*001*0001*
11*
101*0101*
111*
10100*
pout payload 101 011 01
– hop count
checksum fix
![Page 330: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/330.jpg)
20 April 2006 KU EECS 663 – Network Layer N-330
© James P.G. SterbenzITTC
Fast Datagram SwitchesSoftware IP Lookup Example: Trie
• Many algorithms• Example: trie
– sparse binary tree– valid prefixes are root– lookup time O (a)
• a = number of address bits
101 011 01
*
0001 *
11 *
101 *
0101 *
111 *
10100*
0 1
01 10
1010
010
00 *
001 *000
=
101
![Page 331: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/331.jpg)
20 April 2006 KU EECS 663 – Network Layer N-331
© James P.G. SterbenzITTC
Fast Datagram SwitchesHardware IP Lookup
• Ternary CAM– 1, 0, X (don’t care)– expensive and complex
• relative to RAM
• Simultaneous match– lookup time constant
• O (1)
payload 101 011 01 pout payload 101 011 01
– hop count
checksum fix
prefix pout fstate * 00XXXX 001XXX 0001XX
11XXXX
101XXX 0101XX
111XXX
10100X
prioritymux
![Page 332: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/332.jpg)
20 April 2006 KU EECS 663 – Network Layer N-332
© James P.G. SterbenzITTC
Fast Datagram SwitchesPacket Classification
• Packet classification determines how packet treated– QOS or diffserv
– policy based routing
– security and DOS protection (e.g. firewalls)
– layer 4 and 7 switching
– active network processing
• Before queueing to meet most stringent delay class
![Page 333: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/333.jpg)
20 April 2006 KU EECS 663 – Network Layer N-333
© James P.G. SterbenzITTC
Fast Datagram SwitchesPacket Classification
• Multidimensionalclassification– policies may be hierarchal or overlap– precedence rules needed
• More complex than longest prefix match• Hardware and software implementation tradeoffs
payload TOS src adr
R0 R1
R5
R2
source address
TOS
R4
R3
![Page 334: ITTCCommunication Networksjpgs/courses/eecs663/lecture-network.pdfNetwork Layer Forwarding vs. Routing • Forwardingtransfers packets at each hop – each switch (router) makes decision](https://reader031.fdocuments.us/reader031/viewer/2022013020/5e6c70497b6da2039e289f11/html5/thumbnails/334.jpg)
20 April 2006 KU EECS 663 – Network Layer N-334
© James P.G. SterbenzITTC
Acknowledgements
Some content derived from textbook supplementary materials:• Kurose & Ross,
Computer Networking:A Top-Down Approach Featuring the Internet
• Sterbenz & Touch,High-Speed Networking:A Systematic Approach toHigh-Bandwidth Low-Latency Communicationhttp://hsn-book.sterbenz.org
Additional references: