Communication in Distributed Systems
Tom Kelliher, CS43
Feb. 22, 1996
A set of rules followed by two processes (systems, people) which are
communicating. The protocol governs how the communication is carried out.
Examples:
- A classroom
- The dinner table
- A diplomatic meeting
Circuit:
The pathway of communication between two computers. It may be a single
wire, or a set of wires connected via switches (routers, gateways, bridges,
etc.). The circuit may be dedicated or virtual.
Connection-Oriented protocols (TCP)
- Circuit set-up overhead
- Telephone service
Connectionless protocols (IP, UDP)
- US mail service
- Packet, message (store and forward) switching
(Open Systems Interconnection Reference Model)
Seven layered abstract model of a protocol stack:
Advantages: modularity
Disadvantages: call overhead; size increases due to added headers, trailers
- Switching levels, transmission rate
- Duplex
- Type of connector, cable
Ethernet:
- 10BaseT (UTP, 10Base2 (thinnet), 10Base5 (thicknet), 10BaseF (fiber)
- 10, 100Mbps
ATM:
- Fiber, SONET, Cat 5 UTP
- 45, 100, 155, 622Mbps; 2.5Gbps
- Partition the bit (packet) stream into frames
- Append checksums for error detection
- ``Guarantees'' that a frame makes ``one hop'', not that it's seen at
the higher layers
- Routing multi-hop messages
- Connection-Oriented: X.25
- Connectionless: IP
- End-To-End (possibly multiple-hops) reliability
- Partition the message stream into packets
- Message reassembly if built on a connectionless network layer
protocol
- Connection-Oriented: TCP
- Connectionless: UDP
- Additional reliability features
- Often, not implemented (because it's thought of as the user process)
``Library''-type functionality
- Compression
- Encryption
- Character code conversion
User- System-Level utilities:
- ftp
- telnet, rlogin
- SMTP
- NFS
- DNS
Some of the protocols:
- Link layer --- NIC, device driver
- Network layer --- Routing, ``hop-by-hop'' messages
- Transport layer --- ``end-to-end'' messages
Message transmission example:
- Repeaters/Hubs --- physical layer
- Bridges/Switches --- data link layer (ethernet)
- Routers --- network layer (protocol specific)
- Gateways --- protocol conversion
Form:
- 32-bit, dotted decimal
- different from ethernet address (ARP, RARP)
- Class A: 0, 7 bit netid, 24 bit hostid
0.0.0.0 to 127.255.255.255
- Class B: 10, 14 bit netid, 16 bit hostid
128.0.0.0 to 191.255.255.255
- Class C: 110, 21 bit netid, 8 bit hostid
192.0.0.0 to 223.255.255.255
- Domain Name System
- Data
- Application layer
- TCP/UDP layer --- TCP frame
- IP layer --- IP datagram
- Ethernet layer --- ethernet frame: 46--1500 bytes (MTU)
Demultiplexing
How do processes on separate machines communicate?
- Client/Server
- ``Well-known'' addresses
- Multiple telnet clients
Thomas P. Kelliher
Wed Feb 21 17:07:49 EST 1996
Tom Kelliher