+ All Categories
Home > Documents > EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based...

EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based...

Date post: 11-Jan-2016
Category:
Upload: jeremy-adams
View: 217 times
Download: 1 times
Share this document with a friend
39
EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions by class members, October 2010
Transcript
Page 1: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

EEC4113Data Communication &

Multimedia SystemChapter 12: Application Layer – Text-Based

Multimedia

by Muhazam Mustapha, December 2011and contributions by class members, October 2010

Page 2: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Learning Outcome

• At the end of this chapter, the students are expected to have the knowledge about– Type Declaration: File Formats, Headers,

MIME– Text Data Transfer: Web Services, RSS Feed– Web 2.0

Page 3: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Chapter Content

• Type Declaration

• Text Transfer

• Web 2.0

Page 4: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Type Declaration

CO1

Page 5: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Text-Based Multimedia

• Multimedia consists of huge files of images, video and audio

• However, there are tricks that enable multimedia to be shared as text

• The scheme involves transferring of links and type declarations

CO1

Page 6: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Type Declaration

• Files or data transfers that involves binary data need some way to inform the reader about its content

• The scheme is called file formatting, which involves 2 parts:– Header Information– Actual Data

CO1

Page 7: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Header Information

• Also called metadata

• The content of header explains the data that follows it

• For example, a JPEG image file may include in its header about:– No. bits per pixel, or per color– Image horizontal and vertical dimension– Compression quality level

CO1

Page 8: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Header Information

• Data communication also involves header information

• In protocols definition we often find metadata proceeding the actual data

• For example, in an HTTP transfer header, we can include:– The type of data being transferred– The size of the data being transferred– The last modification date of the data, etc

CO1

Page 9: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

RIFF Type

• Resource Interchange File Format

• Created by Microsoft and IBM for standardizing file format definition

• It starts with a text tag at the beginning

• Then it follows by pairs of metadata and its size in bytes

• Example of file types defined using RIFF: .WAV, .AVI, .CDR, etc

CO1

Page 10: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

RIFF Type

•Example of header definition in WAV file:

Byte Location Size Content0 4 ChunkID: ‘RIFF’4 4 ChunkSize8 4 FormatID: ‘WAVE’12 4 Subchunk1ID: ‘fmt’

16 4 Subchunk1Size: 16 for PCM format. . .. . .

CO1

Page 11: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

MIME Type

• Multi-purpose Internet Mail Extensions

• It is type declaration of data, earlier meant for email attachment, but now has been used for web transfer as well

• It consists of pairs of file extension and its description – some examples:– .au audio/basic– .html text/html– .jpg image/jpeg

CO1

Page 12: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Text-Based Transfer

CO1

Page 13: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Text Transfer

• Text transfer over the internet nowadays usually involves the standardized process called web service

• In its simplest form, web service is any kind of information can be obtained by referring to a URL

• Normally web service refers to a text information (not web site layout) obtained from a URL

• Two web service standards: SOAP, REST

CO1

Page 14: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

SOAP

• Simple Object Access Protocol• Also called RPC – Remote Procedure Call• It is an XML formatted data used to

transfer information in web service on HTTP protocol

• The standard definition is huge and extensive involving:– Process model– Extensibility Model– Protocol Binding– Message Construct

CO1

Page 15: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

SOAP

• It consists of an envelope (surrounding XML) and the data content

• Even though it is extensive and hard to learn, use of SOAP is easy and transparent due to large support by programming platforms like .NET, Zend (PHP), J2EE (Java), etc

CO1

Page 16: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

SOAP

•Example:POST /InStock HTTP/1.1Host: www.example.orgContent-Type: application/soap+xml; charset=utf-8Content-Length: nnn <?xml version="1.0"?><soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"> <soap:Header> </soap:Header> <soap:Body> <m:GetStockPrice xmlns:m="http://www.example.org/stock"> <m:StockName>IBM</m:StockName> </m:GetStockPrice> </soap:Body></soap:Envelope>

CO1

Page 17: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

REST

• REpresentational State Transfer• SOAP’s simpler but competing standard

for web service and RPC provider• A web service conforming to REST

standard is called RESTful• Its calls resemble normal web address

linking• More popular in open source community• Examples of RESTful providers:

Amazon.com, Yahoo!, YouTube, eBay, Facebook, etc

CO1

Page 18: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

REST

