The document provides an overview of the data link layer. It discusses how the data link layer transforms the physical layer into a link responsible for node-to-node communication. Specific responsibilities include framing, addressing, flow control, error control, and media access control. It then describes various data link layer services, design issues, error detection and correction techniques like parity checks, cyclic redundancy checks, and flow control mechanisms.
The document provides an overview of the data link layer (DLL). It discusses how the DLL transforms the physical layer into a link responsible for node-to-node communication. The DLL is responsible for framing, addressing, flow control, error control, and media access control. It provides services like transferring data packets between network layers on different machines with options for unacknowledged connectionless, acknowledged connectionless, and acknowledged connection-oriented services. Key DLL functions include framing data into frames, error control using acknowledgements and retransmissions, and flow control to regulate data transmission rates.
The data link layer transforms the physical layer into a link responsible for node-to-node communication. It provides framing, addressing, error control, and flow control. Specific responsibilities include grouping bits into frames, adding addressing and error detection through checksums, and preventing fast senders from overwhelming slow receivers through flow control. Data link protocols must provide well-defined interfaces, handle transmission errors, and regulate data flow. They offer services like unacknowledged connectionless, acknowledged connectionless, and acknowledged connection-oriented to transfer data reliably between nodes.
The document discusses the data link layer and its responsibilities. Specifically:
1) The data link layer transforms the physical layer into a link responsible for node-to-node communication. It is responsible for framing, addressing, flow control, error control, and media access control.
2) It provides services to the network layer like transferring data packets between network layers on different machines and offering various service models like unacknowledged connectionless, acknowledged connectionless, and acknowledged connection-oriented.
3) Key data link layer protocols are discussed including framing, error detection using CRC, flow control, and elementary protocol examples like unrestricted simplex and stop-and-wait.
U2CH1Data Link Layerxxxxxxxxxxxxxxxxx.pptxk2w9psdb96
1. The data link layer transforms the physical layer into a link responsible for node-to-node communication. It provides framing, addressing, error control, flow control, and media access control.
2. Error control uses acknowledgements, timers, and sequence numbers to ensure reliable delivery of frames. Framing groups bits into frames using techniques like bit stuffing. Flow control regulates data flow between sender and receiver.
3. Cyclic redundancy checks (CRCs) are commonly used for error detection. A CRC calculates a checksum by dividing the data by a fixed generator polynomial, allowing errors to be detected on receipt.
Computer Networks Unit 2 UNIT II DATA-LINK LAYER & MEDIA ACCESSDr. SELVAGANESAN S
The document discusses data link layer framing and protocols. It describes:
1) Two main approaches to framing - byte-oriented (using sentinel characters) and bit-oriented (using bit stuffing). Protocols discussed include BISYNC, DDCMP, and HDLC.
2) Features of PPP framing including negotiated field sizes and use of LCP control messages.
3) Functions of data link layer including framing, flow control, error control, and media access control. The relationship between the logical link control and media access control sublayers is also covered.
The document discusses data link layer and media access control. It covers the following key points:
1. The data link layer is responsible for framing data, performing error checking and flow control between adjacent nodes. It has two sublayers - the logical link control and media access control layers.
2. The media access control layer controls how devices access and share the physical layer transmission medium. It uses protocols like CSMA/CD for Ethernet and CSMA/CA for wireless networks.
3. Framing involves adding headers and trailers to divide data into manageable units called frames. Protocols use byte-oriented or bit-oriented approaches for framing, with techniques like character stuffing to delimit frames
The document summarizes key concepts about the data link layer:
1. The data link layer encapsulates network layer packets into frames, adding header and trailer fields. It provides error control, flow control, and reliable delivery of frames between adjacent network nodes.
2. The data link layer must provide a well-defined interface to the network layer, handle transmission errors, and regulate frame flow between senders and receivers.
3. Common data link layer services include unacknowledged connectionless, acknowledged connectionless, and acknowledged connection-oriented with setup and teardown of connections.
Data Link Layer, Error correction and detection like LRC, VRC, CRC, checksum and Hamming coding, Data link protocols, stop and wait ARQ, sliding window ARQ, Petrinet models, HDLC, etc
The document provides an overview of the data link layer. It discusses the functions of the data link layer including framing, flow control, and error detection. It describes various data link protocols like HDLC, PPP, Ethernet, and wireless LAN standards. It also covers topics like framing, MAC addressing, LLC, flow control mechanisms like stop-and-wait, and error detection techniques like CRC codes.
A computer network is a system of interconnected devices that can share resou...shivanichoubey2008
Devices use communication protocols to follow rules for sending and receiving data. Examples of protocols include TCP/IP, Simple Mail Transfer Protocol, and Hypertext Transfer Protocol.
Jaimin chp-3 - data-link layer- 2011 batchJaimin Jani
The document discusses data link layer services and functions including:
1. Providing interfaces between network layers and framing/error control/flow control.
2. Types of services include unacknowledged/acknowledged connectionless and connection-oriented.
3. Framing methods like character count, flag bytes, and encoding violations are used to delineate frames. Error control uses acknowledgments, timers, and sequence numbers.
The data link layer is responsible for node-to-node communication and transforming the physical layer into a reliable link. It handles framing, addressing, error control, flow control, and media access. The data link layer provides services like unacknowledged connectionless, acknowledged connectionless, and acknowledged connection-oriented to the network layer. Framing groups the physical layer bit stream into discrete frames using techniques like character counting, flag bytes with stuffing, or encoding violations.
The data link layer is responsible for node-to-node communication and transforming the physical layer into a reliable link. It handles framing, addressing, error control, flow control, and media access. Some key design issues include providing a well-defined interface, dealing with transmission errors, and regulating flow. Common services provided are unacknowledged connectionless, acknowledged connectionless, and acknowledged connection-oriented. Framing groups the physical layer bit stream into frames using techniques like character counting, flag bytes with stuffing, or special bit patterns.
This document provides an overview of data link control (DLC) and data link layer protocols. It discusses the key functions of DLC including framing, flow control, and error control. Framing involves encapsulating data frames with header information like source and destination addresses. Flow control manages the flow of data between nodes while error control handles detecting and correcting errors. Common data link layer protocols described include simple protocol, stop-and-wait protocol, and High-Level Data Link Control (HDLC). HDLC is a bit-oriented protocol that supports full-duplex communication over both point-to-point and multipoint links. It uses three types of frames: unnumbered, information, and supervisory frames.
The document discusses the data link layer of the OSI model. It describes the data link layer as the second layer that is responsible for framing data, error detection and correction, and flow control between nodes on a network. The data link layer has two sublayers - the logical link control layer deals with protocols, flow control and error control, while the media access control layer controls access to the shared media. The data link layer frames data from the network layer, provides addressing, synchronization, error detection using parity checks and CRC, error correction using ACKs and retransmissions, and flow control using stop-and-wait or sliding window protocols.
Computer Networks (Computer Engineering) Unit-3 Data Link Layer & its Protoco...smitkagathara7
This is a presentation focused on the Data Link Layer in computer networking. This layer is critical in facilitating data communication between two hosts or nodes. Below is a detailed summary of the content based on the presentation:
1. Overview of the Data Link Layer
The Data Link Layer (DLL) is the second layer in the OSI model, positioned above the Physical Layer. Its primary role is to establish and maintain reliable links for data transmission between two directly connected nodes. The Data Link Layer itself is subdivided into two sub-layers:
Logical Link Control (LLC): Manages frame synchronization, flow control, and error checking.
Media Access Control (MAC): Handles data packet transfer across the network interface, managing media access, unique addressing, and error detection.
2. Design Issues in the Data Link Layer
The presentation addresses several challenges in designing the Data Link Layer, such as:
Services to the Network Layer: Ensuring smooth data transfer between network layers on the sending and receiving ends.
Frame Synchronization: Transmitting data in blocks (frames) and marking the start and end of each frame.
Flow Control: Preventing data overload at the receiver end by regulating data frame flow.
Error Control: Ensuring error-free data by detecting and correcting frames damaged during transmission.
3. Link Layer Services
The Data Link Layer provides several essential services, including:
Framing and Link Access: Wrapping network layer data in frames for transmission.
Reliable Delivery: Ensuring data packets reach the receiver without errors.
Flow Control: Controlling the rate of data flow to prevent buffer overflow.
Error Detection and Correction: Adding bits to detect and correct transmission errors.
Half and Full Duplex: Managing communication direction—either one-way at a time (Half-Duplex) or both ways simultaneously (Full-Duplex).
4. Framing Techniques
The Data Link Layer organizes data into frames before transmission. Two primary types of framing are discussed:
Fixed-Size Framing: Frames have a predefined size, simplifying identification.
Variable-Size Framing: Frames vary in size, necessitating delimiters for start and end indicators.
Different methods of framing are used, including:
Byte Count: Using a header to indicate the frame’s byte count.
Byte and Bit Stuffing: Adding extra bytes or bits to data to differentiate between frame data and delimiters.
5. Data Link Control Mechanisms
The Data Link Control ensures orderly and reliable data transfer, incorporating:
Line Discipline: Coordinating which device can send data.
Flow Control: Managing the rate at which data is sent.
Error Control: Detecting and correcting errors, thus ensuring accurate data transmission.
6. Flow Control Techniques
Flow control is essential to manage data transmission between devices of varying speeds. The two methods covered are:
Stop-and-Wait Protocol: The sender stops after each frame and waits for an acknowledgment from the receive
This document provides an overview of data link layer and media access control. It discusses key concepts such as framing, flow control, error control, addressing, and common data link layer protocols. Specific topics covered include HDLC, PPP, Ethernet, wireless LAN standards, and media access control protocols for shared media like CSMA/CD.
This document outlines the syllabus for a course on computer networks. It covers three units: introduction to networking concepts and reference models, the data link layer, and the network layer. The data link layer section describes its design issues, functions, services, framing, error control, and flow control. It also discusses error detection techniques like vertical redundancy checks, longitudinal redundancy checks, cyclic redundancy checks, and checksums. The document provides examples and diagrams to explain these concepts.
This document summarizes key concepts about the data link layer. It discusses the services provided to the network layer including unacknowledged connectionless service, acknowledged connectionless service, and acknowledged connection-oriented service. It describes framing, including frame structure with header, payload, and trailer. Error control using Automatic Repeat Request and flow control are explained. Stop-and-wait and sliding window protocols are given as examples of error control and flow control mechanisms.
This document summarizes key concepts about the data link layer. It discusses the services provided to the network layer including unacknowledged connectionless service, acknowledged connectionless service, and acknowledged connection-oriented service. It describes framing, including frame structure with header, payload, and trailer. Error control using Automatic Repeat Request and flow control are explained. Frame types can be fixed-sized or variable-sized, using techniques like length field or end delimiter. The advantages of framing are also provided.
Data Link Layer
The main goal of this layer is providing reliability to the layers above it.
3.1 DLL Design Issues
What are the services provided by DLL?
3.2 Error Detection and Correction
Adding redundancy in order to find and correct errors.
3.3 DLL Protocols
xxx
3.4 Sliding Window Protocols
xxx
3.5 Protocol Specification and Verification
xxx.
3.6 Examples
its all about Artificial Intelligence(Ai) and Machine Learning and not on advanced level you can study before the exam or can check for some information on Ai for project
Computer Networks Unit 2 UNIT II DATA-LINK LAYER & MEDIA ACCESSDr. SELVAGANESAN S
The document discusses data link layer framing and protocols. It describes:
1) Two main approaches to framing - byte-oriented (using sentinel characters) and bit-oriented (using bit stuffing). Protocols discussed include BISYNC, DDCMP, and HDLC.
2) Features of PPP framing including negotiated field sizes and use of LCP control messages.
3) Functions of data link layer including framing, flow control, error control, and media access control. The relationship between the logical link control and media access control sublayers is also covered.
The document discusses data link layer and media access control. It covers the following key points:
1. The data link layer is responsible for framing data, performing error checking and flow control between adjacent nodes. It has two sublayers - the logical link control and media access control layers.
2. The media access control layer controls how devices access and share the physical layer transmission medium. It uses protocols like CSMA/CD for Ethernet and CSMA/CA for wireless networks.
3. Framing involves adding headers and trailers to divide data into manageable units called frames. Protocols use byte-oriented or bit-oriented approaches for framing, with techniques like character stuffing to delimit frames
The document summarizes key concepts about the data link layer:
1. The data link layer encapsulates network layer packets into frames, adding header and trailer fields. It provides error control, flow control, and reliable delivery of frames between adjacent network nodes.
2. The data link layer must provide a well-defined interface to the network layer, handle transmission errors, and regulate frame flow between senders and receivers.
3. Common data link layer services include unacknowledged connectionless, acknowledged connectionless, and acknowledged connection-oriented with setup and teardown of connections.
Data Link Layer, Error correction and detection like LRC, VRC, CRC, checksum and Hamming coding, Data link protocols, stop and wait ARQ, sliding window ARQ, Petrinet models, HDLC, etc
The document provides an overview of the data link layer. It discusses the functions of the data link layer including framing, flow control, and error detection. It describes various data link protocols like HDLC, PPP, Ethernet, and wireless LAN standards. It also covers topics like framing, MAC addressing, LLC, flow control mechanisms like stop-and-wait, and error detection techniques like CRC codes.
A computer network is a system of interconnected devices that can share resou...shivanichoubey2008
Devices use communication protocols to follow rules for sending and receiving data. Examples of protocols include TCP/IP, Simple Mail Transfer Protocol, and Hypertext Transfer Protocol.
Jaimin chp-3 - data-link layer- 2011 batchJaimin Jani
The document discusses data link layer services and functions including:
1. Providing interfaces between network layers and framing/error control/flow control.
2. Types of services include unacknowledged/acknowledged connectionless and connection-oriented.
3. Framing methods like character count, flag bytes, and encoding violations are used to delineate frames. Error control uses acknowledgments, timers, and sequence numbers.
The data link layer is responsible for node-to-node communication and transforming the physical layer into a reliable link. It handles framing, addressing, error control, flow control, and media access. The data link layer provides services like unacknowledged connectionless, acknowledged connectionless, and acknowledged connection-oriented to the network layer. Framing groups the physical layer bit stream into discrete frames using techniques like character counting, flag bytes with stuffing, or encoding violations.
The data link layer is responsible for node-to-node communication and transforming the physical layer into a reliable link. It handles framing, addressing, error control, flow control, and media access. Some key design issues include providing a well-defined interface, dealing with transmission errors, and regulating flow. Common services provided are unacknowledged connectionless, acknowledged connectionless, and acknowledged connection-oriented. Framing groups the physical layer bit stream into frames using techniques like character counting, flag bytes with stuffing, or special bit patterns.
This document provides an overview of data link control (DLC) and data link layer protocols. It discusses the key functions of DLC including framing, flow control, and error control. Framing involves encapsulating data frames with header information like source and destination addresses. Flow control manages the flow of data between nodes while error control handles detecting and correcting errors. Common data link layer protocols described include simple protocol, stop-and-wait protocol, and High-Level Data Link Control (HDLC). HDLC is a bit-oriented protocol that supports full-duplex communication over both point-to-point and multipoint links. It uses three types of frames: unnumbered, information, and supervisory frames.
The document discusses the data link layer of the OSI model. It describes the data link layer as the second layer that is responsible for framing data, error detection and correction, and flow control between nodes on a network. The data link layer has two sublayers - the logical link control layer deals with protocols, flow control and error control, while the media access control layer controls access to the shared media. The data link layer frames data from the network layer, provides addressing, synchronization, error detection using parity checks and CRC, error correction using ACKs and retransmissions, and flow control using stop-and-wait or sliding window protocols.
Computer Networks (Computer Engineering) Unit-3 Data Link Layer & its Protoco...smitkagathara7
This is a presentation focused on the Data Link Layer in computer networking. This layer is critical in facilitating data communication between two hosts or nodes. Below is a detailed summary of the content based on the presentation:
1. Overview of the Data Link Layer
The Data Link Layer (DLL) is the second layer in the OSI model, positioned above the Physical Layer. Its primary role is to establish and maintain reliable links for data transmission between two directly connected nodes. The Data Link Layer itself is subdivided into two sub-layers:
Logical Link Control (LLC): Manages frame synchronization, flow control, and error checking.
Media Access Control (MAC): Handles data packet transfer across the network interface, managing media access, unique addressing, and error detection.
2. Design Issues in the Data Link Layer
The presentation addresses several challenges in designing the Data Link Layer, such as:
Services to the Network Layer: Ensuring smooth data transfer between network layers on the sending and receiving ends.
Frame Synchronization: Transmitting data in blocks (frames) and marking the start and end of each frame.
Flow Control: Preventing data overload at the receiver end by regulating data frame flow.
Error Control: Ensuring error-free data by detecting and correcting frames damaged during transmission.
3. Link Layer Services
The Data Link Layer provides several essential services, including:
Framing and Link Access: Wrapping network layer data in frames for transmission.
Reliable Delivery: Ensuring data packets reach the receiver without errors.
Flow Control: Controlling the rate of data flow to prevent buffer overflow.
Error Detection and Correction: Adding bits to detect and correct transmission errors.
Half and Full Duplex: Managing communication direction—either one-way at a time (Half-Duplex) or both ways simultaneously (Full-Duplex).
4. Framing Techniques
The Data Link Layer organizes data into frames before transmission. Two primary types of framing are discussed:
Fixed-Size Framing: Frames have a predefined size, simplifying identification.
Variable-Size Framing: Frames vary in size, necessitating delimiters for start and end indicators.
Different methods of framing are used, including:
Byte Count: Using a header to indicate the frame’s byte count.
Byte and Bit Stuffing: Adding extra bytes or bits to data to differentiate between frame data and delimiters.
5. Data Link Control Mechanisms
The Data Link Control ensures orderly and reliable data transfer, incorporating:
Line Discipline: Coordinating which device can send data.
Flow Control: Managing the rate at which data is sent.
Error Control: Detecting and correcting errors, thus ensuring accurate data transmission.
6. Flow Control Techniques
Flow control is essential to manage data transmission between devices of varying speeds. The two methods covered are:
Stop-and-Wait Protocol: The sender stops after each frame and waits for an acknowledgment from the receive
This document provides an overview of data link layer and media access control. It discusses key concepts such as framing, flow control, error control, addressing, and common data link layer protocols. Specific topics covered include HDLC, PPP, Ethernet, wireless LAN standards, and media access control protocols for shared media like CSMA/CD.
This document outlines the syllabus for a course on computer networks. It covers three units: introduction to networking concepts and reference models, the data link layer, and the network layer. The data link layer section describes its design issues, functions, services, framing, error control, and flow control. It also discusses error detection techniques like vertical redundancy checks, longitudinal redundancy checks, cyclic redundancy checks, and checksums. The document provides examples and diagrams to explain these concepts.
This document summarizes key concepts about the data link layer. It discusses the services provided to the network layer including unacknowledged connectionless service, acknowledged connectionless service, and acknowledged connection-oriented service. It describes framing, including frame structure with header, payload, and trailer. Error control using Automatic Repeat Request and flow control are explained. Stop-and-wait and sliding window protocols are given as examples of error control and flow control mechanisms.
This document summarizes key concepts about the data link layer. It discusses the services provided to the network layer including unacknowledged connectionless service, acknowledged connectionless service, and acknowledged connection-oriented service. It describes framing, including frame structure with header, payload, and trailer. Error control using Automatic Repeat Request and flow control are explained. Frame types can be fixed-sized or variable-sized, using techniques like length field or end delimiter. The advantages of framing are also provided.
Data Link Layer
The main goal of this layer is providing reliability to the layers above it.
3.1 DLL Design Issues
What are the services provided by DLL?
3.2 Error Detection and Correction
Adding redundancy in order to find and correct errors.
3.3 DLL Protocols
xxx
3.4 Sliding Window Protocols
xxx
3.5 Protocol Specification and Verification
xxx.
3.6 Examples
its all about Artificial Intelligence(Ai) and Machine Learning and not on advanced level you can study before the exam or can check for some information on Ai for project
This paper proposes a shoulder inverse kinematics (IK) technique. Shoulder complex is comprised of the sternum, clavicle, ribs, scapula, humerus, and four joints.
International Journal of Distributed and Parallel systems (IJDPS)samueljackson3773
The growth of Internet and other web technologies requires the development of new
algorithms and architectures for parallel and distributed computing. International journal of
Distributed and parallel systems is a bimonthly open access peer-reviewed journal aims to
publish high quality scientific papers arising from original research and development from
the international community in the areas of parallel and distributed systems. IJDPS serves
as a platform for engineers and researchers to present new ideas and system technology,
with an interactive and friendly, but strongly professional atmosphere.
Passenger car unit (PCU) of a vehicle type depends on vehicular characteristics, stream characteristics, roadway characteristics, environmental factors, climate conditions and control conditions. Keeping in view various factors affecting PCU, a model was developed taking a volume to capacity ratio and percentage share of particular vehicle type as independent parameters. A microscopic traffic simulation model VISSIM has been used in present study for generating traffic flow data which some time very difficult to obtain from field survey. A comparison study was carried out with the purpose of verifying when the adaptive neuro-fuzzy inference system (ANFIS), artificial neural network (ANN) and multiple linear regression (MLR) models are appropriate for prediction of PCUs of different vehicle types. From the results observed that ANFIS model estimates were closer to the corresponding simulated PCU values compared to MLR and ANN models. It is concluded that the ANFIS model showed greater potential in predicting PCUs from v/c ratio and proportional share for all type of vehicles whereas MLR and ANN models did not perform well.
Sorting Order and Stability in Sorting.
Concept of Internal and External Sorting.
Bubble Sort,
Insertion Sort,
Selection Sort,
Quick Sort and
Merge Sort,
Radix Sort, and
Shell Sort,
External Sorting, Time complexity analysis of Sorting Algorithms.
Fluid mechanics is the branch of physics concerned with the mechanics of fluids (liquids, gases, and plasmas) and the forces on them. Originally applied to water (hydromechanics), it found applications in a wide range of disciplines, including mechanical, aerospace, civil, chemical, and biomedical engineering, as well as geophysics, oceanography, meteorology, astrophysics, and biology.
It can be divided into fluid statics, the study of various fluids at rest, and fluid dynamics.
Fluid statics, also known as hydrostatics, is the study of fluids at rest, specifically when there's no relative motion between fluid particles. It focuses on the conditions under which fluids are in stable equilibrium and doesn't involve fluid motion.
Fluid kinematics is the branch of fluid mechanics that focuses on describing and analyzing the motion of fluids, such as liquids and gases, without considering the forces that cause the motion. It deals with the geometrical and temporal aspects of fluid flow, including velocity and acceleration. Fluid dynamics, on the other hand, considers the forces acting on the fluid.
Fluid dynamics is the study of the effect of forces on fluid motion. It is a branch of continuum mechanics, a subject which models matter without using the information that it is made out of atoms; that is, it models matter from a macroscopic viewpoint rather than from microscopic.
Fluid mechanics, especially fluid dynamics, is an active field of research, typically mathematically complex. Many problems are partly or wholly unsolved and are best addressed by numerical methods, typically using computers. A modern discipline, called computational fluid dynamics (CFD), is devoted to this approach. Particle image velocimetry, an experimental method for visualizing and analyzing fluid flow, also takes advantage of the highly visual nature of fluid flow.
Fundamentally, every fluid mechanical system is assumed to obey the basic laws :
Conservation of mass
Conservation of energy
Conservation of momentum
The continuum assumption
For example, the assumption that mass is conserved means that for any fixed control volume (for example, a spherical volume)—enclosed by a control surface—the rate of change of the mass contained in that volume is equal to the rate at which mass is passing through the surface from outside to inside, minus the rate at which mass is passing from inside to outside. This can be expressed as an equation in integral form over the control volume.
The continuum assumption is an idealization of continuum mechanics under which fluids can be treated as continuous, even though, on a microscopic scale, they are composed of molecules. Under the continuum assumption, macroscopic (observed/measurable) properties such as density, pressure, temperature, and bulk velocity are taken to be well-defined at "infinitesimal" volume elements—small in comparison to the characteristic length scale of the system, but large in comparison to molecular length scale
In tube drawing process, a tube is pulled out through a die and a plug to reduce its diameter and thickness as per the requirement. Dimensional accuracy of cold drawn tubes plays a vital role in the further quality of end products and controlling rejection in manufacturing processes of these end products. Springback phenomenon is the elastic strain recovery after removal of forming loads, causes geometrical inaccuracies in drawn tubes. Further, this leads to difficulty in achieving close dimensional tolerances. In the present work springback of EN 8 D tube material is studied for various cold drawing parameters. The process parameters in this work include die semi-angle, land width and drawing speed. The experimentation is done using Taguchi’s L36 orthogonal array, and then optimization is done in data analysis software Minitab 17. The results of ANOVA shows that 15 degrees die semi-angle,5 mm land width and 6 m/min drawing speed yields least springback. Furthermore, optimization algorithms named Particle Swarm Optimization (PSO), Simulated Annealing (SA) and Genetic Algorithm (GA) are applied which shows that 15 degrees die semi-angle, 10 mm land width and 8 m/min drawing speed results in minimal springback with almost 10.5 % improvement. Finally, the results of experimentation are validated with Finite Element Analysis technique using ANSYS.
We introduce the Gaussian process (GP) modeling module developed within the UQLab software framework. The novel design of the GP-module aims at providing seamless integration of GP modeling into any uncertainty quantification workflow, as well as a standalone surrogate modeling tool. We first briefly present the key mathematical tools on the basis of GP modeling (a.k.a. Kriging), as well as the associated theoretical and computational framework. We then provide an extensive overview of the available features of the software and demonstrate its flexibility and user-friendliness. Finally, we showcase the usage and the performance of the software on several applications borrowed from different fields of engineering. These include a basic surrogate of a well-known analytical benchmark function; a hierarchical Kriging example applied to wind turbine aero-servo-elastic simulations and a more complex geotechnical example that requires a non-stationary, user-defined correlation function. The GP-module, like the rest of the scientific code that is shipped with UQLab, is open source (BSD license).
RICS Membership-(The Royal Institution of Chartered Surveyors).pdfMohamedAbdelkader115
Glad to be one of only 14 members inside Kuwait to hold this credential.
Please check the members inside kuwait from this link:
https://www.rics.org/networking/find-a-member.html?firstname=&lastname=&town=&country=Kuwait&member_grade=(AssocRICS)&expert_witness=&accrediation=&page=1
Value Stream Mapping Worskshops for Intelligent Continuous SecurityMarc Hornbeek
This presentation provides detailed guidance and tools for conducting Current State and Future State Value Stream Mapping workshops for Intelligent Continuous Security.
2. OVERVIEW OF DLL
2
The data link layer transforms the physical layer, a raw transmission facility, to
a link responsible for node-to-node (hop-to-hop) communication. Specific
responsibilities of the data link layer include framing, addressing, flow control,
error control, and media access control.
3. Services Provided to the Network
Layer
The network layer wants to be able to send packets to its
neighbors without worrying about the details of getting it there in one
piece.
Framing
Group the physical layer bit stream into units called frames. Frames are
nothing more than "packets" or "messages". By convention, we use the
term "frames" when discussing DLL.
Error
C
o
n
t
r
ol
Sender checksums the frame and transmits checksum together
with data. Receiver re-computes the checksum and compares it with the
received value.
Flow Control
Prevent a fast sender from overwhelming a slower receiver.
DLL DESIGN ISSUES
4. DATA LINK LAYER DESIGN ISSUES
Providing a well-defined service interface to the network
layer.
Dealing with transmission errors.
Regulating the flow of data so that slow receivers are not
swamped by fast senders
For this, the data link layer takes the packets it gets from the network layer
and encapsulates them into frames for transmission. Each frame contains a
frame header, a payload field for holding the packet, and a frame trailer
4
5. SERVICES PROVIDED TO THE NETWORK LAYER
5
The function of the data link layer is to provide services to the network
layer. The principal service is transferring data from the network layer
on the source machine to the network layer on the destination
machine.
The data link layer can be designed to offer various services. The
actual services offered can vary from system to system. Three
reasonable possibilities that are commonly provided are
1) Unacknowledged Connectionless service
2) Acknowledged Connectionless service
3) Acknowledged Connection-Oriented service
6. UNACKNOWLEDGED CONNECTIONLESS SERVICE
6
Unacknowledged connectionless service consists of having the
source machine send independent frames to the destination machine
without having the destination machine acknowledge them.
No logical connection is established beforehand or released
afterward. If a frame is lost due to noise on the line, no attempt is
made to detect the loss or recover from it in the data link layer.
This class of service is appropriate when the error rate is very low
so that recovery is left to higher layers. It is also appropriate for real-
time traffic, such as voice, in which late data are worse than bad
data. Most LANs use unacknowledged connectionless service in the
data link layer.
7. ACKNOWLEDGED CONNECTIONLESS SERVICE
7
When this service is offered, there are still no logical connections
used, but each frame sent is individually acknowledged.
In this way, the sender knows whether a frame has arrived correctly.
If it has not arrived within a specified time interval, it can be sent
again. This service is useful over unreliable channels, such as
wireless systems.
Adding Ack in the DLL rather than in the Network Layer is just an
optimization and not a requirement. If individual frames are
acknowledged and retransmitted, entire packets get through much
faster. On reliable channels, such as fiber, the overhead of a
heavyweight data link protocol may be unnecessary, but on wireless
channels, with their inherent unreliability, it is well worth the cost.
8. ACKNOWLEDGED CONNECTION-ORIENTED SERVICE
Here, the source and destination machines establish a
connection before any data are transferred. Each frame sent
over the connection is numbered, and the data link layer
guarantees
Furthermore,
that each frame sent is
indeed received. it guarantees
that each frame is received
exactly once and that all frames are received in the
right
order.
When connection-oriented service is used, transfers
go through three distinct phases.
In the first phase, the connection is established by having both sides
initialize variables and counters needed to keep track of which frames have
been received and which ones have not.
In the second phase, one or more frames are actually transmitted.
In the third and final phase, the connection is released, freeing up the
variables, buffers, and other resources used to maintain the connection
8
10. FRAMING
DLL translates the physical layer's raw bit
stream into discrete units (messages) called frames.
How can frame be transmitted so the receiver
can
detect frame boundaries? That is, how can the
receiver recognize the start and end of a frame?
Character Count
Flag byte with Byte Stuffing
Starting and ending flag with bite stuffing
Encoding Violations
10
11. FRAMING – CHARACTER COUNT
The first framing method uses a field in the header to specify
the number of characters in the frame. When the data link layer
at the destination sees the character count, it knows how many
characters follow and hence where the end of the frame is.
11
The trouble with this algorithm is that the count can be garbled by a
transmission error.
12. Use reserved characters to indicate the start and end of a frame. For instance,
use the two-character sequence DLE STX (Data-Link Escape, Start of TeXt)
to signal the beginning of a frame, and the sequence DLE ETX (End of TeXt)
to flag the frame's end.
The second framing method, Starting and ending character stuffing,
gets around the problem of resynchronization after an error by having
each frame start with the ASCII character sequence DLE STX and end
with the sequence DLE ETX.
Problem: What happens if the two-character sequence DLE
ETX
happens to appear in the frame itself?
Solution: Use character stuffing; within the frame, replace every occurrence
of DLE with the two-character sequence DLE DLE. The receiver reverses the
processes, replacing every occurrence of DLE DLE with a single DLE.
Example: If the frame contained ``A B DLE D E DLE'', the characters
transmitted over the channel would be ``DLE STX A B DLE DLE D E DLE
DLE DLE ETX''.
Disadvantage: character is the smallest unit that can be operated on; not all
architectures are byte oriented.
12
FRAMING – BYTE STUFFING
15. This technique allows data frames to contain an arbitrary number of bits and
allows character codes with an arbitrary number of bits per character. It
works like this. Each frame begins and ends with a special bit pattern,
01111110 (in fact, a flag byte).
Whenever the sender's data link layer encounters five consecutive 1s in
the
data, it automatically stuffs a 0 bit into the outgoing bit stream.
This bit stuffing is analogous to byte stuffing, in which an escape byte is
stuffed into the outgoing character stream before a flag byte in the data.
When the receiver sees five consecutive incoming 1 bits, followed by a 0 bit,
it automatically destuffs (i.e., deletes) the 0 bit
15
FRAMING – BIT STUFFING
18. PHYSICAL LAYER CODING VIOLATIONS
This Framing Method is used only in those networks in which
Encoding on the Physical Medium contains some redundancy.
Some LANs encode each bit of data by using two Physical Bits
i.e. Manchester coding is Used. Here, Bit 1 is encoded into high-
low(10) pair and Bit 0 is encoded into low-high(01) pair.
The scheme means that every data bit has a transition in the middle,
making it easy for the receiver to locate the bit boundaries. The
combinations high-high and low-low are not used for data but are
used for delimiting frames in some protocols.
19. ERROR CONTROL
Error control is concerned with insuring that all frames are eventually delivered
(possibly in order) to a destination. How? Three items are required.
Acknowledgements: Typically,
reliable
delivery is achieved using the
“acknowledgments with retransmission" paradigm, whereby the receiver
returns a special acknowledgment (ACK) frame to the sender indicating the
correct receipt of a frame.
In some systems, the receiver also returns a negative acknowledgment (NACK) for
incorrectly-received frames. This is nothing more than a hint to the sender so that it can
retransmit a frame right away without waiting for a timer to expire.
Timers: One problem that simple ACK/NACK schemes fail to address is
recovering from a frame that is lost, and as a result, fails to solicit an ACK or
NACK. What happens if an ACK or NACK becomes lost?
Retransmission timers are used to resend frames that don't produce an ACK. When sending
a frame, schedule a timer to expire at some time after the ACK should have been
returned. If the timer goes o, retransmit the frame.
Sequence Numbers: Retransmissions introduce the possibility of duplicate
frames. To suppress duplicates, add sequence numbers to each frame, so tha1t 9a
receiver can distinguish between new frames and old copies.
20. FLOW CONTROL
Flow control deals with throttling the speed of the sender to
match that of the receiver.
Two Approaches:
feedback-based flow control, the receiver sends back information
to the sender giving it permission to send more data or at least
telling the sender how the receiver is doing
rate-based flow control, the protocol has a built-in mechanism
that limits the rate at which senders may transmit data, without
using feedback from the receiver.
Various Flow Control schemes uses a common protocol
that contains well-defined rules about when a sender may transmit
the next frame. These rules often prohibit frames from being sent
until the receiver has granted permission, either implicitly 20
or
explicitly.
21. ERROR CORRECTION AND DETECTION
It is physically impossible for any data recording or transmission
medium to be 100% perfect 100% of the time over its entire
expected useful life.
In data communication, line noise is a fact of life (e.g., signal attenuation, natural
phenomenon such as lightning, and the telephone repairman).
As more bits are packed onto a square centimeter of disk storage, as
communications transmission speeds increase, the likelihood of error
increases-- sometimes geometrically.
Thus, error detection and correction is critical to accurate data
transmission, storage and retrieval.
Detecting and correcting errors requires redundancy -- sending
additional information along with the data.
21
22. TYPES OF ERRORS
There are two main types of errors in transmissions:
1. Single bit error : It means only one bit of data unit is changed from 1 to 0
or from 0 to 1.
2. Burst error : It means two or more bits in data unit are changed from 1 to 0
from 0 to 1. In burst error, it is not necessary that only consecutive bits are
changed. The length of burst error is measured from first changed bit to last
changed bit
22
23. ERROR DETECTION VS ERROR CORRECTION
There are two types of attacks against errors:
Error Detecting Codes: Include enough redundancy bits to detect
errors and use ACKs and retransmissions to recover from the errors.
Error Correcting Codes: Include enough redundancy to detect and
correct errors. The use of error-correcting codes is often referred to as
forward error correction.
23
24. ERROR DETECTION
Error detection means to decide whether the received data is correct or
not without having a copy of the original message.
Error detection uses the concept of redundancy, which means
adding extra bits for detecting errors at the destination.
24
25. VERTICAL REDUNDANCY CHECK (VRC)
25
Append a single bit at the end of data block such that the number of
ones is even
Even Parity (odd parity is similar)
0110011 01100110
0110001 01100011
VRC is also known as Parity Check. Detects all odd-number errors in
a data block
26. EXAMPLE OF VRC
The problem with parity is that it can only detect odd numbers of bit
substitution errors, i.e. 1 bit, 3bit, 5, bit, etc. errors. If there two,
four, six, etc. bits which are transmitted in error, using VRC will not
be able to detect the error.
26
27. LONGITUDINAL REDUNDANCY CHECK (LRC)
Longitudinal Redundancy Checks (LRC) seek to overcome the weakness of
simple, bit-oriented, one-directional parity checking.
LRC adds a new character (instead of a bit) called the Block Check Character
(BCC) to each block of data. Its determined like parity, but counted
longitudinally through the message (also vertically)
Its has better performance over VRC as it detects 98% of the burst errors (>10
errors) but less capable of detecting single errors
If two bits in one data units are damaged and two bits in exactly the same
positions in another data unit are also damaged, the LRC checker will not detect
an error.
27
11100111 11011101 00111001 10101001
11100111
11011101
00111001
10101001
10101010
11100111 11011101 00111001 10101001 10101010
Original Data LRC
28. TWO DIMENSIONAL PARITY CHECK
Upon receipt, each character is checked according to its VRC parity
value and then the entire block of characters is verified using the
LRC block check character.
28
30. ANOTHER EXAMPLE OF TWO DIMENSIONAL PARITY CHECK
Consider the following bit stream that has been encoded using
VRC, LRC and even parity. Locate the error if present
30
31. CYCLIC REDUNDANCY CHECK (CRC)
The cyclic redundancy check, or CRC, is a technique for detecting
errors in digital data, but not for making corrections when errors are
detected. It is used primarily in data transmission
In the CRC method, a certain number of check bits, often called a
checksum, are appended to the message being transmitted. The
receiver can determine whether or not the check bits agree with the
data, to ascertain with a certain degree of probability whether or not
an error occurred in transmission
The CRC is based on polynomial arithmetic, in particular, on
computing the remainder of dividing one polynomial in GF(2)
(Galois field with two elements) by another.
Can be easily implemented with small amount of hardware
Shift registers
XOR (for addition and subtraction) 31
32. GENERATOR POLYNOMIAL
32
A cyclic redundancy check (CRC) is a non-secure hash function designed to
detect accidental changes to raw computer data, and is commonly used in
digital networks and storage devices such as hard disk devices.
CRCs are so called because the check (data verification) code is
a redundancy (it adds zero information) and the algorithm is based on cyclic
codes.
The term CRC may refer to the check code or to the function that calculates it,
which accepts data streams of any length as input but always outputs a fixed-
length code
The divisor in a cyclic code is normally called the generator polynomial or
simply the generator. The proper
1. It should have at least two terms.
2. The coefficient of the term x0 should be 1.
3. It should not divide xt + 1, for t between 2 and n − 1.
4. It should have the factor x + 1.
33. CRC CALCULATION
Given a k-bit frame or message, the transmitter
generates an n-bit sequence, known as a frame check
sequence (FCS), so that the resulting frame, consisting of
(k+n) bits, is exactly divisible by some predetermined
number.
33
34. CYCLIC REDUNDANCY CHECK
Let M(x) be the message polynomial
Let P(x) be the generator polynomial
P(x) is fixed for a given CRC scheme
P(x) is known both by sender and receiver
Create a block polynomial F(x) based on M(x) and P(x)
such that F(x) is divisible by P(x)
P(x)
0
P(x)
F (x)
Q(x)
35. CYCLIC REDUNDANCY CHECK
Sending
1. Multiply M(x) by xn
2. Divide xnM(x) by P(x)
3. Ignore the quotient and keep the reminder C(x)
4. Form and send F(x) = xnM(x)+C(x)
Receiving
1. Receive F’(x)
2. Divide F’(x) by P(x)
3. Accept if remainder is 0, reject otherwise
36. EXAMPLE OF CRC
Consider a message 110010 represented by the polynomial M(x) = x5 + x4 + x
Consider a generating polynomial G(x) = x3 + x2 + 1 (1101)
This is used to generate a 3 bit CRC = C(x) to be appended to M(x).
Steps:
1. Multiply M(x) by x3 (highest power in G(x)). i.e. Add 3 zeros. 110010000
2. Divide the result by G(x). The remainder = C(x).
1101 long division into 110010000 (with subtraction mod 2)
= 100100 remainder 100
3. Transmit 110010000 + 100
To be precise, transmit: T(x) = x3M(x) + C(x)
= 110010100
4. Receiver end: Receive T(x). Divide by G(x), should have remainder 0.
Note if G(x) has order n - highest power is xn, then G(x) will cover
(n+1) bits
and the remainder will cover n bits. i.e. Add n bits to message. 36
42. CRC STANDARD POLYNOMIALS
42
CRC detects most of the larger burst errors with a high probability.
• For example CRC-12 detects 99.97% of errors with a length 12 or more.
CRC PERFORMANCE
CRC is a very effective error detection technique. If the divisor is chosen
according to the previously mentioned rules, its performance can be
summarized as follows:
CRC can detect all single-bit errors
CRC can detect all double-bit errors (three 1’s)
CRC can detect any odd number of errors (X+1)
CRC can detect all burst errors of less than the degree of the polynomial.
43. CHECKSUM
Checksum is the error detection scheme used in IP, TCP & UDP.
Here, the data is divided into k segments each of m bits. In the
sender’s end the segments are added using 1’s complement arithmetic
to get the sum. The sum is complemented to get the checksum. The
checksum segment is sent along with the data segments
At the receiver’s end, all received segments are added using 1’s
complement arithmetic to get the sum. The sum is complemented. If
the result is zero, the received data is accepted; otherwise discarded
The checksum detects all errors involving an odd number of bits. It
also detects most errors involving even number of bits.
43
50. CHECKSUM VS CRC
CRC is more thorough as opposed to Checksum in checking for
errors and reporting.
Checksum is the older of the two programs.
CRC has a more complex computation as opposed
to checksum.
Checksum mainly detects single-bit changes in data while CRC
can check and detect double-digit errors.
CRC can detect more errors than checksum due to its
more complex function.
A checksum is mainly employed in data validation
when implementing software.
A CRC is mainly used for data evaluation in analogue
da5t0a transmission.
51. ERROR CORRECTION
Once detected, the errors must be corrected
Two Techniques for error correction
Retransmission (aka Backward error correction)
Simplest, effective and most commonly used
technique –
involves correction by retransmission of data by the sender
Popularly called Automatic Repeat Request (ARQ)
Forward Error Correction (FEC)
Receiving device can correct the errors itself
51
52. ERROR CORRECTION
Messages (frames) consist of m data (message) bits and r redundancy
bits, yielding an n = (m+r)-bit codeword.
Hamming Distance. Given any two codewords, we can determine
how many of the bits differ. Simply exclusive or (XOR) the two
words, and count the number of 1 bits in the result.
Significance? If two codewords are d bits apart, d errors are required
to convert one to the other.
A code's Hamming Distance is defined as the minimum Hamming
Distance between any two of its legal codewords (from all possible
codewords).
To detect d 1-bit errors requires having a Hamming Distance of at
least d+1 bits.
To correct d errors requires 2d+1 bits. Intuitively, after d errors, the
garbled messages is still closer to the original message than any other
legal codeword.
53. HAMMING CODE
Ex : If The Value of m is 7, the Relation will Satisfy if The
Minimum Value of r is 4.
2^4 = 16 > 7+4+1
53
54. If The Number of Data bit is 7, Then The Position of
Redundant bits Are :
2^0=1 2^1=2
2^2=4 2^3=8
HAMMING CODE EXAMPLE
58. Hamming Code Cannot Correct a burst Error Directly.
it is Possible To Rearrange The Data and Then Apply The code.
Instead of Sending All the bits in The data Unit Together, we
can organize N units in a column.
Send The First bits of Each Followed by The Second bit of
each, and so on.
In This Way, if a burst Error of M bit Occurs (M<N), Then The
Error does not Corrupt M bit of Single Unit, it Corrupt Only 1 bit
of Unit.
Then We Can Correct it Using Hamming Code Scheme.
Burst Error Correction
60. FUNCTIONS AND REQUIREMENTS OF THE DATA LINK PROTOCOLS
The basic function of the layer is to transmit frames over a physical communication
link. Transmission may be half duplex or full duplex. To ensure that frames are
delivered free of errors to the destination station (IMP) a number of requirements are
placed on a data link protocol. The protocol (control mechanism) should be capable
of performing:
The identification of a frame (i.e. recognise the first and last bits of a frame).
The transmission of frames of any length up to a given maximum. Any bit pattern
is permitted in a frame.
The detection of transmission errors.
The retransmission of frames which were damaged by errors.
The assurance that no frames were lost.
In a multidrop configuration -> Some mechanism must be used for preventing
conflicts caused by simultaneous transmission by many stations.
The detection of failure or abnormal situations for control and
monitoring purposes.
It should be noted that as far as layer 2 is concerned a host message is pure data, every
single bit of which is to be delivered to the other host. The frame header pertains to layer 2
and is never given to the host.
60
61. ELEMENTARY DATA LINK PROTOCOLS
The protocols are normally implemented in software
by using one of the common
programming languages.
• An Unrestricted Simplex Protocol
• A Simplex Stop-and-Wait Protocol
• A Simplex Protocol for a Noisy Channel
61
62. AN UNRESTRICTED SIMPLEX PROTOCOL
In order to appreciate the step by step development of efficient and
complex protocols we will begin with a simple but unrealistic protocol. In
this protocol: Data are transmitted in one direction only
The transmitting (Tx) and receiving (Rx) hosts are always ready
Processing time can be ignored
Infinite buffer space is available
No errors occur; i.e. no damaged frames and no lost frames (perfect
channel)
62
63. A SIMPLEX STOP-AND-WAIT PROTOCOL
In this protocol we assume that Data are transmitted in one direction
only
No errors occur (perfect channel)
The receiver can only process the received information at a finite rate
These assumptions imply that the transmitter cannot send frames at a
rate faster than the receiver can process them.
The problem here is how to prevent the sender from flooding the receiver.
A general solution to this problem is to have the receiver provide some
sort of feedback to the sender. The process could be as follows: The
receiver send an acknowledge frame back to the sender telling the
sender that the last received frame has been processed and passed to
the host; permission to send the next frame is granted. The sender, after
having sent a frame, must wait for the acknowledge frame from the
receiver before sending another frame.
63
64. STOP & WAIT PROTOCOL
The sender sends one frame and waits for feedback from the
receiver. When the ACK arrives, the sender sends the next
frame
64
65. In this protocol the unreal "error free" assumption in protocol 2 is dropped.
Frames may be either damaged or lost completely. We assume that
transmission errors in the frame are detected by the hardware checksum. One
suggestion is that the sender would send a frame, the receiver would send an
ACK frame only if the frame is received correctly. If the frame is in error the
receiver simply ignores it; the transmitter would time out and would retransmit
it.
One fatal flaw with the above scheme is that if the ACK frame is lost or
damaged, duplicate frames are accepted at the receiver without the receiver
knowing it.
A SIMPLEX PROTOCOL FOR A NOISY CHANNEL
65
66. 66
Imagine a situation where the receiver has just sent an ACK frame back to the sender
saying that it correctly received and already passed a frame to its host. However, the
ACK frame gets lost completely, the sender times out and retransmits the frame. There
is no way for the receiver to tell whether this frame is a retransmitted frame or a new
frame, so the receiver accepts this duplicate happily and transfers it to the host. The
protocol thus fails in this aspect.
STOP-AND-WAIT, LOST FRAME STOP-AND-WAIT, LOST ACK FRAME
67. To overcome this problem it is required that the receiver be able to
distinguish a frame that it is seeing for the first time from a
retransmission. One way to achieve this is to have the sender put a
sequence number in the header of each frame it sends. The receiver
then can check the sequence number of each arriving frame to see if it
is a new frame or a duplicate to be discarded.
The receiver needs to distinguish only 2 possibilities: a new frame or a
duplicate; a 1-bit sequence number is sufficient. At any instant the
receiver expects a particular sequence number. Any wrong sequence
numbered frame arriving at the receiver is rejected as a duplicate. A
correctly numbered frame arriving at the receiver is accepted, passed to
the host, and the expected sequence number is incremented by 1
(modulo 2).
67
69. After transmitting a frame and starting the timer, the sender waits for
something exciting to happen.
Only three possibilities exist: an acknowledgement frame arrives undamaged,
a damaged acknowledgement frame staggers in, or the timer expires.
If a valid acknowledgement comes in, the sender fetches the next
packet from its network layer and puts it in the buffer, overwriting
the previous packet. It also advances the sequence number. If a
damaged frame arrives or no frame at all arrives, neither the buffer
nor the sequence number is changed so that a duplicate can be sent.
When a valid frame arrives at the receiver, its sequence number is checked
to see if it is a duplicate. If not, it is accepted, passed to the network layer,
and an acknowledgement is generated. Duplicates and damaged frames
are
not passed to the network layer.
69
71. DATA FRAME TRANSMISSION
71
Unidirectional
assumption protocols
Not general
in previous elementary
Full-duplex - approach 1
Two separate communication channels(physical circuits)
Forward channel for data
Reverse channel for acknowledgement
Problems: 1. reverse channel bandwidth wasted
2. cost
72. 72
Full-duplex - approach 2
Same circuit for both
directions
Data and
acknowledgement
are intermixed
How do we tell
acknowledgement from
data?
"kind" field telling data or
acknowledgement
Can it be improved?
Approach 3
Attaching acknowledgement
to outgoing data frames
DATA FRAME TRANSMISSION
73. PIGGYBACKING
73
Temporarily delaying transmission of outgoing
acknowledgement so that they can be hooked onto the
next outgoing data frame
Advantage: higher channel bandwidth utilization
Complication:
How long to wait for a packet to piggyback?
If longer than sender timeout period then sender retransmits
Purpose of acknowledgement is lost
Solution for timing complexion
If a new packet arrives quickly
Piggybacking
If no new packet arrives after a receiver ack timeout
Sending a separate acknowledgement frame
74. SLIDING WINDOW PROTOCOLS
The next three protocols are bidirectional protocols that belong to a
class called sliding window protocols. (max sending window size,
receiving window size)
One-bit sliding window protocol (1, 1)
Go back N (>1, 1)
Selective repeat (>1, >1)
The three differ among themselves in terms
of complexity, and buffer requirements.
Each outbound frame contains an n-bit sequence number
Range: 0 - MAX_SEQ (MAX_SEQ = 2n - 1)
efficiency,
For stop-and-wait, n = 1 restricting the sequence numbers to 0
and 1 only
74
75. SENDING & RECEIVING WINDOWS
At any instance of time
Sender maintains a set of sequence numbers of frames permitted to
send
These frames fall within sending window
Receiver maintains a set of sequence numbers of frames permitted
to accept
These frames fall within receiving window
Lower limit, upper limit, and size of two windows need not be the
same - Fixed or variable size
Senders Window contains frames can be sent or have been sent but
not yet acknowledged – outstanding frames
When a packet arrives from network layer
Next highest sequence number assigned
Upper edge of window advanced by 1
When an acknowledgement arrives
Lower edge of window advanced
75
76. If the maximum window size is n, the sender needs n buffers to hold the
unacknowledged frames. If the window ever grows to its maximum
size, the sending data link layer must forcibly shut off the network layer
until another buffer becomes free.
The receiving data link layer's window corresponds to the frames it may
accept. Any frame falling outside the window is discarded without
comment. When a frame whose sequence number is equal to the lower
edge of the window is received, it is passed to the network layer, an
acknowledgement is generated, and the window is rotated by one.
Unlike the sender's window, the receiver's window always remains at its
initial size.
76
77. SENDER SLIDING WINDOW
77
• At the sending site, to hold
the outstanding frames until
they are acknowledged, we
use the concept of a
window.
• The size of the window is
at most 2m -1 where m is
the number of bits for the
sequence number.
• Size of the window can be
variable, e.g. TCP.
• The window slides
to
include new unsent frames
when the correct ACKs are
received
78. RECEIVER SLIDING WINDOW
78
• Size of the window at the
receiving site is always 1
in this protocol.
• Receiver is always looking
for a specific frame to
arrive in a specific order.
• Any frame arriving out of
order is discarded and
needs to be resent.
• Receiver window slides
as
shown in fig.
• Receiver is
waiting for frame 0
in part a.
79. CONTROL VARIABLES
79
• Sender has 3 variables: S, SF, and SL
• S holds the sequence number of recently sent frame
• SF holds the sequence number of the first frame
• SL holds the sequence number of the last frame
• Receiver only has the one variable, R, that holds the sequence
number of the frame it expects to receive. If the seq. no. is the
same as the value of R, the frame is accepted, otherwise rejected.
81. A ONE BIT SLIDING WINDOW PROTOCOL
81
A sliding window of size 1, with a 3-bit sequence
number.
(a) Initially.
(b) After the first frame has been sent.
(c) After the first frame has been received.
82. 82
(a) Case 1: Normal case. (b) Case 7: Abnormal case.
The notation is (seq, ack, packet number). An asterisk
indicates
where a network layer accepts a packet.
A ONE BIT SLIDING WINDOW PROTOCOL
83. 83
ONE BIT SLIDING WINDOW PROTOCOL
Case 1: no error
A B
Time (0,1,A0)
(0,0,B0)
Case 2: data
lost A
Time (0,1,A0)
X
Timeout
(1,0,A1)
(1,1,B1)
(0,1,A2)
(0,0,B2)
(0,1,A0)
(0,0,B0)
*
*
*
*
*
*
*
*
Exp=0
Exp=1
Exp=0
Exp=1
Exp=0
Exp=1
Exp=0
Exp=0
Exp=1
B
Exp=0
Exp=1
84. 84
ONE BIT SLIDING WINDOW PROTOCOL
Case 3: data error Case 4: ack.
lost
Timeout
A
Time
Error
Timeout
(0,1,A0)
(0,1,A0)
(0,0,B0)
(0,1,A0)
(0,1,A0)
(0,0,B0)
(0,0,B0)
X
duplicate,
discarded
*
*
* *
B
Exp=0
Exp=1
Exp=0
B
A
Exp=0 Time
Exp=0
Exp=1
Exp=1 Exp=1
85. 85
ONE BIT SLIDING WINDOW PROTOCOL
Case 6:
outgoing
frame timeout
A
Time
Timeout
Case 5: early
timeout
A
Time
Timeout
(0,1,A0)
(0,1,A0)
(0,0,B0)
(0,1,A0)
(1,1,A1)
(0,1,B0)
duplicate,
discarded
(1,1,B1)
ACK 0
Exp=0
B
Exp=0
Exp=0
B
Exp=0
Exp=0
*
Exp=
*
1
Exp=1
*
Exp=1
*
Exp=1 (1,0,A1)
*
Exp=0
*
Exp=0
*
86. 86
PERFORMANCE OF STOP-AND-WAIT PROTOCOL
Assumption of previous
protocols:
Transmission time is negligible
False, when transmission time is long
Example - satellite communication
channel capacity: 50 kbps, frame size:
1kb round-trip propagation delay: 500
msec
Time: t=0
t=20 msec
t=270 msec
t=520
msec
start to send 1st bit in
frame frame sent
completely frame arrives
best case of ack. Received
Sender blocked 500/520 = 96% of time
Bandwidth utilization 20/520 = 4%
t
0
20
270
520
Conclusion:
Long transit time + high bandwidth + short frame length
87. 87
• In stop-and-wait, at any point in time, there is only one frame
that is sent and waiting to be acknowledged.
• This is not a good use of transmission medium.
• To improve efficiency, multiple frames should be in transition
while waiting for ACK.
Solution:
Allowing w frames sent before blocking
Problem: errors
Solutions
Acknowledge n means frames
n, n-1, acknowledged (i.e.,
received correctly)
n-2,… are
Performance of Stop-and-Wait
Protocol
88. GO BACK N PROTOCOL
Improves efficiency of Stop and Wait by not waiting
Keep Channel busy by continuing to send frames
Allow a window of upto Ws outstanding frames
Use m-bit sequence numbering
Receiver discards all subsequent frames following an
error one, and send no acknowledgement for those
discarded
Receiving window size = 1 (i.e., frames must be accepted
in the order they were sent)
Sending window might get full
If so, re-transmitting unacknowledged frames
Wasting a lot of bandwidth if error rate is high
89. 89
GO BACK N PROTOCOL
Frames 0 and 1 are correctly received and acknowledged. Frame
2, however, is damaged or lost. The sender, unaware of this
problem, continues to send frames until the timer for frame 2
expires. Then it backs up to frame 2 and starts all over with it,
sending 2, 3, 4, etc. all over again.
91. GO-BACK-N ARQ, SENDER WINDOW SIZE
• Size of the sender window must be less than 2 m. Size of the
receiver is always 1. If m = 2, window size = 2 m – 1 = 3.
• Fig compares a window size of 3 and 4.
Accepts as
the 1st
frame in
the next
cycle-an
error
92. SELECT REPEAT PROTOCOL
Receiver stores correct frames following the bad one
Sender retransmits the bad one after noticing
Receiver passes data to network layer and acknowledge with
the highest number
Receiving window > 1 (i.e., any frame within the window may
be accepted and buffered until all the preceding one passed to
the network layer. Might need large memory
ACK for frame n implicitly acknowledges all frames ≤ n
SRP is often combined with NAK
When error is suspected by receiver, receiver request
retransmission of a frame
Arrival of a damaged frame
Arrival of a frame other than the expected
NAKs stimulate retransmission before the
corresponding timer 92
94. SELECTIVE REPEAT ARQ, SENDER AND RECEIVER WINDOWS.
• Go-Back-N ARQ simplifies the process at the receiver site. Receiver only keeps
track of only one variable, and there is no need to buffer out-of-order frames,
they are simply discarded.
• However, Go-Back-N ARQ protocol is inefficient for noisy link. It bandwidth
inefficient and slows down the transmission.
• In Selective Repeat ARQ, only the damaged frame is resent. More bandwidth
efficient but more complex processing at receiver.
• It defines a negative ACK (NAK) to report the sequence number of a damaged
frame before the timer expires.
96. SELECTIVE REPEAT ARQ, LOST FRAME
• Frames 0 and 1
are accepted when
received because
they are in the
range specified by
the
receiver window.
Same for frame 3.
• Receiver sends a
NAK2 to show
that frame 2 has
not been received
resends
and then sender
only
frame 2 and it is
accepted as it is in
the range of the
window.
97. SELECTIVE REPEAT
DILEMMA
97
Example:
seq #’s: 0, 1, 2, 3
window size=3
receiver sees no
difference in
two scenarios!
incorrectly passes
duplicate data as new in
(a)
Q: what relationship
between seq # size and
window size?
98. SELECTIVE REPEAT ARQ, SENDER WINDOW SIZE
• Size of the sender and receiver windows must be at most one-half of 2 m.
• If m = 2, window size should be 2 m /2 = 2. Fig compares a window size
of 2 with a window size of 3. Window size is 3 and all ACKs are lost, sender
sends duplicate of frame 0, window of the receiver expect to receive frame 0
(part of the window), so accepts frame 0, as the 1st frame of the next cycle –
an error.
99. 99
SELECT REPEAT PROTOCOL - WINDOW SIZE
Problem is caused by new and old windows overlapped
Solution
Window size=(MAX_SEQ+1)/2
E.g., if 4-bit window is used, MAX_SEQ = 15
window size = (15+1)/2 = 8
Number of buffers needed
= window size
100. 00
1
SELECT REPEAT PROTOCOL
(a) Initial situation with a window size seven.
(b) After seven frames sent and received, but not
acknowledged.
(c) Initial situation with a window size of four.
(d) After four frames sent and received, but not
acknowledged.
101. 101
ACKNOWLEDGEMENT TIMER
Problem
If the reverse traffic is light, effect?
If there is no reverse traffic, effect?
Solution
Acknowledgement timer:
If no reverse traffic before timeout
send separate acknowledgement
Essential: ack timeout < data frame
timeout Why?