1 / 33

SENG2220 Web Development II

SENG2220 Web Development II. Mohammed A. Saleh http://ifm.ac.tz/staff/msaleh 21 st October 2009. M odule Content. Internet Infrastructure and Protocols

gelsey
Download Presentation

SENG2220 Web Development II

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SENG2220Web Development II Mohammed A. Saleh http://ifm.ac.tz/staff/msaleh 21st October 2009

  2. Module Content Internet Infrastructure and Protocols • TCP/IP protocol stack. OSI protocol stack. Connection oriented protocols. Connectionless protocols. Basic routing. Functions of IP. IP addressing. TCP. UDP. The Domain Name service. Name resolution The HTTP Protocol - HTTP version 1.0. GET and POST methods. Request line. Status line. Headers. Carrying Data. Relationship to TCP. HTTP version 1.1. Methods available. Persistent connections. Chunked encoding. Mandatory headers. Future evolution of HTTP. Suitability of HTTP as transport for higher protocols. Tiered Architectures • n-Tier architectures. Client, server, database. Roles of layers. Interaction between layers. Client server architecture. Management of database. Role of applications servers

  3. Module Content Tiered Architectures • n-Tier architectures. Client, server, database. Roles of layers. Interaction between layers. Client server architecture. Management of database. Role of applications servers Web Servers • Role of the web server. Different web server implementations. Basic operation of web server in implementing HTTP protocol. Authentication on the web servers. Security on the web servers. Installation of web servers. Configuration of ports.

  4. Cont … Web Application Development • Technologies available. Common Gateways Interface. PHP, Perl, JSP, ASP and ColdFusion. Detailed examination of PHP. Programming fundamentals. Accessing databases in PHP. Suitability of PHP and other technologies for given problems Server Issues • Security. SSL. Authentication. Passwords. Scalability. Testing. Comparison of web server functions and operation.

  5. Learning Outcomes • Describe in detail the protocols of the internet that fall within the TCP/IP model • Demonstrate how end to end communication is carried out between two application layer processes • Demonstrate a detailed understanding of the operations of the HTTP request response protocol for both GET and POST operations, as well as some of the less frequently used operations such as HEAD, PUT and DELETE • Implement web applications using PHP, or some simple server side technology.

  6. Cont … • Install and administer web servers be deploying web applications, adding authentication details and redirecting requests. • Describe the requirements for security and scalability in web applications, and the manner in which these requirements are satisfied. • Provide a high level view of the space of server side technologies and their respective strengths. • Illustrate the role of each of the three tiers of web applications, and their tools, e.g. browser, web server, proxy server, application server.

  7. Cont … • Select appropriate technologies for a given problem, at each of the three tiers of web applications. • Present finished project work to audiences with a range of technical backgrounds.

  8. Assessment • 50% weighting for the final examination • 50% weighting for the continuous assessments • Continuous assessments will comprise of two (2) tests and one (1) assignment

  9. Understanding Protocols • A protocol is a set of rules that enable effective communications to occur • An example of an everyday protocol: making a phone call. • What is a computer network? • Computer networks depend upon many different types of protocols in order to work. • Network cards must know how to talk to other network cards in order to exchange information, operating systems must know how to talk to network cards in order to send and receive data on the network, and application programs must know how to talk to operating systems in order to know how to retrieve a file from a network server.

  10. Understanding Protocols • Protocols come in many different types. • Various protocols tend to be used together in matched sets called protocol suites • The two most popular protocol suites for networking are TCP/IP and IPX/SPX • TCP/IP was originally developed for UNIX networks and is the protocol of the Internet. • A third important protocol is Ethernet, a low-level protocol that’s used with both TCP/IP and IPX/SPX.

  11. Understanding Standards • A standard is an agreed-upon definition of a protocol • In early days, each computer manufacturer developed its own networking protocols • As a result, you weren’t able to easily mix equipment from different manufacturers on a single network. • Then along came standards to save the day Organizations that are involved in setting standards for networking are: ✦ American National Standards Institute (ANSI): The official standards organization in the United States. ANSI is pronounced An-See. [www.ansi.org]

  12. Cont … ✦Institute of Electrical and Electronics Engineers (IEEE): An international organization that publishes several key networking standards; in particular, the official standard for the Ethernet networking system. [www.ieee.org] ✦International Organization for Standardization (ISO): A federation of more than 100 standards organizations from throughout the world. If I had studied French in high school, I’d probably understand why the acronym for International Organization for Standardization is ISO, and not IOS or OSI [www.iso.org]

  13. Cont … ✦ Internet Engineering Task Force (IETF): The organization responsible for the protocols that drive the Internet. [www.ietf.org] ✦ World Wide Web Consortium (W3C): An international organization that handles the development of standards for the World Wide Web.[www.w3c.org]

  14. OSI Reference Model • It stands for Open Systems Interconnection • The OSI model breaks the various aspects of a computer network into seven distinct layers • These layers are kind of like the layers of an onion: Each successive layer envelops the layer beneath it, hiding its details from the levels above Table 1.0 summarizes the seven layers of the OSI model

  15. Cont …

  16. Cont … • The first three layers are sometimes called the lower layers; they deal with the mechanics of how information is sent from one computer to another over a network • Layers 4 through 7 are sometimes called the upper layers; They deal with how applications programs relate to the network through application programming interfaces. • Here’s a detailed explanation of some of the OSI layers

  17. Network Layer • Handles the task of routing network messages from one computer to another. • Popular layer 3 protocols are IP (which is usually paired with TCP) and IPX (normally paired with SPX for use with Novell and Windows networks) • Network layer protocols provide two important functions: logical addressing and routing Logical Addressing • Every network device has a physical address called a MAC address, which is assigned to the device at the factory.

  18. Cont … • The MAC address is fixed and can’t be changed. • What if you want to assign an address to your network device? – concept of logical addressing • Logical addresses are created and used by Network layer protocols such as IP. • The Network layer protocol translates logical addresses to MAC addresses • The format of logical addresses varies depending on the protocol being used, most protocols divide the logical address into two parts: a network address and a device address

  19. Cont … • The network address identifies which network the device resides on • The device address then identifies the device on that network • For example, in a typical IP address, such as 192.168.1.100, the network address is 192.168.1 and the device address (called a host address in IP) is 100.

  20. Cont … Routing • Comes into play when a computer on one network needs to send a packet to a computer on another network • In this case, a device called a router is used to forward the packet to the destination network. • A packet may travel through several intermediate networks in order to reach its final destination network • Routers are used to connect networks that use different layer 2 protocols; sending a packet from an Ethernet to a Token Ring network. (As long as both networks support the same layer 3 protocol)

  21. Transport Layer • Concerned with the transportation of information from one computer to another. • Two of the most well-known networking protocols: TCP (normally paired with IP) and SPX (normally paired with IPX) • The main purpose is to ensure that packets are transported reliably and without errors. • Does this task by establishing connections between network devices, acknowledging the receipt of packets, and resending packets that are not received or are corrupted when they arrive

  22. Cont … • Divides large messages into smaller packets that can be sent over the network efficiently. • On the other end it reassembles the message on the receiving end, making sure that all of the packets that comprise a single transmission are received so that no data is lost • Some protocols would want to have speed and efficiency rather than reliability. These are known as connectionless protocols. • It doesn’t go to the trouble of establishing a connection before sending a packet, it simply sends the packet.UDP is an example of such a protocol.

  23. Cont … • Unlike UDP, TCP is a connection-oriented protocol, one that establishes a connection with the receiving host before sending a packet • An important feature of TCP is name resolution - allows network nodes to be identified by names rather than numbers Remember: TCP is a connection-oriented transport layer protocol. UDP is a connectionless transport layer protocol

  24. Following a packet through the layers • OSI Reference model • Layer 7 application • Layer 6 presentation • Layer 5 session • Layer 4 transport • Layer 3 network • Layer 2 data link • Layer 1 physical Sender Receiver File Each file is divided into packets Each Packet will then be Encapsulated with PROTOCOLS The encapsulated Packet is calleda frame The protocols Will be added systematically Layer By layer File File The received frame is then unpacked in the opposite order Transmission Medium

  25. Application Application Presentation Presentation H6 data T6 Session Session H5 data T5 Transport Transport H4 data T4 FRAME FRAME FRAME Network Network (packet) H3 data T3 Data Link Data Link H2 data T2 Physical Physical H1 data T1 Preamble Destination Address Source Address Data Padding CRC A typical frame Encapsulation Device 1 Device 2 data packet carrier FRAME

  26. TCP/IP Protocol Suite • Protocol on which the Internet is built • IETF, manages the TCP/IP protocol suite • It is based on a four-layer model of networking that is similar to the seven-layer OSI model

  27. Cont … • The lowest layer of the model, the Network Interface layer, corresponds to the OSI model’s Physical and Data Link layers • The Application layer of the TCP/IP model corresponds to the upper three layers of the OSI model • The most popular protocols used on this layer are HTTP, FTP, Telnet, SMTP, DNS, and SNMP.

  28. Internet Protocol (IP) • It is a network layer protocol that is responsible for delivering packets to network devices • Uses logical IP addresses to refer to individual devices rather than physical (MAC) addresses • It is a routable protocol because it contains both the network part and host part • Can forward a packet to another network if the host is not on the current network

  29. TCP • Transmission Control Protocol, is a connection-oriented Transport layer protocol • Lets a device reliably send a packet to another device • Ensures that each packet is delivered if at all possible, does so by establishing a connection with the receiving device and then sending the packets • If a packet doesn’t arrive, TCP resends the packet. • The connection is closed only after the packet has been successfully delivered or an unrecoverable error condition has occurred.

  30. Cont … • Used for one-to-one communications • Application layer protocols that rely on TCP are HTTP (web page request), Telnet (terminal emulation), FTP (for file exchange) and SMTP (for email).

  31. UDP • The User Datagram Protocol (or UDP) is a connectionless Transport layer protocol • After UDP has placed a packet on the network (via the IP protocol), it forgets about it. • It doesn’t guarantee that the packet actually arrives at its destination • Most applications that use UDP simply wait for any replies expected • If a reply doesn’t arrive within a certain period of time, the application either sends the packet again or gives up.

  32. Cont … • The best known Application layer protocol that uses UDP is DNS (Domain Name System) • When an application needs to access a domain name such as ifm.ac.tz, DNS sends a UDP packet to a DNS server to look up the domain. • When the server finds the domain, it returns the domain’s IP address in another UDP packet

  33. Questions

More Related