IT Infrastructure

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 147

www.unitedworld.

in
What is Information Technology
Infrastructure?
IT infrastructure is the shared
technology resource that provide
the platform for the firms specific
Information Systems applications
IT infrastructure
• Consists of
– Computing Platforms ( hardware and system software) including large
mainframes, servers, desktop and laptop computers, PDA’s and smart phones
and internet appliances
– Data Management, Storage area networks (SAN), Network attached storage
(NAS)
– Telecommunications, networking and internet infrastructure
– Middleware including Application servers,, Enterprise Application Integration,
Serivice Oriented Architecture (SOA)
– Enterprise Application software including ERP, CRM, SCM
– Data Warehouse, Business Intelligence, Business Analytics, Decision Support
Systems
– Collaboration and Communication Systems – includes email, instant
messaging, social networking, wikis, blogs etc.
– Knowledge management
– Specialized systems
Hardware
Hardware Platforms

• History of Computing - Eniac


• Mainframes
• Mini computers
• Micro computers
• Rapid growth in Semiconductor Technology
– Moores Law
• Personal Computers – Apple, IBM PC
• Multi core Processors
Hardware Platforms

• Multi processing
• Memory – SRAM, DRAM, Error Correcting Memory,
Cache Memory
• Disc Drive, SATA, SCSI
• RAID
• Network Attached Storage (NAS)
• Storage Area Network (SAN), Fiber Channel, iSCSI
• Servers, Blade servers
• Parallel processing
• Supercomputers
Telecommunications and
Networking
Telecommunications

• Telecommunications is the exchange of Information


in any form (voice, text, data, images, audio, video)
over networks over a geographical area of any size
• Earlier telecommunication technologies depended
on voice oriented analog transmission systems for
voice and data networks for interconnecting
computers at different locations
• In the past each of the firms communication be it
voice, data, video conferencing and wired/wireless
operated independently from each other
Unified Communications

• Technology innovation has permitted convergence of both into a single


digital network allowing –
– Significantly higher speeds
– Movement of larger amounts of information
– Much lower error rates
– Voice and video just another type of data
– Lowered costs
• Growth of wireless platforms for voice as well as data (3G, Wi-Fi, Wi-Fi
max)
• Today, they can be merged into a single communication approach called
Unified communication e.g by clicking a button on a web page one can
talk to a customer representative enhancing the purchase experience on
the web or send an email to him after the conversation all achieved
seamlessly
What is a Computer Network?

• Collection of independent Computers that communicate with each other


over a shared network medium enabling people to share files and
peripherals
• Generally consists of client computers connected to a Server Computer
running a Network Operating System (NOS)
• Each computer contains a device called a Network Interface Card (NIC)
that connects the computer to the network
• Connection medium could be telephone wire (twisted pair), co-axial cable
or fiber optic cable
• NOS routes and manages communication on the network and coordinates
network resources including storing data, serving web pages etc.
Examples of NOS are Windows Server, Unix, Linux and Novell Netware
• Most networks contain network devices such as Hubs, Switches and
Routers
Networks Classifications

• Networks are classified according to their geographical coverage and size.


• Most common classifications –
– Local Area Networks (LAN) – Data network encompassing a relatively small
area e.g. building, small campus
– Wide Area Networks (WAN) – Data network connecting disparate
geographical locations and relatively slower than LANs e.g LANs in two cities;
use dedicated leased lines or data packet carrier services. Typical
communication links are telephone lines, microwave and satellite links
– Metropolitan Area Networks (MAN) – Data network that spans a city or a
campus its geographical scope being between a LAN and a WAN
– Internet – System of linked networks that are worldwide in scope and
facilitate services such as email, world wide web, file transfer etc.
– Intranet – private internet type of network available within an organization
– Virtual private network (VPN) – uses a technique called tunneling to transfer
data securely on the internet; enables use of the public internet to transfer
information securely without incurring the cost of leased lines or a dial up
telephone connection by encrypting packets of data wrapped inside IP
packets. May be used to implement WANs and MANs
LANs connected by WAN
Network Categories

• Two categories determined by the number of users,


how the network will be used and budgetary
considerations
– Peer to Peer: Decentralized network model offering no
centralized control over sharing of file and resources or
centralized storage of data ; low cost as well as easier to
implement and used when the computers on the network
are few e.g.< 10
– Client–Server: Most commonly used because of
centralized control of all network services e.g user
management, file management, security in spite of higher
cost; Higher cost because of the need for a centralized
server as well as network hardware and may require
skilled personnel to implement and manage the network
Open Systems Interconnection Model
Open Systems Interconnection Model

• Model describes how network hardware and


software work together in a layered fashion to make
communication possible. Each layer interacts with
the layer above -
– Physical Layer is the physical part of the network including
wires, cables that transmit electrical signals (data) in the
network
– Data link layer defines the size and format of data
including the error detection and correction mechanisms
– Network Layer provides the definition for the connection
of two dissimilar networks
Open Systems Interconnection Model

– Transport Layer allows data to be broken up into smaller


packages to be distributed and addressed to other
computers
– Session layer establishes, manages and terminates
connections (sessions) between local and remote
applications
– Presentation layer helps in coding/decoding data sent to
the computer and transforms data into the form the
application accepts
– Application layer interacts directly with the software
applications communication component identify
communication partners determining resource availability
and synchronizing communication
What is a Network Topology ?

• A network topology is the geometric arrangement of nodes


and cable links in a LAN. There are three topology's –
– Star : in a star topology each node has a dedicated set of wires
connecting it to a central network hub. Since all traffic passes through
the hub, the hub becomes a central point for isolating network
problems and gathering network statistics

