CS计算机代考程序代写 FTP 60-256 System Programming: Introduction to computer networks

60-256 System Programming: Introduction to computer networks

Content

COMP 2560 System Programming:
Introduction to computer networks
Courtesy of Dr. B. Boufama
modified by Dan Wu
School of Computer Science University of Windsor

Instructor: Dr. Dan Wu

Introduction to computer networks
1

Copyright @ 2019, 2020, 2021 all rights reserved
Content

Content

1
Introduction to Computer networks

2

Network models OSI Model TCP/IP Model

3
Client/Server

Introduction to computer networks
2

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

Introduction to computer networks
Computers: evolution
The old model: A single computer serving users who bring their works for processing
→ became obsolete.

The new model: A large number of separate but interconnected computers are serving users.
→ computer networks.

Introduction to computer networks
3

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

Computer network

Interconnected computers: they are able of exchanging information
Computer network: interconnected collection of autonomous computers.
Ethernet cable

Introduction to computer networks
4

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

Some typical network applications:

Applications
Exchange electronic mail (e-mail). Exchange files
Remote login
Share peripheral devices
Execute a program on another computer

Introduction to computer networks
5

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

OSI Model TCP/IP Model

Layering

Given a specific task, say file transfer, it is hard to solve the entire problem in one step. Solving this problem needs:
A user interface
Coding data into packets Observing some protocols Routing the packets
A physical data transmission

Layers
Networks are organized in layers, where:
the number of layers and their functions differ from network to network
each layer offers some services to the higher layer. a same level ’layer peer’ on different machines can
converse using a protocol: rules and conventions used in this conversation.

Introduction to computer networks
6

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

OSI Model TCP/IP Model

Network models

Computer Network Model describes how information is transmitted between two points in a network. Two models:
The OSI model (Open Systems Interconnect) proposed by ISO describes network activities as having a structure of seven layers, each of the layers has one or more protocols associated with it.
The TCP/IP model (Transmission Control Protocol/Internet Protocol) based on TCP/IP protocol suite.

Introduction to computer networks
7

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

OSI Model TCP/IP Model

The OSI Reference Model

Application Application

Presentation Presentation

Transport Transport

Network Network

Data Link Data Link

Physical Physical

Layers Host A Protocols Host B
07

06

05 Session Session

04

03

02

01

Introduction to computer networks
8

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

OSI Model TCP/IP Model

The OSI Reference Model

Each layer defines a function performed when data is transferred between applications across a network.
Application Layer: application programs that use the network.
Presentation Layer: standardizes data presented to the applications.
Session Layer: manages sessions between applications. Transport Layer: provides error detection and correction. Network Layer: manages network connections.
Data Link Layer: provides data delivery across the physical connection.
Physical Layer: defines the physical network media. Consists of cable and connectors and is responsible for converting analog signals into bits.

Introduction to computer networks
9

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

OSI Model TCP/IP Model

The OSI Reference Model

Information is passed down through the layers until it is transmitted across the network, where it is passed back up the stack to the application at the remote end.

Each layer relies on the other layers to perform their functions.

Individual layers do not care how the other layers operate. They only need to know how to pass information up or down from one layer to another.

Introduction to computer networks
10

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

OSI Model TCP/IP Model

Peer conversation
In each layer a function may be performed by any number of protocols.
Each protocol communicates with a peer that is an equivalent implementation of the same protocol on a remote system.
Each protocol layer is only concerned with communication to a peer at the other end of a link.

Example
e-mail is an application level protocol that communicates with a peer e-mail application on a remote system,
ftp is an application level protocol that communicates with a peer ftp application on a remote
These applications do not care whether or not the physical layer is a serial modem line or an ethernet connection.

Introduction to computer networks
11

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

OSI Model TCP/IP Model

In practice, the OSI Reference Model is rarely used when working with networks.

