"METHOD FOR IMPROVED BANDWIDTH UTILIZATION IN DATA DOWNLOADING SYSTEMS USING INTELLIGENT DYNAMIC CONNECTION LIMIT STEPPING"

Size: px
Start display at page:

Download ""METHOD FOR IMPROVED BANDWIDTH UTILIZATION IN DATA DOWNLOADING SYSTEMS USING INTELLIGENT DYNAMIC CONNECTION LIMIT STEPPING""

Transcription

1 Technical Disclosure Commons Defensive Publications Series October 05, 2016 "METHOD FOR IMPROVED BANDWIDTH UTILIZATION IN DATA DOWNLOADING SYSTEMS USING INTELLIGENT DYNAMIC CONNECTION LIMIT STEPPING" Simon Hatch Oystein Eftevaag Follow this and additional works at: Recommended Citation Hatch, Simon and Eftevaag, Oystein, ""METHOD FOR IMPROVED BANDWIDTH UTILIZATION IN DATA DOWNLOADING SYSTEMS USING INTELLIGENT DYNAMIC CONNECTION LIMIT STEPPING"", Technical Disclosure Commons, (October 05, 2016) This work is licensed under a Creative Commons Attribution 4.0 License. This Article is brought to you for free and open access by Technical Disclosure Commons. It has been accepted for inclusion in Defensive Publications Series by an authorized administrator of Technical Disclosure Commons.

2 Hatch and Eftevaag: "METHOD FOR IMPROVED BANDWIDTH UTILIZATION IN DATA DOWNLOADING SY METHOD FOR IMPROVED BANDWIDTH UTILIZATION IN DATA DOWNLOADING SYSTEMS USING INTELLIGENT DYNAMIC CONNECTION LIMIT STEPPING Any piece of computer software running on a client computing device that needs to download multiple pieces of data (or data files) from a network (e.g., a web browser downloading multiple images and cascading style sheet (CSS) files for a web page), would need to throttle the number of concurrent files it downloads due to bandwidth limitations. If the client computing device attempts to download too much concurrently, the resources would likely contend with each other for bandwidth and individually take an extended amount of time to download. If the client computing device has too few concurrent downloads, the client computing device may not be utilizing its bandwidth optimally. The client computing device may include a mobile device, a wireless device, a stationary desktop device, a multimedia device, a set-top box device, a streaming device, a television device, or any other client capable of requesting and downloading data from a server. Browsers and other systems that need to download multiple files and/or resources typically set a fixed number of total connections per host (referred to as slots), which represents an approximation of that balance between bandwidth utilization and concurrent downloads for most situations. This approach however has its drawbacks thereby making this approach less optimal. This approach results in overwhelming the connection in very bandwidth-constrained situations, and underutilizing the connection on high-bandwidth connections. 1 Published by Technical Disclosure Commons,

3 Defensive Publications Series, Art. 286 [2016] Another drawback with this approach when it comes to web browsers, however, becomes apparent when the client computing device needs to download a large number of small resources. Every file that a client computing device downloads comes with some time overhead before the client computing device can begin receiving actual data: The client computing device would need to initiate a TCP/IP connection, potentially perform secure sockets layer (SSL) handshaking, and then request the resource (See Figure 1). This can mean several roundtrips from the client computing device to the server, which takes time (some multiple of the latency to send a signal between the two endpoints). Client Server Connection Overhead TCP Connection Handshake SSL Connection Handshake Concurrent Requests to Host Concurrent Data Download Concurrent Responses from Host Figure 1 Client/Server Round Trip Exchanges The end result of this round trip exchange is that each time the client computing device starts a download and utilizes a slot, there is a time period where the connection in that slot is not actually using up any bandwidth at all since the slot is simply waiting for a response with data from the server. In a situation where the client computing device has a large number of relatively small resources, the overall bandwidth utilization would therefore become relatively 2 3

4 Hatch and Eftevaag: "METHOD FOR IMPROVED BANDWIDTH UTILIZATION IN DATA DOWNLOADING SY small and the client computing device may end up spending more time on connection overhead than actual data transmission. In another situation, the available bandwidth for mobile devices can frequently and suddenly change, which means attempts by the mobile device to consume the actual bandwidth by the conventional approaches outlined above as a mechanism to govern the number of used connections may be challenging. Finding the right balance between the bandwidth utilization and number of concurrent downloads may be desirable. To improve the bandwidth utilization in data download systems, the connection limit (or the number of slots) is dynamically set by a heuristic algorithm, which monitors the state of the active connections and steps up or down the allowed number of connections based on what overall percentage of the active connections are currently in a waiting-for-data state (i.e., connection overhead). In stepping through the connection limit, the client computing device may allow for some slack in bandwidth to be available in order to compensate for sudden state changes while staying within bandwidth utilization limits. The process of connection limit stepping may be as follows: Start with a default number of connections to a host (e.g., a default value of 6). Client computing device navigates to page. This page may be an initial resource obtained by the client computing device that indicates multiple sub-resources that need to be download by the client computing device to fully render the requested resource. Client computing device sends resource requests up to a predetermined maximum value. The client computing device can queue subsequent resource requests if maximum value already reached. 3 Published by Technical Disclosure Commons,

