SlideShare uma empresa Scribd logo
1 de 18
Preetha/ME-CSE/I
INTRODUCTION
• High level constructs [Helps the program in
using underlying communication network]
• Two Types of Communication Models
– Message passing
– Remote Procedure Calls
Preetha/ME-CSE/I
Message Passing Method
• Two basic communication primitives
 SEND - Message & its Destination
 RECEIVE - Source of msg &Buffer for storing the
message
• Client-Server Computation Model
 Client sends Message to server and waits
 Server replies after computation
Preetha/ME-CSE/I
Design issues
Blocking vs Non blocking primitives
Nonblocking
• SEND primitive return the control to the user process as soon as the message is
copied from user buffer to kernel buffer.
• Advantage : Programs have maximum flexibility in performing
computation and communication in any order.
• Drawback : Programming becomes tricky and difficult .
Blocking
• SEND primitive does not return the control to the user process until message has
been sent or acknowledgement has been received.
• Advantage : Program behavior is predictable.
• Drawback : Lack of flexibility in programming.Preetha/ME-CSE/I
Cont…
Synchronous vs Asynchronous Primitives
Synchronous
• SEND primitive is blocked until corresponding RECEIVE
primitive is executed at the target computer.
• Also known as rendezvous.
Asynchronous
• Messages are buffered.
• SEND primitive does not block even if there is no
corresponding execution of the RECEIVE primitive.
• The corresponding RECEIVE primitive can be either blocking
or non-blocking.
• Drawback : buffering message is more complex , as it involves
creating , manging &destroying buffers.Preetha/ME-CSE/I
Details to be handled in Message Passing
• Pairing of Response with Requests
• Data Representation
• Sender should know the address of Remote
machine
• Communication and System failures
Preetha/ME-CSE/I
Remote procedure call (RPC)
• RPC is a protocol that one program can use to
request a service from a program located in
another computer in a network without having
to understand network details.
• RPC uses the client/server model.
• The requesting program is a client and the
service-providing program is the server.
Preetha/ME-CSE/I
Cont..
• The main idea of an RPC is to allow a local
computer (client) to remotely call procedures
on a remote computer (server).
• RPC is an interaction between a client and a
server.
• Client invokes procedure on sever.
• Server executes the procedure and pass the
result back to client.
• Calling process is suspended and proceeds
only after getting the result from server.
Preetha/ME-CSE/I
Preetha/ME-CSE/I
RPC design issues
• Structure
• Binding
• Parameter and Result Passing
• Error handling, semantics and Correctness
Preetha/ME-CSE/I
Structure
Stub : It is a piece of code used for converting parameters passed
during a RPC.
Client stub procedure :
• constructs a message containing identity of remote procedures & parameters.
• sends the message to remote server machine.
Server stub procedures :
• receives the message at remote machine side & passes the parameter to the
procedure specified.
• Upon completion, it passes the result back to the client-stub procedure ,which
returns the result to the client.
Preetha/ME-CSE/I
Binding
It is a process that determines the remote
procedure & the machine on which it will be
executed, upon a remote procedure invocation.
Binding server :
 Client-server model uses this server.
 It stores the server machine addresses along
with the services they provide.
Preetha/ME-CSE/I
Parameter and result passing
1. Stub procedures convert the parameters to remote machine
format and pack them into a buffer . After the message is
received , it must be unpacked.
Problems :Conversion becomes expensive if it has to be done
on every call.
2. Send the parameters along with a code identifying the format
used so that receiver can do the conversion.
Problems :Machine should know how to convert all the
formats that can possibly be used and poor portability
because whenever new representation is introduced into the
system, existing s/w need to be updated.
Preetha/ME-CSE/I
Cont..
 Each data type may have standard format in
the message .Here ,sender convert data to
standard format & receiver convert from
standard format to its local representation.
 Problem : arises if both sender and receiver
use the same internal representation.
 Another issue is passing parameter by value &
