Computer Networks. General Course Information. Addressing and Routing. Computer Networks 9/8/2009. Basic Building Blocks for Computer Networks

Similar documents
Transport Layer Overview

L1: Introduction. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

More on Link Layer. Recap of Last Class. Interconnecting Nodes in LAN (Local-Area Network) Interconnecting with Hubs. Computer Networks 9/21/2009

LAN Interconnection and Other Link Layer Protocols

Chapter 16 Networking

CS4700/CS5700 Fundaments of Computer Networks

IT4405 Computer Networks (Compulsory)

Computer Networks. Dr. Abdel Ilah ALshbatat Dept. of Communication and Computer Engineering Faculty of Engineering Tafila Technical University

CS 268: Internet Architecture & E2E Arguments. Today s Agenda. Scott Shenker and Ion Stoica (Fall, 2010) Design goals.

Data Link Layer Overview

CSCI Computer Networks

Data Link Layer Overview

CS3600 SYSTEMS AND NETWORKS

OSI and TCP/IP Models

Announcements. CS 5565 Network Architecture and Protocols. Outline for today. The Internet: nuts and bolts view. The Internet: nuts and bolts view

Chapter 2 Layer Architecture of Network Protocols. School of Info. Sci. & Eng. Shandong Univ.

Data Communications and Networks Spring Syllabus and Reading Assignments

Internet Applications and the Application Layer Material from Kurose and Ross, Chapter 2: The Application Layer

Internet Architecture. Network Layer Overview. Fundamental Network Layer Function. Protocol Layering and Data. Computer Networks 9/23/2009

CS 3516: Advanced Computer Networks

QUESTION BANK UNIT-I

Chapter 2 Network Architectures A global view

Chapter 1 Introduction

Data Link Layer Overview

Addressing: when mobile is moving around. Mobile Registration. Principles of Mobile Routing. Mobility via Indirect Routing

Introduction to computer networking

Lecture 17 Overview. Last Lecture. Wide Area Networking (2) This Lecture. Internet Protocol (1) Source: chapters 2.2, 2.3,18.4, 19.1, 9.

Reliable Data Transfer

The Diffie-Hellman Key Exchange

CS 428/528 Computer Networks Lecture 01. Yan Wang

Data and Computer Communications. Chapter 2 Protocol Architecture, TCP/IP, and Internet-Based Applications

Introduction to Information Science and Technology 2017 Networking I. Sören Schwertfeger 师泽仁

Data Link Layer Overview

Welcome to CS 340 Introduction to Computer Networking

The Internet. Overview. Network building blocks

Operating Systems CS 571

Web Protocols and Practice

LESSON PLAN LP-CS 1302

Communication Networks - 3 general areas: data communications, networking, protocols

Communication Networks

Application. Transport. Network. Link. Physical

EEC-484/584 Computer Networks

JAMES F. KUROSE AND KEITH W. ROSS

System Programming. Introduction to computer networks

Computer Communication & Networks / Data Communication & Computer Networks Week # 03

Connectionless and Connection-Oriented Protocols OSI Layer 4 Common feature: Multiplexing Using. The Transmission Control Protocol (TCP)

COMS Introduction to Computers. Networking

C18: Network Fundamentals and Reliable Sockets

Congestion Control. Principles of Congestion Control. Network assisted congestion. Asynchronous Transfer Mode. Computer Networks 10/23/2013

ECPE / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

CNT 4004: Computer Networks I. Tentative Syllabus

QUESTION BANK EVEN SEMESTER

Module 2 Overview of Computer Networks

Module 2 Overview of. Computer Networks

Congestion Control. Principles of Congestion Control. Network-assisted Congestion Control: ATM. Congestion Control. Computer Networks 10/21/2009

PESIT Bangalore South Campus

Lecture (11) OSI layer 4 protocols TCP/UDP protocols

CS519: Computer Networks. Lecture 1 (part 2): Jan 28, 2004 Intro to Computer Networking

CSCD 330 Network Programming

FINAL EXAM REVIEW PLEASE NOTE THE MATERIAL FROM LECTURE #16 at the end. Exam 1 Review Material

b) Diverse forms of physical connection - all sorts of wired connections, wireless connections, fiber optics, etc.

EEC-682/782 Computer Networks I

UNIVERSITY OF NEBRASKA AT OMAHA Computer Science 3550 Communication Networks

Redes de Computadores. Introduction

