Summary of TCP Features:
Adaptive retransmission:
· TCP uses the round trip time to estimate retransmission
timeout when an acknowledgement not received.
Flow Control:
· Using transmission window
· Receiver sends in every acknowledgement the bufferspace
that is left
· When receiver sends window=0 transmitter stops transmission
Cumulative Acknowledgements:
· Acknowledge all bytes received consecutively and correctly
so far.
Slow Start
· When a packet is lost this is identified as a possible
network congestion
· The transmitter slows down and only sends one message
full of data instead of multiple messages for all the window size.
Duplex
· Transmitter and receiver logic is duplicated at both
ends.
Three Way Hand Shake
· TCP makes starting and ending of connections reliable.
DOMAIN NAME SYSTEM
Humans prefer to use names instead of IP addresses
Ex: www.yahoo.com instead of 204.71.200.68
One host name may have multiple IP addresses, if it has multiple networkinterfaces…
DNS is a service that translates names to IP addresses.
Host names are divided into domains.
Ex: ector.cs.purdue.edu e
c t o r . c
s . p u r d u
e . e d u
--------------- -------- ---------------------
-----------
host
dom 2
domain 1 dom
0
================== ======================
local authority
central authority
Top Level Domains:
.com - commercial
.org - non commercial
.edu - educational
.net - network support
……………..
Domain names correspond to a naming hierarchy:

Individual groups within an organization can choose the hierarchy that is
more appropriate for the group…
DNS Client/Server
Client is known as “resolver”. It can be any application that
want to translate a name in to an IP address.
Multiple servers are used. Each server represents a contiguous part of naming
hierarchy.

All domain name servers, together form a unified organization.
ISPs offer DNS to subscribers.
DNS Lookup
Can use TCP/UDP
Application becomes DNS client. Sends a request to local DNS server.
If the server knows the answer returns the answer. Otherwise, there are 2
ways to resolve:
1. Recursive resolution
If the client chooses recursive resolution, the server
contacts a DNS than can resolve the name and returns an answer.
A server may ask another server and so on…

2. Iterative Resolution
If a server cannot find an answer it replies with the address of the server
that client should now contact to find the answer.

This process is called “name resolution”…
A client must know how to contact at least one DNS server.
The IP address of default DNS server is configured by admin
or with DHCP.
In home computers connected to an ISP the IP address, the default
router and the IP address of the name server are obtained.
A DNS server should know the IP of at least one root server
and may know the address of the name server immediately above.
Parent name servers know the addresses of their children.
There is a high cost for queries of non local hosts. In some
cases the query goes to the root server.
Caching is the key to efficiency.
Both DNS servers and clients do name caching.
How long should we cache?
When a server replies, the response includesa
TTL field.
Changes in a domain name may take hours to take effect.
The DNS server stores a type with each entry. When a resolver
looks up a name, the resolver must specify the type desired.
DNS Types:
Type A; Address value is IP address for named computer.
Type CNAME; Value is another domain name (used to establish aliases).
Ex: www.cs.purdue.edu is lucan.cs.purdue.edu
Type MX; Mail Exchanger, the value is IP address of the mail server
for name.
Ex: Using nslookup /usr/bin/nslookup
> set query type = A
> yahoo.com
Name: yahoo.com
Address: 216.115.108.245
> set query type = MX
> yahoo.com
mailexchanger = mx2.mail.yahoo.com
> set query type = CNAME
> yahoo.com
ns0.corp.yahoo.com
Abbreviations:
DNS uses full names such as ector.cs.purdue.edu, but users like short names
like ector.cs
Solution:
Configure resolver with a list of suffixes to try one at a time.
Suffixes: cs.purdue.edu
purdue.edu
Ex:
> telnet mentor.cc
resolver will try:
1. mentor.cc (this will fail)
2. mentor.cc.cs.purdue.edu (also fails)
3. mentor.cc.purdue.edu (correct)
DNS Notes:
Each server corresponds to contiguous part of naming hierarchy.
Two kinds of name resolutions:
Iterative resolution (more control)
Recursive resolution
Without DNS caching DNS would flood the internet with traffic.
Default DNS server is configured at initialization by
Network Administrator, or,
DHCP (Dynamic Host Configuration Protocol)
Also returns IP address, Name server, Default
Router.
Before DNS the translation name to IP address was done with a file /etc/hosts.
Updating this file was very difficult.
EXAM MATERIAL:
-WAN and Routing
-Routers
-Next hop routing
-Shortest Path routing
-Distance Vector routing
-Connection oriented and connectionless networks.
-Network Performance measurements
-Different parameters
-Delay
-Throughput
-Relation between delay and utilization
-Protocols and Layering
-ISO-7 layer reference model
-Application | presentation | session | transport
| network | data link | physical
-Description of each
-Internetworking
-Definition
-Why an internet is necessary
-Layering used in TCP/IP
-Internet Protocol (IP)
-IP addresses : network # | host # | subnet #
-Classes of IP addresses
-Dotted decimal representation
-Special IP addresses ( all ones, 127.0.0.1, etc…)
-IP Packet Format (Fields)
-IP routing, routing table, default routers, how IP routing
works
-IP Semantics
-IP is connectionless
-Packets can be delayed, duplicated, out of order,
lost
-Best effort delivery
-ARP (address resolution protocol)
-Translates IP addresses to hardware addresses
-ARP lookup algorithm
-ARP cache
-ARP message format
-IP fragmentation and Reassembly
-Why fragmentation is necessary
-MTU
-How fragmentation and reassembly works
-Fields used
-Importance of TTL
-Remote Procedure Calls
-Description
-Stub Prodecures
-Server Dispatchers
-RPCgen
-Advantages and disadvantages of using RPCs / Sockets
-Implementation of RUSERS
-ICMP
-Source Quench
-Time Exceeded
-Echo Reply
-Transport Protocols
-UDP
-TCP
-TCP
-Characteristics
-How reliability is achieved
-Adaptive retransmission
-Flow control
-Cumulative acknowledgements
-Reliable connection startup and ending
-TCP message function and fields
-DNS
-Translates host names to IP addresses
-Domain names, top level domains
-Domain name server hierarchy
-DNS Lookup
-Recursive resolution
-Iterative resolution
-DNS caching
-DNS types