reference .Passing parameter by value is
simple but other is complicated
Preetha/ME-CSE/I
Error handling ,semantics & correctness
RPC fails for two reasons:
 Computer failure
 Communication failure
Semantics play a significant role in development of
programs for distributes computation.
RPC semantics :
 “At least once” semantics
 “exactly once” semantics
 “At most once” semantics
Preetha/ME-CSE/I
 “At least once” semantics
If RPC succeeds,it implies that atleast one execution of remote
procedure has taken place at remote machine.
Else 0,partial,one or more execution.
 “exactly once” semantics
If RPC succeeds,it implies that exactly one execution of
remote procedure has taken place at remote machine.
Else 0,partial,one execution.
 “At most once” semantics
Similar to exactly once semantics , in addition calls that do not
terminate do not produce any side effects and also referred as
Zero-or-one semantics.
Preetha/ME-CSE/I
Preetha/ME-CSE/I
Preetha/ME-CSE/I

Mais conteúdo relacionado

Mais procurados

WORKFLOW OF THE PROCESS IN SPM
 WORKFLOW OF THE PROCESS IN SPM WORKFLOW OF THE PROCESS IN SPM
WORKFLOW OF THE PROCESS IN SPMgarishma bhatia
 
Designing Techniques in Software Engineering
Designing Techniques in Software EngineeringDesigning Techniques in Software Engineering
Designing Techniques in Software Engineeringkirupasuchi1996
 
Network Layer design Issues.pptx
Network Layer design Issues.pptxNetwork Layer design Issues.pptx
Network Layer design Issues.pptxAcad
 
Clock synchronization in distributed system
Clock synchronization in distributed systemClock synchronization in distributed system
Clock synchronization in distributed systemSunita Sahu
 
Program security
Program securityProgram security
Program securityG Prachi
 
Routing algorithm
Routing algorithmRouting algorithm
Routing algorithmBushra M
 
File models and file accessing models
File models and file accessing modelsFile models and file accessing models
File models and file accessing modelsishmecse13
 
Message and Stream Oriented Communication
Message and Stream Oriented CommunicationMessage and Stream Oriented Communication
Message and Stream Oriented CommunicationDilum Bandara
 
Modules and modularization criteria
Modules and modularization criteriaModules and modularization criteria
Modules and modularization criteriaUmaselvi_R
 
Levels of Virtualization.docx
Levels of Virtualization.docxLevels of Virtualization.docx
Levels of Virtualization.docxkumari36
 
Distributed shred memory architecture
Distributed shred memory architectureDistributed shred memory architecture
Distributed shred memory architectureMaulik Togadiya
 
Chapter 4 data link layer
Chapter 4 data link layerChapter 4 data link layer
Chapter 4 data link layerNaiyan Noor
 
software cost factor
software cost factorsoftware cost factor
software cost factorAbinaya B
 

Mais procurados (20)

WORKFLOW OF THE PROCESS IN SPM
 WORKFLOW OF THE PROCESS IN SPM WORKFLOW OF THE PROCESS IN SPM
WORKFLOW OF THE PROCESS IN SPM
 
Designing Techniques in Software Engineering
Designing Techniques in Software EngineeringDesigning Techniques in Software Engineering
Designing Techniques in Software Engineering
 
Staffing level estimation
Staffing level estimation Staffing level estimation
Staffing level estimation
 
Network Layer design Issues.pptx
Network Layer design Issues.pptxNetwork Layer design Issues.pptx
Network Layer design Issues.pptx
 
Clock synchronization in distributed system
Clock synchronization in distributed systemClock synchronization in distributed system
Clock synchronization in distributed system
 
unit testing and debugging
unit testing and debuggingunit testing and debugging
unit testing and debugging
 
Program security
Program securityProgram security
Program security
 
Routing algorithm
Routing algorithmRouting algorithm
Routing algorithm
 
File models and file accessing models
File models and file accessing modelsFile models and file accessing models
File models and file accessing models
 
