You are on page 1of 56

Telecommunication Software

Lecture 5, October 22, 2002


Map of lectures

• So far:
– We reviewed existing network technologies and
applications
• Today’s plan:
– We study the state-of-the-art models for network
architecture and protocols
• OSI model and Internet protocol suite
– We start presenting the basic concepts of our
reference model
• Object-orientation
ISO-OSI model
• Framework of standards for Open Systems Interconnection
1. Basic reference model
• Provides a common basis for the development of OSI standards
• Defines common terminology and references for system, security and
mgmt architecture
• Parts: the basic model, security architecture, naming and addressing,
mgmt framework (ISO 7498)
2. Service specifications
• Based on OSI model
• Define capabilities provided by the OSI systems in an abstract way
3. Protocol specifications
• Based on OSI model
• Define the functionality required to provide a particular OSI service
1: System model

• OSI system -> interconnection of compatible open systems,


functionally decomposed into 7 layers and 2 planes
• Layers and planes define a structuring of the system
• Structuring is performed to break down complexity into more
manageable components
• Components at each layer/plane are coarse-grain building
blocks of a computer network
Layers

Application Application layer File transfer, email

Presentation layer

Session layer
Communication
System Transport layer TCP, …

Network layer IP, …

Network adaption protocols


Data link layer
Network
Physical layer

Communication OSI Model Internet Protocols


Systems (selection)
Physical layer
• Provides mechanical, electrical, functional and procedural
means to activate, maintain and deactivate physical links
between nodes for bit transmission
• Defines
– Transmission medium
– Signaling technique
– Encoding scheme
• Typical questions
– How many volts to be used to represent a 1 and how many a 0
– How many nanoseconds a bit lasts
– May transmission proceed bidirectionaly
– How is the initial connection established and how is it torn down
– How many pins the network connector has, each pin used for what
Data link layer
• Provides the means to establish, maintain and release
logical links between nodes, for transferring data units
instead of raw bits
• The provided service hides functions performed:
– Framing (delimiting streams of bits to form identifiable data units)
– Bit error detection and correction
– How to keep a fast transmitter from drowning a slow receiver in
data
– (broadcast networks:) how to control access to the shared
channel -> medium access control sublayer
Network layer
• Responsible for interconnecting multiple (sub)networks
into a single virtual network with a unique addressing
space (internetwork)
• The provided service hides the internetworking functions
performed
– Relaying
– Routing
• Organized internally into 3 sublayers
– Subnetwork-access protocol (SNAP)
– Subnetwork-dependent convergence protocol (SNDCP)
– Subnetwork-independent convergence protocol (SNICP)
Transport layer
• Provides the transparent exchange of data, w/o any
restrictions regarding the format, coding, content
• Transfer of data is performed in a cost-optimized way
according to required QoS
• QoS defines the common properties according to
reliability, performance, security
• A truly end-to-end layer, from source to destination
– program on source machine carries conversation with similar
program on destination machine using msg headers and ctrl msgs
Session layer
• Provides the means to organize and synchronize
communication dialogues
• Additional facilities when compared to transport layer
– Dialog control facility: forces communication participants to
follow a particular data exchange sequence
– Quarantine facility: enables users to send one/more msgs that
are not delivered until explicitly released by their producers
– Recovery facility: enable users to define and identify
synchronization points which can be used when errors occur
– Token management: prevents two parties from attempting the
same critical operation at the same time
Presentation layer
• Ensures that applications can communicate even though
they use different data representations
• Concerned with the presentation of the syntax of user
data to be exchanged
• Data structures to be exchanged can be defined in an
abstract way, along with a standard encoding
• Manages these abstract data structures
• Allows higher-level data structures to be defined and
exchanged
– E.g.: banking records
Application layer

• Provides basic building blocks for networked applications,