– Ring: a ring topology features a logically closed loop. Data packets


travel in a single direction around the ring from one network device to
the next. Each network device acts as a repeater, meaning it
regenerates the signal

– Bus: in a bus topology, each node (computer, server, peripheral etc.)


attaches directly to a common cable. This topology most often serves
as the backbone for a network. In some instances, such as in
classrooms or labs, a bus will connect small workgroups
Network Architectures
• Network architectures include Ethernet, Token-ring, FDDI
– Ethernet popular because of its speed, cost and ease of installation
and its ability to support all the popular networking protocols;
operates at 10mbps; Fast ethernet at 100mbps and Gigabit ethernet
at 1, 10, 100Gbps but the medium changes in each case; governed by
IEEE standards which define them
• Speed from 10 mbps to 100Gbps
• Topology – Star or bus
• Media – twisted pair, shielded twisted pair, co-ax, fiber optic
• Access method – carrier sense multiple access with collision
detection (CSMA/CD) for 10mbps. Ethernet a shared media, so
rules exist for sending packets of data to avoid conflicts and
protect data integrity. Nodes determine when the network is
available for sending packets. It is possible that two nodes at
different locations attempt to send data at the same time. When
both PCs are transferring a packet to the network at the same
time, a collision will result.
Ethernet

• Minimizing collisions a crucial element in the design and


operation of networks
• Increased collisions are often the result of too many users on
the network, which results in a lot of contention for network
bandwidth
• Results in slow performance of the network from the user's
point of view.
• Solution - Segmenting the network, where a network is
divided into different pieces joined together logically with a
bridge or switch, is one way of reducing an overcrowded
network.
Ethernet

• Ethernet defines the physical and the data link


layer
– The Physical layer is in charge of converting the frame generated by
the MAC layer into electricity (if a cabled network is being used) or
into electromagnetic waves (if a wireless network is being used). This
layer is also defined by IEEE 802.3 protocol, if a cabled network is
being used, or by IEEE 802.11 protocol, if a wireless network is being
used
– The Logic Link Control sub-layer (LLC) of the data link layer is in charge
of adding information of which protocol on the Network/Internet
layer delivered data to be transmitted, so when receiving a frame
from the network this layer on the receiving computer has to know to
which protocol from the Network/Internet layer it should deliver data.
This layer is defined by IEEE 802.2 protocol.
Ethernet

– The Media Access Control sub-layer (MAC) is in charge of assembling


the frame that will be sent over the network. This sub-layer is in
charge of adding the source MAC address and the target MAC address
– MAC address is the physical address of a network card. Frames that
are targeted to another network will use the router MAC address as
the target address. This layer is defined by IEEE 802.3 protocol, if a
cabled network is being used, or by IEEE 802.11 protocol, if a wireless
network is being used
– The LLC and MAC layers add their own headers to the datagram they
receive from the Internet layer. The header inserted by MAC layer is
seen as data by the LLC layer and vice versa.The LLC layer adds a 3-
byte or 5-byte header
Token Ring & FDDI

• Token-ring : all messages are transferred in a unidirectional manner along


the ring at all times; data is transmitted in tokens and viewed by each
device. When a device sees a message addressed to it, it copies the
message and marks it as read. When the message reaches the sender it
sees the message has been read it removes it from the network
– Speed - Token Ring specifies network speeds of 4 and 16Mbps.
– Topology Token Ring networks use a logical ring topology and most often a
physical star
– Media Token Ring networks use unshielded twisted pair cabling or shielded
twisted pair.
• FDDI (Fiber-Distributed Data Interface): standard for data transmission on
fiber optic lines in a local area network that can extend in range up to 200
km (124 miles). The FDDI protocol is based on the token ring protocol. In
addition to being large geographically, an FDDI local area network can
support thousands of users.
Transmission Control
Protocol/Internet Protocol (TCP/IP)
TCP/IP

• Application layer – Several protocols are used at this layer


depending on the program you are using e.g. HTTP for web
browsing, SMTP for sending emails, POP3 for receiving emails,
FTP for transferring files
• Transport Layer – The protocol used by this layer is the
Transmission Control Protocol This layer gets data from the
Application layer and dividing it into packets and sending it to
the layer below. During data reception it is responsible for
putting the packets received in order and that the contents of
the packets are intact
• Internet layer – On the Internet layer, the Internet Protocol
operates and puts the virtual addresses of the computer that
will receive this data. These addresses are called IP address.
The data is now sent to the next layer
TCP/IP

• Network Interface – The packets are now sent over the network (or
received over the network). What is inside these packets is dependant on
the type of network your computer is using. If it is Ethernet you will find
Logical Link Control (LLC), Media Access Control (MAC) and (Physical).
Packets transmitted over the network are called Frames.
• TCP/IP is a set of protocols that deals with layers 3 to 7 from the OSI
reference model. Ethernet is a set of protocols that deals with layers 1
and 2 from the OSI reference model – meaning Ethernet deals with the
physical aspect of the data transmission. So they complement each other,
as the full seven layers (or their equivalents) are required to establish a
network connection.
Networking Devices

• Most networks contain devices such as Hubs, Switches and Routers


• Hubs are simple devices that connect network components sending a
packet of data to all other connected devices. A hub takes any incoming
signal and repeats it out all ports. Works at the physical layer of OSI
– Hubs/repeaters are used to connect together two or more Ethernet
nodes to create a network segment of any media type
– In larger networks signal quality begins to deteriorate as segments
exceed their maximum length; Hubs provide the signal amplification
required to allow a segment to be extended a greater distance.
• Switches have more intelligence than a hub and can filter and forward
data to a specified destination on the Network. LAN switches can link four,
six, ten or more network segments together, and have two basic
architectures:
– cut-through and store-and-forward - In the past, cut-through
switches were faster because they examined the packet destination
address only before forwarding it on to its destination segment
Networking Devices

