Hyper Text Transfer protocol

HTTP (Hyper Text Transfer protocol) has been used on the World Wide Web since 1991, it was developed by an organisation called CERN which is the European organisation for Nuclear Research. HTTP is a set of rules for transferring many different variants of files such as images, text, videos etc. HTTP is used and activated as soon as the user opens the web browser in fact from the moment the user requests a website such as Google HTTP is used. HTTP from the moment the user clicks the link for a website sends a message to a server to ask for the permission to view the website. HTTP is an application protocol that runs with the TCP/IP suite of protocols, this is the foundation protocols of the internet, without this the internet would not be able to run. HTTP concepts have the idea that different types of files can contain different references to other files which by selection of the user will request additional transfer requests. The browser that you use as the user, this can be Google Chrome, Safari or any other browser, is a HTTP client and this is the part of your system that sends and receives requests to server machines. HTTP works when the browser user enters file requests, this is done by either opening a web file, so this can be done by typing in a URL into the search bar or clicking on a hypertext link from a Google or Yahoo search, the browser then from there builds a HTTP request and then sends this request, which contains lots of information, to the IP address indicated by the URL. The item that receives the request is what is known as a HTTP Daemon this is a destination server machine which receives and sends the files or the associated files which have been requested by the user. It is worth to note that a web page often consists of more than one file.

In HTTP Protocol we have to have what is called a network layer, this in simple terms is what links the HTTP request to the HTTP Daemon. But it does much more than that so take for example we have a website trying to communicate with a Daemon, but before it goes to the Daemon certain things have to happen. Firstly, the data that is trying to be sent to the daemon is put into segments and each segment is encapsulated into datagrams, the datagrams are then sent to a nearby router normally the one you are connected to. Then when the router receives the datagrams it extracts the transport-layer segments, and then from there it then moves the segments up to the transport layer, this then means it can then be transferred through the network. One of the primary roles for the router is to forward the datagrams from different types of requests from its input links up to the output links. But one of the primary roles of the network plane is to coordinate these local routers forwarding actions, this then allows the datagrams from requests to be transferred as an end-to-end transfer, this happens along different paths of routers between where the request came from in the first place and also where the request is going to.

Machine to Machine Illustration of Interactions using Protocol:

On the next page is an Illustration which shows the machine to machine illustration, this is based on what was previously said on the paragraphs previously about how datagrams are moved through the network and also what else is involved in the movement of these datagrams.

How HTTP fits into the internet hourglass?

The internet hourglass is a model that has been created which consist of six protocol and application layers that all originate from a single bubble which is called IPv4. Scientists understand this model which is called EvoArch as a process that gives conclusions as to why some protocols survive and others do not survive. This can then be used in future development so that the internet can continue to improve and also help develop new uses for the internet and overall better security.

Above is a diagram of the internet hourglass and as you can see from the diagram it consists of different layers which all contribute to the internet and how the internet works. As you can see from the model depending on various factors depends on the path that the internet takes to work. But how does HTTP fit in to this model, well HTTP is an application protocol which means this is what the websites and applications which use the internet are built on. So, HTTP is needed so that websites and applications can be built and from HTTP being the build this then allows the other layers around this to work and contributes to the working of the internet. So, with the use of HTTP in websites this then allows the transport protocols to work such as TCP (Transfer Control Protocol) which allows requests to be transferred through the network and display the requests that the user requests on their browser.

How is HTTP used for Web Communication?

HTTP is used widely across the whole of the internet and is one of the most common types of communication methods for the internet in today’s web developments. If you where to look in any address field at the top of your web browser, you are likely to see that at the start of the address it says something like “http://”. HTTP is the original “client-server” protocol. But how is HTTP used for web communication, well when users on their web browser click a link or type a website address into the address bar such as “www.google.co.uk” or when you click a link from a search result you may have done on Yahoo the browser then sends a request over the internet to a web server for that website. The web server houses the site that the user requests and deals with all traffic that comes to the website. The web server from that request then sends back to the user what it wants, this can be anything from text, images, video or files that are to be downloaded. This data that is sent back is then displayed in the users’ web browser for them to view. An advantage to HTTP is that we have expert knowledge on it and it is used widely and is compatible with nearly all computers and web browsers. But on the other hand, a disadvantage to HTTP is that it is unencrypted which means that the data being communicated can be intercepted by hackers or other third parties who may want your data.

Above is a diagram illustrating the way that HTTP communicates with a server and also how it sends the data back to the computer and to the web browser.

HTTP as a Stateless protocol and the impact this has:

HTTP is said to be a stateless protocol because each request which is made by the user is executed and performed independently and this happens without knowing what the requests beforehand where about or the details of them. A stateless protocol does not need the server to keep any information or know the status about each user for the time that is needed of the multiple requests. But some website may need to track the users as they go from one page to the next, an example of why a website may need to do this is when the website needs to be customized for a user as they go along. This problem can be fixed from one of the options given below:

• HTTP cookies

• Using a PHP website

• Server-side sessions

• Hidden variables (Used for the use of a form E.G log on page)

The protocol is made stateless is because the server does not need to track the state of the multiple requests, even if the server did want to do this it is not capable of doing such a task. The advantages to this though is that this then limits the amount of data that is transferred between the user and the server and also means there is less connection between the pair of them which means processes and requests are much faster overall. So, to put this simply HTTP is what the internet is made from and the is at the heart of it. But it is unable to keep and log the ID of each user that it is connected to and receives requests from and from that whatever HTTP receives it is deemed as a one of a kind connection, which then means there is no correlation to the user at all.

The impact this has on the internet means that it has become increasingly harder to determine where certain requests have come from, only in recent years have we been able to track these requests through the use of more precise IP addresses and also from better trace methods such as we can implement a trace on the JSP resource this then returns the content of the resource, this is so we could see, if needed, what is being received on the user side of the request. We will talk more about request methods in the next part.

Request Methods:

There many different types of request methods, I am going to be looking at three different ones. The first one is called a GET method, this is for getting data from the server of the website to the person who has requested it. So, what happens here is that the get method adds the data that is being requested to the address of the URL. Also, a GET is cached in the RAM of the computer but security wise this is one of the least secured methods as everyone can see the data, so it is noted that you should. Not be using GET when transferring sensitive data such as passwords, email addresses and personal information.

The second method that I will be looking at is called a POST method, the post method is used to send the data from the user to the server the website is hosted on. Security wise POST is safer than GET because the parameters not stored in the history of the browser or in any of the web server logs and also the data is not being displayed in the URL. POST data is not stored in the RAM of the computer as cached files. If the user needs to go back then the data will be submitted and this will then prompt the software to tell the user that the data is going to be resubmitted, an example of this happening is when you are processing an order for some concert tickets and when you are in the middle of the process you may need to go back as you have made an error and once you click back it then tells you that the data will be submitted again.

The third and last method that I will be talking about is called the HEAD method this is virtually the same as the GET method in the fact that it has the same security measures, it stores the data as a cached file in the RAM and also the data that is transferred is shown to anyone who can see it. But the main difference which differentiates the two is that the HEAD method is used for HTTP headers so titles of web pages and section headers etc. but this is not used at all for the body of the document, so this includes things like the images and text of the website etc.

What is the need for Status Codes in HTML?

Status codes in HTML are essential, they are needed when an error is flagged up and for each individual error there is a code to go with that error. When an error is flagged up you will receive a code on your screen and also a small description of what the error could be, an example of this is shown below.

The most common error code is shown above so as you can see the error code is shown here, then the reason for the error is shown here in brief and then lastly there is a short description of the error shown just below the other two here. This may vary slightly on different websites but mostly will stay with the same kind of concept, layout and information displayed.

Section 1.2 Web Technology: The role of Semantic Mark-up in HTML5:

Definition of Semantic Web:

The semantic web is very similar to the usual World Wide Web, but it gives extra principles from documents to data. The semantic web means and quote ”provides a common framework that allows data to be shared and reused across application, enterprise, and community boundaries”. Basically, what this means is that all the information which is connected up which can then be easily managed and understood by our computers, and this would happen on a worldwide scale. A big problem we have currently is that we have data in web pages that can be used in some contexts but then it has no meaning in other contexts, this is down to the fact there is no single system for publishing data and the affect this then has is that it cannot be administrated easily by anyone. A benefit though of the semantic web is having large amounts of data, knowledge and information which can then allow computers, AI Robots and also more high-tech products such as virtual assistants E.G Apple’s Siri or Amazons Alexa, to have access to them and also be able to understand the data it is receiving.

What are the Role of Semantic Tags in HTML5:

Semantic tags are basically there to make the content we are typing on Eclipse more understandable and readable, the content can then also be directly determined from the tags that we give them when coding our websites. So an example of a tag is when we want to insert a footer at the bottom of our web page, we would first before writing anything else in our code write the tag “

”, this would then tell eclipse or whatever software you are using to make your website what you are trying to implement and then once you have written the code inside this tag you would then close this footer by writing in the code “

” the forward slash tells the software that this is the end of the footer.

Also, with the Semantic tags in HTML5 it allows developers of websites to build more complex websites a lot easier and also takes a lot less time to build in the process. This is down to the fact that HTML5 allows the code to be interpreted by all the main browsers which are used world-wide, this includes browsers such as Google Chrome, Apples Safari and also Firefox just to name a few. This helps because it means developers don’t have to build one website for Chrome and then have to build the exact same website for safari but just using different processes and building techniques.

