+ All Categories
Home > Documents > 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National...

1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National...

Date post: 18-Jan-2016
Category:
Upload: angelina-watkins
View: 217 times
Download: 2 times
Share this document with a friend
Popular Tags:
48
1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University
Transcript
Page 1: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

1

Introduction to Networking Concepts

Chu-Sing YangDepartment of Electrical Engineering

National Cheng Kung University

Page 2: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

2

Networking Concepts

• Network Definition

• Protocol Architecture

• Protocol Layers

• Encapsulation/Decapsulation

• Network Abstractions

• Internet Control Message Protocol (ICMP)

Page 3: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

Network Definitions

• A network can be defined as two or more computers connected together in such a way that they can share resources.

• The purpose of a network is to share resources.– A file– A folder– A printer– A disk drive– Or just about anything else that exists on a computer.

Page 4: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

Network Definitions(cont..)

A network is simply a collection of computers or other hardware devices that are connected together, either physically or logically, using special hardware and software, to allow them to exchange information and cooperate. Networking is the term that describes the processes involved in designing, implementing, upgrading, managing and otherwise working with networks and network technologies.

Page 5: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

Advantages of Networking

• Connectivity and Communication • Data Sharing • Hardware Sharing • Internet Access • Internet Access Sharing • Data Security and Management • Performance Enhancement and Balancing • Entertainment

Page 6: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

The Disadvantages of Networking

• Network Hardware, Software and Setup Costs • Hardware and Software Management and

Administration Costs • Undesirable Sharing • Illegal or Undesirable Behavior • Data Security Concerns

Page 7: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

Fundamental Network Classifications

Local Area Networks (LANs): • A local area network (LAN) is a computer network covering a small geographic area, like a home, office,

or group of buildings Wide Area Networks (WANs): • Wide Area Network (WAN) is a computer network that covers a broad area (i.e., any network whose

communications links cross metropolitan, regional, or national boundaries). Or, less formally, a network that uses routers and public communications links

• The largest and most well-known example of a WAN is the Internet. • WANs are used to connect LANs and other types of networks together, so that users and computers in

one location can communicate with users and computers in other locations

Metropolitan Area Network (MAN):o A metropolitan area network (MAN) is a network that interconnects users with computer resources in a

geographic area or region larger than that covered by even a large local area network (LAN) but smaller than the area covered by a wide area network (WAN). The term is applied to the interconnection of networks in a city into a single larger network (which may then also offer efficient connection to a wide area network). It is also used to mean the interconnection of several local area networks by bridging them with backbone lines. The latter usage is also sometimes referred to as a campus network.

Page 8: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

8

neon.tcpip-lab.edu"Neon"

128.143.71.21

argon.tcpip-lab.edu"Argon"128.143.137.144

router137.tcpip-lab.edu"Router137"

128.143.137.1

router71.tcpip-lab.edu"Router71"128.143.71.1

Ethernet NetworkEthernet Network

Router

Sending a packet from Argon to Neon

Page 9: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

9

DNS: The IP address of

“neon.tcpip-lab.edu” is 128.143.71.21

ARP: What is the MAC address of 128.143.137.1?

neon.tcpip-lab.edu"Neon"

128.143.71.21

argon.tcpip-lab.edu"Argon"128.143.137.144

router137.tcpip-lab.edu"Router137"

128.143.137.1

router71.tcpip-lab.edu"Router71"128.143.71.1

Ethernet NetworkEthernet Network

Router

Sending a packet from Argon to Neon

DNS: What is the IP address

of “neon.tcpip-lab.edu”?ARP: The MAC address of 128.143.137.1 is 00:e0:f9:23:a8:20

128.143.71.21 is not on my local network.Therefore, I need to send the packet to my

default gateway with address 128.143.137.1

frame

128.143.71.21 is on my local network.Therefore, I can send the packet directly.

ARP: The MAC address of 128.143.137.1 is 00:20:af:03:98:28

ARP: What is the MAC address of 128.143.71.21?

frame

Page 10: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

10

Communications Architecture

• The complexity of the communication task is reduced by using multiple protocol layers:

• Each protocol is implemented independently• Each protocol is responsible for a specific subtask• Protocols are grouped in a hierarchy

• A structured set of protocols is called a communications architecture or protocol suite

Page 11: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

11

TCP/IP Protocol Suite

• The TCP/IP protocol suite is the protocol architecture of the Internet

• The TCP/IP suite has four layers: Application, Transport, Network, and Data Link Layer

• End systems (hosts) implement all four layers. Gateways (Routers) only have the bottom two layers.

Application

Transport

Network Operating system

User-level programs

Data Link

Data Link

Media AccessControl (MAC)

Sublayer inLocal AreaNetworks

Page 12: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

12

Functions of the Layers

• Data Link Layer:– Service: Reliable transfer of frames over a link

