This document summarizes the key points of the paper "End-to-End Arguments in System Design". It discusses how the end-to-end principle states that application-specific functions should be implemented in end systems rather than intermediate systems when possible. Examples like file transfers and transaction management are provided. The history and application of these arguments to other areas like operating systems are also covered.
Basic Introduction to Cassandra with Architecture and strategies.
with big data challenge. What is NoSQL Database.
The Big Data Challenge
The Cassandra Solution
The CAP Theorem
The Architecture of Cassandra
The Data Partition and Replication
This is a presentation of the popular NoSQL database Apache Cassandra which was created by our team in the context of the module "Business Intelligence and Big Data Analysis".
This session goes through the understanding of Apache Kafka, its components and working with best practices to achieve fault tolerant system with high availability and consistency by tuning Kafka brokers and producer to achieve the best result.
Basic Introduction to Cassandra with Architecture and strategies.
with big data challenge. What is NoSQL Database.
The Big Data Challenge
The Cassandra Solution
The CAP Theorem
The Architecture of Cassandra
The Data Partition and Replication
This is a presentation of the popular NoSQL database Apache Cassandra which was created by our team in the context of the module "Business Intelligence and Big Data Analysis".
This session goes through the understanding of Apache Kafka, its components and working with best practices to achieve fault tolerant system with high availability and consistency by tuning Kafka brokers and producer to achieve the best result.
Cassandra is a free and open-source distributed NoSQL database management system designed to handle large amounts of data across many commodity servers, providing high availability with no single point of failure. The slides explain the details of data modeling in Cassandra.
4.1Introduction
- Potential Threats and Attacks on Computer System
- Confinement Problems
- Design Issues in Building Secure Distributed Systems
4.2 Cryptography
- Symmetric Cryptosystem Algorithm: DES
- Asymmetric Cryptosystem
4.3 Secure Channels
- Authentication
- Message Integrity and Confidentiality
- Secure Group Communication
4.4 Access Control
- General Issues
- Firewalls
- Secure Mobile Code
4.5 Security Management
- Key Management
- Issues in Key Distribution
- Secure Group Management
- Authorization Management
Fisheye State Routing (FSR) - Protocol OverviewYoav Francis
Overview of the Fisheye State Routing (FSR) for cellular networks, IDC 2012
By Yoav Francis and Nir Solomon
(Part of a performance comparison of various routing algorithms in cellular networks)
Architecture Challenges In Cloud ComputingIndicThreads
Session Presented @IndicThreads Cloud Computing Conference, Pune, India ( http://u10.indicthreads.com )
------------
The Java EE 6 platform is an extreme makeover from the previous versions. It breaks the “one size fits all” approach with Profiles and improves on the Java EE 5 developer productivity features. It enables extensibility by embracing open source libraries and frameworks such that they are treated as first class citizens of the platform. NetBeans, Eclipse, and IntelliJ provide extensive tooling for Java EE 6.
But how can you leverage all of this on a cloud ?
GlassFish v3, the Reference Implementation of Java EE 6, can easily run on multiple cloud infrastructures. This talk will provide a brief introduction to Java EE 6 and GlassFish v3. The attendees will learn how to create a simple Java EE 6 sample application and deploy them on GlassFish v3 running locally. Then it will deploy that sample using Amazon, RightScale, Joyent, and Elastra cloud infrastructures. It will also show how servers are dynamically provisioned in some environments to meet the demand. The talk will also explain the advantages of each approach enabling you to choose the optimal strategy for your environment.
Takeaways from the session
The attendees will be able to learn how to deploy a Java EE 6 application in different cloud environments. They’ll also learn about the pros/cons of these infrastructures.
Presentation detailed about SDN (Software Defined Network) overview . It covers from basics like different controllers and touches upon some technical details.
Covers Terminologies used, OpenFlow, Controllers, Open Day light, Cisco ONE, Google B4, NFV,etc
Reliable data transfer CN - prashant odhavani- 160920107003Prashant odhavani
transport layer services
multiplexing/demultiplexing
connectionless transport: UDP
principles of reliable data transfer
connection-oriented transport: TCP
reliable transfer
flow control
connection management
principles of congestion control
TCP congestion control
A brief report on Client Server Model and Distributed Computing. Problems and Applications are also discussed and Client Server Model in Distributed Systems is also discussed.
Cassandra is a free and open-source distributed NoSQL database management system designed to handle large amounts of data across many commodity servers, providing high availability with no single point of failure. The slides explain the details of data modeling in Cassandra.
4.1Introduction
- Potential Threats and Attacks on Computer System
- Confinement Problems
- Design Issues in Building Secure Distributed Systems
4.2 Cryptography
- Symmetric Cryptosystem Algorithm: DES
- Asymmetric Cryptosystem
4.3 Secure Channels
- Authentication
- Message Integrity and Confidentiality
- Secure Group Communication
4.4 Access Control
- General Issues
- Firewalls
- Secure Mobile Code
4.5 Security Management
- Key Management
- Issues in Key Distribution
- Secure Group Management
- Authorization Management
Fisheye State Routing (FSR) - Protocol OverviewYoav Francis
Overview of the Fisheye State Routing (FSR) for cellular networks, IDC 2012
By Yoav Francis and Nir Solomon
(Part of a performance comparison of various routing algorithms in cellular networks)
Architecture Challenges In Cloud ComputingIndicThreads
Session Presented @IndicThreads Cloud Computing Conference, Pune, India ( http://u10.indicthreads.com )
------------
The Java EE 6 platform is an extreme makeover from the previous versions. It breaks the “one size fits all” approach with Profiles and improves on the Java EE 5 developer productivity features. It enables extensibility by embracing open source libraries and frameworks such that they are treated as first class citizens of the platform. NetBeans, Eclipse, and IntelliJ provide extensive tooling for Java EE 6.
But how can you leverage all of this on a cloud ?
GlassFish v3, the Reference Implementation of Java EE 6, can easily run on multiple cloud infrastructures. This talk will provide a brief introduction to Java EE 6 and GlassFish v3. The attendees will learn how to create a simple Java EE 6 sample application and deploy them on GlassFish v3 running locally. Then it will deploy that sample using Amazon, RightScale, Joyent, and Elastra cloud infrastructures. It will also show how servers are dynamically provisioned in some environments to meet the demand. The talk will also explain the advantages of each approach enabling you to choose the optimal strategy for your environment.
Takeaways from the session
The attendees will be able to learn how to deploy a Java EE 6 application in different cloud environments. They’ll also learn about the pros/cons of these infrastructures.
Presentation detailed about SDN (Software Defined Network) overview . It covers from basics like different controllers and touches upon some technical details.
Covers Terminologies used, OpenFlow, Controllers, Open Day light, Cisco ONE, Google B4, NFV,etc
Reliable data transfer CN - prashant odhavani- 160920107003Prashant odhavani
transport layer services
multiplexing/demultiplexing
connectionless transport: UDP
principles of reliable data transfer
connection-oriented transport: TCP
reliable transfer
flow control
connection management
principles of congestion control
TCP congestion control
A brief report on Client Server Model and Distributed Computing. Problems and Applications are also discussed and Client Server Model in Distributed Systems is also discussed.
International Journal of Engineering Research and Applications (IJERA) is an open access online peer reviewed international journal that publishes research and review articles in the fields of Computer Science, Neural Networks, Electrical Engineering, Software Engineering, Information Technology, Mechanical Engineering, Chemical Engineering, Plastic Engineering, Food Technology, Textile Engineering, Nano Technology & science, Power Electronics, Electronics & Communication Engineering, Computational mathematics, Image processing, Civil Engineering, Structural Engineering, Environmental Engineering, VLSI Testing & Low Power VLSI Design etc.
Truly dependable software systems should be built with structuring techniques able to decompose the software complexity without
hiding important hypotheses and assumptions such as those regarding
their target execution environment and the expected fault- and system
models. A judicious assessment of what can be made transparent and
what should be translucent is necessary. This paper discusses a practical
example of a structuring technique built with these principles in mind:
Reflective and refractive variables. We show that our technique offers
an acceptable degree of separation of the design concerns, with limited
code intrusion; at the same time, by construction, it separates but does
not hide the complexity required for managing fault-tolerance. In particular, our technique offers access to collected system-wide information
and the knowledge extracted from that information. This can be used
to devise architectures that minimize the hazard of a mismatch between
dependable software and the target execution environments.
A distributed system in its most simplest definition is a group of computers working together as to
appear as a single computer to the end-user. These machines have a shared state, operate
concurrently and can fail independently without affecting the whole system’s uptime.
This is in line with ever-growing technological expansion of the world, distributed systems are
becoming more and more widespread. Take a look at the increasing number of available
computer technologies/innovation around, this is sporadically increasing, and this result in
intense computational requirement.
Yeah, Moore’s law proposed more computing power by fitting more transistors (which
approximately doubles every two years) into a simple chip using cost-efficient approach - cool,
but over the past 5 years, there has been little deviation from this - ability to scale horizontally
and not just vertically alone.
This is a notes about basic introduction of OSI Model & TCP/IP Model. It contain details about the seven layers of the OSI Model which are Application layer, Presentation Layer, Session Layer, Transport Layer, Network Layer, Data Link Layer, Physical Layer
The OSI Model (Open Systems Interconnection Model) is a conceptual framework used to describe the functions of a networking system. The OSI model characterizes computing functions into a universal set of rules and requirements in order to support interoperability between different products and software. In the OSI reference model, the communications between a computing system are split into seven different abstraction layers: Physical, Data Link, Network, Transport, Session, Presentation, and Application.
TCP/IP Model helps you to determine how a specific computer should be connected to the internet and how data should be transmitted between them. It helps you to create a virtual network when multiple computer networks are connected together. The purpose of the TCP/IP model is to allow communication over large distances.
Resist Dictionary Attacks Using Password Based Protocols For Authenticated Ke...IJERA Editor
A parallel file system is a type of distributed file system that distributes file data across multiple servers and
provides for concurrent access by multiple tasks of a parallel application. In many to many communications or
multiple tasks, key establishments are a major problem in parallel file system. So we propose a variety of
authenticated key exchange protocols that are designed to address the above issue. In this paper, we also study
the password-based protocols for authenticated key exchange (AKE) to resist dictionary attacks. Password-based
protocols for authenticated key exchange (AKE) are designed to work to resist the use of passwords drawn from
a space so small that attacker might well specify, off line, all possible passwords. While many such protocols
have been suggested, the elemental theory has been lagging. We commence by interpreting a model for this
problem, to approach password guessing, forward secrecy, server compromise, and loss of session keys.
The open system interconnection model, better known as the OSI Model, is a network map that was originally developed as a universal standard for creating networks. But instead of serving as a model with agreed-upon protocols that would be used worldwide, the OSI model has become a teaching tool that shows how different tasks within a network should be handled in order to promote error-free data transmission.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™UiPathCommunity
In questo evento online gratuito, organizzato dalla Community Italiana di UiPath, potrai esplorare le nuove funzionalità di Autopilot, il tool che integra l'Intelligenza Artificiale nei processi di sviluppo e utilizzo delle Automazioni.
📕 Vedremo insieme alcuni esempi dell'utilizzo di Autopilot in diversi tool della Suite UiPath:
Autopilot per Studio Web
Autopilot per Studio
Autopilot per Apps
Clipboard AI
GenAI applicata alla Document Understanding
👨🏫👨💻 Speakers:
Stefano Negro, UiPath MVPx3, RPA Tech Lead @ BSP Consultant
Flavio Martinelli, UiPath MVP 2023, Technical Account Manager @UiPath
Andrei Tasca, RPA Solutions Team Lead @NTT Data
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
The Metaverse and AI: how can decision-makers harness the Metaverse for their...Jen Stirrup
The Metaverse is popularized in science fiction, and now it is becoming closer to being a part of our daily lives through the use of social media and shopping companies. How can businesses survive in a world where Artificial Intelligence is becoming the present as well as the future of technology, and how does the Metaverse fit into business strategy when futurist ideas are developing into reality at accelerated rates? How do we do this when our data isn't up to scratch? How can we move towards success with our data so we are set up for the Metaverse when it arrives?
How can you help your company evolve, adapt, and succeed using Artificial Intelligence and the Metaverse to stay ahead of the competition? What are the potential issues, complications, and benefits that these technologies could bring to us and our organizations? In this session, Jen Stirrup will explain how to start thinking about these technologies as an organisation.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
End to-end arguments in system design
1. END-TO-END ARGUMENTS IN
SYSTEM DESIGN
Presented by: Nadia Rashid Al-okka
College of Engineering
Computer Science and Engineering Department
CMPT 541 Advanced Computer Network
Spring 2013
2. Outline
Introduction
Problem definition
End-to-end caretaking
A too-real example
Other examples of end-to-end argument
1. Delivery guarantees
2. Secure transmission of data
3. Duplicate message suppression
4. Guaranteeing FIFO message delivery
5. Transaction management
Identifying the ends
History and application to other system areas
Discussion and Conclusion
About the paper
3. Introduction
Choosing the proper boundaries between functions is perhaps the primary activity
of the computer system designer.
Design principles that provide guidance in this choice of function placement are
among the most important tools of a system designer.
This paper discusses one class of function placement argument that has been used
for many years.
It focuses on the communication network version of the argument.
4. Problem Definition
This paper presents a design principle that helps guide placement of functions
among the modules of a distributed computer system.
The principle, called the end-to-end argument, suggests that functions placed at low
levels of a system may be redundant or of little value when compared with the cost
of providing them at that low level.
In other words, the end-to-end principle states that application-specific functions
ought to reside in the end hosts of a network rather than in intermediary nodes –
provided they can be implemented "completely and correctly" in the end hosts.
6. A careful designer might be concerned about…
The file, though originally written correctly onto the disk at host A, if read now may contain
incorrect data, perhaps because of hardware faults in the disk storage system.
A software mistake in buffering and copying the data of the file, either at host A or host B.
A hardware transient error while doing the buffering and copying, either at host A or host B.
The communication system might drop or change the bits in a packet, or lose a packet or deliver a
packet more than once.
Either of the hosts may crash part way through the transaction after performing an unknown
amount (perhaps all) of the transaction.
7. A too-real example
One network system involving several local networks connected by gateways used a packet checksum
on each hop from one gateway to the next, on the assumption that the primary threat to correct
communication was corruption of bits during transmission.
Application programmers, aware of this checksum, assumed that the network was providing reliable
transmission, without realizing that the transmitted data was unprotected while stored in each
gateway.
One gateway computer developed a transient error in which while copying data
Over a period of time many of the source files of an operating system were repeatedly transferred
through the defective gateway. Some of these source files were corrupted by byte exchanges, and
their owners were forced to the ultimate end-to-end error check: manual comparison with and
correction from old listings.
8. Some Performance Aspects..
A network that is somewhat unreliable, dropping one message of each hundred messages sent.
The probability that all packets of a file arrive correctly decreases exponentially with the file
length.
The expected time to transmit the file grows exponentially with file length.
Clearly, some effort at the lower levels to improve network reliability can have a significant effect
on application performance
“The end-to-end check of the file transfer application must still be implemented no matter how
reliable the communication system becomes”
The usual technique for increasing packet reliability is some sort of per packet error check with
a retry protocol.
9. 1. Other examples- Delivery guarantees
Basically, taking about acknowledgment..
Strategy 1: acknowledgement once it reaches the host by replying an
acknowledgment msg. Eg: APRANET-RFNM
Not good enough since we are not sure that the data reaches the issuing request
application…. End-to-end ACK is required
Strategy 2: Target host is sophisticated enough to accept delivery of data
and to be responsible of delivering it to the targeted application.
Still need the end-to-end ACK, we may have a negative ACK.
Discuss??
10. 2. Other examples- Secure transmission of data
1. If the data transmission system performs encryption and decryption, it
must be trusted to manage securely the required encryption keys.
2. The data will be in the clear when it reaches the target application.
3. The authenticity of the message must still be checked by the application.
11. 2. Secure transmission of data-Discussion
If the application performs end-to-end encryption, data is never exposed
outside the application.
No need for the communication automatic encryption all among the traffic
way.
The automatic encryption of all data as it is put into the network is one
more firewall.
Neither mechanisms can satisfy both requirements completely. Discuss!!
12. 3. Other examples- Duplicate message suppression
A message or a part of a message may be delivered twice, typically as a result of
time-out-triggered failure detection and retry mechanisms operating within the
network.
The network can provide the function of watching for and suppressing any such
duplicate messages, or it can simply deliver them.
Unfortunately, even if the network suppresses duplicates, the application itself may
accidentally originate duplicate requests, in its own failure/retry procedures.
These application level duplications look like different messages to the
communication system, so it cannot suppress them; suppression must be
accomplished by the application itself with knowledge of how to detect its own
duplicates.
13. 4. Other examples- Guaranteeing FIFO message delivery
Ensuring that messages arrive at the receiver in the same order they are
sent is another function usually assigned to the communication subsystem.
For the same virtual circuit, easy, but for independent virtual circuit!!
Discuss!!
Distributed application!
An independent mechanism at a higher level than the communication
subsystem must control the ordering of actions.
14. 5. Other examples- Transaction management
They have applied the end-to-end argument in the construction of the
SWALLOW distributed data storage system, where it leads to significant
reduction in overhead.
SWALLOW provides data storage servers called repositories that can be used
remotely to store and retrieve data.
The low-level message communication protocol is significantly simplified.
The acknowledgement that the originator of a write request needs is that
the data was stored safely.
No acknowledgments for read operations which gives better performance.
.
15. Identifying the ends
Strong end-to-end arguments applied on packet voice connection?? Discuss!
What if it was recorded message?? Person on the other hand can’t repeat
what he said Discuss!!
16. History and application to other system areas
Examples discussed are related in older papers
End-to-end arguments are often applied to error control and correctness in
application systems.
Banks and sensitive system may need to use the end-to-end argument more
seriously since the mistake costs MONEY!
A version of the end-to-end argument in a non-communication application
was developed in the 1950's
17. Discussion and Conclusion
Designer may be tempted to "help" the users by taking on more function than necessary
in the communication. Awareness of end-to-end arguments can help to reduce such
temptations.
Looking for "layered" communication protocols, but without clearly defined criteria for
assigning functions to layers. Such layering is desirable to enhance modularity.
End-to-end arguments may be viewed as part of a set of rational principles for organizing
such layered systems.
18. About the Paper…
Paper Title: End-to-End Arguments in System Design
Authors: J.H. Saltzer, D.P. Reed and D.D. Clark
Published in: ACM Transactions in Computer Systems 2, 4, November, 1984
Cited by more than 250 papers
Old but it was the basic for the known end-to-end principles
Language was clear and technical
Organized but unusual ?
History and background are presented at the end of the paper.
References are mentioned in the History section
19.
20. Summary
Pushing application-specific functions as possible to the lower layers
End-to-end arguments are the basics of many operating systems and
networking principles.
End-to-end arguments may be viewed as part of a set of rational principles
for organizing such layered systems.
Choosing when to make the connection reliable and not reliable is
important (such in live voice msg or recorded msg)