5 Defensive Publications Series, Art. 286 [2016] As resources finish being download to the client, the client computing device may then send new resource requests. In this example, the client computing device may begin sending those subsequent resource requests in the queue. Client computing device calculates percentage of time spent on a connection as follows: TDNS + TSSL + TTCP TTTTTTTT SSSSSSSSSS % = TTOTAL, where TDNS is the time spent in DNS resolve, TSSL is the time spent in SSL handshake, TTCP is the time spent in TCP slow start, and TTOTAL is the total time spent downloading (including time spent receiving data from the host). The percentage of time spent ratio may differ than shown above to account for other connection overhead delays (e.g., IPSec handshake), or may exclude some of the round-trip delays shown above, depending on implementation. Client computing device records and stores history of time spent ratios for prior resources. The client computing device may log historical data relating to the prior ratios in a local cache or locally-accessible data repository. Client computing device utilizes a sliding window of most recent downloads. The time spent of downloads are averaged together, where time spent for recent downloads are weighted more heavily. If the percentage of time spent exceeds a predetermined threshold X, then the client computing device allows the allotted number of connections to increase up to a predefined minimum number of connections (e.g., min(default_max, current + 1)). 4 5

6 Hatch and Eftevaag: "METHOD FOR IMPROVED BANDWIDTH UTILIZATION IN DATA DOWNLOADING SY If the percentage of time spent does not exceed a predetermined threshold Y, then the client computing device allows the allotted number of connections to decrease down to a predefined maximum number of connections (e.g., a max(default, current - 1)). As listed above, the client computing device would start out with a default number of connections (or slots) per host, but at some time interval since initiating the connections, the algorithm allows the client computing device an opportunity to adjust the number of slots, up to predefined minimum and maximum number of connections (as a safeguard against sudden changes in circumstances; i.e. starting out by downloading many tiny resources, and suddenly switching to downloading some large resources). If the client computing device calculates that the bandwidth in the connections is being underutilized by determining that a large number of the active connections are waiting to receive data, then the client computing device increases the slot allotment so long as the adjusted number of connections remains under the maximum cap (See Figure 2). Number of Slots to Host Monitoring Period Step Up Original Cap Adjusted Cap Time Figure 2 Slot Allotment Increase 5 Published by Technical Disclosure Commons,

7 Defensive Publications Series, Art. 286 [2016] If the client computing device determines that a large number of the active connections are all receiving or sending data, the client computing device concludes that the bandwidth in the connections is being over-utilized, and hence, the client computing device decreases the slot allotment so long as the adjusted number of connections remains above the minimum cap (See Figure 3). In some aspects, the minimum cap is set to at least one connection. Number of Slots to Host Monitoring Period Original Cap Step Down Adjusted Cap Time Figure 3 Slot Allotment Decrease The approach outlined above provides for the client computing device to obtain information to know whether a connection is under-utilizing or over-utilizing the available bandwidth by using the connection state instead. For example, the client computing device may automatically adapt to both the available bandwidth and to the size of the resources we need to download. If the client computing device is over-utilizing bandwidth over the concurrent connections, then the latency monitored is higher, and hence, a number of active connections will more often be in the waiting state. There is a direct correlation between the size of the resource and the overhead in connection time to download that resource. In other words, as the resource increases in size, the connection time becomes relatively smaller. An alternative approach would be to experimentally increase/decrease the number of available slots and then monitor the actual bandwidth usage of the client computing device to see if the 6 7

8 Hatch and Eftevaag: "METHOD FOR IMPROVED BANDWIDTH UTILIZATION IN DATA DOWNLOADING SY change resulted in increased or decreased bandwidth utilization. Another approach would be to log historical data and establish the number of connections based on the historical data. The client computing device may store the historical data in a local cache or a locally accessible data repository. For example, once a web browser has visited a certain page, the client computing device retrieves the ratios for small to large resources, and the client computing device can use those historical ratios to configure the number of slots in advance (i.e., pre-configuration). The process of connection limit stepping may be implemented by a browser vendor or an entity that develops a system that needs to download multiple pieces of data and/or files from across the network. The use of the dynamic connection limit stepping may be detectible by using a network monitoring tool to monitor how many concurrent connections a browser (or other system) is utilizing, under different circumstances. A set of webpages may be constructed with differently sized sub-resources (e.g., some pages with many small resources, some pages with many large resources). A browser using the dynamic connection limit stepping may be dynamically adjusting the number of TCP/IP connections over time as the page load progresses, depending on which site is being loaded. 7 Published by Technical Disclosure Commons,

9 Defensive Publications Series, Art. 286 [2016] ABSTRACT The subject technology relates to improving bandwidth utilization of data downloading systems by dynamically setting a connection limit with a host. The connection limit (or number of slots) can be dynamically set by a heuristic algorithm that monitors the state of active connections with the host, and steps up or down the allowed number of connections based on what overall percentage of the active connections are currently in a waiting-for-data state. The dynamic connection limit stepping utilizes the connection state in order to automatically adapt to both the available bandwidth and the size of the resources needed to download. 8 9

Preferential Resource Delivery Via Web Proxy or Web Browser

Preferential Resource Delivery Via Web Proxy or Web Browser Technical Disclosure Commons Defensive Publications Series December 11, 2017 Preferential Resource Delivery Via Web Proxy or Web Browser Dean Kenneth Jackson Daniel Klein Follow this and additional works

More information

DYNAMICALLY CACHING VIDEO CONTENT BASED ON USER LIKELIHOOD OF INTERACTING WITH CONTENT ELEMENT

