Top Banner
Internet Infrastructure 2 University of Khartoum
60
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Internet Infrastructure 2 University of Khartoum.

Internet Infrastructure 2

University of Khartoum

Page 2: Internet Infrastructure 2 University of Khartoum.

University of Khartoum Agenda

• Networking Models.• OSI model.• TCP/IP model.• HTTP Protocol.• Web Caching.• Web 2.0.

Page 3: Internet Infrastructure 2 University of Khartoum.

University of Khartoum From the last lecture

Page 4: Internet Infrastructure 2 University of Khartoum.

University of Khartoum Networking Model• In the earliest networks, computers could typically communicate only

with other computers from the same manufacturers.• In the late 1970s, however, the need for a shared set of standards was

recognized.• Networking models for computer communication were developed

primarily to enable interoperability between different computer systems.• Networking models function by breaking down complex network

architecture into a set of modular components called layers.• Each layer is responsible for a different network function, or set of

related functions.• These functions are driven by networking protocols sets of predefined

rules that control or enable data transmission between network devices.

Page 5: Internet Infrastructure 2 University of Khartoum.

University of Khartoum OSI Model

• The Open System Interconnection (OSI) model was ratified in 1984 by the International Organization for Standardization (ISO) to resolve the problem of incompatible networks.

Page 6: Internet Infrastructure 2 University of Khartoum.

University of Khartoum OSI Model

• The ISO researched different network schemes and proposed a seven-layer model.

• The OSI model is a reference model for describing how information should be exchanged between points on a

network.

Page 7: Internet Infrastructure 2 University of Khartoum.

University of Khartoum OSI Model

• The OSI model has a number of advantages:

• Enables compatibility between different types of networks.

• Provides like standards for vendors.

• Facilitates an understanding of how data travels within a network.

Page 8: Internet Infrastructure 2 University of Khartoum.

University of Khartoum Layers of OSI model

Page 9: Internet Infrastructure 2 University of Khartoum.

University of Khartoum TCP/IP Protocol Suite

• The TCP/IP protocol suite was developed prior to the OSI model. Therefore, the layers in the TCP/IP protocol suite do not match exactly with those in the OSI model. The original TCP/IP protocol suite was defined as four software layers built upon the hardware. Today, however, TCP/IP is thought of as a five-layer model with the layers named similarly to the ones in the OSI model. Figure 2.7 shows both configurations.

Page 10: Internet Infrastructure 2 University of Khartoum.

University of Khartoum TCP and OSI model

Page 11: Internet Infrastructure 2 University of Khartoum.

University of Khartoum TCP/IP protocol

Page 12: Internet Infrastructure 2 University of Khartoum.

University of Khartoum Addresses in TCP/IP

Page 13: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

Relationship of layers and addresses in TCP/IP

Page 14: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

What is a protocol?

• In diplomatic circles, a protocol is the set of rules governing a conversation between people

• We have seen that the client and server carry on a machine-to-machine conversation

• A network protocol is the set of rules governing a conversation between a client and a server

• There are many protocols, HTTP is just one

Page 15: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

• I would like to open a connection

• GET <file location>

• Display response• Close connection

• OK

• Send page or error message

• OK

Client Server

HTTP is the set of rules governing the format and content of the conversation between a Web client and server

An HTTP conversation

Page 16: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

Hypertext Transport Protocol (HTTP)

• HTTP is based on the request-response communication model:– Client sends a request– Server sends a response

• HTTP is a stateless protocol: – The protocol does not require the server to

remember anything about the client between requests.

Page 17: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP

• Normally implemented over a TCP connection (80 is standard port number for HTTP)

• Typical browser-server interaction:– User enters Web address in browser– Browser uses DNS to locate IP address– Browser opens TCP connection to server– Browser sends HTTP request over connection– Server sends HTTP response to browser over connection– Browser displays body of response in the client area of the

browser window

Page 18: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Request

• Structure of the request:– start line– header field(s)– blank line– optional body

Page 19: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Request

• Structure of the request:– start line– header field(s)– blank line– optional body

Page 20: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Request

• Start line– Example: GET / HTTP/1.1

• Three space-separated parts:– HTTP request method– Request-URI– HTTP version

Page 21: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Request

• Start line– Example: GET / HTTP/1.1

• Three space-separated parts:– HTTP request method– Request-URI– HTTP version• We will cover 1.1, in which version part of start line

must be exactly as shown

Page 22: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Request

• Start line– Example: GET / HTTP/1.1

• Three space-separated parts:– HTTP request method– Request-URI– HTTP version

Page 23: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Request

• Uniform Resource Identifier (URI)– Syntax: scheme : scheme-depend-part• Ex: In http://www.example.com/

the scheme is http

– Request-URI is the portion of the requested URI that follows the host name (which is supplied by the required Host header field)• Ex: / is Request-URI portion of http://www.example.com/

Page 24: Internet Infrastructure 2 University of Khartoum.

University of Khartoum URI

• URI’s are of two types:– Uniform Resource Name (URN)• Can be used to identify resources with unique names,

such as books (which have unique ISBN’s)• Scheme is urn

– Uniform Resource Locator (URL)• Specifies location at which a resource can be found• In addition to http, some other URL schemes are https, ftp, mailto, and file

Page 25: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Request

• Start line– Example: GET / HTTP/1.1

• Three space-separated parts:– HTTP request method– Request-URI– HTTP version

Page 26: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Request

• Common request methods:– GET• Used if link is clicked or address typed in browser• No body in request with GET method

– POST• Used when submit button is clicked on a form• Form information contained in body of request

– HEAD• Requests that only header fields (no body) be returned

in the response

Page 27: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Request

• Structure of the request:– start line– header field(s)– blank line– optional body

Page 28: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Request

• Header field structure:– field name : field value

• Syntax– Field name is not case sensitive– Field value may continue on multiple lines by

starting continuation lines with white space– Field values may contain MIME types, quality

values, and wildcard characters (*’s)

Page 29: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

Multipurpose Internet Mail Extensions (MIME)

• Convention for specifying content type of a message– In HTTP, typically used to specify content type of

the body of the response• MIME content type syntax:– top-level type / subtype

• Examples: text/html, image/jpeg

Page 30: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Response

• Structure of the response:– status line– header field(s)– blank line– optional body

Page 31: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Response

• Structure of the response:– status line– header field(s)– blank line– optional body

Page 32: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Response

• Status line– Example: HTTP/1.1 200 OK

• Three space-separated parts:– HTTP version – status code– reason phrase (intended for human use)

Page 33: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Response

• Status code– Three-digit number– First digit is class of the status code:• 1=Informational• 2=Success• 3=Redirection (alternate URL is supplied)• 4=Client Error• 5=Server Error

– Other two digits provide additional information

Page 34: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Response

• Structure of the response:– status line– header field(s)– blank line– optional body

Page 35: Internet Infrastructure 2 University of Khartoum.

University of Khartoum HTTP Response

• Common header fields:– Connection, Content-Type, Content-Length– Date: date and time at which response was generated

(required)– Location: alternate URI if status is redirection– Last-Modified: date and time the requested resource was

last modified on the server– Expires: date and time after which the client’s copy of the

resource will be out-of-date– ETag: a unique identifier for this version of the requested

resource (changes if resource changes)

Page 36: Internet Infrastructure 2 University of Khartoum.

University of Khartoum Client Caching

• A cache is a local copy of information obtained from some other source

• Most web browsers use cache to store requested resources so that subsequent requests to the same resource will not necessarily require an HTTP request/response– Ex: icon appearing multiple times in a Web page

Page 37: Internet Infrastructure 2 University of Khartoum.

University of Khartoum Client Caching

Browser WebServer

1. HTTP request for image

2. HTTP response containing image

Client Server

Cache

3. Store image

Page 38: Internet Infrastructure 2 University of Khartoum.

University of Khartoum Client Caching

Browser WebServer

Client Server

Cache

I need thatimageagain…

Page 39: Internet Infrastructure 2 University of Khartoum.

University of Khartoum Client Caching

Browser WebServer

Client Server

Cache

I need thatimageagain…

HTTP request for image

HTTP response containing image

This…

Page 40: Internet Infrastructure 2 University of Khartoum.

University of Khartoum Client Caching

Browser WebServer

Client Server

Cache

I need thatimageagain…

Getimage

… or this

Page 41: Internet Infrastructure 2 University of Khartoum.