Message and Stream Oriented Communication
Message and Stream Oriented CommunicationMessage and Stream Oriented Communication
Message and Stream Oriented Communication
 
Distributed database
Distributed databaseDistributed database
Distributed database
 
Domain name system
Domain name systemDomain name system
Domain name system
 
Modules and modularization criteria
Modules and modularization criteriaModules and modularization criteria
Modules and modularization criteria
 
Distributed deadlock
Distributed deadlockDistributed deadlock
Distributed deadlock
 
Levels of Virtualization.docx
Levels of Virtualization.docxLevels of Virtualization.docx
Levels of Virtualization.docx
 
Distributed shred memory architecture
Distributed shred memory architectureDistributed shred memory architecture
Distributed shred memory architecture
 
Design notation
Design notationDesign notation
Design notation
 
Chapter 4 data link layer
Chapter 4 data link layerChapter 4 data link layer
Chapter 4 data link layer
 
Replication in Distributed Systems
Replication in Distributed SystemsReplication in Distributed Systems
Replication in Distributed Systems
 
software cost factor
software cost factorsoftware cost factor
software cost factor
 

Semelhante a Communication primitives

Client Server Model and Distributed Computing
Client Server Model and Distributed ComputingClient Server Model and Distributed Computing
Client Server Model and Distributed ComputingAbhishek Jaisingh
 
CS9222 ADVANCED OPERATING SYSTEMS
CS9222 ADVANCED OPERATING SYSTEMSCS9222 ADVANCED OPERATING SYSTEMS
CS9222 ADVANCED OPERATING SYSTEMSKathirvel Ayyaswamy
 
Middleware in Distributed System-RPC,RMI
Middleware in Distributed System-RPC,RMIMiddleware in Distributed System-RPC,RMI
Middleware in Distributed System-RPC,RMIPrajakta Rane
 
Client computing evolution ppt11
Client computing evolution ppt11Client computing evolution ppt11
Client computing evolution ppt11Tech_MX
 
Message Passing, Remote Procedure Calls and Distributed Shared Memory as Com...
Message Passing, Remote Procedure Calls and  Distributed Shared Memory as Com...Message Passing, Remote Procedure Calls and  Distributed Shared Memory as Com...
Message Passing, Remote Procedure Calls and Distributed Shared Memory as Com...Sehrish Asif
 
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...Peter Broadhurst
 
Software artitchteure
Software artitchteureSoftware artitchteure
Software artitchteuressusere50573
 
CHP-4.pptx
CHP-4.pptxCHP-4.pptx
CHP-4.pptxFamiDan
 
Unit 3 - Protocols and Client-Server Applications - IT
Unit 3 - Protocols and Client-Server Applications - ITUnit 3 - Protocols and Client-Server Applications - IT
Unit 3 - Protocols and Client-Server Applications - ITDeepraj Bhujel
 
RPC: Remote procedure call
RPC: Remote procedure callRPC: Remote procedure call
RPC: Remote procedure callSunita Sahu
 
client server protocol
client server protocolclient server protocol
client server protocolbmuhire
 
2.communcation in distributed system
2.communcation in distributed system2.communcation in distributed system
2.communcation in distributed systemGd Goenka University
 
Remote invocation
Remote invocationRemote invocation
Remote invocationishapadhy
 
Topic 5- Communications v1.pptx
Topic 5- Communications v1.pptxTopic 5- Communications v1.pptx
Topic 5- Communications v1.pptxDanishMahmood23
 
Client server architecture
Client server architectureClient server architecture
Client server architectureRituBhargava7
 
Tcpip services and applications
Tcpip services and applicationsTcpip services and applications
Tcpip services and applicationsOnline
 
Odbc and data access objects
Odbc and data access objectsOdbc and data access objects
Odbc and data access objectsSangeetha Sg
 
