Basics of Networking Concepts
42 Questions
1 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

What is the formula for calculating latency?

Latency = Setup Time + Propagation + Transmit (A->S1) + Transmit (S1->B) + Switch Processing Time

What does the Delay x Bandwidth product represent?

  • Amount of data in flight (correct)
  • Latency measurement
  • Total packet loss rate
  • Transfer size
  • In a 1-byte message, bandwidth dominates latency.

    False

    Match the following socket functions with their use:

    <p>int socket(int domain, int type, int protocol) = Creating a socket int connect(int socket, struct sockaddr *addr, int addr_len) = Active open on client int bind(int socket, struct sockaddr *addr, int addr_len) = Passive open on server int accept(int socket, struct sockaddr *addr, int addr_len) = Accepting a connection on server</p> Signup and view all the answers

    What is the command to listen for connections on a server socket?

    <p>int listen(int socket, int backlog)</p> Signup and view all the answers

    What do VBR and CBR stand for in networking metrics?

    <p>Variable Bit Rate and Constant Bit Rate</p> Signup and view all the answers

    What are the key features of a network?

    <p>All of the above</p> Signup and view all the answers

    What is statistical multiplexing?

    <p>On-demand time-division scheduling of links on a per-packet basis.</p> Signup and view all the answers

    The Internet started as a commercial project in the 1970s.

    <p>False</p> Signup and view all the answers

    What types of addresses are there in networking?

    <p>Unicast, broadcast, multicast.</p> Signup and view all the answers

    What does latency in network performance measure?

    <p>The total time to transmit a data block.</p> Signup and view all the answers

    Which of the following protocols is part of the TCP/IP protocol suite?

    <p>All of the above</p> Signup and view all the answers

    What is the formula for effective bandwidth?

    <p>Throughput = Size-Of-Data-Block / Latency.</p> Signup and view all the answers

    Propagation Delay is calculated as Distance divided by ___

    <p>c (transmission speed)</p> Signup and view all the answers

    What is encapsulation in networking?

    <p>Incorporating a header and body into a packet.</p> Signup and view all the answers

    What is the purpose of the Internet Engineering Task Force (IETF)?

    <p>To define and standardize Internet architecture.</p> Signup and view all the answers

    What is the formula for calculating latency?

    <p>Latency = Setup Time + Propagation + Transmit (A-&gt;S1) + Transmit (S1-&gt;B) + Switch Processing Time</p> Signup and view all the answers

    What is the calculated latency from the example?

    <p>1.469s</p> Signup and view all the answers

    What is the throughput calculated in the example?

    <p>8.566 Mbps</p> Signup and view all the answers

    The amount of data 'in flight' or 'in the pipe' is related to _____ and _____.

    <p>Delay, Bandwidth</p> Signup and view all the answers

    Which dominates when sending a small message?

    <p>Latency</p> Signup and view all the answers

    What is the primary purpose of the Socket API?

    <p>Both A and B</p> Signup and view all the answers

    What are the two types of open operations in sockets?

    <p>Active Open and Passive Open</p> Signup and view all the answers

    In the example of a client-side socket program, 'sin.sin_addr.s_addr' is set to _____ and 'sin.sin_port' is set to _____

    <p>SERVER_IP_ADDRESS, SERVER_PORT</p> Signup and view all the answers

    What does the command 'int send(int socket, char *msg, int mlen, int flags)' do?

    <p>It sends a message through the specified socket.</p> Signup and view all the answers

    A bandwidth of 1 Mbps and a latency of 100 ms dominates over a bandwidth of 100 Mbps and latency of 1 ms.

    <p>False</p> Signup and view all the answers

    What are the basic building blocks of a network?

    <p>Nodes and links</p> Signup and view all the answers

    A network can be defined as two or more nodes connected by a link.

    <p>True</p> Signup and view all the answers

    What technology is primarily used in the Internet for data communication?

    <p>Statistical Multiplexing</p> Signup and view all the answers

    The process of determining which path a packet will take through a network is called ______.

    <p>routing</p> Signup and view all the answers

    What are the types of addresses used in networks?

    <p>Unicast, broadcast, multicast</p> Signup and view all the answers

    What does the total latency of a network depend on?

    <p>Setup time, transmit time, propagation delay, and queuing delay</p> Signup and view all the answers

    What does throughput measure?

    <p>The amount of data transmitted over time</p> Signup and view all the answers

    What is considered a packet-level error in a network?

    <p>Congestion</p> Signup and view all the answers

    What does 'statistical multiplexing' involve?

    <p>On-demand time-division scheduling on a per-packet basis</p> Signup and view all the answers

    The speed of transmission in fiber is approximately ______ m/s.

    <p>2.0 x 10^8</p> Signup and view all the answers

    Match the following performance metrics with their definitions:

    <p>Latency = Time taken for data to travel through the network Transmitting Time = Time to place data on the link Propagation Delay = Time taken for the signal to travel a link Throughput = Amount of data transmitted over time</p> Signup and view all the answers

    What is the effective bandwidth if a file size of 12,582,912 bits is transferred in 1.458 seconds?

    <p>8.63 Mbps</p> Signup and view all the answers

    What is the primary role of protocols in a network?

    <p>Define format, order of messages, and actions during transmission</p> Signup and view all the answers

    The Internet is defined by the ______.

    <p>Internet Engineering Task Force (IETF)</p> Signup and view all the answers

    Multiple private backbones exist in the Internet architecture.

    <p>True</p> Signup and view all the answers

    Bandwidth is determined by ______.

    <p>link speed and data size</p> Signup and view all the answers

    Study Notes

    What’s a Network: Key Features

    • Offering services, like transportation of goods, mail, information or data
    • Sharing resources, used concurrently by multiple users
    • Basic building blocks: nodes (active entities) that process and transfer data, and links (passive medium) as carriers
    • Typically multi-hop, where two endpoints cannot directly reach each other, requiring other nodes to relay data

    What’s a Network: “Nuts and Bolts” View

    • Network edge comprises millions of end-system devices like PCs, workstations, servers, PDAs, phones, etc.
    • Network core consists of routers and switches, forwarding data in packets (packet switching) or calls (circuit switching).
    • Network edge devices run network applications and connect to network core through communication links like fiber, copper, or radio.

    Switched Networks

    • A network can be recursively defined as either two or more nodes connected by a link, or two or more networks connected by a node.

    Brief History of the Internet

    • Started in the 70s as a research project with 56 kbps speed and less than 100 computers.
    • In the 80s, ARPANET and MILNET split, with NSF building NSFNET as the backbone, linking 6 supercomputer centers with 1.5 Mbps speed and 10,000 computers.
    • From 87 to 90, regional networks linked with 100,000 computers.
    • In the 90s, NSFNET moved to 45 Mbps and included 16 mid-level networks.
    • In 1994, the NSF backbone was dismantled, leading to multiple private backbones.
    • Today, backbones operate at over 10 Gbps speed and connect over 600 million computers across more than 190 countries.

    Strategies

    • Circuit switching: transmits bit streams, used in the original telephone network.
    • Packet switching: stores and forwards messages, used in the Internet.

    Addressing, Routing, and Forwarding

    • Address: a byte-string used to uniquely identify a node.
    • Types of addresses:
      • Unicast: specific to a single node.
      • Broadcast: addressed to all nodes on the network.
      • Multicast: addressed to a subset of nodes on the network
    • Routing: the process of determining the path a packet will take through a network to reach its destination.
    • Forwarding: the operation of sending an incoming packet to the correct switch or router output.

    Multiplexing

    • Synchronous Time-Division Multiplexing (STDM)
    • Frequency-Division Multiplexing (FDM), e.g., TV channels

    Statistical Multiplexing

    • Used in the Internet.
    • On-demand time-division, scheduling the link on a per-packet basis.
    • Packets from different sources are interleaved on the link.
    • Buffer packets that are contending for the link.
    • Buffer (queue) overflow leads to congestion.

    Inter-Process Communication

    • Turns host-to-host connectivity into process-to-process communication.
    • Bridges the gap between what applications expect and the underlying technology provides.

    IPC Abstractions

    • Request/Reply: used in distributed file systems, digital libraries (web).
    • Stream-Based: transmits data as a sequence of frames, suitable for video applications like on-demand video and video conferencing.

    What Goes Wrong in the Network?

    • Bit-level errors: caused by electrical interference.
    • Packet-level errors: due to congestion.
    • Link and node failures can occur.
    • Packets can be delayed, delivered out of order, or duplicated.

    Layering Architecture

    • Uses abstractions to hide complexity.
    • Abstractions lead to layered architectures.
    • Alternative abstractions exist at each layer.

    Protocols

    • Building blocks of network architectures.
    • Define format, order of messages sent and received, and actions taken during message transmission and receipt.
    • Each protocol object has two interfaces:
      • Service interface: operations on this protocol (e.g., how to obtain a message).
      • Peer-to-peer interface: messages exchanged with peer (e.g., message format definition.
    • "Protocol" can refer to the specification of the peer-to-peer interface or the module that implements this interface.

    Interfaces

    • Interfaces between protocols can include a service interface for interactions within a host and a peer-to-peer interface for interactions with its protocol counterpart in another host

    TCP/IP protocol suite

    • A layered architecture with the following layers:
      • Application: supporting network applications like FTP, SMTP, HTTP.
      • Transport: enables process-process data transfer using protocols like TCP and UDP.
      • Internet: responsible for host-host data transfer through protocols like IP and routing protocols.
      • Data link: manages data transfer between neighboring network elements using protocols like PPP and Ethernet.
      • Hardware Devices (Physical): responsible for transmitting bits over the physical medium using the physical layer.

    ISO/OSI model vs. TCP/IP

    • Both models are layered architectures but have differences in their layer structure and naming conventions
      • ISO/OSI: Application, Presentation, Session, Transport, Network, Data Link, Physical
      • TCP/IP: Application, Transport, Internet, Data Link, Physical
    • Certain layers in TCP/IP may map to multiple layers in ISO/OSI

    Communication through Internet

    • Data is transferred through multiple switches and routers in a network.
    • Each device processes and forwards packets based on the IP address destination.

    Identical objects between layers in TCP/IP

    • Data is encapsulated from one layer to another, but the encapsulated data maintains the same object type across layers.
    • e.g., segments or user datagrams in the Transport layer become datagrams in the Internet layer.

    Encapsulation (Header/Body)

    • Data is wrapped with a header in each layer containing information for that layer.
    • The body contains the actual data that will be transmitted across networks.

    Internet Architecture

    • Defined by the Internet Engineering Task Force (IETF).
    • Hourglass design, with application layer protocols (FTP, HTTP, etc.) and transport layer protocols (TCP, UDP) at the top, and the Internet layer (IP) at the bottom.
    • Multiple networks connect to the internet through IP.

    Implications of Hourglass

    • A single Internet layer module (IP protocol) allows all networks to interoperate and all applications to function on all networks, regardless of underlying network technologies

    Network Performance

    • Latency: total time to transmit a data block.
    • Factors affecting latency:
      • Initial time to establish a connection (setup time).
      • Time required to send the data block (transmit time).
      • Length of links and link speed (propagation delay).
      • Processing delay at routers (queuing delay).
    • Overall network performance:
      • Throughput = Size-Of-Data-Block / Latency
      • Effective Bandwidth

    Performance Metrics

    • Transmit time:
      • Determined by data block size and link bandwidth.
      • Bandwidth: data transmitted per time unit (e.g., 10 Mbps).
    • Propagation delay:
      • Determined by link length and link speed.
      • Propagation Delay = Distance / c (speed of signal).

    Network Performance Revisited

    • Total latency is calculated by summing up the setup time, propagation delay, transmit times, switch processing time, and RTT.
    • Total latency is affected by factors such as handshake time, switch delays, and packet sizes. ### Network Performance
    • Latency is the time it takes for a message to travel from source to destination.
    • It consists of setup time, propagation time, transmission time, and switch processing time.
    • Throughput is data transferred over time.
    • Delay x Bandwidth product is the amount of data in flight or in the pipe, typically relative to Round Trip Time (RTT).
    • For a 1-byte message, latency dominates bandwidth.
    • For a 25MB message, bandwidth dominates latency.
    • Infinite bandwidth makes RTT the dominant factor for throughput.
    • Effective Bandwidth is the total transfer size divided by total transfer time.
    • Transfer time consists of RTT and transfer size divided by bandwidth.

    Other Metrics

    • Variable Bit Rate (VBR) and Constant Bit Rate (CBR) are bandwidth requirements for applications.
    • Delay jitter can be mitigated with buffering.
    • Reliability is measured by packet loss rate.

    Socket API

    • The Socket API is a set of system calls for network communication.
    • It implements network communication between processes.
    • Socket creation uses the socket() function.
    • Domains include PF_INET for the Internet Protocol (IP) and PF_UNIX for local inter-process communication.
    • Types include SOCK_STREAM for connection-oriented communication, SOCK_DGRAM for connectionless communication, and SOCK_RAW for low-level access.
    • connect() is used for active opens, initiating a connection from a client.
    • bind() is used for passive opens, configuring a server to listen for connections.
    • listen() specifies the maximum number of pending connections.
    • accept() establishes a connection from a server to a client.
    • send() and recv() are functions for sending and receiving messages, respectively.

    Example Socket Programs

    • Client side programs use socket, connect, send, and close.
    • Server side programs use socket, bind, listen, accept, recv, and close.

    Network Features

    • Networks provide services to transfer goods, mail, information or data.
    • Networks are shared resources, often used concurrently by many users.
    • Networks are built from nodes (active entities) that process and transfer data in addition to links (passive medium) that carry the data.
    • Often networks are "multi-hop," meaning end points cannot directly reach each other and intermediate nodes are required to relay data.

    Network Architecture

    • Network edge is composed of end system devices, like PCs, workstations, servers, PDAs, phones, and toasters.
    • Network core is composed of routers and switches, which forward data in packets or circuit-switched calls.
    • Communication links include fiber, copper, radio, and satellite.
    • Links can be point-to-point or have multiple access.
    • A network is defined recursively as two or more nodes connected by a link or two or more networks connected by a node.

    History of the Internet

    • The internet was created in the 70's as a research project with a limited number of computers.
    • The ARPANET and MILNET split in the 80's.
    • NSFNET was built as a backbone in the 80's and connected to other networks and institutions and included supercomputer centers.
    • NSFNet moved to a higher bandwidth in the 90’s.
    • The NSF backbone was dismantled in the 90’s and replaced with private backbones.
    • Today, internet backbones have high bandwidth and connect to a large number of devices worldwide.

    Strategies

    • Circuit switching: Data is transmitted continuously along a dedicated path.
    • Packet switching: Data is divided into packets, and these packets are forwarded independently and routed through various paths in the network.

    Addressing

    • Each node on the network has a unique identifier called an address.
    • Types of addresses:
      • Unicast: Unique to one node.
      • Broadcast: Sent to all nodes on the network.
      • Multicast: Sent to a specific subset of nodes on the network.

    Routing

    • Determines the path packets will take through the network to reach their destination.

    Forwarding

    • Operations to send an incoming packet to the correct output on a switch or router.

    Multiplexing

    • Allows multiple users to share the same physical transmission medium.
    • Synchronous Time Division Multiplexing (STDM) and Frequency Division Multiplexing (FDM) are examples.

    Statistical Multiplexing

    • Used in the internet.
    • It’s on-demand time-division, meaning the link is scheduled on a per-packet basis, with packets from different sources interleaved on the link.
    • If a packet arrives at the link when it's already occupied, it's buffered in a queue.
    • When buffers overflow, congestion occurs.

    Inter-Process Communication

    • Turns host-to-host connectivity into process-to-process communication.
    • Allows applications on different hosts to communicate with one another.
    • Fill gaps between applications and the underlying technology.

    IPC Abstractions

    • Request/Reply: A common communication pattern for request-response interaction, like distributed file systems or web servers.
    • Stream-Based: Used for streaming applications like video conferencing, where information is continuously transferred as a sequence of frames.

    Network Errors

    • Bit-level errors caused by electrical interference.
    • Packet-level errors caused by congestion, leading to delays, out-of-order delivery, and duplicates.

    Layered Architecture

    • Uses abstractions to hide complexity and simplifies network management.
    • Network operations are divided into layers, with each layer responsible for a specific aspect of networking.

    Protocols

    • Define the format, order of messages, and actions taken during transmission and receipt between network entities.
    • Each protocol object has a service interface (operations on that protocol) and a peer-to-peer interface (defining the messages exchanged between protocol peers).

    TCP/IP Suite

    • A collection of networking protocols used on the internet and other networks.
    • It consists of four layers:
      • Application Layer: Provides services to support network applications (FTP, SMTP, HTTP).
      • Transport Layer: Enables process-to-process data transfer (TCP, UDP).
      • Network Layer: Manages host-to-host data transfer (IP, Routing protocols).
      • Data Link Layer: Provides reliable data transfer between neighboring network elements (PPP, Ethernet).
      • Physical Layer: Transmits bits across the physical medium.

    ISO/OSI Model

    • A layered model that describes the interaction of communication protocols.
    • It is very similar to the TCP/IP suite.

    Internet Architecture

    • Consists of networks and hosts connected using layered communication protocols.
    • Defined by the Internet Engineering Task Force (IETF).
    • Hourglass Design is the common architectural model.
    • The top layer is Application Layer and allows for various application protocols (FTP, HTTP, NV, TFTP).
    • The middle layer is Transport Layer and provides services like TCP and UDP.
    • The bottom layer is Internet Layer which defines the IP protocol for host-to-host data transfer.

    Implications of Hourglass Design

    • A single Internet layer module allows all networks that support IP to interoperate.
    • Allows all applications to function on all networks that support IP.
    • Enables simultaneous development of network applications and underlying technologies.

    Network Performance

    • Latency measures the time it takes to transfer data.
    • Factors influencing latency include: Setup time to establish communication, transmit time to send data, propagation delay across links, and queuing delay in routers.

    Delay Measurements

    • Transmit time: Time to put data on a link, dependent on the link's bandwidth.
    • Propagation delay: Time for signal to travel across the link and depends on link length and signal speed.

    Network Performance Revisited

    • To transfer a 1.5 MB file from host A to Host B through a switch S1, the total time is calculated as the sum of the setup time, propagation delay, transmit time on both links (A to S1 and S1 to B ), and switch processing time.
    • This calculation also includes the handshake time required to establish communications (2 x Round Trip Time).

    Latency Calculation

    • Latency is the time it takes for a message to travel from one point to another.
    • It includes setup time, propagation time, transmission time, switch processing time.
    • In the example (A to S1 to B) the latency is: 0.16s + 0.04s + 1.258s + 0.8192 ms + 0.01s = 1.469s

    Throughput Calculation

    • Throughput is the amount of data that can be transferred per unit of time.
    • In the example the file size is 8 x 1.5 x 220 bytes = 2,640 bytes
    • The throughput is: 8,565,631 bps = 8.566 Mbps

    Delay x Bandwidth Product

    • The delay x bandwidth product represents the amount of data "in flight" or "in the pipe"
    • It is usually relative to the Round Trip Time (RTT)
    • Example: 100ms x 45 Mbps ≈ 560 KB

    Bandwidth vs Latency

    • The relative importance of Bandwidth and Latency depends on the size of the message
    • For 1 byte messages, Latency is more important than Bandwidth
    • For large messages (e.g., 25 MB), Bandwidth is more important than Latency.
    • Infinite bandwidth: RTT dictates the throughput.

    Other Metrics

    • Bandwidth need: VBR (variable bit rate) vs CBR (constant bit rate)
    • Delay jitter: requires buffering
    • Reliability: packet loss rate
    • Efficiency: Overhead of implementation

    Socket API

    • Socket API provides functions for network communication
    • socket() function creates a socket.
    • connect() function initiates a connection (active open).
    • bind() function associates a socket with an address (passive open).
    • listen() function puts the socket in a listening state (passive open).
    • accept() function accepts an incoming connection (passive open).
    • send() function sends data to a socket.
    • recv() function receives data from a socket.

    Example Socket Program (Client)

    • Code snippet demonstrates a simple client-side socket program.
    • sin.sin_addr.s_addr is the server's IP address.
    • sin.sin_port is the server's port.
    • The code creates a socket, connects to the server, sends data, and then closes the socket.

    Example Socket Program (Server)

    • Code snippet demonstrates a simple server-side socket program.
    • The server binds to a specific address and port, listens for incoming connections, accepts the connection, receives data, processes the data, and then closes the socket.

    Network Software Introduction

    • Covers applications, features, statistical multiplexing, inter-process communication, network architecture, performance metrics, and implementation issues.

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Related Documents

    1-intro (2).pdf

    Description

    This quiz explores the fundamental concepts of networking, including the key features, components, and history of networks. You'll learn about network topologies, edge and core devices, and how data is communicated through different types of networks. Test your knowledge of the nuts and bolts of networking!

    More Like This

    Computer Networking Fundamentals
    12 questions
    Computer Networking Fundamentals
    12 questions
    Networking Fundamentals
    40 questions
    Use Quizgecko on...
    Browser
    Browser