DOC PREVIEW
USF CS 682 - Distributed Software Development

This preview shows page 1-2-3-20-21-40-41-42 out of 42 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Outline Outline TCP/IP in 30 minutes Layering The OSI seven-layer model The OSI seven-layer model Message transmission across layers Message transmission across layers Layers and packets Physical Layer Data Link Layer Network Layer Network Layer Transport Layer Session Layer Presentation Layer Application Layer An example: HTTP HTTP requests HTTP Summary Outline What is a Distributed System? Advantages of a distributed system Advantages of a distributed system Disadvantages of distributed systems Design Issues Transparency Transparency Flexibility Reliability Performance Types of process failure Types of Communication Failure Communication paradigms Communication paradigms Dealing with time Global time servers Global time servers Logical time SummaryDistributed SoftwareDevelopmentFundamentalsChris BrooksDepartment of Computer ScienceUniversity of San FranciscoDepartment of Computer Science — University of San Francisco – p. 1/??Outline•Networking overview•Seven-layer model•Intro to Distributed Systems•Characteristics•Desirable Properties•Dealing with TimeDepartment of Computer Science — University of San Francisco – p. 2/??Outline•Networking overview•Seven-layer model•Intro to Distributed Systems•Characteristics•Desirable Properties•Dealing with TimeDepartment of Computer Science — University of San Francisco – p. 3/??TCP/IP in 30 minutes•Goal: Understand how a network transmits messages atdifferent laye rs.•How is a network composed?•What really happe ns when Firefox opens a connection to aweb server?•Note: this will be an overview: for more details, take thenetworking class.Department of Computer Science — University of San Francisco – p. 4/??Layering•Modern network design takes advantage of the idea oflayering•A particular service or module is constructed as a black box.•Users of that serv ice do not need to know its internals, justits interface.•This makes it easy to later build new modules (or layers)that use the lower layers.•For example, H TTP is built on top of TCP.•A web browser does not ty pically need to worry aboutthe implementation of TCP, just that it works.•Unlike OO modules, the layers in a networke d systemcomprise protocols that span multiple machines.Department of Computer Science — University of San Francisco – p. 5/??The OSI seven-layer model•ISO (a standards body) developed a reference model calledOSI that defi nes the different layers needed forcommunication, and specifies which should do each job.•The goal is to produce an open protocol that allows forheterogeneous, extensible systems.•A protocol is a specification describing the order and formatof messages.•An open protocol is one in which all of this information ispublicly av ailable.Department of Computer Science — University of San Francisco – p. 6/??The OSI seven-layer model•Application•Presentation•Session•Transport•Network•Data Link•PhysicalDepartment of Computer Science — University of San Francisco – p. 7/??Message transmission across layers•An application (such as a web browser) wants to send amessage to another computer.•That application co nstructs a message and passes it to theapplication layer.•The application layer attaches a header to the message andpasses it to the presentation layer.•The presentation layer attaches a header and passes it tothe session layer, and so on.Department of Computer Science — University of San Francisco – p. 8/??Message transmission across layers•On the other end, the message is received by the physicallayer, who strips off the appropriate header and passes themessage up to the data link layer.•This continues until the message reaches the applicationlayer of the rece iv ing machine.•High-level layers don’t need to worry about lower-levellayers.•Lower-level layers treat everything from higher layers as datato be sent.Department of Computer Science — University of San Francisco – p. 9/??Layers and packets•Each layer constructs a packet containing a portion of thedata to be transmitted.•This packet has a data section, and a header.•The header contains origin and destination information,checksums, sequence numbers, and other identifyinginformation.•When a message is sent by TCP, a packet is constructedand passed down to the IP layer.•This entire packet then becomes the data portion of the IPpacket, which is passed down to the network layer, and soon.•On the other end, the lowest layer removes the header andchecks the data integrity, then passes the data portion up tothe next layer.Department of Computer Science — University of San Francisco – p. 10/??Physical Layer•This is the lowest-level layer, responsible for transmitting 0sand 1s.•Governs transmission rates, full or half-duplex, etc.•A modem works at the physical layer.•Lots of interesting problems at this level that we won’t getinto ...Department of Computer Science — University of San Francisco – p. 11/??Data Link Layer•The data link layer provides error handling for the physicallayer.•Individual bits are grouped together into frames.•A checksum is then computed to detect transmission errors.•The data link layer can then request a retransmission of anerror is detected.•Messages are numbered; receiv e r can requestre-transmission of any message in a sequence.•Each f rame is a separate, distinct message.•The Data link layer provides error-free transmission toupper-level layers.Department of Computer Science — University of San Francisco – p. 12/??Network Layer•The network layer is responsible for routing and flow control.•The network layer removes the data link header andexamines the resulting packet for a destination, and thenforwards it as appro priate.•the Internet Protocol (IP) is one of the best-knownnetwork-layer protocols.•Primary role: move packets from a sending host to areceiving host. This invo lv es:•Routing: determine the path that a packet should taketo get to its destination.•Forwarding: When an incoming packet is received, placeit on the output link that takes it to the nex t hop in itsroute.Department of Computer Science — University of San Francisco – p. 13/??Network Layer•A router c ontains a forwarding table - when an incomingpacket is re ceiv e d, the router compares it to this table todetermine where to send it next.•This is f orwarding.•These f orwarding tables are configured by means of arouting


View Full Document

USF CS 682 - Distributed Software Development

Documents in this Course
Load more
Download Distributed Software Development
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Distributed Software Development and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Distributed Software Development 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?