– A store-and-forward switch, on the other hand, accepts and analyzes


the entire packet before forwarding it to its destination. It takes more
time to examine the entire packet, but it allows the switch to catch
certain packet errors and keep them from propagating through the
network.
– Both cut-through and store-and-forward switches separate a network
into collision domains, allowing network design rules to be extended.
Each of the segments attached to an Ethernet switch has a full 10
Mbps of bandwidth shared by fewer users, which results in better
performance (as opposed to hubs that only allow bandwidth sharing
from a single Ethernet). Newer switches today offer high-speed links,
FDDI, Fast Ethernet or ATM. These are used to link switches together
or give added bandwidth to high-traffic servers. A network composed
of a number of switches linked together via uplinks is termed a
"collapsed backbone" network.
– Switches work at the data link layer of the OSI model
Networking Devices

• Router is a special communicating processor used to route packets of data


through different networks ensuring that data get sent to the correct
address. Can connect to two or more subnets and work at the Network
layer of the OSI model
– Helps in connecting one network to another or the internet. It builds
routing tables based on which it routes traffic to other networks
– Routers also filter out network traffic by specific protocol rather than
by packet address
– Routers can also divide networks logically instead of just physically.
An IP router can divide a network into various subnets so that only
traffic destined for particular IP addresses can pass between
segments. Network speed often decreases due to this type of
intelligent forwarding. Such filtering takes more time than that
exercised in a switch which only looks at the Ethernet address.
– In more complex networks, overall efficiency is improved by using
routers.
Network Address Allocation

• On a network, Servers, Routers and Switches have static IPs


while clients typically have dynamic IPs
• Dynamic IP is allocated by the Dynamic Host Configuration
Program resident on a server that allocates IP address to each
client as it joins the network. This may change if the client is
removed from the network and rejoins
• Name-server specification is configured by a Domain Naming
Service
• Both DHCP and DNS may be resident on the Network server
or separate server depending on the size of the network
• Some networks may have a secondary Network server in case
the primary server fails
How does the Internet work?

• The Internet is simply a network of interconnected networks


(by routers) on which reside clients, email servers, web
servers, FTP servers etc. all interconnected to each other
• It is also the worlds most extensive public communication
system that rivals the global telephone system in reach and
range
• Most homes and small businesses connect to the internet by
subscribing to an Internet Service Provider (ISP) by Digital
Subscriber Line (DSL)/Asymmetric DSL (ADSL) over telephone
lines (9mbps) or broadband (10mbps) or Passive Optical
Networks (PON) (10 gbps) to a local POP (point of presence)
• Larger businesses connect by using dedicated leased lines to
the Internet Service Providers
How does the Internet work?

• Local ISPs (POP) are in turn connected to Regional


ISPs who are connected to Network Service
Providers through Network Access Points (NAP) and
Metropolitan Area Exchanges (MAE)
• Internet traffic is carried over transcontinental high-
speed backbone networks that operate at about 2.5
Gbps. These trunk lines are owned by the NSP.
Regional networks are owned by regional telephone
companies who lease access to local ISPs
How does the Internet work?
How does the Internet work?
Internet Addressing

• The internet is based on the TCP/IP protocol


• Every computer on the internet is assigned a unique
IP address which is a 32 bit no. represented by 4
strings of numbers from 0 to 255 e.g. 10.239.89.15
• When a user sends a message to another user on the
internet, the message is first decomposed using the
TCP protocol. Each packet has its destination
address. The packets are sent from one router from
one network to another router in another network
till it arrives at the destination address. Here the
packets are reassembled.
Internet Addressing

• Since it is difficult to remember IP addresses a Domain Name System


(DNS) converts IP addresses into domain names
• DNS servers on the internet maintain a database containing IP addresses
mapped to their corresponding domain names
• DNS has a hierarchical structure. At the top is the root domain e.g. com,
.edu. 2nd level domain is HBS.edu
• A web page request will be sent to a DNS server who will determine the IP
address of the web server and direct the request to that server. If it does
not have the IP address it will forward the request to another DNS server
on the internet and so on.
• The request will ultimately reach the web server in a series of hops who
will in turn provide the web page in a series of packets back to requesting
computer
• Servers on the internet have static IPs while clients have dynamic IPs
allocated by their networks.
World Wide Web

• Web site is a collection of web pages linked to a home page


and is stored in a web server which is running
• Web pages are based on a standard Hypertext Markup
Language (HTML) which formats documents and incorporates
dynamic links to the same or remote computers
• Web pages are accessible through the internet because Web
Browsers can request web pages stored on a web server using
Hypertext Transfer Protocol (HTTP) and your browser sends a
HTTP request to the server
• Every web address starts with HTTP followed by the domain
name as well as the directory path and document name.
Together it forms the uniform resource locator (URL). The
directory path specifies where on the domain web server the
page is stored
How does the Internet work?

• Servers make their services available on specific