PROGRAMMING Kyriacou E. Frederick University Cyprus. Network communication examples

Defining Networks with the OSI Model. Module 2

SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR

of-service Support on the Internet

CS 3516: Advanced Computer Networks

15-744: Computer Networking. L-1 Intro to Computer Networks

CS 43: Computer Networks. Layering & HTTP September 7, 2018

Assignment - 1 Chap. 1 Wired LAN s

Outline : Computer Networking. Objectives. Who s Who? Administrivia. Layering. L-1 Intro to Computer Networks

HW3 and Quiz. P14, P24, P26, P27, P28, P31, P37, P43, P46, P55, due at 3:00pm with both soft and hard copies, 11/11/2013 (Monday) TCP), 20 mins

Networking and Internetworking 1

Chapter 1. Computer Networks and the Internet

The Transmission Control Protocol (TCP)

CS 4390 Computer Networks. Transport Services and Protocols

What is a Network? TCP / IP. The ISO OSI Model. Protocols. The TCP/IP Protocol Suite. The TCP/IP Protocol Suite. Computer network.

Faculty of Science and IT Course title. Pre-requisite/corequisite

C19: User Datagram and Multicast

Concept Questions Demonstrate your knowledge of these concepts by answering the following questions in the space that is provided.

OSI Layer OSI Name Units Implementation Description 7 Application Data PCs Network services such as file, print,

CCNA Exploration Network Fundamentals. Chapter 04 OSI Transport Layer

Course on Computer Communication and Networks. Lecture 1 Chapter 1: Introduction Part A: Internet, Protocol Layering and Data


E&CE 358: Tutorial 1. Instructor: Sherman (Xuemin) Shen TA: Miao Wang

SJTU 2018 Fall Computer Networking. Wireless Communication

CS 268: Lecture 4 (Internet Architecture & E2E Arguments)

TSIN02 - Internetworking

Distributed Systems: Networking

CPS221 Lecture: Layered Network Architecture

Chapter 2 Application Layer. Lecture 4: principles of network applications. Computer Networking: A Top Down Approach

Peer entities. Protocol Layering. Protocols. Example

OSI Transport Layer. Network Fundamentals Chapter 4. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1

OSI Transport Layer. objectives

Intro. to Computer Network

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 11

A+ Guide to Software: Managing, Maintaining, and Troubleshooting, 5e. Chapter 8 Networking Essentials

ECE 4400:427/527 - Computer Networks Spring 2017

Transcription:

Outline: Computer Networks Introduction General course information. Some basic concepts for computer s. Network programming. General Course Information Course Web page http://www.cs.rochester.edu/~kshen/csc257-fall2009 h / h / Course email address cs257@cs.rochester.edu Textbooks Kurose and Ross, Computer Networking: A Top-Down Approach Featuring the Internet, 4 th edition, 2007; 5 th edition, 2009. Peterson and Davie, Computer Networks: A Systems Approach, 4 th edition, 2007. Accounts in computer science labs 9/8/2009 CSC 257/457 - Fall 2009 1 9/8/2009 CSC 257/457 - Fall 2009 2 Basic Building Blocks for Computer Networks Addressing and Routing Network: two or most hosts connected by s/switches Host nodes: PCs, servers, hand-held h devices, sensors Links: Twisted pair, coaxial cable, phone line, optical fiber, wireless radio channels Address: node identifier in a. often a unique byte string. Routing: finding a route (path) to the destination node based on its address. Types of traffic/addressing unicast: to a single destination node; broadcast: to all nodes on the ; multicast: to some subset of nodes on the ; anycast: to any one in a set of nodes. 9/8/2009 CSC 257/457 - Fall 2009 3 9/8/2009 CSC 257/457 - Fall 2009 4 CSC 257/457 - Fall 2009 1

Network Protocol A protocol describes how communication entities (sender/receiver) should interact t to accomplish a ing task. format, order of messages sent and received between entities actions taken on message transmission, receipt Protocols define communication interface, not node-local implementations ti allow two sides of a communication task to be independently implemented. An Example A human protocol and a computer protocol: Hi TCP conn. req Hi TCP conn. response Got the Get http://www.cs.rochester.edu time? 4:00 <file> time 9/8/2009 CSC 257/457 - Fall 2009 5 9/8/2009 CSC 257/457 - Fall 2009 6 Network Layers Internet Architecture Separation of functions/features allow independent design and implementation thus distributing the complexity. Layering is a vertical separation of functions/features. Hiding the complexity: each layer interface hides complexity in this layer and layers below. Disadvantage of layering? lack of full information sharing Application programs Host-to-host data Host-to-host connectivity Communications over hardware Bottom-up: : electromagnetic signals on the wire : data transfer between neighboring elements encoding, framing, error correction, access control for shared s : host-to-host connectivity routing, addressing : host-to-host data reliable data, congestion control, flow control : anything you want to do on computer s 9/8/2009 CSC 257/457 - Fall 2009 7 9/8/2009 CSC 257/457 - Fall 2009 8 CSC 257/457 - Fall 2009 2

