M-RPC:ARemoteProcedureCallServiceforMobileClients. DepartmentofComputerScience. Rutgers,TheStateUniversityofNewJersey. Piscataway,NJ08855

Size: px
Start display at page:

Download "M-RPC:ARemoteProcedureCallServiceforMobileClients. DepartmentofComputerScience. Rutgers,TheStateUniversityofNewJersey. Piscataway,NJ08855"

Transcription

1 M-RPC:ARemoteProcedureCallServiceforMobileClients AjayBakreandB.R.Badrinath DepartmentofComputerScience Rutgers,TheStateUniversityofNewJersey Piscataway,NJ08855 Abstract RemoteProcedureCall(RPC)isapopular paradigmfordesigningdistributedapplications.the existingrpcimplementationsdonotallowspecial treatmentofmobilehostsandwirelesslinkswhichcan beacauseofdegradedperformanceandinconvenience inthepresenceofdisconnections,movesandwirelesserrors.futureinformationorientedandlocation awaremobileapplicationswillalsoneedtheabilityto dynamicallybindmobileclientstolocalinformation servers.inthispaperwedescribem-rpcsystem whichprovidesacleanwayformobileclientstoaccessexistingrpcbasedservicesonthewirednetwork withtheadditionalfeaturesofdynamicbinding,disconnectedoperationandcallretriesfromthemobility supportrouter(msr). 1Introduction RemoteProcedureCall(RPC)isusedasabasisfor structuringmanyclientserverapplications.conventionalrpcimplementationshowever,assumethatall thehostsinanetworkarestationaryandarealways reachableexceptincaseoffailures.theapplications builtontopofconventionalrpcalsotendtoassume thatthenetworkismoreorlessafreelyavailableresourceandthatnetworkbandwidthisnotaconstraint. Suchapplicationsthusdonotattempttooptimizethe numberofmessagesexchangedbetweenaclientanda server.forexample,controlmessagesbetweenclients andaserverinnfs[32]torefreshlesystemhandleformasignicantportionoftheoveralllesystem trac.theclientsideofsuchanapplicationtypically getstheserveraddressusinganamelookupmechanismwhichisusedtoestablishaclienthandle,sothat allthesubsequentcallrequestsgotothesameserver. Sinceboththeclientandserverhostsarestationary, thereisrarelyanyneedtochangetheserverinsuch applications. Thepresenceofmobilehostswithinanetworkinvalidatesalltheaboveassumptions.Mobilehostscan movefromonecelltoanotherandcanremaindisconnectedfromthexednetworkforextendedperiods toconservescarcebatterypower.thewirelesslink connectingamobilehosttotherestofthenetwork usuallyhaslowerbandwidthandhighererrorrateas comparedtoawiredlink.availablebandwidthon wirelessisthusascarceresourceandinfuturemobile hostsareexpectedtoincurcostproportionaltothe connectiontimeonthewirelesslink.thismeansthat therpcbasedapplicationsformobileclientshaveto bestructuredsuchthattheamountofdatasenton thewirelessisminimized. Withanincreaseinthenumberofmobilehosts andthescaleofthedeployedsupportinfrastructure, broadcastbasedinformationservicesarelikelytobecomepopular[18].suchservicesareespeciallysuitableformobileclientssincewirelessisinherentlya broadcastmediumandamobilitysupportstationconsumesthesamepowerfortransmittingapacketonthe wirelesslinkregardlessofthenumberofreceiversin itscell.amobileclientapplicationshouldtherefore havethecapabilitytoswitchtoalocalinformation serverinitscurrentwirelesscelltosavethecostof accessinginformationservices.suchcapabilitieswill alsobeneededbyapplicationswhichaccesslocation dependentinformationsuchastrac,weather,availableservicesinageographicareaetc.[18]. InthispaperwedescribeM-RPC,whichisanRPC serviceformobileclients.anm-rpcclientcanaccess connectionlessrpcbasedservicesonthewirednetworkviaanagentlocatedatitscurrentmobilitysupportrouter(msr)whichprovidesthefollowingfunctionality: Supportfordynamicserverbinding Reliabletransportoverthewirelesslink CallretriesfromtheMSRand Partialsupportfordisconnectedoperation. 1

2 Inthenextsection,weexamineindetailtherequirementsofmobileclientsthatwebelieveshould besatisedbytherpclayer.section3describes them-rpcsystemthatwehavedevelopedformobileclient-serverapplications.section4outlinesthe implementationofm-rpccomponents.intheend, welistsomerelatedresearchworkandconcludingremarks. 2RPCandMobileClients RPC[9]isapopularparadigmfordesigningdistributedapplications.Clientapplicationscanaccess serversoveranetworkwiththesimpleandfamiliar interfaceofaprocedurecall.therpclayerhidesthe networkcommunicationfromtheclientandserverapplicationstherebymakingthedesignofdistributedapplicationseasier.sunrpc[31]isoneofthemostcommonlyusedrpcimplementationswhichalsoforms thebasisfornfs[32].inthefollowingdiscussion,we willuseaconventionalclient-serverapplicationbased onsunrpcforreference,eventhoughthediscussion isequallyapplicabletoothersimilarrpcimplementations. 2.1FlexibleTransportlayer SunRPCallowstheuseofbothconnectionless (UDP)[27]andconnectionoriented(TCP)[28]transportlayersfornetworkcommunication.Usingaconnectionlesstransportprotocolaordsdesignofsimple statelessserverswhichcanbereplicatedforhighavailability.inpractice,nfsimplementationsusingudp workquitewelloveralan,eventhoughudpdoes notprovidereliabledeliveryofdatagrams.thereliabilityneededfornfsisprovidedbyrpcandnfs levelretrymechanisms.usingtcpforrpcstyle request-responsekindofcommunicationcanbeawkwardbecause-i)itisastreamprotocolwhichdoes notpreserverecordboundariesandii)itbringsina lotofadditionalbaggageintermsofcongestionand owcontrolwhichisquiteunnecessary.connection orientedtransportalsorequirestheserverstomaintainstateforeveryopenconnectionwithaclient. Withmobileclientsthatwishtoaccessserviceson thewirednetworks,thechoiceofatransportprotocol forrpcbasedapplicationsisratherdicult.udpis clearlyinadequateforerror-pronewirelesslinks.tcp, althoughitprovidesreliabledelivery,suersfromthe problemsmentionedearlier.inaddition,inamobile environmenttcpperformancedegradesbecauseof wirelesserrorsandmoves[11,16,24].forrpcbased applicationsinmobileenvironment,wethereforeneed atransportprotocolthatprovidesreliabilityonthe wirelesslink,butatthesametimehasthesimplicity ofudpfortherelativelyerrorfreewiredlinks. 2.2Dynamicbindingandsubjectbased naming Dynamicserverbindingisusefulforclient-server applicationsinwirednetworkstohandleserverfailures[10].arelatedpropertyissubjectbasednaming[14]whereaclientisboundtoaserviceratherthan toaserversothatthesupportinginfrastructurecan switchserversatwillorevenemploymultipleservers toprovidethesameservicetransparentlyforthesake ofreliabilityand/oreciency.formobileapplicationsthatdependonlocationinformation,dynamic bindingtoalocalinformationserverbecomesessential.itmaybenecessarytochangetheclient-server bindinginsuchanapplicationoneverymovewhich makessubjectbasednamingespeciallyimportantfor mobilehosts.evenforcostreasonsitmaybeadvantageoustoswitchtoanewserverafterthemhmoves toanewcell.itisunrealistictoexpectmobileapplicationstochangeserverbindingsaftereverymove andanrpcsystemformobileclientsshouldperform thistaskautomatically. 2.3Disconnectedoperation CurrentRPCbasedapplicationsdonotexpect clientsorserverstostaydisconnectedinnormalcircumstancesandmostsuchapplicationswilltimeoutor exitwithahostunreachablemessageincaseeitherthe clientortheserverisdisconnected.withmobilehosts however,disconnectionandreconnectionisfairlyroutinewithcellcrossoversandalsotoconservethescarce batterypowerandshouldbehandledassuchbythe RPCsystem.Therearetwowaysinwhichamobile hostcangetdisconnectedfromthexednetwork: a)suddendisconnectionwithoutanywarningsuch aswhenthemhmovesoutofawirelesscellor simplygoesdown.intheformercase,themh maysoonemergeinanotheradjacentcelland reestablishcontactviaitsnewmsrwiththerest ofthewirednetwork. b)planneddisconnectioninwhichcasethemhcan actuallyinformitspeers(oratleastthecurrent MSR)beforedisconnectingsothatpreventiveactioncanbetakenbothattheMHandonthe wirednetworktolessentheeectofdisconnectiononapplications.suchpreventiveactionmay includecachinganylesonthemhwhichare mostlikelytobeusedduringthedisconnection period.planneddisconnectionmayoccurwhen anmhgoesintowhatisknownasthedozemode tosavebatterypower. 2