DYNAMICALLY CACHING VIDEO CONTENT BASED ON USER LIKELIHOOD OF INTERACTING WITH CONTENT ELEMENT Technical Disclosure Commons Defensive Publications Series July 01, 2016 DYNAMICALLY CACHING VIDEO CONTENT BASED ON USER LIKELIHOOD OF INTERACTING WITH CONTENT ELEMENT Richard Rapp Justin Lewis Follow

More information

SSD Admission Control for Content Delivery Networks

SSD Admission Control for Content Delivery Networks Technical Disclosure Commons Defensive Publications Series September 20, 2017 SSD Admission Control for Content Delivery Networks Dragos Ionescu Richard Schooler Kenneth Barr Follow this and additional

More information

Automatically Generating and Rendering Native Advertisements

Automatically Generating and Rendering Native Advertisements Technical Disclosure Commons Defensive Publications Series April 21, 2017 Automatically Generating and Rendering Native Advertisements Zhenguo Ou Zekan Qian Guannan Zhang Tianjiu Yin Follow this and additional

More information

There are 10 questions in total. Please write your SID on each page.

There are 10 questions in total. Please write your SID on each page. Name: SID: Department of EECS - University of California at Berkeley EECS122 - Introduction to Communication Networks - Spring 2005 to the Final: 5/20/2005 There are 10 questions in total. Please write

More information

BUFFERING AND INSERTING TEXT INPUTS

BUFFERING AND INSERTING TEXT INPUTS Technical Disclosure Commons Defensive Publications Series January 08, 2015 BUFFERING AND INSERTING TEXT INPUTS Winson Chung Follow this and additional works at: http://www.tdcommons.org/dpubs_series Recommended

More information

MULTIPLE TIER LOW OVERHEAD MEMORY LEAK DETECTOR

MULTIPLE TIER LOW OVERHEAD MEMORY LEAK DETECTOR Technical Disclosure Commons Defensive Publications Series June 03, 2016 MULTIPLE TIER LOW OVERHEAD MEMORY LEAK DETECTOR Ben Cheng Simon Que Follow this and additional works at: http://www.tdcommons.org/dpubs_series

More information

PARTIAL CLICK PROTECTIONS FOR ADS

PARTIAL CLICK PROTECTIONS FOR ADS Technical Disclosure Commons Defensive Publications Series June 03, 2016 PARTIAL CLICK PROTECTIONS FOR ADS Matthew Burriesci Joon Ho Cho Nathan Lucash An-Tai Li Follow this and additional works at: http://www.tdcommons.org/dpubs_series

More information

Notification Features For Digital Content In A Mobile-Optimized Format

Notification Features For Digital Content In A Mobile-Optimized Format Technical Disclosure Commons Defensive Publications Series December 12, 2017 Notification Features For Digital Content In A Mobile-Optimized Format Justin Lewis Joseph Cohen Follow this and additional

More information

Department of EECS - University of California at Berkeley EECS122 - Introduction to Communication Networks - Spring 2005 Final: 5/20/2005

Department of EECS - University of California at Berkeley EECS122 - Introduction to Communication Networks - Spring 2005 Final: 5/20/2005 Name: SID: Department of EECS - University of California at Berkeley EECS122 - Introduction to Communication Networks - Spring 2005 Final: 5/20/2005 There are 10 questions in total. Please write your SID

More information

PLEASE READ CAREFULLY BEFORE YOU START

PLEASE READ CAREFULLY BEFORE YOU START Page 1 of 11 MIDTERM EXAMINATION #1 OCT. 13, 2011 COMPUTER NETWORKS : 03-60-367-01 U N I V E R S I T Y O F W I N D S O R S C H O O L O F C O M P U T E R S C I E N C E Fall 2011-75 minutes This examination

More information

Providing link suggestions based on recent user activity

Providing link suggestions based on recent user activity Technical Disclosure Commons Defensive Publications Series May 31, 2018 Providing link suggestions based on recent user activity Jakob Foerster Matthew Sharifi Follow this and additional works at: https://www.tdcommons.org/dpubs_series

More information

REDUCING GRANULARITY OF BROWSER FINGERPRINTING TECHNIQUES

REDUCING GRANULARITY OF BROWSER FINGERPRINTING TECHNIQUES Technical Disclosure Commons Defensive Publications Series January 19, 2016 REDUCING GRANULARITY OF BROWSER FINGERPRINTING TECHNIQUES Mike West Dominic Battré Follow this and additional works at: http://www.tdcommons.org/dpubs_series

More information

ETSF10 Internet Protocols Transport Layer Protocols

ETSF10 Internet Protocols Transport Layer Protocols ETSF10 Internet Protocols Transport Layer Protocols 2012, Part 2, Lecture 2.1 Kaan Bür, Jens Andersson Transport Layer Protocols Process-to-process delivery [ed.4 ch.23.1] [ed.5 ch.24.1] Transmission Control

More information

PLEASE READ CAREFULLY BEFORE YOU START

PLEASE READ CAREFULLY BEFORE YOU START Page 1 of 20 MIDTERM EXAMINATION #1 - B COMPUTER NETWORKS : 03-60-367-01 U N I V E R S I T Y O F W I N D S O R S C H O O L O F C O M P U T E R S C I E N C E Fall 2008-75 minutes This examination document

More information

PLEASE READ CAREFULLY BEFORE YOU START

PLEASE READ CAREFULLY BEFORE YOU START Page 1 of 20 MIDTERM EXAMINATION #1 - A COMPUTER NETWORKS : 03-60-367-01 U N I V E R S I T Y O F W I N D S O R S C H O O L O F C O M P U T E R S C I E N C E Fall 2008-75 minutes This examination document

