44
Review of Important Networking Concepts Introductory material using Prof. Liebeherr on-line notes Review of important networking concepts: protocol architecture, protocol layers, encapsulation, demultiplexing, network abstractions.

Review of Important Networking Concepts

Embed Size (px)

DESCRIPTION

Review of Important Networking Concepts. Introductory material using Prof. Liebeherr on-line notes Review of important networking concepts: protocol architecture, protocol layers, encapsulation, demultiplexing, network abstractions. Networking Concepts. - PowerPoint PPT Presentation

Citation preview

Page 1: Review of Important Networking Concepts

Review of Important Networking Concepts

Introductory material using Prof. Liebeherr on-line notes

Review of important networking concepts: protocol architecture, protocol layers, encapsulation, demultiplexing, network abstractions.

Page 2: Review of Important Networking Concepts

Networking Concepts

Layered Architecture to reduce complexity Encapsulation Abstractions

Page 3: Review of Important Networking Concepts

neon.netlab.edu"Neon"

128.143.71.21

argon.netlab.edu "Argon"128.143.137.144

router137.netlab.edu"Router137"

128.143.137.1

router71.netlab.edu"Router71"128.143.71.1

Ethernet NetworkEthernet Network

Router

Sending a packet from Argon to Neon

Page 4: Review of Important Networking Concepts

DNS: The IP address of

“neon.netlab.edu” is 128.143.71.21

ARP: What is the MAC address of 128.143.137.1?

neon.netlab.edu"Neon"

128.143.71.21

argon.netlab.edu "Argon"128.143.137.144

router137.netlab.edu"Router137"

128.143.137.1

router71.netlab.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.netlab.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 5: Review of Important Networking Concepts

What’s a protocol?

human protocols: “what’s the time?” “I have a question” introductions

… specific msgs sent

… specific actions taken when msgs received, or other events

network protocols: machines rather than

humans all communication activity in

Internet governed by protocols

protocols define format, order of msgs sent and received among network entities, and actions taken on msg

transmission, receipt

Page 6: Review of Important Networking Concepts

What’s a protocol?

a human protocol and a computer network protocol:

Q: Other human protocols?

Hi

Hi

Got thetime?

2:00

TCP connection req

TCP connectionresponseGet http://www.awl.com/kurose-ross

<file>time

Page 7: Review of Important Networking Concepts

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 8: Review of Important Networking Concepts

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 9: Review of Important Networking Concepts

Functions of the Layers Data Link Layer:

Service: Reliable transfer of frames over a linkMedia 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 10: Review of Important Networking Concepts

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 11: Review of Important Networking Concepts

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 12: Review of Important Networking Concepts

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 13: Review of Important Networking Concepts

Service Primitives

N+1 LayerEntity

N+1 LayerEntity

N LayerEntity

N LayerEntity

N+1 Layer Peer Protocol

Request Delivery

IndicateDelivery

Communication services are invoked via function calls. The functions are called service primitives

Page 14: Review of Important Networking Concepts

Service Primitives

Recall: 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 15: Review of Important Networking Concepts

Layers in the Example

HTTP

TCP

IP

argon.netlab.edu128.143.137.144

Ethernet Ethernet Ethernet

IP

HTTP

TCP

IP

neon.netlab.edu128.143.71.21

Ethernet

router71.netlab.edu128.143.137.1

00:e0:f9:23:a8:20

router137.netlab.edu128.143.71.1

HTTP protocol

TCP protocol

IP protocol

Ethernet

IP protocol

Ethernet

Page 16: Review of Important Networking Concepts

Layers in the Example

HTTP

TCP

IP

argon.netlab.edu128.143.137.144

Ethernet Ethernet Ethernet

IP

HTTP

TCP

IP

neon.tcpip-lab.edu128.143.71.21

Ethernet

router71.netlab.edu128.143.137.1

00:e0:f9:23:a8:20

router137.netlab.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 17: Review of Important Networking Concepts

Layers and Services

Service provided by TCP to HTTP: reliable transmission of byte streams 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 18: Review of Important Networking Concepts

