9 Pages

rpc

Course: COSC 4377, Fall 2008
School: U. Houston
Rating:
 
 
 
 
 

Word Count: 930

Document Preview

4377, COSC Spring 2001, RPC - Supplement 2/27/01 Remote Procedure Call Outline Protocol Stack Presentation Formatting based on section 5.3 of Peterson & Davies book Peterson & Davie 1 RPC Timeline Client Reque st Server Blocked Blocked Reply Computing Blocked Peterson & Davie 2 1 COSC 4377, Spring 2001, RPC - Supplement 2/27/01 Where RPC fits in OSI model Application...

Register Now

Unformatted Document Excerpt

Coursehero >> Texas >> U. Houston >> COSC 4377

Course Hero has millions of student submitted documents similar to the one
below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.

Course Hero has millions of student submitted documents similar to the one below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.
4377, COSC Spring 2001, RPC - Supplement 2/27/01 Remote Procedure Call Outline Protocol Stack Presentation Formatting based on section 5.3 of Peterson & Davies book Peterson & Davie 1 RPC Timeline Client Reque st Server Blocked Blocked Reply Computing Blocked Peterson & Davie 2 1 COSC 4377, Spring 2001, RPC - Supplement 2/27/01 Where RPC fits in OSI model Application Applications NFS SMTP FTP TELNET DNS SNMP RPC Session TFTP Presentation Transport TCP UDP ICMP Network IGMP IP ARP RARP Data link Protocols defined by the underlying networks Physical 3 From: TCP/IP Protocol Suite, McGraw-Hill, 2000 RPC Components Protocol Stack fragments and reassembles large messages (BLAST) synchronizes request and reply messages (CHAN) dispatches request to the correct process (SELECT) Stubs Caller (client) Arguments Client stub Request Reply Return value Callee (server) Arguments Return value Server stub Request Reply RPC protocol RPC protocol Peterson & Davie 4 2 COSC 4377, Spring 2001, RPC - Supplement 2/27/01 Programming Benefits The programming is easier since little or no network programming involved. If an unreliable protocol such as UDP is used, details like timeout and retransmission are handled by RPC package. The RPC library handles any required data translation for the arguments and return values. TCP/IP Illustrated, Vol. I, Chap. 29 5 Simple RPC Stack Client Caller xCall Callee Server SELECT xCallDemux SELECT SELECT xCall CHAN xCallDemux CHAN CHAN BLAST xPush xDemux xPush xDemux IP ETH Peterson & Davie 6 3 COSC 4377, Spring 2001, RPC - Supplement 2/27/01 SunRPC IP implements BLAST-equivalent except no selective retransmit SunRPC UDP SunRPC implements CHAN-equivalent except not at-most-once IP ETH UDP + SunRPC implement SELECT-equivalent UDP dispatches to program (ports bound to programs) SunRPC dispatches to procedure within program Peterson & Davie 7 SunRPC Header Format XID (transaction id) is similar to CHANs MID Server does not remember last XID it serviced Problem if client retransmits request while reply is in transit 0 XID MsgType = CALL RPCVersion = 2 Program Version Procedure Credentials (variable) Verifier (variable) Data 31 0 XID MsgType = REPLY Status = ACCEPTED Data 31 Peterson & Davie 8 4 COSC 4377, Spring 2001, RPC - Supplement 2/27/01 Port Mapper Just another RPC program Listen to UDP port 111 and TCP port 111 Provide server procedures: PMAPPROC_SET: Called by an RPC server on startup to register a program no, version no, protocol with port no. PMAPPROC_UNSET: Called by server to remove a previously registered mapping. PMAPPROC_GETPORT: Called by an RPC client on start up to obtain the port no for a given program no, version no, and protocol. PMAPPROC_DUMP: Returns all entries (program no, version no, protocol, and port no) in the port mapper database. Port mapper starts first (listen to 111) RPC Server prog. starts (register with PMAPPROC_SET) RPC Client prog. starts (PMAPPROC_GETPORT) RPC Client sends an RPC call message Peterson & Davie 9 DCE-RPC Distributed Computing Environment (DCE) was defined by Open Software Foundation (OSF). DCE-RPC is the PRC protocol at the core of the DCE and (Common CORBA Object Request Broker Architecture) . Run on top of UDP. Besides RPC, DCE also includes security services, LAN namespace services, and network time services. (Sun has a Secure RPC for authentication.) Peterson & Davie 10 5 COSC 4377, Spring 2001, RPC - Supplement 2/27/01 Presentation Formatting Marshalling (encoding) application data into messages Unmarshalling (decoding) messages into application data Application data Application data Presentation encoding Message Message Presentation decoding Message Data types we consider integers floats strings arrays structs Types of data we do not consider images video multimedia documents Peterson & Davie 11 Difficulties Representation of base types floating point: IEEE 754 versus non-standard integer: big-endian versus little-endian (e.g., 34,677,374) Big-endian (2) (17) 00000010 00010001 (34) 00100010 (34) (126) 00100010 01111110 (17) 00010001 (2) 00000010 (126) Little-endian 01111110 High address Low address Compiler layout of structures Peterson & Davie 12 6 COSC 4377, Spring 2001, RPC - Supplement 2/27/01 Taxonomy Data types base types (e.g., ints, floats); must convert flat types (e.g., structures, arrays); must pack complex types (e.g., pointers); must linearize Application data structure Marshaller Conversion Strategy canonical intermediate form receiver-makes-right (an N x N solution) Peterson & Davie 13 Taxonomy (cont) Tagged versus untagged data type = INT len = 4 value = 417892 Stubs compiled interpreted Call P Interface descriptor for Procedure P Specification Code Stub compiler P Arguments Server stub Marshalled arguments RPC Arguments Client stub Code Marshalled arguments RPC Message Peterson & Davie 14 7 COSC 4377, Spring 2001, RPC - Supplement 2/27/01 eXternal Data Representation (XDR) Defined by Sun for use with SunRPC C type system (without function pointers) Canonical in...