More information

Module 15: Network Structures

Module 15: Network Structures Module 15: Network Structures Background Topology Network Types Communication Communication Protocol Robustness Design Strategies 15.1 A Distributed System 15.2 Motivation Resource sharing sharing and

More information

PLEASE READ CAREFULLY BEFORE YOU START

PLEASE READ CAREFULLY BEFORE YOU START Page 1 of 11 MIDTERM EXAMINATION #1 OCT. 16, 2013 COMPUTER NETWORKS : 03-60-367-01 U N I V E R S I T Y O F W I N D S O R S C H O O L O F C O M P U T E R S C I E N C E Fall 2013-75 minutes This examination

More information

Module 16: Distributed System Structures. Operating System Concepts 8 th Edition,

Module 16: Distributed System Structures. Operating System Concepts 8 th Edition, Module 16: Distributed System Structures, Silberschatz, Galvin and Gagne 2009 Chapter 16: Distributed System Structures Motivation Types of Network-Based Operating Systems Network Structure Network Topology

More information

Accelerated Mobile Pages Advertisement and Cascading Style Sheet Merging

Accelerated Mobile Pages Advertisement and Cascading Style Sheet Merging Technical Disclosure Commons Defensive Publications Series March 06, 2017 Accelerated Mobile Pages Advertisement and Cascading Style Sheet Merging Richard Rapp Justin Lewis Follow this and additional works

More information

Why Your Application only Uses 10Mbps Even the Link is 1Gbps?

Why Your Application only Uses 10Mbps Even the Link is 1Gbps? Why Your Application only Uses 10Mbps Even the Link is 1Gbps? Contents Introduction Background Information Overview of the Issue Bandwidth-Delay Product Verify Solution How to Tell Round Trip Time (RTT)

More information

Distributed System Chapter 16 Issues in ch 17, ch 18

Distributed System Chapter 16 Issues in ch 17, ch 18 Distributed System Chapter 16 Issues in ch 17, ch 18 1 Chapter 16: Distributed System Structures! Motivation! Types of Network-Based Operating Systems! Network Structure! Network Topology! Communication

More information

Replay Real World Network Conditions To Test Cellular Switching

Replay Real World Network Conditions To Test Cellular Switching Technical Disclosure Commons Defensive Publications Series January 03, 2017 Replay Real World Network Conditions To Test Cellular Switching Weihua Tan Vijay Thurimella Jeffrey Palm Michael Rowland Follow

More information

Guide to Networking Essentials, 6 th Edition. Chapter 5: Network Protocols

Guide to Networking Essentials, 6 th Edition. Chapter 5: Network Protocols Guide to Networking Essentials, 6 th Edition Chapter 5: Network Protocols Objectives Describe the purpose of a network protocol, the layers in the TCP/IP architecture, and the protocols in each TCP/IP

More information

1. What is a Computer Network? interconnected collection of autonomous computers connected by a communication technology

1. What is a Computer Network? interconnected collection of autonomous computers connected by a communication technology Review Questions for exam Preparation (22-07-2017) 1. What is a Computer Network? interconnected collection of autonomous computers connected by a communication technology 2. What is the Internet? "network

More information

Displaying web pages within a software keyboard

Displaying web pages within a software keyboard Technical Disclosure Commons Defensive Publications Series September 22, 2017 Displaying web pages within a software keyboard Dong Kim John Arendt Follow this and additional works at: http://www.tdcommons.org/dpubs_series

More information

Navigation of blogs related by a tag

Navigation of blogs related by a tag Technical Disclosure Commons Defensive Publications Series December 05, 2017 Navigation of blogs related by a tag Sergey Babkin Follow this and additional works at: http://www.tdcommons.org/dpubs_series

More information

SMART LIVE CHAT LIMITER

SMART LIVE CHAT LIMITER Technical Disclosure Commons Defensive Publications Series June 26, 2017 SMART LIVE CHAT LIMITER Kurt Wilms Follow this and additional works at: http://www.tdcommons.org/dpubs_series Recommended Citation

More information

Oracle Enterprise Manager. 1 Before You Install. System Monitoring Plug-in for Oracle Unified Directory User's Guide Release 1.0

Oracle Enterprise Manager. 1 Before You Install. System Monitoring Plug-in for Oracle Unified Directory User's Guide Release 1.0 Oracle Enterprise Manager System Monitoring Plug-in for Oracle Unified Directory User's Guide Release 1.0 E24476-01 October 2011 The System Monitoring Plug-In for Oracle Unified Directory extends Oracle

More information

Selecting native ad units using gestures

Selecting native ad units using gestures Technical Disclosure Commons Defensive Publications Series April 12, 2018 Selecting native ad units using gestures Bo Lin Tyler Pletz Follow this and additional works at: https://www.tdcommons.org/dpubs_series

More information

VOICE AND TOUCH BASED INPUT

VOICE AND TOUCH BASED INPUT Technical Disclosure Commons Defensive Publications Series March 13, 2015 VOICE AND TOUCH BASED INPUT Michael Cardosa Follow this and additional works at: http://www.tdcommons.org/dpubs_series Recommended

More information

Technical Disclosure Commons

Technical Disclosure Commons Technical Disclosure Commons Defensive Publications Series September 22, 2017 Disposable Apps Leon Nicholls Follow this and additional works at: http://www.tdcommons.org/dpubs_series Recommended Citation

More information

What is an application delivery controller?