ProposalRequirements document This is part 1 of the project, I .docx
ProposalRequirements document This is part 1 of the project, I .docxProposalRequirements document This is part 1 of the project, I .docx
ProposalRequirements document This is part 1 of the project, I .docxdenneymargareta
 

Semelhante a Communication primitives (20)

Client Server Model and Distributed Computing
Client Server Model and Distributed ComputingClient Server Model and Distributed Computing
Client Server Model and Distributed Computing
 
CS9222 ADVANCED OPERATING SYSTEMS
CS9222 ADVANCED OPERATING SYSTEMSCS9222 ADVANCED OPERATING SYSTEMS
CS9222 ADVANCED OPERATING SYSTEMS
 
Middleware in Distributed System-RPC,RMI
Middleware in Distributed System-RPC,RMIMiddleware in Distributed System-RPC,RMI
Middleware in Distributed System-RPC,RMI
 
Client computing evolution ppt11
Client computing evolution ppt11Client computing evolution ppt11
Client computing evolution ppt11
 
Message Passing, Remote Procedure Calls and Distributed Shared Memory as Com...
Message Passing, Remote Procedure Calls and  Distributed Shared Memory as Com...Message Passing, Remote Procedure Calls and  Distributed Shared Memory as Com...
Message Passing, Remote Procedure Calls and Distributed Shared Memory as Com...
 
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
 
Software artitchteure
Software artitchteureSoftware artitchteure
Software artitchteure
 
4. system models
4. system models4. system models
4. system models
 
CHP-4.pptx
CHP-4.pptxCHP-4.pptx
CHP-4.pptx
 
Unit 3 - Protocols and Client-Server Applications - IT
Unit 3 - Protocols and Client-Server Applications - ITUnit 3 - Protocols and Client-Server Applications - IT
Unit 3 - Protocols and Client-Server Applications - IT
 
RPC: Remote procedure call
RPC: Remote procedure callRPC: Remote procedure call
RPC: Remote procedure call
 
client server protocol
client server protocolclient server protocol
client server protocol
 
2.communcation in distributed system
2.communcation in distributed system2.communcation in distributed system
2.communcation in distributed system
 
Remote invocation
Remote invocationRemote invocation
Remote invocation
 
Topic 5- Communications v1.pptx
Topic 5- Communications v1.pptxTopic 5- Communications v1.pptx
Topic 5- Communications v1.pptx
 
Client server architecture
Client server architectureClient server architecture
Client server architecture
 
Tcpip services and applications
Tcpip services and applicationsTcpip services and applications
Tcpip services and applications
 
Odbc and data access objects
Odbc and data access objectsOdbc and data access objects
Odbc and data access objects
 
Remote procedure call
Remote procedure callRemote procedure call
Remote procedure call
 
ProposalRequirements document This is part 1 of the project, I .docx
ProposalRequirements document This is part 1 of the project, I .docxProposalRequirements document This is part 1 of the project, I .docx
ProposalRequirements document This is part 1 of the project, I .docx
 

Último

The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...ranjana rawat
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Dr.Costas Sachpazis
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordAsst.prof M.Gokilavani
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxBSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxfenichawla
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdfankushspencer015
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...ranjana rawat
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Christo Ananth
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlysanyuktamishra911
 
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsRussian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingrknatarajan
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performancesivaprakash250
 

Último (20)

The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxBSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsRussian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
 
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
 