Protocols for the Internet Architecture Internet Layering on Hosts and Switches Hourglass design. HTTP SMTP DNS Kai s protocol TCP UDP IP Ethernet 802.11 PPP Understand layers, protocols, protocol implementations. 9/8/2009 CSC 257/457 - Fall 2009 9 9/8/2009 CSC 257/457 - Fall 2009 10 OSI Model History/Dominance of the Internet Session layer: tie up different streams belonging to the same Presentation layer: defining uniform format for data representation End host Application Presentation Session Transport Network Network Network Data Data Data End host Application Presentation Session Transport Network Data Internet (TCP/IP) evolved from a Defense Departmentsupported project called ARPARNET. The Internet becomes dominant today because: Simple core layer (packet switching) with extensibility. A good TCP/IP implementation was bundled with a popular UNIX operating (Berkeley UNIX). switches 9/8/2009 CSC 257/457 - Fall 2009 11 9/8/2009 CSC 257/457 - Fall 2009 12 CSC 257/457 - Fall 2009 3

Course Outline Traditional materials about computer s Data s: Ethernet etc. Network: IP addressing and routing. Transport: TCP/UDP. Application: HTTP, FTP, SMTP, and DNS. Advanced topics in computer s Multimedia ing (quality of service), computer security, wireless (mobile/mesh) s, overlay s. Case studies of s/technologies HTTP load balancing. Content distribution and caching. Peer-to-peer s. 9/8/2009 CSC 257/457 - Fall 2009 13 What we will learn? Practices How do things work in practice? In the case of Internet, the Web, p2p overlay, etc. Principles Why things work in ways they do? Fundamental principles, design rationale (and sometimes a lack of it). 9/8/2009 CSC 257/457 - Fall 2009 14 Socket Programming Socket Programming (cont.) HTTP SMTP DNS Kai s protocol TCP IP UDP Applications Implemented in hardware or operating software Socket developer operating process socket ing internet process socket ing developer operating Ethernet 802.11 PPP end-host A end-host B Socket: the interface between processes and underlying ing s Socket: an OS interface (a door ) into which processes can communicate with remote process. 9/8/2009 CSC 257/457 - Fall 2009 15 9/8/2009 CSC 257/457 - Fall 2009 16 CSC 257/457 - Fall 2009 4

TCP/UDP Sockets Port Numbers Connection-oriented byte streams (TCP): Client/server need to establish connection before communications; Communications flow in streams of ordered bytes. Connectionless datagram (UDP): No connection is needed before communications; Clear boundaries between groups of bytes (messages), but no ordering between messages. Multiple sockets might exist in each host. A port number identifies each such socket in each host. Each port number is a 16-bit number, ranging from 0 to 65535. Port numbers ranging from 0 to 1023 are restricted for -level services. 9/8/2009 CSC 257/457 - Fall 2009 17 9/8/2009 CSC 257/457 - Fall 2009 18 Learn Network Programming Assignment #0 Reference books Network programming in C: Stevens, Unix Network Programming, Volume I, 2 nd edition, 1998. Learn to use UNIX manual pages Find information on the web C versus Java Part I: little warmup on socket programming, will not be graded d Part II: measurement measuring transmission delays for varying TCP/UDP traffic use high resolution timer report stable results 9/8/2009 CSC 257/457 - Fall 2009 19 9/8/2009 CSC 257/457 - Fall 2009 20 CSC 257/457 - Fall 2009 5

Disclaimer Parts of the lecture slides contain original work of James Kurose, Larry Peterson, and Keith Ross. The slides are intended for the sole purpose of instruction of computer s at the University of Rochester. All copyrighted materials belong to their original owner(s). 9/8/2009 CSC 257/457 - Fall 2009 21 CSC 257/457 - Fall 2009 6