What is an application delivery controller? What is an application delivery controller? ADCs have gained traction within the last decade, largely due to increased demand for legacy load balancing appliances to handle more advanced application delivery

More information

Introduction to Troubleshooting TCP/IP Networks with Wireshark

Introduction to Troubleshooting TCP/IP Networks with Wireshark Introduction to Troubleshooting TCP/IP Networks with Wireshark Course WIRE-1B 5 Days Instructor-led, Hands-on Introduction In this hands-on, instructor-led, five-day course, you will receive in-depth training

More information

Module 16: Distributed System Structures

Module 16: Distributed System Structures Chapter 16: Distributed System Structures Module 16: Distributed System Structures Motivation Types of Network-Based Operating Systems Network Structure Network Topology Communication Structure Communication

More information

CS 344/444 Computer Network Fundamentals Final Exam Solutions Spring 2007

CS 344/444 Computer Network Fundamentals Final Exam Solutions Spring 2007 CS 344/444 Computer Network Fundamentals Final Exam Solutions Spring 2007 Question 344 Points 444 Points Score 1 10 10 2 10 10 3 20 20 4 20 10 5 20 20 6 20 10 7-20 Total: 100 100 Instructions: 1. Question

More information

BIG-IP Analytics: Implementations. Version 12.1

BIG-IP Analytics: Implementations. Version 12.1 BIG-IP Analytics: Implementations Version 12.1 Table of Contents Table of Contents Setting Up Application Statistics Collection...5 What is Analytics?...5 About HTTP Analytics profiles...5 Overview: Collecting

More information

Conversion of a 3D scene into video

Conversion of a 3D scene into video Technical Disclosure Commons Defensive Publications Series November 08, 2017 Conversion of a 3D scene into video Jason Mayes Leon Bayliss Bryan Rodman Follow this and additional works at: http://www.tdcommons.org/dpubs_series

More information

Experimental Study of Parallel Downloading Schemes for Internet Mirror Sites

Experimental Study of Parallel Downloading Schemes for Internet Mirror Sites Experimental Study of Parallel Downloading Schemes for Internet Mirror Sites Spiro Philopoulos Dept. of Elect. and Comp. Eng. University of Manitoba Winnipeg, Canada email: umphilop@cc.umanitoba.ca Muthucumaru

More information

Group Targeting for Video Ads Based on Location Context

Group Targeting for Video Ads Based on Location Context Technical Disclosure Commons Defensive Publications Series October 14, 2017 Group Targeting for Video Ads Based on Location Context Indusekar Ponnapa Reddy Lakshmi Dabbiru Follow this and additional works

More information

Implementation Guide - VPN Network with Static Routing

Implementation Guide - VPN Network with Static Routing Implementation Guide - VPN Network with Static Routing This guide contains advanced topics and concepts. Follow the links in each section for step-by-step instructions on how to configure the following

More information

MURDOCH RESEARCH REPOSITORY

MURDOCH RESEARCH REPOSITORY MURDOCH RESEARCH REPOSITORY http://researchrepository.murdoch.edu.au/ This is the author s final version of the work, as accepted for publication following peer review but without the publisher s layout

More information

MAC Protocol Proposal for Fixed BWA Networks Based on DOCSIS. Re: Medium Access Control Task Group Call for Contributions Session #4

MAC Protocol Proposal for Fixed BWA Networks Based on DOCSIS. Re: Medium Access Control Task Group Call for Contributions Session #4 Project Title Date Submitted IEEE 802.16 Broadband Wireless Access Working Group MAC Protocol Proposal for Fixed BWA Networks Based on DOCSIS 1999-10-29 Source Phil Guillemette SpaceBridge Networks Corporation

More information

Intelligent Generation of Physical Products

Intelligent Generation of Physical Products Technical Disclosure Commons Defensive Publications Series May 26, 2017 Intelligent Generation of Physical Products Luke Mulcahy Follow this and additional works at: http://www.tdcommons.org/dpubs_series

More information

Keys to Web Front End Performance Optimization

Keys to Web Front End Performance Optimization Keys to Web Front End Performance Optimization Contents Preface... 3 Web Front End Performance Paradigm... 4 Best practices/optimizations enhancing the Web Front End Performance... 5 WWW of Performance

More information

Web, HTTP, Caching, CDNs

Web, HTTP, Caching, CDNs Web, HTTP, Caching, CDNs Outline Web HyperText Transfer Protocol (HTTP) Inefficiencies in HTTP HTTP Persistent Connections Caching CDNs Consistent Hashing CS 640 1 Web Original goal of the web: mechanism

More information

A New Internet? Introduction to HTTP/2, QUIC and DOH

A New Internet? Introduction to HTTP/2, QUIC and DOH A New Internet? Introduction to HTTP/2, QUIC and DOH and more LACNIC 29 - Panamá May 2018 Jordi Palet (jordi.palet@theipv6company.com) -1 Internet is Changing More and more, Internet traffic is moving

More information

The Internet. Tim Capes. November 7, 2011

The Internet. Tim Capes. November 7, 2011 The Internet Tim Capes November 7, 2011 What is the Internet? The internet is a global system consisting of millions if interconnected networks. These individual networks are anything from local (a Home

More information

Chapter 2 Application Layer. Lecture 4: principles of network applications. Computer Networking: A Top Down Approach

Chapter 2 Application Layer. Lecture 4: principles of network applications. Computer Networking: A Top Down Approach Chapter 2 Application Layer Lecture 4: principles of network applications Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Application Layer 2-1 Chapter

More information

Monitoring and Analysis

Monitoring and Analysis CHAPTER 3 Cisco Prime Network Analysis Module 5.1 has two types of dashboards: One type is the summary views found under the Monitor menu, and the other type is the over time views found under the Analyze

More information

Improving Performance of Transmission Control Protocol for Mobile Networks

Improving Performance of Transmission Control Protocol for Mobile Networks Improving Performance of Transmission Control Protocol for Mobile Networks Dulal Kar, Swetha Pandala, and Ajay Katangur Department of Computing Sciences, Texas A&M University-Corpus Christi, Corpus Christi,

More information

4.0.1 CHAPTER INTRODUCTION

4.0.1 CHAPTER INTRODUCTION 4.0.1 CHAPTER INTRODUCTION Data networks and the Internet support the human network by supplying seamless, reliable communication between people - both locally and around the globe. On a single device,

More information

Islamic University of Gaza Faculty of Engineering Department of Computer Engineering ECOM 4021: Networks Discussion. Chapter 1.

Islamic University of Gaza Faculty of Engineering Department of Computer Engineering ECOM 4021: Networks Discussion. Chapter 1. Islamic University of Gaza Faculty of Engineering Department of Computer Engineering ECOM 4021: Networks Discussion Chapter 1 Foundation Eng. Haneen El-Masry February, 2014 A Computer Network A computer

More information

Actions on Landing Pages

Actions on Landing Pages Technical Disclosure Commons Defensive Publications Series July 03, 2017 Actions on Landing Pages John D. Lanza Foley & Lardner LLP John D. Lanza Foley & Lardner LLP Follow this and additional works at:

More information

Computer Networks - Midterm

Computer Networks - Midterm Computer Networks - Midterm October 30, 2015 Duration: 2h15m This is a closed-book exam Please write your answers on these sheets in a readable way, in English or in French You can use extra sheets if

More information

ADAPTIVE USER INTERFACE BASED ON EYE TRACKING

ADAPTIVE USER INTERFACE BASED ON EYE TRACKING Technical Disclosure Commons Defensive Publications Series January 08, 2015 ADAPTIVE USER INTERFACE BASED ON EYE TRACKING Max Sills Robert Gordon Follow this and additional works at: http://www.tdcommons.org/dpubs_series

More information

Lesson 5 Introduction to Cascading Style Sheets

Lesson 5 Introduction to Cascading Style Sheets Introduction to Cascading Style Sheets HTML and JavaScript BASICS, 4 th Edition 1 Objectives Create a Cascading Style Sheet. Control hyperlink behavior with CSS. Create style classes. Share style classes

More information

PLEASE READ CAREFULLY BEFORE YOU START

PLEASE READ CAREFULLY BEFORE YOU START MIDTERM EXAMINATION #1 NETWORKING CONCEPTS 03-60-367-01 U N I V E R S I T Y O F W I N D S O R - S c h o o l o f C o m p u t e r S c i e n c e Intersession 2009 Question Paper NOTE: Students may take this

More information

ECE 461 Internetworking. Problem Sheet 6

ECE 461 Internetworking. Problem Sheet 6 ECE 461 Internetworking Problem Sheet 6 Problem 1. Consider the state of a sliding window at the sending side of a TCP connections as shown in Figure 1. (Each number corresponds to one byte).. (a) Explain

More information

UNIT IV -- TRANSPORT LAYER

UNIT IV -- TRANSPORT LAYER UNIT IV -- TRANSPORT LAYER TABLE OF CONTENTS 4.1. Transport layer. 02 4.2. Reliable delivery service. 03 4.3. Congestion control. 05 4.4. Connection establishment.. 07 4.5. Flow control 09 4.6. Transmission

More information

CSCI 466 Midterm Networks Fall 2013

CSCI 466 Midterm Networks Fall 2013 CSCI 466 Midterm Networks Fall 2013 Name: This exam consists of 6 problems on the following 7 pages. You may use your single-sided hand-written 8 ½ x 11 note sheet and a calculator during the exam. No

More information

Evaluating external network bandwidth load for Google Apps

Evaluating external network bandwidth load for Google Apps Evaluating external network bandwidth load for Google Apps This document describes how to perform measurements to better understand how much network load will be caused by using a software as a service

More information

Handwriting recognition for IDEs with Unicode support

Handwriting recognition for IDEs with Unicode support Technical Disclosure Commons Defensive Publications Series December 11, 2017 Handwriting recognition for IDEs with Unicode support Michal Luszczyk Sandro Feuz Follow this and additional works at: http://www.tdcommons.org/dpubs_series

More information

Pipeline To Generate Training Data For Image Recognition

Pipeline To Generate Training Data For Image Recognition Technical Disclosure Commons Defensive Publications Series March 10, 2015 Pipeline To Generate Training Data For Image Recognition Rahul Garg Sven Gowal Follow this and additional works at: http://www.tdcommons.org/dpubs_series

More information

OSI Transport Layer. Network Fundamentals Chapter 4. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1

OSI Transport Layer. Network Fundamentals Chapter 4. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1 OSI Transport Layer Network Fundamentals Chapter 4 Version 4.0 1 Transport Layer Role and Services Transport layer is responsible for overall end-to-end transfer of application data 2 Transport Layer Role

More information

Mobile Communications Chapter 9: Mobile Transport Layer

Mobile Communications Chapter 9: Mobile Transport Layer Prof. Dr.-Ing Jochen H. Schiller Inst. of Computer Science Freie Universität Berlin Germany Mobile Communications Chapter 9: Mobile Transport Layer Motivation, TCP-mechanisms Classical approaches (Indirect

More information

Best Practice - Protect Against TCP SYN Flooding Attacks with TCP Accept Policies

Best Practice - Protect Against TCP SYN Flooding Attacks with TCP Accept Policies Best Practice - Protect Against TCP SYN Flooding Attacks with TCP Accept Policies In order to establish a TCP connection, the TCP three-way handshake must be completed. You can use different accept policies

More information

Internet Architecture & Performance. What s the Internet: nuts and bolts view

Internet Architecture & Performance. What s the Internet: nuts and bolts view Internet Architecture & Performance Internet, Connection, Protocols, Performance measurements What s the Internet: nuts and bolts view millions of connected computing devices: hosts, end systems pc s workstations,

More information

CHAPTER 3 GRID MONITORING AND RESOURCE SELECTION

CHAPTER 3 GRID MONITORING AND RESOURCE SELECTION 31 CHAPTER 3 GRID MONITORING AND RESOURCE SELECTION This chapter introduces the Grid monitoring with resource metrics and network metrics. This chapter also discusses various network monitoring tools and

More information

2

2 1 2 3 4 5 6 For more information, see http://www.intel.com/content/www/us/en/processors/core/core-processorfamily.html 7 8 The logic for identifying issues on Intel Microarchitecture Codename Ivy Bridge

More information

Load Balancing Technology White Paper

Load Balancing Technology White Paper Load Balancing Technology White Paper Keywords: Server, gateway, link, load balancing, SLB, LLB Abstract: This document describes the background, implementation, and operating mechanism of the load balancing

More information

Word Found Meaning Innovation

Word Found Meaning Innovation AP CSP Quarter 1 Study Guide Vocabulary from Unit 1 & 3 Word Found Meaning Innovation A novel or improved idea, device, product, etc, or the development 1.1 thereof Binary 1.2 A way of representing information

More information

Computer Networks - Midterm

Computer Networks - Midterm Computer Networks - Midterm October 28, 2016 Duration: 2h15m This is a closed-book exam Please write your answers on these sheets in a readable way, in English or in French You can use extra sheets if

More information

A Library and Proxy for SPDY

A Library and Proxy for SPDY A Library and Proxy for SPDY Interdisciplinary Project Andrey Uzunov Chair for Network Architectures and Services Department of Informatics Technische Universität München April 3, 2013 Andrey Uzunov (TUM)

More information

CMPE150 Midterm Solutions

CMPE150 Midterm Solutions CMPE150 Midterm Solutions Question 1 Packet switching and circuit switching: (a) Is the Internet a packet switching or circuit switching network? Justify your answer. The Internet is a packet switching

More information

Client/Server Computing

Client/Server Computing CS 312 Internet Concepts Client/Server Computing Dr. Michele Weigle Department of Computer Science Old Dominion University mweigle@cs.odu.edu http://www.cs.odu.edu/~mweigle/cs312-f11 1 Applications and

More information

Monitoring Agent for Unix OS Version Reference IBM

Monitoring Agent for Unix OS Version Reference IBM Monitoring Agent for Unix OS Version 6.3.5 Reference IBM Monitoring Agent for Unix OS Version 6.3.5 Reference IBM Note Before using this information and the product it supports, read the information in

More information

Different Layers Lecture 21

Different Layers Lecture 21 Different Layers Lecture 21 10/17/2003 Jian Ren 1 The Transport Layer 10/17/2003 Jian Ren 2 Transport Services and Protocols Provide logical communication between app processes running on different hosts

More information

QoS metrics and requirements

QoS metrics and requirements QoS metrics and requirements Lectured by Alexander Pyattaev Department of Communications Engineering Tampere University of Technology alexander.pyattaev@tut.fi March 5, 2012 Outline 1 Introduction 2 Performance

More information

Improving TCP Performance over Wireless Networks using Loss Predictors

Improving TCP Performance over Wireless Networks using Loss Predictors Improving TCP Performance over Wireless Networks using Loss Predictors Fabio Martignon Dipartimento Elettronica e Informazione Politecnico di Milano P.zza L. Da Vinci 32, 20133 Milano Email: martignon@elet.polimi.it

More information

Improving Reliable Transport and Handoff Performance in Cellular Wireless Networks

Improving Reliable Transport and Handoff Performance in Cellular Wireless Networks Improving Reliable Transport and Handoff Performance in Cellular Wireless Networks H. Balakrishnan, S. Seshan, and R. H. Katz ACM Wireless Networks Vol. 1, No. 4, pp. 469-482 Dec. 1995 P. 1 Introduction

More information

More on Testing and Large Scale Web Apps

More on Testing and Large Scale Web Apps More on Testing and Large Scale Web Apps Testing Functionality Tests - Unit tests: E.g. Mocha - Integration tests - End-to-end - E.g. Selenium - HTML CSS validation - forms and form validation - cookies

More information

HyperIP : SRDF Application Note

HyperIP : SRDF Application Note HyperIP : SRDF Application Note Introduction HyperIP is a Linux software application that quantifiably and measurably enhances large data movement over big bandwidth and long-haul IP networks. HyperIP

More information

RECOMMENDATION ITU-R BT.1720 *

RECOMMENDATION ITU-R BT.1720 * Rec. ITU-R BT.1720 1 RECOMMENDATION ITU-R BT.1720 * Quality of service ranking and measurement methods for digital video broadcasting services delivered over broadband Internet protocol networks (Question

More information

Response-Time Technology

Response-Time Technology Packeteer Technical White Paper Series Response-Time Technology May 2002 Packeteer, Inc. 10495 N. De Anza Blvd. Cupertino, CA 95014 408.873.4400 info@packeteer.com www.packeteer.com Company and product

More information

Data Communication & Computer Networks MCQ S

Data Communication & Computer Networks MCQ S Data Communication & Computer Networks MCQ S 1. The translates internet domain and host names to IP address. a) domain name system b) routing information protocol c) network time protocol d) internet relay

