[eMule-Web]

[eMule-Web] (http://www.emule-web.de/board/)
-   eMule MOD - Development (http://www.emule-web.de/board/emule-mod-development/)
-   -   Port-Bereich für alle Verbindungen festlegen - QoS (http://www.emule-web.de/board/8957-port-bereich-fuer-alle-verbindungen.html)

lexaiden 5. February 2005 15:05

Port-Bereich für alle Verbindungen festlegen - QoS
 
Hallo,

gibt es einen MOD bei dem man den Port-Bereich, in dem alle Verbindungen aufgebaut werden, festlegen kann?

Grund ist das ich gerne meinen Upload mit QoS im Router regeln würde, da ich nebenbei noch einen FTP und HTTP Server betreibe.
Ich würde eMule gerne in dem Portbereich 30000-32000 + 2370 TCP & 2390 UDP operieren lassen, gibt es da irgendeine Möglichkeit?

Momentan nutzt eMule zu ca. 60% die eingestellten Ports 2370 & 2390. Alle anderen Verbindungen baut das Programm über Ports im Bereich 1100 - 4000 auf. Das kann ich mit QoS leider nicht filtern, weil dort auch Internetbrowser und andere Software Verbindungen aufbaut, die will ich ja aber gerade unter unterschiedliche Filter stellen.

Falls es das noch nicht geben sollte, wäre es nicht vielleicht eine Programmierung Wert? :D
Ps: Vielleicht sollte man dann diesen Thread auch in "eMule MOD - Development" verschieben?! Admins? ;-)

Gruss lexaiden

lexaiden 7. February 2005 21:42

Über 110 Hits und kein Kommentar. Das beruhigt mich irgendwo, dann hab ich doch gründlich genug gesucht vor dem erstellen, hatte nämlich auch nix gefunden. ;-)

Dann werd ich demnächst mal einen Vorschlag in "eMule MOD - Development" formulieren. Könnt diesen Beitrag hier dann von mir aus in die berühmt berüchtigte "Tonne" schieben.

Gruss lexaiden

Rumpelzuck 7. February 2005 22:54

also die "Tonne" würde dem Thema aber nicht gerecht, auch wenn sich keine einfache Lösung findet. :-)

Also mein Senf dazu:
Die Verbindungen zu deinen im Muli eingestellten Ports werden von den anderen Clients aufgebaut, die zu dir connecten. Wenn dein Muli zu anderen Clients verbindet nimmt er als Quellport einen dynamisch vom IP-Stack des Betriebssystems ausgewählten Port (das gilt wie du gemerkt hast aber auch für andere Anwendungen) , der Zielport wird von den Einstellungen des gegnerischen Clients bestimmt.
Eventuell kann man das Betriebssystem zu dem von dir gewünschten Verhalten bzgl. der Quellports bringen (habe bei Win?? aber noch nichts von gehört). Die Zielports sind zwar häufig die Mulistandardports, aber bei immer mehr Clients werden die auch gewechselt.

Sprich, beim Muli wird sich immer jede Menge Traffic auf den unterschiedlichsten und nicht genau vorhersagbaren Quell- und Zielports abspielen.

Den Muli so umzuprogrammieren, daß er direkt unter Umgehung des IP-Stacks die IP-Pakete selbst gemäß deinen Ansprüchen erzeugt, halte ich doch eher für zuviel Aufwand.

Ein andere Ansatz wäre den "wichtigen" Traffic zu bevorzugen, statt den Mulitraffic im QOS zu benachteiligen. Das ist vielleicht einfacher, HTTP wäre Port 80 ausgehend, aktives FTP Port 20 und 21 ausgehend.
Bei passivem FTP wirds aber kniffelig, da dort auch wieder von Serverseite dynamische Ports verwendet werden, siehe auch dazu http://slacksite.com/other/ftp.html

Oder probiere es mal mit cFosSpeed auf dem Server. Solange nur ein Gerät gleichzeitig (Client-PC oder Server) in deinem Heim-Netz gegenüber dem Router geregelt werden muss, ist das sicher die einfachste Methode. Nimm wenn dann die aktuelle Beta von cFosSpeed, die ist zur Zeit deutlich besser als die offizielle 1.08er Version. Damit kann unter XP und W2K3 auch das Verhalten von lokalen Anwendungen priorisiert werden.