Communication primitives

  • 2. INTRODUCTION • High level constructs [Helps the program in using underlying communication network] • Two Types of Communication Models – Message passing – Remote Procedure Calls Preetha/ME-CSE/I
  • 3. Message Passing Method • Two basic communication primitives  SEND - Message & its Destination  RECEIVE - Source of msg &Buffer for storing the message • Client-Server Computation Model  Client sends Message to server and waits  Server replies after computation Preetha/ME-CSE/I
  • 4. Design issues Blocking vs Non blocking primitives Nonblocking • SEND primitive return the control to the user process as soon as the message is copied from user buffer to kernel buffer. • Advantage : Programs have maximum flexibility in performing computation and communication in any order. • Drawback : Programming becomes tricky and difficult . Blocking • SEND primitive does not return the control to the user process until message has been sent or acknowledgement has been received. • Advantage : Program behavior is predictable. • Drawback : Lack of flexibility in programming.Preetha/ME-CSE/I
  • 5. Cont… Synchronous vs Asynchronous Primitives Synchronous • SEND primitive is blocked until corresponding RECEIVE primitive is executed at the target computer. • Also known as rendezvous. Asynchronous • Messages are buffered. • SEND primitive does not block even if there is no corresponding execution of the RECEIVE primitive. • The corresponding RECEIVE primitive can be either blocking or non-blocking. • Drawback : buffering message is more complex , as it involves creating , manging &destroying buffers.Preetha/ME-CSE/I
  • 6. Details to be handled in Message Passing • Pairing of Response with Requests • Data Representation • Sender should know the address of Remote machine • Communication and System failures Preetha/ME-CSE/I
  • 7. Remote procedure call (RPC) • RPC is a protocol that one program can use to request a service from a program located in another computer in a network without having to understand network details. • RPC uses the client/server model. • The requesting program is a client and the service-providing program is the server. Preetha/ME-CSE/I
  • 8. Cont.. • The main idea of an RPC is to allow a local computer (client) to remotely call procedures on a remote computer (server). • RPC is an interaction between a client and a server. • Client invokes procedure on sever. • Server executes the procedure and pass the result back to client. • Calling process is suspended and proceeds only after getting the result from server. Preetha/ME-CSE/I
  • 10. RPC design issues • Structure • Binding • Parameter and Result Passing • Error handling, semantics and Correctness Preetha/ME-CSE/I
  • 11. Structure Stub : It is a piece of code used for converting parameters passed during a RPC. Client stub procedure : • constructs a message containing identity of remote procedures & parameters. • sends the message to remote server machine. Server stub procedures : • receives the message at remote machine side & passes the parameter to the procedure specified. • Upon completion, it passes the result back to the client-stub procedure ,which returns the result to the client. Preetha/ME-CSE/I
  • 12. Binding It is a process that determines the remote procedure & the machine on which it will be executed, upon a remote procedure invocation. Binding server :  Client-server model uses this server.  It stores the server machine addresses along with the services they provide. Preetha/ME-CSE/I
  • 13. Parameter and result passing 1. Stub procedures convert the parameters to remote machine format and pack them into a buffer . After the message is received , it must be unpacked. Problems :Conversion becomes expensive if it has to be done on every call. 2. Send the parameters along with a code identifying the format used so that receiver can do the conversion. Problems :Machine should know how to convert all the formats that can possibly be used and poor portability because whenever new representation is introduced into the system, existing s/w need to be updated. Preetha/ME-CSE/I
  • 14. Cont..  Each data type may have standard format in the message .Here ,sender convert data to standard format & receiver convert from standard format to its local representation.  Problem : arises if both sender and receiver use the same internal representation.  Another issue is passing parameter by value & reference .Passing parameter by value is simple but other is complicated Preetha/ME-CSE/I
  • 15. Error handling ,semantics & correctness RPC fails for two reasons:  Computer failure  Communication failure Semantics play a significant role in development of programs for distributes computation. RPC semantics :  “At least once” semantics  “exactly once” semantics  “At most once” semantics Preetha/ME-CSE/I
  • 16.  “At least once” semantics If RPC succeeds,it implies that atleast one execution of remote procedure has taken place at remote machine. Else 0,partial,one or more execution.  “exactly once” semantics If RPC succeeds,it implies that exactly one execution of remote procedure has taken place at remote machine. Else 0,partial,one execution.  “At most once” semantics Similar to exactly once semantics , in addition calls that do not terminate do not produce any side effects and also referred as Zero-or-one semantics. Preetha/ME-CSE/I