3 Oneobviouswaytohandledisconnectionistoallowtheindividualapplicationstotakecareofit.One exampleofsuchanapproachiscoda[21]whichattemptstohandledisconnectedoperationattheapplicationsupport(lesystem)layerandprovidesfor stand-aloneclientlesystemswhichcanbeintegrated withtheleserverafterreconnection.theaboveapproachhoweverisnotgeneralenoughtobesuitable forallkindsofmobileapplications.eachnewapplicationthereforeneedstoprovideitsownsupport fordetectingdisconnectionsorhastopaythepenalty ofdegradedperformanceinthepresenceoffrequent disconnections.abetterapproachistoprovidesupportfordisconnectedoperationatthetransportand RPClayers.SinceRPCisusedasthebasiccommunicationmechanismbymanyclient-serverapplications, thiswillallowabasicmechanismforhandlingdisconnectionsandmoveswhichcanbefurtherrenedby theindividualapplications,ifneeded. 2.4PresentationRequirements Sincewirelessbandwidthsareexpectedtoremain ascarceresourceforsometimetocome,itishighly desirablethattheamountofdatatransmittedonthe wirelesslinkbetweentheclientandserverbekepttoa minimum.also,itispossibleforawanderingmobile hosttondwirelesslinksofdierentspeeds,error rates,coststructuresandsecuritylevelsindierent cells.itisdesirablethereforethatthepresentation ofdatatransmittedoverwirelessbetunedtothelink characteristicsinthecurrentwirelesscell.asanexample,themobilehostmaywanttodeferreceptionof datafromtheserverincaseitndsitselftemporarily inacellwithpoorwirelessreceptionorhighsecurity risks.anrpcsystemformobileclientsshouldallowtheplacementofadatalterinthepathofthe wirelesstransmissiondynamicallytohandlesuchsituations.amoregeneralproblemformobileclients isdynamicadaptationtothenewenvironmentafter movingintoanewwirelesscell.thismayinvolve updatingthestateatthemobilehostsothatenvironmentvariablessuchasnearest-printeretc.contain correctinformation.anyinformationaboutthedata ltersinstalledonthewirelesslinkbetweenthemsr andthemhshouldalsobepropagatedtothenew MSRafteramovesothattheMHdoesnotneedto re-installsuchltersinthenewcell. 2.5CallRetries Inaconnectionlessclient-serverapplication,theretransmissionsoffailedRPCrequestsaretypicallyperformedbytheclientsidewhichusesaretrytimeout valueforthispurpose.withamobileclientusinglow bandwidthandcostlywirelesslink,callretryfromthe clientisclearlyundesirableespeciallyiftherequestis correctlydeliveredtothewirednetworkbutthereply waslostforsomereason. 2.6Targetapplications Itisimportanttonotethatthekindofmobileclient applicationsthatneedtheabovementionedcapabilitiesarethosewhichengageinarelativelylonglived interactionwiththeserversmakingaseriesofrpc requestsintheprocess.theaboverequirements,althoughuseful,donotaectinasignicantwaythose applicationswhichsimplymakeonerpcrequestto aserverandexit.someofthemobileapplications whichcanmakeuseofanrpcsystemsupportingthe abovementionedrequirementsarelistedbelow: 1.Queryingdatabasesonthexednetworke.g.regardingweather,trac,localnetworkandfacilitiesavailableinandaroundthecurrentwireless cell. 2.Client-client-servertypeapplicationse.g.reading fromaparticularxedhost(possiblywith someltersinplace),maintainingle-systemconsistencybetweenamobileunitandadesktop clientmachineoramongtheserver,mobileclient andadesktopmachine,runningremotesessions onadesktopclientfromthemobileetc. 3.Accessingbroadcastbasedcontinuousmonitoring kindofservicese.g.stockinformation,videoand audioviathecurrentmsr. 4.Groupcommunicationandmulticastbasedapplicationssuchasformingadhocnetworkswithmobilehostsinthesameand/oradjacentwireless cellsorparticipatinginagroupprotocolsuchas two-phasecommitprotocolfordistributedtransactions. 5.WidearealesystemsanalogoustoNFS. 6.Distributedremoteobjectinvocationfrommobilehosts.Thismayincludegettingareference toaremoteobjectandinvokingoperationson it.suchremoteobjectinvocationisthebasis forstructuringdistributedapplicationsinsystemslikeansa[2]andarjuna[29]whichusesan RPCsystemforcommunicationamongtheparticipatinghosts. 3OverviewofM-RPCSystem AnRPCsystemformobilehosts,whichwecall M-RPCandwhichsatisestherequirementsofthe mobileapplicationslistedaboveisdescribedhere.the 3

4 FH MH MSR-1 MSR-2 Server Client M-RPC Agent Connectionless Transport (UDP) Reliable Transport (RDP) RPC and Transport Layer Handoffs M-RPC Agent Figure1:OverviewofM-RPCSystem goalofm-rpcsystemistoextendrpclayerservices tomeetthenewrequirementsbroughtaboutbyhost mobilityandwirelesslinksinawaythatisbackward compatiblewiththeexistingrpcsystems.itisbased upontheindirectclient-servermodel[4]formobile hosts.therearetwomainreasonsforchoosingthe indirectmodelforstructuringthem-rpcsystem: 1.ThemobilehostanditsMSRareinthebestpositiontoknowaboutthepropertiesofthewireless linkandsincethemobilehasrelativelylessbatteryandcomputingpower,themsristhebest placetoimplementanydynamicschemeoflteringthedataonthewireless. 2.Sincemostoftheinternetworkisunawareofmobility,wecannotassumethattheserversonthe xednetworkwilladapttoanyspecializedstrategiesdevelopedformobileclients.thusthemsr canprovidecompatibilitywiththewirednetwork. Theindirectmodelplacesnorestrictionsonxed hostsexceptthemsrsthemselves,toadapttothe protocolsdevelopedformobilehostswhileatthesame timeallowingspecialzedprotocolstobeusedonthe wirelesslinkbetweenthemhanditsmsr.theindirectmodelalsoallowsanmhtostaydisconnected atwillwhilethemsrmaintainstherequiredprotocol stateforthemh.itisalsoeasierforthewirelesslink includingthemhandthemsrtoquicklyadaptto anychangesinthelinkcharacteristicsthanitisfor theotherxedhostscurrentlycommunicatingwith themh. Figure1showstheoverallstructureforM-RPC. TheM-RPCsystemhasbeendesignedformobile clientswhichaccessservicesfromtheserversonthe wirednetwork.wedonotyettakecareofmobile serversalthoughoursystemcanbeextendedtowork withmobileserversaswell.wealsoconcentrate mainlyonconnectionless(orrequest-response)servicesoeredbystationaryserverswhicharecommonly usedbyinformationorientedapplicationsandnfsalthoughtheideaspresentedhereextendequallywell toconnection-orientedservices.them-rpcsystem consistsofrpcagentsrunningonmobilitysupport routers(msrs)whichsubmitrpcrequeststothe xedhostsandcollectresultsfromthemonbehalfof locallyregisteredmhs.them-rpcagentsalsokeep trackofservicesoeredbyserversonthexednetwork sothattheycandynamicallybindclientsrequeststo oneormoreavailableservers.librarysupportisprovidedformobileclientapplicationswhichhidesthe communicationdetailswiththem-rpcagentsonthe MSRs. 3.1M-RPCtransportlayer WeuseanindirecttransportlayerfortheM-RPC system.suchanarrangementallowstheuseofreliabledataprotocol(rdp)withsequencedpacketdelivery(seqpacketmode)onthewirelesslinkwhile maintainingaconnectionless(udp)interfacewiththe stationary(andstateless)servers.usingrdponthe wirelesslinkprovidesprotectionagainstwirelesserrors andtransientdisruptionsinthelinklayerconnectivitywhichisnotrequiredonrelativelyrobustwired links.thusreliabilityisprovidedonlywhereneeded. UsingTCPfromtheMHallthewaytotheserverto providereliabilityontheotherhand,wouldaddextra overheadofmakingaconnectionwiththeserverand 4

5 wouldmakeitdiculttoswitchserversonamove. TransportlayerhandosoncellcrossoversbyanMH ensureseamlesstransferofrdpconnectionsbetween themhandthemsrrpcagenttothenewmsr's RPCagent.Ifconnection-oriented(TCP)interfaceis neededwiththeserveronthewirednetwork,i-tcp canbeusedinsteadofrdp/udpcombinationform- RPC. 3.2ClientInterface Theclientsideofadistributedapplicationrunning onamobilehostcanmakeuseofclientstubstocallremoteproceduresataserver.theseclientstubscanbe generatedbyastubgeneratorsuchasrpcgen.inthe M-RPCsystem,theclientstubsperformthetaskof marshalingandunmarshalingargumentsandresults respectively.figure2showsthem-rpcclientsideat themh.beforetheclientapplicationcanmakeany RPCrequests,ithastoobtainaclienthandlefromthe M-RPCsystem.Initsrequestforcreationofaclient handle,theclientprogramcaneitherspecifyaparticularserverwhichistobecontactedtoservicethe RPCrequestsoritcanspecifyaservicenameinstead. TheM-RPCsystemmapsaservicenametoaservice identierwhichisrecognizedbythem-rpcagentat themsr.arequestforcreationofclienthandleat themhresultsintheestablishmentofanrdpconnectionbetweenthem-rpcagentatthemsrand themh.them-rpcagentcreatesitsowncopyof theclienthandlewhichisusedtomakerpcrequests toaserveronthewirednetwork.ifaservicename wasspeciedinsteadofaserverhostaddress,them- RPCagentalsoperformsanynecessarybindingtoa serverthatisavailabletoprocessthespeciedservice request. 3.3M-RPCAgentattheMSR Figure3showsthestructureofM-RPCagentrunningateveryMSR.TheM-RPCagentisresponsible fortheexecutionofrpcrequestssubmittedbythe MHswithinitscells.Oncesucharequestisreliably deliveredtothem-rpcagentbythem-rpcsystem onthemh,theagenttakesovertheretransmissionof failedrequests.inamobilewirelessenvironment,a callrequestmadebyamobileclienttoaserveronthe wirednetworkusingunreliableconnectionlesstransportcanfailduetofollowingreasons: 1.Thecallrequestmessageislostonthewireless link. 2.Thecallrequestmessageislostonthewirednetwork. 3.Thecallrequestisdroppedordelayedatthe serverpossiblybecausetheserverisbusyservingotherclients. 4.Thereplymessageislostonthewirednetwork. 5.Thereplymessageislostonthewirelesslink. UsingconventionalSunRPC,thecallrequestwill beretransmittedbythemobileclientoverthewireless linkinalloftheabovecases.usingm-rpconthe otherhandrequiresaretransmissionoftherequest (bythereliabletransportlayer)fromthemhonlyin therstcase.inaddition,usingm-rpcsavesonthe wirednetworktracandserverloadincasethereply islostonthewirelesslink. TheUDPsocketusedbytheagenttocommunicatewiththeserverisboundtotheaddress(andport number)correspondingtothemhclientsothatthe serverseesthecallrequestscomingfromthemhaddress.them-rpcagentcanalsodynamicallybind callrequeststoasuitableserverunlessaspecicserver wasrequestedbythemh.theclient-serverbinding maybechangedbytheagentifneeded,inresponse toeventssuchasaserverfailureoracellcrossoverby themh.whenareplyisreceivedbytheagentforan RPCrequestsubmittedonbehalfofanMH,thereply isreliablydeliveredtotheclientprogramatthemh. 3.4BindingtoaService Bindingtoaservice(asopposedtoaserver)is transparentlyprovidedbym-rpcsystematthemh andtheagentatthemsr.whenbindingtoaservice isrequestedbyanmhapplication,aservice-mapper interfaceatthemhisconsultedtodetermineifthe serviceisavailableviathecurrentmsr.theservicemapperreturnsaserviceidentiertobeusedinthe bindingrequestwhichissenttothem-rpcagentat themsratthetimeofclienthandlecreation.the agentinturnconsultsitslocaldatabasetolocatean availableserverwhichprovidestherequestedservice andperformsaprovisionalbindingoftheclientrequestwiththatserver.suchbindingcanbechanged ifneededbythem-rpcagentforsubsequentrpc requestsfromthesameclientapplication.adynamic bindingschemeworkswellwithstateless(andpossiblyreplicated)serverswhichisexpectedtobethecase withfutureinformationbasedservices.withstateful andconnection-orientedservers,switchingtoadierentserverrequirestearingdowntheconnectionwith thepreviousserverandestablishmentofaconnection withthenewserver. 5