Commonly used Semantic Tags:

There are many different semantic tags that can be used as part of HTML5 but I am going to go through some of the main ones which are used most commonly, so the first one that every website will have in the beginning is the use of a header tag, so to start one as previously explained, you would first write “

”, like so this would tell the software that you are looking to implement a header into the website and this would be positioned at the top of the page. You would then close this tag by writing it as such “

” this would tell the software that you are ending this header and it will then implement this into the site once you have saved the website and reloaded the website.

Another commonly used Semantic tag is the use of a nav tag this is used to navigate to different websites or different parts of the same website. So an example of this is that say if a user was on a news article and you wanted to show a user a list of articles that are similar to the one they are viewing currently, then to show this you would firstly start off with the tag

”, as said previously this tells the software that you are ending this navigation semantic tag.

Another semantic tag which is commonly used in developing is the use of the figure tag this allows the developer of the website to implement media into their website so through the use of this they are allowed to implement media such as images and illustrations E.G UML diagrams etc. To implement something like this you would first write the code “

” and then after that you would then type In the route to the image or illustration that you are wanting to implement into the website and then end the line of code with the tag “

” this would then allow the software to end the line of code.

HTML4 tags vs HTML5 tags:

HTML4 tags have been simplified in the newer version of HTML which is called HTML5, many have been stopped or deleted or changed. So, for example in HTML4 the new header tag was not used, and it was first introduced as a tag in HTML5. Previously in HTML4 you would have had to write this piece of code with additional tags which would over crowd the websites coding, the tags you would add in would be ones such as . Also, in HTML4 the word head would actually not be used to define a header it is actually used to define a specific URL for a data profile.

Also, in HTML4 if a developer wanted to implement an image they would use the tag but in HTML5 as said previously this has been changed to

, this has been changed so that we can implement a more wider variety of items with one tag rather than having several different tags for several different things. This then in turn means that computers and other technological products can interpret these tags a lot more easily.

On a more general note when it comes to tags in HTML4 and in HTML5 the tags in HTML5 are more useful and the actual wording on the tag means what it is going to allow you to do. So, this allows the developer to better understand what he is typing and also better understand what his code is doing for his website step by step rather than having to try and remember what each individual tag does. An example of this is that of the

tag this does exactly what it says on the tin it produces a header at the top of the page. But previously in HTML4 if you wanted to add in a header you would have had to use the

tag which also has other meaning such as it can be used for navigation URL’s and also sections on a webpage. As you can see if you use

tag quire a lot after a while it can become very confusing as to what each

tag means when coding.

Why Semantic Mark-up should be the preferred approach to marking up web content?

Semantic mark-up is a method of typing and structuring the HTML in your code, this is it is capable of reading and putting into use the meaning of the content rather than implementing its appearance. In a more simpler way of putting things it means that the developers sites architecture is divided into two parts as HTML is used for the structure of the website and then the style of the website is done by the CSS code. Writing semantic mark-up can be seen like common sense it basically means writing your code so that you can understand the hierarchy of your content and also how the user will read the website and also how the machine will read the content. So, a developer can do this simply by adding in small tags to identify which header comes first or which piece of text comes first etc. so this can be done quickly and quite simply by adding in tags like


inside each new header tag or for a paragraph they may put in tags such as the letter p meaning paragraph. These are every basic and simple but yet so effective on how to identify what each piece of code means. Semantic tags mean that the tags are shown on the web browser based on how important they are and also shown in the structure of the content.

But why should this be the chosen method? This should be the chosen method due its simplicity and the ease at which it can be done at, to mark-up your language you simply have to put an extra tag in the line of code so that you can identify it during the time you are reviewing what you have typed out in your code. But also, at the same time it allows the machine to understand what header comes first and which one comes last at the same time as you are understanding it. Also, why it should be the chosen method is it separates your code into two pieces it firstly has HTML for the use of its structures and then it also has the style of the website stored in the CSS code. This then allows the machine to better understand the code and also does the same thing to you to.

Source: Essay UK - https://www.essay.uk.com/essays/information-technology/hyper-text-transfer-protocol/

Not what you're looking for?

Search our thousands of essays:


About this resource

This Information Technology essay was submitted to us by a student in order to help you with your studies.

  • Print this page
  • Search again

Word count:

This page has approximately words.



If you use part of this page in your own work, you need to provide a citation, as follows:

Essay UK, Hyper Text Transfer protocol. Available from: <https://www.essay.uk.com/essays/information-technology/hyper-text-transfer-protocol/> [16-06-19].

More information:

If you are the original author of this content and no longer wish to have it published on our website then please click on the link below to request removal:

Latest essays in this category:

Our free essays: