CSE 30264 Computer Networks Prof. Aaron Striegel Department of Computer Science & Engineering University of Notre Dame Lecture 22 – April 1, 2010.

Slides:



Advertisements
Similar presentations
T.Sharon-A.Frank 1 Multimedia Compression Basics.
Advertisements

15 Data Compression Foundations of Computer Science ã Cengage Learning.
Data Compression CS 147 Minh Nguyen.
Chapter 7 End-to-End Data Ohanes Dadian, Danny Luong, Yu Lu.
Spring 2002CS 4611 Remote Procedure Call Outline Protocol Stack Presentation Formatting.
Spring Remote Procedure Call (5.3) Outline Protocol Stack Presentation Formatting.
CSE Computer Networks Prof. Aaron Striegel Department of Computer Science & Engineering University of Notre Dame Lecture 20 – March 25, 2010.
1 Remote Procedure Call Outline Protocol Stack Presentation Formatting.
Chapter 7 End-to-End Data
School of Computing Science Simon Fraser University
Spring 2003CS 4611 Multimedia Outline Compression RTP Scheduling.
Computer Organization Computer Architecture, Data Representation, Information Theory i206 Fall 2010 John Chuang Some slides adapted from Marti Hearst,
Computer Science 335 Data Compression.
End-to-End Data Outline Presentation Formatting Data Compression.
CMPT 365 Multimedia Systems
CS430 © 2006 Ray S. Babcock Lossy Compression Examples JPEG MPEG JPEG MPEG.
Lossless Compression in Multimedia Data Representation Hao Jiang Computer Science Department Sept. 20, 2007.
Why Compress? To reduce the volume of data to be transmitted (text, fax, images) To reduce the bandwidth required for transmission and to reduce storage.
©Brooks/Cole, 2003 Chapter 15 Data Compression. ©Brooks/Cole, 2003 Realize the need for data compression. Differentiate between lossless and lossy compression.
Image and Video Compression
Image Compression - JPEG. Video Compression MPEG –Audio compression Lossy / perceptually lossless / lossless 3 layers Models based on speech generation.
Introduction to JPEG Alireza Shafaei ( ) Fall 2005.
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 8 – JPEG Compression (Part 3) Klara Nahrstedt Spring 2012.
JPEG Motivations: Motivations: 1.Uncompressed video and audio data are huge. In HDTV, the bit rate easily exceeds 1 Gbps. --> big problems for.
ECE472/572 - Lecture 12 Image Compression – Lossy Compression Techniques 11/10/11.
1 Image Compression. 2 GIF: Graphics Interchange Format Basic mode Dynamic mode A LZW method.
1 Computer Networks: A Systems Approach, 5e Larry L. Peterson and Bruce S. Davie Chapter 7 End-to-End Data Copyright © 2010, Elsevier Inc. All rights Reserved.
MPEG: (Moving Pictures Expert Group) A Video Compression Standard for Multimedia Applications Seo Yeong Geon Dept. of Computer Science in GNU.
MULTIMEDIA TECHNOLOGY SMM 3001 DATA COMPRESSION. In this chapter The basic principles for compressing data The basic principles for compressing data Data.
Computers and Scientific Thinking David Reed, Creighton University Data Representation 1.
1 Computer Networks: A Systems Approach, 5e Larry L. Peterson and Bruce S. Davie Chapter 7 End-to-End Data Copyright © 2010, Elsevier Inc. All rights Reserved.
11 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
Klara Nahrstedt Spring 2011
D ATA C OMMUNICATIONS Compression Techniques. D ATA C OMPRESSION Whether data, fax, video, audio, etc., compression can work wonders Compression can be.
1 i206: Lecture 2: Computer Architecture, Binary Encodings, and Data Representation Marti Hearst Spring 2012.
CIS679: Multimedia Basics r Multimedia data type r Basic compression techniques.
Chapter 7 – End-to-End Data Two main topics Presentation formatting Compression We will go over the main issues in presentation formatting, but not much.
22-Oct-15CPSC558: Advanced Computer Networks Chapter 7 End-to-End Data –Data Manipulating Functions (Affecting Throughputs) How to encode the message into.
Image Compression Supervised By: Mr.Nael Alian Student: Anwaar Ahmed Abu-AlQomboz ID: IT College “Multimedia”
1 Classification of Compression Methods. 2 Data Compression  A means of reducing the size of blocks of data by removing  Unused material: e.g.) silence.
Addressing Image Compression Techniques on current Internet Technologies By: Eduardo J. Moreira & Onyeka Ezenwoye CIS-6931 Term Paper.
Spring 2006CS 3321 Remote Procedure Call Outline Protocol Stack Presentation Formatting.
Spring 2001CS Multimedia, QoS Multimedia (7.2, 9.3) Compression RTP Realtime Applications Integrated Services Differentiated Services Quality.
Spring 2000CS 4611 Multimedia Outline Compression RTP Scheduling.
 Last Class  Finish Chapter 6  This Class  Chapter 7.
