Title: Overview
1Overview
- COS 461 Computer Networks
- Spring 2006 (MW 130-250 in Friend 109)
- Jennifer Rexford
- Teaching Assistant Mike Wawrzoniak
- http//www.cs.princeton.edu/courses/archive/spring
06/cos461/
2Goals of Todays Class
- Course overview (45 minutes)
- Review of the material in the course
- Preparation for Wednesdays exam
- Course evaluations (15 minutes)
- Scan-tron form
- Written responses
- Assignment 3 (20 minutes)
- Overview of assignment from Mike W
- Opportunity to ask questions
3Important Dates
- Second midterm exam Wednesday May 3
- Exam during class time (130-250pm)
- Room 104 in the CS building, just as last time
- Open notes, open book, and open slides
- Covering material from lecture 11 onward
- Assignment 3 Tuesday May 16 at 9pm
- Assignment 3 is due on Deans Date at 9pm
- Office hours and mailing list during reading
period - Research projects Tuesday May 16 at 9pm
- Write-up of research projects due on Deans Date
- Send via e-mail to jrex_at_cs.princeton.edu
4Goals of This Course
- Skill network programming
- Socket programming
- Designing and implementing protocols
- Knowledge how the Internet works
- IP protocol suite
- Internet architecture
- Applications (Web, e-mail, P2P, VoIP, )
- Insight key concepts in networking
- Protocols
- Layering
- Resource allocation
- Naming
5IP Suite End Hosts vs. Routers
host
host
HTTP message
HTTP
HTTP
TCP segment
TCP
TCP
router
router
IP packet
IP packet
IP packet
IP
Ethernet interface
Ethernet interface
SONET interface
Ethernet interface
SONET interface
6Shuttling Data at Different Layers
- Different devices switch different things
- Physical layer electrical signals (repeaters and
hubs) - Link layer frames (bridges and switches)
- Network layer packets (routers)
Application gateway
Transport gateway
Frameheader
Packetheader
TCPheader
User data
Router
Bridge, switch
Repeater, hub
7Physical Layer Repeaters and Hubs
- Analog electronic devices
- Continuously monitors electrical signals on each
LAN - Transmits an amplified copy
hub
hub
hub
hub
8Link Layer Bridges and Switches
- Connects two or more LANs at the link layer
- Extracts destination address from the frame
- Looks up the destination in a table
- Forwards the frame to the appropriate LAN segment
B
host
host
host
host
A
C
Bridge
switch
host
host
host
host
D
9Self Learning Building the Table
- When a frame arrives
- Inspect the source MAC address
- Associate the address with the incoming interface
- Store the mapping in the switch table
- Use a time-to-live field to eventually forget the
mapping - When frame arrives with an unfamiliar
destination - Forward out all interfaces
- except where frame arrived
- Hopefully wont happen often
B
C
A
D
10Network Layer Routers
Processor
Switching Fabric
Line card
Line card
Line card
Line card
Line card
Line card
11Hubs, Switches, and Routers
- Repeaters and hubs
- Analog devices
- Relay electrical signals
- Bridges and switches
- Forwards frames based on the MAC address
- Self-learning to construct the switch table
- Constructing a spanning tree to broadcast frames
- Routers
- Forwards packets based on the IP address
- Routing protocols to construct the forwarding
tables - Require more configuration than switches do
12Two-Tiered Routing Architecture
- Goal distributed management of resources
- Internetworking of multiple networks
- Networks under separate administrative control
- Solution two-tiered routing architecture
- Intradomain inside a region of control
- Okay for routers to share topology information
- Routers configured to achieve a common goal
- Interdomain between regions of control
- Not okay to share complete information
- Networks may have different/conflicting goals
- Led to the use of different protocols
13Autonomous Systems (ASes)
Path 6, 5, 4, 3, 2, 1
4
3
5
2
6
7
1
Web server
Client
14Internet Routing Architecture
- Divided into Autonomous Systems
- Distinct regions of administrative control
- Routers/links managed by a single institution
- Service provider, company, university,
- Hierarchy of Autonomous Systems
- Large, tier-1 provider with a nationwide backbone
- Medium-sized regional provider with smaller
backbone - Small network run by a single company or
university - Interaction between Autonomous Systems
- Internal topology is not shared between ASes
- but, neighboring ASes interact to coordinate
routing
15Interdomain Routing (Between ASes)
- Support local routing policies
- Advertise the AS-level paths for each prefix
- Allow each AS to decide which path to use
- and whether to announce path to neighbors
- Common business relationships
- Customer-provider
- Customer can reach all destinations through
provider - Provider ensures rest of Internet can reach
customer - Peer-peer
- Peers transit traffic between respective
customers - but not to other peers and providers
16Two Kinds of Routing Protocols
Link State
Vectoring
- Each router knows little about network topology
- Only best next-hops are chosen by each router for
each destination. - Best end-to-end paths result from composition of
all next-hop choices - Does not require any notion of distance
- Does not require uniform policies at all routers
- Examples RIP, BGP
- Topology information is flooded within the
routing domain - Best end-to-end paths are computed locally at
each router. - Best end-to-end paths determine next-hops.
- Based on minimizing some notion of distance
- Works only if policy is shared and uniform
- Examples OSPF, IS-IS
17Overlay Routing
- Overlay on the network
- Hosts serve as nodes and make forwarding
decisions - Tunnels serve as links that carry the packets
Princeton
Yale
Two-hop (application-level) Berkeley-to-Princeton
route
application-layer router
Berkeley
18Peer-to-Peer Protocols
- End hosts communicating directly with each other
- File sharing (music, movies)
- Voice over IP (telephone calls)
- Challenge
- Determining who has the data you want
- Handling churn as users come and go
- Three approaches
- Central server client sends query to the server
- Flooding client floods query throughout the
network - Hybrid client sends query to super-node, and
super-nodes flood amongst themselves
19E-Mail
- End hosts sending e-mail messages
- Asynchronous communication
- Determining how to relay the message to recipient
- Mail agents and mail servers
- Special DNS query to identify the mail server
- Forwarding of messages from one server to the
next - Protocols for recipients to retrieve the e-mail
20Web
- Simpler client-server paradigm
- Clients (e.g., browsers) send requests
- Servers send responses
- Optional proxies in between
- Ingredients of the Web
- Uniform Resource Locator (URL)
- HyperText Markup Language (HTML)
- HyperText Transfer Protocol (HTTP)
- Stateless protocol
- Each request-response pair treated independently
- Improves the scalability of the server
- Separate mechanisms (e.g., cookies) for state
21Resource Meta-Data
- Meta-data
- Information relating to a resource
- but not part of the resource itself
- Example meta-data
- Size of a resource
- Last modification time
- Type of the content
- Transfer encoding format
- Concept borrowed from e-mail protocols
- Multipurpose Internet Mail Extensions (MIME)
- Data format classification (e.g., Content-Type
text/html) - Enables clients to automatically launch a viewer
22Internet of Today
- Internet has evolved substantially
- From a small research curiousity
- To a world-wide communications infrastructure
- Yet, some early design decisions remain
- Packet switching
- The narrow waist of IP
- Best-effort service model
- Limited state inside the network
- Protocols based on trust
- And these are meeting real challenges
- Demands for quality of service guarantees
- Serious security threats
- Challenges of network management
23Internet of the Future
- A need for a change?
- Circuit switching?
- Guaranteed service?
- Strict notions of identity?
- Central authorities?
- Open question
- Is it possible to have an inter-network that
supports such rapid evolution of new services - while providing performance guarantees
security? - New initiatives
- Clean-slate rethinking of the Internet design
- See www.geni.net