A Discrete-Event Network Simulator
API
ThreeGppHttpClientServer

This traffic generator simulates web browsing traffic using the Hypertext Transfer Protocol (HTTP). More...

+ Collaboration diagram for ThreeGppHttpClientServer:

Classes

class  ns3::HttpHeader
 Header used by web browsing applications to transmit information about content type, content length and timestamps for delay statistics. More...
 
class  ns3::ThreeGppHttpClient
 Model application which simulates the traffic of a web browser. More...
 
class  ThreeGppHttpClientServerTestSuite
 A test class for running several system tests which validate the web browsing traffic model. More...
 
class  ns3::ThreeGppHttpHeader
 Header used by web browsing applications to transmit information about content type, content length and timestamps for delay statistics. More...
 
class  ThreeGppHttpObjectTestCase
 A test class which verifies that each HTTP object sent is also received the same size. More...
 
class  ns3::ThreeGppHttpServer
 Model application which simulates the traffic of a web server. More...
 
class  ns3::ThreeGppHttpServerHelper
 Helper to make it easier to instantiate an ThreeGppHttpServer on a set of nodes. More...
 
class  ns3::ThreeGppHttpServerTxBuffer
 
class  ns3::ThreeGppHttpVariables
 Container of various random variables to assist in generating web browsing traffic pattern. More...
 

Detailed Description

This traffic generator simulates web browsing traffic using the Hypertext Transfer Protocol (HTTP).

It consists of one or more ThreeGppHttpClient applications which connect to an ThreeGppHttpServer application. The client models a web browser which requests web pages to the server. The server is then responsible to serve the web pages as requested. Please refer to ThreeGppHttpClientHelper and ThreeGppHttpServerHelper for usage instructions.

Technically speaking, the client transmits request objects to demand a service from the server. Depending on the type of request received, the server transmits either:

A major portion of the traffic pattern is reading time, which does not generate any traffic. Because of this, one may need to simulate a good number of clients and/or sufficiently long simulation duration in order to generate any significant traffic in the system.

Many aspects of the traffic are randomly determined by ThreeGppHttpVariables. These characteristics are based on a legacy 3GPP specification. The description can be found in the following references: