DE102015111466B4 - Method for measuring rates at a measuring station - Google Patents

Method for measuring rates at a measuring station Download PDF

Info

Publication number
DE102015111466B4
DE102015111466B4 DE102015111466.6A DE102015111466A DE102015111466B4 DE 102015111466 B4 DE102015111466 B4 DE 102015111466B4 DE 102015111466 A DE102015111466 A DE 102015111466A DE 102015111466 B4 DE102015111466 B4 DE 102015111466B4
Authority
DE
Germany
Prior art keywords
level
activity value
value
user
rate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE102015111466.6A
Other languages
German (de)
Other versions
DE102015111466A1 (en
Inventor
Michael Menth
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Eberhard Karls Universitaet Tuebingen
Original Assignee
Eberhard Karls Universitaet Tuebingen
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Eberhard Karls Universitaet Tuebingen filed Critical Eberhard Karls Universitaet Tuebingen
Priority to DE102015111466.6A priority Critical patent/DE102015111466B4/en
Publication of DE102015111466A1 publication Critical patent/DE102015111466A1/en
Application granted granted Critical
Publication of DE102015111466B4 publication Critical patent/DE102015111466B4/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Verfahren zum Messen von Raten an einer Messstation (100, 400),- wobei an der Messstation (100, 400) eine Mehrzahl von Ereignissen eintreten,- wobei jedes Ereignis einem aus einer Anzahl von Benutzern zugeordnet ist,- wobei jedem Benutzer ein jeweiliger benutzerspezifischer Wertesatz zugeordnet ist, welcher zumindest einen Füllstand und eine Referenzrate aufweist,- wobei bei jedem Eintreten eines Ereignisses, das einem Benutzer zugeordnet ist, an der Messstation (100, 400) unter Verwendung des dem Benutzer zugeordneten Wertesatzes folgende Schritte ausgeführt werden:- Ermitteln eines Aktivitätswerts, welcher anzeigend ist für eine Abweichung einer dem Benutzer zugeordneten Rate von der Referenzrate, in Abhängigkeit von dem Füllstand, und- Verändern des Füllstands in Abhängigkeit von dem Aktivitätswert.A method of measuring rates at a metering station (100, 400), wherein a plurality of events occur at the metering station (100, 400), each of the events being assigned to one of a number of users, each user being assigned a respective user specific one Assigned value set, which has at least one level and a reference rate, - at each occurrence of an event that is assigned to a user, at the measuring station (100, 400) using the value assigned to the user, the following steps are performed: - Determining a An activity value indicative of a deviation of a user-assigned rate from the reference rate, as a function of the level, and -changing the level depending on the activity value.

Description

Hintergrund und Stand der TechnikBackground and state of the art

Die Erfindung betrifft ein Verfahren zum Messen von Raten an einer Messstation.The invention relates to a method for measuring rates at a measuring station.

Messstationen können unterschiedliche technische Einrichtungen sein, an welchen diverse Ereignisse stattfinden oder welche Ereignisse beobachten können. Beispielsweise kann es sich um Zähler, Netzwerkknoten, Computer oder andere Einheiten handeln. Ein Zähler kann beispielsweise Fahrzeuge zählen, welche auf einer Straße vorbeifahren. Ein Computer kann beispielsweise Anschläge einer angeschlossenen Tastatur aufnehmen. Eine Vorbeifahrt eines Fahrzeugs oder ein Anschlag auf der Tastatur wäre in diesem Beispielen ein Ereignis.Measuring stations can be different technical facilities, where various events take place or which events can observe. For example, they can be counters, network nodes, computers, or other devices. For example, a meter may count vehicles passing on a road. For example, a computer can record attacks from a connected keyboard. Passing a vehicle or an attack on the keyboard would be an event in this example.

In der elektronischen Kommunikation über ein Netzwerk werden häufig Daten übertragen. In vielen Fällen ist es dabei erforderlich, die Menge der übertragenen Daten zu kennen, und zwar auch benutzerspezifisch.Electronic communication over a network often transfers data. In many cases, it is necessary to know the amount of transmitted data, including user-specific.

In vielen Fällen soll nicht nur die Anzahl von Ereignissen gezählt, sondern auch eine Rate bestimmt werden, mit welcher solche Ereignisse auftreten.In many cases, not only the number of events should be counted but also a rate at which such events occur.

Gemäß dem Stand der Technik werden solche Raten typsicherweise unter Verwendung intervallbasierter Messverfahren ermittelt. Es wird beispielsweise gezählt, wie viele Fahrzeuge innerhalb eines Zeitraums von beispielsweise einer Stunde eine bestimmte Kreuzung passieren, oder es wird gezählt wie viele Anschläge auf der Tastatur pro Minute erfolgen.In the prior art, such rates are typically determined using interval-based measurement techniques. For example, it counts how many vehicles pass a certain intersection within a period of, for example, one hour, or it counts how many strokes on the keyboard occur per minute.

Daten werden zum Transport über Netzwerkknoten üblicherweise in Datenpakete zerlegt. Eine Rate kann in diesem Fall beispielsweise durch das Zählen von Datenpaketen innerhalb eines bestimmten Zeitraums, beispielsweise von einer Sekunde, erfolgen.Data is usually broken down into data packets for transport via network nodes. In this case, a rate can be achieved, for example, by counting data packets within a certain period of time, for example one second.

Datenpakete können dabei feste oder auch variable Längen aufweisen. Zum Transport solcher Datenpakete werden typischerweise Netzwerke verwendet, welche im Regelfall von einer Mehrzahl von Benutzern gleichzeitig genutzt werden. Mit anderen Worten überträgt das Netzwerk Datenpakete von mehreren Benutzern gleichzeitig, was auch bedeutet, dass typischerweise Mechanismen zum Zuordnen von Datenpaketen an jeweilige Benutzer vorhanden sind.Data packets can have fixed or variable lengths. To transport such data packets typically networks are used, which are usually used simultaneously by a plurality of users. In other words, the network transmits data packets from multiple users simultaneously, which also means that there are typically mechanisms for associating data packets with respective users.

Die aus dem Stand der Technik bekannten intervallbasierten Messverfahren weisen den typischen Nachteil auf, dass für sie ein Intervall festgesetzt werden muss, welches einem Zielkonflikt unterliegt. Wird das Intervall eher lang gewählt, dauert es auch immer entsprechend lange bis ein Wert für die jeweilige Rate zur Verfügung steht bzw. aktualisiert wird. Wenn das Intervall hingegen eher kurz gewählt wird, neigt die Ratenbestimmung zu starken Schwankungen, welche eine Auswertung erschweren. Zwar ist es grundsätzlich denkbar, bei der Verwendung langer Intervalle alte Messwerte zu speichern, um eine sofortige Aktualisierung bei jedem Ereignis zu ermöglichen, dies erfordert jedoch eine hohe Speicher- und Rechenkapazität.The interval-based measuring methods known from the prior art have the typical disadvantage that they must be set for an interval which is subject to a conflict of goals. If the interval is chosen to be rather long, it always takes a correspondingly long time until a value for the respective rate is available or is updated. On the other hand, if the interval is chosen to be rather short, the rate determination tends to fluctuate greatly, making evaluation more difficult. Although it is generally conceivable to store old readings when using long intervals in order to enable an immediate update at each event, this requires a high storage and computing capacity.

Das Dokument „BITAG: Real-time Network Management of Internet Congestion - Oktober 2013. S. 1-53 ― Firmenschrift“ offenbart Vorgehensweisen zur Allokation von Netzwerkressourcen auf kurzer Zeitskala um, unter anderem, eine Verstopfung des Netzwerks zu verwalten. Außerdem werden Auswirkungen auf Anwendungen und Benutzer diskutiert.The document "BITAG: Real-time Network Management of Internet Congestion - October 2013. p. 1-53 - Company Journal" discloses procedures for allocating network resources on a short time scale to, among other things, manage congestion of the network. In addition, effects on applications and users are discussed.

Aufgabe und LösungTask and solution

Es ist deshalb eine Aufgabe der Erfindung, ein Verfahren zum Messen von Raten an einer Messstation bereitzustellen, welches im Vergleich zum Stand der Technik alternativ ausgeführt ist, insbesondere den oben genannten Zielkonflikt vermeidet bzw. auch bei zügiger Aktualisierung übermäßige Schwingungen vermeidet.It is therefore an object of the invention to provide a method for measuring rates at a measuring station, which is carried out as an alternative to the prior art, in particular avoids the above-mentioned conflict of goals or avoids excessive vibrations even with rapid updating.

Dies wird erfindungsgemäß durch ein Verfahren nach Anspruch 1 erreicht. Bevorzugte Ausgestaltungen können beispielsweise den Unteransprüchen entnommen werden. Der Inhalt der Ansprüche wird durch ausdrückliche Inbezugnahme zum Inhalt der Beschreibung gemacht.This is achieved according to the invention by a method according to claim 1. Preferred embodiments can be taken for example from the subclaims. The content of the claims is made by express reference to the content of the description.

Die Erfindung betrifft ein Verfahren zum Messen von Raten an einer Messstation. An der Messstation treten eine Mehrzahl von Ereignissen ein. Jedes Ereignis ist einem aus einer Anzahl von Benutzern zugeordnet ist.The invention relates to a method for measuring rates at a measuring station. At the measuring station, a plurality of events occur. Each event is assigned to one of a number of users.

Jedem Benutzer ist ein jeweiliger benutzerspezifischer Wertesatz zugeordnet, welcher zumindest einen Füllstand und eine Referenzrate aufweist. Each user is assigned a respective user-specific value set which has at least one fill level and a reference rate.

Bei jedem Eintreten eines Ereignisses, das einem Benutzer zugeordnet ist, an der Messstation werden unter Verwendung des dem Benutzer zugeordneten Wertesatzes folgende Schritte ausgeführt:

  • - Ermitteln eines Aktivitätswerts, welcher anzeigend ist für eine Abweichung einer dem Benutzer zugeordneten Rate von der Referenzrate, in Abhängigkeit von dem Füllstand, und
  • - Verändern des Füllstands in Abhängigkeit von dem Aktivitätswert.
Each time an event associated with a user occurs at the metering station, the following steps are performed using the value set associated with the user:
  • Determining an activity value indicative of a deviation of a rate associated with the user from the reference rate, as a function of the level, and
  • - Changing the level depending on the activity value.

Das erfindungsgemäße Verfahren erlaubt die Bestimmung einer Rate, ohne Intervalle abwarten zu müssen. Bei jedem einzelnen Eintreten eines Ereignisses, und auch dazwischen, kann jeweils ein Aktivitätswert berechnet werden, welcher anzeigend ist für die Rate. Hierzu ist in einer einfachen Ausführung lediglich die Kenntnis des Füllstands erforderlich. Dabei kann typischerweise davon ausgegangen werden, dass ein größerer Aktivitätswert auch einer größeren Rate entspricht. Um die Rate in bestimmter Art und Weise zu messen kann auch eine Funktion, eine Zuordnung oder ein Algorithmus definiert werden, um aus dem ermittelten Aktivitätswert die Rate zu berechnen.The inventive method allows the determination of a rate without having to wait for intervals. At each occurrence of an event, and also in between, an activity value can be calculated, which is indicative of the rate. For this purpose, in a simple embodiment, only the knowledge of the level is required. It can typically be assumed that a larger activity value also corresponds to a larger rate. In order to measure the rate in a particular manner, a function, assignment or algorithm may also be defined to calculate the rate from the determined activity value.

Das Verfahren kann auch in der Messstation und/oder mittels der Messstation und/oder von der Messstation ausgeführt werden.The method can also be carried out in the measuring station and / or by means of the measuring station and / or by the measuring station.

Bei der Rate handelt es sich dabei vorzugsweise um eine aktuelle Rate, welche also beispielsweise innerhalb eines bestimmten Zeitfensters, insbesondere eines kleinen Zeitfensters, ermittelt werden kann. Der Aktivitätswert gibt dabei insbesondere grundsätzlich an, wie sehr die Rate die Referenzrate übersteigt. Insbesondere beim Abstellen auf den Aktivitätswert kann auch von einem Verfahren zum Messen eines Aktivitätswerts gesprochen werden. Bei Datenpaketen kann die Rate beispielsweise eine Senderate sein. Es sei verstanden, dass sich die Senderate typischerweise sowohl auf einen Upload wie auch einen Download des Benutzers beziehen kann. Es können sowohl Upload wie auch Download getrennt voneinander oder auch zusammen miteinander behandelt werden. Bei vorbeikommenden Fahrzeugen kann die Rate beispielsweise die Anzahl der Fahrzeuge pro Zeiteinheit angeben, wobei an dieser Stelle nochmals erwähnt sei, dass die Ermittlung dieser Rate bei Verwendung des erfindungsgemäßen Verfahrens ohne eine intervallbasierte Messung auskommt, was bei Verfahren nach dem Stand der Technik nicht möglich ist.The rate is preferably a current rate, which can therefore be determined, for example, within a specific time window, in particular a small time window. The activity value indicates, in principle, how much the rate exceeds the reference rate. In particular, when switching to the activity value can also be spoken by a method for measuring an activity value. For example, for data packets, the rate may be a transmission rate. It should be understood that the sending rate may typically refer to both an upload and a download of the user. Both upload and download can be handled separately or together with each other. For passing vehicles, the rate may indicate, for example, the number of vehicles per unit of time, it being again mentioned here that the determination of this rate when using the method according to the invention does not require an interval-based measurement, which is not possible with methods according to the prior art ,

Rate und Aktivitätswert können über eine funktionale Beziehung, beispielsweise eine Funktion oder einen Algorithmus, miteinander in Beziehung stehen. Beispielsweise kann die Rate basierend auf dem Aktivitätswert und/oder in Abhängigkeit von dem Aktivitätswert ermittelt werden. In einem einfachen Fall können Rate und Aktivitätswert auch identisch sein und/oder die Rate kann dadurch erhalten werden, dass an den Aktivitätswert eine Einheit angehängt wird.Rate and activity value may be related through a functional relationship, such as a function or algorithm. For example, the rate may be determined based on the activity value and / or the activity value. In a simple case, rate and activity value may also be identical and / or the rate may be obtained by appending a unit to the activity value.

Das Verfahren kann beispielsweise einen weiteren Schritt des Ermittelns oder Berechnens der Rate basierend auf dem Aktivitätswert und/oder in Abhängigkeit von dem Aktivitätswert aufweisen.For example, the method may include a further step of determining or calculating the rate based on the activity value and / or in dependence on the activity value.

Die Referenzrate kann eine für das jeweilige Ereignis niedrigste erwartete Rate, beispielsweise eine erwartete untere Grenze der Rate, sein. Relativ zu dieser Rate wird die Aktivität bzw. die Rate von Ereignissen, insbesondere bezogen auf die jeweiligen Benutzer, ermittelt. Die Referenzrate kann, insbesondere in Ausnahmefällen, auch Null sein. Es sei erwähnt, dass das Messen kleiner Raten typischerweise unter Verwendung entsprechend kleiner Referenzraten erfolgen kann, was die Genauigkeit verbessert.The reference rate may be a lowest expected rate for the particular event, such as an expected lower rate limit. Relative to this rate, the activity or the rate of events, in particular related to the respective users, is determined. The reference rate may also be zero, especially in exceptional cases. It should be noted that measuring small rates typically can be done using correspondingly small reference rates, which improves accuracy.

Es sei erwähnt, dass unter dem Begriff einer „Anzahl“ grundsätzlich eines oder mehrere der erwähnten Elemente zu verstehen ist. Eine Anzahl von Benutzern bezieht sich also auf einen Benutzer oder mehrere Benutzer. Es ist somit auch der Fall abgedeckt, in dem eine Zuordnung zu unterschiedlichen Benutzern gar nicht erfolgt.It should be noted that the term "number" basically means one or more of the elements mentioned. A number of users thus refers to one or more users. It is thus also covered the case in which an assignment to different users does not take place.

Der Begriff eines Benutzers ist im Rahmen der vorliegenden Anmeldung sehr weit zu verstehen. Ereignisse können beispielsweise unterschiedlichen Benutzern in Form von Personen, Unternehmen, Computern, Maschinen, Fahrzeugen, Staaten oder anderen Einheiten zugeordnet werden. Typischerweise hat dabei das Ereignis einen gewissen Zusammenhang mit dieser Einheit. Beispielsweise kann beim Zählen von Lastkraftwagen jeder Lastkraftwagen einer jeweiligen Spedition zugeordnet sein, wobei die Speditionen die Benutzer sind.The term "user" is to be understood very broadly in the context of the present application. For example, events may be associated with different users in the form of persons, businesses, computers, machines, vehicles, states, or other entities. Typically, the event has some connection with this unit. For example, when counting trucks, each truck may be associated with a respective shipping company, with the carriers being the users.

Auch der Begriff der Messstation ist vorliegend weit zu fassen. Es handelt sich dabei typischerweise um eine technische Einheit, welche dazu in der Lage ist, das jeweilige Ereignis mit technischen Mitteln zu erfassen. Damit sind insbesondere Fälle ausgeschlossen, in welchen das erfindungsgemäße Verfahren rein manuell durchgeführt wird. Es sei jedoch verstanden, dass auch eine Interaktion zwischen einem Menschen und einer technischen Einrichtung beim Erfassen von Ereignissen nicht aus dem Schutzbereich der Ansprüche herausführt. The term measuring station is also to be understood broadly. This is typically a technical unit which is capable of detecting the respective event by technical means. This excludes in particular cases in which the method according to the invention is carried out purely manually. However, it should be understood that an interaction between a human and a technical device when detecting events does not lead out of the scope of the claims.

Bei dem Füllstand handelt es sich insbesondere um einen Wert, welcher typischerweise erheblich häufiger verändert wird als die Referenzrate. Während die Referenzrate typischerweise nur selten verändert wird, im Fall einer Datenübertragung beispielsweise wenn ein Benutzer einen anderen Tarif gebucht hat, kann ein Füllstand bereits nach kurzen Zeitabschnitten und/oder bei jedem Ereignis wie beispielsweise beim Vorbeifahren eines Fahrzeugs oder beim Eintreffen eines Datenpakets verändert werden.In particular, the level is a value which is typically changed considerably more frequently than the reference rate. While the reference rate is typically only rarely changed, in the case of a data transfer, for example, when a user has booked a different rate, a level can be changed already after short periods of time and / or at each event such as when driving past a vehicle or when a data packet arrives.

Bei dem Füllstand handelt es sich bevorzugt um eine Zahl, welche sowohl positive wie auch negative Werte annehmen kann.The fill level is preferably a number which can assume both positive and negative values.

Der Füllstand erlaubt insbesondere eine dynamische Ermittlung des Aktivitätswerts, ohne dass auf eine intervallbasierte Ermittlung der Aktivität bzw. der Rate zurückgegriffen werden muss. Dies hat insbesondere den Vorteil, dass nicht erst bis zum Ende eines jeweiligen definierten Intervalls gewartet werden muss, bis ein neuer Aktivitätswert bereitsteht. Vielmehr kann bei jedem Eintreffen eines Datenpakets der Aktivitätswert sofort und ohne Zeitverzögerung mit einfachen Mitteln berechnet werden. Bevorzugte Implementierungen sind nachfolgend angegeben.In particular, the level allows a dynamic determination of the activity value, without having to resort to an interval-based determination of the activity or the rate. This has the particular advantage that you do not have to wait until the end of each defined interval until a new activity value is available. Rather, with each arrival of a data packet, the activity value can be calculated immediately and without time delay with simple means. Preferred implementations are given below.

Es sei auch erwähnt, dass durch die Verwendung eines Füllstands das typische Abwägungsproblem bei intervallbasierten Aktivitäts- oder Ratenbestimmungen umgangen werden kann, welches darin besteht, dass eine hohe Genauigkeit nur mit langen Intervallen zu erhalten ist, wohingegen die langen Intervalle zu dem eben beschriebenen Problem einer späten Berechnung führen.It should also be mentioned that the use of a fill level can circumvent the typical trade-off problem with interval-based activity or rate determinations, which is that high accuracy can only be obtained with long intervals, whereas the long intervals add to the problem just described lead to late calculation.

Es sei erwähnt, dass das Konzept des Füllstands generalisiert werden kann. Der Füllstand kann relativ zu einem Referenzfüllstand angegeben werden. In einer typischen Implementierung hat der Referenzfüllstand den Wert null. Gemäß einer ersten Variante gilt der Füllstand als positiv, wenn der Füllstand größer als der Referenzfüllstand ist. Gemäß einer zweiten Variante gilt der Füllstand als positiv, wenn der Füllstand kleiner als der Referenzfüllstand ist. In einer typischen Implementierung beträgt der Referenzfüllstand null und es wird die erste Variante verwendet. In diesem Fall gibt also ein positiver Wert des Füllstands einen positiven Füllstand an. Die hier gegebene Generalisierung soll insbesondere darauf hinweisen, dass das grundsätzliche Konzept des Füllstands unterschiedlich implementiert werden kann, wobei beispielsweise der Wert an dem Referenzfüllstand gespiegelt werden kann und durch Wahl eines nicht trivialen, also von null verschiedenen Referenzfüllstands ein Offset eingefügt werden kann. Aus Gründen der Leserlichkeit wurde darauf verzichtet, diese Generalisierung in die Ansprüche dieser Anmeldung mit einzupflegen. Es sei jedoch explizit darauf hingewiesen, dass bei allen Bezugnahmen auf einen Füllstand, insbesondere auf einen positiven oder negativen Füllstand, die Generalisierung angewendet werden kann und entsprechende veränderte Implementierungen nicht aus dem Schutzbereich der jeweiligen Ansprüche herausführen.It should be noted that the concept of level can be generalized. The level can be specified relative to a reference level. In a typical implementation, the reference level is zero. According to a first variant, the level is considered positive when the level is greater than the reference level. According to a second variant, the level is considered positive when the level is less than the reference level. In a typical implementation, the reference level is zero and the first variant is used. In this case, a positive value of the level indicates a positive level. In particular, the generalization given here should indicate that the basic concept of the fill level can be implemented differently, wherein, for example, the value at the reference fill level can be mirrored and an offset can be inserted by selecting a non-trivial, ie non-zero, reference fill level. For the sake of legibility has been omitted to incorporate this generalization in the claims of this application with. However, it should be explicitly pointed out that in all references to a level, in particular to a positive or negative level, the generalization can be applied and corresponding modified implementations do not lead out of the scope of the respective claims.

Bevorzugt wird der Aktivitätswert numerisch angegeben. Er wird, zumindest betragsmäßig, bevorzugt umso größer ermittelt, je höher die Rate ist und/oder je mehr die Rate die Referenzrate des Benutzers übersteigt. Hierzu kann auch der Unterschied zwischen der Rate und der Referenzrate sowohl absolut wie auch relativ oder auch durch Spezifizierung einer sonstigen Funktion, welche beispielsweise auf einem derartigen absoluten oder relativen Unterschied basieren kann, angegeben werden.The activity value is preferably specified numerically. It is determined, at least in terms of amount, preferably the greater, the higher the rate and / or the more the rate exceeds the reference rate of the user. For this purpose, the difference between the rate and the reference rate both absolute and relative or by specifying another function, which may be based for example on such an absolute or relative difference, can be given.

Es sei erwähnt, dass in dieser Anmeldung an mehreren Stellen angegeben wird, dass ein Wert „zumindest betragsmäßig“ eine Bedingung erfüllt oder erfüllen soll. Es sei verstanden, dass dies deshalb erfolgt, um der Möglichkeit Rechnung zu tragen, dass der entsprechende Wert - wie beispielsweise der gerade erwähnte Aktivitätswert - grundsätzlich sowohl positiv wie auch negativ sein kann bzw. im Vergleich zu einer Implementierung, bei welcher positive Werte einen bestimmten Zustand anzeigen, auch eine Implementierung mit entsprechenden negativen Werten möglich ist. Im Fall von negativen Werten würde sich dann die angegebene Bedingung oder der angegebene Zustand des Werts typischerweise auf den Absolutbetrag beziehen. Solche Implementierungen sind typischerweise gleichwertig. Es sei jedoch auch verstanden, dass die Offenbarung dieser Anmeldung auch umfasst, dass alle Wortfolgen „zumindest betragsmäßig“ aus den Ansprüchen und/oder der Beschreibung entfernt werden.It should be noted that this application states in several places that a value "at least in terms of amount" should fulfill or fulfill a condition. It should be understood, therefore, that this is done to account for the possibility that the corresponding value - such as the activity value just mentioned - may in principle be both positive and negative, or in comparison to an implementation in which positive values determine a particular one Display state, even an implementation with corresponding negative values is possible. In the case of negative values, the specified condition or condition of the value would then typically refer to the absolute value. Such implementations are typically equivalent. However, it should also be understood that the disclosure of this application also includes removing all word sequences "at least in amount" from the claims and / or description.

Es sei auch verstanden, dass bei den hier verwendeten Werten typischerweise auch ein Offset vorgesehen sein kann, so dass der entsprechende Wert beispielsweise nicht von null aus zählt, sondern von einer anderen positiven oder negativen Zahl aus. Auch solche Implementierungen sind typischerweise gleichwertig. It should also be understood that typically an offset may also be provided at the values used herein, such that the corresponding value does not count from zero, for example, but from another positive or negative number. Even such implementations are typically equivalent.

Gemäß einer Ausführung wird bei jedem Schritt des Ermittelns eines Aktivitätswerts zunächst der Füllstand des dem Benutzer zugeordneten Wertesatzes aktualisiert. Alternativ oder zusätzlich kann der Füllstand auch kontinuierlich, in festgelegten Zeitabständen oder nach einem festgelegten Schema aktualisiert werden. Der Füllstand kann insbesondere in Abhängigkeit von der Referenzrate aktualisiert werden.According to one embodiment, at each step of determining an activity value, first the level of the value set associated with the user is updated. Alternatively or additionally, the level can also be updated continuously, at fixed time intervals or according to a defined scheme. The fill level can in particular be updated as a function of the reference rate.

Dies entspricht zumindest in etwa einer aus der Datenübertragung bzw. Netzwerktechnologie bekannten Token-Bucket-Implementierung, welche häufig eingesetzt wird, um eine Aktivität eines Benutzers in Bezug auf Datenpakete zu steuern bzw. zu begrenzen. Der Füllstand ist dabei auf einen implementierten Bucket, also einen Eimer bzw. einen virtuellen Eimer, bezogen. Typischerweise wird der Füllstand umso mehr bzw. umso schneller erhöht, je größer die Referenzrate ist. Der Füllstand entspricht typischerweise der Anzahl an „tokens“, welche für die Weiterleitung von Datenpaketen im Eimer zur Verfügung stehen. Bei einer üblichen Token-Bucket-Implementierung ist vorgesehen, dass jedes empfangene und weitergeleitete Datenpaket den Füllstand verringert, beispielsweise um einen Wert von eins. Dies kann auch so interpretiert werden, dass sich jedes Datenpaket ein token oder auch ein token pro byte Paketlänge oder pro Einheit einer anderen Eigenschaft des Pakets aus dem Eimer herausnimmt. Anders ausgedrückt können nur so viele Datenpakete eines bestimmten Benutzers weitergeleitet werden, wie durch den Füllstand bzw. dessen Aktualisierung anhand der Referenzrate vorgegeben ist. Wie der Erfinder herausgefunden hat, kann eine abgeänderte bzw. angepasste Version einer Token-Bucket-Implementierung dazu verwendet werden, um im Rahmen des hierin beschriebenen Verfahrens die Rate von nahezu beliebigen Ereignissen zu bestimmen bzw. einen dazu korrespondierenden Aktivitätswert zu bestimmen. Dies hat sich für zahlreiche Anwendungsfälle als vorteilhaft erwiesen.This corresponds at least approximately to a token-bucket implementation known from data transmission or network technology, which is frequently used to control or limit a user's activity with regard to data packets. The fill level is based on an implemented bucket, ie a bucket or a virtual bucket. Typically, the higher the reference rate, the faster or faster the fill level increases. The level typically corresponds to the number of "tokens" that are available for forwarding data packets in the bucket. A typical token-bucket implementation provides that each received and forwarded data packet reduces the level, for example, by one. This can also be interpreted as meaning that each data packet extracts one token or token per byte packet length or per unit of another property of the packet from the bucket. In other words, only so many data packets of a particular user can be forwarded, as determined by the level or its update based on the reference rate. As the inventor has found, a modified version of a token-bucket implementation can be used to determine the rate of almost any event or to determine a corresponding activity value in the context of the method described herein. This has proved to be advantageous for many applications.

Es sei erwähnt, dass unter dem Begriff einer Aktualisierung hierin typischerweise eine Änderung des Füllstands aufgrund Füllung mit der Referenzrate im Zeitverlauf verstanden wird. Dies grenzt sich insbesondere gegen andere Änderungen, beispielsweise basierend auf einem ermittelten Aktivitätswert, ab.It should be noted that the term update herein typically refers to a change in level due to filling with the reference rate over time. This is different in particular from other changes, for example based on a determined activity value.

Gemäß einer bevorzugten Ausführung wird beim Schritt des Aktualisierens des Füllstands ein gespeicherter früherer Füllstand, welcher einem bereits vergangenen Zeitpunkt zugeordnet ist, um das Produkt aus der Referenzrate und einer Zeitdifferenz zum vergangenen Zeitpunkt erhöht. Damit kann der Füllstand in einfacher Weise aktualisiert werden, wobei insbesondere die zwischen dem vergangenen Zeitpunkt und dem jetzigen Zeitpunkt aufgelaufenen Tokens berücksichtigt werden, d.h. dass der Füllstand um einen entsprechenden Wert erhöht wird.In a preferred embodiment, in the step of updating the level, a stored previous level associated with an already past time is increased by the product of the reference rate and a time difference from the past time. Thus, the level can be easily updated, taking into account, in particular, the token accumulated between the past time and the present time, i. that the level is increased by a corresponding value.

Gemäß einer Ausführung weist jeder benutzerspezifische Wertesatz einen maximalen Füllstand auf, wobei der Füllstand nicht über den jeweiligen maximalen Füllstand erhöht wird. Dies vermeidet ein endloses Anwachsen des Füllstands, insbesondere in Zeiten, in welchen wenig oder keine Aktivität des Benutzers vorhanden ist. Der Füllstand kann insbesondere auch in einer typischen Token-Bucket-Implementierung in der Datenübertragung angeben, wie viele Datenpakete kurzfristig im Rahmen eines Bursts mit einer Rate über der Referenzrate gesendet werden können.According to one embodiment, each user-specific value set has a maximum fill level, wherein the fill level is not increased above the respective maximum fill level. This avoids an endless increase in level, especially at times when there is little or no user activity. In particular, in a typical token-bucket implementation in data transmission, the level can also indicate how many data packets can be sent in the short term as part of a burst at a rate above the reference rate.

Bevorzugt wird bei jedem Schritt des Ermittelns eines Aktivitätswerts der Aktivitätswert in Abhängigkeit von dem Füllstand nach dessen Aktualisierung ermittelt. Anders ausgedrückt wird der Füllstand erst aktualisiert, bevor der Aktivitätswert ermittelt wird. Damit wird der Aktivitätswert basierend auf einem aktuellen Füllstand ermittelt.Preferably, at each step of determining an activity value, the activity value is determined as a function of the level after its update. In other words, the level will be updated before the activity value is determined. This determines the activity value based on a current fill level.

Bei jedem Schritt des Ermittelns eines Aktivitätswerts wird der Füllstand vorzugsweise in Abhängigkeit von dem ermittelten Aktivitätswert verändert. Insbesondere kann er dabei verringert werden. Dies kann im Fall von Datenpaketen beispielsweise auch nach jedem Byte oder nach jeder anderen definierten Einheit erfolgen. Dies entspricht einer Modifikation einer Token-Bucket-Implementierung, und zwar insbesondere dahingehend, dass bei einem Ereignis wie beispielsweise beim Eintreffen eines Datenpakets nicht wie bei einer reinen Token-Bucket-Implementierung der Füllstand um einen konstanten Betrag, sondern vielmehr um einen variablen Betrag verändert wird. Somit dient der Aktivitätswert nicht nur dazu, über die Aktivität des Benutzers zu informieren, sondern beeinflusst auch den Betrag der Füllstandsänderung.At each step of determining an activity value, the level is preferably changed in dependence on the determined activity value. In particular, it can be reduced thereby. In the case of data packets, for example, this can also be done after every byte or after every other defined unit. This corresponds to a modification of a token-bucket implementation, in particular to the effect that, in the case of an event such as the arrival of a data packet, the fill level does not change by a constant amount, as in the case of a pure token-bucket implementation, but rather by a variable amount becomes. Thus, the activity value not only serves to inform about the activity of the user, but also affects the amount of the level change.

Bevorzugt wird der Füllstand umso weniger verändert, je größer der Aktivitätswert, zumindest betragsmäßig, ist. Damit kann erreicht werden, dass sich Aktivitätswert und Füllstand jeweiligen Grenzwerten annähern, wie weiter unten näher beschrieben werden wird.Preferably, the level is changed less, the greater the activity value, at least in terms of amount. It can thus be achieved that the activity value and level approach respective limit values, as will be described in more detail below.

Der Füllstand kann auch umso mehr verändert werden, je größer ein dem Ereignis zugeordnetes Relevanzmaß ist. Damit können Ereignisse unterschiedlich gewichtet werden. Bei Lastkraftwagen kann beispielsweise das Gewicht der transportierten Nutzlast als Relevanzmaß verwendet werden. Bei Datenpaketen kann die Länge des Datenpakets als Relevanzmaß verwendet werden. Durch das Relevanzmaß kann der Tatsache Rechnung getragen wird, dass unterschiedliche Ereignisse zu unterschiedlichen Belastungen oder anderen Wirkungen führen können. Beispielsweise kann ein schwerer beladener Lastkraftwagen zu einer stärkeren Beanspruchung der Straße oder zu einem höheren Gewinn der Spedition führen. Ein längeres Datenpaket führt typischerweise auch zu einer höheren Belastung des Netzwerks Es sei des Weiteren erwähnt, dass der Füllstand grundsätzlich auch erhöht werden kann, und zwar auch außerhalb der bereits weiter oben beschriebenen Aktualisierung. Insbesondere kann beispielsweise bei einem besonders niedrigen Aktivitätswert bzw. bei einer besonders niedrigen Aktivität des Benutzers der Füllstand erhöht werden. Damit kann beispielsweise ein ressourcenschonendes Verhalten gewürdigt werden. The level can also be changed the more, the greater a relevance measure assigned to the event. This allows events to be weighted differently. In the case of trucks, for example, the weight of the transported payload can be used as relevance measure. For data packets, the length of the data packet can be used as relevance measure. The relevance measure takes into account the fact that different events can lead to different burdens or other effects. For example, a heavy loaded truck can lead to a heavier road load or to a higher profit of the freight forwarder. A longer data packet typically also leads to a higher load on the network. It should also be mentioned that the level can in principle also be increased, even outside the updating described above. In particular, for example, with a particularly low activity value or with a particularly low user activity, the fill level can be increased. Thus, for example, a resource-saving behavior can be appreciated.

Beim Schritt des Verringerns des Füllstands kann der Füllstand insbesondere um einen Wert verringert werden, welcher durch die Division

  • - eines dem Ereignis zugeordneten Relevanzmaßes durch
  • - die Zahl 2 oder eine andere positive Zahl potenziert mit dem Aktivitätswert ermittelt wird.
In the step of reducing the level, the level can be reduced, in particular, by a value which is determined by the division
  • - a relevance measure assigned to the event
  • - the number 2 or any other positive number is raised to the power value.

Als Formel dargestellt kann dies folgendermaßen implementiert werden: F = F L 2 A

Figure DE102015111466B4_0001
Represented as a formula, this can be implemented as follows: F = F - L 2 - A
Figure DE102015111466B4_0001

Dabei bedeuten:

F:
Füllstand
L:
Relevanzmaß
A:
Aktivitätswert.
Where:
F:
level
L:
relevancy
A:
Activity value.

Ein derartiges Vorgehen hat sich bei Versuchen des Erfinders als besonders vorteilhaft erwiesen. Wie weiter unten gezeigt wird, kann damit insbesondere eine Aktivität mittels des Füllstands gemessen werden, welche zumindest im stationären Zustand einem Zweierlogarithmus aus dem Verhältnis von Rate zu Referenzrate entspricht.Such a procedure has proved to be particularly advantageous in experiments by the inventor. As will be shown below, it is thus possible to measure, in particular, an activity by means of the fill level which, at least in the steady state, corresponds to a two-logarithm of the ratio of rate to reference rate.

Bevorzugt wird beim Schritt des Ermittelns eines Aktivitätswerts ein Aktivitätswert in Höhe eines Ausgangsaktivitätswerts ermittelt, wenn der Füllstand einen nichtnegativen Wert aufweist. Insbesondere kann der Ausgangsaktivitätswert null sein. Damit wird angezeigt, dass der Füllstand null oder positiv ist und somit keine erhöhte Aktivität des Benutzers vorliegt. Der Ausgangsaktivitätswert kann auch einen anderen Wert als Null aufweisen, beispielsweise einen positiven oder negativen Wert, was einem Offset des Aktivitätswerts entspricht.Preferably, in the step of determining an activity value, an activity value equal to an output activity value is determined when the level has a non-negative value. In particular, the output activity value may be zero. This indicates that the level is zero or positive and thus there is no increased user activity. The output activity value may also have a value other than zero, for example a positive or negative value, which corresponds to an offset of the activity value.

Es kann auch beim Schritt des Ermittelns eines Aktivitätswerts ein negativer Aktivitätswert ermittelt werden, wenn der Füllstand einen nichtnegativen Wert aufweist. Damit kann beispielsweise sogar eine Belohnung für das ressourcenschonende Verhalten eines Benutzers vorgesehen werden, da ein nichtnegativer Wert des Füllstands auf eine besonders geringe Nutzung durch einen Benutzer hinweist.Also, in the step of determining an activity value, a negative activity value may be determined when the level has a non-negative value. Thus, for example, even a reward for the resource-saving behavior of a user can be provided, since a non-negative value of the level indicates a particularly low usage by a user.

Beim Schritt des Ermittelns eines Aktivitätswerts kann der Aktivitätswert bevorzugt derart ermittelt werden, dass bei einem negativen Füllstand der Aktivitätswert umso größer wird, je größer ein Absolutbetrag des Füllstands ist. Der Aktivitätswert kann auch umso kleiner werden, je größer die Referenzrate ist. Damit wird erreicht, dass der Aktivitätswert deutlich anzeigt, ob und inwieweit der Benutzer mehr Ressourcen in Anspruch nimmt als ihm aufgrund seiner Referenzrate eigentlich zustehen. Im Fall eines positiven Aktivitätswerts liegt bei typischen Implementierungen ein negativer Füllstand vor, so dass ein größerer Absolutbetrag typischerweise einem negativeren Füllstand entspricht.In the step of determining an activity value, the activity value may preferably be determined in such a way that, in the case of a negative fill level, the greater the absolute value of the fill level, the greater the activity value becomes. The activity value can also become smaller, the larger the reference rate. This ensures that the activity value clearly indicates whether and to what extent the user uses more resources than he actually owes due to his reference rate. In the case of a positive activity value, typical implementations have a negative fill level so that a larger absolute level typically corresponds to a more negative fill level.

Gemäß einer bevorzugten Ausführung ist vorgesehen, dass der Aktivitätswert zumindest betragsmäßig umso größer ermittelt wird, je mehr die Rate des Benutzers die Referenzrate übersteigt.According to a preferred embodiment, it is provided that the activity value is determined to be greater, at least in absolute terms, the more the user's rate exceeds the reference rate.

Außerdem ist bevorzugt vorgesehen, dass beim Schritt des Ermittelns eines Aktivitätswerts der Aktivitätswert derart ermittelt wird, dass bei einem negativen Füllstand der Aktivitätswert umso kleiner wird, je größer die Referenzrate ist. In addition, it is preferably provided that in the step of determining an activity value, the activity value is determined in such a way that, in the case of a negative fill level, the activity value decreases the greater the reference rate.

Beim Schritt des Ermittelns eines Aktivitätswerts wird der Aktivitätswert bevorzugt derart ermittelt, dass bei einem negativen Füllstand der Aktivitätswert durch Division eines Absolutbetrags des Füllstands zumindest durch die Referenzrate ermittelt wird. Dies kann formelmäßig folgendermaßen dargestellt werden: A = F R r

Figure DE102015111466B4_0002
In the step of determining an activity value, the activity value is preferably determined such that, in the case of a negative fill level, the activity value is determined by dividing an absolute value of the fill level by at least the reference rate. This can be represented formulaically as follows: A = - F R r
Figure DE102015111466B4_0002

Dabei bedeutet:

Rr:
Referenzrate.
Where:
R r :
Reference rate.

Jeder benutzerspezifische Wertesatz kann ferner ein Trägheitsmaß aufweisen. Bei jedem Ermitteln eines Aktivitätswerts kann der Aktivitätswert dabei zumindest betragsmäßig umso kleiner ermittelt werden, je größer das Trägheitsmaß, zumindest betragsmäßig, ist. Mittels eines solchen Trägheitsmaßes kann das zeitliche Ansprechverhalten der Aktivitätswertsbestimmung variiert werden. Insbesondere kann ein großes Trägheitsmaß, d.h. ein hoher Wert des Trägheitsmaßes, dazu führen, dass der Aktivitätswert auf eine Vergrößerung oder Verringerung der Rate nur verhältnismäßig langsam reagiert. Damit kann eine gewisse zeitliche Glättung erreicht werden.Each user-specific set of values may further comprise an inertial measure. At each determination of an activity value, the activity value can be determined to be the smaller the greater the amount of inertia, at least in terms of magnitude, at least in absolute terms. By means of such an inertial measure, the temporal response of the activity value determination can be varied. In particular, a large amount of inertia, i. a high value of the inertia measure, cause the activity value to react only relatively slowly to an increase or decrease in the rate. Thus, a certain temporal smoothing can be achieved.

Es sei erwähnt, dass das Trägheitsmaß sich hier insbesondere auf das gerade beschriebene Vorgehen zum Ermitteln einer Aktivität, also insbesondere das intervalllose Ermitteln einer Aktivität, bezieht. Bei aus dem Stand der Technik bekannten, insbesondere intervallbasierten Verfahren zur Bestimmung der Aktivität kann das Trägheitsmaß beispielsweise einer Intervalllänge entsprechen, würde aber in einem solchen Fall typischerweise nicht zur Berechnung der Aktivität herangezogen werden. Um besonders kleine Raten zu messen können vorzugsweise hohe Trägheitsmaße verwendet werden.It should be mentioned that the inertial measure here refers in particular to the procedure just described for determining an activity, that is to say in particular the interval-free determination of an activity. In the case of prior art, in particular interval-based, methods for determining the activity, the inertial measure may correspond, for example, to an interval length, but would typically not be used to calculate the activity in such a case. In order to measure very small rates, preferably high inertial measures can be used.

Beim Schritt des Ermittelns eines Aktivitätswerts wird der Aktivitätswert gemäß einer Ausführung derart ermittelt, dass bei einem negativen Füllstand der Aktivitätswert durch Division eines Absolutbetrags des Füllstands durch die Referenzrate und durch das Trägheitsmaß ermittelt wird. Dies kann formelmäßig beispielsweise folgendermaßen dargestellt werden: A = F R r I

Figure DE102015111466B4_0003
In the step of determining an activity value, according to an embodiment, the activity value is determined such that at a negative level, the activity value is determined by dividing an absolute level of the level by the reference rate and the inertia measure. This can be represented formulaically, for example, as follows: A = - F R r I
Figure DE102015111466B4_0003

Dabei bedeutet:

I:
Trägheitsmaß.
Where:
I:
Trägheitsmaß.

Eine solche Implementierung hat sich im Rahmen von Versuchen des Erfinders als vorteilhaft erwiesen. Sie führt insbesondere zu einer rechnerisch einfachen Integration des Trägheitsmaßes, mit welchem das Ansprechverhalten wie eben beschrieben gesteuert werden kann.Such an implementation has proved to be advantageous in the context of attempts by the inventor. In particular, it leads to a computationally simple integration of the inertial measure with which the response behavior can be controlled as just described.

Das Trägheitsmaß kann beispielsweise einen Wert zwischen 0,1 s und 3 s, zwischen 0,2 s und 2,5 s, zwischen 0,5 s und 2 s oder zwischen 0,8 s und 1,2 s, insbesondere von 1 s haben.The inertial measure may for example be a value between 0.1 s and 3 s, between 0.2 s and 2.5 s, between 0.5 s and 2 s or between 0.8 s and 1.2 s, in particular of 1 s to have.

Gemäß einer Ausführung beziehungsweise gemäß einer Anwendung, in welcher das erfindungsgemäße Verfahren besonders vorteilhaft zum Einsatz kommen kann, ist vorgesehen, dass die Messstation ein Netzwerkknoten ist, wobei jedes einem Benutzer zugeordnete Ereignis ein jeweiliges Eintreffen eines dem Benutzer zugeordneten Datenpakets an dem Netzwerkknoten ist. Jede einem Benutzer zugeordnete Rate ist dabei eine dem Benutzer zugeordnete Senderate.According to an embodiment or according to an application in which the method according to the invention can be used particularly advantageously, it is provided that the measuring station is a network node, wherein each event associated with a user is a respective arrival of a data packet assigned to the user at the network node. Each rate assigned to a user is a transmission rate assigned to the user.

Die Senderate kann sich dabei auf einen Upload des Benutzers beziehen, aber auch auf einen Download.The transmission rate can refer to an upload of the user, but also to a download.

Gemäß einer Ausführung wird das bisher beschriebene Verfahren gemäß einer oder mehrerer Ausführungen oder Varianten in einem Verfahren zum Transport von Datenpaketen über zumindest einen ersten Netzwerkknoten und einen zweiten Netzwerkknoten verwendet. Als Ereignis gilt dabei typischerweise das Eintreffen eines Datenpakets beim ersten Netzwerkknoten, wobei jedes Datenpaket einem aus einer Mehrzahl von Benutzern zugeordnet ist. According to one embodiment, the method described so far is used according to one or more embodiments or variants in a method for transporting data packets via at least one first network node and a second network node. Typically, the arrival of a data packet at the first network node, wherein each data packet is assigned to one of a plurality of users, is regarded as an event.

Es sei erwähnt, dass ein Verfahren zum Transport von Datenpaketen einen eigenständigen, insbesondere eigenständig beanspruchbaren Aspekt der Erfindung darstellen kann. Hierbei kann auf alle hierin beschriebenen Ausführungen und Varianten zurückgegriffen werden.It should be mentioned that a method for transporting data packets can represent an independent, in particular independently claimable aspect of the invention. In this case, all embodiments and variants described herein can be used.

Bei einem Benutzer kann es sich in diesem Fall insbesondere beispielsweise um einen Computer, ein Mobiltelefon oder ein anderes Daten sendendes und/oder Daten empfangendes Gerät handeln. Unter einem Benutzer kann jedoch auch beispielsweise eine Anzahl von solchen Geräten verstanden werden, welche beispielsweise einem bestimmten Betrieb, einem Haushalt oder einer Person zugeordnet sein können.In this case, a user may in particular be, for example, a computer, a mobile telephone or another device that transmits data and / or receives data. A user may, however, also be understood to mean, for example, a number of such devices, which may be associated, for example, with a specific operation, a household or a person.

Das bisher beschriebene Verfahren wird bei der Verwendung im Rahmen eines Verfahrens zum Transport von Datenpaketen vorzugsweise am ersten Netzwerkknoten durchgeführt, wobei der jeweils ermittelte Aktivitätswert dem jeweiligen Datenpaket zugewiesen wird. Damit kann das Datenpaket mit einer Information über die Aktivität des Benutzers versehen werden, welche die Grundlage für weitere Maßnahmen im Rahmen der Steuerung eines Datenverkehrs, insbesondere im Rahmen der Aufteilung von Kapazitäten, darstellen kann.When used in the context of a method for transporting data packets, the method described above is preferably carried out at the first network node, the respectively determined activity value being assigned to the respective data packet. Thus, the data packet can be provided with information about the activity of the user, which can be the basis for further measures in the context of the control of a data traffic, in particular in the context of the allocation of capacities.

Die Referenzrate ist hier typischerweise eine vorgegebene Rate, mittels welcher eine Differenzierung zwischen Benutzern möglich ist. So können Benutzern unterschiedliche Referenzraten zugeordnet werden, um ihnen unterschiedliche Dienstqualitäten, insbesondere im Fall einer hohen Auslastung, zu geben. Durch unterschiedlich hohe Referenzraten können anders ausgedrückt auch unterschiedlich hohe Prioritäten den Benutzern zugewiesen werden.The reference rate is typically a predetermined rate by which differentiation between users is possible. Thus, users can be assigned different reference rates to give them different quality of service, especially in the case of high utilization. Differently high reference rates, in other words also different priorities, can be assigned to the users.

Am ersten Netzwerkknoten können also insbesondere bei jedem Eintreffen eines Datenpakets, das einem Benutzer zugeordnet ist, unter Verwendung des dem Benutzer zugeordneten Wertesatzes folgende Schritte ausgeführt werden:

  • - Ermitteln eines Aktivitätswerts, welcher anzeigend ist für eine Abweichung einer dem Benutzer zugeordneten Senderate von der Referenzrate des dem Benutzer zugeordneten Wertesatzes, und
  • - Zuweisen des Aktivitätswerts zu dem Datenpaket.
In particular, each time a data packet is assigned to a user, the following steps can be carried out at the first network node using the value set assigned to the user:
  • Determining an activity value which is indicative of a deviation of a transmission rate associated with the user from the reference rate of the value set assigned to the user, and
  • Assign the activity value to the data packet.

Bei jedem Eintreffen eines Datenpakets, dem ein Aktivitätswert zugeordnet ist, am zweiten Netzwerkknoten werden vorzugsweise folgende Schritte ausgeführt:

  • - Aktualisieren eines Referenzaktivitätswerts in Abhängigkeit von dem Aktivitätswert des eingetroffenen Datenpakets,
  • - Ermitteln einer Abweichung zwischen dem Aktivitätswert des eingetroffenen Datenpakets und dem Referenzaktivitätswert,
  • - Ermitteln einer Verwurfswahrscheinlichkeit in Abhängigkeit von der Abweichung,
  • - Durchführen eines Zufallsprozesses, wobei der Zufallsprozess zu einem positiven oder negativen Ergebnis kommen kann und derart durchgeführt wird, dass das positive Ergebnis mit der Verwurfswahrscheinlichkeit auftritt, und
  • - Verwerfen oder Markieren des Datenpakets, sofern der Zufallsprozess zu dem positiven Ergebnis gekommen ist.
At each arrival of a data packet to which an activity value is assigned at the second network node, the following steps are preferably carried out:
  • Updating a reference activity value depending on the activity value of the arrived data packet,
  • Determining a deviation between the activity value of the arrived data packet and the reference activity value,
  • Determining a probability of discard depending on the deviation,
  • Performing a random process, wherein the random process can come to a positive or negative result and is performed such that the positive result with the probability of discard occurs, and
  • Discard or mark the data packet if the random process has come to the positive result.

Bei dem Referenzaktivitätswert handelt es sich typischerweise um einen Wert, welcher die Aktivität aller Benutzer bzw. aller relevanten Benutzer in einem bestimmten Zeitfenster, insbesondere in der jüngsten Vergangenheit, angibt. Der Referenzaktivitätswert kann beispielsweise ein Durchschnitt, insbesondere ein gleitender Durchschnitt, sein. Es sei verstanden, dass das Verfahren grundsätzlich auch ohne den Schritt des Aktualisierens oder mit diesem Schritt des Aktualisierens erst am Ende der angegebenen Schritte ausgeführt werden kann.The reference activity value is typically a value indicating the activity of all users or all relevant users in a particular time window, especially in the recent past. The reference activity value may be, for example, an average, in particular a moving average. It should be understood that the method can basically be performed without the step of updating or with this step of updating until the end of the specified steps.

Die Abweichung zwischen dem Aktivitätswert und dem Referenzaktivitätswert kann insbesondere als Absolutwert und/oder als relativer Wert angegeben werden. Es können auf derartige absolute oder relative Werte auch Funktionen wie beispielsweise ein Logarithmus, insbesondere ein Zweierlogarithmus, angewendet werden.The deviation between the activity value and the reference activity value can be specified in particular as an absolute value and / or as a relative value. It can be based on such absolute or relative Values may also be applied to functions such as a logarithm, in particular a two-logarithm.

Die Verwurfswahrscheinlichkeit ist typischerweise eine Wahrscheinlichkeit, mit welcher das jeweilige Datenpaket verworfen oder markiert wird. Insbesondere bei hoher Auslastung und/oder hoher Aktivität des Benutzers, insbesondere über der Referenzrate, soll typischerweise eine hohe Verwurfswahrscheinlichkeit ermittelt werden, um den Benutzer dazu anzuhalten, seine Senderate zu verringern. Der Zufallsprozess kann beispielsweise mittels eines programmierten oder auch andersartig implementierten Zufallsgenerators durchgeführt werden. Es kann sich beispielsweise um einen Pseudo-Zufallsprozess handeln. Es kann auch anhand der Verwurfswahrscheinlichkeit bestimmt werden, dass jedes Datenpaket nach einer bestimmten Anzahl von Datenpaketen verworfen oder markiert wird. Beispielsweise kann bei einer Verwurfswahrscheinlichkeit von 25 % grundsätzlich jedes vierte Datenpaket verworfen oder markiert werden. In diesem Fall kann auf das Vorsehen eines Zufallsgenerators verzichtet werden.The probability of discarding is typically a probability with which the respective data packet is discarded or marked. In particular, in the case of high utilization and / or high activity of the user, in particular above the reference rate, a high probability of littering is typically to be determined in order to force the user to reduce his transmission rate. The random process can be carried out, for example, by means of a programmed or differently implemented random generator. It may, for example, be a pseudo-random process. It can also be determined on the basis of the probability of discarding that each data packet is discarded or marked after a certain number of data packets. For example, with a throw probability of 25%, basically every fourth data packet can be discarded or marked. In this case, can be dispensed with the provision of a random number generator.

Wird ein Datenpaket verworfen, so wird es nicht mehr weiter übermittelt und die in ihm enthaltenen Daten gehen typischerweise unwiederbringlich verloren. Bei Verkehr mit Statuskontrolle wird dies vom Sender erkannt. Typische Protokolle wie insbesondere TCP sind so implementiert, dass im Fall eines Verlusts von Datenpaketen die Senderate verringert wird. Auf diese Weise ist es möglich, durch das Verwerfen von Datenpaketen auf die Senderate eines Senders bzw. eines Benutzers Einfluss zu nehmen.If a data packet is discarded, it is no longer transmitted and the data contained in it is typically irretrievably lost. In traffic with status control this is detected by the transmitter. Typical protocols, such as TCP in particular, are implemented in such a way that the transmission rate is reduced in the event of loss of data packets. In this way it is possible to influence the transmission rate of a transmitter or a user by discarding data packets.

Das Markieren eines Datenpakets erfolgt typischerweise nur dann, wenn bekannt ist, dass ein solches Markieren in ähnlicher Weise zu einer Verringerung der Senderate führt. Datenpakete von Benutzern, welche auf das Markieren entsprechend reagieren, können insbesondere entsprechend gekennzeichnet sein. Typischerweise wird das Datenpaket mit einer solchen Markierung versehen, wobei die Markierung vom Empfänger mit der Bestätigung an den Sender zurückgemeldet wird, woraufhin dann wiederum der Sender seine Senderate verringert.Marking a data packet is typically done only if it is known that such marking will similarly result in a reduction in the transmission rate. Data packets from users who respond accordingly to the marking can in particular be marked accordingly. Typically, the data packet is provided with such a mark, wherein the mark is returned by the receiver with the confirmation to the transmitter, after which in turn the transmitter reduces its transmission rate.

Mittels eines solchen Verfahrens ist es möglich, vorhandene Netzwerkressourcen gerechter und auch zweckdienlicher unter einer Mehrzahl von Benutzern aufzuteilen. Unerwünschte Situationen wie eine Monopolisierung des Netzwerks durch einen Benutzer oder eine Drosselung von Benutzern trotz vorhandener Ressourcen können vermieden werden. Dies hat der Erfinder der vorliegenden Anmeldung erkannt, wie weiter unten noch detailliert beschrieben werden wird.By means of such a method, it is possible to divide existing network resources more equitably and also more conveniently among a plurality of users. Unwanted situations such as monopolization of the network by a user or throttling of users despite existing resources can be avoided. The inventor of the present application has recognized this, as will be described in detail below.

Gemäß einer vorteilhaften Ausführung wird beim Schritt des Aktualisierens eines Referenzaktivitiätswerts ein Gewichtungsfaktor verwendet, welcher einen Wertebereich zwischen null und eins annehmen kann. Der Referenzaktivitätswert wird bevorzugt dadurch aktualisiert, dass

  • - ein vorheriger Referenzaktivitätswert mit dem Gewichtungsfaktor multipliziert wird und
  • - dazu ein Wert addiert wird, welcher als Produkt aus
    • - dem Aktivitätswert und
    • - der Differenz aus der Zahl eins abzüglich des Gewichtungsfaktors
ermittelt wird. Dies entspricht einer Berechnung eines gleitenden Durchschnitts, welcher sich nach den Erfahrungen des Erfinders für die Anwendung im Rahmen des hierin beschriebenen Verfahrens als vorteilhaft erwiesen hat.According to an advantageous embodiment, the step of updating a reference activity value uses a weighting factor which can assume a value range between zero and one. The reference activity value is preferably updated by
  • - a previous reference activity value is multiplied by the weighting factor and
  • - to which a value is added, which as a product
    • - the activity value and
    • - the difference between the number one minus the weighting factor
is determined. This corresponds to a calculation of a moving average, which according to the inventor's experience has proved to be advantageous for use in the context of the method described herein.

Formelmäßig kann eine mögliche Implementierung einer solchen Berechnung eines gleitenden Durchschnitts beispielsweise folgendermaßen ausgedrückt werden: A a v g = w A A a v g + ( 1 w A ) A

Figure DE102015111466B4_0004
By way of example, one possible implementation of such a moving average calculation may be expressed as follows, for example: A a v G = w A A a v G + ( 1 - w A ) A
Figure DE102015111466B4_0004

Dabei bedeuten:

Aavg:
Referenzaktivitätswert
A:
Aktivitätswert des Datenpakets
wA:
Gewichtungsfaktor.
Where:
A avg :
Reference activity value
A:
Activity value of the data packet
w A :
Weighting factor.

Der Gewichtungsfaktor kann beispielsweise einen Wert zwischen 0,9 und 0,9999, zwischen 0,99 und 0,9999 oder zwischen 0,999 und 0,9999 haben. Er kann insbesondere einen Wert von 0,9, 0,99, 0,999 oder 0,9999 haben. For example, the weighting factor may have a value between 0.9 and 0.9999, between 0.99 and 0.9999, or between 0.999 and 0.9999. In particular, it can have a value of 0.9, 0.99, 0.999 or 0.9999.

Gemäß einer bevorzugten Ausführung wird beim Schritt des Ermittelns einer Verwurfswahrscheinlichkeit die Verwurfswahrscheinlichkeit umso größer ermittelt, je mehr der Aktivitätswert den Referenzaktivitätswert, zumindest betragsmäßig, übersteigt. Dadurch werden Nutzer mit einer umso höheren Verwurfswahrscheinlichkeit belegt, je mehr diese die ihnen zugedachte Referenzrate übersteigen. Besonders aktive Benutzer können auf diese Weise eingedämmt werden.According to a preferred embodiment, in the step of determining a probability of discarding, the probability of discarding is determined the greater the more the activity value exceeds the reference activity value, at least in terms of amount. As a result, users are subject to a higher probability of being rejected the more they exceed their intended reference rate. Particularly active users can be contained in this way.

Gemäß einer vorteilhaften Ausführung wird die Verwurfswahrscheinlichkeit umso größer ermittelt, je voller eine dem zweiten Netzwerkknoten zugeordnete Warteschlange für Datenpakete ist. Damit kann berücksichtigt werden, dass die Verwurfswahrscheinlichkeit nicht nur von der Aktivität eines jeweiligen Benutzers abhängen soll, sondern vorteilhafterweise auch von dem Warteschlangenfüllstand einer solchen Warteschlange abhängt. Eine solche Warteschlange kann beispielsweise diejenigen Datenpakete aufnehmen, welche von dem zweiten Netzwerkknoten aus über eine Datenverbindung zu einem anderen Netzwerkknoten oder auch mehrere Netzwerkknoten gesendet werden sollen. Typischerweise besteht dabei nur dann ein Anlass zum Verwerfen oder Markieren von Datenpaketen, wenn diese Warteschlange auch zumindest bis zu einem gewissen Grad gefüllt ist. Bei leerer Warteschlange oder nur geringfügig gefüllter Warteschlage können häufig auch alle Datenpakete durchgelassen werden oder es kann auf das Markieren verzichtet werden.According to an advantageous embodiment, the probability of discarding is determined to be the greater, the fuller a queue for data packets assigned to the second network node is. It can thus be taken into account that the probability of discarding should not only depend on the activity of a respective user, but advantageously also depends on the queue fill level of such a queue. Such a queue can record, for example, those data packets which are to be sent from the second network node via a data connection to another network node or also several network nodes. Typically, this is only an occasion for discarding or marking data packets when that queue is also filled at least to some extent. With empty queue or only slightly filled queue often all data packets can be passed or it can be dispensed with the marking.

Gemäß einer Ausführung ist vorgesehen, dass die Verwurfswahrscheinlichkeit den Wert null erhält, wenn die Warteschlange höchstens bis zu einem Schwellenwert gefüllt ist. Damit kann bei einer nur geringfügig gefüllten oder auch leeren Warteschlange auf das Verwerfen oder Markieren von Datenpaketen vollständig verzichtet werden, da die Netzkapazität offenbar zum Weiterleiten aller Datenpakete ausreicht.According to one embodiment, it is provided that the probability of discard is zero when the queue is filled at most up to a threshold. This can be completely dispensed with the discarding or marking of data packets in a slightly filled or empty queue, since the network capacity apparently sufficient to forward all data packets.

Gemäß einer bevorzugten Ausführung wird beim Schritt des Ermittelns einer Verwurfswahrscheinlichkeit die Verwurfswahrscheinlichkeit dadurch ermittelt, dass

  • - eine Ausgangswahrscheinlichkeit, welche einen Wertebereich zwischen null und eins annehmen kann,
  • - mit einem Wert potenziert wird, welcher wiederum durch Potenzierung der Zahl 2 oder einer anderen positiven Zahl mit einem Exponenten erhalten wird,
  • - wobei dieser Exponent durch Multiplikation von -1 mit einem Differenzierungsfaktor und mit der Differenz zwischen dem Aktivitätswert und dem Referenzaktivitätswert ermittelt wird.
According to a preferred embodiment, in the step of determining a probability of discard, the probability of discard is determined by:
  • an output probability, which can assume a value range between zero and one,
  • - is raised to a value obtained by exponentiation of the number 2 or another positive number with an exponent,
  • - where this exponent is determined by multiplying -1 by a differentiation factor and by the difference between the activity value and the reference activity value.

Ein solches Vorgehen bei der Ermittlung der Verwurfswahrscheinlichkeit hat sich nach den Erfahrungen des Erfinders als vorteilhaft für das hier offenbarte Verfahren erwiesen. Als Formel ausgedrückt kann eine beispielhafte Implementierung beispielsweise folgendermaßen wiedergegeben werden: p A = p 2 γ ( A A a v g )

Figure DE102015111466B4_0005
Such an approach in determining the probability of throwing has proved, in the experience of the inventor, to be advantageous for the method disclosed here. Expressed as a formula, an example implementation may be represented, for example, as follows: p A = p 2 - γ ( A - A a v G )
Figure DE102015111466B4_0005

Dabei bedeuten:

pA:
Verwurfswahrscheinlichkeit
p:
Ausgangswahrscheinlichkeit
γ:
Differenzierungsfaktor
Where:
p A :
Verwurfswahrscheinlichkeit
p:
output probability
γ:
differentiation factor

Dabei kann erkannt werden, dass gemäß dieser Formel als mögliche Implementierung der eben beschriebenen Vorgehensweise die Verwurfswahrscheinlichkeit umso höher wird, je größer der Unterschied zwischen dem Aktivitätswert des Datenpakets und dem Referenzaktivitätswert ist.It can be seen that, according to this formula, as a possible implementation of the procedure just described, the greater the difference between the activity value of the data packet and the reference activity value, the higher the probability of discarding.

Dies entspricht auch einer vorteilhaften Ausführung im Rahmen des hierin offenbarten Verfahrens.This also corresponds to an advantageous embodiment within the scope of the method disclosed herein.

Der Differenzierungsfaktor hat bevorzugt einen Wert zwischen 2 und 4, insbesondere zwischen 2,5 und 3,5 und besonders bevorzugt von 3.The differentiation factor preferably has a value between 2 and 4, in particular between 2.5 and 3.5 and particularly preferably of 3.

Bevorzugt wird die Ausgangswahrscheinlichkeit derart festgesetzt, dass bei Weiterleitung aller nicht verworfenen oder nicht markierten Datenpakete ein vorgegebener Maximaldurchsatz gerade nicht überschritten wird. Dies führt zu einer besonders vorteilhaften Auslastung der vorhandenen Kapazität. Ein Paketverlust aufgrund Pufferüberlauf, auch als „tail-drop“ bezeichnet, sollte möglichst vermieden werden, wobei vorzugsweise rechtzeitig vorher die Ausgangswahrscheinlichkeit und/oder andere Parameter entsprechend angepasst werden sollten. The output probability is preferably set in such a way that a predetermined maximum throughput is not exceeded when forwarding all data packets that are not discarded or not marked. This leads to a particularly advantageous utilization of the existing capacity. A packet loss due to buffer overflow, also referred to as "tail-drop", should be avoided as far as possible, preferably preferably in advance the output probability and / or other parameters should be adjusted accordingly.

Beispielsweise kann die Ausgangswahrscheinlichkeit folgendermaßen ermittelt werden: p ( Q ) = { 0 Q < Q 0 Q Q 0 Q 1 Q 0 p 1 Q 0 < Q < Q 1 p 1 + Q Q 1 Q 2 Q 1 ( 1 p 1 ) Q 1 < Q < Q 2 1 Q 2 < Q

Figure DE102015111466B4_0006
For example, the starting probability can be determined as follows: p ( Q ) = { 0 Q < Q 0 Q - Q 0 Q 1 - Q 0 p 1 Q 0 < Q < Q 1 p 1 + Q - Q 1 Q 2 - Q 1 ( 1 - p 1 ) Q 1 < Q < Q 2 1 Q 2 < Q
Figure DE102015111466B4_0006

Dabei bedeuten:

p(Q):
Ausgangswahrscheinlichkeit in Abhängigkeit eines Warteschlangenfüllstands
Q:
Warteschlangenfüllstand einer Warteschlange, welche dem zweiten Netzwerkknoten zugeordnet ist
Q0, Q1, Q2:
Schwellenwerte
p1:
Wahrscheinlichkeitsparameter.
Where:
p (Q):
Initial probability depending on a queue fill level
Q:
Queue level of a queue associated with the second network node
Q 0 , Q 1 , Q 2 :
thresholds
p 1 :
Probability parameters.

Bei einer solchen Implementierung ist also insbesondere auch eine Abhängigkeit von dem Warteschlangenfüllstand einer Warteschlange vorgesehen, wie dies bereits weiter oben erwähnt wurde. Sofern die Warteschlange bis maximal zum Wert Q0 gefüllt ist, werden die Ausgangswahrscheinlichkeit und damit auch die Verwurfswahrscheinlichkeit auf den Wert null festgesetzt. Dies entspricht der Erkenntnis, dass bei nur geringfügig gefüllter Warteschlange ein Verwerfen oder Markieren nicht notwendig ist. Mit zunehmender Füllung der Warteschlange steigen die Ausgangswahrscheinlichkeit und damit auch die Verwurfswahrscheinlichkeit an, um den Verkehr im Netzwerk zu reduzieren.In such an implementation, in particular, a dependency on the queue fill level of a queue is provided, as has already been mentioned above. If the queue is filled up to the value Q 0 at most , the output probability and thus also the probability of discarding are set to the value zero. This corresponds to the recognition that discarding or marking is not necessary if the queue is only slightly filled. As the queue is filled, the probability of likelihood increases, and hence the likelihood of discarding, to reduce traffic on the network.

Es sei jedoch erwähnt, dass die eben beschriebene Formel lediglich eine beispielhafte Implementierung zum Berechnen einer Ausgangswahrscheinlichkeit ist. Es können auch andere Implementierungen zum Berechnen einer solchen Ausgangswahrscheinlichkeit bzw. Verwurfswahrscheinlichkeit verwendet werden, wobei insbesondere solche vorteilhaft sind, welche modifizierbar sind.It should be noted, however, that the formula just described is merely an example implementation for calculating an output probability. Other implementations may be used to calculate such an output probability, in particular those which are modifiable.

Beispielsweise kann das „Adaptive RED“-Verfahren verwendet werden, siehe hierzu S. Floyd et al., „Adaptive RED: An Algorithm for Increasing the Robustness of RED's Active Queue Management“, Technical Report, 2001 oder das PIE-Verfahren, welches in dem Artikel „PIE: A Lightweight Control Scheme to Address the Bufferbloat Problem“ von Rong Pan et al. in HPSR (IEEE High-Performance Switching and Routing Workshop) 2013 veröffentlicht wurde. Weitere mögliche Verfahren finden sich beispielsweise in dem Artikel von Richelle Adams, „Active Queue Management: A Survey“, COMST (IEEE Communications Surveys & Tutorials Journal), Ausgabe 15, Nr. 3, Jahr 2013, Seiten 1425-1476 .For example, the "Adaptive RED" method can be used, see S. Floyd et al., "Adaptive RED: An Algorithm for Increasing the Robustness of RED's Active Queue Management," Technical Report, 2001, or the PIE method, which is incorporated herein by reference the article "PIE: A Lightweight Control Scheme to Address the Bufferbloat Problem" by Rong Pan et al. published in HPSR (IEEE High-Performance Switching and Routing Workshop) 2013. Other possible methods can be found, for example, in the article by Richelle Adams, "Active Queue Management: A Survey, COMST (IEEE Communications Surveys & Tutorials Journal), Issue 15, No. 3, Year 2013, pages 1425-1476 ,

Ein negativer Aktivitätswert könnte beispielsweise im Rahmen der Bestimmung einer Verwurfswahrscheinlichkeit am zweiten Netzwerkknoten verwendet werden, um dementsprechend die Verwurfswahrscheinlichkeit aufgrund des negativen Aktivitätswerts zu verringern. Dies kann dazu führen, dass Datenpakete von besonders ressourcenschonenden Benutzern mit einer geringeren Wahrscheinlichkeit verworfen oder markiert werden.For example, a negative activity value could be used in the context of determining a probability of discard at the second network node to accordingly reduce the probability of discard due to the negative activity value. This can result in data packages that are particularly likely to be discarded or tagged by particularly resource-efficient users.

Gemäß einer Ausführung ist der zweite Netzwerkknoten einem Netzabschnitt mit begrenztem Maximaldurchsatz zugeordnet. Insbesondere kann es sich dabei um einen Flaschenhals handeln. Als solche werden typischerweise Netzabschnitte bezeichnet, welche in vielen oder in allen Fällen das insgesamt übertragbare Datenvolumen oder die insgesamt erzielbare Datenübertragungsrate begrenzen. Beispielsweise kann es sich hierbei um einen besonders schwachen oder langsamen Netzabschnitt handeln, insbesondere eine entsprechend schwache oder langsame Verbindung zwischen zwei Netzwerkknoten.In one embodiment, the second network node is associated with a limited maximum throughput network section. In particular, it may be a bottleneck. As such, typically network sections are designated which in many or in all cases limit the overall transferable data volume or the overall achievable data transmission rate. For example, this may be a particularly weak or slow network section, in particular a correspondingly weak or slow connection between two network nodes.

An einem solchen Netzabschnitt mit begrenztem Maximaldurchsatz bzw. einem Flaschenhals treten besonders häufig Limitierungen des Durchsatzes auf, weshalb eine entsprechende Regelung des Datenverkehrs bevorzugt an einem solchen Netzabschnitt bzw. an einem Netzwerkknoten, welcher einem solchen Netzabschnitt zugeordnet ist, durchgeführt wird. At such a network section with limited maximum throughput or a bottleneck, flow rate limitations are particularly frequent, which is why appropriate regulation of the data traffic is preferably carried out at such a network section or at a network node which is assigned to such a network section.

Der Netzabschnitt mit begrenztem Maximaldurchsatz, insbesondere der Flaschenhals, kann beispielsweise an dem zweiten Netzwerkknoten beginnen und/oder mit diesem unmittelbar in Verbindung stehen.The network section with limited maximum throughput, in particular the bottleneck, may for example start at the second network node and / or be in direct communication with it.

Es sei darauf hingewiesen, dass sich die eben vorgestellte Implementierung zum Ermitteln eines Aktivitätswerts von einer aus dem Stand der Technik bekannten Token-Bucket-Implementierung insbesondere dadurch unterscheidet, dass negative Füllstände zulässig sind, und dass eine Änderung, insbesondere Verringerung des Füllstands, beim Eintreten eines Ereignisses wie beispielsweise beim Empfangen eines Datenpakets variabel ist. Wie der Erfinder dieser Anmeldung herausgefunden hat, kann damit eine besonders vorteilhafte Ermittlung eines Aktivitätswerts erreicht werden, wobei sich bei Tests diese Art der Ermittlung bewährt hat, und zwar insbesondere im Kontext eines Verfahrens zum Übertragen zum Daten. Wie insbesondere weiter unten näher ausgeführt werden wird, führt eine solche Ermittlung eines Aktivitätswerts zu vorteilhaften Ergebnissen.It should be pointed out that the implementation just presented for determining an activity value differs from a token-bucket implementation known from the prior art in that negative fill levels are permissible, and that a change, in particular a reduction of the fill level, occurs an event such as when receiving a data packet is variable. As the inventor of this application has found out, a particularly advantageous determination of an activity value can thus be achieved, whereby this type of determination has proven successful in tests, in particular in the context of a method for transmitting data. As will be explained in more detail below, such a determination of an activity value leads to advantageous results.

Gemäß einer Ausführung wird beim Eintreffen eines Datenpakets am ersten Netzwerkknoten vor dem Schritt des Ermittelns eines Aktivitätswerts das Datenpaket in eine Anzahl von weiteren Datenpaketen vorgegebener Länge aufgeteilt. Alle weiteren Schritte werden dann mit den weiteren Datenpaketen durchgeführt. Dies dient dazu, die Länge der im Rahmen des hierin beschriebenen Verfahrens zu verwendenden Datenpakete zu standardisieren. Damit kann dem Effekt entgegengewirkt werden, dass bei bestimmten Implementierungen der Empfang zweier Datenpakete mit jeweiliger Länge zu unterschiedlichen Ergebnissen führt verglichen mit dem Empfang eines einzigen Datenpakets, welches die gleiche Länge hat wie die beiden einzelnen Datenpakete zusammen. Dies hat der Erfinder erkannt, wobei es sich hierbei je nach Implementierung nicht zwingend um einen nachteiligen Effekt handelt.According to one embodiment, when a data packet arrives at the first network node prior to the step of determining an activity value, the data packet is divided into a number of further data packets of predetermined length. All further steps are then carried out with the further data packets. This serves to standardize the length of the data packets to be used in the method described herein. Thus, the effect can be counteracted that in certain implementations the reception of two data packets of respective length leads to different results compared to the reception of a single data packet which has the same length as the two individual data packets together. This has been recognized by the inventor, which is not necessarily an adverse effect depending on the implementation.

Das gleiche kann auch mit anderen Relevanzmaßen erfolgen, wobei beispielsweise bei jedem Eintreten eines Ereignisses das Ereignis in eine Anzahl von weiteren Ereignissen mit vorgegebenem Relevanzmaß aufgeteilt wird. Alle weiteren Schritte werden dann mit den weiteren Ereignissen durchgeführt.The same can also be done with other relevance measures, for example, with each occurrence of an event, the event is divided into a number of other events with a predetermined relevance measure. All further steps are then carried out with the other events.

Beim Schritt des Zuweisens des Aktivitätswerts zu dem Datenpaket kann der Aktivitätswert bevorzugt in einen Kopf, typischerweise auch als Header bezeichnet, oder in einen Trailer des Datenpakets geschrieben werden. Damit können Aktivitätswerte bei nachfolgenden Netzwerkknoten an klar erkennbaren Stellen des Datenpakets wieder ausgelesen werden.In the step of assigning the activity value to the data packet, the activity value may preferably be written in a header, typically also called a header, or in a trailer of the data packet. In this way, activity values at subsequent network nodes can be read out again at clearly recognizable points in the data packet.

Der erste Netzwerkknoten ist vorzugsweise als Zugangsknoten für den Benutzer ausgebildet. Dies erlaubt eine vorteilhafte Erfassung der Aktivitätswerte unmittelbar an demjenigen Punkt des Netzwerks, an welchem die Verbindung zu den Benutzern hergestellt wird. Es sei jedoch verstanden, dass das Verfahren insbesondere auch in einem Fall durchführbar ist, in welchem alle Datenpakete über einen weiteren Netzwerkknoten laufen, an welchem bereits eine Zuordnung zu Benutzern erfolgen kann. Dies kann insbesondere im Fall eines Datenverkehrs zu den Benutzern hin, auch als Download bezeichnet, zu einer Implementierung des Verfahrens verwendet werden.The first network node is preferably designed as an access node for the user. This allows advantageous detection of the activity values immediately at the point of the network where the connection to the users is made. However, it should be understood that the method can also be carried out in particular in a case in which all data packets run via a further network node on which an assignment to users can already take place. This can be used, in particular in the case of data traffic to the users, also referred to as download, for implementing the method.

Es sei verstanden, dass Datenpakete, insbesondere nach dem Schritt des Zuweisens des Aktivitätswerts, vom ersten Netzwerkknoten an den zweiten Netzwerkknoten weitergeleitet werden können. Außerdem können sie, insbesondere nach der hierin beschriebenen Verarbeitung am zweiten Netzwerkknoten, also insbesondere nach Durchführung des Zufallsprozesses, vom zweiten Netzwerkknoten an einen weiteren Netzwerkknoten, beispielsweise einen dritten Netzwerkknoten, weitergeleitet werden, und zwar insbesondere dann, wenn sie nicht verworfen wurden.It should be understood that data packets, in particular after the step of assigning the activity value, can be forwarded by the first network node to the second network node. In addition, in particular after the processing described here at the second network node, ie in particular after the random process has been performed, they can be forwarded by the second network node to a further network node, for example a third network node, in particular if they have not been discarded.

Die Erfindung betrifft des Weiteren ein Netzwerk mit zumindest einem ersten Netzwerkknoten und einem zweiten Netzwerkknoten, welche dazu konfiguriert sind, das erfindungsgemäße Verfahren gemäß einer oder mehrerer der beschriebenen Varianten und Ausführungen auszuführen.The invention further relates to a network having at least a first network node and a second network node, which are configured to carry out the method according to the invention in accordance with one or more of the variants and embodiments described.

Die Erfindung betrifft des Weiteren einen ersten Netzwerkknoten, welcher dazu ausgebildet ist, den auf den ersten Netzwerkknoten entfallenden Teil des erfindungsgemäßen Verfahrens gemäß einer oder mehrerer der hierin beschriebenen Varianten und Ausführungen auszuführen. The invention furthermore relates to a first network node, which is designed to execute the part of the method according to the invention attributable to the first network node in accordance with one or more of the variants and embodiments described herein.

Die Erfindung betrifft des Weiteren einen zweiten Netzwerkknoten, welcher dazu konfiguriert ist, den auf den zweiten Netzwerkknoten entfallenden Teil des hierin beschriebenen Verfahrens gemäß einer oder mehrerer der hierin beschriebenen Varianten und Ausführungen auszuführen.The invention further relates to a second network node configured to execute the portion of the method described herein attributable to the second network node in accordance with one or more of the variants and embodiments described herein.

Es sei erwähnt, dass der erste Netzwerkknoten und der zweite Netzwerkknoten grundsätzlich auch eine Einheit bilden können, so dass beispielsweise beide Funktionalitäten auf einem Netzwerkknoten, beispielsweise einem Server, implementiert sind. Dies kann beispielsweise verwendet werden, wenn ein Flaschenhals direkt an einem Zugangsknoten beginnt.It should be mentioned that the first network node and the second network node can in principle also form a unit, so that, for example, both functionalities are implemented on a network node, for example a server. This can be used, for example, when a bottleneck starts directly at an access node.

Die Erfindung betrifft des Weiteren eine Messstation, welche dazu konfiguriert ist, ein erfindungsgemäßes Verfahren auszuführen. Dabei kann auf alle hierin beschriebenen Ausführungen und Varianten des Verfahrens zurückgegriffen werden.The invention further relates to a measuring station which is configured to carry out a method according to the invention. In this case, all embodiments and variants of the method described herein can be used.

Die Messstation kann beispielsweise Erfassungsmittel für die Ereignisse aufweisen, beispielsweise eine Anzahl von Kameras, Sensoren, Knöpfen oder Mikrophonen. Sie kann beispielsweise als Mikrocontroller, Mikroprozessor, Anwendungsspezifischer Integrierter Schaltkreis (ASIC), Speicherprogrammierbare Steuerung (SPS), festverdrahtete Schaltung oder in anderer Weise ausgeführt sein. Sie kann beispielsweise Prozessormittel und Speichermittel aufweisen, wobei in den Speichermitteln Programmcode gespeichert ist, bei dessen Ausführung durch die Prozessormittel das erfindungsgemäße Verfahren ausgeführt wird. Beispielsweise kann die Messstation als Netzwerkknoten, insbesondere als erster Netzwerkknoten, ausgeführt sein.The measuring station may, for example, comprise detection means for the events, for example a number of cameras, sensors, buttons or microphones. For example, it may be implemented as a microcontroller, microprocessor, application specific integrated circuit (ASIC), programmable logic controller (PLC), hardwired circuit, or otherwise. It can have, for example, processor means and memory means, wherein program code is stored in the memory means, in the execution of which the method according to the invention is carried out by the processor means. For example, the measuring station can be designed as a network node, in particular as a first network node.

Gemäß einer Ausführung interveniert das Verfahren, insbesondere bei seiner Anwendung in der Datenübertragung, durch Verwerfen oder Markieren von Paketen nur dann, wenn eine tatsächliche Verstopfung vorliegt. Insbesondere dann kommt es hinsichtlich seiner Vorteile besonders zur Geltung. Eine Verstopfung kann beispielsweise basierend auf einer Tageszeit, auf gleichzeitig verwendeten benutzerspezifischen Schwellenwerten, Bandbreiteschwellenwerten oder Dienstqualität von Benutzern ermittelt werden. Es können auch Anwendungen priorisiert werden und es können gewisse Richtlinien erzwungen werden wie beispielsweise eine Priorisierung, ein Verteilungsmechanismus, eine Ratenbegrenzung oder andere Mechanismen. Mechanismen zum Umgang mit Verstopfungsmanagement, wie beispielsweise das hier beschriebene Verfahren, können beispielsweise pro Benutzer oder auch pro Anwendung durchgeführt werden.According to one embodiment, the method intervenes, especially in its application in the data transmission, by discarding or marking packets only when there is an actual blockage. In particular, it comes in terms of its advantages particularly well. For example, a congestion may be determined based on a time of day, user concurrent thresholds, bandwidth thresholds, or user quality of service. Applications may also be prioritized and certain policies enforced, such as prioritization, distribution mechanism, rate limiting or other mechanisms. Mechanisms for dealing with constipation management, such as the method described herein, may be performed, for example, per user or even per application.

Das oben bereits erwähnte Markieren von Datenpaketen basiert typischerweise auf dem Prinzip der sogenannten „Explicit Congestion Notification“ (ECN). ECN-fähige TCP-Sender markieren typischerweise Pakete mit einem Hinweis, dass sie ECN-fähig sind, so dass ein Datenpaket markiert werden kann anstatt es zu verwerfen, wobei der Sender seine Senderate verringert, wenn er erfährt, dass das Datenpaket markiert wurde. Auf diese Weise kann das Verwerfen von Datenpaketen und der damit verbundene Verlust von Zeit und Ressourcen vermieden werden.The marking of data packets already mentioned above is typically based on the principle of Explicit Congestion Notification (ECN). ECN-capable TCP senders typically tag packets with an indication that they are ECN-enabled so that a data packet can be tagged instead of discarded, with the sender reducing its send rate when it learns that the data packet has been tagged. In this way, the discarding of data packets and the associated loss of time and resources can be avoided.

Technische Effekte und VorteileTechnical effects and advantages

Das erfindungsgemäße Verfahren erlaubt eine intervalllose Bestimmung einer Rate oder mehrerer Raten. Musste man bei Verfahren aus dem Stand der Technik grundsätzlich ein Intervall definieren, fällt dies bei dem erfindungsgemäßen Verfahren weg. Eine Glättung kann über das optionale Trägheitsmaß erreicht werden, welches jedoch keine Verzögerung verursacht.The inventive method allows an intervalless determination of a rate or multiple rates. If one had to define an interval in the case of methods from the prior art, this is eliminated in the method according to the invention. Smoothing can be achieved via the optional inertia measure, which, however, does not cause any delay.

Als Beispiel sei hier das Zählen von Fahrzeugen genannt. Wählte man bei einem Verfahren nach dem Stand der Technik ein langes Intervall von beispielsweise mehreren Stunden, so musste man dieses Intervall abwarten, bevor eine Aktualisierung der Rate erfolgte. Wählte man das Intervall eher klein, so erhielt man ein wenig aussagekräftiges Ergebnis in Form einer stark schwankenden Rate.An example is the counting of vehicles. If a long interval of, for example, several hours was selected in a prior art method, one had to wait for this interval before updating the rate. Choosing the interval rather small, one obtained a little meaningful result in the form of a strongly fluctuating rate.

Bei dem erfindungsgemäßen Verfahren ist hingegen eine laufende Aktualisierung möglich, ohne dass dies zu irgendwelchen Nachteilen führt. Eine Glättung kann über das optionale Trägheitsmaß erreicht werden, ohne dass dies die Aktualität beeinflusst. Auf das Speichern umfangreicher Datensätze zu vergangenen Zeiträumen kann vorteilhaft verzichtet werden.In the method according to the invention, however, a continuous update is possible without this leading to any disadvantages. Smoothing can be achieved via the optional inertia measure, without this affecting the actuality. It is advantageously possible to dispense with storing extensive data records for past periods.

Im Fall der Datenübertragung sei verstanden, dass das hierin beschriebene Verfahren, welches auf der Ermittlung eines Aktivitätswerts und der Ermittlung einer Verwurfswahrscheinlichkeit abhängig von diesem Aktivitätswert basiert, bei typischen Netzwerken zu einer erheblich besseren Ausnutzung der vorhandenen Ressourcen und zu einer gerechteren Zuweisung der Ressourcen an mehrere Benutzer führt. Wie weiter unten anhand von Simulationen und Versuchen, welche der Erfinder durchgeführt hat, beschrieben werden wird, kann mittels des erfindungsgemäßen Verfahrens einer Monopolisierung des Netzwerks durch einzelne besonders intensive Benutzer entgegengewirkt werden, was zu einer im Vergleich zum Stand der Technik erheblich höheren Netzverfügbarkeit für schwächere Benutzer führt. Ähnlich wie bei bereits aus dem Stand der Technik bekannten Verfahren kann eine Differenzierung zwischen Benutzern vorgenommen werden, wobei im Vergleich zur eingangs beschriebenen Zuweisung von Datenmengen, welche in bestimmten Zeiträumen übertragen werden dürfen, auch Benutzern mit schlechterer Priorität ein hohes Datenvolumen zur Verfügung gestellt werden kann, wenn die Netzauslastung dies erlaubt, d.h. insbesondere wenn die Interessen von anderen Benutzern dem nicht entgegenstehen. Die Zuweisung einer Priorität kann dabei insbesondere durch die Zuweisung der Referenzraten vorgenommen werden, wobei eine höhere bzw. niedrigere Priorität einer höheren bzw. niedrigeren Referenzrate entspricht. Auf Seiten der Benutzer führt die Verwendung des erfindungsgemäßen Verfahrens somit dazu, dass in den meisten Situationen die verfügbaren Bandbreiten bzw. Datenübertragungsmengen, insbesondere für schwache Benutzer, d.h. für Benutzer mit wenig Sendeaufkommen, deutlich höher sind als bei Verfahren gemäß dem Stand der Technik. Auf Seiten der Netzbetreiber führt die Verwendung des erfindungsgemäßen Verfahrens zu einer besseren Auslastung des Netzes, beispielsweise durch die Übertragung des Datenverkehrs von Benutzern mit hohem Sendeaufkommen in Zeiten mit sonst niedriger Verkehrslast, und ermöglicht beispielsweise die Verschiebung von Erweiterungsinvestitionen.In the case of data transmission, it should be understood that the method described herein, which is based on the determination of an activity value and the determination of a probability of discard depending on this activity value, in typical networks to a much better use of existing resources and a fairer allocation of resources to several User leads. As will be described below with reference to simulations and experiments performed by the inventor can be counteracted by the method according to the invention of a monopolization of the network by single particularly intensive users, resulting in a compared to the prior art significantly higher network availability for weaker users. Similar to methods already known from the prior art, a differentiation can be made between users, whereby a high data volume can be made available to users with a lower priority compared to the initially described allocation of data volumes which may be transmitted in certain periods of time if the network utilization allows it, ie especially if the interests of other users do not conflict with it. The assignment of a priority can be carried out in particular by the assignment of the reference rates, with a higher or lower priority corresponding to a higher or lower reference rate. On the user side, the use of the method according to the invention thus results in that, in most situations, the available bandwidths or data transmission quantities, in particular for weak users, ie for users with low transmission volumes, are significantly higher than in the case of methods according to the prior art. On the part of the network operators, the use of the method according to the invention leads to a better utilization of the network, for example by the transmission of the traffic of users with high transmission volumes in times with otherwise low traffic load, and allows, for example, the postponement of expansion investments.

Es sei des Weiteren erwähnt, dass das hierin beschriebene Verfahren skalierbar ist, da Netzwerkknoten keine Benutzerzustände, keine mehreren Warteschlangen und keine spezielle Signalisierung benötigen. Dies bezieht sich insbesondere auf den zweiten Netzwerkknoten.It should be further noted that the method described herein is scalable because network nodes do not require user states, multiple queues, and no special signaling. This refers in particular to the second network node.

Studien des Erfinders, welche auf Analyse und auf Simulation basieren und welche weiter unten wiedergegeben sind, zeigen, dass das hierin beschriebene Verfahren zu einer fairen Aufteilung einer vorhandenen Kapazität zwischen Benutzern führt, welche ungefähr proportional ist zu ihren Referenzraten. Dies gilt sowohl für TCP-Verkehr, für sonstigen Verkehr mit Statuskontrolle wie auch für Verkehr ohne Statuskontrolle oder Mischungen davon.Studies by the inventor based on analysis and simulation, and which are presented below, show that the method described herein results in a fair sharing of existing capacity between users that is approximately proportional to their reference rates. This applies to TCP traffic, other traffic with status control as well as traffic without status control or mixtures thereof.

Wie sich bei Versuchen des Erfinders des Weiteren herausgestellt hat, unterstützt das Verfahren in vorteilhafter Weise kurze Übertragungen für ansonsten zurückhaltende Benutzer und schützt außerdem Verkehr mit Statuskontrolle gegenüber Verkehr ohne Statuskontrolle. Es kann beispielsweise in Netzwerken zur Versorgung von Privathaushalten und/oder Firmen, in Mobilfunknetzwerken sowie in Netzwerken von Rechenzentren eingesetzt werden.Further, as the inventor has found, the method advantageously supports short transfers for otherwise restrained users and also protects traffic with status control over traffic without status control. It can be used, for example, in networks for the supply of private households and / or companies, in mobile radio networks as well as in networks of computer centers.

Figurenlistelist of figures

Nachfolgend werden mögliche Implementierungen des hierin beschriebenen Verfahrens als Ausführungsbeispiele beschrieben. Dabei werden auch Ergebnisse von Analyse und Simulation dieser Implementierungen gegeben, um die Wirksamkeit des erfindungsgemäßen Verfahrens insbesondere hinsichtlich einer besseren Ressourcennutzung und einer gerechteren Aufteilung der Ressourcen auf Benutzer zu zeigen. Teilweise wird auf die am Ende der Beschreibung angehängten Tabellen Bezug genommen.

  • 1 zeigt einen Überblick über ein Netzwerk mit drei Netzwerkknoten und mehreren Benutzern,
  • 2 zeigt den zeitlichen Verlauf von Aktivitätswerten für einen Benutzer mit konstanter Bitrate,
  • 3 zeigt den zeitlichen Verlauf von Aktivitätswerten für einen Benutzer mit konstanter Bitrate mit unterschiedlichen Trägheitsmaßen,
  • 4 zeigt einen Durchsatz eines Benutzers in Abhängigkeit von einer Senderate,
  • 5 zeigt den Durchsatz eines Benutzers in Abhängigkeit von der Senderate mit anderen Parametern,
  • 6 zeigt einen simulierten Aufbau,
  • 7 zeigt ein Durchsatzverhältnis in Abhängigkeit von einer Referenzrate,
  • 8 zeigt ein Durchsatzverhältnis eines Benutzers in Abhängigkeit von Parametern,
  • 9 zeigt eine Straße mit darauf fahrendem Fahrzeug und nebenan angeordneter Messstation.
Hereinafter, possible implementations of the method described herein will be described as embodiments. Results of analysis and simulation of these implementations are also given in order to demonstrate the effectiveness of the method according to the invention, in particular with regard to a better use of resources and a fairer allocation of resources to users. Partial reference is made to the tables appended at the end of the description.
  • 1 shows an overview of a network with three network nodes and multiple users,
  • 2 shows the time course of activity values for a constant bit rate user,
  • 3 shows the time course of activity values for a constant bit rate user with different inertial measures,
  • 4 shows a throughput of a user as a function of a transmission rate,
  • 5 shows the throughput of a user as a function of the transmission rate with other parameters,
  • 6 shows a simulated structure,
  • 7 shows a throughput ratio as a function of a reference rate,
  • 8th shows a throughput ratio of a user depending on parameters,
  • 9 shows a road with vehicle driving thereon and measuring station arranged next door.

Detaillierte Beschreibung der Ausführungsbeispiele in Bezug auf NetzwerkeDetailed description of the embodiments in relation to networks

Es sei verstanden, dass alle Merkmale, Implementierungen und Ausführungsformen, welche nachfolgend beschrieben werden, Merkmale der Erfindung darstellen können und dementsprechend auch zur Abgrenzung der Ansprüche gegenüber dem Stand der Technik oder zur Neuformulierung von Ansprüchen verwendet werden können. Auch wenn bestimmte Merkmale zusammen erwähnt werden gelten sie trotzdem als separat offenbart. Es sei auch darauf hingewiesen, dass Ausführungen, welche sich aus den nachfolgenden Betrachtungen als vorteilhaft ergeben haben oder als vorteilhaft ableiten lassen, ebenfalls zur Offenbarung dieser Anmeldung zählen und zur Abgrenzung gegenüber dem Stand der Technik verwendet werden können.It should be understood that all features, implementations, and embodiments described below may constitute features of the invention, and accordingly, to delineate claims against the prior art or to redraft claims can be used. Although certain features are mentioned together, they are still considered separately disclosed. It should also be noted that embodiments which have been found to be advantageous from the following considerations or can be derived as advantageous, also include the disclosure of this application and can be used to delineate the prior art.

Die Erfindung wird zunächst mit Bezug auf Netzwerke zum Datenverkehr beschrieben. Dies stellt eine mögliche Anwendung dar, wo ihre Vorteile besonders zur Geltung kommen. Es sei jedoch darauf hingewiesen, dass die Erfindung auch außerhalb von Netzwerken verwendet werden kann, wie weiter unten beispielhaft beschrieben wird.The invention will first be described with reference to networks for data traffic. This represents a potential application where its benefits come into its own. It should be understood, however, that the invention may be used outside of networks, as will be further described below by way of example.

Zunächst folgen eine allgemeine Bemerkungen zu Netzwerken, insbesondere soweit diese hier relevant sind.First of all, a general remarks on networks follow, especially if they are relevant here.

Ein typisches Netzwerk weist mehrere oder auch eine hohe Vielzahl von Netzwerkknoten auf. Diese können beispielsweise als Netzwerkserver oder Netzwerkkomponenten wie Hubs oder Switches ausgebildet sein. Die einzelnen Netzwerkknoten sind typischerweise über Datenverbindungen miteinander verbunden, welche beispielsweise als elektrische Leitungen, als Glasfaserleitungen, als Funkverbindungen, als Satellitenverbindungen oder auf andere Art und Weise ausgeführt sein können.A typical network has several or even a large number of network nodes. These can be designed, for example, as network servers or network components such as hubs or switches. The individual network nodes are typically connected to one another via data connections, which can be embodied, for example, as electrical lines, as optical fiber lines, as radio links, as satellite links or in another manner.

Bei Datenverkehr, welcher über ein Netzwerk gesendet bzw. ausgetauscht wird, sind insbesondere zwei Typen von Datenverkehr vorherrschend.In the case of data traffic which is sent or exchanged over a network, in particular two types of data traffic are predominant.

Zum einen handelt es sich hierbei um den Verkehr mit Statuskontrolle, bei welchem der Empfang eines jeden Datenpakets vom Empfänger an den Sender bestätigt wird. Dabei wird überprüft, ob das Datenpaket korrekt beim Empfänger angekommen ist. Sofern festgestellt wird, dass das Datenpaket nicht korrekt beim Empfänger angekommen ist, wird das Datenpaket erneut gesendet, um eine korrekte Übermittlung sicherzustellen. Ein Protokoll, welches häufig für Verkehr mit Statuskontrolle verwendet wird, ist das Transport Control Protocol (TCP), auf welchem auch große Teile des Internets basieren. Derartige Protokolle werden insbesondere verwendet, wenn es auf die Übertragung jedes einzelnen Bits von einer bestimmten Datenmenge ankommt, wie beispielsweise bei der Übertragung von Texten, Bildern oder ausführbaren Programmen.On the one hand, this is traffic with status control, in which the receipt of each data packet is confirmed by the receiver to the sender. It checks whether the data packet has arrived correctly at the receiver. If it is determined that the data packet has not arrived correctly at the receiver, the data packet is retransmitted to ensure correct transmission. One protocol that is commonly used for traffic with status control is the Transport Control Protocol (TCP), which also relies on large parts of the Internet. Such protocols are used in particular when it comes to the transmission of each individual bit of a particular amount of data, such as in the transmission of texts, images or executable programs.

Als weitere Art gibt es außerdem den Verkehr ohne Statuskontrolle, bei welchem Daten vom Sender lediglich ausgesendet werden, wobei jedoch der Empfang nicht überprüft wird. Beispielsweise kann hierfür das auch im Internet häufig verwendete User Datagram Protocol (UDP) verwendet werden. Derartige Protokolle werden insbesondere dann eingesetzt, wenn der Verlust eines Teils der Daten zwar unter Umständen zu einer gewissen Qualitätseinbuße führt, die tatsächlich empfangenen Daten dadurch aber nicht nutzlos werden. Dies ist beispielsweise der Fall bei der Übertragung von Medieninhalten wie Musik oder Videos.As a further type, there is also the traffic without status control, in which data are only transmitted by the transmitter, but the reception is not checked. For example, the User Datagram Protocol (UDP), which is also frequently used on the Internet, can be used for this purpose. Such protocols are used in particular if the loss of some of the data may lead to a certain loss of quality, but the data actually received thereby will not become useless. This is the case, for example, when transferring media content such as music or videos.

Typische Netzwerke wie das Internet werden von einer Vielzahl von Benutzern äußerst unregelmäßig, teilweise aber sehr intensiv genutzt. Dem steht eine typischerweise nur begrenzte Kapazität zur Datenübertragung gegenüber. Somit kann es an einzelnen Netzwerkknoten zu Verstopfungen kommen. Dies bedeutet insbesondere, dass an einem Netzwerkknoten mehr Datenpakete zum Weitersenden ankommen als mit einer bestimmten Verbindung zu einem anderen Netzwerkknoten tatsächlich weitergesendet werden können. Für solche Fälle weisen Netzwerkknoten typischerweise Warteschlangen (englische Bezeichnung: „queue“) auf, in welchen Datenpakete für das Weitersenden gespeichert werden können.Typical networks such as the Internet are used by a large number of users extremely irregularly, but sometimes very intensively. This is offset by a typically limited capacity for data transmission. This can lead to blockages at individual network nodes. This means, in particular, that more data packets arrive at a network node for forwarding than can actually be forwarded with a specific connection to another network node. For such cases, network nodes typically have queues ("queue") in which data packets can be stored for retransmission.

Durch die Verwendung von Warteschlangen alleine kann jedoch noch nicht zwingend einer Situation Rechnung getragen werden, in welcher dauerhaft mehr Datenpakete zum Weitersenden ankommen als tatsächlich weitergesendet werden können. Für derartige Zwecke wurden Mechanismen entwickelt, welche bei einer zu hohen Zahl von Datenpaketen einzelne Datenpakete verwerfen oder auch markieren, um dadurch die Sender zu einer Reduzierung ihrer Senderaten anzuhalten. Insbesondere bei Verkehr mit Statuskontrolle, beispielsweise bei TCP-Verkehr, ist hierfür typischerweise eine geeignete Statuskontrolle implementiert. Derartige Mechanismen werden als aktives Warteschlangenmanagement (englische Bezeichnung: „Active Queue Management“, AQM) oder auch als Verstopfungsmanagement (englische Bezeichnung: „Congestion Management“) bezeichnet.By using queues alone, however, a situation can not necessarily be taken into account in which permanently more data packets arrive for further transmission than can actually be forwarded. Mechanisms have been developed for such purposes which discard or mark individual data packets if the number of data packets is too high, thereby stopping the transmitters to reduce their transmission rates. Particularly in the case of traffic with status control, for example in the case of TCP traffic, a suitable status control is typically implemented for this purpose. Such mechanisms are referred to as active queue management (English name: "Active Queue Management", AQM) or as constipation management (English term: "Congestion Management").

Verstopfungsmanagement detektiert typischerweise Verstopfung in einem Netzwerk und verwirft oder markiert Pakete, um der Verstopfung entgegenzuwirken. Es ist eine Herausforderung, die richtigen Pakete fallenzulassen oder zu markieren, wenn eine faire Kapazitätsaufteilung gewünscht wird. Dies gilt insbesondere dann, wenn wenige Intensivnutzer die Bandbreite monopolisieren, zum Beispiel durch das parallele Öffnen von vielen Datenverbindungen oder durch Verwendung von Protokollen für Verkehr ohne Statuskontrolle.Clogging management typically detects clogging in a network and discards or tags packets to counteract clogging. It is a challenge to drop or mark the right packages if a fair capacity allocation is desired. This is especially true when few intensive users monopolize bandwidth, for example, by opening many data connections in parallel or by using protocols for traffic without status control.

Betreiber von Netzwerkknoten wie beispielsweise Internet Service Provider (ISP) verwenden Verstopfungsmanagement-Mechanismen, um die beste Dienstqualität für die meisten Anwendungen, die meisten Benutzer und die meiste Zeit basierend auf den verfügbaren Netzwerkressourcen bereitzustellen. Dies ist motiviert durch die Beobachtung, dass eine Verstopfung häufig aufgrund von wenigen Intensivnutzern entsteht, welche die verfügbare Bandbreite monopolisieren, was die Qualität der Datenübertragung für die meisten anderen Benutzer stark beeinflusst. Somit wird gegenüber bestimmten Benutzern, bestimmtem Verkehr oder bestimmten Anwendungen im Fall einer Verstopfung regelnd eingegriffen, um eine bessere Qualität für andere bereitzustellen. Dies hilft, mit begrenzten Ressourcen einen besseren Dienst bereitzustellen.Network node operators such as Internet Service Providers (ISPs) use clogging management mechanisms to provide the best quality of service for most applications, most users, and most of the time based on available network resources. This is motivated by the observation that congestion often arises because of a few intensive users monopolizing the available bandwidth, which greatly affects the quality of data transmission for most other users. Thus, in the case of clogging, certain users, traffic, or applications are given regulatory action to provide better quality for others. This helps to provide a better service with limited resources.

In den letzten Jahren gab es mehrere Anläufe, insbesondere der Internet Engineering Task Force (IETF), um das Verstopfungsmanagement für Netzwerke mit Bezug auf Verzögerung und Fairness zu verbessern. Neue AQM-Algorithmen wurden standardisiert oder befinden sich derzeit in der Standardisierung. Hierunter ist insbesondere „Congestion Exposure“ (ConEx) zu nennen, welches versucht, eine Verstopfung in der Internetprotokoll (IP)-Schicht sichtbar zu machen, um eine bessere Verwaltung des Verkehrs zu ermöglichen. Dem liegt der Gedanke zugrunde, dass Teile des Verkehrs verworfen werden, wenn dieser mehr als eine vorher festgelegt Menge an Stau oder Verstopfung erzeugt. Dies erhöht im Falle einer Verstopfung die Fairness unter mehreren Benutzern. Eines der Ziele ist es, eine Umgebung bereitzustellen, welche die Verwendung von verstopfungssensitiveren Protokollen wie „Low Extra Delay Background Transport“ (LEDBAT, siehe S. Shalunov et al., RFC 6817, Dezember 2012) fördert. RTP-Medien-Verstopfungsvermeidungstechniken (RMCAT) versehen Echtzeit-Datenflüsse mit einer geeigneten Verstopfungssteuerung.There have been several attempts in recent years, notably the Internet Engineering Task Force (IETF), to improve network clogging management with respect to delay and fairness. New AQM algorithms have been standardized or are currently in the process of standardization. Among them is in particular "Congestion Exposure" (ConEx) to call, which tries to make a blockage in the Internet Protocol (IP) layer visible to allow better management of traffic. This is based on the idea that parts of the traffic are discarded if it generates more than a predetermined amount of congestion or obstruction. This increases fairness among multiple users in the event of constipation. One of the goals is to provide an environment that promotes the use of more clog-sensitive protocols such as Low Extra Delay Background Transport (LEDBAT, see S. Shalunov et al., RFC 6817, December 2012). RTP Media Clogging Prevention Techniques (RMCAT) provide real-time data flows with appropriate clogging control.

Einen guten Überblick über Mechanismen und Technologien zum Verstopfungsmanagement gibt beispielsweise der technische Report „Real-Time Network Management of Internet Congestion“ der Broadband Internet Technical Advisory Group (BITAG) vom Oktober 2013. Das Verstopfungsmanagement beinhaltet typischerweise die Klassifikation von Paketen, die Zugangskontrolle, das Reservieren von Ressourcen, das Zwischenspeichern oder Speichern, die Ratensteuerung, das Formen von Verkehr, das Routing, die Verkehrssteuerung, das Verwerfen von Paketen, das Einteilen von Paketen und zahlreiche andere technologiespezifische Ansätze.For example, the October October 2013 Broadband Internet Technical Advisory Group (BITAG) technical report "Real-Time Network Management of Internet Congestion" provides a good overview of mechanisms and technologies for clogging management. Clogging management typically involves packet classification, access control, and so on Reserve resources, cache or save, rate control, traffic shaping, routing, traffic control, packet dropping, packet scheduling, and many other technology-specific approaches.

Es hat sich jedoch gezeigt, dass bei aus dem Stand der Technik bekannten Mechanismen zum Umgang mit Verstopfungen in Netzwerken häufig unerwünschte Ergebnisse eintreten. So ist es beispielsweise bei zahlreichen Betreibern von Mobilfunknetzen üblich, jedem Benutzer eine entsprechend seinem Tarif festgelegte Datenmenge zuzuordnen, welche er innerhalb eines Zeitraums wie beispielsweise eines Monats verwenden kann. Überschreitet der Benutzer diese Datenmenge, so wird seine Datenübertragung stark gedrosselt oder abgeschaltet. Dies erlaubt eine Differenzierung zwischen Benutzern, führt jedoch auch dazu, dass eine hohe Belastung des Netzes durch einen Benutzer, welcher seine Datenmenge noch nicht erschöpft hat, nicht vermieden werden kann, wohingegen er nach Erschöpfung seiner Datenmenge keine oder nur noch wenige Datenpakete selbst dann übertragen kann, wenn das Netz ansonsten nur schwach belastet ist.However, it has been found that in known from the prior art mechanisms for dealing with blockages in networks often undesirable results. For example, it is customary for numerous operators of mobile networks to assign to each user an amount of data determined according to his tariff, which he can use within a period of, for example, a month. If the user exceeds this amount of data, then his data transmission is severely throttled or turned off. This allows a differentiation between users, but also means that a high load on the network by a user who has not yet exhausted his data, can not be avoided, whereas he even after the exhaustion of his data volume or only a few data packets transmitted even then can, if the network is otherwise only slightly loaded.

1 zeigt ein Netzwerk 1 mit einem ersten Netzwerkknoten 100, einem zweiten Netzwerkknoten 200 und einem dritten Netzwerkknoten 300. Der erste Netzwerkknoten 100 ist als Zugangsknoten ausgebildet, wobei an diesem Netzwerkknoten ein erster Benutzer 10, ein zweiter Benutzer 20, ein dritter Benutzer 30 und ein vierter Benutzer 40 angeschlossen sind. Diese greifen also über den ersten Netzwerkknoten 100 auf das Netzwerk 1 zu. 1 shows a network 1 with a first network node 100 , a second network node 200 and a third network node 300 , The first network node 100 is formed as an access node, wherein at this network node, a first user 10 , a second user 20 , a third user 30 and a fourth user 40 are connected. These therefore access the first network node 100 on the network 1 to.

Der erste Netzwerkknoten 100 und der zweite Netzwerkknoten 200 sind über eine erste Netzwerkleitung 110 miteinander verbunden. Der zweite Netzwerkknoten 200 und der dritte Netzwerkknoten 300 sind über eine zweite Netzwerkleitung 210 miteinander verbunden. Vorliegend ist die zweite Netzwerkleitung 210 diejenige von beiden Netzwerkleitungen 110, 210, welche die geringere Kapazität zur Datenübertragung aufweist. Die zweite Netzwerkleitung 210 kann somit auch als Flaschenhals bezeichnet werden.The first network node 100 and the second network node 200 are over a first network line 110 connected with each other. The second network node 200 and the third network node 300 are over a second network line 210 connected with each other. Here is the second network line 210 the one from both network lines 110 . 210 having the lower capacity for data transmission. The second network line 210 can therefore also be called a bottleneck.

Am ersten Netzwerkknoten 100 und am zweiten Netzwerkknoten 200 ist eine mögliche Implementierung des erfindungsgemäßen Verfahrens realisiert, welche nachfolgend beschrieben wird. Es sei erwähnt, dass es sich hierbei um eine Implementierung im Rahmen einer Datenübertragung über das Netzwerk 1 handelt. Das Verfahren kann auch als Activity Based Congestion Management, ABC, bezeichnet werden.At the first network node 100 and at the second network node 200 is realized a possible implementation of the method according to the invention, which will be described below. It should be noted that this is an implementation in the context of a data transmission over the network 1 is. The procedure can also be referred to as Activity Based Congestion Management, ABC.

Die Idee einer intervalllosen Ratenmessung ist insbesondere in dem ersten Netzwerkknoten 100 verwirklicht. Dieser ist somit vorliegend eine Messstation. The idea of an intervalless rate measurement is especially in the first network node 100 realized. This is thus present a measuring station.

Zunächst wird ein Überblick über diese Implementierung gegeben.First, an overview of this implementation is given.

Jedem der Benutzer 10, 20, 30, 40 wird eine jeweilige Referenzrate Rr zugeordnet, welche üblicherweise für einen längeren Zeitraum konstant bleibt. Durch das Zuweisen von unterschiedlichen Referenzraten Rr können den Benutzern unterschiedliche Prioritäten bzw. unterschiedliche Rechte hinsichtlich der Benutzung des Netzwerks 1 zugewiesen werden. Jeder der Benutzer 10, 20, 30, 40 sendet mit einer jeweiligen Übertragungsrate Rt. Diese kann größer oder kleiner als die Referenzrate Rr sein.Each of the users 10 . 20 . 30 . 40 is assigned a respective reference rate R r , which usually remains constant for a longer period. By assigning different reference rates R r , the users may have different priorities or different rights regarding the use of the network 1 be assigned to. Each of the users 10 . 20 . 30 . 40 transmits at a respective transmission rate R t . This may be greater or less than the reference rate R r his.

In dem ersten Netzwerkknoten 100 ist das Verfahren zum Ermitteln eines Aktivitätswerts implementiert. In dem zweiten Netzwerkknoten 200 ist das Verfahren zum Bestimmen einer Verwurfswahrscheinlichkeit und darauf basierend zufälligem Verwerfen oder Markieren von Datenpaketen implementiert. Somit werden gegebenenfalls nicht alle Datenpakete von den Benutzern 10, 20, 30, 40 zu dem dritten Netzwerkknoten 300 weitergeleitet.In the first network node 100 For example, the method for determining an activity value is implemented. In the second network node 200 For example, the method is implemented for determining a probability of discard and based on random discarding or marking of data packets. Thus, if necessary, not all data packets from the users 10 . 20 . 30 . 40 to the third network node 300 forwarded.

Die in dem ersten Netzwerkknoten 100 verwendete Implementierung kann als Aktivitätsmeter bezeichnet werden. Das Aktivitätsmeter ist vorliegend in Form eines Token Bucket mit einer Eimergröße B implementiert, deren Füllstand F sich mit der Referenzrate Rr des Benutzers im Verlauf der Zeit erhöht. Der Füllstand F wird durch den gemessenen Verkehr verringert und kann im Gegensatz zu normalen Token-Bucket-Implementierungen auch negativ werden. Wenn ein Paket der Länge L zur Zeit tnow ankommt, werden die angekommenen Tokens seit der letzten Paketankunft tlast zu dem Füllstand anhand folgender Formel addiert: F = min ( B , F + R r ( t n o w t l a s t ) )

Figure DE102015111466B4_0007
The in the first network node 100 The implementation used can be called an activity meter. In the present case, the activity meter is implemented in the form of a token bucket with a bucket size B whose fill level F is at the reference rate R r the user increases over time. The level F is reduced by the measured traffic and, unlike normal token-bucket implementations, can also become negative. When a packet of length L at time t now arrives, the arrived tokens since the last packet arrival t load to the level added using the formula: F = min ( B . F + R r ( t n O w - t l a s t ) )
Figure DE102015111466B4_0007

Die Zeit tlast wird mit tnow aktualisiert. Anschließend wird der Aktivitätswert bzw. die Aktivität A folgendermaßen berechnet: A = { 0 F 0 F R r I F < 0

Figure DE102015111466B4_0008
The time t last is updated with t now . Then the activity value or activity A is calculated as follows: A = { 0 F 0 - F R r I F < 0
Figure DE102015111466B4_0008

Der hierdurch ermittelte Aktivitätswert A wird in den Kopf des Pakets geschrieben. Anschließend wird der Füllstand folgendermaßen geändert: F = F L 2 A

Figure DE102015111466B4_0009
The activity value A thus determined is written in the header of the packet. Then the level is changed as follows: F = F - L 2 - A
Figure DE102015111466B4_0009

Sowohl B wie auch I sind konfigurierte Werte, wobei I ein Trägheitsmaß darstellt, mittels welchem das Ansprechverhalten des Systems verändert werden kann. Die Eimergröße B wird in Bytes angegeben und drückt bei normalen Token-Bucket-Implementierungen aus, wie umfangreich ein Burst sein kann. Ein Aktivitätsmeter mit einem vollen Eimer ignoriert mindestens diese Menge an Verkehr, bevor angezeigt wird, dass die Senderate Rt die Referenzrate Rr übersteigt. Das Trägheitsmaß I wird in Sekunden angegeben und steuert, wie schnell der Aktivitätswert ansprechend auf eine Ratenänderung oder einen Burst reagiert. Vorliegend werden beispielhaft Standardwerte von B = 0 KB und I = 0,6 s verwendet.Both B and I are configured values, where I represents an inertial measure by means of which the response of the system can be changed. The bucket size B is specified in bytes and, in normal token bucket implementations, expresses how extensive a burst can be. An activity meter with a full bucket ignores at least that amount of traffic before it is shown that the transmission rate R t the reference rate R r exceeds. The inertia measure I is given in seconds and controls how fast the activity value responds in response to a rate change or burst. In the present example, default values of B = 0 KB and I = 0.6 s are used.

Im zweiten Netzwerkknoten 200 wird bei Eintreffen eines Datenpakets vom ersten Netzwerkknoten 100 über die erste Netzwerkleitung 110 eine Verwurfswahrscheinlichkeit für das jeweilige Datenpaket berechnet. Das Ziel ist es dabei, die Verwurfswahrscheinlichkeit derart anzupassen, dass Pakete von Benutzern mit größerem oder kleinerem Aktivitätswert als einem Referenzaktivitätswert bzw. einem Durchschnitt höhere oder niedrigere Verwurfswahrscheinlichkeiten bekommen.In the second network node 200 becomes upon arrival of a data packet from the first network node 100 over the first network line 110 calculated a Verwurfswahrscheinlichkeit for each data packet. The goal is to tailor the probability of discard so that packets from users with a greater or lesser activity value than a reference activity value or an average get higher or lower probability of discarding.

Hierzu wird beim Eintreffen eines Datenpakets mit im Kopf befindlichem Aktivitätswert A zunächst ein exponentiell gewichteter Mittelwert (Exponentially Weighted Moving Average, EWMA) folgendermaßen berechnet: A a v g = w A A a v g + ( 1 w A ) A

Figure DE102015111466B4_0010
For this purpose, when a data packet with in-head activity value A arrives, an exponentially weighted moving average (EWMA) is first calculated as follows: A a v G = w A A a v G + ( 1 - w A ) A
Figure DE102015111466B4_0010

Dabei bezeichnet WA einen Gewichtungsfaktor, wobei 0 <WA < 1 gilt. Der Gewichtungsfaktor WA steuert, wie schnell der Referenzaktivitätswert Aavg auf eine Änderung von Aktivitätswerten reagiert. Vorliegend wird beispielhaft ein Standardwert von WA= 0,99 verwendet.Here, WA denotes a weighting factor, where 0 < WA <1. The weighting factor WA controls how fast the reference activity value A avg responds to a change in activity values . In the present example, a default value of WA = 0.99 is used.

Die Verwurfswahrscheinlichkeit wird anschließend folgendermaßen berechnet: p A = p 2 γ ( A A a v g )

Figure DE102015111466B4_0011
The throwing probability is then calculated as follows: p A = p 2 - γ ( A - A a v G )
Figure DE102015111466B4_0011

Hierbei wird ein Differenzierungsfaktor γ verwendet, welcher den Einfluss der Aktivitätsdifferenz (A - Aavg) auf die Änderung der modifizierten Verwurfswahrscheinlichkeit pA von einer Ausgangswahrscheinlichkeit p hat. Positive Werte von γ erhöhen pA für positive Differenzen, was erwünscht ist. Ein Wert von γ = 0 verhindert eine Unterscheidung, und negative Differenzierungsfaktoren führen typischerweise zu unerwünschten Ergebnissen. Vorliegend wird beispielhaft ein Standardwert von γ = 3 verwendet.In this case, a differentiation factor γ is used, which determines the influence of the activity difference (A-A avg ) on the change of the modified probability of throwing p A from an output probability p. Increase positive values of γ p A for positive differences, which is desired. A value of γ = 0 prevents discrimination, and negative differentiation factors typically lead to undesirable results. In the present case, a standard value of γ = 3 is used by way of example.

Die gezeigte Implementierung basiert grundsätzlich auf den folgenden Parametern: Referenzrate Rr , Eimergröße B, Trägheitsmaß I pro Benutzer sowie Differenzierungsfaktor γ und Gewichtsfaktor WA, wobei die beiden letzteren Werte typischerweise nicht benutzerspezifisch sind. Sie müssen jedoch nicht im gesamten Netzwerk 1 identisch sein. Insbesondere können unterschiedliche oder auch gleiche Referenzraten Rr den Benutzern 10, 20, 30, 40 zugewiesen werden.The implementation shown is basically based on the following parameters: reference rate R r , Bucket size B, inertia measure I per user and differentiation factor γ and weight factor WA , the latter two values typically being non-user specific. However, they do not have to be in the entire network 1 be identical. In particular, different or even the same reference rates R r the users 10 . 20 . 30 . 40 be assigned to.

Im zweiten Netzwerkknoten 200 wird nach Berechnung der Verwurfswahrscheinlichkeit ein Zufallsprozess ausgeführt, welcher mit der Verwurfswahrscheinlichkeit pA zu einem positiven Ergebnis führt. Hierbei wird auf einen Zufallsgenerator zurückgegriffen. Ergibt der Zufallsprozess ein positives Ergebnis, so wird das Datenpaket verworfen, andernfalls wird es an den dritten Netzwerkknoten 300 weitergeleitet. Ein positives Ergebnis kann beispielsweise darin bestehen, dass eine ermittelte Zufallszahl aus einem Wertebereich zwischen 0 und 1 einen Schwellenwert übersteigt, wobei der Schwellenwert anhand der Verwurfswahrscheinlichkeit festgesetzt wird.In the second network node 200 After calculation of the probability of throwing, a random process is carried out, which with the probability of throwing p A leads to a positive result. Here, a random generator is used. If the random process yields a positive result, the data packet is discarded, otherwise it is sent to the third network node 300 forwarded. A positive result may be, for example, that a determined random number from a value range between 0 and 1 exceeds a threshold value, wherein the threshold value is set on the basis of the probability of discarding.

Der Aktivitätswert kann beispielsweise codiert werden, insbesondere in IPv6-Extension-Headern oder in zusätzlichen Headern unterhalb von IP. Das letztgenannte erscheint insbesondere sinnvoll in Open-Flow-basierten Netzwerken.The activity value can be coded, for example, in IPv6 extension headers or in additional headers below IP. The latter seems particularly useful in open-flow-based networks.

Die gezeigte Implementierung ist typischerweise derart aufgebaut, dass jeglicher Upload-Verkehr eines Benutzers in seiner Aktivität gemessen wird und mit dem Aktivitätswert versehen wird, was in einem einzigen Ort in der Nähe des jeweiligen Benutzers 10, 20, 30, 40, insbesondere am ersten Netzwerkknoten 100, problemlos durchgeführt werden kann. Wenn das Verfahren für Downloads angewendet werden soll, kann der für einen Benutzer vorgesehene Verkehr bei einer Anzahl von Eingangsknoten durch ein verteiltes Aktivitätsmeter gemessen werden. Dies erscheint insbesondere aufgrund von zwei Gründen machbar. Zum einen wurde ein verteilter Ansatz zur Kontrolle und Erzwingung einer Datenrate für Verkehr, der von verschiedenen Zugängen kommt bereits gezeigt, beispielsweise in B. Raghavan et al., „Cloud Control with Distributed Rate Limiting“ in ACM SIGCOMM, August 2007, zum anderen ergibt die Aktivitätsmessung gleiche Resultate, wenn ein Fluss lastbalanciert wird über zwei Aktivitätsmeter, welche mit der halben Referenzrate konfiguriert sind.The implementation shown is typically constructed such that any upload traffic of a user is measured in its activity and provided with the activity value, which is in a single location in the vicinity of the respective user 10 . 20 . 30 . 40 , in particular at the first network node 100 , can be done easily. If the method is to be applied to downloads, the traffic intended for a user may be measured at a number of ingress nodes by a distributed activity meter. This seems feasible, in particular, for two reasons. Firstly, a distributed approach to control and enforce a data rate for traffic coming from different approaches has already been demonstrated, for example, in B. Raghavan et al., "Cloud Control with Distributed Rate Limiting" in ACM SIGCOMM, August 2007 the activity measurement gives the same results when a flow is load balanced over two activity meters configured at half the reference rate.

Mathematische AnalyseMathematical analysis

Nachfolgend wird zunächst eine mathematische Analyse der hier vorgestellten Implementierung gegeben. Hierbei wird ein beliebiger Benutzer entsprechend einem der oben erwähnten Benutzer 10, 20, 30, 40 mit konstanter Bitrate („Constant Bit Rate“, CBR) betrachtet. Ein solcher Benutzer wird nachfolgend als CBR-Benutzer, sein Verkehr als CBR-Verkehr bezeichnet. Zunächst wird das Verhalten des Aktivitätsmeters betrachtet. Dann wird das Ergebnis der Kapazitätsverteilung des Verfahrens unter unterschiedlichen Umständen betrachtet. Schließlich wird erklärt, warum einige implizite Parameter keinen Einfluss auf die Bandbreitenverteilung haben. Außerdem werden Empfehlungen für vorteilhafte Weiterbildungen insbesondere hinsichtlich der Konfiguration von Referenzraten gegeben.In the following a mathematical analysis of the presented implementation will be given. Here, an arbitrary user corresponding to one of the above-mentioned users 10 . 20 . 30 . 40 considered at constant bit rate (CBR). Such a user is referred to below as CBR user, his traffic as CBR traffic. First, the behavior of the activity meter is considered. Then, the result of the capacity distribution of the method under different circumstances is considered. Finally, it explains why some implicit parameters do not affect the bandwidth distribution. In addition, recommendations are given for advantageous developments, in particular with regard to the configuration of reference rates.

Zunächst wird der zeitliche Verlauf des Aktivitätswerts eines Benutzers mit einer Senderate Rt , Referenzrate Rr , Eimergröße B und Trägheitsmaß I betrachtet. Der Benutzer beginnt mit der Übertragung von CBR-Verkehr zur Zeit t = 0 s und beendet dies zur Zeit t = 5 s. Der Verlauf des Füllstands F des Eimers des Token Bucket wird für jede Datenpaketankunft modelliert.First, the time history of the activity value of a user with a transmission rate R t , Reference rate R r , Bucket size B and inertia measure I considered. The user starts transmitting CBR Traffic at time t = 0 s and ends at time t = 5 s. The history of the bucket F level of the token bucket is modeled for each data packet arrival.

Zunächst erhöht sich der Füllstand F um die Anzahl von Tokens, welche seit der letzten Paketankunft angekommen sind, und zwar entsprechend Formel (7). Dann wird der Aktivitätswert entsprechend Formel (8) berechnet. Schließlich wird der Füllstand F entsprechend Formel (9) verringert. Diese Schritte werden bei jeder Ankunft eines Datenpakets wiederholt, was im Wesentlichen den zeitlichen Verlauf des Füllstands F angibt.First, the level F increases by the number of tokens that have arrived since the last parcel arrival, according to formula (7). Then the activity value is calculated according to formula (8). Finally, the level F is reduced according to formula (9). These steps are repeated each time a data packet arrives, which essentially indicates the time course of the filling level F.

2 zeigt den Verlauf des gemessenen Aktivitätswerts mit der Zeit für einen CBR-Benutzer mit Referenzrate Rr= 1 Mb/s, einer Senderate von Rt= 2 Mb/s, einer Eimergröße B = 100 KB, und einem Trägheitsmaß von I = 0,1 s. Der Aktivitätswert wird positiv, wenn der Füllstand F unter null fällt. Dies passiert zur Zeit t A + = B R t R r

Figure DE102015111466B4_0012
für Rt>Rr. Somit bekommt man t A + = 0,8
Figure DE102015111466B4_0013
s für B = 100 KB und Rr= 2 Mb/s, t A + = 0,11
Figure DE102015111466B4_0014
s für B = 100 KB und Rt= 8 Mb/s, und t A + = 0
Figure DE102015111466B4_0015
für B = 0 KB. Dies ist auch in der 2 gezeigt. 2 shows the course of the measured activity value over time for a CBR user with reference rate R r = 1 Mb / s, a transmission rate of R t = 2 Mb / s, a bucket size B = 100 KB, and an inertia measure of I = 0, 1 s. The activity value becomes positive when the level F falls below zero. This is happening at the moment t A + = B R t - R r
Figure DE102015111466B4_0012
for R t > R r . So you get t A + = 0.8
Figure DE102015111466B4_0013
s for B = 100 KB and R r = 2 Mb / s, t A + = 0.11
Figure DE102015111466B4_0014
s for B = 100 KB and R t = 8 Mb / s, and t A + = 0
Figure DE102015111466B4_0015
for B = 0 KB. This is also in the 2 shown.

Zur Zeit t A +

Figure DE102015111466B4_0016
erhöht sich der Aktivitätswert schnell und nähert sich langsam einem stationären Aktivitätswert As. Wenn die stationäre Aktivität erreicht wird, gleicht die Rate, mit welcher Tokens von dem Token Bucket entfernt werden, der Referenzrate Rr : R t 2 A s = R r
Figure DE102015111466B4_0017
was die Berechnung der stationären Aktivität bzw. des stationären Aktivitätswerts erleichtert: A s = ln ( R t R r ) / ln ( 2 ) = log 2 ( R t R r )
Figure DE102015111466B4_0018
For now t A +
Figure DE102015111466B4_0016
the activity value increases rapidly and slowly approaches steady-state activity value As. When steady-state activity is achieved, the rate at which tokens are removed from the token bucket equals the reference rate R r : R t 2 - A s = R r
Figure DE102015111466B4_0017
which facilitates the calculation of inpatient activity or inpatient activity value: A s = ln ( R t R r ) / ln ( 2 ) = log 2 ( R t R r )
Figure DE102015111466B4_0018

Somit ist die Aktivität der Logarithmus, genauer gesagt der Zweierlogarithmus des Faktors, um welchen die Senderate Rt die Referenzrate Rr übersteigt. Sie hängt von Rt und Rr ab, jedoch nicht vom Trägheitsmaß I. 2 zeigt dies folgendermaßen: Man entnimmt As = 1 für Rt= 2 Mb/s und As = 3 für Rt= 8 Mb/s unabhängig von dem Trägheitsmaß I.Thus, the activity is the logarithm, more precisely the two-logarithm of the factor by which the transmission rate R t the reference rate R r exceeds. It depends on R t and R r but not the degree of inertia I. 2 this is shown as follows: A s = 1 for R t = 2 Mb / s and A s = 3 for R t = 8 Mb / s independently of the measure of inertia I.

Der Benutzer beendet das Senden zur Zeit t = 5 s. Da der Aktivitätswert seinen stationären Wert As erreicht hat, beträgt der Füllstand ungefähr F = Rr·I·As. Von diesem Zeitpunkt an erhöht sich der Füllstand linear mit der Zeit und der Aktivitätswert A erreicht linear den Wert null. Dieser Vorgang dauert R r I A s R r = I A s

Figure DE102015111466B4_0019
an Zeit. Die 2 zeigt, dass der Aktivitätswert für I = 0,1 s sehr schnell auf null zurückgeht, wenn der Benutzer das Senden beendet, und dass es länger dauert für I = 1,0 s.The user stops sending at time t = 5s. Since the activity value is its steady state value A s has reached, the level is approximately F = R r · I · A s . From this point on, the level increases linearly with time and the activity value A linearly reaches zero. This process takes R r I A s R r = I A s
Figure DE102015111466B4_0019
in time. The 2 shows that the activity value for I = 0.1 s very quickly goes back to zero when the user stops sending, and that it takes longer for I = 1.0 s.

Auf ähnliche Weise hängt die Zeit nach dem Beginn der Übertragung, in welcher der Aktivitätswert in die Nähe seines stationären Werts As - ε kommt, von dem Trägheitsmaß I ab, während der Einfluss des tatsächlichen Werts von As eher gering ist. Dies kann durch langwierige elementare Berechnungen gezeigt werden. Dies ist auch in 2 gezeigt, wo die zwei Kurven mit I = 0,1 s nahezu identische Form haben.Similarly, the time after the start of the transmission in which the activity value comes close to its steady state value A s - ε depends on the inertial measure I, while the influence of the actual value of A s rather low. This can be demonstrated by lengthy elementary calculations. This is also in 2 shown where the two curves with I = 0.1 s almost identical shape.

Das Trägheitsmaß I beeinflusst den Widerstand des Aktivitätswerts gegenüber Bursts. Man kann die Eimergröße V berechnen, welche benötigt wird, um den Aktivitätswert eines Benutzers mit einer Senderate Rt und stationärem Wert As um eins zu erhöhen. Bei Ankunft des Bursts erhöht sich der Aktivitätswert A von As auf As + 1. Somit muss sich der Füllstand F um Rr ·I Bytes verringern. Da Pakete nur mit einem Teil zwischen 2-(A s+1) und 2-A s beitragen, wird eine Eimergröße von 2-(A s+1) ·I·Rr≤2-A s · V benötigt. Mit der Gleichung (12) kann diese Ungleichung in Rt ·I ≤ V < 2 ·Rt ·I umgeformt werden. Somit hängt die Eimergröße, welche benötigt wird, um den Aktivitätswert A um eins zu erhöhen, von der Senderate Rt und dem Trägheitsmaß I ab, aber sie ist unabhängig von der konfigurierten Referenzrate Rr .The inertia measure I affects the resistance of the activity value to bursts. One can calculate bucket size V, which is needed to calculate the activity value of a user with a transmission rate R t and stationary value A s to increase one. Upon arrival of the burst, the activity value A increases from A s on A s + 1. Thus, the level F must be around R r · Reduce I bytes. Since packets are only part of between 2 - (A s +1) and 2 -A s contribute a bucket size of 2 - (A s +1) · I · R r ≤ 2 -A s · V needed. With equation (12), this inequality can be in R t · I ≦ V <2 · R t · I be transformed. Thus, the bucket size needed to increase the activity value A by one depends on the transmission rate R t and the inertia measure I, but it is independent of the configured reference rate R r ,

Der Abstand zwischen Füllständen in den Token Buckets, deren korrespondierende Aktivitätswerte um eins auseinanderliegen, ist Rr ·I. Um sicherzugehen, dass die Ankunft eines Pakets nicht einen Sprung von eins in dem Aktivitätswert verursacht, soll das Trägheitsmaß derart gewählt werden, dass Rr · I mindestens eine Paketlänge L ausmacht: R r I L

Figure DE102015111466B4_0020
The distance between levels in the token buckets whose corresponding activity values are one apart R r · I. To make sure that the arrival of a package is not a leap from causes one in the activity value, the inertia measure should be chosen such that R r · I make at least one packet length L: R r I L
Figure DE102015111466B4_0020

Wenn ein niedriges Trägheitsmaß verwendet wird, können Aktivitätswerte stark oszillieren, und zwar sogar für CBR-Verkehr, welcher die Referenzrate nur schwach übersteigt.When a low inertia measure is used, activity values can oscillate strongly, even for CBR traffic, which only slightly exceeds the reference rate.

3 zeigt dieses Phänomen für eine kleine Referenzrate Rr=0,01 Mb/s, eine Senderate von Rt = 0,02 Mb/s, eine Sendezeit von 5 s und für unterschiedliche Trägheitsmaße I. Nur die Punkte repräsentieren Aktivitätswerte bei Ankünften von Datenpaketen, wohingegen die Linien lediglich verbinden, um anzuzeigen, dass sie zusammengehören. Die Kurve für ein Trägheitsmaß von I = 1,2 s ist noch glatt, weil sie die Vorgabe Rt . I ≤ 1000 Bytes respektiert. Kurven für geringere Trägheitsmaße tendieren zum Oszillieren, insbesondere sind die Aktivitätswerte für das zweite Paket erhöht. 3 shows this phenomenon for a small reference rate R r = 0.01 Mb / s, a transmission rate of R t = 0.02 Mb / s, a transmission time of 5 s and for different inertial measures I. Only the points represent activity values on data packet arrivals, whereas the lines merely connect to indicate that they belong together. The curve for an inertial measure of I = 1.2 s is still smooth because it satisfies the constraint R t . I ≤ 1000 bytes respected. Curves for smaller inertial measures tend to oscillate, in particular, the activity values for the second packet are increased.

Nachfolgend wird analysiert, wie zwei Benutzer, welche CBR-Verkehr senden, eine Bandbreite von Cb = 10 Mb/s an einen gemeinsamen Flaschenhals, vorliegend an der zweiten Netzwerkleitung 210, mit und ohne Verwendung des beschriebenen Verfahrens aufteilen. Zunächst wird der Einfluss des Differenzierungsfaktors γ betrachtet und es wird gezeigt, dass ungleiche Kapazitätsverteilung absichtlich erzwungen werden kann. Dann wird gezeigt werden, dass das implementierte Verfahren einen fairen Anteil für Benutzer mit niedriger Aktivität gegenüber Benutzern mit höherer Aktivität sicherstellt.The following section analyzes how two users transmitting CBR traffic have a bandwidth of C b = 10 Mb / s to a common bottleneck, in this case on the second network line 210 , with and without using the method described. First, the influence of the differentiation factor γ is considered and it is shown that unequal capacity distribution can be deliberately enforced. It will then be shown that the implemented method ensures a fair share for users with low activity over users with higher activity.

In einem Experiment wird die Senderate R t 0

Figure DE102015111466B4_0021
von Benutzer 0 variiert und die Senderate von Benutzer 1 wird auf R t 1
Figure DE102015111466B4_0022
= 7,5 Mb/s festgesetzt. Ohne das erfindungsgemäße Verfahren wird die Kapazität des Flaschenhalses proportional zu den Senderaten von beiden Benutzern ( R t 0 : R t 1 )
Figure DE102015111466B4_0023
aufgeteilt. Die gestrichelte Kurve in 4 zeigt den Durchsatz T0 von Benutzer 0 unter diesen Bedingungen und abhängig von seiner Senderate R t 0 .
Figure DE102015111466B4_0024
Sein Durchsatz T0 erhöht sich stetig mit erhöhter Senderate R t 0 .
Figure DE102015111466B4_0025
Für kleine Senderaten erreicht der Benutzer 0 nur einen kleinen Durchsatz, und für hohe Senderaten monopolisiert er die Kapazität des Flaschenhalses.In an experiment, the transmission rate becomes R t 0
Figure DE102015111466B4_0021
by user 0 varies and the sending rate of user 1 will be on R t 1
Figure DE102015111466B4_0022
= 7.5 Mb / s. Without the method according to the invention, the capacity of the bottleneck becomes proportional to the transmission rates of both users ( R t 0 : R t 1 )
Figure DE102015111466B4_0023
divided up. The dashed curve in 4 shows the throughput T 0 of user 0 under these conditions and depending on its transmission rate R t 0 ,
Figure DE102015111466B4_0024
Its throughput T 0 increases steadily with increased transmission rate R t 0 ,
Figure DE102015111466B4_0025
For small transmission rates the user reaches 0 only a small throughput, and for high transmission rates it monopolizes the capacity of the bottleneck.

Nun wird die Verteilung der Bandbreite mit der beschriebenen Implementierung gemäß der Erfindung analysiert. Die stationären Aktivitätswerte der Benutzer hängen von ihren Senderaten R t i

Figure DE102015111466B4_0026
und Referenzraten R r i
Figure DE102015111466B4_0027
ab. Sie können mit Formel (13) berechnet werden. Am Flaschenhals wird die durchschnittliche Aktivität A a v g = ( i { 0,1 } A s i R i i ) / ( i { 0,1 } R t i )
Figure DE102015111466B4_0028
berechnet, und zwar durch Gewichtung der Aktivitätswerte der Benutzer mit ihren Senderaten R t i .
Figure DE102015111466B4_0029
Basierend auf der durchschnittlichen Aktivität Aavg und den Aktivitätswerten der Benutzer werden die durchschnittlichen Verwurfswahrscheinlichkeiten p A i
Figure DE102015111466B4_0030
für beide Benutzer mit Formel (11) angepasst. Jedoch benötigt diese Gleichung eine Ausgangswahrscheinlichkeit p. Diese wird derart gewählt, dass die Summe der Durchsatzwerte Ti der Bandbreite Cb des Flaschenhalses entspricht: i { 0,1 } T i = i { 0,1 } ( 1 p A i ) R t i = C b .
Figure DE102015111466B4_0031
. Es wird die Ausgangswahrscheinlichkeit p durch eine iterative Approximation berechnet, welche auch die gewünschten Durchsatzwerte Ti für i ∈ {0; 1} ergibt. Weiter unten wird das analytische Ergebnis mit Daten von einer paketbasierten Simulation verifiziert. Es wird auch gezeigt, dass die Analyse sehr genaue Resultate ergibt.Now the distribution of the bandwidth is analyzed with the described implementation according to the invention. The stationary activity values of the users depend on their transmission rates R t i
Figure DE102015111466B4_0026
and reference rates R r i
Figure DE102015111466B4_0027
from. They can be calculated using formula (13). At the bottleneck is the average activity A a v G = ( Σ i { 0.1 } A s i R i i ) / ( Σ i { 0.1 } R t i )
Figure DE102015111466B4_0028
calculated by weighting users' activity values with their transmission rates R t i ,
Figure DE102015111466B4_0029
Based on the average activity A avg and the user activity values, the average discard probabilities become p A i
Figure DE102015111466B4_0030
adapted for both users with formula (11). However, this equation needs an output probability p. This is chosen such that the sum of the throughput values T i the bandwidth Cb of the bottleneck corresponds to: Σ i { 0.1 } T i = Σ i { 0.1 } ( 1 - p A i ) R t i = C b ,
Figure DE102015111466B4_0031
, The output probability p is calculated by an iterative approximation, which also includes the desired throughput values T i for i ∈ {0; 1} results. Below, the analytical result is verified with data from a packet-based simulation. It is also shown that the analysis gives very accurate results.

Um den Effekt von ungleichen Referenzraten zu untersuchen, wird die Referenzrate des Benutzers 1 auf R r 1 = 1  Mb / s

Figure DE102015111466B4_0032
festgesetzt, und diejenige des Benutzers 0 auf R r 0 = 2  Mb/s .
Figure DE102015111466B4_0033
Somit ist eine Verteilung der Bandbreiten von T 0 T 1 = R r 0 R r 1 = 2 1
Figure DE102015111466B4_0034
beabsichtigt, so dass der Benutzer 0 dazu in der Lage sein sollte, einen Durchsatz von T0 = 6,67 Mb/s zu erreichen. Die durchgezogenen Linien in 4 zeigen den Durchsatz T0 von Benutzer 0 abhängig von seiner Senderate R t 0
Figure DE102015111466B4_0035
für unterschiedliche Differenzierungsfaktoren γ. Die erfindungsgemäße Implementierung führt dazu, dass der Benutzer 0 einen größeren Anteil der Bandbreite bekommt als ohne die erfindungsgemäße Implementierung, und zwar bereits für niedrige Senderaten, und dass er nicht für große Senderaten R t 0
Figure DE102015111466B4_0036
die Verbindung monopolisiert. Die Kurven hängen klar erkennbar von dem Differenzierungsfaktor γ ab. Da ein Differenzierungsfaktor von γ = 0 keine Verwurfswahrscheinlichkeiten differenziert, gleichen entsprechende Resultate denjenigen ohne die erfindungsgemäße Implementierung. Kleine Werte von γ ∈ {0,5; 1} führen zunächst zu einem leichten Anstieg von To, und führen außerdem dazu, das T0 weiter wächst, und zwar sogar für große Werte von R t 0 .
Figure DE102015111466B4_0037
Größere Werte von γ ∈ {1,5; 2; 3; 4; 5} führen zu einem noch weiteren Anstieg von T0 für kleine Werte von R t 0 ,
Figure DE102015111466B4_0038
führen zu einem Überschießen des beabsichtigten Anteils, und führen ferner dazu, dass T0 schließlich für große R t 0
Figure DE102015111466B4_0039
zu der Rate konvergiert, welche von dem Benutzer 1 nicht verwendet wird, welche in dem vorliegenden Fall C b R t 1 = 2,5  Mb/s ist .
Figure DE102015111466B4_0040
Somit kann der Benutzer 0 nicht die Bandbreite des Flaschenhalses durch Erhöhung seiner Senderate monopolisieren. Vielmehr wird sein Verkehr mit einer niedrigeren Priorität versehen, wenn er seine Referenzrate mehr als konkurrierende Benutzer übersteigt. Dies bedeutet, dass er seinen Durchsatz T0 maximieren kann, indem er seine Senderate R t 0
Figure DE102015111466B4_0041
in einem niedrigeren Bereich hält.To examine the effect of unequal reference rates, the user's reference rate becomes 1 on R r 1 = 1 mb / s
Figure DE102015111466B4_0032
stated, and that of the user 0 on R r 0 = 2 Mb / s ,
Figure DE102015111466B4_0033
Thus, a distribution of the bandwidths of T 0 T 1 = R r 0 R r 1 = 2 1
Figure DE102015111466B4_0034
intended so that the user 0 should be able to achieve a throughput of T 0 = 6.67 Mb / s. The solid lines in 4 show the throughput T 0 of user 0 depending on its transmission rate R t 0
Figure DE102015111466B4_0035
for different differentiation factors γ. The The implementation of the invention results in the user 0 gets a larger share of the bandwidth than without the implementation according to the invention, namely for low transmission rates, and that it does not for large transmission rates R t 0
Figure DE102015111466B4_0036
monopolized the connection. The curves clearly depend on the differentiation factor γ. Since a differentiation factor of γ = 0 does not differentiate any discard probabilities, corresponding results are similar to those without the implementation according to the invention. Small values of γ ∈ {0,5; 1} first leads to a slight increase in To, and also causes T 0 to continue to grow, even for large values of R t 0 ,
Figure DE102015111466B4_0037
Larger values of γ ∈ {1,5; 2; 3; 4; 5} lead to yet another increase of T 0 for small values of R t 0 .
Figure DE102015111466B4_0038
lead to an overshoot of the intended share, and further lead to T 0 finally being large R t 0
Figure DE102015111466B4_0039
converges to the rate used by the user 1 which is not used in the present case C b - R t 1 = 2.5 Mb / s is ,
Figure DE102015111466B4_0040
Thus, the user can 0 do not monopolize the bandwidth of the bottleneck by increasing its transmission rate. Rather, its traffic is given a lower priority if it exceeds its reference rate more than competing users. This means that it can maximize its throughput T 0 by changing its transmission rate R t 0
Figure DE102015111466B4_0041
keeps in a lower range.

Alle Kurven schneiden sich bei R t 0 = 15  Mb/s .

Figure DE102015111466B4_0042
Sowohl Benutzer 0 wie auch Benutzer 1 haben die gleiche Kapazität von A s 0 = log 2 ( R t 0 R r 0 ) = log 2 ( 15 2 ) = 2,91 = log 2 ( 7,5 I ) = log 2 ( R t 1 R r 1 ) = A s 1
Figure DE102015111466B4_0043
in diesem Zustand. Somit erfahren sie gleiche Verwurfswahrscheinlichkeiten und teilen sich die Kapazität des Flaschenhalses mit dem Verhältnis an Durchsätzen T 0 : T 1 = R r 0 : R r 1 = 2 : 1.
Figure DE102015111466B4_0044
Jedoch führen geeignete Werte des Differenzierungsfaktors von γ ∈ {1,5; 2; 3; 4; 5} zu anderen Punkten, wo eine Senderate R t 0
Figure DE102015111466B4_0045
kleiner als 15 Mb/s den gleichen fairen Anteil bekommt. Dies ist der bevorzugte Betriebspunkt, da er zu einem geringen Verlust an Datenpaketen führt.All curves intersect R t 0 = 15 Mb / s ,
Figure DE102015111466B4_0042
Both users 0 as well as users 1 have the same capacity of A s 0 = log 2 ( R t 0 R r 0 ) = log 2 ( 15 2 ) = 2.91 = log 2 ( 7.5 I ) = log 2 ( R t 1 R r 1 ) = A s 1
Figure DE102015111466B4_0043
in this condition. Thus, they experience the same Verwurfswahrlichkeiten and share the capacity of the bottleneck with the ratio of throughputs T 0 : T 1 = R r 0 : R r 1 = 2 : 1.
Figure DE102015111466B4_0044
However, suitable values of the differentiation factor of γ ∈ {1.5; 2; 3; 4; 5} to other points where a sending rate R t 0
Figure DE102015111466B4_0045
less than 15 Mb / s gets the same fair share. This is the preferred operating point as it results in a small loss of data packets.

Somit verringert die gezeigte Implementierung mit einem geeigneten Differenzierungsfaktor γ die Priorität von Benutzern, welche ihre Referenzraten um einen größeren Faktor als andere Benutzer überschreiten. Dies kann dazu führen, dass aggressive Benutzer noch nicht einmal ihren fairen Anteil erreichen, was zudem eine effektive Verteidigung gegen Denial-of-Service-Angriffe (DoS-Angriffe) ist. Die Tatsache, dass der Benutzer 0 seinen fairen Anteil zwischen 6 2 / 3  Mb/s < R t 0 < 15  Mb/s

Figure DE102015111466B4_0046
erreichen kann, erscheint zwar auf den ersten Blick problematisch, jedoch ist der Grund dafür darin zu sehen, dass der Aktivitätswert des Benutzers 1 größer ist als diejenige von Benutzer 0. Der Benutzer 1 kann durch einfaches Verringern seiner Senderaten seinen vollen fairen Anteil erreichen. Dies wird im Folgenden gezeigt.Thus, the implementation shown with a suitable differentiation factor γ reduces the priority of users who exceed their reference rates by a greater factor than other users. This can result in aggressive users not even reaching their fair share, which is also an effective defense against denial-of-service (DoS) attacks. The fact that the user 0 his fair share between 6 2 / 3 Mb / s < R t 0 < 15 Mb / s
Figure DE102015111466B4_0046
Although at first glance it may seem problematic, the reason for this is that the user's activity value 1 greater than that of the user 0 , The user 1 can reach its full fair share by simply reducing its transmission rates. This is shown below.

Nachfolgend wird der Schutz von fairen Anteilen von Benutzern mit niedriger Aktivität gezeigt.Below is the protection of fair shares of low activity users.

In einem Experiment wurde untersucht, wie der Benutzer 1 die Kapazitätsverteilung auf dem Flaschenhals beeinflussen kann. Er kann seine Senderate R t 1

Figure DE102015111466B4_0047
entweder erhöhen oder verringern. 5 zeigt den resultierenden Durchsatz T0 für den Benutzer 0 mit (durchgezogene Linien) und ohne (gestrichelte Linien) die beschriebene erfindungsgemäße Implementierung ( R r 0 = 2  Mb/s , R r 1 = 1  Mb/s )
Figure DE102015111466B4_0048
Ein Differenzierungsfaktor von γ = 3 ist hierfür konfiguriert. Wenn der Benutzer 1 seine Senderate auf R t 1 = 10  Mb/s
Figure DE102015111466B4_0049
erhöht, erhält der Benutzer 0 einen noch größeren Anteil für R t 0 [ 62 / 3 ; 20 ]  Mb/s .
Figure DE102015111466B4_0050
Wenn er seine Senderate auf R t 1 = 31 / 3  Mb/s
Figure DE102015111466B4_0051
verringert, kann der Benutzer kaum mehr als 6 2/3 Mb/s erreichen. Der sehr kleine Überschuss verringert sich sogar noch mehr mit einem höheren Differenzierungsfaktor γ. Somit stellt die beschriebene Implementierung eine Umgebung bereit, welche einem CBR-Benutzer erlaubt, seinen fairen Anteil wie durch seine Referenzrate vorgegeben durch Senden mit seiner fairen Rate zu erreichen. Es wird sogar ein Anreiz für Benutzer gegeben, ihre Aktivität im Fall einer Verstopfung zu minimieren, um ihren Durchsatz zu erhöhen. Weiter unten wird noch gezeigt werden, dass die beschriebene Implementierung zu ungefähr einer fairen Bandbreitenverteilung mit verstopfungsgesteuertem TCP-Verkehr führt.In an experiment was studied how the user 1 affect the capacity distribution on the bottleneck. He can change his transmission rate R t 1
Figure DE102015111466B4_0047
either increase or decrease. 5 shows the resulting throughput T 0 for the user 0 with (solid lines) and without (dashed lines) the described inventive implementation ( R r 0 = 2 Mb / s . R r 1 = 1 Mb / s )
Figure DE102015111466B4_0048
A differentiation factor of γ = 3 is configured for this purpose. If the user 1 his transmission rate R t 1 = 10 Mb / s
Figure DE102015111466B4_0049
increases, the user receives 0 an even bigger share for R t 0 [ 62 / 3 ; 20 ] Mb / s ,
Figure DE102015111466B4_0050
When he sets his broadcasting rate R t 1 = 31 / 3 Mb / s
Figure DE102015111466B4_0051
the user can hardly reach more than 6 2/3 Mb / s. The very small excess decreases even more with a higher differentiation factor γ. Thus, the described implementation provides an environment that allows a CBR user to achieve his fair share as dictated by his reference rate by sending at his fair rate. There is even an incentive for users to minimize their activity in the event of constipation in order to increase their throughput. It will be further shown below that the implementation described results in about a fair bandwidth distribution with congestion-driven TCP traffic.

Die Analyse kann noch erweitert werden für drei Benutzer mit Senderaten R t 0 ,

Figure DE102015111466B4_0052
R t 1 ,
Figure DE102015111466B4_0053
R t 2
Figure DE102015111466B4_0054
und Referenzraten R r 0 = R r 1 = R r 2 = 1.
Figure DE102015111466B4_0055
Es wird R t 2 = 10
Figure DE102015111466B4_0056
gewählt. Der faire Anteil der Benutzer ist 3 1/3 Mb/s. Wenn jedoch der Benutzer 0 4,7 Mb/s sendet, kann er einen höheren Durchsatz von ungefähr T0 = 4,06 Mb/s unabhängig von der Senderate R t 1
Figure DE102015111466B4_0057
von Benutzer 1 erreichen. Dies liegt daran, dass der Benutzer 2 eine niedrigere Priorität zugewiesen bekommt, und zwar aufgrund seiner höheren Aktivität als Benutzer 0 und Benutzer 1, so dass die Benutzer 0 und 1 einen größeren Anteil als ihr fairer Anteil bekommen. Wenn der Benutzer 2 seine Senderate verringert, kann er seinen Durchsatz T2 erhöhen, während T0 und T1 verringert werden. Somit wurde gezeigt, dass die grundsätzlichen Prinzipien auch für mehrere Benutzer gelten. The analysis can be extended for three users with transmission rates R t 0 .
Figure DE102015111466B4_0052
R t 1 .
Figure DE102015111466B4_0053
R t 2
Figure DE102015111466B4_0054
and reference rates R r 0 = R r 1 = R r 2 = 1.
Figure DE102015111466B4_0055
It will R t 2 = 10
Figure DE102015111466B4_0056
selected. The fair share of users is 3 1/3 Mb / s. However, if the user 0 4,7 Mb / s, it can provide a higher throughput of about T 0 = 4.06 Mb / s regardless of the transmission rate R t 1
Figure DE102015111466B4_0057
by user 1 to reach. This is because the user 2 gets assigned a lower priority due to its higher activity as a user 0 and users 1 so that the users 0 and 1 get a bigger share than their fair share. If the user 2 reduces its transmission rate, it can increase its throughput T 2 while decreasing T 0 and T 1 . Thus, it has been shown that the basic principles also apply to multiple users.

Nachfolgend wird der Einfluss bestimmter Parameter untersucht.The influence of certain parameters is examined below.

Das Aktivitätsmeter verwendet Paketgrößen multipliziert mit 2-A gemäß der oben erwähnten Formel (9). Die Formel (13) trägt dieser Tatsache durch die Division durch ln(2) Rechnung, wenn die stationäre Aktivität As für einen CBR-Benutzer berechnet wird. Dieser Faktor ist in jedem Aktivitätswert oder Durchschnitt davon enthalten. Jeglicher Einfluss dieses Faktors kann durch die Wahl eines geeigneten Differenzierungsfaktors γ kompensiert werden, so dass die Basis 2 in Gleichung (9) ohne Beschränkung der Allgemeinheit verändert werden kann. Wenn eine unterschiedliche Basis verwendet wird, erreicht ein angepasster Differenzierungsfaktor gleiche Bandbreitenverteilungen. Obwohl die Verwendung der Basis 2 nicht essenziell ist, wird es typischerweise der Fall sein, dass alle Aktivitätsmeter in dem Netzwerk die gleiche Basis für die Berechnung von netzwerkweit konsistenten Aktivitätswerten verwenden.The activity meter uses packet sizes multiplied by 2 -A according to the above-mentioned formula (9). Formula (13) accounts for this fact by dividing by ln (2) when stationary activity A s is calculated for a CBR user. This factor is included in each activity value or average of it. Any influence of this factor can be compensated by choosing a suitable differentiation factor γ, so that the basis 2 can be changed in equation (9) without loss of generality. If a different base is used, an adjusted differentiation factor will achieve equal bandwidth distributions. Although the use of the base 2 is not essential, it will typically be the case that all activity meters in the network use the same basis for the calculation of network-wide consistent activity values.

Es wird ferner gezeigt werden, dass die Kapazitätsverteilung nur von dem Verhältnis der Referenzraten R r i

Figure DE102015111466B4_0058
von unterschiedlichen Benutzern 0 ≤ i ≤ n mit CBR-Verkehr abhängt, aber nicht von den Absolutwerten. Es werden modifizierte Referenzraten R r i ' = x R r i
Figure DE102015111466B4_0059
für alle Benutzer angenommen, und zwar unter der Bedingung, dass die Ungleichung R r i ' > R t i
Figure DE102015111466B4_0060
erfüllt ist.It will further be shown that the capacitance distribution only depends on the ratio of the reference rates R r i
Figure DE102015111466B4_0058
from different users 0 ≤ i ≤ n depends on CBR traffic, but not on the absolute values. There will be modified reference rates R r i ' = x R r i
Figure DE102015111466B4_0059
accepted for all users, under the condition that the inequality R r i ' > R t i
Figure DE102015111466B4_0060
is satisfied.

Die stationäre Aktivität A s i

Figure DE102015111466B4_0061
von Benutzer i wird dann folgendermaßen berechnet A s i = log 2 ( R t i x R r i ) = log 2 ( R t i ) log 2 ( R r i ) log 2 ( x )
Figure DE102015111466B4_0062
The stationary activity A s i
Figure DE102015111466B4_0061
User i is then calculated as follows A s i = log 2 ( R t i x R r i ) = log 2 ( R t i ) - log 2 ( R r i ) - log 2 ( x )
Figure DE102015111466B4_0062

Die sich daraus ergebende Referenzaktivität wird folgendermaßen berechnet: A a v g = i R t i ( log 2 ( R t i ) log 2 ( R r i ) ) i R t i log 2 ( x )

Figure DE102015111466B4_0063
The resulting reference activity is calculated as follows: A a v G = Σ i R t i ( log 2 ( R t i ) - log 2 ( R r i ) ) Σ i R t i - log 2 ( x )
Figure DE102015111466B4_0063

Deshalb ist die Differenz ( A s i A avg )

Figure DE102015111466B4_0064
unabhängig von dem Skalierungsfaktor x, so dass eine skalare Multiplikation von allen Referenzraten weder die Verwurfswahrscheinlichkeiten noch die Durchsätze in der Analyse für CBR-Verkehr beeinflusst.That's why the difference ( A s i - A avg )
Figure DE102015111466B4_0064
regardless of the scaling factor x, such that scalar multiplication of all reference rates does not affect either the chewing probabilities or the throughputs in the analysis for CBR traffic.

Vorteilhaft werden Referenzraten so klein bemessen, dass Fairness erzwungen werden kann. Wenn die Summe der Referenzraten von potenziellen Benutzern, welche sich einen Flaschenhals teilen, nicht die Bandbreite des Flaschenhalses übersteigt, kann eine Verstopfung nur dann auftreten, wenn einige Benutzer schneller senden als ihre Referenzraten. Dies führt zu Datenpaketen mit erhöhten Aktivitätswerten, welche bevorzugt im zweiten Netzwerkknoten verworfen oder markiert werden, wodurch die Aufteilung der Bandbreite fairer ist. Im Gegensatz dazu sollten Referenzraten nicht so klein gesetzt werden, dass sie der Gleichung (14) widersprechen. Auch dies würde nämlich einen Verlust von Fairness bedeuten. Wenn jedoch Referenzraten nicht geeignet gesetzt sind, führt dies trotzdem nicht zu einer schlechteren Verwendung der vorhandenen Ressourcen, weil Verkehr nur dann verworfen wird, wenn tatsächlich eine Verstopfung auftritt.Advantageously, reference rates are so small that fairness can be enforced. If the sum of the reference rates of potential users sharing a bottleneck does not exceed the bottleneck, bottlenecking can occur only if some users send faster than their reference rates. This leads to data packets with increased activity values, which are preferably discarded or marked in the second network node, whereby the distribution of the bandwidth is fairer. In contrast, reference rates should not be set so small that they contradict equation (14). This would also mean a loss of fairness. However, if reference rates are not set properly, it still does not result in a poorer use of existing resources because traffic is discarded only when congestion actually occurs.

Simulation simulation

Nachfolgend wird die Bandbreitenverteilung unter Verwendung einer Implementierung des erfindungsgemäßen Verfahrens untersucht, und zwar mittels stochastischer Diskret-Ereignis-Simulation. Zunächst wird die Vorgehensweise beschrieben. Anschließend wird das analytische Modell, welches weiter oben vorgestellt wurde, validiert. Es wird gezeigt werden, dass das Verfahren die Fähigkeit besitzt, eine Fairness auf Benutzerebene für TCP-Verkehr sicherzustellen, und es wird die Abhängigkeit von Konfigurationsparametern und Netzwerkumgebungen untersucht. Schließlich wird die Koexistenz von Verkehr mit und ohne Statuskontrolle untersucht.Hereinafter, the bandwidth distribution is examined using an implementation of the method according to the invention, by means of stochastic discrete-event simulation. First, the procedure is described. Subsequently, the analytical model presented above is validated. It will be shown that the method has the ability to ensure user-level fairness for TCP traffic, and it examines the dependency of configuration parameters and network environments. Finally, the coexistence of traffic with and without status control is examined.

Es wurden Simulationen durchgeführt unter Verwendung von INET 2.4.0 in einer OMNet++ Netzwerksimulationsumgebung 4.4.1. Es wurde ein „Network Simulation Cradle 0.5.3“ verwendet, um gesättigte TCP-Quellen zu verwenden. Dies erleichtert die Simulation von tatsächlichen Netzwerkstapeln von einem Linux-Kernel, von welchem die Version 2.6.29 verwendet wurde. Es wurde TCP Reno verwendet, um eine Studie mit und ohne ECN durchzuführen. Es wurde eine maximale Transfereinheit von MTU=1500 Bytes auf Schicht 2 verwendet. Für Experimente mit Verkehr ohne Statuskontrolle wurden CBR-UDP-Quellen mit einer maximalen Paketgröße verwendet.Simulations were performed using INET 2.4.0 in an OMNet ++ network simulation environment 4.4.1. A "Network Simulation Cradle 0.5.3" was used to use saturated TCP sources. This facilitates the simulation of actual network stacks from a Linux kernel that used version 2.6.29. TCP Reno was used to conduct a study with and without ECN. There was a maximum transfer unit of MTU = 1500 bytes on shift 2 used. For experiments with traffic without status control, CBR UDP sources with a maximum packet size were used.

Es wurde speziell das in 6 gezeigte Szenario verwendet. Dabei kommunizieren mehrere Benutzer mit einem Server über einen Router, eine Zugriffsverbindung sowie eine Flaschenhalsverbindung, was einer einseitigen Hanteltopologie entspricht. Die Benutzer sind unterteilt in eine Benutzergruppe 0 (UG0) und eine Benutzergruppe 1 (UG1). Wenn die Experimente eine Unterscheidung zwischen starken und schwachen Benutzern erfordern, werden die starken Benutzer in UG0 eingruppiert, wohingegen die schwachen Benutzer in UG1 eingruppiert werden. Die Benutzergruppen haben ui Benutzer, welche alle mit der gleichen Referenzrate R r i

Figure DE102015111466B4_0065
konfiguriert sind. Alle Benutzer einer Benutzergruppe kommunizieren auf die gleiche Art und Weise mit dem Server. Im Fall von TCP-Kommunikation hat jeder Benutzer in UGi fi TCP-Verbindungen. Im Fall von Verkehr ohne Statuskontrolle hat ein Benutzer nur eine einzige UDP-Verbindung, welche CBR-Verkehr mit einer Senderate von R r i
Figure DE102015111466B4_0066
sendet. Alle Zugriffsverbindungen haben die gleiche Verzögerung Da und Bandbreite Ca . Die Flaschenhalsverbindung wird von allen Benutzern geteilt und hat eine Verzögerung von Db und eine Kapazität von Cb . Somit ergibt sich eine untere Grenze für die Rundlaufzeit („round trip time“, RTT) von 2 . (Da+ Db ).It was specially designed in 6 shown scenario used. Several users communicate with a server via a router, an access connection and a bottleneck connection, which corresponds to a one-sided dumbbell topology. The users are divided into a user group 0 (UG0) and a user group 1 (UG1). If the experiments require a distinction between strong and weak users, the strong users are grouped into UG0, whereas the weak users are grouped into UG1. The user groups have u i Users, all with the same reference rate R r i
Figure DE102015111466B4_0065
are configured. All users of a user group communicate with the server in the same way. In the case of TCP communication, every user in UGi has f i TCP connections. In the case of traffic without status control, a user has only a single UDP connection, which has CBR traffic with a transmission rate of R r i
Figure DE102015111466B4_0066
sends. All access connections have the same delay D a and bandwidth C a , The bottleneck connection is shared by all users and has a delay of Db and a capacity of C b , This results in a lower limit for the round trip time (RTT) of 2. (D a + D b ).

Die Flaschenhalsverbindung hat einen einfachen AQM-Algorithmus, welcher Pakete verwirft oder markiert. Die Wahrscheinlichkeit dafür hängt vom derzeitigen Warteschlangenfüllstand Q ab, welcher in Paketen ausschließlich neu angekommener Pakete angegeben wird. Sie wird durch die folgende Wahrscheinlichkeitsfunktion bestimmt: p ( Q ) = { 0 Q Q 0 Q Q 0 Q 1 Q 0 p 1 Q 0 < Q < Q 1 p 1 + Q Q 1 Q 2 Q 1 ( 1 p 1 ) Q 1 < Q Q 2 1 Q 2 < Q

Figure DE102015111466B4_0067
The bottleneck connection has a simple AQM algorithm which discards or tags packets. The likelihood of this depends on the current queue level Q, which is specified in packets of newly arrived packets only. It is determined by the following probability function: p ( Q ) = { 0 Q Q 0 Q - Q 0 Q 1 - Q 0 p 1 Q 0 < Q < Q 1 p 1 + Q - Q 1 Q 2 - Q 1 ( 1 - p 1 ) Q 1 < Q Q 2 1 Q 2 < Q
Figure DE102015111466B4_0067

Diese Wahrscheinlichkeitsfunktion hat vier Parameter: Schwellenwerte Q0, Q1, Q2 sowie Wahrscheinlichkeit pi. Nachfolgend werden spezifische Funktionen durch „pf-Q0-Q1-Q2-p1“ bezeichnet. Mit diesem AQM kann die Warteschlange einen Füllstand von Q2 Paketen im Fall des Verwerfens nicht überschreiten, so dass die Anzahl von Paketen eine ausreichende Puffergröße ist. Bei ECN-fähigen Verbindungen werden Pakete markiert anstatt sie zu verwerfen, so dass der Warteschlangenfüllstand signifikant höher sein kann als Q2. Um die Wahrscheinlichkeit für einen Paketverlust aufgrund Pufferüberlauf („tail-drop“) von Datenpaketen zu minimieren, wird vorliegend im Allgemeinen eine Puffergröße von Qmax= 50 Pakete verwendet. Bei Zugriffsverbindungen werden ebenfalls Warteschlangen mit einer Puffergröße von 50 Paketen verwendet.This probability function has four parameters: thresholds Q 0 , Q 1 , Q 2 and probability pi. Hereinafter, specific functions are denoted by "pf-Q 0 -Q 1 -Q 2 -p 1 ". With this AQM, the queue can not exceed a level of Q 2 packets in case of discarding, so that the number of packets is a sufficient buffer size. For ECN-enabled connections, packets are marked instead of discarded, so the queue fill level can be significantly higher than Q 2 . To minimize the likelihood of packet loss due to data packet tail-drop, a buffer size of Q max = 50 packets is generally used herein. Access connections also use queues with a buffer size of 50 packets.

Es wurden mehrere Experimente durchgeführt, welche sich nur in wenigen Parametern unterscheiden. Die Tabelle 1 stellt Standardwerte zusammen, welche in allen Experimenten verwendet wurden, sofern nicht anders angegeben.Several experiments were performed, which differ only in a few parameters. Table 1 summarizes standard values used in all experiments unless otherwise stated.

Eine mögliche Absicht der oben vorgestellten Implementierung des erfindungsgemäßen Verfahrens ist es, die Bandbreite im Falle einer Verstopfung proportional zu den Referenzraten der Benutzer zu verteilen. Es wurde untersucht, bis zu welchem Grad dieses Ziel erreicht werden kann, wenn starke Benutzer mit schwachen Benutzern konkurrieren, und zwar unter unterschiedlichen Netzwerkbedingungen. One possible intent of the above-presented implementation of the method according to the invention is to distribute the bandwidth in the case of a blockage in proportion to the user's reference rates. It has been investigated to what extent this goal can be achieved when strong users compete with weak users under different network conditions.

Ohne das erfindungsgemäße Verfahren teilen sich gesättigte TCP-Verbindungen, d.h. Verbindungen, welche laufend Daten zu senden haben, die Bandbreite an der Flaschenhalsverbindung ungefähr gleich, wobei Benutzern mit mehr Verbindungen ein höherer Durchsatz gegeben wird. Es wurden starke und schwache TCP-Benutzer mit f0 und f1 TCP-Verbindungen (f0 ≥ f1) simuliert, was zu einer konfigurierten Unfairness von U c = f 0 f 1

Figure DE102015111466B4_0068
führt. Als starke Benutzer gelten solche mit einer hohen Senderate. Als schwache Benutzer gelten solche mit einer niedrigen Senderate. Um Verkehr ohne Statuskontrolle zu untersuchen, wird ein einziger Benutzer pro Benutzergruppe simuliert, welcher eine einzige Verbindung hat, die CBR-Verkehr mit einer Rate von R t i
Figure DE102015111466B4_0069
sendet. Wenn zwei Benutzer mit Verkehr ohne Statuskontrolle um die Bandbreite einer Verbindung ohne das erfindungsgemäße Verfahren konkurrieren, wird die Bandbreite proportional zu den Senderaten geteilt. Dies führt zu einer konfigurierten Unfairness von U c = R t 0 R t 1 .
Figure DE102015111466B4_0070
Without the inventive method, saturated TCP connections, ie, connections that are constantly transmitting data, roughly equal the bandwidth at the bottleneck connection, giving higher-throughput users with more connections. Strong and weak TCP users with f 0 and f 1 TCP connections (f 0 ≥ f 1 ) were simulated, resulting in a configured unfairness of U c = f 0 f 1
Figure DE102015111466B4_0068
leads. Strong users are those with a high transmission rate. Weak users are those with a low transmission rate. To examine traffic without status control, a single user is simulated per user group, which has a single connection, the CBR traffic at a rate of R t i
Figure DE102015111466B4_0069
sends. When two users compete with traffic without status control for the bandwidth of a connection without the inventive method, the bandwidth is divided in proportion to the transmission rates. This leads to a configured unfairness of U c = R t 0 R t 1 ,
Figure DE102015111466B4_0070

Ein möglicher Zweck des erfindungsgemäßen Verfahrens ist faire Bandbreitenverteilung. Die Fairness der Bandbreitenverteilung wird durch das Durchsatzverhältnis T R = T 0 ¯ T 1 ¯

Figure DE102015111466B4_0071
charakterisiert, wobei T i der durchschnittliche Durchsatz pro Benutzer von UGi ist. Wenn TR = 1 gilt, wird die Bandbreite fair unter Benutzern von beiden Gruppen aufgeteilt. Im Fall von TR> 1 haben die Benutzer von UG0 einen höheren Durchsatz als die Benutzer von UG1. Im Fall von TR < 1 werden die Benutzer von UG1 bevorzugt. Die Maximierung der benutzerbasierten Fairness bedeutet, dass TR möglichst nahe bei 1 sein soll.A possible purpose of the method according to the invention is fair bandwidth distribution. The fairness of the bandwidth distribution is determined by the throughput ratio T R = T 0 ¯ T 1 ¯
Figure DE102015111466B4_0071
characterized, wherein T i is the average throughput per user of UGi. If T R = 1, the bandwidth is fairly divided among users of both groups. In the case of T R > 1, the users of UG0 have a higher throughput than the users of UG1. In the case of T R <1, users of UG1 are preferred. Maximizing user-based fairness means that T R should be as close to 1 as possible.

Für jedes Experiment mit TCP-Verbindungen wurde eine Warmlaufphase von 15 s verwendet und anschließend wurden Simulationsdaten über einen Zeitraum von 10 s erfasst. Es werden Mittelwerte über 50 Durchläufe berichtet. Die TCP-Quellen wurden zufällig gestartet innerhalb der ersten 5 s der Simulation. In dem Fall, dass ausschließlich UDP-Benutzer vorhanden sind, werden Mittelwerte über 100 Durchläufe berichtet, und zwar mit einer Datenerfassung über einen Zeitraum von 5 s.For each experiment with TCP connections, a warm-up phase of 15 s was used and then simulation data was collected over a period of 10 s. Mean values over 50 runs are reported. The TCP sources were started randomly within the first 5 seconds of the simulation. In the case that only UDP users are present, averages over 100 runs are reported, with a data collection over a period of 5 s.

Bei der obigen Analyse wurde eine AQM-Wahrscheinlichkeit p angenommen, welche für alle Pakete konstant ist, sich jedoch mit der Zeit verändert. Die Analyse wird durch Simulation validiert, und zwar für ausgewählte Datenpunkte in 4. Es werden zwei Benutzer simuliert, einer mit einer Referenzrate von R r 0 = 2  Mb/s

Figure DE102015111466B4_0072
und der andere mit einer Referenzrate von R r 1 = 1  Mb/s .
Figure DE102015111466B4_0073
Jeder hat eine einzige CBR-Verbindung, welche UDP-Verkehr mit Raten R t 0 { 10 ; 20 } Mb/s und R t 1 = 7,5  Mb/s
Figure DE102015111466B4_0074
sendet. Es wurden Experimente mit unterschiedlichen Differenzierungsfaktoren γ∈ {0; 0,5; 1; 1,5; 2; 3; 4; 5} durchgeführt. Die Resultate werden als Punkte in 4 gezeigt. Sie stimmen mit den analytischen Kurven sehr genau überein, was die weiter oben im Rahmen der mathematischen Analyse gezogenen Schlussfolgerungen bestätigt. Es wird nun der Einfluss von Parametern des Verfahrens, AQM-Parametern und ECN-fähigen TCP-Verbindungen untersucht. Es wird gezeigt, dass das erfindungsgemäße Verfahren auch heterogene Kapazitätsverteilung unterstützt und Upload-Zeiten signifikant verringern kann. In allen durchgeführten Experimenten ist die Bandbreitenausnutzung der Flaschenhalsverbindung 100 %. Somit zeigt das erfindungsgemäße Verfahren keinen negativen Einfluss auf die Nutzung von Verbindungen.In the above analysis, an AQM probability p was assumed which is constant for all packets but changes over time. The analysis is validated by simulation for selected data points in 4 , Two users are simulated, one with a reference rate of R r 0 = 2 Mb / s
Figure DE102015111466B4_0072
and the other with a reference rate of R r 1 = 1 Mb / s ,
Figure DE102015111466B4_0073
Everyone has a single CBR connection, which rates UDP traffic R t 0 { 10 ; 20 } Mb / s and R t 1 = 7.5 Mb / s
Figure DE102015111466B4_0074
sends. Experiments with different differentiation factors γ∈ {0; 0.5; 1; 1.5; 2; 3; 4; 5} performed. The results are called points in 4 shown. They agree very well with the analytic curves, confirming the conclusions drawn earlier in the mathematical analysis. The influence of parameters of the method, AQM parameters and ECN-capable TCP connections is examined. It is shown that the method according to the invention also supports heterogeneous capacity distribution and can significantly reduce upload times. In all experiments carried out, the bandwidth utilization of the bottleneck connection is 100%. Thus, the method of the invention shows no negative impact on the use of compounds.

Zunächst wird der Einfluss des Differenzierungsfaktors γ für unterschiedliche Kombinationen von Anzahlen von Benutzern uo/ui und Flaschenhalsverzögerungen Db untersucht, weil diese Parameter den Verstopfungsgrad an der Flaschenhalsverbindung beeinflussen. Die konfigurierte Unfairness ist U c = f 0 f 1 = 10 1 = 90 9 = 10

Figure DE102015111466B4_0075
in allen betrachteten Szenarien. Die Tabelle 2 zeigt, dass das Durchsatzverhältnis TR ohne das erfindungsgemäße Verfahren (γ = 0) ungefähr TR ≈ 10 ist. Bei höherem γ verringert sich TR signifikant, so dass TR sogar unter 1,0 für große Werte von γ fällt. Exakte Zahlen hängen von dem Verstopfungsgrad ab, welcher niedrig ist für Db = 50 ms und uo/ui = 1/10 Verbindungen, und höher für Db = 5 ms und uo/ui = 9/90 Verbindungen. Als vorteilhafter Wert hat sich γ = 3 herausgestellt, weil dies sogar unter ungünstigen Bedingungen (uo/ui = 1/10 und Db = 50 ms) einen relativ hohen Anteil der Bandbreite für schwache Benutzer (TR= 1,37) sicherstellt. In diesem Fall erreichen die schwachen Benutzer niedrigeren Durchsatz als die starken Benutzer, weil sie ihren relativ großen Kapazitätsanteil nicht voll ausnutzen können. Kleinere Flaschenhalsverzögerungen Db führen dazu, dass schwache Benutzer ihre Rate schneller anpassen und eine bessere Chance zum Ausnutzen ihres fairen Anteils haben. Mehr Benutzer uo/ui führen dazu, dass alle Benutzer einen kleineren fairen Anteil bekommen, welchen schwache Benutzer mit nur einer einzigen Verbindung besser ausnutzen können als große Anteile. Schwache Benutzer können sogar einen größeren Anteil an der Kapazität bekommen als starke Benutzer in anderen Szenarien (TR = 0,89 für uo/ui = 9/90 und Db = 5 ms, TR = 0,86 für uo/ui = 9/90 und Db = 50 ms). Dies wird bevorzugt, insbesondere gegenüber Durchsatzverhältnissen, welche größer sind als eins, weil starke Benutzer ihre Senderate verringern können, um ihren Durchsatz zu verbessern. Somit gibt das erfindungsgemäße Verfahren Anreize an starke Benutzer, um geeignete Mechanismen zur Verstopfungskontrolle anzuwenden, und nicht diesen Effekt durch die Erhöhung der Anzahl von Verbindungen zu umgehen. Da Varianten von TCP-Implementierungen hinsichtlich ihrer Vorgehensweise unterschiedlich sein können, können die Experimente leicht unterschiedliche Ergebnisse liefern für andere Versionen von TCP.First, the influence of the differentiation factor γ is examined for different combinations of numbers of users uo / ui and bottleneck delays Db, because these parameters influence the congestion degree at the bottleneck connection. The configured unfairness is U c = f 0 f 1 = 10 1 = 90 9 = 10
Figure DE102015111466B4_0075
in all considered scenarios. Table 2 shows that the throughput ratio T R without the process according to the invention (γ = 0) approximately T R ≈ 10. At higher γ decreases T R significantly, so that T R even falls below 1.0 for large values of γ. Exact numbers depend on the degree of clogging, which is low for Db = 50 ms and uo / ui = 1/10 connections, and higher for Db = 5 ms and uo / ui = 9/90 connections. As an advantageous value γ = 3 has been found, because even under unfavorable conditions (uo / ui = 1/10 and Db = 50 ms) this ensures a relatively high proportion of bandwidth for weak users (T R = 1.37). In this case, the weak users reach lower throughput than the strong users because they can not fully utilize their relatively large capacity share. Smaller bottleneck delays Db cause weak users to adjust their rates faster and have a better chance of taking advantage of their fair share. More users cause all users to get a smaller fair share, which weak users can make better use of with just one connection than large ones. Weak users can even get a larger share of capacity than strong users in other scenarios (T R = 0.89 for uo / ui = 9/90 and Db = 5 ms, T R = 0.86 for uo / ui = 9) / 90 and Db = 50 ms). This is preferred, especially to throughput ratios greater than one, because strong users can reduce their transmission rate to improve their throughput. Thus, the method of the present invention provides incentives to strong users to apply appropriate clogging control mechanisms rather than circumventing this effect by increasing the number of links. Because variations of TCP implementations may differ in their approach, the experiments may yield slightly different results for other versions of TCP.

Nachfolgend wird der Einfluss des Trägheitsmaßes I für γ = 3 und unterschiedliche Verstopfungsgrade untersucht. Die Tabelle 3 zeigt, dass ein höheres Trägheitsmaß I das Durchsatzverhältnis TR für alle Verstopfungsgrade verringert. Jedoch erhöht ein höheres Trägheitsmaß I auch die Anpasszeit des Aktivitätsmeters bei verringerten Lastbedingungen, wie bereits weiter oben erläutert wurde. Somit wird hier I = 0,6 s als Kompromiss in der Simulation genommen. Dies erlaubt, kleine Referenzraten von 0,02 Mb/s zu verwenden, ohne dabei oszillierende Aktivitätswerte zu riskieren.The influence of the inertia measure I for γ = 3 and different degrees of clogging will be examined below. Table 3 shows that a higher inertia measure I is the throughput ratio T R reduced for all blockages. However, a higher degree of inertia I also increases the adjustment time of the activity meter under reduced load conditions, as explained earlier. Thus, here I = 0.6 s is taken as a compromise in the simulation. This allows to use small reference rates of 0.02 Mb / s without risking oscillating activity values.

Nachfolgend wird der Einfluss der Referenzrate Rr für unterschiedliche Anzahlen von starken und schwachen Benutzern uo/ui und für unterschiedliche Flaschenhalsverzögerungen Db untersucht. Alle Benutzer werden mit der gleichen Referenzrate Rr konfiguriert. 7 zeigt, dass starke und schwache Benutzer ungefähr den gleichen Durchsatz erhalten, solange die Referenzrate klein genug ist. Wenn eine kritische Rate überschritten wird, erhalten starke Benutzer bis zu zehn Mal mehr Durchsatz als schwache Benutzer. Die kritische Rate hängt von der Anzahl von Benutzern ab. Dabei ergibt sich 0,1 Mb/s für 9/90 Benutzer und 1 Mb/s für 1/11 Benutzer, und dies ist unabhängig von der Flaschenhalsverzögerung Db. Diese Werte bestätigen, dass die Summe von Referenzraten von allen Benutzern die Flaschenhalsbandbreite nicht übersteigen soll. Jedoch zeigen die Ergebnisse für 1/10 Benutzer, dass ein leichtes Überbuchen nicht schadet: (u0 + u1) · Rr = 11 · 1 Mb/s = 11 Mb/s > 10 Mb/s = Cb. Obwohl die kritische Rate von der Anzahl von Benutzern abhängt, kann das erfindungsgemäße Verfahren unabhängig von diesem Wissen konfiguriert werden, weil es auch für kleine Referenzraten hervorragend funktioniert. Vorteilhaft wird die Übertragungsrate durch eine maximal angenommene Zahl möglicher Benutzer auf dem Link geteilt um eine Referenzrate zu ermitteln. Das System funktioniert genauso gut bei noch kleineren Referenzraten, bei größeren Referenzraten oder mehr Nutzern als maximal angenommen kann es sein, dass die Fairness nicht mehr ganz so gut gewährleistet ist, die Auslastung des Links leidet aber nicht darunter. Dies bestätigt die analytischen Ergebnisse für Verkehr ohne Statuskontrolle, welche weiter oben erläutert wurden.The following is the influence of the reference rate R r for different numbers of strong and weak users uo / ui and for different bottleneck delays Db examined. All users are using the same reference rate R r configured. 7 shows that strong and weak users get about the same throughput as long as the reference rate is small enough. If a critical rate is exceeded, strong users receive up to ten times more throughput than weak users. The critical rate depends on the number of users. This results in 0.1 Mb / s for 9/90 users and 1 Mb / s for 1/11 users, and this is independent of bottleneck delay Db. These values confirm that the sum of reference rates of all users should not exceed the bottleneck bandwidth. However, the results for 1/10 users show that a slight overbooking does not hurt: (u 0 + u 1 ) * R r = 11 * 1 Mb / s = 11 Mb / s> 10 Mb / s = C b . Although the critical rate depends on the number of users, the method of the invention can be configured independently of this knowledge because it works well even for small reference rates. Advantageously, the transmission rate is divided by a maximum number of possible users on the link to determine a reference rate. The system works just as well with even smaller reference rates, with larger reference rates or more than maximum users it may be that the fairness is not quite as good, but the load on the link does not suffer. This confirms the analytical results for traffic without status control, which were explained above.

Bei der beschriebenen Implementierung des erfindungsgemäßen Verfahrens wird die Referenzaktivität Aavg gemäß einer Ausführung aus Aktivitätswerten in empfangenen Paketen unter Verwendung eines gleitenden Durchschnitts berechnet, wie weiter oben beschrieben wurde. Der Gewichtungsfaktor WA bestimmt, wie schnell Aavg sich ändernden Aktivitätswerten anpasst. Somit hängt die Anpassgeschwindigkeit von WA und der Rate, mit welcher neue Pakete ankommen, ab. Es wurden WA∈ {0,9; 0,99; 0,999; 0,9999} für die gleichen Szenarien wie oben untersucht. Die Werte WA∈ {0,9; 0,9999} führen zu deutlich erhöhten Durchsatzverhältnissen unter bestimmten Bedingungen, während WA∈ {0,99; 0,999} zu Durchsatzverhältnissen in der Nähe von 1 unter allen getesteten Bedingungen führen.In the described implementation of the inventive method, the reference activity A avg is computed according to an embodiment of activity values in received packets using a moving average, as described above. The weighting factor WA determines how quickly A avg adapts to changing activity values . Thus, the fitting speed of WA and the rate at which new packets arrive depends. WA ∈ {0,9; 0.99; 0.999; 0.9999} for the same scenarios as examined above. The values WA ∈ {0,9; 0.9999} result in significantly increased throughput ratios under certain conditions, while WA ∈ {0.99; 0.999} at throughput ratios near 1 under all conditions tested.

Aktivitätswerte können in Paketheadern oder anderen Einheiten von Paketen typischerweise nur mit begrenzter Genauigkeit angegeben werden. Sie können in ganzzahligen Vielfachen einer Basisgranularität g angegeben werden. Aktivitätswerte können aufgerundet werden zu A g = A g g .

Figure DE102015111466B4_0076
Somit sind die berichteten Aktivitätswerte höchstens g größer als der exakte Wert, wobei sie in keinem Fall kleiner sind. Als Konsequenz führen leicht unterschiedliche Senderaten (beispielsweise zwischen Rr · 2n·g ―ε und Rr ·2n·g +ε) zu gerundeten Aktivitätswerten, welche sich um g unterscheiden, was andeutet, dass sich die Raten um einen Faktor von 2g unterscheiden. Umgekehrt können Senderaten, welche sich um einen Faktor von nahezu 2g unterscheiden, die gleiche Aktivität ergeben (beispielsweise zwischen Rr · 2n·g +ε und Rr · 2(n+1)·g ―ε). Typischerweise ist es nicht möglich, bessere Durchsatzverhältnisse als 2g für CBR-Verkehr unter ungünstigen Bedingungen zu erhalten. Deshalb sollte g klein genug gewählt werden. Zusätzliche Experimente haben gezeigt, dass die Granularität weniger Einfluss auf die Bandbreitenverteilung bei TCP-Verkehr hat, weil Raten von starken und schwachen Benutzern sich anpassen. Eine Granularität von g = 1 hat nur einen geringen Einfluss auf Durchsatzverhältnisse in den Experimenten. Bevorzugt wird eine Granularität zwischen 0,5 und 1, zwischen 0,6 und 0,9 oder von weniger als 1 oder höchstens 1 verwendet.Activity values can typically be specified in package headers or other units of packets only with limited accuracy. They can be specified in integer multiples of a base granularity g. Activity values can be rounded up to A G = A G G ,
Figure DE102015111466B4_0076
Thus, the reported activity values are at most g greater than the exact value, and under no circumstances are they smaller. As a consequence, slightly different transmission rates (for example, between R r · 2 n · g -ε and R r · 2 n · g + ε) result in rounded activity values that differ by g, indicating that the rates are a factor of 2 g differ. Conversely, transmission rates which differ by a factor of nearly 2 g can give the same activity (for example, between R r * 2 n * g + ε and R r * 2 (n + 1) * g -ε). Typically it is not possible to obtain better throughput ratios than 2 g for CBR traffic under unfavorable conditions. Therefore g should be chosen small enough. Additional experiments have shown that granularity has less impact on bandwidth distribution in TCP traffic because rates of strong and weak users adapt. A granularity of g = 1 has only a small influence on throughput ratios in the experiments. Preferably, a granularity between 0.5 and 1, between 0.6 and 0.9 or less than 1 or at most 1 is used.

Es wird ferner gezeigt, dass vorteilhaft implementierte AQM-Wahrscheinlichkeitsfunktionen die Fairness unter den Benutzern bei dem erfindungsgemäßen Verfahren maximieren. Es werden nachfolgend die Wahrscheinlichkeitsfunktionen diskutiert, welche in Tabelle 4 aufgelistet sind, und zwar zunächst für ein Szenario mit niedriger Verstopfung (Db = 50 ms und u0/u1=1/10 Benutzer) und dann für ein Szenario mit hoher Verstopfung (Db = 5 ms und uo/ui = 9/90 Benutzer).It is further shown that advantageously implemented AQM probability functions maximize fairness among users in the method of the invention. The probability functions listed in Table 4 are discussed below, first for a low-congestion scenario (D b = 50 ms and u 0 / u 1 = 1/10 users) and then for a high-congestion scenario ( D b = 5 ms and uo / ui = 9/90 users).

Mit pf-10-23-24-0 wird eine Stufenfunktion implementiert. Pakete werden für Warteschlangenfüllstände zwischen 0 und 23 Paketen akzeptiert und werden verworfen, wenn die Warteschlange 24 Pakete beinhaltet. Dies limitiert den maximalen Füllstand der Warteschlange. Es führt zu einem Durchsatzverhältnis von ungefähr TR= 10. Eine Stufenwahrscheinlichkeitsfunktion kann das erfindungsgemäße Verfahren ganz oder teilweise faktisch deaktivieren, weil eine Wahrscheinlichkeit, welche größer als null und kleiner als eins ist, praktisch nicht vorkommen kann. Die Funktion mit einfacher Steigung pf-10-{11, 17, 22}-24-0 akzeptiert alle Pakete für Warteschlangenfüllstände zwischen 0 und {11, 17, 22} Pakete und verwirft alle Pakete für Warteschlangenfüllstände von 24. Dazwischen werden Pakete mit linear ansteigender Wahrscheinlichkeit verworfen.With pf-10-23-24-0 a step function is implemented. Packets are accepted for queue levels between 0 and 23 packets and are discarded when the queue 24 Includes packages. This limits the maximum fill level of the queue. It results in a throughput ratio of approximately T R = 10. A level probability function can in fact partially or completely deactivate the method according to the invention, because a probability which is greater than zero and less than one can practically not occur. The simple-slope function pf-10- {11, 17, 22} -24-0 accepts all queue-level packets between 0 and {11, 17, 22} packets and discards all queue-level packets of 24. In between, packets become linear increasing probability discarded.

Die Funktion pf-10-22-24-0 erlaubt eine Differenzierung nur für einen Warteschlangenfüllstand von 23, was bereits das Durchsatzverhältnis von 9,75 auf 4,27 verglichen mit der Stufenfunktion verringert. Die Funktionen pf-10-17-24-0 und pf-10-11-24-0 sehen 6 und 12 Warteschlangenfüllstände zur Differenzierung vor und verringern das Durchsatzverhältnis weiter auf 2,32 und 1,82. Es wurde erkannt, dass bei Funktionen mit einfacher Steigung durchschnittliche Warteschlangenlängen Qavg so kurz sind, dass Verwurfswahrscheinlichkeiten meistens null sind, was eine Differenzierung nicht erlaubt. Der Grund dafür ist, dass auch der erste Füllstandsbereich mit nicht trivialer Wahrscheinlichkeit einer Funktion mit einfacher Steigung so groß ist, dass der Füllstand der Warteschlange meistens unter diesem Wert bleibt, und zwar insbesondere im Fall von niedriger Verstopfung bzw. niedriger Belastung. Deshalb werden Funktionen mit zwei Steigungen (pf-11-17-24-{0,01; 0,1} betrachtet, deren Wahrscheinlichkeit sich erst linear erhöht, und zwar auf einen kleinen Wert, und dann wiederum linear auf 1 ansteigt. Sie führen zu längeren durchschnittlichen Warteschlangenlängen, welche näher sind an dem Bereich, an welchem eine Differenzierung möglich ist. Sie führen zu einem niedrigst möglichen Durchsatzverhältnis von TR = 1,37. Für die weiteren Experimente wurde die Funktion pf-11-17-24-0,01 als Standard gewählt. Es sei jedoch verstanden, dass auch komplexere Funktionen möglich sind.The function pf-10-22-24-0 only allows for a queue level of 23, which already reduces the throughput ratio from 9.75 to 4.27 compared to the step function. The pf-10-17-24-0 and pf-10-11-24-0 features 6 and 12 queue levels for differentiation and further reduces the throughput ratio to 2.32 and 1.82. It has been recognized that for simple slope functions, average queue lengths Q avg are so short that discard probabilities are mostly zero, which does not allow differentiation. The reason for this is that even the first non-trivial probability level of a simple slope function is so large that the level of the queue will tend to remain below that value, especially in the case of low clogging. Therefore, we consider functions with two slopes (pf-11-17-24- {0.01, 0.1}, whose probability first increases linearly, to a small value, and then increases linearly to 1. They result to longer average queue lengths which are closer to the range at which differentiation is possible, leading to a lowest possible throughput ratio of T R = 1.37 For further experiments, the function was pf-11-17-24-0 01 has been selected as standard, but it should be understood that even more complex functions are possible.

Ein Szenario mit hoher Verstopfung führt zu deutlich höheren durchschnittlichen Warteschlangenfüllständen Qavg, so dass der Warteschlangenfüllstand meistens in einem Bereich ist, welcher eine Differenzierung von Verwurfswahrscheinlichkeiten ermöglicht. Dies führt zu niedrigeren Durchsatzverhältnissen. Eine Stufenfunktion ist wiederum eine Ausnahme, welche das erfindungsgemäße Verfahren faktisch deaktivieren kann.A high congestion scenario results in significantly higher average queue levels Q avg , so that the queue level is mostly in a range that allows differentiation of discard probabilities. This leads to lower throughput ratios. A step function is again an exception which can actually deactivate the method according to the invention.

Das erfindungsgemäße Verfahren wird nunmehr für ECN-fähige Verbindungen untersucht, deren Pakete markiert werden, anstatt sie zu verwerfen. Da die Warteschlange signifikant ansteigen kann, werden Warteschlangen mit einer Puffergröße von 24 und 50 Paketen untersucht. Nahezu jeder Warteschlangenfüllstand bei hoher Last (Warteschlangenfüllstand 12 bis 23) in der kurzen Warteschlange führt zu einer nicht trivialen Verwurfswahrscheinlichkeit, während die lange Warteschlange zusätzliche Warteschlangenfüllstände 25 bis 50 hat, bei welchen Pakete markiert oder sogar verworfen werden, ohne Möglichkeit der Differenzierung. Das Durchsatzverhältnis und die durchschnittliche Warteschlangenlänge werden entsprechend ermittelt und in Tabelle 5 wiedergegeben, einschließlich Vergleichsresultaten ohne ECN.The method of the invention will now be examined for ECN-enabled compounds whose packets are tagged instead of discarded. Since the queue can increase significantly, queues with a buffer size of 24 and 50 packets are examined. Almost any queue level at high load (queue level 12 to 23 ) in the short queue results in a non-trivial throw probability, while the long queue results in additional queue levels 25 to 50 has, with which packages marked or even discarded, without possibility of the differentiation. The throughput ratio and the average queue length are determined accordingly and reported in Table 5, including comparison results without ECN.

Es wurde herausgefunden, dass das Durchsatzverhältnis TR größer ist für ECN und eine Puffergröße von Qmax = 24 Paketen als ohne ECN, insbesondere für lange RTT. Dies kann folgendermaßen erklärt werden. Da Pakete von starken Benutzern eher markiert als verworfen werden, füllen starke Benutzer Positionen bei hoher Last der Warteschlange im Fall von Verstopfung, wenn die Verbindungen ihre Raten nicht schnell genug verringern. Dann erfahren Pakete von starken und schwachen Benutzern die gleiche Wahrscheinlichkeit eines Paketverlusts aufgrund Pufferüberlauf („tail-drop“). Dies verringert den Grad von differenzierender Behandlung für starke und schwache Benutzer und erhöht das Durchsatzverhältnis. Als andere Konsequenz kann sich der durchschnittliche Warteschlangefüllstand Qavg erhöhen, insbesondere in Szenarien bei hoher Last. Im Fall von sehr geringer Verstopfung, d.h. langes Db und nur wenige Benutzer, wird das Durchsatzverhältnis auch erhöht, weil das Markieren von Paketen statt des Verwerfens bevorzugt wird, insbesondere bei starken Benutzern.It was found that the throughput ratio T R is greater for ECN and a buffer size of Q max = 24 packets than without ECN, especially for long RTT. This can be explained as follows. Because packets are tagged by strong users rather than discarded, strong users fill high-queue positions in the event of congestion if the links do not slow down their rates fast enough. Then, packets from strong and weak users experience the same likelihood of packet loss due to tail-drop. This reduces the degree of differential treatment for strong and weak users and increases the throughput ratio. As another consequence, the average queue level Q avg may increase, especially in high load scenarios. In case of With very little congestion, ie, long Db and only a few users, the throughput ratio is also increased because tagging of packets rather than discarding is preferred, especially for heavy users.

Mit einer Puffergröße von Qmax = 50 Paketen erhöht sich das Durchsatzverhältnis noch mehr, insbesondere für hohe Verstopfung. Die durchschnittliche Warteschlangenlänge Qavg erhöht sich bis zu einem Bereich, wo alle Pakete markiert oder verworfen werden, und eine Differenzierung basierend auf Aktivitätswerten ist nicht länger möglich. Deshalb werden Verbindungen von starken und schwachen Benutzern gleichermaßen behandelt, solange die Warteschlange in diesem Bereich verbleibt, wodurch das Durchsatzverhältnis erhöht wird. Im schlechtesten derzeit denkbaren Fall deaktiviert dies faktisch das erfindungsgemäße Verfahren, was zu Durchsatzwerten um 10 führt. Somit wurde herausgefunden, dass das erfindungsgemäße Verfahren sich insbesondere für kurze Warteschlangen eignet. Deshalb kann es bevorzugt sein, dass bei Ausführung des erfindungsgemäßen Verfahrens ECN ignoriert wird, d.h. ECN-Pakete werden verworfen anstatt sie zu markieren.With a buffer size of Q max = 50 packets, the throughput ratio increases even more, especially for high blockage. The average queue length Q avg increases to an area where all packets are marked or discarded, and differentiation based on activity values is no longer possible. Therefore, connections of strong and weak users are treated equally as long as the queue remains in that area, thereby increasing the throughput ratio. In the worst case currently conceivable, this in fact deactivates the method according to the invention, which leads to throughput values of 10. Thus, it has been found that the method of the invention is particularly suitable for short queues. Therefore, it may be preferred that ECN is ignored when the method according to the invention is carried out, ie ECN packets are discarded instead of being marked.

Das erfindungsgemäße Verfahren kann Upload-Zeiten für zeitweilige Übertragungen von moderater Größe verringern. Dies wurde modelliert durch einen einzigen Testbenutzer, welcher eine Übertragung von 1 MB auf der Anwendungsschicht überträgt. Hintergrundverkehr wird durch u1 Benutzer erzeugt, welche jeweils mit fi gesättigten TCP-Verbindungen senden. Upload-Zeiten für diese Übertragung werden in Tabelle 7 wiedergegeben. Ohne das erfindungsgemäße Verfahren erhöhen sich die Upload-Zeiten signifikant mit der Gesamtzahl an Verbindungen (u1·f1 + 1) und sie sind länger für Db = 50 ms als für Db = 5 ms.The inventive method can reduce upload times for temporary transmissions of moderate size. This was modeled by a single test user transmitting a 1 MB transfer at the application layer. Background traffic is generated by u 1 users, each sending with saturated TCP connections. Upload times for this transfer are shown in Table 7. Without the method according to the invention, the upload times increase significantly with the total number of connections (u 1 .f 1 + 1) and they are longer for Db = 50 ms than for Db = 5 ms.

Die gleichen Experimente wurden auch mit dem erfindungsgemäßen Verfahren durchgeführt, während die Eimergröße des Testbenutzers variiert wurde. Tabelle 7 zeigt nur eine kleine Verringerung der Upload-Zeit für Hintergrundbenutzer mit fi = 1 Verbindungen und einer Eimergröße von B = 0 Bytes. Wenn Hintergrundbenutzer fi = 4 Verbindungen haben, werden die Upload-Zeiten bereits erheblich reduziert, weil das erfindungsgemäße Verfahren die Flaschenhalsbandbreite gleich unter den Benutzern aufteilt. Beim Erhöhen der Eimergröße B verringert sich die Upload-Zeit sogar weiter, bis B die Größe der Übertragung zusätzlich eines Protokoll-Overheads und erneut übertragenen Paketen übersteigt. Für sehr große B ist die Upload-Zeit um Größenordnungen geringer als ohne das erfindungsgemäße Verfahren. Das erfindungsgemäße Verfahren priorisiert im Wesentlichen die Übertragung des Testnutzers gegenüber anderem Verkehr, solange die Eimergröße verhindert, dass der Füllstand des Aktivitätsmeters negativ wird.The same experiments were also carried out with the method according to the invention, while the bucket size of the test user was varied. Table 7 shows only a small reduction in upload time for background users with fi = 1 connections and a bucket size of B = 0 bytes. If background users have fi = 4 connections, the upload times are already significantly reduced because the method of the invention splits the bottleneck bandwidth just below the users. As the bucket size B is increased, the upload time even further decreases until B exceeds the size of the transmission in addition to a protocol overhead and retransmitted packets. For very large B, the upload time is orders of magnitude lower than without the inventive method. The inventive method essentially prioritizes the transmission of the test user to other traffic as long as the bucket size prevents the level of the activity meter from becoming negative.

Es wird nunmehr ein einziger starker Benutzer betrachtet, welcher CBR-UDP-Verkehr mit einer Rate R t 0

Figure DE102015111466B4_0077
sendet, und welcher mit u1 = 10 schwachen Benutzern mit einer jeweiligen einzelnen TCP-Verbindung konkurriert. Ohne das erfindungsgemäße Verfahren verbraucht TCP-Verkehr ungefähr die Kapazität, welche vom UDP-Verkehr übriggelassen wird, was zu einem niedrigen Durchsatz für TCP-Benutzer führt. 8 zeigt, dass dies bei dem erfindungsgemäßen Verfahren unterschiedlich ist. Für γ = 3 zeigt das Durchsatzverhältnis TR einen Überschuss bei dem fairen Verhältnis, aber fällt schnell unter 1 ab für höheres R t 0 ,
Figure DE102015111466B4_0078
d.h. TCP-Benutzer erhalten einen größeren Kapazitätsanteil als UDP-Benutzer mit zu großer UDP-Senderate R t 0 .
Figure DE102015111466B4_0079
Das Durchsatzverhältnis erhöht sich wiederum für sehr große R t 0 .
Figure DE102015111466B4_0080
Weitere Experimente haben gezeigt, dass der letztgenannte Effekt durch Wahrscheinlichkeitsfunktionen mit drei Steigungen vermieden werden kann, insbesondere wenn die dritte Steigung bei einem hohen Wahrscheinlichkeitswert anfängt und bei 1 endet. Mit dieser Modifizierung kann das erfindungsgemäße Verfahren TCP-Verkehr gegen Quellen mit Verkehr ohne Statuskontrolle schützen, welche mit einer Rate senden, welche größer ist als ihr fairer Anteil. Dies führt auch dazu, dass mittels des erfindungsgemäßen Verfahrens Denial-of-Service-Angriffe wirkungsvoll vermieden werden können.A single strong user is now considered to have CBR UDP traffic at a rate R t 0
Figure DE102015111466B4_0077
and which competes with u 1 = 10 weak users with a respective single TCP connection. Without the inventive method, TCP traffic consumes approximately the capacity left over by UDP traffic, resulting in low throughput for TCP users. 8th shows that this is different in the method according to the invention. For γ = 3 shows the throughput ratio T R a fair-value surplus, but falls quickly below 1 for higher R t 0 .
Figure DE102015111466B4_0078
ie TCP users get more capacity than UDP users with excessive UDP send rate R t 0 ,
Figure DE102015111466B4_0079
The throughput ratio increases again for very large R t 0 ,
Figure DE102015111466B4_0080
Further experiments have shown that the latter effect can be avoided by three-slope probability functions, especially when the third slope starts at a high probability value and ends at one. With this modification, the inventive method can protect TCP traffic against sources with traffic without status control, which send at a rate which is greater than their fair share. This also means that by means of the method according to the invention denial of service attacks can be effectively avoided.

Bei einem Differenzierungsfaktor von γ = 2 werden höhere Durchsatzverhältnisse erreicht, was UDP-Benutzern ermöglicht, unter bestimmten Bedingungen die Bandbreite zu monopolisieren. Auch eine erhöhte AQM-Wahrscheinlichkeitsfunktion kann nicht verhindern, dass UDP-Benutzer 50 % mehr Bandbreite bekommen als TCP-Benutzer für R t 0 = 20  Mb/s

Figure DE102015111466B4_0081
und Db = 50 ms. Dies bestätigt, dass ein Wert von γ = 3 vorteilhaft ist.With a differentiation factor of γ = 2, higher throughput ratios are achieved, allowing UDP users to monopolize bandwidth under certain conditions. Even an increased AQM probability function can not prevent UDP users from getting 50% more bandwidth than TCP users for R t 0 = 20 Mb / s
Figure DE102015111466B4_0081
and Db = 50 ms. This confirms that a value of γ = 3 is advantageous.

Weitere AusführungsbeispieleFurther embodiments

9 zeigt eine Messstation 400, welche neben einer Straße 410 aufgebaut ist. Auf der Straße fahren eine Vielzahl von Fahrzeugen, von welchen eines exemplarisch dargestellt und mit dem Bezugszeichen 420 bezeichnet ist. 9 shows a measuring station 400 which is next to a road 410 is constructed. On the road drive a variety of vehicles, one of which is shown by way of example and with the reference numeral 420 is designated.

Die Messstation 400 ist vorliegend dazu ausgebildet, Lastkraftwagen zu erfassen, welche auf der Straße 410 verkehren. Bei jedem Vorbeifahren eines Lastkraftwagens in der Richtung, welche in 9 mit einem Pfeil dargestellt ist, werden dessen Spedition sowie dessen Massen an geladenen Gütern bestimmt. Die Speditionen entsprechen dabei den Benutzern und die Massen an geladenen Gütern entsprechen den Relevanzmaßen. Das Vorbeifahren eines Lastkraftwagens entspricht einem Ereignis. The measuring station 400 is presently designed to detect trucks, which are on the road 410 run. Each time a lorry drives past in the direction indicated in 9 is shown with an arrow, its forwarding and its masses of charged goods are determined. The freight forwarders correspond to the users and the masses of loaded goods correspond to the relevance measures. The passing of a truck corresponds to an event.

Für jede Spedition wird in der Messstation 400 ein jeweiliger Füllstand unterhalten. Dieser wird laufend mit einer jeweiligen Referenzrate von 1 / Stunde aktualisiert, d.h. im einen Wert von 1 pro Stunde erhöht. Wenn ein Lastkraftwagen der Spedition vorbeifährt, wird ein Aktivitätswert der Spedition folgendermaßen ermittelt:For every forwarding company will be in the measuring station 400 maintain a respective level. This is constantly updated with a respective reference rate of 1 / hour, ie increased in the value of 1 per hour. If a truck of the forwarding company passes, an activity value of the forwarding company is determined as follows:

Wenn der Füllstand positiv ist, wird ein Aktivitätswert von 0 ermittelt.If the level is positive, an activity value of 0 is determined.

Wenn der Füllstand negativ ist, wird ein Aktivitätswert in Höhe des Betrags des Füllstands geteilt durch die Referenzrate und ein Trägheitsmaß von einer Stunde errechnet. Dieser Füllstand wird an eine nicht gezeigte Zentraleinheit zur Überwachung von Speditionen gesendet.If the level is negative, an activity value equal to the level of the level divided by the reference rate and an inertia measure of one hour is calculated. This level is sent to a central unit, not shown, for monitoring forwarding companies.

Der Füllstand wird anschließend um einen Wert verringert, welcher durch Multiplikation der Masse an geladenen Gütern des Lastkraftwagens (in dimensionslosen Einheiten) mit der Zahl zwei potenziert mit dem Negativen des Aktivitätswerts erhalten wird.The level is then reduced by a value obtained by multiplying the mass of loaded goods of the truck (in dimensionless units) by the number two times the negative of the activity value.

Dieses Vorgehen erlaubt eine einfache und zuverlässige Bestimmung der Raten von vorbeifahrenden Lastkraftwagen, aufgeteilt nach Speditionen und gewertet nach geladenen Gütern.This procedure allows a simple and reliable determination of the rates of passing lorries, split up by freight forwarders and evaluated according to loaded goods.

Ein weiteres Ausführungsbeispiel, bei welchem das erfindungsgemäße Verfahren zur Anwendung kommen kann, wäre das Erfassen der Schreibgeschwindigkeit auf einer Tastatur. Dabei kann jeder Tastaturanschlag ein Ereignis darstellen. In diesem Fall gibt es typischerweise nur einen Benutzer, nämlich die schreibende Person. Auf die Berücksichtigung eines Relevanzmaßes kann verzichtet werden.Another embodiment in which the method according to the invention can be used would be to record the writing speed on a keyboard. Each keystroke can represent an event. In this case, there is typically only one user, namely the person writing. The consideration of a relevance measure can be dispensed with.

Dieses Vorgehen erlaubt eine kontinuierliche Aktualisierung der Rate, ohne dabei intervallbasiert messen zu müssen.This procedure allows a continuous update of the rate without having to measure interval-based.

Abschließende technische BetrachtungenFinal technical considerations

In Bezug auf die beschriebene Implementierung im Rahmen einer Datenübertragung ist abschließend festzustellen, dass gezeigt wurde, dass mittels des erfindungsgemäßen Verfahrens das technische Problem einer fairen und sinnvollen Aufteilung vorhandener Kapazitäten zur Datenübertragung auf unterschiedliche Benutzer gelöst wird. Dies erfolgt insbesondere durch die Zuweisung von Aktivitätswerten an Pakete und durch das dadurch ermöglichte gezielte, sinnvolle Verwerfen oder Markieren von Datenpaketen im Sinne einer gerechten und sinnvollen Ressourcenaufteilung. Für die Benutzer wird ein Anreiz geschaffen, sich beim Senden an einer fairen Rate zu orientieren, welche auf der ihnen zugewiesenen Referenzrate basiert, da ansonsten bei höherer Senderate ihr tatsächlich erzielter Durchsatz nicht erhöht, sondern vielmehr verringert wird. Mittels des erfindungsgemäßen Verfahrens ist es auch möglich, eine im Vergleich zum Stand der Technik sinnvollere Zuweisung von Prioritäten vorzunehmen. Benutzer mit hoher Priorität werden bei dem erfindungsgemäßen Verfahren besonders in dem Fall bevorzugt, wenn eine hohe Auslastung vorliegt. Ist die Auslastung jedoch gering, kann auch Benutzern mit niedrigerer Priorität eine höhere Übertragungskapazität zur Verfügung gestellt werden. Dies ermöglicht eine im Vergleich zum Stand der Technik deutliche Verbesserung der Übertragungsqualität für Benutzer mit niedriger Priorität, beispielsweise mit günstigen Datentarifen, ohne die Qualität für Benutzer mit hoher Priorität zu verschlechtern.With regard to the described implementation in the context of data transmission, it should be concluded that it has been shown that the technical problem of a fair and meaningful allocation of available capacities for data transmission to different users is solved by means of the method according to the invention. This is done in particular by the assignment of activity values to packets and by the targeted, meaningful rejection or marking of data packets in the sense of a fair and meaningful allocation of resources. Users are incentivized to follow a fair rate when sending based on the reference rate assigned to them, otherwise, at higher transmission rates, their actual achieved throughput will not be increased but rather reduced. By means of the method according to the invention, it is also possible to make a more meaningful assignment of priorities compared to the prior art. High priority users are preferred in the method of the invention particularly in the case of high utilization. However, if the load is low, users with lower priority can be provided with a higher transmission capacity. This provides a significant improvement in transmission quality for low priority users, such as low data rates, compared to the prior art, without degrading quality for high priority users.

Der Erfinder hat jedoch auch erkannt, dass sich die intervalllose Bestimmung eines Aktivitätswerts nicht nur im Bereich der Datenübertragung, sondern weit darüber hinaus einsetzen lässt. Damit wird in vielen Implementierungen ein erheblicher technischer Effekt erzielt, welcher insbesondere darin besteht, dass eine Ratenbestimmung ohne Wartezeiten und auch ohne Speicherung vieler vorangegangener Werte möglich ist, ohne dabei oszillierende und damit kaum mehr zu interpretierende Werte zu bekommen. Eine Implementierung mit dem erfindungsgemäßen Verfahren kann deshalb mit deutlich geringeren Systemressourcen zu guten Ergebnissen führen, als dies mit den intervallbasierten Verfahren gemäß dem Stand der Technik möglich war.However, the inventor has also recognized that the interval-free determination of an activity value can be used not only in the area of data transmission but also far beyond. Thus, in many implementations, a significant technical effect is achieved, which is in particular that a rate determination without waiting times and without storing many previous values is possible without getting oscillating and thus hardly interpretable values. An implementation with the method according to the invention can therefore lead to good results with significantly lower system resources than was possible with the interval-based methods according to the prior art.

Allgemeine Anmerkungen general remarks

Erwähnte Schritte des erfindungsgemäßen Verfahrens können in der angegebenen Reihenfolge ausgeführt werden. Sie können jedoch auch in einer anderen Reihenfolge ausgeführt werden. Das erfindungsgemäße Verfahren kann in einer seiner Ausführungen, beispielsweise mit einer bestimmten Zusammenstellung von Schritten, in der Weise ausgeführt werden dass keine weiteren Schritte ausgeführt werden. Es können jedoch grundsätzlich auch weitere Schritte ausgeführt werden, auch solche welche nicht erwähnt sind.Mentioned steps of the method according to the invention can be carried out in the order given. However, they can also be executed in a different order. In one of its embodiments, for example with a specific set of steps, the method according to the invention can be carried out in such a way that no further steps are carried out. However, in principle also further steps can be carried out, even those which are not mentioned.

Die zur Anmeldung gehörigen Ansprüche stellen keinen Verzicht auf die Erzielung weitergehenden Schutzes dar.The claims belonging to the application do not constitute a waiver of the achievement of further protection.

Sofern sich im Laufe des Verfahrens herausstellt, dass ein Merkmal oder eine Gruppe von Merkmalen nicht zwingend nötig ist, so wird anmelderseitig bereits jetzt eine Formulierung zumindest eines unabhängigen Anspruchs angestrebt, welcher das Merkmal oder die Gruppe von Merkmalen nicht mehr aufweist. Hierbei kann es sich beispielsweise um eine Unterkombination eines am Anmeldetag vorliegenden Anspruchs oder um eine durch weitere Merkmale eingeschränkte Unterkombination eines am Anmeldetag vorliegenden Anspruchs handeln. Derartige neu zu formulierende Ansprüche oder Merkmalskombinationen sind als von der Offenbarung dieser Anmeldung mit abgedeckt zu verstehen.If, in the course of the procedure, it turns out that a feature or a group of features is not absolutely necessary, it is already desired on the applicant side to formulate at least one independent claim which no longer has the feature or the group of features. This may, for example, be a subcombination of a claim present at the filing date or a subcombination of a claim limited by further features of a claim present at the filing date. Such newly formulated claims or feature combinations are to be understood as covered by the disclosure of this application.

Es sei ferner darauf hingewiesen, dass Ausgestaltungen, Merkmale und Varianten der Erfindung, welche in den verschiedenen Ausführungen oder Ausführungsbeispielen beschriebenen und/oder in den Figuren gezeigt sind, beliebig untereinander kombinierbar sind. Einzelne oder mehrere Merkmale sind beliebig gegeneinander austauschbar. Hieraus entstehende Merkmalskombinationen sind als von der Offenbarung dieser Anmeldung mit abgedeckt zu verstehen.It should also be noted that embodiments, features and variants of the invention, which are described in the various embodiments or embodiments and / or shown in the figures, can be combined with each other as desired. Single or multiple features are arbitrarily interchangeable. Resulting combinations of features are to be understood as covered by the disclosure of this application.

Rückbezüge in abhängigen Ansprüchen sind nicht als ein Verzicht auf die Erzielung eines selbständigen, gegenständlichen Schutzes für die Merkmale der rückbezogenen Unteransprüche zu verstehen. Diese Merkmale können auch beliebig mit anderen Merkmalen kombiniert werden.Recoveries in dependent claims are not to be understood as a waiver of obtaining independent, objective protection for the features of the dependent claims. These features can also be combined as desired with other features.

Merkmale, die lediglich in der Beschreibung offenbart sind oder Merkmale, welche in der Beschreibung oder in einem Anspruch nur in Verbindung mit anderen Merkmalen offenbart sind, können grundsätzlich von eigenständiger erfindungswesentlicher Bedeutung sein. Sie können deshalb auch einzeln zur Abgrenzung vom Stand der Technik in Ansprüche aufgenommen werden.Features that are disclosed only in the specification or features that are disclosed in the specification or in a claim only in conjunction with other features may, in principle, be of independent significance to the invention. They can therefore also be included individually in claims to distinguish them from the prior art.

Es sei erwähnt, dass in dieser Anmeldung einige Formeln angegeben sind, in welchen eine Variable sowohl links wie auch rechts des Gleichheitszeichens vorkommt. Dabei handelt es sich typischerweise nicht um Gleichungen, sondern um Zuweisungsvorschriften, also um Angaben, wie ein Wert zu aktualisieren ist. Dies entspricht der üblichen Notation in der Informatik.It should be noted that in this application some formulas are given in which a variable occurs both to the left and to the right of the equal sign. These are typically not equations, but assignment rules, which is how to update a value. This corresponds to the usual notation in computer science.

Sollten bei Formeln Dimensionen nicht kompatibel sein, können beispielsweise Dimensionen als dimensionslose Größen angegeben werden oder es können die Dimensionen weggelassen werden.If dimensions are not compatible with formulas, for example, dimensions may be specified as dimensionless sizes, or the dimensions may be omitted.

Es sei des Weiteren erwähnt, dass in den Figuren dieser Anmeldung als Trennzeichen zu Nachkommastellen von Werteangaben nicht das Komma, sondern der Punkt verwendet wird, wie dies im Englischen üblich ist.It should also be mentioned that in the figures of this application as a separator to decimal places of value specifications not the comma, but the point is used, as is common in English.

Werden in dieser Anmeldung zu einem Parameter beispielhafte oder vorteilhafte Intervalle angegeben, so gelten auch alle weiteren Intervalle, welche eine beliebige offenbarte untere Grenze sowie eine beliebige offenbarte obere Grenze haben, als Teil der Offenbarung dieser Anmeldung. Tabelle 1: Werte der Verzögerungsparameter für die Experimente Verbindungsbandbreiten Ca, Cb 100 Mb/s, 10 Mb/s Verbindungsverzögerungen Da, Db 0,1 ms; 5 ms AQM-Wahrscheinlichkeitsfunktion Pf-11-17-24-0,01 Puffergröße Qmax 50 Pakete Benutzer u0/ui in UG0/1 1/10 Verbindungen f0/f1 pro Benutzer in UG0/1 10/1 Referenzraten R r 0 , R r 1

Figure DE102015111466B4_0082
0,05 Mb/s Trägheitsmaß I, Eimergröße B 0,6 s; 0 Bytes Differenzierungsfaktor γ, Gewichtungsfaktor wA 3; 0,99 Tabelle 2: Durchsatzverhältnis TR in Abhängigkeit vom Differenzierungsfaktor γ Db (ms) Benutzer u0/ui Differenzierungsfaktor γ 0 1 2 3 4 5 5 1/10 9,80 1,85 1,24 1,04 0,95 0,90 9/90 10,26 1,35 0,99 0,89 0,83 0,81 50 1/10 10,04 2,74 1,71 1,37 1,21 1,11 9/90 10,40 1,53 0,99 0,86 0,78 0,72 Tabelle 3: Durchsatzverhältnis TR in Abhängigkeit vom Trägheitsmaß I Db (ms) u0/ui Trägheitsmaß der Aktivität I (s) 0,15 0,3 0,6 1,2 2,4 4,8 5 1/10 1,12 1,06 1,04 1,02 1,01 1,00 9/90 1,01 0.94 0,89 0,86 0,84 0,81 50 1/10 1,43 1,38 1,37 1,33 1,30 1,25 9/90 1,17 0,88 0,86 0,84 0,82 0,81 Tabelle 4: Einfluss der Wahrscheinlichkeitsfunktionen Db 5 ms 50 ms u0/ui 9/90 1/10 Wahrscheinlichkeitsfunktion TR Qavg (Pakete) TR Qavg (Pakete) pf-10-23-24-0 10,98 22,09 9,75 15,44 pf-10-22-24-0 1,59 21,54 4,27 15,97 pf-10-17-24-0 0,93 18,89 2,32 13,42 pf-10-11-24-0 0,89 15,78 1,82 8,32 pf-11-17-24-0,1 0,90 18,46 1,38 9,83 pf-11-17-24-0,01 0,89 18,84 1,37 11,63 Tabelle 5: Einfluss von ECN-fähigen Flüssen Szenario Db = 5 ms Db = 50 ms ECN u0/u1 TR Qavg TR Qavg Aus 1/10 1,04 16,08 1,37 12,14 3/30 0,90 17,54 1,02 15,96 9/90 0,89 18,96 0,86 18,15 An Qmax = 24 Pakete 1/10 1,04 17,48 2,07 7,09 3/30 0,95 21,70 2,14 14,23 9/90 2,68 22,03 1,30 21,63 An Qmax = 24 Pakete 1/10 1,97 14,41 2,30 7,06 3/30 1,04 31,79 5,00 14,23 9/90 10,33 48,81 5,49 41,83 If exemplary or advantageous intervals are specified for a parameter in this application, all other intervals which have any disclosed lower limit as well as any disclosed upper limit also apply as part of the disclosure of this application. Table 1: Values of delay parameters for the experiments Link bandwidths C a, C b 100 Mb / s, 10 Mb / s Connection delays D a , D b 0.1 ms; 5 ms AQM probability function Pf-11-17-24-0,01 Buffer size Q max 50 packages User u 0 / u i in UG0 / 1 1.10 Connections f 0 / f 1 per user in UG0 / 1 1.10 reference rates R r 0 . R r 1
Figure DE102015111466B4_0082
0.05 Mb / s
Inertia I, bucket size B 0.6 s; 0 bytes Differentiation factor γ, weighting factor w A 3; 0.99
Table 2: Throughput ratio T R as a function of the differentiation factor γ Db (ms) User u 0 / u i Differentiation factor γ 0 1 2 3 4 5 5 1.10 9.80 1.85 1.24 1.04 0.95 0.90 9/90 10.26 1.35 0.99 0.89 0.83 0.81 50 1.10 10.04 2.74 1.71 1.37 1.21 1.11 9/90 10.40 1.53 0.99 0.86 0.78 0.72 Table 3: Throughput ratio T R as a function of the inertia measure I Db (ms) u 0 / u i Inertia measure of activity I (s) 0.15 0.3 0.6 1.2 2.4 4.8 5 1.10 1.12 1.06 1.04 1.02 1.01 1.00 9/90 1.01 0.94 0.89 0.86 0.84 0.81 50 1.10 1.43 1.38 1.37 1.33 1.30 1.25 9/90 1.17 0.88 0.86 0.84 0.82 0.81 Table 4: Influence of the probability functions D b 5 ms 50 ms u 0 / u i 9/90 1.10 probability function T R Q avg (packages) T R Q avg (packages) pf-10-23-24-0 10.98 22.09 9.75 15.44 pf-10-22-24-0 1.59 21.54 4.27 15.97 pf-10-17-24-0 0.93 18,89 2.32 13.42 pf-10-11-24-0 0.89 15.78 1.82 8.32 pf-11-17-24-0,1 0.90 18.46 1.38 9.83 pf-11-17-24-0,01 0.89 18.84 1.37 11.63 Table 5: Influence of ECN-capable flows scenario Db = 5 ms Db = 50 ms ECN u 0 / u 1 T R Q avg T R Q avg Out 1.10 1.04 16.08 1.37 12.14 3.30 0.90 17.54 1.02 15.96 9/90 0.89 18.96 0.86 18.15 At Q max = 24 packets 1.10 1.04 17.48 2.07 7.09 3.30 0.95 21.70 2.14 14,23 9/90 2.68 22,03 1.30 21.63 At Q max = 24 packets 1.10 1.97 14.41 2.30 7.06 3.30 1.04 31.79 5.00 14,23 9/90 10.33 48.81 5.49 41.83

Tabelle 6: Durchsatzverhältnis TR für einen privilegierten Benutzer mit einem einzigen Fluss und einer skalierten Referenzrate R t 0 = s R t 1

Figure DE102015111466B4_0083
Db (ms) Anzahl Benutzer u0/u1 Skalierungsfaktor s 1 2 4 8 16 5 1/1 1,00 1,88 3,25 5,95 10,45 1/10 1,00 1,82 3,23 5,71 10,39 1/100 1,01 2,00 3,78 5,98 10,91 50 1/1 1,01 1,55 2,47 3,78 4,30 1/10 1,00 1,68 2,75 4,62 7,85 1/100 1,01 1,85 3,03 5,07 7,39 Tabelle 7: Upload-Zeiten (s) mit und ohne erfindungsgemäßes Verfahren (ABC) Db (ms) ABC B (MB) f1=1 f1=4 u1=10 u1=20 u1=10 u1=20 5 Nein n/a 10,3 20,2 34,2 61,4 0 9,1 19,7 11,5 18,8 0,25 8,7 15,7 9,6 15,7 Ja 0,5 6,5 11,3 7,5 11,6 0,75 5,1 7,7 5,5 7,9 1 2,8 3,0 2,9 3,2 1,25 2,7 2,7 2,7 2,7 50 Nein n/a 20,3 29,2 47,7 85,2 0 9,5 18,5 12,2 21,7 0,25 7,2 14,8 10,6 18,2 Ja 0,5 5,9 11,4 8,6 14,5 0,75 3,4 7,3 6,6 10,6 1 2,8 3,7 4,3 6,4 1,25 2,6 3,3 4,0 5,3 Table 6: Throughput ratio T R for a privileged user with a single flow and a scaled reference rate R t 0 = s R t 1
Figure DE102015111466B4_0083
Db (ms) Number of users u 0 / u 1 Scaling factor s 1 2 4 8th 16 5 1.1 1.00 1.88 3.25 5.95 10.45 1.10 1.00 1.82 3.23 5.71 10.39 1/100 1.01 2.00 3.78 5.98 10.91 50 1.1 1.01 1.55 2.47 3.78 4.30 1.10 1.00 1.68 2.75 4.62 7.85 1/100 1.01 1.85 3.03 5.07 7.39 Table 7: Upload times (s) with and without method (ABC) according to the invention Db (ms) ABC B (MB) f 1 = 1 f 1 = 4 u 1 = 10 u 1 = 20 u 1 = 10 u 1 = 20 5 No n / A 10.3 20.2 34.2 61.4 0 9.1 19.7 11.5 18.8 0.25 8.7 15.7 9.6 15.7 Yes 0.5 6.5 11.3 7.5 11.6 0.75 5.1 7.7 5.5 7.9 1 2.8 3.0 2.9 3.2 1.25 2.7 2.7 2.7 2.7 50 No n / A 20.3 29.2 47.7 85.2 0 9.5 18.5 12.2 21.7 0.25 7.2 14.8 10.6 18.2 Yes 0.5 5.9 11.4 8.6 14.5 0.75 3.4 7.3 6.6 10.6 1 2.8 3.7 4.3 6.4 1.25 2.6 3.3 4.0 5.3

Claims (16)

Verfahren zum Messen von Raten an einer Messstation (100, 400), - wobei an der Messstation (100, 400) eine Mehrzahl von Ereignissen eintreten, - wobei jedes Ereignis einem aus einer Anzahl von Benutzern zugeordnet ist, - wobei jedem Benutzer ein jeweiliger benutzerspezifischer Wertesatz zugeordnet ist, welcher zumindest einen Füllstand und eine Referenzrate aufweist, - wobei bei jedem Eintreten eines Ereignisses, das einem Benutzer zugeordnet ist, an der Messstation (100, 400) unter Verwendung des dem Benutzer zugeordneten Wertesatzes folgende Schritte ausgeführt werden: - Ermitteln eines Aktivitätswerts, welcher anzeigend ist für eine Abweichung einer dem Benutzer zugeordneten Rate von der Referenzrate, in Abhängigkeit von dem Füllstand, und - Verändern des Füllstands in Abhängigkeit von dem Aktivitätswert.A method of measuring rates at a metering station (100, 400), wherein a plurality of events occur at the metering station (100, 400), each of the events being assigned to one of a number of users, each user being assigned a respective user specific one Assigned value set, which has at least one level and a reference rate, - at each occurrence of an event that is assigned to a user, at the measuring station (100, 400) using the value assigned to the user, the following steps are performed: - Determining a An activity value indicative of a deviation of a rate associated with the user from the reference rate, as a function of the level, and Changing the level depending on the activity value. Verfahren nach Anspruch 1, - wobei der Aktivitätswert numerisch angegeben wird und zumindest betragsmäßig umso größer ermittelt wird, je höher die Rate ist.Method according to Claim 1 , wherein the activity value is given numerically and the higher the rate, the larger the value determined. Verfahren nach einem der vorhergehenden Ansprüche, - wobei bei jedem Schritt des Ermittelns eines Aktivitätswerts zunächst der Füllstand des dem Benutzer zugeordneten Wertesatzes aktualisiert wird, und/oder - wobei der Füllstand kontinuierlich, in festgelegten Zeitabständen oder nach einem festgelegten Schema aktualisiert wird; - und/oder wobei der Füllstand in Abhängigkeit von der Referenzrate aktualisiert wird, - und/oder wobei beim Schritt des Aktualisierens des Füllstands ein gespeicherter früherer Füllstand, welcher einem bereits vergangenen Zeitpunkt zugeordnet ist, um das Produkt aus der Referenzrate und einer Zeitdifferenz zum vergangenen Zeitpunkt erhöht wird; und/oder - wobei jeder benutzerspezifische Wertesatz einen maximalen Füllstand aufweist und wobei der Füllstand nicht über den jeweiligen maximalen Füllstand erhöht wird.Method according to one of the preceding claims, wherein, at each step of determining an activity value, the level of the value set associated with the user is first updated, and or - the level is updated continuously, at fixed intervals or according to a fixed schedule; and / or wherein the level is updated in dependence on the reference rate, and / or wherein, in the step of updating the level, a stored previous level associated with an already past time is increased by the product of the reference rate and a time difference from the past time; and or - Each user-specific value set has a maximum level and wherein the level is not increased above the respective maximum level. Verfahren nach Anspruch 3, - wobei bei jedem Schritt des Ermittelns eines Aktivitätswerts der Aktivitätswert in Abhängigkeit von dem Füllstand nach dessen Aktualisierung ermittelt wird.Method according to Claim 3 in which, at each step of determining an activity value, the activity value is determined as a function of the level after its update. Verfahren nach einem der vorhergehenden Ansprüche, - wobei bei jedem Schritt des Ermittelns eines Aktivitätswerts der Füllstand in Abhängigkeit von dem ermittelten Aktivitätswert verringert wird.Method according to one of the preceding claims, - In each step of determining an activity value of the level is reduced in dependence on the determined activity value. Verfahren nach einem der vorhergehenden Ansprüche, - wobei der Füllstand umso weniger verändert wird, je größer der Aktivitätswert, zumindest betragsmäßig, ist; und/oder - wobei der Füllstand umso mehr verändert wird, je größer ein dem Ereignis zugeordnetes Relevanzmaß ist.Method according to one of the preceding claims, - The level is changed the less, the greater the activity value, at least in terms of amount; and or - The level is changed the more, the greater a relevance measure assigned to the event. Verfahren nach einem der vorhergehenden Ansprüche, - wobei beim Schritt des Veränderns des Füllstands der Füllstand um einen Wert verringert wird, welcher durch Division - eines dem Ereignis zugeordneten Relevanzmaßes durch - die Zahl zwei oder eine andere positive Zahl potenziert mit dem Aktivitätswert ermittelt wird.Method according to one of the preceding claims, wherein, in the step of changing the level, the level is reduced by a value which is obtained by dividing - a relevance measure assigned to the event - the number two or another positive number is raised to the power value. Verfahren nach einem der vorhergehenden Ansprüche, - wobei beim Schritt des Ermittelns eines Aktivitätswerts ein Aktivitätswert in Höhe eines Ausgangsaktivitätswerts ermittelt wird, wenn der Füllstand einen nichtnegativen Wert aufweist; oder - wobei beim Schritt des Ermittelns eines Aktivitätswerts ein negativer Aktivitätswert ermittelt wird, wenn der Füllstand einen nichtnegativen Wert aufweist.Method according to one of the preceding claims, wherein, in the step of determining an activity value, an activity value equal to an output activity value is determined when the level has a non-negative value; or - wherein in the step of determining an activity value, a negative activity value is determined when the level has a non-negative value. Verfahren nach einem der vorhergehenden Ansprüche, - wobei beim Schritt des Ermittelns eines Aktivitätswerts der Aktivitätswert derart ermittelt wird, dass bei einem negativen Füllstand der Aktivitätswert umso größer wird, je größer ein Absolutbetrag des Füllstands ist.Method according to one of the preceding claims, - In the step of determining an activity value of the activity value is determined such that at a negative level, the activity value is greater, the greater is an absolute amount of the level. Verfahren nach einem der vorhergehenden Ansprüche, - wobei der Aktivitätswert zumindest betragsmäßig umso größer ermittelt wird, je mehr die Rate des Benutzers die Referenzrate übersteigt.Method according to one of the preceding claims, - Wherein the activity value is determined at least in amount the greater the rate of the user exceeds the reference rate. Verfahren nach einem der vorhergehenden Ansprüche, - wobei beim Schritt des Ermittelns eines Aktivitätswerts der Aktivitätswert derart ermittelt wird, dass bei einem negativen Füllstand der Aktivitätswert umso kleiner wird, je größer die Referenzrate ist.Method according to one of the preceding claims, wherein, in the step of determining an activity value, the activity value is determined in such a way that, with a negative fill level, the activity value becomes smaller, the larger the reference rate is. Verfahren nach einem der vorhergehenden Ansprüche, - wobei beim Schritt des Ermittelns eines Aktivitätswerts der Aktivitätswert derart ermittelt wird, dass bei einem negativen Füllstand der Aktivitätswert durch Division eines Absolutbetrags des Füllstands zumindest durch die Referenzrate ermittelt wird.Method according to one of the preceding claims, - In the step of determining an activity value of the activity value is determined such that at a negative level, the activity value is determined by dividing an absolute value of the level at least by the reference rate. Verfahren nach einem der vorhergehenden Ansprüche, - wobei jeder benutzerspezifische Wertesatz ferner ein Trägheitsmaß aufweist, und - wobei bei jedem Ermitteln eines Aktivitätswerts der Aktivitätswert, zumindest betragsmäßig, umso kleiner ermittelt wird, je größer das Trägheitsmaß, zumindest betragsmäßig, ist.Method according to one of the preceding claims, - each user-specific value set further having an inertial measure, and - In each determination of an activity value of the activity value, at least in magnitude, the smaller is determined, the greater the degree of inertia, at least in terms of amount. Verfahren nach Anspruch 13, - wobei beim Schritt des Ermittelns eines Aktivitätswerts der Aktivitätswert derart ermittelt wird, dass bei einem negativen Füllstand der Aktivitätswert durch Division eines Absolutbetrags des Füllstands durch die Referenzrate und durch das Trägheitsmaß ermittelt wird.Method according to Claim 13 in which, in the step of determining an activity value, the activity value is determined such that, in the case of a negative fill level, the activity value is determined by dividing an absolute value of the fill level by the reference rate and by the inertia measure. Verfahren nach einem der vorhergehenden Ansprüche, - wobei die Messstation ein Netzwerkknoten ist, - wobei jedes einem Benutzer zugeordnete Ereignis ein jeweiliges Eintreffen eines dem Benutzer zugeordneten Datenpakets an dem Netzwerkknoten ist, - und wobei jede einem Benutzer zugeordnete Rate eine dem Benutzer zugeordnete Senderate ist.Method according to one of the preceding claims, where the measuring station is a network node, wherein each event associated with a user is a respective arrival of a data packet associated with the user at the network node, and wherein each rate associated with a user is a transmission rate associated with the user. Verfahren nach Anspruch 15, - wobei beim Eintreffen eines Datenpakets an dem Netzwerkknoten vor dem Schritt des Ermittelns eines Aktivitätswerts das Datenpaket in eine Anzahl von weiteren Datenpaketen vorgegebener Länge aufgeteilt wird, - wobei alle weiteren Schritte mit den weiteren Datenpaketen durchgeführt werden.Method according to Claim 15 in which, when a data packet arrives at the network node before the step of determining an activity value, the data packet is divided into a number of further data packets of predetermined length, wherein all further steps are performed with the further data packets.
DE102015111466.6A 2015-07-15 2015-07-15 Method for measuring rates at a measuring station Expired - Fee Related DE102015111466B4 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102015111466.6A DE102015111466B4 (en) 2015-07-15 2015-07-15 Method for measuring rates at a measuring station

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102015111466.6A DE102015111466B4 (en) 2015-07-15 2015-07-15 Method for measuring rates at a measuring station

Publications (2)

Publication Number Publication Date
DE102015111466A1 DE102015111466A1 (en) 2017-01-19
DE102015111466B4 true DE102015111466B4 (en) 2019-08-22

Family

ID=57630473

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015111466.6A Expired - Fee Related DE102015111466B4 (en) 2015-07-15 2015-07-15 Method for measuring rates at a measuring station

Country Status (1)

Country Link
DE (1) DE102015111466B4 (en)

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A Survey", COMST (IEEE Communications Surveys & Tutorials Journal), Ausgabe 15, Nr. 3, Jahr 2013, Seiten 1425-1476
BITAG: Real-time Network Management of Internet Congestion. -, Oktober 2013. S. 1-53. - Firmenschrift *

Also Published As

Publication number Publication date
DE102015111466A1 (en) 2017-01-19

Similar Documents

Publication Publication Date Title
DE602004004831T2 (en) A method and apparatus for scheduling packets on a network connection with an input-rate-based priority
DE60313037T2 (en) Flow control in network units
DE69937537T2 (en) Monitoring of Internet disparate services for transaction usages
DE69927252T2 (en) On the monitoring of buffer occupancy based planning of network capacity
DE60317837T2 (en) Method and system for measuring load and capacity on a variable capacity channel
DE602005002006T2 (en) Method and apparatus for determining the available bandwidth in a data packet network
DE69922180T2 (en) Method and device for data flow control
DE60125901T2 (en) Approximation of Weighted Random Early Detection Buffer Entry Algorithm
DE60217361T2 (en) Method and system for overload control in a communication network
DE60308260T2 (en) A method and apparatus for efficiently comparing responses to previously communicated requests by a network node
DE60306723T2 (en) Queue system for Diffserv router with multiple operating modes
DE102014213771A1 (en) Filter method for adapting a computing load
EP1451980A1 (en) Method for transmitting data of applications with different quality
EP3284296B1 (en) Method for determining a channel load and method for adjusting a preprocessing in a vehicle-to-x communication, vehicle-to-x communication system and computer-readable storage medium
CN106713169A (en) Method of controlling flow bandwidth and apparatus thereof
DE112018005429T5 (en) BOTTOM BANDWIDTH AND ROUND TIME OVERLOAD CONTROL WITH RANDOM EARLY DETECTION
DE60018023T2 (en) A system, apparatus and method for transmitting keep-alive messages in a communication network
DE112019001647T5 (en) Network congestion management
DE102015111438B3 (en) Method for transporting data packets
DE102015111466B4 (en) Method for measuring rates at a measuring station
DE202009019134U1 (en) Technology for regulating link traffic
DE602004001605T2 (en) Improvement of Early Randomly Dropping Data Packages (RED)
DE112018008106T5 (en) DETERMINATION OF A TURNING POINT IN THE OVERLOAD OF A NETWORK PATH
EP3085123A1 (en) Method and system for determining a number of vehicle-to-x messages for rejection
DE102018004328B4 (en) Technologies for effectively determining a cause of congestion with a multi-tier network switch

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0012801000

Ipc: H04L0047100000

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee