Protocols Flashcards
What do protocols do?
determine the way of operation and define the procedure and rules that are governing
What is a network protocol?
a predefined set of messaging rules and message structures that the communicating entities in a computer network must follow
What is a protocol layer?
A group of related functions that are performed in a given level of a hierarchy of groups of related functions
What is protocol layering?
The division of complex network protocols into simple network protocols
How do protocols in different levels make use of each other?
Protocols in higher levels make use of protocols in lower levels
What is a layered protocol stack?
A set of horizontal protocols together with the interactions between the different layers
What is a vertical/monolithic protocol design? What does it avoid? When is it preferable?
An alternative protocol design that does not use protocol layering, and a single protocol instead governs everything
Overhead created by layering
Where resource management and optimisation are the main concerns
What are the two most widely-known network protocol stacks?
Internet TCP/IP Model
Open Systems Interconnection (OSI) Reference Model
How many layers does the Internet Model consist of? What are these layers ordered from highest to lowest?
Five Layers:
Application, Transport, Network, Link, Physical
What does the Application Layer of the Internet Model do? What does it ensure if all applications have the same underlying protocol?
Provides message formats and a well-defined interface to applications/software running on end devices
That they all communicate to web servers using the same rules and message formats
What are the packets of the Application Layer called? What are they? For example?
Messages
Structured data units exchanged between application programs across a network
HTTP Request Message:”Browser asks the server: ‘Please send me the homepage (index.html).
‘“HTTP Response Message:”Server replies to the browser: ‘Here is the homepage content.’”
SMTP Email Sending Message:”Email client says to the mail server: ‘I want to send an email from alice@example.com to bob@example.com.’
“SMTP Email Received Message:”Mail server says to the email client: ‘You have a new email from alice@example.com.’
FTP File Download Request:”User says to the FTP server: ‘I want to download the file report.pdf.’
“FTP File Download Response:”FTP server replies: ‘Here is the file report.pdf.’
DNS Query Message:”User’s computer asks the DNS server: ‘What is the IP address of www.example.com?’
“DNS Response Message:”DNS server replies: ‘The IP address of www.example.com is 192.0.2.1.’”
What is the Transport Layer responsible for? What does it keep track of and what does it do with it?
Responsible for the transport of application layer messages between remote processes
Keeps track application data from several processes and packages it in transport layer packets
What are the processes between which the transport layer ensures the transport of messages?
Programs or applications running on computers that communicate over a network
What are Transport Layer packets called? Crucially, what do these include?
Segments
Labelling
What are further responsibilities of the Transport Layer?
Reliable Data Transfer
Flow Control
Congestion control
What is flow control?
Matching the speed between the sender and the receiver
What is congestion control?
Keeping the network load below capacity
What is the network layer responsible for? What is a network layer packet called?
End-to-end packet delivery between two devices that are attached to different (sub)networks
Datagram
What is a network layer packet called? What is its payload?
Datagram
Transport layer segments
What are the other functions of the network layer?
Logical Addressing
Routing
Error Handling
Quality of Service Control - capability of networks to provide different priority levels to different types of network traffic, ensuring that certain traffic receives preferential treatment over others
What does a datagram pass through on its route?
Many routers and link between routers
What is the primary responsibility of the data link layer? What are its other responsibilities? What are the two types of links?
Carrying network layer datagrams to the next node (either a router or the destination host) on the end-to-end route
Physical addressing, medium access control (MAC), link flow control, and error handling
Wired, Wireless
What is the set of all devices interconnected via the link layer called?
Network/Subnet
What is the primary responsibility of the physical layer?
The transmission of individual bits from one node to the next
What are link layer packets called?
Frames
What is the OSI Reference Model? What are its two additional layers?
An earlier model than the Internet Model that included two additional layers
Presentation and Session Layers
Where does the Presentation Layer come? What is its primary responsibility? What are further, possible responsibilities?
Directly under Application Layer
Deals with differences in data representations of communcating entities by translating different character sets of hosts using different operating systems to each other
Compression/Decompression of Data and Encryption/Decryption
Where is the Session Layer situated? What is its primary responsibility?
Underneath the Presentation Layer
Establishes, maintains, and closes communication sessions between remote processes
What are the four primary principles of protocol layering?
- Create a layer when a different abstraction is needed
- Implement in each layer a well-defined service
- Minimise information flow across interfaces
- Choose services of the layer by accounting for internationally-standardised protocols
What is a service in protocol layering? How does it differ from a protocol?
A set of primitive operations that a layer provides to the layer above it
Defines what operations are performed, but not how they are performed (which is what protocols do)
What is the purpose of a service interface?
Defining how to access the services of the lower layer
What is data encapsulation in protocol layering? What layers is it implemented by?
The practice of packaging data from higher layers of the Internet model within specific headers and trailers as it progresses downward through the protocol stack
All layers besides Physical Layer (as this only deals with bits and not data units)
What are the four sources of delay in packet switched networks?
- Nodal Processing Delay
- Queueing Delay
- Transmission Delay
- Propagation Delay
What causes nodal processing delay? For example?
Caused by routers processing every packet they receive in one of their network interfaces
Checking for bit errors inside the packet and determining the output link at which the packet needs to be transmitted
What causes queueing delay? Why does it exist? What does it depend on?
Caused by packets having to wait in line in a packet queue at the selected outgoing link of the router to be transmitted
Since packets are transmitted one by one
Network packet traffic
What is throughput? What must it be greater than?
The rate (bits/second) at which the bits that are pumpted into the network by the sender reach the destination
The minimum processing requirements of a given server
What is transmission delay? What does it depend on? What is the transmission delay of L bits at throughput R bps?
Caused by the store and forward behaviour employed by routers
Throughput of the link
L/R seconds
What is propagation delay? What is it equal to? When is it especially significant?
The time it takes for a single bit to take the distance across a wire or wireless medium
Distance divided by propagation speed
For very long links
What is total nodal delay equal to?
The sum of the nodal processing delay, queueing delay of the node, transmission delay onto the next link, and the propagation delay experienced on that link
What is end-to-end network packet delay? What is it equal to?
The time difference from the transmission instance of the first bit of a packet from the source until the reception of the last bit by the destination
The sum of all four delay components for all nodes passed through before reaching the destination
When does data packet loss occur? For example?
If a packet arrives to a full queue at a router, as the packet must be discarded
If total delay between source and destination is too high, this may also cause situations which effectively translate to data loss - a video frame which takes longer to pass then its playback time
What is a bottleneck link?
A unique link on an end-to-end path that constrains max throughput
That is, a segment of a network path where the capacity (bandwidth) is significantly lower than other segments along the same path