Title: Internetwork Layers Internetworking
1Internetwork LayersInternetworking TCP/IP
2Coming soon 120 second ET pitch
- What (topic)
- Why should we care
- What we should expect to take away from it
3Agenda
- Transport/network layer
- Protocols
- Segmenting
- Linking to app layer
- Reliable delivery
- Addressing
- Routing
- Types, Protocols, Multicasting
Messy routing of Internet data
Why packet size matters
Why your emails actually arrive
Why You-Tube is fuzzy
Why Bittorrents are unreliable
How lousy sizing can kill a business
3
4Cocktail Conversation Terms
- Internetwork layers ( USPS analogy)
- Transport layer
- Network layer
- How the app layer (say Firefox) communicates
w/ISU - Segmenting of packets?
- Routing?
- What informations needed for routing
- ZIP codes
- Network efficiency
- Reliability
- Unicasting, broadcasting, multicasting?
- Think radio networks
5OverviewThe Network and Transport Layers
Perform encapsulation of message segments from
the application layer
pass them to data link layer
pass them up to app layer
,
6OverviewThe Network and Transport Layers
- Transport layer
- Responsible for
- end-to-end delivery of messages
- setting up virtual circuits
- segmentation (breaking message into smaller
pieces) - reassembly (reconstructing original message) into
a single whole) at the receiving end - Network layer?addressing and routing of the
message.
7The Path of an Email?
ISU
?
- A 50-cent Kazaa download from Dallas?
- A You-Tube video from NY?
- A text message on Twitter?
- A Skype message from LA?
7
8China
ISU
Kzakasthan
Mexico
Peru
9Internetwork Protocols
- Most common protocol suites
- TCP/IP
- IPX/SPX
- by Xerox during in 70s, used by Novell networks
- Dumped for TCP/IP
- X.25
- by ITU-T for use in WANs (European users)
- Minitel.fr
- SNA
- by IBM in 74 for IBM mainframes
- non-standard proprietary IBMs switched to TCP/IP
TCP/IP 1974, part of DoD Arpanet project 70
backbone, MAN, WAN use TCP/IP 1998 TCP/IP
surpassed IPX/SPX for LANs
10Part 1 of 2Transmission Control Protocol
- TASK 1 performs packetization (segmentation)
- breaking up messages into smaller pieces
- numbering the segments 192 bit (24 byte) header
- reassembling them _at_ destination
- TASK 2 ensures reliable delivery
- Header fields include..
- source destination port identifiers
- a packet sequence number used in message
reassembly
11Part 2 of 2Internet Protocol
- Responsible for addressing and routing of data
packets - 2 versions (ZIP and ZIP4)
- IPv4 uses a 160 bit (20 byte) header, and 32 bit
addresses - IPv6 uses a 320 bit (40 byte) header and 128 bit
addresses - Header fields include..
- source and destination addresses
- packet length
- packet number
12Transport Layer 2 Key Functions
- 1 Linking to the Application Layer
- knowing which application layer program to send
a message to (why?) - done using source and destination port numbers
(2-bytes long) - located in the first two TCP header fields
- Applications sending outgoing msgs give TCP both
port numbers - Incoming messages also provide port numbers
- 2 Segmenting
- breaking large messages into smaller pieces
(segmentation) - putting them back together _at_ destination
(reassembly) - Decides whether to
- deliver each incoming packets right away (Web
pages) - or wait till all arrive (email)
- Standard port numbers
- Web servers 80
- FTP servers 21
- Telnet 23
- SMTP 25
13Transmission Efficiency
14Transmission Efficiency
- Information bytes versus overhead bytes in
protocol - Information bytes convey the users meaning
(URL) - Overhead bytes carry control data (packets
header) - . For example, TCP has 24 bytes of overhead,
while IPv6 has 40. - Tx efficiency (info bytes/total bytes) per
packet
Packet
212 bytes
Tx Eff (15/212) 7
15Optimal packet sizing
- Imagine having to carry 7 boxes of books to my
office - How would you move them?
- Why?
16Tradeoffs in Packet Sizing
16
17Optimal Packet Size
- Throughput BPS, accounting for
- overhead
- need to retransmit flawed packets
- Trade-off between large and small packets
- Small packets less efficient, but less likely to
contain errors - Large packets ??? Say 100k
- if errors less costly to retransmit..
- Optimal packet size
18Connection-Oriented Vs. Connectionless Routing
- Connection-Oriented (used in HTTP, SMTP, FTP )
- end-to-end routing by setting up a virtual
circuit - all packets in a message follow the same route
from source?destination - Requires a special SYN packet (begin) and
FINish packet (closes virtual circuit) - Connectionless Routing (UDP User Datagram
Protocol) - No virtual circuit used
- each packet sent independently of next
- routed separately can follow different routes
- can arrive at different times
- UDP has a much smaller packet header (8 bytes)so
what? - Useful for small control messages (DNS, DHCP,
RIP)
19Service Reliability
- QoS Quality of Service
- Packet delivery in real time apps (voice vs.
email) - QoS defines classes of service each with a
different priority - Real-time applications get the highest priority
- a graphical file for a Web page gets a lower
priority - E-mail gets the lowest priority
- QoS protocols in TCP/IP protocol suiteuses
virtual connections - Resource Reservation Protocol (RSVP) general
purpose - Real-Time Streaming Protocol (RTSP) for
audio-video applications - Reliable Delivery
- Error detection/correction?packets delivered free
of errors - How does error detection work in TCP/IP networks?
- 16 bit checksums in each packet
20Two Techniques for Error Correction
- Stop-and-Wait Error Correction
- acknowledgement (ACK)
- timeout occurs
- the segment is resent
- Downsides?
Sliding Window Automatic timeout for segments
Faster -- entire segments discarded
21Sliding Windows
- Needs attention to
- Flow control (sender not too fast for receiver)
- Both agree on max of unacknowledged segments
allowed
Sent
Send after ACK is received
Send after ACK is received
several segments at one time
22Addressing
- 3 types of addresses
- Application layer addresses (domain names)
- www.iastate.edu
- Network layer addresses (IP addresses)
- 129.79.127.4 (? 4 bytes in IPv4 dotted decimal
notation) - IPv4 32 bit addresses?1 billion possible
addresses - IPv6 128 bit addresses?3.2 x 1038 possible
addresses - Data link layer addresses Hardware addresses
placed on NICs (MAC)00-0C-00-F5-03-5A - ICANN manages assignment of IP and app layer name
space - Servers have permanent addresses, clients usually
dont. - Address resolution Translating address from one
type to another to allow communication
23Subnets Same LAN same prefixISU campus phone
numbers or Ames 515
Subnet masks 255.255.255.473
easier to separate the subnet part of address
from host part
24Finding Servers
- Dynamic Addressing
- Allows efficient use of network IP address space
- Leases an IP address for a fixed time
(apartments) - Gives IP addresses to clients when they login to
the network - Takes them back when they logout
- Dynamic Host Control Protocol (DHCP)
- a client broadcasts a message requesting an IP
address - client sends a new IP address request when lease
expires - Server Name Resolution (address resolution)
- application layer address (or domain name) of the
destination host must first be translated in its
corresponding IP address - www.iastate.edu ? 204.71.200.74
- If IP address not in the clients address table
- Must use Domain Name Service (DNS) to resolve the
address - Uses name servers (directories of domain names
and IP addresses) - phone directories
- DNS uses connectionless routing (UDP)
25Recursive DNS resolution
http//en.wikipedia.org/wiki/Domain_Name_System
26Data Link Layer Address Resolution
- When a data link layer destination address is not
known, the address resolution protocol (ARP) is
used to find it - works by broadcasting a message to all computers
on a LAN - will the device with XXX IP address please
respond - XXX responds with its data link layer address.
- The sender then stores this data link layer
address in its address table
27Routing
- Deciding what path to have a packet take through
nwk - More than one route possible
- devices that do routing must keep routing tables
- specialized devices routers that maintain
routing tables - Two ways to skin a cat
- Centralized Routing decisions made by one
central computer - Decentralized (Internet) made independently at
each routing node - Static routing Uses fixed routing tables (A?B
D?F) - Dynamic Routing decisions made dynamically,
based on - routing condition information exchanged b/w
routing devices
28Dynamic Routing AlgorithmsTwo Types
- Think Driving from ISU to DSM
- Distance Vector Uses the least number of hops to
route - Link State Uses a variety of information for
routing decisions - Network congestion
- Response time
- Link state preferred better performance
29Routing Protocols
- Exterior between networks focuses on main routes
only - Border Gateway Protocol (BGP) ? Internet standard
- Interior within a network (an autonomous
system) - Routing Information Protocol (RIP) dynamic
distance vector method - Computers using RIP broadcast routing tables
every minute - Open Shortest Path First (OSPF) link state
algorithm - Less network intensive
- Sends updates only, not entire routing tables
- Only communicates with other routers (does NOT
broadcast) - Enhanced Interior Gateway Routing Protocol
(EIGRP) (CISCO)
30Interior
Exterior
31Checking TCP/IP settings
- Run Winipcfg
- View
- Ethernet adapter address
- IP address
- Subnet mask
- IP address of the default gateway
- IP address of the nearest DNS server
- DHCP server
- Hands-on checking tips
- http//support.microsoft.com/kb/169790
32Size matters
- Technical choices, business consequences
- Speed-performance tradeoff has real implications
- Gmails speed slowdown
- Bittorrents unreliable
- You-Tubes poor video quality
33Summary
- Why your emails eventually always arrive
- Transport-network layer functions
- Addressing
- Routing
- Segmenting
- Virtual circuit versus connectionless routing
- Prioritization of packets in protocols
- Addressing
- App layer (URL etc)
- Network layer (IPs)
- Data link layers (hardwired in hardware)
- Address resolution (distributed collaboration)