15
Communication Networks Winter 2018/19 Prof. Jochen Seitz 1 Communication Networks Chapter 3 – Protocol Specification Communication Networks: 3. Protocol Specification 104 Overview 1. Message Sequence Charts (MSC) 2. Finite State Machines (FSM) 3. Special Communication Scenarios 4. PDU Format 5. Example: Alternating Bit Protocol (ABP) Communication Networks: 3. Protocol Specification 105

Communication Networks - midas1.e-technik.tu-ilmenau.demidas1.e-technik.tu-ilmenau.de/~webkn/Webdaten/Lehre/WS2018... · Connection being established Transport Layer Connection-Oriented

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

  • Communication Networks Winter 2018/19

    Prof. Jochen Seitz 1

    Communication Networks

    Chapter 3 – Protocol Specification

    Communication Networks: 3. Protocol Specification 104

    Overview

    1. Message Sequence Charts (MSC)

    2. Finite State Machines (FSM)

    3. Special Communication Scenarios

    4. PDU Format

    5. Example: Alternating Bit Protocol (ABP)

    Communication Networks: 3. Protocol Specification 105

  • Communication Networks Winter 2018/19

    Prof. Jochen Seitz 2

    Example World Wide Web

    Communication Networks: 3. Protocol Specification 106

    1. Message Sequence Chart

    Web Client

    Web Server(http://www.tu-ilmenau.de/kn)

    Internet

    Illustration of a Telecommunication Service (repeated)

    Communication Networks: 3. Protocol Specification 107

    1. Message Sequence Chart

    Abstract Medium Mi

    Communi-catingEntity

    Ii+11

    Communi-catingEntity

    Ii+12

    Communi-catingEntityIi+1

    N-1

    Communi-catingEntityIi+1

    N

    ServiceInterfaceof Layer i

    ServiceAccessPoint (SAP)

    Exchange ofServicePrimitives

  • Communication Networks Winter 2018/19

    Prof. Jochen Seitz 3

    Message Sequence Charts

    Communication Networks: 3. Protocol Specification 108

    1. Message Sequence Chart

    SAP1 SAP2 SAP1 SAP2Initiator Responder Initiator ResponderMedium Medium

    T-Con.Req

    T-Con.Ind

    T-Con.Req

    T-Con.Ind

    T-Con.Cnf

    T-Con.Rsp

    T-PAbo.Ind

    T-PAbo.Ind

    ServicePrimitive

    t t t t

    2. Finite State Machine

    Basic Concept of FSM

    • Finite number of states, identified by a (meaningful) name

    • Explicitly marked starting state

    • State transition:

    • Events: Service Primitives (possibly with parameters)

    Communication Networks: 3. Protocol Specification 109

    Idle Next StateTriggering Event;Resulting Event

  • Communication Networks Winter 2018/19

    Prof. Jochen Seitz 4

    Finite State Machine

    Communication Networks: 3. Protocol Specification 110

    2. Finite State Machine

    T-Con.ReqT-Con.CnfT-PAbo.Ind1T-Dis.Ind

    T-Con.RspT-Dis.Req

    T-Con.IndT-PAbo.Ind2

    .... .... ....

    States for data exchange andconnection release

    ; T-PAbo.Ind1, T-PAbo.Ind2

    T-Con.Rsp;T-Con.Cnf

    T-Con.Req;T-Con.Ind

    T-Con.Req;T-PAbo.Ind1

    ; T-PAbo.Ind1, T-PAbo.Ind2

    T-Dis.Req; T-Dis.Ind

    ConnectionestablishedIdle

    Connectionbeing

    established

    TransportLayer

    Connection-Oriented Services

    Communication Networks: 3. Protocol Specification 111

    2. Finite State Machine

    IdleConnectionestablished

    Procedures for connection release

    Procedures forconnection abort

    Procedures forconnection establishment

    Proceduresfor data

    exchange

  • Communication Networks Winter 2018/19

    Prof. Jochen Seitz 5

    Connection Establishment

    Communication Networks: 3. Protocol Specification 112

    3. Special Communication Scenarios

    112

    Con.Req(Address of Initiator,

    Address of Responder,Requested QoS,

    Further Attributes,Short User Data1)

    Con.Ind(Address of Initiator,Address of Responder,Requested QoS*,Further Attributes*,Short User Data1)

    Con.Rsp(Address of Initiator,Address of Responder,Assurable QoS†,Further Attributes†,Short User Data2)

    Con.Cnf (Address of Initiator,

    Address of Responder,Assurable QoS†,

    Further Attributes†,Short User Data2)

    Initiator Responder * and † mean that theaccording informationmight have been altered

    Medium

    Several Connections at One SAP

    Communication Networks: 3. Protocol Specification 113

    3. Special Communication Scenarios

    Service Access Point

    ConnectionEnd Point

    Con.ReqCon.IndCon.Rsp

    Con.Cnf

    being

    established

  • Communication Networks Winter 2018/19

    Prof. Jochen Seitz 6

    Unconfirmed Data Transfer

    Communication Networks: 3. Protocol Specification 114

    3. Special Communication Scenarios

    Dat.Req (User Data1)

    Dat.Ind (User Data1)

    Dat.Req (User Data2)

    Dat.Ind (User Data2)

    Dat.Req (User Data3)

    Dat.Ind (User Data3)

    Medium

    full duplexcommunication

    3. Special Communication Scenarios

    Types of Data Transfer

    • „normal“ data transfer: Dat.Req/Dat.Ind

    • expedited data transfer: ExpDat.Req/ExpDat.Ind

    Communication Networks: 3. Protocol Specification 115

    ExpDat.Req(EData1)

    ExpDat.Ind(EData1)

    Dat.Req(NData1)

    Dat.Ind(NData1)

    ExpDat.Req(EData2)

    ExpDat.Req(EData3)

    Dat.Req(NData2) ExpDat.Ind(EData2)

    ExpDat.Ind(EData3)

    Dat.Ind(NData2)

    Medium

  • Communication Networks Winter 2018/19

    Prof. Jochen Seitz 7

    Confirmed Service vs. Acknowledgement

    Confirmed Service

    • Confirmation initiated by receiving service user

    • All four types of service primitives

    Acknowledgement

    • Acknowledgement sent by service providing entity

    • Part of the protocol

    Communication Networks: 3. Protocol Specification 116

    3. Special Communication Scenarios

    SAP1 SAP2Initiator ResponderMedium

    T-Con.Req

    T-Con.Ind

    T-Con.Cnf

    T-Con.Rsp

    SAP1 SAP2Initiator ResponderMedium

    T-Dat.Req

    T-Dat.Ind

    Connection Release

    Confirmed Connection Release

    • Communication partner confirms release or rejects

    • Used on higher ISO/OSI layers

    Unconfirmed Disconnect

    • Connection release cannot be rejected

    • Used on the lower ISO/OSI layers

    Communication Networks: 3. Protocol Specification 117

    3. Special Communication Scenarios

    Rel.Req(User Data1)

    Rel.Rsp(Indication±,User Data2)

    Rel.Ind (User Data1)

    Rel.Cnf(Indication±,User Data2)

    Medium

    Dis.Req

    Dis.Ind

    Medium

  • Communication Networks Winter 2018/19

    Prof. Jochen Seitz 8

    Connection Abort

    Provider Abort (PAbo)

    • Provider cannot keep up the requested service anymore

    User Abort (UAbo)

    • User cannot keep up the association anymore

    Communication Networks: 3. Protocol Specification 118

    3. Special Communication Scenarios

    PAbo.Ind(Reason)

    PAbo.Ind(Reason)

    UAbo.Ind(User Data)

    UAbo.Req(User Data)

    Telecommunication Protocol

    Communication Networks: 3. Protocol Specification 119

    4. PDU Format

    Abstract Medium Mi

    Ii+12Ii+1

    1

    Abstract Medium Mi-1

    Ii2Ii

    1 Protocol

  • Communication Networks Winter 2018/19

    Prof. Jochen Seitz 9

    Example: Browsing the Internet

    Communication Networks: 3. Protocol Specification 120

    4. PDU Format

    ProtocolEntity

    ProtocolEntity

    ServiceUser Basic Service

    User of a Web Browser

    Web Server

    ServiceUser

    T-Con.Req

    T-Con.Ind

    T-Con.RspT-Con.Cnf

    T-Dat.Req

    T-Dat.Ind

    T-Dat.Ind

    T-Dat.Req

    Present Page Contentwww.ieee.org

    Page Requestwww.ieee.org/index.html

    Deliver Page Contentwww.ieee.org/index.html

    Establish transportconnection Accept

    transportconnection

    Send URL of therequested page

    Send the contentsof the requestedweb page

    Relay URL toweb server

    Relay page content to web browser

    HTTP Entity HTTP Entity

    Inputwww.ieee.org

    4. PDU Format

    Defining the PDU Format

    • For defining the PDU format

    ▪ define (max.) length of PDU

    ▪ define the fields in the PCI (header) according to the protocol functions implemented in the protocol

    ❖addresses

    ❖numbers and acknowledgements

    ❖ length

    ❖ information for flow control or load control

    ❖ checksum

    ❖…

    • Formal definition required (syntax and semantics) Abstract Syntax Notation 1 (ASN.1)

    Communication Networks: 3. Protocol Specification 121

  • Communication Networks Winter 2018/19

    Prof. Jochen Seitz 10

    5. Alternating Bit Protocol

    Example: Alternating Bit Protocol (ABP)

    • Confirmed data transfer service based on the unconfirmed data transfer service of the lower layer

    • Service primitives to exchange User Data:

    ▪ Dat.Req (User Data)

    ▪ Dat.Ind (User Data)

    ▪ Dat.Rsp (User Data)

    ▪ Dat.Cnf (User Data)

    • Alternating acknowledgement number (0 and 1) to distinguish between message loss and acknowledgement loss

    Communication Networks: 3. Protocol Specification 122

    ABP Service in a Message Sequence Chart

    Communication Networks: 3. Protocol Specification 123

    5. Alternating Bit Protocol

    SAPAABP

    SAPBABP

    Dat.Req(XX)

    Dat.Cnf(YY)

    Dat.Req(ZZ)

    Dat.Cnf(UU)

    Dat.Ind(XX)

    Dat.Rsp(YY)

    Dat.Ind(ZZ)

    Dat.Rsp(UU)

    Medium O

  • Communication Networks Winter 2018/19

    Prof. Jochen Seitz 11

    Finite State Machine forEntity S▪ Initiates data transfer

    ▪ Starts with bit “b” set to 0

    ▪ Incoming message also requires “b” = 0

    ▪ Bit “f” signals whether error was detected by abstract medium L:

    ▪ f=0: no error

    ▪ f=1: error

    Communication Networks: 2. Fundamentals 124

    5. Alternating Bit Protocol

    Entity SStart &

    IdleState

    AwaitingAck 0

    AwaitingAck 1

    IdleState

    L-Dat.IndBA(0,);Dat.Cnf(m)

    Dat.Req(n);L-Dat.ReqAB()

    L-Dat.IndBA(0,);Dat.Cnf(m)

    Dat.Req(n);L-Dat.ReqAB()

    L-Dat.IndBA(0,)orL-Dat.IndBA(1,);L-Dat.ReqAB()

    L-Dat.IndBA(0,)or

    L-Dat.IndBA(1,);L-Dat.ReqAB()

    Abstract Medium with ABP

    Abstract Medium L

    SAP AABP

    SAP ALL-Dat.ReqAB() L-Dat.IndBA(f,)

    Dat.Req(n) Dat.Cnf(m)

    Entity S Described by Message Sequence Chart

    Communication Networks: 2. Fundamentals 125

    5. Alternating Bit Protocol

    SAPAABP

    SAPAL

    L-Dat.ReqAB()

    L-Dat.IndBA(1,)

    Medium U

    Dat.Req(XX)

    Dat.Cnf(YY)

    Dat.Req(ZZ)

    Dat.Cnf(UU)

    Error

    Entity S

  • Communication Networks Winter 2018/19

    Prof. Jochen Seitz 12

    BodyHeader

    5. Alternating Bit Protocol

    PDU Definition for ABP

    • Byte 0: sequence bit „b“ in the lowest bit

    • Bytes 1 and 2: length of user data (positive binary number)

    • Remaining bytes: user data n

    Communication Networks: 3. Protocol Specification 126

    x x x x x x x b l l l l l l l l l l l l l l l l nnnnnnnn nnnnnnnn

    76543210 76543210 76543210 76543210 76543210

    Octet 0 Octet 1 Octet 2 Octet 3 Octet 3+l-1

    lLength of User Data

    nUser Data as submitted by O

    ...

    ...

    ...

    Complete Example

    Communication Networks: 3. Protocol Specification 127

    5. Alternating Bit Protocol

    Abstract Medium with ABP

    Abstract Medium L

    Dat.Req(n) Dat.Cnf(m) Dat.Ind(n)Dat.Rsp(m)

    EntityS

    EntityR

    AL BL

    AABP BABP

    L-Dat.ReqAB(n) L-Dat.IndBA(f,m) L-Dat.ReqBA(m) L-Dat.IndAB(f,n)

  • Communication Networks Winter 2018/19

    Prof. Jochen Seitz 13

    Service Provided by the Two ABP Entities

    Communication Networks: 3. Protocol Specification 128

    5. Alternating Bit Protocol

    Abstract Medium with ABP

    Dat.Req(n) Dat.Cnf(m) Dat.Ind(n)Dat.Rsp(m)

    AABP BABP

    AwaitingResponse

    Start andIdle State

    Dat.Req(n); Dat.Ind(n)

    Dat.Rsp(m); Dat.Cnf(m)

    Service Provided by Abstract Medium L

    Communication Networks: 3. Protocol Specification 129

    5. Alternating Bit Protocol

    Abstract Medium L

    L-Dat.ReqAB(n) L-Dat.IndBA(f,m) L-Dat.IndAB(f,n)L-Dat.ReqBA(m)

    AU BU

    AwaitingTransfer

    Start andIdle State

    L-Dat.ReqAB(n); L-Dat.IndAB(0,n)

    L-Dat.ReqAB(n); L-Dat.IndAB(1,x)

    L-Dat.ReqBA(m); L-Dat.IndBA(0,m)

    L-DatReqBA(m); L-Dat.IndBA(1,y)

  • Communication Networks Winter 2018/19

    Prof. Jochen Seitz 14

    Finite State Machine for Entity R• Responds to entity S

    • Cannot initiate communication

    • First incoming message (from abstract medium L) expected to have bit „b“ set to 0

    Communication Networks: 3. Protocol Specification 130

    5. Alternating Bit Protocol

    Entity R

    ReceivedAck 0

    IdleState

    Start &Idle

    State

    ReceivedAck 1 L-Dat.IndAB(0,);

    Dat.Ind(n)

    Dat.Rsp(m);L-Dat.ReqBA()

    L-Dat.IndAB(0,);Dat.Ind(n)

    Dat.Rsp(m);L-Dat.ReqBA()

    L-Dat.IndAB(0,)orL-Dat.IndAB(1,);L-Dat.ReqBA()

    L-Dat.IndAB(0,)or

    L-Dat.IndAB(1,);L-Dat.ReqBA()

    Abstract Medium with ABP

    Abstract Medium L

    SAP BABP

    SAP BLL-Dat.ReqBA(m) L-Dat.IndAB(f,n)

    Dat.Rsp(m) Dat.Ind(n)

    Complete Message Sequence Chart

    Communication Networks: 2. Fundamentals 131

    5. Alternating Bit Protocol

    SAPAABP

    SAPAL

    L-Dat.ReqAB()

    L-Dat.IndBA(1,)

    Dat.Req(XX)

    Dat.Cnf(YY)

    Dat.Req(ZZ)

    Dat.Cnf(UU)

    Error

    L-Dat.ReqBA()

    L-Dat.IndAB(0,)

    L-Dat.ReqBA()

    SAPBL

    SAPBABPEntity S Entity RMedium L

    ODtInd(XX)

    ODtRsp(YY)

    ODtInd(ZZ)

    ODtRsp(UU)

  • Communication Networks Winter 2018/19

    Prof. Jochen Seitz 15

    References

    • Lockemann, Peter C.; Krüger, Gerhard; Krumm, Heiko (1993): Telekommunikation und Datenhaltung. München, Wien: Carl Hanser Verlag.

    • Lynch, William C. (1968): Reliable full-duplex file transmission over half-duplex telephone lines. In: Communications of the ACM 11 (6), S. 407–410.

    • Popovic, Miroslav (2006): Communication Protocol Engineering. Boca Raton, FL, USA: CRC Press.

    • Seitz, Jochen; Debes, Maik (2016): Kommunikationsnetze. Eine umfassende Einführung. Anwendungen – Dienste – Protokolle. Ilmenau: Unicopy Campus Edition.

    • Venkataram, Pallapa; Manvi, Sunilkumar S. (2008): Communication Protocol Engineering. New Delhi: Prentice-Hall of India.

    Communication Networks: 3. Protocol Specification 132