Chapter 2 Flashcards
What are Characteristics of Clients (client server architecture)
Contact/communicate with server
May have infrequent connections
May have dynamic IP addresses
Do not communicate directly with other clients
What are Characteristics of servers in Client-Server architecture
Always-on host
Permanent IP address
Often located in data centers for scaling
Examples are HTTP IMAP and FTP
What are characteristics of peer-peer architecture
No always-on server
Random end systems directly communicate
Peer request service from other peers, provides service in return to other peers
Self scalability: new peers bring new service capacity,
as well as new service demands
Peers are randomly connected and change IP addresses
Complex management
What is a Client Process
it is a process that initiates communication
What is a Server Process
it is a process that waits to be contacted
What is a Process
It is a program running within a host
What is inter-process communication
it is the mechanisms and techniques that allow different programs or processes running on a computer to share data, synchronize their activities, and coordinate their operations
Characteristics of Process communicating
Within the same host, two processes communicate using inter-process communication which is defined by the OS
Processes in different hosts communicate by exchanging messages
What is a Socket
it is a software endpoint that allows two programs to communicate over a network, which acts as a unique identifier for each end of a communication link, by combining an IP address and port number.
What is an identifier
it is any data that uniquely identifies a network entity, like a device, user, or process, which enables communication and resource management across the network. Identifiers include both IP address and port numbers that are associated with the process on host.
What are the type of HTTP message exchanges
Request
Response
What are Open Protocols
They are publicly accessible, non restricted standards for communication, which allows for devices from different manufacturers for smooth interactions without business restrictions or licensing fees. examples include HTTP and SMTP
What are Proprietary protocols
It is a communication protocol that is owned and controlled by a single organisation or vendor, which makes it not open for public use or implementation without their permission. Examples include Zoom and Microsoft Teams
What Transport services does an app require
Data Integrity
Timing
Throughput
What are Elastic apps
They are applications that can dynamically adjust their data transmission rate to maximise throughput especially when facing network delays, packet loss, or bandwidth limitations. This makes them “TCP-friendly”.
What is Data intergrity
It refers to the accuracy, consistency and reliability of data throughout its lifecycle, to ensure it remains unaltered and trustworthy for its intended purpose.
What is UDP
User Datagram Protocol (UDP) is a connectionless, unreliable transport layer protocol that is used for sending data packets across a network. It prioritises speed and minimizing the resources used by network protocols over guaranteed delivery.
What are Characteristics of TCP services
Reliable transport between sending and receiving process
Flow control: sender won’t overwhelm receiver
Congestion control: throttle sender when network overloaded
Does not provide: timing, minimum throughput guarantee, security
Connection-oriented: setup required between client and server processes
What are Characteristics of UDP services
Unreliable data transfer between sending and receiving process
Does not provide: reliability, flow control, congestion control, timing, throughput guarantee, security, or connection set up.
What are the differences between TCP and UDP
TCP is a connection-oriented protocol that is designed to be reliable and ensure data delivery in order. UDP on the other hand is a connectionless protocol that prioritises speed, sacrificing reliability for faster transmissions.
What are some applications UDP used for
Online gaming, streaming media, and voice over IP (VoIP) services and applications where speed is prioritised and occasional packet loss is acceptable.
What are some applications TCP is used for
applications that require reliable, in-order data delivery such as web browsing (HTTP), email (SMTP), file transfer (FTP), and secure shell (SSH)
What is HTTP
Hypertext transfer protocol (HTTP) is an application layer protocol that is the primary protocol used for the transmission of data across the internet.
Does HTTP remember/maintain information about past client requests
No it is “Stateless” it does not maintain information about previous client requests