•Examples of RESTful calls:(from URI of http://www.thomas-bayer.com/sqlrest/)

<resource>

<CUSTOMERList xlink:href="http://www.thomas-bayer.com/sqlrest/CUSTOMER/">CUSTOMER</CUSTOMERList>

<INVOICEList xlink:href="http://www.thomas-bayer.com/sqlrest/INVOICE/">INVOICE</INVOICEList>

<ITEMList xlink:href="http://www.thomas-bayer.com/sqlrest/ITEM/">ITEM</ITEMList>

<PRODUCTList xlink:href="http://www.thomas-bayer.com/sqlrest/PRODUCT/">PRODUCT</PRODUCTList>

</resource>CO1

Page 19: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Cloud Computing

• Cloud computing is the delivery of computing as a service rather than a product, over a network

• Cloud computing can also be viewed as an extensive use of web services provided by the vendors

• It makes computer infrastructure and services available "on-need" basis

CO1

Page 20: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Cloud Computing

• The infrastructure could be:– hard disk (e.g.: www.mediafire.com - free)– complete software applications

(e.g.: www.picnik.com - free)– development platform (e.g.: Microsoft Azure)– Database (e.g.: IBM)

• With cloud computing, software can be enjoyed without installation and also reduce piracy

CO1

Page 21: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Cloud Computing - Categories

• Software as a service (SaaS)– Software can be used from the browser

without installation– Example: www.picnik.com

• Provide

– Example: Google Docs• Offers office application like MS Office

CO1

Page 22: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Cloud Computing - Categories

• Platform as a service (PaaS)– Deliver a remotely accessible computing

platform– Example: Microsoft Azure

• Provides a remote programming environment for .NET

– Example: Google Apps• Provides a remote programming environment

Python and Java

CO1

Page 23: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Cloud Computing - Categories

• Infrastructure as a service (IaaS)– Deliver a remotely accessible computing

resources– Example: www.mediafire.com

• Provides remote hard disks

– Example: Microsoft’s SQL Azure• Provides database infrastructure

CO1

Page 24: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Cloud Client

• Software and/or hardware that rely heavily on cloud computing services

• Examples:– Android OS: relies heavily on cloud services

provided by Google– Cloud PCs : most software and storage are on

the cloud– Google Map Based GPS: some GPS models

rely heavily on real-time data streaming from Google Maps

CO1

Page 25: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Text-Based Multimedia in Practice (RSS Feed)

CO1

Page 26: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

RSS Feed

• RSS: Really Simple Syndication or Rich Site Summary

• It is called syndication because one web site helps to promote the content of other web sites

RSS Feed Slides contributed by: MUHAMMAD DZULFAHMI BIN MOHD DZULKIFRI, MUHAMMAD FAUZAN BIN A RAHIM

CO1

Page 27: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

RSS Feed

• Has been around for more than a decade• Only recently the standard has been

embraced by bloggers, webmasters and large news portals as a means of distributing information, in a standardized format

• Defined standard for syndicating headlines and other content

• Constructed using XML or extensible Markup Language, which is a markup language similar to HTML

CO1

Page 28: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

RSS Feed

Common uses:– Blogs – summaries of daily blog posts– Newsletters – synopses of newsletters

alerting users that a new newsletter is available

– Weather Alerts – notification of severe weather

– Press Announcements – new product announcements

– Specials or Discounts – weekly deals or discount offers for customers

– Calendars – listings of upcoming events, deadlines or holidaysCO1

Page 29: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

RSS Feed

Common industry uses:– Service Industry – notification of viruses or

security alerts– Real Estate – listings of open houses or new

homes on the market– Schools – homework listings– Restaurants – lunch or dinner specials– Law Enforcement – announce sexual

predators in area

CO1

Page 30: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

RSS Feed

Subscription:– RSS Feed can be obtained from the website

that provides them– The provider will have the specific instruction

to get the script to be inserted into the web pages by the web master of the website that subscribes from them

– Example of RSS Feed script provided by Google (GModules):

• <script src="http://gmodules.com/ig/ifr?url=http://feeds.labnol.org/labnol&amp;synd=open&amp;w=320&amp;h=200&amp;title=&amp;border=%23ffffff%7C3px%2C1px+solid+%23999999&amp;output=js"></script>CO1

Page 31: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

RSS FeedScreen shot:

RSS Feed sponsored link

CO1

Page 32: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Web 2.0

CO1

Page 33: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Web 2.0

• Presumed the next generation of web content

• Web 2.0 are webs having the following features:– Visitors can actively contribute to content– Extensive use of web services and API– Extensive use of templates– Extensive use of authoring tools online– Dynamic content by web programs

CO1

Page 34: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Web 2.0

• Examples of Web 2.0 are:– Facebook– YouTube– Twitter– Blogs– Wikis

• One particularly impressive work done by Google to integrate almost all Web 2.0 features into one application is Google Wave

CO1

Page 35: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Google Wave• Google Wave is an online software

application product from Google• Google Wave is designed as a new

Internet communications platform• hosted XML documents that allow

seamless and low latency concurrent modifications

• It was first announced at the Google I/O conference on May 27, 2009.

• On May 19, 2010, Google Wave was released to the general public.

Google Wave Slides contributed by: MOHD RAHIMI BIN ABDULLAH, MUHAMMED NAFEESH BIN ABDUL RAHMAN CO1

Page 36: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Google Wave

• Snapshot

CO1

Page 37: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Google Wave

• Google Wave API– Extensions: Build robot extensions to

automate common tasks or build gadget extensions to provide a new way for users to interact

– Embed: Make your site more collaborative by dropping in a wave

CO1

Page 38: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Google Wave

• Extensions:– Gadgets: A gadget is an application users

can participate with, many of which are built on Google’s OpenSocial platform. A good comparison would be iGoogle gadgets or Facebook applications

– Robots: Robots are automated participants within a wave. They can talk with users and interact with waves. They can provide information from outside sources (i.e. Twitter, stock quotes, etc.).

– The latest version of robots API is 2.0

CO1

Page 39: EEC4113 Data Communication & Multimedia System Chapter 12: Application Layer – Text-Based Multimedia by Muhazam Mustapha, December 2011 and contributions.

Google Wave

• Protocol– Google Wave provides federation using an

extension of XMPP, the open Wave Federation Protocol

– Being an open protocol, anyone can use it to build a custom Wave system and become a wave provider

• The halt– Due to bad reviews and technical issues,

Google scrapped its Wave in August 2010 after 3 months of release

CO1


Recommended