Es gibt auch noch andere Möglichkeiten: In meinem Linksys WRT-54G Router z.B. kann ich mit der V.20 Firmware von http://brainslayer.sveasoft.de/ auch RJ-45 Port basiertes QOS machen, d.h Rechner an Router RJ-45 Buchse 1 hat mehr Prio als der an an Buchse 2. Dessen Linux Betriebssystem hat übrigens auch kein Problem mit >600 Verbindungen und heftigem KAD-Traffic.

Ciao
Rumpelzuck

lexaiden 8. February 2005 00:02

Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von Rumpelzuck
also die "Tonne" würde dem Thema aber nicht gerecht, auch wenn sich keine einfache Lösung findet. :-)

Ahjo, schon klar. Wollte halt eigentlich was neues etwas ausgearbeiteter im Development einstellen.

Zitat:

Also mein Senf dazu:
Die Verbindungen zu deinen im Muli eingestellten Ports werden von den anderen Clients aufgebaut, die zu dir connecten. Wenn dein Muli zu anderen Clients verbindet nimmt er als Quellport einen dynamisch vom IP-Stack des Betriebssystems ausgewählten Port (das gilt wie du gemerkt hast aber auch für andere Anwendungen) , der Zielport wird von den Einstellungen des gegnerischen Clients bestimmt.
Ja das ist mir bewusst, dachte nur das es nicht so kompliziert sein kann dem Muli beizubringen sich Ports aus einem gewissen Bereich zu suchen, das dort dann auch wieder andere Programme reinfallen können ist dann egal.

Zitat:

Eventuell kann man das Betriebssystem zu dem von dir gewünschten Verhalten bzgl. der Quellports bringen (habe bei Win?? aber noch nichts von gehört). Die Zielports sind zwar häufig die Mulistandardports, aber bei immer mehr Clients werden die auch gewechselt.

Sprich, beim Muli wird sich immer jede Menge Traffic auf den unterschiedlichsten und nicht genau vorhersagbaren Quell- und Zielports abspielen.
Ja das richtig. Momentan filtere ich nach Quell- und Zielports. Ich hänge unten mal meine Konfiguration an.

Zitat:

Den Muli so umzuprogrammieren, daß er direkt unter Umgehung des IP-Stacks die IP-Pakete selbst gemäß deinen Ansprüchen erzeugt, halte ich doch eher für zuviel Aufwand.
Ok... wenn Du meinst. Hatte es mir nicht so kompliziert vorgestellt, aber ich bin da auch nicht bewandert genung - sonst hät ich 's ja selbst gemacht ;-)

Zitat:

Ein andere Ansatz wäre den "wichtigen" Traffic zu bevorzugen, statt den Mulitraffic im QOS zu benachteiligen. Das ist vielleicht einfacher, HTTP wäre Port 80 ausgehend, aktives FTP Port 20 und 21 ausgehend.
Bei passivem FTP wirds aber kniffelig, da dort auch wieder von Serverseite dynamische Ports verwendet werden, siehe auch dazu http://slacksite.com/other/ftp.html
Das mache ich momentan, siehe unten.

Zitat:

Oder probiere es mal mit cFosSpeed auf dem Server. Solange nur ein Gerät gleichzeitig (Client-PC oder Server) in deinem Heim-Netz gegenüber dem Router geregelt werden muss, ist das sicher die einfachste Methode. Nimm wenn dann die aktuelle Beta von cFosSpeed, die ist zur Zeit deutlich besser als die offizielle 1.08er Version. Damit kann unter XP und W2K3 auch das Verhalten von lokalen Anwendungen priorisiert werden.
Klingt interessant, werd ich mich mal mit beschäftigen. Alternativ hatte ich schon an zwei Netzwerkkarten gedacht, eine für alles und eine nur für den Muli - aber wie bindet man den Muli an eine Netzwerkkarte und sämtlichen andere Traffic auf die andere?

Zitat:

Es gibt auch noch andere Möglichkeiten: In meinem Linksys WRT-54G Router z.B. kann ich mit der V.20 Firmware von http://brainslayer.sveasoft.de/ auch RJ-45 Port basiertes QOS machen, d.h Rechner an Router RJ-45 Buchse 1 hat mehr Prio als der an an Buchse 2. Dessen Linux Betriebssystem hat übrigens auch kein Problem mit >600 Verbindungen und heftigem KAD-Traffic.
Das wäre dann wohl ähnlich wie IP-Adressen...

