Professional Documents
Culture Documents
Ch05 F18
Ch05 F18
Today!
Network and Transport Layers
Internet Model
• Transport Layer
– Layer 4 in the Internet model Application
– Links application and network
layers
– Responsible for segmentation Transport
and reassembly
– Session management
– Responsible for end-to-end
Network
delivery of messages
• Network Layer Data Link
– Layer 3 in the Internet model
– Responsible for addressing and Physical
routing of messages
Sample Question
• What is TCP and describe the fields of a TCP
packet.
• Explain how linking occurs between the Transport
layer of the OSI model and the Applications layer.
• What happens to create a virtual circuit?
• Is a virtual circuit used in connection-oriented or
connectionless routing?
Sample Question
• Assume that you are in a network environment and
the following information specifies the conditions:
– HTTP Header:100 bytes
– TCP Segment: 20 bytes (no Options)
– IPv6 Packet: 40 bytes
– Ethernet Frame: 30 bytes (no optional VLAN tag)
– Error Rate: 10%
– MTU Size: 500 bytes
• If a web request is made for www.aa.org, what is
the transmission efficiency?
Sample Question
• Assume that you are in a network environment and the
following information specifies the conditions:
– HTTP Header: 100 bytes
– TCP Segment: 20 bytes (no Options)
– IPv6 Packet: 40 bytes
– Ethernet Frame: 30 bytes (no optional VLAN tag)
– Error Rate: 10%
– MTU Size: 500 bytes
• If the web response for www.aa.org is 1200 bytes, how many
Ethernet frames will be used for the response?
• What is the transmission efficiency for the entire response?
Sample Question
• Assume URL requested is
www.sales.microsoft.com. Also
assume the client computer and the
local name server do not have any
address information for
www.sales.microsoft.com. Show the
recursive (or iterative) DNS name
resolution process. Depict on the
diagram the following information:
– Show each request as a plain arrow
– Show each response as a dotted arrow
– Number each request in the order that
they are made
– In the space to the right, show the
information obtained
– Label the name servers to correspond to
the appropriate DNS hierarchy
Sample Question
• Assume that this network exists. Letters refer to nodes and numbers
refer to the distance between nodes. Complete a routing table for
Node F using a distance vector (or link state) dynamic routing
algorithm.
Protocols
• TCP/IP
– Originally developed as a single internetworking
protocol by Vint Cerf and Bob Kahn in 1974
– Later divided into the TCP and IP protocols
– Most common protocols of the Internet and in
LANs, WANs, and backbone networks
Transmission Control Protocol
• Reasonably efficient and error free transmission
– Performs error checking
– Transmits large files with end-to-end delivery assurance
– Compatible with a variety of data link layer protocols
• Links the application layer to the network layer
• Performs packetization and reassembly
– Breaking up a large message into smaller packets
– Numbering the packets, and
– Reassembling them at the destination end
• Ensures reliable delivery of packets
Transport Layer Protocols
• IPv4 Packet
– 160-192 bits (20-24 bytes) of overhead
– Options field rarely used
Version Header Type of Total IDs Flags Packet Time to Protocol CRC-16 Source Destination Options User
number length service length Offset Live / Address Address Data
Hop Limit
(4 bits) (4 bits) (8 bits) (16 bits) (16 bits) (3 bits) (13 bits) (8 bits) (8 bits) (16 bits) (32 bits) (32 bits) (32 bits) (varies)
Network Protocols
Optional
• IPv6 Packet Headers
– Fixed Header
– 320 bits (40 bytes) of overhead
Version Traffic Flow Payload Next Hop Source Destination
User
number Class / Label length Header Limit Address Address
Data
Priority
(varies)
(4 bits) (8 bits) (20 bits) (16 bits) (8 bits) (8 bits) (128 bits) (128 bits)
Optional Headers
• Hop-by hop options
• Destination options (with routing options)
• Routing
• Fragment
• Authentication
• Encapsulation Security Payload
• Destination options
• Mobility
Transport Layer Functions
1. Linking to the application layer
– TCP/UDP may serve multiple application layer protocols
– Ports used to identify application (2-byte numbers – 16 bites)
– Many source/destination ports follow standards
– Common port standards
• HTTP: TCP port 80 => web
• HTTPS: TCP port 443
• FTP: TCP ports 20 and 21
• SMTP: TCP port 25
• IMAP: TCP port 143
• POP3: TCP port 110 (more commonly TCP port 995 secure version)
• DNS: TCP or UDP port 53 (most commonly UDP)
Application Layer Services
Transport Layer Functions
2. Segmenting
– Breaking up large files into smaller segments
(and putting them back together)
– Segments may be passed individually to
application layer or after reassembly
– How large are the segments?
• Size depends on the network and data link layer protocols
• Maximum Segment Size (MSS) is negotiated during TCP handshake
• e.g., if the maximum size of the data in an Ethernet frame is 1,500
bytes and TCP and IP use 20 byte headers, the maximum segment size
is 1460 bytes
IPv4 header
Ethernet Frame
Data Size 1500 – 20 (optional)– 20 = 1460 bytes
TCP header
Transport Layer Functions
Sender PDU Receiver
Packet
Application
Transport Segment
Network Packet
Data
Frame
Link
Transport Layer Functions
3. Session management
– A session can be thought of as a conversation between two
computers or creating a virtual circuit
– Using a session to send data is also called connection-
oriented messaging (TCP)
– Sending messages without establishing a session is
connectionless messaging (UDP)
– TCP connections are opened using a three-way handshake
• SYN
• SYN-ACK
• ACK
– Sessions provide reliable end-to-end connections
Routing Implied by Transport Layer
• Connection Oriented (provided by TCP)
– Setting up a virtual circuit (a TCP connection)
• TCP asks IP to route all packets in a message by using the same path
(from source to destination)
• Packet deliveries are acknowledged
• Used by HTTP, SMTP, FTP
• Connectionless Routing (provided by UDP)
– Sending packets individually without a virtual circuit
– Each packet is sent independently of one another (routed
separately and can follow different routes and arrive at
different times)
• QoS Routing (provided by RTP)
– A special kind connection oriented routing with priorities
Transport Layer Functions
• Connectionless messaging
– Send a packet, hope for the best
– Used for single-packet transmissions
• Typically control messages: DHCP, RIP, SNMP
– UDP is connectionless
• Header is 8 bytes in 4 fields
• Lightweight, not ordered, unreliable
Transport Layer Functions
• Connection-oriented messaging
– Like a phone conversation, involving a “hello” and a
“goodbye”
– Setting up a virtual circuit (TCP connection)
– Steps:
1. Open connection (SYN)
2. Send data
3. Close connection (FIN)
– Used for data files or large transmissions
Setting up Virtual Connections
A B
Requests a virtual circuit (TCP SYN
connection) and negotiates
packet size with B SYN with MTU
Data 1
Data 2
Sends data packets one by one
(in order) using continuous ARQ ACK 2
(sliding window) Data 3
…
Data 4
FIN
Closes virtual circuit
Connection oriented (e.g., TCP)
• Ready to send
FIN
3 Data
2 1
SYN
Connection oriented (e.g., TCP)
• Sync Packet sent out to establish VC
FIN
3 Data
2 1
SYN
Connection oriented (e.g., TCP)
• Sync Packet Arrives at Destination
FIN
3 Data
2 1
SYN
Connection oriented (e.g., TCP)
• SYN Packet returns with MTU! Packetizing
FIN
3
occurs… 2
1
SYN
Connection oriented (e.g., TCP)
• Packets flow across same VC
FIN
3
1
Connection oriented (e.g., TCP)
• Packets Arrive at Destination (ACKs or NAKs
sent back)
FIN
3
2
1
Connection oriented (e.g., TCP)
• Packets Arrive at Destination (ACKs or NAKs
sent back)
FIN
3
2
1
Connection oriented (e.g., TCP)
• Finish Packet Sent
FIN
3
2
1
Connection oriented (e.g., TCP)
• Finish Packet arrives, and the VC erased!
FIN
Transport Layer Functions
• How is a connection really opened?
– Three-way handshake
Sender Receiver
SYN
SYN-ACK
ACK
Transport Layer Functions
• Connection-oriented messaging
– Also provides flow control by making use of
continuous ARQ (Chapter 4)
• Requires ACKs
• Sliding window size
– This is why data correction at data link layer not
necessary
– TCP is connection-oriented
• Heavyweight, ordered, reliable
QoS - Quality of Service
• QoS parameters
– Availability, Reliability, Timeliness
• Timeliness - timely delivery of packets
– Packets be delivered within a certain period of time (to produce a
smooth, continuous output
– Required by some applications, especially real time applications
(e.g., voice and video frames)
• e-mail doesn’t require this
• QoS routing
– Defines classes of service, each with a different priority:
• Real-time applications - highest
• A graphical file for a Web page - a lower priority
• E-mail - lowest (can wait a long time before delivery)
Protocols Supporting QoS
• Asynchronous Transfer Mode (ATM)
– A high-speed data link layer protocol RSVP RTSP
• TCP/IP protocol suite
– Resource Reservation Protocol RTP
(RSVP)
• Sets up virtual circuits for general UDP
purpose real-time applications
– Real-Time Streaming Protocol IP
(RTSP)
• Sets up virtual circuits for audio-video applications
– Real-Time Transport Protocol (RTP)
• Used after a virtual connection setup by RSVP or RTSP
• Adds a sequence number and a timestamp for helping applications to synchronize
delivery
• Uses UDP (because of its small header) as transport
Network Layer Functions
• Addressing
– Used to direct messages from source to
destination
– Addresses are assigned in various ways (e.g., by
system administrators, ICANN, hardware
vendors, etc.)
– Addresses exist at different layers
– Addresses may be translated (resolved) from one
layer to another (e.g., DNS, ARP)
MAC Address
Vendor ID Device ID
(00-0C-00) (F5-03-5A)
Addressing
• Application layer addresses (e.g., csus.edu)
– Typically used for servers
– Public “domain name” addresses managed by
ICANN or authorized registrar
– Can also be assigned by network managers
– Some servers may have multiple application layer
addresses
Network Layer Functions
• Addressing
– IPv4 addresses are 32 bits
– Most common way to write is using dot-decimal
notation
• Easier for people to read and remember
• Breaks the address into four bytes and writes each byte
in decimal notation instead of binary
• Example: 129.79.78.193
14 bits 16 bits
Class B 10 Net ID Host ID Subnet Mask: 255.255.0.0
130.86.10.10
00-0C-00-F5-03-5A
CSUS
(Computer’s MAC)
Amador Hall
130.86.10.X
Tahoe Hall
130.86.11.X
Addressing
• Subnets
– Can be defined in different ways
• 128.196.10.x (256 combinations)
• 128.196.x.x (65,536 combinations)
• 128.x.x.x (16.8 million combinations)
– Defined by subnet mask
• Tells the computer what part of an Internet Protocol address to be
used to determine whether the destination is on the same subnet or
on a different subnet
• 255.255.255.0
• 255.255.0.0
• 255.0.0.0
– Subnetting is MUCH more complicated, and we will discuss it
a bit more after the midterm
Subnet Masks
• Used to make it easier to separate the subnet
part of the address from the host part.
• Example
– Subnet: 149.61.10.x
– Subnet mask: 255.255.255.000 or in binary
• 11111111.11111111.11111111.00000000
• Example
– Subnets: 149.61.10.1-128,
– Subnet mask 255.255.255.128 or, in binary:
• 11111111.11111111.11111111.10000000
Subnets: Example
Network Layer Functions
• Dynamic addressing
– Configuring each device manually is time consuming
– Assigning addresses permanently can be inefficient
when devices are not connected to network
– A server can supply IP addresses automatically
– Dynamic Host Configuration Protocol (DHCP)
• Most common protocol for dynamic addressing
• Device sends out broadcast message
• DHCP responds with IP settings
• Addresses are “leased” for a length of time
Network Layer Functions
• Address resolution
– Host (server) name resolution
• Translate host name to IP address
• e.g., www.indiana.edu → 129.79.78.193
• Domain Name Service (DNS)
– MAC address resolution
• Identify MAC address of the next device in the circuit
• Address Resolution Protocol (ARP)
Addressing
• Host (server) name resolution
– Domain Name -> IP
– How DNS works
• Local example
• Non-local example
• hosts file
• ipconfig /displaydns
Anatomy of a URL
Implied ‘dot’ to
Computer/Device Organization signify the DNS
sought Domain ‘Root’ Server
Computer1.sales.microsoft.com
2
3
4
8 5
1 DNS Process Ends
Authoritative
Name Server
3
4
6
5
1
8 7
DNS Process Ends
10Web Response
Their Web server
Data Link Layer Addr. Resolution
• As a message moves across the Internet, it travels from
one network segment to another. On each of these
segments, it uses data link layer addresses to travel from
source to destination.
• When a data link layer destination address is not known,
the address resolution protocol (ARP) is used to find it.
• ARP works by broadcasting a message to all computers
on a local area network asking which computer has a
certain IP address. The host with that address then
responds to the ARP broadcast message, sending back
its data link layer address.
• The sender then stores this data link layer address in its
address table and sends its message to the destination
host.
ARP
ARP –
current
cache
PING –
Same LAN
ARP –
updated
cache
Network Layer Functions
• Routing
– Process of identifying what path to have a
packet take through a network from sender
to receiver Dest. Next
– Routing Tables B B
– Routers F D
• http://www.yougetsignal.com/tools/visual-
tracert/
– www.madagascar.gov.mg
– www.nepalgov.gov.np
– tracert -h 66 216.81.59.173
10.10.51.x 10.10.52.x
1
1
2
4 2
4 3
3
10.10.53.x
BN 10.10.250.x 1
2
INTERNET
2
Simplified Routing Table
1
Destination Interface
10.10.34.x 2
10.10.70.x 1
0.0.0.0 2
1
10.10.70.x
10.10.51.x 10.10.52.x
1
1
2
4 2
4 3
3
10.10.53.x
BN 10.10.250.x 1
2
INTERNET
2
Simplified Routing Table
Destination Interface 1
10.10.51.x 1 10.10.34.x 2
10.10.52.x 2
10.10.34.x 3
10.10.53.x 2 1
10.10.70.x
10.10.70.x 2
10.10.250.34 3
10.10.250.x 2
0.0.0.0 4
Routing
Routing
• Centralized Routing
– Routing decisions made by one computer
– Not common anymore
• Decentralized Routing
– Decisions made by each node independently of one
another
– Information needs to be exchanged to prepare routing
tables
– Used by the Internet
Routing
• Static
– Fixed routing tables
– Manually configured by network managers
– Local adjustments when computers added or
removed
• Dynamic
– Routing tables updated periodically
– Routers exchange information using protocols to
update tables
Dynamic Routing Algorithms
• Distance Vector
– Uses the least number of hops
to decide how to route a packet
– Used by Routing Information
Protocol (RIP)
• Link State
– Uses a variety of information
types to decide how to route a packet (more sophisticated)
• e.g., number of hops, congestion, speed of circuit, MTU
– Links state info exchanged periodically by each node to keep every
node in the network up to date
– Provides more reliable, up to date paths to destinations
– Used by Open Shortest Path First (OSPF)
Routing Protocols
• Used to exchange info among nodes for building and
maintaining routing tables
• Autonomous System (AS)
– A network operated by an organization (e.g., Indiana U.)
– Protocols classified based on autonomous systems
• Types of Routing Protocols
– Interior routing protocols (RIP, OSPF, EIGRP, ICMP)
• Operate within a network (autonomous system)
• Provide detailed info about each node and paths
– Exterior routing protocols (BGP)
• Operate between networks (autonomous systems)
Routing Protocols
• Routing Information Protocol (RIP)
– Dynamic distance vector protocol used for interior
routing
– Operation
• Network manager builds the routing table
• Routing tables broadcast periodically (e.g., every minute or
so)
• When new computers are added, router counts “hops” and
selects the shortest route
– Useful in smaller, less complex networks
Routing Protocols
TCP/IP Requirements?
• IP Address 128.192.98.130
• Subnet Mask 255.255.255.0
• Default Gateway 128.192.98.1
• DNS Server 128.192.254.4
Known Addresses, Same Subnet