Encapsulation & 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 19: Review of Important Networking Concepts

Encapsulation & 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 20: Review of Important Networking Concepts

Encapsulation & Demultiplexing

Application dataTCP HeaderIP HeaderEthernet Header Ethernet Trailer

Ethernet frame

destination address

source address

type

6 bytes

CRC

4 bytes

Page 21: Review of Important Networking Concepts

00:e0:f9:23:a8:20

0:a0:24:71:e4:44

0x0800

6 bytes

CRC

4 bytes

Encapsulation & Demultiplexing: Ethernet Header

Application dataTCP HeaderIP HeaderEthernet Header Ethernet Trailer

Ethernet frame

Page 22: Review of Important Networking Concepts

Encapsulation & 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 23: Review of Important Networking Concepts

Encapsulation & 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 24: Review of Important Networking Concepts

Encapsulation & 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 25: Review of Important Networking Concepts

Encapsulation & 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 26: Review of Important Networking Concepts

Encapsulation & Demultiplexing: Application data

Application dataEthernet Header Ethernet Trailer

Ethernet frame

IP Header TCP Header

Page 27: Review of Important Networking Concepts

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 28: Review of Important Networking Concepts

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 29: Review of Important Networking Concepts

Network View of Ethernet

Ethernet’s view of the network

Argon(128.143.137.144)

Router137(128.143.137.1)

Ethernet Network

Page 30: Review of Important Networking Concepts

The Evolution of Internet

Introductory material.

An overview lecture that covers Internet related topics, including a definition of the Internet, an overview of its history and growth, and standardization and naming.

Page 31: Review of Important Networking Concepts

A Definition

On October 24, 1995, the FNC unanimously passed a resolution defining the term Internet. •RESOLUTION: The Federal Networking Council (FNC) agrees that the following language reflects our definition of the term "Internet". "Internet" refers to the global information system that --

•(i) is logically linked together by a globally unique address space based on the Internet Protocol (IP) or its subsequent extensions/follow-ons;

•(ii) is able to support communications using the Transmission Control Protocol/Internet Protocol (TCP/IP) suite or its subsequent extensions/follow-ons, and/or other IP-compatible protocols; and

•(iii) provides, uses or makes accessible, either publicly or privately, high level services layered on the communications and related infrastructure described herein.

Page 32: Review of Important Networking Concepts

Internet History

1961: Kleinrock - queueing theory shows effectiveness of packet-switching

1964: Baran - packet-switching in military nets

1967: ARPAnet conceived by Advanced Research Projects Agency

1969: first ARPAnet node operational

1972: ARPAnet demonstrated

publicly NCP (Network Control

Protocol) first host-host protocol

first e-mail program ARPAnet has 15 nodes

1961-1972: Early packet-switching principles

Page 33: Review of Important Networking Concepts

Internet History

1970: ALOHAnet satellite network in Hawaii

1973: Metcalfe’s PhD thesis proposes Ethernet

1974: Cerf and Kahn - architecture for interconnecting networks

late70’s: proprietary architectures: DECnet, SNA, XNA

late 70’s: switching fixed length packets (ATM precursor)

1979: ARPAnet has 200 nodes

Cerf and Kahn’s internetworking principles: minimalism, autonomy - no

internal changes required to interconnect networks

best effort service model stateless routers decentralized control

define today’s Internet architecture

1972-1980: Internetworking, new and proprietary nets

Page 34: Review of Important Networking Concepts

Internet History

Early 1990’s: ARPAnet decommissioned

1991: NSF lifts restrictions on commercial use of NSFnet (decommissioned, 1995)

early 1990s: Web hypertext [Bush 1945, Nelson

1960’s] HTML, HTTP: Berners-Lee 1994: Mosaic, later Netscape late 1990’s: commercialization

of the Web

Late 1990’s – 2000’s: more killer apps: instant

messaging, P2P file sharing

network security to forefront

est. 50 million host, 100 million+ users

backbone links running at Gbps

1990, 2000’s: commercialization, the Web, new apps