Introduction to Computer Networks
Marwan Al-Namari 1 Digital Representations. Bits and Bytes Devices can only be in one of two states 0 or 1, yes or no, on or off, … Bit: a unit of data.
CS654: Digital Image Analysis Lecture 34: Different Coding Techniques.
COMP135/COMP535 Digital Multimedia, 2nd edition Nigel Chapman & Jenny Chapman Chapter 2 Lecture 2 – Digital Representations.
1 Multimedia Outline Compression RTP Scheduling. 2 Compression Overview Encoding and Compression –Huffman codes Lossless –data received = data sent –used.
Spring 2000CS 4611 Remote Procedure Call Outline Protocol Stack Presentation Formatting.
1 COM Chapter 7 End-To-End Data 3 What Do We Do With The Data? From the network’s perspective, applications send messages to one another and these.
IS502:M ULTIMEDIA D ESIGN FOR I NFORMATION S YSTEM M ULTIMEDIA OF D ATA C OMPRESSION Presenter Name: Mahmood A.Moneim Supervised By: Prof. Hesham A.Hefny.
Submitted To-: Submitted By-: Mrs.Sushma Rani (HOD) Aashish Kr. Goyal (IT-7th) Deepak Soni (IT-8 th )
Computer Science: An Overview Eleventh Edition
JPEG Compression What is JPEG? Motivation
Data Compression.
Multimedia Outline Compression RTP Scheduling Spring 2000 CS 461.
Data Compression.
Chapter 7.2: Layer 5: Compression
Data Compression CS 147 Minh Nguyen.
7. End-to-end data Rocky K. C. Chang Department of Computing
UNIT IV.
The University of Adelaide, School of Computer Science
University of Houston Remote Procedure Call Datacom II Lecture 6
The University of Adelaide, School of Computer Science
15 Data Compression Foundations of Computer Science ã Cengage Learning.
Chapter 8 – Compression Aims: Outline the objectives of compression.
15 Data Compression Foundations of Computer Science ã Cengage Learning.
Presentation transcript:

CSE Computer Networks Prof. Aaron Striegel Department of Computer Science & Engineering University of Notre Dame Lecture 22 – April 1, 2010

Today’s Lecture End-to-End Application Issues Coding –Pthreads / etc. Spring 2010CSE Physical Data Network Transport Application

Moment of Zen Spring 2010CSE

Spring 2009CSE End-to-End Data Outline Formatting Compression

Spring 2009CSE Presentation Formatting Marshalling (encoding) application data into messages Unmarshalling (decoding) messages into application data Application data Presentation encoding Application data Presentation decoding Message ■ ■ ■■ ■ ■

Spring 2009CSE Difficulties Representation of base types –floating point: IEEE 754 versus non-standard –integer: big-endian versus little-endian (e.g., 34,677,374) Compiler layout of structures

Spring 2009CSE Taxonomy Data types –base types (e.g., ints, floats); must convert –flat types (e.g., structures, arrays); must pack –complex types (e.g., pointers); must linearize Conversion Strategy –canonical intermediate form –receiver-makes-right (an N x N solution)

Spring 2009CSE Taxonomy (cont) Tagged versus untagged data Stubs –compiled –interpreted

Spring 2009CSE eXternal Data Representation (XDR) Defined by Sun for use with SunRPC C type system (without function pointers) Canonical intermediate form Untagged (except array length) Compiled stubs

Spring 2009CSE #define MAXNAME 256; #define MAXLIST 100; struct item { int count; char name[MAXNAME]; int list[MAXLIST]; }; bool_t xdr_item(XDR *xdrs, struct item *ptr) { return(xdr_int(xdrs, &ptr->count) && xdr_string(xdrs, &ptr->name, MAXNAME) && xdr_array(xdrs, &ptr->list, &ptr->count, MAXLIST, sizeof(int), xdr_int)); }

