AdvComNwLectureSlideTCP-IP and Application
AdvComNwLectureSlideTCP-IP and Application
(3 cr.hrs=2cr.hrs/3 lab)
IT , M.Sc. Program
Transport and End-to-End Protocols:
Layered
protocols, internet Addressing, mapping internet address to
physical address, internet protocol: OSPF, RIP, RARP,
BOOTP, DHCP, BGP, ARP, IP, Ipv6, ICMP Transport
protocols: UDP, TCP and SNMP.
Network Application Layer: The Web and HTTP, File
Transfer: FTP, Electronic Mail in the Internet, Domain Name
System (DNS), P2P File Sharing, Socket Programming with
TCP and UDP, Building a Simple Web Server.
IT . M.Sc. , EiT-M 2 / 99
TCP/IP And Network Applications
Transport services and protocols:
IT . M.Sc. , EiT-M 3 / 99
TCP/IP And Network Applications
Transport vs. network layer:
IT . M.Sc. , EiT-M 4 / 99
TCP/IP And Network Applications
Internet transport-layer protocols:
IT . M.Sc. , EiT-M 5 / 99
TCP/IP And Network Applications
Multiplexing/demultiplexing:
IT . M.Sc. , EiT-M 6 / 99
TCP/IP And Network Applications
How demultiplexing works:
IT . M.Sc. , EiT-M 7 / 99
TCP/IP And Network Applications
Connectionless demultiplexing
IT . M.Sc. , EiT-M 8 / 99
TCP/IP And Network Applications
Connectionless demux: example
IT . M.Sc. , EiT-M 9 / 99
TCP/IP And Network Applications
Connection-oriented demux:
IT . M.Sc. , EiT-M 10 / 99
TCP/IP And Network Applications
Connection-oriented demux: example
IT . M.Sc. , EiT-M 11 / 99
TCP/IP And Network Applications
UDP: User Datagram Protocol [RFC 768]
IT . M.Sc. , EiT-M 12 / 99
TCP/IP And Network Applications
UDP: segment header
IT . M.Sc. , EiT-M 13 / 99
TCP/IP And Network Applications
UDP checksum:
IT . M.Sc. , EiT-M 14 / 99
TCP/IP And Network Applications
UDP checksum:
A checksum is a form of redundancy check, a simple way to
protect the integrity of data by detecting errors in data that
are sent through space (telecommunications) or time (storage).
It works by adding up the basic components of a message,
typically the asserted bits, and storing the resulting value. It
helps later to perform the same operation on the data, to
compare the result to the authentic checksum and (assuming
that the sums match) conclude that the message is most likely
not corrupted.
IT . M.Sc. , EiT-M 15 / 99
TCP/IP And Network Applications
Example of a simple checksum:
Given 4 bytes of data (can be done with any number of
bytes): 0x25, 0x62, 0x3F, 0x52
Step 3: Get the two's complement of the 0x18 to get 0xE8. This
is the checksum byte.
IT . M.Sc. , EiT-M 17 / 99
TCP/IP And Network Applications
rdt:Principles of reliable data transfer
IT . M.Sc. , EiT-M 18 / 99
TCP/IP And Network Applications
Principles of reliable data transfer
IT . M.Sc. , EiT-M 19 / 99
TCP/IP And Network Applications
Reliable data transfer: getting started
IT . M.Sc. , EiT-M 20 / 99
TCP/IP And Network Applications
Reliable data transfer: getting started
IT . M.Sc. , EiT-M 21 / 99
TCP/IP And Network Applications
Reliable transfer over a reliable channel
IT . M.Sc. , EiT-M 22 / 99
TCP/IP And Network Applications
rdt:channel with bit errors:
IT . M.Sc. , EiT-M 23 / 99
TCP/IP And Network Applications
rdt:FSM specification:
IT . M.Sc. , EiT-M 24 / 99
TCP/IP And Network Applications
rdt:operation with no errors:
IT . M.Sc. , EiT-M 25 / 99
TCP/IP And Network Applications
rdt has fatal flaw
IT . M.Sc. , EiT-M 26 / 99
TCP/IP And Network Applications
rdt: sender, receiver fragments
IT . M.Sc. , EiT-M 27 / 99
TCP/IP And Network Applications
rdt: channels with errors and loss
IT . M.Sc. , EiT-M 28 / 99
TCP/IP And Network Applications
rdt: Sender
IT . M.Sc. , EiT-M 29 / 99
TCP/IP And Network Applications
rdt in action
IT . M.Sc. , EiT-M 30 / 99
TCP/IP And Network Applications
rdt in action
IT . M.Sc. , EiT-M 31 / 99
TCP/IP And Network Applications
No loss in packet & ACK over rdt, but performance stinks
IT . M.Sc. , EiT-M 32 / 99
TCP/IP And Network Applications
stop-and-wait operation
IT . M.Sc. , EiT-M 33 / 99
TCP/IP And Network Applications
Pipelined protocols: sender allows multiple, “in-flight”, yet
-to-be-acknowledged pkts.
IT . M.Sc. , EiT-M 34 / 99
TCP/IP And Network Applications
Pipelining: increased utilization
IT . M.Sc. , EiT-M 35 / 99
TCP/IP And Network Applications
Pipelining protocols concepts
IT . M.Sc. , EiT-M 36 / 99
TCP/IP And Network Applications
Go-Back-N: sender
IT . M.Sc. , EiT-M 37 / 99
TCP/IP And Network Applications
GBN: receiver extended FSM
IT . M.Sc. , EiT-M 38 / 99
TCP/IP And Network Applications
GBN in action
IT . M.Sc. , EiT-M 39 / 99
TCP/IP And Network Applications
Selective repeat
IT . M.Sc. , EiT-M 40 / 99
TCP/IP And Network Applications
Selective repeat in action
IT . M.Sc. , EiT-M 41 / 99
TCP/IP And Network Applications
TCP: Overview RFCs: 793,1122,1323, 2018, 2581
IT . M.Sc. , EiT-M 42 / 99
TCP/IP And Network Applications
TCP segment structure
IT . M.Sc. , EiT-M 43 / 99
TCP/IP And Network Applications
TCP seq. Numbers and ACKs
IT . M.Sc. , EiT-M 44 / 99
TCP/IP And Network Applications
TCP reliable data transfer
IT . M.Sc. , EiT-M 45 / 99
TCP/IP And Network Applications
TCP sender events:
IT . M.Sc. , EiT-M 46 / 99
TCP/IP And Network Applications
TCP flow control
IT . M.Sc. , EiT-M 47 / 99
TCP/IP And Network Applications
Connection Management
IT . M.Sc. , EiT-M 48 / 99
TCP/IP And Network Applications
TCP 3-way handshake
IT . M.Sc. , EiT-M 49 / 99
TCP/IP And Network Applications
TCP 3-way handshake: FSM
IT . M.Sc. , EiT-M 50 / 99
TCP/IP And Network Applications
TCP: closing a connection
IT . M.Sc. , EiT-M 51 / 99
TCP/IP And Network Applications
TCP: closing a connection
IT . M.Sc. , EiT-M 52 / 99
TCP/IP And Network Applications
Principles of congestion control
IT . M.Sc. , EiT-M 53 / 99
TCP/IP And Network Applications
Causes/costs of congestion: scenario 1
IT . M.Sc. , EiT-M 54 / 99
TCP/IP And Network Applications
Causes/costs of congestion: scenario 2
IT . M.Sc. , EiT-M 55 / 99
TCP/IP And Network Applications
Causes/costs of congestion: scenario 3
IT . M.Sc. , EiT-M 56 / 99
TCP/IP And Network Applications
Causes/costs of congestion: scenario 4
IT . M.Sc. , EiT-M 57 / 99
TCP/IP And Network Applications
Causes/costs of congestion: scenario 5
IT . M.Sc. , EiT-M 58 / 99
TCP/IP And Network Applications
TCP congestion control
IT . M.Sc. , EiT-M 59 / 99
TCP/IP And Network Applications
TCP Congestion Control: details
IT . M.Sc. , EiT-M 60 / 99
TCP/IP And Network Applications
TCP Slow Start
IT . M.Sc. , EiT-M 61 / 99
TCP/IP And Network Applications
TCP: detecting, reacting to loss
IT . M.Sc. , EiT-M 62 / 99
TCP/IP And Network Applications
TCP: switching from slow start to CA
IT . M.Sc. , EiT-M 63 / 99
TCP/IP And Network Applications
Network Layer: Goals
IT . M.Sc. , EiT-M 64 / 99
TCP/IP And Network Applications
Network Layer Functions
IT . M.Sc. , EiT-M 65 / 99
TCP/IP And Network Applications
Two key network-layer functions
IT . M.Sc. , EiT-M 66 / 99
TCP/IP And Network Applications
Network service model
IT . M.Sc. , EiT-M 67 / 99
TCP/IP And Network Applications
Connection, connection-less service
IT . M.Sc. , EiT-M 68 / 99
TCP/IP And Network Applications
Virtual circuits
IT . M.Sc. , EiT-M 69 / 99
TCP/IP And Network Applications
VC implementation
IT . M.Sc. , EiT-M 70 / 99
TCP/IP And Network Applications
VC forwarding table
IT . M.Sc. , EiT-M 71 / 99
TCP/IP And Network Applications
Virtual circuits: signaling protocols
IT . M.Sc. , EiT-M 72 / 99
TCP/IP And Network Applications
Datagram networks
IT . M.Sc. , EiT-M 73 / 99
TCP/IP And Network Applications
Datagram or VC network: why?
IT . M.Sc. , EiT-M 74 / 99
TCP/IP And Network Applications
Router architecture overview
IT . M.Sc. , EiT-M 75 / 99
TCP/IP And Network Applications
Input port functions
IT . M.Sc. , EiT-M 76 / 99
TCP/IP And Network Applications
Switching fabrics
IT . M.Sc. , EiT-M 77 / 99
TCP/IP And Network Applications
Output ports
IT . M.Sc. , EiT-M 78 / 99
TCP/IP And Network Applications
Output port queueing
IT . M.Sc. , EiT-M 79 / 99
TCP/IP And Network Applications
How much buffering?
IT . M.Sc. , EiT-M 80 / 99
TCP/IP And Network Applications
Input port queuing
IT . M.Sc. , EiT-M 81 / 99
TCP/IP And Network Applications
The Internet network layer
IT . M.Sc. , EiT-M 82 / 99
TCP/IP And Network Applications
IP fragmentation, reassembly
IT . M.Sc. , EiT-M 83 / 99
TCP/IP And Network Applications
IT . M.Sc. , EiT-M 84 / 99
TCP/IP And Network Applications
IT . M.Sc. , EiT-M 85 / 99
TCP/IP And Network Applications
Network Addressing:
Network Address Range: Class A
00000000 = 0
01111111 = 127
Network Address Range: Class B
10000000 = 128
10111111 = 191
Network Address Range: Class C
11000000= 192
11011111= 223
The addresses between 224 and 255 are reserved for
Class D and E networks. Class D (224–239) is
used for multicast addresses and Class E (240–255) for
scientific purposes.
IT . M.Sc. , EiT-M 86 / 99
TCP/IP And Network Applications
Subnets
IT . M.Sc. , EiT-M 87 / 99
TCP/IP And Network Applications
Subnetting
IT . M.Sc. , EiT-M 88 / 99
TCP/IP And Network Applications
Subnetting
IT . M.Sc. , EiT-M 89 / 99
TCP/IP And Network Applications
Subnetting
IT . M.Sc. , EiT-M 90 / 99
TCP/IP And Network Applications
IP addressing: CIDR
IT . M.Sc. , EiT-M 91 / 99
TCP/IP And Network Applications
IP addressing: CIDR Example using VLSM
Subnet 172.16.14.0/24 is divided into smaller subnets
Subnet with one mask (/27)
Then further subnet one of the unused /27 subnets into multiple /30
IT . M.Sc. , EiT-M 92 / 99
subnets
TCP/IP And Network Applications
Calculating VLSMs
IT . M.Sc. , EiT-M 93 / 99
TCP/IP And Network Applications
A Working VLSM Example
IT . M.Sc. , EiT-M 94 / 99
TCP/IP And Network Applications
Route Summarization:Routing protocols can summarize
addresses of several networks into one address.
Routers use longest match
IT . M.Sc. , EiT-M 95 / 99
TCP/IP And Network Applications
ICMP: internet control message protocol
IT . M.Sc. , EiT-M 96 / 99
TCP/IP And Network Applications
Traceroute and ICMP
IT . M.Sc. , EiT-M 97 / 99
TCP/IP And Network Applications
Routing Algorithms
routing algorithm determines end-end-path through network
forwarding table determines local forwarding at this router
Routing algorithm classification
Link State
Distance Vector
Hierarchical Routing
IT . M.Sc. , EiT-M 98 / 99
TCP/IP And Network Applications
Routing algorithm classification
IT . M.Sc. , EiT-M 99 / 99