+ All Categories
Home > Documents > L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify...

L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify...

Date post: 20-May-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
46
L1: Introduction Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806 8/15/2016 CSCI 445 – Fall 2016 1
Transcript
Page 1: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

L1: Introduction

Hui Chen, Ph.D.

Dept. of Engineering & Computer Science

Virginia State University

Petersburg, VA 23806

8/15/2016 CSCI 445 – Fall 2016 1

Page 2: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Acknowledgements

� Some pictures used in this presentation were obtained from

the Internet

� The instructor used some slides the following references

� Larry L. Peterson and Bruce S. Davie, Computer Networks: A Systems

Approach, 5th Edition, Elsevier, 2011

� Andrew S. Tanenbaum, Computer Networks, 5th Edition, Prentice-

Hall, 2010

� James F. Kurose and Keith W. Ross, Computer Networking: A Top-

Down Approach, 5th Ed., Addison Wesley, 2009

� Larry L. Peterson’s (http://www.cs.princeton.edu/~llp/) Computer

Networks class web site

8/15/2016 CSCI 445 – Fall 2016 2

Page 3: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Lecture Outline

� About the class

� Network building blocks

� Laying and architecture

8/15/2016 CSCI 445 – Fall 2016 3

Page 4: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Course Overview by Topics� Foundation

� Layering

� Topology design

� Internet architecture

� Bandwidth and latency

� Links and simple networking� Classes of links and physical media

� Encoding

� Framing

� Error detection and correction

� Case studies

� Internetworking� Switching and bridging

� Basic internetworking

� Routing

� Implementation and performance

� Advanced internetworking� Interdomain routing

� IPv6

� End-to-End protocols� Simple demultiplexer

� Reliable byte stream

� Congestion control and resource allocation

� Network security

� Network analysis� Probabilistic modeling

� Computer simulation

� Software and applications

8/15/2016 CSCI 445 – Fall 2016 4

Page 5: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Textbook

� Required textbook: Computer Networks: A Systems

Approach (5th edition), by Larry Peterson and Bruce

Davie

8/15/2016 CSCI 445 – Fall 2016 5

� 1 Foundation

� 2 Getting Connected

� 3 Internetworking

� 4 Advanced networking

� 5 End-to-end protocols

� 6 Congestion control and resource allocation

� 7 End-to-end data

� 8 Network security

� 9 Applications

Page 6: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Expectations

� Class participation

� Attendance

� Discussion

� In-class exercises

� Review after class

� Lecture nodes/slides

� Read relevant sections in the

textbook

� Assignments

� Homework

� Labs

� Project

� Presentations

� Exams and Quizzes

� Midterm

� Final

8/15/2016 CSCI 445 – Fall 2016 6

Page 7: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

What is the Class for?

� Focus on the designers of future products and

protocols

� To understand underlying principles of networking

� Exposure for the network administrators and

application developers

8/15/2016 CSCI 445 – Fall 2016 7

Page 8: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Systems Approach

� What are the ways that a user can get connected to a larger

network? (Connectivity)

� How do we grow networks in size? (Scalability)

� What are the ways to allow different network products and

protocols to coexist on the same network? (Heterogeneity)

� How do we manager resources on the network and satisfy

requirements of different users? (Resource management and

congestion control)

� How do we keep data transmitted over networks secure?

(Network security)

� ……

8/15/2016 CSCI 445 – Fall 2016 8

Page 9: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

System Approach

� Building and designing networks

� Foundation: basic concepts

� Direct link network

� Nodes and links

� Grow network

� Direct link network � switched network � internetworks

� The Internet is an internetwork

� Network applications and security

8/15/2016 CSCI 445 – Fall 2016 9

Page 10: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Foundation

� Topics

� Cover primarily section 1.3

� Computer network concept

� Network architecture

� Layering and Protocols

� Internet Architecture

� Reading assignment

� Chapter 1 (section 1.1, 1.2, and 1.3)

8/15/2016 CSCI 445 – Fall 2016 10

Page 11: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

What is a ComputerComputerComputerComputer Network?

� Built primarily from generalgeneralgeneralgeneral----purposepurposepurposepurpose programmable

hardware

� Optimized for carrying many different types of datadifferent types of datadifferent types of datadifferent types of data

� Support a wide, and ever-growing, range of

applicationsapplicationsapplicationsapplications.

8/15/2016 CSCI 445 – Fall 2016 11

Page 12: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

A Network Consisting of Nodes and

Links

Nodes can be indirectly connected!

Forwarding nodes (switches) Switched network

Hosts connected to the network

hosts

8/15/2016 CSCI 445 – Fall 2016 12

Page 13: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Nodes and Links

� Nodes: personal computers, server computers, special-

purpose hardware …

� Links:

� Physical media

� Coax cable, optical fiber, twisted-pair network cable, wireless

(EM radiation, acoustic waves, …) …

� Connection type

� Point-to-point

� Multiple access

8/15/2016 CSCI 445 – Fall 2016 13

Page 14: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Direct Link Networks

� Point-to-point networks

� Multiple access networks

8/15/2016 CSCI 445 – Fall 2016 14

Point-to-point link

Multiple access link

Page 15: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Direct Link Networks: Two Types of

Links

8/15/2016 CSCI 445 – Fall 2016 15

Page 16: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Direct Link Networks: Advantage

and Disadvantages

� What are their advantage and disadvantage

between point-to-point and multiple access

networks?

8/15/2016 CSCI 445 – Fall 2016 16

Page 17: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Grow Network in Size

� Direct link networks are small

� How to grow networks in size?

� Switched networks: a network of networks connected by

network switches

� A network switch (forwarding node) is a node with two or

more links

� Forward messages from one network to other networks

8/15/2016 CSCI 445 – Fall 2016 17

Point-to-point link Point-to-point link

Page 18: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Switched Networks

� Circuit-switched networks

� Carry bit-streams

� Establishes a dedicated circuit across a sequence of links between source node and destination node

� Allows the source node to send a stream of bits across this circuit to a destination node.

� e.g.: original telephone network

� Packet-switched networks

� Store-and-forward messages

� Receive: each node in a store-and-forward network first receives a complete packet over some link

� Store: stores the packet in its internal memory

� Forward: forwards the complete packet to the next node.

� e.g.: Internet

8/15/2016 CSCI 445 – Fall 2016 18

Page 19: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Identifying Nodes

� When networks grow, there is a need to identify and

differentiate different nodes and to forward

messages to a or a set of nodes

� Addressing and routing

8/15/2016 CSCI 445 – Fall 2016 19

Page 20: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Addressing and Routing

� Address: byte-string that identifies a node

� Usually unique

� Routing: process of finding ways to forward messages

to the destination nodes based on its address

� Type of addresses

� Unicast: node-specific

� Broadcast: all nodes on the network

� Multicast: some subset of nodes on the network

8/15/2016 CSCI 445 – Fall 2016 20

Page 21: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Multiplexing

� A system resource is shared among multiple users

� Examples:

� Time-division multiplexing (TDM)

� Frequency-division multiplexing (FDM)

8/15/2016 CSCI 445 – Fall 2016 21

Page 22: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Static and Statistical Multiplexing

� Static Multiplexing

� Examples: TDM and FDM

� Limitations

� If one flow does not have any data to send, its share of physical link (time quantum or frequency) remains idle

� The maximum number of flows is fixed and known ahead of time

� Statistical Multiplexing

� On-demand time-division

� Schedule link on a per-packet basis

� Packages from different sources interleaved on link

� Buffer packets that are contending for the link

� Congestion: Buffer (queue) overflow

8/15/2016 CSCI 445 – Fall 2016 22

Page 23: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

An Example of Multiplexing

8/15/2016 CSCI 445 – Fall 2016 23

Page 24: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Statistical Multiplexing: Challenges

� Fairly allocating link capacity to different flows

� Dealing with congestion

� Ensuring quality of service

8/15/2016 CSCI 445 – Fall 2016 24

Page 25: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Inter-Process Communication

� Turn host-to-host connectivity into process-to-process communication

� Fill gap between what applications expect and what the underlying technology

provides.

� What should a network provide?

� What should an application provide?

8/15/2016 CSCI 445 – Fall 2016 25

Page 26: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Examples of IPC Abstractions

� Request/reply-based

� Distributed file systems

� Web access

� Stream-based

� Video: sequence of

frames

� Video application

� On-demand video

� Video conference

8/15/2016 CSCI 445 – Fall 2016 26

Page 27: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Things can go wrong!

� Network failures:

� Bit-level errors (electrical interference, e.g., lightning)

� Packet-level errors (congestion)

� Link and node failures (cable is cut, computers crashes)

� Other related issues

� Messages/packets are delayed

� Messages/packets are delivered out of order

� Third parties eavesdrop

8/15/2016 CSCI 445 – Fall 2016 27

Page 28: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Protocols

� Well-defined procedure that runs on multiple parties

� A set of rules and conventions

� Two interface

� Service interface: operations on this protocol

� Peer-to-peer interface: message exchanged with peer

� Building blocks for a network architecture

� Term “protocol” is overloaded

� Specification of peer-to-peer interface

� Module that implements this interface

8/15/2016 CSCI 445 – Fall 2016 28

Page 29: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Layered Architecture

� Network Architecture

� A structured set of protocols that implement the exchange of

information between computers/parties

� Use abstractionsabstractionsabstractionsabstractions to hide complexity

� Abstraction naturally leads to layering

� Alternative abstractions at each layer

8/15/2016 CSCI 445 – Fall 2016 29

Page 30: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Service and Peer Interfaces

8/15/2016 CSCI 445 – Fall 2016 30

Page 31: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Example of Protocol Machinery

� Most peer-to-peer communication is indirect

� Peer-to-peer is directly only at hardware level

Layers

Service are grouped in a hierarchy of layers, which provide service interfaceLayer N protocols only use services provided by layer N-1

Layer N protocols only provide services to layer N+1Q: does layer N needs to know the inner-working of layer N-1 or layer N+1?

8/15/2016 CSCI 445 – Fall 2016 31

Page 32: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Encapsulation and Multiplexing/Demultiplexing

� Header can have demultiplexing key

header

payload

header

payload

8/15/2016

CSCI 445 – Fall 2016

32

Page 33: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

OSI (Open System Interconnection) Architecture

� Defined by ISO. Used as a reference model

8/15/2016 CSCI 445 – Fall 2016 33

Page 34: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

OSI: Physical Layer (Layer 1)

� Converts bits into physical signals such as electrical,

optical, acoustic signals …

� Transmits these signals over the hardware

communication medium such as twisted pair cable,

coaxial cable, fiber optics, open/free space, water …

8/15/2016 CSCI 445 – Fall 2016 34

Page 35: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

OSI: Data Link Layer (Layer 2)

� Reliably transfers data frames over a link

� Performs synchronization, error control, and flow

control

� Example: Point-to-Point Protocol (PPP)

8/15/2016 CSCI 445 – Fall 2016 35

Page 36: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

OSI: Network Layer (Layer 3)

� Moves packets inside the network

� Performs routing, addressing, switching, congestion

control

� Example: Internet Protocol (IP)

010…

010…

010…010…

010…

8/15/2016 CSCI 445 – Fall 2016 36

Page 37: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

OSI: Transportation Layer (Layer 4)

� Controls delivery of data between hosts

� Connection management, error control, flow control,

multiplexing

� Example: Transmission Control Protocol (TCP) and

User Datagram Protocol (UDP)

010…

010…

8/15/2016

CSCI 445 – Fall 2016

37

Page 38: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

OSI: Session Layer (Layer 5)

� Support dialog between application programs

� Session management, synchronization

� Example: Remote-Procedure-Call (RPC)

8/15/2016 CSCI 445 – Fall 2016 38

Page 39: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

OSI: Presentation Layer (Layer 6)

� Data conversion into application format

� Encryption and decryption

� Example: Secure Sockets Layer (SSL)

8/15/2016 CSCI 445 – Fall 2016 39

Page 40: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

OSI: Application Layer (Layer 7)

� Provides network access to application programs

� Application specific

� Example: File Transfer, Electronic Mail

8/15/2016 CSCI 445 – Fall 2016 40

Page 41: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Internet (TCP/IP) Architecture

� Defined Internet Engineering Task Force (IETF)

8/15/2016 CSCI 445 – Fall 2016 41

Page 42: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

OSI and Internet Architectures

8/15/2016 CSCI 445 – Fall 2016 42

Page 43: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Key Characteristics of Internet

Architecture

� Layering is not strict

� Hourglass design with IP as focal point

� Protocol specification + 1 (preferable 2)

representative implementation

8/15/2016 CSCI 445 – Fall 2016 43

Page 44: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

44

Application

Transport

Network

Data Link

Physical

Medium

Data Link

Physical

Application

Transport

Network

Data Link

Physical

Data Link

Physical

Network Network

Radio

Often we need to implement a function across multiple layers.

The Layered Reference Model

8/15/2016 CSCI 445 – Fall 2016 44

Page 45: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Summary

� What is a computer network?

� Basic requirements

� General purpose

� Cost-effective network sharing

� Fair network link allocation

� Robust connectivity

� Layered architecture

� Question:

� How is the performance (see next lecture)?

8/15/2016 CSCI 445 – Fall 2016 45

Page 46: L1: Introduction - Hui Chen · Identifying Nodes When networks grow, there is a need to identify and differentiate different nodes and to forward messages to a or a set of nodes Addressing

Additional Reading Assignment

� Leonard Kleinrock, An Early History of Internet, IEEE

Communications Magazine, Vol. 48, No. 8, pp. 26-36,

Available:

http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&ar

number=5534584

8/15/2016 CSCI 445 – Fall 2016 46


Recommended