ports e.g Web server provides the service from Port
80 and FTP server from Port 21. Clients have to
connect to a particular IP address and a particular
Port.
• Clients then accesses the service using a particular
protocol e.g HTTP for accessing a web page, Simple
Mail Transfer Protocol (SMTP) on Port 25 for
outgoing email and Internet Mail Accessing Protocol
(IMAP) on Port 143 or Post Office Protocol 3(POP3)
on port 110 for incoming email
Network Security
• Firewalls – a combination of hardware and software
that is placed between the organizations private
internal networks and distrusted external networks.
• It acts as a gatekeeper and examines each users
credentials before access is granted to a network. It
identifies names, IP addresses, applications and
other characteristics of incoming traffic and checks
against the security policies programmed by the
network administrator
• Generally a specially designated computer if the
network is large
Network Security
• Many protocols do not provide any security.
• Viruses, worms, Trojan horses etc.
• Client/server applications often require transmission of
• user identity/passwords.
• “Crackers” may sniff passwords and other sensitive
information off the network.
• Need to restrict control access privileges
• “Crackers” also actively exploit many system vulnerability or
“security holes” to inflict damages or to gain access to
valuable information.
• No system is totally immune to security problems.
Network Security
• Firewalls restrict how your users can use the Internet
• Firewalls screening technologies–
– Static packet filtering examines specific fields in the header of data flowing
between the trusted network and the internet
– Stateful inspection examines whether packets are a part of an ongoing dialog
between sender and receiver
– Network address translation conceals the ip addresses of the internal host
computers
– Application proxy filtering requires that a proxy server stops data packets
originating outside the organization, inspects them and passes a proxy to the
other side of the firewall i.e the external user talks to a proxy application and
the proxy application communicates to the firms internal application
• Generally these technologies are used in combination
• Intrusion detection systems are full time monitoring tools placed at vulnerable
points in the network. Scanning software looks for known methods of computer
attacks. Monitoring software examines events as they are happening to discover
attacks in progress.
Encrypting traffic on the Web

• Encryption is the process of transforming plain text or data


into cipher that cannot be read by anyone but the sender or
the intended receiver
• Two Encryption methods for network traffic -
– Secure Sockets Layer (SSL) or its successor Transport Layer Security
(TLS) manage encryption or decryption activities during a web session
– Secure HTTP (S-HTTP) is another protocol used but limited to
individual messages
• Two alternative methods of encryption –
– Symmetric (Disadvantage of Symmetric encryption is key has to be
shared between sender and receiver)
– Public Key encryption
Public Key Encryption

• Uses two keys one shared (Public) and one private. Keys
mathematically related. Before sending separate pairs of keys
are created and private key is kept secret. Encryption done
with public key
• RSA (Rivest, Shamir Adleman) is a popular asymmetric key
encryption standard.
• It is based on number theory (more specifically the difficulty
in factorizing a large number).
• The key size ranges between 512 and 2048 bits.
• It is used in many e-commerce applications such as the Secure
Electronic Transaction (SET) protocol for credit card payment.
Software
Operating Systems
Operating Systems

• Operating System is a set of integrated programs


that manages the hardware resources of a computer
e.g. CPU, Memory, Input/Output devices, Mass
storage in the most efficient manner
• Helps the application programs perform common
tasks such as accessing a network/internet,
retrieving or saving files, entering data and printing
or displaying output e.g Windows, Unix etc
Operating Systems

• A program that controls the execution of application


programs
• An interface between applications and hardware
• Objectives
– Convenience
• Makes the computer more convenient to use
– Efficiency
• Allows computer system resources to be used in an efficient
manner
– Ability to evolve
• Permit effective development, testing, and introduction of new
system functions without interfering with service
Operating Systems
Operating Systems Services
• Program development
• Editors and debuggers
• Program execution
• Access to I/O devices
• Controlled access to files
• System access
• Error detection and response
– Internal and external hardware errors
• Memory error
• Device failure
– Software errors
• Arithmetic overflow
• Access forbidden memory locations
– Operating system cannot grant request of application
Operating Systems Services

• Accounting
– Collect usage statistics
– Monitor performance
– Used to anticipate future enhancements
– Used for billing purposes
Operating Systems

• Responsible for managing resources


• Functions same way as ordinary computer
software
• Kernel
– Portion of operating system that is in main
memory
– Contains most frequently used functions
– Also called the nucleus
Operating Systems
Evolution of Operating Systems

• Serial Processing
– No operating system
– Machines run from a console with display lights, toggle
switches, input device, and printer
– Schedule time
– Setup included loading the compiler, source program,
saving compiled program, and loading and linking
• Simple Batch Systems
– Monitors
• Software that controls the sequence of events
• Batch jobs together
• Program branches back to monitor when finished
Evolution of Operating Systems
• JOB CONTROL LANGUAGE
– Special type of programming language
– Provides instruction to the monitor
• What compiler to use
• What data to use
• Hardware features
– Memory protection
• Do not allow the memory area containing the monitor to be altered
– Timer
• Prevents a job from monopolizing the system
• Privileged instructions
– Certain machine level instructions can only be executed by the monitor
• Interrupts
– Early computer models did not have this capability
Evolution of Operating Systems

• Memory Protection
– User program executes in user mode
• Certain instructions may not be executed
– Monitor executes in system mode
• Kernel mode
• Privileged instructions are executed
• Protected areas of memory may be accessed
Operating Systems

• Input/Output devices are slow


Operating Systems
• Uni-programming

• Multi-programming
• When one job needs to wait for I/O, the processor can
switch to the other job
Operating Systems
Operating Systems
Operating Systems
Operating Systems

• Time Sharing
• Using multiprogramming to handle multiple interactive jobs
• Processor’s time is shared among multiple users
• Multiple users simultaneously access the system through
terminals
• Compatible time sharing system (CTSS) developed at
MIT; major achievements
– Processes
– Memory Management
– Information protection and security
– Scheduling and resource management
– System structure
Operating Systems

