Presentation is loading. Please wait.

Presentation is loading. Please wait.

CSE331: Introduction to Networks and Security Lecture 12 Fall 2002.

Similar presentations


Presentation on theme: "CSE331: Introduction to Networks and Security Lecture 12 Fall 2002."— Presentation transcript:

1 CSE331: Introduction to Networks and Security Lecture 12 Fall 2002

2 CSE331 Fall 20022 Announcements Reminder: –Project 1 due on Monday, Oct. 7 th –In-class midterm Wednesday, Oct. 9 th Monday’s Class –Further Topics in Networking –Review / Question & Answer

3 CSE331 Fall 20023 Recap Remote Procedure Call (RPC) –Java’s remote method invocation (RMI)

4 CSE331 Fall 20024 Today RMI Demo Application-level Protocols –SMTP: Simple Mail Transfer Protocol –HTTP: HyperText Transfer Protocol –SNMP: Simple Network Management Protocol

5 CSE331 Fall 20025 Java RMI Permissions Socket permissions in a policy file // policy.pol grant { permission java.net.SocketPermission " :1024-65535", "connect,accept,listen,resolve"; permission java.net.SocketPermission "*:1099", "connect,resolve"; };

6 CSE331 Fall 20026 Running Java programs with policies java –Djava.security.policy=policy Program

7 CSE331 Fall 20027 Protocol Stack Revisited Application Presentation Session Transport Network Data Link Physical SMTP, HTTP, SNMP So far…

8 CSE331 Fall 20028 Common Features SMTP, HTTP, SNMP –Request/Reply protocols built on TCP or UDP –Designed to handle a fixed set of messages –Companion data format –Many applications Protocol Data Format Programs SMTP RFC 822 and MIME Pine, NSMail, Eudora,… HTTP HTML Explorer, Netscape, Opera SNMP MIB snmpget, snmpset,…

9 CSE331 Fall 20029 SMTP: Simple Mail Transfer Protocol Data format RFC822 –Adopted around 1982, extended 1993, 1996 –http://www.faqs.org/rfcs/rfc822.htmlhttp://www.faqs.org/rfcs/rfc822.html –ASCII text –Header and Body

10 CSE331 Fall 200210 RFC822 Headers -terminated lines containing pairs of form type: value Many valid Header types Some headers filled out by client –To: stevez@cis.upenn.edu –Subject: CSE331 Others filled out by mail delivery system –Date: –Received: –From:

11 CSE331 Fall 200211 MIME: Multipurpose Internet Mail Extensions Consists of three parts 1.Additional RFC822 Headers MIME-Version: Content-Type: Content-Transfer-Encoding: 2.Content types (and subtypes) text/plain text/rich image/gif application/postscript Multipart/mixed; boundary=“…”

12 CSE331 Fall 200212 MIME Encoding Mail systems assume ASCII –Only 64 valid characters A-Z, a-z, 0-9, +, / Some datatypes include arbitrary binary data (e.g. JPEG) Base64 encoding –3 bytes of data map to 4 ASCII Characters –A=0,B=1,… Also 7bit ASCII encoding –Human readable

13 From: Steve Zdancewic MIME-Version: 1.0 To: stevez@cis.upenn.edu Subject: Example Mail Content-Type: multipart/mixed; boundary="------------020307000708030506070607" This is a multi-part message in MIME format. --------------020307000708030506070607 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit This is the body. --------------020307000708030506070607 Content-Type: text/plain; name="example.txt" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="example.txt" Hello --------------020307000708030506070607 Content-Type: image/jpeg; name="doc.jpg" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="doc.jpg" /9j/4AAQSkZJRgABAQEASABIAAD//gAXQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q/9sAQwAIBgYH BgUIBwcHCQkICgwUDQwLCwwZEhMPFB0aHx4dGhwcICQuJyAiLCMcHCg3KSwwMTQ0NB8n OT04…

14 CSE331 Fall 200214 SMTP Mail Reader –User edits/reads/search e-mail Mail Daemon –Process running on each host (port 27) –Uses SMTP/TCP to transmit mail to daemons on other machines –Most daemons based on Berkley’s sendmail Mail Gateways –Store and forward e-mail (much like IP router) –Buffers on disk –Attempts to resend

15 CSE331 Fall 200215 SMTP Mail Gateways No need for explicit host in e-mail address –User can receive mail at different machines Recipient’s machine may not be up –Mail gateway can hold message for later Mail reader Mail daemon Mail daemon Mail reader Mail daemon Mail gateway SMTP/TCP

16 CSE331 Fall 200216 SMTP Dialogs Client posts commands –HELO, MAIL, RCPT, DATA, QUIT Server responds with code and human- readable explanation

17 17 Example SMTP Dialog HELO seas.upenn.edu 250 Hello daemon@smtpauth.seas.upenn.edu [158.130.12.180] MAIL FROM: 250 OK RCPT TO: 250 OK RCPT TO: 550 No such user here DATA 354 Start mail input; end with. Blah blah blah…. 250 OK QUIT 221 Closing Connection

18 CSE331 Fall 200218 HTTP: HyperText Transfer Protocol Text-oriented protocol on top of TCP http://www.w3.org/Protocols/ Messages have the form START_LINE MESSAGE_HEADER MESSAGE_BODY

19 CSE331 Fall 200219 HTTP Request Messages START_LINE: Operation URL Version –Absolute URL: GET http://www.cis.upenn.edu/ HTTP/1.1 Using the MESSAGE_HEADER –Relative URL: GET / HTTP/1.1 Host: www.cis.upenn.edu

20 CSE331 Fall 200220 HTTP Request Operations OperationDescription OPTIONS get info about server options GET retrieve document specified by URL HEAD retrieve metainfo document by URL POST give info to the server PUT store document under specified URL DELETE delete specified URL TRACE loopback request message CONNECT for use by proxy servers

21 CSE331 Fall 200221 HTTP Response Messages START_LINE Version Code Reason –HTTP/1.1 202 Accepted –HTTP/1.1 404 Not Found CodeTypeExample Reasons 1xxInformationrequest received 2xxSuccessaction successfully accepted 3xxRedirectionfurther action must be taken 4xxClient Errorrequest contains bad syntax 5xxServer Errorserver didn’t fulfill valid request

22 CSE331 Fall 200222 HTTP Caching Store a copy of the data closer to the client –Browser caches web pages –ISPs can cache pages –Sites can cache pages at proxies How to cache changing web pages? –Server assigns expiration date using Expires header –Set of cache directives that specify whether documents can be cached, for how long, etc. –Not easy to cache dynamic content

23 CSE331 Fall 200223 SNMP: Simple Network Management Protocol Specialized request/reply protocol –Two basic operations: GET and SET –Runs on UDP Companion data: Management Info. Database (MIB) –Stores information about various protocols running on nodes in the network Example uses: –Measure # packets dropped/received –Watch for faulty hardware/software –Determine # IP datagram reassemblies that are aborted

24 CSE331 Fall 200224 MIP-II Variables System –Where located, Uptime, Name Interfaces –Physical addresses, # packets sent/received ARP –Contents of address translation table IP –Routing table –# packets forwarded –Reassembly statistics –Drop counts TCP –# of passive/active opens –# timeouts, default timeout settings


Download ppt "CSE331: Introduction to Networks and Security Lecture 12 Fall 2002."

Similar presentations


Ads by Google