TCP/IP Model
TCP/IP model is based on the OSI model.
TCP/IP is usually described as having fewer layers than the OSI model.
TCP/IP does not follow the OSI model exactly. It is based on the TCP/IP protocol suite.
The documentation on TCP/IP protocol standards is freely available and widely published.
The standards for TCP/IP protocols are developed and maintained independently from any specific hardware type or operating system.
Widely implemented on most operating systems and computers.
TCP/IP is built into the UNIX operating system and is used by the Internet

Introduction to computer networks
12

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

OSI Model TCP/IP Model

The TCP/IP model

Protocols
Process
Network
Network
Transport Transport

Process
Layers
Host A
Host B
04
03
02
01
Data Link Data Link

Introduction to computer networks
13

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

OSI Model TCP/IP Model

TCP/IP Model
TCP/IP Model
The Process Layer: it combines the top three layers of the OSI (application, presentation and session layers) into one. It defines standard Internet services and network applications that user can use (e.g. ftp, telnet…).
The Transport layer transmits messages from a process on one machine to a process on another machine.
The Network layer routes packets through a network to a destination node.
The Data Link layer: it combines the 2 bottom layers of the OSI model (Data Link and Physical layers). It transmits frames of bits across a single link between two machines.

Introduction to computer networks
14

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

OSI Model TCP/IP Model

Some protocols

Process Layer: Simple Mail Transfer Protocol (SMTP) and Post Office Protocol (POP) used for e-mail, Hyper Text Transfer Protocol (HTTP) used for the World-Wide-Web, and File Transfer Protocol (FTP)…etc.
Transport Layer: In TCP/IP there are two Transport Layer protocols. The Transmission Control Protocol (TCP) guarantees that information is received as it was sent. The User Datagram Protocol (UDP) performs no end-to-end reliability checks.
Network Layer: This is commonly referred to as the Internet Layer. All upper and lower layer communications travel through Internet Protocol (IP) as they are passed through the TCP/IP protocol stack.
Data Link Layer: TCP/IP makes use of existing Data Link and Physical Layer standards rather than defining its own. Data Link Layer describes how IP utilizes existing data link protocols such as Ethernet, Token Ring,. . . etc.

Introduction to computer networks
15

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

OSI Model TCP/IP Model

More about TCP/IP protocol

TCP: Transmission Control Protocol. A
connection-oriented protocol that provides a reliable,
full-duplex, byte stream for a user process (most used by Internet application).

UDP: User Datagram Protocol. A connectionless protocol for user processes.

IP: Internet Protocol. IP is the protocol that provides the packet delivery service for TCP and UDP.

Introduction to computer networks
16

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

OSI Model TCP/IP Model

Encapsulation

Data
Data
Data
Data
Header
Header

Header

Header

Header
Header
Data Link Layer
(Ethernet, Token Ring,…)
Process Layer (telnet ftp,…)
Transport Layer (TCP, UDP,…)
Network Layer (IP)

Introduction to computer networks
17

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

OSI Model TCP/IP Model

Example

Protocols
Host A
Host B
Layers
Application

Transport
TCP TCP
TCP protocol

Network
IP
IP
Link
Ethernet protocol
Ethernet driver Ethernet driver

IP protocol
FTP client FTP server
FTP protocol

Introduction to computer networks
18

Copyright @ 2019, 2020, 2021 all rights reserved
Introduction to Computer networks
Network models Client/Server

Client/Server…

Client/Server
The client/server model is the standard model for network applications, a typical scenario is:
The server process is started on some computer. It initializes itself, then goes to sleep waiting to be contacted by a client process for some service.
A client process is started on some computer connected to the server’s computer with a network. It sends a request across the network to the server asking for some service, remote login for instance.
The server provides its service in two ways:

1

2
for a short amount of time service, the server process handle the service itself and goes back to sleep, waiting for new requests.
otherwise, the server invokes another process to handle each client request, so that the server process can go back to sleep

Introduction to computer networks
19

Copyright @ 2019, 2020, 2021 all rights reserved