Sunteți pe pagina 1din 5

Communications Technology

(IP) Networks Revision


This lecture is intended to give a summary
of some of the key aspects of IP networks:
=> should be revision

Networks
Networks have traditionally been classified as:
Telecommunication (the sort of network BT, NTL
and similar operate) either fixed or mobile. Originally
for voice, data as a retrofit.
Broadcast (e.g. terrestrial, cable and satellite TV and
broadcast audio) how you (traditionally) get TV and
radio.
Data: used to carry data exclusively
Internet: a heterogeneous network of networks that
uses the Internet Protocol to send data.
Made of parts of many types

Convergence

Not all Networks are based on IP


Although there is a trend towards all IP networks that is
not the case yet.
Examples of non-IP networks

Converged Networks & Services


IP based network

IP communications: Inside Computer


Not just PCs!!

Application Software
Socket - portal into/out of communication
software
TCP/IP stack (part of operating system)
Driver software (manages hardware and
interfaces OS to hardware)
NIC firmware (typ. layer 2) and hardware (typ.
layer 1)
Network
Interface card

RG '12

Most landline telephones


Most cellular mobile
Bluetooth, Zigbee wireless
Broadcast networks: TV (cable, satellite and terrestrial), audio.

There are also plenty of examples of non-IP point-topoint communications: Serial, USB, firewire, HDMI.
So not everything has IP addresses or implements the
TCP/IP protocol stack.for now.

Programming and the Network


Applications can be written in operating system independent languages such as
Java, Python or compiled for a specific operating system e.g. C++

Only applications communicate


App 2
App 1

except for data exchanged between


devices to manage the network

Networks Summary

Network does not


process or generate
data: it just transports it

Communications Technology

TCP/IP and lower layer protocols


TCP/IP is implemented as part of the operating
system.
Typically there is no ready access to changing
this or associated routing parameters using
programming languages such as Java or C++.
Linux and similar platforms tend to give most
access and flexibility if wanting to experiment
and modify the behaviour of TCP and/or IP.
Other communication technologies might have
specific programming interfaces: serial port,
Bluetooth.

Logical IP address
To send packets across networks and routers an
(layer 3) address is required.
In TCP/IP this is an Internet Protocol (IP) address.
In IP version 4 (most devices today), this is a 32 bit
number usually written in dotted decimal notation.
e.g. 152.71.0.66
Each number from
0-255
What this actually means is:
1001100001000111000000000100010

IP address can be found in network properties or


ipconfig at a command prompt

Practice
A network has ID 152.68.192.0 mask
255.255.224.0:
Define a host ID on the network
Define the broadcast address
Write in /x notation

Client-Server Paradigm
Client
App

Server
App

initiates
contact

waits for
contact

How do they find each other?


Pair of identifiers: (computer, application)

Unique
on
Network

IP address

Port Number

Network and Host IDs


To enable efficient routing of packets an IP address
is divided into a network ID part and a host ID part.
In classless addressing (CIDR) the network ID and
host ID are identified by a network mask.
This has binary ones in the position of all the network
bits and binary zeros in the position of all the host
bits. The mask is still usually configured using dotted
decimal but can be written in / notation.
Devices (or interfaces) attached to the same
network have the same network mask and same
network ID (they must have a different host ID).
If the network IDs are different then the network is
different: a router is required to connect two
networks.

Routing
A router connects two (or more) networks.
The networks have distinct network IDs.
Routing decisions are based on the content of the
routing table
The routing table may be filled manually or through exchange
of routing protocol messages
Any IP enabled device will have a routing table.

Packets are forwarded to the interface indicated by the


routing table based on the destination IP address.
The default gateway effectively defines a route in the
routing table for all packets which for which a specific
route is not given.

RG '12

Networks Summary

Communications Technology

Ports & Sockets

More specifically
Network
Interfaces

An IP address enables computers to be found on an IP


network or Inter-network.
Once the computer is found the correct application
process (program) needs to be found to hand the data
to.
This is done with a port number.
Well known port numbers include: 80 for an HTTP server
process.
The client picks a socket at random from a range of
ephemeral ports (so that the server knows where to
send the data back to)
A socket has a unique identifier formed by IP address
and port. A process binds to a socket.

A network is made up of interconnected nodes (e.g.


network cards in pcs) and the equipment necessary to
make these connections.
Ethernet is a very common networking technology the
core component of which is the switch. Switches ensure
Ethernet frames (containing IP packets) arrive at the
right destination NIC (layer 2 device).
Wireless LAN (e.g. WIFI) may also be used to form a
network.
These are layer 2 devices.
A network is connected to another network via a Router.
The Internet is an example of interconnected
heterogenous (=different types) of networks.