called application service elements (ASE)
• ASE -> concerned with the semantics of user data to be
exchanged (e.g.: email, files)
• Contains a variety of protocols commonly needed by users
Planes
• Two planes
– Management plane (MP)
– Operational plane (OP)
• MP
– Contains functions for layer and system management
• OP
– Contains the communication facility
2 + 3: Service and protocol model
• At each layer, one/more services are provided
– A service may offer communication capabilities to the next higher level
or to users for sending/receiving data over the network
• For service provision, entities at the layer perform a protocol
– Defines the rules/formats for entities collaboration
– Defines entities collaboration by using the service of the next lower
layer, except for the physical layer
• Service visible only to the next higher layer
• Protocol implementing service: hidden
– Benefit: protocols can be replaced w/o affecting the next higher layer if
they provide the same service
• OSI framework has separate specifications for services and
protocols
Communication model
• OSI model defines two types of communications
– One based on the abstraction of a connection
– One based on the abstraction of a datagram
• Connection: communication association between two/more
users
– OSI model: communication pattern can be p2p, p2mp, mp2mp
– OSI service specifications: communication pattern only p2p
• Datagram: packets routed independently of each other
• Connection-oriented communications
– Require explicit establishment and release
– Unlimited nr of (normal / prioritary) user data can be exchanged
bidirectionaly
• Datagram-oriented communications
– Virtual circuits are formed
QoS
• Not specified in the OSI model
• Can be found in ISO 8072 service specifications
• Attributes of QoS
– Performance, with parameters throughput, transit delay,
connection-establishment delay and connection-release delay
– Reliability, with parameters residual error rate, transfer failure
probability, connection-establishment failure probability,
connection-establishment failure probability, resilience
– Security with parameter protection
– Priority with parameter level
Summary of OSI model

• Few OSI services and protocols are used, some have


been superseded by Internet protocols
• Reference model and its terminology quite used and
appropriate for
– Conceptual or architectural discussions
– System modeling purposes
Internet Protocol Suite
• Internet employs a collection of different and complementary
protocols at various layers, known as Internet Protocol Suite
or TCP/IP
– More than 100 protocols
– Most famous: TCP and IP
• All protocols specifications are public
– Internet an open system
• Specifications published as Request for Comments (RFC)
documents
– Official standards
– General notes -> draft or proposed standards, experimental, historical
or informational descriptions
Internet, intranet, internet

• Internet
– The existing wide area internetwork in which the IPS is applied
• intranet
– Private network in which IPS is used
– Users/providers are typically of the same organization
• internet(work)
– Any collection of networks that appears to its users as a single
virtual network by using a common protocol suite
– Generally no protocol suite is prescribed
Internet organization

• Internet standards and technologies are supervised,


coordinated and evolved by 4 non-profit international
bodies:
– Internet Society (ISOC)
– Internet Architecture Board (IAB)
– Internet Research Task Force (IRTF)
– Internet Engineering Task Force (IETF)
ISOC

• Builds the legal cover for Internet development


• Responsible for the global coordination and cooperation
of the international activities
• Maintains and advances effective administrative
processes in a global network
IAB

• Technical advisory group of ISOC


• Its charter specification in RFC 1601
• Responsible for
– The long term planning of the Internet
– The final quality of Internet standards
– The editorial mgmt and publication of the RFC documents
IRTS

• Concentrates on long-term research projects to gain


basic understanding of network, internet, and protocol
technology
• Falls under the IAB
IETF
• Responsible for short-term research activities
• Develops specifications that finally become Internet standards
• Composed of numerous networks designers, operators, users,
vendors, and researchers interested in developing the Internet
• Itself one of the largest forums to exchange information
through Internet
• Dominant force driving Internet developing
• Working areas: applications, routing, security, transport,
internet, user services, operational requirements, general
issues
• Falls under the IAB
• Its activities managed by a separate committee: Internet
Engineering Steering Group
Internet addressing 1

• Internet protocol (IP): the core protocol of the IPS


– Hides the nr, type, and arrangements of subnets connected in
order to form the internet, from the application
– The service provided: end-to-end, unreliable, datagram-oriented
– Introduces a new abstract level of addresses (IP addresses)
– IP addresses valid within the internet scope
– Each datagram transferred by IP is unambiguously identified by
source and destination IP addresses
Internet addressing 2
• IP
– Runs on each node in the Internet service provider’s scope
• On end systems (hosts) and on relay systems (routers)
– To be addressable each host needs at least one IP address or a
subnet to which it is physically connected
– Routers
• linked to two/more subnets
• Perform relay function: forwards IP datagrams between subnets
– A host may have access to multiple subnets (multihomed host)
– A host may optionally perform a relaying function
=> acting as a router, too
Internet addressing 3