Find millions of documents on Course Hero - Study Guides, Lecture Notes, Reference Materials, Practice Exams and more. Course Hero has millions of course specific materials providing students with the best way to expand their education.

Below is a small sample set of documents:

U. Houston - COSC - 4377
COSC 4377, Fall 2000 - Chapter 3a10/10/00Chapter 3: Transport LayerChapter goals: understand principlesChapter Overview:behind transport layer services:r transport layer services multiplexing/demultiplexing connectionless transport: UD
U. Houston - COSC - 4377
COSC 4377, Fall 200011/27/00Hubs, Bridges, and Switches (oh my)Used for extending LANs in terms of geographical coverage, number of nodes, administration capabilities, etc. Differ in regards to:r rcollision domain isolation layer at which t
U. Houston - COSC - 4377
Slides from TCP/IP - ForouzanChapter 24Socket Interface Sockets Socket System Calls Connectionless Iterative Server UDP Client-Server Programs Connection-Oriented Concurrent Server TCP Client-Server ProgramsForouzan NotesCOSC 6377 - Fal
U. Houston - COSC - 4377
COSC 4377, Spring 2001 - Chapter 4b4/4/01IP datagram formatIP protocol version number header length (bytes) "type" of data max number remaining hops (decremented at each router) upper layer protocol to deliver payload to 32 bits ver head. type o
U. Houston - COSC - 4377
Slides from TCP/IP - ForouzanChapter 5Subnetting and Supernetting Subnetting Masking Examples of Subnetting Variable-Length Subnetting SupernettingForouzan NotesCOSC 6377 - Fall 20005-1Figure 5-1A network with two levels of hierarc
U. Houston - COSC - 4377
COSC 4377, Spring 2001 - Chapter 2, Part A9/18/01chapter 2: Application LayerChapter goals:conceptual + implementation aspects of network application protocols m client server paradigm m service models r learn about protocols by examining popul
U. Houston - COSC - 4377
COSC 4377, Spring 20011/24/01Protocol "Layers"Networks are complex! many "pieces": r hosts r routers r links of various media r applications r protocols r hardware, softwareIs there any hope of organizing structure of network? Or at least our
U. Houston - COSC - 4377
COSC 4377, Spring 20011/22/01Part I: IntroductionChapter goal: get context, overview, "feel" of networking more depth, detail later in course approach: r descriptive r use Internet as example Overview: what' the Internet s what' a protocol?
U. Houston - COSC - 4377
COSC 4377, Spring 2001 - Chapter 5b4/4/01LAN technologiesData link layer so far:rNext: LAN technologiesrservices, error detection/correction, multiple accessaddressing r Ethernet r hubs, bridges, switches r 802.11 r PPP r ATM5: DataLink
U. Houston - COSC - 4377
COSC 4377, Spring 2001 - Chapter 2, Part A1/29/01Chapter 2: Application LayerChapter goals: conceptual +implementation aspects of network application protocolsrMore chapter goals specific protocols:r r r r rhttpclient server paradigm
U. Houston - COSC - 4377
COSC 4377, Fall 2000 - Chapter 3b10/24/00TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581point-to-point:rone sender, one receiverfull duplex data:rreliable, in-order byte steam:rrpipelined:rno message boundaries TCP conges
U. Houston - COSC - 4377
COSC 4377, Fall 2000 - Chapter18/29/00Part I: IntroductionChapter goal: get context, overview, feel of networking more depth, detail later in course approach: r descriptive r use Internet as example Overview: what the Internet s what a prot
U. Houston - COSC - 4377
COSC 4377, Fall 2000 - Chapter 4a10/26/00Chapter 4: Network LayerChapter goals: understand principlesChapter Overview:behind network layer services:r r r r network layer services routing principle: path instantiation androuting (pat
U. Houston - COSC - 4377
COSC 4377, Spring 20018/29/01Part I: IntroductionChapter goal: r get context, overview, "feel" of networking r more depth, detail later in course r approach: m descriptive m use Internet as example Overview: r what' the Internet s r what' a prot
U. Houston - COSC - 4377
COSC 4377, Fall 2000 - Chapter 2 Part B9/25/00DNS: Domain Name SystemPeople: many identifiers:rSSN, name, Passport #Domain Name System: distributed databaseInternet hosts, routers:rrIP address (32 bit) used for addressing datagrams
U. Houston - COSC - 4377
COSC 4377, Spring 2001 - Chapter 74/24/01Chapter 7: Network securityFoundations: Security in practice:what is security? cryptography authentication message integrity key distribution and certificationapplication layer: secure e-mail
U. Houston - COSC - 4377
COSC 4377, Spring 2001 - Chapter 5a4/4/01Chapter 5: The Data Link LayerOur goals: understand principlesOverview:behind data link layer services:r link layer services error detection, correction multiple access protocols andrr rer
U. Houston - COSC - 4377
Part I : I ntroductionC hapte goal: r ge conte ove w, "fe l" t xt, rvie e of ne tworking m de ore pth, de late in tail r course approach: r de scriptive r useI nte t as e rne xam ple Ove w: rvie what's theI nte t rne what's a protocol? ne twor
U. Houston - COSC - 4377
Errata=We all occasionally make mistakes. We're proud of the quality of ourtextbook, but in a first edition book with more than 700 pages, a coupleof typos are bound to slip in. The errata below lists the mistakes thatwe'll fix in the next pr
U. Houston - COSC - 6377
COSC 6377, Fall 200011/2/00HTTP Protocol, Proxy,andCOSC 6377 Term Project TutorialT. Mark Huang http:/www.cs.uh.edu/~jsteach/cosc6377/The Web: the http protocolhttp: hypertext transfer protocol Web application layer s protocol client/ser
U. Houston - COSC - 2
CS 4310 Programming Exercise Building a ParserDue Date: Midnight, Monday, Oct 23 Using bison, you are to write a parser for a subset of Pascal. A grammar for this language appears below: start block procdcls procdcl parmlist parms parm variables var
U. Houston - COSC - 4310
CS 4310 Programming Exercise Building a ParserDue Date: Midnight, Monday, Oct 23 Using bison, you are to write a parser for a subset of Pascal. A grammar for this language appears below: start block procdcls procdcl parmlist parms parm variables var
U. Houston - COSC - 4377
FAQ for Assignment #4, COSC 4377, Fall 2000Last update: Nov. 22, 20001) Do we have to use select()? [11/13/2000]A: No. I planned to use select() for this assignment. After I ran some sample programs and found that recvfrom() can take more t
U. Houston - COSC - 4377
COSC 4377, Fall 2000HW2HW2HW2UIDHW1discprogtotalHW3HW4MT#1MT#2FinalTotal===========ABE181201141349819570548274.80AKM8100451401859620070526272.05ASM269451071529818580427572.10BHM26620114
U. Houston - COSC - 4377
Bring a file under RCS control:RCS is a software tool for UNIX systems which lets people manage multiplerevisions of files. RCS saves all old revisions and does it in a spaceefficient way. Old revisions can be retrieved according to the revision
U. Houston - COSC - 4377
Bring a file under RCS control:RCS is a software tool for UNIX systems which lets people manage multiplerevisions of files. RCS saves all old revisions and does it in a spaceefficient way. Old revisions can be retrieved according to the revision
U. Houston - COSC - 4377
Chapter 4: Network LayerChapter goals: understand principlesOverview:selectionbehind network layer services:r r r r network layer services routing principle: path hierarchical routing IP Internet routing protocols instantiation andr
U. Houston - HW - 2
COSC 6318 Object-Oriented Analysis and DesignHomework #2Due: 5:15PM Feb. 28thFor the problem statement given below, 1. Draw a usecase diagram showing actors and usecases 2. Provide the flow of events for each use case, listing the basic paths
U. Houston - ASSIGN - 1
Assignment 1 Due Monday April 25th 6PM Homework #4 due Monday April 25th 6PM Feel free to ask any questions over the email. Please note that this is not a group effort. Assume that I am asked to write a middle tier (I am not required to writer the UI
U. Houston - HW - 3
Homework #3 Due April 19th 6PM in class. Name: _ Student ID: _A few problem statements are given below. For each one of them answer the following questions: (a). What creational pattern you may use to solve this problem? (b). Explain how you would
U. Houston - ASSIGN - 1
Assignment 1 Due Monday April 12th 6PM Online submission (Note: The online submission will refuse to accept assignments after the deadline You are asked to submit the assignment ahead of time and as many times as you please. Your last submission will
U. Houston - ASSIGN - 2
Assignment 2 email zip of all your code by 11:59PM May 9thThis is not a group project. Beware of the Academic Honesty Policy.Write a C+, Java or .NET program that will allow you to design a kitchen.The program presents a list of appliances you c
U. Houston - HW - 1
COSC 6318 HW1 Due Monday February 23th 5:45PM(Note. No late submissions will be accepted)Please turnin a hard copy in class. Remote students, please hand over thecopy to your remote site administrator by the deadline.Name: _ Student ID: _A
U. Houston - HW - 3
HW 3 Due April 18th 6PM1. What OO Design Principle is evident in the application of Iterator Pattern on different types of collections? 2. One major concern about implementing an interface to traverse through a collection is performance. Ho
U. Houston - HW - 1
COSC 6318 Object-Oriented Analysis and DesignSpring 2003Homework #1Due Feb. 19th 5:45PM in classDevelop the class diagram (in UML) for the following system. A "draw" utility program lets users draw several geometric objects on adiagr
U. Houston - HW - 4
HW4 Due Thursday April 30 7PM in classIn the Design Pattern text book on page 153, it reads"(C+) you want to hide the implementation of an abstraction completelyfrom clients. In C+ the representation of a class is visible inthe class interface
U. Houston - HW - 4
Homework 4 hard copy due April 22 5:45PMAnswer these questions based on your solution to Assignment 1.1. Draw a UML diagram showing the classes and the relationships.2. How did you provide extensibility in your program. 3. What design pri
U. Houston - HW - 5
Homework #5: Due Monday May 1st in class.1. Draw UML diagram for your solution in Assignment 2 questions 1.2. Draw UML diagram for your solution in Assignment 2 questions 2.3. Explain what are the benefits and disadavantages, with reference to
U. Houston - ASSIGN - 1
Assignment 1. Hard copy due on April 21st 5:45PM.Submit copy of all code you write.Problem. The objective of this assignment is to practise the useof some design patterns. You first need to identify what patterns will be useful in the following
U. Houston - HW - 3
COSC 6397 Object-Oriented Analysis and DesignSpring 1999Homework #3 Due Monday April 12th in classThe objective of this homework is to practice Inheritance and Polymorphism with OCP, LSP and DIP in mind. Several ty
U. Houston - HW - 5
Due along with your Assignment 2.Mention five recommendations from extreme programming.For each, write one or two sentences explaining thebenefit of the recommendation.
U. Houston - ASSIGN - 2
COSC 6318 Assignment 2. Due May 5th during demoYou are asked to build a library or module (in a languageof your choice: Java or C+). Your module will primarily consist of a bunch of classes to determine some ones credibility. Thecredibility may
U. Houston - HW - 3
COSC 6318 Object-Oriented Analysis and DesignHard copy HW3 Due March 27th in classGiven below is the use-case flow of events for a system. Develop the analysis model for this system, based on the given use-case. Present the following 1. Collab
U. Houston - HW - 3
COSC 6318 Object-Oriented Analysis and DesignHomework #3Due: 5:45PM April 2ndFor the problem stated in HW2, a use case model with the flow of eventsis given here. 1. Draw the collaboration diagrams for each flow of events.2. Draw a package
U. Houston - ASSIGN - 2
If you will be using C+, please use thegiven LegalStatus.h and LegalStatus.cpp.For other classes (Person, CreditRecords, CriminalRecords),please modify the code as you please from the Java directory.
U. Houston - ASSIGNMENT - 1
Assignment 1: Due October 2nd(Email code to Venkat by midnight and cc your buddy)In this assignment we will create a program to playMaster Mind.You are expected to create two parts. A Decoder class thatdeals with the logic (create it using tes
U. Houston - ASSIGN - 4
Assignment 4: Due 11:59PM May 11thFor the problem mentioned in Assignment 3 create the applicationwith following "features":1. Visiting the application at http:/localhost:3000 should bring upthe relevant page for books list2. This page must co
U. Houston - ASSIGNMENT - 4
Assignment 4: Due 11:59PM December 8thFor the problem mentioned in Assignment 3 create the applicationwith following "features":1. Visiting the application at http:/localhost:3000 should bring upthe relevant page for tasks2. This page must con
U. Houston - HW - 1
124 9 139 9 324 9 341 9 347 9 588 9 637 8 726 9 734 9 863 9 865 9 (Why would you inherit Person from StandardError?!)925 9 926 8 976 9 If you have questions, please talk to Venkat in Person.No emailes regarding grading p
U. Houston - ASSIGN - 2
124 100139 100 324 100341 90 Code has warnings. Not DRY - db definition in multiple files347 80 Search by keyword not in first level menu. Problems with multiple authors588 90 Search by author not functioning well637 100726 80 Search and filte
U. Houston - HW - 3
124 9 Multiple clicks on fetch not handled well139 10324 9 Multiple clicks on fetch not handled well341 10347 10588 10637 10726 5 Does not work as expected734 10863 10865 10925 10926 0 Quick look at submitted files does not point to solu
U. Houston - HW - 3
You lost points if1 - You have way too much code - should have used prototype, for instance.1 - Your code (any of the versions you submitted) does not work with IE 7.1 - Clicking multiple times on Fetch pollutes the table with redundant info (or
U. Houston - HW - 4
You lost points if- you did not provide adequate information- you did not include any or sufficient references
U. Houston - HW - 2
You lost points if you Did not close the test data file that you opened.You are accumulating quite a bit of data in a string - not elegant.
U. Houston - ASSIGNMENT - 2
If you lost points, the following may be reason(s)You're performing validation logic in a place other than the model.Some tests are failingDid not have any tests (for validation logic, for example)When run, your program says ".in `method_missi
U. Houston - SCHATZKES - 3242
Slideshow for Ketelsen Employees Who Use a Computer on CampusPlease ensure that your computer is protected from virus's. Follow this slide show for step by step instructions for downloading Trend Virus Protection1Instructions for downloading Tre
U. Houston - SCHATZKES - 3242
Ketelsen Elementaryy SchoolSeptember 13, 2006 Vo l u m e 1 , I s s u e 1 A l m a L a ra , P r i n c i p a l Jaqueline Green, Assistant Principal M a r l a L i n g l e , A d m i n i s t ra t i v e I n t e r nPrincipals NewsAfter School Program It
U. Houston - SCHATZKES - 6537
Peripherals INST 65371Peripherals INST 6537 Team 3 Sheila Schatzke- Primary Author Sahar Othman Joseph HamiltonShelia, You have a good basic list of peripherals, but seem to have concentrated a lot on printers and their supplies. When you say p
U. Houston - SCHATZKES - 65372
Peripherals INST 65371Peripherals INST 6537 Team 3 Sheila Schatzke- Primary Author Sahar Othman Joseph HamiltonShelia, You have a good basic list of peripherals, but seem to have concentrated a lot on printers and their supplies. When you say p
U. Houston - SCHATZKES - 6537
U. Houston - SCHATZKES - 65372