6 Client Application Create handle & Call requests Client handle, Call results & Error indication M-RPC Library Service name Service ID Service Mapper /etc/msrservices Connection requests Call results & to M-RPC agent & Error messages Call requests Indirect port 3.5ClientMobilityandHandos RDP/UDP registration Indirect Transport mhmicp Library Process viousmsraboutthemovement.them-rpcagent switchescells,themsrinitsnewcellinformsthepre- Reliable delivery of Call requests Beacons Registration atthepreviousmsrthentransfersthestateinforma- replies to & from agent tionrelatedtotheclienthandlesbelongingtothemh Figure2:Client(MH)SideofM-RPCSystem tothenewmsr.thehandoincludestransferofthe Disconnection & RDPconnections(onperclienthandle)betweenthe IfanM-RPCclientwithopenclienthandles Reconnection UX Server / Mach 3.0 Micro Kernel MHandtheM-RPCagenttotheagentatthenewcareofretransmittingthelostRPCrequestsorreplies. Events MSRandusessockethandomechanismsdescribedForlongerdisconnections,whichcanoccurwhenan in[6].asaresultofthehando,theagentatthe WaveLan Driver newmsrcreatesitsowncopiesofclienthandlesthatitswirelessinterfacetosaveonthebatterypower,the transportlayerbetweenthemhandthemsrtakes MHmovesoutofreceptionareaorwhenitturnso agentwithoutrequiringanyinterventionbytheclient. 3.6HandlingDisconnections andswitchableserverbindingisthusprovidedbythe belongtothemhandaudpsockettohandlecommu-m-rpcsystemprovidesthefollowingalternativesnicationwiththeserver.anysubjectbasedbindingmineifadierent(possiblynearer)servershouldberationcanbeprovidedatmultiplelevels.fortransientdisconnectionsthatoccurduetosuddenfading usedforsubsequentcallrequestsandretries.dynamic requesttothem-rpcagentatthemsr,the agentcancollectandstoretheresultuntilthe MHreconnectswhentheresultisreliablyhanded overtothemh. madebythepreviousmsrarere-evaluatedtodeter- 1.IftheMHdisconnectsaftersubmittinganRPC ofwirelesssignalorduetocellcrossovers,thereliable IntheM-RPCsystem,supportfordisconnectedop- 2.IftheM-RPCsystemontheclient(MH)sidereceivesanRPCrequestfromanapplicationprogramwhiletheMHisdisconnected,itcanimmediatelyreturntotheapplicationwithanerrormessageindicatingthedisconnection.Alternatively,theM-RPCsystemcantransfercontrol 6theclientsidealsoifthedisconnectionoccursaf- tertherpcrequestwassubmitted. toanapplicationspecichandlerwiththesame quest.thelattermechanismcanbeinvokedon argumentsthatweresuppliedwiththerpcre-

7 Server Lookup M-RPC Agent MHIn & MHOut notifications msrmicp Call requests & Call requests Process retries to Server from MH Call results & Results from error indication Server Figure3:M-RPCAgentattheMSR to MH Beaconing & Library MH registration Communication Communication with FH Server with MH Client UDP / IP over RDP / Mobile-IP UX Server / Mach 3.0 Micro Kernel cessible.currentlydisconnectionsupportinm-rpc errorintheconventionalrpcsystemsormaybea substitutefortheremoteprocedure.oneuseofsuch normallycauseatimeoutorserverhostunreachable fordisconnectedoperationwhichmayeitherprovide applicationspecichandlercanbetoretrievealocally cachedcopyofaleincasetheleserverisinac- gracefulrecoveryfromsuchaconditionwhichwould Applicationscanspecifyahandlertobeused besetupattheclientsideforeachremoteprocedure Ethernet Driver whichiscalledifacallrequesttimesout. islimitedtoallowingapplicationspecichandlersto WaveLan Driver typicalrpcserverinoursystem. 4Implementation tionalrpcsystems.thusm-rpcclientscanaccess nomodicationsform-rpcclients.figure4showsa networkbehavesexactlylikeaserverhostinconven- existingnetworkservicesfromsuchserverswhichneed 3.7ServerInterface WehaveimplementedM-RPCsystemonourmobilecomputingtestbedwhichconsistsofagroupof IntheM-RPCsystem,aserverhostonthewired Server Application Call results Call requests returned to from Clients Clients and Agents MSRssupportingmultiplecellswithinacampususingColumbiaMobileIPprotocol.TheMSRsandthe Library 7Figure4:Server(FH)SideofM-RPCSystem Connectionless Transport UDP / IP Unix Kernel Ethernet Driver

8 MHsinourtestbedare386and486PC-ATmachines equippedwith2mbpswavelanradiosforwireless communication.allthemachinesrunmach3.0microkernelanduxserverfromcmu(mk84/ux40). TheMSRsarealsoconnectedto10MbpsEthernet segmentsthatarelinkedtogetherbyarouterwhich isunawareofmobility.them-rpcsystemexports aninterfacethatissimilartosunrpcforclientand serverpartsofadistributedapplications.clientand serversidestubsgeneratedbytherpcgenprogramcan beusedwithoutmodicationsform-rpcclientsand servers. 4.1M-RPCClientLibrary TheclientsidelibraryforM-RPCconsistsofthe clientinterfaceinsunrpcaugmentedforindirect RDP/UDPtransportlayer.TheextrafunctionalityprovidedbyM-RPC(andtheindirectRDP/UDP layer)canbeinvokedbyrequestingaclienthandle creationusingtheclntcreatecallwithrdpasthe transportprotocol.thesubjectbasedbindingfacility isautomaticallyinvokediftherequestforthecreation ofaclienthandlesuppliesthenameofaserviceinsteadofatarget(server)host.oncetheclienthandle isobtainedbytheclientapplication,itremainsvalid untilitsdestructionbytheapplicationitself,tomake anynumberofremotecallsusingclntcalltotherequestedserver(orservice).theclntcreateinterface forrdp/udpcreatesanrdpconnectionwiththem- RPCagentatthecurrentMSRusingtheRDP/UDP indirecttransportlibrary.theconnectionrequestto themsragentcontainseitheraremoteservername ifspecied,orthemsraddressifbindingtoaservice isrequested.theportnumberattheremotehostcan besuppliedintherequestifknownoritcanbeleft uninitializedinwhichcasetheagentwillllitinafter contactingtheportmapperattheremotehost.the portnumbereldisalsousedtoholdtheserviceidentierincasebindingtoaserviceisrequested.buer spaceisallocatedforcallandreplymessagesandthe staticpartofcallheaderispre-serialized. 4.2RDP/UDPIndirectTransportLayer RDP/UDPindirecttransportlayerisimplemented inawaysimilartoi-tcp[6,7].theclientside ofm-rpclibraryusesaspecialrudpconnectcall fromtherdp/udpindirectlibraryinresponsetoa clntcreaterequestfromtheclientapplication.the rudpconnectcallrstmakesaconnectiontoawell knownportatthemsrtoobtainaportnumberon whichthem-rpcagentiswillingtoacceptanother connectionfromthemh.thenanotherrdpconnectionismadetothisnewlyobtainedportonwhich thedetailsabouttheremoteendpoint(serveraddress andportnumberorserviceidentierincasesubject basedbindingisdesired)aresentasadatagram.the rudpconnectcallreturnsafteraudpsockethas beenestablishedbythem-rpcagentonbehalfofthe MHclientapplicationtocommunicatewithaserver andtherdpconnectionwiththemsrisreadyat thispointfordatatransferinbothdirections. WhenanindirectRDP/UDPconnectionisestablished,themhmicpprocessontheMHisalsoinformedabouttheconnectionendpoints.ThisinformationissentbythemhmicpprocessintheinitialgreetingmessagetotheMSRimmediatelyafteramoveto anewcell.theinitialgreetingmessagereceivedby themsrmicpprocessatthemsrisforwardedtothe localm-rpcagentwhichpreparesrdp/udpskeletonsocketsinanticipationofahandorequestfrom thepreviousmsrwherethemhwasearlierlocated. Thedetailsofasockethandocanbefoundin[6]. 4.3M-RPCAgentatMSR TheM-RPCagentmanagestheindirectRDP/UDP transportconnectionsforeachclienthandlerequested byalocallyregisteredmh.foreverymhclienthandle,them-rpcagentalsomaintainsitsownhandle tomakerpccallrequeststoaserver.theudp socketusedbytheagentformakingsuchcallrequests isboundtotheipaddressofthemh,sothatthe aserver(onthewirednetwork)seesthecallrequest comingdirectlyfromthemh.them-rpcagentalso entertainsclienthandlecreationrequestsfromlocal MHsopeningaseparateRDPconnectionwiththeMH foreverysuchhandle.thusthem-rpcagentactslike aservertotheclientsideatthemhandasaclientto theserveronthewirednetworkinallrespectsexcept one:theagentdoesnotperformanyxdrconversion onthecallargumentsorresults.theagenthasno informationtodeterminethetypeofthecallargumentsandtheresultseither.thusonlythetwoend pointsi.e.theclientandtheserverperformmarshalingandunmarshalingofcallargumentsandresults. TheagentdoesperformsomelimitedXDRconversionsonthecallandreplyheadershowever,whichare necessarytomatchareplywiththecorrespondingcall request. Aftercreatingaclienthandleontherequestofand onbehalfofthemhclient,them-rpcagentstartsa workerthreadtoprocessanysubsequentcallrequests receivedfromthemhandthecorrespondingreplies receivedfromtheserver(fh).thisworkerthreadis alsoresponsibleforretransmittingfailedrpcrequests totheserver.aspeciallydesignatedthreadupdates aglobaltimerinrealseconds.thisglobaltimeris usedbyindividualworkerthreadstokeeptrackof 8