end-to-end
TCP TCP
IP IP p2p IP IP

Subnet Subnet Subnet

virtual network (internet)


Internet routing
• All hosts and routers running IP maintain a routing table
– Contains the IP addresses of the directly connected hosts and
routers
– Updated by protocols different than IP; there are 2 classes of
these
– Intradomain routing protocols
• Intended to exchange routing information within a closed
administrative address domain
– Interdomain routing protocols
• Intended to exchange routing information between autonomous
administered and independent address domains
System architecture and protocols

• IPS structured in 4 layers


– Link / network adaptation layer (LLL)
– Network layer (NL)
– Transport layer (TL)
– Application layer (AL)
• Multiple protocols reside on each layer
LL
• Its protocols adapt to the different subnet properties for
supporting a uniform subnet interface to NL
• Has an IP-independent protocol for serial links: point-to-point
protocol (PPP)
– Transfers bidirectionaly datagrams over a p2p physical link
– 3 subprotocols
• An encapsulation and multiplexing protocol to run simultaneously different
network protocols over the same link
• A link control protocol to configure and supervise the link
• A family of network ctrl protocols to manage the dedicated requirements
of the protocols below
• Has a nr of protocols to convert between IP addresses and
network-specific addresses
– ARP (address resolution protocol)
– RARP (reverse address resolution protocol)
NL
• Its protocols
– hide the nr, type, and arrangements of the subnets
– provide a single virtual network with a subnet-independent
addressing for the transport layer
• Takes case of routing user data through subnets towards
the final destination
• User data can be segmented and reassembled during the
transmission
– for adapting to respective subnets properties
• NL functionality provided by a collection of protocols, each
responsible for a certain task:
– relaying, error reporting, group mgmt, resource reservation, routing
NL protocols

• Internet Protocol (IP)


• Internet Group Management Protocol (IGMP)
• Internet Control Message Protocol (ICMP)
• Resource ReSerVation Protocol (RSVP)
• Internet STream Protocol, version 2 (ST2)
• Border Gateway Protocol (BGP)
• Open Shortest Path First (OSPF)
• Routing Information Protocol (RIP)
TL
• Improve the end-to-end network service by adding
functions
– Error control (=> reliable communication)
– Demultiplexing (=> multiple applications at the same time)
• Protocols
– Transmission Control Protocol (TCP)
– User Datagram Protocol (UDP)
– Versatile Message Transaction Protocol (VMTP)
– NETwork BLock Transfer (NETBLT) Protocol
– Multicast Transport Protocol (MTP)
– Reliable Data Protocol (RDP)
AL
• Its protocols use transport services to support application-
oriented services (e.g., file transfer, remote login, email)
• Protocols
– BOOTstrap Protocol (BOOTP)
– Dynamic Host Configuration Protocol (DHCP)
– ECHO
– DISCARD
– TIME
– CHARGEN
– File Transfer Protocol (FTP)
– Trivial File Transfer Protocol (TFTP)
– TELecommunications NETwork (TELNET) Protocol
– Simple Network Management Protocol (SNMP)
– Simple Mail Transfer Protocol (SMTP)
– Domain Name System (DNS)
IP v4
• RFC 791, ‘81
• Variable header length
– Multiple of 32 bits; 13 fields
IP v4 addresses
• 4-byte numbers structured into 5 classes
Reserved IP addresses
Classes of addresses
• Classes A, B, C contain a network identifier NI and a host
identifier HI
– Simplest case: NI -> specific subnet in the internet, HI -> specific host
in this subnet
• NI are assigned by a central authority, Internet Network
Information Center
• Moderate address hierarchy used
• If a finer structuring is required, HI can be further divided in a
subnet identifier (SI) and a HI
– The ratio of SI / HI can be independently defined by the administrator
of the network defined by NI
– To tell boundary between SI and HI each system in NI’s scope needs
also a subnet mask
– Subnet mask: 32-bit long with all bits 1 for NI and SI and all bits 0 for
HI
Subnets

A campus network with LANs for various departments


