5. The Internet is a global system of interconnected
www, email, social networking, ﬁle transfer, online
chat, commerce, game playing, teleconferencing,
VoIP, video on demand etc.
Internet is tangible network of computers
sharing/exchanging information with the help of
Protocol is a form of etiquette.
Internet Protocols are the standards, designed to
specify how computers interact and exchange
messages over internet.
Protocols usually speciﬁes:
The format of the messages &
how to handle errors
7. Open systems ınter-connection (OSI) model
is a conceptual model that describes the internal
architecture of a communications system by splitting
its components into abstraction layers.
8. tcp model
This model is a condensed version of the OSI model
and only has four layers. It is considered as standard
9. http model
It stands for HypertextTransfer Protocol.
HTTP provides a set of rules and standards that
govern how information is transmitted on the World
10. http model
HTTP is a client-server protocol by which two
machines communicate using a reliable, connection-
oriented transport service such as theTCP.
Opens a tcp/ip connection via sockets
Transmits the request for a document
Waits for a reply from the server
Once the response is arrived, the socket is closed
11. http model
There is no memory between client connections.
Pure HTTP server treats every request as if it was
brand-new (i.e. Stateless)
To load faster, Http pages are stored in your
computer and internet caches.You don’t have control
over some caches like the ones in proxies.
12. PORT NUMBERS
A port is an endpoint to a logical connection and the
way a client program speciﬁes a speciﬁc server
program on a computer in a network
Port numbers range from 0 to 65536, but the first 1024 are reserved for privileged services.
The other ports could be used by any application.
13. Privacy: Anyone can see the content
Integrity: Anyone can alter the content
Authentication: Authentication is sent in clear form
Stateless: Need to maintain information across
14. HTTPS stands for HypertextTransfer
Protocol over Secure Socket Layer, or
HTTP over SSL.
SSL acts like a sub layer under regular
HTTP application layering.
HTTPS encrypts an HTTP message
prior to transmission and decrypts a
message upon arrival.
15. HTTPS by default uses port 443 as opposed to the standard HTTP
port of 80.
URL's beginning with HTTPS indicate that the connection between
client and browser is encrypted using SSL
SSL transactions are negotiated by means of a key based encryption
algorithm between the client and the server, this key is usually either
40 or 128 bits in strength (the higher the number of bits the more
secure the transaction).
16. SSL HANDSHAKE
17. HTTP server is implemented by servers
Each client-server transaction consists of 3 main parts:
1) Request/Response line 2) Header information 3)The body
18. there are several ways
to send a request
19. HTTP METHOD: GET
•Retrieval of information
•Server sends a representation of a resource to client
20. HTTP METHOD: POST
•The body of the request is accepted as a resource
•Mainly the data of forms are submitted by post
21. Web Content
Images (jpg, png, gif)
Web content is sent from server and browsers
renders and displays that is programmed.
Data* (xml, json)
22. Web Content: HTML
HyperText Markup Language (HTML) is the main
markup language for creating web pages and other
information that can be displayed in a web browser.
originally implemented as part of web browsers so that client-side
scripts could interact with the user, control the browser, communicate
asynchronously, and alter the document content that was displayed.
24. Web Content: CSS
Cascading Style Sheets (CSS) is a style sheet language used for
describing the presentation semantics (the look and formatting) of a
document written in a markup language.
25. Web Content: IMAGES
Any image could be displayed in an html page. It is important to keep
the side of images small for the sake of performance.
26. Web Content: XML
Extensible Markup Language (XML) is a
markup language that deﬁnes a set of
rules for encoding documents in a
format that is both human-readable and
27. Web Content: JSON
text-based open standard designed for
human-readable data interchange
Server infrastructure could be that simple!
29. Load Balancer
Servers in the
same zone does
not interact over
The content can
be cached in any
of the levels
Central Cache Servers
could be simpler
could be much more
request - response
You request a web page and get data
Browser caches the content
You request the same web page with
last modified date of the cached content
Since server says “content has not
changed”, the data in cache is loaded
Server does not return content. It just
returns status code 304
Server returns content with code 200
Any content can be cached in any infrastructural node
•Pages (http pages)
32. Load Balancer
Central Cache Servers
Returns cached scripts,
styles and content from
browser cacheRefresh By f5
Cache-‐Control: no-‐cache // HTTP 1.1
Pragma: no-‐cache // HTTP 1.0
Expires: Sat, 26 Jul 1988 05:00:00 GMT // in past
Asks for content if cache is not set
33. Load Balancer
Central Cache Servers
Asks for content. Browser
cache is not used.
34. Load Balancer
Central Cache Servers
Cache could be on server side
and needs to be cleaned either
automatic or manually
It is a web development technique used on the client
side to create asynchronous web applications.
Let’s see how ajax works. Fill the
following text area.
Write a text and press the button
Page is not refreshed.A new text
appears below the entry area.
Let’s look at how it works
Page is initially loaded to
Source code of the page
can be displayed within
40. HTML Code
Document Object model
When you click on the
button, web page calls the
server from client site
(i.e. from your browser)Server
Server sends new data as response.The data
is put to object graph of the page at runtime.
Object graph is changed.The new data is
displayed on browser. But you cannot see the
new data in the source code of the page.
You can trace the response of server via
plugins like FireBug
A cookie, also known as an HTTP cookie, web cookie,
or browser cookie, is a small piece of data sent from a
website and stored in a user's web browser while a user
is browsing a website.
45. Usage of Cookies
•Remember me, Preferences
•Tracking & Analytics
•Ads, Browsing History,Analytics,Tracking
46. Cookie Content
A web browser is expected to be able to store at least
300 cookies of 4 kb each, and at least 20 cookies per
server or domain.
•Expiration time or maximum age
•Name–value pair Data to send to server
Data to be used by browsers
to determine when to delete a
cookie, block a cookie or
accept a cookie
47. Setting Cookies
Cookies can not only be set by server. These can be set
An HTML form on a web page allows a user to
enter data that is sent to a server for processing.
Forms can be generated in several ways
50. Form Validation
and in server side by application.
Please note that validation on client
side could be bypassed easily
51. Responsive web design
Responsive web design (RWD) is a web
design approach aimed at crafting sites to provide
an optimal viewing experience—easy reading and
navigation with a minimum of resizing, panning, and
scrolling—across a wide range of devices (from
desktop computer monitors to mobile phones)
52. HTML5 vs FLASH
Web browsers cannot render Flash media
themselves, instead it is rendered primarily using the
proprietary but freely available Adobe Flash Player
All web browsers support HTML and other Web
standards to various degrees.
53. HTML5 vs FLASH
It’s time for reading some code
HTTP vs HTTPS
55. Lemİ orhan ergİn
Principal Software Engineer @ Sony
Founder & Author @ agilistanbul.com