9 retrytimeouts.aworkerthreadremainsinoperation untiltheclienthandleattheagentisdestroyedbythe MHoruntilahandosignalisreceivedfortheMHin whichcasethethreadterminates. 4.4BindingServicestoServers Forsubjectbasedbinding,weprovidealibraryinterfacenamedgetmsrservbynameontheclientside whichmapsaservicenametoaserviceidentierto beusedintheclienthandlecreationrequestsentto themsragent.thislibraryfunctionisanalogousto thegetservbynameclibraryfunctionandconsults astandardlecalled/etc/msrservicesforthemapping.alternatively,anexternalservicemappercanbe usedwhichisresponsiblefordiscoveringservicesavailableinawirelesscellandmappingtheirnamestoserviceidentiers.onesuchschemecanbebasedupon periodicpublishing[17]ofavailableservicesbyeach MSRinitscellusingawellknownmulticastaddresstheservicemappercankeeptrackofavailableservices bylisteningtothismulticastaddress.inourcurrent scheme,theserviceidentierobtainedfromgetmsrservbynamecallisapseudoportnumberwhich isrecognizedbythem-rpcagent.choiceofsubject basedbindingisindicatedbytheuseofmsr'saddressinplaceofaserveraddresswhenthem-rpc librarysubmitstheclienthandlecreationrequestto them-rpcagent.theagentusesagetmsrservbyportfunctiontolocateaserverhostconsultingeither itslocalservicedatabaseoranamelookupservicein theprocess.theagentalsosetsaagintheclient handlecreatedonbehalfofthemhindicatingthat theserverbindingisswitchable. Figure5showsanexampleofswitchablebinding wherethemhasksforaprintservice.inthecell ofmsr-1,theprintrequestaresenttoprintserver- 1whichisthevalueoftheeld<remote-addr>in theagent'shandle.whenthemhmovestothecell ofmsr-2,thenewmsrnoticesthatbindingtothe PRINTserviceisswitchablebylookingattheRPC layerstatereceivedfrommsr-1.msr-2therefore bindstheagenthandletoprintserver-2,whichisthe localprintserverinitscell.thisnewserveraddressisputinthe<remote-addr>eldoftheagent handlesothatthefuturerpcrequestsaresentto PrintServer-2.NoticethattheMHdoesnotneedto takeanyactionforthechangeofservers. 4.5M-RPCHandos WhenanMHwithvalidclienthandlesswitches cells,them-rpcagentatthepreviousmsrtransfersthestateassociatedwiththemhclienthandles tothenewmsr.therpclayerhandoismadeafter networkandtransportlayerhandosarecompleted. Thehandosequenceisoutlinedbelow: 1.TheMHsendsinitialgreetingmessagetothe MSRinitsnewcell.Theinitialgreetingsent bythemhmicpprocessatthemhcontainsthe end-pointparametersofalltherdp/udpindirectconnectionsactivebetweenthemhandthe previousmsrforopenm-rpcclienthandles. ThegreetingalsoliststhepreviousMSRwhere themhwaslocatedbeforemovingtothenew cell. 2.ThemsrmicpprocessattheMSRupdatesitstablesmarkingthenewlyarrivedMHaslocaland sendsaforwardingpointertothepreviousmsr listedinthegreeting.acopyofthegreetingmessageisalsosenttothelocalm-rpcagentthus initiatinghigherlayerhando. 3.TheM-RPCagentestablishedskeletonsocketsfor RDPconnectionswiththeMHandUDPsockets boundtothemhaddressforcommunicationwith theserversonthewirednetworkfromtheendpointparameterslistedinthemhgreeting. 4.WhenthemsrmicpprocessatthepreviousMSR receivestheforwardingpointer,itupdatesitstablesmarkingthemhwhichmovedoutofitscell asremote.acopyoftheforwardingpointeris alsosenttothelocalm-rpcagent. 5.TheM-RPCagentsignalsalltheworkerthreads activeonbehalfofthe(nowremote)mhtoterminate.afterterminatingtheworkerthreads,the M-RPCagentmakesahandoconnectionwith thenewmsr'sm-rpcagentonawellknown TCPport.Thestateofeachclienthandleactive atthemsronbehalfofthemhisthentransferredtothenewmsr.foreveryclienthandle, theagentattheoldmsrsendsthestateofthe MHside(RDP)andFHside(UDP)socketsusing aspecialsiocgetstateioctl[6].aftersendingthestateofthetwosockets,rpclayerstate informationabouttheclienthandleissenttothe newmsr.thisinformationincludestheprogram andversionnumbersfortheremoteprogram(or service)andaagindicatingiftheexistingserver bindingisswitchableornot. 6.Ontheotherhand,theM-RPCagentatthe newmsrtakesanalogousstepstoreceivethe stateinformationfromtheoldmsr.thestate ofmhsideandfhsidesocketsisrstreceived andinstalledusingasiocsetstateioctl[6]. 9

10 Client Handle PRINT VERS0 RDP socket MSR addr SW_BINDING program & version socket pointer remote addr flags Agent Handle PRINT VERS0 UDP socket PrintServer-1 SW_BINDING MH Handoff Client Handle PRINT VERS0 program & version RDP socket socket pointer MSR addr remote addr SW_BINDING flags 7.TheagentatthenewMSRstartsaworkerthread dleisreadfromthehandoconnectionandalo- calcopyofthemhclienthandleiscreatedby theagent.additionalstepsrequiredtohandle switchableserverbindingsaredescribedlater. RDP connection questsfromthemhandrepliesfromtheserver perclienthandletoprocesssubsequentcallre- M-RPC (FH).Ifareplyforapendingcallarrivesfromthe o,suchareplyisdeliveredtotheskeletonudp server(addressedtothemh)duringthehand- socketatthenewmsrbythemobileiplayer whichcanbepickedupbythenewmsr'sm-rpc agentonceitobtainsthestateinformationfrom newmsrlocatesalltheclienthandlesforthemh thepreviousmsr.thushandosdonotcause thathaveswitchablebindings,andattemptstore- 4.6SwitchingServersonaMove switchescells,aspartofhandotheagentatthe WhenanMHwithopenM-RPCclienthandles anyextraneousretriesbythem-rpcagentdue bindthemto(possiblycloser)serversintheneigh- tolostreplies. 10 MSR-1 Agent Handle PRINT VERS0 UDP socket PrintServer-2 SW_BINDING To PrintServer-2 M-RPC catedschemesfordynamicbindingcanbedeveloped anysubsequentcallretrieswillbedirectedtothenew server.thisworksnewithourassumptionofstatelessserversandidempotentrequests.1moresophisti- arere-computedfromtheinformationavailableatthe newmsr,immediatelyaftereverymovewhichmeans calcopyoftheclienthandlewhichisusedinthe retriestotheserver.currently,theserverbindings sendtosystemcallsformakingrpcrequestsand Agent UDP byextendingourbasicmechanismhowever,forexampletoswitchserversonlywhenthenextcallrequest MSR-2 arrivesfromthemh. 4.7HandlingDisconnections curbecauseofcellcrossoversandtemporarylossof radiosignal.thereliablenatureoftransportprotocol onthewirelesslinkcoupledwithrpclevelbuertionofm-rpcsystemislimitedtohandlingtransient orshort-liveddisconnectionssuchasthosewhichocingofrepliesformsthebasisofhandlingdisconnectionsinoursystem.wealsoallowthemhapplica- Disconnectionsupportinthecurrentimplementa- semantics. 1SunRPCwithcallretriesdoesnotguaranteeexactly-once M-RPC Client Subsequently,informationabouttheclienthan- ClientFigure5:ExampleofSwitchableServerBinding RDP connection M-RPC Agent To PrintServer-1 UDP borhood.theserveraddressisrecordedinthelo-

11 tiontospecifyadisconnectionhandlerforeachprocedurethatispartoftheremoteprogramusingan extendedclntcontrollibraryfunction.thiscanbe doneonlyafteraclienthandlehasbeenestablished fortheremoteprogram.thedisconnectionhandler, ifestablished,iscalledwhenacallattempttimesout ontheclientside.thebasicmechanismsforhandling disconnectionsdescribedherewillbeextendedinthe nearfuturetocoverlongerdisconnectionsincluding theonesinitiatedbytheuser. 4.8M-RPCServerInterface AnyRPCserverexportingaconnectionless(UDP) serviceinterfaceundersunrpccanbeusedasa serverwithm-rpcclients.thusasingleservercan beusedtoserverequestsfromclientsusingregular SunRPCclientlibraryandfromM-RPCclients(via M-RPCagents).Thisparticularfeatureofbackward compatibilityisoneofthedesigncharacteristicsof protocollayersbasedontheindirectmodel.wedo notyethandleserversexportingaconnectionoriented interfacee.g.overtcp,butm-rpccanbeeasilyextendedtousei-tcpinsteadofrdp/udpwhichwill enablem-rpcclientstoaccesstcpbasedservicesas wellwiththeadditionalbenetsaordedbym-rpc. 5RelatedWork Useofagentsorintermediariesforprotocolsand applicationsbasedontheclient-servermodelisnota newphenomenon.thekkathetal.[33]recentlyadvocatedtheuseofaserverclerkontheclientmachineto separatecontrolanddatatracinanrpcbasedle system.intheirsystemtheclerkisatrustedrepresentativeoftheserverwhichcanaccessservermemory directlywithoutanycontroloverhead.bycontrast, them-rpcagentinoursystemisatrustedrepresentativeofthemobileclientandisauthorizedtomake RPCrequestsandcollectresultsonitsbehalf. Amethodfordynamicallyobtainingclient-service bindingswasproposedin[10].here,thebindingsare changedbyaclientagentwhenthecurrentserveris nolongeraccessible.bycontrast,inamobileenvironment,theserverbindingsmayhavetochangejustdue toamoveandnotnecessarilyduetofailures.hence, inourscheme,theagentatthemsrisresponsiblefor providingswitchablebindings.objectrequestbrokers(orbs)whicharepartoftheinfrastructurein CORBAspecications[26]alsobehaveasagentsmappingclientrequeststoservers.Agentbasedmanyto-manyRPCdescribedin[35]allowsintegrationof resultsfrommultipleserversandcallbacks.formobileenvironments,anagentbasedmodelformessage passingwassuggestedin[3].schemesforadaptive presentationofdatatomobileclientshavebeenpresentedrecentlyin[37]and[25].theneedforsubject basednamingandbindingindissemination-oriented protocolswasemphasisedin[14]. 6ConclusionandFutureWork WehavepresentedinthispaperaRemoteProcedureCallserviceformobileclientscalledM-RPC whichtakescareofsomeoftheuniquefeaturesof mobilewirelesscomputing.weoutlinedcertainrequirementsoffuturemobileclient-serverapplications whichwebelieveshouldbemetbytherpclayer.in particular,them-rpcsystemprovides: 1.Reliabletransportontheerrorpronewirelesslink evenwhenaconnectionlessinterfaceisdesired withaserveronthewirednetwork. 2.Subjectbasedbindingofclientrequeststoservers bythem-rpcagentatthemsrwhichisswitchableonamove. 3.RetransmissionsoffailedRPCrequestsfromthe MSRthussavingonwirelesstransmissionsfrom themh. 4.Partialsupportforlinklayerdisconnections. WealsodescribedourimplementationoftheM- RPCsystemwhichisbaseduponandcompatiblewith SunRPC.WealsoimplementedindirectRDP/UDP transportlayertocarrythem-rpcrequestsand replies.wetestedourimplementationforthesupportedfunctionalityusingclientandserverstubsgeneratedbyrpcgenstubgeneratoravailablepublicly withthesunrpcdistribution.ourimplementation ofm-rpchandosdemonstrateshowmultipleprotocollayerscanbehandedofromonemsrtoanother. Suchhandoscanbegeneralizedtomigrateapplicationlevelproxies. Inthenearfuture,weplantomeasureM-RPCperformancewithsimpleteststoquantifytheoverhead addedbytheinterposingagentatthemsr.other interestingmeasurementsincludecomparingm-rpc performancewiththatofsunrpcundersimulated lossconditionsonthewirelesslink.weareplanningto extendthem-rpcsystemtohaveextensivesupport fordisconnectedoperationwhichcanbenetunedby distributedapplicationsifneeded.wearealsoplanningtobuildsupportforthenoticationofdisconnectionandreconnectioneventstotheinterestedapplicationsandagentsatthemhandthemsrrespectively. SupportforadaptivepresentationofRPCresultsfrom 11