Media Access Control on a LAN– Functions: Framing, media access control, error checking

• Network Layer:– Service: Move packets from source host to destination host– Functions: Routing, addressing

• Transport Layer:– Service: Delivery of data between hosts– Functions: Connection establishment/termination, error

control, flow control• Application Layer:

– Service: Application specific (delivery of email, retrieval of HTML documents, reliable transfer of file)

– Functions: Application specific

Page 13: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

13

TCP/IP Suite and OSI Reference Model

ApplicationLayer

ApplicationLayer

PresentationLayer

SessionLayer

TransportLayer

NetworkLayer

(Data) LinkLayer

PhysicalLayer

TransportLayer

NetworkLayer

OSIReference

Model

(Data) LinkLayer

TCP/IP Suite

The TCP/IP protocol stack does not define the lower layers of a complete protocol stack

Page 14: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

14

Assignment of Protocols to Layers

NetworkLayer

Routing Protocols

PIM

OSPF

RIP

ApplicationLayer

Data LinkLayer

IP

ARP Ethernet

NetworkInterface

TransportLayer

TCP UDP

SNMPFTP DNSHTTP

ICMP

IGMP

pingapplication Telnet

DHCP

Page 15: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

15

Layered Communications

• An entity of a particular layer can only communicate with:

1. a peer layer entity using a common protocol (Peer Protocol)

2. adjacent layers to provide services and to receive services

N+1 LayerEntity

N+1 LayerEntity

N+1 Layer ProtocolN+1 Layer

N-1 LayerEntity

N-1 LayerEntity

N-1 Layer ProtocolN-1 Layer

N LayerEntity

N LayerEntity

N Layer ProtocolN Layer

layer N+1/Ninterface

layer N/N-1interface

Page 16: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

16

Layered Communications

A layer N+1 entity sees the lower layers only as a service provider

Service Provider

N+1 LayerEntity

N+1 LayerEntity

N+1 Layer Peer Protocol

Request Delivery

IndicateDelivery

Page 17: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

17

Service Access Points

• A service user accesses services of the service provider at Service Access Points (SAPs)

• A SAP has an address that uniquely identifies where the service can be accessed

Layer-NEntityN Layer

Layer- N-1Entity

N-1Layer

layer N/N-1service interface

LayerN-1SAP

Page 18: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

18

Exchange of Data

• The unit of data send between peer entities is called a Protocol Data Unit (PDU)

• For now, let us think of a PDU as a single packet

• Scenario: Layer-N at A sends a layer-N PDU to layer-N at B• What actually happens:

– A’s layer-N passes the PDU to one the SAPs at layer-N-1– Layer-N-1 entity at A constructs its own (layer-N-1) PDU which it sends to the

layer-N-1 entity at B– PDU at layer-N-1 = layer-N-1 Header + layer –N PDU

N LayerEntity

PDU(at layer N)

N LayerEntity

A B

Page 19: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

19

Exchange of Data

Layer-NEntity

N PDU

Layer- N-1Entity

Layer-N PDU and control data issent to SAP of Layer-N-1

SAPs

control

N PDUcontrol

Header(of layer N-1) N PDU

PDU of Layer-N-1

Layer-NEntity

Layer- N-1Entity

A B

Page 20: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

20

Layers in the Example

HTTP

TCP

IP

argon.tcpip-lab.edu

128.143.137.144

Ethernet Ethernet Ethernet

IP

HTTP

TCP

IP

neon.tcpip-lab.edu128.143.71.21

Ethernet

router71.tcpip-lab.edu

128.143.137.100:e0:f9:23:a8:20

router137.tcpip-lab.edu

128.143.71.1

HTTP protocol

TCP protocol

IP protocol

Ethernet

IP protocol

Ethernet

Page 21: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

21

Layers in the Example

HTTP

TCP

IP

argon.tcpip-lab.edu

128.143.137.144

Ethernet Ethernet Ethernet

IP

HTTP

TCP

IP

neon.tcpip-lab.edu128.143.71.21

Ethernet

router71.tcpip-lab.edu

128.143.137.100:e0:f9:23:a8:20

router137.tcpip-lab.edu128.143.71.1

Send HTTP Request to neon

Establish a connection to 128.143.71.21 at port 80Open TCP connection to

128.143.71.21 port 80

Send a datagram (which contains a connection request) to 128.143.71.21Send IP datagram to

128.143.71.21

Send the datagram to 128.143.137.1

Send Ethernet frame to 00:e0:f9:23:a8:20

Send Ethernet frame to 00:20:af:03:98:28

Send IP data-gram to 128.143.71.21

Send the datagram to 128.143.7.21

Frame is an IP datagram

Frame is an IP datagram

IP datagram is a TCP segment for port 80

Page 22: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

22

Layers and Services

