Chapter 6: Computer Networks

0.0(0)
studied byStudied by 1 person
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/198

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 11:57 PM on 1/9/24
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

199 Terms

1
New cards

Transport Layer

The layer of the protocol hierarchy that provides data transport from a process on a source machine to a process on a destination machine with a desired level of reliability.

2
New cards

Protocol Hierarchy

The layered structure of protocols where each layer provides specific services to the layer above it.

3
New cards

Transport Service

The goal of the transport layer to provide efficient, reliable, and cost-effective data transmission service to its users, normally processes in the application layer.

4
New cards

Connection-Oriented Transport Service

A type of transport service that establishes, transfers, and releases connections between processes, similar to the connection-oriented network service.

5
New cards

Connectionless Transport Service

A type of transport service that does not establish connections and is similar to the connectionless network service.

6
New cards

Transport Service Primitives

Operations provided by the transport layer to application programs to establish, use, and release connections, such as LISTEN, CONNECT, SEND, RECEIVE, and DISCONNECT.

7
New cards

State diagram

A visual representation of the different states and transitions in a system.

8
New cards

Connection establishment

The process of establishing a connection between two entities in a network.

9
New cards

Connection release

The process of terminating a connection between two entities in a network.

10
New cards

Primitives

Basic operations or functions provided by a programming interface.

11
New cards

Socket

A communication endpoint that allows processes to communicate over a network.

12
New cards

Bind

Associate a local address with a socket.

13
New cards

Listen

Announce willingness to accept connections and specify the size of the connection queue.

14
New cards

Accept

Passively establish an incoming connection.

15
New cards

Connect

Actively attempt to establish a connection.

16
New cards

Send

Send data over a connection.

17
New cards

Receive

Receive data from a connection.

18
New cards

Close

Release a connection.

19
New cards

File descriptor

A unique identifier used to access a file or socket in a computer system.

20
New cards

IP address

A unique numerical label assigned to each device connected to a computer network.

21
New cards

Port

A communication endpoint in an operating system that identifies a specific process or service.

22
New cards

Chunk size

The size of data blocks used for file transfer.

23
New cards

Pending connections

The number of connections that can be held in a queue before additional ones are discarded.

24
New cards

Read

Retrieve data from a file or socket.

25
New cards

Write

Store data to a file or socket.

26
New cards

File

A named collection of data stored on a computer.

27
New cards

Socket

A communication endpoint that allows processes to communicate with each other over a network.

28
New cards

setsockopt

A function used to set options for a socket.

29
New cards

bind

A function used to associate a socket with a specific IP address and port number.

30
New cards

listen

A function used to announce the server's willingness to accept incoming calls and specify the maximum number of pending connections.

31
New cards

accept

A function that blocks the server until a client tries to establish a connection and returns a socket descriptor for reading and writing.

32
New cards

TCP connection

A bidirectional connection established between a client and a server using the TCP protocol.

33
New cards

fatal

A procedure that prints an error message and exits the program.

34
New cards

NSAP

Network Service Access Point, an endpoint in the network layer.

35
New cards

TSAP

Transport Service Access Point, an endpoint in the transport layer.

36
New cards

Portmapper

A special process that maps service names to TSAP addresses in a dynamic addressing scheme.

37
New cards

Initial connection protocol

An alternative scheme where a special process server acts as a proxy for less heavily used servers, allowing them to be created on demand.

38
New cards

Inetd

The process server on UNIX systems that listens to a set of ports and waits for connection requests.

39
New cards

Connection request

The request made by potential users of a service to establish a connection, specifying the TSAP address of the service they want.

40
New cards

Process server

The server that receives the incoming connection request and spawns the requested server, allowing it to inherit the existing connection with the user.

41
New cards

Delayed and duplicate packets

The problem caused by network congestion, where packets can be lost, delayed, corrupted, or duplicated, leading to complications in establishing connections.

42
New cards

Throwaway transport addresses

The approach of generating a brand new transport address each time it is needed, discarding it after the connection is released to prevent delayed duplicate packets from reaching a transport process.

43
New cards

Unique identifier

A sequence number incremented for each connection established, used to identify and discard delayed duplicate packets.

44
New cards

Packet lifetime restriction

Techniques such as restricted network design, hop counters, or timestamping to limit the maximum lifetime of packets, preventing delayed duplicates from causing issues.

45
New cards

Tomlinson's method

A method that labels segments with sequence numbers that will not be reused within a certain time period, ensuring that delayed duplicates of old packets are rejected by the destination.

46
New cards

Three-way handshake

The process of establishing a connection by exchanging three messages between the source and destination, ensuring that both parties are ready to communicate.

47
New cards

Three-way handshake

A connection establishment protocol introduced by Tomlinson (1975) that involves one peer checking with the other to verify the current connection request.

48
New cards

Sequence number

A number chosen by a host to identify the order of segments in a connection.

49
New cards

ACK segment

A segment sent by a host to acknowledge the receipt of a sequence number and announce its own initial sequence number.

50
New cards

Initial sequence number

The sequence number chosen by a host to start the transmission of data segments in a connection.

51
New cards

Data segment

A segment containing actual data sent by a host in a connection.

52
New cards

Delayed duplicate

A duplicate segment that arrives at a host without the sender's knowledge due to delays in the network.

53
New cards

Connection release

The process of terminating a connection between two hosts.

54
New cards

Asymmetric release

A style of terminating a connection where one party hangs up, resulting in an abrupt disconnection that may cause data loss.

