Download Introduction

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Multiprotocol Label Switching wikipedia , lookup

Net neutrality wikipedia , lookup

CAN bus wikipedia , lookup

IEEE 802.1aq wikipedia , lookup

Net neutrality law wikipedia , lookup

IEEE 1355 wikipedia , lookup

Wake-on-LAN wikipedia , lookup

Network tap wikipedia , lookup

Asynchronous Transfer Mode wikipedia , lookup

SIP extensions for the IP Multimedia Subsystem wikipedia , lookup

Airborne Networking wikipedia , lookup

TCP congestion control wikipedia , lookup

AppleTalk wikipedia , lookup

Peering wikipedia , lookup

Computer network wikipedia , lookup

Net bias wikipedia , lookup

Piggybacking (Internet access) wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

Point-to-Point Protocol over Ethernet wikipedia , lookup

Zero-configuration networking wikipedia , lookup

Deep packet inspection wikipedia , lookup

List of wireless community networks by region wikipedia , lookup

UniPro protocol stack wikipedia , lookup

Internet protocol suite wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

Transcript
Review of Important Networking
Concepts
Introductory material.
This module uses the example from the previous module to review
important networking concepts: protocol architecture, protocol layers,
encapsulation, demultiplexing, network abstractions.
1
Networking Concepts
• Layered Architecture to reduce complexity
– Encapsulation
– Abstractions
2
Sending a packet from Argon to Neon
argon.tcpip-lab.edu
"Argon"
128.143.137.144
neon.tcpip-lab.edu
"Neon"
128.143.71.21
router137.tcpip-lab.edu
"Router137"
128.143.137.1
router71.tcpip-lab.edu
"Router71"
128.143.71.1
Router
Ethernet Network
Ethernet Network
3
Sending a packet128.143.71.21
from Argon
to
Neon
is not on my local network.
Therefore, I need to send the packet to my
128.143.71.21
on my local
network.
default
gateway withisaddress
128.143.137.1
DNS:
DNS:
The is
IPisthe
address
address
of
Therefore, I can send the packet directly.
ARP:What
What
theIPMAC
of“neon.tcpip-lab.edu
“neon.tcpip-lab.edu
””is? of
address
128.143.137.1?
ARP:
TheofMAC
address
128.143.71.21
128.143.137.1 is 00:e0:f9:23:a8:20
argon.tcpip-lab.edu
"Argon"
128.143.137.144
ARP: What is the MAC
ARP:
TheofMAC
address of
address
128.143.71.21?
128.143.137.1 is neon.tcpip-lab.edu
00:20:af:03:98:28
"Neon"
128.143.71.21
router137.tcpip-lab.edu
"Router137"
128.143.137.1
router71.tcpip-lab.edu
"Router71"
128.143.71.1
Router
frame
Ethernet Network
frame
Ethernet Network
4
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
5
What’s a protocol?
a human protocol and a computer network protocol:
Hi
TCP connection
req
Hi
TCP connection
response
Got the
time?
Get http://www.awl.com/kurose-ross
2:00
<file>
time
Q: Other human protocols?
6
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
7
TCP/IP Protocol Suite
• The TCP/IP protocol suite is the
protocol architecture of the
Internet
Application
User-level programs
Transport
• 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.
Operating system
Network
Data Link
Data Link
Media Access
Control (MAC)
Sublayer in
Local Area
Networks
8
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
9
TCP/IP Suite and OSI Reference Model
Application
Layer
The TCP/IP protocol stack does not
define the lower layers of a complete
protocol stack
Application
Layer
Transport
Layer
Network
Layer
(Data) Link
Layer
Presentation
Layer
Session
Layer
Transport
Layer
Network
Layer
(Data) Link
Layer
Physical
Layer
TCP/IP Suite
OSI
Reference
Model
10
Assignment of Protocols to Layers
ping
application
HTTP
Telnet
FTP
TCP
DNS
SNMP
Application
Layer
Transport
Layer
UDP
Routing Protocols
ICMP
RIP
IP
IGMP
PIM
Network
Layer
OSPF
DHCP
ARP
Ethernet
Network
Interface
Data Link
Layer
11
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 Layer
N+1 Layer
Entity
N+1 Layer Protocol
N+1 Layer
Entity
N Layer
Entity
N Layer Protocol
N Layer
Entity
N-1 Layer
Entity
N-1 Layer Protocol
N-1 Layer
Entity
layer N+1/N
interface
N Layer
layer N/N-1
interface
N-1 Layer
12
Service Primitives
Communication services are invoked via function calls. The
functions are called service primitives
N+1 Layer
Entity
Request
Delivery
N Layer
Entity
N+1 Layer Peer Protocol
N+1 Layer
Entity
Indicate
Delivery
N Layer
Entity
13
Service Primitives
Recall: A layer N+1 entity sees the lower layers only as a
service provider
N+1 Layer
Entity
N+1 Layer Peer Protocol
N+1 Layer
Entity
Indicate
Delivery
Request
Delivery
Service Provider
14
Layers in the Example
HTTP
HTTP protocol
HTTP
TCP
TCP protocol
TCP
IP
Ethernet
IP
IP protocol
Ethernet
argon.tcpiplab.edu
128.143.137.144
Ethernet
IP protocol
Ethernet
Ethernet
router71.tcpip- router137.tcpiplab.edu
lab.edu
128.143.137.1
128.143.71.1
00:e0:f9:23:a8:20
IP
Ethernet
neon.tcpip-lab.edu
128.143.71.21
15
Layers in the Example
HTTP
TCP
IP
Frame is an IP
datagram
Ethernet
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
IP datagram is a TCP
segment for port 80
Send
IP data-gram
to
Send a datagram (which
contains
a connection
Send IP datagram
to
IP
128.143.71.21
request) to 128.143.71.21
128.143.71.21
Frame is an IP
datagram
Send the datagram to 128.143.137.1
Ethernet
Ethernet
HTTP
TCP
IP
Send the datagram
Ethernet
to 128.143.7.21
argon.tcpipneon.tcpip-lab.edu
router71.tcpip- router137.tcpipSend Ethernet frame
Send Ethernet frame
lab.edu
128.143.71.21
lab.edu
to 00:20:af:03:98:28
to 00:e0:f9:23:a8:20 lab.edu
128.143.137.144
128.143.137.1
128.143.71.1
00:e0:f9:23:a8:20
16
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
17
Encapsulation and Demultiplexing
• As data is moving down the protocol stack, each protocol is
adding layer-specific control information
User data
HTTP
HTTP Header
User data
HTTP Header
User data
TCP
TCP Header
IP
TCP segment
IP Header
Ethernet
TCP Header
HTTP Header
User data
IP datagram
Ethernet
Header
IP Header
TCP Header
HTTP Header
User data
Ethernet
Trailer
Ethernet frame
18
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
9d08
0050
0204
f923 a820 00a0 2471 e444 0800 4500 002c
4000 8006 8bff 808f 8990 808f 4715 065b
0009 465b 0000 0000 6002 2000 598e 0000
05b4
19
Encapsulation and Demultiplexing
6 bytes
destination address
4 bytes
source address
type
Ethernet Header
CRC
IP Header
TCP Header
Application data
Ethernet Trailer
Ethernet frame
20
Encapsulation and Demultiplexing:
Ethernet Header
6 bytes
00:e0:f9:23:a8:20
4 bytes
0:a0:24:71:e4:44
0x0800
Ethernet Header
CRC
IP Header
TCP Header
Application data
Ethernet Trailer
Ethernet frame
21
Encapsulation and Demultiplexing:
IP Header
32 bits
version
(4 bits)
header
length
DS
flags
(3 bits)
Identification (16 bits)
TTL Time-to-Live
(8 bits)
Total Length (in bytes)
(16 bits)
ECN
Protocol
(8 bits)
Fragment Offset (13 bits)
Header Checksum (16 bits)
Source IP address (32 bits)
Destination IP address (32 bits)
Ethernet Header
IP Header
TCP Header
Application data
Ethernet Trailer
Ethernet frame
22
Encapsulation and Demultiplexing:
IP Header
32 bits
0x4
0x5
0x0
0x0
9d08
12810
4410
0102
00000000000002
0x06
8bff
128.143.137.144
128.143.71.21
Ethernet Header
IP Header
TCP Header
Application data
Ethernet Trailer
Ethernet frame
23
Encapsulation and Demultiplexing:
TCP Header
32 bits
Source Port Number
Destination Port Number
Sequence number (32 bits)
Acknowledgement number (32 bits)
header
length
0
Flags
TCP checksum
option
type
Ethernet Header
IP Header
window size
urgent pointer
length
Max. segment size
TCP Header
Application data
Option:
maximum
segment size
Ethernet Trailer
Ethernet frame
24
Encapsulation and Demultiplexing:
TCP Header
32 bits
162710
8010
60783510
010
610
0000002
0000102
0x598e
210
Ethernet Header
IP Header
819210
00002
410
TCP Header
146010
Application data
Ethernet Trailer
Ethernet frame
25
Encapsulation and Demultiplexing:
Application data
Ethernet Header
IP Header
TCP Header
Application data
Ethernet Trailer
Ethernet frame
26
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.
Argon
128.143.137.144
Neon
128.143.71.21
HTTP client
HTTP
server
HTTP
server
TCP client
TCP server
TCP server
IP Network
27
Network View of IP Protocol
28
Network View of Ethernet
• Ethernet’s view of the network
29
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.
30
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.
31
Internet History
1961-1972: Early packet-switching principles
• 1961: Kleinrock - queueing
theory shows effectiveness
of packet-switching
• 1964: Baran - packetswitching 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
32
Internet History
1972-1980: Internetworking, new and proprietary nets
•
•
•
•
•
•
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
33
Internet History
1990, 2000’s: commercialization, the Web, new apps
•
•
•
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
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
of the Web
34
Applications of the Internet
• Traditional core applications:
Email
News
Remote Login
File Transfer
• The killer application:
World-Wide Web (WWW), P2P
• Future applications:
Videoconferencing and Telephony
Multimedia Services
Internet Broadcast
35
Growth of the Internet
Source: Internet Software Consortium
36
Internet Infrastructure
Regional
Network
Backbone Network
Regional
Network
IXP
local ISP
IXP
Backbone Network
local ISP
Regional
Network
local ISP
IXP
corporate
network
Regional
Network
campus
network
37
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)
38
Internet Infrastructure
• Location where a network (ISP, corporate network, or regional
network) gets access to the Internet is called a Point-ofPresence (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.
39
Tier-1 ISP: e.g., Sprint
Sprint US backbone network
40
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.
41
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)
42
Assigning Identifiers for the Internet
• Who gives University the domain name “tcpip-lab.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.
43
Summary
• Layered Internet architecture
– Reduce complexity
– Higher layer views lower layer as service provider
– Application layer, transport layer, network layer, and link
layer
44