1 / 48

Telecommunication Software Lecture 6 , October 29, 2002

Telecommunication Software Lecture 6 , October 29, 2002. Map of lectures. Last time: We studied state-of-the-art models for network architecture and protocols OSI model and Internet protocol suite We started presenting the basic concepts of our reference model  o bject-orientation

burian
Download Presentation

Telecommunication Software Lecture 6 , October 29, 2002

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Telecommunication SoftwareLecture 6, October 29, 2002

  2. Map of lectures • Last time: • We studied state-of-the-art models for network architecture and protocols • OSI model and Internet protocol suite • We started presenting the basic concepts of our reference model object-orientation • Today’s plan: • System, Service, and Communication models

  3. 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)

  4. Models of MCS • Object model • System model • Service model • Communication model • Protocol model • Composition model

  5. 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)

  6. 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

  7. 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

  8. SYSTEM model • Communication systems are decomposed into a set of service objects (SOs) • SO • Represents a particular service • Makes the capability of the service available to its users • System decomposition characterizes SOs according to • Layers • Planes

  9. Layers • Collection of SOs providing a subset of the CS’s functionality • yielded by its vertical decomposition • SOs provide services to • Objects of the next higher layer • Application objects • SOs use services provided by • The next lower layer • The network • Visibility • Layers numbered from bottom to top • Names may be given for comprehensibility

  10. Planes • Collection of SOs providing a subset of the CS’s functionality • yielded by its horizontal decomposition

  11. Reference architecture • No number of layers or hierarchy enforced to define a modular CS • Any configuration acceptable • Number of planes is enforced • Management plane • Composition plane • Access plane • Control plane • Transfer plane

  12. Enforced planes • Management plane • SOs of this plane provide the interface to/ from network and system management (defined elsewhere) • Composition plane • SOs of this plane provide the capability to configure individual communication services • Collectively provided by SOs of access, control, transfer planes • Access plane • SOs of this plane enable applications to establish communications with a priori defined capabilities • Control plane • By control of plane objects, users may exert an influence on active communications • Transfer plane • SOs of this plane enable participants of a communication association to transfer user information

  13. SERVICE model • Interaction between objects of adjacent layers uses the abstraction of SERVICE • Service • Capability offered by a service provider and applied by one/more service users • N-service provider • Object representing all relevant SOs of layer N required to perform the provided N-service • N-service user • SOs of layer N+1 that apply the N-service for cooperation • Users and providers perceive each other as black boxes

  14. Service primitives • Service defined by • A set of user and provider operations called service primitives • The valid sequence invocation of the primitives • Primitive • Single interaction between user and provider • May have call-by-value parameters • No return values • Service actions • E.g.: connection establishment, data transfer, connection release, failure notification, etc • Primitives are grouped according to service actions • request (Req), indication (Indic), response (Resp), confirm (Conf)

  15. Primitives and actions • User-invoked primitives: Req and Resp • Provider-invoked primitives: Indic and Conf • Service action • Initiated by Req • Reported by Indic • Users • May reply to an Indic by a Resp • Providers • May issue a Conf to reply to a Req • A service action defined by at most one Req, Indic, Resp, and Conf

  16. Diagrams • Valid sequences of interactions illustrated by • Time sequence diagrams (TSD) • State transition diagrams (STD) • TSD • Show sequences of interactions and how they are related in time • STD • Service viewed as a state machine • Service is in a particular state at any time • State transition occurs when an event (primitive invocation) occurs

  17. COMMUNICATION model • Communication services are based on an abstract communication model • This describes generally the sequence of the conversation: • Behavior and roles of participants • Number and sequence of data allowed to be exchanged • Direction of information flows • Duration of conversation • Well-known and widely used models provide the abstractions of • Connection (=> connection-oriented models) • Datagram (=> connectionless oriented models)

  18. Connection-oriented models • A conversation has 3 phases: establishment (E), data transfer (DT), release (R) • At E: • Provider and users try to explicitly agree on the new connection • Certain service capabilities may also be negotiated • DT may start only after E has finished successfully • Communication structure limited to 2 users • Users can send bidirectionaly unlimited amounts of data • DT is reliable • Lost, damaged, mis-sequenced, duplicated data are detected and corrected by provider

  19. Connectionless-oriented models • One data unit is exchanged between users (DATAGRAM) • Multiple destinations possible • DT is unreliable • No protection against loss, damage, duplication and mis-sequence

  20. Problem • Both models for current communication models are insufficient for new networked applications • These require communication models supporting adequately • Remote procedure call (RPC) transactions • Reliable conferences • Unreliable audio/video connections • Multicasting • It is undesirable to build dedicated models/services for each new application class

  21. A solution • A single and more general model is used: multipoint connection • This allows new connection types • Flexible QoS connections • Multipoint connections • Fast established connections • Short-lived connections • Hence, this model is more flexible

  22. Flexible QoS connection • Classical connections provide reliable DT • But, depending on applications, different levels of reliability or other terms of QoS are desirable • E.g. • audio/video applications may tolerate a certain degree of transmission errors as long as the required performance is obtained

  23. Multipoint connection • Classical connections restricted to fixed p2p structures with one data stream in each direction • If these constraints are relaxed: • Multipoint connections may exist • Multiple users may participate • Any number and arrangement of data streams may exist

  24. Fast-established connection • Classical model of connections: • Users may not exchange information until connection is established • But, if no negotiation is required: • A fast-established connection allows users to start information exchange w/o waiting for establishment completion => lower service latency

  25. Short-lived connection • In classical connections, each communication phase performed by a separate action • But, there are also short conversations: • Transfer of one datagram • Exchange of a single request/response msg • Short-lived connections used for short conversations • Combine the separate service actions for E, DT, R into a single action • Users can request simultaneously connection E, DT, and connection R, invoking one service primitive

  26. Model of MP connection • Communication services are based on the abstraction of multipoint (MP) connection • Communication association in which 2/more users may participate • Only users affiliated to the same connection are able to communicate (by exchanging information) • At any time, multiple connections with different participants may exist • User information is conveyed by the provider as service data units (SDUs) • SDUs are transferred transparently by provider • No restriction regarding the information’s content, format, or coding • Exceptions: communication services that encompass functions for data converting, compression, etc  these functions require knowledge about the SDUs semantics and may modify their content

  27. Model of MP connection 2 • Connection provides only the logical binding between users • Method of information exchange: DATA STREAM (DS) • Sequence of SDUs flowing unidirectionaly from one DS source to one/more DS sinks • Connections can have unlimited number of DSs, that can be freely arranged and re-arranged • During a connection lifetime, new streams may be created and existing ones may be terminated • DS’s arrangement is defined by a communication pattern • Contains the communication addresses of all connection participants • Defines between which connection participants DSs exist • Pattern addressing lets applications to define different • Communication structures: p2p, p2mp • Communication symmetries: unidirectional, bidirectional

  28. Model of MP connection 3 • Communication QoS defines connection and DS properties wrt • Reliability • Security • Performance • Different stream QoS may be assigned to DSs of the same connection • Communication phases • Service composition • Connection establishment • Data transfer • Connection release • Service deletion

  29. Service composition • Before applications can use their individual communication services they must compose them, applying the composition service • Each layer has a composition service provided by SOs from composition plane (composers) • Application passes to its composer • The capabilities of its desired communication services • The address under which wants to be referred by by other applications • Composer returns a service access point (SAP) object • The given communication address is bound to the SAP object • SAP objects  SOs of the access plane • SAP objects represent a particularly requested and composed communication service, providing access to the service’s capabilities • Applications with an access point (AP) are able to establish/release connections

  30. Service composition 2 • One communication address is bound at any time to each AP • Applications may have multiple APs with different communication addresses • to be reachable by different addresses simultaneously • Composing communication services • Performed by a local service action • Applications responsible for taking care they compose compatible N-communication services

  31. Connection establishment (CE) • During CE, service provider and relevant users agree on the new communication association • Simultaneously • SDUs may be exchanged • Connection capabilities negotiated • User is either initiator or responder • Initiator: requests the CE • Responder: waits for the indication of the CE • CE may be performed by service actions of type • Unconfirmed • User-confirmed • Provider-confirmed

  32. Connection establishment (CE) 2 • Moment when initiator and responder consider a connection to be established may vary • Depending on establishment type • DT phase entered only when, from a local point of view, CE phase is successfully finished • For each new connection users get a connection endpoint (CEP) object from their local AP objects • CEP objects  SOs of the control plane • CEP objects enable related user to control the connection (e.g. insert/delete new participants) • CEP objects related uniquely to a communication AP object • AP objects may have multiple endpoint (EP) objects assigned to them at the same time

  33. Data transfer (DT) • During DT users may exchange unlimited nr of SDUs along the defined DS arrangements • For each DS • Users have SOs of the transfer plane: DS source (SRC) objects and DS sink (SNK) objects • SRC object  endpoint of a DS, at which the related user may issue SDUs for transmission • SNK object  users may consume the transferred SDUs • Users are producers or consumers (wrt SRC/SNK) • SRC and SNK objects  uniquely related to a CEP • Multiple sources/sinks may be affiliated with the same EP • During DT: DS may be added or deleted; consumers may join/leave DS • SDUs transfer may be performed by service actions of type • Unconfirmed • Provider-confirmed • User-confirmed

  34. Connection release (CR) • When all users have left the connection, this is implicitly released • Users leave a connection by releasing their CEP objects • EPs may be released in an abrupt or graceful manner • Abrupt: releases the EP w/o considering whether SDUs are still in transfer • Graceful: does not release the EP until all SDUs are successfully sent or fatal error occurs • “Successfully sent” SDUs depends on QoS • Releasing EPs may be performed by service actions of type unconfirmed or local

  35. Service deletion (SD) • The AP objects of a user are discarded and all related CEP objects released abruptly • Bound communication addresses no longer valid in provider’s scope • Canceling of a AP object is done by a local service action

  36. Short-lived connections (SLC) • Combine into a single action the separate service actions for • Unconfirmed CE • Single DT • Abrupt CR • Single transfer may be of type unconfirmed, provider-confirmed, or user-confirmed, yielding respectively: • Datagram: unconfirmed SDU transfer, single self-contained SDU can be conveyed with single SLC • Acknowledged datagram: producer receives a notification when the sent SDU has arrived at consumer’s site; single SDU sent • Transaction: consumer may confirm receipt of SDU by returning a reply SDU; with each SLC, only one request and reply SDU can be exchanged • Services providing SLCs: connectionless services

  37. Enhancement facilities • Additional facilities for a communication service can be defined:

  38. Quality of Service (QoS) • Denotes the communication properties wrt the some attributes • Reliability • Security • Performance • QoS attributes are characterized each by a set of parameters

  39. Reliability • Communicating over networks includes a certain probability that the transferred information will be lost, damaged, mis-sequenced, or duplicated • Possible consequences • SDUs damaged: content of delivered SDU corrupted • SDUs lost: SDUs sent are not delivered • SDUs duplicated: SDUs are delivered multiple times • SDUs mis-sequenced: SDUs delivered in wrong order • SDUs miss-addressed: SDUs of a different connection or delayed SDU duplicates of old connections are delivered, undetected • Duplicated connection establishment: connections falsely established by duplicated requests

  40. Reliability 2 • Service provider may protect communications against combinations of these errors • Yields different levels of connection and stream reliability • Depends on application requirements • Applications select their required level of reliability using reliability parameters • Completeness • Un-ambiguity • Temporal ordering

  41. Reliability 3 • Completeness: assurance that all sent SDUs delivered at least once • Applications determine level of protection against SDU losses • Gaps in SDU sequences may be ignored, notified, or corrected • Correction based on retransmission • Applications can define max nr of retransmissions • Un-ambiguity: assurance that all sent SDUs delivered at most once • Applications determine level of protection against SDU duplications and miss-addressing, and duplicated connection establishments • They can select whether provider should detect/correct them or not

  42. Reliability 4 • Un-ambiguity • SDU duplication prevention selected => SDUs delivered only once to consumer • SDU miss-addressing protection requested => SDUs from other and old connections are detected and deleted • Prevention against falsely established connections -> provider detects delayed and duplicated connection requests • Temporal ordering: assurance that all SDUs are delivered in the order they have been sent • Applications determine whether SDU sequence should be preserved • If protection selected, provider detects and corrects mis-sequenced SDUs • By reordering or discarding

  43. Addressing • Addressing concept allows to identify and locate objects in a defined scope • Users of communication services require addresses to specify the desired participants to which a connection should be established • Providers of communication services use these addresses to locate the node and the SAP object of the corresponding service user

  44. Addresses • Users are known in network covered by provider only if attached to an AP • Each user attached to only one AP at a time • Application with several APs -> logically viewed as multiple users with different communication addresses • Communication addresses • Individual • Group addresses • Anonymous groups • Well-known groups • Redundant groups

  45. Patterns • N-pattern: ordered set of N-addresses • The ordering defines which users a DS should exist between • Patterns are passed to the provider when requesting new connection • Can be static or dynamic, simple or complex • Define structures like • p2p, p2mp, mp2mp • Forwarding, conferencing, pipelining, parallel streams

  46. Basic SO classes • MCS provide • Composition services • Communication services • Composition services • Enable the configuration of customized communication services • Provided by SOs of class composer • Communication services • Enable the addressing of corresponding users, maintenance of connections and exchange of SDUs • Provided by service objects of different classes • SAP, CEP, DS SRC, DS SNK

  47. Basic connection types • Negotiated connection • User-confirmed connection establishment phase; QoS is negotiated • Fast-established connection • Unconfirmed connection establishment phase • Short-lived connection • Combined connection establishment, data transfer and connection release phase • Reliable connection • Protected at least against SDU losses • Secure connection • Protected against some/all security attacks • Best effort connection • No performance commitments • Real time connection • Defined level of performance guarantee

  48. Summary of communication model • Communication model of multipoint connection • 2/more users exchange SDUs • Five phases • Datagram or transaction-oriented communication possible • QoS • Enhancement facilities introduced • Most originate from telephony networks • Important as voice and data networks will converge (multimedia) • Communication patterns • Basic reference SOs

More Related