12 themsragenttothemhapplication,includingintegrationofresultsfrommultipleserversisneededas well. TheM-RPCsystemdescribedherewillbeusedas abasisforimplementingsupportforapplicationsusingmobileclient-agent-serverparadigm.suchsupport willincludeprovisionforhandingostateinformation relatedtoamobilehostfromoneagenttoanother whenthemhswitchescells.anexampleofsuchsupportisalesystemformobileclientswhichusesa cachingpolicybetweentheagentandthemhclient thatisdierentfromthecachingpolicysupportedby theleserver. Acknowledgements WewouldliketothankDanDuchampforpointing outsomeoftherelatedworkintheareaofdynamic bindingsinrpc. References [1]M.Accetta,R.Baron,W.Bolosky,D.Golub,R. Rashid,A.TevanianandM.Young,\Mach:a newkernelfoundationforunixdevelopment", Proc.oftheUSENIX1986SummerConference, July1986. [2]ArchitectureProjectsManagementLimited, \ANSA:Anengineer'sintroductiontothearchitecture",ANSAReleaseTR.03.02,November [3]A.AthanandD.Duchamp,\Agent-mediated messagepassingforconstrainedenvironments", Proc.oftheUSENIXSymposiumonMobileand Location-IndependentComputing,August1993. [4]B.R.Badrinath,A.Bakre,T.ImielinskiandR. Marantz,\HandlingMobileClients:ACasefor IndirectInteraction",Proc.ofthe4thWorkshop onworkstationoperatingsystems(wwos-iv), October1993. [5]B.R.Badrinath,A.AcharyaandT.Imielinski, \StructuringDistributedAlgorithmsforMobile hosts",proc.ofthe14thintl.conf.ondistributedcomputingsystems,pp.21{28,june [6]A.BakreandB.R.Badrinath,\Handoand systemsupportforindirecttcp/ip"inproc. ofthe2ndusenixsymposiumonmobile andlocation-independentcomputing,pp.11{24, April1995. [7]A.BakreandB.R.Badrinath,\I-TCP:Indirect TCPformobilehosts"ToappearinProc.ofthe 15thIntl.Conf.onDistributedComputingSystems,May1995. [8]A.Birell,\Securecommunicationusingremote procedurecalls",acmtrans.oncomputersystems,3(1),february1985. [9]A.BirellandB.Nelson,\Implementingremote procedurecalls",acmtrans.oncomputersystems,2(1),february1984. [10]R.ChangandC.V.Ravishankar,\Aserviceacquisitionmechanismfortheclient/servicemodel incygnus",proc.ofthe11thintl.conf.on DistributedComputingSystems,pp.90{97,May [11]R.CaceresandL.Iftode,\TheEectsofMobilityonReliableTransportProtocols",Proc.ofthe 14thIntl.Conf.onDistributedComputingSystems,pp.12{20,June1994. [12]D.Cheriton,\Exploitingrecursiontosimplify RPCcommunicationarchitectures",Proc.ofthe ACMSIGCOMM,pp.76{87,September1988. [13]D.Cheriton,\VersatileMessageTransactionProtocol",RequestforComments1045,February [14]D.Cheriton,\Dissemination-orientedcommunicationsystems",TechnicalReport,StanfordUniversity,PaloAlto,CA,1992. [15]E.C.CooperandR.P.Draves,\CThreads", TechnicalReportNo.CMU-CS-88{154,Schoolof ComputerScience,CarnegieMellonUniversity, Pittsburgh,PA,June1988. [16]A.DeSimone,M.C.ChuahandO.C.Yue, \Throughputperformanceoftransport-layerprotocolsoverwirelessLANs",Proc.ofGlobecom '93,December1993. [17]T.ImielinskiandS.ViswanathanandB.R. Badrinath,\EnergyEcientFilteringofDataon theair",inproc.oftheacmsigmodconference,may1994. [18]T.ImielinskiandB.R.Badrinath,\Mobilewirelesscomputing:Challengesindatamanagement",CommunicationsoftheACM,Vol.37,No. 10,October1994,pp.19{28. [19]J.Ioannidis,D.DuchampandG.Q.Maguire, \IP-basedprotocolsformobileinternetworking" Proc.ofACMSIGCOMM,pp.235{245,September

13 [20]J.IoannidisandG.Q.Maguire,\Thedesignand implementationofamobileinternetworkingarchitecture",proc.ofusenixwintertechnical Conference,January1993. [21]J.KistlerandM.Satyanarayanan,\Disconnected operationinthecodalesystem",acmtrans. oncomputersystems,10(1),february,1992. [22]M.Kojo,K.RaatikainenandT.Alanko,\ConnectingmobileworkstationstotheInternetover adigitalcellulartelephonenetwork",mobidata WorkshoponMobileandWirelessInformation Systems,November1994. [23]S.J.Leer,M.K.McKusick,M.J.Karelsand J.S.Quarterman,Thedesignandimplementation ofthe4.3bsdunixoperatingsystem,addison Wesley,1989. [24]P.Manzoni,D.GhosalandG.Serazzi,\Impactof mobilityontcp/ip:anintegratedperformance study",toappearintheieeejournalonselectedareasincommunications,1995. [25]B.Noble,M.PriceandM.Satyanarayanan, \Aprogramminginterfaceforapplication-aware adaptationinmobilecomputing",toappearin Proc.oftheFifthWorkshoponHotTopicsinOperatingSystems(HoTOS-V),May1995. [26]ObjectManagementGroup,\Commonobject requestbrokerarchitectureandspecication", OMGDocument ,December1991. [27]J.Postel,\Userdatagramprotocol",Requestfor Comments768,August1980. [28]J.Postel,\Transmissioncontrolprotocol",RequestforComments793,September1981. [29]K.Shrivastava,G.N.DixonandG.D.Parrington, \AnoverviewoftheArjunadistributedprogrammingsystem",IEEESoftware,pp.66{73,January1991. [30]SunMicrosystems,\XDR:ExternalDataRepresentationStandard",RequestforComments 1014,1987. [31]SunMicrosystems,\RPC:RemoteProcedure Call,ProtocolSpecication,Version2",Request forcomments1057,1988. [32]SunMicrosystems,\NFS:NetworkFileSystem ProtocolSpecication",RequestforComments 1094,1988. [33]C.A.Thekkath,H.M.LevyandE.D.Lazowska, \Separatingdataandcontroltransferindistributedoperatingsystems",Proc.ofthe6thIntl. Conf.onArchitecturalSupportforProgramming LanguagesandOperatingSystems,pp.2{11,October1994. [34]D.Velten,R.HindenandJ.Sax,\Reliabledata protocol",requestforcomments908,july1984. [35]G.WellingandB.R.Badrinath,\Anarchitecture ofathreadedmany-to-manyremoteprocedure call",proc.ofthe12thintl.conf.ondistributed ComputingSystems,pp.504{511,June1992. [36]R.YavatkarandN.Bhagwat,\Improvingendto-endperformanceofTCPovermobileinternetworks,"IEEEWorkshoponMobileComputing, December1994. [37]B.ZenelandD.Duchamp,\Intelligentcommunicationlteringforlimitedbandwidthenvironments",ToappearinProc.oftheFifthWorkshop onhottopicsinoperatingsystems(hotos-v), May

I-TCP: Indirect TCP for Mobile Hosts

I-TCP: Indirect TCP for Mobile Hosts I-TCP: Indirect TCP for Mobile Hosts Ajay Bakre bakre@paul.rutgers.edu B.R. Badrinath badri@rags.rutgers.edu Department of Computer Science Rutgers University, Piscataway, NJ 08855. DCS-TR-314 October,

More information

Network Programming TDC 561

Network Programming TDC 561 Network Programming TDC 561 Lecture # 1 Dr. Ehab S. Al-Shaer School of Computer Science & Telecommunication DePaul University Chicago, IL 1 Network Programming Goals of this Course: Studying, evaluating

More information

Chapter 11. User Datagram Protocol (UDP)

Chapter 11. User Datagram Protocol (UDP) Chapter 11 User Datagram Protocol (UDP) The McGraw-Hill Companies, Inc., 2000 1 CONTENTS PROCESS-TO-PROCESS COMMUNICATION USER DATAGRAM CHECKSUM UDP OPERATION USE OF UDP UDP PACKAGE The McGraw-Hill Companies,

More information

41376 UDP performing get device status Command Workstation (CWS), Harmony, Bi-directional Driver 8021-8022 TCP/UDP

41376 UDP performing get device status Command Workstation (CWS), Harmony, Bi-directional Driver 8021-8022 TCP/UDP TCP/IP ports that might be used with Canon office equipment (in alphabetical order) 3/1/2009 Axis Print server. This port is used to identify the status the axis print server. This is performed approx

More information

Objectives of Lecture. Network Architecture. Protocols. Contents

Objectives of Lecture. Network Architecture. Protocols. Contents Objectives of Lecture Network Architecture Show how network architecture can be understood using a layered approach. Introduce the OSI seven layer reference model. Introduce the concepts of internetworking

More information

Category: Standards Track August 1995

Category: Standards Track August 1995 Network Working Group R. Srinivasan Request for Comments: 1833 Sun Microsystems Category: Standards Track August 1995 Status of this Memo Binding Protocols for ONC RPC Version 2 This document specifies

More information

IP Network Layer. Datagram ID FLAG Fragment Offset. IP Datagrams. IP Addresses. IP Addresses. CSCE 515: Computer Network Programming TCP/IP

IP Network Layer. Datagram ID FLAG Fragment Offset. IP Datagrams. IP Addresses. IP Addresses. CSCE 515: Computer Network Programming TCP/IP CSCE 515: Computer Network Programming TCP/IP IP Network Layer Wenyuan Xu Department of Computer Science and Engineering University of South Carolina IP Datagrams IP is the network layer packet delivery

More information

Managing Ports and System Services using BT NetProtect Plus firewall

Managing Ports and System Services using BT NetProtect Plus firewall Managing Ports and System Services using BT NetProtect Plus firewall To work properly, certain programs (including web servers and file-sharing server programs) must accept unsolicited connections from

More information

Linux Kernel Architecture

Linux Kernel Architecture Linux Kernel Architecture Amir Hossein Payberah payberah@yahoo.com Contents What is Kernel? Kernel Architecture Overview User Space Kernel Space Kernel Functional Overview File System Process Management

More information

Operating Systems Design 16. Networking: Sockets

Operating Systems Design 16. Networking: Sockets Operating Systems Design 16. Networking: Sockets Paul Krzyzanowski pxk@cs.rutgers.edu 1 Sockets IP lets us send data between machines TCP & UDP are transport layer protocols Contain port number to identify

More information

Building Applications With Sockets

Building Applications With Sockets C C Building Applications With Sockets Topics & Goals: Sockets mechanism & its use App layer design & implementation principles Building applications using sockets D Sockets: Unifying Transport API Simplify

More information

Network File System (NFS)

Network File System (NFS) Network File System (NFS) Brad Karp UCL Computer Science CS GZ03 / M030 10 th October 2011 NFS Is Relevant Original paper from 1985 Very successful, still widely used today Early result; much subsequent

More information

Mobile Routing. When a host moves, its point of attachment in the network changes. This is called a handoff.

Mobile Routing. When a host moves, its point of attachment in the network changes. This is called a handoff. Mobile Routing Basic Notions of Mobility When a host moves, its point of attachment in the changes. This is called a handoff. The point of attachment is a base station (BS) for cellular, or an access point

More information

Generalised Socket Addresses for Unix Squeak 3.9 11

Generalised Socket Addresses for Unix Squeak 3.9 11 Generalised Socket Addresses for Unix Squeak 3.9 11 Ian Piumarta 2007 06 08 This document describes several new SocketPlugin primitives that allow IPv6 (and arbitrary future other) address formats to be

More information

Cape Girardeau Career Center CISCO Networking Academy Bill Link, Instructor. 2.,,,, and are key services that ISPs can provide to all customers.

Cape Girardeau Career Center CISCO Networking Academy Bill Link, Instructor. 2.,,,, and are key services that ISPs can provide to all customers. Name: 1. What is an Enterprise network and how does it differ from a WAN? 2.,,,, and are key services that ISPs can provide to all customers. 3. Describe in detail what a managed service that an ISP might

More information

ELEN 602: Computer Communications and Networking. Socket Programming Basics

ELEN 602: Computer Communications and Networking. Socket Programming Basics 1 ELEN 602: Computer Communications and Networking Socket Programming Basics A. Introduction In the classic client-server model, the client sends out requests to the server, and the server does some processing

More information

Exposing Link-Change Events to Applications

Exposing Link-Change Events to Applications Exposing Link-Change Events to Applications Problem Description As a Mobile Node (MN) handoffs from one Point Of Attachment (POA) to another, the state of its network interface (in the MN) changes: From

More information

Mobile Computing/ Mobile Networks

Mobile Computing/ Mobile Networks Mobile Computing/ Mobile Networks TCP in Mobile Networks Prof. Chansu Yu Contents Physical layer issues Communication frequency Signal propagation Modulation and Demodulation Channel access issues Multiple

More information

Socket = an interface connection between two (dissimilar) pipes. OS provides this API to connect applications to networks. home.comcast.

Socket = an interface connection between two (dissimilar) pipes. OS provides this API to connect applications to networks. home.comcast. Interprocess communication (Part 2) For an application to send something out as a message, it must arrange its OS to receive its input. The OS is then sends it out either as a UDP datagram on the transport

More information

ICOM 5026-090: Computer Networks Chapter 6: The Transport Layer. By Dr Yi Qian Department of Electronic and Computer Engineering Fall 2006 UPRM

ICOM 5026-090: Computer Networks Chapter 6: The Transport Layer. By Dr Yi Qian Department of Electronic and Computer Engineering Fall 2006 UPRM ICOM 5026-090: Computer Networks Chapter 6: The Transport Layer By Dr Yi Qian Department of Electronic and Computer Engineering Fall 2006 Outline The transport service Elements of transport protocols A

More information

Mobile RMI: Supporting Remote Access to Java Server Objects on Mobile Hosts

Mobile RMI: Supporting Remote Access to Java Server Objects on Mobile Hosts Mobile RMI: Supporting Remote Access to Java Server Objects on Mobile Hosts Tom Wall Broadcom Eireann Research Ltd. Dublin, Ireland tom.wall@broadcom.ie Abstract Java Remote Method Invocation (RMI) is

More information

Remote Desktop Services Overview. Prerequisites. Additional References

Remote Desktop Services Overview. Prerequisites. Additional References Remote Desktop Services Overview Remote Desktop Services allows users to run Microsoft Windows applications on a remote computer running Windows Server 2008 or 2008 R2. All application execution and data

More information

Network Programming with Sockets. Process Management in UNIX

Network Programming with Sockets. Process Management in UNIX Network Programming with Sockets This section is a brief introduction to the basics of networking programming using the BSD Socket interface on the Unix Operating System. Processes in Unix Sockets Stream

More information

Network layer" 1DT066! Distributed Information Systems!! Chapter 4" Network Layer!! goals: "

Network layer 1DT066! Distributed Information Systems!! Chapter 4 Network Layer!! goals: 1DT066! Distributed Information Systems!! Chapter 4" Network Layer!! Network layer" goals: "! understand principles behind layer services:" " layer service models" " forwarding versus routing" " how a

More information

CSE 127: Computer Security. Network Security. Kirill Levchenko

CSE 127: Computer Security. Network Security. Kirill Levchenko CSE 127: Computer Security Network Security Kirill Levchenko December 4, 2014 Network Security Original TCP/IP design: Trusted network and hosts Hosts and networks administered by mutually trusted parties

More information

Ping Device Driver Help. 2009 Schneider Electric

Ping Device Driver Help. 2009 Schneider Electric 2009 Schneider Electric 1 Table of Contents 1 Getting Started... 2 Help Contents... 2 Overview... 2 2 Device Setup... 2 Device Setup... 2 3 Automatic Tag... Database Generation 2 Automatic Tag... Database

More information

Network Attached Storage. Jinfeng Yang Oct/19/2015

Network Attached Storage. Jinfeng Yang Oct/19/2015 Network Attached Storage Jinfeng Yang Oct/19/2015 Outline Part A 1. What is the Network Attached Storage (NAS)? 2. What are the applications of NAS? 3. The benefits of NAS. 4. NAS s performance (Reliability

More information

Network Security - ISA 656 Firewalls & NATs

Network Security - ISA 656 Firewalls & NATs Network Security - ISA 656 & NATs Angelos Stavrou Types of Schematic of a Conceptual Pieces Packet UDP Types of Packet Dynamic Packet Application Gateways Circuit Relays Personal /or Distributed Many firewalls

More information

Network File System (NFS) Pradipta De pradipta.de@sunykorea.ac.kr

Network File System (NFS) Pradipta De pradipta.de@sunykorea.ac.kr Network File System (NFS) Pradipta De pradipta.de@sunykorea.ac.kr Today s Topic Network File System Type of Distributed file system NFS protocol NFS cache consistency issue CSE506: Ext Filesystem 2 NFS

More information

ServerIron TrafficWorks Firewall Load Balancing Guide

ServerIron TrafficWorks Firewall Load Balancing Guide ServerIron TrafficWorks Firewall Load Balancing Guide ServerIron 4G Series ServerIronGT C Series ServerIronGT E Series ServerIron 350 & 350-PLUS ServerIron 350 & 350-PLUS ServerIron 450 & 450-PLUS Release

More information

RARP: Reverse Address Resolution Protocol

RARP: Reverse Address Resolution Protocol SFWR 4C03: Computer Networks and Computer Security January 19-22 2004 Lecturer: Kartik Krishnan Lectures 7-9 RARP: Reverse Address Resolution Protocol When a system with a local disk is bootstrapped it

More information

2057-15. First Workshop on Open Source and Internet Technology for Scientific Environment: with case studies from Environmental Monitoring

2057-15. First Workshop on Open Source and Internet Technology for Scientific Environment: with case studies from Environmental Monitoring 2057-15 First Workshop on Open Source and Internet Technology for Scientific Environment: with case studies from Environmental Monitoring 7-25 September 2009 TCP/IP Networking Abhaya S. Induruwa Department

More information

Improved Digital Media Delivery with Telestream HyperLaunch

Improved Digital Media Delivery with Telestream HyperLaunch WHITE PAPER Improved Digital Media Delivery with Telestream THE CHALLENGE Increasingly, Internet Protocol (IP) based networks are being used to deliver digital media. Applications include delivery of news

More information

PowerLink Bandwidth Aggregation Redundant WAN Link and VPN Fail-Over Solutions

PowerLink Bandwidth Aggregation Redundant WAN Link and VPN Fail-Over Solutions Bandwidth Aggregation Redundant WAN Link and VPN Fail-Over Solutions Find your network example: 1. Basic network with and 2 WAN lines - click here 2. Add a web server to the LAN - click here 3. Add a web,

More information

Last Class: Communication in Distributed Systems. Today: Remote Procedure Calls

Last Class: Communication in Distributed Systems. Today: Remote Procedure Calls Last Class: Communication in Distributed Systems Structured or unstructured? Addressing? Blocking/non-blocking? Buffered or unbuffered? Reliable or unreliable? Server architecture Scalability Push or pull?

More information

DB2 Connect for NT and the Microsoft Windows NT Load Balancing Service

DB2 Connect for NT and the Microsoft Windows NT Load Balancing Service DB2 Connect for NT and the Microsoft Windows NT Load Balancing Service Achieving Scalability and High Availability Abstract DB2 Connect Enterprise Edition for Windows NT provides fast and robust connectivity

More information

Required Ports and Protocols. Communication Direction Protocol and Port Purpose Enterprise Controller Port 443, then Port 11165 Port 8005

Required Ports and Protocols. Communication Direction Protocol and Port Purpose Enterprise Controller Port 443, then Port 11165 Port 8005 Oracle Enterprise Manager Ops Center Ports and Protocols Guide 12c Release 2 (12.2.2.0.0) E51942-04 December 2014 This document contains the latest information on the ports and protocols that Oracle Enterprise

More information

Chapter 11 Distributed File Systems. Distributed File Systems

Chapter 11 Distributed File Systems. Distributed File Systems Chapter 11 Distributed File Systems Introduction Case studies NFS Coda 1 Distributed File Systems A distributed file system enables clients to access files stored on one or more remote file servers A file

More information

IP - The Internet Protocol

IP - The Internet Protocol Orientation IP - The Internet Protocol IP (Internet Protocol) is a Network Layer Protocol. IP s current version is Version 4 (IPv4). It is specified in RFC 891. TCP UDP Transport Layer ICMP IP IGMP Network

More information

White Paper. ThinRDP Load Balancing

White Paper. ThinRDP Load Balancing White Paper ThinRDP Load Balancing Introduction Load balancing and Fault-tolerance are methodologies to distribute workload across multiple services to achieve optimal resource utilization, avoid overload

More information

USB Functions for Windows 7

USB Functions for Windows 7 USB Functions for Windows 7 Getting Started Position the DSL-2750B in your desired location, and connect the power cable to the rear of the device. From the ADSL micro filter device that provides the separated

More information

Technical Note. Configuring an Omron PLC with Omron FINS Ethernet Driver. 1. Introduction

Technical Note. Configuring an Omron PLC with Omron FINS Ethernet Driver. 1. Introduction Technical Note Configuring an Omron PLC with Omron FINS Ethernet Driver 1. Introduction This document describes how to configure an Omron PLC with a FINS-enabled Ethernet module and the Omron FINS Ethernet

More information

ACP ThinManager Tech Notes Troubleshooting Guide

ACP ThinManager Tech Notes Troubleshooting Guide ACP ThinManager Tech Notes Troubleshooting Guide Use the F1 button on any page of a ThinManager wizard to launch Help for that page. Visit www.thinmanager.com/technotes/ to download the manual, manual

More information

Firewall Stateful Inspection of ICMP

Firewall Stateful Inspection of ICMP The feature addresses the limitation of qualifying Internet Control Management Protocol (ICMP) messages into either a malicious or benign category by allowing the Cisco IOS firewall to use stateful inspection

More information

Naming vs. Locating Entities

Naming vs. Locating Entities Naming vs. Locating Entities Till now: resources with fixed locations (hierarchical, caching,...) Problem: some entity may change its location frequently Simple solution: record aliases for the new address

More information

Dissertation Title: SOCKS5-based Firewall Support For UDP-based Application. Author: Fung, King Pong

Dissertation Title: SOCKS5-based Firewall Support For UDP-based Application. Author: Fung, King Pong Dissertation Title: SOCKS5-based Firewall Support For UDP-based Application Author: Fung, King Pong MSc in Information Technology The Hong Kong Polytechnic University June 1999 i Abstract Abstract of dissertation

More information

Oracle Enterprise Manager Ops Center. Ports and Protocols. Ports and Protocols 12c Release 3 (12.3.0.0.0)

Oracle Enterprise Manager Ops Center. Ports and Protocols. Ports and Protocols 12c Release 3 (12.3.0.0.0) Oracle Enterprise Manager Ops Center Ports and Protocols 12c Release 3 (12.3.0.0.0) E59963-01 June 2015 This document contains the latest information on the ports and protocols that Oracle Enterprise Manager

More information

Analysis and Comparison of Different Host Mobility Approaches

Analysis and Comparison of Different Host Mobility Approaches Analysis and Comparison of Different Host Mobility Approaches Mevlut Erdem Kurul, Rommel Pesigan and Brad Weekes Department of Computer Science University of California, San Diego La Jolla, CA 92193-0114

More information

Project 4: IP over DNS Due: 11:59 PM, Dec 14, 2015

Project 4: IP over DNS Due: 11:59 PM, Dec 14, 2015 CS168 Computer Networks Jannotti Project 4: IP over DNS Due: 11:59 PM, Dec 14, 2015 Contents 1 Introduction 1 2 Components 1 2.1 Creating the tunnel..................................... 2 2.2 Using the

More information

Windows Server 2003 default services

Windows Server 2003 default services Windows Server 2003 default services To view a description for a particular service, hover the mouse pointer over the service in the Name column. The descriptions included here are based on Microsoft documentation.

More information

Removing The Linux Routing Cache

Removing The Linux Routing Cache Removing The Red Hat Inc. Columbia University, New York, 2012 Removing The 1 Linux Maintainership 2 3 4 5 Removing The My Background Started working on the kernel 18+ years ago. First project: helping

More information

User s manual for Android Application

User s manual for Android Application Motorised IP Video surveillance camera for smartphones, tablets and PC / MAC. Protect your home and family remotely! User s manual for Android Application Thanks We thank you for choosing Aquila Vizion.

More information

Auburn Montgomery. Registration and Security Policy for AUM Servers

Auburn Montgomery. Registration and Security Policy for AUM Servers Auburn Montgomery Title: Responsible Office: Registration and Security Policy for AUM Servers Information Technology Services I. PURPOSE To outline the steps required to register and maintain departmental

More information

CSIS 3230. CSIS 3230 Spring 2012. Networking, its all about the apps! Apps on the Edge. Application Architectures. Pure P2P Architecture

CSIS 3230. CSIS 3230 Spring 2012. Networking, its all about the apps! Apps on the Edge. Application Architectures. Pure P2P Architecture Networking, its all about the apps! CSIS 3230 Chapter 2: Layer Concepts Chapter 5.4: Link Layer Addressing Networks exist to support apps Web Social ing Multimedia Communications Email File transfer Remote

More information

SERVICE DISCOVERY AND MOBILITY MANAGEMENT

SERVICE DISCOVERY AND MOBILITY MANAGEMENT Objectives: 1) Understanding some popular service discovery protocols 2) Understanding mobility management in WLAN and cellular networks Readings: 1. Fundamentals of Mobile and Pervasive Computing (chapt7)

More information

Hitachi ID Password Manager Telephony Integration

Hitachi ID Password Manager Telephony Integration Hitachi ID Password Manager Telephony Integration 2015 Hitachi ID Systems, Inc. All rights reserved. Contents 1 Introduction 1 2 Functional integration 2 2.1 Self-service password reset....................................

More information

Ethernet. Ethernet. Network Devices

Ethernet. Ethernet. Network Devices Ethernet Babak Kia Adjunct Professor Boston University College of Engineering ENG SC757 - Advanced Microprocessor Design Ethernet Ethernet is a term used to refer to a diverse set of frame based networking

More information

Using AT commands to control TCP/IP stack on SM5100B-D modules

Using AT commands to control TCP/IP stack on SM5100B-D modules Using AT commands to control TCP/IP stack on SM5100B-D modules Revision history Version Date Author Update description 1.0 20080620 Steven Create Shao 1.1 20080920 Steven Shao Added AT+SDATATSEND/SDATATREAD

More information

Last class: Distributed File Systems. Today: NFS, Coda

Last class: Distributed File Systems. Today: NFS, Coda Last class: Distributed File Systems Issues in distributed file systems Sun s Network File System case study Lecture 19, page 1 Today: NFS, Coda Case Study: NFS (continued) Case Study: Coda File System

More information

Socket Programming. Srinidhi Varadarajan

Socket Programming. Srinidhi Varadarajan Socket Programming Srinidhi Varadarajan Client-server paradigm Client: initiates contact with server ( speaks first ) typically requests service from server, for Web, client is implemented in browser;

More information

IP addresses have hierarchy (network & subnet) Internet names (FQDNs) also have hierarchy. and of course there can be sub-sub-!!

IP addresses have hierarchy (network & subnet) Internet names (FQDNs) also have hierarchy. and of course there can be sub-sub-!! The Domain Hierarchy IP addresses have hierarchy (network & subnet) Internet names (FQDNs) also have hierarchy the general form for a fully qualified name is and of course there can be sub-sub-!! -sub-domains

More information

Overview of Computer Networks

Overview of Computer Networks Overview of Computer Networks Client-Server Transaction Client process 4. Client processes response 1. Client sends request 3. Server sends response Server process 2. Server processes request Resource

More information

Printer Management Software

Printer Management Software Printer Management Software This topic includes: "Using CentreWare Software" on page 3-9 "Using Printer Management Features" on page 3-11 Using CentreWare Software CentreWare Internet Service (IS) CentreWare

More information

Using the DNP3.0 Protocol via Digi Device Servers and Terminal Servers

Using the DNP3.0 Protocol via Digi Device Servers and Terminal Servers Using the DNP3.0 Protocol via Digi Device Servers and Terminal Servers For years, electric power utilities have relied on Digi internal serial cards (i.e., DigiBoard solutions) to connect UNIX, Linux and

More information

8.2 The Internet Protocol

8.2 The Internet Protocol TCP/IP Protocol Suite HTTP SMTP DNS RTP Distributed applications Reliable stream service TCP UDP User datagram service Best-effort connectionless packet transfer Network Interface 1 IP Network Interface

More information

Magnet Voice Windows PC Softphone Installation

Magnet Voice Windows PC Softphone Installation Magnet Voice Windows PC Softphone Installation Contents 1. Introduction 3 2. Installation 3 Step 1: Install the Software on your PC 4 Step 2: Input your registration details 4 3. Connected State 6 6. Port

More information

WIZnet S2E (Serial-to-Ethernet) Device s Configuration Tool Programming Guide

WIZnet S2E (Serial-to-Ethernet) Device s Configuration Tool Programming Guide WIZnet S2E (Serial-to-Ethernet) Device s Configuration Tool Programming Guide Rev 0.2 This document describes how to make your own Configuration Tool for WIZ100SR, WIZ105SR and WIZ110SR of WIZnet. And

More information

Advanced Mac OS X Rootkits. Dino Dai Zovi Chief Scientist Endgame Systems

Advanced Mac OS X Rootkits. Dino Dai Zovi Chief Scientist Endgame Systems Advanced Mac OS X Rootkits Dino Dai Zovi Chief Scientist Endgame Systems Overview Mac OS X and Mach Why use Mach for rootkits? User mode Mach rootkit techniques Kernel Mach rootkit techniques 2 Why Mach

More information

Writing Client/Server Programs in C Using Sockets (A Tutorial) Part I. Session 5958. Greg Granger grgran@sas. sas.com. SAS/C & C++ Support

Writing Client/Server Programs in C Using Sockets (A Tutorial) Part I. Session 5958. Greg Granger grgran@sas. sas.com. SAS/C & C++ Support Writing Client/Server Programs in C Using Sockets (A Tutorial) Part I Session 5958 Greg Granger grgran@sas sas.com SAS Slide 1 Feb. 1998 SAS/C & C++ Support SAS Institute Part I: Socket Programming Overview

More information

Special Note Ethernet Connection Problems and Handling Methods (CS203 / CS468 / CS469)

Special Note Ethernet Connection Problems and Handling Methods (CS203 / CS468 / CS469) Special Note Connection Problems and Handling Methods (CS203 / CS468 / CS469) Sometimes user cannot find the RFID device after installing the CSL Demo App and the RFID reader is connected. If user cannot

More information

Socket Programming. Request. Reply. Figure 1. Client-Server paradigm

Socket Programming. Request. Reply. Figure 1. Client-Server paradigm Socket Programming 1. Introduction In the classic client-server model, the client sends out requests to the server, and the server does some processing with the request(s) received, and returns a reply

More information

Aqua Connect Load Balancer User Manual (Mac)

Aqua Connect Load Balancer User Manual (Mac) Aqua Connect Load Balancer User Manual (Mac) Table of Contents About Aqua Connect Load Balancer... 3 System Requirements... 4 Hardware... 4 Software... 4 Installing the Load Balancer... 5 Configuration...

More information

Netcat Commands. I am going to give you insight and knowledge so that you can understand netcat Me0wwww. WOW, something useful and FREE

Netcat Commands. I am going to give you insight and knowledge so that you can understand netcat Me0wwww. WOW, something useful and FREE Netcat Commands I am going to give you insight and knowledge so that you can understand netcat Me0wwww. WOW, something useful and FREE www.safehack.com 1 This Netcat Manual is dedicated to my Cat [Fion]

More information

1 Introduction: Network Applications

1 Introduction: Network Applications 1 Introduction: Network Applications Some Network Apps E-mail Web Instant messaging Remote login P2P file sharing Multi-user network games Streaming stored video clips Internet telephone Real-time video

More information

MEASURING WIRELESS NETWORK CONNECTION QUALITY

MEASURING WIRELESS NETWORK CONNECTION QUALITY Technical Disclosure Commons Defensive Publications Series January 27, 2016 MEASURING WIRELESS NETWORK CONNECTION QUALITY Mike Mu Avery Pennarun Follow this and additional works at: http://www.tdcommons.org/dpubs_series

More information

Forming a P2P System In order to form a P2P system, the 'central-server' should be created by the following command.

Forming a P2P System In order to form a P2P system, the 'central-server' should be created by the following command. CSCI 5211 Fall 2015 Programming Project Peer-to-Peer (P2P) File Sharing System In this programming assignment, you are asked to develop a simple peer-to-peer (P2P) file sharing system. The objective of

More information

Lecture 7: Java RMI. CS178: Programming Parallel and Distributed Systems. February 14, 2001 Steven P. Reiss

Lecture 7: Java RMI. CS178: Programming Parallel and Distributed Systems. February 14, 2001 Steven P. Reiss Lecture 7: Java RMI CS178: Programming Parallel and Distributed Systems February 14, 2001 Steven P. Reiss I. Overview A. Last time we started looking at multiple process programming 1. How to do interprocess

More information

Basic Networking Concepts. 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet

Basic Networking Concepts. 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet Basic Networking Concepts 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet 1 1. Introduction -A network can be defined as a group of computers and other devices connected

More information

Firewalls and System Protection

Firewalls and System Protection Firewalls and System Protection Firewalls Distributed Systems Paul Krzyzanowski 1 Firewalls: Defending the network inetd Most UNIX systems ran a large number of tcp services as dæmons e.g., rlogin, rsh,

More information

Setting up VPN Access for Remote Diagnostics Support

Setting up VPN Access for Remote Diagnostics Support Setting up VPN Access for Remote Diagnostics Support D. R. Joseph, Inc. supports both dial-up and Internet access for remote support of 3GIBC1 and LF-Sizer control systems. This document describes how

More information

Mobile IP. Bheemarjuna Reddy Tamma IIT Hyderabad. Source: Slides of Charlie Perkins and Geert Heijenk on Mobile IP

Mobile IP. Bheemarjuna Reddy Tamma IIT Hyderabad. Source: Slides of Charlie Perkins and Geert Heijenk on Mobile IP Mobile IP Bheemarjuna Reddy Tamma IIT Hyderabad Source: Slides of Charlie Perkins and Geert Heijenk on Mobile IP IP Refresher Mobile IP Basics 3 parts of Mobile IP: Outline Advertising Care-of Addresses

More information

Administrivia. CSMA/CA: Recap. Mobility Management. Mobility Management. Channel Partitioning, Random Access and Scheduling

Administrivia. CSMA/CA: Recap. Mobility Management. Mobility Management. Channel Partitioning, Random Access and Scheduling Administrivia No lecture on Thurs. Last work will be out this week (not due, covers wireless) Extra office hours for next week and the week after. Channel Partitioning, Random Access and Scheduling Channel

More information

Internetworking Microsoft TCP/IP on Microsoft Windows NT 4.0

Internetworking Microsoft TCP/IP on Microsoft Windows NT 4.0 Internetworking Microsoft TCP/IP on Microsoft Windows NT 4.0 Course length: 5 Days Course No. 688 - Five days - Instructor-led Introduction This course provides students with the knowledge and skills required

More information

Course Overview: Learn the essential skills needed to set up, configure, support, and troubleshoot your TCP/IP-based network.

Course Overview: Learn the essential skills needed to set up, configure, support, and troubleshoot your TCP/IP-based network. Course Name: TCP/IP Networking Course Overview: Learn the essential skills needed to set up, configure, support, and troubleshoot your TCP/IP-based network. TCP/IP is the globally accepted group of protocols

More information

We mean.network File System

We mean.network File System We mean.network File System Introduction: Remote File-systems When networking became widely available users wanting to share files had to log in across the net to a central machine This central machine

More information

This document explains how to use your Web Browser to configure the 100BaseT Print Server models

This document explains how to use your Web Browser to configure the 100BaseT Print Server models Web Browser This document explains how to use your Web Browser to configure the 100BaseT Print Server models Overview 100BaseT Print Server models incorporate a HTTP server. This allows you to connect

More information

INTRODUCTION TO FIREWALL SECURITY

INTRODUCTION TO FIREWALL SECURITY INTRODUCTION TO FIREWALL SECURITY SESSION 1 Agenda Introduction to Firewalls Types of Firewalls Modes and Deployments Key Features in a Firewall Emerging Trends 2 Printed in USA. What Is a Firewall DMZ

More information

Simple Solution for a Location Service. Naming vs. Locating Entities. Forwarding Pointers (2) Forwarding Pointers (1)

Simple Solution for a Location Service. Naming vs. Locating Entities. Forwarding Pointers (2) Forwarding Pointers (1) Naming vs. Locating Entities Till now: resources with fixed locations (hierarchical, caching,...) Problem: some entity may change its location frequently Simple solution: record aliases for the new address

More information

Static and Dynamic Network Configuration

Static and Dynamic Network Configuration CHAPTER 6 This chapter describes: Static Networks Dynamic Networks Static Networks The mobile access router can be part of a static network or a dynamic network. A static network supports stub routers

More information

Firewall Introduction Several Types of Firewall. Cisco PIX Firewall

Firewall Introduction Several Types of Firewall. Cisco PIX Firewall Firewall Introduction Several Types of Firewall. Cisco PIX Firewall What is a Firewall? Non-computer industries: a wall that controls the spreading of a fire. Networks: a designed device that controls

More information

Fundamentals of Symbian OS. Sockets. Copyright 2001-2007 Symbian Software Ltd.

Fundamentals of Symbian OS. Sockets. Copyright 2001-2007 Symbian Software Ltd. File Server and Streams This lecture Gives an initial overview of the function of sockets in communications Describes the sockets implementation on Symbian OS Including The socket server architecture The

More information

The SSL device also supports the 64-bit Internet Explorer with new ActiveX loaders for Assessment, Abolishment, and the Access Client.

The SSL device also supports the 64-bit Internet Explorer with new ActiveX loaders for Assessment, Abolishment, and the Access Client. WatchGuard SSL v3.2 Release Notes Supported Devices SSL 100 and 560 WatchGuard SSL OS Build 355419 Revision Date January 28, 2013 Introduction WatchGuard is pleased to announce the release of WatchGuard

More information

Deployment Guide Sept-2014 rev. a. Load Balancing Windows Terminal Server with Session Directory Using Array APV Series ADCs

Deployment Guide Sept-2014 rev. a. Load Balancing Windows Terminal Server with Session Directory Using Array APV Series ADCs Deployment Guide Sept-2014 rev. a Load Balancing Windows Terminal Server with Session Directory Using Array APV Series ADCs Table of Contents 1 Introduction... 2 1.1 Connecting to a Terminal Server Farm...

More information

This document explains how to use your Web Browser to configure the 100BaseT IOPRINT+ Print Server models. Connecting to the IOPRINT+ Print Server

This document explains how to use your Web Browser to configure the 100BaseT IOPRINT+ Print Server models. Connecting to the IOPRINT+ Print Server Web Browser This document explains how to use your Web Browser to configure the 100BaseT IOPRINT+ Print Server models Overview The 100BaseT IOPRINT+ Print Server models incorporate a HTTP server. This

More information

We will give some overview of firewalls. Figure 1 explains the position of a firewall. Figure 1: A Firewall

We will give some overview of firewalls. Figure 1 explains the position of a firewall. Figure 1: A Firewall Chapter 10 Firewall Firewalls are devices used to protect a local network from network based security threats while at the same time affording access to the wide area network and the internet. Basically,

More information

Introduction to Computer Networks

Introduction to Computer Networks Introduction to Computer Networks Chen Yu Indiana University Basic Building Blocks for Computer Networks Nodes PC, server, special-purpose hardware, sensors Switches Links: Twisted pair, coaxial cable,

More information

SCLP: Segment-oriented Connection-less Protocol for High-Performance Software Tunneling in Datacenter Networks

SCLP: Segment-oriented Connection-less Protocol for High-Performance Software Tunneling in Datacenter Networks SCLP: Segment-oriented Connection-less Protocol for High-Performance Software Tunneling in Datacenter Networks Ryota Kawashima Shin Muramatsu Hiroki Nakayama Tsunemasa Hayashi Hiroshi Matsuo Nagoya Institute

More information

Remote Desktop Gateway. Accessing a Campus Managed Device (Windows Only) from home.

Remote Desktop Gateway. Accessing a Campus Managed Device (Windows Only) from home. Remote Desktop Gateway Accessing a Campus Managed Device (Windows Only) from home. Contents Introduction... 2 Quick Reference... 2 Gateway Setup - Windows Desktop... 3 Gateway Setup Windows App... 4 Gateway

More information

Client-server Sockets

Client-server Sockets Client-server Sockets 1 How to Write a Network Based Program (Using Microchip's TCP/IP Stack) A network based program that uses the Client-server architecture must create at least two separate programs,

More information

SysPatrol - Server Security Monitor

SysPatrol - Server Security Monitor SysPatrol Server Security Monitor User Manual Version 2.2 Sep 2013 www.flexense.com www.syspatrol.com 1 Product Overview SysPatrol is a server security monitoring solution allowing one to monitor one or

More information