Hier mal die Textversion vom QoS-Filter:
Code:

QOS_INTERNET_DEV='ppp0'            # Device über das Daten ins Internet übertragen werden
QOS_INTERNET_BAND_DOWN='3072kbit'  # Maximale Downstreambandbreite des Internet-Zugangs
QOS_INTERNET_BAND_UP='384kbit'    # Maximale Upstreambandbreite des Internet-Zugangs
QOS_INTERNET_DEFAULT_DOWN='0'      # Standardklasse für Down
QOS_INTERNET_DEFAULT_UP='7'        # Standardklasse für Up
QOS_LOCALNET_DEV='eth0'            # Device über das das lokale Netzwerk angebunden ist
QOS_LOCALNET_BAND='10Mbit'        # Maximale Übertragungsrate ins lokalen Netz (LAN)


QOS_CLASS_N='7'

# QOS_CLASS_1_PARENT='0'              Vaterklasse
# QOS_CLASS_1_MINBANDWIDTH='64kbit'  Minimale Bandbeite, die der Klasse zugeteilt werden soll
# QOS_CLASS_1_MAXBANDWIDTH='384kbit'  Maximale Bandbreite, für die Klasse, leer entspricht MINBANDWITH
# QOS_CLASS_1_DIRECTION='up'          Richtung des Verkehrs, up oder down
# QOS_CLASS_1_PRIO='0'                0-3, leer entspricht 0

# UPLOAD

QOS_CLASS_1_PARENT='0'            # ACK
QOS_CLASS_1_MINBANDWIDTH='64kbit'
QOS_CLASS_1_MAXBANDWIDTH='340kbit'
QOS_CLASS_1_DIRECTION='up'       
QOS_CLASS_1_PRIO='0'             

QOS_CLASS_2_PARENT='0'            # Client
QOS_CLASS_2_MINBANDWIDTH='64kbit'
QOS_CLASS_2_MAXBANDWIDTH='384kbit'
QOS_CLASS_2_DIRECTION='up'       
QOS_CLASS_2_PRIO='1'             

QOS_CLASS_3_PARENT='0'            # SERVER
QOS_CLASS_3_MINBANDWIDTH='224kbit'
QOS_CLASS_3_MAXBANDWIDTH='300kbit'
QOS_CLASS_3_DIRECTION='up'       
QOS_CLASS_3_PRIO='2'             

QOS_CLASS_4_PARENT='3'            # eMule
QOS_CLASS_4_MINBANDWIDTH='96kbit'
QOS_CLASS_4_MAXBANDWIDTH='280kbit'
QOS_CLASS_4_DIRECTION='up'
QOS_CLASS_4_PRIO='1'

QOS_CLASS_5_PARENT='3'            # FTP
QOS_CLASS_5_MINBANDWIDTH='64kbit'
QOS_CLASS_5_MAXBANDWIDTH='300kbit'
QOS_CLASS_5_DIRECTION='up'
QOS_CLASS_5_PRIO='2'

QOS_CLASS_6_PARENT='3'            # Apache
QOS_CLASS_6_MINBANDWIDTH='64kbit'
QOS_CLASS_6_MAXBANDWIDTH='300kbit'
QOS_CLASS_6_DIRECTION='up'
QOS_CLASS_6_PRIO='0'

QOS_CLASS_7_PARENT='0'            # Others
QOS_CLASS_7_MINBANDWIDTH='32kbit'
QOS_CLASS_7_MAXBANDWIDTH='300kbit'
QOS_CLASS_7_DIRECTION='up'
QOS_CLASS_7_PRIO='3'




QOS_FILTER_N='14'

# QOS_FILTER_1_CLASS='1'            Zielklasse
# QOS_FILTER_1_IP=''                IP Adresse (oder Adressbereich), darf leer sein
# QOS_FILTER_1_PORT=''              Ziel- oder Sourceport, darf leer sein
# QOS_FILTER_1_TYPE=''              client oder server wenn nach Port gefiltert wird
# QOS_FILTER_1_OPTION='ACK'        ACK, ICMP, TOSMD, TOSMT, TOSMR, TOSMC oder leer

# UPLOAD

