Download - TCP/IP Networking (2:1)
TCP/IP Networking TCP/IP Networking (2:1)(2:1)
Joy Kuri, Haresh Dagale, Joy Kuri, Haresh Dagale, T.V.PrabhakarT.V.Prabhakar
GradingGrading
EvaluationEvaluation– Class assignmentsClass assignments 5%5%– Class testsClass tests 20%20%– Lab assignmentsLab assignments 17%17%– Lab testsLab tests 8% 8%– FinalFinal 50%50%
Lab timingsLab timings– Friday: 2-00 PM to 5:00 PMFriday: 2-00 PM to 5:00 PM
ReferencesReferences TextbookTextbook
– ““TCP/IP Illustrated” vol. 1, TCP/IP Illustrated” vol. 1, W.Richard W.Richard StevensStevens
Additional readingAdditional reading– ““Data Networks”, Data Networks”, D.P.Bertsekas D.P.Bertsekas and and
R.W.GallagerR.W.Gallager– ““Interconnections”, Interconnections”, R.PerlmanR.Perlman
Internet RFCsInternet RFCs– http://www.ietf.orghttp://www.ietf.org
Course siteCourse site
drona.cedt.iisc.ernet.in/moodledrona.cedt.iisc.ernet.in/moodle– Individual accounts will be createdIndividual accounts will be created
IPIP IP addresses usually refer to IP addresses usually refer to
interfacesinterfaces, not machines, not machines– Several interfaces: several IP addressesSeveral interfaces: several IP addresses– Same interface: multiple addresses Same interface: multiple addresses
possiblepossible
IPIP
Also possible to have several Also possible to have several interfaces, but only one IP addressinterfaces, but only one IP address
IP addresses are logical entitiesIP addresses are logical entities IP provides unreliable and IP provides unreliable and
connectionless serviceconnectionless service– Connectionless: each datagram handled Connectionless: each datagram handled
independently of othersindependently of others
IP addressesIP addresses
32 bit addresses in IPv432 bit addresses in IPv4 Divided into netid and hostidDivided into netid and hostid
– Otherwise: too many addresses must be Otherwise: too many addresses must be kept track of by routerskept track of by routers
– A form of “aggregation”: a recurrent A form of “aggregation”: a recurrent themetheme
netid hostid
IP addressesIP addresses
Netid: allocated to organizationsNetid: allocated to organizations Hostid: allocated by the organizationHostid: allocated by the organization
How many bits for netid and hostid?How many bits for netid and hostid?– Large corporations: many hosts, so many Large corporations: many hosts, so many
hostid bits requiredhostid bits required– Small organizations: few hosts, few hostid bitsSmall organizations: few hosts, few hostid bits
Single partitioning scheme will not workSingle partitioning scheme will not work
IP AddressesIP Addresses
Possible scheme: find out the netid-Possible scheme: find out the netid-hostid partition by looking at the IP hostid partition by looking at the IP addressaddress
RequiresRequires– Breaking up the IP address space into Breaking up the IP address space into
disjoint setsdisjoint sets– Each set has a pre-defined number of Each set has a pre-defined number of
bits allocated to netidbits allocated to netid
IP addressesIP addresses
IP address space
Beginning with 0: Class A 10: Class B 110:ClassC
1110:ClassD
IP address classesIP address classes
0 hostid (24 bits)
10 14 bits hostid (16 bits)
110 21 bits
1110 multicast group id
A:
B:
C:
D:
7 bits
hostid
8
netid
netid
netid
IP datagramIP datagram
Header Data
IP HeaderIP Header
Destination address
Source address
A B
C
Dest addr: XNext hop: B
Dest addr: XNext hop: C
Dest addr: XNext hop: A
XX
XX
IP HeaderIP Header
Destination address
Source address
TTL
IP Header: MultiplexingIP Header: Multiplexing
IP and lower layersKernel
User
Entities using services of IP
TCP OtherUDP
IP HeaderIP Header
Destination address
Source address
TTL Protocol
IP HeaderIP Header
Destination address
Source address
TTL Protocol
Identification Flags Offset
With respect to fragmentation
IP HeaderIP Header
Destination address
Source address
TTL Protocol
Identification Flags Offset
With respect to fragmentation
VersionHdrlength
In 32 bit words
ToS bits IP datagram length
Link layer encapsulationLink layer encapsulation
Header Data
Header DataHdr Trlr
Link layer frame
FragmentationFragmentation
Datagram
Frag 1
Frag 2
FragmentationFragmentation Fragmentation and reassembly are done by Fragmentation and reassembly are done by
the IP layerthe IP layer Identification (16 bits) Identification (16 bits)
– To identify fragments as pieces of the original To identify fragments as pieces of the original (along with source and destination addresses, (along with source and destination addresses, and “protocol” field)and “protocol” field)
Flags (3 bits)Flags (3 bits)– ““More” bitMore” bit– ““Don’t fragment” bitDon’t fragment” bit– UnusedUnused
Offset (13 bits)Offset (13 bits)– Offset in 8-byte units from the beginning of the Offset in 8-byte units from the beginning of the
payload of the originalpayload of the original