2. A Client-Server Transaction
ā¢ (Almost) every network application is based on client-server
model:
ā A server process and one or more client processes
ā Server manages some resource
ā Server provides service by manipulating resource for clients
Client
process
Server
process
1. Client sends request
2. Server
handles
request
3. Server sends response4. Client
handles
response
Resource
Note: clients and servers are processes running on hosts
(can be same or different hosts)
3. Computer Networks
ā¢ A network is a hierarchical system of boxes and wires organized by geographical
proximity
ā LAN (local area network) spans building or campus
ā¢ Ethernet is most prominent example
ā¢ 802.11 (wireless) becoming more important
ā WAN (wide-area network) spans country or world
ā¢ Typically high-speed point-to-point copper or fiber lines
ā¢ Also microwave and satellite links in some situations
ā¢ An internetwork (internet) is an interconnected set of networks
ā Global IP Internet (uppercase āIā) is most famous example of an internet
(lowercase āiā)
ā¢ Letās look at how to build an internet from ground up
4. Lowest Level: Ethernet Segment
ā¢ Ethernet segment consists of collection of hosts connected by wires
(twisted pairs) to a hub - replaces common āwireā, ābusā
ā¢ Spans room or floor in a building
ā¢ Operation
ā Each Ethernet adapter has unique 48-bit address
ā Hosts send bits to any other host in chunks called frames
ā Hub slavishly copies each bit from each port to every other port
ā¢ Every adapter sees every bit; chooses which frames to hand to system
ā Alternative: switch copies bits only to proper destination port
host host host
hub
100 Mb/s100 Mb/s
ports
5. Next Level: Bridged Ethernet Seg
ā¢ Spans building or campus
ā¢ Bridges cleverly learn which hosts are reachable from which ports and then
selectively copy frames from port to port. How? Frames have source and
destination addressesā¦.
host host host host host
hub hubbridge
100 Mb/s 100 Mb/s
host host
hub 100 Mb/s 100 Mb/s
1 Gb/s
host host host
bridge
hosthost
hub
A B
C
X
Y
6. Conceptual View of LANs
ā¢ For simplicity, hubs, bridges, and wires are often shown as collection of
hosts attached to a single wire:
host host host...
7. Next Level: internets
ā¢ Multiple incompatible LANs can be physically connected by specialized
computers called routers
ā¢ The connected networks are called an internet
host host host
LAN 1
... host host host
LAN 2
...
router router router
WAN WAN
LAN 1 and LAN 2 might be completely different, totally
incompatible LANs (e.g., Ethernet and ATM)
8. Notion of an internet Protocol
How is it possible to send bits across incompatible LANs and WANs?
Solution: protocol software running on each host and router smooths out differences
between different networks
Implements an internet protocol (i.e., set of rules) that governs how hosts and routers
should cooperate when they transfer data from network to network
ā¢ TCP/IP is protocol (family) for global IP Internet
9. What Does an internet Protocol Do?
ā¢ 1. Provides naming scheme
ā Defines uniform format for host addresses
ā Each host (and router) is assigned at least one internet address that uniquely
identifies it
ā¢ 2. Provides delivery mechanism
ā An internet protocol defines a standard transfer unit (packet)
ā Packet consists of header and payload
ā¢ Header: contains info such as packet size, source and destination addresses
ā¢ Payload: contains data bits sent from source host
ā Encapsulation - key to network messages
10. Transferring Data via an internet
protocol
software
client
LAN1
adapter
Host A
data
data PH FH1
data PH
data PH FH2
LAN1 LAN2
data
data PH data PH FH2
(1)
(2)
(3)
(4) (5)
(6)
(7)
(8)
internet packet
LAN2 frame
protocol
software
LAN1
adapter
LAN2
adapter
Router
FH1
data PH
protocol
software
server
LAN2
adapter
Host B
Frame
11. Basic Internet Components
ā¢ An Internet backbone is a collection of routers
(nationwide or worldwide) connected by high-speed
point-to-point networks
ā¢ A Network Access Point (NAP) is a router that
connects multiple backbones (sometimes referred to
as peers)
ā¢ Regional networks are smaller backbones that cover
smaller geographical areas (e.g., cities or states)
ā¢ A point of presence (POP) is a machine that is
connected to the Internet
ā¢ Internet Service Providers (ISPs) provide dial-up or
direct access to POPs
12. Internet Domain Names
mil edu gov com
hmc berkeleymit
cs math
mike1
134.173.41.151
unnamed root
Knuth
134.173.42.100
amazon
www
208.216.181.15
First-level domain names
Second-level domain names
Third-level domain names
13. Internet Connections
ā¢ Clients and servers communicate by sending streams of bytes over connections:
ā Point-to-point, full-duplex (2-way communication), and reliable
ā¢ Socket is endpoint of connection
ā Socket address is IPaddress:port pair
ā¢ Port is 16-bit integer that identifies a process:
ā Ephemeral port: Assigned automatically on client when client makes
connection request
ā Well-known port: Associated with some service provided by a server (e.g., port
80 is associated with Web servers)
ā¢ Connection is uniquely identified by socket addresses of its endpoints (socket pair)
ā (clientaddr:clientport, serveraddr:serverport)
14. Network Layer: Protocols
forwarding
Routing protocols
ā¢path selection
ā¢e.g., RIP, OSPF, BGP
Network layer protocol (e.g., IP)
ā¢addressing conventions
ā¢packet format
ā¢packet handling conventions
Control protocols
ā¢error reporting
e.g. ICMP
Transport layer
Link layer
physical layer
Network
layer
Control protocols
- router āsignalingā
e.g. RSVP
15. 15
Network layer
ā¢ transport segment from
sending to receiving host
ā¢ on sending side
encapsulates segments into
datagrams
ā¢ on rcving side, delivers
segments to transport layer
ā¢ network layer protocols in
every host, router
ā¢ Router examines header
fields in all IP datagrams
passing through it
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
network
data link
physical
application
transport
network
data link
physical
application
transport
network
data link
physical
16. 16
Key Network-Layer Functions
ā¢ forwarding: move
packets from routerās
input to appropriate
router output
ā¢ routing: determine
route taken by
packets from source
to dest.
ā Routing algorithms
analogy:
ļ² routing: process of
planning trip from source
to dest
ļ² forwarding: process of
getting through single
interchange
17. A day in a life of a router
find path
forward packet, forward packet, forward packet,
forward packet...
find alternate path
forward packet, forward packet, forward packet,
forward packetā¦
repeat until powered off
17
18. IP Routing ā finding the path
ā¢ Path derived from information received from a
routing protocol
ā¢ Several alternative paths may exist
ā best path stored in forwarding table
ā¢ Decisions are updated periodically or as
topology changes (event driven)
ā¢ Decisions are based on:
ā topology, policies and metrics (hop count,
filtering, delay, bandwidth, etc.)
18
19. Chapter 5: Network Layer: Routing #19
Routing Design Space
ā¢ Routing has a large design space
ā who decides routing?
ā¢ source routing: end hosts make decision
ā¢ network routing: networks make decision
ā centralized control : one node builds tables for all routers
ā distributed control : each router builds own routing table
ā how many paths from source s to destination d?
ā¢ multi-path routing (several alternatives used)
ā¢ single path routing
ā will routing adapt to network traffic demand or
to topology changes?
ā¢ dynamic routing : tables adapt to state changes
ā¢ static routing : tables configured manually
ā ā¦
20. 20
Transport Gateway
ā¢ Similar to application gateways but at the level of TCP connections
ā independent of application code
ā requires client software to be aware of the gateway
Transport
Gateway
(SOCKS Server)
1 GET xxx..
data
:1080 SYN
ACK
SYN ACK
SYN ACK
A
B
:80 SYN
connection relay request
to B :80
ACK
data relay
OK
1
2 3
4
21. 21
The transport gateway is a layer 4 intermediate system. The example shows the SOCKS
gateways. SOKCS is a standard being defined by the IETF.
1. A opens a TCP connection to the gateway. The destination port is the well known SOCKS
server port 1080.
2. A requests from the SOCKS server the opening of a TCP connection to B. A indicates the
destination port number (here, 80). The SOCKS server does various checks and accepts or
rejects the connection request.
3. The SOCKS server opens a new TCP connection to B, port 80. A is informed that the
connection is opened with success.
4. Data between A and B is relayed at the SOCKS server transparently. However, there are
two distinct TCP connections with their own, distinct ack and sequence numbers.
Compared to an application layer gateway, the SOCKS server is simpler because it is not
involved in application layer data units; after the connection setup phase, it acts on a packet
by packet level. Its performance is thus higher.
However, it requires the client side to be aware of the gateway: it is not transparent.
Netscape and Microsoft browsers support SOCKS gateways.
22. 22
Application Layer Gateways
ā¢ Application layer gateway is a layer 7 intermediate system
ā normally not used according to the TCP/IP architecture
ā but mainly used for access control
ā also used for interworking issues
ā¢ Principle:
ā proxy principle: viewed by client as a server and by server as a client
ā supports access control restrictions, authentication, encryption, etc
HTTP
server
HTTP
client
gateway
logic
TCP/IPTCP/IP
HTTP
client
TCP/IP
HTTP
server
HTTP
Gateway
1 GET xxx.. 2 GET xxx..
3 data4 data
intranet Internet
A
B
23. 23
1. User at A sends an HTTP request. It is not sent to the final destination
but to the application layer gateway. This results from the configuration
at the client.
2. The gateway checks whether the transaction is authorized. Encryption
may be performed. Then the HTTP request is issued again from the
gateway to B as though it would be originating from A.
3. A response comes from B, probably under the form of a MIME header
and data. The gateway may also check the data, possibly decrypt, or reject
the data.
4. If it accepts to pass it further, it is sent to A as though it would be coming
from B.
Application layer gateways can be made for all application level protocols.
They can be used for access control, but also for interworking, for example
between IPv4 and IPv6.
24. Time Division Multiplexing
ā¢ Data rate of medium exceeds data rate of
digital signal to be transmitted
ā¢ Multiple digital signals interleaved in time
ā¢ May be at bit level of blocks
ā¢ Time slots preassigned to sources and fixed
ā¢ Time slots allocated even if no data
ā¢ Time slots do not have to be evenly
distributed amongst sources
27. TDM Link Control
ā¢ No headers and trailers
ā¢ Data link control protocols not needed
ā¢ Flow control
ā Data rate of multiplexed line is fixed
ā If one channel receiver can not receive data, the
others must carry on
ā The corresponding source must be quenched
ā This leaves empty slots
ā¢ Error control
ā Errors are detected and handled by individual
channel systems
29. ATM Defined
ā¢ āATM is a cell-switching and multiplexing technology
that combines the benefits of circuit switching
(guaranteed capacity and constant transmission
delay) with those of packet switching (flexibility and
efficiency for intermittent traffic)ā āCISCO.
ā¢ It utilizes fixed length cells to carry the information
30. Areas of Application
Infrastucture
Backbones
LAN
ā¢ LANs Asynchronous transfer mode (ATM) is a high-performance, cell-
oriented switching and multiplexing technology that utilizes fixed-length
packets to carry different types of traffic. ATM is a technology that will
enable carriers to capitalize on a number of revenue opportunities
through multiple ATM classes of services; high-speed local-area network
(LAN) interconnection; voice, video, and future multimedia applications in
business markets in the short term; and in community and residential
markets in the longer term.
32. Time Division Multiplexing
ā¢ Data rate of medium exceeds data rate of
digital signal to be transmitted
ā¢ Multiple digital signals interleaved in time
ā¢ May be at bit level of blocks
ā¢ Time slots preassigned to sources and fixed
ā¢ Time slots allocated even if no data
ā¢ Time slots do not have to be evenly
distributed amongst sources
35. TDM Link Control
ā¢ No headers and trailers
ā¢ Data link control protocols not needed
ā¢ Flow control
ā Data rate of multiplexed line is fixed
ā If one channel receiver can not receive data, the
others must carry on
ā The corresponding source must be quenched
ā This leaves empty slots
ā¢ Error control
ā Errors are detected and handled by individual
channel systems
38. Circuit Switching and Packet Switching
ā¢ ATM is circuit switched because it
establishes virtual circuits for
communication
ā¢ At the same time, the virtual circuits are
established over packet switched networks
ā¢ As such, it combines the benefits of circuit
switched and packet switched technologies
39. ATM Usage and Bandwidth
ā¢ In theory, ATM can be deployed from small
LANs to very large WANs
ā At present, it is used mostly on backbones, but
this may change in the future with declining prices
for ATM equipment
ā¢ ATM deployments can operate at speeds
starting in the Mbps range scaling up to Gpbs
range
ā Speed wise, it is very scalable
40. ATMās Efficiency
ā¢ It is an asynchronous technology and it uses
the links based on the need for information to
be transmitted
ā¢ ATM is based on fixed length cells and the
cells are small compared to many other forms
of transmission such as frame relay etc.
41. ATM Cell Basics
ā¢ ATM carries information based on fixed length cells
ā Compare this to the other packet switching technologies
such as Frame Relay etc. where each packet may be of a
different length
ā¢ The length of each cell is 53 Bytes
ā First 5 bytes are used as the cell header
ā Next 48 bytes are used as the payload carrying the data
43. Fixed Length Cell Advantage
ā¢ Delay or latency is significantly reduced
ā ATM is therefore suited for voice and video
transmission
ā¢ Fixed length cells make it easier to switch data
across multiple networks
ā ATM networks are built based on switches and not
routers
ā¢ Fixed length cell is similar to container based road
transportation
ā Some parallels can be drawn with respect to the
advantage of fixed length transportation based on the
benefits of container transportation
44. ATM Cell Header Format
ATM Cell HeaderāUNI Format
ATM Cell HeaderāNNI Format
45. ATM Devices
ā¢ ATM networks are built around two categories
of devices
ā ATM Switch
ā ATM end-point
ā¢ An ATM switch can be connected to either
another ATM switch or and ATM end-point
46. ATM End-Points
ā¢ Will contain and ATM end-point adapter
ā¢ Examples of ATM end-points
ā Workstations
ā LAN switches
ā Routers
ā DSU/CSU Units
ā Video Coder-Decoders (CODECs)
47. Devices on Which ATM Has Been
Implemented
ā¢ PC, workstation, and server network interface cards
ā¢ switched-Ethernet and token-ring workgroup hubs
ā¢ workgroup and campus ATM switches
ā¢ ATM enterprise network switches
ā¢ ATM multiplexers
ā¢ ATMāedge switches
ā¢ ATMābackbone switches
49. ATM Switches and Interfaces
ā¢ ATM switch supports two types of interfaces
ā User-Network Interface (UNI)
ā¢ Connects an ATM end-point to a switch
ā Network-Network Interface (NNI)
ā¢ Connects two ATM switches
50. 50
Need for Multiprotocol Label Switching (MPLS)
ā¢ Forwarding function of a conventional
router
ā a capacity demanding procedure
ā constitutes a bottle neck with increase in line
speed
ā¢ MPLS simplifies forwarding function by
taking a totally different approach by
introducing a connection oriented
mechanism inside the connectionless IP
networks
51. 51
Label Switching
ā¢ Decomposition of network layer routing
into control and forwarding components
applicable
ā¢ Label switching forwarding component
algorithm uses
ā forwarding table
ā label carried in the packet
ā¢ What is a Label ?
ā Short fixed length entity
52. MPLS Basics
ā¢ A Label Switched Path (LSP) is set up for each route
ā¢ A LSP for a particular packet P is a sequence of routers,
<R1,R2ā¦ā¦ā¦..Rn>
for all i, 1< i < n: Ri transmits P to R[i+1] by means
of a label
ā¢ Edge routers
ā analyze the IP header to decide which LSP to use
ā add a corresponding local Label Switched Path Identifier, in the form of a label
ā forward the packet to the next hop
53. 53
MPLS Basics contd..
ā¢ Subsequent nodes
ā just forward the packet along the LSP
ā simplify the forwarding function greatly
ā increase performance and scalability dramatically
ā¢ New advanced functionality for QoS, differentiated services can be introduced in the
edge routers
ā¢ Backbone can focus on capacity and performance
ā¢ Routing information obtained using a common intra domain routing protocol such as
OSPF
54. Basic Model for MPLS Network
MPLS
LSR = Label Switched Router
LER = Label Edge Router
LER
LER
LSR
LER
LSR
LSR
IP
MPLS
IP
Internet
LSR
55. 55
MPLS Benefits
Comparing MPLS with existing IP core and
IP/ATM technologies, MPLS has many
advantages and benefits:
ā¢ The performance characteristics of layer 2
networks
ā¢ The connectivity and network services of
layer 3 networks
ā¢ Improves the price/performance of
network layer routing
ā¢ Improved scalability
56. 56
MPLS Benefits contd..
ā¢ Improves the possibilities for traffic
engineering
ā¢ Supports the delivery of services with QoS
guarantees
ā¢ Avoids need for coordination of IP and ATM
address allocation and routing information