(Distributed applications (chapter 19
اسلاید 1: William Stallings Data and Computer CommunicationsChapter 19Distributed Applications
اسلاید 2: Abstract Syntax Notation One ASN.1Used to define format of PDUsRepresentation of distributed informationRepresentation of operations performed on transmitted data
اسلاید 3: Terms Relevant to ANS.1Abstract SyntaxDescribes generic structure of dataData TypeNamed set of valuesEncodingSequence of octets used to represent data valueEncoding RulesMapping from one syntax to anotherTransfer SyntaxWay data represented in bit patterns while in transit
اسلاید 4: Use of Abstract and Transfer Syntaxes
اسلاید 5: ASN.1 ConceptsModule definitionStructured definition of a data structure using ASN.1Name of module used as abstract syntax name
اسلاید 6: Form of Modules<modulereference>DEFINITIONS::= BEGIN EXPORTS IMPORTS AssignmentsList EndEXPORTSDefinitions which may be imported by other modulesIMPORTSDefinitions to be imported from other modulesAssignmentListType assignments, value assignments, macro definitions<name>::=<description>
اسلاید 7: Lexical ConventionsLayout not significantComments delimited by pair of hyphens (--) at start and pair of hyphens or end of line end of commentIdentifiers, type references and module names consist of upper and lower case letters, digits and hyphensIdentifier starts with lower case letterType reference or module name begins with upper case letterBuilt in type consists of all upper case letters
اسلاید 8: Abstract Data TypesCollection of valuesSimpleAtomicNo componentsStructuredHas componentsTaggedDerived from other typesOtherInclude CHOICE and ANY types (see later)
اسلاید 9: Tag Classes (1)Every data type (except CHOICE and ANY) has associated tagUniversalGenerally usefulApplication independentDefined in standarde.g. Boolean, Integer, Real
اسلاید 10: Tag Classes (2)Application wideRelevant to particular applicationContext specificRelevant to particular applicationApplicable in limited contextPrivateUser defined
اسلاید 11: CHOICE and ANYData types without tagsWhen value assigned, type also assignedType assigned at run timeCHOICEList of alternative known typesOnly one type used to create valueANYArbitrary valueArbitrary type
اسلاید 12: Subtypes (1)Derived from parent typeRestricted subset of valuesMay be nestedSingle value subtypeExplicit listing of all valid valuesContained subtypeUsed to form new subtype from existing subtypesIncludes all values of subtypes it containsValue range subtypeReal and Integer onlySpecify endpoints of range
اسلاید 13: Subtypes (2)Permitted alphabet constraintOnly character stringAll values that can be constructed using sub-alphabetSize constrainedLimits number of items in typee.g. number of bits in bit typeInner type constraintApplied to SEQUENCE, SEQUENCE OF, SET, SET OF, CHOICEOnly values from parent that satisfy one or more contraints
اسلاید 14: PDU Example (part 1)
اسلاید 15: PDU Example (part 2)
اسلاید 16: PDU Example (part 3)
اسلاید 17: Network Management - SNMPSimple Network Management ProtocolNetworks are becoming indispensableMore complexity makes failure more likelyRequire automatic network management toolsStandards required to allow multi-vendor networksCovering:ServicesProtocolsManagement information base (MIB)
اسلاید 18: Network Management SystemsCollection of tools for network managementSingle operator interfacePowerful, user friendly command setPerforming most or all management tasksMinimal amount of separate equipmenti.e. use existing equipmentView entire network as unified architectureActive elements provide regular feedback
اسلاید 19: Key ElementsManagement station or managerAgentManagement information baseNetwork management protocol
اسلاید 20: Management StationStand alone system or part of shared systemInterface for human network managerSet of management applicationsData analysisFault recoveryInterface to monitor and control networkTranslate manager’s requirements into monitoring and control of remote elementsData base of network management information extracted from managed entities
اسلاید 21: AgentHosts, bridges, hubs, routers equipped with agent softwareAllow them to be managed from management stationRespond to requests for informationRespond to requests for actionAsynchronously supply unsolicited information
اسلاید 22: Management Information BaseMIBRepresentation of network resources as objectsEach object a variable representing one aspect of managed objectMIB is collection of access points at agent for management of stationObjects standardized across class of systemBridge, router etc.
اسلاید 23: Network Management ProtocolLink between management station and agentTCP/IP uses SNMPOSI uses Common Management Information Protocol (CMIP)SNMPv2 (enhanced SNMP) for OSI and TCP/IP
اسلاید 24: Protocol CapabilitiesGetSetNotify
اسلاید 25: Management LayoutMay be centralized in simple networkMay be distributed in large, complex networkMultiple management serversEach manages pool of agentsManagement may be delegated to intermediate manager
اسلاید 26: Example of Distributed Network Management Configuration
اسلاید 27: SNMP v1August 1988 SNMP specification issuedStand alone management stations and bridges, routers workstations etc supplied with agentsDefines limited, easily implemented MIB of scalar variables and two dimensional tablesStreamlined protocolLimited functionalityLack of securitySNMP v2 1993, revised 1996RFC 1901-1908
اسلاید 28: SNMP v2 (1)Framework on which network management applications can be builte.g fault management, performance monitoring, accountingProtocol used to exchange management informationEach player maintains local MIBStructure defined in standardAt least one system responsible for managementHouses management applications
اسلاید 29: SNPM v2 (2)Support central or distributed managementIn distributes system, some elements operate as manager and agentExchanges use SNMP v2 protocolSimple request/response protocolTypically uses UDPOngoing reliable connection not requiredReduces management overhead
اسلاید 30: SNMP v2 Managed Configuration
اسلاید 31: Structure of Management InformationSMIDefines general framework with which MIB defined and constructedIdentifies data typesHow resources are represented and namedEncourages simplicity and extensibilityScalars and two dimensional arrays of scalars (tables) only
اسلاید 32: Protocol OperationExchange of messagesOuter message header deals with securitySeven types of PDU
اسلاید 33: SNMP v2 PDU Formats
اسلاید 34: SNMP v3Addresses security issues of SNMP v1/2RFC 2570-2575Proposed standard January 1998Defines overall architecture and security capabilityTo be used with SNMP v2
اسلاید 35: SNMP v3 ServicesAuthenticationPart of User-Based Security (UBS)Assures that message:Came from identified sourceHas not been alteredHas not been delayed or replayedPrivacyEncrypted messages using DESAccess controlCan configure agents to provide a number of levels of access to MIBAccess to informationLimit operations
اسلاید 36: Electronic MailMost heavily used application on any networkSimple Mail Transfer Protocol (SMTP)TCP/IPDelivery of simple text messagesMulti-purpose Internet Mail Extension (MIME)Delivery of other types of dataVoice, images, video clips
اسلاید 37: SMTPRFC 821Not concerned with format of messages or dataCovered in RFC 822 (see later)SMTP uses info written on envelope of mail Message headerDoes not look at contents Message bodyExcept:Standardize message character set to 7 bit ASCIIAdd log info to start of messageShows path taken
اسلاید 38: Basic OperationMail created by user agent program (mail client)Message consists of:Header containing recipient’s address and other infoBody containing user dataMessages queued and sent as input to SMTP sender programTypically a server process (daemon on UNIX)
اسلاید 39: Mail Message ContentsEach queued message has:Message textRFC 822 header with message envelope and list of recipientsMessage body, composed by userA list of mail destinationsDerived by user agent from headerMay be listed in headerMay require expansion of mailing listsMay need replacement of mnemonic names with mailbox namesIf BCCs indicated, user agent needs to prepare correct message format
اسلاید 40: SMTP SenderTakes message from queueTransmits to proper destination hostVia SMTP transactionOver one or more TCP connections to port 25Host may have multiple senders activeHost should be able to create receivers on demandWhen delivery complete, sender deletes destination from list for that messageWhen all destinations processed, message is deleted
اسلاید 41: OptimizationIf message destined for multiple users on a given host, it is sent only onceDelivery to users handled at destination hostIf multiple messages ready for given host, a single TCP connection can be usedSaves overhead of setting up and dropping connection
اسلاید 42: Possible ErrorsHost unreachableHost out of operationTCP connection fail during transferSender can re-queue mailGive up after a periodFaulty destination addressUser errorTarget user changed addressRedirect if possibleInform user if not
اسلاید 43: SMTP Protocol - Reliability Used to transfer messages from sender to receiver over TCP connectionAttempts to provide reliable serviceNo guarantee to recover lost messagesNo end to end acknowledgement to originatorError indication delivery not guaranteedGenerally considered reliable
اسلاید 44: SMTP ReceiverAccepts arriving messagePlaces in user mailbox or copies to outgoing queue for forwardingReceiver must:Verify local mail destinationsDeal with errorsTransmissionLack of disk spaceSender responsible for message until receiver confirm complete transferIndicates mail has arrived at host, not user
اسلاید 45: SMTP ForwardingMostly direct transfer from sender host to receiver hostMay go through intermediate machine via forwarding capabilitySender can specify routeTarget user may have moved
اسلاید 46: ConversationSMTP limited to conversation between sender and receiverMain function is to transfer messagesRest of mail handling beyond scope of SMTPMay differ between systems
اسلاید 47: SMTP Mail Flow
اسلاید 48: SMTP System OverviewCommands and responses between sender and receiverInitiative with senderEstablishes TCP connectionSender sends commands to receivere.g. HELO<SP><domain><CRLF>Each command generates exactly one replye.g. 250 requested mail action ok; completed
اسلاید 49: SMTP RepliesLeading digit indicates categoryPositive completion reply (2xx)Positive intermediate reply (3xx)Transient negative completion reply (4xx)Permanent negative completion reply (5xx)
اسلاید 50: Operation PhasesConnection setupExchange of command-response pairsConnection termination
اسلاید 51: Connection SetupSender opens TCP connection with receiverOnce connected, receiver identifies itself220 <domain> service readySender identifies itselfHELOReceiver accepts sender’s identification250 OKIf mail service not available, step 2 above becomes:421 service not available
اسلاید 52: Mail TransferSender may send one or more messages to receiverMAIL command identifies originatorGives reverse path to used for error reportingReceiver returns 250 OK or appropriate fail/error messageOne or more RCPT commands identifies recipients for the messageSeparate reply for each recipientDATA command transfers message textEnd of message indicated by line containing just period (.)
اسلاید 53: Closing ConnectionTwo stepsSender sends QUIT and waits for replyThen initiate TCP close operationReceiver initiates TCP close after sending reply to QUIT
اسلاید 54: Format for Text Messages RFC 882Message viewed as having envelope and contentsEnvelope contains information required to transmit and deliver messageMessage is sequence of lines of textUses general memo frameworkHeader usually keyword followed by colon followed by arguments
اسلاید 55: Example MessageDate:Tue, 16 Jan 1996 10:37:17 (EST)From: “William Stallings” <ws@host.com>Subject:The syntax of RFC 822To: Smith@otherhost.comCc: Jones@Yet-another_host.comThis is the main text, delimited from the header by a blank line.
اسلاید 56: Multipurpose Internet Mail Extension (MIME)Extension to RFC822SMTP can not transmit executablesUuencode and other schemes are availableNot standardizedCan not transmit text including international characters (e.g. â, å, ä, è, é, ê, ë)Need 8 bit ASCIIServers may reject mail over certain sizeTranslation between ASCII and EBCDIC not standardSMTP gateways to X.400 can not handle none text data in X.400 messagesSome SMTP implementations do not adhere to standardCRLF, truncate or wrap long lines, removal of white space, etc.
اسلاید 57: Overview of MIMEFive new message header fieldsMIME versionContent typeContent transfer encodingContent IdContent DescriptionNumber of content formats definesTransfer encoding defined
اسلاید 58: Content TypesText bodyMultipartMixed, Parallel, Alternative, DigestMessageRFC 822, Partial, External-bodyImagejpeg, gifVideompegAudioBasicApplicationPostscriptoctet stream
اسلاید 59: MIME Transfer EncodingsReliable delivery across wide largest range of environmentsContent transfer encoding fieldSix valuesThree (7bit, 8bit, binary) no encoding doneProvide info about nature of dataQuoted-printableData largely printable ASCII charactersNon-printing characters represented by hex codeBase64Maps arbitrary binary input onto printable outputX-tokenNamed nonstandard encoding
اسلاید 60: Base 64 Encoding
اسلاید 61: Hypertext Transfer Protocol HTTPUnderlying protocol of the World Wide WebNot a protocol for transferring hypertextFor transmitting information with efficiency necessary for hypertext jumpsCan transfer plain text, hypertext, audio, images, and Internet accessible information
اسلاید 62: HTTP OverviewTransaction oriented client/server protocolUsually between Web browser (clinet) and Web serverUses TCP connectionsStatelessEach transaction treated independentlyEach new TCP connection for each transactionTerminate connection when transaction complete
اسلاید 63: Key TermsCacheClientConnectionEntityGatewayMessageOrigin serverProxyResourceServerTunnelUser agent
اسلاید 64: Examples of HTTP Operation
اسلاید 65: Intermediate HTTP Systems
اسلاید 66: HTTP MessagesRequestsClient to serverResponsesServer to clientRequest lineResponse lineGeneral headerRequest headerResponse headerEntity headerEntity body
اسلاید 67: HTTP Message Structure
اسلاید 68: General Header FieldsCache controlConnectionDataForwardedKeep aliveMIME versionPragmaUpgrade
اسلاید 69: Request MethodsRequest-Line = Method <SP> Request_URL <SP> HTTP-Version <CRLF>Methods:OptionsGetHeadPostPutPatchCopyMoveDeleteLinkUnlinkTraceWrappedExtension-method
اسلاید 70: Request Header FieldAcceptAccept charsetAccept encodingAccept languageAuthorizationFromHostIf modified sinceProxy authenticationRangeReferrerUnlessUser agent
اسلاید 71: Response MessagesStatus line followed by one or more general, response and entity headers, followed by optional entity bodyStatus-Line = HTTP-Version <SP> Status-Code <SP> Reason-Phrase <CRLF>
اسلاید 72: Status CodesInformationalSuccessfulRedirectionClient errorServer error
اسلاید 73: Response Header FieldsLocationProxy authenticationPublicRetry afterServerWWW-Authenticate
اسلاید 74: Entity Header FieldsAllowContent encodingContent languageContent lengthContent MD5Content rangeContent typeContent versionDerived fromExpiresLast modifiedLinkTitleTransfer encodingURL headerExtension header
اسلاید 75: Entity BodyArbitrary sequence of octetsHTTP transfers any type of data including:textbinary dataaudioimagesvideoInterpretation of data determined by header fields Content encoding, content type, transfer encoding
اسلاید 76: Required ReadingStallings chapter 19WWW ConsortiumASN.1 Web site
نقد و بررسی ها
هیچ نظری برای این پاورپوینت نوشته نشده است.