• Memory Management
– Process isolation
– Automatic allocation and management
– Support of modular programming
– Protection and access control
– Long-term storage
• Virtual memory
– Allows programmers to address memory from a logical
point of view
– No hiatus between the execution of successive processes
while one process was written out to secondary store and
the successor process was read in
Operating Systems

• Virtual memory and file systems


– Implements long-term store
– Information stored in named objects called files
• Paging
– Allows process to be comprised of a number of fixed-size
blocks, called pages
– Virtual address is a page number and an offset within the
page
– Each page may be located any where in main memory
– Real address or physical address in main memory
Virtual Memory
Virtual Memory Addressing
Operating Systems

• Information Protection and Security


– Availability
• Concerned with the proper verification of the identity of users and
the validity of messages or data
– Confidentiality
• Assuring that users cannot read data for which access is
unauthorized
– Data integrity
• Protection of data from unauthorized modification
– Authenticity
• Concerned with protecting the system against interruption
Operating Systems

• Scheduling and Resource Management


– Fairness
• Give equal and fair access to resources
– Differential responsiveness
• Discriminate among different classes of jobs
– Efficiency
• Maximize throughput, minimize response time, and
accommodate as many uses as possible
Key Elements of an OS
Modern Operating Systems

• Microkernel architecture
– Assigns only a few essential functions to the kernel
• Address spaces
• Interprocess communication (IPC)
• Basic scheduling
• Multithreading
– Process is divided into threads that can run concurrently
• Thread
– Dispatchable unit of work
– executes sequentially and is interruptable
• Process is a collection of one or more threads
• Symmetric multiprocessing (SMP)
– There are multiple processors
– These processors share same main memory and I/O facilities
– All processors can perform the same functions
Multiprogramming and
Multiprocessing
Modern Operating Systems

• Distributed operating systems


– Provides the illusion of a single main memory
space and single secondary memory space
• Object-oriented design
– Used for adding modular extensions to a small
kernel
– Enables programmers to customize an operating
system without disrupting system integrity
Windows Server
Windows Server

• Modified microkernel architecture


– Not a pure microkernel
– Many system functions outside of the microkernel run in kernel mode
• Any module can be removed, upgraded, or replaced without
rewriting the entire system
• Executive
– Contains base operating system services
• Memory management
• Process and thread management
• Security
• I/O
• Interprocess communication
Windows Server
• Kernel
– Consists of the most used components
– Hardware abstraction layer (HAL)
• Isolates the operating system from platform-specific
hardware differences
– Device drivers
• Translate user I/O function calls into specific hardware
device I/O requests
– Windowing and graphics systems
• Implements the graphical user interface (GUI)
Windows Executive
• I/O manager
• Cache manager
• Object manager
• Plug and play manager
• Power manager
• Security reference monitor
• Virtual memory manager
• Process/thread manager
• Configuration manager
• Local procedure call (LPC) facility
User Mode Processes

• Special system support processes


– Ex: logon process and the session manager
• Service processes
• Environment subsystems
• User applications
Client Server Model

• Simplifies the Executive


– Possible to construct a variety of APIs
• Improves reliability
– Each service runs on a separate process with its
own partition of memory
– Clients cannot not directly access hardware
• Provides a uniform means for applications to
communicate via LPC
• Provides base for distributed computing
Virtualization
• Virtualization allows multiple operating system instances to run
concurrently on a single computer; it is a means of separating hardware
from a single operating system

• Each “guest” OS is managed by Virtual Machine Monitor (VMM), also


known as a hypervisor. Because the virtualization system sits between the
guest and the hardware, it can control the guests’ use of CPU, memory,
and storage, even allowing a guest OS to migrate from one machine to
another

• By using specially designed software, an administrator can convert one


physical server into multiple virtual machines. Each virtual server acts like
a unique physical device, capable of running its own operating system
Virtualization
• Advantages of Server Virtualization –
– Server Consolidation
– Segregation
– Legacy Hardware
– Migration
– Disaster Recovery
– High Availability
– Testing and deployment

• VMWare largest vendor of server virtualization


software
Virtual Machine Guest Environment
Virtualization

• Virtual Hard Disks


– Fixed
– Dynamic
• Virtual Hard Disk Features
– Snapshots
– Undo disks
– Differencing Disks
Virtual LAN

Virtual Networking
None
Internal
External (Bridged)
Middleware
• Layer of software between OS and application
– Hides heterogeneity
– Provides generic common services
– Increases level of abstraction
• By its nature, not single platform, nor bundled with
equipment
– Microsoft attempts to be an exception
• Middleware is
– where new capabilities are added by layering
– where much of the experimentation and innovation happens in the
infrastructure
– where the successful approaches have a chance to become a spanning
layer and/or integrated into a distributed OS
• Boundary to a distributed OS is fuzzy
Layering a computing
infrastructure

Applications

Application components

Middleware

Operating system

Network
Middleware Objectives

• Hide heterogeneity
• Location independence
• Common functionality needed by many
applications
• Software portability and mobile code
• Help integrate legacy facilities
• Aid application interoperability
• Aid scalability
Middleware Categories

• Transaction processing
– Simplify the coordination of complementary resource managers
• Message-oriented middleware
– Support message and queuing capabilities where resource mangers
are not available simultaneously (like workflow)
• Distributed object management
– Support applications that are distributed across heterogeneous
platforms and organizations
• Mobile code
– Allow application code to be moved and executed on heterogeneous
platforms
– Without prior software installation
Distributed Computing and
Component Architecture
Components
• In object-oriented programming and distributed object
technology, a component is a reusable program building block
that can be combined with other components in the same or
other computers in a distributed network to form an
application.
• Examples of a component include: a single button in a
graphical user interface, a small interest calculator, an
interface to a database manager
• Components can be deployed on different servers in a
network and communicate with each other for needed
services. A component runs within a context called a
container . Examples of containers include pages on a Web
site, Web browsers, and word processors
Components