Spring 2009CSE Abstract Syntax Notation One (ASN.1) An ISO standard Essentially the C type system Canonical intermediate form Tagged Compiled or interpreted stubs BER: Basic Encoding Rules (tag, length, value)

Spring 2009CSE Network Data Representation (NDR) Defined by DCE Essentially the C type system Receiver-makes-right (architecture tag) Individual data items untagged Compiled stubs from IDL 4-byte architecture tag –IntegerRep 0 = big-endian 1 = little-endian –CharRep 0 = ASCII 1 = EBCDIC –FloatRep 0 = IEEE = VAX 2 = Cray 3 = IBM

Spring 2009CSE Markup Languages HyperText Markup Language (HTML) Extensible Markup Language (XML) Spongebob Squarepants Frycook May 1999

Spring 2009CSE XML Schema <xs:schema xmlns= targetNamespace= xmlns= elementFormDefault=“qualified”> …

Spring 2009CSE Compression Overview Encoding and Compression –Huffman codes Lossless –data received = data sent –used for executables, text files, numeric data Lossy –data received does not match data sent –used for images, video, audio

Spring 2009CSE Lossless Algorithms Run Length Encoding (RLE) –example: AAABBCDDDD encoding as 3A2B1C4D –good for scanned text (8-to-1 compression ratio) –can increase size for data with variation (e.g., some images) Differential Pulse Code Modulation (DPCM) –example AAABBCDDDD encoding as A –change reference symbol if delta becomes too large –works better than RLE for many digital images (1.5-to-1)

Spring 2009CSE Dictionary-Based Methods Build dictionary of common terms –variable length strings Transmit index into dictionary for each term Lempel-Ziv (LZ) is the best-known example Commonly achieve 2-to-1 ratio on text Variation of LZ used to compress GIF images –first reduce 24-bit color to 8-bit color –treat common sequence of pixels as terms in dictionary –can achieve 10-to-1 compression (less common)

Spring 2009CSE Image Compression JPEG: Joint Photographic Expert Group (ISO/ITU) Lossy still-image compression Three phase process –process in 8x8 block chunks (macro-block) –DCT: transforms signal from spatial domain into and equivalent signal in the frequency domain (loss-less) –apply a quantization to the results (lossy) –RLE-like encoding (loss-less)

Spring 2009CSE Quantization and Encoding Quantization Table Encoding Pattern

Spring 2009CSE MPEG Motion Picture Expert Group Lossy compression of video First approximation: JPEG on each frame Also remove inter-frame redundancy

Spring 2009CSE MPEG (cont) Frame types –I frames: intrapicture –P frames: predicted picture –B frames: bidirectional predicted picture Example sequence transmitted as I P B B I B B

Spring 2009CSE MPEG (cont) B and P frames –coordinate for the macroblock in the frame –motion vector relative to previous reference frame (B, P) –motion vector relative to subsequent reference frame (B) –delta for each pixel in the macro block Effectiveness –typically 90-to-1 –as high as 150-to-1 –30-to-1 for I frames –P and B frames get another 3 to 5 x

Spring 2009CSE MP3 CD Quality –44.1 kHz sampling rate –2 x 44.1 x 1000 x 16 = 1.41 Mbps –49/16 x 1.41 Mbps = 4.32 Mbps Strategy –split into some number of frequency bands –divide each subband into a sequence of blocks –encode each block using DCT + Quantization + Huffman –trick: how many bits assigned to each subband

Coding Form into small groups –Twist: Must sit by people who you did not work with on the project Spring 2010CSE Build a simple UDP chat server

Write Threaded Code UDP Server –Step 1 Listen on port X (pass in via parameter) Read message / display on screen Spring 2010CSE

Write Threaded Code UDP Server –Step 1 Listen on port X (pass in via parameter) Read message / display on screen –Step 2 Keep track of incoming IP / ports Design –Local vs. global –struct vs. class Spring 2010CSE

Write Main Function main function –Step 1 Start up the thread Loop until input is QUIT! –Step 2 Send the typed text to all known other clients –Step 3 Allow adding of IP via syntax –ADDCLIENT –Step 4 Dump current client list via DUMPSTATUS Spring 2010CSE