• Service provided by TCP to HTTP:– reliable transmission of data over a logical connection

• Service provided by IP to TCP:– unreliable transmission of IP datagrams across an IP

network• Service provided by Ethernet to IP:

– transmission of a frame across an Ethernet segment

• Other services:– DNS: translation between domain names and IP addresses– ARP: Translation between IP addresses and MAC addresses

Page 23: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

23

Encapsulation and Demultiplexing

• As data is moving down the protocol stack, each protocol is adding layer-specific control information

HTTP

TCP

IP

Ethernet

User data

User dataHTTP Header

TCP Header

TCP HeaderIP Header

TCP HeaderIP HeaderEthernetHeader

EthernetTrailer

IP datagram

TCP segment

Ethernet frame

User dataHTTP Header

User dataHTTP Header

User dataHTTP Header

Page 24: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

24

Encapsulation and Demultiplexing in our Example

• Let us look in detail at the Ethernet frame between Argon and the Router, which contains the TCP connection request to Neon.

• This is the frame in hexadecimal notation.

00e0 f923 a820 00a0 2471 e444 0800 4500 002c 9d08 4000 8006 8bff 808f 8990 808f 4715 065b 0050 0009 465b 0000 0000 6002 2000 598e 0000 0204 05b4

Page 25: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

25

Parsing the information in the frame

version0x4

header length

0x5Type of Service/TOS

0x00total length (in bytes)

0x002cIdentification

0x9d08flags0102

fragment offset00000000000002

cource IP address128.143.137.144

destination IP address128.143.71.21

time-to;ive0x80

protocol0x06

header checksum0x8bff

source port number162710

destination port number8010

sequence number0x0009465b

acknowledgement number0x00000000

header length

0x6unused0000002

flags0000102

window size819210

TCP checksum0x598e

urgent pointer0x0000

maximum segment size146010

option type0x02

option length0x04

destination address00:e0:f9:23:a8:20

source address0:a0:24:71:e4:44

type0x0800

4 bytes

CRC

Ethernetheader

(14 bytes)

IP Header(20 bytes)

TCP Header(24 bytes)

Ethernettrailer

(4 bytes)

Page 26: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

26

Encapsulation and Demultiplexing

Application dataTCP HeaderIP HeaderEthernet Header Ethernet Trailer

Ethernet frame

destination address

source address

type

6 bytes

CRC

4 bytes

Page 27: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

27

00:e0:f9:23:a8:20

0:a0:24:71:e4:44

0x0800

6 bytes

CRC

4 bytes

Encapsulation and Demultiplexing: Ethernet Header

Application dataTCP HeaderIP HeaderEthernet Header Ethernet Trailer

Ethernet frame

Page 28: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

28

Encapsulation and Demultiplexing: IP Header

Application dataTCP HeaderEthernet Header Ethernet Trailer

Ethernet frame

IP Header

DS ECNversion(4 bits)

headerlength

Total Length (in bytes)(16 bits)

Identification (16 bits)flags

(3 bits)Fragment Offset (13 bits)

Source IP address (32 bits)

Destination IP address (32 bits)

TTL Time-to-Live(8 bits)

Protocol(8 bits)

Header Checksum (16 bits)

32 bits

Page 29: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

29

Encapsulation and Demultiplexing: IP Header

Application dataTCP HeaderEthernet Header Ethernet Trailer

Ethernet frame

IP Header

0x0 0x00x4 0x5 4410

9d08 0102 00000000000002

128.143.137.144

128.143.71.21

12810 0x06 8bff

32 bits

Page 30: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

30

Encapsulation and Demultiplexing: TCP Header

Application dataEthernet Header Ethernet Trailer

Ethernet frame

IP Header TCP Header

Sequence number (32 bits)

Source Port Number Destination Port Number

Acknowledgement number (32 bits)

window sizeheaderlength

0 Flags

TCP checksum urgent pointer

32 bits

length Max. segment sizeoptiontype Option:

maximum segment size

Page 31: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

31

Encapsulation and Demultiplexing: TCP Header

Application dataEthernet Header Ethernet Trailer

Ethernet frame

IP Header TCP Header

60783510

162710 8010

010

819210610 0000002 0000102

0x598e 00002

32 bits

410 146010210

Page 32: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

32

Encapsulation and Demultiplexing: Application data

Application dataEthernet Header Ethernet Trailer

Ethernet frame

IP Header TCP Header

No Application Data

in this frame

Page 33: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

33

Different Views of Networking

• Different Layers of the protocol stack have a different view of the network. This is HTTP’s and TCP’s view of the network.

HTTP client

TCP client

Argon128.143.137.144

HTTPserver

TCP server

Neon128.143.71.21

IP Network

HTTPserver

TCP server

Page 34: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

34

Network View of IP Protocol

128.143.71.21128.143.137.144

Router