University of Khartoum Client Caching

• Cache advantages– (Much) faster than HTTP request/response– Less network traffic– Less load on server

• Cache disadvantage– Cached copy of resource may be invalid

(inconsistent with remote version)

Page 42: Internet Infrastructure 2 University of Khartoum.

42

Part 2

Exploring Web 2.0

University of Khartoum

Page 43: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

43

Introduction• Mosaic browser introduced in 1993 web exploded in popularity. • Continued to experience tremendous growth throughout the 1990s—“dot-com

bubble”• Bubble burst in 2001• In 2003, noticeable shift in how people and businesses were using the web and

developing web-based applications– Web = companies use the web as a platform to create collaborative,

community-based sites (e.g., social networking sites, blogs, wikis, etc.)• Growth of Web 2.0 key factors

– Hardware keeps getting cheaper and faster, with memory capacities and speeds increasing at a rapid rate

– Broadband Internet use has exploded– Availability of abundant open source software has resulted in cheaper (and

often free) customizable software options• Makes it easier to start new Web 2.0 companies and greatly decreases the

cost of failure– Unlike Web 1.0, there are many easy-to-employ models available to monetize

Web 2.0 business

Page 44: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

44

What Is Web 2.0?• Web 1.0 focused on a relatively small number of companies and

advertisers producing content = “brochure web” • Web 2.0 involves the user. Web 1.0 is as a lecture and Web 2.0 is a

conversation.• Many Web 2.0 companies are built almost entirely on user-generated

content and harnessing collective intelligence. • Google, MySpace, Flickr, YouTube and Wikipedia, users create the content,

while the sites provide the platforms. • The user is not only contributing content and developing open source

software, but directing how media is delivered, and deciding which news and information outlets you trust.– Social bookmarking sites such as del.icio.us and ma.gnolia – Social media sites such as Digg or Reddit – Social networking, MySpace, Facebook, Bebo, LinkedIn, and Second

Life– Web 2.0 businesses leverage the Long Tail

• Long Tail = economic model in which the market for non-hits could be significant and sometimes even greater than the market for big hits

Page 45: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

45

What Is Web 2.0? (Cont.)• Web development technologies = Ajax, XHTML, Cascading Style Sheets,

JavaScript, the Document Object Model, XML and the XMLHttpRequest object and popular Ajax toolkits—Dojo and Script.aculo.us

• Rich Internet Applications (RIAs)—web applications that offer the responsiveness and rich GUI features of desktop applications

• Key tools for building RIAs = Adobe’s Flex, Microsoft’s Silverlight, ASP.NET Ajax and Sun’s JavaServer Faces

• Other Web development tools and technologies = Adobe’s Dreamweaver, JSON, the web servers IIS and Apache, MySQL, PHP and ASP.NET

• Web services allow you to incorporate functionality from existing applications into your own applications quickly and easily. – Amazon Web Services – Google Maps web services – eBay web services

Page 46: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

46

Search • Search engines are the primary tools people use to find information on the web• Traffic to the major search engines is growing rapidly – Americans conducted 8

billion search queries in June 2007, up 26% from the previous year. • Attention economy = constant flow of information in today’s world causes

attention to continually be diverted– Search engines have gained popularity by helping users quickly find and

filter the information• Google Search• Google is the leading search and online advertising company

– founded by Larry Page and Sergey Brin – Google’s success in search is largely based on its PageRank algorithm and

its unique infrastructure of servers – Google offers specialty search engines for images, news, videos, blogs and

more. – Google web services build Google Maps and other Google services into

your applications – AdWords, Google’s pay-per-click (PPC) contextual advertising program – AdSense is Google’s advertising program for publishers

Page 47: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

47

User-Generated Content• Key to success for many of today’s leading Web 2.0 companies = user-generated content

– articles– home videos – Photos– implicitly generated

• Collective Intelligence– Collaboration can result in smart ideas

• Wikis– Allow users to edit existing content and add new information– Wikipedia– Wikia – Media Wiki open source software – SocialText– Using wikis for project collaboration reduces e-mails and phone calls between

employees, while allowing the ability to closely track a project’s changes• Collaborative Filtering

