240 likes | 356 Vues
This overview explores the essential concepts of distributed systems protocols, including their definitions, purposes, and organization within a protocol stack. It highlights the significance of inter-process communication (IPC) and the differentiation between connection-oriented and connectionless protocols. Readers will learn about the OSI reference model, the role of layers, and how protocols enable reliable communication between different systems. Key elements such as error detection, message structure, and interface data units are also discussed, emphasizing the importance of layered protocols in networking.
E N D
ITEC801Distributed Systems Protocols Coulouris chapter 3
Important Things • Things to get from this set of slides • What is a protocol? • What are protocols for? • Why we have many protocols • What is the difference between connection-oriented and connectionless Protocols
Protocols • Inter-process communication is at the heart of distributed systems • IPC depends on protocols • a protocol is simply the rules by which the communication is carried out • a network communications protocol defines all the messages (and their ordering) for a communication Protocols
Protocol • Protocol definitions include • Error detection • Message length • Message structure • etc • Protocol implementations may be in hardware or software Protocols
How Do Protocols Work? • Transmission of data over network broken down into discrete systematic steps • At each step, certain actions take place • Each step has its own rules and procedures which cannot take place at any other step Protocols
Protocol Functioning • Steps must be carried out in a consistent order on every computer in the network • Sending Computer: Steps carried out-Top down. • Receiving Computer: Steps carried out bottom-up. Protocols
Protocols Protocols
Protocol • There are many protocols • Each protocol has a different purpose and accomplishes different task • Several protocols work together in what is known as a Protocol Stack • Levels of the protocol stack map on to layers of the OSI model Protocols
Layered Protocols • Computer network protocols are layered • each layer has its own function • for example: • Network level: IP • Transport level: TCP. • Application level • RPC • Remote method Invocation (RMI) • Message oriented Middleware (MOM) Protocols
Internet Protocols (some) Upper Layers Telnet SNMP User apps User apps HTTP TFTP FTP TCP UDP Transport IP ICMP Network Protocols
Need for a Protocol Stack • Require a high degree of cooperation between two computer systems that communicate • Activities include: • Path determination/conveying control information to network • Ascertaining destination status • Ascertaining destination application status • Determining format Protocols
Need for a Protocol Stack • Single module versus multiple modules. • We could implement all communication in a single piece of software • too unwieldy and hard to maintain Protocols
Internet Protocol Stack: TCP/IP • Standard routable enterprise networking protocol • Technology for connecting dissimilar systems Protocols
TCP/IP layers: • Application: user interface to Internet. • Transport: • Transmission Control Protocol (TCP): Connection oriented reliable communications for applications. • User Datagram Protocol (UDP): connectionless • Network: Internet Protocol: For routing and addressing. (RFC 791) • Network Interface layer: Inserting/removing frames from network. Protocols
OSI Reference Model • Defines seven layers • Physical: Concerned with transmission of unstructured bit stream over physical medium. • Data link: Reliable transmission of information across physical link. • Network: Provides upper layer independence from data transmission/switching technologies. Protocols
OSI Reference Model • Transport: reliable transfer of data between end points. • Session: Control structure for communication between application. • Presentation: Independence to application process from data representation. • Application: Access to environment. Protocols
OSI Reference Model Protocols
Connection-Oriented versus Connectionless • Protocols can be connection–oriented OR Connectionless • Connection oriented: A logical connection is set up between sender and receiver before they actually communicate • Connectionless: Sender and receiver communicate without establishing a logical connection Protocols
Connection-Oriented • Setup phase when the connection is created • Communication phase during which the communications happens • Pull-down phase when the connection is terminated Protocols
Protocol Terminology • Entity: active elements in each layer • Peer Entities: Entities in same layer but on different machines • Entities in layer N implement a service used by layer N+1 • N layer: Service provider • N+1 layer: service user Protocols
Protocols • Each layer provides service at an access point : SAP (Service Access Point) • Each SAP has a unique address that identifies it. • Agreed set of rules at Interface between any two layers Protocols
Protocols • Information block passed by layer N+1 to layer N through SAP: Interface Data Unit (IDU) • IDU Block= SDU (Service Data Unit) + Control (ICI) • ICI: Interface Control Information • SDU information passed along network to peer entity up to layer N+1 Protocols
Protocols • Control: some guidelines for layer N to do its Job. • Processing on SDU by layer N results in PDU (Protocol Data Unit) • PDU = SDU+ Header • PDUs generated at different layers given a different name Protocols
Relation Between Layers at an Interface ICI SDU Layer N+1 SAP Interface ICI SDU Layer N Header SDU N-PDU Protocols