COS 461: Computer Networks



Similar documents
COS 461: Computer Networks

Lecture 1: Course Introduction" CSE 222A: Computer Communication Networks Alex C. Snoeren

Network Security TCP/IP Refresher

Mobile IP Network Layer Lesson 02 TCP/IP Suite and IP Protocol

Objectives of Lecture. Network Architecture. Protocols. Contents

IT4405 Computer Networks (Compulsory)

Network Programming TDC 561

You will work in groups of two on the labs. It is OK to talk to others and help each other in the lab.

Protocols. Packets. What's in an IP packet

CSE331: Introduction to Networks and Security. Lecture 8 Fall 2006

CS101 Lecture 19: Internetworking. What You ll Learn Today

Lecture 28: Internet Protocols

Network Technologies

Internetworking. Problem: There is more than one network (heterogeneity & scale)

Chapter 9. IP Secure

CDA Introduction to Computer Networks

Ethernet. Ethernet. Network Devices

Chapter 3. TCP/IP Networks. 3.1 Internet Protocol version 4 (IPv4)

CSE 3461 / 5461: Computer Networking & Internet Technologies

UPPER LAYER SWITCHING

RARP: Reverse Address Resolution Protocol

First Workshop on Open Source and Internet Technology for Scientific Environment: with case studies from Environmental Monitoring

CSCI-1680 :: Computer Networks

TCP/IP Networking An Example

Data Communication Networks and Converged Networks

What is this Course All About

Firewall Implementation

Indian Institute of Technology Kharagpur. TCP/IP Part I. Prof Indranil Sengupta Computer Science and Engineering Indian Institute of Technology

CSE 3214: Computer Network Protocols and Applications

IP Network Layer. Datagram ID FLAG Fragment Offset. IP Datagrams. IP Addresses. IP Addresses. CSCE 515: Computer Network Programming TCP/IP

Network layer: Overview. Network layer functions IP Routing and forwarding

Course Overview: Learn the essential skills needed to set up, configure, support, and troubleshoot your TCP/IP-based network.

OS/390 Firewall Technology Overview

Internet Protocol: IP packet headers. vendredi 18 octobre 13

Overview of Computer Networks

CPSC 4550 Computer Networks Fall 2012, Section 0

Slide 1 Introduction cnds@napier 1 Lecture 6 (Network Layer)

Internet Control Protocols Reading: Chapter 3

Assignment 6: Internetworking Due October 17/18, 2012

Solution of Exercise Sheet 5

Introduction: Why do we need computer networks?

Life of a Packet CS 640,

CS 457 Lecture 19 Global Internet - BGP. Fall 2011

IP - The Internet Protocol

Address Resolution Protocol (ARP)

Interconnection of Heterogeneous Networks. Internetworking. Service model. Addressing Address mapping Automatic host configuration

Exam 1 Review Questions

Computer Networks CS321

Internet Technologies. World Wide Web (WWW) Proxy Server Network Address Translator (NAT)

VLAN und MPLS, Firewall und NAT,

Analyzing 6LoWPAN/ZigBeeIP networks with the Perytons Protocol Analyzer May, 2012

Lecture 2-ter. 2. A communication example Managing a HTTP v1.0 connection. G.Bianchi, G.Neglia, V.Mancuso

San José State University College of Engineering/Computer Engineering Department CMPE 206, Computer Network Design, Section 1, Fall 2015

Strategies. Addressing and Routing

Data Communication I

architecture: what the pieces are and how they fit together names and addresses: what's your name and number?

IP Addressing Introductory material.

Overview. Securing TCP/IP. Introduction to TCP/IP (cont d) Introduction to TCP/IP

1 Data information is sent onto the network cable using which of the following? A Communication protocol B Data packet

INTERNET SECURITY: THE ROLE OF FIREWALL SYSTEM

Network Layer IPv4. Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS. School of Computing, UNF

Outline. CSc 466/566. Computer Security. 18 : Network Security Introduction. Network Topology. Network Topology. Christian Collberg

Communications and Networking

Chapter 4 Network Layer

Kick starting science...

Agenda. Distributed System Structures. Why Distributed Systems? Motivation

Transport and Network Layer

How To Understand The Internet Of S (Netware)

Lecture 8. IP Fundamentals