Software components : units of composition with contractually specified


interfaces and context dependencies only
A SW component
– can be deployed independently
– is subject to composition by third parties
A system built up from components
– is more robust
– is more flexible (alleviates evolution)
– has a shorter development time / process
The foremost advantage: reuse of software
Example of component architecture standard is CORBA, Javabeans and COM
CORBA architecture
Client
objects

Server objects

Object
adapter

Object request broker core

Interface
CORBA services
repository
Objects vs Components
Objects
– describe / implement real-world entities (and their hierarchies)
– mathematical modelling approach to software
– partition the state space
Components
– describe / implement services of real-world entities
– engineering approach to software
– partition the service space

• Components -- service-oriented => they describe best the functionality of a system


• Objects -- identity-oriented => they describe best the problem domain of a system

• Consequently, we should
– start the software development with components
– develop each component in terms of objects
Example: Mail Delivery System (MDS)

Services
– input mail
– send mail
– load mail into the transportation means
– transport mail to destination
– confirm delivery
Component View
We need a component (PostCar) that is able
– to move
– to have a certain loading capacity
We need a component (Driver) that is able
– to drive for x hours in a row
– to drive certain types of cars
– to receive a salary of no more than y
Example: Mail Delivery System (MDS)

Object View
We need a class PostCar, with
– a move operation
– a capacity attribute
We need a class Driver, with attributes in some ranges

Using a service from a component:


specify the required service and use any component providing
an implementation of that service
Using a service from an object:
specify what object is used and use the service that particular
object (with the particular state) can provide
Components

• Component interface exposure and discovery: During application use,


one component can interrogate another one to discover its characteristics
and how to communicate with it. This allows different companies
(possibly independent service providers) to create components that can
interoperate with the components of other companies without either
having to know in advance exactly which components it will be working
with.
• Component properties: This allows a component to make its
characteristics publicly visible to other components.
• Event handling: This allows one component to identify to one or more
other components that an event (such as a user pressing a button) has
occurred so that the component can respond to it. In Sun's example, a
component that provided a button user interface for a finance application
would "raise" an event when the button was pressed, resulting in a graph-
calculating component gaining control, formulating a graph, and
displaying it to the user.
Components

• Persistence: This allows the state of components to be preserved for later


user sessions.
• Application builder support: A central idea of components is that they will
not only be easy and flexible for deploying in a distributed network, but
that developers can easily create new components and see the properties
of existing ones.
• Component packaging: Since a component may comprise several files,
such as icons and other graphical files, Sun's component model includes a
facility for packaging the files in a single file format that can be easily
administered and distributed. (Sun calls their component package a JAR
(Java Archive) file format.)
Distributed Applications
Distributed Applications
Distributed Applications

In an open middleware-based distributed system, the protocols used by each


middleware layer should be the same, as well as the interfaces they offer to
applications.
If different, there will be compatibility issues
If incomplete, then users will build their own or use lower-layer services (frowned
upon)
Distributed Applications

Applications that consist of a set of processes that


are distributed across a network of machines and
work together as an ensemble to solve a common
problem
In the past, mostly “client-server”
ִResource management centralized at the server
 “Peer to Peer” computing represents a movement
towards more “truly” distributed applications
Clients invoke individual Servers

Client invocation Server


invocation

result result
Server

Client
Key:
Process: Computer:
Service provided by Multiple Servers

Service

Server

Client

Server

Client
Server
Web Proxy Server

Client Web
server
Proxy
server

Client Web
server
A Distributed application based on
Peer Processes
Peer 2

Peer 1
Application

Application

Sharable Peer 3
objects
Application

Peer 4

Applicatio n

Peers 5 .... N
Hyper Text Markup Language
• HTML is used to mark up text so it can be displayed
to users
• HTML describes both structure (e.g. <p>, <h2>,
<em>) and appearance (e.g. <br>, <font>, <i>)
• HTML uses a fixed, unchangeable set of tags
• HTML is for humans
– HTML describes web pages
– You don’t want to see error messages about the web
pages you visit
– Browsers ignore and/or correct as many HTML errors as
they can, so HTML is often sloppy
eXtensible Markup Language

• XML stands for eXtensible Markup Language


• XML is used to mark up data so it can be processed
by computers
• XML describes only content, or “meaning”
• In XML, you make up your own tags
• XML is for computers
– XML describes data
– The rules are strict and errors are not allowed
• In this way, XML is like a programming language
– Current versions of most browsers can display XML
• However, browser support of XML is spotty at best
Web Service

• A Web service is a set of loosely coupled components that exchange


information with each other using universal web communication
standards and languages –
– An interface that describes a collection of network accessible operations
– Described using a service description language
– Published by making this service description available to users
– Found by sending queries to a registry matching service descriptions
– Bound-Invoked by using the information contained in the service description
– Composed with other services to create new services (service orchestration)

• Other definitions
– “Web services” is an effort to build a distributed computing platform for the
Web.
– enabling systematic application-to-application interaction on the Web.
Current Distributed Infrastructure

• Microsoft:
– DCOM/COM+
• SUN:
– Java RMI
• CORBA:
– Try to be a standard specification ( but complex to use)
Disadvantages
• Vendor Specific
• Platform Specific
• No interoperability
• Configuring Firewalls
Service Oriented Architecture

Service
Registry

Publish
Find

Service Service
Requestor Provider

