tcp/ip, associated internet protocols, and routing associated internet... · describe key issues of...
TRANSCRIPT
TCP/IP, Associated
Internet Protocols,
and Routing
2
Objectives
Identify the major protocols of the TCP/IP suite from the five-layer Internet model architecture
Compare protocols in relation to their architecture layers
Differentiate between the areas of emphasis for each of the layers in the Internet model architecture
Discuss the challenge of Internetwork addressing and describe how different protocols approach addressing to make it work
Identify differences between TCP and UDP at the transport layer and describe how these relate to IP
Describe key issues of Internet routing and present Internet quality of service issues, covering both policy and class methods
Provide an analysis of voice over IP communications including considerations that must be weighed before implementing deployment
3
Overview
“We consider the TCP/IP architecture to be
a five-layer model, of which the top three layers
(application, transport, and Internet)
are most common in the Internet.”
Table 13.1 Major TCP/IP protocols
4
Layer 3 (Internet/Network)
Protocols
Node Any device on the network
Examples: switches, routers, workstations, laptops
Switches and routers need not go above layer 3
vs.
Host End-user device
Examples: workstations and laptops
As an end-user node, a host needs to run the entire protocol stack (i.e., layers 1 through 5 in the TCP/IP model)
5
Layer 3 (Internet/Network)
Protocols
Communication categories
Location in
TCP/IP ModelCommunications Category
Layer 4Host-to-host where the hosts
are end points of the comms
Layer 3Node-to-node connected
through intervening nodes
Layer 2Directly connected node-to-
node
6
Layer 3 (Internet/Network)
Protocols
IP routing
When nodes are not directly connected
Deals with switching decisions—where to send the packet next
IP routing algorithm categories Link state—conditions between a router and the
next hop
Distance vector—possibilities for total path from source to destination
Node-to-node communication
between two directly connected devices
is handled at the data link layer (layer 2)
7
Layer 3 (Internet/Network)
Protocols
Address resolutionWhat?
Converting or relating a (logical) host IP address to its network address
Why?
Knowing a host’s (logical) IP address does not mean its network address is known
Knowing an address within a network does not mean the IP address is known
How?
Address resolution protocol (ARP)—converts an IP address to a machine address (i.e., physical address)
Reverse address resolution protocol (RARP)—converts a machine address into its associated IP address
8
Layer 3 (Internet/Network)
Protocols
Fig 13.1 – The ARP header
ARP translates layer 3 (IP) addresses into layer 2 (usu. MAC sublayer)
RARP translates layer 2 addresses into layer 3
Both ARP and RARP
use the same header
9
Layer 3 (Internet/Network)
Protocols Dynamic host configuration protocol (DHCP)
What?
Assigns host IP addresses and other transmission parameters to devices in an autonomous network
How?
Three address allocation schemes Manual
Network/Server administrator manually enters associations in the DHCP server table for each machine
Machines in the table get the same IP address every log on
Automatic Network/Server administrator enters an address range
DHCP server assigns the permanent IP address at first log on
Dynamic Same as automatic except a new IP address is assigned
every time a machine logs on (i.e., not a permanent IP address assignment)
Commonly used by ISPs
for dial-up connections
10
Layer 3 (Internet/Network)
Protocols
Internet control message protocol (ICMP)
ICMP messages are embedded in IP packets
Type number—indicates kind of message problem
Code number—specific details within type
“For hosts to be informed of problems with their
transmission, messages must be transmitted to them by
the parties discovering the problems.”
E.g., Type 3 (“destination unreachable”)—Code options:
0 network unreachable
1 host unreachable
2 protocol not supported
11
Layer 3 (Internet/Network)
Protocols
Internet group message protocol (IGMP)What?
Completely different from ICMP
Mechanism that supports IP multicasting Provides temporary “host group” addresses
Adds/deletes members from a group
How?In addition to the normal unique IP address
Temporary group members receive a temporary multicast address
Permanent group members receive a permanent multicast address
Hosts Can belong to more than one group
Do not need to belong to a group to send the group a multicast message
Must belong to a group to receive a multicast message
12
Layer 3 (Internet/Network)
Protocols
What is streaming?
Transferring data in such a way that it can be processed as a steady, uninterrupted flow
If data are received at a faster rate than necessary for processing
If data delivery is too slow or, not steady
Not a problem!
Data can be buffered
at receiver and
processed as needed
Ouch!
Flow is interrupted
13
Layer 4 (Transport) Protocols
Transport control protocol (TCP)What?
One of the main protocols of the Internet
Developed along with IP to support packet transmissions over the ARPANET
Connection-oriented Guarantees end-to-end packet delivery
Guarantees correct ordering of segmented (fractionalized) packets
How?
On transmission TCP divides messages that are too large for IP into segments and numbers
so they can be correctly ordered at the recipient
For reliability, TCP end receivers send acknowledgements back to the sender
If an acknowledgement is not received within a given time, the package is re-sent
Packets with checksum failures are not acknowledged, and eventually re-sent
14
Layer 4 (Transport) Protocols
Transport control protocol (TCP)—problems
For applications that depend on speedy packet
delivery in steady data streams
Applications will experience slow-down from router
processing requirements
If packets are lost or defective, subsequent packets are
withheld from the application until the replacement arrives
For real-time, streaming audio, streaming video,
or voice transmissions, TCP will not do
15
Layer 4 (Transport) Protocols
User datagram protocol (UDP)What?
Second of two protocols available at the TCP/IP transport layer
Connectionless oriented “Best effort” delivery—packet delivery is not guaranteed
Packet ordering is not guaranteed
Significantly faster than TCP
How?
UDP handles segments of a transmission independently [handling packet segments on the transport layer the same as how IP handles datagrams at the IP layer
UDP adds a transport layer to the data segment that contains the destination and source port addresses
UDP supports real-time, streaming audio,
streaming video, and voice transmissions.
16
Layer 5 (Application) Protocols
Hypertext transfer protocol (HTTP)What?
Leftmost part of a URL (http://)
Indicates the protocols (service) being used on the Web page
Commonly used to view websites and to retrieve a variety of data from a Web server
Connectionless—no connection between client and server after the request is carried out
Stateless—each request is treated without reference to previous requests
By specifying the data type in the http message header,
http can transport any data type
17
Layer 5 (Application) Protocols
How?
Http uses the services of TCP and IP to
actually move data between the browser
and the server
Http at the web server operates over the
well-known TCP port 80
18
Layer 5 (Application) Protocols
Common gateway interface (CGI)What?
Accessing a database or producing dynamic Web pages requires running a server-side program
CGI defines an open standard that allows Web servers and server-side programs to interact
Commonly used to view websites and to retrieve a variety of data from a Web server
How?
Independent of any programming language
CGI defines How a Web server can supply input information to a program it is running
How the program must return its results to the server
How a dynamic document is to be constructed as a result
Programs can be written in any programming language
that supports the CGI standard
19
Layer 5 (Application) Protocols
File transfer protocol (FTP)What?
Establishes rules for transferring data between an ftp server and a client
Users can download a file from an ftp server and upload a file to an ftp server
Used to download large data sets where the receiver is interested in the data but not concerned with presentation
How?
Users interact with the server to obtain data sets but do not interact with the data
In many instances, a password is required to log on to an ftp server before data can be moved in either direction
Transfers can be initiated by graphical user interface programs or line commands
20
Layer 5 (Application) Protocols
Simple network management protocol (SNMP)What?
Assists in managing networks remotely by
Enabling monitoring and controlling of network nodes
Collecting performance data, and
Administering cost, configuration and security measures
How?
SNMP is implemented on a network device by a software module
A network management system (NMS) hardware/software combination aids network management using data provided through SNMP
21
Layer 5 (Application) Protocols
E-mail protocols
Sending
Simple mail transfer protocol (SMTP)
Receiving
Post office protocol (POP)
Internet message access protocol (IMAP)
Clients use one or the other
not both
Homes
Small businesses
Remote connections
Large networks
22
Layer 5 (Application) Protocols
E-mail protocols
Sending
Simple mail transfer protocol (SMTP)
When you connect to the Internet
to send e-mail, client software uses
your connection provider’s SMTP server
to send your messages.
23
Layer 5 (Application) Protocols
E-mail protocolsReceiving
Post office protocol (POP) Downloads e-mail to computer’s e-mail client inbox
Disconnects as soon as e-mail is downloaded
Internet message access protocol (IMAP) More complex, more sophisticated than POP
Allows… Multiple clients to simultaneously connect to same inbox
Clients can use/manipulate multiple mailboxes and folders on same server
Clients can search e-mail on server besides inbox
Clients can remain connected to the server
24
Layer 5 (Application) Protocols
TelnetWhat?
Client/server software protocol
Originally designed to emulate a computer or terminal connected to a mainframe via a phone line
It functions as though a direct connection (terminal-to-mainframe) was in place
Widely used for line-by-line commands
Not encrypted—vulnerable to hacking!
Telnet is being replaced by secure shell (SSH)
which provides encrypted communications
between two hosts over unsecure networks
25
Layer 5 (Application) Protocols
Other layer 5 protocols
Voice over IP (VoIP) “Telephone calls over the Internet”
Carries voice over packet switched IP networks
H.323 Part of a group of standards covering multimedia
communications over a variety of network types
Originally designed to handle multimedia communications over LANS that had no inherent quality of service (QoS) capability
H.323 compliance ensures vendor multimedia interoperability
26
Internet Routing
Routing
Each step along the way is called a hop
Layer 3 addresses identify devices on the route
Routing protocols support layer 3 addresses
Lookup tables indicate where to send packets next
Static—created/maintained by system administrators
Dynamic—created/maintained by routers
Determining the path a packet should take
while traveling from source to destination
27
Internet Routing
Routing categorizations Predetermined or determined on-the-fly
Will every packet follow the same route (virtual circuit) or, will each packet’s next hop be determined by the router (connectionless)?
Next hop routing A router table only contains entries that tell the packet
what the next hop will be
Network-specific routing Routers select from a list of layer 3 addresses for routing decisions
Link state or, distance vector Is the router focused on next hop (link state) or,
full path (distance vector)?
Interior or exterior Are the routing protocols used entirely within a self-contained
(autonomous) network (interior) or are the protocols used between networks (exterior)?
28
Internet Routing
Interior routing protocols (aka interior gateway protocols [IGP])
Open shortest past first (OSPF) Link state next hop technique
Uses Dijkstra’s algorithm to determine “shortest distance” (i.e., least cost, fastest, most reliable, etc.)
Routing information protocol (RIP) Dynamic distance vector method based on hop counts
Uses Bellman-Ford (or Dijkstra’s) algorithm
Each router creates a table that lists every other network within the system that it can reach
Problem with RIP: smallest hop count is not always best route!
29
Internet Routing
Exterior routing protocols (aka exterior gateway protocols [EGP])
Border gateway protocol (BGP) (also exterior BGP [EBGP])
The major exterior routing protocol of the Internet
Supports classless inter-domain routing (CIDR)
Runs on border routers providing translation services between autonomous networks
Gateways connecting an organization to the Internet are typically border routers running BGP
BGP is also used as an interior protocol (IBGP)
in large corporate networks
30
UDP and TCP Revisited
Layer responsibilities
TCP/IP model—
layersResponsibility
Layer 4 – Transport
Process-to-process communications
between hosts at end points
[end-to-end]
Layer 3—InternetPacket delivery between nodes
not directly connected
Layer 2—data linkPacket delivery between
directly connected nodes
TCP
UDP
The Internet is unreliable at the Internet layer
because IP is an unreliable service
31
UDP and TCP Revisited
Transport layer protocols
TCP
Complicated, but reliable
UDP
Simple, but unreliable
Reliable service—guaranteed delivery
Unreliable service—delivery is not guaranteed
When reliability is needed
When reliability is not needed
+ IP
+ IP
32
UDP and TCP Revisited
Internet transport design philosophy Minimal control at the hops where routing occurs—no addressing
above layer 3
Overall control at the end points where layer 4 addressing is required to identify hosts
Transport layer design concerns Flow control
Prevents a sender from overwhelming a receiver by sending data too fast
Congestion Deals with “traffic jams” at nodes (e.g., router feeding too many links)
Error control Discovering and correcting faulty packets
33
UDP and TCP Revisited
Ports Every host has two types of ports
Physical (hardware)—where devices are attached
Virtual (software)—numbers that track processes Two-byte numbers (divided into ranges by IANA)
Well-known ports 0 to 1,023
Registered ports 1,024 to 49,151
Dynamic range 49,152 to 65,535 (processes, as needed)
Sockets Virtual identifier
A virtual connection to a process running on a host
Combination of the (virtual) port number and the (virtual) IP address
UDP
69 TFTP
161 SNMP
TCP
20 FTP
25 SMTP
80 HTTP
34
UDP and TCP Revisited
User Datagram Protocol (UDP)
Unreliable, connectionless transport service
Simple, fast, little overheadFig 13.2
The UDP header
35
UDP and TCP Revisited
Transport Control Protocol (TCP) Reliable, connection-oriented transport service
A connection is established in a three-step process (“three-way handshake”):
1. Host 1 (e.g., client) sends a connection request to Host 2 (e.g., server)
2. Server sends a confirmation packet to client
3. Client confirms packet receipt; connection is established
Connection termination occurs separately in each direction
Client sends a termination packet to server that is acknowledged; this ends client-to-server connection
Server still needs to terminate the server-to-client connection
36
UDP and TCP Revisited
Transport Control Protocol (TCP)
Reliable, connection-oriented transport service
Fig 13.3 - The TCP header
37
Quality of Service on the Internet
Service Level Agreement (SLA) specifying Quality of Service (QoS) A formal contract between a business and
a communications provider
Provides
Levels of service that will be provided
Under what conditions
At what cost
“Quality of service (QoS) for any communication system is
that it provides an acceptable level of network performance
relative to application need.”
38
Quality of Service on the Internet
Quality of Service (QoS)
Components Bandwidth
Latency (delay)
Jitter
Packet loss
Related measures Reliability
Sequencing
Error rate
Data rate
Throughput
39
Quality of Service on the Internet
Quality of Service (QoS)—application requirements E-mail and file transfers
Reliable, complete, error free
Bandwidth, latency, jitter relatively unimportant
Browser web page rendering Complete, error free, greater bandwidth
Latency, jitter relatively unimportant
Streaming audio Latency, jitter can distort sound
Lost packets are not so important
40
Quality of Service on the Internet
Streaming video
Sensitive to jitter, delays; needs bandwidth, throughput
Lost packets are not so important
Video conferencing
Demands high bandwidth for audio and video
Okay to sacrifice video packets if audio is maintained
Internet telephony (VoIP)
Jitter can render calls unintelligible
Latency and some packet loss might be okay,
but not if competing against PSTN service
41
Quality of Service on the Internet
Quality of Service (QoS)—policy and class methods
Integrated services (IntServ) Capacity (bandwidth reservation) is key
Resource reservation protocol (RSVP) requests capacity for an end-to-end route before the flow begins with three response classes1. Guaranteed—capacity is available on every route hop
No packet loss; specified max delay and jitter, guaranteed bandwidth
2. Controlled—uses statistical division multiplexing to make a heavily loaded route behave as if it were lightly loaded
Typically provides constant service for a given flow
3. Best effort— operation without reservation (as if no IntServ)
No bandwidth is reserved
42
Quality of Service on the Internet
Differentiated services (DiffServ)
Tries to alleviate processing burden of IntServ
Aggregates flow at the edge routers
Core routers need not analyze flow requirements
or track flow states
43
Quality of Service on the Internet
Multiprotocol label switching (MPLS) An IntServ—DiffServ hybrid
Provides guarantees where warranted without a large processing burden
All routers involved must be MPLS enabled
Fig.13.4 The MPLS header
44
VoIP
Voice over IP (VoIP) (also “IP telephony”)
Method for transmitting voice over an IP network (usually Internet)
VoIP considerations for practical use Must behave like a PSTN telephone call
(i.e., circuit switched service)
Severe latency and jitter can render IP telephony unusable
Packet sequencing is an issue, but there can be no waiting Service will not tolerate waiting for dropped/out-of-order
packets
UDP must maintain flow without waiting for packet issues
Connect, use, and disconnect are required (like telephone)
45
VoIP
Voice over IP (VoIP) (also “IP telephony”)
If there is no congestion, VoIP calls work smoothly
When congestion occurs, all the other problems come to the fore
Solution involves hardware and software supported by protocols
“In the end, the main problem for VoIP
is congestion, a traffic volume vs. bandwidth issue.”
46
VoIP
VoIP methods to offset congestion Voice digitizing at each end
Analog-to-digital converter (ADC) in combination with a digital-to-analog converter (DAC) configured
As a standalone box for connection to a phone
On a card in a computer
Built into a digital phone
Compression techniques to reduce bandwidth requirements
Protocols with connection-oriented signaling To exchange call management information for establishing
connections and managing the call
To provide familiar telephone features (ring tones, busy signals, etc.)
Together the ADC/DAC is
called a codec (coder/decoder)
47
VoIP
VoIP connection-oriented signaling-related protocols H.323
Part of ITU-T applications layer (H.32x) suite of protocols for multimedia communications
Session initiation protocol (SIP) From Internet Engineering Task Force (IETF)
Designed specifically for VoIP
Handles call maintenance, termination, and other signaling features
Used for interactive multimedia sessions
Media gateway control protocol (MGCP) and megaco Gateway protocols that allow interconnection of IP and non-IP networks
(e.g., PSTN)
Physically Call agent (media gateway controller) sets up and terminates calls
A media gateway converts voice to packets and back
48
VoIP
VoIP call transport QoS
Issues that protocols must handle
Latency
Jitter
Packet loss
Sequencing
Protocols for handling issues
Real-time transport protocol (RTP)
Real-time transport control protocol (RTCP)
Secure real-time transport control protocol (SRTCP)
49
VoIP
VoIP—Real-time transport protocol (RTP) How it works
RTP numbers and stamps each voice packet
End host assembles packets in sequence
End host knows if packets are lost Packets are forwarded as they are received
Out-of-sequence packets are ignored (dropped)
Other notes RTP + (H.323 or SIP) cell phone “push to talk”
SRTCP adds encryption and authentication
Caveat No end-to-end transport protocol
can guarantee real-time flow transport