View
1
Download
0
Category
Preview:
Citation preview
Communication Networks Winter 2019/20
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
104
105
Communication Networks Winter 2019/20
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 MiAbstract Medium Mi
Communi-catingEntity
Ii+11
Communi-catingEntity
Ii+11
Communi-catingEntity
Ii+12
Communi-catingEntity
Ii+12
Communi-catingEntityIi+1
N-1
Communi-catingEntityIi+1
N-1
Communi-catingEntityIi+1
N
Communi-catingEntityIi+1
N
…
ServiceInterfaceof Layer i
ServiceAccessPoint (SAP)
Exchange ofServicePrimitives
106
107
Communication Networks Winter 2019/20
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
108
109
Communication Networks Winter 2019/20
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
110
111
Communication Networks Winter 2019/20
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
* 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
112
113
Communication Networks Winter 2019/20
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
114
115
Communication Networks Winter 2019/20
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
116
117
Communication Networks Winter 2019/20
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+12Ii+1
1Ii+11
Abstract Medium Mi-1Abstract Medium Mi-1
Ii2Ii2Ii
1Ii1 Protocol
118
119
Communication Networks Winter 2019/20
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
120
121
Communication Networks Winter 2019/20
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
122
123
Communication Networks Winter 2019/20
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 SEntity SStart &
IdleState
AwaitingAck 0
AwaitingAck 1
IdleState
L-Dat.IndBA(0,<m,1>);Dat.Cnf(m)
Dat.Req(n);L-Dat.ReqAB(<n,0>)
L-Dat.IndBA(0,<m,0>);Dat.Cnf(m)
Dat.Req(n);L-Dat.ReqAB(<n,1>)
L-Dat.IndBA(0,<m,1>)orL-Dat.IndBA(1,<m,b>);L-Dat.ReqAB(<n,0>)
L-Dat.IndBA(0,<m,0>)or
L-Dat.IndBA(1,<m,b>);L-Dat.ReqAB(<n,1>)
Abstract Medium with ABP
Abstract Medium L
SAP AABP
SAP AL
L-Dat.ReqAB(<n,b>) L-Dat.IndBA(f,<m,b>)
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(<XX,0>)
L-Dat.IndBA(1,<YY,0>)
Medium U
Dat.Req(XX)
Dat.Cnf(YY)
Dat.Req(ZZ)
Dat.Cnf(UU)
<XX,0>
<YY,0>Error
<XX,0>
<ZZ,1>
<UU,1>
<YY,0>
Entity S
124
125
Communication Networks Winter 2019/20
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
xx xx xx xx xx xx xx bb ll ll ll ll ll ll ll ll ll ll ll ll ll ll ll ll nnnnnnnnnnnnnnnn nnnnnnnnnnnnnnnn
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 ABPAbstract Medium with ABP
Abstract Medium LAbstract Medium L
Dat.Req(n) Dat.Cnf(m) Dat.Ind(n)Dat.Rsp(m)
EntityS
EntityS
EntityR
EntityR
AL BL
AABP BABP
L-Dat.ReqAB(n) L-Dat.IndBA(f,m) L-Dat.ReqBA(m) L-Dat.IndAB(f,n)
126
127
Communication Networks Winter 2019/20
Prof. Jochen Seitz 13
Service Provided by the Two ABP Entities
Communication Networks: 3. Protocol Specification 128
5. Alternating Bit Protocol
Abstract Medium with ABPAbstract 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 LAbstract 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)
128
129
Communication Networks Winter 2019/20
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 REntity R
ReceivedAck 0
IdleState
Start &Idle
State
ReceivedAck 1 L-Dat.IndAB(0,<n,1>);
Dat.Ind(n)
Dat.Rsp(m);L-Dat.ReqBA(<m,0>)
L-Dat.IndAB(0,<n,0>);Dat.Ind(n)
Dat.Rsp(m);L-Dat.ReqBA(<m,1>)
L-Dat.IndAB(0,<n,0>)orL-Dat.IndAB(1,<n,b>);L-Dat.ReqBA(<m,0>)
L-Dat.IndAB(0,<n,1>)or
L-Dat.IndAB(1,<n,b>);L-Dat.ReqBA(<m,1>)
Abstract Medium with ABP
Abstract Medium L
SAP BABP
SAP BL
L-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(<XX,0>)
L-Dat.IndBA(1,<YY,0>)
Dat.Req(XX)
Dat.Cnf(YY)
Dat.Req(ZZ)
Dat.Cnf(UU)
<XX,0>
<YY,0>Error
<XX,0>
<ZZ,1>
<UU,1>
<YY,0>
L-Dat.ReqBA(<YY,0>)
L-Dat.IndAB(0,<XX,0>)
L-Dat.ReqBA(<YY,0>)
SAPBL
SAPBABPEntity S Entity RMedium L
ODtInd(XX)
ODtRsp(YY)
ODtInd(ZZ)
ODtRsp(UU)
130
131
Communication Networks Winter 2019/20
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
132
Recommended