top of page

Problem Statement

When the transmission queues at routers along a path are saturated with network traffic, a node transmitting data may experience a longer delay when transmitting. This may happen in times of peak usage. Some users may need an option to transmit data, specifically files over FTP, without a substantial delay caused by increased network traffic of other users. They may have critical things to attend to during those same peak hours of usage. Other users may not have critical needs for a network connection with a low delay. They may just want to be able to upload/ download files with delay less than what is typically available by default in that network.

Objective

We want to solve this problem by designing and implementing a service which provides QoS for subscribers. The purpose is to give users access to a paid-for service which will improve their QoS in a network where transmission queues of routers may be saturated with the packets of other users. A prioritized user shall be able to send files over FTP with less delay than that of an unprioritized user who is sending a file of the same size, at the same time, and under the same cross traffic. This will be done by changing how the TCP packets sent by the paid users will handled in the transmission queues. The packets of a privileged user shall be marked with TOS bits being marked for minimum delay and maximized throughput. Thus they will receive priority over those of an unprivileged user. The routers will recognize the marked packets and will give those priority so that the delay from the source node to the destination node will be shorter than the delay would have been if the packets did not come from a privileged source. This QoS will be implemented on a network with multiple nodes all sending cross traffic to a server simultaneously. The simulation will start out with small amounts of cross traffic which will be increased gradually over time. The QoS should provide a shorter delay to privileged users up to some extent of cross traffic but it is possible that at some level of cross traffic, the benefit of the QoS implementation will diminish.

Component Details

Platform for project: GENI

 

Project Areas: Quality of Service, Privileged user services, Kernel Programming, Queuing Disciplines

 

Major Components:
 

  • Source Nodes: These users may be either privileged users (Sub) who pay a subscription fee or unprivileged users (UP) who do not pay any fee. The users will be referenced as such throughout the document.
     

  • OpenFlow Switch (OFS): This will be referenced as “switch” throughout the paper and will be the only kind of switch referenced. Privileged and unprivileged users connect to this switch whenever requesting resources through the network. The switch knows whether a connected host is a subscriber or an unprivileged user statically. Depending on the type of user, the packets are transmitted to a QoS edge router over a certain physical link.
     

  • Prioritized Links: If the user requesting resources is a privileged user, then his packets are sent from the switch over the link which is connected to Interface 0 of the QoS edge router. If the user is a unprivileged user, then his packets are sent over the link which is connected to Interface 1 of the QoS edge router.
     

  • QoS Edge Router (QER): A QoS edge router connects the switch to the rest of the network and takes part in marking packets for this QoS implementation. The router knows to prioritize FTP data packets received through interface 0 and this is done by setting the TOS bits of the IP header of the packets. The QoS edge router does not increase the priority of the packets received through interface 1 and leaves the TOS bits as they are. These routers each have the queuing discipline pfifo_fast enabled so that they can make queuing prioritization based off of the TOS bits.
     

  • Set-back Router (SBR): This router sits right in front of the FTP server and all packets destined for the FTP server travel through this router first. Since the packets coming to this server may have been prioritized earlier by the QoS edge router by setting the TOS bits, this router sets the TOS bits back to what FTP is expecting so that they can successfully be received at the server.
     

  • Core Router (CR): A core router is any router that is not a QoS edge router or set-back router that is part of the path that a packet may take to get from a source to the destination. These routers each have the queuing discipline pfifo_fast enabled so that they can make queuing prioritization based off of the TOS bits in the IP headers of incoming packets.
     

  • iPerf Server (IS): This is a destination node that source nodes may transmit data to using iPerf. It’s purpose is to take part in cross-traffic flows of packets.
     

  • FTP Server (FS): This is a destination node which provides FTP services so that a source node may send files over FTP to this server.
     

  • Cross-Nodes (XN): These nodes exist purely to generate cross traffic over the network and transmit data created with iperf to the general server. These nodes do not send any traffic to the FTP server nor do they communicate with the other source nodes.

Purpose

Project under progress as a part of coursework for Internet Protocols (ECE/CSC 573), a graduate level course at the NC State University.

Param Vijay Dinkar
Ruthvik Mandava
Karthik Haria
Michael Ehmke

Project Team

bottom of page