亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? rpc.rfc.ms

?? 早期freebsd實現
?? MS
?? 第 1 頁 / 共 3 頁
字號:
.\".\" Must use  --  tbl  --  with this one.\".\" @(#)rpc.rfc.ms	2.2 88/08/05 4.0 RPCSRC.de BT.if \\n%=1 .tl ''- % -''...ND.\" prevent excess underlining in nroff.if n .fp 2 R.OH 'Remote Procedure Calls: Protocol Specification''Page %'.EH 'Page %''Remote Procedure Calls: Protocol Specification'.if \\n%=1 .bp.SH\&Remote Procedure Calls: Protocol Specification.LP.NH 0\&Status of this Memo.LPNote: This chapter specifies a protocol that Sun Microsystems, Inc.,and others are using.  It has been designated RFC1050 by the ARPA NetworkInformation Center..LP.NH 1\&Introduction.LPThis chapter specifies  a  message protocol  used in implementingSun's Remote Procedure Call (RPC) package.  (The message protocol isspecified with the External Data Representation (XDR) language.See the.I "External Data Representation Standard: Protocol Specification"for the details.  Here, we assume that  the  reader is familiar  with XDR and do not attempt to justify it or its uses).  The paperby Birrell and Nelson [1]  is recommended as an  excellent backgroundto  and justification of RPC..NH 2\&Terminology.LPThis chapter discusses servers, services, programs, procedures,clients, and versions.  A server is a piece of software where networkservices are implemented.  A network service is a collection of oneor more remote programs.  A remote program implements one or moreremote procedures; the procedures, their parameters, and results aredocumented in the specific program's protocol specification (see the\fIPort Mapper Program Protocol\fP\, below, for an example).  Networkclients are pieces of software that initiate remote procedure callsto services.  A server may support more than one version of a remoteprogram in order to be forward compatible with changing protocols..LPFor example, a network file service may be composed of two programs.One program may deal with high-level applications such as file systemaccess control and locking.  The other may deal with low-level fileIO and have procedures like "read" and "write".  A client machine ofthe network file service would call the procedures associated withthe two programs of the service on behalf of some user on the clientmachine..NH 2\&The RPC Model.LPThe remote procedure call model is similar to the local procedurecall model.  In the local case, the caller places arguments to aprocedure in some well-specified location (such as a resultregister).  It then transfers control to the procedure, andeventually gains back control.  At that point, the results of theprocedure are extracted from the well-specified location, and thecaller continues execution..LPThe remote procedure call is similar, in that one thread of controllogically winds through two processes\(emone is the caller's process,the other is a server's process.  That is, the caller process sends acall message to the server process and waits (blocks) for a replymessage.  The call message contains the procedure's parameters, amongother things.  The reply message contains the procedure's results,among other things.  Once the reply message is received, the resultsof the procedure are extracted, and caller's execution is resumed..LPOn the server side, a process is dormant awaiting the arrival of acall message.  When one arrives, the server process extracts theprocedure's parameters, computes the results, sends a reply message,and then awaits the next call message..LPNote that in this model, only one of the two processes is active atany given time.  However, this model is only given as an example.The RPC protocol makes no restrictions on the concurrency modelimplemented, and others are possible.  For example, an implementationmay choose to have RPC calls be asynchronous, so that the client maydo useful work while waiting for the reply from the server.  Anotherpossibility is to have the server create a task to process anincoming request, so that the server can be free to receive otherrequests..NH 2\&Transports and Semantics.LPThe RPC protocol is independent of transport protocols.  That is, RPCdoes not care how a message is passed from one process to another.The protocol deals only with specification and interpretation ofmessages..LPIt is important to point out that RPC does not try to implement anykind of reliability and that the application must be aware of thetype of transport protocol underneath RPC.  If it knows it is runningon top of a reliable transport such as TCP/IP[6], then most of thework is already done for it.  On the other hand, if it is running ontop of an unreliable transport such as UDP/IP[7], it must implementis own retransmission and time-out policy as the RPC layer does notprovide this service..LPBecause of transport independence, the RPC protocol does not attachspecific semantics to the remote procedures or their execution.Semantics can be inferred from (but should be explicitly specifiedby) the underlying transport protocol.  For example, consider RPCrunning on top of an unreliable transport such as UDP/IP.  If anapplication retransmits RPC messages after short time-outs, the onlything it can infer if it receives no reply is that the procedure wasexecuted zero or more times.  If it does receive a reply, then it caninfer that the procedure was executed at least once..LPA server may wish to remember previously granted requests from aclient and not regrant them in order to insure some degree ofexecute-at-most-once semantics.  A server can do this by takingadvantage of the transaction ID that is packaged with every RPCrequest.  The main use of this transaction is by the client RPC layerin matching replies to requests.  However, a client application maychoose to reuse its previous transaction ID when retransmitting arequest.  The server application, knowing this fact, may choose toremember this ID after granting a request and not regrant requestswith the same ID in order to achieve some degree ofexecute-at-most-once semantics.  The server is not allowed to examinethis ID in any other way except as a test for equality..LPOn the other hand, if using a reliable transport such as TCP/IP, theapplication can infer from a reply message that the procedure wasexecuted exactly once, but if it receives no reply message, it cannotassume the remote procedure was not executed.  Note that even if aconnection-oriented protocol like TCP is used, an application stillneeds time-outs and reconnection to handle server crashes..LPThere are other possibilities for transports besides datagram- orconnection-oriented protocols.  For example, a request-reply protocolsuch as VMTP[2] is perhaps the most natural transport for RPC..SH.INOTE:  At Sun, RPC is currently implemented on top of both TCP/IPand UDP/IP transports..LP.NH 2\&Binding and Rendezvous Independence.LPThe act of binding a client to a service is NOT part of the remoteprocedure call specification.  This important and necessary functionis left up to some higher-level software.  (The software may use RPCitself\(emsee the \fIPort Mapper Program Protocol\fP\, below)..LPImplementors should think of the RPC protocol as the jump-subroutineinstruction ("JSR") of a network; the loader (binder) makes JSRuseful, and the loader itself uses JSR to accomplish its task.Likewise, the network makes RPC useful, using RPC to accomplish thistask..NH 2\&Authentication.LPThe RPC protocol provides the fields necessary for a client toidentify itself to a service and vice-versa.  Security and accesscontrol mechanisms can be built on top of the message authentication.Several different authentication protocols can be supported.  A fieldin the RPC header indicates which protocol is being used.  Moreinformation on specific authentication protocols can be found in the\fIAuthentication Protocols\fP\,below..KS.NH 1\&RPC Protocol Requirements.LPThe RPC protocol must provide for the following:.IP  1.Unique specification of a procedure to be called..IP  2.Provisions for matching response messages to request messages..KE.IP  3.Provisions for authenticating the caller to service and vice-versa..LPBesides these requirements, features that detect the following areworth supporting because of protocol roll-over errors, implementationbugs, user error, and network administration:.IP  1.RPC protocol mismatches..IP  2.Remote program protocol version mismatches..IP  3.Protocol errors (such as misspecification of a procedure's parameters)..IP  4.Reasons why remote authentication failed..IP  5.Any other reasons why the desired procedure was not called..NH 2\&Programs and Procedures.LPThe RPC call message has three unsigned fields:  remote programnumber, remote program version number, and remote procedure number.The three fields uniquely identify the procedure to be called.Program numbers are administered by some central authority (likeSun).  Once an implementor has a program number, he can implement hisremote program; the first implementation would most likely have theversion number of 1.  Because most new protocols evolve into better,stable, and mature protocols, a version field of the call messageidentifies which version of the protocol the caller is using.Version numbers make speaking old and new protocols through the sameserver process possible..LPThe procedure number identifies the procedure to be called.  Thesenumbers are documented in the specific program's protocolspecification.  For example, a file service's protocol specificationmay state that its procedure number 5 is "read" and procedure number12 is "write"..LPJust as remote program protocols may change over several versions,the actual RPC message protocol could also change.  Therefore, thecall message also has in it the RPC version number, which is alwaysequal to two for the version of RPC described here..LPThe reply message to a request  message  has enough  information todistinguish the following error conditions:.IP  1.The remote implementation of RPC does speak protocol version 2.The lowest and highest supported RPC version numbers are returned..IP  2.The remote program is not available on the remote system..IP  3.The remote program does not support the requested version number.The lowest and highest supported remote program version numbers arereturned..IP  4.The requested procedure number does not exist.  (This is usually acaller side protocol or programming error.).IP  5.The parameters to the remote procedure appear to be garbage from theserver's point of view.  (Again, this is usually caused by adisagreement about the protocol between client and service.).NH 2\&Authentication.LPProvisions for authentication of caller to service and vice-versa areprovided as a part of the RPC protocol.  The call message has twoauthentication fields, the credentials and verifier.  The replymessage has one authentication field, the response verifier.  The RPCprotocol specification defines all three fields to be the followingopaque type:.DS.ft CW.vs 11enum auth_flavor {    AUTH_NULL        = 0,    AUTH_UNIX        = 1,    AUTH_SHORT       = 2,    AUTH_DES         = 3    /* \fIand more to be defined\fP */};struct opaque_auth {    auth_flavor flavor;    opaque body<400>;};.DE.LPIn simple English, any.I opaque_auth structure is an .I auth_flavor enumeration followed by bytes which are  opaque to the RPC protocolimplementation..LPThe interpretation and semantics  of the data contained  within theauthentication   fields  is specified  by  individual,  independentauthentication  protocol specifications.   (See \fIAuthentication Protocols\fP\,below, for definitions of the various authentication protocols.).LPIf authentication parameters were   rejected, the  response messagecontains information stating why they were rejected..NH 2\&Program Number Assignment.LPProgram numbers are given out in groups of.I 0x20000000 (decimal 536870912) according to the following chart:.TSbox tab (&) ;lfI lfIrfL cfI .Program Numbers&Description_.sp .50 - 1fffffff&Defined by Sun20000000 - 3fffffff&Defined by user40000000 - 5fffffff&Transient60000000 - 7fffffff&Reserved80000000 - 9fffffff&Reserveda0000000 - bfffffff&Reservedc0000000 - dfffffff&Reservede0000000 - ffffffff&Reserved.TE.LPThe first group is a range of numbers administered by SunMicrosystems and should be identical for all sites.  The second rangeis for applications peculiar to a particular site.  This range isintended primarily for debugging new programs.  When a site developsan application that might be of general interest, that applicationshould be given an assigned number in the first range.  The thirdgroup is for applications that generate program numbers dynamically.The final groups are reserved for future use, and should not be used..NH 2\&Other Uses of the RPC Protocol.LPThe intended use of this protocol is for calling remote procedures.That is, each call message is matched with a response message.However, the protocol itself is a message-passing protocol with whichother (non-RPC) protocols can be implemented.  Sun currently uses, orperhaps abuses, the RPC message protocol for the following two(non-RPC) protocols:  batching (or pipelining) and broadcast RPC.These two protocols are discussed but not defined below..NH 3\&Batching.LPBatching allows a client to send an arbitrarily large sequence ofcall messages to a server; batching typically uses reliable bytestream protocols (like TCP/IP) for its transport.  In the case ofbatching, the client never waits for a reply from the server, and theserver does not send replies to batch requests.  A sequence of batchcalls is usually terminated by a legitimate RPC in order to flush thepipeline (with positive acknowledgement)..NH 3\&Broadcast RPC.LPIn broadcast RPC-based protocols, the client sends a broadcast packetto the network and waits for numerous replies.  Broadcast RPC usesunreliable, packet-based protocols (like UDP/IP) as its transports.Servers that support broadcast protocols only respond when therequest is successfully processed, and are silent in the face oferrors.  Broadcast RPC uses the Port Mapper RPC service to achieveits semantics.  See the \fIPort Mapper Program Protocol\fP\, below,for more information..KS.NH 1\&The RPC Message Protocol.LPThis section defines the RPC message protocol in the XDR datadescription language.  The message is defined in a top-down style..ie t .DS.el .DS L.ft CWenum msg_type {	CALL  = 0,	REPLY = 1};.ft I/** A reply to a call message can take on two forms:* The message was either accepted or rejected.*/.ft CWenum reply_stat {	MSG_ACCEPTED = 0,	MSG_DENIED   = 1};.ft I/** Given that a call message was accepted,  the following is the* status of an attempt to call a remote procedure.*/.ft CWenum accept_stat {	SUCCESS       = 0, /* \fIRPC executed successfully       \fP*/	PROG_UNAVAIL  = 1, /* \fIremote hasn't exported program  \fP*/	PROG_MISMATCH = 2, /* \fIremote can't support version #  \fP*/	PROC_UNAVAIL  = 3, /* \fIprogram can't support procedure \fP*/	GARBAGE_ARGS  = 4  /* \fIprocedure can't decode params   \fP*/};.DE.ie t .DS.el .DS L.ft I/** Reasons why a call message was rejected:*/.ft CWenum reject_stat {	RPC_MISMATCH = 0, /* \fIRPC version number != 2          \fP*/	AUTH_ERROR = 1    /* \fIremote can't authenticate caller \fP*/};.ft I/** Why authentication failed:*/.ft CWenum auth_stat {	AUTH_BADCRED      = 1,  /* \fIbad credentials \fP*/	AUTH_REJECTEDCRED = 2,  /* \fIclient must begin new session \fP*/	AUTH_BADVERF      = 3,  /* \fIbad verifier \fP*/	AUTH_REJECTEDVERF = 4,  /* \fIverifier expired or replayed  \fP*/	AUTH_TOOWEAK      = 5   /* \fIrejected for security reasons \fP*/};.DE.KE.ie t .DS.el .DS L.ft I/** The  RPC  message: * All   messages  start with   a transaction  identifier,  xid,* followed  by a  two-armed  discriminated union.   The union's* discriminant is a  msg_type which switches to  one of the two* types   of the message.   The xid  of a \fIREPLY\fP  message always* matches  that of the initiating \fICALL\fP   message.   NB: The xid* field is only  used for clients  matching reply messages with* call messages  or for servers detecting  retransmissions; the* service side  cannot treat this id  as any type   of sequence* number.*/.ft CWstruct rpc_msg {	unsigned int xid;	union switch (msg_type mtype) {		case CALL:			call_body cbody;		case REPLY:  			reply_body rbody;	} body;};.DE.ie t .DS

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人国产视频在线观看| 亚洲一二三区视频在线观看| 美女一区二区三区在线观看| 色综合久久久久综合99| 国产精品久久久久久久久快鸭| 国产真实乱对白精彩久久| 精品对白一区国产伦| 久久国产精品露脸对白| 久久久精品日韩欧美| 国产精品123| 国产精品天美传媒| aaa国产一区| 午夜视频一区在线观看| 91精品国产麻豆| 狠狠色伊人亚洲综合成人| 久久久精品综合| 91视频在线观看| 一区二区三区资源| 91精品久久久久久久99蜜桃| 精品一区二区在线观看| 国产精品国产三级国产三级人妇 | 亚洲一区二区三区四区五区中文 | 欧美伊人久久大香线蕉综合69 | 国产精品你懂的| 91麻豆国产福利在线观看| 亚洲国产成人va在线观看天堂| 91精品国产福利在线观看| 国产在线播放一区三区四| 国产精品美女久久久久aⅴ| 91久久精品一区二区二区| 青草国产精品久久久久久| 国产亚洲精品精华液| 色哟哟一区二区在线观看 | 6080国产精品一区二区| 九一久久久久久| 亚洲欧洲日韩av| 8v天堂国产在线一区二区| 美国一区二区三区在线播放| 国产精品乱码久久久久久| 欧美久久久久久久久久| 国产成人av一区二区| 亚洲综合免费观看高清完整版在线 | 日韩一本二本av| av电影在线观看不卡| 日韩二区在线观看| 国产精品成人免费在线| 欧美成人精品二区三区99精品| 91麻豆国产精品久久| 国产一区二区三区蝌蚪| 亚洲高清三级视频| 中文欧美字幕免费| 欧美成人艳星乳罩| 欧美日韩不卡在线| 91免费观看国产| 国产一区二区三区在线观看免费 | 99久久精品免费看| 精品一二线国产| 亚洲成a人v欧美综合天堂下载| 国产欧美一区二区精品性色| 欧美一区二区私人影院日本| 色哟哟一区二区在线观看| 国产高清在线精品| 极品销魂美女一区二区三区| 一区二区成人在线| 亚洲视频一区在线| 国产亚洲欧美激情| 久久精品亚洲精品国产欧美| 日韩一卡二卡三卡四卡| 欧美色老头old∨ideo| 91在线看国产| 99久久夜色精品国产网站| 懂色中文一区二区在线播放| 久久精品国产99久久6| 五月婷婷色综合| 亚洲一区中文在线| 亚洲黄色片在线观看| 亚洲人成在线观看一区二区| 国产精品视频免费看| 久久久99精品久久| 久久久一区二区三区| 日韩欧美国产wwwww| 91精品久久久久久久99蜜桃| 欧美精品欧美精品系列| 欧美综合一区二区| 欧美性色综合网| 欧美情侣在线播放| 欧美日韩国产首页| 91精品在线观看入口| 欧美一区日本一区韩国一区| 在线成人午夜影院| 日韩三级伦理片妻子的秘密按摩| 在线观看日韩精品| 欧美蜜桃一区二区三区| 777奇米成人网| 精品久久久久久久久久久院品网| 精品伦理精品一区| 精品久久久久久无| 日本一区二区免费在线观看视频| 欧美—级在线免费片| 中文字幕亚洲欧美在线不卡| 亚洲丝袜美腿综合| 亚洲成av人片在线| 久久成人羞羞网站| 国产精品91一区二区| www.激情成人| 欧美日韩免费一区二区三区视频| 欧美一区二区三区思思人| 日韩一级片网站| 久久亚洲精精品中文字幕早川悠里| 国产亚洲一本大道中文在线| 国产精品的网站| 天天影视涩香欲综合网| 精品一区二区三区久久| 成人国产精品视频| 欧美日韩黄色影视| 2024国产精品视频| 亚洲欧洲制服丝袜| 蜜臀av性久久久久蜜臀aⅴ| 国产成人亚洲综合a∨婷婷图片 | 亚洲欧美一区二区三区国产精品| 亚洲国产中文字幕| 国产一区二区三区| 欧美亚洲自拍偷拍| xnxx国产精品| 亚洲精品ww久久久久久p站| 奇米影视在线99精品| av电影在线不卡| 日韩一区二区在线观看视频播放| 国产蜜臀97一区二区三区| 亚洲电影第三页| 国产成人精品一区二| 欧美视频日韩视频在线观看| 国产婷婷一区二区| 午夜久久久久久久久| 成人a级免费电影| 欧美一二三在线| 亚洲天堂网中文字| 国产精品一色哟哟哟| 欧美日韩不卡在线| 国产精品丝袜黑色高跟| 蜜臀av性久久久久蜜臀av麻豆 | 国产美女精品一区二区三区| 91黄色小视频| 久久久五月婷婷| 免费成人性网站| 欧美丝袜自拍制服另类| 中文字幕精品一区 | 国产精品一区三区| 在线不卡免费欧美| 一区二区三区日韩欧美精品| 国内精品免费在线观看| 91精品国产乱| 亚洲一区二区在线视频| 99精品欧美一区二区蜜桃免费| 精品免费一区二区三区| 天涯成人国产亚洲精品一区av| 91老师片黄在线观看| 欧美国产综合一区二区| 国产一区二区0| 精品国产区一区| 九九九精品视频| 日韩无一区二区| 丝袜美腿一区二区三区| 欧美日韩aaaaaa| 亚洲午夜羞羞片| 91国产视频在线观看| 亚洲黄色免费网站| 91蝌蚪porny九色| 亚洲欧美日韩国产另类专区| av不卡在线观看| 亚洲同性同志一二三专区| 99久久精品免费看国产免费软件| 中文字幕色av一区二区三区| 粉嫩13p一区二区三区| 国产精品美女一区二区| av欧美精品.com| 一区二区高清免费观看影视大全| 91激情在线视频| 亚洲国产日韩一级| 在线免费精品视频| 一区二区三区加勒比av| 94色蜜桃网一区二区三区| 亚洲欧美精品午睡沙发| 91在线播放网址| 中文字幕一区二区视频| 成人av网站免费观看| 欧美激情综合五月色丁香| 亚洲男人都懂的| 欧美色老头old∨ideo| 亚洲一区二区在线视频| 欧美日韩一二区| 丝袜美腿成人在线| 欧美一级视频精品观看| 青青青伊人色综合久久| 日韩一区二区三区av| 蜜桃免费网站一区二区三区| 91精品国产91久久久久久一区二区 | 亚洲专区一二三| 欧美三区免费完整视频在线观看| 亚洲三级电影网站|