Bind
Web Service Stack
Overview
Service-based Processes - Compositions of Web Services
- WS-BPEL

- Registry of Web Services


Service Discovery
- UDDI

- Describes the public interface to a


Service Description specific Web Service
- WSDL

Service Messaging - XML-based message encoding


- XML-RPC, SOAP

Service Transport - Message transportation


- HTTP, SMTP, FTP, BEEP

Figure 2. Web Service Specification


and Protocol Stack
Web services interoperability stack

Wire Stack Description Stack


Agreements
Envelope WSFL
SOAP Headers
Extensions

Quality of Service
Process

Manageability
WSEL
SOAP XML

Security
Messaging Service
WSDL
Interface
XML and Data
SOAP Encoding Service
WSDL Implementation

Http(s), smtp, Network


ftp etc XML Schema XML
Protocol

Discovery Stack Directory


UDDI

Inspection
ADS/DISCO

WSDL – Web Services description Language


UDDI – Universal Description, Discovery and Interaction
eXtensible Markup Language

• All the technologies in Web Services are XML based


– Messaging
– Description Are all in XML
– Registry

• Why?
– XML is pure text with no binary data
– Applications read the XML
– Applications share data using XML . Any application can talk to any other
application using XML (unlike binary) irrespective of the platform
– XML is a method for putting structured data in a text file
SOAP: Simple Object Access
Protocol
• An Internet standard specification, the goal of
which is to define a platform and vendor-neutral
WIRE PROTOCOL based on Internet standard
protocols [HTTP & XML] to access Web Services
• How do we access a service???
– With a SOAP message: Is a XML stream
which is used to transmit messages via
HTTP
• SOAP Structure Header
– Envelope:contains the entire SOAP message
– Header
– Body Body
• Message
Message

Envelope
Invoking a web service

Figure 1. A client invoking a Web service


WSDL Web Service Definition Language
• WSDL is an XML-based language used to define Web Services
and describe how to access them.
• It is the external interface for a client (IDL)

• WSDL includes information about


– Data types it uses
– Parameters it requires and returns
– Groupings of functionality
– The protocol to be used to access the service
– The location or address of the service
UDDI Universal Description Discovery and
Integration
3.

1. SW companies, standards
bodies, and programmers
Marketplaces, search
populate the registry with
engines, and business
descriptions of different
apps query the
types of services
registry to discover
services at other
companies
2.

• Businesses Business Service


4.
populate Descriptions Types
the registry with
descriptions of
the services they Business uses
support this data to
facilitate easier
integration with
each other over
the Web
How it works all together
WS-BPEL

• WS-BPEL is an orchestration executable language for specifying interactions with


Web Service
– Defines an interoperable integration model for Web Service-based processes.
– Describes high-level state transition interactions of a process.
• The language supports following basic facilities:
– Message exchanges,
– Property-based message correlation mechanism,
– XML and WSDL typed variables,
– Structured programming-language concepts such as if-then-else, while,
sequence, and flow,
– Scoping system to allow encapsulation of logic with local-variables, fault-,
compensation- and event- handlers,
– Serialized scopes to control concurrent access to variables,
– Language plug-in model which allows expression writing in the language such
as XPath
WS-BPEL
An Example

Example figures and WSBPEL specification taken from OASIS standard Web Services Business Process
Execution Language Version 2.0, 11 April 2007
Service Oriented Architecture

SOA is a form of technology architecture that


adheres to the principles of service-
orientation. When realized through the Web
services technology platform, SOA establishes
the potential to support and promote these
principles throughout the business process
and automation domains of an enterprise.”
Service Oriented Architecture

• Everything enterprise IT does is in the service of


some business process
• Service-oriented architecture (SOA) is about making
business processes:
– Better
– Easier to change
– Cheaper to create
• Fundamental principles of service-orientation
represent a primitive SOA.
• Today’s SOA has been heavily influenced by the
success of Web Services and the emerging WS-*
standards.
Service-Oriented Enterprises:
The Reality
Why SOA Makes Sense: Technical
Benefits
• Building business processes is faster and
cheaper:
– Existing services can more easily be reused
– Apps can expose their services in a standard way
• Applications can be exposed more easily to
diverse clients:
– Windows clients, ASP.NET/JSP, etc.
Why SOA Makes Sense: Business
Benefits
• Business people understand services
– So IT people can talk with them more easily
• Business processes become explicit
– So they can be understood more easily and
improved
• Applications or business processes might be
more easily outsourced
– Because they’re well-defined and discrete
Principles of Service Orientation

• Reusable logic is divided into services


• Services abstract underlying logic
• Services are composable
• Services are autonomous
• Services share a formal contract
• Services are loosely coupled
• Services are stateless
• Services are discoverable
SOA

• The XML technology platform is fundamental to SOA.


• XML documents and schemas passed between
services or components fully standardize format and
typing of all data communicated
• Standardized data representation lays the
groundwork for intrinsic interoperability
• Because of the vendor-neutral communications
framework established by Web services, the
potential is there for enterprises to implement highly
standardized service descriptions and message
structures.
SOA
Service Oriented Architecture
Enterprise Application Integration
Modern EAI
Enterprise Application Integration

• They all need to talk to one another despite


running on top of different protocols
• They need support for all the WS-* services
• The data structures between the elements
may not be identical
• Need to be able to support various message
exchange patterns
Enterprise Application Integration

• Future EAI applications will use SOA and build