128.143.137.0/24Network

128.143.137.1 128.143.71.1

128.143.71.0/24Network

Page 35: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

35

Network View of Ethernet

• Ethernet’s view of the network

Argon(128.143.137.144)

Router137(128.143.137.1)

Ethernet Network

Page 36: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

36

Internet Control Message Protocol (ICMP)

Page 37: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

37

• The IP (Internet Protocol) relies on several other protocols to perform necessary control and routing functions:

• Control functions (ICMP)• Multicast signaling (IGMP)• Setting up routing tables (RIP, OSPF, BGP, PIM, …)

Control

Routing

ICMP IGMP

RIP OSPF BGP PIM

Overview

Page 38: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

38

Overview

• The Internet Control Message Protocol (ICMP) is a helper protocol that supports IP with facility for – Error reporting– Simple queries

• ICMP messages are encapsulated as IP datagrams:

IP header ICMP message

IP payload

Page 39: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

39

ICMP Message Format

additional informationor

0x00000000

type code checksum

bit # 0 15 23 248 317 16

4 byte header:• Type (1 byte): type of ICMP message• Code (1 byte): subtype of ICMP message• Checksum (2 bytes): similar to IP header checksum. Checksum is

calculated over entire ICMP message

If there is no additional data, there are 4 bytes set to zero. each ICMP messages is at least 8 bytes long

Page 40: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

40

ICMP Query Message

ICMP query: • Request sent by host to a router or host• Reply sent back to querying host

Host

ICMP Request

Host or router

ICMP Reply

Page 41: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

41

Example of ICMP Queries

Type/Code: Description

8/0 Echo Request

0/0 Echo Reply

13/0 Timestamp Request

14/0 Timestamp Reply

10/0 Router Solicitation

9/0 Router Advertisement The ping command uses Echo Request/ Echo Reply

Page 42: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

42

• Ping’s are handled directly by the kernel• Each Ping is translated into an ICMP Echo Request• The Ping’ed host responds with an ICMP Echo Reply

Example of a Query: Echo Request and Reply

Hostor

Router

Hostor

Router

ICMP ECHO REQUESTHost or

router

Host or

router

ICMP ECH

O REPLY

Page 43: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

43

Example of a Query: ICMP Timestamp

• A system (host or router) asks another system for the current time.

• Time is measured in milliseconds after midnight UTC (Universal Coordinated Time) of the current day

• Sender sends a request, receiver responds with reply

Type(= 17 or 18)

Code(=0)

Checksum

32-bit sender timestamp

identifier sequence number

32-bit receive timestamp

32-bit transmit timestamp

Sender Sender

ReceiverReceiver

TimestampRequest

TimestampReply

Page 44: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

44

ICMP Error message

• ICMP error messages report error conditions • Typically sent when a datagram is discarded• Error message is often passed from ICMP to the

application program

Host

IP datagram

Host or router

ICMP ErrorMessage

IP datagramis discarded

Page 45: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

45

ICMP Error message

• ICMP error messages include the complete IP header and the first 8 bytes of the payload (typically: UDP, TCP)

Unused (0x00000000)

IP header ICMP header IP header 8 bytes of payload

ICMP Message

from IP datagram that triggered the error

type code checksum

Page 46: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

46

Frequent ICMP Error message

Type Code Description

3 0–15 Destination unreachable

Notification that an IP datagram could not be forwarded and was dropped. The code field contains an explanation.

5 0–3 Redirect Informs about an alternative route for the datagram and should result in a routing table update. The code field explains the reason for the route change.

11 0, 1 Time exceeded

Sent when the TTL field has reached zero (Code 0) or when there is a timeout for the reassembly of segments (Code 1)

12 0, 1 Parameterproblem

Sent when the IP header is invalid (Code 0) or when an IP header option is missing (Code 1)

Page 47: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

47

Some subtypes of the “Destination Unreachable”

Code Description Reason for Sending

0 Network Unreachable

No routing table entry is available for the destination network.

1 Host Unreachable

Destination host should be directly reachable, but does not respond to ARP Requests.

2 Protocol Unreachable

The protocol in the protocol field of the IP header is not supported at the destination.

3 Port Unreachable

The transport protocol at the destination host cannot pass the datagram to an application.

4 Fragmentation Needed and DF Bit Set

IP datagram must be fragmented, but the DF bit in the IP header is set.

Page 48: 1 Introduction to Networking Concepts Chu-Sing Yang Department of Electrical Engineering National Cheng Kung University.

48

Example: ICMP Port Unreachable

• RFC 792: If, in the destination host, the IP module cannot deliver the datagram because the indicated protocol module or process port is not active, the destination host may send a destination unreachable message to the source host.

• Scenario:

Client Client

Request a serviceat a port 80

Server Server

No process is waiting at port 80

Port

Unreacha

ble


Recommended