More information

CHAPTER 3 EFFECTIVE ADMISSION CONTROL MECHANISM IN WIRELESS MESH NETWORKS

CHAPTER 3 EFFECTIVE ADMISSION CONTROL MECHANISM IN WIRELESS MESH NETWORKS 28 CHAPTER 3 EFFECTIVE ADMISSION CONTROL MECHANISM IN WIRELESS MESH NETWORKS Introduction Measurement-based scheme, that constantly monitors the network, will incorporate the current network state in the

More information

Congestion Avoidance Overview

Congestion Avoidance Overview Congestion avoidance techniques monitor network traffic loads in an effort to anticipate and avoid congestion at common network bottlenecks. Congestion avoidance is achieved through packet dropping. Among

More information

Chapter 16 Networking

Chapter 16 Networking Chapter 16 Networking Outline 16.1 Introduction 16.2 Network Topology 16.3 Network Types 16.4 TCP/IP Protocol Stack 16.5 Application Layer 16.5.1 Hypertext Transfer Protocol (HTTP) 16.5.2 File Transfer

More information

Advanced Network Design

Advanced Network Design Advanced Network Design Organization Whoami, Book, Wikipedia www.cs.uchicago.edu/~nugent/cspp54015 Grading Homework/project: 60% Midterm: 15% Final: 20% Class participation: 5% Interdisciplinary Course