in the requisite functionality
Grid Computing
• What is “Grid Computing”
• Grid computing (or the use of a computational grid) is applying the
resources of many computers in a network to a single problem at the
same time– usually to a scientific or technical problem that requires a
great number of computer processing cycles or access to large amounts of
data.
• It is a form of distributed computing whereby a "super and virtual
computer" is composed of a cluster of networked, loosely coupled
computers, acting in concert to perform very large tasks.
• Grid computing requires the use of software that can divide and farm out
pieces of a program to as many as several thousand computers.
• Grid computing can also be thought of as distributed and large-scale
cluster computing, as well as a form of network-distributed parallel
processing. It can be small -- confined to a network of computer
workstations within a corporation, for example -- or it can be a large,
public collaboration across many companies or networks.
Types of Grid Computing

• High-Throughput Computing
• On-Demand Computing
• Data-Intensive Computing
• Collaborative Computing
• Logistical Networking
• Distributed Supercomputing
Autonomic Computing

Intelligent” open systems that:


• Manage complexity
• Know themselves
• Continuously tune themselves
• Adapt to unpredictable conditions
• Prevent and recover from failures
• Provide a safe environment
Autonomic Computing attributes
Self-managing systems that deliver:

Business Resiliency
Discover, diagnose,
and act to prevent
disruptions

Operational Secure Information


Efficiency and Resources
Tune resources and Anticipate, detect,
balance workloads to identify, and protect
maximize use of IT against attacks
resources
Levels of autonomic maturity Evolution not
revolution

Autonomic
Adaptive Dynamic business
policy based
management
Predictive System monitors,
correlates and
takes action
Managed Cross-resource
correlation and
guidance
Basic Centralized
tools, manual
Manual analysis and actions
problem solving

Level 1 Level 2 Level 3 Level 4 Level 5


IBM’s autonomic computing initiative will become its most important
cross-product initiative (as the foundation of on demand).
—Thomas Bittman


Cloud Computing
• Cloud Computing is the convergence of many technology
trends e.g. Utility computing, SOA, Software as a Service, grid
computing, autonomic computing, virtualization -
– Large scale infrastructure available on a rental basis
• Operating System virtualization provides CPU isolation
• “Roll-your-own” network provisioning provides network isolation
• Locally specific storage abstractions
– Fully customer self-service
• Service Level Agreements (SLAs) are advertized
• Requests are accepted and resources granted via web services
• Customers access resources remotely via the Internet
– Accountability is e-commerce based
• Web-based transaction
• “Pay-as-you-go” and flat-rate subscription
• Customer service, refunds, etc.
“The Cloud”
A style of computing where massively
scalable (and elastic) IT-related capabilities
are provided “as a service” to external
customers using Internet technologies.

What’s new?
Technical Model:
Acquisition Model: Business Model: Access Model: Over
Scalable, elastic,
Based on purchasing Based on pay for the Internet to ANY
dynamic, multi-
of services use device
tenant, & sharable

Source: Gartner
139
Enabling the
Cloud Environment
Infrastructure
– Consolidation
– Global Information Grid
– Capacity Services
– Virtualization
– Rapid Provisioning
– Facility Analysis
Software
– Network-Centric Services
– SAAS
– Forge.mil
Processes
– ITIL
– Security (Certification &
Accreditation
Multiple Technology Rivers Merging (C&A))
140
– Computing Service Provider
(CSP) Analysis
Cloud Computing
• Platform-As-A-Service (PaaS)
– Delivers a computing platform and/or solution stack as a
service
– Facilitates deployment of applications without the cost
and complexity of buying and managing the underlying
hardware and software layers

• Infrastructure-As-A-Service (IaaS)
– The delivery of computer IasS, typically platform
virtualization
– For example:
• Virtual desktops
•Develops the SaaS
• Grid computing Ecosphere
•Accelerates
applications
development
• Applications-As-A-Service (AaaS) /Software-As-A-Service (SaaS)
– Leverages the Cloud in software architecture
– Eliminates the need to install and run the application on
the customer's own computer
– Type:
Independent But Complementary Activities
• Commercial 141
• Government
Radio Frequency IDentification

• RFID is a technology that uses radio-frequency


waves to transfer data between a reader and
a movable item to identify, categorize, track...
• RFID is fast, reliable, and does not require
physical sight or contact between
reader/scanner and the tagged item
Components of an RFID System

Host Computer
Host Memory Space
Antenna
Antenna
Customer-Specific
Application Software

Application
Application
Program
Program
Interface
Interface
(API)
(API)

RFID API Software Reader


(Communicates with the RFID Reader)
RFID
Sequence of Communication
• Host Manages Reader(s) and Issues Commands
• Reader and tag communicate via RF signal
• Carrier signal generated by the reader (upon request from the host
application)
• Carrier signal sent out through the antennas
• Carrier signal hits tag(s)
• Tag receives and modifies carrier signal
– “sends back” modulated signal (Passive Backscatter - FCC and ITU
refer to as “field disturbance device”)
• Antennas receive the modulated signal and send them to the Reader
• Reader decodes the data
– Results returned to the host application
Wi-Fi
• Wireless Fidelity (Wi-Fi) for wireless LAN implementation
• IEEE 802.11b
• 50m range approximately
• Data rates vary
– 11 - 56 Mb/s in theory
• Higher with some proprietary extensions
– 7 Mb/s is more realistic
• Walls can reduces range and throughput
• Number of users can reduce data rates
• Security
– Wi-Fi was not designed with robust security in mind but WPA2 good enough
• Interference
– operates in unlicensed 2.4 GHz spectrum
– competes with other products e.g microwave ovens!
• Scarcity of “hotspots”
WiMax

• Worldwide Interoperability for Microwave


Access (WiMAX) is the common name
associated to the IEEE 802.16a/REVd/e
standards for implementing a wireless
network
WiMax

You might also like