QOS_FILTER_1_CLASS='1'            # ACK
QOS_FILTER_1_IP=''             
QOS_FILTER_1_PORT=''           
QOS_FILTER_1_TYPE=''           
QOS_FILTER_1_OPTION='ACK'       

QOS_FILTER_2_CLASS='5'          # FTP
QOS_FILTER_2_IP='192.168.0.2'
QOS_FILTER_2_PORT='20:21'
QOS_FILTER_2_TYPE='server'
QOS_FILTER_2_OPTION=''

QOS_FILTER_3_CLASS='5'          # FTP
QOS_FILTER_3_IP='192.168.0.2'
QOS_FILTER_3_PORT='10000:10019'
QOS_FILTER_3_TYPE='server'
QOS_FILTER_3_OPTION=''

QOS_FILTER_4_CLASS='4'          # eMule
QOS_FILTER_4_IP='192.168.0.2'
QOS_FILTER_4_PORT='2440'
QOS_FILTER_4_TYPE='server'
QOS_FILTER_4_OPTION=''

QOS_FILTER_5_CLASS='4'          # eMule
QOS_FILTER_5_IP='192.168.0.2'
QOS_FILTER_5_PORT='2450'
QOS_FILTER_5_TYPE='server'
QOS_FILTER_5_OPTION=''

QOS_FILTER_6_CLASS='6'          # Apache
QOS_FILTER_6_IP='192.168.0.2'
QOS_FILTER_6_PORT='80'
QOS_FILTER_6_TYPE='server'
QOS_FILTER_6_OPTION=''

QOS_FILTER_7_CLASS='2'            # Client WWW
QOS_FILTER_7_IP='10.0.0.0/8'
QOS_FILTER_7_PORT='80'
QOS_FILTER_7_TYPE='client'
QOS_FILTER_7_OPTION=''

QOS_FILTER_8_CLASS='2'            # Client POP3
QOS_FILTER_8_IP='10.0.0.0/8'
QOS_FILTER_8_PORT='110'
QOS_FILTER_8_TYPE='client'
QOS_FILTER_8_OPTION=''

QOS_FILTER_9_CLASS='2'            # Client IMAP
QOS_FILTER_9_IP='10.0.0.0/8'
QOS_FILTER_9_PORT='145'
QOS_FILTER_9_TYPE='client'
QOS_FILTER_9_OPTION=''

QOS_FILTER_10_CLASS='2'            # Client RM
QOS_FILTER_10_IP='10.0.0.0/8'
QOS_FILTER_10_PORT='554'
QOS_FILTER_10_TYPE='client'
QOS_FILTER_10_OPTION=''

QOS_FILTER_11_CLASS='2'            # Client FTP
QOS_FILTER_11_IP='10.0.0.0/8'
QOS_FILTER_11_PORT='20:21'
QOS_FILTER_11_TYPE='client'
QOS_FILTER_11_OPTION=''

QOS_FILTER_12_CLASS='2'            # Client WWW
QOS_FILTER_12_IP='10.0.0.0/8'
QOS_FILTER_12_PORT='8080'
QOS_FILTER_12_TYPE='client'
QOS_FILTER_12_OPTION=''

QOS_FILTER_13_CLASS='2'            # Client SMTP
QOS_FILTER_13_IP='10.0.0.0/8'
QOS_FILTER_13_PORT='25'
QOS_FILTER_13_TYPE='client'
QOS_FILTER_13_OPTION=''

QOS_FILTER_14_CLASS='4'            # Client eMule
QOS_FILTER_14_IP='10.0.0.0/8'
QOS_FILTER_14_PORT='4600:4700'
QOS_FILTER_14_TYPE='client'
QOS_FILTER_14_OPTION=''

Aber das sagt wohl den wenigsten was. Muss man sich schon mit beschäftigen. Eine Grafische Darstellung hab ich mal angehängt, vielleicht kann ja noch wer einen
Verbesserungsvorschlag beisteuern.


Ps: ******e, jetzt hab ich glatt meine Aufbackbrötchen im Ofen vergessen... jemand hunger? *narf* ;-)

Pathfinder 8. February 2005 09:35

Mahlzeit, lexaiden, Tonne und neu erstellen ist nicht, es gibt ja jetzt schon einen Thread. Ich verschiebe ihn aber gerne nach Development und du kannst deine Überschrift noch etwas anpassen. :wink:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:00 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102