TCP

warmersafternoonNetworking and Communications

Oct 23, 2013 (3 years and 9 months ago)

54 views

TCP/IP Networks

Table of Contents



Computer networks, layers, protocols, interfaces;



OSI reference model;



TCP/IP reference model;



Internet Protocol (operations, addresses, classes);



Routing;



Transmission Control Protocol (TCP);



User Datagram Protocol (UDP);



Applications;



Sockets.

Computer Networks


Hosts;


Routers
-

Gateways;


Bridges
-

Repeaters;


Data packets networks, ISDN, leased lines;

Computer networks classification


Shared media:

Bus

Ring

Backbone network Vs local access network

Switching Techniques



Circuit switching;



Message switching;



Packet switching.

Protocol Hierarchies

Physical medium

Layer 5 protocol

Layer 4 protocol

Layer 4/5 interface

Layer 3/4 interface

Layer 2/3 interface

Layer 1/2 interface

Layer 5

Layer 1

Layer 2

Layer 3

Layer 4

Host A

Layer 3 protocol

Layer 2 protocol

Layer 1 protocol

Layer 5

Layer 1

Layer 2

Layer 3

Layer 4

Host A

Information Flow

Layer 5

Layer 5 protocol

M

Layer 4 protocol

H4 M

H3 H4 M1

H3 M2

H2 H3 H4 M1 T2

H2 H3 M2 T2

M

H4 M

Source machine

destination machine

H3 H4 M1

H3 M2

H2 H3 H4 M1 T2

H2 H3 M2 T2

Layer 2

Layer 1

Layer 4

Layer 3

OSI Reference Model

The
OSI reference model

based on a proposal developed by
ISO

has
seven
layers
. The
principles

that were applied to arrive at the seven layers are as
follows:



A layer should be created where a different level of abstraction is needed;



Each layer should perform a well defined function;



The function of each layer should be chosen with an eye toward defining
internationally standardised protocols;



The layer boundaries should be chosen to minimise the information flow across
the interfaces;



The number of layers should be large enough that distinct functions need not be
thrown together in the same layer out of necessity, and small enough that the
architecture does not become unwieldy.

OSI Layers Functions

Application
: provides user access to an OSI
environment.

Presentation
:hides from the application layer
differences in representation of information.

Session
:provides facilities for
synchronization.

Transport
: enables QoS network facilities.

Network
: establishes, maintains and
terminates connections.

Data Link
: controls data transfer over
physical link, including error detection.

Physical
: provides electrical and mechanical
control to transmit data bits onto
communication medium.

Application

Presentation

Session

Transport

Network

Data link

Physical

TCP/IP Reference Model



The protocols came first and model is just a
description of existing protocols;



The TCP/IP reference model can not
describe non
-
TCP/IP networks;


The layers 5 and 6 are not present in this
model.

Application

Transport

Internet

Host
-
to
-

Network

OSI vs TCP/IP

Application

Presentation

Session

Transport

Network

Data link

Physical

Application

TCP

IP

Host
-
to
-

Network

UDP

TCP/IP Detailed View

IEEE 802.3

MAC

PING

TCP

IP

UDP

ARP

RARP

ICMP

FTP, WWW,CMOT

Telnet, rlogin, SMTP,

TFTP, DNS, SNMP

NFS, yp, etc.

IEEE 802.4

MAC

IEEE 802.5

MAC

IEEE 802.6

MAC

Ethernet

Token bus

Token ring

MAN

WAN

IEEE 802.2, 802.1

HDLC/X.25,
PPP, SLIP

Internet Protocol (IP)



Connectionless (i.e., each packet it treated independently, with no
reference to packets that have long gone before);


Cannot guarantee reliable, in
-
order delivery;


PDU:

IP datagram, which contains user data, source
-
destination IP
addresses, other inf. (such as its length, time
-
to
-
live, etc.);



IP main operations:

Fragmentation/Reassembly

and
Routing

Fragmentation/Reassembly

Reassembly

Two options: either in host B, or in router G2.

It is preferred the first option.

Gain: Simpler routers (no buffering of fragments)

Loss:decrement of network utilisation and increment of packet loss
probability.

IP Addresses


An IP address defines both the network and the host on the
particular network;


An IP address has 4 bytes, so there are 4 billion addresses;


There is one
-
to
-
one correspondence between IP and physical
addresses;


Example of an IP address : 147.102.7.1;


An IP address includes two parts: a network identifier (netid) and
a host identifier (hostid);


The netid defines the network, while the hostid differentiate a
host of the network from the others;


The length of netid depends on the address class: there are
three address classes, namely A,B and C;

