International Journal of Engineering & Technology IJET-IJENS Vol:14 No:06 44

Size: px
Start display at page:

Download "International Journal of Engineering & Technology IJET-IJENS Vol:14 No:06 44"

Transcription

1 International Journal of Engineering & Technology IJET-IJENS Vol:14 No:06 44 Data Traffic and Security over Internet via Monitoring and Analyzing the HTTP Protocol Ezmolda Barolli, Loren Nebiaj, Gloria Tyxhari Department of Statistics and Applied Informatics University of Tirana, Faculty of Economy Abstract -- Hypertext Transfer Protocol (HTTP) is a protocol that belongs to the application layer of the OSI model for collaborative, distributed and hypermedia information systems. Hypertext Transfer Protocol gets access to information through Transfer Control Protocol and Internet Protocol in an easy way. It is a stateless protocol with features like persistent connection and pipelining during the communication between clientserver. This paper aims to analyze hypertext transfer protocol: its concepts, communication, bit level description and analysis of the recording for HTTP captured data by WireShark. It aims to analyze in details a communication between the client and the server where the client transfers or receives a large amount of data to the server. Index Term-- Hypertext Transfer Protocol, Client, Server, World Wide Web, Uniform Resource Identifiers, Uniform Resource Locator, MIME. I. INTRODUCTION Protocols are predetermined rules that people use to communicate over one medium such as coaxial cable, optic fibers or wireless. A network protocol defines the conventions for exchanging messages between two entities on a network (White 2012, p.4). Nowadays, HTTP is one of the most widely used protocols on the internet or intranet. The fame came from the relation between that and World Wide Web, this because HTTP has grown along with the Web. On the other hand, HTTP is a language that helps web browser to communicate with web servers around the world. During Web communication, in particular is used Transmission Control Protocol (TCP). Internet Protocol (IP) is used for transferring packets from one node to another and TCP has responsibility for doing a reliable communication. HTTP protocol belongs to application-layer of OSI model and it is used to transmit and receive hypertext pages but not only. It can transfer files such as images, sound, video, and the other kinds of multimedia files. World Wide Web global information has used HTTP since In 1991 HTTP/0.9 was used as a first version of HTTP. It was a simple protocol, just for transferring data across the internet. It only had the method GET, which was for requesting a page from a server. Tim Lee and his project group wanted to expand HTTP/0.9 in another version with more operations and security. Those efforts concluded in recognition of HTTP/1.0 in In the same year, March 1996, some pre-standard of HTTP/1.1 was published. The statistics showed that 40% 65% of web browsers accessed their servers by using HTTP/1.1. The HTTP/1.1 was officially released in 1997 and some updates and improvements were made in The current version, still in use of HTTP is HTTP/1.1. In November 2012 a draft of HTTP/2.0 was released and there are several specific features in this version compared to the previous ones. This paper aims to analyze hypertext transfer protocol. The paper involves a theoretical and practical analysis. By theoretical analysis we do mean an explanation of all common and specific concepts related to that. These concepts are very important during the communication between two end nodes, client in one side and server on the other side. By practical analysis we do mean a deep analysis of each byte of HTTP packet. We have several packets and we will analyze some of them in order to give a practical explanation for theoretical concepts that we will describe at first part. This paper aims to represent how HTTP protocol uses some basic operations in order to handle the communication. HTTP version 2.0 was published on 14 April 2013 but again it was just a draft and not a serious project. This means the network technicians are working for that and information about HTTP 2.0 are very restricting. So, we have not included this version in our theoretical and practical analysis. II. ANALYZING HYPERTEXT TRANSFER PROTOCOL II.1. HTTP versions and their difference HTTP/1.1 was created to fix the known problems of HTTP/1.0, so this protocol was improved by adding some extra concepts in it. First of all is the hop-by-hop mechanism that means a request is sent to the origin server and a response is turned back to the client. An Origin server is a server on which a given resource resides or is to be created. (Berners - Lee, Fielding and Frystyk 1996, p.7). There are some intermediary devices across the network such as switches, routers or firewalls. The HTTP message travels through them. The second is transfer coding which means the client sends a coded document to the receiver without any alternation by the intermediaries. Then the receiver decodes this document that was compressed by the client. HTTP/1.1 solves the problem of safe message transmission by transfer coding mechanism. The third concept adopted by HTTP/1.1 is about virtual hosting. HTTP/1.1 offers the persistent connection mechanism. The aim was to eliminate multiple parallel connections. The number of TCP setup is reduced by establishment of a persistent connection. A client is sending a HTTP request to a server and is waiting for response from the server. During this

2 International Journal of Engineering & Technology IJET-IJENS Vol:14 No:06 45 time it is not establish another TCP connection, but the next request is going to be in the same persistent connection The protocol version is needed because it allows the sender to show the format of a message and its capacity to understand HTTP communication. All HTTP versions till now are HTTP/0.9, HTTP/1.0 and HTTP/1.1 which is the current version of HTTP. The original version of HTTP was called HTTP/0.9 and it did not require the use of TCP connection. HTTP currently requires TCP connection, but could run over any connection oriented service which is approximately the same with TCP. HTTP/1.0 standard was replaced by HTTP/1.1 standard because it had performance and scalability problems. HTTP/1.0 was connectionless protocol. The latest version improved some aspects such as extensibility, performance and security of the protocol. The changes between the latest two protocols are mostly on persistent connection, the host header and authentication procedures. In the table below are depicted some differences related to methods available in HTTP versions. Table I Methods available in HTTP versions. Method HTTP/0.9 HTTP/1.0 HTTP/1.1 CONNECT No No Yes DELETE No Yes Yes GET Yes Yes Yes LINK No Yes No POST No Yes Yes PUT No Yes Yes sending back responses. (Berners - Lee, Fielding and Frystyk 1996, pp. 6-7). All communication in the web is based on the HTTP, but HTTP is based on Transfer Control Protocol or Internet Protocol. Hypertext is a nonlinear writing or linking related documents for navigation. (Krishnamurthy and Rexford 2001, p.10). In this section we are going to briefly point out the key properties of HTTP which are: Global URI, Request response exchange and Statelessness. Reliability in a global URI: HTTP relies on the Uniform Resource Identifier (URI) naming mechanism. A URI is thus a formatted string from the protocol s point of view. (Krishnamurthy and Rexford 2001, p.176). The URI helps HTTP to identify resources on the Web or denotes a resource independent from its current location. It is a combination of a Uniform Resource Locator (URL) and a Uniform Resource Name (URN). URL represents the address of a file that is saved in the Web Server and it can be accessed in the internet. We can find the location of resources via URL, but URN is used for identification. So, a particular URI can be represented by a name or by a locator or by both at the same time. URL is the most popular form of URI. There are two kinds of URI, relative and absolute. The string of an absolute URI starts with a scheme and is followed by a string that represents the source that can be reached via the scheme. This scheme designates the protocol and this protocol is used to access the resource. The string of the relative URI does not start with scheme. This is the difference between a URI relative and absolute. The most regularly scheme for using on the Web is http. Each scheme has a different syntax from others and mechanism to name resources. Request-Response exchange: The figure below represents a scenario where a HTTP client intends to contact to a HTTP server through a HTTP proxy server. As we can see from table 1 the latest version of HTTP has more features comparing to the others, which means that it has improved a lot of things compared to the earliest version. In the above table we have not included version 2.0 of HTTP because it is not completed yet, this based on the draft that will expire on 1 May, 2015 [17]. A little bit information was also published on 14 April 2013 by (Belshe M., and Peon R., 2013.) where it is stated that: The HTTP/2.0 encapsulation enables more efficient use of network resources and reduced perception of latency by allowing header field compression and multiple concurrent messages on the same connection. It also introduces unsolicited push of representations from servers to clients. II.2. Protocol properties HTTP is a relatively simple client - server mechanism for accessing documents anywhere in the Internet. Client is an application program that establishes connections for the purpose of sending requests. Server is an application program that accepts connections in order to service requests by Fig. 1. The client server communication with an intermediary proxy server. In this case, the client intends to request an object of the Back End Server through the Proxy Server. Basically, the client sends the request to the proxy server which sends the request to the Back End Server. The proxy adds its identity to the request received from the client. When the Back End Server receives the request from the client (through the Proxy server), it treats the request as if it had come directly from the client and sends back the response to the client (in this example, through the proxy server again). The proxy server will include its identity to via header in the response from the Back End Server also. Due to this, both the client and the server will

