Chapter 2: Application layer Flashcards
(141 cards)
What do you create by:
Write programs/software that will run on different/multiple end systems and communicate over networks
A network application
Why don’t we need to write software for network-core devices?
Network-core devices don’t run on user applications
Is this the server or the client side in a client-server architecture?
Always-on host. Permanent and fixed IP address
Server side
Is this the client or server side in a client-server architecture?
Contact & communicate with servers. May be intermittently connected. May have dynamic IP addresses.
Client
Do clients communicate directly with each other in a client-server architecture?
No!
Is this the client-server or Peer-to-Peer (P2P) architecture?
No always-on server.
End systems communicate directly.
Peers are intermittently connected and change IP addresses.
Peers request service from other peers & provide service in return to other peers. Have self-scalability.
Peer-to-Peer (P2P)
What aspect of the P2P architecture has the following definition:
New peers bring new service capacity, as well as new service demands
Self-scalability
Give the definition:
Program running within a host / end system
Process
Describe client and server processes
Client processes initiate communication. Server processes wait to be contacted.
What two types of processes are applications in P2P architectures simultaneously?
They can be both client and server processes
What do we call the interface between the process and the computer network?
The socket / Application programming interface (API)
When using the door analogy with a socket, what is it that ‘shoves’ a message out of the door?
Sending process
How many sockets are involved in the communication between processes?
- One on the sending side and one on the receiving side. Both acting as endpoints.
How do we address messages to processes?
By using an identifier for the process
What does the identifier of a process include?
IP address & port numbers associated with the process’ host
What layer protocol defines the following:
How an application’s processes, running on different end systems, pass messages to each other
Application-layer protocol
What aspect of a message has the following definition:
What fields in messages & how fields are delineated
Message syntax
What aspect of a message has the following definition:
Meaning of information in fields
Message semantics
What type of protocol is this?
Defined in RFCs & everyone has access to protocol definition
Open protocol
What type of protocol is this?
Protocol that’s intentionally unavailable in the public domain
Proprietary protocols
What type of services, needed by applications, have the following requirements?
Reliable data transfer, timing, throughput and security
Transport services
Which Internet transport protocol is this?
Reliable data transfer service that is connection-oriented; has the client and server exchange transport-layer control information with each other before the application-level messages begin to flow. Provides flow and congestion control.
Transmission Control Protocol (TCP)
Give the definition:
An aspect of TCP that ensures that a sender won’t overwhelm a receiver
Flow control
Give the definition:
A form for control implemented by TCP where a sender’s throttled when network’s overloaded
Congestion control