Lecture 1: Course Introduction"

Internetworking With TCP/IP

The Internet. Internet Technologies and Applications

Introduction to Computer Networks

Computer Networks Network architecture

CSET 4750 Computer Networks and Data Communications (4 semester credit hours) CSET Required IT Required

CompTIA Exam N CompTIA Network+ certification Version: 5.1 [ Total Questions: 1146 ]

APNIC elearning: IPSec Basics. Contact: esec03_v1.0

Chapter 8 Security Pt 2

Connecting with Computer Science, 2e. Chapter 5 The Internet

Raritan Valley Community College Academic Course Outline. CISY Advanced Computer Networking

CS 5480 Computer Networks

20-CS X Network Security Spring, An Introduction To. Network Security. Week 1. January 7

Web Browsing Examples. How Web Browsing and HTTP Works

How do I get to

Lecture 15. IP address space managed by Internet Assigned Numbers Authority (IANA)

Network-Oriented Software Development. Course: CSc4360/CSc6360 Instructor: Dr. Beyah Sessions: M-W, 3:00 4:40pm Lecture 2

Measurement of the Usage of Several Secure Internet Protocols from Internet Traces

The OSI and TCP/IP Models. Lesson 2

HTTP. Internet Engineering. Fall Bahador Bakhshi CE & IT Department, Amirkabir University of Technology

Address Resolution Protocol (ARP), Reverse ARP, Internet Protocol (IP)

A host-based firewall can be used in addition to a network-based firewall to provide multiple layers of protection.

1. When will an IP process drop a datagram? 2. When will an IP process fragment a datagram? 3. When will a TCP process drop a segment?

Layered Architectures and Applications

Overview of TCP/IP. TCP/IP and Internet

LESSON Networking Fundamentals. Understand TCP/IP

Gary Hecht Computer Networking (IP Addressing, Subnet Masks, and Packets)

Transcription:

COS 461: Computer Networks Spring 2011 Lectures: MW 10 10:50am in Bowen 222 Prof. Mike Freedman Precepts: F 10 10:50am, 11 11:50am Preceptors: Matvey Arye, Jacopo Cesareo, Prem Gopalan hnp://www.cs.princeton.edu/courses/archive/spr11/cos461/

What You Learn in This Course Knowledge: how the Internet works IP protocol suite Internet architecture ApplicaTons (Web, DNS, P2P, ) Insight: key concepts in networking Protocols, layering, resource allocaton, naming Skill: network programming Many nodes are general purpose computers And increasingly, even special purpose switches are programmable! You can program the nodes Very easy to innovate and develop new uses of network Contrast: Ma Bell owned the telecom network, no innovaton 2

Learning the Material: People Lecture (Prof. Mike Freedman) Slides available online at course Web site Office hours: Immediately following lectures Teaching Assistants office hours TBD Main email: cos461 staff at lists.cs.princeton.edu Email to individual TAs will not be answered Main Q&A form: www.piazzza.com We will add all your email addresses to the course Graded on class partcipaton: so ask *and* answer! 3

Learning the Material: Books Required textbook Computer Networks: A Systems Approach (4th edi9on), by Peterson and Davie [Okay to use the 3 rd editon] Books on reserve Networking text books Computer Networking: A Top Down Approach Featuring the Internet (3rd edi9on), by Kurose and Ross Computer Networks (4th edi9on), by Tanenbaum Network programming references TCP/IP Illustrated, Volume 1: The Protocols, by Stevens Unix Network Programming, Volume 1: The Sockets Networking API (3rd Edi9on), by Stevens, Fenner, & Rudolf 4

Grading and Schedule Four assignments (10% each) 95% 3 hours, 70% 2 days late, 50% > 3 days late One free late day during semester Must complete all assignments to pass Two exams (50% total) Midterm exam before spring break (25%) Final exam during exam period (25%) Class partcipaton (10%) In lecture and precept In the forums 5

Graduate Students: Two Choices Pick one of two optons Do the four programming assignments Or, first two assignments, plus research project Research projects Networking related research problem Must have a systems programming component Talk to me 6