3 International Journal of Engineering & Technology IJET-IJENS Vol:14 No:06 46 know what the path is taken by the request and the response respectively. It is taken for granted the fact that a TCP connection is required before the transmission of HTTP messages between clients and servers. Statelessness of the protocol: HTTP is a stateless protocol; this means the lack of state maintenance across client server pairs. So, after the HTTP server has responded his answer to the HTTP client, the connection between them is dropped. HTTP uses some components during the communication mechanism. These components can maintain state about past requests and responses. One example that shows the stateless of the protocol is when a user wants to view three web pages. In this case, for each web page, by the web browser will be created three HTTP request. The protocol itself does not have any awareness about previous requests, but the client and the server might have awareness about them. Statelessness is a disadvantage for HTTP protocol but it ensures Web scalability. The lack of HTTP s state is a problem for some applications, like e-commerce. A legal transaction requires some states to be maintained across HTTP requests. The role of MIME in HTTP: Multipurpose Internet Mail Extension (MIME) was proposed for sending multiple objects within a single message. These objects can be both, textual or non-textual such as sound, video, image etc. So, MIME defines a variety of multimedia data objects. MIME is also used to represent text in non-ascii character set. There are some differences between MIME and HTTP. The main difference is: MIME was designed for exchange service whereas HTTP was designed for high performance over binary connections, client server architecture. HTTP has adopted some concepts from MIME. The first is classification of data formats in communication between senders and receivers. MIME type is the data format for HTTP. Another concept that HTTP has adopted from MIME is its formats for multipart messages. This implies the ability of MIME to include a lot of entities in a message body. There are some MIME concepts that are not adopted by HTTP. The main concept is the way of addressing external documents. II.3. Security Consideration The HTTP s procedures offer some necessary security services but not everything. Some specific security services are required in the critical cases. Security ensures that only authenticated users can access the server. The main disadvantage of World Wide Web is that HTTP protocol does not provide any manner to encrypt the messages to protect the privacy. So an adversary can eavesdrop the confidential information during the client-server communication. The Web has developed a technology to provide the confidentiality. HTTP client and HTTP server during the communication agrees to continue communication with a secure version of HTTP, such as Hypertext Transfer Protocol Secure (HTTPS). In all cases HTTPS is combination of HTTP with Secure Sockets Layer (SSL). HTTPS is a protocol that uses SSL for transporting the HTTP message. (Krishnamurthy and Rexford 2001, p.210). SSL involves encryption and secure identification of the server because it is the most popular network security technology on the world. So the communication mechanism between HTTP client and HTTP server is very secure because everything in the communication is encrypted, including URI. Fig. 2. The difference between standard HTTP and HTTP secured with SSL Standard HTTP HTTP secured with SSL As we can see from the figure 1, SSL is placed between HTTP and TCP. So, firstly HTTP has to communicate with SSL and then SSL communicates with TCP transport layer. The client should decide in which communication with server to use SSL. If it will use SSL then the standard URI scheme will begin with https which indicates a secure session. HTTP with SSL has a default port 443. In each communication if the HTTP client uses SSL are needed two TCP ports, one for nonsecure operation (port 80) and another for secure operation (port 443). III. SOFTWARE COMPARISON FOR MONITORING DATA TRAFFIC OVER THE INTERNET Before we start using a specific program for monitoring and analyzing network data, we need to identify which program best serves to our purposes. For this reason we have consider two of the most commonly used programs from the network administrators: Tcpdump and WireShark. Both programs are offered free on the Internet. Tcpdump is a utility for studying network protocols. It is an excellent tool for analyzing the network, widely used in UNIX or Linux. This program pick up the packet based on several criteria selected by the user by writing commands in the command line, this traffic can be registered in different formats. WireShark is the graphic application widely used to monitor and analyze network. It is open-source program and can be executed in several platforms such as UNIX, Linux and Windows. The file with traffic packets captured by Tcpdump can read by using WireShark. It contains advanced filtering options, provides us with statistics and graphics, it also offers a view of the flow of communication between the end nodes. Doing a comparison between these two programs we can say that it is better using WireShark than Tcpdump. Another reason added to this statement is that in the case of this analysis we are using Windows as an operating system so monitoring and analyzing with Tcpdump would be difficult.

4 IV. DATA TRAFFIC ANALYSIS International Journal of Engineering & Technology IJET-IJENS Vol:14 No:06 47 IV.1. GET analyze (Packet byte analyze) No. : 7 Time: Source: Destination: Protocol Length Info: HTTP 345 GET / HTTP/1.1 Abs time and date: :19: This information is not completely related to HTTP but also to TCP, IP, Ethernet and Data Link Layer. We are going to give a short background about this single packet. The information above is describing the number of packet, the time when it was sniffed and in reference of the packet number 0, the IP address of HTTP client and server, the type of protocol, the length and the name of method that it used during the communication. Frame 7: 345 bytes on wire (2760 bits), 345 bytes captured (2760 bits) Ethernet II, Src: Vmware_75:7e:7d (00:0c:29:75:7e:7d), Dst: Vmware_e4:aa:93 (00:50:56:e4:aa:93) Internet Protocol Version 4, Src: ( ), Dst: ( ) Transmission Control Protocol, Src Port: (41179), Dst Port: http (80), Seq: 1, Ack: 1, Len: 291 As far as WireShark is giving information not only for HTTP but for all the protocols that encapsulate this protocol, in the next packet this information that is above will be omitted 1. Hypertext Transfer Protocol 2. GET / HTTP/1.1\r\n 3. [Expert Info (Chat/Sequence): GET / HTTP/1.1\r\n] 4. Request Method: GET 5. Request URI: / 6. Request Version: HTTP/ Host: 8. User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:18.0) Gecko/ Firefox/18.0\r\n 9. Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/ *;q=0.8\r\n 10. Accept-Language: en-us,en;q=0.5\r\n 11. Accept-Encoding: gzip, deflate\r\n 12. Connection: keep-alive\r\n 13. \r\n 14. Full request URI: The first line shows the name of the protocol which in our case is Hypertext Transfer Protocol. The second line contains method, version of protocol, two characters n and r. The method is defined as GET. GET is a method used to retrieve any object from the server. The version of HTTP is defined as 1.1 which is the current version of this protocol. The characters \r, \n are defined as the line break in the protocol specification. Everything that is written between brackets is added by WireShark. So we are not going to comment the third line. The forth line informs about the required method which in this case is settled as GET. Line number five is the request URI: / because of the HTTP protocol we cannot send a request URI empty. So, instance of this it is used the backsplash symbol, /. In line number six is defined the version of 1.1 of HTTP. A more detailed description about this is given in one of the above section. In the seventh line the host is settled as This means that HTTP client is sending a request to yahoo server. In the eighth line we see that user have used Mozilla Firefox as web browser running in an operating system, X11; Ubuntu; Linux x86_64; rv:18.0. If we look in WireShark, in the Ethernet part, we will understand that it is running over the Virtual Machine. We see the name of Virtual Machine is Vmware. In the ninth line, are mentioned the formats that the client will accept from the server. In this case, text/html,application/xhtml+xml,application/xml; with a quality of 0.9 (which means that these formats are more preferable than the others above),*/* and other formats with quality of 0.8. In the tenth line the accept language is settle to en or en-us, following the ISO index. In the eleventh line is settled the accept-encoding, which means that the client will accept the following compress formats: gzip, deflate. In the twelfth line the connection is settle as keep-live, which means that the client will require continuous packets from the server to be sure that the connection between both is on. In the fourteenth line it is written the URI of the server that is trying to reach. 1. HTTP/ Found 2. Date: Mon, 18 Feb :19:41 GMT 3. Set-Cookie: B=780qj418i56nd&b=3&s=g6; expires=thu, 19-Feb :19:41 GMT; path=/; domain=.yahoo.com 4. P3P: policyref=" CP="CAO DSP COR CUR ADM DEV TAI PSA PSD IVAiIVDiCONiTELoOTPi OUR DELiSAMiOTRiUNRiPUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE LOC GOV" 5. Cache-Control: private 6. X-Frame-Options: SAMEORIGIN 7. Set-Cookie: IU=deleted; expires=sun, 19-Feb :19:40 GMT; path=/; domain=.yahoo.com 8. Set- Cookie:fpc=d=mmilkbmXtTVcbgX0doDt0N9QZ7o6zVmm o6e95fmiahe5psnxgna6ocihpzb3faijqky3iw3uxofiu chj6zjjhw8l1bhiczd0mhhy_ynqoptrerwdpn.kszos_xas

5 International Journal of Engineering & Technology IJET-IJENS Vol:14 No:06 48 hnzefspfzfwladdo_zfvkjx1ibn7bcrinfir1ji00uk.qf7n gy9kgux6rvltcz70cfh2rgcujfc-&v=2; expires=tue, 18-Feb :19:41 GMT; path=/; domain= 9. Location: Vary: Accept-Encoding 11. Content-Type: text/html; charset=utf Age: Transfer-Encoding: chunked 14. Connection: keep-alive 15. Server: YTS/ In the first line we see the name of the protocol and its version - HTTP/1.1/. It also settled the status code which in this case is 302 Found. The request resource is under a different URI. The temporary URI must be given in the location file of the response. In the second line it is defined the date, location and hour of the response. In the third line Set-Cookie is defined with an expire time, a path and a domain. This means that the server is giving a cookie to the client in order to recognize him. The value of the path is / which means that it is empty. The domain was yahoo.com. In the fourth line, P3P is settled with some specifications and it is used to inform the clients that the server is going to use the information that it collects from the browsers. In the fifth line the cache control is on private and this means that the server will keep a copy but it will not share it with other servers. In the sixth line the X-frame options has in his value the same option which means the document will be shown in a frame only if the frame and its parent have the same origin. In the seventh and eighth line, the server is giving extra cookies to the client with the same path and different expire times. This, as we have mentioned before, means that the user is generating static information as he is navigating the web. In the ninth line is setting the location of the server. In the tenth line the server has added the Vary header in the response message. This causes the proxy to cache multiple versions of the request, one for each value of the Accept - Encoding request header. Sometimes the Vary: Accept Encoding header is added to provoke the correct behavior from the proxy server. In the eleventh line the server will send text and html as formats. In the twelfth line the server is estimating the time since the server generates the response. In the thirteenth line we can see transfer encoding. This represents values that are used to show an encoding transformation that has been or can be applied to a message body in order to make sure a safe transport via the network. The chunked transfer encoding must be applied only one time to a massage body. When it is used it must be the last transfer encoding applied to the message body. In the fourteenth line the connection is settled as keep-live which means that the server and the client can communicate on an existing connection. In the fifteenth line we can see the name of the server that is responding to the HTTP client which in this case named YTS. It contains information related to the software which is used by server to handle the request. IV.2. POST analyze (Packet byte analyze) The analysis of recording in the previous section has included only GET method. This happened because in the communication between the client and the server only the client wanted information from server. The aim is to analyze a communication between the client and the server where the client transfers a large amount of data to the server. To do this we need to analyze packets that involve POST method. In this section is examined a communication between client and server via POST method. The detailed information and analysis for two packets are as follows No. : 196 Time: Source: Destination: Protocol Length Info: HTTP 4935 POST /ethereal-labs/lab3-1-reply.htm HTTP/1.1 Abs time and date: :55: As we can see the number of packet that we analyze is 196. The IP address of client is and the IP of server where client is transferring data is We understand the client is transferring data because the method is POST and it is corresponding for uploading data to the server. The last information we can see is time and data when we captured data by WireShark. 1. Hypertext Transfer Protocol 2. POST /ethereal-labs/lab3-1-reply.htm HTTP/1.1\r\n 3. Expert Info (Chat/Sequence): POST /ethereal-labs/lab3-1-reply.htm HTTP/1.1\r\n 4. Request Method: POST 5. Request URI: /ethereal-labs/lab3-1-reply.htm 6. Request Version: HTTP/ Host: gaia.cs.umass.edu 8. Connection: keep-alive 9. Content-Length: Cache-Control: max-age=0 11. Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q = Origin: User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/ (KHTML, like Gecko) Chrome/ Safari/ Content-Type:multipart/form-data;boundary=---- WebKitFormBoundaryLna6B7NHOVgRhBfy 15. Referer:

6 International Journal of Engineering & Technology IJET-IJENS Vol:14 No: Accept-Encoding: gzip,deflate,sdch 17. Accept-Language: nb- NO,nb;q=0.8,no;q=0.6,nn;q=0.4,en-US;q=0.2,en;q= Accept-Charset: ISO ,utf-8;q=0.7,*;q=0.3 The first line shows the name of the HTTP protocol. The second line contains the name of the method that is used for communication, request URI and the version of HTTP protocol. The same information is shown from third line to sixth line. We are not going to comment the third line because the information between brackets is added by WireShark. In the seventh line the host is settled as gaia.cs.umass.edu. In the eighth line the connection is settle as keep-live, which means that the client will require continuous packets from the server to be sure that the connection between both is on. In the ninth line we can see the content-length This means the size of the entity-body, in decimal number of OCTETs. In line number ten we see the browser telling the server that it needs the current version of the file and not to server a version that was cached somewhere along the path. We can understand that from the value of max-argue which is 0 seconds. In line number eleven, are mentioned the formats that the client will accept from the server. In this case, text/html,application/xhtml+xml,application/xml; with a quality of 0.9 (which means that these formats are more preferable than the others above),*/* and other formats with quality of 0.8. The twelfth line shows the URL address of the origin server which is the server on which a given resource is to be created. In line number thirteen we see that user have used Mozilla 5/0 as web browser running in an operating system, Windows NT 6.1. In line number fourteenth is described the type that would be accepted in the object that is added in the body. multipart/form-data allows the user to send-upload files using the POST. It is an encoding type. It is also define the boundary of the file that is being uploaded. In line number fifteenth the referrer request header field allows the client to specify the URI address of the resource from which the Request URI was obtained. In the sixteenth line is settled the accept-encoding, which means that the client will accept the following compress, formats: gzip, deflate, sdch. The line number seventeen, the accept language is explained in the preceding parts which restricts the set of natural language that are preferred as a response to the request. The set of languages that are allowed now is increased in comparison with the case when we analyzed GET method. The line number eighteen shows the accept-charset field which means what character sets are acceptable for the response. We can see ISO standard there and US-ASCII character set is assumed to be acceptable to all HTTP client. 1. HTTP/ OK 2. Date: Fri, 19 Apr :55:36 GMT 3. Server: Apache/2.2.3 (CentOS) 4. Last-Modified: Thu, 07 Jun :06:48 GMT 5. ETag: " a0-b0d93600" 6. Accept-Ranges: bytes 7. Content-Length: Keep-Alive: timeout=10, max= Connection: Keep-Alive 10. Content-Type: text/html; charset=utf-8 From the first line we understand that is a HTTP response which contains the version 1.1 of HTTP, response code 200 and response message OK. The meaning for these is described before. In the third line we can see the name of the server that is responding to the HTTP client which in this case named Apache. In line number four is last-modified response which indicates the data and time at which the origin server believes the information was modified. In this case is 7 June 2013 at 06:48 GMT. The fifth line shows ETag response header field which provides a unique value for a resource s contents. From the sixth line we can see that accept-range is in byte. This shows that the origin server supports byte range requests for the target resource. In line number seven we can see the size of content length is 416. The meaning of this field is described earlier. In line number eight, the server has selected a maximum of 100 requests, but will timeout if the next request is not received within 10 seconds. In line number nine the connection is settled as keep-live. In line number ten we can see again the content-type. In this case, the formats accepted by the user are text and html. The charset specify the set characters that are supported for a form. In this case is settled as UTF-8 (Transformation Format-8 bits). V. CONCLUSIONS HTTP has become one of the most popular protocols on communicating data and information through the web. The main reason for this is the high usage of World Wide Web. Another reason is that HTTP has also several characteristics such as persistence, pipelining, multiple connection and stateless. The versions and methods of HTTP protocols have evolved during the last 20 years from /0.9 to /1.1. It is anticipated that another version, HTTP Version /2.0 will be used after two or three years with more methods. These advantages make HTTP to be more favorable than its competitor Gopher protocol. HTTP is a very secure protocol by using SSL for encryption. The TCP port by default for this protocol is 80 whereas for HTTPS is 443. The communication between the HTTP client and HTTP server happens in two ways: directly as web browser - web server or indirectly via an intermediate proxy server. So, it works as a request - response protocol in the client - server model. The format of HTTP message is splitted in two parts, header and body. There are data inside them that will be transferred from client to server or vice - versa.

7 International Journal of Engineering & Technology IJET-IJENS Vol:14 No:06 50 From the analysis of the recording we noticed a Mozilla web browser sent a GET request to the yahoo server. The client intends to retrieve object from the yahoo server as XML text, applications. The client intends to access to yahoo website. This server then sends a response to the client with the status code 302 found, which means that the communication is successful. We can easily notice this communication by seeing IP address of the server and client as well as some specific options that are included in WireShark. In addition to these packets we captured, some other packets were analyzed via WireShark. We noticed a communication between client and server via POST message inside the second packets captured. In this communication the client uploaded a text file and server then sent it a confirmation message as response. Normally, during the communication between these end nodes are involved several other protocols and not only HTTP. [21] Krishnamurthy, B., and Rexford, J Web Protocols and Practice: HTTP/1.1, Networking Protocols, Cashing, and Traffic Measurement. Boston: Addison Wesley. [22] Mohamad, G Understanding server HTTP headers (Vary: Accept - Encoding). [23] URL: last access: [24] White J Introduction to the Hypertext Transfer Protocol (HTTP): What is a network protocol? Virginia Tech. [25] Thomas, S HTTP Essentials: Protocols for Secure, Scaleable Web Sites. New York: Wiley Computer. [26] Varnish Software, HTTP (2004). [27] URL: HTTP.html, last access: [28] Belshe, M., Peo, R., et.al. (2015) Hypertext Transfer Protocol version 2, draft-ietf-httpbis-https-latest. [29] URL: last accessed: REFERENCES [1] Benoist E, Web Security, Summer Term. HyperText Transfer Protocol - HTTP.IIG University of Freiburg. [2] URL: last access: [3] Belshe M., and Peon R Hypertext Transfer Protocol: draftietf-httpbits-http2-latest. [4] URL: last access: [5] Berners - Lee, T., Fielding, R., Gettys, J., Mogul, J., Leach, P. and Frystyk, H Hypertext Transfer Protocol -- HTTP/1.1.Massachusetts: Network Working Group. [6] URL: last access: [7] Berners - Lee, T., Fielding, R., and Frystyk, H Hypertext Transfer Protocol -- HTTP/1.0.Massachusetts: Network Working Group. [8] URL: last access: [9] Berners - Lee, T., Fielding, R., Gettys, J., Mogul, J., Leach, P. and Frystyk, H Hypertext Transfer Protocol -- HTTP/1.1.Massachusetts: Network Working Group. [10] URL: last access: [11] Brass S, Chapter 4: The HyperText Transfer Protocol. Universitat Halle. [12] URL: last access: [13] Buzzle (2012), HTTP Hypertext Transfer Protocol. [14] URL: last access: [15] Hypertext Transfer Protocol HTTP/1.1 (1996). [16] URL: spec-01.html, last access: [17] HTTP -- Hypertext Transfer Protocol. Department of Computer Science [18] URL: ttp.pdf, last access: [19] HTTP Gallery, HTTP Methods (2007). [20] URL: last access:

Hypertext for Hyper Techs

Hypertext for Hyper Techs Hypertext for Hyper Techs An Introduction to HTTP for SecPros Bio Josh Little, GSEC ~14 years in IT. Support, Server/Storage Admin, Webmaster, Web App Dev, Networking, VoIP, Projects, Security. Currently

More information

HTTP. Internet Engineering. Fall 2015. Bahador Bakhshi CE & IT Department, Amirkabir University of Technology

HTTP. Internet Engineering. Fall 2015. Bahador Bakhshi CE & IT Department, Amirkabir University of Technology HTTP Internet Engineering Fall 2015 Bahador Bakhshi CE & IT Department, Amirkabir University of Technology Questions Q1) How do web server and client browser talk to each other? Q1.1) What is the common

More information

Internet Technologies Internet Protocols and Services

Internet Technologies Internet Protocols and Services QAFQAZ UNIVERSITY Computer Engineering Department Internet Technologies Internet Protocols and Services Dr. Abzetdin ADAMOV Chair of Computer Engineering Department aadamov@qu.edu.az http://ce.qu.edu.az/~aadamov

More information

CONTENT of this CHAPTER

CONTENT of this CHAPTER CONTENT of this CHAPTER v DNS v HTTP and WWW v EMAIL v SNMP 3.2.1 WWW and HTTP: Basic Concepts With a browser you can request for remote resource (e.g. an HTML file) Web server replies to queries (e.g.

More information

Protocolo HTTP. Web and HTTP. HTTP overview. HTTP overview

Protocolo HTTP. Web and HTTP. HTTP overview. HTTP overview Web and HTTP Protocolo HTTP Web page consists of objects Object can be HTML file, JPEG image, Java applet, audio file, Web page consists of base HTML-file which includes several referenced objects Each

More information

HTTP Protocol. Bartosz Walter <Bartek.Walter@man.poznan.pl>

HTTP Protocol. Bartosz Walter <Bartek.Walter@man.poznan.pl> HTTP Protocol Bartosz Walter Agenda Basics Methods Headers Response Codes Cookies Authentication Advanced Features of HTTP 1.1 Internationalization HTTP Basics defined in

More information

Architecture of So-ware Systems HTTP Protocol. Mar8n Rehák

Architecture of So-ware Systems HTTP Protocol. Mar8n Rehák Architecture of So-ware Systems HTTP Protocol Mar8n Rehák HTTP Protocol Hypertext Transfer Protocol Designed to transfer hypertext informa8on over the computer networks Hypertext: Structured text with

More information

The Hyper-Text Transfer Protocol (HTTP)

The Hyper-Text Transfer Protocol (HTTP) The Hyper-Text Transfer Protocol (HTTP) Antonio Carzaniga Faculty of Informatics University of Lugano October 4, 2011 2005 2007 Antonio Carzaniga 1 HTTP message formats Outline HTTP methods Status codes

More information

Internet Technologies. World Wide Web (WWW) Proxy Server Network Address Translator (NAT)

Internet Technologies. World Wide Web (WWW) Proxy Server Network Address Translator (NAT) Internet Technologies World Wide Web (WWW) Proxy Server Network Address Translator (NAT) What is WWW? System of interlinked Hypertext documents Text, Images, Videos, and other multimedia documents navigate

More information

1. When will an IP process drop a datagram? 2. When will an IP process fragment a datagram? 3. When will a TCP process drop a segment?

1. When will an IP process drop a datagram? 2. When will an IP process fragment a datagram? 3. When will a TCP process drop a segment? Questions 1. When will an IP process drop a datagram? 2. When will an IP process fragment a datagram? 3. When will a TCP process drop a segment? 4. When will a TCP process resend a segment? CP476 Internet

More information

CS640: Introduction to Computer Networks. Applications FTP: The File Transfer Protocol

CS640: Introduction to Computer Networks. Applications FTP: The File Transfer Protocol CS640: Introduction to Computer Networks Aditya Akella Lecture 4 - Application Protocols, Performance Applications FTP: The File Transfer Protocol user at host FTP FTP user client interface local file

More information

reference: HTTP: The Definitive Guide by David Gourley and Brian Totty (O Reilly, 2002)

reference: HTTP: The Definitive Guide by David Gourley and Brian Totty (O Reilly, 2002) 1 cse879-03 2010-03-29 17:23 Kyung-Goo Doh Chapter 3. Web Application Technologies reference: HTTP: The Definitive Guide by David Gourley and Brian Totty (O Reilly, 2002) 1. The HTTP Protocol. HTTP = HyperText

More information

Information Extraction Art of Testing Network Peripheral Devices

Information Extraction Art of Testing Network Peripheral Devices OWASP AppSec Brazil 2010, Campinas, SP The OWASP Foundation http://www.owasp.org Information Extraction Art of Testing Network Peripheral Devices Aditya K Sood, SecNiche Security (adi_ks@secniche.org)

More information

No. Time Source Destination Protocol Info 1190 131.859385 128.238.245.34 128.119.245.12 HTTP GET /ethereal-labs/http-ethereal-file1.html HTTP/1.

No. Time Source Destination Protocol Info 1190 131.859385 128.238.245.34 128.119.245.12 HTTP GET /ethereal-labs/http-ethereal-file1.html HTTP/1. Ethereal Lab: HTTP 1. The Basic HTTP GET/response interaction 1190 131.859385 128.238.245.34 128.119.245.12 HTTP GET /ethereal-labs/http-ethereal-file1.html HTTP/1.1 GET /ethereal-labs/http-ethereal-file1.html

More information

By Bardia, Patit, and Rozheh

By Bardia, Patit, and Rozheh HTTP By Bardia, Patit, and Rozheh HTTP - Introduction - Hyper Text Transfer Protocol -uses the TCP/IP technology -has had the most impact on the World Wide Web (WWW) - specs in RFC 2616 (RFC2616) HTTP

More information

Research of Web Real-Time Communication Based on Web Socket

Research of Web Real-Time Communication Based on Web Socket Int. J. Communications, Network and System Sciences, 2012, 5, 797-801 http://dx.doi.org/10.4236/ijcns.2012.512083 Published Online December 2012 (http://www.scirp.org/journal/ijcns) Research of Web Real-Time

More information

Network Technologies

Network Technologies Network Technologies Glenn Strong Department of Computer Science School of Computer Science and Statistics Trinity College, Dublin January 28, 2014 What Happens When Browser Contacts Server I Top view:

More information

TCP/IP Networking An Example

TCP/IP Networking An Example TCP/IP Networking An Example Introductory material. This module illustrates the interactions of the protocols of the TCP/IP protocol suite with the help of an example. The example intents to motivate the

More information

Project #2. CSE 123b Communications Software. HTTP Messages. HTTP Basics. HTTP Request. HTTP Request. Spring 2002. Four parts

Project #2. CSE 123b Communications Software. HTTP Messages. HTTP Basics. HTTP Request. HTTP Request. Spring 2002. Four parts CSE 123b Communications Software Spring 2002 Lecture 11: HTTP Stefan Savage Project #2 On the Web page in the next 2 hours Due in two weeks Project reliable transport protocol on top of routing protocol

More information

World Wide Web. Before WWW

World Wide Web. Before WWW World Wide Web Joao.Neves@fe.up.pt Before WWW Major search tools: Gopher and Archie Archie Search FTP archives indexes Filename based queries Gopher Friendly interface Menu driven queries João Neves 2

More information

Alteon Browser-Smart Load Balancing

Alteon Browser-Smart Load Balancing T e c h n i c a l T i p TT-0411405a -- Information -- 24-Nov-2004 Contents: Introduction:...1 Associated Products:...1 Overview...1 Sample Configuration...3 Setup...3 Configuring PC1...4 Configuring PC2...4

More information

Outline Definition of Webserver HTTP Static is no fun Software SSL. Webserver. in a nutshell. Sebastian Hollizeck. June, the 4 th 2013

Outline Definition of Webserver HTTP Static is no fun Software SSL. Webserver. in a nutshell. Sebastian Hollizeck. June, the 4 th 2013 Definition of in a nutshell June, the 4 th 2013 Definition of Definition of Just another definition So what is it now? Example CGI php comparison log-file Definition of a formal definition Aisaprogramthat,usingthe

More information

Web. Services. Web Technologies. Today. Web. Technologies. Internet WWW. Protocols TCP/IP HTTP. Apache. Next Time. Lecture #3 2008 3 Apache.

Web. Services. Web Technologies. Today. Web. Technologies. Internet WWW. Protocols TCP/IP HTTP. Apache. Next Time. Lecture #3 2008 3 Apache. JSP, and JSP, and JSP, and 1 2 Lecture #3 2008 3 JSP, and JSP, and Markup & presentation (HTML, XHTML, CSS etc) Data storage & access (JDBC, XML etc) Network & application protocols (, etc) Programming

More information

The Web: some jargon. User agent for Web is called a browser: Web page: Most Web pages consist of: Server for Web is called Web server:

The Web: some jargon. User agent for Web is called a browser: Web page: Most Web pages consist of: Server for Web is called Web server: The Web: some jargon Web page: consists of objects addressed by a URL Most Web pages consist of: base HTML page, and several referenced objects. URL has two components: host name and path name: User agent

More information

All You Can Eat Realtime

All You Can Eat Realtime HTML5 WebSocket: All You Can Eat Realtime By Peter Lubbers, Kaazing May 14, 2010 1 About Peter Lubbers Director of Documentation and Training, Kaazing Co-Founder San Francisco HTML5 User Group http://www.sfhtml5.org/

More information

HTTP Response Splitting

HTTP Response Splitting The Attack HTTP Response Splitting is a protocol manipulation attack, similar to Parameter Tampering The attack is valid only for applications that use HTTP to exchange data Works just as well with HTTPS

More information

Data Communication I

Data Communication I Data Communication I Urban Bilstrup (E327) 090901 Urban.Bilstrup@ide.hh.se www2.hh.se/staff/urban Internet - Sweden, Northern Europe SUNET NORDUnet 2 Internet - Internet Addresses Everyone should be able

More information

SWE 444 Internet and Web Application Development. Introduction to Web Technology. Dr. Ahmed Youssef. Internet

SWE 444 Internet and Web Application Development. Introduction to Web Technology. Dr. Ahmed Youssef. Internet SWE 444 Internet and Web Application Development Introduction to Web Technology Dr. Ahmed Youssef Internet It is a network of networks connected and communicating using TCP/IP communication protocol 2

More information

Chapter 27 Hypertext Transfer Protocol

Chapter 27 Hypertext Transfer Protocol Chapter 27 Hypertext Transfer Protocol Columbus, OH 43210 Jain@CIS.Ohio-State.Edu http://www.cis.ohio-state.edu/~jain/ 27-1 Overview Hypertext language and protocol HTTP messages Browser architecture CGI

More information

THE PROXY SERVER 1 1 PURPOSE 3 2 USAGE EXAMPLES 4 3 STARTING THE PROXY SERVER 5 4 READING THE LOG 6

THE PROXY SERVER 1 1 PURPOSE 3 2 USAGE EXAMPLES 4 3 STARTING THE PROXY SERVER 5 4 READING THE LOG 6 The Proxy Server THE PROXY SERVER 1 1 PURPOSE 3 2 USAGE EXAMPLES 4 3 STARTING THE PROXY SERVER 5 4 READING THE LOG 6 2 1 Purpose The proxy server acts as an intermediate server that relays requests between

More information

GET /FB/index.html HTTP/1.1 Host: lmi32.cnam.fr

GET /FB/index.html HTTP/1.1 Host: lmi32.cnam.fr GET /FB/index.html HTTP/1.1 Host: lmi32.cnam.fr HTTP/1.1 200 OK Date: Thu, 20 Oct 2005 14:42:54 GMT Server: Apache/2.0.50 (Linux/SUSE) Last-Modified: Thu, 20 Oct 2005 14:41:56 GMT ETag: "2d7b4-14b-8efd9500"

More information

Evolution of the WWW. Communication in the WWW. WWW, HTML, URL and HTTP. HTTP Abstract Message Format. The Client/Server model is used:

Evolution of the WWW. Communication in the WWW. WWW, HTML, URL and HTTP. HTTP Abstract Message Format. The Client/Server model is used: Evolution of the WWW Communication in the WWW World Wide Web (WWW) Access to linked documents, which are distributed over several computers in the History of the WWW Origin 1989 in the nuclear research

More information

Computer Networks. Lecture 7: Application layer: FTP and HTTP. Marcin Bieńkowski. Institute of Computer Science University of Wrocław

Computer Networks. Lecture 7: Application layer: FTP and HTTP. Marcin Bieńkowski. Institute of Computer Science University of Wrocław Computer Networks Lecture 7: Application layer: FTP and Marcin Bieńkowski Institute of Computer Science University of Wrocław Computer networks (II UWr) Lecture 7 1 / 23 Reminder: Internet reference model

More information

Application-layer Protocols and Internet Services

Application-layer Protocols and Internet Services Application-layer Protocols and Internet Services Computer Networks Lecture 8 http://goo.gl/pze5o8 Terminal Emulation 2 Purpose of Telnet Service Supports remote terminal connected via network connection

More information

1. The Web: HTTP; file transfer: FTP; remote login: Telnet; Network News: NNTP; e-mail: SMTP.

1. The Web: HTTP; file transfer: FTP; remote login: Telnet; Network News: NNTP; e-mail: SMTP. Chapter 2 Review Questions 1. The Web: HTTP; file transfer: FTP; remote login: Telnet; Network News: NNTP; e-mail: SMTP. 2. Network architecture refers to the organization of the communication process

More information

1945: 1989: ! Tim Berners-Lee (CERN) writes internal proposal to develop a. 1990:! Tim BL writes a graphical browser for Next machines.

1945: 1989: ! Tim Berners-Lee (CERN) writes internal proposal to develop a. 1990:! Tim BL writes a graphical browser for Next machines. Systemprogrammering 2009 Föreläsning 9 Web Services Topics! HTTP! Serving static content! Serving dynamic content 1945: 1989: Web History! Vannevar Bush, As we may think, Atlantic Monthly, July, 1945.

More information

Lektion 2: Web als Graph / Web als System

Lektion 2: Web als Graph / Web als System Lektion 2: Web als Graph / Web als System Helmar Burkhart Informatik Universität Basel Helmar.Burkhart@... WT-2-1 Lernziele und Inhalt Web als Graph erkennen Grundelemente von sozialen Netzwerken sehen

More information

The Web History (I) The Web History (II)

The Web History (I) The Web History (II) Goals of Today s Lecture EE 122: The World Wide Web Ion Stoica TAs: Junda Liu, DK Moon, David Zats http://inst.eecs.berkeley.edu/~ee122/ (Materials with thanks to Vern Paxson, Jennifer Rexford, and colleagues

More information

Internet Privacy Options

Internet Privacy Options 2 Privacy Internet Privacy Sirindhorn International Institute of Technology Thammasat University Prepared by Steven Gordon on 19 June 2014 Common/Reports/internet-privacy-options.tex, r892 1 Privacy Acronyms

More information

Network: several computers who can communicate. bus. Main example: Ethernet (1980 today: coaxial cable, twisted pair, 10Mb 1000Gb).

Network: several computers who can communicate. bus. Main example: Ethernet (1980 today: coaxial cable, twisted pair, 10Mb 1000Gb). 1 / 17 Network: several computers who can communicate. Bus topology: bus Main example: Ethernet (1980 today: coaxial cable, twisted pair, 10Mb 1000Gb). Hardware has globally unique MAC addresses (IDs).

More information

Security-Assessment.com White Paper Leveraging XSRF with Apache Web Server Compatibility with older browser feature and Java Applet

Security-Assessment.com White Paper Leveraging XSRF with Apache Web Server Compatibility with older browser feature and Java Applet Security-Assessment.com White Paper Leveraging XSRF with Apache Web Server Compatibility with older browser feature and Java Applet Prepared by: Roberto Suggi Liverani Senior Security Consultant Security-Assessment.com

More information

CTIS 256 Web Technologies II. Week # 1 Serkan GENÇ

CTIS 256 Web Technologies II. Week # 1 Serkan GENÇ CTIS 256 Web Technologies II Week # 1 Serkan GENÇ Introduction Aim: to be able to develop web-based applications using PHP (programming language) and mysql(dbms). Internet is a huge network structure connecting

More information

Overview of Computer Networks

Overview of Computer Networks Overview of Computer Networks Client-Server Transaction Client process 4. Client processes response 1. Client sends request 3. Server sends response Server process 2. Server processes request Resource

More information

The Application Layer. CS158a Chris Pollett May 9, 2007.

The Application Layer. CS158a Chris Pollett May 9, 2007. The Application Layer CS158a Chris Pollett May 9, 2007. Outline DNS E-mail More on HTTP The Domain Name System (DNS) To refer to a process on the internet we need to give an IP address and a port. These

More information

Web Services April 21st, 2009 with Hunter Pitelka

Web Services April 21st, 2009 with Hunter Pitelka 15 213 The course that gives CMU its Zip! Web Services April 21st, 2009 with Hunter Pitelka Topics HTTP Serving static content Serving dynamic content Web History 1989: 1990: Tim Berners Lee (CERN) writes

More information

Playing with Web Application Firewalls

Playing with Web Application Firewalls Playing with Web Application Firewalls Who is Wendel? Independent penetration test analyst. Affiliated to Hackaholic team. Over 7 years in the security industry. Discovered vulnerabilities in Webmails,

More information

DEPLOYMENT GUIDE Version 1.1. Deploying the BIG-IP LTM v10 with Citrix Presentation Server 4.5

DEPLOYMENT GUIDE Version 1.1. Deploying the BIG-IP LTM v10 with Citrix Presentation Server 4.5 DEPLOYMENT GUIDE Version 1.1 Deploying the BIG-IP LTM v10 with Citrix Presentation Server 4.5 Table of Contents Table of Contents Deploying the BIG-IP system v10 with Citrix Presentation Server Prerequisites

More information

HTTP Caching & Cache-Busting for Content Publishers

HTTP Caching & Cache-Busting for Content Publishers HTTP Caching & Cache-Busting for Content Publishers Michael J. Radwin http://public.yahoo.com/~radwin/ OSCON 2005 Thursday, August 4th, 2005 1 1 Agenda HTTP in 3 minutes Caching concepts Hit, Miss, Revalidation

More information

CS 5480/6480: Computer Networks Spring 2012 Homework 1 Solutions Due by 9:00 AM MT on January 31 st 2012

CS 5480/6480: Computer Networks Spring 2012 Homework 1 Solutions Due by 9:00 AM MT on January 31 st 2012 CS 5480/6480: Computer Networks Spring 2012 Homework 1 Solutions Due by 9:00 AM MT on January 31 st 2012 Important: No cheating will be tolerated. No extension. CS 5480 total points = 32 CS 6480 total

More information

sessionx Desarrollo de Aplicaciones en Red Web Applications History (1) Content History (2) History (3)

sessionx Desarrollo de Aplicaciones en Red Web Applications History (1) Content History (2) History (3) sessionx Desarrollo de Aplicaciones en Red José Rafael Rojano Cáceres http://www.uv.mx/rrojano Web Applications 1 2 Content History (1) History Http CGI Web Tiers ARPANet Email, Ftp, IRC, news Explosive

More information

600-152 People Data and the Web Forms and CGI CGI. Facilitating interactive web applications

600-152 People Data and the Web Forms and CGI CGI. Facilitating interactive web applications CGI Facilitating interactive web applications Outline In Informatics 1, worksheet 7 says You will learn more about CGI and forms if you enroll in Informatics 2. Now we make good on that promise. First

More information

Cyber Security Workshop Ethical Web Hacking

Cyber Security Workshop Ethical Web Hacking Cyber Security Workshop Ethical Web Hacking May 2015 Setting up WebGoat and Burp Suite Hacking Challenges in WebGoat Concepts in Web Technologies and Ethical Hacking 1 P a g e Downloading WebGoat and Burp

More information

Advanced Higher Computing. Computer Networks. Homework Sheets

Advanced Higher Computing. Computer Networks. Homework Sheets Advanced Higher Computing Computer Networks Homework Sheets Topic : Network Protocols and Standards. Name the organisation responsible for setting international standards and explain why network standards

More information

1 Introduction: Network Applications

1 Introduction: Network Applications 1 Introduction: Network Applications Some Network Apps E-mail Web Instant messaging Remote login P2P file sharing Multi-user network games Streaming stored video clips Internet telephone Real-time video

More information

Protocol Data Units and Encapsulation

Protocol Data Units and Encapsulation Chapter 2: Communicating over the 51 Protocol Units and Encapsulation For application data to travel uncorrupted from one host to another, header (or control data), which contains control and addressing

More information

HTTP State Management

HTTP State Management HTTP State Management Candidate Version 1.1 27 Feb 2007 Open Mobile Alliance OMA-TS-HTTPSM-V1_1-20070227-C OMA-TS-HTTPSM-V1_1-20070227-C Page 2 (17) Use of this document is subject to all of the terms

More information

Layer 7 Load Balancing and Content Customization

Layer 7 Load Balancing and Content Customization C H A P T E R 4 Layer 7 Load Balancing and Content Customization This chapter will discuss the methods and protocols involved in accomplishing a Layer 7 load-balancing solution. The reasons for and benefits

More information

WWW. World Wide Web Aka The Internet. dr. C. P. J. Koymans. Informatics Institute Universiteit van Amsterdam. November 30, 2007

WWW. World Wide Web Aka The Internet. dr. C. P. J. Koymans. Informatics Institute Universiteit van Amsterdam. November 30, 2007 WWW World Wide Web Aka The Internet dr. C. P. J. Koymans Informatics Institute Universiteit van Amsterdam November 30, 2007 dr. C. P. J. Koymans (UvA) WWW November 30, 2007 1 / 36 WWW history (1) 1968

More information

Computer Networking LAB 2 HTTP

Computer Networking LAB 2 HTTP Computer Networking LAB 2 HTTP 1 OBJECTIVES The basic GET/response interaction HTTP message formats Retrieving large HTML files Retrieving HTML files with embedded objects HTTP authentication and security

More information

Internet Technologies 4-http. F. Ricci 2010/2011

Internet Technologies 4-http. F. Ricci 2010/2011 Internet Technologies 4-http F. Ricci 2010/2011 Content Hypertext Transfer Protocol Structure of a message Methods Headers Parameters and character encoding Proxy Caching HTTP 1.1: chunked transfer and

More information

Introduction to Network Security Lab 1 - Wireshark

Introduction to Network Security Lab 1 - Wireshark Introduction to Network Security Lab 1 - Wireshark Bridges To Computing 1 Introduction: In our last lecture we discussed the Internet the World Wide Web and the Protocols that are used to facilitate communication

More information

Life of a Packet CS 640, 2015-01-22

Life of a Packet CS 640, 2015-01-22 Life of a Packet CS 640, 2015-01-22 Outline Recap: building blocks Application to application communication Process to process communication Host to host communication Announcements Syllabus Should have

More information

CloudOYE CDN USER MANUAL

CloudOYE CDN USER MANUAL CloudOYE CDN USER MANUAL Password - Based Access Logon to http://mycloud.cloudoye.com. Enter your Username & Password In case, you have forgotten your password, click Forgot your password to request a

More information

Understanding Slow Start

Understanding Slow Start Chapter 1 Load Balancing 57 Understanding Slow Start When you configure a NetScaler to use a metric-based LB method such as Least Connections, Least Response Time, Least Bandwidth, Least Packets, or Custom

More information

Chapter 5. Data Communication And Internet Technology

Chapter 5. Data Communication And Internet Technology Chapter 5 Data Communication And Internet Technology Purpose Understand the fundamental networking concepts Agenda Network Concepts Communication Protocol TCP/IP-OSI Architecture Network Types LAN WAN

More information

Application layer Web 2.0

Application layer Web 2.0 Information Network I Application layer Web 2.0 Youki Kadobayashi NAIST They re revolving around the web, after all Name any Internet-related buzz: Cloud computing Smartphone Social media... You ll end

More information

APACHE WEB SERVER. Andri Mirzal, PhD N28-439-03

APACHE WEB SERVER. Andri Mirzal, PhD N28-439-03 APACHE WEB SERVER Andri Mirzal, PhD N28-439-03 Introduction The Apache is an open source web server software program notable for playing a key role in the initial growth of the World Wide Web Typically

More information

Nuance Mobile Developer Program. HTTP Services for Nuance Mobile Developer Program Clients

Nuance Mobile Developer Program. HTTP Services for Nuance Mobile Developer Program Clients Nuance Mobile Developer Program HTTP Services for Nuance Mobile Developer Program Clients Notice Nuance Mobile Developer Program HTTP Services for Nuance Mobile Developer Program Clients Copyright 2011

More information

The OSI and TCP/IP Models. Lesson 2

The OSI and TCP/IP Models. Lesson 2 The OSI and TCP/IP Models Lesson 2 Objectives Exam Objective Matrix Technology Skill Covered Exam Objective Exam Objective Number Introduction to the OSI Model Compare the layers of the OSI and TCP/IP

More information

Single Pass Load Balancing with Session Persistence in IPv6 Network. C. J. (Charlie) Liu Network Operations Charter Communications

Single Pass Load Balancing with Session Persistence in IPv6 Network. C. J. (Charlie) Liu Network Operations Charter Communications Single Pass Load Balancing with Session Persistence in IPv6 Network C. J. (Charlie) Liu Network Operations Charter Communications Load Balancer Today o Load balancing is still in use today. It is now considered

More information

Application Layer: HTTP and the Web. Srinidhi Varadarajan

Application Layer: HTTP and the Web. Srinidhi Varadarajan Application Layer: HTTP and the Web Srinidhi Varadarajan The Web: the http protocol http: hypertext transfer protocol Web s application layer protocol client/server model client: browser that requests,

More information

Final for ECE374 05/06/13 Solution!!

Final for ECE374 05/06/13 Solution!! 1 Final for ECE374 05/06/13 Solution!! Instructions: Put your name and student number on each sheet of paper! The exam is closed book. You have 90 minutes to complete the exam. Be a smart exam taker -

More information

Polyglot: Automatic Extraction of Protocol Message Format using Dynamic Binary Analysis

Polyglot: Automatic Extraction of Protocol Message Format using Dynamic Binary Analysis Polyglot: Automatic Extraction of Protocol Message Format using Dynamic Binary Analysis Juan Caballero, Heng Yin, Zhenkai Liang Carnegie Mellon University Dawn Song Carnegie Mellon University & UC Berkeley

More information

Headless Drupal. Buzzword or Next Big Thing? Drupal City Berlin 16.11.2014

Headless Drupal. Buzzword or Next Big Thing? Drupal City Berlin 16.11.2014 Headless Drupal Buzzword or Next Big Thing? Drupal City Berlin 16.11.2014 About me Boris Böhne, aka drubb Drupal since 2006 Freelancer, based near Stuttgart, Germany @drubb Frontend - 1995 Frontend - 2005

More information

<draft-luotonen-web-proxy-tunneling-00.txt> February 1998. Tunneling TCP based protocols through Web proxy servers

<draft-luotonen-web-proxy-tunneling-00.txt> February 1998. Tunneling TCP based protocols through Web proxy servers INTERNET-DRAFT Ari Luotonen Expires: August 1998 Netscape Communications Corporation February 1998 Tunneling TCP based protocols through Web proxy servers Status

More information

Computer Networks/DV2 Lab

Computer Networks/DV2 Lab Computer Networks/DV2 Lab Room: BB 219 Additional Information: http://www.fb9dv.uni-duisburg.de/ti/en/education/teaching/ss08/netlab Equipment for each group: - 1 Server computer (OS: Windows 2000 Advanced

More information

DEPLOYMENT GUIDE DEPLOYING THE BIG-IP LTM SYSTEM WITH CITRIX PRESENTATION SERVER 3.0 AND 4.5

DEPLOYMENT GUIDE DEPLOYING THE BIG-IP LTM SYSTEM WITH CITRIX PRESENTATION SERVER 3.0 AND 4.5 DEPLOYMENT GUIDE DEPLOYING THE BIG-IP LTM SYSTEM WITH CITRIX PRESENTATION SERVER 3.0 AND 4.5 Deploying F5 BIG-IP Local Traffic Manager with Citrix Presentation Server Welcome to the F5 BIG-IP Deployment

More information

Introduction to ServerIron ADX Application Switching and Load Balancing. Module 6: Content Switching (CSW) Revision 0310

Introduction to ServerIron ADX Application Switching and Load Balancing. Module 6: Content Switching (CSW) Revision 0310 Introduction to ServerIron ADX Application Switching and Load Balancing Module 6: Content Switching (CSW) Revision 0310 Objectives Upon completion of this module the student will be able to: Define layer

More information

Load Balancing and Sessions. C. Kopparapu, Load Balancing Servers, Firewalls and Caches. Wiley, 2002.

Load Balancing and Sessions. C. Kopparapu, Load Balancing Servers, Firewalls and Caches. Wiley, 2002. Load Balancing and Sessions C. Kopparapu, Load Balancing Servers, Firewalls and Caches. Wiley, 2002. Scalability multiple servers Availability server fails Manageability Goals do not route to it take servers

More information

Modern snoop lab lite version

Modern snoop lab lite version Modern snoop lab lite version Lab assignment in Computer Networking OpenIPLab Department of Information Technology, Uppsala University Overview This is a lab constructed as part of the OpenIPLab project.

More information

Demystifying cache. Kristian Lyngstøl Product Specialist Varnish Software AS

Demystifying cache. Kristian Lyngstøl Product Specialist Varnish Software AS Demystifying cache Kristian Lyngstøl Product Specialist Varnish Software AS Montreal, March 2013 Agenda - The types of caches involved - The benefits of a cache - HTTP - Reverse proxy specifics Not: L1/L2

More information

The OSI Model and the TCP/IP Protocol Suite

The OSI Model and the TCP/IP Protocol Suite The OSI Model and the TCP/IP Protocol Suite To discuss the idea of multiple layering in data communication and networking and the interrelationship between layers. To discuss the OSI model and its layer

More information

Modern Web Development From Angle Brackets to Web Sockets

Modern Web Development From Angle Brackets to Web Sockets Modern Web Development From Angle Brackets to Web Sockets Pete Snyder Outline (or, what am i going to be going on about ) 1.What is the Web? 2.Why the web matters 3.What s unique about

More information

Lab Exercise SSL/TLS. Objective. Step 1: Open a Trace. Step 2: Inspect the Trace

Lab Exercise SSL/TLS. Objective. Step 1: Open a Trace. Step 2: Inspect the Trace Lab Exercise SSL/TLS Objective To observe SSL/TLS (Secure Sockets Layer / Transport Layer Security) in action. SSL/TLS is used to secure TCP connections, and it is widely used as part of the secure web:

More information

HOST EUROPE CLOUD STORAGE REST API DEVELOPER REFERENCE

HOST EUROPE CLOUD STORAGE REST API DEVELOPER REFERENCE HOST EUROPE CLOUD STORAGE REST API DEVELOPER REFERENCE REST API REFERENCE REST OVERVIEW Host Europe REST Storage Service uses HTTP protocol as defned by RFC 2616. REST operations consist in sending HTTP

More information

Automated Vulnerability Scan Results

Automated Vulnerability Scan Results Automated Vulnerability Scan Results Table of Contents Introduction...2 Executive Summary...3 Possible Vulnerabilities... 7 Host Information... 17 What Next?...20 1 Introduction The 'www.example.com' scan

More information

Web Application Security

Web Application Security Web Application Security The OWASP Foundation Securing the application Input validation Authorization Session mgmt Config mgmt Authenticatio n Error handling Web server App server DB server Secure storage

More information

Networking Test 4 Study Guide

Networking Test 4 Study Guide Networking Test 4 Study Guide True/False Indicate whether the statement is true or false. 1. IPX/SPX is considered the protocol suite of the Internet, and it is the most widely used protocol suite in LANs.

More information

Basic Internet programming Formalities. Hands-on tools for internet programming

Basic Internet programming Formalities. Hands-on tools for internet programming Welcome Basic Internet programming Formalities Hands-on tools for internet programming DD1335 (gruint10) Serafim Dahl serafim@nada.kth.se DD1335 (Lecture 1) Basic Internet Programming Spring 2010 1 / 23

More information

Domain Name System (DNS)

Domain Name System (DNS) Application Layer Domain Name System Domain Name System (DNS) Problem Want to go to www.google.com, but don t know the IP address Solution DNS queries Name Servers to get correct IP address Essentially

More information

Ethernet. Ethernet. Network Devices

Ethernet. Ethernet. Network Devices Ethernet Babak Kia Adjunct Professor Boston University College of Engineering ENG SC757 - Advanced Microprocessor Design Ethernet Ethernet is a term used to refer to a diverse set of frame based networking

More information

Lecture 28: Internet Protocols

Lecture 28: Internet Protocols Lecture 28: Internet Protocols 15-110 Principles of Computing, Spring 2016 Dilsun Kaynar, Margaret Reid-Miller, Stephanie Balzer Reminder: Exam 2 Exam 2 will take place next Monday, on April 4. Further

More information

Vodia PBX RESTful API (v2.0)

Vodia PBX RESTful API (v2.0) Vodia PBX RESTful API (v2.0) 2015 Vodia Networks Inc. All rights reserved. Page 1 of 30 Contents Login... 3 Get license info... 4 Get a complete list of domains... 5 Get the details of a specific domain...

More information

URLs and HTTP. ICW Lecture 10 Tom Chothia

URLs and HTTP. ICW Lecture 10 Tom Chothia URLs and HTTP ICW Lecture 10 Tom Chothia This Lecture The two basic building blocks of the web: URLs: Uniform Resource Locators HTTP: HyperText Transfer Protocol Uniform Resource Locators Many Internet

More information

Introducing the BIG-IP and SharePoint Portal Server 2003 configuration

Introducing the BIG-IP and SharePoint Portal Server 2003 configuration Deployment Guide Deploying Microsoft SharePoint Portal Server 2003 and the F5 BIG-IP System Introducing the BIG-IP and SharePoint Portal Server 2003 configuration F5 and Microsoft have collaborated on

More information

Homework 2 assignment for ECE374 Posted: 02/20/15 Due: 02/27/15

Homework 2 assignment for ECE374 Posted: 02/20/15 Due: 02/27/15 1 Homework 2 assignment for ECE374 Posted: 02/20/15 Due: 02/27/15 ote: In all written assignments, please show as much of your work as you can. Even if you get a wrong answer, you can get partial credit

More information

Lab Exercise SSL/TLS. Objective. Requirements. Step 1: Capture a Trace

Lab Exercise SSL/TLS. Objective. Requirements. Step 1: Capture a Trace Lab Exercise SSL/TLS Objective To observe SSL/TLS (Secure Sockets Layer / Transport Layer Security) in action. SSL/TLS is used to secure TCP connections, and it is widely used as part of the secure web:

More information

Load Balancing. Outlook Web Access. Web Mail Using Equalizer

Load Balancing. Outlook Web Access. Web Mail Using Equalizer Load Balancing Outlook Web Access Web Mail Using Equalizer Copyright 2009 Coyote Point Systems, Inc. Printed in the USA. Publication Date: January 2009 Equalizer is a trademark of Coyote Point Systems

More information

MASTER'S THESIS. Testing as a Service for Machine to Machine Communications. Jorge Vizcaíno 2014

MASTER'S THESIS. Testing as a Service for Machine to Machine Communications. Jorge Vizcaíno 2014 MASTER'S THESIS Testing as a Service for Machine to Machine Communications Jorge Vizcaíno 2014 Master of Science (120 credits) Computer Science and Engineering Luleå University of Technology Department

More information

HTTP/2: Operable and Performant. Mark Nottingham @mnot (@akamai)

HTTP/2: Operable and Performant. Mark Nottingham @mnot (@akamai) HTTP/2: Operable and Performant Mark Nottingham @mnot (@akamai) This talk may be disappointing. As we know, there are known knowns; there are things we know we know. We also know there are known unknowns;

More information