– Users might submit false or faulty information• Wikipedia people deliberately adding false information to entries • Web 2.0 companies rely on the community to help police their sites• Collaborative filtering lets users promote valuable material and flag offensive or

inappropriate material

Page 48: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

48

Blogging • History of Blogging

– Blogs are websites consisting of entries listed in reverse chronological order– Grown exponentially in recent years because of easy-to-use blogging software

and increasingly economical Internet access– Blogs can also now incorporate media, such as music or videos

• Xanga or LiveJournal• Blog Components

– Reader comments – Trackbacks – Blogroll

• Blogging and Journalism– Encouraged citizen journalism– Significant news resource– Many bloggers are recognized as members of the media

Page 49: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

49

Social Networking• Social networking sites

– Allow users to keep track of their existing interpersonal relationships and form new ones• Network Effects

– Increased value of a network as its number of users grows– Example = eBay—the more buyers and sellers that use the site, the more valuable the site

becomes to its users– Set the user preferences to default to share content so users will automatically contribute to

the value of the network– Network effects make it difficult to break into markets already claimed by successful

companies• Friendster

– Early leader in social networking• MySpace

– Most popular social networking site– Pages are personal and customizable – News Corp, which acquired MySpace in 2005 for $580 million

Page 50: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

50

Social Networking (Cont.)• Facebook

– Hitwise named Facebook the “preferred network among college students– Facebook held an 85% market share of four-year U.S. universities and had over 31 million users

• LinkedIn– Business-oriented social networking site

• stay in touch with professional contacts• network with new contacts• check references• find a job or a potential employee• privacy concerns are more

• Xing– Xing is a professional networking site based out of Germany and populare in Europe

• Second Life– Second Life, developed by Linden Labs, is a 3D virtual world with millions of inhabitants– Users create avatars, digital representations of themselves that they can use to meet other users with similar

interests, conduct business, participate in group activities, take classes and more– Users can create objects and add scripts (to animate the objects) in the virtual world

• Users to maintain rights to whatever they create, a dynamic marketplace has emerged that does millions of dollars in transactions

Page 51: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

51