Subnet mask

255.255.252.0 or /22
IP v6

• To prevent running out of 32-bit addresses, ISOC


wanted new version/generation of IP
• Finalized in RFC 1883, ’95
• The new format and semantics of IP addresses of v6 are
defined separately in RFC 1884
Major changes to v4
• IP addresses increase from 32 bit (4 byte) to 128 bit (16 byte)
• Improved multicast IP addresses by adding a scope field
• New anycast IP address type
– To send packets to anyone of a group, usually the nearest group
member
• Options header field replaced by optional extension headers
• All fields for segmentation processing removed (only end-to-end
fragmentation possible)
• New flow field to identify particular user data streams or traffic
classes
• Extensions support for authentication, data integrity, and (optional)
data confidentiality
v6 header
• Fixed-size header, 40 byte long + extension headers possibly
appended (extension header -> multiple of 8 bytes)
Extension headers
Summary of IPS

• Internet protocols are de facto standards for computer


networks
• Emergence of new technologies/applications has raised
the nr of protocols and the necessary modifications and
extensions
• Internet protocols are usually designed and implemented
in a monolithic way
Reference framework
• For Modular Communication Systems (MCS)
• MCS goal
– to provide a common terminology and modeling technique for
the specification, design, and implementation of MCS
• Employed terminology follows the one of OSI model
– With modifications
• Novel features
– OO
– universal communication model (provides the abstraction of a
multipoint connection)
Models of MCS

1. Object model
2. System model
3. Service model
4. Communication model
5. Protocol model
6. Composition model
Object model
• Modularization: decomposition of the problem domain into
smaller parts easier to understand
– Decomposition can be applied repetitively
– The result is a collection of functional modules
– The modules can be typically developed in parallel
• Object-orientation: powerful, well-accepted modularization
technique
– Specific properties: information hiding, encapsulation, abstraction,
inheritance
– Eases the design of extendable, composable and reusable systems
– In context of networks: eases the collaboration with other networking
aspects (mgmt, open distributed systems)
• (these already use an OO foundation)
Properties of OO
• Encapsulation
– Certain functionality is accessible only through well-defined
interfaces
– Objects are free of side effects
• Information hiding
– Objects hide their internal data structure and processing
algorithms
• Abstraction
– Objects may provide a higher level view of the actual
encapsulated functionality
• Inheritance
– New classes of objects are derived from existing classes by
specifying or implementing ONLY the differences
Composition Framework

• A collection of rules and interfaces required to guide, govern


and master the composition of objects
• Objects or components or modules -> units of composition
• General purpose frameworks for designing and developing
objects in networks exist
• For composing protocols, we need special purpose
frameworks
– Due to performance sensitivity of protocols
Objects and classes
• Object -> entity having a state and a defined set of
operations
– State encapsulated; can be manipulated / retrieved via operations
– Only operations visible; they define object behavior in an abstract
way and hide how this behavior is provided
• Class -> description of similar objects
– Specifies the external and internal representation of all objects
created as instances of that class
– External representation: names and parameters of all visible
operations
– Internal representation: how the operations manipulate/retrieve
the internal object state
Inheritance
• Define new or specialized derived classes based on
previously defined base classes
• Multiple inheritance: a class inherits from multiple
classes
• Derived class inherits the external and internal
representations of the base class
• Parts of base class can be redefined, new parts can be
added later
• Class hierarchy -> all classes related by inheritance
Operations
• Interaction between objects: mutual invocation of their
operations
• Caller and callee
• Constructor and destructor operations
– Objects exist in time and memory
– Between creation and termination, it can be in different states
– Objects are created by using a class description as template
– Objects in same class have identical sets of operations but may
be in different states
Object decomposition

• Objects can be decomposable into collections of objects


• The object and its decomposition have equivalent
external behavior
• The decomposition provides a more detailed view of the
problem domain
• Decomposition can be applied at several layers
Objects in networks

• Objects in networks can be node local or distributed


• Node local object
– Resides on one node at a time
– It may migrate but is never located on two nodes simultaneously
• Distributed object
– May reside on multiple nodes simultaneously
– Typically composed of multiple node local objects that perform a
protocol to provide the distributed object’s capability

You might also like