Title: Emerging Internet Technologies
1Emerging Internet Technologies
- Harish Sethu
- Department of Electrical and Computer Engineering
- Drexel University
2Introduction and History
- More rapid growth than any medium in history
- New applications in education, business and
medicine - Impact on entertainment, politics and the
day-to-day lives of people - Internet still very young, and rapidly evolving.
3Introduction and History (Contd)
- The Origin
- Began as ARPANET in 1969 for the purpose of
sharing computing resources - ARPANET was funded by the Department of Defense
- Met with resistance even by university research
groups who did not wish to be linked to the
ARPANET - Used packet switching as opposed to circuit
switching
4Introduction and History (Contd)
5Introduction and History (Contd)
- Circuit Switching
- Physical connection established between
communicating end-points. - Requires setting up the connection before
communication - Guaranteed bandwidth
- Predictable and bounded delay
6Introduction and History (Contd)
- Packet Switching
- No physical connection established between
communicating end-points. - Data is sent in blocks called packets
- Each packet is routed independently
7Introduction and History (Contd)
8Introduction and History (Contd)
- Packet Switching vs. Circuit Switching
- Packets may arrive out-of-order
- Packets may be dropped, since network does not
guarantee bandwidth - Packet switching analogous to how we share road
space
9Introduction and History (Contd)
- The origins of packet switching
- The roles of Leonard Kleinrock, Paul Baran and
Donald Davies - BBNs proposal to use packet switching for
ARPANET - The travails of packet switching
10Introduction and History (Contd)
- Milestones
- Ethernet
- TCP/IP
- E-mail
- Commercialization of the Internet
- World Wide Web
11Introduction and History (Contd)
- Internet Organizations
- The Internet Society
- The Internet Architecture Board
- The Internet Engineering Task Force
- The Internet Engineering Steering Group
- ICANN
12Protocol Layering
- What is a protocol?
- What is protocol layering?
- The analogy to postal service.
- Why use protocol layering?
- Simplicity in design
- Flexibility in accommodating new technologies
- Compatibility of applications to systems
13Protocol Layering (Contd)
Application Layer
Application Layer
Transport Layer
Transport Layer
Network Layer
Network Layer
Access Layer
Access Layer
Physical Layer
Physical Layer
14Switches and Routers
- What is a switch and what is a router?
- The problem with achieving performance
- The need for buffers
15Switches and Routers (Contd)
- Input queueing and output queueing
16Switches and Routers (Contd)
- Head-of-line blocking with input queueing
17Switches and Routers (Contd)
- Output queueing and head-of-line blocking
18Switches and Routers (Contd)
- Commercial switches and routers
- Use both input and output queueing
- Use shared buffer for output queueing
- Use complex buffer organizations and queue
management strategies
19Virtual Circuit Switching
- Establishes a virtual circuit
- Routes using a virtual circuit identifier on each
packet - Packets with same identifier routed identically
by a switch - Facilitates easy management of flows of traffic
20Virtual Circuit Switching (Contd)
- Asynchronous Transfer Mode (ATM)
- Uses virtual circuits
- Proposed for providing performance guarantees as
in circuit switching using the packet switching
technology - Largely used today in the Internet backbone
21Routing
- What is routing?
- What is a route table?
- What is a best route?
22Routing (Contd)
- Link State Routing
- Periodically measure cost to each neighbor
- Distribute measurements to all routers in the
network - Each router has complete and current information
on the topology - Each router independently computes the best
path
23Routing (Contd)
- Distance-Vector Routing
- Each router maintains a distance-vector, the cost
to reach each destination from itself. - Exchanges distance-vectors with neighbors
- Determines the best path neighbor to reach
destination
24Routing (Contd)
- Routing in the Internet
- Distance-vector routing used in the Internet core
(BGP) - Link-state routing used within domains (OSPF)
- Border routers use both
25Flow Control and Congestion Avoidance
- What is flow control?
- What is congestion avoidance?
- Design goals
- responsiveness
- performance
- scalability
- simplicity
- fairness
26Flow Control and Congestion Avoidance (Contd)
- Flow control strategies
- Open loop flow control
- No feedback
- Pre-arranged self-regulation at the source
- Closed loop flow control
- Self-regulation based on feedback
27Flow Control and Congestion Avoidance (Contd)
- Open loop flow control
- Traffic descriptors
- Token bucket regulator
- token generation
- bucket capacity
28Flow Control and Congestion Avoidance (Contd)
29Flow Control and Congestion Avoidance (Contd)
- Closed loop flow control
- TCP uses closed loop flow control
- slow-start phase in TCP (exponential rate
increase) - congestion-avoidance phase in TCP (linear rate
increase) - time-outs and back-off
30Flow Control and Congestion Avoidance (Contd)
- A typical saw-tooth graph of TCP sending rate
31Flow Control and Congestion Avoidance (Contd)
- Problems with TCP
- Does not avoid congestion, reacts only after
congestion - Assumes time-outs are always due to congestion
- Always keeps pushing the network into congestion
32Flow Control and Congestion Avoidance (Contd)
- Random Early Detection (RED)
- Defines router actions designed to work with TCP
- Goal is congestion avoidance, at good performance
- Detects impending congestion based on queue
length - Drops packets before congestion occurs
- Triggers TCP to cut down its rate before it
causes congestion - Used in most Internet routers today
33Emerging Architectures and Services
- Onslaught of multimedia traffic
- Need for service beyond best effort
- What is Quality of Service?
- throughput guarantee
- delay bound
- delay-jitter bound
34Fairness in Traffic Management
- The most basic guarantee fairness.
- Why not just first-come-first-serve?
- Why not just packet-by-packet round-robin
scheduling?
35Fairness in Traffic Management (Contd)
- What is fair and how to be fair?
- All flows with unsatisfied demands should get an
equal share of the resource - No flow should be allocated more resources than
its demand - Fair queueing is a technique that achieves the
above two conditions for fairness to a
satisfactory extent. - Most Internet routers now implement some version
of a fair queueing discipline.
36The Integrated Services Model
- A new architectural framework to facilitate QoS
in the Internet. - Applications describe their traffic to the
network, and their demand for QoS - Network decides if the demand can be satisfied
before admitting the application traffic - Routers reserve bandwidths and buffers necessary
to satisfy demand
37The Integrated Services Model (Contd)
- Flow specifications
- TSpec
- burst size
- long-term average rate
- maximum packet size
- peak rate
- RSpec
- service rate
- delay bound
- packet loss probability
38The Integrated Services Model (Contd)
- Service Classes
- Guaranteed service
- Provides hard guarantees
- Requires per-flow management in the routers
- Suffers from scalability problems
- Controlled Load Service
- Service similar to best-effort in a lightly
loaded network - Meant for applications that can tolerate some
loss or delay - Requires application to specify traffic
description - Network decides whether or not to admit a new
flow for controlled load service
39The Integrated Services Model (Contd)
- Signaling (RSVP)
- RSVP is an IP signaling protocol
- Uses two messages Path and Resv
- Path messages go from the sender to the receiver,
containing traffic description - Resv messages go from receiver to the sender,
containing QoS requirements
40The Integrated Services Model (Contd)
- Flow of Path and Resv messages
41The Integrated Services Model (Contd)
- Multicasting with RSVP
- RSVP explicitly designed for multicast
- Multicast method based on data replication in the
network - Allows merging of Resv requests
- RSVP is a soft-state protocol
42The Differentiated Services Model
- Differentiated Serevices model is more scalable.
- Traffic is divided into classes
- Resources allocated on a per-class basis instead
of a per-flow basis - Defines a set of Per-Hop Behaviors (PHBs)
- Service by the network based on the PHB carried
in the packet - Standard PHBs
- Expedited Forwarding
- Assured Forwarding
43The Differentiated Services Model (Contd)
- Expedited Forwarding (EF-PHB)
- A request to forward the packet as quickly as
possible - Meant for applications with stringent delay
requirements - Requires strict regulation at source
- Requires careful capacity planning
44The Differentiated Services Model (Contd)
- Assured Forwarding (AF-PHB)
- Delivers with high assurance (a weaker guarantee)
- Consists of 4 classes and 3 drop precedence
levels - In-order delivery within each class
- Drop precedence defined at the source end
45The Differentiated Services Model (Contd)
- A potential DiffServ scenario
46Multi-Protocol Label Switching
- Uses the concept similar to that of virtual
circuits in IP - Uses fixed-size labels
- Originally designed to facilitate sending IP
packets over ATM - Packets are routed based on the label, instead of
destination address. - Supported by high-end routers today
- Achieves lower header overhead
47Multi-Protocol Label Switching (Contd)
- Achieves separation of control and forwarding
components
48Multi-Protocol Label Switching (Contd)
- A limitation of traditional routing
49Multi-Protocol Label Switching (Contd)
- MPLS extends routing functionality
50Concluding Remarks
- Internet is still evolving, and very rapidly.
- Service requirements of applications may change
new solutions such as active networking are
emerging. - Engineering the Internet continues to be both
challenging and rewarding.