Address Classes

Class Α:

0 + 7bits (netid=1byte) + 3bytes (hostid);

Class B:

10 + 14bits (netid=2byte) + 2bytes (hostid);

Class C:

110 + 21bits (netid=3byte) + 1bytes (hostid);


When a network is separated into subnetworks, the hostid
defines both the host and the subnetwork of the host.

<IP address>=<netid><subnetid><hostid>


A subnet mask (32
-
bit) indicates the split of hostid to subnetid
and new hostid;


A subnet mask contains 1 for bits of netid and subnetid and 0 for
bits of hostid;


Example: The mask 255.255.255.0 defines 14 subnetorks and
4094 hosts for each subnetwork.

Domain Name Service (DNS)


The DNS servers correspond names such as
“swpc94.telecom.ece.ntua.gr” in IP addresses like
“147.102.7.94”;


However, the traffic of TCP/IP packets uses IP addresses and not
names;


Before an Internet process, there is a dialogue (approx. 1/10 sec)
between the source host and the local DNS server for finding the
IP address of the target host.

Routing



Direct routing: In the same network, usage of the
Address Resolution
Protocol (ARP)

and
Reserve Address Resolution Protocol (RARP)



Indirect routing: Between different networks, usage of the routers

Routers



They can manipulate packets from all the interconnected networks;



They communicate with all the interconnected networks;



They are “multihomed”, i.e., they have multiple IP addresses referring to all
the interconnected networks;



They perform routing algorithms using the netid of the IP datagrams.

Indirect Routing Example

A

B

C

1

2

3

I

II

III

3 separate physical networks,
with their own addresses, packet
size and pattern.

Indirect Routing Example

A

B

C

1

2

3

I

II

III

D

4

4

IV

The networks are connected via
two routers. The routers can
send/receive packets to/from both
networks.


Indirect Routing Example

Introduction of the unique IP
address for each host and the IP
datagram as common transfer unit.

A

B

C

1

2

3

I

II

III

D

4

5

IV

1.1

1.2

1.3

1.4

2.4

2.1

2.2

2.3

2.5

3.4

3.1

3.2

3.3

Indirect Routing Example

A

B

C

1

2

3

I

II

III

D

4

5

IV

1.1

1.2

1.3

1.4

2.4

2.1

2.2

2.3

2.5

3.4

3.1

3.2

3.3



Each host or router forwards the
datagram per one hop towards its
destination. For each hop, the
datagram is encapsulated into a
specific physical layer packet with a
local physical address. The datagram
keeps the IP address of its
destination.



The routers firstly exams the netid.



Only at the last hop of routing, the
hostid is mapped to the physical
address.



In case of fragmentation, the
destination takes over the
reassembly.

3.3

data

D

3.3

data

5

3.3

data

iii

Indirect Routing Example



Both hosts and routers keep
routing tables

for leading the IP datagrams to
destinations and
physical addresses tables

for mapping the IP addresses to
corresponding physical addresses.



Routing Table: It contains pairs of the form
(N,R)
, where
N

is the IP address
of the destination network and
R

is the IP address of the next router towards
the destination.



Examples:

Host 1.1

1.x

2.x

3.x

N

R

Computation of the physical address

1.4

1.4

Router 1.4/2.4

1.x

2.x

3.x

N

R

direct connection

2.5

direct connection

1.2

1.3

1.3

1.1

A

B

D

C

Physical Addresses Table:

Transmission Control Protocol (TCP)



Connection
-
oriented (i.e., a connection is established before the data
transmission);



Can guarantee reliable stream delivery services;



reserved TCP port numbers (16 bits):

FTP

21

Telnet

23

Finger

79

HTTP

80

A

B

1500

1501

128.10.0.3

FTP

21

23

128.10.0.7

Telnet

Transmission Control Protocol (TCP)


Sliding Window Technique;


Multiplicative Decrease Congestion Avoidance;


Slow Start Recovery;

Allowed_window = min (Receiver_Advertisement, Congestion_Window)

User Datagram Protocol (UDP)



Connectionless;



No confirmations, packets numbering, flow control;



No error detection/recovery;


Cannot guarantee reliable in order delivery services;



reserved UDP port numbers (16 bits):

DNS

53

TFTP

69

SNMP

161



Mainly, broadcasting applications use UDP.

Applications


FTP;


SMTP;


WWW;


Telnet;


Many others

Sockets

A

B

1500

1501

128.10.0.3

FTP

21

23

128.10.0.7

Telnet


The combination of an IP address with a port number
identifies a socket;


A socket defines an application service;