27
EEC-484/584 EEC-484/584 Computer Networks Computer Networks Lecture 3 Lecture 3 Wenbing Zhao Wenbing Zhao [email protected] [email protected] (Part of the slides are based on Drs. Kurose & (Part of the slides are based on Drs. Kurose & Ross’s slides for their Ross’s slides for their Computer Networking Computer Networking book book)

EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao [email protected] (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

  • View
    223

  • Download
    2

Embed Size (px)

Citation preview

Page 1: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

EEC-484/584EEC-484/584Computer NetworksComputer Networks

Lecture 3Lecture 3

Wenbing ZhaoWenbing Zhao

[email protected]@ieee.org(Part of the slides are based on Drs. Kurose & Ross’s slides (Part of the slides are based on Drs. Kurose & Ross’s slides

for their for their Computer Networking Computer Networking bookbook))

Page 2: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

22

Second Session IssueSecond Session Issue• Available time slot

– M W 4-5:50pm– T Th 6-7:50pm– M W 8-9:50pm– M W 2-3:50pm– T Th 2-3:50pm– F 4-7:50pm

• 1st option: to have a second session with at least 16 students

• 2nd option: common lecture time, but 3 sessions of labs and discussions

Page 3: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

33

OutlineOutline

• Mock quiz

• Reference models

• Networking Standards

• Application layer protocols– Overview

• Change of schedule– Next time will be lecture– Lab 1 will be deferred to Sept 12

Page 4: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

44

Reference ModelsReference Models

• The OSI Reference Model– ISO – International Standards Organization– OSI – Open Systems Interconnection

• Open: open for communication with other systems

• The TCP/IP Reference Model

Page 5: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

55

The OSI Reference ModelThe OSI Reference Model

Page 6: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

66

Principles Applied in Deriving LayersPrinciples Applied in Deriving Layers

• A layer should be created where a different level of abstraction is needed

• Each layer should perform a well-defined function

• The layer boundaries should be chosen to minimize info flow across interfaces

• The number of layers should be – large enough to separate distinct functions – small enough to have a manageable architecture

Page 7: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

77

TCP/IP Reference ModelTCP/IP Reference Model

• TCP – Transmission Control Protocol

• IP – Internet Protocol

• Used in Internet and its predecessor ARPANET

• TCP/IP invented by Cerf and Kahn in 1974, became official protocol of ARPANET in 1983

Page 8: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

88

TCP/IP Reference ModelTCP/IP Reference Model

Page 9: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

99

TCP/IP Reference ModelTCP/IP Reference Model

• Internet Layer– Connectionless (packet switched)– Injects packets into the network; delivers them

to the destination– May be delivered out-of-order– Packet routing and congestion control are key

issues– Uses Internet Protocol

Page 10: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1010

TCP/IP Reference ModelTCP/IP Reference Model

• Transport layer, two protocols• TCP – Transmission Control Protocol

– Point-to-point– Connection-oriented– Reliable (no message loss or corruption)– Source ordered (sequenced)– Flow control– Byte stream, does not maintain message

boundary

Page 11: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1111

TCP/IP Reference ModelTCP/IP Reference Model

• UDP – User Datagram Protocol– Point-to-point– Connectionless– Unreliable– Not source ordered– No flow control– Preserve message boundary

Page 12: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1212

TCP/IP Reference ModelTCP/IP Reference Model

• Application Layer – contains higher-level protocols– DNS – Domain Name Service

• Maps host names onto their network addresses

– HTTP – HyperText Transfer Protocol• Fetches pages on the World Wide Web

– FTP – File Transfer Protocol• Allows user to transfer files efficiently from one

machine to another

Page 13: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1313

TCP/IP Reference ModelTCP/IP Reference Model

• Host-to-Network Layer– Host has to connect to the network using

some protocol so it can send IP packets to it– No protocol is defined

Page 14: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1414

Network StandardizationNetwork Standardization

• Why standard?– Only way to achieve interoperability– Standards also increase the market for

products adhering to them– Two kinds of standards

• De facto – from the fact (standards that just happened)

• De jure – by law (formal, legal standards adopted by authorized organization)

Page 15: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1515

Treaty Organization between Treaty Organization between NationsNations

United Nations

ITU - International Telecommunications Union

CCITT/ITU-T – telephone and data communications

Page 16: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1616

Voluntary, Nontreaty OrganizationVoluntary, Nontreaty Organization

ISO (International Standards Organization)issues standards on wide range of topics

200 TC (Technical Committees)

TC97 – computers and info processing

SC (Subcommittees)

WG (Working Groups)

ANSI (American National Standards Institute)

Page 17: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1717IEEE 802 StandardsIEEE 802 Standards

Page 18: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1818

Internet Standard BodyInternet Standard Body• Internet Society (used to be Internet Architecture

Board)– Internet Research Task Force (IRTF)

• Concentrate on long term research

– Internet Engineering Task Force (IETF)• Deal with short term engineering issues

• Standardization process– Proposed standard: request for comments (RFCs)– Draft standard: > 4 month test– Internet standard: if convinced the idea is sound

Page 19: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

1919

Application Layer ProtocolsApplication Layer Protocols

• Principles of networked applications– Client server model– Sockets– Addressing– Protocol– What do we need from transport layer?

• WWW and HTTP

Page 20: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2020

Creating a Network ApplicationCreating a Network Application

• Write programs that– run on different end

systems and– communicate over a

network

• No need to write code for devices in subnet– Subnet devices do not run

user application code– application on end systems

allows for rapid app development, propagation

application

transportnetworkdata linkphysical

application

transportnetworkdata linkphysical

application

transportnetworkdata linkphysical

Page 21: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2121

Inter-Process CommunicationsInter-Process Communications

• Process: program running within a host

• Processes in different hosts communicate by exchanging messages

• Client process: process that initiates communication

• Server process: process that waits to be contacted

Page 22: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2222

SocketsSockets

• Process sends/receives messages to/from its socket

• For each point-to-point connection, there are two sockets, one on each side

• API: (1) choice of transport protocol; (2) ability to fix a few parameters

process

TCP withbuffers,variables

socket

host orserver

process

TCP withbuffers,variables

socket

host orserver

Internet

Controlledby OS

Controlled byapp developer

Page 23: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2323

AddressingAddressing• To receive messages, process must have

identifier• Host device has unique 32-bit IP address• Question: Does IP address of host on which

process runs suffice for identifying the process?

Page 24: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2424

AddressingAddressing• Identifier includes both IP address and port

numbers (16-bit) associated with process on host

• Example port numbers:– HTTP server: 80– SSH server: 22

• To send HTTP request to academic.csuohio.edu Web server:– IP address: 137.148.49.46– Port number: 80

Page 25: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2525

Application Layer Protocol DefinesApplication Layer Protocol Defines

• Types of messages exchanged – e.g., request, response

• Message syntax– what fields in messages & how

fields are delineated

• Message semantics – meaning of information in fields

• Rules for when and how processes send & respond to messages

Public-domain protocols:• defined in RFCs• allows for

interoperability• e.g., HTTP, SMTP

Proprietary protocols:• e.g., KaZaA

Page 26: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2626

What Transport Service Does an What Transport Service Does an Application Need?Application Need?

Data loss• some apps (e.g., audio) can

tolerate some loss• other apps (e.g., file

transfer, telnet) require 100% reliable data transfer

Timing• some apps (e.g.,

Internet telephony, interactive games) require low delay to be “effective”

Bandwidth• some apps (e.g.,

multimedia) require minimum amount of bandwidth to be “effective”

• other apps (“elastic apps”) make use of whatever bandwidth they get

Page 27: EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao wenbing@ieee.org (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer

Spring Semester 2006Spring Semester 2006 EEC-484/584: Computer NetworksEEC-484/584: Computer Networks Wenbing ZhaoWenbing Zhao

2727

Transport Service Requirements of Transport Service Requirements of Common ApplicationsCommon Applications

Application

file transfere-mail

Web documentsreal-time audio/video

stored audio/videointeractive gamesinstant messaging

Data loss

no lossno lossno lossloss-tolerant

loss-tolerantloss-tolerantno loss

Bandwidth

elasticelasticelasticaudio: 5kbps-1Mbpsvideo:10kbps-5Mbpssame as above few kbps upelastic

Time Sensitive

nononoyes, 100’s msec

yes, few secsyes, 100’s msecyes and no