55
New cards

Symmetric release

A style of terminating a connection where each direction of the connection is released independently, allowing a host to continue receiving data even after sending a DISCONNECT segment.

56
New cards

DISCONNECT segment

A segment sent by a host to initiate the release of a connection.

57
New cards

Four-way handshake

A release protocol that involves the exchange of DISCONNECT and ACK segments between two hosts to ensure a proper disconnection.

58
New cards

Half-open connection

A connection state where one side has released the connection, but the other side is still active, resulting in an incomplete and unacceptable state.

59
New cards

Timer

A mechanism used by transport entities to measure the time it takes for a segment to be sent and received.

60
New cards

Dummy segment

A segment that is transmitted to keep the other side from disconnecting when the timer expires.

61
New cards

Automatic disconnect rule

A rule that automatically disconnects the transport entities if too many dummy segments are lost on an idle connection.

62
New cards

Transport user

The user of the transport layer who is responsible for deciding when to disconnect a connection.

63
New cards

Symmetric close

A type of connection close in TCP where each side independently closes its half of the connection with a FIN packet.

64
New cards

Asymmetric close

A type of connection close in TCP where the server sends a RST packet to abruptly close the connection.

65
New cards

Error control

The process of ensuring that data is delivered with the desired level of reliability, usually without any errors.

66
New cards

Flow control

The process of preventing a fast transmitter from overwhelming a slow receiver.

67
New cards

Error-detecting code

A code, such as a CRC or checksum, carried by a frame to check if the information was correctly received.

68
New cards

ARQ (Automatic Repeat reQuest)

A mechanism where a frame is retransmitted by the sender until it receives an acknowledgement of successful receipt from the receiver.

69
New cards

Sliding window protocol

A protocol that combines error control and flow control features and supports bidirectional data transfer.

70
New cards

End-to-end check

A checksum at the transport layer that protects a segment while it crosses an entire network path.

71
New cards

End-to-end argument

The principle that the transport layer check is essential for correctness, while the link layer checks are valuable for improving performance.

72
New cards

Bandwidth-delay product

The product of the bandwidth and the round-trip time of a connection, which determines the amount of data that can be stored at the receiver while a segment is being sent and acknowledged.

73
New cards

Buffering

The process of temporarily storing transmitted but unacknowledged segments at the sender and received segments at the receiver.

74
New cards

Buffer allocation

The process of dynamically allocating buffers for sliding windows at the sender and receiver.

75
New cards

Window size

A header field in TCP that carries buffer allocations from the receiver to the sender.

76
New cards

Dynamic window management

A mechanism where the sender requests a certain number of buffers, and the receiver grants as many as it can afford, allowing the sender to transmit segments up to the allocated window size.

77
New cards

Deadlock

A situation where a host is unable to proceed due to a lack of buffer allocation, often caused by lost control segments.

78
New cards

Memory

The amount of buffer space available in the receiver, which can limit the sender's data rate.

79
New cards

Buffer

A temporary storage space used to hold data or messages before they are processed or transmitted.

80
New cards

Flow control

A mechanism used to regulate the rate at which data is sent from the sender to the receiver, preventing the receiver from being overwhelmed with data.

81
New cards

Congestion control

A mechanism used to regulate the rate at which data is sent into the network to prevent congestion and ensure efficient use of available bandwidth.

82
New cards

Carrying capacity

The maximum number of packets or segments that can be exchanged between hosts based on the capacity of the network and the number of available paths.

83
New cards

Sliding window

A flow control mechanism where the sender adjusts the size of the window (number of packets allowed to be sent without acknowledgement) based on the network's carrying capacity.

84
New cards

Multiplexing

The process of sharing a single network connection or address among multiple transport connections or conversations.

85
New cards

Inverse multiplexing

A mode of multiplexing where multiple network paths are used to distribute traffic among them, increasing effective bandwidth.

86
New cards

Crash recovery

The process of recovering from crashes or failures in hosts or routers, including retransmission of lost segments and reestablishment of connections.

87
New cards

Bursty Traffic

Traffic that occurs in bursts or irregular intervals.

88
New cards

Goodput

The rate of useful packets arriving at the receiver as a function of the offered load.

89
New cards

Delay

The time it takes for packets to travel from the sender to the receiver.

90
New cards

Offered Load

The amount of traffic being sent into the network.

91
New cards

Congestion Collapse

A state in which the network becomes overwhelmed with traffic and little useful work is being accomplished.

92
New cards

Onset of Congestion

The point at which the network starts to experience congestion.

93
New cards

Power

A metric proposed by Kleinrock to identify the point at which the network achieves the best performance, calculated as the load divided by the delay.

94
New cards

Max-Min Fairness

An allocation of bandwidth that ensures increasing the bandwidth for one flow will only make the situation worse for flows that are less well off.

95
New cards

Convergence

The process of the congestion control algorithm rapidly reaching a fair and efficient allocation of bandwidth.

96
New cards

Flow Control

Regulating the sending rate to prevent packet loss due to insufficient buffering at the receiving end.

97
New cards

Congestion Control

Regulating the sending rate to prevent packet loss due to insufficient capacity in the network.

98
New cards

Explicit Feedback

Feedback provided by the network that explicitly informs the sender about the rate at which they may send.

99
New cards

Implicit Feedback

Feedback provided by the network that indirectly indicates congestion or the need to slow down, without specifying the exact rate to send at.

100
New cards

FAST TCP

A congestion control protocol that measures round trip delay to avoid congestion.