Layered Protocols
Each layer concentrates its own task. Boottom layers don’t change too much but top layers change a lot.
What’s in the layer header and trailer:
Header:
- lenght of packet (fixed length or variable)
- synchronization (a few bits that matchup network with packet)
- packet #
- protocol: e-mail, web, http
- destination address
- source
Trialer:
- CRC checksum: mathmatic way to tell all massage is sent
Internet protocols
put application on application layer not any other layer. (end-to-end argument).
FTP: file transfer protocol. Process: (FTP client)shell -> freq msgs(authentication, format, defined by FTP protocol) -> (FTP server)request
Internet Transport Protocol Service:
- TCP: request connection before send massages; back thinks back doesn’t respond fast then will slow down to send request, which is implemented by back number in packet. Not only keep track about the back respond, but also sequence and rate. 1,2 come back, 3 misses, then send 3 transforer again. eg, email service. Because care about data loss.
- UDP: Not reliable, back acknowldge and end-to-end connection send back. Only drop the packet, no commit comes back. So this is fast, cheap and exists data loss. The quality gets worse once distance getting longer. In local network, the data is not easy to get lost, so UDP can be applied.
main differences: distance, data loss, respond time
Internet address structure (IP address)
know what the massgaeg is to do, efficient, flexible (multi ways to minipulate)
Version 4 is most popular.
how to transfer data through the network
hardware-circuit switching
reserve port for paticular connection, if more connection required but no more port is available, the connection has to wait until one port finishes. There is a limit how many connection can be set.
software-packet switching
no end-to-end set up, no particular reservition. If you are using one port, even only use part of it, nobody can use it.
packet switching vs circuit switching
transmission delay: not wire delay, it means the time of query and drop the masgs.
propagation delay: wire latency.
Reference material:
Book: Distributed Systems, Third edition, Version 3.02(2018), Maarten van Steen and Andrew S. Tanenbaum.
Lectures: University of Waterloo, CS 454/654 (Distributed System), 2020 winter term, Professor Khuzaima Daudjee.