Internet Architecture protocols Dr Boumedyen Overview CHAPTER OVERVIEW
Internet Architecture & protocols Dr. Boumedyen
Overview • CHAPTER OVERVIEW • In order to make effective use of Internet technology for e Commerce applications you need a basic understanding of the architecture and protocols associated with the Internet. This will allow you in turn to understand the design of complex Internet applications
Outcomes • Discuss the role of the e Architect. • Explain the components in, and rationale for having, a tiered architecture. • Describe the various components that make up a Web site's meta architecture. • Discuss the role and selection of the Web server. • Explain the purpose of network protocols. • Describe the components and operation of the TCP/IP protocol suite
Architecture • By architecture, we mean the way that the components of any design (e. g. a car, a building or computer system) fit together. The architecture might include consideration of what the components are, where they exist in time or space, how components communicate or are held together and the performance expected of them or the system as a whole
Network Architectures • The mainframe with a number of satellite dumb terminals on people's desks. • Although no longer dominant, mainframes are still commonplace. • These dumb terminals have keyboards and sometimes mice, and connect directly to the mainframe computer. • As such they are little more than windows on the data and processes that the mainframe hosts. • All the data live on the mainframe and all the processing is done there as well.
The disadvantages • The disadvantages of this architecture are related to its reliance on the mainframe. • If the mainframe goes down, you are unable to carry out your work or communicate. • Mainframes can also be susceptible to load surges. • For instance, if everyone is processing data on the server at the same time, the response you get at your dumb terminal degrades to an unacceptable level
client-server architecture • (sometimes called a two-tier architecture) where the server took the place of the mainframe and the clients (typically PCs as we know them today) took over the roles of the dumb terminals on people's desks. • The difference was that some power and responsibility was devolved from the server to the client was no longer dumb. • The servers became responsible for some storage, communication and administration duties. • For example, you might have your own local hard disk in the PC that sits on your desk, but you can also choose to put your files on a networked drive that lives on the server. Also, the server can allow or deny your request to log on to the network from your client machine
The 3 Tier Architecture • • 1 User interface client(browser) Application Server(web server) Database Server(db server) N Tier Architecture when the middle tier may be multi tiered
• Taking this approach outside the organisation it is possible to imagine that these three components do not even exist on the same local area network; they may be dispersed over the Internet. • Consider the example of obtaining live, online share prices where the user interface is provided by a browser on the client machine, the application logic resides on the Web server of some e portal company and the database lives at the stock exchange
Web Site Meta-architecture • The architecture of the architecture, or metaarchitecture • As Web site architects, we exist within a larger system, namely the Internet • Meta architecture is a sub system of the Internet and we need to start selecting the sub-subsystems to build it with. • We need to decide on the hardware, software and functionality of our Web server, firewall, database, applications (client and/or server side?
• The organization's internal network of servers and clients is denoted by LAN (Local Area Network). • Different people with different authorizations will be able to access the other components we can see. • Indeed the LAN will probably be able to access the Internet via the Gateway Server. • These components are the parts of the architecture that are of interest to us in order to get our Web site up and running.
interoperability • A common means of enabling this interoperability is through the use of middleware products. • These software applications are specially designed to help heterogeneous computer systems communicate and are sometimes referred to as the glue or the plumbing between components. • In our example we have installed these on the Middleware Server. • There a variety of middleware products and genres. For instance, CORBA, DCOM and Enterprise Java Beans provide a distributed object infrastructure
Solutions • Since both the Web Server and the Database Server may need to access the Legacy System's logic and data, they can use the middleware applications to do so. • Assuming the Legacy System is being used as the prime repository for operational data, the Database Server could act as a back up for the legacy data, or store Internet specific data that the legacy was not designed to accommodate
The Web Server • is the server software. It is responsible for access control, running scripts and programs, enabling administration of the server configuration and (to some extent) the contents of the Web site and logging transactions.
Factors • When deciding on a particular Web server software • Cost - the most popular packages are free, although free may mean they come as part of a non free suite of software like an operating system e, considerations may include
Factors • Platform - some are specific to Windows and/or Unix. • Performance - the number of requests you expect your site to handle and the speed with which they are processed may be a deciding factor. • Security - the security protocols, access controls and filtering that is supported. • Added functionality - some server software claims to posses extra features, like built in e Commerce functions
LAMP(very important) • An approach to Web architecture LAMP stands for Linux, Apache, My. SQL and the `P' represents either Perl, PHP or Python. With the LAMP approach we cover the essential Web enabling technologies of the operating system, the Web server, the database query language and finally the application scripting language, respectively
The Proxy Server • Sometimes called a cache server, lives behind the firewall. It stores the result of requests made by clients and servers. • Subsequently it intercepts other requests to determine if it can fulfil them itself. • If not, it forwards the request to the appropriate server (remote or local) for processing.
• Proxy servers have two main purposes: 1 They can improve performance because they save (cache) the results of all requests for a certain amount of time 2 They can also be used to filter requests. For instance, a company might use a proxy server to prevent its employees from accessing certain sites
The TCP/IP Protocol Suite • TCP (Transmission Control Protocol) and IP (Internet Protocol) were originally envisioned as a single protocol, but they are in fact two different protocols that are often used together on the Internet hence TCP/IP or 'TCP over IP', referring to the aforementioned hierarchy where TCP exists at a higher layer than IP. In practice, and rather confusingly, the TCP/IP protocol suite actually refers to a large collection of protocols and applications, which is usually called simply TCP/IP
HTTP • The Hypertext Transfer Protocol is the basis for exchange of information over the World Wide Web and exists at the top level of the TCP/IP • • protocol suite as a so called application layer protocol. You may recognise • this acronym from your Web browser as it is pre pended to the URLs you • request. Other protocols at this level are FTP, Telnet, SMTP and POP, to name but a few. • There also security protocols (e. g. SET and SSL)
Example • Consider the case where both user A and user B access the Web through a proxy server. User A requests a certain Web page on a remote Web server that is not in the cache. The proxy server notices this and saves a local copy of the page that is returned. Some time later, user B requests the same page, but instead of forwarding the request to the remote Web server, which takes time and costs money, the proxy server simply returns the page that it has already fetched for user A
• ordered segments and adds its own headers (binary codes that tell B various things such as the order this segment comes in the message, etc. ) around each segment. Then IP on A adds its own headers around the segments, turning them into packets. Each packet is sent down the wire to B where IP on B strips off the IP headers. One of these tells it to send the resulting segments to TCP now strips off its headers. One of these headers tells it that it needs to send the bare message portions in a prescribed order. Another header says that the destination of this ordered stream of bits is the HTTP server namely the Web server
• The HTTP server then sends back its response with the requested data (i. e. the HTML code for a Web page). This descends the protocol stack, being split up and having the TCP then the IP headers added. It arrives at B to have the headers stripped as it ascends the stack and eventually arrives at the HTTP client. The browser interprets the HTML code and displays the page
IP Addresses • Having mentioned the IP protocol, we should mention one of its most important header types the IP Address. Contained in the headers are the source and destination addresses, typically written as a sequence of four numbers. Since the values are separated by periods, the notation is called • dotted decimal
• A sample IP address is 137. 195. 150. This address belongs to the main Web server at Heriot Watt University in Scotland. As it happens, a block of such numbers beginning 137. 195. xxx. xxac has been allocated to Heriot Watt. Within Heriot Watt there area number of sub networks. One such sub network, owned by an academic department, has its own block of numbers starting 137. 195. 52. xxx. Some of the remaining numbers in this sub network refer to individual machines in the department.
The Domain Name System • While IP addresses are wholly numeric, most users do not memorise the numeric addresses of the hosts to which they attach; instead people are more comfortable with host names. Most IP hosts, then, have both a numeric IP address and a name. For instance, the IP address we mentioned previously was 137. 195. 150. 50, which also has the host name www. hw. ac. uk. While this is convenient for people, the name must be translated back to a numeric address for routing the packets of data around the Internet.
• To handle these names, the • W````as created. • The DNS is a distributed database containing host name and IP address information for all domains on the Internet. • There is a single authoritative name server for every domain. This contains all DNS related information about the domain; each domain also has at least one secondary name server that also contains a copy of this information. Several root servers around the world maintain a list of all of these authoritative name servers.
• Information Technology is a combination of hardware , software and services to support our jobs. • Information System : used to create the Information to help the decision makers • Competitive advantage: significant, long term benefit to a company over its competition, Ability to establish and maintain a competitive advantage is vital to a company’s success
• Factors That Lead Firms to Seek Competitive Advantage: • challenge among existing competition • Threat of new entrants • Threat of substitute products and services • Strategic Planning for Competitive Advantage: • Change the structure of the industry (To E business ) • Create new products or services
Most important management challenges • • • • • Developing a clear understanding of business objectives Knowing how to choose the right technology to achieve those objectives Main areas where you will need to make decisions: Human resources and organizational capabilities : Creating team with skill set needed to build and manage a successful site Hardware Software Telecommunications �� Site design
The Systems Development Life Cycle: • • • • Methodology for understanding business objectives of a system and designing an appropriate solution Five major steps: 1. Systems analysis/planning 2. Systems design 3. Building the system 4. Testing 5. Implementation
- Slides: 34