More information

Outline 9.2. TCP for 2.5G/3G wireless

Outline 9.2. TCP for 2.5G/3G wireless Transport layer 9.1 Outline Motivation, TCP-mechanisms Classical approaches (Indirect TCP, Snooping TCP, Mobile TCP) PEPs in general Additional optimizations (Fast retransmit/recovery, Transmission freezing,

More information

Technical Report. Computer Science Department. Operating Systems IMMD IV. Friedrich-Alexander-University Erlangen-Nürnberg, Germany

Technical Report. Computer Science Department. Operating Systems IMMD IV. Friedrich-Alexander-University Erlangen-Nürnberg, Germany Optimizing Latency of the HTTP Protocol Franz J. Hauck October 1994 TR-I4-94-23 Technical Report Computer Science Department Operating Systems IMMD IV Friedrich-Alexander-University Erlangen-Nürnberg,

More information

ALLOCATING RF SPECTRUM PARTITIONS IN A CBRS NETWORK

ALLOCATING RF SPECTRUM PARTITIONS IN A CBRS NETWORK Technical Disclosure Commons Defensive Publications Series September 19, 2017 ALLOCATING RF SPECTRUM PARTITIONS IN A CBRS NETWORK Yi Hsuan Follow this and additional works at: http://www.tdcommons.org/dpubs_series

More information

How to Choose a CDN. Improve Website Performance and User Experience. Imperva, Inc All Rights Reserved

How to Choose a CDN. Improve Website Performance and User Experience. Imperva, Inc All Rights Reserved How to Choose a CDN Improve Website Performance and User Experience Imperva, Inc. 2017 All Rights Reserved CONTENTS Introduction...3 How Does a CDN Work?...5 The Most Important Factors to Consider When

More information

PLEASE READ CAREFULLY BEFORE YOU START

PLEASE READ CAREFULLY BEFORE YOU START MIDTERM EXAMINATION #2 NETWORKING CONCEPTS 03-60-367-01 U N I V E R S I T Y O F W I N D S O R - S c h o o l o f C o m p u t e r S c i e n c e Fall 2011 Question Paper NOTE: Students may take this question

More information

CHAPTER 4 CROSS LAYER INTERACTION

CHAPTER 4 CROSS LAYER INTERACTION 38 CHAPTER 4 CROSS LAYER INTERACTION The cross layer interaction techniques used in the lower layers of the protocol stack, solve the hidden and exposed terminal problems of wireless and ad hoc networks.

More information

Performance Analysis of the Intertwined Effects between Network Layers for g Transmissions

Performance Analysis of the Intertwined Effects between Network Layers for g Transmissions Performance Analysis of the Intertwined Effects between Network Layers for 802.11g Transmissions Jon Gretarsson, Feng Li, Mingzhe Li, Ashish Samant, Huahui Wu, Mark Claypool and Robert Kinicki WPI Computer

More information

Cloudamize Agents FAQ

Cloudamize Agents FAQ Cloudamize Agents FAQ Cloudamize is a cloud infrastructure analytics platform that provides data analysis and recommendations to speed and simplify cloud migration and management. Our platform helps you

More information

6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1

6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1 6. Transport Layer 6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1 6.1 Internet Transport Layer Architecture The

More information

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 25, 2018

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 25, 2018 CMSC 417 Computer Networks Prof. Ashok K Agrawala 2018 Ashok Agrawala Message, Segment, Packet, and Frame host host HTTP HTTP message HTTP TCP TCP segment TCP router router IP IP packet IP IP packet IP

More information