Page 35: Review of Important Networking Concepts

Applications of the Internet

Traditional core applications:EmailNewsRemote LoginFile Transfer

The killer application:World-Wide Web (WWW), P2P

Future applications:Videoconferencing and TelephonyMultimedia ServicesInternet Broadcast

Page 36: Review of Important Networking Concepts

Growth of the Internet

Source: Internet Software Consortium

Page 37: Review of Important Networking Concepts

Internet Infrastructure

local ISP

campusnetwork

corporatenetwork

IXP

RegionalNetwork

RegionalNetwork

local ISP

local ISP

IXP

IXP

Backbone Network

Backbone Network

RegionalNetwork

RegionalNetwork

Page 38: Review of Important Networking Concepts

Internet Infrastructure

The infrastructure of the Internet consists of a federation of connected networks that are each independently managed (“autonomous system”) Note: Each “autononmous system may consist of multiple IP

networks

Hierarchy of network service providers Tier-1: nation or worldwide network (US: less than 20) Tier-2: regional networks (in US: less than 100) Tier-3: local Internet service provider (in US: several thousand)

Page 39: Review of Important Networking Concepts

Internet Infrastructure

Location where a network (ISP, corporate network, or regional network) gets access to the Internet is called a Point-of-Presence (POP).

Locations (Tier-1 or Tier-2) networks are connected for the purpose of exchanging traffic are called peering points. Public peering: Traffic is swapped in a specific location, called

Internet exchange points (IXPs) Private peering: Two networks establish a direct link to each

other.

Page 40: Review of Important Networking Concepts

Tier-1 ISP: e.g., Sprint

Sprint US backbone network

Page 41: Review of Important Networking Concepts

Who is Who on the Internet ?

Internet Society (ISOC): Founded in 1992, an international nonprofit professional organization that provides administrative support for the Internet. Founded in 1992, ISOC is the organizational home for the standardization bodies of the Internet.

Internet Engineering Task Force (IETF): Forum that coordinates the development of new protocols and standards. Organized into working groups that are each devoted to a specific topic or protocol. Working groups document their work in reports, called Request For Comments (RFCs).

IRTF (Internet Research Task Force): The Internet Research Task Force is a composed of a number of focused, long-term and small Research Groups.

Internet Architecture Board (IAB): a technical advisory group of the Internet Society, provides oversight of the architecture for the protocols and the standardization process

The Internet Engineering Steering Group (IESG): The IESG is responsible for technical management of IETF activities and the Internet standards process. Standards. Composed of the Area Directors of the IETF working groups.

Page 42: Review of Important Networking Concepts

Internet Standardization Process

Working groups present their work i of the Internet are published as RFC (Request for Comments).

RFCs are the basis for Internet standards. Not all RFCs become Internet Standards ! (There are

>3000 RFCs and less than 70 Internet standards A typical (but not only) way of standardization is:

Internet Drafts RFC Proposed Standard Draft Standard (requires 2 working implementation) Internet Standard (declared by IAB)

Page 43: Review of Important Networking Concepts

Assigning Identifiers for the Internet

Who gives University the domain name “netlab.edu” and who assigns it the network prefix “128.143.0.0/16”? Who assigns port 80 as the default port for web servers?

The functions associated with the assignment of numbers is referred to as Internet Assigned Number Authority (IANA).

Early days of the Internet: IANA functions are administered by a single person (Jon Postel).

Today: Internet Corporation for Assigned Names and Numbers (ICANN)

assumes the responsibility for the assignment of technical protocol parameters, allocation of the IP address space, management of the domain name system, and others.

Management of IP address done by Regional Internet Registries (RIRs): APNIC (Asia Pacific Network Information Centre) RIPE NCC (Réseaux IP Européens Network Coordination Centre) ARIN (American Registry for Internet Numbers)

Domain names are administered by a large number of private organizations that are accredited by ICANN.

Page 44: Review of Important Networking Concepts

Summary

Layered Internet architecture Reduce complexity Higher layer views lower layer as service provider Application layer, transport layer, network layer, and link layer