Domain Name System (DNS)

Protocols

Computers are quite happy with addresses such as 151.45.0.20.

We humans prefer more memorable names:


www.google.com, www.bbc.co.uk, www.ieee.org, www.ntu.ac.uk,
powergenitalia.com.

When web browsing we use the human form.

Actually there is a mapping of one to the other found using the


Domain Name System: DNS this is like a telephone directory for
domain name to IP number mapping.

This has advantage that it allows the location of the host IP address
to change whilst keeping the same domain name (just have to
update the DNS entry). Especially important when the domain name
is used for marketing purposes and becomes part of a brand.

The dominant network protocols in use today are


TCP (Transmission Control Protocol) and UDP
(User Datagram Protocol) which sit on top of the IP
protocol
IP protocol is used to deliver IP packets
(datagrams) across an IP network.
TCP and UDP are End-to-End protocols Client
and Server implement not the network
components.
These protocols are used by sockets to transfer
data.

Applications & Protocols


Application

Protocol

www browsing

HTTP

E-mail

SMTP

Instant messaging (IM)

XMPP

Video streaming

RTP

All sit on top of TCP or UDP on IP

RG '12

Inside the network cloud

Networks Summary

Layers
Each layer appears to communicate with its opposite
(peer) with its own format and rules (protocol).
Achieved by passing/receiving messages to layer above
and below.
Lower layers offer services to layers above.
Note that we can change a layers protocol without
changing other layers provided layer interfaces are the
same.
Most common layering is TCP/IP:
Application, Transport, Network, Network Access

Theres also seven layer reference model (OSI)

Communications Technology

Layered Communications
Top Layer Protocol

Top Layer
TLH

Middle
Layer
Service

MLH

Bottom
Layer
BLH

MLH

Connection oriented: establishes a connection


between sender and receiver prior to data
transfer.

Indentical Messages
Data

Data

Service

Connections

Top Layer

Data

TLH

Middle
Layer

Middle Layer Protocol

TLH

MLH

Data

Data

TLH

Data

Bottom
Layer

Bottom Layer Protocol

TLH

Data

BLH

MLH

TLH

Data

Example: Connection Oriented TCP


Connection request
Data Transfer

Connection
Establishment

Connection OK
Connection request
#x Data
Data

Server

#y

Ive finished

Connectionless: data transfer occurs without


first setting up connection.
simply send data packets (no handshake)

Node 2

Node 1

Connection Establishment
Data transfer
Connection Termination

Client

The connection oriented and connectionless


paradigms can apply to any of the layers in the
protocol stack.

Reliable Data Transfer


TCP known as reliable as segments must
be acknowledged and any lost data
retransmitted.
IP and UDP unreliable as no
acknowledge or retransmission (i.e.
packets can be lost).

OK
Ive finished too
OK

I havent
received
#2 Ill ask
for it to be
resent

Reliable TCP

Connection
Termination

TCP
segment

#1 Data
#2 Data
#3 Data
Resend #2

Client

#2 Data

Server

Good job these segments


have got numbers I can
put them back together in
the right order

RG '12

Networks Summary

Order of data delivery


When communicating across a network such as the
Internet packets are passed from router to router.
Not every packet follows the same path.
Packets can arrive in a different order to which theyre
sent.
TCP will rearrange the data so that it is delivered (to the
socket) in the right order. In UDP it is delivered in the
order it arrives.

This can take time to


sort out hence there is
greater delay in TCP

Communications Technology

TCP vs. UDP


Transport Layer Feature

TCP

UDP

Connection-Oriented

Yes

No

Yes

No

Yes

No

Yes

No

Yes

No

Yes

Yes

Establish connection before delivery

Flow control
Increase or decrease rate of data delivery depending on
congestion

Reliable: Error recovery

What about delivery of Rich


Media?
Video, audio (e.g. VOIP) especially if realtime (I.e. delivered as it happens) requires
special consideration.

Retransmit any packets lost or in error

Segmentation and Re-asssembly


Break-up big chunks of application data into smaller ones
suitable for the underlying network

Delivery in the correct order


Re-order incoming packets to correct order

Applications identified using port numbers


Identify what to do with the data using unique identifiers

Summary
Networks converging to all IP based.
Reminder of basic principles of IP
networks.
Existing protocols (TCP/IP, UDP/IP) can
pose difficulties for real-time and high
bandwidth messages (VoIP, video).

RG '12

Networks Summary

S-ar putea să vă placă și