EEC-484/584 Computer Networks

Similar documents
EEC-682/782 Computer Networks I

Chapter 7 (Week 14) The Application Layer (CONTINUATION ANDREW S. TANENBAUM COMPUTER NETWORKS FOURTH EDITION PP

Introduction to LAN/WAN. Application Layer 4

Chapter 7. The Application Layer. DNS The Domain Name System. DNS Resource Records. The DNS Name Space Resource Records Name Servers

ITEC310 Computer Networks II

Networking Applications

Audio and video compression

Ch 4: Multimedia. Fig.4.1 Internet Audio/Video

Perceptual coding. A psychoacoustic model is used to identify those signals that are influenced by both these effects.

Application Layer Chapter 7

Both LPC and CELP are used primarily for telephony applications and hence the compression of a speech signal.

What is multimedia? Multimedia. Continuous media. Most common media types. Continuous media processing. Interactivity. What is multimedia?

Digital video coding systems MPEG-1/2 Video

Multimedia. What is multimedia? Media types. Interchange formats. + Text +Graphics +Audio +Image +Video. Petri Vuorimaa 1

DigiPoints Volume 1. Student Workbook. Module 8 Digital Compression

Audio Compression. Audio Compression. Absolute Threshold. CD quality audio:

15 Data Compression 2014/9/21. Objectives After studying this chapter, the student should be able to: 15-1 LOSSLESS COMPRESSION

Transporting audio-video. over the Internet

Lossy compression. CSCI 470: Web Science Keith Vertanen

Compression; Error detection & correction

Compression; Error detection & correction

Principles of Audio Coding

Chapter 28. Multimedia

Mpeg 1 layer 3 (mp3) general overview

The Gullibility of Human Senses

Data Communication Prof.A. Pal Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture 36 Multimedia Networks

2.4 Audio Compression

Chapter 9. Multimedia Networking. Computer Networking: A Top Down Approach

Streaming (Multi)media

Chapter 7 Multimedia Networking

CISC 7610 Lecture 3 Multimedia data and data formats

ITNP80: Multimedia! Sound-II!

Compression Part 2 Lossy Image Compression (JPEG) Norm Zeck

Audio-coding standards

Data Representation. Reminders. Sound What is sound? Interpreting bits to give them meaning. Part 4: Media - Sound, Video, Compression

Chapter 7 Multimedia Operating Systems

EDA095 Audio and Video Streaming

Fundamentals of Perceptual Audio Encoding. Craig Lewiston HST.723 Lab II 3/23/06

Perceptual Coding. Lossless vs. lossy compression Perceptual models Selecting info to eliminate Quantization and entropy encoding

Lossy compression CSCI 470: Web Science Keith Vertanen Copyright 2013

Optical Storage Technology. MPEG Data Compression

CSCD 443/533 Advanced Networks Fall 2017

Mohammad Hossein Manshaei 1393

CS519: Computer Networks. Lecture 9: May 03, 2004 Media over Internet

Audio-coding standards

AUDIOVISUAL COMMUNICATION

Mohammad Hossein Manshaei 1393

Image and video processing

Video Compression An Introduction

Video coding. Concepts and notations.

Tech Note - 05 Surveillance Systems that Work! Calculating Recorded Volume Disk Space

4 rd class Department of Network College of IT- University of Babylon

ABSTRACT. that it avoids the tolls charged by ordinary telephone service

VALLIAMMAI ENGINEERING COLLEGE

Computer and Machine Vision

Image, video and audio coding concepts. Roadmap. Rationale. Stefan Alfredsson. (based on material by Johan Garcia)

Audio Fundamentals, Compression Techniques & Standards. Hamid R. Rabiee Mostafa Salehi, Fatemeh Dabiran, Hoda Ayatollahi Spring 2011

Chapter 14 MPEG Audio Compression

Introduction to Computer Science (I1100) Data Storage

Robert Matthew Buckley. Nova Southeastern University. Dr. Laszlo. MCIS625 On Line. Module 2 Graphics File Format Essay

ECE 417 Guest Lecture Video Compression in MPEG-1/2/4. Min-Hsuan Tsai Apr 02, 2013

Multimedia Applications. Internet Technologies and Applications

Multimedia Applications. Classification of Applications. Transport and Network Layer

Multimedia networks. Additional references. Jargon. Analog to Digital (S5 4.3) KR: Kurose and Ross chapter 7 (KR3: 3 rd ed)

Multimedia Networking

Lecture 16 Perceptual Audio Coding

5: Music Compression. Music Coding. Mark Handley

Introducing Audio Signal Processing & Audio Coding. Dr Michael Mason Senior Manager, CE Technology Dolby Australia Pty Ltd

Application Layer Chapter 7

Overview of the Session Initiation Protocol

Fundamentals of Video Compression. Video Compression

Lecture 8 JPEG Compression (Part 3)

EE 122: Network Applications

AUDIOVISUAL COMMUNICATION

Evolving Telecommunications to Triple Play:

Interframe coding A video scene captured as a sequence of frames can be efficiently coded by estimating and compensating for motion between frames pri

Digital Asset Management 5. Streaming multimedia

EDA095 Audio and Video Streaming

Streaming Technologies Glossary

Course Syllabus. Website Multimedia Systems, Overview

VIDEO AND IMAGE PROCESSING USING DSP AND PFGA. Chapter 3: Video Processing

MISB EG Motion Imagery Standards Board Engineering Guideline. 24 April Delivery of Low Bandwidth Motion Imagery. 1 Scope.

Lecture 14: Multimedia Communications

Digital Video Processing

Internet Video Delivery. Professor Hui Zhang

CSC 4900 Computer Networks: Multimedia Applications

Provide a generic transport capabilities for real-time multimedia applications Supports both conversational and streaming applications

Wireless Communication

INTRODUCTORY COMPUTER NETWORKS PHYSICAL LAYER, DIGITAL TRANSMISSION FUNDAMENTALS. Faramarz Hendessi

Lecture 9 and 10. Source coding for packet networks

Synopsis of Basic VoIP Concepts

Lecture 3 Image and Video (MPEG) Coding

Data Communication & Computer Networks MCQ S

ET4254 Communications and Networking 1

Transporting Voice by Using IP

Multimedia Communications. Audio coding

Outline. QoS routing in ad-hoc networks. Real-time traffic support. Classification of QoS approaches. QoS design choices

VoIP Basics. 2005, NETSETRA Corporation Ltd. All rights reserved.

EDA095 Audio and Video Streaming

13. Internet Applications 최양희서울대학교컴퓨터공학부

Transcription:

EEC-484/584 Computer Networks Lecture 21 wenbing@ieee.org (Lecture nodes are based on materials supplied by Dr. Louise Moser at UCSB and Prentice-Hall) Outline 2 Review of last lecture WWW Today s topics Multimedia 1

The World Wide Web 3 Architectural Overview Static Web Documents Dynamic Web Documents HTTP The HyperText Transfer Protocol Performance Enhancements The Wireless Web (not required) Architectural Overview 4 WWW consists of a vast collection of documents or Web pages Each page may contain links to other pages. Users can follow a link by clicking on it, which then takes them to the page pointed to The idea of having one page point to another is called hypertext Invented by Vannevar Bush, a MIT EE professor, in 1945 Browser program used to view Web pages Hyperlinks strings of text that are links to other pages 2

URLs Uniform Resource Locaters 5 URL Uniform Resource Locator URL encodes three types of information What is the page called local name uniquely indicating the specific page Where is the page located DNS name of the server on which the page is located How can the page be accessed protocol, e.g., http, ftp Statelessness and Cookies 6 HTTP is basically stateless Sometimes, it is necessary to have stateful Web client/server communications Cookies: name derives from ancient programmer slang in which a program calls a procedure and gets something back that it may need to present later to get some work done Some examples of cookies 3

HTML HyperText Markup Language 7 (b) XML and XSL 8 Drawback of HTML Mixes content with formatting Does not provide structure to Web pages XML: extensible Markup Language Describes Web content in a structured way XSL: extensible Style Language Describes the formatting independently of the content 4

A Simple Web Page in XML 9 A Style Sheet in XSL 10 5

Dynamic Web Documents 11 Server-side dynamic Web page generation CGI Common Gateway Interface Standard interface to allow Web servers to talk to backend programs and scripts that can accept input and generate HTML pages in response PHP PHP: Hypertext Preprocessor PHP scripts embeded inside HTML pages and have them be executed by the server itself to generate response page JSP - Java Server Pages ASP Active Server Pages Server-Side Dynamic Web Page Generation 12 Steps in processing the information from an HTML form 6

Server-Side Dynamic Web Page Generation A Web page containing a form A PHP script for handling the output of the form Output from the PHP script when the inputs are "Barbara" and 24 respectively Client-Side Dynamic Web Page Generation Use of JavaScript for processing a form. 7

Client-Side Dynamic Web Page Generation 15 Server-side scripting with PHP Client-side scripting with JavaScript Client-Side Dynamic Web Page Generation 16 The various ways to generate and display content 8

HyperText Transfer Protocol 17 HTTP HyperText Transfer Protocol It specifies what messages clients may send to servers and what responses they get back in return Each interaction consists of one ASCII request, followed by one RFC 822 MIME-like response Defined in RFC 2616 HTTP Connection In HTTP 1.0: make connection, sends a request, gets a response, tears down connection In HTTP 2.0: connection can be reused Methods: had some provision for object-oriented programming Message header HTTP Methods 18 The built-in HTTP request methods Method names are case sensitive! 9

HTTP Methods 19 The status code response groups HTTP Message Headers Redirection 10

Example HTTP Usage >telnet www.ietf.org 80 >log >GET /rfc.html HTTP/1.1 >Host: www.ietf.org > >close Content of the log file Performance Enhancement 22 Caching Save pages that have been requested in case they are used again Client-side technique Server replication Replicate server s contents at multiple locations Sometimes called mirroring Content delivery networks Deliver contents for their providers to end users efficiently for a fee Whole process starts with URL replacement so all contents point to a CDN server On receiving client s request, the request is redirected to the closest proxy server 11

Caching 23 Hierarchical caching with three proxies Content Delivery Networks Original Web page Same page after transformation 12

Content Delivery Networks 25 Steps in looking up a URL when a CDN is used Multimedia Introduction to Audio Audio Compression Streaming Audio Internet Radio Voice over IP Introduction to Video Video Compression Video on Demand The MBone The Multicast Backbone 26 13

Introduction to Audio 27 The frequency range: 20Hz 20,000Hz The ear hears logarithmically. Ratio of two sounds with power A and B is expressed in db (decibels): db = 10 log 10 (A/B) Low limit of audibility for a 1-kHz sine wave as 0 db Ordinary conversion is about 50 db Pain threshold is about 120 db => a dynamic range of a factor of 1 million Introduction to Audio 28 Audio waves can be converted to digital form by an ADC (Analog Digital Converter) Quantization noise: the error introduced by the finite number of bits per sample On a telephone line, 8000 samples/sec, frequencies above 4kHz are lost (recall Nyquist theorem) Audio CDs: digitized with a sampling rate of 44,100 samples/sec (enough to capture freq. up to 22,050Hz) The samples are 16 bits each and are linear over the range of amplitudes Allow only 65,536 distinct values Needs a bandwidth of 1.411 Mbps for stereo 14

Introduction to Audio 29 A sine wave Sampling the sine wave Quantizing the samples to 4 bits Audio Compression 30 Waveform coding: the signal is transformed mathematically by a Fourier transform into its frequency components The amplitude of each component is then encoded in a minimal way The goal is to reproduce the waveform accurately at the other end in as few bits as possible 15

Audio Compression 31 Perceptual coding: based on the science of psychoacoustics how people perceive sound Some sounds can mask other sounds Frequency masking: a loud sound in one frequency band can hide a softer sound in another frequency band Temporal masking: it takes the human ear a brief period of time to hear the masked signal even after the masking signal goes away MP3 (MPEG audio layer 3) is based on perceptual coding Audio Compression 32 The threshold of audibility as a function of frequency The masking effect 16

Streaming Audio 33 A straightforward way to implement clickable music on a Web page Streaming Audio 34 The media player has four major jobs to do Manage the user interface Handle transmission errors Decompress the music Eliminate jitter 17

Streaming Audio 35 When packets carry alternate samples, the loss of a packet reduces the temporal resolution rather than creating a gap in time. Streaming Audio The media player buffers input from the media server and plays from the buffer rather than directly from the network 36 18

Streaming Audio 37 RTSP (Real Time Streaming Protocol) provides the mechanism for the player to control the server It does not provide for the data stream, which is usually RTP RTSP commands from the player to the server Internet Radio 38 An example radio station 19

Voice over IP 39 ITU recommendation for Voice over IP H.323 Visual Telephone Systems and Equipment for Local Area Networks Which Provide a Non-Guaranteed Quality of Service The H323 architectural model for Internet telephony The H323 Protocol Stack 40 20

The H323 Protocol Stack 41 G.711 PCM system. It encodes a single voice channel by sampling 8000 times per second with an 8-bit sample to give uncompressed speech at 64 kbps All H.323 systems must support G.711 Other speech compression protocols are permitted, e.g., G.7723.1 H.245 protocol needed to allow terminals to negotiate which compression algorithm they are going to use It also negotiates other aspects of the connection such as the bit rate RTP needed for actual data transmission The H323 Protocol Stack 42 RTCP is needed for the control of the RTP channels Q.931 protocol for establishing and releasing connections, providing dial tones, making ringing sounds, and the rest of standard telephony H.225 protocol for terminals to talk to the gatekeeper RAS (Registration/Admission/Status) channel: PC-togatekeeper channel This channel allows terminals to join and leave the zone, request and return bandwidth, and provide status updates 21

The H323 Protocol Stack 43 Logical channels between the caller and callee during a call SIP The Session Initiation Protocol A simpler and more modular way to do voice over IP, by IETF The SIP methods defined in the core specification 44 22

SIP 45 Use a proxy and redirection servers with SIP Comparison of H.323 and SIP 23

Video Analog Systems 47 Frame: the scan of a two-dimensional image as a onedimensional voltage as a function of time The camera scans an electron beam rapidly across the image and slowly down it, recording the light intensity as it goes Field: half frame with odd or even scan lines Interlacing: the technique to eliminate the flicking by displaying odd and even scan lines with increased rate Noninterlaced television or video is called progressive Video Analog Systems 48 The scanning pattern used for NTSC video and television 24

Video Analog Systems 49 Television system standards National Television Standards Committee (NTSC) Phase Alternating Line (PAL) Sequential Couleur Avec Memoire (SECAM) High Definition TeleVision (HDTV) Video Analog Systems 50 To allow color transmissions to be viewed on black-and-white receivers, RGB signals into a luminance (brightness) signal and two chrominance (color) signals The eye is much more sensitive to the luminance signal than to the chrominance signals Luminance signal can be broadcast at the same frequency as old black-and-white signal Two chrominance signals are broadcast in narrow bands at higher frequencies 25

Video Compression 51 Requirements on encoding and decoding Decoding happens a lot and it must be fast For most of video documents, it is OK if the encoding algorithm is complex and time consuming For real-time multimedia, encoding must also be fast and efficient Encode/decode process need not be invertible A video is just a sequence of images plus sound A good algorithm for encoding a single image is a good starting point. When the decoded output is not exactly the same as original input, the system is said to be lossy JPEG Joint Photographic Experts Group The JPEG Standard 52 The operation of JPEG in lossy sequential mode 26

The JPEG Standard 53 RGB input data After block preparation The JPEG Standard 54 (a) One block of the Y matrix (b) The DTC coefficients 27

The JPEG Standard 55 Computation of the quantized DTC coefficients The JPEG Standard 56 The order in which the quantized values are transmitted 28

The MPEG Standard 57 MPEG Motion Picture Experts Group MPEG-1: to produce video-recorder-quality output 352x240 for NTSC, bit rate of 1.2 Mbps 352x240 image with 24 bits/pixel and 25 frames/sec requires 50.7 Mbps. We need a factor of 40 compression MPEG-2: designed for compressing broadcast-quality video into 4 to 6 Mbps. Later, MPEG-2 was expanded to support higher resolution, including HDTV It forms the basis for DVD and digital satellite television The MPEG Standard 58 Synchronization of the audio and video streams in MPEG-1 90-kHz 29

The MPEG Standard 59 MPEG-1 output consists of four kinds of frames I (Intracoded) frames: self-contained JPEG-encoded still pictures P (Predictive) frames: block-by-block difference with the last frame B (Bidirectional) frames: differences between the last and next frame D (DC-coded) frames: block averages used for fast forward The MPEG Standard 60 I-frames: still pictures coded using a variant of JPEG, also using full-resolution luminance and half-resolution chrominance along each axis It is necessary to have I-frames appear in the output stream periodically for three reasons MPEG-1 can be used for a multicast transmission, with viewers tuning it at will. Without periodical I-frames, anyone who missed first frame could never decode any subsequent frames If any frame were received in error, no further ecoding would be possible Without I-frames, while doing a fast forward or rewind, the decoder would have to calculate every frame passed over so it would know the full value of the one it stopped on 30

The MPEG Standard 61 Macroblocks 16x16 pixels in luminance space and 8x8 pixels in chrominance space. A macroblock is encoded by searching the previous frame for it or something only slightly different from it P-frames: code interframe differences. They are based on the idea of macroblocks Three consecutive frames The MPEG Standard 62 B-frames: similar to P-frames, except that they allow the reference macroblock to be in either a previous frame or in a succeeding frame This additional freedom allows improved motion compensation and is also useful when objects pass in front of, or behind, other objects To do B-frame encoding, the encoder needs to hold three decoded frames in memory at once: the past one, the current one, and the future one 31

The MPEG Standard 63 D-frames: only used to make it possible to display a low-resolution image when doing a rewind or fast forward. Each D-frame entry is just the average value of one block, with no further encoding The MPEG Standard 64 MPEG-2: targeted at broadcast television as well as DVD It supports both progressive and interlaced images (MPEG-1 supports only progressive images) Supports four resolution level Low (352x240) Main (720x480) High-1440 (1440x1152) High (1920x1080) 32

Video on Demand 65 Video Servers 66 Zipf s law: experimentally, when N movies are available, the fraction of all requests being for the k th most popular one is approximately C/k. Here C is computed to normalize the sum to 1, namely, C = 1/(1+1/2+1/3+ +1/N) A video server storage hierarchy 33

Video Servers 67 The hardware architecture of a typical video server Video on Demand 68 Distribution network ADSL Bandwidth not quite big enough FTTC Fiber To The Curb Telephone company runs optical fiber from the end office into each residential neighborhood, terminating in a device called an ONU (Optical Network Unit) FTTH Fiber To The Home Everyone can have an OC-1, OC-3, or even higher carrier if that is required. FTTH is very expensive and will not happen for years HFC Hybrid Fiber Coax Currently being installed by cable TV providers. Uses 750-MHz coax cables 34

MBone The Multicast Backbone 69 MBone is used for broadcasting live video in digital form all over the world via the Internet It can be thought of as Internet television It has been operational since early 1992 Many scientific conferences, especially IETF meetings, have been broadcast Unlike video on demand, where the emphasis is on calling up and viewing precompressed movies stored on a server MBone The Multicast Backbone 70 MBone is a virtual overlay network on top of the Internet. It consists of multicast-capable islands connected by tunnels 35