Title: Networks What is a Network?
1Networks What is a Network?
- a set of applications and/or switches connected
by communication links - many topologies'' possible
- local area networks (LAN) versus wide-area
networks (WAN) - many different media fiber optic, coaxial cable,
twisted pair, radio, satellite - for applications topology and media unimportant
2Networks What is a Network?
- a software/hardware infrastructure
- original justification allows shared access to
computing resources (e.g., computers, files,
data) - a medium through which geographically dispersed
users communicate (e.g., email, teleconferencing)
- a medium through distributed services/applications
are implemented - an electronic village
- an information highway, national information
infrastructure - cyberspace - "a consensual environment
experienced daily by billions of operators, in
every nation, ...." Hotlink Wiliam Gibson on
Cyberspace
3Networks Packet-Switching
- data entering network divided into chunks called
"packets'' - packets traversing network share network
resources (e.g., link bandwidth, buffers) with
other packets - on demand resource use statistical resource
sharing - resources demands may exceed resources available
- e.g., A and B packets arrive at R1, destined for
C - resource contention queueing (waiting), delay
4Networks Circuit Switched Networks
- all resources (e.g. communication links) needed
by call dedicated to that call for duration - example telephone network
- resource demands may exceed resources available
- A and B want to call C
- resource contention blocking (busy signal)
- drawbacks ??
- advantages ??
5Networks Why statistically share resources?
- More efficient
- example 1 Mbit/sec link each user requires 100
Kbits/sec when transmitting each user has data
to send only 10 of time. - circuit-switching give each caller 100 Kbits/sec
capacity. Can support 10 callers. - packet-switching with 35 ongoing calls,
probability that 10 or more callers
simultaneously active lt 0.0004! - Can support many more callers, with small
probability of "contention.'' - if users are bursty'' (on/off), then
packet-switching is advantageous
6NetworksElements of a Network
- communication links
- point-to-point (e.g., A-to-B)
- broadcast (e.g., Ethernet LAN)
- host computer running applications which use
network (e.g. H1) - router computer (often w/o applications-level
programs) routing packets from input line to
output line. (e.g., C) - gateway a router directly connected to two
networks (e.g. A) - network set of nodes (hosts/routers/gateways)
within single administrative domain - internet collection of interconnected networks
7NetworksProtocols
- protocol rules by which active network elements
(applications, hosts, routers) communicate with
each other - protocols define
- format/order of messages exchanged
- actions taken on receipt of message
- rules by which two or more people communicate to
provide a service, or to get something done - protocols in every day life
8Networks Layered Architecture
- complex system architecture simplified by
layering. - layer N relies on services of layer N-1 to
provide a service to layer N1 - service from lower layer independent of how that
service implemented - information/complexity hiding
- layer N change doesn't affect other layers
- interfaces define how services requested
9Networks Layered network architecture
- the network consists of geographically
distributed hardware/software components - a distributed layered view
10Networks Layering and protocols
- peer entities (e.g., processes) in layer N
provide service by communicating (sending
"packets") with each other, using communication
service provided bylayer N-1. - logical versus physical communication
11Networks The Internet and ISO/OSI reference
models
- ISO International Standards Organisation
- OSI Open System Interconnection
12Networks OSI reference model
- Physical Layer Concerned with transmitting of
raw bits over a communication channel. Common
issues are Voltage, bit duration, simplex,
duplex, full duplex, connection establishment,
cables and connectors - Data Link Layer 1 and 0 organised into packets
or frames and error detection and correction
applied. - Network Layer Data is organised into packets or
frames and switching, queuing, routing and
congestion control is applied. - Transport Layer Multiplexing and demultiplexing
of data from/to different sources. Flow control
of the source. - Session Layer Connection establishment,
connection management, connection tear-down. - Presentation Layer Data compression encoding
and decoding, security encryption, format
conversion - Application layer commerce, betting,
entertainment applications.
13Networks Layers of a protocol architectureApplic
ation, socket and presentation layers
- application layer
- process-to-process communication
- examples WWW, email, teleconferencing, info.
retrieval - socket layer (Internet only)
- buffering and delivery of data at end systems
- presentation layer (OSI only)
- conversion of data to a common format (e.g.,
little endian versus big-endian byte orders,
integer and floating point numbers). - Internet stack data conversion a user-level
concern
14Networks Layers of a protocol architectureSessio
n and Transport layers
- session layer (OSI only)
- session set up (e.g., authentication), recovery
from failure (broken session) - a "thin" layer
- transport layer
- transport service end-to-end delivery of data
- may multiplex several streams from higher layers
- sender/receiver speed matching
- Internet TCP and UDP
15Networks Layers of a protocol architectureData
Link and Physical layers
- network layer
- at end hosts start packets on their way
- at routers control packet routing
- bottleneck avoidance, congestion control
- Internet IP packets, BGP, RIP
16Networks Layers of a protocol architectureData
Link and Physical layers
- data link layer
- point-to-point error free communication over a
single link - multiaccess LAN protocols
- speed matching between sender/receiver
- Ethernet, HDLC, PPP
- physical layer
- transmitting raw bits (0/1) over media
17Networks Internetworks the Internet
- an internet interconnection of many networks
- a network of networks
- each network administered separately
- the Internet each network runs same software
the Internet protocols
18Networks Protocol packets
- packet unit of data exchanged between protocol
entities in a given layer - data at one layer encapsulated in packet at lower
layer - "envelope within envelope"
19Networks Generic issues in a layer
- error control make "channel" more reliable
- flow control avoid flooding slower peer
- fragmentation dividing large data chunks into
smaller pieces reassembly - multiplexing several higher level session share
single lower level connection - connection setup handshaking with peer
- addressing/naming locating, managing identifiers
associated with entities
20Networks IP Networks version 4
- The Internet Protocol (IP) provides unreliable,
connectionless packet delivery. - IP is connectionless because it treats each
packet of information independently. - IP is unreliable because it does not guarantee
delivery. That is, it does not require
acknowledgments from the sending host, the
receiving host, or intermediate hosts. - IPv4 addresses consists of four 8-bit words
- Addresses are represented as four 8-bit
hexadecimal words, each separated by a colon e.g.
385FCA2E
21Networks IP Networks version 4
22Networks IP Networks version 4
- Version The IP version number, 4
- Length The length of the datagram header in
32-bit words - Type of service Contains five subfields that
specify the precedence, delay, throughput,
reliability, and cost desired for a packet. - Total length The length of the datagram in bytes
including the header, options, and the appended
transport protocol segment or packet. - Identification An integer that identifies the
datagram. - Flags Controls datagram fragmentation together
with the identification field. The flags indicate
whether the datagram may be fragmented, whether
the datagram is fragmented, and whether the
current fragment is the final one. - Fragment offset The relative position of this
fragment measured from the beginning of the
original datagram in units of 8 bytes. - Time to live How many routers a datagram can
pass through. Each router decrements this value
by 1 until it reaches 0 when the datagram is
discarded. This keeps misrouted datagrams from
remaining on the Internet forever.
23Networks IP Networks version 4
- Protocol The high-level protocol type.
- Header checksum A number that is computed to
ensure the integrity of the header values. - Source address The 32-bit IPv4 address of the
sending host. - Destination address The 32-bit IPv4 address of
the receiving host. - Options A list of optional specifications for
security restrictions, route recording, and
source routing. Not every datagram specifies an
options field. - Padding Null bytes which are added to make the
header length an integral multiple of 32 bytes as
required by the header length field.
24Networks IP Networks version 6
- IPv6 is the latest evolution of the Internet
Protocol from IPv4. - IPv4 is limited by two factors
- The Internet is running out of addresses to
assign. In fact, the assigned address space is
actually very sparsely populated but there is no
satisfactory way of releasing the unused
addresses without seriously complicating routing
or disrupting existing networks. - The 32-bit addresses used by IPv4 provides
insufficient flexibility for global Internet
routing. The deployment of Classless InterDomain
Routing (CIDR) has extended the lifetime of IPv4
routing by a number of years, but the effort
required to manage routing continues to increase.
- Even if IPv4 routing could be scaled up, the
Internet will eventually run out of network
numbers. - IPv6 extends the maximum number of Internet
addresses by using 128-bit addressing. - As both IPv4 and IPv6 protocols may coexist on
the same network, providing an orderly migration
from IPv4 to IPv6. - IPv6 has a simplified packet header and improved
options.
25Networks IP Networks version 6
26Networks IP Networks version 6
- IPv6 addresses consists of eight 16-bit words
- Addresses are represented as eight 16-bit
hexadecimal words, each separated by a colon e.g.
38295FABCA272EB2AB23923CFAB45469 - IPv4-mapped IPv6 address'' has the following
format - 00000000000000000000FFFFx1.a2x.x3.x4
- IPv6 has three types of addresses
- A unicast address'' uniquely identifies an
interface and a system. - A multicast address'' uniquely identifies a
number of interfaces and systems that belong to a
multicast group. - An anycast address'' is an address that has a
single sender, multiple listeners, and only one
responder (normally the nearest'' one, depending
on the routing protocols' measure of distance).
For example, several web servers may listen on an
anycast address. When a request is sent to this
address, only one responds.
27Networks IP Networks v6 Global Unicast Address
format
- TLA ID Top-level aggregation identifier will be
used to divide the address space into
geographical regions and major subdivisions of
these such as countries, states, and broad
organizational types. Routers at the top level
will have a routing table entry for every active
TLA ID as well as additional lower-level entries
for their TLA. - NLA ID Next-level aggregation identifier
assigned by the RIRs (Regional Internet
Registries) to service providers and large
organizations. The NLA will be used to divide the
address space selected by a TLA ID between
Internet service providers (ISPs) and individual
large organizations such as governments and
multinational companies. - SLA ID Site-level aggregation identifier
assigned within an organization. The SLA allows
each site to allocate up to 65,536 subnets per
NLA ID. Organizations that require additional
subnets can achieve this by aggregating ranges of
NLA IDs. - Interface ID Identifies an individual interface
on a system.
28Networks IP Networks v6 Extension Header
- Specifically, IPv6 omits the following fields
from IPv4 - header length (the length is constant)
- identification
- flags
- fragment offset
- header checksum
- IPv6 options improve over IPv4 by being placed in
separate extension headers that are located
between the IPv6 header and the transport-layer
header in a packet. - Newly defined extensions can be integrated more
easily into IPv6 extension headers - hop-by-hop options that apply to each hop
(router) along the path - routing header for loose/strict source routing
(used infrequently) - define the packet as a fragment and contains
information about the fragmentation (IPv6 routers
do not fragment) - IP Security authentication
- IP Security encryption
- destination options for the destination node
(ignored by routers)
29Networks IP Networks v6 Extension Header
- IPv6 uses the priority field in the IP header to
provide an explicit priority definition. A node
can set this value to indicate the relative
priority of a particular packet or set of
packets. The node, routers, or the destination
host can use the value to decide what to do with
the packet, such as letting it pass or dropping
it. - Congestion-controlled traffic is defined as
traffic that responds to congestion through a
back-off'' or other limiting algorithm.
Priorities for congestion-controlled traffic are
- 0 uncharacterized traffic
- 1 filler'' traffic such as netnews
- 2 unattended data transfer such as electronic
mail - 3 reserved
- 4 attended bulk transfer such as FTP
- 5 reserved
- 6 interactive traffic such as telnet
- 7 control traffic such as routing protocols
30Networks IPv6 over IPv4 using Tunneling
- Tunneling allows the existing IPv4 routing
infrastructure to carry IPv6 traffic. - Dual-stack hosts and routers (that support both
IPv4 and IPv6) can tunnel IPv6 datagrams over
regions of IPv4 routing topology by encapsulating
the IPv6 datagrams within IPv4 packets.
31Networks Digital Video Broadcast - Terrestrial,
Satellite, Cable
- Satellite Modulation Quadrature Phase Shift
Keying (QPSK) - Terrestrial Modulation Orthogonal Frequency
Division Multiplexing (OFDM) - Cable Modulation Quadratrure Amplitude
Modulation (QAM)
32Networks Digital Video Broadcast - Terrestrial,
Satellite, Cable
- Compression The audio-visual source material is
compressed to get a low enough bit rate to make
economic use of available transmission bandwidth. - Packetisation and synchronisation Each
Elementary Stream (ES) is split into access units
(AU), (audio frames or pictures). AUs are
packetised into a Packetised (PES) packet, by
adding a header with information about the
content of the packet. PES structure uses time
stamps. - Multiplexing The MPEG-2 multiplexes PESs in a
synchronous way into one transport stream which
contains all data required by a receiver to
recognise services (PSI/SI), decode and present
synchronously audio-visual material etc. - Error Protection DVB has made several
specifications in order to adapt the stream to
different networks, e.g. satellite, terrestrial,
and cable - Modulation and transmission DVB specifies how
the signal is adapted to different networks.
33Networks Digital Video Broadcast - Packetised
Elementary Streams
- The PES packet consists of a header and a payload
and may be of variable length up to 64 kBytes.
However, PES packets containing a video
elementary stream may have unbounded or
unspecified PES packet length.
34Networks Digital Video Broadcast Presentation
and Decoding Time Stamps
- When MPEG-2 bi-directional coding is used, a
picture may have to be decoded some time before
it is presented, so that it can be used as a
source of data for a B-picture. - The decoder needs to know when to decode a frame
and when to display it. Consequently, two types
of time stamps exists - Presentation Time Stamp (PTS) indicates the
time when a picture must be presented - Decoding Time Stamp (DTS) indicates the time
35Networks Transport Stream
- Transport layer converts PES packets and sections
into small 188 bytes packets of constant size. - Structure 188 bytes, min 4 bytes header,
adaptation field (up to 183 bytes)
36Networks Transport Stream Program Specific
Information PSI tables
- Program Association Table (PID0x0000) List of
all available programs (i.e. services) in a TS.
Provides the link between the program number and
the PMT PIDs. Program number 0 always carry the
NIT. - Program Map Table (PID Assigned in PAT) List of
elementary streams belonging to a program. Also
contains info (descriptors) about each program
and individual ESs.
37Networks Transport Stream Service Information
SI tables
- Service Description Table (PID 0x0011) Contains
data describing the services in the transport
stream, e.g. service name and provider.
38Networks Transport Stream Other Service
Information SI tables
- Network Information Table (PID 0x0010) Contains
information about the physical network carrying
the transport stream. Also included are details
of other transport streams. - Service Description Table (PID 0x0011) Contains
data describing the services in the transport
stream, e.g. service name and provider. - Bouquet Association Table (PID 0x0011) Provides
information about a collection of services
marketed as a single product. Services may be
located in different transport streams. - Event Information Table (PID 0x0012) Contains
information about program names, start time,
duration etc. both on the actual TS and other
transport - Running Status Table (PID 0x0013) Contains
information about the status of an event - Time and Date Table (PID 0x0014) Carries the
UTC-time and date. - Time Offset table (PID 0x0014) Carries the
UTC-time and date information and the local time
offset. - .. and other tables
39Networks DVB - Data Broadcasting Profiles
- Data piping simple, asynchronous, end-to-end
delivery of data through DVB - Data streaming streaming-oriented, end-to-end
delivery of data either asynchronously,
synchronously or synchronised with other data
streams (e.g. audio and video) through DVB - Multiprotocol encapsulation (MPE) for services
that require transmission of datagrams of
communication protocols via DVB - Data carousels for data services that require
periodic, cyclical transmission of data modules
through DVB - Object carousels for data services that require
periodic, cyclical broadcasting of Digital
Storage Media Command and Control (DSM-CC)
User-User objects through DVB