Social Media• Social media = any media shared online (e.g., videos, music, photos, news, etc• YouTube

– Launched in late 2005 and is the leading Internet video site– Entire site is based on user-generated content– Can browse videos by category, tag, or by following “related video” links– Users can subscribe to other users’ content, share videos with friends by e-mail, or

embed videos directly into their blogs or other websites– YouTube was acquired by Google for $1.65 billion.

• Internet TV– Many mass-media companies now offer full-length episodes of popular television shows– Limited by copyright issues– Internet TV allows advertisers to target their markets more precisely than with broadcast

television• Digg

– Features news, videos and podcasts, all posted and rated by users– Gained popularity by allowing users to “digg” or “bury” posts and user comments– Digg uses collaborative filtering

• Last.fm– Last.fm is an Internet radio website that uses Web 2.0 concepts to make music

recommendations and build communities

Page 52: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

52

Software Development• Perpetual Beta and Agile Development

– Shift away from the traditional software release cycle (i.e., new software releases take months or years)

– Now a greater focus on agile software development, which refers to development of fewer features at a time with more frequent releases• Made possible by using the web as a platform• The Internet is a dynamic medium• Should not “overuse” betas

• Open Source– Not always free, but the source code is available (under license) to developers,

who can customize it to meet their unique needs• Linux operating systems Red Hat or Ubuntu

– Because the source code is available to everyone, users can look to the community for bug fixes and plug-ins

– Over 150,000 open source projects are under development• Examples: Firefox web browser, the Apache web server, the MySQL database

system, DotNetNuke and PHPNuke

Page 53: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

53

Software Development

• Licensing: GNU Licenses and Creative Commons– GNU General Public License (GPL)• Allows redistribution of the project provided the source

code is included and the copyright information is left intact

Others: GNU Lesser General Public License and the GNU Free Documentation License, BSD license and the MIT license

Page 54: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

54

Rich Internet Applications (RIAs)

• Rich Internet Applications (RIAs) – Web applications that offer the responsiveness, “rich” features and

functionality approaching that of desktop applications• Ajax

– Asynchronous JavaScript and XML– Allows partial page – Creates a more responsive GUI, allowing users to continue interacting with the

page as the server processes requests– Technologies that make up Ajax—XHTML, CSS, JavaScript, the DOM, XML, and

the XMLHttpRequest object• Dojo

– Dojo is an open source JavaScript • Flex

– RIA framework that allows you to build scalable, cross-platform, multimedia-rich applications that can be delivered over the Internet

Page 55: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

55

Rich Internet Applications (RIAs) (Cont.)• Silverlight

– Microsoft app formerly known as Windows Presentation Foundation Everywhere (WPF/E)

– Competitor to Flex and Flash– Uses a compact version of the .NET framework– User interfaces built in Extensible Application Markup Language (XAML)—Microsoft’s

XML-based format for describing user interfaces• JavaFX

– Sun Microsystems’ counterpart to Flex and Silverlight– Consists of the JavaFX Script and JavaFX Mobile (for mobile devices

• Ruby on Rails– Open source framework based on the Ruby scripting language that allows you to

build database-intensive applications quickly, easily, and with less code

• Script.aculo.us– Library for creating “eye candy” effects– Built on the Prototype JavaScript framework– Encapsulates the DOM and provides cross-browser processing capabilities– Core effects include opacity, scale, morph, move, highlight and parallel

• JavaServer Faces– Java-based web application framework– Separates design elements from business logic and provides a set of user-interface

components (JSF components) that make developing RIAs simple

Page 56: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

56

Location-Based Services• Location-Based Services (LBS)

– Applications that take your geographic location (city, state, location of your mobile device, etc.) into consideration

– Global Positioning System (GPS)– Local search

• Global Positioning System (GPS)– Uses numerous satellites that send signals to a GPS receiver to determine its exact

location. • Mapping Services

– Google Maps is one of the most popular mapping applications available online. – Google Earth provides satellite images of virtually any location on the planet– MapQuest provides similar mapping services– Additional mapping services include Yahoo! Local Maps and MSN Live Search– Companies such as NAVTEQ and Tele Atlas provide digital map data for in-vehicle and

portable navigation devices, websites, location-based services and more• GeoRSS and Geotagging

– Set of standards for representing geographical information in an RSS feed (GeoRSS)– Geotagging can be used to add location information (longitude, latitude, etc.) to

websites, images, RSS feeds, videos and more

Page 57: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

57

XML, RSS, Atom, JSON and VoIP

• XML– Extensible Markup Language that is a markup language that allows you to label data

based on its meaning– Describes data in a way that is meaningful to both humans and computers– Document Type Definition (DTD) or a schema, which defines the structure for the

document– XML Vocabularies

• XHTML for web content• CML for chemistry• MathML for mathematical content and formulas• XBRL for financial data

• RSS and Atom– Sites that offer RSS and Atom feeds can maintain an “open connection” with their

readers– Most major web browsers support RSS and Atom feeds

• JSON– JavaScript Object Notation (JSON) – Text-based data interchange format used to represent JavaScript objects as strings and

transmit them over a network– Commonly used in Ajax applications

• VoIP– Voice over Internet Protocol (VoIP) is the technology used to make free or inexpensive

phone calls over the Internet.

Page 58: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

58

Web 2.0 Business Models

• Technologies and collaborative nature of Web 2.0 have opened up new business models

Page 59: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

59

Future of the Web• Computers have a hard time deciphering meaning from XHTML content• Web today involves users’ interpretations of what pages and images mean, but the

future entails a shift from XHTML to a more sophisticated system based on XML, enabling computers to better understand meaning.

• Web 2.0 companies use “data mining” to extract as much meaning as they can from XHTML-encoded pages

• Tagging and Folksonomies– Early hints a “web of meaning.” – “loose” classification system

• Semantic Web– Next generation in web development, – “web of meaning”– Depends heavily on XML and XML-based technologies

• Microformats– Standard formats for representing information aggregates that can be understood by

computers, enabling better search results and new types of applications

Page 60: Internet Infrastructure 2 University of Khartoum.

University of Khartoum

60

Future of the Web (Cont.)

• Resource Description Framework (RDF)– Based on XML – Used to describe content in a way that is understood

by computers– Connects isolated databases across the web with

consistent semantics• Ontologies– Ways of organizing and describing related items, and

are used to represent semantics. – Another way of cataloging the Internet