Policies: Write Your Own Code Programming in an individual creatve process. While thinking about a problem, discussions with friends are encouraged. However, when the Tme comes to write code that solves the problem, the program must be your own work. If you have a queston about how to use some feature of C, UNIX, etc., you can certainly ask your friends or the TA, but do not, under any circumstances, copy another person's program. Lerng someone copy your program or using someone else's code in any form is a viola7on of academic regula7ons. 7

Networking is Relevant 8

Informa7on wants to be free because it has become so cheap to distribute, copy, and recombine... It wants to be expensive because it can be immeasurably valuable to the recipient. (1985) 9

http://www.google.com/transparencyreport/traffic/

The monolithic view 3 THE 4 INTERNET 5 2!!!! 7 6 1 Client Browser Web server 14

Why Internet Network of networks Standardized format and protocols for speaking between HETEROGENOUS networks 15

Why Internet Network of networks Standardized format and protocols for speaking between HETEROGENOUS networks 16

The monolithic view 3 THE 4 INTERNET 5 2!!!! 7 6 1 Client Browser Web server 17

A network of Autonomous Systems 3 4 5 2 7 6 1 Client Browser How do you name? Web server How do you find a name? 18

Announcing a traffic route 3 4 5 2 7 6 1 Client Browser Egypt is in this directon Web server 19

RouTng traffic to a destnaton 3 4 5 2 7 6 1 Client Browser Web server 20

Withdrawing a traffic route 3 4 5 1 2 Client Browser 7 6??? Web server Egypt is not in this directon 21

Key Concepts in Networking Protocols Speaking the same language Syntax and semantcs Layering Standing on the shoulders of giants A key to managing complexity Resource allocaton Dividing scare resources among competng partes Memory, link bandwidth, wireless spectrum, paths, Naming What to call computers, services, protocols, 24

Key Concepts in Networking Protocols Speaking the same language Syntax and semantcs 1969 1977 All speak IPv4 Internet Protocol version 4 1998 25

Protocol design is about tradeoffs How should hosts and routers communicate? Standard protocol Fast: Machine readable in hardware at line rates Browsers, web servers, and proxies? Can be slower: sowware readable Human readable Extensible and forward compatble Not everybody might be familiar with extensions 26

IPv4 Packet 4-bit 4-bit Header Version Length 8-bit Type of Service (TOS) 16-bit Total Length (Bytes) 16-bit Identification 3-bit Flags 13-bit Fragment Offset 8-bit Time to Live (TTL) 8-bit Protocol 16-bit Header Checksum 32-bit Source IP Address 32-bit Destination IP Address Options (if any) Payload 27

Example: HyperText Transfer Protocol GET /courses/archive/spr09/cos461/ HTTP/1.1 Host: www.cs.princeton.edu User-Agent: Mozilla/4.03 CRLF Request Response HTTP/1.1 200 OK Date: Mon, 2 Feb 2009 13:09:03 GMT Server: Netscape-Enterprise/3.5.1 Last-Modified: Mon, 42 Feb 2009 11:12:23 GMT Content-Length: 21 CRLF Site under construction 28

Key Concepts in Networking Protocols Speaking the same language Syntax and semantcs Layering Standing on the shoulders of giants A key to managing complexity 29

Layering = FuncTonal AbstracTon Sub divide the problem Each layer relies on services from layer below Each layer exports services to layer above Interface between layers defines interacton Hides implementaton details Layers can change without disturbing other layers Application Application-to-application channels Host-to-host connectivity Link hardware 30

The Internet Protocol Suite FTP HTTP NV TFTP Applications TCP IP UDP Waist UDP TCP NET 1 NET 2 NET n Data Link Physical The Hourglass Model The waist facilitates interoperability 31

Layer EncapsulaTon in HTTP User A User B Application App-to-app channels Host-to-host connectivity Link hardware Get index.html Connection ID Source/Destination Link Address 32

IP Suite: End Hosts vs. Routers host HTTP HTTP message host HTTP TCP TCP segment TCP router router IP IP packet IP IP packet IP IP packet IP Ethernet interface Ethernet interface SONET interface SONET interface Ethernet interface Ethernet interface 33

Conclusions Internet is a network of networks How hosts and networks name one another, find one another, and talk with one another Key concepts in networking Protocols, layers, resource allocaton, and naming Next lecture: How does YouTube and Neylix serve you videos? E.g., HTTP, DNS, and content distributon networks Next week: Back to the 1960s 34