ITM820 Exam Prep.docx

38 Pages
Unlock Document

Information Technology Management
ITM 820
Farid Shirazi

Lecture 6 ACID Atomicity Consistency Isolation Durability is a set of properties that guarantee that database transactions are processed reliablyfour primary attributes ensured to any transaction by a transaction manager which is also called a transaction monitor Atomicity In a transaction involving two or more discrete pieces of information either all of the pieces are committed or none areConsistency A transaction either creates a new and valid state of data or if any failure occurs returns all data to its state before the transaction was startedIsolation A transaction in process and not yet committed must remain isolated from any other transactionDurability Committed data is saved by the system such that even in the event of a failure and system restart the data is available in its correct stategrid computingA form of networking Unlike conventional networks that focus on communication among devices grid computing harnesses unused processing cycles of all computers in a network for solving problems too intensive for any standalone machineapplying the resources of many computers in a network to a single problem at the same timeusually to a scientific or technical problem that requires a great number of computer processing cycles or access to large amounts of data Distributed Systemscollection of computers that act work and appear as one large computer Looking at the issues that plague distributed systemsConcurrency failure recovery and naming are central issues in the design of secure distributed systems An attack such as replay of protocol could be seen as concurrency failureo replay of protocolHackers changing packetsData redundancy is generally used to provide faulttolerance Obviously replication of data increases the risk of a compromise of confidentiality Finally naming difficulties make public key infrastructure extremely complicated Concurrencyproperty of systems in which several computations are executing simultaneously and potentially interacting with each other Processes are said to be concurrent if they run at the same time There are a whole bunch of problems relating to the implementation of concurrent systemso As pointed out in the textbook data update order of updates deadlock nonconvergent state and secure time are essential components of any concurrent system Dead Lock Dining PhilosopherThe challenge in the dining philosophers problem is to design a protocol so that the philosophers do not deadlock ie every philosopher has a chopstick so that no philosopher starves ie when a philosopher is hungry heshe eventually gets chopsticks Additionally the protocol should try to be as efficient as possible In another words one should try to minimize the time that philosophers spend waiting to eatFault Tolerance and Failure RecoveryA classical coordination problem in distributed computing is known as the Byzantine Agreement problem which was introduced by Lamport Pease and Shostak around 1980 Byzantine failures in which components of a system fail in arbitrary ways ie not just by stopping or crashing but by processing requests incorrectly corrupting their local state andor producing incorrect or inconsistent outputsBroadly speaking one of the most fundamental problems for distributed computing is this Can a set of concurrent processes achieve coordination in spite of the faulty behavior of some of them The faults to be tolerated can be of various kinds The most stringent requirement for a faulttolerant protocol is to be resilient to socalled Byzantine failures ie when a faulty process behaves in an arbitrary way even conspiring together with other faulty processes in an attempt to make the protocol work incorrectlyByzantineThe straightforward algorithm ie the general process transmits its initial value to all processes and every reliable process u assigns this value to bau does not work because the general process itself may be unreliable and hence may transmit different values to different processes FaultAnother important issue in faulttolerance is redundancy Data redundancy has been used to ensure data recovery in disaster situations such as earthquake or terrorist attacks Redundancy is attained when the same data values are stored more than once in a table or when the same values are stored in more than one tableOne of the biggest disadvantages of data redundancy is that it increases the size of the database unnecessarilyRedundancy has also been utilized to achieve fault tolerant computation and to achieve reliable communication in networks of processorsDistributed systems and namesIn implementing distributed systems it is very important to carefully manage naming and identity problems The textbook includes a nice summary of Needhams 10 principles for distributed naming Though Needhams 10 principles are useful the reality is much more complex For most of the time the following factors have to be taken into account when designing distributed secure systems the relationship between naming and identity cultural assumptions semantic content of names stability of names scalability of naming systems uniqueness of names and the restriction on the use of namesNamingIn practice many successful naming systems have been designed For example The Internet Domain Name Systems that primarily map hostnames to an IP address For example kitcampuscom has the IP address 212206211148 For more details see httpwwwietforgrfcrfc1034txt The IETF Uniform Resource Identifiers URI For example the URL object httpwwwietforgrfcrfc2396txt contains the generic syntax for URL Uniform Resource Names URN Namespace Definition Mechanisms httpwwwietforgrfcrfc3406txt The Abstract Syntax Notation version 1 ASN1 naming system for objects For example when Microsoft designs a new file format for a new software product in the Object Identifier Tree it will be registered as 1 2 840 113556 4 xxx where 1 means ISO 2 means ISOMembercountries 840 means USA 113556 means Microsoft and xxx means Microsoft new file format CORBA 2006 naming systems Java Naming conventions For example a wellnamed Java package could have a name comsunjavaxswingkitsecurity Naming systems have been one of the hottest attacking points Indeed some Trojan Horses use naming conventions to attack the system eg some attacks on DNS Although URI syntax is quite reach it can create a potential security flows with a possible code injection into URI processing system that doesnt apply input filtering and validationCloud ComputingCloud computing cloud is an evolving term that describes the development of many existing technologies and approaches to computing into something different Cloud separates application and information resources from the underlying infrastructure and the mechanisms used to deliver themCloud enhances collaboration agility scaling and availability and provides the potential for cost reduction through optimized and efficient computingMore specifically cloud describes the use of a collection of services applications information and infrastructure comprised of pools of compute network information and storage resourcesThese components can be rapidly orchestrated provisioned implemented and decommissioned and scaled up or down providing for an ondemand utilitylike model of allocation and consumption
More Less

Related notes for ITM 820

Log In


Join OneClass

Access over 10 million pages of study
documents for 1.3 million courses.

Sign up

Join to view


By registering, I agree to the Terms and Privacy Policies
Already have an account?
Just a few more details

So we can recommend you notes for your school.

Reset Password

Please enter below the email address you registered with and we will send you a link to reset your password.

Add your courses

Get notes from the top students in your class.